目标检测

获得 Image Analyst 许可后可用。

以下方法和概念是了解对象检测以及在 ArcGIS AllSource 中执行该操作的关键。

单帧检测器 (SSD)

单帧检测器 (SSD) 只需传递一次影像即可检测多个对象。 SSD 是速度较快的对象检测模型类型之一,具有极高精度。

SSD 包含两个部分:骨干模型和 SSD 头。 骨干模型为预训练影像分类网络,可用作要素提取器。 该模型通常为网络,例如在 Imagenet 上训练的 ResNet,已从该网络中删除最终的完全连接分类图层。 SSD 头只是添加到该主干中的一个或多个卷积层,输出会被解释为最终层激活空间位置中的边界框和对象类。

格网像元

SSD 不使用滑动窗口,而是使用格网划分影像,每个格网像元可用于检测影像的该区域中的对象。 检测对象意味着预测该区域内对象的类别和位置。 如果不存在对象,则将该区域视为背景类并忽略其位置。 例如,您可以在下面的示例中使用 4 x 4 格网。 每个格网像元均可以输出其所包含的对象的位置和形状。

4 x 4 格网

显示 4 x 4 格网的示例。

如果某个格网像元包含多个对象,或者需要检测多个不同形状的物体,则将使用锚点框。

锚点框

可为 SSD 中的每个格网像元分配多个锚点框(或现有框)。 这些锚点框为预定义框,每个锚点框用于检测格网像元内对象的大小和形状。 例如,下图中的游泳池对应较高的锚点框,而建筑物对应较宽的框。

两个锚点框的示例

显示两个锚点框的示例。
两个锚点框的图例
显示两个锚点框的图例。

SSD 在训练时使用匹配阶段将适当的锚点框与影像中每个实际地表对象的边界框进行匹配。 本质上,对象重叠度最高的锚点框可用于预测该对象的类及其位置。 此属性可用于训练网络,并在训练网络后预测检测到的对象及其位置。 实际上,每个锚点框均由纵横比和缩放级别指定。

纵横比

并非所有对象都是方形对象。 有些对象较长,有些对象较宽(程度不同)。 SSD 架构通过锚点框的预定义纵横比来解决此问题。 借助比例参数,您可以在每个缩放或比例级别为与每个格网像元关联的锚点框指定不同纵横比。

建筑物边界框

建筑物 1 的边界框较高,而建筑物 2 的边界框较宽。

缩放级别

锚点框不必与格网像元具有相同的大小。 您可能希望在格网像元中查找更小或更大的对象。 缩放参数可用于指定相对于每个格网像元需要向上或向下缩放锚点框的程度。 在锚点框示例中,建筑物大小通常大于游泳池大小。

RetinaNet

RetinaNet 是一种单阶段对象检测模型,适用于密集和小型对象。 因此,该模型已成为与航空和卫星影像一起使用的流行对象检测模型。

架构

RetinaNet 模型架构1包含四个主要部分:

  • 自下而上的路径 - ResNet 的骨干网络,可计算不同尺度的要素地图,与输入影像大小或骨干无关。
  • 自上而下的路径和横向连接 - 自上而下的路径对来自更高金字塔级别的在空间上较为粗糙的要素地图进行上采样,横向连接合并具有相同空间大小的自上而下图层和自下而上图层。
  • 分类子网 - 为每个锚点框和对象类预测对象出现在每个空间位置的概率。
  • 回归子网络 - 从每个实际地表对象的锚点框回归边界框的偏移量。

焦点损失

焦点损失 (FL) 是交叉熵损失 (CE) 的增强版,可用于处理单阶段对象检测模型的类不平衡问题。 由于锚点框(可能的对象位置1)的密集采样,单阶段模型面临极端的前景-背景类不平衡问题。 在 RetinaNet 中,每个金字塔图层可以具有数千个锚点框。 只会将少数锚点框分配给实际地表对象,而绝大多数锚点框将成为背景类。 这些简单的示例(高概率检测)造成的损失较小,但模型无法解决此问题。 FL 可减少简单示例造成的损失,并使纠正错误分类示例更为重要。

比例

锚点框比例。 默认值为 [2, 2.3, 2.6],适用于任何数据集中的大多数对象。 您可以根据数据集中对象的大小更改比例。

纵横比

锚点框的纵横比。 默认值为 [0.5, 1, 2],这意味着锚点框的纵横比为 1:2、1:1、2:1。 您可以根据感兴趣对象的形状修改比例。

YOLOv3

YOLO(只需瞄一眼)v3 使用 Darknet-53 作为其主干。 这与其他模型(例如 SSD 和 RetinaNet)使用流行的 ResNet 系列主干形成鲜明对比。 Darknet-53 比 Darknet-19 的更复杂,后者可用于之前的 YOLOv2 版本。 顾名思义,该主干架构具有 53 个卷积层。 调整 ResNet 样式残差图层可在保持速度优势的同时提高精度。 此要素提取器的性能优于 ResNet101,与 ResNet152 相似,而速度分别快 0.5 倍和 1 倍2

