Skip to content

Convert VOC format XMLs to COCO format json

Notifications You must be signed in to change notification settings

XudongWang97/voc2coco

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

voc2coco

This is script for converting VOC format XMLs to COCO format json(ex. coco_eval.json).

Fork comment

This repository is forked from yukkyo/voc2coco, with an issue about non-unique image IDs. The issue has been fixed and test in this forked repository.

Thanks Yukkyo for creating this handy convert tool.

Why we need to convert VOC xmls to COCO format json ?

We can use COCO API, this is very useful(ex. calculating mAP).

How to use

1. Make labels.txt

labels.txt if need for making dictionary for converting label to id.

Sample labels.txt

Label1
Label2
...

2. Run script

2.1 Usage 1(Use ids list)
$ python voc2coco.py \
    --ann_dir /path/to/annotation/dir \
    --ann_ids /path/to/annotations/ids/list.txt \
    --labels /path/to/labels.txt \
    --output /path/to/output.json \
    <option> --ext xml
2.2 Usage 2(Use annotation paths list)
$ python voc2coco.py \
    --ann_paths_list /path/to/annotation/paths.txt \
    --labels /path/to/labels.txt \
    --output /path/to/output.json \
    <option> --ext xml

3. Example of usage

In this case, you can convert Shenggan/BCCD_Dataset: BCCD Dataset is a small-scale dataset for blood cells detection. by this script.

$ python voc2coco.py \                                                                                                                                              金  5/24 20:14:59 2019
    --ann_dir sample/Annotations \
    --ann_ids sample/dataset_ids/test.txt \
    --labels sample/labels.txt \
    --output sample/bccd_test_cocoformat.json \
    --ext xml

# Check output
$ ls sample/ | grep bccd_test_cocoformat.json                                                                                                                    金  5/24 20:16:09 2019
bccd_test_cocoformat.json

# Check output
cut -f -4 -d , sample/bccd_test_cocoformat.json                                                                                                                金  5/24 20:20:49 2019
{"images": [{"file_name": "BloodImage_00007.jpg", "height": 480, "width": 640, "id": "BloodImage_00007"}

About

Convert VOC format XMLs to COCO format json

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%