Манипуляции с изображениями: конвертируйте рельефные буквы в обычные - PullRequest
0 голосов
/ 10 декабря 2010

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

Credit Card

Ответы [ 3 ]

1 голос
/ 10 декабря 2010

Одна вещь, которую вы знаете, это то, что это номер кредитной карты - это поможет проверить результат в конце. Вы можете использовать это для тонкой настройки обработки изображения - отправьте отзыв о результате и используйте методы оптимизации (такие как восхождение на гору или генетические алгоритмы), чтобы изменить параметры обработки изображения.

Например, выполните обработку изображения с набором параметров (p1, p2, p3, p4) - затем попробуйте OCR, и вы получите 6 цифр. Затем измените набор параметров - скажем, на этот раз вы получите 8 числовых цифр - используйте восхождение на холм, чтобы продолжать изменять набор.

Для обработки изображений

  1. Вероятно, вы хотите начать с обрезки числовых областей, если вы их знаете.
  2. Очистите пиксели, которые не находятся в рельефном цветовом диапазоне, чтобы извлечь как можно больше информации (допустимое отклонение этого является одним из параметров в наборе параметров, который я описал) - возможно, сделайте это, установив его в черный цвет, потому что часть цифр, которую легко увидеть, светлая
  3. Задайте светлый цвет тиснения - попробуйте извлечь его, а затем инвертировать, потому что OCR находит черный на белом
  4. Подключение закрытых секций
  5. OCR и подача результатов в выбор параметров на шаге 2, 3, 4 (и, возможно, 1, если вы выполняете автоматическую сегментацию)
0 голосов
/ 10 декабря 2010

Может быть OCR может помочь вам.

"Оптическое распознавание символов, обычно сокращенное до OCR, - это механический или электронный перевод отсканированных изображений рукописного, машинописного или печатного текстав машинный код. "

http://en.wikipedia.org/wiki/Optical_character_recognition

0 голосов
/ 10 декабря 2010

Я бы начал с простого порога - if(pixel_grayscale_value > threshold) { white } else { black }.

...