Il s'agit de la mise en œuvre officielle du document "Dino: DETR avec amélioration des boîtes d'ancrage pour le déboucher pour la détection d'objets de bout en bout". (Dino prononcé «daɪnoʊ» comme dans Dinosaur)
Auteurs: Hao Zhang *, Feng Li *, Shilong Liu *, Lei Zhang, Hang Su, Jun Zhu, Lionel M. Ni, Heung-yeung Shum
[2023/7/10] Nous libérons Semantis-SAM, un modèle de segmentation d'image universel pour activer le segment et reconnaître quoi que ce soit à toute granularité souhaitée. Le code et le point de contrôle sont disponibles!
[2023/4/28]: Nous libérons un modèle d'ouverture d'objets et de segmentation d'objets ouverts forts qui obtient les meilleurs résultats sur les tâches de segmentation d'objets en segment ouvert. Le code et les points de contrôle sont disponibles ici.
[2023/4/26]: Dino brille à nouveau! Nous publions Stable-Dino qui est construit sur Dino et Focalnet-Huge Backbone qui atteint 64.8 AP
sur Coco Test-DEV.
[2023/4/22]: Avec de meilleurs hyper-Params, notre modèle Dino-4Scale atteint 49.8 AP
dans les paramètres de 12ep, veuillez consulter Detrex: Dino pour plus de détails.
[2023/3/13]: Nous libérons un modèle de détection d'objets ouverts solide à la mise à la terre Dino qui obtient les meilleurs résultats sur les tâches de détection d'objets ouvertes. Il réalise 52,5 AP zéro-tir sur la détection de Coco, sans aucune donnée à la formation de CoCo! Il atteint 63,0 AP sur Coco après un réglage fin. Le code et les points de contrôle seront disponibles ici.
[2023/1/23]: Dino a été accepté à ICLR 2023!
[2022/12/02]: Code pour Mask Dino est publié (également à DeTrex)! Mask Dino atteint en outre 51,7 et 59,0 box AP sur Coco avec un RESNET-50 et SWINL sans données de détection supplémentaires, surpassant Dino dans le même réglage!.
[2022/9/22]: Nous publions une boîte à outils dedrex qui fournit des algorithmes de détection basés sur un transformateur à l'état-de-art. Il comprend Dino avec de meilleures performances . Bienvenue pour l'utiliser!
[2022/9/18]: Nous organisons la vision de l' atelier de l'atelier ECCV dans la nature (CVINW) , où deux défis sont hébergés pour évaluer les performances zéro-shot, à quelques coups de feu et à coup complet des modèles de vision pré-formés dans les tâches en aval :
[Atelier] [Challenge IC] [Défi OD]
[2022/8/6]: Nous mettons à jour les résultats du modèle SWIN-L sans techniques telles que la pré-formation O365, la taille grande de l'image et le test multi-échelle. Nous téléchargeons également les points de contrôle correspondants sur Google Drive. Notre modèle à 5 échelles sans astuce obtient 58,5 AP sur Coco Val.
[2022/7/14]: Nous libérons le code avec Swin-L et Convnext Backbone.
[2022/7/10]: Nous libérons le code et les points de contrôle avec Resnet-50 Backbone.
[2022/6/7]: Nous libérons un masque de détection et de segmentation unifiés Dino qui obtient les meilleurs résultats sur les trois tâches de segmentation ( 54,7 AP sur Coco Instance Leadboard, 59,5 pq sur le classement Panoptic Coco et 60,8 miou sur ADE20K Semantic Semante classement)! Le code sera disponible ici.
[2022/5/28] Le code pour DN-Dett est disponible ici.
[2020/4/10]: le code de Dab-Dett est avaliable ici.
[2022/3/8]: Nous atteignons le SOTA sur MS-COCO Leader Board avec 63.3ap !
[2022/3/9]: Nous construisons un transformateur de détection impressionnant Repo pour présenter des articles sur le transformateur pour la détection et la segmenttion. Bienvenue à votre attention!
Nous présentons dino ( d etr avec des boîtes de mise en anch o roising i mproved) avec:
Nous avons mis nos points de contrôle des modèles ici [modèle Zoo dans Google Drive] [Modèle Zoo dans 百度网盘] (提取码 提取码 提取码 提取码 提取码 提取码 "dino"), où le point de contrôle {x} _ {y} Scale.Pth désigne le point de contrôle du modèle à échelle Y Formé pour X époques. Nos journaux de formation sont dans [Google Drive].
nom | colonne vertébrale | Box AP | Point de contrôle | Où dans notre article | |
---|---|---|---|---|---|
1 | Dino-4cale | R50 | 49.0 | Google Drive / Baidu | Tableau 1 |
2 | Dino-5cale | R50 | 49.4 | Google Drive / Baidu | Tableau 1 |
3 | Dino-4cale | Swin-l | 56.8 | Google Drive | |
4 | Dino-5cale | Swin-l | 57.3 | Google Drive |
nom | colonne vertébrale | Box AP | Point de contrôle | Où dans notre article | |
---|---|---|---|---|---|
1 | Dino-4cale | R50 | 50.4 | Google Drive / Baidu | Tableau 2 |
2 | Dino-5cale | R50 | 51.3 | Google Drive / Baidu | Tableau 2 |
nom | colonne vertébrale | Box AP | Point de contrôle | Où dans notre article | |
---|---|---|---|---|---|
1 | Dino-4cale | R50 | 50.9 | Google Drive / Baidu | Tableau 2 |
2 | Dino-5cale | R50 | 51.2 | Google Drive / Baidu | Tableau 2 |
3 | Dino-4cale | Swin-l | 58.0 | Google Drive | |
4 | Dino-5cale | Swin-l | 58.5 | Google Drive |
Nous utilisons l'environnement même pour Dab-Det et DN-Det pour exécuter Dino. Si vous avez exécuté DN-Det ou Dab-Det, vous pouvez ignorer cette étape. Nous testons nos modèles sous python=3.7.3,pytorch=1.9.0,cuda=11.1
. D'autres versions pourraient également être disponibles. Cliquez sur les Details
ci-dessous pour plus de détails.
git clone https://github.com/IDEA-Research/DINO.git
cd DINO
Suivez l'instruction sur 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 ../../..
Veuillez télécharger un ensemble de données CoCo 2017 et les organiser comme suit:
COCODIR/
├── train2017/
├── val2017/
└── annotations/
├── instances_train2017.json
└── instances_val2017.json
Téléchargez notre modèle de contrôle Dino "CheckPoint0011_4scale.pth" à partir de ce lien et effectuez la commande ci-dessous. Vous pouvez vous attendre à obtenir le dernier AP environ 49,0.
bash scripts/DINO_eval.sh /path/to/your/COCODIR /path/to/your/checkpoint
Pour l'inférence et les visualisations, nous fournissons un cahier à titre d'exemple.
Nous utilisons le modèle Dino à 4 échelles formé pour 12 époques à titre d'exemple pour montrer comment évaluer et former notre modèle.
Vous pouvez également former notre modèle sur un seul processus:
bash scripts/DINO_train.sh /path/to/your/COCODIR
Pour former le modèle SWIN-L, vous devez d'abord télécharger le point de contrôle de Swin-L Backbone à partir du lien et spécifier le DIR de l'épine dorsale pré-formée lors de l'exécution des scripts. Voici un exemple.
bash scripts/DINO_train_submitit_swin.sh /path/to/your/COCODIR /path/to/your/pretrained_backbone
Comme la formation prend du temps, nous suggérons de former le modèle sur les appareils multiples.
Si vous prévoyez de former les modèles sur un cluster avec Slurm , voici un exemple de commande de formation:
# 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
Remarques: Les résultats sont sensibles à la taille du lot. Nous utilisons 16 (2 images chaque GPU x 8 GPU pour Dino-4Scale et 1 images chaque GPU x 16 GPU pour Dino-5Scale) par défaut.
Ou exécutez avec plusieurs processus sur un seul nœud :
# for DINO-4scale: 49.0
bash scripts/DINO_train_dist.sh /path/to/your/COCODIR
Pour former un dino sur un ensemble de données personnalisé à partir de zéro , vous devez régler deux paramètres dans un fichier de configuration:
num_classes
sur le nombre de classes à détecter dans votre ensemble de données.dn_labebook_size
pour s'assurer que dn_labebook_size >= num_classes + 1
Pour tirer parti de nos modèles pré-formés pour le réglage du modèle, nous vous suggérons d'ajouter deux autres commandes dans un bash:
--pretrain_model_path /path/to/a/pretrianed/model
. Spécifiez un modèle pré-formé.--finetune_ignore label_enc.weight class_embed
. Ignorez certains paramètres incohérents.Notre modèle est basé sur DAB-Det et DN-Dett.
DN-DETR: Accélérer la formation Detr en introduisant le débroussage des requêtes.
Feng Li *, Hao Zhang *, Shilong Liu, Jian Guo, Lionel M. Ni, Lei Zhang.
Conférence IEEE sur la vision par ordinateur et la reconnaissance des modèles ( CVPR ) 2022.
[papier] [code] [中文解读]
DAB-DETR: Les boîtes d'ancrage dynamique sont de meilleures requêtes pour Detr.
Shilong Liu, Feng Li, Hao Zhang, Xiao Yang, Xianbiao Qi, Hang Su, Jun Zhu, Lei Zhang.
Conférence internationale sur les représentations de l'apprentissage ( ICLR ) 2022.
[papier] [Code]
Nous remercions également de grands travaux antérieurs, notamment Detr, Detr déformable, SMCA, DETR conditionnel, Anchor Detr, Dynamic Detr, etc. Des travaux plus liés sont disponibles chez Awesome Detection Transformer.
Dino est libéré sous la licence Apache 2.0. Veuillez consulter le fichier de licence pour plus d'informations.
Copyright (c) Idée. Tous droits réservés.
Licencié sous la licence Apache, version 2.0 (la "licence"); Vous ne pouvez pas utiliser ces fichiers sauf conformément à la licence. Vous pouvez obtenir une copie de la licence à http://www.apache.org/licenses/license-2.0
Sauf exiger la loi applicable ou convenu par écrit, les logiciels distribués en vertu de la licence sont distribués sur une base «tel quel», sans garantie ou conditions d'aucune sorte, expresse ou implicite. Voir la licence pour la langue spécifique régissant les autorisations et les limitations sous la licence.
Si vous trouvez notre travail utile pour vos recherches, veuillez envisager de citer l'entrée Bibtex suivante.
@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 }
}