Python3 - OpenCV & cv2.error: (-215) 无法显示捕获的图像

J.D*_*Doe 3 python-3.x opencv3.0 cv2

我正在尝试使用opencv-3.3.0, cv2& python3.5

但是,我似乎无法显示我捕获的图像。

  • 我阅读了所有文档。
  • 我尝试了所有可能的答案。
  • 但是,我还是没有成功。

我错过了什么?

代码:

import numpy as np
import cv2

img=cv2.imread("F:/Train/sreen.png")
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
Run Code Online (Sandbox Code Playgroud)

错误:

OpenCV Error: Assertion failed (size.width>0 && size.height>0) in cv::imshow, file D:\Build\OpenCV\opencv-3.3.0\moules\highgui\src\window.cpp, line 333 
Traceback (most recent call last):
File "F:\IQ_option\OpenCV\run.py", line 5, in <module>
    cv2.imshow('image',img)
cv2.error: D:\Build\OpenCV\opencv-3.3.0\modules\highgui\src\window.cpp:333: error: (-215) size.width>0 && size.height>0 in function cv::imshow
Run Code Online (Sandbox Code Playgroud)

图片:

我的代码。

Cod*_*ter 8

这不起作用的唯一原因是您在此处尝试的文件未在imread命令中正确加载。加载的图像不存在,因为它说size.width并且size.height> 0。

您可以检查该文件是否存在于您指定的位置。此外,您可能需要\\在提供要显示的 .png 文件的完整路径时使用 double 。此外,这里可能不支持 .png 文件。您可以尝试任何其他 .jpg 图像文件,然后重试。一个例子是这样的:

img = cv2.imread('C:\\Users\\fakepath\\Pictures\\Messi.jpg', cv2.IMREAD_COLOR)
Run Code Online (Sandbox Code Playgroud)

为我工作。