Skip to content

eigenvivek/polypose

Repository files navigation

PolyPose

Paper shield License: MIT Colab uv

PolyPose Localizing deformable anatomy in 3D from sparse 2D X-ray images using polyrigid transforms.

Highlights

PolyPose is a fully deformable 2D/3D registration framework.

  • 🔭 PolyPose is effective in both sparse-view and limited-angle registration.
  • 🦾 PolyPose accurately solves this highly ill-constrained problem with polyrigid transforms.
  • 🫀 PolyPose has been tested on multiple anatomical structures from different clinical specialties.

PolyPose

Tutorial

After setting up the environment, check out the tutorial notebook in notebooks/pelvis.ipynb for a demonstration of PolyPose.

Note:

  • This tutorial requires ≥24 GB of VRAM.
  • We are working on a tutorial with a smaller memory footprint that can be run on Google Colab (coming soon!).

Setup

PolyPose depends on the following packages:

torch
diffdrr    # Differentiable X-ray rendering
xvr        # Rigid 2D/3D registration
monai      # Evaluation metrics
cupy       # GPU-accelerated distance field computations
jaxtyping  # Extensive type hints!

Download the package:

git clone https://github.com/eigenvivek/polypose
cd polypose

You can install the required packages using virtualenv:

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Or you can set up the packages using uv:

# Install uv, if necessary
curl -LsSf https://astral.sh/uv/install.sh | sh

# Set up the virtual environment
uv venv
uv sync --all-groups

Citing PolyPose

If you find PolyPose useful for your work, please cite our paper:

@article{gopalakrishnan2025polypose,
  title={PolyPose: Localizing Deformable Anatomy in 3D from Sparse 2D X-ray Images using Polyrigid Transforms},
  author={Gopalakrishnan, Vivek and Dey, Neel and Golland, Polina},
  journal={arXiv preprint arXiv:2505.19256},
  year={2025}
}

About

Localizing deformable anatomy in 3D from sparse 2D X-ray images using polyrigid transforms

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages