هذا هو التنفيذ الرسمي للورقة "Dino: Detr مع صناديق مرساة محسنة لاكتشاف الكائنات الشاملة". (أعلن دينو "daɪnoʊ" كما هو الحال في الديناصورات)
المؤلفون: Hao Zhang*، Feng Li*، Shilong Liu*، Lei Zhang ، Hang Su ، Jun Zhu ، Lionel M. Ni ، Heung-Yeung Shum
[2023/7/10] نقوم بإصدار نموذج لتجزئة الصور الدلالي ، وهو نموذج عالمي لتمكين القطاع والتعرف على أي شيء في أي تفريغ مطلوب. الرمز ونقطة التفتيش متوفرة!
[2023/4/28]: نصدر نموذجًا قويًا للكشف عن الكائنات والتجزئة مفتوحة المحدد الذي يحقق أفضل النتائج في مهام تجزئة الكائنات المفتوحة. رمز ونقاط التفتيش متوفرة هنا.
[2023/4/26]: دينو مشرق مرة أخرى! نطلق سراح Dino المستقر الذي تم بناؤه على العمود الفقري Dino و Focalnet-Huge الذي يحقق 64.8 AP
على اختبار Coco Dev.
[2023/4/22]: مع أفضل الحشوات الفائقة ، يحقق طراز Dino-4scale 49.8 AP
تحت 12EP ، يرجى التحقق من Detrex: Dino لمزيد من التفاصيل.
[2023/3/13]: نطلق نموذجًا قويًا لنموذج الكشف عن الكائنات المفتوح الذي يحقق أفضل النتائج في مهام الكشف عن الكائنات المفتوحة. إنه يحقق 52.5 صفر طلقة AP على اكتشاف COCO ، دون أي بيانات تدريب COCO! يحقق 63.0 AP على Coco بعد الضبط. الكود ونقاط التفتيش ستكون متاحة هنا.
[2023/1/23]: تم قبول Dino في ICLR 2023!
[2022/12/02]: تم إصدار رمز Mask Dino (أيضًا في Detrex)! يحقق Mask Dino أيضًا 51.7 و 59.0 مربع AP على Coco مع Resnet-50 و Swinl دون بيانات الكشف الإضافية ، يتفوق على الدينو تحت نفس الإعداد!.
[2022/9/22]: نصدر صندوق أدوات يوفر خوارزميات الكشف المستندة إلى المحولات الحديثة. ويشمل دينو مع أداء أفضل . مرحبا بكم لاستخدامه!
[2022/9/18]: نقوم بتنظيم رؤية كمبيوتر ورشة عمل ECCV في البرية (CVINW) ، حيث يتم استضافة تحديين لتقييم الأداء الصفري ، والقليل من الأداء ، ونماذج الرؤية التي تم تدريبها مسبقًا في مهام المصب :
[ورشة عمل] [تحدي IC] [تحدي OD]
[2022/8/6]: نقوم بتحديث نتائج طراز Swin-L بدون تقنيات مثل O365 قبل التدريب ، وحجم الصورة الكبير ، واختبار متعدد النطاق. نقوم أيضًا بتحميل نقاط التفتيش المقابلة إلى Google Drive. يحصل طرازنا 5 على نطاق واحد دون أي حيل على 58.5 AP على Coco Val.
[2022/7/14]: نصدر الرمز مع SWIN-L و Convnext Backbone.
[2022/7/10]: نصدر الكود ونقاط التفتيش مع العمود الفقري Resnet-50.
[2022/6/7]: نصدر دينوًا موحدًا لاكتشاف النموذج والتجزئة يحقق أفضل النتائج في جميع مهام التجزئة الثلاثة ( 54.7 AP على المتصدرين على مثيل Coco ، 59.5 PQ على لوحة Coco Panoptic ، و 60.8 MIOU على ADE20K الدلسي المتصدرين)! سيكون الكود متاحًا هنا.
[2022/5/28] رمز DN-DETR متاح هنا.
[2020/4/10]: رمز DAB-DETR هو جاذبية هنا.
[2022/3/8]: نصل إلى SOTA على لوحة Leader MS-COCO مع 63.3AP !
[2022/3/9]: نقوم ببناء محول اكتشاف رائع لإعادة الريبو لتقديم أوراق حول المحول للكشف والقطعة. مرحبا بكم في انتباهكم!
نقدم Dino ( D etr مع مربعات I n o o os anc ar ins ) مع:
لقد وضعنا نقاط التفتيش النموذجية الخاصة بنا هنا [طراز حديقة حيوان في Google Drive] تدرب على علامات X. سجلات التدريب لدينا في [Google Drive].
اسم | العمود الفقري | مربع AP | نقطة التفتيش | أين في ورقتنا | |
---|---|---|---|---|---|
1 | دينو 4scale | R50 | 49.0 | Google Drive / Baidu | الجدول 1 |
2 | Dino-5scale | R50 | 49.4 | Google Drive / Baidu | الجدول 1 |
3 | دينو 4scale | Swin-L | 56.8 | محرك Google | |
4 | Dino-5scale | Swin-L | 57.3 | محرك Google |
اسم | العمود الفقري | مربع AP | نقطة التفتيش | أين في ورقتنا | |
---|---|---|---|---|---|
1 | دينو 4scale | R50 | 50.4 | Google Drive / Baidu | الجدول 2 |
2 | Dino-5scale | R50 | 51.3 | Google Drive / Baidu | الجدول 2 |
اسم | العمود الفقري | مربع AP | نقطة التفتيش | أين في ورقتنا | |
---|---|---|---|---|---|
1 | دينو 4scale | R50 | 50.9 | Google Drive / Baidu | الجدول 2 |
2 | Dino-5scale | R50 | 51.2 | Google Drive / Baidu | الجدول 2 |
3 | دينو 4scale | Swin-L | 58.0 | محرك Google | |
4 | Dino-5scale | Swin-L | 58.5 | محرك Google |
نستخدم البيئة نفسها لـ DAB-DET و DN-DET لتشغيل Dino. إذا كنت قد قمت بتشغيل DN-DETR أو DAB-DETR ، فيمكنك تخطي هذه الخطوة. نختبر نماذجنا تحت python=3.7.3,pytorch=1.9.0,cuda=11.1
. قد تكون الإصدارات الأخرى متاحة أيضًا. انقر فوق Details
أدناه لمزيد من التفاصيل.
git clone https://github.com/IDEA-Research/DINO.git
cd DINO
اتبع التعليمات على https://pytorch.org/get-started/locally/.
# an example:
conda install -c pytorch pytorch torchvision
pip install -r requirements.txt
cd models/dino/ops
python setup.py build install
# unit test (should see all checking is True)
python test.py
cd ../../..
يرجى تنزيل مجموعة بيانات Coco 2017 وتنظيمها على النحو التالي:
COCODIR/
├── train2017/
├── val2017/
└── annotations/
├── instances_train2017.json
└── instances_val2017.json
قم بتنزيل نقطة تفتيش Dino Model "CheckPoint0011_4Scale.pth" من هذا الرابط وأداء الأمر أدناه. يمكنك أن تتوقع الحصول على AP النهائي حوالي 49.0.
bash scripts/DINO_eval.sh /path/to/your/COCODIR /path/to/your/checkpoint
للاستدلال والتصورات ، نقدم دفتر ملاحظات كمثال.
نستخدم نموذج Dino 4 على نطاق مدرب على 12 عصرًا كمثال لإظهار كيفية تقييم وتدريب نموذجنا.
يمكنك أيضًا تدريب نموذجنا على عملية واحدة:
bash scripts/DINO_train.sh /path/to/your/COCODIR
لتدريب طراز Swin-L ، تحتاج أولاً إلى تنزيل نقطة تفتيش العمود الفقري Swin-L من Link وتحديد Dir للعمود الفقري الذي تم تدريبه مسبقًا عند تشغيل البرامج النصية. هنا مثال.
bash scripts/DINO_train_submitit_swin.sh /path/to/your/COCODIR /path/to/your/pretrained_backbone
نظرًا لأن التدريب يستغرق وقتًا طويلاً ، فإننا نقترح تدريب النموذج على الأجهزة المتعددة.
إذا كنت تخطط لتدريب النماذج على مجموعة مع Slurm ، فإليك أمر مثال للتدريب:
# for DINO-4scale: 49.0
bash scripts/DINO_train_submitit.sh /path/to/your/COCODIR
# for DINO-5scale: 49.4
bash scripts/DINO_train_submitit_5scale.sh /path/to/your/COCODIR
ملاحظات: النتائج حساسة لحجم الدُفعة. نستخدم 16 (صورتان لكل GPU X 8 GPU لـ Dino-4Scale وصور واحدة لكل GPU x 16 GPU لـ Dino-5Scale) افتراضيًا.
أو قم بالتشغيل مع عمليات متعددة على عقدة واحدة :
# for DINO-4scale: 49.0
bash scripts/DINO_train_dist.sh /path/to/your/COCODIR
لتدريب دينو على مجموعة بيانات مخصصة من نقطة الصفر ، تحتاج إلى ضبط معلمتين في ملف التكوين:
num_classes
إلى عدد الفئات التي يجب اكتشافها في مجموعة البيانات الخاصة بك.dn_labebook_size
للتأكد من أن dn_labebook_size >= num_classes + 1
للاستفادة من نماذجنا التي تم تدريبنا مسبقًا من أجل صقل النموذج ، نقترح إضافة أمرين آخرين في باش:
--pretrain_model_path /path/to/a/pretrianed/model
. حدد نموذجًا تم تدريبه مسبقًا.--finetune_ignore label_enc.weight class_embed
. تجاهل بعض المعلمات غير المتسقة.يعتمد نموذجنا على DAB-DET و DN-DETR.
DN-DETR: تسريع تخفيض التدريب من خلال تقديم تقليل الاستعلام.
Feng Li*، Hao Zhang*، Shilong Liu ، Jian Guo ، Lionel M. Ni ، Lei Zhang.
مؤتمر IEEE حول رؤية الكمبيوتر والتعرف على الأنماط ( CVPR ) 2022.
[ورقة] [رمز] [中文解读]
DAB-DETR: صناديق المرساة الديناميكية هي استفسارات أفضل ل detr.
Shilong Liu ، Feng Li ، Hao Zhang ، Xiao Yang ، Xianbiao Qi ، Hang Su ، Jun Zhu ، Lei Zhang.
المؤتمر الدولي حول تمثيلات التعلم ( ICLR ) 2022.
[ورقة] [رمز]
كما نشكر الأعمال السابقة الرائعة بما في ذلك detr و detr المشوهة و SMCA و DETR الشرطي ومرساة Detr و Dynamic Detr ، إلخ. تتوفر المزيد من الأعمال ذات الصلة في محول الكشف الرائع.
يتم إصدار Dino تحت ترخيص Apache 2.0. يرجى الاطلاع على ملف الترخيص لمزيد من المعلومات.
حقوق الطبع والنشر (ج) فكرة. جميع الحقوق محفوظة.
مرخصة بموجب ترخيص Apache ، الإصدار 2.0 ("الترخيص") ؛ لا يجوز لك استخدام هذه الملفات إلا في الامتثال للترخيص. يمكنك الحصول على نسخة من الترخيص على http://www.apache.org/licenses/license-2.0
ما لم يكن مطلوبًا بموجب القانون المعمول به أو الموافقة على الكتابة ، يتم توزيع البرامج الموزعة بموجب الترخيص على أساس "كما هي" ، دون ضمانات أو شروط من أي نوع ، إما صريحة أو ضمنية. راجع ترخيص الأذونات والقيود التي تحكم اللغة المحددة بموجب الترخيص.
إذا وجدت عملنا مفيدًا لبحثك ، فيرجى التفكير في ذكر إدخال Bibtex التالي.
@misc { zhang2022dino ,
title = { DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object Detection } ,
author = { Hao Zhang and Feng Li and Shilong Liu and Lei Zhang and Hang Su and Jun Zhu and Lionel M. Ni and Heung-Yeung Shum } ,
year = { 2022 } ,
eprint = { 2203.03605 } ,
archivePrefix = { arXiv } ,
primaryClass = { cs.CV }
}
@inproceedings { li2022dn ,
title = { Dn-detr: Accelerate detr training by introducing query denoising } ,
author = { Li, Feng and Zhang, Hao and Liu, Shilong and Guo, Jian and Ni, Lionel M and Zhang, Lei } ,
booktitle = { Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition } ,
pages = { 13619--13627 } ,
year = { 2022 }
}
@inproceedings {
liu2022dabdetr,
title = { {DAB}-{DETR}: Dynamic Anchor Boxes are Better Queries for {DETR} } ,
author = { Shilong Liu and Feng Li and Hao Zhang and Xiao Yang and Xianbiao Qi and Hang Su and Jun Zhu and Lei Zhang } ,
booktitle = { International Conference on Learning Representations } ,
year = { 2022 } ,
url = { https://openreview.net/forum?id=oMI9PjOb9Jl }
}