Comments (10)
Can confirm @deepakksingh , to_coco breaks person annotations. Here are the annotation class counts for the 8 classes after to_coco in the training set (7000 images):
{1: 0, 2: 273, 3: 67034, 4: 3178, 5: 1253, 6: 52, 7: 262, 8: 462}
Aside from the missing class, there are also severe class imbalances, and many noisy annotations (e.g. class objects not segmented, noisy segmentation mask edges, random annotations of bushes/trees labeled as trains/cars) in the training and val folds, which makes training and evaluating a model for instance segmentation very difficult. I believe they will need to correct these annotations for this dataset to be viable for instance segmentation, or they will need to publish a list of the problematic images/annotations. In their paper, they also report performance well below the COCO benchmark (scores that are less than half of COCO SOTA), implying that the combination of class imbalance and noisy annotations is causing real problems (this task should certainly not be harder than COCO, even if it is scarce). I also experienced similar issues with the seg_track_20 dataset.
Hopefully these issues can be resolved quickly, this dataset has a lot of untapped potential.
from bdd100k.
Yes, there are no instances with category_id as 1 after the conversion using to_coco.
from bdd100k.
Could the authors(@fyu) kindly verify this?
I downloaded the latest annotations of instance segmentation along with the latest image set and wanted to train mask-rcnn.
I notice that there are no instances of 'pedestrian' which is category id: 1.Could someone please cross-check this.
There is really no pedestrian
here, but are person
s here.
That's a legacy problem, and our scripts have considered this issue.
To mapping it, you may call bdd100k.label.to_scalabel.bdd100k_to_scalabel
, hope this may help you.
from bdd100k.
It is actually not a legacy issue. We tried to adopt cityscapes labels for segmentation. In cityscapes, the label is called person
instead of pedestrian
.
from bdd100k.
Thank you for the quick replies.
I used the label.to_coco to convert
python3 -m bdd100k.label.to_coco -m ins_seg -i ./bdd/bdd100k/labels/ins_seg/polygons/ins_seg_train.json -o ./in_coco/inseg_train_coco.json -mb ./bdd/bdd100k/labels/ins_seg/bitmasks/train/
python3 -m bdd100k.label.to_coco -m ins_seg -i ./bdd/bdd100k/labels/ins_seg/polygons/ins_seg_val.json -o ./in_coco/inseg_val_coco.json -mb ./bdd/bdd100k/labels/ins_seg/bitmasks/val/
So I think that changing the "categories" json object in the generated coco files should resolve this issue.
Am I correct?
PS: Is the above command to convert correct?
I'm using Detectron2 to train Mask-RCNN on BDD's Instance Segmentation.
from bdd100k.
Could the authors(@fyu) kindly verify this?
I downloaded the latest annotations of instance segmentation along with the latest image set and wanted to train mask-rcnn.
I notice that there are no instances of 'pedestrian' which is category id: 1.
Could someone please cross-check this.There is really no
pedestrian
here, but areperson
s here.
That's a legacy problem, and our scripts have considered this issue.To mapping it, you may call
bdd100k.label.to_scalabel.bdd100k_to_scalabel
, hope this may help you.
Hello @XiaLiPKU,
Where should i run bdd100k.label.to_scalabel.bdd100k_to_scalabel
?
I also noticed that the original ins_seg_train.json and ins_seg_val.json have person
as the category label, but after converting it to coco using label.to_coco it generates pedestrian category in categories
, but there are no instances of it in annotations
from bdd100k.
Thank you for the quick replies.
I used the label.to_coco to convertpython3 -m bdd100k.label.to_coco -m ins_seg -i ./bdd/bdd100k/labels/ins_seg/polygons/ins_seg_train.json -o ./in_coco/inseg_train_coco.json -mb ./bdd/bdd100k/labels/ins_seg/bitmasks/train/ python3 -m bdd100k.label.to_coco -m ins_seg -i ./bdd/bdd100k/labels/ins_seg/polygons/ins_seg_val.json -o ./in_coco/inseg_val_coco.json -mb ./bdd/bdd100k/labels/ins_seg/bitmasks/val/
So I think that changing the "categories" json object in the generated coco files should resolve this issue.
Am I correct?PS: Is the above command to convert correct?
I'm using Detectron2 to train Mask-RCNN on BDD's Instance Segmentation.
Yes, these command are correct
from bdd100k.
Could the authors(@fyu) kindly verify this?
I downloaded the latest annotations of instance segmentation along with the latest image set and wanted to train mask-rcnn.
I notice that there are no instances of 'pedestrian' which is category id: 1.
Could someone please cross-check this.There is really no
pedestrian
here, but areperson
s here.
That's a legacy problem, and our scripts have considered this issue.
To mapping it, you may callbdd100k.label.to_scalabel.bdd100k_to_scalabel
, hope this may help you.Hello @XiaLiPKU,
Where should i runbdd100k.label.to_scalabel.bdd100k_to_scalabel
?
I also noticed that the original ins_seg_train.json and ins_seg_val.json haveperson
as the category label, but after converting it to coco using label.to_coco it generates pedestrian category incategories
, but there are no instances of it inannotations
to_coco functions has included this conversion, so you don't have to explicitly call it.
So, what do you mean by " but there are no instances of it in annotations"?
You mean, there's no instance with category_id as 1?
from bdd100k.
Thanks for your findings, there are really bugs in to_scalabel.py.
It has been fixed in #142.
Now you may need to pull the lasted version to your local repo
from bdd100k.
Thank you @XiaLiPKU.
I pulled the latest commit and converted it. Now the converted json has instances for all the 8 categories needed for instance segmentation.
Image: from detectron2's log while training Mask-RCNN.
I notice that 109 images are being removed out of 7000 images. I will look into it.
Thank you once again :)
from bdd100k.
Related Issues (20)
- Lane line instance segmentation HOT 1
- How do I convert the BDD100K dataset to something like YoutubeVIS or video instance split dataset HOT 2
- End-to-end annotations in BDD100k? HOT 3
- eval.ai is not working HOT 4
- Unable to download 100k images HOT 1
- Semantic Segmentation JSON File has images with labels of categories which are listed under Panoptic Segmentation!
- Questions about calculation of mAP
- whereis removed area? I cannot find them
- annotation don't match images
- BDD100K Object Detection on EvalAI submission FileNotFoundError HOT 6
- MOT format to BDD100k format HOT 1
- EvalAI status stuck on "Runnung" HOT 3
- labels of validation set
- MOT2020 source offline; downloads dead slow when it was online HOT 2
- `to_coco_panseg`: leads to OOB `IndexError`
- No module named 'numpy' HOT 1
- Corresponding images for segmentation masks HOT 1
- BDD-X
- EvalAI status stuck on "Runnung"(CVPR2023 MOT)
- conversion of train labels to coco format hangs
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bdd100k.