Skip to content

a-rouxel/simca

Repository files navigation

pages-build-deployment

SIMCA: Coded Aperture Snapshot Spectral Imaging (CASSI) Simulator

SIMCA is a Python/Qt application designed to perform optical simulations for Coded Aperture Snapshot Spectral Imaging (CASSI).

Go check the documentation page here

Installation

To install SIMCA, follow the steps below:

  1. Clone the repository from Github:
git clone https://github.com/a-rouxel/simca.git
cd simca
  1. Create a dedicated Python environment using Miniconda. If you don't have Miniconda installed, you can find the instructions here.
# Create a new Python environment
conda create -n simca-env python=3.9

# Activate the environment
conda activate simca-env
  1. Install the necessary Python packages that SIMCA relies on. These are listed in the requirements.txt file in the repository.
# Install necessary Python packages with pip
pip install -r requirements.txt

Download datasets

  1. Download the standard datasets from this link, then unzip and paste the datasets folder in the root directory of SIMCA.

Quick Start with GUI (option 1)

  1. Start the application:
# run the app
python main.py

Quick Start from script (option 2)

  1. Run the example script :
# run the script
python simple_script.py

Main Features

SIMCA includes four main features:

  • Scene Analysis: This module is used to analyze input multi- or hyper-spectral input scenes. It includes data slices, spectrum analysis, and ground truth labeling.

  • Optical Design: This module is used to compare the performances of various optical systems.

  • Coded Aperture Patterns Generation: This module is used to generate spectral and/or spatial filtering, based on the optical design.

  • Acquisition Coded Images: This module is used to encode and acquire images.

For more detailed information about each feature and further instructions, please visit our documentation website.

Testing the package

If you wish to run tests on the simca package functionnalities:

  1. Run the tests.py script:
python tests.py

Building Documentation

If you wish to build the Sphinx documentation locally:

  1. Navigate to the documentation source directory (e.g., doc/):
cd doc
  1. Ensure you have Sphinx and other necessary tools installed:
pip install sphinx sphinx_rtd_theme
  1. Build the documentation:
make html
  1. Once built, you can view the documentation by opening the generated HTML files. For example:
xdg-open _build/html/index.html

License

SIMCA is licensed under the GNU General Public License.

Contact

For any questions or feedback, please contact us at [email protected]