"Use VoxelMorph volume I/O, npz/NIfTI/MGZ data conventions,
Scanned 9/9/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill data-generators --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Data Generators?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-data-generators)More formats (shields.io, HTML) on the badges page.
---
name: data-generators
description: "Use VoxelMorph volume I/O, npz/NIfTI/MGZ data conventions,
segmentation utilities, metric helpers, and NumPy data generators for
registration workflows."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# Data Generators
Use this sub-skill when a task is about preparing, validating, loading, or selecting data streams for VoxelMorph workflows before model-specific training or transform math begins.
## Route here for
- Reading or writing volumes with `voxelmorph.py.utils.load_volfile()` and `save_volfile()`.
- Explaining `.npz`, `.npy`, NIfTI, and MGZ conventions, including `vol` and optional `seg` keys.
- Building image lists, pair lists, phenotype CSV maps, label lists, atlas arrays, and segmentation inputs.
- Choosing a generator from `voxelmorph.py.generators` for scan-to-scan, scan-to-atlas, semisupervised, template, surface, or SynthMorph workflows.
- Computing or checking segmentation helpers: Dice overlap, label filtering, largest-component cleanup, signed distance transforms, surface point clouds, and Jacobian determinant summaries.
- Validating user-provided `.npz` files without downloading data or running training.
## Route elsewhere
- PyTorch model construction, loss selection, checkpoints, and training loops: use `../pairwise-registration/SKILL.md`.
- Dense displacement, affine, coordinate, interpolation, integration, composition, and tensor-transform mathematics: use `transform-ops`.
- Real dataset acquisition, clinical preprocessing, benchmark evaluation, or long-running training: out of scope unless the user supplies explicit data, runtime, and acceptance criteria.
## First decision
1. Identify the workflow target: scan-to-scan, scan-to-atlas, semisupervised labels, template creation, surface-distance learning, or SynthMorph label-map synthesis.
2. Confirm the data contract before writing any model code:
- Volume arrays should have consistent spatial shape across a training list.
- Standard `.npz` files should contain `vol`; semisupervised and surface workflows also need discrete integer `seg` arrays.
- Generators add a batch axis first and usually add a feature axis last, yielding NumPy arrays shaped `(batch, *spatial, features)`.
- NIfTI/MGZ loading uses nibabel; `.npz`/`.npy` loading does not carry affine metadata unless the caller separately manages it.
3. If the user supplies `.npz` files or a VoxelMorph image list, run the bundled validator before choosing a generator.
## Bundled references
- `references/api-reference.md` — signatures and behavioral notes for `voxelmorph.py.utils` and `voxelmorph.py.generators`, including generator yield structures.
- `references/data-formats.md` — volume, atlas, segmentation, label, list-file, affine, and README-derived data assumptions.
- `references/workflows.md` — generator-selection matrix and copyable recipes for scan-to-scan, scan-to-atlas, semisupervised, template, surface, and SynthMorph data streams.
- `references/troubleshooting.md` — symptoms, likely causes, and recovery steps for missing keys, shape mismatches, invalid labels, empty globs, and surface-generator edge cases.
- `scripts/validate_vxm_npz.py` — safe `.npz` validator for `vol`/`seg` keys, shape consistency, label dtypes, NaNs, and expected labels.
## Quick safe checks
From this sub-skill directory:
```bash
python scripts/validate_vxm_npz.py --help
python scripts/validate_vxm_npz.py data/*.npz --require-seg --allowed-labels 0,1,2,3
python scripts/validate_vxm_npz.py --file-list images.txt --prefix data/ --expect-shape 160,192,224
```
The validator reads only local files, writes nothing, performs no downloads, and exits non-zero on schema failures.
## Operating rules
- Keep data-generator work NumPy/file-schema focused. Hand off tensor conversion and model consumption to the pairwise-registration or transform-ops owners.
- Do not rely on legacy TensorFlow script paths or external tutorial downloads as runtime instructions. Distill the data contract into this skill instead.
- Prefer synthetic or user-supplied tiny fixtures for validation. Do not invent a requirement for OASIS, FreeSurfer, model weights, or private datasets.
- When users provide real NIfTI or MGZ files, validate shape and affine expectations with their own tools or a short local probe; this sub-skill's bundled validator intentionally targets `.npz` files only.
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!