错误:(-215)函数调整大小时ssize.width> 0 && ssize.height> 0
image-processing
machine-learning
opencv
python
7
0

我正在构建图像处理分类器,除了这行之外,整个代码都正确-

input_img_resize=cv2.resize(input_img,(128,128))

这行给我一个错误

('error: /io/opencv/modules/imgproc/src/imgwarp.cpp:3483: error: (-215) ssize.width > 0 && ssize.height > 0 in function resize')

我的代码-

PATH = os.getcwd()
# Define data path
data_path = PATH + '/data'
data_dir_list = os.listdir(data_path)

img_rows=128
img_cols=128
num_channel=3
num_epoch=30

num_classes = 67

img_data_list=[]

for dataset in data_dir_list:
    img_list=os.listdir(data_path+'/'+ dataset)
    print ('Loaded the images of dataset-'+'{}\n'.format(dataset))
    for img in img_list:
        input_img=cv2.imread(data_path + '/'+ dataset + '/'+ img )

        input_img_resize=cv2.resize(input_img,(128,128))
        img_data_list.append(input_img_resize)
参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

这是因为一张图片。

为了找到图像,我添加了一行代码,该代码在输入cv2.resize之前先打印图像的名称,另一行代码在调整大小后打印名称。它将自动在有故障的图像处停止。

收藏
评论

好吧,显然这行input_img=cv2.imread(data_path + '/'+ dataset + '/'+ img )返回一个空数组。

阅读之前,应先检查图像是否存在。并且请停止使用字符串组合来连接文件路径,使用python os.path.join是更好的选择。

image_path = os.path.join(data_path, dataset, img)
if os.path.exist():
    # Do stuff
收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号