Автоматическое улучшение метаданных

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

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

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

Карты офиса BL War

Британская библиотека оцифровала более 1800 карт военной разведки и документов из Архива военного ведомства. Большинство этих документов относятся к Восточной Африке, простирающейся от современной Эритреи на севере до некоторых частей Южной Африки. Эти карты и документы можно загрузить бесплатно, поэтому мы так и сделали. Затем мы прогнали изображения через наши системы, чтобы создать изображения с поддержкой IIIF, извлечь OCR со страниц и сохранить их в индексе Elastisearch.

Проверка с картами

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

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

Переход на карту QDL

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

геоназвания

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

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

Фильтрация данных

После того, как Geonames вернет данные, мы хотели применить некоторые проверки работоспособности.

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

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

Мы рассчитали среднее значение долготы и широты и создали ограничивающую рамку, добавляя и вычитая из нее стандартное отклонение (на самом деле, 0,75 стандартного отклонения, но чей подсчет?). Любая точка, которая существовала за пределами этой рамки, была исключена. Это не является надежным, но позволяет фильтровать данные без необходимости внешней каталогизирующей информации.

Как мы покажем это конечным пользователям?

Собрав данные, мы хотели показать это нашим пользователям. Мы использовали OpenSeadragon для обслуживания нашего образа IIIF, что позволило нам использовать аспекты IIIF с открытым исходным кодом.

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

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

Куда дальше?

Мы хотим больше подумать о том, как получить от GeoNames более качественные данные о географических названиях. Мы не могли использовать подход на естественном языке, так как карты не являются прозой и состоят из надписей и аннотаций. Мы ограничили функции городами, убрали стоп-слова и тому подобное. Было бы хорошо добавить некоторую функциональность, чтобы исключить результат, который не имеет смысла географически, исходя из широты и долготы большинства результатов.

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

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

Вывод

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