Редакция Потока · учебные материалы · 2026-09-16 Проверка OCR: исправляем сумму и отрицание, сохраняя адрес исходной строки После распознавания документа «1 500,00» может превратиться в «15 000», а «не ранее» — в «ранее». Автоматическая редактура сделает такой текст грамматически гладким, но не вернёт ему исходный смысл. Проверять нужно по странице, а не по правдоподобию. Покажем работу на пяти строках вымышленного заказа. Исходник создан редакцией, а ошибки внесены вручную для упражнения: это не тест точности Tesseract или другой OCR-системы. Результат — проверенная копия и журнал изменений, которые можно сверить с источником. Наш учебный оригинал Откройте исходную страницу с нумерацией строк (/downloads/potok/neyroset-rasshifrovka-teksta-ochistit-ocr-bez-podmeny-istochnika/ocr-source.html). На ней написано: > 1. Заказ № AB-10O. > 2. Количество: 15 шт. > 3. Цена за штуку: 100,00 руб. > 4. Итого: 1 500,00 руб. > 5. Отгрузка не ранее 18 сентября. В условном идентификаторе AB-10O последний символ — латинская буква O. Это намеренная особенность упражнения: нельзя заменять все похожие символы на нули только потому, что в номере встречаются цифры. Страница является текстовым учебным документом, а не настоящим сканом заказа. Её задача — дать однозначный эталон для проверки исправлений. Черновик, который нельзя просто «улучшить» Предположим, в распознанной копии получилось: > Заказ № AB100. Количество: 15 шт. Цена за штуку: 100,00 руб. Итого: 15 000 руб. Отгрузка ранее 18 сентября. Здесь потерян дефис и изменён символ в идентификаторе, сумма выросла в десять раз, а условие срока стало противоположным. При этом текст выглядит связно. Проверка орфографии может не обнаружить ни одной из этих проблем. Удобно сверять рискованные поля отдельно: | Адрес | Черновик | Оригинал | Решение | | --- | --- | --- | --- | | Стр. 1, строка 1 | AB100 | AB-10O | Вернуть дефис и букву O | | Стр. 1, строка 4 | 15 000 руб. | 1 500,00 руб. | Исправить по странице | | Стр. 1, строка 5 | ранее 18 сентября | не ранее 18 сентября | Вернуть отрицание | Для документа адресом служат страница, строка, блок или координаты изображения. Таймкод относится к аудио и видео и здесь не нужен. Если листы PDF и печатные страницы нумеруются по-разному, сохраните обе координаты. Арифметика обнаруживает вопрос, но не заменяет источник 15 штук по 100 рублей дают 1 500 рублей. Несовпадение с черновыми 15 000 помогает найти подозрительное место. Однако нельзя автоматически исправлять сумму только по этому расчёту: в настоящем документе могут быть другие позиции, дополнительные условия или ошибка самого автора. В упражнении мы открываем четвёртую строку и видим 1 500,00. Именно это подтверждает исправление. Расчёт служит независимым сигналом проверки, а не разрешением переписать документ. Тот же принцип работает для дат и идентификаторов. Знакомый формат подсказывает, где поискать ошибку, но не позволяет заменить необычное значение «нормальным» без просмотра оригинала. Запрос на очистку без смысловых подмен > Исправляй распознанный текст только после сверки с исходной страницей. Для изменения числа, имени, идентификатора, даты или отрицания укажи страницу и строку. Не модернизируй лексику и не исправляй фактические ошибки автора молча. Если символ неразборчив, оставь пометку и вынеси место в список вопросов. Рядом с проверенной копией сохраните необработанный результат OCR. Тогда будет видно, что распознала система и что изменил редактор. Для больших массивов это помогает найти повторяющуюся проблему: например, потерю дефиса в кодах или смешение колонок. Если буква на реальном скане не различима, в копии можно отметить «[неразборчиво]» с адресом. Предположение записывают отдельно. В нашем учебном источнике все символы заданы однозначно, поэтому таких пометок в итоговой копии не требуется. Где взять координаты в техническом процессе Документация Tesseract (https://tesseract-ocr.github.io/tessdoc/Command-Line-Usage.html) описывает выходные форматы hOCR и TSV, которые могут сохранять структуру и координаты распознанных элементов. Для разработчика это способ связать слово с областью исходного изображения, а не заставлять редактора искать его вручную на всём листе. Координаты имеют смысл только вместе с конкретным файлом и его размером. После обрезки или поворота изображения прежняя область может указывать не туда. Поэтому сохраняйте исходную версию, к которой относится результат распознавания. В рекомендациях Tesseract по качеству входа (https://tesseract-ocr.github.io/tessdoc/ImproveQuality.html) отдельно рассматриваются перекос страницы и сегментация. Для таблицы важно не только правильно прочитать символы, но и сохранить связь ячейки с заголовком. Этот пятистрочный пример проверяет последовательный текст и не заменяет проверку структуры сложной таблицы. Итог нашего упражнения Проверенная копия должна совпасть с пятью строками источника: AB-10O, 15 штук, 100,00, 1 500,00 и «не ранее 18 сентября». Журнал содержит три исправления с адресами. Сумма проверена и по странице, и арифметически; идентификатор не нормализован по догадке. Скачайте черновик, проверенную копию и журнал (/downloads/potok/neyroset-rasshifrovka-teksta-ochistit-ocr-bez-podmeny-istochnika/ocr-review.txt). После распознавания документа следующий слой работы — извлечение условий с точными ссылками на пункты (/blog/extract-and-cite-conditions-from-one-document-with-ai). Для спорных деталей изображения полезно также отличать улучшение читаемости от генеративной реконструкции (/blog/uluchshit-foto-neyrosetyu-otmetit-vosstanovlennye-detali).