Skip to content

Latest commit

 

History

History
60 lines (42 loc) · 1.99 KB

extract_subcoco.md

File metadata and controls

60 lines (42 loc) · 1.99 KB

提取 COCO 子集

COCO2017 数据集训练数据集包括 118K 张图片,验证集包括 5K 张图片,数据集比较大。在调试或者快速验证程序是否正确的场景下加载 json 会需要消耗较多资源和带来较慢的启动速度,这会导致程序体验不好。

extract_subcoco.py 脚本提供了按指定图片数量、类别、锚框尺寸来切分图片的功能,用户可以通过 --num-img, --classes, --area-size 参数来得到指定条件的 COCO 子集,从而满足上述需求。

例如通过以下脚本切分图片:

python tools/misc/extract_subcoco.py \
    ${ROOT} \
    ${OUT_DIR} \
    --num-img 20 \
    --classes cat dog person \
    --area-size small

会切分出 20 张图片,且这 20 张图片只会保留同时满足类别条件和锚框尺寸条件的标注信息, 没有满足条件的标注信息的图片不会被选择,保证了这 20 张图都是有 annotation info 的。

注意: 本脚本目前仅仅支持 COCO2017 数据集,未来会支持更加通用的 COCO JSON 格式数据集

输入 root 根路径文件夹格式如下所示:

├── root
│   ├── annotations
│   ├── train2017
│   ├── val2017
│   ├── test2017
  1. 仅仅使用 5K 张验证集切分出 10 张训练图片和 10 张验证图片
python tools/misc/extract_subcoco.py ${ROOT} ${OUT_DIR} --num-img 10
  1. 使用训练集切分出 20 张训练图片,使用验证集切分出 20 张验证图片
python tools/misc/extract_subcoco.py ${ROOT} ${OUT_DIR} --num-img 20 --use-training-set
  1. 设置全局种子,默认不设置
python tools/misc/extract_subcoco.py ${ROOT} ${OUT_DIR} --num-img 20 --use-training-set --seed 1
  1. 按指定类别切分图片
python tools/misc/extract_subcoco.py ${ROOT} ${OUT_DIR} --classes cat dog person
  1. 按指定锚框尺寸切分图片
python tools/misc/extract_subcoco.py ${ROOT} ${OUT_DIR} --area-size small