ADMM-ADAM is a powerful hyperspectral image (HSI) restoration framework designed by Dr. Chia-Hsiang in 2021 (Journal Link). It's based on "convex optimization", "feature extractor" and "ADMM optimizer" to make a high reducibility image.
ADMM-ADAM workflow as follows:
-
Train a Deep Learning model with ADAM optimizer (GAN in here), and get a Deep Learning olution (image)
-
Extract the most important information of Deep Learning solution by PCA (or some other feature extractor)
-
design a convex optimization problem with ADMM optimizer as follows:
where,
- X:
- Y:
- Ω:
- X_{DL}:
- can be obtained using ADAM optimizer (GAN model with ADAM optimizer in here, you can get it by darkfanxing/GAN)
- λ:
- Q:
Assume we have N materials, each pixel can be modeled as a linear combination of N spectral signature vectors in R^{M}. In other words, all the hyperspectral pixel vectors belong to a N-dimensional subspace if we ignore some non-linearity or noise effects, so the target image X can be represented as follows:
where,
- : the most important N component (eigenvector), i.e. N material
- : some coefficient matrix and we can simplify the objective function:
so convex optimization problem can be represented as follows:
the meaning of F-norm is:
Once is available, it can be used to reconstruct the complete hyperspectral image as Hehe... it is happy time for reformulating convex optimization problem into the standard ADMM form:
and give a augmented Lagrangian term :
where,
Then, ADMM optimizer solves the problem as detailed as follows:
where,
where,
To avoid Python package version conflicts, the project use pipenv (Python vitural environment) to install Python packages.
rm Pipfile
pip install pipenv
pipenv shell
pipenv install
python src/main.py
Lin, Chia-Hsiang, Yen-Cheng Lin, and Po-Wei Tang. "ADMM-ADAM: A New Inverse Imaging Framework Blending the Advantages of Convex Optimization and Deep Learning." IEEE Transactions on Geoscience and Remote Sensing (2021).