YOLOV3学习记录——输入图像前的细节问题

#YOLOV3学习记录——输入图像前的细节问题

背景

通常,神经网络对输入图像的尺寸是有要求的。YOLOV3要求图像是一个矩形,但往往自定义数据集的图像是不规则尺寸。因此这种情况下需要进行Resize操作。其中Padding不当会导致一定问题

讨论

如下图,左面为原图,右面为resize之后的输入图像。以原图像最长边为基准边计算缩放系数,使其变换到长度为设定尺寸,然后整张图像等比缩放。Padding采用灰色背景填充,即(128,128,128).如果采用0填充会导致在推理阶段出现问题。网络的输出张量的输出值异常,要么没有检测框,要么出现大量检测框且是乱的。以上是更改了三个YOLOv3项目代码得出来的结论,希望大家少走弯路。
YOLOV3学习记录——输入图像前的细节问题

结论

在对图像预处理时,不应该采用(0,0,0)零填充,建议使用(128,128,128)填充,其余填充方式未尝试。