Я довольно новичок в OpenCV и в настоящее время учусь извлекать цифры из изображений, используя контуры Изображение, на которое я ссылаюсь, можно найти здесь:
Проблема, с которой я сталкиваюсь, состоит в том, что значения в градациях серого чисел и линий / точек могут быть очень похожими, и в результате их контуры объединяются. Как бы я решил это?
Код, который у меня есть, выглядит так:
img = cv2.imread(filename=('data/6737,K.png'))
imgray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY);
thresh = cv2.adaptiveThreshold(imgray,255,
cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY,11,2)
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_TREE,
cv2.CHAIN_APPROX_SIMPLE)
Если в OpenCV есть опция, позволяющая разделять контуры по значению в градациях серого, возможно, будет возможно извлечь отдельные цифры. Или, может быть, есть другое решение, которое я не пробовал?
Любая помощь будет оценена.