繁体   English   中英

OpenCV - cv2.imRead()返回None

[英]OpenCV - cv2.imRead() is returning None

我首先要说的是,我已经阅读了多篇关于这个完全相同错误的文章和其他问题! 提出问题是我的最后一招。 我在64位Windows 10上使用Python 3.6.1。

我正在尝试做一些相对简单的事情:

  1. 来自网络摄像头的快照
  2. 将其保存到本地目录,从本地目录中读取它
  3. 使用NP.copy()函数制作它的副本

第二和第三之间有一个错误。

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关于“解决” NoneType错误的综合指南 ; 没有骰子。 我没有尝试重新安装OpenCV来解决可能的图像格式库问题,因为我的另一个测试能够cv2.imread("myFile.png")Tesseract就好了。

我也尝试在快照的.jpg.png格式之间来回切换,并尝试提供静态/相对文件路径。 提前致谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM