YOLT(You OnlyLookTwice)论文翻译和解读

YOLT(You OnlyLookTwice)论文翻译
对YOLT做了简单的翻译,一些语言是根据自己的理解翻译的,仅供参考和相互学习。论文链接link

Abstract
检测大范围图像中的小目标是卫星图像分析的主要问题之一。虽然地面图像中的目标检测得益于对新的深度学习方法的研究,但将这种技术过渡到高空图像是很重要的。其中一个挑战是每幅图像的像素数量和地理范围:一幅DigitalGlobe卫星图像的面积超过64平方公里,像素超过2.5亿。另一个挑战是,感兴趣的物体是微小的(范围只有10像素),这使传统的计算机视觉技术复杂化。为了解决这些问题,我们提出了一种模型(You Only Look Twice,或者说YOLT)来以大于0.5 km2/s的速率估计任意大小的卫星图像。我们提出的方法可以在多个传感器上用相对较少的训练数据快速检测出不同尺度的物体。我们评估了原始分辨率下的大型测试图像,得到了F 1>0.8的车辆定位分数。通过系统地测试模型在降低分辨率时的情况,我们进一步探索了分辨率和目标尺寸的要求,并得出结论:只有5像素大小的目标仍然可以高度可靠地定位。代码https://github.com/CosmiQ/yolt。
Introduction
自从卷积神经网络引入图像网络竞争以来,计算机视觉技术在过去的几年里取得了长足的进步。诸如ImageNet、PASCAL VOC和MS-COCO等大而高质量的标记数据集的可用性有助于推动在快速目标检测方面取得一些令人印象深刻的进展;其中三个最好的是:Faster R-CNN、SSD和YOLO。Faster R-CNN通常接收1000×600像素的图像,而SSD使用300×300或512×512像素的输入图像,YOLO运行在416×416或544×544像素的输入上。尽管所有这些框架的性能都很好,但没有一个框架能够接受卫星图像的16000×16000输入大小。在这三个框架中,YOLO在PASCAL VOC数据集上显示了最大的检测速度和最高的得分。作者还表明,通过在Picasso数据集和People-Art数据集上优于其他框架(即SSD和Faster R-CNN),该框架可以应用到新的领域。由于YOLO的速度、精度和灵活性,我们利用该系统作为我们的卫星图像目标检测框架的参考。
由于种种原因,深度学习方法在传统的目标检测模型中的应用是非常重要的。卫星图像的独特方面需要算法来解决与前景目标对象的空间范围、完全旋转不变性和大规模搜索空间相关的挑战。排除实现细节,算法必须调整为:
空间范围小。在卫星图像中,感兴趣的对象通常非常小且密集,而不是像ImageNet中典型的大且突出的对象。在卫星领域,分辨率通常定义为地面采样距离(GSD),它描述一个图像像素的物理尺寸。可获得的图像从最清晰的数字地球仪图像的30厘米GSD到行星图像的334米GSD不等。这意味着,对于汽车等小物体,即使在最高分辨率下,每个物体的范围也只有15像素。
**完全旋转不变性。**从头顶观看的对象可以有任何方向(例如,船舶可以有0到360度之间的任何航向,而ImageNet数据中的树是可靠的垂直方向)。
**训练样本频率。**训练数据相对缺乏(尽管SpaceNet等公司正在努力改善这一问题)
超高分辨率。输入图像是很大的(通常是数亿像素),所以简单地将图像缩小到大多数算法所需的输入大小(几百像素)不是一个选择(见图1)。
这项工作的贡献是具体地解决了这些问题,同时利用了传感器到物体的相对恒定距离,这是众所周知的,通常是400公里。再加上面向最低点的传感器,物体的像素大小保持一致。
第2节进一步详细介绍了算法在应用于卫星图像时所面临的挑战。这项工作的其余部分被分为以下几个部分来说明。为了解决小型密集集群,第3.1节描述了一种新的、细粒度的网络体系结构。第3.2节和第3.3节详细介绍了我们在原始分辨率下分割,评估和重组任意大小的大型测试图像的方法。关于旋转不变性和小的标记训练数据集大小,第4节描述了数据扩充和大小要求。 最后,第6节将详细讨论算法的性能。
Related work
深度学习方法已被证明对地面目标检测是有效的,尽管目前的技术对于高空图像应用通常仍然不是最优的。 例如,群体中的小物体,如成群的鸟群等都是挑战。导致上述所有三种卷积网络方法(Yolo,SDD,Fast-RCNN)的多个下采样层。 此外,这些多个下采样层导致用于对象区分的相对过程特征;此外,这些多个下采样层会产生用于对象区分的相对过程特征;如果感兴趣的对象的范围仅为几个像素,则会产生问题 例如,考虑默认的YOLO网络体系结构,它以32的因子进行下采样,并返回13×13的预测网格; 这意味着,如果对象质心间隔小于32像素,则对象区分是有问题的。 相应地,我们实现了一个独特的网络结构,具有更密集的最终预测网格,这通过产生更细粒度的特征来帮助区分类来提高性能。 这种更精细的预测网格还允许对更小的对象和更密集的簇进行分类。
目标检测算法与不适合卫星图像的另一个原因是,它们很难以新的宽高比或配置来概括对象。由于目标可以具有任意航向,因此这种有限的旋转不变性范围很麻烦。我们的方法通过旋转和扩充数据来弥补这种复杂性。 具体而言,我们围绕单位圆旋转训练图像,以确保分类器与目标航向无关,并且还随机缩放图像的HSV(色调饱和度值),提高分类器对不同传感器、大气条件和光照条件的鲁棒性。
在先进的物体检测技术中,网络可以在训练和测试时看到整个图像。 尽管网络对每个对象进行了上下文信息的编码,这大大改善了背景差异,但是对于256兆像素的图像而言,传统硬件(具有12GB RAM的NVIDIA Titan X GPU)上的内存占用是不可行的。
我们还注意到,大尺寸卫星图像排除了解决上述一些问题的简单方法。例如,对图像进行上采样以确保感兴趣的对象足够大且足够分散以适合标准体系结构是不可行的,因为这种方法还将使运行时间增加许多倍。 同样,在图像上运行滑动窗口分类器以快速搜索感兴趣的对象在计算上变得很麻烦,因为每个对象大小都需要多个窗口大小。 为了进行透视,如果目标是DigitalGlobe图像中的10米长的船,则必须评估超过一百万个滑动窗口。 我们的方法是利用快速物体检测算法,结合合理大小的图像切片(约200米)上的局部图像插值和多尺度的探测器,来评估卫星图像。
为了对卫星图像分析,我们使用标准网络架构(13x13网格)训练YOLO模型,以识别COWC高架图像数据集[8]中416x1416像素切口中的汽车(有关此数据集的更多详细信息,请参见第4节)。由于测试图像的第100次下采样,使用此网络对大型测试图像(见图2)进行简单的评估会产生100%的误判率。即使大小合适的图像切片也有问题(同样,请参见图2),因为标准的YOLO网络架构无法区分质心间距小于32像素的对象。因此,即使将注意力限制在一个小切片上,在具有标准体系结构的高密度区域中,性能通常也很差。

