Optical satellite communications is a growing research field with bright commercial perspectives. One of the challenges for optical links through the atmosphere is turbulence, which is also apparent by the twinkling of stars. The reduction of the quality can be calculated, but it needs the turbulence strength over the path the optical beam is running. Estimation of the turbulence strength is done at astronomic sites, but not at rural or urban sites. To be able to do this, a simple instrument is required. We want to propose to use a single star Scintillation Detection and Ranging (SCIDAR), which is an instrument that can estimate the turbulence strength, based on the observation of a single star. Here, reliable signal processing of the received images of the star is most challenging. We propose to solve this by Machine Learning.
The primary objectives of this project are:
-
Turbulence Strength Estimation: Develop a robust algorithm using Machine Learning to estimate turbulence strength based on SCIDAR data.
-
Signal Processing Enhancement: Implement advanced signal processing techniques to improve the accuracy and reliability of turbulence strength calculations.
-
Adaptability to Various Sites: Ensure the proposed solution is versatile enough to be deployed in diverse environments, including rural and urban locations.
This repository contains:
-
Machine Learning Models: Implementation of machine learning models tailored for turbulence strength estimation from SCIDAR data.
-
Signal Processing Algorithms: Advanced signal processing algorithms aimed at enhancing the quality of received star images.
-
Dataset: Sample datasets for training and testing the machine learning models.
-
Documentation: In-depth documentation explaining the methodology, algorithms used, and guidelines for using the code.
To get started with the project, follow these steps:
-
Install the package:
python -m pip install git+https://github.com/MALES-project/SpeckleCn2Profiler
while the above command works, speckcn2
will be available on pypi as soon as its dependencies get updated.
- Explore the Code: Dive into the codebase to understand the implementation details and customize it according to your needs.
We welcome contributions to improve and expand the capabilities of this project. If you have ideas, bug fixes, or enhancements, please submit a pull request. Check out our Contributing Guidelines to get started with development.
Please consider citing this software that is published in Zenodo under the DOI 10.5281/zenodo.11447920.
This project is licensed under the MIT License - see the LICENSE file for details.