LINUX.ORG.RU
ФорумTalks

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

 , ,


2

1

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

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

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

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

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

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

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

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

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

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

★★★★★

Главная проблема опенсорса от сообщества - продукт получается хорошим, когда люди над ним работают на полную ставку, а не в свободное время по 5 минут в день. А для этого нужно чтобы разработка кем-то финансировалась, с чем у «сообщества» проблемы

cvs-255 ★★★★★ ()
Последнее исправление: cvs-255 (всего исправлений: 1)
Ответ на: комментарий от cvs-255

О чем и речь, но если некоторые вещи можно по остаточному принципу кодить иногда, то есть системы, где такое не проходит.

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

давайте запилим опенсорцный коммунизм, где разработчики свободного ПО будут привилегированным классом и все остальные будут платить большие налоги на их содержание

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

Это утопия. Но и чистый OpenSource мир, как видно, тоже утопия, потому как, чтобы там Столлман не говорил, но проблема с финансированием толком не решается.

Хотя возможно это еще следствие вообще сокращения среднего класса, то есть, большинство людей делаются все время относительно беднее, чтобы чего-то там финансировать.

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

чтобы там Столлман не говорил

Я с него местами офигеваю. На какой-то из конференций его прямо спросили: на какие деньги, по его мнению, должен жить программист, основной деятельностью которого является написание опенсорса. На что был злобный ответ, что: (не дословно, но похоже) «это попытка оправдать вымогательство и грабеж людей, заставляя их платить деньги за то, что копируется бесплатно»

cvs-255 ★★★★★ ()
Ответ на: комментарий от Harald

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

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

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

Платные аналоги - примерно также. Лучше не видеть бы вообще эти распознанные стили, отступы, таблицы, формулы и монохромные картинки с дизерингом.

Suigintou ★★★★ ()

Tesseract-ом и CuneiForm-ом давно пользовался?

Наукоёмкая задача давно решена. Главная проблема на сегодня — интерфейс. Движки распознавания — чёрные ящики, к которым приделать пользовательский интерфейс тяжело.

Хотя до интерфейса FineReader большинство коммерческих решений не дотягивают.

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

Хотя возможно это еще следствие вообще сокращения среднего класса, то есть, большинство людей делаются все время относительно беднее, чтобы чего-то там финансировать.

Скорее врождённая любовь к халяве. Люди пользуются и не особо думают о финансировании разработки.

xaizek ★★★★★ ()

силами сообщества

Что такое «OpenSource сообщество»?

Я думаю, это ключевой вопрос.

i-rinat ★★★★★ ()

к чему этот пост? ты еще сообщи всем, что земля круглая. да, сложные большие продукты создаются только в организациях. что тут обсуждать?

почему они не создаются под линукс? это уже все давно знают.

компании типа canonical и redhat пытаются его хоть как-то облагородить.

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

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

Внезапно для написания чего то сложнее калькулятора нужны специалисты за деньги?

chenbr0 ()
Ответ на: комментарий от Suigintou

Платные аналоги - примерно также. Лучше не видеть бы вообще эти распознанные стили, отступы, таблицы, формулы и монохромные картинки с дизерингом.

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

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

Наукоёмкая задача давно решена. Главная проблема на сегодня — интерфейс. Движки распознавания — чёрные ящики, к которым приделать пользовательский интерфейс тяжело.

И интерфейс тоже, я даже об этом сказал. Но и просто распознавание текста у свободных OCR хромает на обе ноги. Если скан качественный, то еще туда-сюда приемлемо, но если изображение не очень хорошее, в том числе из-за исходника, то все. Альтернативы тому же Finereader тогда просто нет.

Да ты ведь сам уже 11 лет назад делал сравнение Сравнение OCR под линукс и с тех пор ситуация существенно не улучшилась.

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

esseract-ом и CuneiForm-ом давно пользовался? Наукоёмкая задача давно решена. Главная проблема на сегодня — интерфейс.

Даже и не близко.

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

ты ведь сам уже 11 лет назад делал сравнение

А недавно снова пользовался Тессерактом. Пришёл к выводу, что он догнал и перегнал Cuneiform. Теперь для выхода на уровень FineReader нужно как-то дать пользовательскому интерфейсу доступ к его потрохам. А заодно подключить Hunspell.

Анализ макета не оценивал.

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

Надо новое сравнение замутить =)

Но я просто сталкиваюсь на практике и Tesseract без обучения на работе на архивных сканах выдает просто мусор. Если обучить, то мусор, в котором изредка проскакивает что-то осмысленное. А вот Finerader тоже много мусора, но примерно в соотношении 70% осмысленного текста и 30% мусора. Это уже можно пробовать использовать для индексации.

praseodim ★★★★★ ()

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

Давай сразу к делу: я напишу тебе нетривиальную наукоемкую софтину. Кто заплатит за работу мне и моим коллегам? Почему дворник, который метет улицу чтобы люди ходили по чистой улице, получает деньги, а опенсорс должен писаться за спасибо?

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

