Awesome
Weclome the discussions and contributions.
Introduction
BoxInstSeg is a toolbox that aims to provide state-of-the-art box-supervised instance segmentation algorithms. It is built on top of mmdetection. The main branch works with Pytorch 1.6+ or higher (we recommend Pytorch 1.9.0)
Major features
-
Support of instance segmentation with only box annotations
We implement multiple box-supervised instance segmentation methods in this toolbox,(e.g. BoxInst, DiscoBox). This toolbox can achieve the similar performance as the original paper.
-
MMdetection feature inheritance
This toolbox doesn't change the structure and logic of mmdetection. It inherits all features from MMdetection.
Update
- 🔥The codes of APro[NeurIPS2023] are available in APro, which is based on BoxInstSeg.
- The codes of Box2mask are available.
Model Zoo
<summary> Supported methods </summary>COCO (val)
method | Backbone | GPUs | Models | sched. | config | AP (this rep) | AP(original rep/paper) |
---|---|---|---|---|---|---|---|
BoxInst | R-50 | 8 | model | 1x | config | 30.7 | 30.7 |
BoxInst | R-50 | 8 | model | 3x | config | 32.1 | 31.8 |
BoxInst | R-101 | 8 | model | 1x | config | 32.0 | 32.2 |
BoxInst | R-101 | 8 | model | 3x | config | 33.1 | 33.0 |
DiscoBox | R-50 | 8 | model | 3x | config | 32.2 | 31.4(wo ms) |
DiscoBox | R-101 | 8 | model | 3x | config | 33.4 | -- |
Box2Mask-T | R-50 | 8 | model | 50e | config | 35.9 | 36.1 |
Box2Mask-T | R-101 | 8 | model | 50e | config | 38.2 | 37.9 |
Box2Mask-T | Swin-L | 8 | model | 50e | config | 41.9/42.5 | 41.3/42.4 |
- The above models are trained with
ms
to make a performance comparison. - For Swin-L model, the result of
a/b
format is onval/test-dev
set. A100 GPUs are used for the default config.
Pascal VOC
method | Backbone | GPUs | Models | sched. | config | AP | AP_50 | AP_75 |
---|---|---|---|---|---|---|---|---|
BoxInst | R-50 | 4 | model | 3x | config | 32.0 | 60.2 | 30.2 |
BoxInst | R-101 | 4 | model | 3x | config | 34.2 | 62.4 | 33.2 |
DiscoBox | R-50 | 4 | model | 3x | config | 32.9 | 61.0 | 31.5 |
DiscoBox | R-101 | 4 | model | 3x | config | 34.6 | 63.0 | 33.0 |
Box2Mask-T | R-50 | 4 | model | 50e | config | 41.4 | 68.9 | 42.1 |
Box2Mask-T | R-101 | 4 | model | 50e | config | 43.2 | 70.8 | 44.4 |
- Pascal VOC is the extension of the training set of VOC 2012 with SBD. The link of whole dataset with coco json format is here(GoogleDrive)
Installation and Getting Started
This is built on the MMdetection (V2.25.0). Please refer to Installation and Getting Started for the details of installation and basic usage. We also recommend the user to refer the office introduction of MMdetection.
License
This project is released under the Apache 2.0 license.
Acknowledgement
This project is built based on MMdetection and part of module is borrowed from the original rep of Adelaidet and DiscoBox.
More
-
This repo will update the survey of box-supervised instance segmentation, we highly welcome the user to develop more algorithms in this toolbox.
-
If this rep is helpful for your work, please give me a star.