我正在尝试运行此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)
答案 0 :(得分:1)
消息错误表示img没有要显示的有效图像。确保地址'1.jpeg'有效(相同的文件夹,正确的文件名)。
一个好的做法总是加载资源,比如读取图像,检查资源是否实际加载。在这种情况下,您应该检查:
img = cv2.imread('1.jpeg')
if img is not None
cv2.imshow('img',img)