基于深度学习的目标检测算法
令和7年2月19日|p.22
左の本文を選ぶと、右側の官報原文画像で該当箇所を照合できます。
1. Two-stage 目标检测算法
Two-stage 目标检测算法将目标检测问题划分为两个阶段:第一阶段进行候选区域提取,第二阶段对候选区域进行分类和回归。这类算法的代表是 R-CNN 系列算法,包括 R-CNN、Fast R-CNN、Faster R-CNN 等。
图 2-2 Faster R-CNN 网络结构
R-CNN(Regions with CNN features)[2] 是最早提出的基于深度学习的目标检测算法之一。它首先利用选择性搜索(Selective Search)算法生成大约 2000 个候选区域,然后将这些候选区域缩放至固定大小并输入到卷积神经网络(CNN)中提取特征,最后使用支持向量机(SVM)对特征进行分类,并使用边界框回归(Bounding Box Regression)对候选区域的位置进行微调。
Fast R-CNN [3] 在 R-CNN 的基础上进行了改进,它将整个图像输入到 CNN 中提取特征,然后在特征图上通过 ROI Pooling 层提取每个候选区域的特征,最后使用全连接层对特征进行分类和回归。相比于 R-CNN,Fast R-CNN 大大提高了检测速度。
Faster R-CNN [4] 进一步改进了 Fast R-CNN,它引入了区域提议网络(Region Proposal Network, RPN)来生成候选区域,从而实现了端到端的训练和检测。Faster R-CNN 的网络结构如图 2-2 所示。
2. One-stage 目标检测算法
One-stage 目标检测算法不需要生成候选区域,而是直接在图像上进行密集采样,然后对每个采样点进行分类和回归。这类算法的代表是 YOLO 系列算法和 SSD 算法。
YOLO(You Only Look Once)[5] 是一种实时的目标检测算法。它将输入图像划分为 S×S 的网格,每个网格负责预测 B 个边界框及其置信度和 C 个类别概率。YOLO 的检测速度非常快,但检测精度相对较低。
SSD(Single Shot MultiBox Detector)[6] 也是一种实时的目标检测算法。它在不同尺度的特征图上进行密集采样,然后对每个采样点进行分类和回归。SSD 的检测精度和速度都优于 YOLO。