The cocotools
crate provides tools to load, manipulate/convert and visualize COCO format datasets.
Get the crate from crates.io.
You can find the documentation here.
use std::path::PathBuf;
use cocotools::COCO;
let annotations_file_path = PathBuf::from("../data_samples/coco_25k/annotations.json");
let image_folder_path = PathBuf::from("../data_samples/coco_25k/images");
let coco_dataset = COCO::new(&annotations_file_path, &image_folder_path)?;
let file_name = dataset.get_img(17627)?.file_name;
cargo run -- visualize ../data_samples/coco_25k/annotations.json ../data_samples/coco_25k/images -s 000000017627
cargo run -- convert-segmentation ../data_samples/coco_25k/annotations.json rle -o annotations_rle.json
- Add support for keypoint detection format.
- Add conversion from/to PascalVOC format.
- Add conversion from/to SOLO format.
- Add validation of the data when loading it, for example check that sum(rle) == nb pixels in the image (behind a crate feature flags ?)
- Use rayon when loading/converting the data ?