yolov3 调试(2):bmp等格式的图片样本可能会出错

拿到手的训练样本是1400多张图片,其中有一百张左右后缀为.jpg,其余的图片后缀为.bmp

进行训练后迭代两万次仍出现下述问题:
Rigion82/94/106 打印出来的训练情况 AVG IOU/class/object 90%为-nan,而no object已趋于0
因为公司电脑无法上传文件,所以图片就不截了

谷歌后,发现给出的建议都是调大batch_size或者更多迭代,但是我的batch_size已调整为64,迭代快三万次

在公司同学的帮助下,发现是yolov3在编译的时候,把可支持的图片后缀名写死了,如果要用.bmp需要在编译文件里添加并重新编译
具体是在 /src/data.c下修改

find_replace(path, "images", "labels", labelpath);
    find_replace(labelpath, "JPEGImages", "labels", labelpath);
    find_replace(labelpath, ".jpg", ".txt", labelpath);
    find_replace(labelpath, ".JPG", ".txt", labelpath);
    find_replace(labelpath, ".JPEG", ".txt", labelpath);

发现并没有”.bmp”格式
添加

find_replace(labelpath, ".bmp", ".txt", labelpath)

注意这个文件不止一处需要修改,方便起见,我还是把训练样本直接转成了”.jpg”格式

原理就是在data下保存图片和labels目录(方便起见,建议直接分别取名为 JPEGImages 和 labels,虽然没试过其他的会不会报错,不过搭框架确实烦,经常报莫名其妙的错,能套用的就懒得试了),yolov3通过我们的保存图片路径的文本,自动找到与图片在同一母目录的labels下的、文件名相同的标注txt文本,做了一个映射

较坑的是这个不会报错,后来在yolov2上试了一下,发现可跑,才把问题定位在图片格式上

8.18
Charlie
杭州

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值