🚀 DETR(エンドツーエンド物体検出)モデル、ResNet - 50バックボーンネットワーク(膨張C5段階)を採用
Transformerアーキテクチャに基づくエンドツーエンド物体検出モデルで、COCO 2017データセットで訓練され、画像内の物体を効率的かつ正確に検出できます。
🚀 クイックスタート
DETR(Detection Transformer)モデルは、COCO 2017物体検出データセット(118k枚の注釈付き画像)でエンドツーエンドに訓練されました。このモデルは、Carionらによって論文 End-to-End Object Detection with Transformers で提案され、初めて このリポジトリ で公開されました。
注意: DETRを公開したチームはこのモデルのモデルカードを作成していません。このカードはHugging Faceチームによって作成されました。
✨ 主な機能
- エンドツーエンド設計:DETRモデルは、畳み込みバックボーンネットワークを持つエンコーダ・デコーダTransformerです。物体検出のために、デコーダの出力の上に2つのヘッドが追加されています。1つはクラスラベル用の線形層、もう1つはバウンディングボックス用のMLP(多層パーセプトロン)です。
- 物体クエリメカニズム:このモデルは、いわゆる物体クエリを使用して画像内の物体を検出します。各物体クエリは、画像内で特定の物体を探します。COCOデータセットの場合、物体クエリの数は100に設定されています。
- 特殊な損失関数:モデルは「二分マッチング損失」を使用して訓練されます。ハンガリアンマッチングアルゴリズムを通じて、予測結果と真の注釈の間に1対1の最適なマッピングを作成し、その後、標準的な交差エントロピー(クラス用)とL1と広義IoU損失の線形結合(バウンディングボックス用)を使用してモデルのパラメータを最適化します。
💻 使用例
基本的な使用法
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-50-dc5')
model = DetrForObjectDetection.from_pretrained('facebook/detr-resnet-50-dc5')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
bboxes = outputs.pred_boxes
現在、特徴抽出器とモデルはどちらもPyTorchをサポートしています。
📚 ドキュメント
想定される用途と制限
このオリジナルモデルを使用して物体検出を行うことができます。すべての利用可能なDETRモデルを見つけるには、モデルセンター を参照してください。
訓練データ
DETRモデルは COCO 2017物体検出 データセットで訓練されています。このデータセットには、それぞれ118k/5k枚の訓練/検証用の注釈付き画像が含まれています。
訓練プロセス
前処理
訓練/検証中の画像前処理の正確な詳細は、ここ で見つけることができます。
画像は、最短辺が少なくとも800ピクセル、最長辺が最大1333ピクセルになるようにサイズ調整/スケーリングされ、RGBチャネルでImageNetの平均(0.485, 0.456, 0.406)と標準偏差(0.229, 0.224, 0.225)を使用して正規化されます。
訓練
このモデルは、16台のV100 GPUで300エポック訓練され、3日間かかりました。各GPUは4枚の画像を処理しました(したがって、総バッチサイズは64です)。
評価結果
このモデルは、COCO 2017検証セットで43.3のAP(平均精度)を達成しました。評価結果の詳細については、元の論文の表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物体検出データセット(118k/5k枚の訓練/検証用の注釈付き画像) |
📌 サンプル表示