"Apply Albumentations pipelines safely to images, masks, bboxes,
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill targets-and-formats --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Targets And Formats?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-targets-and-formats)More formats (shields.io, HTML) on the badges page.
---
name: targets-and-formats
description: "Apply Albumentations pipelines safely to images, masks, bboxes,
keypoints, multiple images, volumes, 3D masks, and labels without corrupting
geometry or data formats."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT
---
# Targets and Formats
Use this sub-skill when a task involves Albumentations input/output keys, bbox or keypoint formats, label fields, additional targets, or 3D volume/mask targets. The central rule is: declare every geometric annotation contract in `A.Compose(...)` before calling the pipeline, then keep the data arrays and label arrays length-aligned after filtering.
## Route First
- Use `references/data-formats.md` to choose `BboxParams`, `KeypointParams`, bbox/keypoint formats, label fields, shape rules, and 3D target keys.
- Use `references/target-recipes.md` for copy-adaptable recipes covering detection, keypoints, segmentation, additional targets, multi-image inputs, and volumes.
- Use `references/troubleshooting.md` when a pipeline drops boxes/keypoints, rejects shapes, misreads YOLO boxes, or loses labels.
- Use `scripts/validate_targets.py` for a small local preflight of bbox/keypoint JSON fixtures and optional volume/mask3d shapes before debugging a full training dataset.
## Required Composition Contracts
- Bboxes require `bbox_params=A.BboxParams(...)` whenever the call includes `bboxes`; keypoints require `keypoint_params=A.KeypointParams(...)` whenever the call includes `keypoints`.
- `BboxParams(format=...)` accepts `"coco"`, `"pascal_voc"`, `"albumentations"`, or `"yolo"`; Albumentations internally transforms bboxes as normalized `[x_min, y_min, x_max, y_max]`.
- `KeypointParams(format=...)` accepts `"xy"`, `"yx"`, `"xya"`, `"xys"`, `"xyas"`, `"xysa"`, or `"xyz"`; Albumentations internally transforms keypoints as `[x, y, z, angle, scale]`.
- Labels that must be filtered with bboxes/keypoints belong in `label_fields`, for example `label_fields=["class_labels"]` or `label_fields=["keypoint_labels"]`.
- 3D volumes use `volume` or `volumes`; 3D masks use `mask3d` or `masks3d`; shape checking expects `D,H,W[,C]` for single volumes and `N,D,H,W[,C]` for batches.
## Safe Defaults
- Use `strict=True` while developing to catch unknown input keys and invalid transform arguments early; route general Compose behavior to `../pipeline-composition/`.
- Keep `is_check_shapes=True` unless a dataset intentionally supplies nonmatching spatial targets and the code handles that explicitly.
- For detection data with messy boxes, prefer `clip=True, filter_invalid_bboxes=True` and a conservative `min_visibility` or `min_area` rather than silently trusting source annotations.
- For keypoints near crop borders, set `remove_invisible=False` only if downstream code can handle off-image coordinates; otherwise preserve label alignment via `label_fields` and accept filtering.
- For tensor conversion and channel-order decisions, route to `../framework-integration/`; for transform family selection, route to `../transform-catalog/`; for save/load/replay, route to `../serialization-and-reproducibility/`.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!