首页 PaddleCV 帖子详情
关于yolov3,darknet53训练图片输入 已解决
收藏
快速回复
PaddleCV 问答目标检测 3178 8
关于yolov3,darknet53训练图片输入 已解决
收藏
快速回复
PaddleCV 问答目标检测 3178 8

Yolov3的backbone是Darknet的时候,听说过一个说法就是如下图的锚框size是在416*416输入尺寸下的最优锚框尺寸

但是我们一般的图片都不是416*416的,可能是1200*1200等各种不规则尺寸。请问下就是大家之前用yolov3做目标检测的时候,一般都是选择聚类自适应生成锚框尺寸还是直接使用416*416下的最优锚框尺寸,然后在dataloader的时候就将图片裁剪成416*416传入神经网络中,相应的xml文件读取的位置信息也通过函数映射成新的xywh呢?一直在这里有点困惑,希望大神指点

m
mar836924042
已解决
3# 回复于2020-04
我记得yolov3的锚框就是聚类(K=9)自适应生成的,所以你上面给的最优锚框尺寸就是聚类生成的,是根据训练集真是框标签提前计算出来的。 另外不同图片的尺寸一般都是缩放到416*416。有一些论文也喜欢缩放到稍微大一点比如424*424,然后根据中间和左上、右上、左下、右下把一幅图裁剪成5幅416*416的,但应该不至于从1200*1200这么大去裁剪,因为不知道目标还在不在裁剪区域里了,这时候裁剪区域标签就不好分配了。 yolov3论文没有给出训练的详细信息。但根据yolov2来看,作者训练时是先用缩放到尺寸为224*224的图片训练,后面10个epoch再改用448*448大小的微调。测试时统一用448*448尺寸。。。我觉得这方面yolov2和3应该不会有太大变动。当然,yolov3里面出于考虑改用了416*416,而不是448*448,所以224*224不知道是不是改用了208*208,也不知道还有没使用208*208尺寸来训练,这个只要你看一下yolov3相关代码部分就知道了,你可以参考作者的训练过程
展开
0
收藏
回复
全部评论(8)
时间顺序
水水水的老师
#2 回复于2020-04

修改一下

我用yolov3做目标检测的时候,一般都是选择聚类自适应生成锚框尺寸

0
回复
m
mar836924042
#3 回复于2020-04

我记得yolov3的锚框就是聚类(K=9)自适应生成的,所以你上面给的最优锚框尺寸就是聚类生成的,是根据训练集真是框标签提前计算出来的。

另外不同图片的尺寸一般都是缩放到416*416。有一些论文也喜欢缩放到稍微大一点比如424*424,然后根据中间和左上、右上、左下、右下把一幅图裁剪成5幅416*416的,但应该不至于从1200*1200这么大去裁剪,因为不知道目标还在不在裁剪区域里了,这时候裁剪区域标签就不好分配了。

yolov3论文没有给出训练的详细信息。但根据yolov2来看,作者训练时是先用缩放到尺寸为224*224的图片训练,后面10个epoch再改用448*448大小的微调。测试时统一用448*448尺寸。。。我觉得这方面yolov2和3应该不会有太大变动。当然,yolov3里面出于考虑改用了416*416,而不是448*448,所以224*224不知道是不是改用了208*208,也不知道还有没使用208*208尺寸来训练,这个只要你看一下yolov3相关代码部分就知道了,你可以参考作者的训练过程

0
回复
Henry.coder
#4 回复于2020-04
修改一下 我用yolov3做目标检测的时候,一般都是选择聚类自适应生成锚框尺寸

请问下聚类自适应生成锚框的相关资料有推荐吗,或者有项目可以fork学习吗,想了解下,谢谢了

0
回复
Henry.coder
#5 回复于2020-04
我记得yolov3的锚框就是聚类(K=9)自适应生成的,所以你上面给的最优锚框尺寸就是聚类生成的,是根据训练集真是框标签提前计算出来的。 另外不同图片的尺寸一般都是缩放到416*416。有一些论文也喜欢缩放到稍微大一点比如424*424,然后根据中间和左上、右上、左下、右下把一幅图裁剪成5幅416*416的,但应该不至于从1200*1200这么大去裁剪,因为不知道目标还在不在裁剪区域里了,这时候裁剪区域标签就不好分配了。 yolov3论文没有给出训练的详细信息。但根据yolov2来看,作者训练时是先用缩放到尺寸为224*224的图片训练,后面10个epoch再改用448*448大小的微调。测试时统一用448*448尺寸。。。我觉得这方面yolov2和3应该不会有太大变动。当然,yolov3里面出于考虑改用了416*416,而不是448*448,所以224*224不知道是不是改用了208*208,也不知道还有没使用208*208尺寸来训练,这个只要你看一下yolov3相关代码部分就知道了,你可以参考作者的训练过程
展开

请问下聚类自适应生成锚框的相关资料有推荐吗,或者有项目可以fork学习吗,想了解下,谢谢了

0
回复
m
mar836924042
#6 回复于2020-04

你得先了解锚框,这个概念出自Faster R-CNN,网上有很多关于这篇论文的资料。在锚框的基础上再了解K-means(K类均值聚类)的话可以看https://www.pianshen.com/article/513490257/

0
回复
AIStudio810258
#7 回复于2020-04
请问下聚类自适应生成锚框的相关资料有推荐吗,或者有项目可以fork学习吗,想了解下,谢谢了

我写过一个项目里面有用scikit learn库聚类的代码,供你参考。

https://aistudio.baidu.com/aistudio/projectdetail/271017

0
回复
AIStudio810258
#8 回复于2020-04

来AI Studio互粉吧~等你哦~ https://aistudio.baidu.com/aistudio/personalcenter/thirdview/76563

【下面是我写的一些小贴,闲时君阅(项目列表)】

训练数据太少?过拟合?一文带你领略“数据增长魔法”(上) (https://aistudio.baidu.com/aistudio/projectdetail/408059)

训练数据太少?过拟合?一文带你领略“数据增长魔法”(下) (https://aistudio.baidu.com/aistudio/projectdetail/422256)

一文帮你理解用Paddle训练模型的原理1-手写回归模型 (https://aistudio.baidu.com/aistudio/projectdetail/367090)

一文帮你理解用Paddle训练模型的原理2-权值可视化(VisualDL) (https://aistudio.baidu.com/aistudio/projectdetail/386954)

0
回复
Henry.coder
#9 回复于2020-04
我写过一个项目里面有用scikit learn库聚类的代码,供你参考。 https://aistudio.baidu.com/aistudio/projectdetail/271017

好的,谢谢啦

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户