Skip to main content

HoToPy - A toolbox for X-ray holo-tomography in Python

HoToPy

Documentation

The full API reference and user guide are available online at:
👉 https://irp.pages.gwdg.de/hotopy/reference

Getting Started

Explore practical examples and tutorials in the dedicated HoToPy-Examples repository.


Installation

We strongly recommend using uv from Astral for the most efficient and hassle-free setup.

To install HoToPy in a dedicated virtual environment (e.g., created with uv venv), run:

uv pip install hotopy

For tomography support, install with the tomo extra and the tomosipo interface for the ASTRA Toolbox:

uv pip install hotopy[tomo] git+https://github.com/cicwi/tomosipo

💡 Note: uv automatically manages dependencies and virtual environments, and supports PyTorch backend selection out of the box.

PyTorch Backend Selection with uv

uv offers seamless integration with PyTorch. You can specify the desired backend directly during installation:

uv pip install hotopy --torch-backend=cu130

Replace cu130 with your preferred version: cpu, cu126, cu128, etc.
See the full list of available targets in the PyTorch documentation.

You can also use auto for automatic backend detection:

uv pip install hotopy --torch-backend=auto

For more details, refer to the official uv PyTorch integration guide.


🐍 Alternative: Install with pip

If you prefer using pip, you can install HoToPy with:

pip install hotopy

For tomography support, install with the tomo extra and the tomosipo dependency:

pip install hotopy[tomo] git+https://github.com/cicwi/tomosipo

⚠️ Note: The ASTRA Toolbox is not included in the default PyPI release. For alternative installation methods, consult the ASTRA Toolbox documentation.

PyTorch Backend with pip

To install with a specific PyTorch backend (e.g., CUDA 13.0), use the PyTorch index URLs:

pip install hotopy --index-url https://download.pytorch.org/whl/cu130 --extra-index-url https://pypi.org/simple/

Replace cu130 with your desired version (cpu, cu126, cu128, etc.).
See the PyTorch official installation guide for more options.

🔍 We strongly recommend using uv for a smoother, faster, and more reliable experience.


Source Installation (Development)

For the latest bleeding-edge features, you can install directly from the source repository:

git clone https://gitlab.gwdg.de/irp/hotopy.git
cd hotopy
uv sync --all-extras

💡 This installs HoToPy with tomography support and development dependencies (e.g., testing, linting, documentation tools).


Paper & Citation

If you use HoToPy, please cite the paper HoToPy: a toolbox for X-ray holo-tomography in Python

@article{Lucht2025_hotopy,
    author = "Lucht, Jens and Meyer, Paul and Lohse, Leon Merten and Salditt, Tim",
    title = "{{\it HoToPy}: a toolbox for X-ray holo-tomography in Python}",
    journal = "Journal of Synchrotron Radiation",
    year = "2025",
    volume = "32",
    number = "6",
    pages = "1586--1594",
    month = "Nov",
    doi = {10.1107/S1600577525008550},
    url = {https://doi.org/10.1107/S1600577525008550},
    keywords = {X-ray imaging, phase retrieval, computed tomography, phase contrast, holography},
}

Metadata

Release files for hotopy 0.26

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hotopy 0.26
File Size Uploaded
hotopy-0.26.tar.gz 115.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hotopy 0.26
File Interpreter ABI Platform
hotopy-0.26-py3-none-any.whl Python 3 none any Details

Total release size: 254.5 kB

Release files / hotopy-0.26.tar.gz

Download URL hotopy-0.26.tar.gz
Size 115.2 kB
Tags Source
SHA-256 checksum
How to use checksums
24ba3db270b8ffc951bb5b8381000fd873984a1cc5b2460f20bc115816044e61
BLAKE2b-256 checksum
How to use checksums
263bb80d6e8a2c491d607ca2ad67b87b32401a6a391fdca1611e6313c5025c06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Rocky Linux","version":"9.8","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / hotopy-0.26-py3-none-any.whl

Download URL hotopy-0.26-py3-none-any.whl
Size 139.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
66fd713e2d446f41179ac4413d063ab6368040600e36ee3bacdaee0c8b0be414
BLAKE2b-256 checksum
How to use checksums
0c9b396c8dae3223abc49a844e1ed40c560644d69655ba87748f0fdc1133a62e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Rocky Linux","version":"9.8","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.26 This release

2 release files

0.25.1

2 release files

0.25

2 release files

0.24

2 release files

0.23

2 release files

0.22

2 release files

0.21

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page