DETR-DC5
DETR-DC5 是 Facebook AI Research(FAIR)于 2020 年提出的目标检测模型 DETR(DEtection TRansformer) 的一种改进版本,增强了对小目标和细节区域的建模能力。
📌 官方项目:GitHub - facebookresearch/detectron2 📄 论文链接:arXiv:2005.12872
🔍 DETR 简介
传统目标检测器依赖 Anchor、NMS(非极大值抑制)等手工设计模块,而 DETR 是第一个将 Transformer 编码器-解码器结构 引入目标检测任务的端到端架构,核心思想如下:
- 输入图像通过 CNN 提取特征(如 ResNet)
- 将特征图展平为序列送入 Transformer 编码器
- 使用可学习的 object query,解码出物体的类别与边界框
- 使用 bipartite matching(匈牙利算法)进行一一匹配,计算损失
目标检测被视作 集合预测问题,即预测一个无序目标集合。
🧠 DETR-DC5 的改进
“DC5” 指代使用了 扩张卷积(Dilated Convolution) 替代主干网络最后阶段(C5 层)中的标准卷积,以获得更大的感受野。其关键变化如下:
- 对 ResNet 的 stage 5 层 使用 dilation=2 代替 stride=2
- 输出特征图分辨率提升两倍(保持更多细节)
- 更适合检测小目标与复杂场景
这种调整可以提高目标定位精度,特别是在高密度或远距离物体场景中。
📊 性能指标(基于 COCO 2017)
| 模型 | AP (val) | AP50 | AP75 | 参数量 |
|---|---|---|---|---|
| DETR-ResNet-50 | 42.0 | 62.4 | 44.2 | ~41M |
| DETR-DC5-ResNet-50 | 43.3 | 63.1 | 45.3 | ~42M |
📈 性能略有提升,代价是推理时间略有增加(由于特征图尺寸变大)。
⚙️ 技术参数
- 主干网络:ResNet-50 + DC5 扩张卷积
- Transformer 架构:标准 Encoder-Decoder,6 层
- 输入图像分辨率:默认 $800 \times 1333$(训练时随机缩放)
-
损失函数:
-
分类损失(CrossEntropy)
- 边界框回归损失($L_1$ loss + GIoU loss)
- Hungarian matching 损失(集合匹配)
\[
\mathcal{L}_{total} = \lambda_{cls} \cdot \mathcal{L}_{cls} + \lambda_{L1} \cdot \mathcal{L}_{L1} + \lambda_{giou} \cdot \mathcal{L}_{giou}
\]
🚀 应用场景
- 📦 工业检测:高分辨率目标的质量控制
- 🤖 机器人感知:更鲁棒的物体识别
- 📱 移动部署:适配于如 Galaxy S23 / S24 等设备(依赖模型优化)
- 🛰️ 遥感图像分析:改善小目标检测效果
🧪 快速上手(使用 Hugging Face)
以下是使用 Hugging Face transformers 加载 DETR-DC5 进行推理的示例:
from transformers import DetrFeatureExtractor, DetrForObjectDetection
from PIL import Image
import requests
image = Image.open(requests.get(
"http://images.cocodataset.org/val2017/000000039769.jpg", stream=True).raw)
# 加载特征提取器和模型
feature_extractor = DetrFeatureExtractor.from_pretrained("facebook/detr-resnet-50-dc5")
model = DetrForObjectDetection.from_pretrained("facebook/detr-resnet-50-dc5")
# 图像预处理与前向推理
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
模型将输出每个目标的类别和边界框坐标。
🔍 DETR vs. DETR-DC5 对比
| 项目 | DETR | DETR-DC5 |
|---|---|---|
| 主干网络输出分辨率 | 1/32(低) | 1/16(高) |
| 感受野 | 标准 CNN | 扩张卷积更大感受野 |
| 小目标识别能力 | 一般 | 更强 |
| 参数量 | ~41.3M | ~42.2M |
| 推理速度 | 快 | 稍慢 |