我想确定扫描文档的方向。我看到了这篇文章Pytesseract OCR multiple config options,并尝试使用**-psm 0 **来获取方向。
target = pytesseract.image_to_string(text, lang='eng', boxes=False, \
config='--psm 0 tessedit_char_whitelist=0123456789abcdefghijklmnopqrstuvwxyz')
但是我得到一个错误:
FileNotFoundError: [Errno 2] No such file or directory: '/var/folders/jy/np7p4twj4bx_k396hyc_bnxw0000gn/T/tess_dzgtpadd_out.txt'
答案 0 :(得分:2)
代替编写 regex 从字符串中获取输出,而是传递参数Output.DICT
作为dict
from pytesseract import Output
im = cv2.imread(str(imPath), cv2.IMREAD_COLOR)
newdata=pytesseract.image_to_osd(im, output_type=Output.DICT)
示例输出如下:使用dict键访问值
{
'page_num': 0,
'orientation': 90,
'rotate': 270,
'orientation_conf': 1.2,
'script': 'Latin',
'script_conf': 1.11
}
答案 1 :(得分:1)
我找到了另一种使用pytesseract获取方向的方法:
print(pytesseract.image_to_osd(Image.open(file_name)))
这是输出:
Page number: 0
Orientation in degrees: 270
Rotate: 90
Orientation confidence: 21.27
Script: Latin
Script confidence: 4.14
答案 2 :(得分:0)
@lads已经提到了可以找到方向的方法。 我刚刚使用re来获得旋转图像的程度。
imPath='path_to_image'
im = cv2.imread(str(imPath), cv2.IMREAD_COLOR)
newdata=pytesseract.image_to_osd(im)
re.search('(?<=Rotate: )\d+', newdata).group(0)