基于Lucy-Richardson算法的散焦模糊图像参数估计与复原系统
项目简介
本项目实现了一套完整的散焦模糊图像恢复解决方案。系统利用MATLAB构建了一个闭环的仿真环境,涵盖了从高质量清晰图像生成、光学散焦与噪声模拟、频域特征分析、散焦参数自动估计,到最终使用Lucy-Richardson算法进行图像复原的全过程。该系统的核心在于利用频域中的暗环特征自动测定点扩散函数(PSF)的散焦半径,从而实现非盲或者半盲的图像去卷积复原。
功能特性
- 全流程仿真模拟:内置合成图像生成器,能够自动生成包含几何形状(矩形、圆形)、网格线条和模拟文字的高对比度测试图像,并模拟真实的光学散焦和传感器高斯噪声。
- 频域深度分析:对图像进行二维离散傅里叶变换(DFT),计算并可视化对数幅度谱和倒频谱(Cepstrum),直观展示散焦模糊在频域的特征。
- 散焦半径自动估计:通过计算频谱的径向平均功率谱,自动检测频域中的“暗环”(Dark Ring)位置,进而根据Bessel函数零点特性估算散焦半径。
- 鲁棒的图像复原:基于估计的PSF,使用Lucy-Richardson最大似然迭代算法进行反卷积,通过边缘由于(tapering)处理抑制边界振铃效应。
- 客观质量评价:自动计算并对比复原前后图像的峰值信噪比(PSNR)和结构相似性(SSIM),量化评估复原算法的性能。
系统要求
- MATLAB R2016a 或更高版本
- Image Processing Toolbox(图像处理工具箱)
系统实现逻辑与流程详解
本系统的主程序通过顺序执行以下五个主要步骤完成复原任务:
1. 图像获取与预处理
系统首先通过内部函数生成一张512x512像素的合成图像作为真值(Ground Truth)。随后,根据预设的真实散焦半径(默认为5.0像素)构建盘形(Disk)点扩散函数,对图像进行卷积操作以模拟光学散焦。最后,根据设定的信噪比(默认为30dB)向模糊图像中添加高斯白噪声,以模拟真实的成像环境。
2. 频域分析与可视化
系统对模糊带噪图像执行二维快速傅里叶变换(FFT2),并进行频谱中心化处理。为了便于观察,系统计算频谱的对数幅度,并进一步计算倒频谱(Cepstrum)。程序会弹出一个窗口,并排显示二维频谱的对数幅度图和倒频谱图,直观展示频域能量分布。
3. 散焦参数估计(核心算法)
这是系统的关键环节。程序通过以下逻辑自动估计散焦半径:
- 径向平均:将二维频谱转换为一维的径向平均功率谱曲线,以降低噪声影响并突出特定频率的特征。
- 平滑处理:对径向谱曲线进行移动平均滤波,去除高频波动。
- 暗环检测:计算平滑曲线的差分,寻找曲线的第一个显著极小值点(波谷)。这个波谷对应于散焦模糊在频域产生的第一个零点(暗环)。
- 半径计算:根据物理光学原理,利用第一个暗环的位置 $k_0$ 和图像尺寸 $N$,通过公式 $R approx 0.61 times N / k_0$ 反算出估计的散焦半径。
4. Lucy-Richardson 图像复原
利用上一步估计得到的散焦半径,系统构建估计的PSF模型。为了防止估计误差导致程序崩溃,系统对半径进行了安全范围限制(1到20像素)。复原过程采用Lucy-Richardson算法:
- 预处理:使用
edgetaper 函数对模糊图像边缘进行模糊化处理,以减少反卷积在图像边界产生的振铃效应。 - 迭代反卷积:执行25次迭代运算,逐步逼近清晰图像。系统设置了阻尼阈值(Damping Threshold)以抑制噪声的过度放大。
5. 效果评估与展示
系统内置了自定义的PSNR和SSIM计算函数(不完全依赖工具箱版本),分别计算模糊图像和复原后图像相对于原始真值的质量指标。最后,系统通过一个综合绘图窗口展示三个部分:原始清晰图像、散焦模糊图像(附带指标)、L-R算法复原结果(附带指标及估计半径),实现了结果的可视化对比。
关键算法与代码细节分析
径向平均计算 (Radial Average Computation)
代码中实现了一个将笛卡尔坐标系的二维频谱转换为极坐标系下一维曲线的算法。它通过计算图像中每个像素点到中心的欧几里得距离,利用
accumarray 高效地计算同一半径下所有频域幅值的平均值。这使得在含噪图像中检测暗环变得更加可靠。
结构相似性 (SSIM) 实现
为了保证代码的独立性和跨版本兼容性,代码内部手动实现了SSIM算法。该实现包含了亮度、对比度和结构三个分量的比较,使用了高斯加权窗口来计算局部的均值、方差和协方差,能够比单纯的均方误差(MSE)更符合人眼的视觉感知特性。
暗环检测策略
代码采用简单的波谷检测法(导数符号变化检测)来寻找暗环。为了避免低频直流分量和近圆心处的高能信息干扰,算法设置了
search_start_idx(搜索起始索引),跳过了频谱中心的极低频区域,确保检测到的是真正的光学传递函数(OTF)零点而非图像内容的特征。
使用说明
直接运行主程序即可启动整个仿真流程。控制台将输出每一步的执行状态,包括检测到的暗环位置、真实半径与估计半径的对比、以及最终的图像质量评分。执行完毕后,屏幕将显示三个主要图形窗口,分别用于图像对比、频域分析和参数估计曲线展示。