🚀 D-FINE
D-FINE是一个强大的实时目标检测模型,通过重新定义DETR模型中的边界框回归任务,实现了出色的定位精度。该模型适用于自动驾驶、监控系统、机器人技术和零售分析等多种场景。
🚀 快速开始
安装
你可以通过以下命令安装transformers
库:
pip install transformers
使用示例
import torch
import requests
from PIL import Image
from transformers import DFineForObjectDetection, AutoImageProcessor
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
image_processor = AutoImageProcessor.from_pretrained("ustc-community/dfine-small-coco")
model = DFineForObjectDetection.from_pretrained("ustc-community/dfine-small-coco")
inputs = image_processor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
results = image_processor.post_process_object_detection(outputs, target_sizes=torch.tensor([image.size[::-1]]), threshold=0.3)
for result in results:
for score, label_id, box in zip(result["scores"], result["labels"], result["boxes"]):
score, label = score.item(), label_id.item()
box = [round(i, 2) for i in box.tolist()]
print(f"{model.config.id2label[label]}: {score:.2f} {box}")
✨ 主要特性
模型概述
D-FINE模型由Yansong Peng、Hebei Li、Peixi Wu、Yueyi Zhang、Xiaoyan Sun和Feng Wu在论文D-FINE: Redefine Regression Task in DETRs as Fine-grained Distribution Refinement中提出。该模型由VladOS95-cyber在@qubvel-hf的帮助下贡献,是D-FINE在HF transformers库中的实现。
模型训练数据集
- coco:模型在COCO数据集上训练。
- obj365:模型在Object365数据集上训练。
- obj2coco:模型先在Object365数据集上训练,然后在COCO数据集上进行微调。
性能表现
D-FINE是一个强大的实时目标检测器,通过重新定义DETR模型中的边界框回归任务,实现了出色的定位精度。它主要由两个关键组件组成:细粒度分布细化(FDR)和全局最优定位自蒸馏(GO-LSD)。

应用场景
D-FINE非常适合在各种应用中进行实时目标检测,如自动驾驶、监控系统、机器人技术和零售分析。其增强的灵活性和易于部署的设计使其适用于边缘设备和大规模系统,同时确保在动态的现实环境中具有高精度和高速度。
🔧 技术细节
训练数据
D-FINE在COCO(Lin等人 [2014])的train2017数据集上进行训练,并在COCO val2017数据集上进行验证。我们报告了标准的AP指标(在从0.50 - 0.95的均匀采样IoU阈值上进行平均,步长为0.05),以及在实际场景中常用的APval5000指标。
📄 许可证
本项目采用Apache-2.0许可证。