当前位置:   article > 正文

在Linux系统下img.shape报错AttributeError: 'NoneType' object has no attribute 'shape'_shape = img.shape[:2] # current shape [height, wid

shape = img.shape[:2] # current shape [height, width] attributeerror: 'nonet

在Linux系统下img.shape报错AttributeError: ‘NoneType’ object has no attribute ‘shape’

首先了解img.shape

一般用img=cv2.imread(),读取一张图片时,img.shape是包含三个量的元组,分别是:
img.shape[0]:图像的高度
img.shape[1]:图像的宽度
img.shape[2]:图像的通道数

print(img)试一下,结果返回NONE,这大多数情况下是因为文件没有读取到,多半是路径问题。
我们在windows下选择路径时,例如:base_dir = “testimg//”;我们会采用‘//’可是在Linux系统下是找不到的,因此我们要将‘//’改成‘\’这样一来路径中的图片就被读取到了。
顺带一提,如果你用(,cv2.COLOR_BGR2GRAY)来读取成灰度图像的话,img.shape后会有ValueError: too many values to unpack (expected 2)

这样的错误,这是因为图像是三通道的返回值太大,改成cv2.imread(img.jpg",0)即可。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号