OpenCV-cv2.imRead()返回无

时间:2019-04-26 18:40:35

标签: python numpy opencv webcam

首先让我说我已经阅读了多篇文章以及有关此相同错误的其他问题!发布问题是我的最后选择。我正在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's comprehensive guide to 'resolving' NoneType错误;没有骰子。我没有尝试重新安装OpenCV来解决可能的图像格式库问题,因为我的另一项测试能够将cv2.imread("myFile.png")集成到Tesseract中。

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

0 个答案:

没有答案