i4h-catheter-navigation-viewport

par nvidia

Lancez la vue fluoroscopique interactive Slang avec la physique de cathéter XPBD. À utiliser lorsqu’on vous demande d’ouvrir la vue, de téléopérer un cathéter ou de faire une démonstration de navigation fluoroscopique.

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

i4h Catheter Navigation - Interactive Viewport

Purpose

Launch the interactive fluoroscopy viewport with real-time XPBD catheter physics, DSA, C-arm presets, and centerline-guided insertion. Requires a digital twin cache from [[i4h-catheter-navigation-digital-twin]].

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

  • Entry mode: ./i4h run catheter_navigation interactive_viewport (preferred)
  • Requires display (X11); remote/VNC may need QT_QPA_PLATFORM=xcb.
  • Recommended flags: --vessel-source real --insertion-axis centerline --dsa --key-hold-ttl 0.20

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 cache and 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/viewport_$(date +%Y%m%d_%H%M%S)"
mkdir -p "${RUN_DIR}/logs"
ln -sfn "${RUN_DIR}" "${WF_ROOT}/runs/.latest"

CACHE="${CACHE:-/tmp/ct_cache}"
if [ ! -f "${CACHE}/mu_volume.npy" ]; then
  echo "viewport: set CACHE to a digital-twin dir (missing mu_volume.npy). Run i4h-catheter-navigation-digital-twin first." >&2
  exit 1
fi

Step 2 - launch viewport

QT_QPA_PLATFORM="${QT_QPA_PLATFORM:-xcb}" \
"${REPO_ROOT}/i4h" run catheter_navigation interactive_viewport --local \
  --run-args="--ct-dir ${CACHE} --vessel-source real --insertion-axis centerline --det-size 1024 --pixel-spacing-mm 0.6 --dsa" \
  2>&1 | tee "${RUN_DIR}/logs/viewport.log"

Controls (summary)

InputAction
W / SAdvance / retract catheter along centerline
A / DRotate catheter CCW / CW
F / CToggle vessel / centerline overlay
XToggle DSA contrast bolus
1-4C-arm presets (AP, LAO-45, Lateral, RAO-30)
SpacePause / resume
RReset catheter
Q / EscQuit

Full table: workflows/catheter_navigation/README.md.

Prerequisites

  • [[i4h-catheter-navigation-setup]] and [[i4h-catheter-navigation-digital-twin]] completed.
  • Display server (local X11 or remote desktop with keyboard focus).
  • GPU with >= 8 GB VRAM (16 GB recommended).

Limitations

  • Interactive GUI - not suitable for headless CI.
  • Keyboard focus on remote desktops may require pointer over the fluoro window.

Troubleshooting

  • Error: controls appear dead on remote X11 - Fix: QT_QPA_PLATFORM=xcb (Step 2 sets this by default).
  • Error: missing cache - Fix: run [[i4h-catheter-navigation-digital-twin]].
  • Error: Vulkan / slang init failure - Fix: verify GPU driver; try Docker without --local.

Final Response

Report CACHE used, note any display/input workarounds applied, and point to README controls if the user needs the full key map.

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,…