c # — Emgu OpenCV: применять разные пороговые значения в зависимости от формы текста [диез / полужирный]

Я хочу предварительно обработать отсканированное изображение, чтобы сделать на нем какое-либо распознавание текста. Моя проблема в том, что когда я применяю заданное значение Threshold для удаления шума, жирный текст становится четким, но остальная часть текста исчезает.

CvInvoke.cvThreshold(img, img, 80, 255, THRESH.CV_THRESH_BINARY);

введите описание изображения здесь

CvInvoke.cvThreshold(img, img, 120, 255, THRESH.CV_THRESH_BINARY);

введите описание изображения здесь

Я спрашиваю, есть ли способ применить различные значения порога в зависимости от текстовой формы?

0

Решение

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

Сначала я инвертирую цвета, а затем использую EqualizeHist, который позволит сделать ваш текст темнее и ярче фона.

После этого вы хотели бы извлечь края. Я бы применил Canny, сохраняя соотношение 2: 1 или 3: 1 между двумя пороговыми значениями, а затем увеличивал / уменьшал их соответственно, пока у меня не получится хорошо выглядящий край.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector