700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法

【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法

时间:2019-07-11 13:54:00

相关推荐

【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法

遇到了奇怪的错误:

cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgproc\src\resize.cpp:4045: error: (-215:Assertion failed) !ssize.empty() in function ‘cv::resize’

代码如下

import numpy as npfrom matplotlib import pyplot as pltimport cv2image = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE)image10x10 = cv2.resize(image, (10, 10))print(image10x10.flatten())plt.imshow(image10x10, cmap="gray"), plt.axis("off")plt.show()print(image10x10.shape)print(image10x10.flatten().shape)image_color = cv2.imshow("plane_256x256.jp", cv2.IMREAD_COLOR)image_color_10x10 = cv2.resize(image_color, (10, 10))print(image_color_10x10.flatten().shape)image_256x256_gray = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE)print(image_256x256_gray.flatten().shape)image_256x256_color = cv2.imshow("plane_256x256.jpg", cv2.IMREAD_COLOR)print(image_256x256_color.flatten().shape)

上网查了不少资料,觉得描述的不够好,这里讲讲自己的看法。

一般来说都是路径的问题,我测了一下报错的image_color_10x10,发现加载完是None,这就相当于Java空指针了,显然是加载有问题。

当然,笔者的错误其实很明显:

imread()写成imshow()路径的jpg写成jp

下面说说普遍的情况:路径不对。

其实这种问题基本上都是路径错误,路径要注意:

看的是图片路径路径不能有中文以及qqgg的符号路径用单斜线不要用反斜线绝对路径和相对路径都行,注意规则就行(网上居然有说不能是相对路径的,笑死,我用的就是相对的)图片格式和名称不要写错……

好,就这样吧,修改后的代码:

import numpy as npfrom matplotlib import pyplot as pltimport cv2image = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE)# 将图像尺寸转换成10x10image10x10 = cv2.resize(image, (10, 10))# 将图像数据转换成一维向量print(image10x10.flatten())plt.imshow(image10x10, cmap="gray"), plt.axis("off")plt.show()print(image10x10.shape)print(image10x10.flatten().shape)# 以彩色模式加载图像image_color = cv2.imread("plane_256x256.jpg", cv2.IMREAD_COLOR)image_color_10x10 = cv2.resize(image_color, (10, 10))# 将该图像数据转换成一维数组并显示数组维度print(image_color_10x10.flatten().shape)image_256x256_gray = cv2.imread("plane_256x256.jpg", cv2.IMREAD_GRAYSCALE)print(image_256x256_gray.flatten().shape)image_256x256_color = cv2.imread("plane_256x256.jpg", cv2.IMREAD_COLOR)print(image_256x256_color.flatten().shape)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。