i4h-catheter-navigation-render-drr

par nvidia

Rendre une seule image de fluoroscopie DRR à partir d'un cache CT ou d'un fantôme synthétique. À utiliser lorsqu'on demande de rendre une DRR, de générer une image fluoro ou de faire un test rapide du Slang…

npx skills add https://github.com/nvidia/skills --skill i4h-catheter-navigation-render-drr

i4h Catheter Navigation - Render DRR

Purpose

Render a single digitally reconstructed radiograph (DRR) frame. Works with a preprocessed CT cache from [[i4h-catheter-navigation-digital-twin]], a direct NIfTI/DICOM path, or the built-in synthetic phantom (no data required).

Base Code

ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"
if [ ! -d "$ROOT/workflows/catheter_navigation" ]; then
  ROOT="${I4H_WORKFLOWS:-$HOME/i4h-workflows}"
  [ -d "$ROOT/workflows/catheter_navigation" ] || git clone https://github.com/isaac-for-healthcare/i4h-workflows "$ROOT"
fi
export I4H_WORKFLOWS="$ROOT"; cd "$ROOT"

Basics

  • Default mode in metadata.json; self-contained with synthetic phantom when no --cache is given.
  • GPU + slangpy required for actual rendering.
  • Entry mode: ./i4h run catheter_navigation render_drr (preferred).

Run

Run the steps below in order. Each step is a separate bash call; variables persist in the local agent's tmux session.

Step 1 - resolve run dir

REPO_ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"; [ -d "$REPO_ROOT/workflows/catheter_navigation" ] || REPO_ROOT="$HOME/i4h-workflows"
WF_ROOT="${REPO_ROOT}/workflows/catheter_navigation"
RUN_DIR="${WF_ROOT}/runs/render_drr_$(date +%Y%m%d_%H%M%S)"
mkdir -p "${RUN_DIR}/logs"
ln -sfn "${RUN_DIR}" "${WF_ROOT}/runs/.latest"
OUTPUT="${RUN_DIR}/drr.png"
CACHE="${CACHE:-}"

Step 2 - render (pick one variant)

Synthetic phantom (fastest smoke, no data):

"${REPO_ROOT}/i4h" run catheter_navigation render_drr --local \
  --run-args="--output ${OUTPUT}" \
  2>&1 | tee "${RUN_DIR}/logs/render_drr.log"

From preprocessed cache:

if [ ! -d "${CACHE}" ] || [ ! -f "${CACHE}/mu_volume.npy" ]; then
  echo "render-drr: set CACHE to a preprocess_ct output dir (missing mu_volume.npy)." >&2
  exit 1
fi
"${REPO_ROOT}/i4h" run catheter_navigation render_drr --local \
  --run-args="--cache ${CACHE} --output ${OUTPUT}" \
  2>&1 | tee "${RUN_DIR}/logs/render_drr.log"

Verify

test -f "${OUTPUT}"
file "${OUTPUT}"

Prerequisites

  • [[i4h-catheter-navigation-setup]] completed.
  • NVIDIA GPU with slangpy for rendering (CPU smoke tests do not cover GPU render).

Limitations

  • Single-frame render only; batch multi-env RL rendering uses the fluorosim Python API directly.
  • Catheter compositing in DRR requires attaching a CatheterProvider in custom scripts (not the default example).

Troubleshooting

  • Error: slangpy / CUDA failures - Fix: run without --local to use Docker, or verify GPU driver >= 570 and CUDA 12.8.
  • Error: cache not found - Fix: run [[i4h-catheter-navigation-digital-twin]] first or use synthetic mode (no --cache).

Final Response

Report output PNG path, whether synthetic or patient cache was used, and log path. Recommend [[i4h-catheter-navigation-viewport]] for interactive navigation.

Plus de skills de nvidia

compileiq-debug
nvidia
Utilisez quand quelque chose ne va pas : Search() bloque, toutes les évaluations retournent INVALID_SCORE, les scores ne s'améliorent pas, chaque configuration retourne le même nombre, erreurs ptxas…
create-github-pr
nvidia
Créer des pull requests GitHub en utilisant l'interface en ligne de commande gh. Utiliser lorsque l'utilisateur souhaite créer une nouvelle PR, soumettre du code pour révision, ou ouvrir une pull request. Mots-clés de déclenchement -…
nemoclaw-maintainer-cross-issue-sweep
nvidia
Analyse les autres problèmes ouverts pour trouver ceux qu’une PR donnée pourrait également corriger ou casser accidentellement. Génère des opportunités de correctifs adjacents et des risques de contradiction avec fichier:ligne…
fhir-basics
nvidia
Apprend aux agents comment fonctionnent les API FHIR R4, quelles ressources sont disponibles, comment les interroger avec des paramètres de recherche, et comment analyser correctement tous les formats de réponse…
compileiq-validate-result
nvidia
Utiliser APRÈS qu'une recherche soit terminée et AVANT de réclamer un accélérateur ou d'expédier un ACF. Charge le CSV dump_results, extrait les K meilleurs candidats (mono-objectif)…
changelog-audit
nvidia
Auditer le CHANGELOG.md de Warp avant une publication : récupérer les entrées perdues, trier par impact utilisateur, affiner le langage des entrées, ajuster les retours à la ligne et (en mode branche de publication) mettre à jour la comparaison…
maintain-dynamic-plugins
nvidia
Maintenir les chargeurs de plugins dynamiques NeMo Relay, les manifestes, les SDK natifs Rust, le protocole worker gRPC, le SDK worker Python, la documentation, les tests et la couverture du workflow de publication
dgx-diagnose
nvidia
Diagnostiquer les problèmes courants du DGX Station GB300 — plantages CUDA, ciblage incorrect du GPU, bugs de conteneur vLLM/SGLang, problèmes d'état MIG, erreurs NVLink/Fabric Manager,…