Подготовлен (https://groups.google.com/forum/#!topic/tesseract-ocr/oKtTOI... релиз системы оптического распознавания текста Tesseract 4.1 (https://github.com/tesseract-ocr/tesseract/), поддерживающей распознавание символов UTF-8 и текстов на более чем 100 языках, включая русский, казахский, белорусский и украинский. Результат может сохраняться как открытым текстом, так и в форматах HTML (hOCR), ALTO (XML), PDF и TSV. Изначально система была создана в 1985-1995 годах в лаборатории компании Hewlett Packard, в 2005 году код был открыт под лицензией Apache и в дальнейшем развивался при участии работников компании Google. Исходные тексты проекта распространяются (https://github.com/tesseract-ocr/tesseract) под лицензией Apache 2.0.
Tesseract включает в себя консольную утилиту и библиотеку libtesseract для встраивания функций распознавания текста в другие приложения. Из поддерживающих Tesseract сторонних GUI-интерфейсов (https://github.com/tesseract-ocr/tesseract/wiki/User-Project... можно отметить gImageReader (https://github.com/manisandro/gImageReader), VietOCR (http://vietocr.sourceforge.net/) и YAGF (https://sourceforge.net/projects/yagf-ocr/). Предлагается два движка распознавания: классический, распознающий текст на уровне шаблонов отдельных символов, и новый, базирующийся на применении системы машинного обучения на базе рекуррентной нейронной сети LSTM, оптимизированной для распознавания целиком строк и позволяющей добиться существенного увеличения точности. Готовые натренированные модели опубликованы для 123 языков (https://github.com/tesseract-ocr/tesseract/wiki/Data-Files). Для оптимизации производительности предлагаются модули, использующие OpenMP и SIMD-инструкций AVX2, AVX или SSE4.1.Основные улучшения (https://github.com/tesseract-ocr/tesseract/wiki/ReleaseNotes) в Tesseract 4.1:
- Добавлена возможность вывода в XML-формате ALTO (https://en.wikipedia.org/wiki/ALTO_(XML)) (Analyzed Layout and Text Object). Для использования данного формата следует запустить приложение как "tessaract имя_изображения каталог_вывода alto";
- Добавлены новые модули рендеринга LSTMBox и WordStrBox, упрощающие проведение обучения движка;
- Добавлена поддержка псевдографики в выводе hOCR;
- Добавлены написанные на языке Python альтернативные скрипты для тренировки движка на базе машинного обучения;- Расширены оптимизации с использованием инструкций AVX, AVX2 и SSE;
- По умолчанию отключена поддержка OpenMP из-за проблем (https://github.com/tesseract-ocr/tesseract/issues/1171) с производительностью;
- В движке LSTM добавлена поддержка белых и чёрных списков;
- Улучшены сборочные сценарии на базе Cmake.
URL: https://groups.google.com/forum/#!topic/tesseract-ocr/oKtTOI...
Новость: https://www.opennet.me/opennews/art.shtml?num=51081
YAGF как там с Qt 5?
По ссылке влом сходить? Или ща так не модно?
Я переходил прежде чем писать.
И не нашёл отдельный бранч с Qt5-версией? Странно.
И не нашёл, и не собрал, и не затестил. Ужас...
Ну яблочник, очевидно же...
А если кто-то не «яблочник», то он просто так сразу побежит тратить один конечас на сборку проекта, который ему нужен этак со степенью ‘маловероятно’?
ЗЫ: дет сад уровня местной аудитории
Ты походу адресом сайта ошибся тебе бы в комменты к вилсе на ютубе.
- как там Qt5? /* Вроде что-то было по портированию с Qt4 на Qt5 */
- да, что-то есть по портированию.Спасибо 👍
Оу, сюда и скрытые фанаты вилсы оупенсорсники захаживают. А линуксоиды-пикабушники есть?
> проекта, который ему нужен этак со степенью ‘маловероятно’Тогда не задавай глупых вопросов и не трать наши человекоминуты.
Зависит от того, насколько ему оно интересно и нужно.
Если интересно средне — есть бранч с Qt5, можно посмотреть историю коммитов и открытых тикетов, если интересно сильно — попробовать собрать и попользоваться.
Детсад — ждать, что кто-то сделает вышеперечисленное за и ради тебя.
> Детсад — ждать, что кто-то сделает вышеперечисленное за и ради тебя.Нет, тут полно тулкитофобов, которым особо делать нечего.
Поэтому вероятность встретить кого-то "да, я вот пользуюсь" вполне нормальная.
PS: хотя вероятность встретить неадекватов, которым просто пофлудить ради поднятия ЧСВ, явно больше
В Mageia возьмите.
К сожалнию, качество распознавания - просто кошмар. ИМХО, для свободного софта сфера OCR - весьма слабое место.
Да нормально он распознает. Более-менее приличный скан пролетает без проблем.
Жаль только, что оно не умеет в форматирование, таблицы. Но можно юзать какой-нибудь ocrmypdf.
Какой нормально, FineReader 3.0 20 давности распознавал лучше. С форматированием, с таблицами.
Им реально можно книги распознавать.
А это только утилита выдрать текст с картинки авось получится, для добавления индексов в поиск пойдет.
> Какой нормально, FineReader 3.0 20 давности распознавал лучше. С форматированием, с таблицами.
> Им реально можно книги распознавать.
> А это только утилита выдрать текст с картинки авось получится, для добавления
> индексов в поиск пойдет.на нек. сканах - файнридер (любой) тупо крашится или выжирает всю память от виндадко ;)
и да, ФР порой текст распознает отвратительно (если скан неважный)
надо понимать (отличать) просто распознавание текста и все задачу по распознаванию сканов (она гораздо масштабнее)
Зависит от входных данных. Для сабжа действительно надо что-то простое.
Это ты про буфер обмена?
И LSTM модуль тоже пробовали?
В свое время распознавал им капчу было норм. Правда я сначала подготавливал картинку.
> К сожалнию, качество распознавания - просто кошмар.Ваще идеально работает по PDF рендерингам в имиджи.
По хорошим сканам тоже - хватАет.
> К сожалнию, качество распознавания - просто кошмар. ИМХО, для свободного софта сфера
> OCR - весьма слабое место.Применял с предобработкой Scan Tailor - результат был лучше продуктов ABBYY
"Недостаток" - отсутствие распознавание таблиц (хотя были зачатки) и макета страницы, но это не является задачей движка распознавания самого текста ;)
Графические надстройки (типа YAGF) как-то пытаются выполнять подобные ф-ции...
> поддерживающей распознавание символов UTF-8Смайлики что-ли?
Emoji, еретик! Еще "колобки" бы сказал...
мне тоже резануло слух.
Я даже шутку придумал: пока не научится распозновать символы koi8-r - ну ее на фиг.
С другой стороны - все правильно сказано.
хотя лучше бы написали: символов, поддерживаемых UTF8
Конкретных пяти символов же:
U,T,F,дефис и восемь
Я почему то думал что Tesseract это шутер:
http://tesseract.gg/
Сейчас придет школота и объяснит тебе, что тессеракт - это один из камней бесконечности, содержащий одну из шести сингулярностей, предшествовавших вселенной.
Тессеракт - это гиперкуб из четырёхмерного пространства, аналог двумерного квадрата и трёхмерного куба. Его "гранями" являются трёхмерные кубы.
> Я ...думалШлёма, не звезди.
Никто не скажет, опенсорснутый Cuneiform так ни во что юзабельное и не превратился?
Код волшебным образом превращается во что-то только спустя 10 лет лежания без коммитов, а пока прошло только 8.
Что ещё предскажет нумерология?
Это тот, который даже не запускается в Release, только в Debug? Нет, не вылился. И не нужно.
Он непортабельный, плюс ко всему... куски асма без generic.
Он подох по ходу. Был УГ и подох УГом.
Я правильно понимаю, что они и не пытались выяснить, куда девается производительность при сборке mingw64 с OpenMP и просто решили его отключить?
OpenMP там, похоже, прикручен для галочки. К примеру, используемое число потоков захардкожено и его нельзя повысить, только понизить через переменную окружения: https://github.com/tesseract-ocr/tesseract/issues/1600Судя по беглому поиску по исходникам, OpenMP в tesseract используется для оптимизаци низкоуровневых операций (работа с матрицами, сегментация текста). Как следствие, каждому отдельному потоку достаётся сравнительно мало работы, и вместо прирост производительности на коротких текстах легко получить просадку.
К сожалению, если софт опенсорсный и бесплатный - он будет таким всегда, это как...соперничество двух сил, у платного софта - есть функционал, который был достигнут благодаря трудозатратам разработчиков, и деньги тут являются способом передачи энергии - разработчики затратили свои силы, работали в поте лица, ожидая получить вознаграждение (и получили), пользователи ожидали получить качественный продукт - и получили, но не бесплатно, но если вдуматься - их затраты в виде денег, это альтернатива затратам в виде ручной работы, в данном случае ручного набирания текста на клавиатуре, а в случае если у пользователя сотня листов, то работа может быть существенной, и разовая плата за лицензию может быть существенно ниже, чем оплата одного или нескольких сотрудников, которые будут выполнять работу по перепечатыванию текста с бумаги в компьютер. Вот и получается выгода всем - пользователи платят деньги (и в долгосрочной перспективе экономят), получая софт, который работает за них, а разработчики получают эти деньги за свои труды. Все в профите.
А что ждет бесплатный опенсорсный софт в этом цикле ? Разработчики не получают деньги и не готовы работать полный рабочий день, пользователи не получают тот функционал, что есть в проприетарном софте, и соответственно не считают нужным его оплачивать, нет денег - нет переноса энергии. Отсюда можно сделать вывод, что развитие бесплатных проектов будет или минимальным или его не будет вовсе, а может и отрицательный прогресс будет - ПО будет становиться только хуже.
Мы тебя услышали! Давай, подскажи *платный* (за деньги!) модуль (чтобы интегрировать в серерную систему) распознавания *под линукс*.Подсказка: у Abbyy такого нет, не работают они с линуксом, даже за деньги.
ЗЫ. информация давности примерно год, вдруг что-то и поменялось?
Норкоман чтоле? Всю жизнь у них был Finereader Engine под линуксы:https://www.abbyy.com/en-eu/support/frengine/11linux/info/sr/
Ну далеко не всю жизнь, но достаточно давно, чтоб удивиться тому, почему сами-то встали на полдороги.
И нет и да.
Нет, потому, что проект, приобретя пользователей (кинетическую энергию, в ваших терминах) - то есть раскрутив свой маховик (разов/часов использования, количества пользоватетелей) - привлекает как клиентов бизнес, а как производителя и оказывающего сервис сопровождения корпорацию, одну или больше и продолжает жить на этом. такова тут "передача энергии" в виде денег или "отчужденного труда"Да, потому, что если проект не раскрутится до многих юзеров и не приобретет многих девелоперов, то поддержки не получит. С сообтветствующим циклом обратной связи которая останавливает или тормозит.
То есть на такой проект кроме естественной силы развития и разгона, порожденного самой идеей и нужности данного софта, действует другая естественная сила торможения.
Я пробовал Тессерактом распознавать старые листы, сделанные на печатной машинке. Качество там сильно так себе. По дефолту Тессеракт вообще не справлялся. Я потратил время на создание модели обучения, вручную обводил в Box editor каждую буковку, всё сконвертировал как надо. На результат это сильно не повлияло - как был мусор, так и остался. Не готов пока Тессеракт.
С hires сканов он распознает очень даже нормально, пользовал его для оцифровки книжек. Только там надо минимум 600 dpi, а лучше 1200 и выше.
Части распознанного текста уже не вырезает?
Когда-то давно пробовал им распознавать .djvu файлы. Так он "глотал" случайные части текста и выходной файл получался без части текста. Также попадались файлы с флибусты с подобной проблемой - видимо я не один такой.
>Части распознанного текста уже не вырезает?Вырезает мат и неполиткоректтность
>>В движке LSTM добавлена поддержка белых и чёрных списков;
Фу. Не чёрных, а альтернативно белых.
> Я пробовал Тессерактом распознавать старые листы, сделанные на печатной машинке. Качество
> там сильно так себе. По дефолту Тессеракт вообще не справлялся. Я
> потратил время на создание модели обучения, вручную обводил в Box editor
> каждую буковку, всё сконвертировал как надо. На результат это сильно не
> повлияло - как был мусор, так и остался. Не готов пока
> Тессеракт.поставьте scantailor, у него есть пакетный режим обработки (по настройкам) из CLI (если надо несколько страниц), получите на выходе картинки в 600dpi, далее tesseract. Я получал результат лучше файнридера (в смысле рапознавания текста)
Скантейлор имеет ф-ции выравнивания строк (эксперементальные) - у меня работало без нареканий. Как пример: фотка (с сильными шумами, с искаженной перспективой) с банковскими реквизитами, сделанная телефоном, через пленку, была распознана достойно
Увы, по прежнему альтернативы Finereader не видно. Тут дело скорей даже не в самом движке сколько в предобученных моделях. В ABBY использовали нейросети достаточно давно плюс сотрудничество с кучей корпоративных клиентов (в т.ч. библиотек), как итог у них значительно лучше предобученные модели. По прежнему гоняю виртуалку когда надо что-то из сканов перегнать в цифру.
Плюс GUI для Tesseract-а по сравнению с продуктом ABBY мусор. И это еще одна беда. Более чем уверен что Tesseract где-то продается вместе нормальными моделями распознавания и GUI.
Это посмотрите https://help.ubuntu.ru/wiki/yagf
YAGF is a graphical front-end for cuneiform and tesseract OCR tools
https://sourceforge.net/projects/yagf-ocr/
recognita+ приятная штучка. только падает на вин7. надо из виртуалки видимо пускать
Поддержка только Windows не позволяет серьезно рассматривать данный продукт несмотря на повсеместное распространение. Ведь мы же серьезные люди. А так вполне удачен gimageReader. Правда, форматирование не сохраняет.
p.s. Есть сомнение относительно необходимости OCR как класса ПО. По крайней мере некоторые уже имеют проблемы от его использования. Я имею в виду диссертантов и обвинение в плагиате. Поэтому советую, при острой необходимости заимствования, либо точное цитирование (объем которого ничтожен) либо прочитать источник, закрыть его и изложить своими словами.
Добавление. Не существует программ для распознавания формул. В нашей области это проблема, требующая времени для решения. А распознавание текста - разве что для гуманитариев.
Finereader есть под линукс.
Только серверный
Это? "ABBYY FineReader Engine is the Software Development Kit (SDK) to integrate multilingual text recognition and conversion technologies into external applications".Пользовательских (числе серверных) продуктов нет для систем, отличных от Windows.
Ну типа того. Есть разве что ещё вебный сервис от них для обычных пользователей.
Ссылку можно?
Кто-то должен страдать )))
Текст из капчи осилит?
сам уже не справляешься?
Я не робот!
угу, продолжайте разгадывать, осталось еще четыре стадии
Ты отстал от жизни.
Теперь человеком, является только тот, кто распознаёт автобусы 🚌, переходы, гидранты...
У меня плохо получается, но я учусь.
По0моему нужно быть роботом что бы угадать некоторые витрины с автобусами
А что мешает запилить на основе нейросетей нормальный распознавальщик? Пусть он будет в 10 раз тормознее на CPU, тут главное - качество.
Из новости:> Предлагается два движка распознавания: [...] и новый, базирующийся на применении системы машинного обучения на базе рекуррентной нейронной сети LSTM, оптимизированной для распознавания целиком строк и позволяющей добиться существенного увеличения точности.