我理解如下:
import numpy as np
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(arr.shape)
输出:
(2, 4)
所以我想知道为什么我得到以下内容:
import numpy
import pytesseract
import logging
# Raw call does not need escaping like usual Windows path in python
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract'
logging.basicConfig(level=logging.WARNING)
logging.getLogger('pytesseract').setLevel(logging.DEBUG)
image = r'C:\ocr\target\31832_226140__0001-00002b.jpg'
target = numpy.asarray(pytesseract.image_to_string(image, config='--dpi 96 --psm 6 -c preserve_interword_spaces=1 -c tessedit_char_whitelist="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,- \'" '))
print("target type is:",type(target))
print("target array shape is:",target.shape)
输出:
DEBUG:pytesseract:['C:\\Program Files\\Tesseract-OCR\\tesseract', 'C:\\ocr\\target\\31832_226140__0001-00002b.jpg', 'C:\\Users\\david\\AppData\\Local\\Temp\\tess_p68ogbz9', '--dpi', '96', '--psm', '6', '-c', 'preserve_interword_spaces=1', '-c', "tessedit_char_whitelist=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,- '", 'txt']
target type is: <class 'numpy.ndarray'>
target array shape is: ()
好的。我的数组是文本。但我仍然认为我会得到参数的例子,比如说(1,999)
为我的形状?
使用print(target)
行给出以下类型的输出。
--------〉剪切〈---------
196 ANGUS, Lynne Manon ........................128 Wellington Rd, Wemuomata Recepnonst
197 ANGUS, Mane Joan .........00... ......129 Wellington Road, Weinumomata, Married
198 ANGUS, Manon Jean .........................173 Wellington Road, Weinuiomata,Texi Driver
199 ANGUS. Noel Fulton ........................127 Weinuomats Road, Weinuomate, Carpenter
2条答案
按热度按时间cgh8pdjw1#
这意味着你创建了一个标量i即具有“无形状”阵列。考虑:
这是因为,我只能推测,
pytesseract.image_to_string
返回一个str
对象(或者可能是一个bytes
对象)。当然,你会得到:目前还不清楚您希望创建什么。正如你所说的,你大概只有一个文本文件,那么为什么你要创建一个numpy呢?ndarray对象出来了吗?* 如果你能详细说明你正在努力实现的目标,也许我或其他人可以提出一种方法。
uklbhaso2#
我完全同意@juanpa提供的答案。再见但要回答你没有问的问题: