как разделить символы на изображениях после заполнения дыр? - PullRequest
0 голосов
/ 27 мая 2020

Мне нужно заполнить пробелы в символах изображений капчи, используя python и opencv. Я могу удалить линию и удалить мелкие точки с капчи. но после удаления линии и маленьких точек с символа они будут вырезаны в другом месте, где пересекаются линия и символ. Я могу применить эрозию и разбавление, но характеры не разделены должным образом. Любая помощь приветствуется. Изображения можно найти здесь.

import cv2
import numpy as np
# Load the image and convert it to grayscale
image = cv2.imread('captcha.png')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
for i,row in enumerate(gray):
    for j,col in enumerate(row):
        if gray[i][j] >= 110:
            gray[i][j] = 255
        else:
            gray[i][j] = 0
cv2.imshow("Background Removal", gray)
cv2.waitKey(0)
# need to fill cut character

kernel = np.ones((2, 2), np.uint8)
gray = cv2.erode(gray, kernel, iterations=2)
kernel = np.ones((2, 2), np.uint8)
gray = cv2.dilate(gray, kernel, iterations=2)
cv2.imshow('After Separation', gray)
cv2.waitKey(0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...