界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
数据与研究 · SKILL.md

data-preparation

data-preparation

【数据与研究】Guides SimpleDet annotation conversion and roidb validation for COCO-like, VOC, CrowdHuman, and custom JSON detection or instance-segmentation data.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: data-preparation description: "Guides SimpleDet annotation conversion and roidb validation for COCO-like, VOC, CrowdHuman, and custom JSON detection or instance-segmentation data." disable-model-invocation: true metadata: disco-role: operating license: Apache 2.0

Data preparation

Use this route for annotation conversion, data/cache/*.roidb, image layouts, class IDs, polygon masks, split names, or validation. Read data-formats.md before conversion and troubleshooting.md after a failure.

Workflow

  1. Choose COCO-like JSON, VOC XML, CrowdHuman ODGT, or custom JSON.
  2. Confirm the image/annotation layout and exact split names.
  3. Use the bundled convert_roidb.py with an explicit --output; it never downloads data.
  4. Run validate_roidb.py on a tiny result before using the cache for a model workflow.
  5. Match the output basename to DatasetParam.image_set.
  6. For masks, validate gt_poly, polygon lengths, and static config limits.

Data contract

  • gt_class uses positive foreground IDs; 0 is background and CrowdHuman ignore regions use -2.
  • gt_bbox is (N,4) xyxy, not COCO xywh.
  • flipped should be false in cached records; loader-time augmentation flips.
  • image_url, positive h/w, and float32-safe im_id are required.
  • Mask records need one raw polygon-list entry per instance.

Bundled helpers

python <skill-root>/sub-skills/data-preparation/scripts/convert_roidb.py --help
python <skill-root>/sub-skills/data-preparation/scripts/validate_roidb.py --help
python <skill-root>/sub-skills/data-preparation/scripts/validate_roidb.py --input data/cache/custom.roidb --check-images --max-records 3

The converter supports --format json|voc|coco|crowdhuman; it requires only its format-specific public dependencies and writes only the explicit output. The validator is read-only and can check JSON/JSONL without NumPy; pickle roidbs require NumPy.

Route onward

Read workflows.md for format-specific commands and cache handoff details.

我的收藏