首先让我说我已经阅读了多篇文章以及有关此相同错误的其他问题!发布问题是我的最后选择。我正在64位Windows 10上使用Python 3.6.1。
我正在尝试做相对简单的事情:
第二和第三之间有错误。
if args["image"].upper() == "CAMERA": #If CLI Arg was 'camera'
input("Hit any key to capture image...")
ret, frame = video_capture.read()
cv2.imwrite("SNAP.jpg", frame) #save it
image = cv2.imread("SNAP.jpg") #load it
print(image) #print as npArray
cv2.imshow("SNAP", image) #show it
cv2.waitKey(0)
else:
image = cv2.imread(args["image"])
orig = image.copy()
SNAP.jpg显示在我的本地目录中,并且也可以cv2.imshow()
正常运行。但是,当我cv2.imread()
时,我得到了None对象。更具体地说,我得到一个空的numpy数组:
[[[0 0 0]
[0 0 0]
[0 0 0]
...
[0 0 0]
[0 0 0]
[0 0 0]]
[[0 0 0]
[0 0 0]
[0 0 0]
...
[0 0 0]
[0 0 0]
[0 0 0]]
[[0 0 0]
[0 0 0]
[0 0 0]
...
[0 0 0]
[0 0 0]
[0 0 0]]
...
[[0 0 0]
[0 0 0]
[0 0 0]
...
[0 0 0]
[0 0 0]
[0 0 0]]
[[0 0 0]
[0 0 0]
[0 0 0]
...
[0 0 0]
[0 0 0]
[0 0 0]]
[[0 0 0]
[0 0 0]
[0 0 0]
...
[0 0 0]
[0 0 0]
[0 0 0]]]
由于为空,image.copy()
会引发NoneType错误。
File "text_detection.py", line 51, in <module>
orig = image.copy()
AttributeError: 'NoneType' object has no attribute 'copy'
我已读过Adrian's comprehensive guide to 'resolving' NoneType错误;没有骰子。我没有尝试重新安装OpenCV来解决可能的图像格式库问题,因为我的另一项测试能够将cv2.imread("myFile.png")
集成到Tesseract
中。
我还尝试过在快照的.jpg
和.png
格式之间来回切换,并尝试提供静态/相对文件路径。预先感谢。