A two-channel deconvolution method with Starlet regularization
Project description
STARlet REgularized Deconvolution (STARRED) is a Python deconvolution method powered by Starlet regularization and JAX automatic differentiation. It uses a Point Spread Function (PSF) narrower than the original one as kernel.
Installation
Through Anaconda
We provide an Anaconda environment that satisfies all the dependencies in starred-env.yml.
git clone https://gitlab.com/cosmograil/starred.git
cd starred
conda env create -f starred-env.yml
conda activate starred-env
pip install .
In case you have an NVIDIA GPU, this should automatically download the right version of JAX as well as cuDNN. Next, you can run the tests to make sure your installation is working correctly.
# While still in the STARRED directory:
pytest .
Manually handling the dependencies
If you want to use an existing environment, just omit the Anaconda commands above:
git clone https://gitlab.com/cosmograil/starred
cd starred
pip install .
or if you need to install it for your user only:
python setup.py install --user
STARRED runs much faster on GPUs, so make sure you install a version of JAX that is compatible with your version of Cuda and CuDNN:
pip install "jax[cuda11_cudnn86]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
Requirements
STARRED requires the following Python packages: * astropy * dill * jax * jaxlib * jaxopt * matplotlib * numpy * scikit-image * scipy * optax * tqdm
Example Notebooks and Documentation
The full documentation can be found here.
Example notebooks are located in the notebooks folder: * Ground-based narrow PSF generation * Ground-based joint deconvolution * Another ground-based joint deconvolution * JWST PSF generation and deconvolution * DES2038 joint deconvolution * HST PSF reconstruction
Attribution
If you use this code, please cite Michalewicz et al. 2023 as indicated in the documentation.
License
STARRED is a free software. You can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation.
STARRED is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY, without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details (LICENSE.txt).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for starred_astro-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 397b47f144183d94098d4afd81cd3ac98b6b377c536c94559f7d7eb66a84935c |
|
MD5 | 8862743900a11ea45f85eb64838f0e34 |
|
BLAKE2b-256 | e9d36197e9867ac377192c021922b8b02cab6899125424bbc65a4742ae56ae3a |
Hashes for starred_astro-1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 059f1d3e71e49f372b741bcacdaec705760f78f1039f8d15619a74633f206f90 |
|
MD5 | 1315ce28055e265a7895b4eec6896910 |
|
BLAKE2b-256 | 4a4032fec2f3e1dfaae1e47629fc83b9957180a107172461d2cf25b6d1baf4e2 |