Data and codes to reproduce publication results and figures
This README serves two purposes
Title: An unified open framework for Optical Projection Tomography: from acquisition to reconstruction DOI: XXX
This setup is using conda,
# get the repository
git clone https://github.com/QBioImaging/paper-2026-opt-framework.git
conda create -n paper2026-310 python==3.10
conda activate paper2026-310
# enter the repo
cd paper-2026-opt-framework
# install dependencies
pip install -r requirements.txt
# setup a kernel for the NBs
python -m ipykernel install --user --name "opt-framework"further install tomopy
conda install --channel conda-forge tomopy
# or if you have cuda available
conda install --channel conda-forge tomopy "libtomo=*=cuda*"The requirements contain standard python image processing libraries and packages developed by us. However for the purpose here, we import only specific modules from those, instead of using then as napari plugins, which aslo demonstrates the flexibility of the source code.
raw data are deposited at Zenodo (should be bioimage? perhaps), here is programatic way to pull the data.
Download the raw_data.tar.gz and open the archive in the raw_data folder in this repository. That is why the raw_data folder is left empty.
Open archive is 10.4 GB
tar -xzvf raw_data.tar.gz -C raw_data/raw_data folder contains raw tiff files. processed_data contains corrected projections ready for the reconstruction, max size for 400 projections is 2.5 GB in .npy. data_output folder contains the fully sampled 3D recontructed volumes (9.5 GB .npy each), together with selected slices, which are for paper figure purposes.
Reconstruction volumes files are larger than the processed projections. Before reconstruction, the stack of projections is a size of 2048 x 1536 x 400, while after reconstruction for uniform resolution the volumes become 2048 x 1536 x 1536 meaning intrapolation from angles to camera line pixels. In other words the ratio in voxels corresponds to the ratio of file sizes: 9.5/2.5 = 1536/400.
First notebook 01_process_raw_data:
- shows a step by step processing pipeline, while saving the processed data to initially empty
processed_datafolder. - produces Figure XXX of the paper demonstrating
Second notebook loads raw/processed data to reproduce figure of the paper.
Links to each tool for the setup is referenced in the article, with detailed instructions in each of the manuals. Here we provide the an ultrafast minimal setup.
conda create -n imswitchOTP ''
# install ImSwitch OPT
git clone ...
cd ...
pip install .
cd ..
run napari in the imswitchOPT environment
python -m napari