科研技能库/数据集标注
数据分析
未发现用户侧风险

数据集标注

AI辅助数据集标注,支持COCO导出——边界框、SAM2、DINOv3标注方法。

文件预览

3 个文件
scripts
SKILL.md
2.9 KB · 可预览
---
name: dataset-annotation
description: "AI-assisted dataset annotation with COCO export — bbox, SAM2, DINOv3 methods"
version: 1.0.0

parameters:
  - name: method
    label: "Annotation Method"
    type: select
    options: ["bbox", "sam2", "dinov3"]
    default: "dinov3"
    group: Annotation

  - name: export_format
    label: "Export Format"
    type: select
    options: ["coco", "yolo", "voc"]
    default: "coco"
    group: Export

  - name: auto_detect
    label: "Auto-detect Before Annotation"
    type: boolean
    default: true
    description: "Run detection first, then human corrects"
    group: Annotation

  - name: detection_model
    label: "Detection Model"
    type: select
    options: ["yolov8n", "yolov11n", "dinov3"]
    default: "yolov8n"
    group: Annotation

  - name: dataset_dir
    label: "Dataset Directory"
    type: string
    default: "~/datasets"
    group: Storage

capabilities:
  annotation:
    script: scripts/annotate.py
    description: "Dataset annotation with AI assistance and COCO export"
---

# Dataset Annotation

AI-assisted dataset creation for training custom detection models. Supports three annotation methods with COCO format export.

## What You Get

- **BBox annotation** — draw bounding boxes, AI auto-suggests
- **SAM2 annotation** — click to segment, get pixel-perfect masks
- **DINOv3 annotation** — click a patch, find similar objects across frames via visual grounding
- **Object tracking** — annotate keyframes, DINOv3 interpolates across the video
- **COCO export** — standard `images[]`, `annotations[]`, `categories[]` format
- **Kaggle/HuggingFace upload** — push datasets directly to platforms

## Annotation Loop

```
1. Feed frames from clips → auto-detect objects
2. Human reviews → corrects bboxes, adds labels
3. Save as COCO dataset
4. Train improved model
5. Repeat with better auto-detection
```

## Protocol

### Aegis → Skill (stdin)
```jsonl
{"event": "frame", "camera_id": "...", "frame_path": "/tmp/frame.jpg", "frame_number": 0, "width": 1920, "height": 1080}
{"event": "detections", "frame_number": 0, "detections": [{"class": "person", "bbox": [100, 50, 200, 350], "confidence": 0.9, "track_id": "t1"}]}
{"event": "save_dataset", "name": "front_door_people", "format": "coco"}
```

### Skill → Aegis (stdout)
```jsonl
{"event": "ready", "methods": ["bbox", "sam2", "dinov3"], "export_formats": ["coco", "yolo", "voc"]}
{"event": "annotation", "frame_number": 0, "annotations": [{"category": "person", "bbox": [100, 50, 200, 350], "track_id": "t1", "is_keyframe": true}]}
{"event": "dataset_saved", "format": "coco", "path": "~/datasets/front_door_people/", "stats": {"images": 150, "annotations": 423, "categories": 5}}
```

## Setup

```bash
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
```

SKILL.md

元数据
namedataset-annotation
descriptionAI辅助数据集标注,支持COCO导出——边界框、SAM2、DINOv3标注方法
version1.0.0
parameters[{"name":"method","label":"标注方法","type":"select","options":["bbox","sam2","dinov3"],"default":"dinov3","group":"标注"},{"name":"export_format","label":"导出格式","type":"select","options":["coco","yolo","voc"],"default":"coco","group":"导出"},{"name":"auto_detect","label":"标注前自动检测","type":"boolean","default":true,"description":"先运行检测,再由人工校正","group":"标注"},{"name":"detection_model","label":"检测模型","type":"select","options":["yolov8n","yolov11n","dinov3"],"default":"yolov8n","group":"标注"},{"name":"dataset_dir","label":"数据集目录","type":"string","default":"~/datasets","group":"存储"}]
capabilities{ "annotation": { "script": "scripts/annotate.py", "description": "通过AI辅助进行数据集标注并支持COCO导出" } }

数据集标注

用于训练自定义检测模型的AI辅助数据集创建。支持三种标注方法,并导出为COCO格式。

你将获得

  • 边界框标注 — 绘制边界框,AI自动建议
  • SAM2 标注 — 点击即可分割,获得像素级精确的掩码
  • DINOv3 标注 — 点击一个块,通过视觉定位在帧间查找相似对象
  • 对象追踪 — 标注关键帧,DINOv3在视频中插值
  • COCO 导出 — 标准 images[]、annotations[]、categories[] 格式
  • Kaggle/HuggingFace 上传 — 直接将数据集推送到平台

标注循环

text
1. 从视频片段输入帧 → 自动检测对象
2. 人工审查 → 校正边界框,添加标签
3. 保存为COCO数据集
4. 训练改进的模型
5. 重复以便获得更好的自动检测效果

协议

Aegis → Skill (标准输入)

jsonl
{"event": "frame", "camera_id": "...", "frame_path": "/tmp/frame.jpg", "frame_number": 0, "width": 1920, "height": 1080}
{"event": "detections", "frame_number": 0, "detections": [{"class": "person", "bbox": [100, 50, 200, 350], "confidence": 0.9, "track_id": "t1"}]}
{"event": "save_dataset", "name": "front_door_people", "format": "coco"}

Skill → Aegis (标准输出)

jsonl
{"event": "ready", "methods": ["bbox", "sam2", "dinov3"], "export_formats": ["coco", "yolo", "voc"]}
{"event": "annotation", "frame_number": 0, "annotations": [{"category": "person", "bbox": [100, 50, 200, 350], "track_id": "t1", "is_keyframe": true}]}
{"event": "dataset_saved", "format": "coco", "path": "~/datasets/front_door_people/", "stats": {"images": 150, "annotations": 423, "categories": 5}}

设置

bash
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt