cvat-ai / cvat

Annotate better with CVAT, the industry-leading data engine for machine learning. Used and trusted by teams at any scale, for data of any scale.
https://cvat.ai
MIT License
12.51k stars 3k forks source link

COCO 2017 Panoptic Segmentation Val Dataset (Datumaro format) Import Error #8404

Open sailfish009 opened 2 months ago

sailfish009 commented 2 months ago

Actions before raising this issue

Steps to Reproduce

prepared for COCO2017 Panoptic Segmentation Valid Dataset

http://images.cocodataset.org/zips/val2017.zip

http://images.cocodataset.org/annotations/panoptic_annotations_trainval2017.zip

  1. datum convert -i /COCO2017/ -o ./OUTPUT -f datumaro # val2017.json
  2. copy ./OUTPUT/annotations/val2017.json /COCO2017/annotations/
  3. mv /COCO2017/annotations/panoptic2017* ./OUTPUT/
  4. zip -r dataset.zip /COCO2017 # tried many times!
  5. create project COCO_PANOPTIC and import dataset.zip with datumaro dataset format
  6. error "No media data found"
    #  cvat/cvat/apps/engine/task.py : line 271
    if unique_entries == 0 and multiple_entries == 0:
        raise ValueError('No media data found')

Expected Behavior

I haven't seen any opensource annotation tools that support panoptic segmentation, so I'm not sure how it would work.

Possible Solution

Using a commercial annotation tool is probably the best way to go.

Context

I want to use a panoptic segmentation dataset in an open source annotation tool. I saw the documentation that CVAT can import the Datumaro format, so I thought it was worth a try.

Environment

No response

zhiltsov-max commented 1 month ago

Hi, here is an example of the supported file layout: https://github.com/cvat-ai/datumaro/tree/develop/tests/assets/coco_dataset/coco_panoptic. Format documentation is here.

sailfish009 commented 1 month ago

@zhiltsov-max Hi, I checked with COCO 2017 instance segmentation valid dataset, but I get a different kind of error. I tried changing the input format to Datumaro detect result and the output format to Datumaro, CVAT, etc. The location of the error is slightly different, but it is not imported normally.