重点来了,下面就是具体介绍结构了。
YOU ONLY LOOK TWICE
为了解决第2节中讨论的局限性,我们实现了一种针对overhead图像进行了优化的对象检测框架:您只看两次(YOLT)。 我们扩展了Darknet神经网络框架并更新了许多C库,以支持地理空间图像分析并与外部python库集成。 我们选择利用python的功能和大型用户社区进行预处理。 在对C代码的更新和用python编写的前处理和者后处理代码之间,实现不需要了解C来训练、测试或部署YOLT模型。
Network Architecture
为了减少模型的粗糙程度并准确检测密集的物体(例如汽车或建筑物),我们实现了使用22层和下采样的16倍网络结构。因此,一个416×416像素的输入图像会产生26×26的预测网格。我们的体系结构受30层YOLO网络的启发,尽管该新体系结构已针对小型密集包装的对象进行了优化。密集的网格对于诸如飞机场之类的分散物体不是必需的,但对于诸如停车场之类的高密度场景则至关重要(参见图2)。为了提高小物体的准确度,我们还包括一个passthrough层(在ResNet中进行了描述,并类似于ResNet中的身份映射),将最后的52×52层连接到最后的卷积层上,从而使检测器可以访问该层的更细粒度的特征。
每个卷积层后使用BN和leaky激活函数,保存使用线性激活的最后一个卷积层。最后一层提供边界框和类的预测,其大小为:Nf = Nboxes×(Nclasses + 5),其中Nboxes是每个网格的框数(默认为5),Nclasses是对象类的数量。
Test Procedure
在测试时,我们将任意大小的测试图像分割成可管理的剪切块,并通过我们的训练模型运行每个剪切块。分区是通过一个滑动窗口进行的,该窗口具有用户定义的bin大小和重叠(默认情况下为15%),见图4。我们通过根据模式命名每个剪切块来记录每个滑动窗口剪切块的位置:
ImageName|row column height width.ext
例如:
panama50cm|1370 1180 416 416.tif
Post-Processing
卫星(或航空)图像的大部分用途在于其固有的绘制全球大部分区域的能力。 因此,小的图像切片远没有卫星平台产生的大视野图像有用。 因此,目标检测作业的最后一步试图将数百或数千个测试的图像切片缝合在一起,形成一个最终的图像带。对于每个切片,从分类器返回的边界框位置预测根据该切片的行和列值进行调整; 这提大供了每个边界框预测在原始输入图像中的全局位置。 15%的重叠可确保对所有区域进行分析,但也会导致对切口边界进行重叠检测。 我们将非最大抑制应用于边界框预测的全局矩阵,以减轻此类重叠检测。
Training Data
训练数据是从三个来源的图像小切片中收集的:数字地球卫星、行星卫星和空中平台。标签由每个对象的边界框和类别标识符组成。我们最初关注五类:飞机、船只、建筑脚印、汽车和机场。 对于不同比例的物体(例如飞机与飞机场),我们在第6.2节中表明,使用两个不同比例的不同检测器非常有效。
Car带上下文的头顶车辆(COWC)数据集是一个大型的、高质量的附加注释的车辆集,来自在多个地区收集的头顶图像。数据是通过空中平台收集的,但在一个最低点的视角,使其类似于卫星图像。该图像的分辨率为15cm GSD,大约是目前商业卫星图像最佳分辨率的两倍。因此,我们将原始图像卷积为高斯核,并将图像的维数减少一半,从而生成相当于30cm的GSD图像。标签仅由每辆汽车的质心处的一个点组成,我们在每辆汽车周围画了一个3米的边界框以进行训练。 我们保留了最大的地理区域(犹他州)进行测试,留下13,303辆带有标签的训练车。
Building Footprints第二轮SpaceNet数据由30厘米的GSD DigitalGlobe图像和标记的建筑占地面积组成,覆盖四个城市:拉斯维加斯、巴黎、上海和喀土穆。标签是精确的建筑示意图,我们将其转换为包围示意图90%范围的边框。图像分割方法可以解决这一问题;然而,我们探讨了YOLT在建筑物轮廓检测方面的性能,发现由于YOLT输出边界框,因此它永远无法实现复杂建筑物形状的完美建筑物占地面积检测。这四座城市之间有221336栋贴着标签的建筑物。
Airplanes 我们在机场为8幅DigitalGlobe图像贴上标签,总共包含230个训练对象
Boats 我们标记了在沿海地区拍摄的三幅DigitalGlobe图像,总计556艘船。
Airports我们在37幅Planet图像中为机场贴上标签,用于训练,每张切片上都有一个机场。对于机场大小的物体,需要进行一些下采样,因为即使在低分辨率的Planet图像中,跑道的长度也可能超过1000像素;因此,为了训练的目的,我们将行星图像下采样四倍。
根据计算机视觉标准,飞机、机场和船舶的原始训练数据集非常小,较大的数据集可以提高第6节所述的推理性能。我们使用随机梯度下降训练,并保持许多超参数:每个网格5个格子,初始学习率为0.001,权重衰减为0.0005,动量为0.9。在一个单个NVIDIA Titan X GPU训练需要2到3天。
TEST IMAGES
为了确保鲁棒性,所有测试图像均来自与训练示例不同的地理区域。 对于汽车,我们保留了犹他州最大的地理区域进行测试,从而生产了19,807辆测试汽车。 建筑占地面积被分割为75/25训练/测试,剩下73,778个测试面积。 我们为总共74架飞机标记了四个机场测试图像。 标记了四艘船的图像,得到771艘试验船。 我们的机场数据集较小,有十个Planet图像用于测试。 请参阅表2,了解每个类别的训练/测试划分。

