Skip to content
Back to skills

Geometry Vision

ASecurity

"Use Kornia geometry and tracking for warps, cameras, epipolar

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

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 geometry-vision --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Geometry Vision?

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

Security grade badge for Geometry Vision
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-geometry-vision/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-geometry-vision)

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: geometry-vision
description: "Use Kornia geometry and tracking for warps, cameras, epipolar
  vision, depth, registration, point clouds, and coordinate conventions."
disable-model-invocation: true
metadata:
  disco-role: operating
license: NOASSERTION
---

# Kornia Geometry Vision

Use this sub-skill when a task mentions Kornia 2D/3D geometry, image warping,
resizing, homographies, registration, camera projection/unprojection,
calibration, PnP, epipolar pose, triangulation, depth, point clouds, Lie groups,
or homography tracking.

## Read first

- For exact function families and stable call shapes, read
  [references/api-reference.md](references/api-reference.md).
- For the common off-by-one, axis-order, and matrix-direction traps, read
  [references/coordinate-conventions.md](references/coordinate-conventions.md).
- For task recipes, read [references/workflows.md](references/workflows.md).
- For failure diagnosis, read
  [references/troubleshooting.md](references/troubleshooting.md).
- To verify a local Kornia runtime without downloads, run
  [scripts/geometry_smoke.py](scripts/geometry_smoke.py).

## Fast routing

Choose this sub-skill for:

- `resize`, `rescale`, `warp_affine`, `warp_perspective`, `homography_warp`,
  `HomographyWarper`, `ImageRegistrator`, and geometric crop/rotate/scale/shear.
- `get_perspective_transform`, `get_rotation_matrix2d`, homography estimation,
  RANSAC geometry models, and spatial point transforms.
- `PinholeCamera`, camera intrinsics/extrinsics, `project_points`,
  `unproject_points`, `cam2pixel`, `pixel2cam`, stereo, PnP, distortion,
  epipolar matrices, relative pose, and triangulation.
- `depth_to_3d`, `depth_to_normals`, `warp_frame_depth`, disparity/depth
  conversion, point-cloud PLY I/O, and `So2`/`So3`/`Se2`/`Se3` Lie groups.
- `kornia.tracking.HomographyTracker` behavior and state transitions.

## Common workflows

- Resize or warp an image first, then compare the result with the expected geometry in the same coordinate system.
- When a user gives matched points, confirm whether they are pixel points or normalized camera points before solving anything.
- Use float64 for gradient-check or solver-sensitive work; float32 is the usual runtime default.
- Treat tracking and registration as geometry problems, not augmentation problems.

## Pitfalls

- Many geometry bugs are just `(h, w)` versus `(w, h)` or source-to-destination versus destination-to-source confusion.
- `align_corners` affects both resize and warp behavior; do not leave it implicit when reproducing a result.
- Near-zero depth, degenerate point sets, or mixed dtypes can make a correct algorithm look broken.

## Quick validation habits

- Test a non-square image and at least one known transform before trusting a warp or registration result.
- Check whether the point coordinates are pixel-space or normalized camera-space before solving.
- Use `float64` for solver-sensitive checks and `float32` for ordinary runtime warps.
- Keep every matrix and point tensor on the same device as the image tensor.

Route away when the main problem is not geometry:

- Random augmentation containers, `AugmentationSequential`, masks/boxes/keypoint
  synchronization: [augmentation-pipelines](../augmentation-pipelines/SKILL.md).
- Feature detection, learned matchers, descriptor matching, LoFTR/LightGlue
  outputs before geometry estimation: [features-and-matching](../features-and-matching/SKILL.md).
- Loss or metric choice for training/evaluation: [losses-and-metrics](../losses-and-metrics/SKILL.md).

## Operating rules

1. Keep image data as PyTorch tensors, usually `B,C,H,W`; keep all matrices and
   point tensors on the same device and dtype as the image or point data.
2. Treat image sizes passed to Kornia geometry as `(height, width)`, not OpenCV's
   `(width, height)` convention.
3. Treat pixel points as `(x, y)` with origin at the top-left; `x` indexes width
   and `y` indexes height.
4. Pass `align_corners` explicitly when combining resize, grid sampling,
   homography warping, augmentation matrices, or external geometry references.
5. Avoid half precision for solvers, camera/epipolar math, SVD-heavy paths, and
   degenerate geometry; prefer `float32` for ordinary warps and `float64` for
   precision-sensitive estimation or gradient checks.
6. Do not trigger pretrained-model downloads by default. For tracking, inject
   already-prepared matchers if model weights are acceptable; otherwise use
   deterministic low-level homography or RANSAC APIs.

Files in this skill

  • SKILL.md4.4 KB
  • references/api-reference.md12.2 KB
  • references/coordinate-conventions.md5 KB
  • references/troubleshooting.md7.6 KB
  • references/workflows.md7.5 KB
  • scripts/geometry_smoke.py5 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.