Abstract
Image deblurring has advanced rapidly with deep learning, yet most methods exhibit poor generalization beyond their training datasets, with performance dropping significantly in real-world scenarios. Our analysis shows this limitation stems from two factors: datasets face an inherent trade-off between realism and coverage of diverse blur patterns, and algorithmic designs remain restrictive, as pixel-wise losses drive models toward local detail recovery while overlooking structural and semantic consistency, whereas diffusion-based approaches, though perceptually strong, still fail to generalize when trained on narrow datasets with simplistic strategies. Through systematic investigation, we identify blur pattern diversity as the decisive factor for robust generalization and propose Blur Pattern Pretraining (BPP), which acquires blur priors from simulation datasets and transfers them through joint fine-tuning on real data. We further introduce Motion and Semantic Guidance (MoSeG) to strengthen blur priors under severe degradation, and integrate it into GLOWDeblur, a Generalizable reaL-wOrld lightWeight Deblur model that combines convolution-based pre-reconstruction & domain alignment module with a lightweight diffusion backbone. Extensive experiments on six widely-used benchmarks and two real-world datasets validate our approach, confirming the importance of blur priors for robust generalization and demonstrating that the lightweight design of GLOWDeblur ensures practicality in real-world applications.
The Critical Role of Blur Patterns in Real-World Generalization
Despite recent progress, state-of-the-art deblurring methods struggle to generalize to real-world scenarios, often failing even in visually simple scenes due to a reliance on dataset-specific distributions. Our cross-dataset analysis reveals that blur pattern diversity—rather than just image realism—is the dominant factor in this generalization gap. To address this, we propose Blur Pattern Pretraining (BPP), a strategy that learns intrinsic blur priors from diverse synthetic data. As demonstrated below, BPP effectively bridges distribution gaps and resolves domain conflicts, serving as a core component of our GLOWDeblur framework.
1. Cross-dataset results revealing generalization gaps
| Training Set \ Test Set | GoPro | HIDE | REDS | RealBlur | BSD | RSBlur | GSBlur | Avg. |
|---|---|---|---|---|---|---|---|---|
| GoPro (Synthetic) | 32.92 / 0.94 | 31.22 (↓0.40)/ 0.92 | 26.93 (↓7.46) / 0.82 | 28.96 (↓3.13) / 0.88 | 24.43 (↓9.32) / 0.90 | 29.30 (↓3.68) / 0.86 | 24.94 (↓6.43) / 0.82 | 28.39 / 0.88 |
| HIDE (Synthetic) | 32.60 (↓0.32) / 0.94 | 31.62 / 0.93 | 26.68 (↓7.71) / 0.83 | 27.76 (↓4.33) / 0.86 | 25.34 (↓8.41) / 0.85 | 27.77 (↓5.21) / 0.83 | 23.40 (↓7.97) / 0.80 | 27.88 / 0.86 |
| REDS (Synthetic) | 26.21 (↓6.71) / 0.83 | 24.42 (↓7.20) / 0.80 | 34.39 / 0.94 | 28.72 (↓3.37) / 0.86 | 28.90 (↓4.85) / 0.84 | 28.09 (↓4.89) / 0.87 | 24.42 (↓6.95) / 0.80 | 27.88 / 0.85 |
| RealBlur (Real) | 24.50 (↓8.42) / 0.82 | 23.60 (↓8.02) / 0.81 | 25.85 (↓8.54) / 0.79 | 32.09 / 0.92 | 28.78 (↓4.97) / 0.91 | 29.65 (↓3.33) / 0.87 | 24.92 (↓6.45) / 0.81 | 27.06 / 0.85 |
| BSD (Real) | 27.27 (↓5.65) / 0.86 | 26.27 (↓5.35) / 0.85 | 28.20 (↓6.19) / 0.84 | 29.64 (↓2.45) / 0.89 | 33.75 / 0.96 | 30.45 (↓2.53) / 0.89 | 26.78 (↓4.59) / 0.85 | 28.91 / 0.88 |
| RSBlur (Real) | 27.55 (↓5.37) / 0.87 | 25.79 (↓5.83) / 0.84 | 28.08 (↓6.31) /0.84 | 30.41 (↓1.68) / 0.89 | 30.85 (↓2.90) / 0.94 | 32.98 / 0.93 | 27.63 (↓3.74) / 0.86 | 29.04 / 0.88 |
| GSBlur (Simulated) | 28.51 (↓4.41) / 0.90 | 26.12 (↓5.50) / 0.87 | 30.29 (↓4.10) / 0.90 | 30.06 (↓2.03) / 0.91 | 31.24 (↓2.51) / 0.94 | 32.01 (↓0.97) / 0.92 | 31.37 / 0.92 | 29.94 / 0.91 |
Models trained on one dataset degrade significantly on others, highlighting a substantial distribution gap.
2. Dataset Bias and Blur Pattern Discrepancies
Illustration of dataset-specific blur patterns, highlighting notable distribution differences in orientation, magnitude, and locality.
3. Effectiveness of Blur Pattern Pretraining (BPP)
| No. | Training set | BPP | RealBlur-J | BSD | RSBlur |
|---|---|---|---|---|---|
| (a) | RealBlur | 32.26 (↑0.17) / 0.93 (↑0.01) | 29.76 (↓3.99) / 0.92 (↓0.04) | 30.28 (↓2.70) / 0.89 (↓0.04) | |
| (b) | BSD | 29.95 (↓2.14) / 0.90 (↓0.02) | 34.21 (↑0.46) / 0.96 (±0.00) | 31.15 (↓1.83) / 0.90 (↓0.03) | |
| (c) | RSBlur | 30.63 (↓1.46) / 0.90 (↓0.02) | 31.22 (↓2.53) / 0.95 (↓0.01) | 33.69 (↑0.71) / 0.94 (↑0.01) | |
| (d) | RealBlur + BSD + RSBlur | 30.83 (↓1.26) / 0.89 (↓0.03) | 31.99 (↓1.76) / 0.95 (↓0.01) | 31.24 (↓1.74) / 0.90 (↓0.03) | |
| (e) | RealBlur + BSD + RSBlur | 32.11 (↑0.02) / 0.93 (↑0.01) | 33.62 (↓0.13) / 0.96 (±0.00) | 33.65 (↑0.67) / 0.94 (↑0.01) | |
| Best same-dataset performance | -- | 32.09 / 0.92 | 33.75 / 0.96 | 32.98 / 0.93 |
BPP consistently boosts performance and resolves domain conflicts in mixed training.
Overview of GLOWDeblur
Overview of GLOWDeblur. The framework integrates a Pre-Reconstruction & Domain-Alignment module with a lightweight diffusion framework, guided by motion maps and cross-modal text semantics. Training involves pre-training on datasets with diverse blur patterns, followed by joint fine-tuning on real-captured datasets.
Quantitative Comparison
Quantitative comparison with SOTA deblur models across real-world datasets RWBI and RWBlur400
| Dataset | Metrics | Restormer | Restormer* | HI-Diff | DiffIR | MISC-Filter | MLWNet | FPro | Diff-Plugin | Ours |
|---|---|---|---|---|---|---|---|---|---|---|
| RWBI | MANIQA ↑ | 0.501 | 0.522 | 0.554 | 0.494 | 0.492 | 0.565 | 0.483 | 0.460 | 0.635 |
| LIQE ↑ | 1.846 | 2.180 | 2.875 | 1.807 | 2.150 | 3.068 | 1.771 | 1.371 | 3.732 | |
| NRQM ↑ | 5.433 | 5.608 | 5.879 | 5.457 | 5.079 | 6.185 | 5.474 | 5.028 | 6.393 | |
| CLIP-IQA ↑ | 0.257 | 0.283 | 0.372 | 0.256 | 0.301 | 0.424 | 0.236 | 0.234 | 0.474 | |
| PI ↓ | 5.291 | 5.133 | 4.993 | 5.353 | 5.468 | 4.459 | 5.182 | 5.670 | 4.789 | |
| BRISQUE ↓ | 39.945 | 39.192 | 40.674 | 42.319 | 43.271 | 37.403 | 39.581 | 40.488 | 36.625 | |
| NIQE ↓ | 5.682 | 5.545 | 5.589 | 5.831 | 5.793 | 4.886 | 5.550 | 5.988 | 4.796 | |
| ILNIQE ↓ | 40.760 | 37.569 | 37.047 | 41.304 | 38.705 | 34.259 | 40.208 | 47.048 | 33.271 | |
| RWBlur400 | MANIQA ↑ | 0.509 | 0.530 | 0.490 | 0.493 | 0.455 | 0.517 | 0.481 | 0.497 | 0.604 |
| LIQE ↑ | 1.746 | 1.893 | 2.041 | 1.983 | 1.780 | 2.136 | 1.844 | 1.808 | 2.390 | |
| NRQM ↑ | 4.956 | 5.471 | 5.411 | 5.747 | 4.901 | 5.736 | 5.783 | 5.660 | 6.746 | |
| CLIP-IQA ↑ | 0.333 | 0.352 | 0.367 | 0.339 | 0.305 | 0.362 | 0.313 | 0.360 | 0.459 | |
| PI ↓ | 4.788 | 4.734 | 4.990 | 4.578 | 5.236 | 4.461 | 4.520 | 4.649 | 3.786 | |
| BRISQUE ↓ | 41.083 | 40.620 | 43.704 | 34.578 | 46.365 | 41.043 | 31.025 | 30.259 | 27.956 | |
| NIQE ↓ | 4.971 | 4.817 | 5.229 | 4.751 | 5.204 | 4.575 | 4.609 | 4.777 | 4.576 | |
| ILNIQE ↓ | 31.732 | 31.796 | 34.968 | 32.232 | 34.699 | 32.491 | 32.749 | 33.989 | 29.809 |
Note: Quantitative comparison with SOTA deblur models across real-world datasets RWBI and RWBlur400. Higher values are better for ↑ metrics, lower for ↓. Since these datasets lack ground-truth annotations, only no-reference metrics are reported. Red indicates the best result, and Blue indicates the second best.
Quantitative comparison with state-of-the-art deblurring methods on six widely used benchmarks
| Dataset | Metrics | Restormer* | HI-Diff | DiffIR | MISC-Filter | MLWNet | FPro | Diff-Plugin | Ours |
|---|---|---|---|---|---|---|---|---|---|
| GoPro | PSNR ↑ | 33.07 | 33.33 | 33.20 | 34.10 | 24.60 | 33.05 | 25.64 | 25.21 |
| SSIM ↑ | 0.943 | 0.964 | 0.963 | 0.969 | 0.83 | 0.943 | 0.793 | 0.787 | |
| MANIQA ↑ | 0.353 | 0.492 | 0.535 | 0.458 | 0.497 | 0.518 | 0.346 | 0.538 | |
| LIQE ↑ | 1.455 | 1.350 | 1.589 | 1.172 | 1.353 | 1.491 | 1.092 | 1.502 | |
| NRQM ↑ | 4.748 | 5.047 | 5.051 | 4.339 | 4.750 | 4.915 | 3.886 | 5.252 | |
| CLIP-IQA ↑ | 0.243 | 0.250 | 0.258 | 0.214 | 0.257 | 0.250 | 0.190 | 0.239 | |
| PI ↓ | 5.308 | 5.159 | 5.135 | 5.464 | 5.363 | 5.151 | 6.202 | 4.846 | |
| BRISQUE ↓ | 46.715 | 46.418 | 46.721 | 46.095 | 49.638 | 49.121 | 51.018 | 39.732 | |
| NIQE ↓ | 5.534 | 5.504 | 5.466 | 5.461 | 5.650 | 5.377 | 6.146 | 5.120 | |
| ILNIQE ↓ | 33.354 | 32.710 | 33.408 | 33.071 | 32.535 | 32.701 | 42.474 | 26.464 | |
| HIDE | PSNR ↑ | 31.81 | 31.46 | 31.55 | 31.66 | 23.95 | 30.70 | 23.95 | 24.12 |
| SSIM ↑ | 0.933 | 0.945 | 0.947 | 0.946 | 0.819 | 0.921 | 0.763 | 0.763 | |
| MANIQA ↑ | 0.453 | 0.535 | 0.592 | 0.498 | 0.509 | 0.572 | 0.362 | 0.583 | |
| LIQE ↑ | 1.113 | 1.621 | 1.977 | 1.236 | 1.392 | 1.803 | 1.061 | 1.788 | |
| NRQM ↑ | 3.916 | 5.613 | 6.104 | 4.731 | 5.129 | 6.028 | 4.323 | 6.210 | |
| CLIP-IQA ↑ | 0.187 | 0.227 | 0.229 | 0.179 | 0.224 | 0.215 | 0.158 | 0.212 | |
| PI ↓ | 6.302 | 4.837 | 4.354 | 5.278 | 5.085 | 4.308 | 5.773 | 4.244 | |
| BRISQUE ↓ | 52.830 | 43.605 | 41.045 | 45.919 | 48.277 | 42.970 | 40.716 | 36.687 | |
| NIQE ↓ | 6.558 | 5.254 | 4.803 | 5.318 | 5.348 | 4.624 | 5.528 | 4.673 | |
| ILNIQE ↓ | 36.248 | 31.246 | 29.788 | 29.985 | 30.702 | 28.224 | 40.744 | 24.176 | |
| REDS | PSNR ↑ | 34.207 | 25.760 | 26.78 | 27.58 | 27.60 | 26.96 | 26.27 | 26.21 |
| SSIM ↑ | 0.938 | 0.779 | 0.819 | 0.832 | 0.851 | 0.840 | 0.771 | 0.770 | |
| MANIQA ↑ | 0.536 | 0.630 | 0.626 | 0.607 | 0.647 | 0.613 | 0.518 | 0.642 | |
| LIQE ↑ | 1.435 | 2.530 | 2.293 | 2.065 | 2.664 | 2.097 | 1.520 | 2.570 | |
| NRQM ↑ | 4.886 | 6.849 | 7.014 | 6.541 | 6.954 | 6.809 | 6.384 | 7.352 | |
| CLIP-IQA ↑ | 0.271 | 0.305 | 0.287 | 0.268 | 0.322 | 0.269 | 0.228 | 0.351 | |
| PI ↓ | 5.335 | 3.379 | 3.391 | 3.546 | 3.293 | 3.481 | 4.160 | 3.035 | |
| BRISQUE ↓ | 43.364 | 28.061 | 26.452 | 30.115 | 31.448 | 28.533 | 27.867 | 25.695 | |
| NIQE ↓ | 5.660 | 3.899 | 3.973 | 3.894 | 3.851 | 3.966 | 4.620 | 3.694 | |
| ILNIQE ↓ | 29.305 | 23.784 | 23.269 | 23.083 | 22.369 | 23.236 | 27.088 | 19.357 | |
| RealBlur-J | PSNR ↑ | 31.131 | 29.15 | 25.37 | 33.88 | 33.84 | 27.90 | 26.25 | 27.55 |
| SSIM ↑ | 0.917 | 0.890 | 0.825 | 0.938 | 0.941 | 0.873 | 0.79 | 0.811 | |
| MANIQA ↑ | 0.472 | 0.629 | 0.571 | 0.602 | 0.615 | 0.544 | 0.467 | 0.613 | |
| LIQE ↑ | 2.356 | 2.646 | 1.949 | 2.386 | 2.578 | 1.735 | 1.243 | 2.439 | |
| NRQM ↑ | 5.150 | 5.870 | 5.517 | 5.365 | 5.685 | 5.361 | 4.283 | 5.633 | |
| CLIP-IQA ↑ | 0.262 | 0.279 | 0.247 | 0.251 | 0.274 | 0.212 | 0.208 | 0.274 | |
| PI ↓ | 5.235 | 4.651 | 4.934 | 5.011 | 4.869 | 5.013 | 5.965 | 4.787 | |
| BRISQUE ↓ | 49.636 | 46.799 | 40.207 | 46.610 | 48.970 | 42.742 | 42.401 | 35.895 | |
| NIQE ↓ | 5.708 | 5.182 | 5.258 | 5.341 | 5.370 | 5.256 | 5.963 | 5.128 | |
| ILNIQE ↓ | 34.999 | 33.380 | 31.848 | 34.550 | 33.588 | 32.580 | 37.317 | 27.548 | |
| BSD | PSNR ↑ | 30.410 | 28.66 | 27.97 | 29.53 | 28.82 | 26.64 | 27.67 | 29.56 |
| SSIM ↑ | 0.923 | 0.907 | 0.885 | 0.923 | 0.910 | 0.885 | 0.862 | 0.893 | |
| MANIQA ↑ | 0.571 | 0.565 | 0.362 | 0.510 | 0.536 | 0.461 | 0.427 | 0.568 | |
| LIQE ↑ | 2.325 | 2.452 | 1.048 | 1.742 | 2.132 | 1.479 | 1.296 | 2.348 | |
| NRQM ↑ | 4.927 | 5.806 | 4.634 | 4.772 | 5.229 | 5.141 | 4.433 | 5.096 | |
| CLIP-IQA ↑ | 0.279 | 0.283 | 0.188 | 0.234 | 0.264 | 0.179 | 0.195 | 0.282 | |
| PI ↓ | 5.800 | 5.189 | 6.100 | 5.819 | 5.560 | 5.934 | 6.422 | 5.589 | |
| BRISQUE ↓ | 47.363 | 39.518 | 24.113 | 46.358 | 46.388 | 29.108 | 36.347 | 40.514 | |
| NIQE ↓ | 5.799 | 5.464 | 6.469 | 5.758 | 5.721 | 5.881 | 6.569 | 5.455 | |
| ILNIQE ↓ | 42.040 | 38.708 | 31.513 | 41.328 | 40.506 | 37.435 | 50.182 | 39.383 | |
| RSBlur | PSNR ↑ | 29.27 | 29.47 | 22.48 | 29.98 | 30.91 | 26.19 | 27.82 | 28.85 |
| SSIM ↑ | 0.864 | 0.875 | 0.651 | 0.887 | 0.818 | 0.833 | 0.821 | 0.820 | |
| MANIQA ↑ | 0.442 | 0.452 | 0.362 | 0.420 | 0.415 | 0.398 | 0.441 | 0.533 | |
| LIQE ↑ | 1.342 | 1.124 | 1.048 | 1.069 | 1.111 | 1.018 | 1.015 | 1.404 | |
| NRQM ↑ | 3.769 | 3.817 | 4.634 | 3.523 | 3.642 | 5.520 | 4.357 | 5.597 | |
| CLIP-IQA ↑ | 0.262 | 0.246 | 0.188 | 0.204 | 0.248 | 0.170 | 0.169 | 0.236 | |
| PI ↓ | 6.427 | 6.851 | 6.100 | 6.820 | 7.065 | 6.296 | 6.677 | 4.980 | |
| BRISQUE ↓ | 52.768 | 50.286 | 24.113 | 54.119 | 58.433 | 39.250 | 21.942 | 30.677 | |
| NIQE ↓ | 6.522 | 7.348 | 6.469 | 6.943 | 7.532 | 7.533 | 6.840 | 5.292 | |
| ILNIQE ↓ | 32.349 | 37.794 | 31.513 | 36.354 | 39.651 | 36.035 | 41.705 | 25.833 |
Note: Quantitative comparison with state-of-the-art deblurring methods on six widely used benchmarks. Higher values indicate better performance for ↑ metrics, and lower values for ↓. Red indicates the best result, and Blue indicates the second best.
Qualitative Comparison
Qualitative comparison on Real-World Dataset.
Visual results of deblurring complex motion patterns.
Ablation study visualization.
Additional comparison result 4.
Additional comparison result 5.
Additional comparison result 6.
BibTeX
@article{gao2024toward,
title={Toward Generalizable Deblurring: Leveraging Massive Blur Priors with Linear Attention for Real-World Scenarios},
author={Gao, Yuanting and Cao, Shuo and Li, Xiaohui and Pu, Yuandong and Liu, Yihao and Zhang, Kai},
journal={Conference Name},
year={2024}
}