Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow 为什么SSD在数据扩充期间调整随机作物的大小?_Tensorflow_Machine Learning_Computer Vision_Object Detection_Object Detection Api - Fatal编程技术网

Tensorflow 为什么SSD在数据扩充期间调整随机作物的大小?

Tensorflow 为什么SSD在数据扩充期间调整随机作物的大小?,tensorflow,machine-learning,computer-vision,object-detection,object-detection-api,Tensorflow,Machine Learning,Computer Vision,Object Detection,Object Detection Api,SSD论文详细介绍了其随机作物数据增强方案,如下所示: 数据扩充使模型对各种输入对象大小和 形状,每个训练图像通过以下选项之一随机采样: –使用整个原始输入图像。 –采样一个贴片,使jaccard与对象的最小重叠为0.1、0.3, 0.5、0.7或0.9。 –随机抽取一块补丁。 每个采样面片的大小为原始图像大小的[0.1,1]和纵横比 介于1和2之间。我们保留地面真值框的重叠部分,如果 它在采样的补丁中。在上述采样步骤之后,每个采样面片 将大小调整为固定大小,并以0.5的概率水平翻转,此外 应用

SSD论文详细介绍了其随机作物数据增强方案,如下所示:

数据扩充使模型对各种输入对象大小和 形状,每个训练图像通过以下选项之一随机采样: –使用整个原始输入图像。 –采样一个贴片,使jaccard与对象的最小重叠为0.1、0.3, 0.5、0.7或0.9。 –随机抽取一块补丁。 每个采样面片的大小为原始图像大小的[0.1,1]和纵横比 介于1和2之间。我们保留地面真值框的重叠部分,如果 它在采样的补丁中。在上述采样步骤之后,每个采样面片 将大小调整为固定大小,并以0.5的概率水平翻转,此外 应用一些类似于[14]中所述的光测量失真。

我的问题是:调整长宽比在0.5到2.0之间的作物尺寸的原因是什么

例如,如果您的输入图像为300x300,则将AR=2.0的裁剪重新整形为方形分辨率将严重拉伸对象(方形特征变为矩形,圆形变为椭圆等)。我知道小变形可能有助于提高泛化,但是,在任意一个维度上扭曲高达2倍的对象上训练网络似乎适得其反。我是否误解了随机作物的工作原理


[编辑]我完全理解增强图像需要与原始图像大小相同——我更想知道为什么作者不将纵横比固定为1.0以保持对象比例。

GPU体系结构强制我们使用批处理来加速训练,这些批处理的大小应该相同。使用不那么扭曲的图像作物可以使训练更有效,但要慢得多。

< P>个人认为,只要你作为一个人,仍然可以识别对象/主体,只要他们在网络的接受领域中有意义,任何转变都是有意义的。另外,我想纵横比可能有助于了解某种透视失真(看看图5中的奶牛,它有点“压缩”)。像杯子、树、椅子这样的物体,甚至是拉伸过的,仍然可以识别。否则,你也可以考虑一些点控制或歪斜变换也没有意义。 然后,如果您使用的是与自然图像不同的图像,而没有透视,那么这样做可能不是一个好主意。如果你的图像显示的是已知大小固定的物体,如显微镜或其他医学成像设备中的物体,并且如果你的物体或多或少有固定大小(比如说一个细胞),那么在尺度上进行强变形(如细胞两倍大)可能不是一个好主意,那么一个椭圆两倍的细胞实际上更有意义。
,您可以执行强大的增强,但如果您查看此处的图像,并非所有增强都有意义:

我完全理解增强图像需要与原始图像大小相同——我更想知道为什么作者不将纵横比固定为1.0以保持对象比例。我认为唯一的答案是自己用AR==1对其进行训练并比较结果:)可能在像素级,考虑到高水平的局部相关性,AR 2可以从中学习一些特性。