This package supports the research being done by the Laboratoire d’Imagerie Optique et Moléculaire at Polytechnique Montréal. It hosts a collection of scripts used to process and analyze data collected by the lab.
The package can be installed using pip:
pip install liom-toolkit
Due to the complicated requirements, a detailed installation guide is provided below.
Demonstrations of some of the functionalities of the package can be found in the notebooks in the LIOM Notebooks repository. The repository can be found here: LIOM Notebooks
The package requires the following packages to be installed and will attempt to install them using installation:
- antspyx
- tqdm
- scikit-image
- ome-zarr
- nibabel
- zarr
- h5py
- pynrrd
- PyWavelets
- SimpleITK
- allensdk
- dask
- opencv-python
- torch
- torchvision
- wandb
- patchify
- natsort
- albumentations
To create an anaconda environment with all the required packages, run the following commands:
conda create -n <name>
conda activate <name>
conda install python=3.10
# Install Pytorch at this point, follow the instructions on the Pytorch website:
# https://pytorch.org/get-started/locally/
# Make sure the right version is installed for your system. Check for CUDA compatibility.
# For example, for Linux with a CUDA compatible GPU:
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
# For MacOS:
conda install pytorch::pytorch torchvision torchaudio -c pytorch
# The lines below are for Apple Silicon specifically.
# Hdf5 needs to be installed using homebrew.
# Tables is used by the allenSDK and requires hdf5 to be installed.
# On apple silicon, HDF5 is not automatically installed by tables or detected on the system.
brew install hdf5
HDF5_DIR=/opt/homebrew/Cellar/hdf5/1.14.3_1 pip install tables
# From now on pip will be used to install the packages. Some packages are not available on conda, or are out of date.
pip install allensdk
pip install antspyx
pip install liom-toolkit
# To build the documentation of the package
pip install sphinx-rtd-theme
pip install sphinxcontrib-apidoc
# To run the LIOM Notebooks
pip install jupyter
The package contains the following modules:
The registration module is concerned with performing registration on brain imagery. It hosts a collection of scripts for registering mouse brains to the Allen Atlas as well as functions for creating brain templates to use in registration.
The segmentation module is concerned with segmenting brain imagery. It contains methods for segmenting brain images into different regions of interest. The vseg submodule contains methods for segmenting vasculature using deep learning using a U-net architecture. The pretrained model is trained on LSFM data.
Various utility functions used by the other modules. These include function for converting between the different data files used within the lab.