Skip to content
Back to skills

Video Visualization

ASecurity

"Guide Norfair video I/O, overlay drawing, path rendering, and

  • 247 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 8, 2026
developmentpythonbashrailsdockerdebuggingapi

Works with

  • api

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill video-visualization --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Video Visualization?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Video Visualization
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-video-visualization/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-video-visualization)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: video-visualization
description: "Guide Norfair video I/O, overlay drawing, path rendering, and
  camera-motion stabilization workflows."
disable-model-invocation: true
metadata:
  disco-role: operating
license: BSD 3-Clause
---

# video-visualization

Use this sub-skill when the task is about Norfair's OpenCV-backed video and visualization utilities: reading video files or camera feeds with `Video`, iterating frame sequences with `VideoFromFrames`, writing annotated video, drawing detections or tracked objects as points/boxes, keeping trajectories visible, estimating moving-camera transforms, rendering absolute paths/grids, or stabilizing a panning/tilting camera with `FixedCamera`.

## Route here when

- Opening an input video, camera device, or MOT-style frame folder and writing an annotated output video.
- Choosing between `draw_points`, `draw_boxes`, legacy `draw_tracked_objects`, and legacy `draw_tracked_boxes` for centroids, keypoints, or two-corner boxes.
- Rendering relative trails with `Paths` or motion-aware trails with `AbsolutePaths`.
- Estimating camera motion with `MotionEstimator`, `TranslationTransformationGetter`, or `HomographyTransformationGetter` and passing coordinate transformations to downstream overlays.
- Debugging moving-camera behavior with `FixedCamera` or `draw_absolute_grid`.
- Customizing visual colors with `Color`, `Palette`, `Drawable`, or `Drawer`.

## What this covers

- OpenCV frame iteration and output writing for file, camera, and frame-sequence workflows.
- Point and box drawing plus the color/palette system.
- Relative and absolute path rendering for tracked-object histories.
- Motion estimation for translation and homography camera movement.
- Fixed-camera stabilization and absolute-grid debugging.

## Typical workflow

1. Open [API reference](references/api-reference.md) to confirm import paths, accepted drawable shapes, return values, and which classes are top-level exports versus module-level imports.
2. Pick the closest loop from [workflows](references/workflows.md): video round-trip, points-vs-boxes overlay, path rendering, `VideoFromFrames`, or moving-camera stabilization.
3. Use [troubleshooting](references/troubleshooting.md) for OpenCV import errors, invalid video paths, codec/writer failures, missing frame files, hidden dead points, path/grid misuse, `MotionEstimator.update(...) is None`, or fixed-camera cropping warnings.
4. For a dependency-light local check, run:

   ```bash
   python scripts/video_smoke.py
   python scripts/camera_motion_smoke.py
   ```

   Add `--output-dir ./norfair-video-smoke` if you want to keep the tiny generated videos for visual inspection.

## Bundled scripts

- [`scripts/video_smoke.py`](scripts/video_smoke.py): tiny synthetic video round-trip with point/box overlays and a path trail.
- [`scripts/camera_motion_smoke.py`](scripts/camera_motion_smoke.py): synthetic motion-estimation and fixed-camera smoke with absolute grids and stabilized output.

## Route away

- Tracker lifecycle, `Tracker` constructor choices, distance functions, thresholds, initialization, ReID, hit counters, and core `Detection`/`TrackedObject` behavior: use `../tracking-core/SKILL.md`.
- MOTChallenge parsing, accumulators, metrics, and benchmark/evaluation reports: use `../evaluation/SKILL.md`.
- External detector integrations that download model weights or require GPU/Docker stacks: keep detector setup outside this sub-skill, then return here with already-produced Norfair detections/tracks for visualization.

## Operating stance

- Treat OpenCV (`norfair[video]` or `opencv-python`) as required for every API in this sub-skill except pure color parsing.
- Draw overlays before `Video.write(frame)`. When using `FixedCamera`, draw everything else first and call `FixedCamera.adjust_frame(...)` last.
- Prefer `draw_points` and `draw_boxes` in new code. The `draw_tracked_*` names are preserved for older snippets, but they are deprecated wrappers.
- For moving cameras, keep detection and tracker tuning in `tracking-core`; this sub-skill owns the visualization loop, masks for motion estimation, coordinate-transform usage, and debugging overlays.

Files in this skill

  • SKILL.md4.1 KB
  • references/api-reference.md11.3 KB
  • references/troubleshooting.md10.1 KB
  • references/workflows.md8 KB
  • scripts/camera_motion_smoke.py12.7 KB
  • scripts/video_smoke.py10.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.