OBJECT DETECTION RESULTS
Universal Classifier Object Detection Results

最初,我们尝试训练一个分类器来识别上面列出的所有五个类别,包括车辆和基础设施。在这个例子中,我们注意到了一些虚假的机场检测(见图6),因为向下采样的跑道看起来与错误比例的高速公路相似。

Scale Confusion Mitigation
有多种方法可以解决图6中提到的误判问题。回想一下第4节,对于这项工作,我们的训练集仅由几十个机场组成,远远小于深度学习模型的通常规模。增加训练集的大小可能会改进我们的模型,特别是在背景变化很大的情况下。另一种方法是使用后处理去除不正确的检测(例如,一个50米大小的机场)。还可以简单地构建两个分类器,每个分类器对应一个相关的尺度。
我们选择利用卫星图像中的尺度信息,运行两个不同的分类器:一个训练用于车辆+建筑物,另一个训练仅用于寻找机场。在下采样图像上运行第二个机场分类器对运行时的性能影响最小,因为在给定的图像中,200米切片的数量大约是2000米的100倍。
Dual Classifier Results
对于大型验证图像,我们分别在200米和2500米两个不同的尺度下运行分类器,第一个尺度是为车辆和建筑物设计的,更大的尺度是为机场等大型基础设施设计的。我们将验证图像分割成适当大小的图像切片,并在适当的分类器上运行每个图像切片。将多个图像芯片和多个分类器的无数结果组合成一个最终图像,并且重叠检测融合了非极大值抑制方法。我们发现检测阈值再在0.3到0.4之间的会使验证图像获得最高的F1分数。
我们定义一个大于在给定阈值的真正的正交集。IOU为0.5通常被用作正确检测的阈值,尽管在ImageNet的等式5中,我们选择了较低的车辆阈值,是因为我们处理的是非常小的对象。对于SpaceNet构建的建筑物和机场,我们使用0.5的IOU。
表3显示了每个对象类别在所有测试图像上的目标检测性能和速度。 尽管训练集很小,但是YOLT在机场,飞机和轮船上的表现还是相对不错的。 尽管在太空网数据集上表现出一定的竞争优势,但YOLT并未针对建筑占地面积提取进行优化。 在最近的SpaceNet挑战中得分最高的F1得分为0.69*0.69。
而YOLT得分为0.61,位于前3名。我们以运行推理步骤的GPU时间报告推理速度。 我们用GPU时间来说明速度。在GPU上以每秒50帧的速度快速运行。目前,预处理(即,将测试图像分割成较小的切块)和后处理(即将结果合并回一个全局图像)没有完全优化,而是在CPU上执行,这使运行时间增加了约2倍。 推理速度小于6分钟的,将所有车辆定位在华盛顿特区大小的区域,而将小于2秒的运行时间定位为机场。DigitalGlobe的WorldView3卫星每天最多可覆盖680,000 km2,因此,以YOLT推理速度,一个16 GPU集群将可以对卫星图像进行实时推理。
Detailed Performance Analysis
在COWC数据集的九幅犹他州图像中,约有20000辆汽车的大型测试集可以进行详细的性能分析。大多数汽车(> 13,000)都位于盐湖城中心上方的图像中,因此我们将此图像分为16个较小的600×600米区域,使每个图像的汽车数量均匀。我们删除了一个只有61辆车的测试场景,剩下23个测试场景,每个测试图像的平均计数为1130±540。我们应用了训练好的YOLT模型在这些测试场景中寻找汽车。
在图9中,我们显示了每个场景的F1得分以及车辆计数的准确性。与F1分数相比,指定区域中的汽车总数在商业领域可能是更有价值的指标。因此,我们计算每个场景的预测车数,作为地面真实数的分数(Fc=nprepedited/Ntruth)。与F1分数一样,1.0表示分数车计数指标的完美预测。COWC的作者试图计算测试图像中的汽车数量,并获得了0.19%的误差。COWC数据上YOLT的总计数误差为0.90%。
对图9的检查发现,对于典型的城市场景,F1分数和地面真相分数非常高(例如,图7中所示的ImageID = 21)。 图9中最差的离群值是ImageID = 2,F1得分是0.67,并且有2860辆汽车。 此位置对应于一个汽车垃圾场,这是一个难以理解的分析区域。
RESOLUTION PERFORMANCE STUDY
COWC数据集中目标大小的一致性使得可以进行详细的分辨率研究。 为了研究分辨率对目标检测的影响,我们将原始的15 cm图像与高斯核卷积进行卷积,并缩小图像尺寸以在[0.30,0.45,0.60,0.75,0.90,1.05,1.20,1.50]上创建其他训练和测试库。
最初,我们在单个模型(在0.30米处训练)上测试多分辨率测试数据,并且在图11中证明了该模型外扩展至多个分辨率的能力很差。 随后,我们针对每种分辨率训练一个单独的模型,总共有13个模型。因为我们从已经带标签的高分辨率15 cm数据中进行下采样,所以仅在低分辨率(例如2.4m GSD)下创建高质量的带标签数据集是可行;通常,低分辨率数据很难以高精度标记。
对于尺寸约3米的物体,我们从图13中观察到,物体检测性能从尺寸20像素的物体的F 1 = 0.92降低到尺寸1像素的物体的F 1 = 0.27,平均误差为0.09。 有趣的是,随着对象从20像素缩小到5像素(GSD从0.15m缩小到0.60m),F1分数仅降低约5%。 对于从头顶上看的汽车图片,可以得出结论:≥5个像素的物体尺寸会产生F 1> 0.85的物体检测分数。 图11的曲线的降级速度远快于图13和14,这说明在高分辨率下拟合的单个模型不如在各个分辨率下训练的一系列模型。
Conclution
到目前为止,目标检测算法在ImageNet数据集中定位方面已经取得了长足的进步。虽然这样的算法很少很好地适合于卫星图像中存在的不同大小和方向的物体,它们也不是设计来处理具有数百兆像素的图像。
为了解决这些限制,我们建立了全卷积神经网络模型(YOLT),可以快速定位卫星图像中的车辆,建筑物和机场。 我们注意到,由于大小尺度(例如高速公路和跑道)之间的混淆,组合分类器的结果较差。 训练不同规模的双重分类器(一个用于建筑物/车辆,一个用于基础设施)产生了更好的结果。
根据类别的不同至模型产生的目标检测F1分数≈0.6 至 0.9。尽管F1评分可能不如ImageNet竞赛中的许多读者所看到的,但卫星图像中的对象检测仍然是一个相对新生的领域,并面临着独特的挑战。此外,对于监督学习方法,我们对于大多数类别的训练数据集都相对较小,并且随着检测的进一步后处理,F1分数可能会提高。
我们还演示了在一个传感器(如DigitalGlobe)上进行训练的能力,并将我们的模型应用于另一个传感器(如Planet)。我们证明至少对于从头顶上方观看的汽车,≥5像素的物体尺寸会产生F 1> 0.85的物体检测分数。模型能够以自然分辨率评估任意输入尺寸的卫星和航空图像,以每分钟约30平方公里的速度处理车辆和建筑物,以每分钟约6000平方公里的速度处理机场。在这种检测速度下,16gpu集群可以对DigitalGlobe worldwiew3卫星的发送内容进行实时检测。

写在最后
为了检测遥感图像这一形式的图片。主要创新在于训练了两个分类器,一个用于小物体,一个用于大场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值