HOCR
Эта статья нуждается в дополнительных цитатах для проверки . ( май 2010 г. ) |
hOCR — это открытый стандарт представления данных для форматированного текста, полученного в результате оптического распознавания символов (OCR). Определение кодирует текст, стиль, информацию о макете, показатели достоверности распознавания и другую информацию с использованием расширяемого языка разметки (XML) в форме языка гипертекстовой разметки (HTML) или XHTML . [1]
Программное обеспечение
[ редактировать ]Следующее программное обеспечение OCR может выводить результат распознавания в виде файла hOCR:
Пример
[ редактировать ]Следующий пример представляет собой фрагмент файла hOCR:
...
<p class="ocr_par" lang="deu" title="bbox930">
<span class="ocr_line" title="bbox 348 797 1482 838; baseline -0.009 -6">
<span class="ocrx_word" title="bbox 348 805 402 832; x_wconf 93">Die</span>
<span class="ocrx_word" title="bbox 421 804 697 832; x_wconf 90">Darlehenssumme</span>
<span class="ocrx_word" title="bbox 717 803 755 831; x_wconf 96">ist</span>
<span class="ocrx_word" title="bbox 773 803 802 831; x_wconf 96">in</span>
<span class="ocrx_word" title="bbox 821 803 917 830; x_wconf 96">ihrem</span>
<span class="ocrx_word" title="bbox 935 799 1180 838; x_wconf 95">ursprünglichen</span>
<span class="ocrx_word" title="bbox 1199 797 1343 832; x_wconf 95">Umfange</span>
<span class="ocrx_word" title="bbox 1362 805 1399 823; x_wconf 95">zu</span>
<span class="ocrx_word" title="bbox 1417 x_wconf 96">ver-</span>
</span>
...
Распознанный текст сохраняется в обычных текстовых узлах HTML-файла. Распределение на отдельные строки и слова здесь задается окружающими тегами span . Более того, используются обычные объекты HTML, например тег p для абзаца. Дополнительная информация указана в таких свойствах, как:
- различные элементы макета, такие как «ocr_par», «ocr_line», «ocrx_word»
- геометрическая информация для каждого элемента с ограничивающей рамкой «bbox»
- информация о языке "lang"
- некоторые доверительные значения "x_wconf"
bbox
[ редактировать ]Общий
[ редактировать ]Макет объекта ограничивающей рамки или объекта bbox является грамматическим.
- имя-свойства = "bbox"
- значение свойства = uint uint uint uint
Пример
[ редактировать ]bbox 0 0 100 200
bbox — сокращение от «ограничивающая рамка» — элемента представляет собой прямоугольную рамку вокруг этого элемента, которая определяется верхним левым углом (x0, y0) и нижним правым углом (x1, y1).
значения относятся к верхнему левому углу изображения документа и измеряются в пикселях.
порядок значений: x0 y0 x1 y1 = «слева вверху справа внизу»
Использование
[ редактировать ]Используйте x_bboxes ниже для ограничивающих рамок символов.
Не используйте bbox, если ограничивающая рамка компонента макета на самом деле не является прямоугольной; некоторые непрямоугольные компоненты макета могут иметь прямоугольные ограничивающие рамки, если непрямоугольность вызвана плавающими элементами, вокруг которых обтекается текст.
<span class="ocr_line" id="line_1" title="bbox 10 20 160 30">…</span>
Ограничивающая рамка bbox этой линии показана синим цветом и охватывает верхний левый угол (10, 20) и нижний правый угол (160, 30). Все координаты измеряются относительно верхнего левого угла изображения документа, граница которого нарисована черным цветом. [3]
PDF-файлы с возможностью поиска
[ редактировать ]Формат hOCR чаще всего используется для создания PDF-файлов с возможностью поиска или в качестве извлеченных метаданных PDF-файла. Для создания PDF-файлов с возможностью поиска мы можем использовать отсканированное изображение документа и файл .hocr конкретного изображения. Для этого мы можем использовать следующие инструменты с открытым исходным кодом.
hocr-инструменты
[ редактировать ]Источник: [4]
hocr-tools — это библиотека с открытым исходным кодом, написанная на Python. К сценариям прикреплена утилита командной строки под названием hocr-pdf , которая позволяет нам конвертировать стандартные файлы hocr в PDF-файл с возможностью поиска. Также стоит отметить, что версию для работы с файлами hocr в RTL или нелатинскими алфавитами , такими как арабский необходимо использовать репозиторий GitHub , нам на данный момент .
hocr-pdf
Мы можем использовать утилиту hocr-pdf, используя следующий базовый синтаксис.
hocr-pdf—savefile final.pdf folder_images_and_hocr
Папка_images_and_hocr должна содержать соответствующие файлы формата .jpg и .hocr с измененными расширениями.
Известные проблемы
[ редактировать ]Ниже приведены некоторые известные проблемы сценария hocr-pdf при установке PyPI.
- Не обновлен репозиторий GitHub.
- hocr-pdf не работает в строке 134 из-за того, что decodebytes() устарел после Python 3.1 [5]
Известные исправления
[ редактировать ]Скомпилируйте hocr-tools, используя последний репозиторий GitHub.
hocr2pdf
[ редактировать ]hocr2pdf [6] — еще одна библиотека, поддерживающая преобразование файлов hocr. Он написан на C++ и совместим с другими библиотеками. Он также поддерживает языки UTF-8, но для этого может потребоваться дополнительная отладка и просмотр некоторых записей разговоров в Google.
Согласно руководствам Ubuntu ,
ExactImage — это быстрая библиотека обработки изображений C++. В отличие от многих других библиотечных фреймворков, он изначально позволяет работать в нескольких цветовых пространствах и битовых глубинах, что приводит к низким требованиям к памяти и вычислениям. hocr2pdf создает хорошо структурированные PDF-файлы с возможностью поиска из входных данных hOCR (аннотированный HTML ), полученных из системы оптического распознавания символов .
hOCR в PDF попытки
[ редактировать ]Помимо следующих обсуждаемых и стабильных библиотек, за прошедшие годы в формат hOCR было внесено множество изменений при поддержке многих первых пользователей этого формата. Вы можете получить доступ к вложению текста в изображение с помощью hOCR и преобразованию его в файл PDF с использованием Python 2 с помощью этого 12-летнего сценария, начиная с 2021 года. Этот сценарий также можно обновить и сделать функциональным, преобразовав исходный код Python 2. Python 3 в контекст, поддерживаемый .
- HOCRConverter от jbrinley (Документация [7] )
HOCRКонвертер
[ редактировать ]HOCRConverter — это сценарий, написанный на Python 2.x, который можно использовать для преобразования файла hOCR с указанным файлом изображения в PDF-файл с возможностью поиска. Вы можете просмотреть документацию по ссылке выше.
from HocrConverter import HocrConverter
hocr = HocrConverter("myHocrFile.html") # this can be done by changing .hocr to .html and vice versa
hocr.to_text("output.txt")
hocr.to_pdf("myImageFile.png", "output.pdf")
Известные проблемы
[ редактировать ]- Не тестировался.
- Не поддерживает Python 3.x изначально.
См. также
[ редактировать ]- ALTO (XML) — еще один формат представления данных OCR.
Ссылки
[ редактировать ]- ^ Брейэль, Т. (1 сентября 2007 г.). «Микроформат hOCR для рабочего процесса и результатов OCR» (PDF) . Девятая Международная конференция по анализу и распознаванию документов (ICDAR 2007), Том 2 . Том. 2. С. 1063–1067. дои : 10.1109/ICDAR.2007.4377078 . ISBN 978-0-7695-2822-9 . S2CID 7565957 .
- ^ «Документация Ghostscript» . www.hostscript.com . Проверено 1 марта 2024 г.
- ^ «hOCR — рабочий процесс и вывод OCR, встроенный в HTML» . kba.облако . Проверено 18 декабря 2021 г.
В данную статью включен текст из этого источника, находящегося в свободном доступе .
- ^ окропус, окропус (12 декабря 2021 г.). "hocr-инструменты" . Гитхаб .
- ^ Ахмад, Муниб (12 декабря 2021 г.). "decodebytes() Устарело в hocr-pdf, используйте decodestring()" . Гитхаб . Проверено 12 декабря 2021 г.
/home/muneeb/.local/bin/hocr-pdf:134: DeprecationWarning: decodestring() является устаревшим псевдонимом, начиная с Python 3.1, используйте uncompressed decodebytes() = bytearray(zlib.decompress(base64.decodestring(font)))
- ^ «Страница руководства Ubuntu: Hocr2pdf — конвертер hOCR в PDF из набора инструментов ExactImage» .
- ^ Бринли, Джонатан (2 апреля 2009 г.). «Конвертировать hOCR в PDF» . х+3 . Архивировано из оригинала 06 февраля 2021 г. Проверено 12 декабря 2021 г.
Внешние ссылки
[ редактировать ]- Спецификация hOCR для подробностей о hOCR.
- спецификация текущей версии (1.2 по состоянию на февраль 2021 г.)
- hocr-tools — инструменты для управления и оценки формата hOCR на GitHub.
- ocr-fileformat — программное обеспечение, которое проверяет и преобразует различные форматы файлов OCR, включая hOCR, на GitHub.