Action information
143,31
рейтинг
19 января 2012 в 12:47

Разное → ABBYY Labs – what's new?

Время подводить итоги первого проекта ABBYY Labs. Напомню, что цель проекта – дать возможность студентам в процессе обучения решать задачи, в большей степени приближенные к реальным, чем это бывает в обычном учебном процессе. И «погрузить» их при этом в соответствующее окружение: среда, в которой проходила разработка, – реально действующая IT-компания.

Студенты факультета инноваций и высоких технологий МФТИ были озадачены распознаванием формул и экспортом в TeX (изначальная постановка задачи – тут).

Что у них получилось?

В качестве инструмента для распознавания самих символов был взят ABBYY Mobile OCR Engine for Windows, который, конечно, клёвый, но под формулы совершенно «не заточен». Студенты были разбиты на 2 группы: одна занималась анализом, а вторая – распознаванием и экспортом.

Анализ

Анализ изображения в OCR – это процесс нахождения блоков, содержащих разную с точки зрения OCR информацию. «Вон там картинка, а там – текст», – говорит анализатор. Исходный движок формул не видит – нет у него просто такого понятия. Это ребятам надо было постараться исправить.

Для контроля качества своей работы студенты использовали хитрый ход. Для большого количества документов в формате TeX они получили информацию о том, где на каждой странице расположена формула. Как? Взяли исходники математических статей и скомпилировали TeX-компилятором в картинки. Именно их собирались распознавать. Потом те же исходники они «подпортили»: фон для формул сделали черным, а цвет текста вне формул сделали белым. И тоже скомпилировали в картинки. На подпорченных картинках оказались только черные прямоугольники «формул», которые легко отличить и узнать таким образом их «истинные» координаты. После этого исходные, «неподпорченные» изображения прогоняли через анализатор и смотрели, насколько сильно отличаются найденные координаты прямоугольника формулы от достоверно определённых координат чёрного прямоугольника. Вот и готова автоматическая система проверки качества!

Задача выделения прямоугольника, в котором точно содержится формула, – это самая сложная часть проекта. Для решения её были выделены признаки с весами (т.е. значимостями этих признаков), варьируя которые можно улучшать (или ухудшать :) качество анализа. Признаки были нескольких видов:
• Словарные признаки искали на предварительно распознанном изображении математические функции, такие как sin, lim, f(x).
• Геометрические искали слишком широкие или слишком высокие «палки» – дроби, интегралы, части матриц.
• Признаки параметров текста пытались определить по межстрочному расстоянию (если в текст закралась формула, межстрочное расстояние будет больше).

Что из этого получилось:
• Такие прямоугольники строк нашёл обычный Mobile OCR Engine (напоминаю, к распознаванию формул никак не приспособленный):
• Такой прямоугольник формулы нашёл анализатор, который в курсе существования объекта «формула»:
Наверняка существует набор весов для признаков, который будет давать лучшие результаты. С учётом наличия готовой системы проверки качества, это задача времени, ведь поиск лучших весов можно в значительной степени автоматизировать.

Распознавание

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

Экспорт

В результате распознавания получается дерево из операторов и операндов. В процессе обхода дерева получается строка для TeX. С этим проблем не возникло.




Впечатления


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

На этом, конечно же, проект ABBYY Labs не закрывается. Ждите новостей в следующем учебном году!
Автор: @MKrivosheev
ABBYY
рейтинг 143,31
Action information

Комментарии (7)

  • +13
    На фотке тоже студентка МФТИ?
    • +11
      Нет. Но миленькая, согласитесь :)
  • –4
    Про тестирование — интересно, хорошая подробность.
    Все остальное — рекламная вода.
  • –6
    Я бы вдул
  • 0
    Начиная с какой версии Finereader умение распознавать формулы в него встроено?
    • 0
      Пока что нет такой версии. Когда будет — обязательно появится анонс на Хабре :)
      • 0
        А будет ли? Больше года прошло, как уже было чем хвастаться, а пока даже планов по интеграции не показывали.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разное