在提取期间,包含2D矩阵形式的图像中的整数Tesseract无法给出正确的结果,并且每次执行代码时结果都会有所不同,任何人都可以在下面的代码中找出遗漏的内容
UPDATE
输入
阈值:adaptiveThreshold(img,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C,cv2.THRESH_BINARY,251,95
阈值输出:
输出的形式为1 5 5 7 5 7 3 8 6 4 9 0 2 4 8 6 1 3 0 2 3 9 0 8 9可以是行主要形式,而列主要形式不是'但问题是我们确实需要将给定的输出保存到变量
中答案 0 :(得分:0)
尝试将阈值从251,95更改为251,40。
img = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C , cv2.THRESH_BINARY ,251,40)
您似乎已经拥有完美的图像,无需任何更改即可从图像中提取字符串。 Pytesseract的image_to_string在我的系统上不起作用,所以我使用了一个字逐个字的OCR。这绝对不是世界上最好的解决方案嘿,如果它有效,它的工作原理。我附上了几个文件(请参阅下面的谷歌驱动器链接)
<强>步骤:强>
请注意:
TrainAndTest.py - https://drive.google.com/file/d/0B05aeuFExe2Aa3p3SWszN2xqU2c/view?usp=sharing
slice_image.py - https://drive.google.com/file/d/0B05aeuFExe2AN0t3UUlGZ3VjcW8/view?usp=sharing
training_chars.png - https://drive.google.com/file/d/0B05aeuFExe2ANjJNbzV5VTJyRTA/view?usp=sharing
classifications.txt - https://drive.google.com/file/d/0B05aeuFExe2AZU91bUpOblB3d2c/view?usp=sharing
flattened_images.txt - https://drive.google.com/file/d/0B05aeuFExe2AeXVnbXVXVTZ2RTQ/view?usp=sharing