И месенжеры не нужны, и офисные пакеты, и операционные системы, да, в общем-то, и компьютеры вовсе не нужны.

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

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

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

Лично мне OCR пилить интересно, например, но я через ML хочу, а значит мне датасет нужен для начала, поди его найди в опенсорсе и для разных языков с разными шрифтами. На английском и немецком есть, а на русском уже всё плохо, а опенсорс это значит что и данные должны быть не серые или вообще ворованные, а белые, на которые в явном виде есть разрешение. А таких в природе нету. Вот и выходит что наукоёмкий опенсорс писать сложно.

ЗЫ

Для начала с сегментацией текста хотя бы.

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

Кстати, касательно науки (отечественной), рекомендую местным товарищам ознакомиться, например, с этим творением студня МГУ которая на отлично училась, если верить гуглу (заодно и иллюзии разбить поможет что в МГУ какие-то особые люди учатся), студень явно не полный дурачок, но и веры у меня в неё нету. Да, это не сама ВКР, а либо черновик, либо её кусок, либо выжимка для защиты, если так выглядит вся ВКР, то в МГУ всё очень плохо.

http://www.machinelearning.ru/wiki/images/0/0b/2017_417_SholokhovaTN.pdf

Мысли там правильные, работа нормальная для ВКР, но кто сможет найти там ошибки (как минимум 1 лоровцы должны увидеть)?

ЗЫ

Если автор читает этот пост, не обижайся, просто за базаром следить надо, не стоит бездумно писать и надеяться, что никто не прочитает. Я свою ВКР 3 раза переписывал именно чтобы не было никаких странностей и чтобы я мог отвечать за каждое слово и запятую, как и каждую цифру мог объяснить с закрытыми глазами (да, очень упёрся в срок, когда при переписывании заметил небольшой нюанс и буквально за 3 дня до сдачи готовой ВКР на подпись всё переделал и переписал, принципиально ничего не изменилось, но я смог гарантировать, что одна ошибка из нескольких корректно посчитана, без нарушения методики, точность модели изменилась при этом на 0,07%, что ясно смешно при точности порядка 80%). Сама идея мне нравится, реализации к сожалению не увидел, но думаю она неплоха. Есть, как минимум ещё 1 технический спорный момент, но думаю без него работу не удалось бы сделать в срок, хотя методологически я не одобряю, так уж случилось, что я похожими штуками занимался во время обучения и это моё хобби к тому же.

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

а на русском уже всё плохо, а опенсорс это значит что и данные должны быть не серые или вообще ворованные, а белые, на которые в явном виде есть разрешение.

Зачем? Никто не требует раскрывать датасет. Просто помалкивай, что использовал, например, книжки с электронных библиотек для тренировок ML. А еще лучше, чтобы кто-то другой (реальный или мнимый) тестировал на как бы своем датасете, а тебе только коэффициенты давал.

А то с такой моралью с ML энтузиастам вообще нечего делать, потому что не только с текстами для OCR, фактически вообще ни для чего нет возможности полностью белый большой датасет найти, если ты не крупная компания.

praseodim ★★★★★ ()
Последнее исправление: praseodim (всего исправлений: 2)
Ответ на: комментарий от peregrine

а значит мне датасет нужен для начала

С этим, как правило, нет проблем для некоммерческого использования. Обычно для OCR используют трансфер лернинг с какого-нибудь искусственного датасета а-ля SynthText. Сама синтетическая природа текста позволяет генерировать любые датасеты в любом объеме.

Лично мне OCR пилить интересно, например, но я через ML хочу

посмотри работы с ICDAR, например.

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

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

Можно, конечно. Но есть и скользкие места вроде медицинских данных или биометрии.

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

Да нужно-то оно нужно, но OpenSource сообщество не потянет сделать качественный OCR (уровня ABBYY, другого, в общем-то и нет). Тема тяжёлая и наукоёмкая, а корпам никому не нужно. Сообщество даже CuneiForm не потянуло, хотя когда-то давно было довольно конкурентно. Ну и сейчас есть тот же CuneiForm, который и тогда был по качеству не хуже, чем попытки что-то сделать сейчас с Tesseract (тоже внезапно Google).

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

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

bender ★★★★★ ()

Если проблема в том, что технология наукоёмкая, то, по-моему, решение довольно очевидно. Научная работа как правильно стоит довольно больших денег, и на одном энтузиазме тут далеко не уедешь, кушать хотят все, особенно учёные. Значит, надо как-то искать финансирование, и тут есть два варианта.

  1. Краудфандинг. Преимущества: легко организуется, есть многочисленные примеры успешных проектов, профинансированных таким образом. Недостатки: лотерея во всех смыслах, краудфандинговые платформы берут себе долю бабла.

  2. Госфинансирование. Если задача общественно значимая (OCR такой, как мне кажется, является), то можно организовать научный коллектив и подать заявку на грант под инициативный проект в какой-нибудь фонд. Всё, что разработано на народные деньги, должно быть обнародовано, то есть, исходный код должен быть открыт. Преимущества: не надо делиться деньгами с краудфандинговыми платформами, надёжное финансирование в нужном объёме, низкая вероятность, что кто-то кого-то кинет. Недостатки: высокий порог вхождения и бумажная волокита.

