Computational Optical Learning Library (Colibri) Documentation

Test Status Docs Status Python 3.8+ colab

Colibri is a deep learning based library specialized in optimizing the key parameters of optical systems that can be learned from data to improve the performance of the system.

In Colibri, optical systems, neural networks, model based recovery algorithms, and datasets are implemented to be easily used or modified for new research ideas. The purpose of Colibri is to boost the research-related areas where optics and networks are required and introduce new researchers to state-of-the-art algorithms in a straightforward and friendly manner.

πŸ₯… Goals

  • Easy to use, customize and add modules.

  • Comprehensive documentation and examples.

  • High-quality code and tests.

  • Fast and efficient algorithms.

  • Wide range of optical systems, neural networks, recovery algorithms, and datasets.

  • Support for the latest research in the field.

πŸ’Ώ Installation

To get started with Colibri, install the library using the following steps:

  1. Clone the repository:

git clone https://github.com/pycolibri/pycolibri.git
  1. Create a virtual environment with conda:

conda create -n colibri python=3.10
conda activate colibri
  1. Install the requirements:

pip install -r requirements.txt
  1. Enjoy! πŸ˜„

πŸš€ Quick Start

Check out the demo list in the examples folder to get started with Colibri.

🧰 Available Modules

πŸ“· Optical Systems

πŸ“ˆ Regularizers

πŸ’»οΈ Deep Neural Networks

πŸ–₯ Recovery Algorithms

πŸŽ† Frameworks

πŸ«‚ Contributors

bemc22
Brayan Monroy
david-morales-norato
David Santiago Morales Norato
leonsuarez24
leonsuarez24
romanjacome99
Roman Alejandro Jacome Carrascal
paularguello07
Paula Andrea Arguello Gutierrez
enmartz
Emmanuel MartΓ­nez
yromariogh
Romario Gualdron Hurtado
factral
Fabian Perez *-*

πŸ’‘ Contributing

Information about contributing to Colibri can be found in the CONTRIBUTING.md guide. and in the guide How to Contribute

πŸ›‘οΈ License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.