Skip to content

smith6jt-cop/KINTSUGI

Repository files navigation

KINTSUGI: Knowledge Integration with New Technologies for Simplified User-Guided Image processing

Description of the gif

Multiplex image processing for challenging datasets with a focus on user integration rather than automation. This pipeline includes 2D/3D GPU/CPU illumination correction, stitching, deconvolution, extended depth of focus, registration, autofluorescence removal, segmentation, clustering, and spatial analysis.

To view notebooks in browser see: https://smith6jt-cop.github.io/KINTSUGI-docs/Intro.html

Table of Contents

Installation Steps

1. Download miniforge

 Download and install environment management software.

 Download miniforge: https://github.com/conda-forge/miniforge.

 Follow installation instructions for your OS.

2. Create mamba environment

 Launch miniforge as administrator (if possible). You will be in the default “base” environment.

 Change directory to your user folder:

cd C:\Users\[your user name]
cd /home/[your user name]

 For Linux OS, you may need to enter:

source "${HOME}/miniforge3/etc/profile.d/mamba.sh"
source "${HOME}/miniforge3/etc/profile.d/conda.sh"
mamba activate

 To download the code and associated files enter:

git clone https://github.com/smith6jt-cop/KINTSUGI.git

 Change directory to enter the folder just downloaded

cd KINTSUGI

 For Windows OS, create the environment by entering:

mamba env create -f environment.yml

 For Linux OS, create the environment by entering:

mamba env create -f environment_linux.yml

 The downloading and installation of the packages will take several minutes depending on available computing resources and network speed.

 Activate the environment by entering:

mamba activate KINTSUGI

 It is recommended to use VS Code to run the notebooks. Download and install VS Code https://code.visualstudio.com/.

3. Download files

 Download zip files and extract them to KINTSUGI folder.

  Java - Information at: https://www.oracle.com/java/technologies/downloads/#java21.

  Download links:

   https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.zip (sha256)
   https://download.oracle.com/java/21/latest/jdk-21_macos-aarch64_bin.tar.gz (sha256)
   https://download.oracle.com/java/21/latest/jdk-21_linux-aarch64_bin.tar.gz (sha256)

  Maven - Information at: https://maven.apache.org/download.cgi.

  Download links:

   apache-maven-3.9.9-bin.zip
   apache-maven-3.9.9-bin.tar.gz

  PyVips (LibVips) (for VALIS Registration only).

   Windows download link: vips-dev-w64-all-8.16.0.zip
   Additional install instructions for Linux: https://github.com/libvips/pyvips

  FIJI/ImageJ: https://imagej.net/software/fiji/downloads

   Install the "Fiji.app" folder to your user folder.
   Follow clij2 installation: https://clij.github.io/clij2-docs/installationInFiji

4. Copy/move raw image data

 Create a folder in the KINTSUGI folder called “data”.

 If downloading test data use this link: https://uflorida-my.sharepoint.com/:f:/g/personal/smith6jt_ufl_edu1/Er5ui-wFA6BNnmgj9N1hPAsBYQaiKfSQa2do_lUMhQdaGg?e=5Uny95

 Move all image data to [your user folder]\KINTSUGI\data.

Notebooks

1. Parameter tuning/testing For testing illumination correction, stitching, deconvolution, and EDoF.

2. Batch processing For batch processing illumination correction, stitching, deconvolution, EDoF, and registration.

3. Signal Isolation For autofluorescence subtraction, filtering, and final processing to isolate signal.

4. Segmentation For Mesmer segmentation and feature extraction.

5. Pixel Clustering For self-organizing map application to pixels.

6. Cell Clustering For self-organizing map application to pixel clusters and segmetation features.

Acknowledgements

Shoulders of giants we stand on:

 For multiplex histology/imaging: Nolan lab
 For illumination correction: Peng lab
 For stitching: MIST, Fukai's m2stitch
 For deconvolution: Becker's LsDeconv
 For EDoF: Forster et al., Clij2
 For registration: Gatenbee's VALIS
 For segmentation: VanValen lab
 For clustering: Angelo lab
 For general processing: ImageJ/FIJI, pyImageJ, Haase's stackview
 Python, Jupyter, conda/mamba, Java, Maven, Linux, Windows, UF, UFDI, Maigan Brusko Lab, NIH, HubMap, the power grid, the internet, the earth, gravity, the sun, oxygen, caffeine, love, neurons, neurotransmitters, water, the truth and the unkown.