Очень интересно, есть ли в мире примеры разработки опенсорца за госуданственный счёт по инициативе «снизу», и если нет, то почему.

Axon ★★★★★ ()
Последнее исправление: Axon (всего исправлений: 1)
Ответ на: комментарий от Axon

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

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

В госфинансировании в РФ, ты по итогу сядешь или останешься должен. Плюс за место разработки будешь пилить отчёты на отчёты.

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

примеры разработки опенсорца за госуданственный счёт по инициативе «снизу»

Scala? В Европе в этом плане очень недурно, дают 50к евро просто так. Другой вопрос, что из этого ничего годного не получается, т.к. эти бюджеты осваивают не скромные стесняшки-разработчики, а горлопаны и прочие хипстеры.

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

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

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

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

В госфинансировании в РФ, ты по итогу сядешь или останешься должен. Плюс за место разработки будешь пилить отчёты на отчёты.

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

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

Scala?

Действительно, хороший пример.

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

Как я понимаю, подобное финансирование выделяется для «удобрения почвы», и там не стоит цель, чтобы каждые $50k обязательно вылились в успешный проект. Мы же говорим про нормальные деньги, выделяемые на конкурсной основе.

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

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

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

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

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

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

Короче, ИМХО как говорится, но если самому долго и упорно не вопить на всех углах о том как на сером или черном по происхождению датасете, забацал свою крутую программу, то и фиг кто придерется.

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

praseodim ★★★★★ ()
Последнее исправление: praseodim (всего исправлений: 1)
Ответ на: комментарий от peregrine

Именно грантовое финансирование инициативного исследовательского проекта, или госинвестиции в бизнес?

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

Следственный комитет России сообщил, что бизнесмен Валерий Пшеничный, чье тело было найдено в петербургском СИЗО 5 февраля, покончил с собой, сообщает пресс-служба ведомства.

А учёные тут при чём?

Axon ★★★★★ ()

Ситуация с Opensource OCR закритическая и это мягко сказано. Подававший надежды OpenOCR уже 3 года как сдох и болъше не предлагается для скачивания, тесеракт рухнет, когда у гугла закончатся деньги или когда ему надоест. OpenOCR как первый «кандидат» на замену Finereader в российском корпоративном секторе не выдерживает никакой критики. Его технологии топчется на месте уже 16 лет и будет топтаться еще 30 лет и никому он не будет нужен. Постепенно Abbyy нанесет и уже начинает наносить удар с другой стороны - рынка онлайн решений. На этом рынке OpenOCR точно проиграет Finereader. Таким образом, OpenOCR останется поделкой для мальчуганов с грязного «unix-way», у которых цена Finereader - месячная зарплата стипуха пособие по безработице. И всем понятно, что OpenOCR это никакая не конкуренция Finereader. Это миф. Очень печально, что вокруг него развелись много шума из ничего, типа присвоение статуса «самого лучшего OpenSource проекта России» и «ключевое событие 2007-го года». А что предлагают народу, правильно, кота в мешке, который даже табличные блоки не умеет распознавать. Поэтому скоро эйфория с ним закончится, он всем надоест, и Opensource OCR останется символом выкидывания на помойку в Opensource по принципу «на тебе боже, что нам не гоже» и красноглазия. И это хорошо, товарищи. Никакого Opensource OCR, товарищи!

GP ()
Ответ на: комментарий от praseodim

Среднего класса не существует, это проделки маркетологов.

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

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

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

Хороший позитивный пример, спасибо.

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

Наукоёмкая задача давно решена.

Нет не решена, просто не актуальна в современном мире. Профильные журнальчики (https://www.springer.com/journal/10032) продолжают существовать и регулярно выпускать новые сборки статей и собираться на конференции (http://icdar2019.org/), где упомянутый файнридер и абби являются «платиновыми спонсорами».

Формулки математические, химические, музыку никто так толком и не научился распознавать, наверно потому, что «денег нет, держитесь там».

Проблема «OCR» возникает теперь в-основном у студентоты, которым надрать на курсач-диплом надо бы из книжечки, которую никто пока не распознал-отсканил.

А документооборот уже давно электронный, там где это генерирует деньги. Вот и не нужен стал OCR.

Примером-аналогом OCR является задача трассировки растра, например для векторизации карт. Есть платный изитрейс, есть опенсорсный grass gis, который мало кто умеет готовить, но сообщество плюнуло, раcтерло и появился OSM.

nikitos ★★ ()
Последнее исправление: nikitos (всего исправлений: 1)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)