如何表示:
为什么?
必须将“分页模式”设置为“单字符”。
例如,在 Android 中,您可以执行以下操作:
api.setPageSegMode(TessBaseAPI.pageSegMode.PSM_SINGLE_CHAR);
执行该配置的Python代码如下:
import pytesseract
import cv2
img = cv2.imread("path to some image")
pytesseract.image_to_string(
img, config=("-c tessedit"
"_char_whitelist=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
" --psm 10"
" -l osd"
" "))
--psm
标志定义页面分段模式。
根据 tesseract 的文档,
10
的意思是:
将图像视为单个字符。
因此要识别单个字符,您只需要使用:
--psm 10
标志。
需要将Tesseract的页面分割模式设置为“单个字符”。
你见过这个吗?
https://code.google.com/p/tesseract-ocr/issues/detail?id=581
错误列表将其显示为“不再是问题”。
baseApi.setVariable("tessedit_char_whitelist", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
之前使用
init Tesseract
其他选项是,如果
PageSegMode.SingleChar
仍然不起作用,减少图像的颜色(例如二值化),然后使用 PageSegMode.SingleChar
。