def parse_phone(self, response): # todo: добавить контракт phone = Image.open(StringIO(response.body)) phone.load() image = Image.new("RGB", phone.size, (255, 255, 255)) image.paste(phone, mask=phone.split()[3]) # 3 is the alpha channel image = image.resize((image.size[0] * 4, image.size[1] * 4), Image.BICUBIC) l = response.meta['loader'] l.add_value('author_phone', tesseract.image_to_string(image, builder=tesseract.DigitBuilder())) return l.load_item()
Но есть такие, которые на которых Tesseract сильно гонит по причине слипшихся символов. Особенно часто этим страдает “4” и “-” (смотри вложение). Мне же необходимо добиться 100% распознования номеров. Как посоветуете решать задачу, ребята?