目标检测中的图像输入尺寸是否固定的讨论

图像任务中,传入到模型的图像尺寸往往是固定的,十万个为什么由此发问:

1 那为什么是固定的?
模型网络中含有全连接层的时候,输入尺寸只能固定大小,因为全连接网络的输入feature尺寸是固定的。一些模型网络就不一定需要尺寸固定,比如FCN网络中全是卷积网络而没有连接网络。

yolov5比较特殊,输入图像宽高得是采样值32的倍数,这种特例就特别看待,也就是桌yolov5可以不固定,但是图像输入尺寸必须是32倍数,也是有一定限制。

2 实际大小图像为了能输入到模型运行要做什么改变?
(1)选择resize到固定尺寸:
a 原始图的宽高比太大,resize之后图像就变形得非常严重。如果你训练数据足够多,而且也是这个叼样子(数据分布一致性)。那没问题,你实际推理resize你的模型照样好用,模型能容忍你的resize。
b 增加padding后再resize,分类任务里不适合这样搞,因为padding的图像部分对模型来说是噪声;但我觉得yolov5目标检测里可以这么搞,因为目标检测含有定位点的回归损失,一定程度上指导了模型训练。
(2)只选取中心区域然后crop:
显而易见的是,非中心区域的图像被crop了。对于宽高比大的图像直接宣布GG。这样做得到好处是中心区域的图像不会因为resize而变形。

3 这些改变会影响模型精度吗?
训练集的数据处理方法 == 实际图像predict处理方法,才好,不然就不好。

4 大尺寸输出好还是小尺寸输入好?
这仅仅是一个速度和效果的权衡问题,大尺寸输入意味着模型能提取到更多的图像细节,但模型也因此增大。不考虑计算速度的话,当然是大尺寸好(数据量也得够才行,不然会容易过拟合)。

参考

https://zhuanlan.zhihu.com/p/362701716

 
 
posted @ 2023-07-07 09:52  海_纳百川  阅读(401)  评论(0编辑  收藏  举报
本站总访问量