A toolbox for X-ray holo-tomography in Python
Project description
HoToPy - A toolbox for X-ray holo-tomography in Python
HoToPy
Installation
We recommend to install HoToPy in a dedicated Python virtual environment,
which can be created using uv venv or vanilla Python venv python3 -m venv.
pip installation
HoToPy can be installed through pip by running
pip install hotopy
for a basic HoToPy installation.
Tomography backend
The base installation of HoToPy does not contain a tomography backend. If you intend to use the tomographic functions
in hotopy.tomo, you need to install the ASTRA toolbox as tomographic backend.
It can be conveniently installation through the optional dependency tomo of HoToPy by running,
pip install hotopy[tomo]
Alternative installation methods of the ASTRA toolbox can be found in its documentation.
PyTorch CUDA version
uv
You can use Astral's uv (an extremely fast Python package and project manager) built-in features to install
different versions of CUDA backends.
Consult their uv PyTorch integration documentation for details.
For example, you can explicitly request PyTorch with CUDA-13.0 with:
uv pip install hotopy --torch-backend=cu130
Replace cu130 with your desired version, e.g. cpu, cu126, cu128, etc. See available targets.
Also, an automatic PyTorch backend selection is possible with auto.
pip
We strongly recommend using the uv tool, see above.
For pip-based installation, you can use the index URLs provided by the PyTorch project, see their Getting started documentation. For example, you can install HoToPy with PyTorch using CUDA-13.0 by running:
pip install hotopy --index-url https://download.pytorch.org/whl/cu130 --extra-index-url https://pypi.org/simple/
Replace cu130 with your desired version, e.g. cpu, cu126, cu128, etc. See available targets.
Source installations
You can also install bleeding-edge versions of HoToPy by cloning the repository.
git clone https://gitlab.gwdg.de/irp/hotopy.git
cd hotopy
[uv] pip install '.[tomo,dev]'
Here, the optional dependencies for tomography and development (dev) are included in the installation. You may add the
--editable flag to the installation, for an editable development deployment.
Getting started
You can find examples in the dedicated HoToPy-Examples repository.
Documentation
Check out our online documentation at https://irp.pages.gwdg.de/hotopy.
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},
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hotopy-0.24.tar.gz.
File metadata
- Download URL: hotopy-0.24.tar.gz
- Upload date:
- Size: 80.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Rocky Linux","version":"9.6","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35a8ef9079c8af056fa1d420492a20f2e7d477a10741b7c32c15bebc825e0999
|
|
| MD5 |
9f462dd1e30247b22cb051d341513df5
|
|
| BLAKE2b-256 |
39a3c2b604c6a247699a93cc6d0cb8753c178552869f75fe7f2c0f0d8c730185
|
File details
Details for the file hotopy-0.24-py3-none-any.whl.
File metadata
- Download URL: hotopy-0.24-py3-none-any.whl
- Upload date:
- Size: 98.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Rocky Linux","version":"9.6","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5cfc55ed6ed42ca88c040065dbb9a7cf8d0f3ed072513cebf0fae3b4cf2f0b33
|
|
| MD5 |
baa614ec174b110f87c418e5b806a25d
|
|
| BLAKE2b-256 |
e19eca16c312ee469843fd585c9b18f10a484884be7daac0be01dfb7e22dd514
|