LINUX.ORG.RU
ФорумTalks

Проблемы OpenSource на примере OCR

 , ,


2

1

Самая большая проблема, что в OpenSource силами сообщества на практике получается, что очень затруднена разработка чего-то нетривиального и наукоемкого. В лучшем случае это плод труда одного-двух энтузиастов или открытые исходники фирменного продукта.

Oптическое распознавание тут хороший пример, потому что программы такого рода достаточно сложные, чтобы их можно было писать без основательных (хотя и не бог весть каких на самом деле) знаний математики и где-то даже биофизики.

И оно не так сильно востребовано, чтобы все-таки нашлось приличное финансирование. Все же многим, наверное, большинству людей распознавать тексты как-то не нужно.

Кроме того, для достижения качества, реально сравнимого с коммерческими системами, вроде Finereader, требуется проделать большое количество кропотливой работы.

В итоге лучшее, что есть - это медленно развиваемый гуглом Tesseract (который когда-то был коммерческим продуктом HP), с довольно поганым на самом деле качеством распознавания. Которому даже последние нововведения в виде каких-то нейросеток для тренировок на целые слова, не особо помогли.

При том, что tesseract еще как-то умеет просто текст распознавать, у него совсем плохо (практически никак) с распознаванием разметки (макета), стилей и т.д.

Есть куча разных старых полузаброшенных и заброшенных программок. Есть еще российский cuneiform, который когда-то был неплох в середине 90-х, но устарел и прекратился развиваться. И которому открытие никак не помогло в этом смысле.

В чем жирный плюс, однако, что у коммерческих систем, в частности у Finereader, большие ограничения по части автоматизированной работы. За нее хотят совершенно отдельных денег.

Поэтому в нише такой вот автоматической обработки OpenSource программы OCR рулят, если не требуется хорошего качества распознавания.

Аналогичный пример с распознаванием речи. Сейчас чего-то там Mozilla финансирует, но в целом оно на жалком уровне, хотя это куда востребованнее, в том числе в смысле приватности

★★★★★
Ответ на: комментарий от nikitos

Нет не решена, просто не актуальна в современном мире.

Имеющиеся решения покрывают подавляющее большинство случаев. Сомневаюсь, чтобы программа распознавания формул окупилась по цене Файнридера.

Так-то да, проблема распознавания образов гораздо шире. Но сформулированая ТС узкая задача создать свободную программу не хуже FR уже не требует фундаментальных открытий.

question4 ★★★★★
()
Ответ на: комментарий от question4

Имеющиеся решения покрывают подавляющее большинство случаев.

Но сформулированая ТС узкая задача создать свободную программу не хуже FR уже не требует фундаментальных открытий.

Решением поставленной ТС задачи будет программа, которая сможет достаточно хорошо для практического применения находить на входной странице текстовые области, разделять эти области на строки-слова и распознавать их.

Как видите, OCR в случае изображений документов состоит из под-задач, каждая из который решена не до конца, и не до конца по-разному.

Ложное впечатление ‘решенности задачи OCR’ возникает от того, что её казалось бы главная часть - найти соответствие между кусочками растра с масками букв и их ASCII значениями, действительно решена неплохо, но чтоб получился файнридер, этого не достаточно, не хватает функции сегментации страницы на области.

Эта функция страдает и у файнридера, если что. От этого и нет нормальных программ распознающих формулы, потому что, для того чтоб распознать формулу - её нужно для начала найти на странице, для того чтоб отформатировать текст как таблицу - таблицу сначала надо найти.

Приведенные мной в первом сообщении ссылки - это не про ‘распознавание сферически-конных образов’, это конкретная область ‘анализа изображений документов и их распознавания’, так вот, самая хромающая часть в ‘научно-решенной задаче’ это именно анализ.

И если под какой-то узкий набор документов, примерно одного типа можно наскриптовать из готового опенсорса, то вот сделать это ‘универсально’ и не получается.

Именно в области анализа структуры изображений документа нет фундаментальных открытий, практических реализаций, позволяющих решать эту подзадачу ‘OCR’ достаточно хорошо на любом наборе входных данных.

nikitos ★★★
()
Последнее исправление: nikitos (всего исправлений: 1)

На мой взгляд опенсорс губит увеличивающаяся сложность, а не наукоемкость ПО. Компании умеют бороться со сложностью через менеджмент и распределение ролей, в опенсорсе каждый себе лебедь, рак и щука.

filosofia
()
Ответ на: комментарий от nikitos

То есть ты считаешь, что даже для достижения уровня Файнридера свободной программой необходимы фундаментальные исследования? Не специалист, спорить не буду.

question4 ★★★★★
()

Самая большая проблема, что в OpenSource силами сообщества на практике получается, что очень затруднена разработка чего-то нетривиального и наукоемкого.

А freeCAD? Blender, Celestia, openscad?

anti_win ★★
()
Ответ на: комментарий от anti_win

openscad + fillets == боль :)

Можно CSG создавать в openscad, импортировать полу-фабрикат в FreeCAD, и уже в нем добавлять нормальные приплывы и фасочки.

Тогда получается более-менее норм, но это 2 программы, а не 1. Но радует, что например я свои все задачи твердотельного моделирования могу решать полностью в опенсорсе.

nikitos ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.