Ini adalah implementasi resmi dari makalah "Dino: Detr dengan peningkatan kotak jangkar denoising untuk deteksi objek ujung ke ujung". (Dino diucapkan `daɪnoʊ 'seperti dalam dinosaurus)
Penulis: Hao Zhang*, Feng Li*, Shilong Liu*, Lei Zhang, Hang Su, Jun Zhu, Lionel M. Ni, Heung-Yeung Shum
[2023/7/10] Kami merilis Semantic-Sam, model segmentasi gambar universal untuk memungkinkan segmen dan mengenali apa pun di setiap granularitas yang diinginkan. Kode dan pos pemeriksaan tersedia!
[2023/4/28]: Kami merilis model deteksi dan segmentasi open-set terbuka yang kuat yang mencapai hasil terbaik pada tugas segmentasi objek terbuka. Kode dan pos pemeriksaan tersedia di sini.
[2023/4/26]: Dino bersinar lagi! Kami melepaskan stabil-Dino yang dibangun di atas tulang punggung Dino dan FocalNet-Huge yang mencapai 64.8 AP
pada tes Coco-dev.
[2023/4/22]: Dengan hiper-param yang lebih baik, model Dino-4Scale kami mencapai 49.8 AP
di bawah pengaturan 12EP, silakan periksa Detrex: Dino untuk lebih jelasnya.
[2023/3/13]: Kami merilis Dino Model Deteksi Open-Set Open-Set yang kuat yang mencapai hasil terbaik pada tugas deteksi objek set terbuka. Ini mencapai 52,5 AP nol-shot pada deteksi coco, tanpa data pelatihan Coco! Ini mencapai 63,0 AP di Coco setelah penyesuaian. Kode dan pos pemeriksaan akan tersedia di sini.
[2023/1/23]: Dino telah diterima di ICLR 2023!
[2022/12/02]: Code for Mask Dino dirilis (juga di Detrex)! Topeng Dino lebih lanjut mencapai 51,7 dan 59,0 kotak AP di Coco dengan ResNet-50 dan Swinl tanpa data deteksi tambahan, mengungguli Dino di bawah pengaturan yang sama!.
[2022/9/22]: Kami merilis kotak alat yang menyediakan algoritma deteksi berbasis transformator canggih. Ini termasuk dino dengan kinerja yang lebih baik . Selamat menggunakannya!
[2022/9/18]: Kami mengatur visi komputer ECCV Workshop di alam liar (CVINW) , di mana dua tantangan di-host untuk mengevaluasi kinerja zero-shot, beberapa-shot dan penuh dari model visi yang terlatih dalam tugas hilir dalam tugas hilir dalam tugas hilir dalam tugas hilir dalam hilir dalam :
[Workshop] [IC Challenge] [OD Challenge]
[2022/8/6]: Kami memperbarui hasil model Swin-L tanpa teknik seperti O365 pra-pelatihan, ukuran gambar besar, dan uji multi-skala. Kami juga mengunggah pos pemeriksaan yang sesuai ke Google Drive. Model 5 skala kami tanpa trik apa pun memperoleh 58,5 AP pada Coco Val.
[2022/7/14]: Kami merilis kode dengan swin-l dan convNext backbone.
[2022/7/10]: Kami merilis kode dan pos pemeriksaan dengan Backbone ResNet-50.
[2022/6/7]: Kami merilis model Deteksi dan Segmentasi Dino yang terpadu yang mencapai hasil terbaik pada ketiga tugas segmentasi ( 54,7 AP di papan peringkat instance Coco, 59,5 PQ di papan peringkat Coco Panoptic, dan 60,8 MIou di ADE20K Semantik Ade20k ADE20K Semantik Ade20k Semantik Papan peringkat)! Kode akan tersedia di sini.
[2022/5/28] Kode untuk DN-DETR tersedia di sini.
[2020/4/10]: Kode untuk DAB-DETR tersedia di sini.
[2022/3/8]: Kami mencapai SOTA di papan pemimpin MS-COCO dengan 63.3ap !
[2022/3/9]: Kami membangun repo transformator deteksi yang mengagumkan untuk menyajikan makalah tentang transformator untuk deteksi dan segmentasi. Selamat datang di perhatian Anda!
Kami menyajikan Dino ( D ETR dengan i moing de n oising anch o r box) dengan:
Kami telah menempatkan pos pemeriksaan model kami di sini [Model Zoo di Google Drive] [Model Zoo di 百度网盘] (提取码 "Dino"), di mana pemeriksaan {x} _ {y} skala.pth menunjukkan pos pemeriksaan model skala y y-y dilatih untuk zaman x. Log pelatihan kami ada di [Google Drive].
nama | tulang punggung | Kotak AP | Pos pemeriksaan | Dimana di koran kami | |
---|---|---|---|---|---|
1 | DINO-4Scale | R50 | 49.0 | Google Drive / Baidu | Tabel 1 |
2 | DINO-5Scale | R50 | 49.4 | Google Drive / Baidu | Tabel 1 |
3 | DINO-4Scale | Swin-l | 56.8 | Google Drive | |
4 | DINO-5Scale | Swin-l | 57.3 | Google Drive |
nama | tulang punggung | Kotak AP | Pos pemeriksaan | Dimana di koran kami | |
---|---|---|---|---|---|
1 | DINO-4Scale | R50 | 50.4 | Google Drive / Baidu | Tabel 2 |
2 | DINO-5Scale | R50 | 51.3 | Google Drive / Baidu | Tabel 2 |
nama | tulang punggung | Kotak AP | Pos pemeriksaan | Dimana di koran kami | |
---|---|---|---|---|---|
1 | DINO-4Scale | R50 | 50.9 | Google Drive / Baidu | Tabel 2 |
2 | DINO-5Scale | R50 | 51.2 | Google Drive / Baidu | Tabel 2 |
3 | DINO-4Scale | Swin-l | 58.0 | Google Drive | |
4 | DINO-5Scale | Swin-l | 58.5 | Google Drive |
Kami menggunakan lingkungan yang sama untuk DAB-DET dan DN-DETR untuk menjalankan Dino. Jika Anda telah menjalankan DN-DET atau DAB-DET, Anda dapat melewatkan langkah ini. Kami menguji model kami di bawah python=3.7.3,pytorch=1.9.0,cuda=11.1
. Versi lain mungkin juga tersedia. Klik Details
di bawah ini untuk detail lebih lanjut.
git clone https://github.com/IDEA-Research/DINO.git
cd DINO
Ikuti instruksi di 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 ../../..
Silakan unduh Dataset Coco 2017 dan atur mereka sebagai berikut:
COCODIR/
├── train2017/
├── val2017/
└── annotations/
├── instances_train2017.json
└── instances_val2017.json
Unduh Dino Model Checkpoint kami "CheckPoint0011_4Scale.pth" dari tautan ini dan lakukan perintah di bawah ini. Anda bisa berharap mendapatkan AP terakhir sekitar 49.0.
bash scripts/DINO_eval.sh /path/to/your/COCODIR /path/to/your/checkpoint
Untuk inferensi dan visualisasi, kami memberikan buku catatan sebagai contoh.
Kami menggunakan model Dino 4-skala yang dilatih untuk 12 zaman sebagai contoh untuk menunjukkan cara mengevaluasi dan melatih model kami.
Anda juga dapat melatih model kami dalam satu proses:
bash scripts/DINO_train.sh /path/to/your/COCODIR
Untuk melatih model swin-l, Anda harus terlebih dahulu mengunduh pos pemeriksaan swin-lone dari tautan dan menentukan Dir dari tulang punggung yang sudah dilatih saat menjalankan skrip. Inilah contohnya.
bash scripts/DINO_train_submitit_swin.sh /path/to/your/COCODIR /path/to/your/pretrained_backbone
Saat pelatihan memakan waktu, kami menyarankan untuk melatih model multi-perangkat.
Jika Anda berencana untuk melatih model pada cluster dengan slurm , berikut adalah contoh perintah untuk pelatihan:
# 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
Catatan: Hasilnya sensitif terhadap ukuran batch. Kami menggunakan 16 (2 gambar setiap GPU x 8 GPU untuk DINO-4Scale dan 1 gambar setiap GPU x 16 GPU untuk DINO-5Scale) secara default.
Atau jalankan dengan multi-proses pada satu node :
# for DINO-4scale: 49.0
bash scripts/DINO_train_dist.sh /path/to/your/COCODIR
Untuk melatih dino pada dataset khusus dari awal , Anda perlu menyetel dua parameter dalam file konfigurasi:
num_classes
ke jumlah kelas untuk dideteksi dalam dataset Anda.dn_labebook_size
untuk memastikan bahwa dn_labebook_size >= num_classes + 1
Untuk memanfaatkan model pra-terlatih kami untuk fine-tuning model, kami sarankan menambahkan dua perintah lagi dalam pesta:
--pretrain_model_path /path/to/a/pretrianed/model
. Tentukan model pra-terlatih.--finetune_ignore label_enc.weight class_embed
. Abaikan beberapa parameter yang tidak konsisten.Model kami didasarkan pada DAB-DET dan DN-DET.
DN-DET: Akselerate Detr Training dengan memperkenalkan Denoising kueri.
Feng Li*, Hao Zhang*, Shilong Liu, Jian Guo, Lionel M. Ni, Lei Zhang.
Konferensi IEEE tentang Visi Komputer dan Pengenalan Pola ( CVPR ) 2022.
[kertas] [kode] [中文解读]
DAB-DET: Kotak jangkar dinamis adalah kueri yang lebih baik untuk detr.
Shilong Liu, Feng Li, Hao Zhang, Xiao Yang, Xianbiao Qi, Hang Su, Jun Zhu, Lei Zhang.
Konferensi Internasional tentang Representasi Pembelajaran ( ICLR ) 2022.
[kertas] [kode]
Kami juga berterima kasih kepada pekerjaan yang hebat sebelumnya termasuk detr, DETR yang dapat dideformasi, SMCA, detr bersyarat, Anchor Detr, Dynamic Detr, dll. Pekerjaan terkait lebih banyak tersedia di Transformator Deteksi Luar Biasa.
Dino dirilis di bawah lisensi Apache 2.0. Silakan lihat file lisensi untuk informasi lebih lanjut.
Ide Hak Cipta (C). Semua hak dilindungi undang -undang.
Berlisensi di bawah lisensi Apache, versi 2.0 ("lisensi"); Anda tidak boleh menggunakan file -file ini kecuali sesuai dengan lisensi. Anda dapat memperoleh salinan lisensi di http://www.apache.org/licenses/license-2.0
Kecuali diharuskan oleh hukum yang berlaku atau disepakati secara tertulis, perangkat lunak yang didistribusikan di bawah lisensi didistribusikan berdasarkan "sebagaimana adanya", tanpa jaminan atau ketentuan dalam bentuk apa pun, baik tersurat maupun tersirat. Lihat lisensi untuk bahasa spesifik yang mengatur izin dan batasan di bawah lisensi.
Jika Anda menemukan pekerjaan kami bermanfaat untuk penelitian Anda, silakan pertimbangkan mengutip entri Bibtex berikut.
@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 }
}