• Сегментация страницы — обзор

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

      Вот как-то так страницу сегментируемНо для начала – маленькое отступление. Систему распознавания текста в наших продуктах можно описать очень просто. У нас есть страница с текстом, мы разбираем ее на текстовые блоки, затем блоки разбираем на отдельные строчки, строчки на слова, слова на буквы, буквы распознаем, дальше по цепочке собираем все обратно в текст страницы. Задача сегментации ставится примерно так: есть страница, надо её декомпозировать на текстовые и нетекстовые элементы.

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

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

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

        What were the main challenges to be overcome when developing the software? Were there any particularly knotty problems?

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

        И здесь есть повод задуматься. Всё-таки с точки зрения сложности задач не так уж это интересно – низкое качество изображения и декоративные шрифты. Мы примерно то же самое могли сказать и пять лет назад, и десять, и двадцать. Да, несомненно, прогресс есть – и для большей части версий известный обозреватель и наш старый друг Сергей Голубицкий находил как раз те картинки, которые оказывались на «переднем крае» наших технологий – чтобы именно их новая версия FineReader стала обрабатывать практически идеально, а старая пока «спотыкалась».

        Но чтобы рассказать о том, какие трудности перед нами стоят ещё, стоит прибегнуть к небольшой метафоре. Вот какие трудности у вас возникли, чтобы решить следующую задачушкольный пример
        Только не надо и правда её решать в уме: мы НЕ подбирали цифры, чтобы ответ был целым
      • Дореформенный словарь: рецепт

          Как, наверное, многим хабрапользователям известно, сегодня, 24 мая, отмечают день славянской письменности — праздник тех, для кого слово ОРЕХ означает всё же не «operational expense». Сегодня я расскажу, как можно из современного русского морфологического словаря изготовить словарь русского языка с дореформенной орфографией. Обо всём по порядку.



          Как многие из нас знают, революция 1917 года отменила в России не только обязательства по долгам, но и некоторые буквы из русского алфавита. Но дореформенные правила забытыми не остались, текстов, опубликованных до реформы, тоже сохранилось изрядно (даже в моей скромной домашней библиотеке найдётся пара томов), да и вообще тема создания морфологического словаря для той, винтажной, грамматики сама по себе интересна. Реформа состояла в том, что из обращения убрали некоторые буквы (і,ѣ, ѵ и ѳ), а также изменили некоторые правила, прямого отношения к употреблению этих букв не имеющих. Подробнее в википедии.

          Сегодня мы поговорим о том, как из морфологического словаря нашего обычного современного русского языка породить морфологический словарь для языка дореформенного.
          Как же это сделать
          • +34
          • 8.1k
          • 5
        • Десяток датчиков и одна бабушка на службе прогресса

            Добрый день, Хабр!

            Сегодня я расскажу тебе о конференциях ICDAR и CBDAR , состоявшихся в конце августа в стольном граде Вашингтоне. Точнее, не о конференциях целиком – наука там достаточно специфична, не зря помимо сотрудников ABBYY русскоязычных участников там было раз-два и обчёлся. Здесь речь пойдёт о работах команды под руководством учёного-энтузиаста по имени Кай Кунзе (Kai Kunze).

            Область интересов Кая не вполне соответствует тематике конференций, но тесно с ней переплетается. Достаточно подробно Кай рассказал о своих разработках на своём пленарном докладе (Keynote talk) конференции CBDAR. А занимается Кай тем, что учит компьютер понимать, чем занимается пользователь. Так как большинство участников конференции (в том числе и я) слабо разбирается в «железе», то эта тема в докладах не была освещена должным образом, поэтому под катом рассказов о железе нет.
            А что там всё-таки есть?
          • Рунический процессинг

              Добрый день, уважаемые читатели.

              Наверное, вы хотите услышать от нас бравурную success-story внедрения наших облачных технологий. Разочарую – сегодня речь пойдёт о делах более чем земных, но не становящихся от этого менее интересными. Я попробую рассказать вам об амбициозном проекте процессинга рунических документов, получаемых из разных источников. К примеру, вот таких:

              image

              В этом проекте мы столкнулись с необычными задачами не только для систем распознавания, синтеза текста и DA (document analysis – так у нас называют часть FineReader’а, отвечающую за выделение текстовых областей), но и для обработки изображений и экспорта.

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

              Впрочем, обо всё по порядку
            • Как определить язык напечатанного текста? (Европейские языки)

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

                Для начала – что такое европейские языки. Предлагаю ограничиться государственными языками стран Европы. Так как границы Европы – вещь спорная, то отдельно оговоримся про соседние страны. Духовно близкий Израиль, а также Грузию и Армению можно отличить по письменности из той же блок-схемы, Азербайджан и Казахстан я включу по доброте душевной, а Абхазию и Южную Осетию – в качестве прогиба перед российской властью. Так что абхазский в наш классификатор попадёт, а баскский и гэльский – ну уж нет, перебьются.

                Языков больше, чем типов письменности. Поэтому диаграмка получилась большая. Отличать языки друг от друга будем в основном по особенным буквам, в частности, по буквам с диакритическими значками (диакритикой). Диакритика бывает над гласной (в букве й), над согласной (буква č) или может как-то сопровождать букву (как в букве ç; строго говоря это не дикритика вовсе, но мы здесь будем придерживаться такого жаргона). Наиболее известные (с моей точки зрения) значки в Европе — это умляут (он же диаерезис: ü), гачек (č) и акут (é).

                Тех, кто не испугался, прошу под кат
              • Передаём проект: howto

                  Много в этом мире сказано, что код надо писать так, чтобы его было легко поддерживать любому другому разработчику и чтобы проект мог быть передан на поддержку другим людям в любой момент. Но каково это – передавать проект, с которым прожил несколько лет, в совсем другие руки? Кем окажется для проекта его новый руководитель – вторым отцом или злым отчимом (уважаемые читательницы, я помню о вашем существовании, но вы в меньшинстве)? Будет наше детище развиваться и набирать сил, или умрёт, уступив место чему-нибудь куда менее красивому, явно не столь качественному (мы-то понимаем, кто здесь самый крутой профессионал) и совсем чужому? Для тех, кого действительно волнует его будущее, и написана данная статья. Замечу, что в ABBYY я проработал в нескольких проектах, оставлял их по разным причинам. Большинство из проектов – задачи без чёткого решения (распознавание, поиск разных неформально описанных объектов и т.п.).
                  Читать дальше →