首页 炼丹房 帖子详情
关于opencv读取部分图片None的问题
收藏
快速回复
炼丹房 文章学习资料 1102 7
关于opencv读取部分图片None的问题
收藏
快速回复
炼丹房 文章学习资料 1102 7

最近 下载了猫12分类数据集,发现有几张图像有问题

正好作者群里也有大佬遇到了相似的问题,发出来做个总结

部分图片用windows画图打开没问题,但是opencv读取就成了None,数据清洗代码如下:

import cv2
import glob
pl = glob.glob("cat_12_test/" + "*.jpg")
for i in pl:
if cv2.imread(i) is not None:
pass
else:
print(i)

这张可怜的小猫咪被清洗出来了

原因:位深为8,其他都是24

解决方案:

1、不多的话,windows画图打开另存为

2、多的话,代码解决:



import cv2
import glob
from PIL import Image

pl = glob.glob("cat_12_test/" + "*.jpg")
for i in pl:
if cv2.imread(i) is not None:
pass
else:
print(i)
img = Image.open(path).convert('RGB')
img.save(i)

水群的收获,哈哈

 

0
收藏
回复
全部评论(7)
时间顺序
十进制到二进制
#2 回复于2022-02

是啊,opencv读取图片读不到不会报错,其他的包都会报个错,有时候就容易忽略这个问题。

0
回复
进击的钝角
#3 回复于2022-03

学习了

0
回复
fi_Past
#4 回复于2022-03

确实

0
回复
fi_Past
#5 回复于2022-03

可以先做下数据清洗

0
回复
fi_Past
#6 回复于2022-03

然后再训练

0
回复
小七特别怂
#8 回复于2022-05

牛蛙牛蛙,学到了,十分感谢

 

0
回复
滴滴滴哒哒哒
#9 回复于2022-06

牛蛙牛蛙,学到了,十分感谢

0
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户