Deep Learning for Atmospheric Turbulence Mitigation: A Comparison Between GANs and Transformers
Organizations: San Diego State University, Computational Science Research Center, Department of Mathematics and Statistics, 5500 Campanile Drive, San Diego, CA 92182, USA · San Diego State University, Department of Mathematics and Statistics, 5500 Campanile Drive, San Diego, CA 92182, USA
Abstract
Atmospheric turbulence creates complex spatial and temporal distortions that significantly reduce image quality. This work compares two deep learning methods for turbulence reduction: Generative Adversarial Networks (GANs) and Transformer-based models. Both methods are trained and tested on the SOTIS dataset, which includes multi-frame sequences under different turbulence conditions with ground truth references. Our results show an important finding: GAN-based models perform better in severely degraded, low-quality situations, while Transformer-based models achieve better results in moderate to high-quality settings, especially in correcting geometric distortions. We also enhance the Turbulence Mitigation Transformer (TMT) by introducing a refined training strategy, an augmented input design that includes a temporally averaged frame as prior structural information, and a modified loss function that incorporates the Structural Similarity Index (SSIM). These improvements lead to consistent performance gains across various turbulence conditions. Overall, this study provides an in-depth evaluation of deep learning methods for turbulence reduction and offers practical guidance for selecting models in different imaging environments.
Figures & tables
| SSIM Bin | Turbulence (SSIM) | Reconstructed (SSIM) | SSIM Gain |
|---|---|---|---|
| (0–0.2] | 0.1823 | 0.2284 | 0.0461 |
| (0.2–0.3] | 0.2561 | 0.3023 | 0.0462 |
| (0.3–0.4] | 0.3520 | 0.4058 | 0.0538 |
| (0.4–0.5] | 0.4506 | 0.5236 | 0.0730 |
| (0.5–0.6] | 0.5534 | 0.6863 | 0.1329 |
| (0.6–0.7] | 0.6544 | 0.8334 | 0.1790 |
| SSIM B | Turb | NLTV–LK | TV–LK | TV–TVL1 | T.A. | NLTV–TVL1 | all |
|---|---|---|---|---|---|---|---|
| (0–0.2] | 0.1748 | 0.1606 | 0.1608 | 0.1616 | 0.3321 | 0.3326 | 0.2084 |
| (0.2–0.3] | 0.2577 | 0.2537 | 0.2540 | 0.2481 | 0.4142 | 0.4114 | 0.2989 |
| (0.3–0.4] | 0.3511 | 0.3895 | 0.3898 | 0.3585 | 0.5022 | 0.5021 | 0.4204 |
| (0.4–0.5] | 0.4506 | 0.5627 | 0.5630 | 0.5014 | 0.6306 | 0.6299 | 0.5795 |
| (0.5–0.6] | 0.5554 | 0.7611 | 0.7613 | 0.7079 | 0.7849 | 0.7848 | 0.7587 |
| (0.6–0.7] | 0.6525 | 0.8647 | 0.8648 | 0.8436 | 0.8694 | 0.8694 | 0.8570 |
| SSIM Bin | Turbulence (SSIM) | Reconstructed (SSIM) | SSIM Gain |
|---|---|---|---|
| (0–0.2] | 0.1654 | 0.2274 | 0.0618 |
| (0.2–0.3] | 0.2535 | 0.3470 | 0.0934 |
| (0.3–0.4] | 0.3518 | 0.4681 | 0.1164 |
| (0.4–0.5] | 0.4529 | 0.5707 | 0.1178 |
| (0.5–0.6] | 0.5533 | 0.6562 | 0.1029 |
| (0.6–0.7] | 0.6465 | 0.7288 | 0.0824 |
| SSIM Bin | Turbulence (SSIM) | Reconstructed (SSIM) | SSIM Gain |
|---|---|---|---|
| (0–0.2] | 0.1654 | 0.2472 | 0.0816 |
| (0.2–0.3] | 0.2535 | 0.3810 | 0.1274 |
| (0.3–0.4] | 0.3518 | 0.5323 | 0.1805 |
| (0.4–0.5] | 0.4529 | 0.7055 | 0.2526 |
| (0.5–0.6] | 0.5533 | 0.8423 | 0.2890 |
| (0.6–0.7] | 0.6465 | 0.9013 | 0.2548 |
| SSIM Bin | Turbulence (SSIM) | Reconstructed (SSIM) | SSIM Gain |
|---|---|---|---|
| (0–0.2] | 0.1659 | 0.2485 | 0.0826 |
| (0.2–0.3] | 0.2539 | 0.3945 | 0.1405 |
| (0.3–0.4] | 0.3518 | 0.5504 | 0.1986 |
| (0.4–0.5] | 0.4529 | 0.7275 | 0.2746 |
| (0.5–0.6] | 0.5532 | 0.8670 | 0.3138 |
| (0.6–0.7] | 0.6464 | 0.9210 | 0.2746 |
| SSIM Bin | Turbulence | Direct Evaluation | Transfer Learning | SSIM Gain |
|---|---|---|---|---|
| (0–0.2] | 0.1582 | 0.2612 | 0.3467 | 0.1030 / 0.1885 |
| (0.2–0.3] | 0.2577 | 0.3773 | 0.4886 | 0.1196 / 0.2309 |
| (0.3–0.4] | 0.3539 | 0.4665 | 0.5927 | 0.1125 / 0.2388 |
| (0.4–0.5] | 0.4514 | 0.5435 | 0.6791 | 0.0922 / 0.2277 |
| (0.5–0.6] | 0.5515 | 0.6197 | 0.7609 | 0.0682 / 0.2094 |
| (0.6–0.7] | 0.6508 | 0.6878 | 0.8269 | 0.0370 / 0.1761 |
| SSIM Bin | Turbulence (SSIM) | Reconstructed (SSIM) | SSIM Gain |
|---|---|---|---|
| (0–0.2] | 0.1654 | 0.2255 | 0.0433 |
| (0.2–0.3] | 0.2535 | 0.3133 | 0.0523 |
| (0.3–0.4] | 0.3518 | 0.4128 | 0.0606 |
| (0.4–0.5] | 0.4529 | 0.5165 | 0.0647 |
| (0.5–0.6] | 0.5533 | 0.6116 | 0.0565 |
| (0.6–0.7] | 0.6465 | 0.6945 | 0.0463 |
| Model | Trainable Parameters | Model Size (MB) |
|---|---|---|
| GAN (training) | 812,434 | 3.10 |
| GEN | 34,929 | 0.13 |
| Transformer (TMT) | 22,936,370 | 87.50 |
| Model | Input | Inference (ms/image) | Throughput (img/s) |
|---|---|---|---|
| GAN (training) | 2.10 | 475.17 | |
| GEN | 2.04 | 489.90 | |
| TMT | 753.60 | 1.33 |