Simulation of CLEAN algorithm for interferometry
This project simulates the CLEAN algorithm used in radio interferometry.
In radio astronomy observation, the raw image retreived from the antennas contains so much noise.
This algorithm removes noise from it and obtains true image.
Demonstration:
Noise are removed and only the real object got cleared.
sample_video.mp4
You can try this simulation on Google Colab:
These files are the same as those in the example folder of this repository.
numpy
matplotlib
opencv-python
scipy
You can install them using the following command:
pip install -r requirements.txt.
├── CLEAN # CLEAN simulation module
├── example # Usage and examples
│ ├── image # Image for `example` directory
├── LICENSE
├── README.md
├── requirements.txt
Some folders or files are omitted in the above illustration.
Please refer to the example folder for usage instructions.
Also, please refer to the docs.
Although I am a bit fatigued with this project, I still have some ideas for improvements:
- Add support for various antenna configurations.
- Enable importing real antenna configuration data.
- Conduct more experiments and demonstrations.
- In practical CLEAN processes, the size of the synthesized beam is typically about 5 pixels, but this cannot be achieved in the current simulation.
- Implement Briggs weighting.
- Improve the UV gridding implementation, as I am not fully confident in its accuracy.
- Explore additional ways to enhance and refine the simulation.
I welcome any contributions or questions. Feel free to contact me anytime.