FAQ
Frequently Asked Questions about PhysioTwin4D.
General Questions
What is PhysioTwin4D?
PhysioTwin4D is a collection of methods, workflows, tutorials, and CLI tools for creating personalized physiological digital twins: starting from a 3D medical image of a subject, extracting anatomic models, and then using AI surrogates to estimate the subject’s physiological processes (initially cardiac and respiratory motion, expanding to electrophysiology, blood flow, and organ perfusion).
What data formats are supported?
Input: NRRD, MHA, NIfTI, DICOM
Output: USD (Universal Scene Description), VTK
Do I need NVIDIA Omniverse?
Omniverse is the recommended way to view the USD scenes: its RTX renderer is what evaluates the material properties assigned to each tissue. See Viewing USD Files. For the intermediate results you can also use:
PyVista, for the intermediate
.vtp/.vtumeshesParaView, likewise for the VTK files
Installation Questions
Do I need a GPU?
No. A plain pip install physiotwin4d works without a GPU. At import time
a UserWarning is emitted (visible by default in all standard Python runs):
CuPy is not installed — GPU acceleration is unavailable and processing will be
slow. Re-install with uv to get CuPy and CUDA-enabled PyTorch in one step
(pip alone will not select the correct CUDA wheel):
uv pip install 'physiotwin4d[cuda13]' # CUDA 13
CPU-only mode is suitable for evaluation and small datasets. For production workloads an NVIDIA GPU is strongly recommended.
Which CUDA version is required?
CUDA 13 is supported. Install the CUDA 13 extra for GPU acceleration:
uv pip install "physiotwin4d[cuda13]"
The extra installs CuPy. In uv-managed source environments, PyTorch,
torchvision, and torchaudio are sourced from
https://download.pytorch.org/whl/cu130 by default.
What Python version is required?
Python 3.10, 3.11 and 3.12 are supported.
The one exception is the optional [physicsnemo] extra: nvidia-physicsnemo
requires Python >= 3.11, so the AI-surrogate tutorials need 3.11 or 3.12.
Usage Questions
How long does processing take?
Typical processing time for 10-frame cardiac CT (with GPU):
4D to 3D conversion: ~1 minute
Registration: ~5-10 minutes
Segmentation: ~1-2 minutes
USD creation: ~1 minute
Total: ~10-15 minutes
Which segmentation method should I use?
TotalSegmentator: Fast, good quality, general purpose
Simpleware: Best quality for cardiac imaging, requires Simpleware Medical
NV-Segment-CTMR: CT and MRI, 345 classes; weights are licensed for non-commercial academic research only
See Segmentation Modules for comparison.
Which registration method should I use?
Greedy: CPU-capable classical deformable registration; what Tutorials 1 and 3 use by default
ICON: Recommended for cardiac/lung (fast, GPU), and finetunable on your own cohort — see Tutorial 2
ANTs: Best for brain imaging and general purpose
Greedy+ICON (
RegisterImagesGreedyICON, aRegisterImagesChainpreset): Greedy for the coarse alignment, ICON for the refinement
See Image Registration Modules for comparison.
Troubleshooting
See Troubleshooting for common issues and solutions.
More Questions?
Check the Heart Gated CT Processing
Browse Tutorials
Open an issue on GitHub