Installation

ROICaT works on Windows, MacOS, and Linux. If you have any issues during the installation process, please make a github issue with the error.

0. Requirements

  • Your segmented data. For example Suite2p output data (stat.npy and ops.npy files), CaImAn output data (results.h5 files), or any other type of data using this custom data importing notebook.

  • Anaconda or Miniconda.

  • If using Windows: Microsoft C++ Build Tools

  • If using linux/unix(MacOS): GCC >= 5.4.0, ideally == 9.2.0. Check with: gcc --version, or just google how to do this on your operating system.

  • Optional: CUDA compatible NVIDIA GPU and drivers. Using a GPU can increase ROICaT speeds ~5-50x, though without it, ROICaT will still run reasonably quick. GPU support is not available for Macs.

  • The below commands should be run in the terminal (Mac/Linux) or Anaconda Prompt (Windows).

2. Install ROICaT

pip install roicat[all]
pip install git+https://github.com/RichieHakim/roiextractors

Note on zsh: if you are using a zsh terminal, change command to: pip3 install --user 'roicat[all]' For installing GPU support on Windows, see Troubleshooting below.
Note on opencv: The headless version of opencv is installed by default. If the regular version is already installed, you will need to uninstall it first.

3. Clone the repo to get the scripts and notebooks

git clone https://github.com/RichieHakim/ROICaT

Then, navigate to the ROICaT/notebooks/jupyter directory to run the notebooks.

Troubleshooting Installation

Troubleshooting package installation issues

If you have issues importing packages like roicat or any of its dependencies, try reinstalling roicat with the following commands within the environment:

pip uninstall roicat
pip install --upgrade --force --no-cache-dir roicat[all]

Troubleshooting HDBSCAN installation issues

If you are using Windows receive the error: ERROR: Could not build wheels for hdbscan, which is required to install pyproject.toml-based projects on Windows, make sure that you have installed Microsoft C++ Build Tools. If not, download from here and run the commands:

cd path/to/vs_buildtools.exe
vs_buildtools.exe --norestart --passive --downloadThenInstall --includeRecommended --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Workload.VCTools --add Microsoft.VisualStudio.Workload.MSBuildTools

Then, try proceeding with the installation by rerunning the pip install commands above. (reference)

Troubleshooting (GPU support)

GPU support is not required. Windows users will often need to manually install a CUDA version of pytorch (see below). Note that you can check your nvidia driver version using the shell command: nvidia-smi if you have drivers installed.

Use the following command to check your PyTorch version and if it is GPU enabled:

python -c "import torch, torchvision; print(f'Using versions: torch=={torch.__version__}, torchvision=={torchvision.__version__}');  print(f'torch.cuda.is_available() = {torch.cuda.is_available()}')"

Outcome 1: Output expected if GPU is enabled:

Using versions: torch==X.X.X+cuXXX, torchvision==X.X.X+cuXXX
torch.cuda.is_available() = True

This is the ideal outcome. You are using a CUDA version of PyTorch and your GPU is enabled.

Outcome 2: Output expected if non-CUDA version of PyTorch is installed:

Using versions: torch==X.X.X, torchvision==X.X.X
OR
Using versions: torch==X.X.X+cpu, torchvision==X.X.X+cpu
torch.cuda.is_available() = False

If a non-CUDA version of PyTorch is installed, please follow the instructions here: https://pytorch.org/get-started/locally/ to install a CUDA version. If you are using a GPU, make sure you have a CUDA compatible NVIDIA GPU and drivers that match the same version as the PyTorch CUDA version you choose. All CUDA 11.x versions are intercompatible, so if you have CUDA 11.8 drivers, you can install torch==2.0.1+cu117.

Solution:
If you are sure you have a compatible GPU and correct drivers, you can force install the GPU version of pytorch, see the pytorch installation instructions. Links for the latest version or older versions. Example:

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

Outcome 3: Output expected if CUDA version of PyTorch is installed but GPU is not available:

Using versions: torch==X.X.X+cuXXX, torchvision==X.X.X+cuXXX
torch.cuda.is_available() = False

If a CUDA version of PyTorch is installed but GPU is not available, make sure you have a CUDA compatible NVIDIA GPU and drivers that match the same version as the PyTorch CUDA version you choose. All CUDA 11.x versions are intercompatible, so if you have CUDA 11.8 drivers, you can install torch==2.0.1+cu117.