我有pytesseract的一些问题。我需要将Tesseract配置为配置为接受单个数字,同时也只能接受数字,因为数字零通常与“O”混淆。
像这样:
target = pytesseract.image_to_string(im,config='-psm 7',config='outputbase digits')
非常感谢,
尼尔
tesseract-4.0.0a
支持psm
。如果要进行单字符识别,请设置psm = 10
。如果您的文本仅包含数字,则可以设置tessedit_char_whitelist=0123456789
。
Page segmentation modes:
0 Orientation and script detection (OSD) only.
1 Automatic page segmentation with OSD.
2 Automatic page segmentation, but no OSD, or OCR.
3 Fully automatic page segmentation, but no OSD. (Default)
4 Assume a single column of text of variable sizes.
5 Assume a single uniform block of vertically aligned text.
6 Assume a single uniform block of text.
7 Treat the image as a single text line.
8 Treat the image as a single word.
9 Treat the image as a single word in a circle.
10 Treat the image as a single character.
11 Sparse text. Find as much text as possible in no particular order.
12 Sparse text with OSD.
13 Raw line. Treat the image as a single text line,
bypassing hacks that are Tesseract-specific.
以下是具有多个参数的image_to_string
的示例用法。
target = pytesseract.image_to_string(image, lang='eng', boxes=False, \
config='--psm 10 --oem 3 -c tessedit_char_whitelist=0123456789')
希望这可以帮助。
您遇到问题的原因是因为版本4.0中的字符限制不起作用。您必须强制传统模式(oem 0)才能限制找到的字符。在tesseract团队的某个地方有一个他们尚未解决的问题。