cv2.error: (-215:Assertion failed) !ssize.empty() in function ‘resize‘解决方案

在做手势图像分类的时候,遇到了数据集不均衡的问题。于是对部分图像少的类别进行了数据集扩充。
具体如何扩充的参考了这位博主的方法:
数据集太少怎么办?数据集扩充方法

后续继续对数据集进行训练的时候就遇到了如题目所示的问题:cv2.error: (-215:Assertion failed) !ssize.empty() in function ‘resize‘

第一次遇到这种问题确实不太懂为什么,我也检查了我的路径、文件,发现都没有问题,全程没有出现中文路径或者中文命名。
应该是哪张图片出现了问题,但我的训练集有两万多张图片,要怎么去找有问题的图片也是蛮困难的。

最后我的解决办法:

import os
import cv2

filpath='F:/A_DG_Static/v_3/validv_3'
image_list = os.listdir(filpath)  # 读取文件夹中所有的图片
print(image_list)
i=0
for picname in image_list:
    i += 1
    img = cv2.imread((filpath + '/' + picname), 0)
    try:
        img = cv2.resize(img, (64, 64))
        print(i, picname) #打印当前成功处理的图片数量图片名称
    except :
        print(picname) #打印出有问题的图片名
        break

最后打印出那张图片的名字就是有问题的图片了。

参考了这位博主的办法:
error: (-215:Assertion failed) !ssize.empty() in function 'cv::resize’报错的原因

最后成功找到了有问题的两张图片,把图片删除后就能成功训练了。
虽然也不是我自己想的办法,但也还是记录一下,希望能帮到大家。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值