Pure Python Computed Tomography reconstruction web application. Built with Solara.
If you use alrecon
please cite:
Iori et al., (2024). Alrecon: computed tomography reconstruction web application based on Solara. Open Research Europe, 4(54). https://doi.org/10.12688/openreseurope.16863.2
git clone https://github.com/gianthk/alrecon.git
cd alrecon
conda env create --file envs/alrecon-base.yml
conda activate alrecon-base
[!NOTE] If you already have a destination virtual environment for alrecon, you can install manually the requirements listed in file alrecon.yml.
[!NOTE] You can install Miniconda if you have conda not on your computer and have no desire for a "fully-fledged" anaoonda environment (to date, the tomopy package is only available for conda). There is an option for a "Quick command line install", which runs the complete installation without having you to click. In case of doubt, you can omit the last step
~/miniconda3/bin/conda init bash
and activate conda bysource miniconda3/bin/activate
.[!NOTE] To use TomoPy with CUDA features, install TomoPy from conda following these instructions.
alrecon
app:
pip install -e .
alrecon
solara web application on your localhostsolara run alrecon.pages --host localhost
alrecon
within jupyteralrecon
virtual environment is activated and ipykernel
installed:
conda activate alrecon
pip install --user ipykernel
or:
conda install -c anaconda ipykernel
alrecon
virtual environment:
python -m ipykernel install --user --name=alrecon
jupyter lab
You can take a look at solara's documnetation for more information on the different ways of running solara applications.
Alrecon
allows you to keep a consistent log of all reconstruction jobs on an online master Google spreadsheet.resources/foo_master.xls
log to google master spreadsheet
is activated, each time you submit a job to the HPC cluster the reconstruction settings are logged as a new line of the master spreadsheetAlrecon
can generate reconstruction job files and submit them to the workers of a cluster, if this is available. The current integration assumes that the slurm workload manager is available on the host, and is designed for the ID10-BEATS beamline of SESAME. Here are some general instructions on how to set up alrecon to work with your HPC facility:
remote_user
specified in the alrecon settings file must exist and have ssh
access to the remote_host
slurm
must be installed and running on the hostslurm.py
module in alrecon/components
.job
file is available in resources/foo.job
BEATS_recon.py
to perform complete TomoPy reconstruction pipelines. The script is available on the BEATS_recon repository. A copy of the script is in this repository in resources/BEATS_recon.py
.recon_script
specified in the settings file must contain the full path to your reconstruction script (BEATS_recon.py
in our case). This must be accessible by the host. slurmjob
class in alrecon/components/slurm.py
set_recon_command_beats
napari is a powerful pure Python multi-dimensional image viewer. Alrecon supports napari only when running the app through Jupyter.
To launch ImageJ from the alrecon web app follow these steps:
Modify the path to your ImageJ executable in the alrecon general settings
Copy the FolderOpener_virtual.ijm ImageJ macro contained in /alrecon/imagej_macros/
to the plugin folder of your ImageJ installation. On Linux this is something like /opt/Fiji.app/macros/
.
This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No [822535](Beamline for Tomography at SESAME BEATS).