egolqa/object_detection
Object detection This directory contains concepts and object detections generated from the original keyframe set. The primary artifacts are concepts.jsonl and detections.jsonl; artifact_metadata.jsonl records the input, model, prompt version, subset, and Git lineage. concepts.jsonl Each line is one ConceptRecord, a short list of general concepts proposed for one keyframe. Common fields: concept_id: stable concept identifier video_id: source video identifier… See the full description on the dataset page: https://huggingface.co/datasets/egolqa/object_detection.
Object detection
This directory contains concepts and object detections generated from the original keyframe set. The primary artifacts are concepts.jsonl and detections.jsonl; artifact_metadata.jsonl records the input, model, prompt version, subset, and Git lineage.
concepts.jsonl
Each line is one ConceptRecord, a short list of general concepts proposed for one keyframe.
Common fields:
concept_id: stable concept identifiervideo_id: source video identifiertime_span:[timestamp_ms, timestamp_ms]in source video timekeyframe_id: referenced canonical keyframeconcepts: unique general visual concepts used as detection prompts
detections.jsonl
Each line is one TrackingDetectionRecord, a detected object in one keyframe.
Common fields:
detection_id: stable observation identifiervideo_id: source video identifiertime_span:[timestamp_ms, timestamp_ms]in source video timelabel: detected object classbbox: normalized object region withx_min,y_min,x_max, andy_maxconfidence: SAM3 detection scoreconcept_id: concept that prompted this detectiontrack_id: sparse association within the source shotframe_index: source frame index
The published files are merged across all 700 videos. Each JSONL line keeps its video_id, so consumers can filter one video without restoring the former shard directories.
Generation flow
A vision endpoint proposes general concepts from the keyframes. SAM3 verifies and localizes those concepts, then associates matching boxes across adjacent keyframes in the same shot. It publishes concepts and detections separately so visible text remains the responsibility of OCR.
Run detection for the original keyframe set:
make data-detection \
JOB='concepts detection' \
INPUT=/data/aic/shared/artifacts/keyframes/keyframes.jsonl \
OUTPUT=/data/aic/shared/artifacts/object_detection \
SUBSET=700vid