Оптическое распознавание символов (OCR) преобразует изображения текста — сканы, фотографии со смартфона, PDF-файлы — в машиночитаемые строки и, все чаще, в структурированные данные. Современное OCR — это конвейер, который очищает изображение, находит текст, читает его и экспортирует богатые метаданные, чтобы последующие системы могли искать, индексировать или извлекать поля. Два широко используемых стандарта вывода: hOCR, микроформат HTML для текст а и макета, и ALTO XML, схема, ориентированная на библиотеки/архивы; оба сохраняют позиции, порядок чтения и другие подсказки макета и поддерживаются популярными движками, такими как Tesseract.
Предварительная обработка. Качество OCR начинается с очистки изображения: преобразования в оттенки серого, удаления шума, пороговой обработки (бинаризации) и выравнивания. Канонические учебные пособия по OpenCV охватывают глобальную, адаптивную и пороговую обработку Оцу — основные методы для документов с неравномерным освещением или бимодальными гистограммами. Когда освещение меняется в пределах страницы (подумайте о снимках с телефона), адаптивные методы часто превосходят один глобальный порог; Оцу автоматически выбирает порог, анализируя гистограмму. Коррекция наклона не менее важна: выравнивание на основе преобразования Хафа (преобразование Хафа для линий) в паре с бинаризацией Оцу является распространенным и эффективным рецептом в производственных конвейерах предварительной обработки.
Обнаружение и распознавание. OCR обычно делится на обнаружение текста (где находится текст?) и распознавание текста (что он говорит?). В естественных сценах и многих сканах полностью сверточные детекторы, такие как EAST , эффективно предсказывают четырехугольники на уровне слов или строк без тяжелых этапов предложения и реализованы в общих наборах инструментов (например, учебное пособие по обнаружению текста в OpenCV). На сложных страницах (газеты, формы, книги) важны сегментация строк/областей и определение порядка чтения:Kraken реализует традиционную сегментацию зон/строк и нейронную сегментацию базовой линии с явной поддержкой различных письменностей и направлений (слева направо/справа налево/вертикально).
Модели распознавания. Классическая рабочая лошадка с открытым исходным кодом Tesseract (с открытым исходным кодом от Google, с корнями в HP) эволюционировала от классификатора символов до распознавателя последовательностей на основе LSTM и может выдавать PDF с возможностью поиска, выходные данные, дружественные к hOCR/ALTO, и многое другое из командной строки. Современные распознаватели полагаются на моделирование последовательностей без предварительно сегментированных символов. Коннективистская временная классификация (CTC) остается основополагающей, изучая выравнивания между последовательностями входных признаков и строками выходных меток; она широко используется в конвейерах для распознавания рукописного ввода и текста на сцене.
В последние несколько лет трансформеры изменили OCR. TrOCR и спользует кодировщик Vision Transformer и декодер Text Transformer, обученный на больших синтетических корпусах, а затем доработанный на реальных данных, с высокой производительностью на тестах печатного, рукописного и сценического текста (см. также документацию Hugging Face). Параллельно некоторые системы обходят OCR для последующего понимания: Donut (Document Understanding Transformer) — это кодировщик-декодер без OCR, который напрямую выводит структурированные ответы (например, JSON «ключ-значение») из изображений документов (репозиторий, карточка модели), избегая накопления ошибок, когда отдельный шаг OCR передает данные в систему извлечения информации.
Если вам нужно готовое решение для чтения текста на многих языках, EasyOCR предлагает простой API с более чем 80 языковыми моделями, возвращающий рамки, текст и достоверность — удобно для прототипов и нелатинских письменностей. Для исторических документов Kraken отличается сегментацией базовой линии и порядком чтения с учетом письменности; для гибкого обучения на уровне строк Calamari основан на наследии Ocropy (Ocropy) с распознавателями (multi-)LSTM+CTC и CLI для тонкой настройки пользовательских моделей.
Обобщение зависит от данных. Для рукописного ввода база данных рукописного ввода IAM предоставляет разнообразные по авторам английские предложения для обучения и оценки; это давний эталонный набор для распознавания строк и слов. Для текста на сцене COCO-Text наложил обширные аннотации на MS-COCO с метками для печатного/рукописного, разборчивого/неразборчивого, письменности и полных транскрипций (см. также оригинальную страницу проекта). Эта область также в значительной степени зависит от синтетического предварительного обучения: SynthText in the Wild визуализирует текст на фотографиях с реалистичной геометрией и освещением, предоставляя огромные объемы данных для предварительного обучения детекторов и распознавателей (ссылка на код и данные).
Соревнования под эгидой ICDAR’s Robust Reading сохраняют обоснованность оценки. Последние задачи подчеркивают сквозное обнаружение/чтение и включают связывание слов во фразы, с официальным кодом, сообщающим точность/полноту/F-меру, пересечение над объединением (IoU) и метрики расстояния редактирования на уровне символов, что отражает то, что должны отслеживать практики.
OCR редко заканчивается простым текстом. Архивы и цифровые библиотеки предпочитают ALTO XML , потому что он кодирует физический макет (блоки/строки/слова с координатами) вместе с содержимым, и он хорошо сочетается с упаковкой METS. Микроформат hOCR , напротив, встраивает ту же идею в HTML/CSS, используя классы, такие как ocr_line и ocrx_word, что упрощает отображение, редактирование и преобразование с помощью веб-инструментов. Tesseract предоставляет оба варианта, например, генерируя hOCR или PDF с возможностью поиска прямо из командной строки (руководство по выводу PDF); оболочки Python, такие как pytesseract , добавляют удобства. Существуют преобразователи для перевода между hOCR и ALTO, когда в репозиториях есть фиксированные стандарты приема — см. этот тщательно подобранный список инструментов для формата файлов OCR.
Самая сильная тенденция — это конвергенция: обнаружение, распознавание, языковое моделирование и даже декодирование для конкретных задач объединяются в единые стеки трансформеров. Предварительное обучение на больших синтетических корпусах остается мультипликатором силы. Модели без OCR будут агрессивно конкурировать везде, где целью являются структурированные выходные данные, а не дословные транскрипции. Ожидайте также гибридных развертываний: легкий детектор плюс распознаватель в стиле TrOCR для длинного текста и модель в стиле Donut для форм и квитанций.
Tesseract (GitHub) · Документация Tesseract · Спецификация hOCR · Фон ALTO · Детектор EAST · Обнаружение текста OpenCV · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · Рукописный ввод IAM · Инструменты формата файлов OCR · EasyOCR
Оптическое распознавание символов (OCR) - это технология, используемая для преобразования различных типов документов, таких как отсканированные бумажные документы, PDF-файлы или изображения, снятые цифровой камерой, в данные, которые можно редактировать и искать.
OCR сканирует входное изображение или документ, разбирает изображение на отдельные символы, а затем сравнивает каждый символ с базой данных форм символов, используя распознавание по образцу или распознавание по признакам.
OCR используется в различных отраслях и приложениях, включая цифровизацию печатных документов, использование услуг перевода текста в речь, автоматизацию процесса ввода данных и помощь людям с нарушениями зрения в более качественном взаимодействии с текстом.
Несмотря на значительные усовершенствования технологии OCR, она не абсолютно надежна. Точность может варьироваться в зависимости от качества исходного документа и конкретных характеристик используемого ПО OCR.
Хотя OCR в основном предназначен для распознавания печатного текста, некоторые продвинутые системы OCR также могут распознавать чистописание. Однако точность распознавания рукописного текста обычно ниже из-за вариативности индивидуальных стилей письма.
Да, многие программы OCR могут распознавать множество языков. Однако следует убедиться, что используемое вами программное обеспечение поддерживает конкретный язык.
OCR - это аббревиатура от Optical Character Recognition (оптическое распознавание символов), которое используется для распознавания печатного текста, в то время как ICR, или Intelligent Character Recognition (интеллектуальное распознавание символов), это более продвинутая технология, которая используется для распознавания рукописного те кста.
OCR наиболее эффективен при обработке четких, легко читаемых шрифтов и стандартных размеров текста. Хотя он способен распознавать различные шрифты и размеры, его точность может снизиться при обработке нестандартных шрифтов или очень мелкого текста.
У OCR может быть проблемы при обработке документов с низким разрешением, сложных шрифтов, текста с плохим качеством печати, рукописного текста или документов, где текст плохо сочетается с фоном. Кроме того, хотя OCR может распознавать многие языки, он может не покрывать все языки идеально.
Да, OCR может сканировать цветной текст и фоны, хотя он наиболее эффективен при работе с комбинациями цветов с высоким контрастом, такими как черный текст на белом фоне. Если контраст между цветом текста и фона недостаточен, точность может снизиться.
Формат изображений ICO, обычно известный как ICO, — это формат файлов, который обычно используется для значков в Microsoft Windows. Файлы ICO содержат одно или несколько небольших изображений с различными размерами и глубиной цвета, чтобы их можно было соответствующим образом масштабировать. В Windows значки используются для представления приложения, файла или папки и являются неотъемлемой частью пользовательского интерфейса. Формат ICO универсален, что позволяет использовать изображения размером от 16x16 пикселей до 256x256 пикселей и даже больше с определенными обходными путями. Формат поддерживает 24-битные цветные изображения и 8-битную прозрачность, которую часто называют альфа-прозрачностью.
Формат ICO уникален тем, что он может содержать несколько изображений в одном файле. Это особенно полезно для значков, которые необходимо отображать в разных размерах и разрешениях. Например, типичный файл ICO может содержать один и тот же значок, отображаемый в размерах 16x16, 32x32, 48x48 и 256x256 пикселей. Это позволяет операционной системе выбирать оптимальный размер для данного контекста, например, маленький значок в списке файлов или более крупный значок, когда пользователь изменяет параметры просмотра, чтобы отображать большие значки.
Структура файла ICO относительно проста. Он начинается с заголовка, за которым следует каталог, а затем сами данные изображения. Заголовок содержит зарезервированное 2-байтовое поле, которое всегда устанавливается в ноль, 2-байтовое поле типа, которое указывает тип ресурса (1 для значков), и 2-байтовое поле количества, которое указывает, сколько изображений содержится в файле. За заголовком следует каталог, который представляет собой массив записей, по одной для каждого изображения в файле. Каждая запись каталога содержит несколько полей, включая ширину, высоту, количеств о цветов и размер данных изображения.
Поля ширины и высоты в записи каталога являются однобайтовыми, с максимальным значением 255. Однако на практике максимальные размеры изображения ICO составляют 256x256 пикселей. Когда изображение имеет ширину или высоту 256 пикселей, соответствующее поле устанавливается в 0. Поле количества цветов указывает количество цветов в палитре изображения, при этом значение 0 означает, что изображение не использует палитру (т. е. это 24-битное или 32-битное изображение). Поле размера — это 4-байтовое значение, которое указывает размер данных изображения в байтах, а поле смещения — это 4-байтовое значение, которое указывает местоположение данных изображения в файле.
Данные изображения в файле ICO могут храниться в одном из нескольких форматов. Для более мелких значков с размерами менее 64x64 пикселей данные изображения обычно хранятся в формате растрового изображения с независимым от устройства (DIB), который также используется в файлах BMP. Этот формат включает структуру BITMAPINFOHEADER, за которой следует цветовая палитра (если изображение ее использует), а затем данные пикселей. Для боле е крупных значков данные изображения часто хранятся в формате PNG, который обеспечивает лучшее сжатие и поддерживает альфа-прозрачность.
Структура BITMAPINFOHEADER содержит информацию о растровом изображении, включая его размер, ширину, высоту, плоскости, количество битов, сжатие, размер изображения, горизонтальное и вертикальное разрешение, количество цветов и важное количество цветов. Поле количества битов указывает количество битов на пиксель, которое может быть равно 1, 4, 8, 24 или 32. Количество битов 32 указывает, что изображение включает альфа-канал для прозрачности. Поле сжатия обычно устанавливается в 0, что указывает на отсутствие сжатия для изображений в формате BMP в файле ICO.
Прозрачность в файлах ICO обрабатывается двумя способами. Для изображений без альфа-канала используется маска растрового изображения. Это 1-битное на пиксель изображение, которое указывает, какие пиксели прозрачные, а какие непрозрачные. Маска растрового изображения хранится сразу после цветного растрового изображения в файле. Для изображений с альфа-каналом информация о прозрачности хранится в самом альфа-канале, который является частью 32-битной глубины цвета. Это позволяет использовать различные уровни прозрачности, от полностью непрозрачного до полностью прозрачного, и особенно полезно для создания плавных краев и падающих теней.
Формат ICO со временем эволюционировал. Первоначально в более старых версиях Windows значки были ограничены небольшой палитрой цветов и не поддерживали альфа-прозрачность. По мере того как графические пользовательские интерфейсы становились более сложными, стала очевидной необходимость в значках более высокого качества с плавными краями и возможностью смешивания с различными фонами. С появлением Windows XP компания Microsoft обновила формат ICO для поддержки 32-битных изображений с 8-битной альфа-прозрачностью, что позволило создавать гораздо более детализированные и визуально привлекательные значки.
Несмотря на свое название, формат ICO не ограничивается Microsoft Windows. Он распознается различными другими операционными системами и может использоваться в веб-браузерах в качестве фавикона, который представляет собой небольшой значок, отображаемый рядом с названием веб-сайта на вкладке браузера. Фавиконы обычно имеют размер 16x16 или 32x32 пикселя и хранятся в формате ICO, чтобы обеспечить совместимость с разными браузерами и платформами. Однако в современной веб-разработке для фавиконов также используются другие форматы, такие как PNG и GIF.
Создание файлов ICO требует специализированного программного обеспечения, которое может обрабатывать тонкости формата, такие как несколько размеров изображений и глубина цвета в одном файле. Существует множество редакторов и конвертеров значков, которые могут создавать файлы ICO с нуля или преобразовывать существующие изображения в формат ICO. Некоторые программы для редактирования изображений, такие как Adobe Photoshop, также могут сохранять изображения в формате ICO с помощью дополнительных плагинов.
При разработке значков для формата ICO важно учитывать контекст, в котором они будут использоваться. Значки должны быть разборчивыми и узнаваемыми при небольших размерах, и они должны соответствовать единому стилю, соответствующему приложению или бренду, который они представляют. Также важно тестировать значки на разных фонах и в разных размерах, чтобы убедиться, что они сохраняют свою четкость и визуальное воздействие.
С точки зрения размера файла файлы ICO могут сильно различаться в зависимости от количества и размера содержащихся в них изображений. Поскольку они могут включать несколько размеров и глубину цвета, файлы ICO могут стать довольно большими, особенно когда они включают изображения с высоким разрешением. Однако использование сжатия PNG для более крупных изображений помогает смягчить эту проблему, уменьшая размер файла без ущерба для качества изображения.
Возможность формата ICO содержать несколько изображений разных размеров и глубины цвета в одном файле делает его надежным и гибким форматом для значков. Это позволяет эффективно использовать ресурсы, поскольку операционная система может загружать подходящий размер изображения и глубину цвета для данного контекста отображения без необходимости использования нескольких отдельных файлов. Эта эффективность особенно важна в средах, где память и место для хранения ограничены.
В заключение, формат изображений ICO — это специализированный формат файлов, предназначенный для хранения значков, используемых в Microsoft Windows. Его способность содержать несколько изображений разных размеров и глубины цвета делает его идеальным для значков, которые необходимо отображать в разных контекстах. Формат поддерживает прозрачность с помощью масок растровых изображений или альфа-каналов, что позволяет создавать значки с плавными краями и сложными визуальными эффектами. Хотя формат в значительной степени ассоциируется с Windows, он также нашел свое место в Интернете как стандарт для фавиконов. По мере того как пользовательские интерфейсы продолжают развиваться, формат ICO остается ключевым элементом в создании визуально целостной и удобной для пользователя среды.
Этот конвертер полностью работает в вашем браузере. Когда вы выбираете файл, он загружается в память и преобразуется в выбранный формат. Затем вы можете скачать преобразованный файл.
Преобразования начинаются мгновенно, и большинство файлов преобразуются за считанные секунды. Более крупные файлы могут занимать больше времени.
Ваши файлы никогда не загружаются на наши серверы. Они преобразуются в вашем браузере, а затем скачиваются. Мы никогда не видим ваши файлы.
Мы поддерживаем преобразование между всеми форматами изображений, включая JPEG, PNG, GIF, WebP, SVG, BMP, TIFF и другие.
Этот конвертер полностью бесплатен и всегда будет бесплатным. Поскольку он работает в вашем браузere, нам не нужно платить за серверы, поэтому мы не взимаем плату с вас.
Да! Вы можете преобразовать сколько угодно фа йлов одновременно. Просто выберите несколько файлов при их добавлении.