🚀 DETR(端到端目標檢測)模型,採用ResNet - 101骨幹網絡(膨脹C5階段)
DETR(Detection Transformer)是一個在COCO 2017目標檢測數據集(11.8萬張標註圖像)上進行端到端訓練的模型。它由Carion等人在論文 End-to-End Object Detection with Transformers 中提出,並首次在 此倉庫 發佈。
免責聲明:發佈DETR的團隊並未為此模型撰寫模型卡片,此模型卡片由Hugging Face團隊編寫。
🚀 快速開始
你可以使用這個原始模型進行目標檢測。查看 模型中心 以查找所有可用的DETR模型。
✨ 主要特性
- 端到端訓練:在COCO 2017目標檢測數據集上進行端到端訓練。
- Transformer架構:採用編碼器 - 解碼器Transformer架構,並結合卷積骨幹網絡。
- 目標查詢機制:使用目標查詢來檢測圖像中的對象。
💻 使用示例
基礎用法
from transformers import DetrFeatureExtractor, DetrForObjectDetection
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = DetrFeatureExtractor.from_pretrained('facebook/detr-resnet-101-dc5')
model = DetrForObjectDetection.from_pretrained('facebook/detr-resnet-101-dc5')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
bboxes = outputs.pred_boxes
目前,特徵提取器和模型都支持PyTorch。
📚 詳細文檔
模型描述
DETR模型是一個帶有卷積骨幹網絡的編碼器 - 解碼器Transformer。在解碼器輸出之上添加了兩個頭部以進行目標檢測:一個用於類別標籤的線性層和一個用於邊界框的MLP(多層感知器)。該模型使用所謂的目標查詢來檢測圖像中的對象。每個目標查詢在圖像中尋找特定的對象。對於COCO數據集,目標查詢的數量設置為100。
該模型使用“二分匹配損失”進行訓練:將N = 100個目標查詢的預測類別和邊界框與真實標註進行比較,真實標註會填充到相同的長度N(因此,如果一幅圖像僅包含4個對象,96個標註的類別將為“無對象”,邊界框為“無邊界框”)。使用匈牙利匹配算法在N個查詢和N個標註之間創建最優的一對一映射。接下來,使用標準的交叉熵(用於類別)和L1與廣義IoU損失的線性組合(用於邊界框)來優化模型的參數。
預期用途和限制
你可以使用該原始模型進行目標檢測。查看 模型中心 以查找所有可用的DETR模型。
訓練數據
DETR模型在 COCO 2017目標檢測 數據集上進行訓練,該數據集分別包含11.8萬張和5000張用於訓練和驗證的標註圖像。
訓練過程
預處理
訓練/驗證期間圖像預處理的確切細節可在 此處 找到。
圖像會進行調整大小/縮放,使得最短邊至少為800像素,最長邊最多為1333像素,並使用ImageNet均值(0.485, 0.456, 0.406)和標準差(0.229, 0.224, 0.225)在RGB通道上進行歸一化。
訓練
該模型在16個V100 GPU上訓練了300個epoch,耗時3天,每個GPU處理4張圖像(因此總批量大小為64)。
評估結果
該模型在COCO 2017驗證集上的AP(平均精度)達到了 44.9。有關評估結果的更多詳細信息,請參考原論文的表1。
BibTeX引用和引用信息
@article{DBLP:journals/corr/abs-2005-12872,
author = {Nicolas Carion and
Francisco Massa and
Gabriel Synnaeve and
Nicolas Usunier and
Alexander Kirillov and
Sergey Zagoruyko},
title = {End-to-End Object Detection with Transformers},
journal = {CoRR},
volume = {abs/2005.12872},
year = {2020},
url = {https://arxiv.org/abs/2005.12872},
archivePrefix = {arXiv},
eprint = {2005.12872},
timestamp = {Thu, 28 May 2020 17:38:09 +0200},
biburl = {https://dblp.org/rec/journals/corr/abs-2005-12872.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
📄 許可證
本項目採用Apache - 2.0許可證。
屬性 |
詳情 |
模型類型 |
端到端目標檢測模型 |
訓練數據 |
COCO 2017目標檢測數據集 |