cv :: imshow

时间:2017-10-24 16:03:39

标签: python

我正在尝试运行此Python程序,但它会出错。 我不明白错误是什么以及如何解决。

错误:

error: ..\..\..\..\opencv\modules\highgui\src\window.cpp:261: error: (-215) 
    size.width>0 && size.height>0 
in function cv::imshow

源代码:

import cv2
import matplotlib.pyplot as plt

#original img
img = cv2.imread('1.jpeg')
#gray img
img1 = cv2.imread('1.jpeg',0)
#display img
cv2.imshow('img',img)

cv2.imshow('gray img',img1)

#view image size or shape
print (img.shape)
print(img1.size)

#number of pixels
print(img.size)
print(img1.size)
#graph 
"""
x1=[6,2,4,3]
x2=[2,3,4,5]
plt.scatter(x1,x2)
plt.show()
"""

#write an image
cv2.imwrite('gray_image.jpeg',img1)

#access specific index
print(img[150,150])

#modify the pixel value
img[150,150] = 30
print (img[150,150])

#crop image
crop = img[100:150,100:150]

cv2.imshow('cropped image',crop)

#img will display till press the enter
cv2.waitKey(0)

错误符合:cv2.imshow(' img',img)

1 个答案:

答案 0 :(得分:1)

消息错误表示img没有要显示的有效图像。确保地址'1.jpeg'有效(相同的文件夹,正确的文件名)。

一个好的做法总是加载资源,比如读取图像,检查资源是否实际加载。在这种情况下,您应该检查:

img = cv2.imread('1.jpeg')
if img is not None
    cv2.imshow('img',img)