使用各种方法我将图像验证码改为看起来像这样
然而,在使用Pytesseract OCR时,包无法识别任何字符,我认为这是由于字母上方的行。
script.py
cv2.imwrite(filename, imgOP)
text = pytesseract.image_to_string(Image.open(filename))
控制台中图像的输出为无
然而,当尝试使用另一个图像(如下所示)时,我得到了输出
PGKQKf
由于字母T
上面的行,这又错了我使用各种技术来清理图像,例如侵蚀,扩张以及概率霍夫变换(下面给出的结果)
#Hough Line Transform
img = cv2.imread('Output1.png')
edges = cv2.Canny(img, 1000, 1500)
minLineLength = 0
maxLineGap = 10000000000
lines = cv2.HoughLinesP(edges, 1, np.pi / 180, 15, minLineLength, maxLineGap)
for x in range(0, len(lines)):
for x1, y1, x2, y2 in lines[x]:
cv2.line(img, (x1, y1), (x2, y2), (255, 255, 255), 2)
cv2.imwrite('houghlines3.jpg', img)
转换后的图像看起来有点像
minLineLength和maxLineGap的任何其他值组合都不起作用。
如何继续前进?我已经检查了各种技术,以使Tesseract更准确,但我对我应该使用哪一种感到困惑。
除了Tesseract之外,还有其他任何可用于获得所需结果的技术。
我曾想过创建一个蒙版,使用在线工具我将图像转换为0和1,如下所示。但是如何去做并用它来识别角色?