与之前的版本2相比,YOLOv3 逐步进行了改进。 该模型可对要素图层进行上采样,并将其与保留细粒度要素的早期要素图层连接起来。 另一项改进是检测三个尺度的对象。 该模型非常适合检测影像中不同尺度的对象。 还在锚点框选择、损失函数等方面进行了其他改进。 有关 YOLOv3 架构的详细分析,请参阅 YOLO v3 的新特性 外部链接

Faster R-CNN

Faster R-CNN(基于区域的卷积神经网络)之前的模型使用各种算法(在 CPU 上计算得出)进行区域提议,因此遇到瓶颈。 Faster R-CNN 使用称为区域提议网络 (RPN) 的卷积网络替换 Fast R-CNN 中的选择搜索算法,以对对象检测架构进行改进。 其余的模型架构与 Fast R-CNN 相同;将影像送入 CNN 以生成要素地图,从该地图中,选择 RPN 提出的区域的要素,并由池化层调整要素大小,然后将这些要素送入具有两个头(softmax 分类器和边界框回归器)的 FC 图层。 这种设计可提高检测速度,几乎可以实现实时检测的目标3

Faster R-CNN

显示 Faster R-CNN 架构3

区域提议网络

区域提议网络 (RPC) 输入影像并返回包含对象的感兴趣区域,这与其他区域提议算法非常相似。 RPN 还会返回对象分数,以衡量该区域包含对象而不是背景的可能性3。 在 Faster R-CNN 中,RPN 和检测网络共享同一个主干;主干的最后一个共享图层可提供影像的要素地图,RPN 使用该地图来建议区域。

借助滑动窗口方法,将小型网络覆盖在要素地图上。 每个空间窗口包含多个具有预定比例和纵横比的锚点框。 因此,模型可检测同一影像中各种比例和纵横比的对象。 通常以三种不同的尺度和纵横比创建锚点框,从而在每个空间位置产生九个锚点框,这些锚点框表示该空间位置的最大区域提议。 然后,小型网络将进入包含两个头(一个用于对象分数,另一个用于区域提议的边界框坐标)的完全连接图层。 请注意,虽然这些图层类似于 Fast R-CNN 对象检测器的最后几个图层,但并不完全相同,也不共享权重。 RPN 以类无关方式对区域进行分类,原因在于其任务是仅查找包含对象的区域。 有关 RPN 的详细信息,请参阅使用 Faster R-CNN 检测对象 外部链接

Mask R-CNN

Mask R-CNN 是一种用于实例分割的模型。 该模型基于 Faster R-CNN 模型开发而成。 Faster R-CNN 模型为基于区域的卷积神经网络4,可返回每个对象的边界框及其带有置信度得分的类标注。

Faster R-CNN 可预测对象类和边界框,但 Mask R-CNN 为 Faster R-CNN 的扩展版本,具有用于预测每个感兴趣区域 (RoI) 上的分割掩码的附加分支。 在 Faster R-CNN 的第二阶段,RoI 池被 RoIAlign 取代,这有助于保留在使用 RoI 池的情况下未对齐的空间信息。 RoIAlign 使用二进制插值来创建固定大小的要素地图,例如 7 x 7。 然后,将 RoIAlign 图层的输出送入由两个卷积层组成的掩膜头。 掩膜头可为每个 RoI 生成掩码,从而以像素至像素的方式分割影像。 为了避免过度平滑不精确的边界,对于具有不规则边界的对象,该模型已得到增强,包括名为 PointRend 的基于点的渲染神经网络模块。

实例分割

实例分割可集成对象检测任务(目标是检测影像中的对象及其边界框预测情况)和语义分割任务,后者将每个像素分类为预定义类别。 因此,您可以在为每个对象实例精确分割掩膜的同时检测影像中的对象。

实例分割可以解决很多问题,例如:

  • 检测过程遭到破坏,了解破坏程度至关重要。
  • 自动驾驶汽车,了解每辆车在场景中的位置至关重要。
  • 为每个单独的建筑物生成建筑物覆盖区,这是 GIS 中的常见问题。

参考资料

[1] Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and Piotr Dollár. Focal Loss for Dense Object Detection, http://arxiv.org/abs/1708.02002 arXiv:1708.02002, (2017).

[2] Joseph Redmon, Ali Farhadi. YOLOv3: An Incremental Improvement, https://arxiv.org/abs/1804.02767 arXiv:1804.02767, (2018).

[3] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks, http://arxiv.org/abs/1506.01497 arXiv:1506.01497, (2015).

[4] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks, http://arxiv.org/abs/1506.01497 arXiv:1506.01497, (2015).