Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии

в 21:00, , рубрики: ABBYY, finereader engine, recognition server, Блог компании ABBYY, обработка изображений, оцифровка книг

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 1

Сегодня мы хотим рассказать, как оцифровывали издания Национальной библиотеки Латвии. Если вы следите за нашим блогом, вы наверняка читали, как наши технологии помогают оцифровать литературное наследие разных библиотек, а также статьи, посвященные отдельным проектам — оцифровке в Сахалинской библиотеке, королевском ботаническом саду Эдинбурга и библиотеке Хартли. Сегодня история о том, как это было в Риге. Итак, Национальная библиотека Латвии – крупнейшая в стране, основана в 1919 году, обладает 4,5-миллионным собранием книг и документов, в том числе на латышском языке в уникальном готическом написании.

С XVI века запись всех текстов велась готическим шрифтом, подтверждение тому – старейшие памятники печати на латышском языке: католический Катехизис П. Канизия (Вильнюс, 1585) и Малый Катехизис М. Лютера (Кенигсберг, 1586). Готический шрифт использовался для записи латышского языка вплоть до ХХ века. Самое интересное, что он отличался от привычного многим (и уже знакомого нам) немецкого языка в готическом исполнении.

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 2

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 3

Изначально планировалось обработать материалы, которые физически повреждены или популярны среди читателей, либо считаются исторически важными. Они должны были быть «спасены», по крайней мере, в цифровом виде. Примерный объем работ составлял 2,5 тыс. страниц периодических изданий, что равно около 1000 самих изданий и 1,5 млн. страниц книг – это примерно 7000 штук.

История знакомства

К моменту нашего знакомства библиотека уже сотрудничала с компанией-поставщиком услуг по оцифровке, которая, в свою очередь, использовала OCR-технологии ABBYY. Но распознать сканы не получалось – проблемы была в том, что наши технологии не могли правильно «увидеть» латышскую готику, поскольку не были обучены таким символам. Тогда библиотека обратилась в ABBYY.

Готическое распознавание

К тому времени наш ABBYY FineReader Engine уже поддерживал готический шрифт, но латышская готика отличалась от схожей и известной нам немецкой. Чтобы научить продукт новому шрифту, пришлось добавить много новых символов.
От библиотеки нам пришел пакет изображений. Вот так выглядит часть первого пакета.

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 4

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 5

Мы взяли небольшую часть изображений из этого пакета и разделили её на две базы: обучающую, по которой обучаются графемы, и тестовую, с которой мы сверяем правильность распознавания. Графема – это конкретный способ графического представления символа. Отношение между символами и графемами достаточно сложное – в европейских языках одной графеме может соответствовать несколько символов (маленькая «с» и большая «С» в латинице и кириллице – это все одна графема), а одному символу может соответствовать несколько графем (буква «a» в разных шрифтах может быть обозначена разными графемами).

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 6

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

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

Некоторые из них показаны ниже.

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 7

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 8

Готическое распознавание: как мы помогали оцифровывать Национальную библиотеку Латвии - 9

После того, как описаны все признаки и программа на тестовом пакете изображений показывает меньше 5% ошибок (точность в 95% вообще достаточна для того, чтобы считать, что в первом приближении язык мы поддерживаем хорошо), работу по добавлению шрифта можно считать законченной. Всего мы добавили 39 символов. Мы сделали версию FineReader Engine с новым шрифтом и отправили в библиотеку. Чуть позже нам прислали ещё один пакет изображений – в нём встречались символы, которых не было в первом пакете. И все началось заново – конечно, по объему новые вводные оказались меньше, все равно технологию пришлось «доучивать».

Изменения неизбежны

Наконец FineReader Engine с поддержкой готики в латышском написании был готов. Когда мы отправили его клиенту, выяснилось, что библиотека перестала сотрудничать с прежним поставщиком услуг по оцифровке. Для нас это означало, что встроить наш SDK в конечный продукт, который должен был распознавать книги, теперь некому. Нам ничего не оставалось, кроме как переделать Engine в конечный продукт – в результате за один день мы сделали приложение, которое брало все изображения из одной папки и складывало результат распознавания в заданном формате в другую папку – очень сильно упрощённый аналог ABBYY Recognition Server. Тем временем руководство библиотеки искало замену компании, предоставляющей услуги по оцифровке и обслуживанию библиотечного ПО. Выбор пал на немецкую компанию CCS, которая уже работала с нашими продуктами и технологиями. Им было достаточно просто встроить уже готовый Engine с готическим шрифтом в свою систему и начать работу.

И, как это принято в подобных историях, — немного статистики под конец. Чуть больше года потребовалось для обработки 4 миллионов страниц древних книг и современных изданий. В пиковые периоды проекта 60 операторам сканирования и верификации приходилось работать по три восьмичасовые смены ежедневно.

Цифровые версии книг Национальной библиотеки Латвии вы можете найти на сайте www.periodika.lv.

Автор: ABBYY

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js