
Catheter Navigation Viewport
OfficialFreeInteractive fluoroscopy viewport for catheter navigation.
Free · Opens the source repo
What Catheter Navigation Viewport does
The i4h Catheter Navigation Viewport skill provides an interactive interface for real-time fluoroscopy, specifically designed for catheter navigation. Utilizing XPBD (Extended Position-Based Dynamics) physics, this skill allows users to teleoperate a catheter with precision, making it suitable for medical simulation and training environments. It integrates with a digital twin cache, enabling realistic simulations that are essential for understanding catheter dynamics in a clinical setting.
To get started, users must ensure they have completed the necessary prerequisites, including setting up the digital twin and ensuring a compatible GPU. The skill operates through a bash script that initializes the necessary environment and launches the viewport. Users can control the catheter's movements using a set of keyboard commands, which allow for adjustments along the centerline, rotation, and toggling overlays for enhanced visibility.
This skill is particularly useful for developers and designers working in healthcare technology, medical training, or simulation software. It provides a hands-on approach to understanding catheter navigation, which is critical in various medical procedures. The interactive nature of the viewport allows for dynamic demonstrations and teleoperation, making it an invaluable tool for training and development.
The skill is not designed for headless operation or continuous integration environments, as it requires a graphical user interface and a display server. Users should be aware of potential limitations when using remote desktop setups, particularly regarding keyboard focus and input responsiveness. Overall, the i4h Catheter Navigation Viewport skill is a specialized tool for those in the medical simulation field, offering realistic and interactive catheter navigation experiences.
When to use it
Use this skill when you need to demonstrate or interact with catheter navigation in a simulated fluoroscopy environment.
When not to use it
This skill is not suitable for automated testing or environments without a graphical interface.
What you can build with it
Medical Training Simulations
Use this skill to create realistic training scenarios for medical professionals learning catheter navigation.
Demonstration of Catheter Physics
Leverage the interactive viewport to demonstrate the behavior of catheters under various conditions using XPBD physics.
Research and Development
Utilize the skill in R&D environments to test and refine catheter navigation technologies.
How to install Catheter Navigation Viewport
View source1. Install with the skills CLI
npx skills add nvidia/skills/i4h-catheter-navigation-viewport --agent claude-code2. 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 nvidiai4h 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)
| Input | Action |
|---|---|
| W / S | Advance / retract catheter along centerline |
| A / D | Rotate catheter CCW / CW |
| F / C | Toggle vessel / centerline overlay |
| X | Toggle DSA contrast bolus |
| 1-4 | C-arm presets (AP, LAO-45, Lateral, RAO-30) |
| Space | Pause / resume |
| R | Reset catheter |
| Q / Esc | Quit |
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.
Frequently asked questions about Catheter Navigation Viewport
Similar skills
Spring Boot Testing
Master testing techniques for Spring Boot 4 applications.
GitHub Issues
Manage GitHub issues efficiently with MCP tools.
Geofeed Tuner
Optimize your IP geolocation feeds in CSV format.
Batch Files
Master Windows batch scripting for automation and task management.
Adobe Illustrator Scripting
Automate your Illustrator workflows with ExtendScript.
Plugin Structure
Create and organize Claude Code plugins effectively.
