Я пытаюсь получить изображение доски, читаемой OCR. Естественно, большинство программ OCR не любят грязные изображения. Какую обработку изображений я должен попытаться поместить изображение, чтобы очистить изображение?Советы по использованию OCR на изображении доски
ответ
Вы уже пробовали программное обеспечение OCR? Вероятно, программное обеспечение OCR хорошо подходит для чтения того, что по сути уже является черно-белым изображением.
Однако, если вы должны были сделать, чтобы вы могли попробовать:
- Threshold образ.
- По существу принимать полутоновую версию изображений и превратить его в черно/белые пиксели
- Выполните Binary дилатация расти остальных объектов
- Выполните Binary Эрозии
Идея заключается в том путем расширения, затем размывания вы удаляете любые грубые/шумные края, а затем вы можете передать скелетонированное изображение в OCR.
Существует, вероятно, множество методов для достижения аналогичного результата. Учитывая, что есть целые книги, посвященные компьютерному видению, этот ответ вряд ли оправдает их.
Единственные тексты, которые есть у меня с 1997 года, но с тех пор были написаны более подробно.
- Алгоритмы обработки изображений и компьютерного зрения - J.R. Parker
- Цифровая обработка изображений - Gonzalez/Woods
Небрежно, я бы сказал, инвертируйте изображение (измените цвета, чтобы текст был черно-белым) и немного увеличивайте контраст. Вы можете попробовать изменить яркость, чтобы получить стираемую мелкую туманность, чтобы исчезнуть в фоновом режиме.
Почему компьютерный уход за тем, что интересный материал белый или черный? Единственная интересная часть - контраст и количество шума. –
В Photoshop диалоговое окно Levels может быть наиболее полезным для настройки изображения. Подражать этому в коде - это еще одна тема.
Основой Уровней является то, что вы настраиваете максимальные, минимальные и средние точки уровней яркости. Обычно отображается на гистограмме, вы настраиваете точки, чтобы получить требуемое количество контрастности, но также перемещайте среднюю точку, чтобы текст в изображении был наиболее четко определенным; для приложений OCR. Путем перемещения средней точки вы можете «устранить» оттенок серого, который обычно окружает почерк, заставляя его исчезать в светлых (или темных) областях изображения.
Также вы можете попробовать преобразовать изображение в 1 бит после такой регулировки, заставив все черным или белым. Иногда это ускоряет процесс OCR. Но будьте осторожны, он также отбросит детали.
Вы пробовали методы обнаружения краев, такие как оператор Roberts Cross и Sobel для фильтрации шума из изображения? Не видя качества изображения, не могу сказать, насколько он эффективен.
Существуют коммерческие решения, но изображения для очистки платформ выглядят как open problem. Добавьте OCR к нерешенной проблеме, и вы получите ... нерешенную проблему.
Не знаете, насколько вы ограничены в выборе решения OCR, но механизм ABBYY OCR (и веб-API на его основе, http://www.wisetrend.com/wisetrend_ocr_cloud.shtml) включает в себя автоматические способы удаления/удаления изображений.
это выглядит действительно хорошо, спасибо! – digitalWestie
Вы пишете код для обработки изображения? Как выглядит пример изображения? Недостаточно ли контраста? Слишком много шума? До сих пор вам недостаточно информации. – JYelton
Ну, ошибка, я еще не начал. Мне просто нужен совет, как начать на самом деле. Я играл с http://weocr.ocrgrid.org/, чтобы проверить, какие результаты я могу получить от обработки изображений до сих пор. Я думаю, что эти серверы используют 'tesseract'. Нотабене Я использовал это: http://www.feap.co.uk/images/2/thumb/blackboard.jpg?1274182639 в качестве образца изображения. PS, я буду писать на C# или Ruby. – digitalWestie
Учитывая образ образца, я не понимаю, почему какое-либо решение OCR не справится с этим. Изображение практически не содержит шума. –