New to Claude Skills? Learn how to install them →

nvidia on GitHub

Catheter Navigation DRR Rendering

OfficialFree

Render DRR fluoroscopy frames from CT data or synthetic phantoms.

by nvidia2.8k stars on nvidia/skills
1 views
Updated Aug 7, 2026
Get this skill

Free · Opens the source repo

What Catheter Navigation DRR Rendering does

The i4h Catheter Navigation - Render DRR skill allows users to generate a single digitally reconstructed radiograph (DRR) frame. This skill is particularly useful for healthcare professionals and researchers who need to visualize catheter navigation in a simulated environment. It works seamlessly with a preprocessed CT cache from the i4h Catheter Navigation Digital Twin, a direct NIfTI/DICOM path, or a built-in synthetic phantom, making it versatile for different data sources.

To use the skill, users must have an NVIDIA GPU and the slangpy library installed for rendering. The skill is initiated through a bash command, where users can select to render from either synthetic data or a preprocessed cache. The setup involves creating a run directory for output and logs, ensuring that the necessary paths are correctly configured. The skill is designed to be straightforward, with clear steps for both synthetic and cache-based rendering, allowing for quick testing and validation of the rendering process.

While the skill is powerful for generating single-frame renders, it does have limitations. It only supports single-frame rendering, and for more complex tasks like batch multi-environment reinforcement learning rendering, users would need to utilize the fluorosim Python API directly. Additionally, users must ensure that they have completed the i4h Catheter Navigation setup prior to running this skill, as it relies on prior configurations and data.

This skill is ideal for developers and researchers in the medical imaging field who require a reliable method for visualizing catheter navigation through DRR images. It provides a practical solution for testing and validating rendering capabilities without needing extensive datasets, particularly useful during the development and testing phases of medical imaging applications.

When to use it

Use this skill when you need to generate DRR images for catheter navigation, either from synthetic data or preprocessed CT caches.

When not to use it

This skill is not suitable for batch rendering or tasks requiring multi-frame outputs, as it only supports single-frame rendering.

What you can build with it

Testing with Synthetic Data

Quickly generate a DRR image using the built-in synthetic phantom for fast smoke tests without needing actual patient data.

Rendering from Preprocessed Cache

Use this skill to render DRR images from a preprocessed CT cache, ensuring that you have the required mu_volume.npy file.

Validating Rendering Capabilities

Employ this skill to validate the rendering capabilities of your setup, ensuring that your NVIDIA GPU and slangpy configurations are correct.

How to install Catheter Navigation DRR Rendering

View source

1. Install with the skills CLI

npx skills add nvidia/skills/i4h-catheter-navigation-render-drr --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by nvidia

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.

Frequently asked questions about Catheter Navigation DRR Rendering

Similar skills