#ocr
#распознавание
Вопрос:
Кто-то дал мне сокровищницу, полную потрясающей информации. Отсканированные объявления размером 200 МБ в формате tiff относятся к 40-м годам. Я хочу оцифровать это, но у меня нет никаких знаний об OCR. Некоторые из ранних материалов едва читаемы человеком, не говоря уже о машине. Это также на иврите.
Я ищу совет о том, как подойти к этому. Хороший совет по поводу книг, статей, библиотек кода или программного обеспечения (все они должны быть свободно доступны в Интернете). Я хорошо владею C и Python и могу подобрать другой язык, если это необходимо.
Спасибо.
Комментарии:
1. Вам нужно было, чтобы это было доступно для поиска? Если нет, оставьте все как есть, поскольку так, вероятно, будет более полезно. Я никогда не видел отличного распознавания (хотя некоторые из них близки к этому) для английского языка; я бы предположил, что частота ошибок была бы намного выше при сканировании на иврите.
2. Если текст едва читаем человеком, шансы, что машина сможет его прочитать, невелики.
3. Материал с начала сороковых и вплоть до шестидесятых годов, вероятно, не будет читаем машиной, но все, начиная по крайней мере с семидесятых годов и до настоящего времени, должно быть читаемо.
Ответ №1:
Это звучит как отличная задача для Python, использующая библиотеку OCR. Быстрый поиск в Google выдал pytesser:
PyTesser — это модуль оптического распознавания символов для Python. Он принимает в качестве входных данных изображение или файл изображения и выводит строку.
PyTesser использует механизм распознавания текста Tesseract, преобразуя изображения в принятый формат и вызывая исполняемый файл Tesseract в качестве внешнего скрипта. Исполняемый файл Windows предоставляется вместе со скриптами Python. Скрипты должны работать и в других операционных системах.
…
Пример использования
>>> from pytesser import * >>> image = Image.open('fnord.tif') # Open image object using PIL >>> print image_to_string(image) # Run tesseract.exe on image fnord >>> print image_file_to_string('fnord.tif') fnord
Комментарии:
1. Однако поддерживает ли pytesser иврит?
2. Хороший момент — tesseract поддерживает множество языков , но я не вижу иврита. Похоже, что существует относительно небольшой интерес к / поддержке распознавания иврита.
3. Я нашел hocr ( hocr.berlios. de ) и qhocr ( code.google.com/p/qhocr ) это могло бы помочь. Хотя я ищу больше информации и указаний — в основном, каковы общие алгоритмы распознавания? Если я предоставлю библиотеке шрифт, который использовался (или имитирую аналогичный), принесет ли это пользу алгоритму?
4. @CamelCamelCamel похоже, что поддержка иврита была добавлена в Tesseract в 10/2012.