基于多尺度大气光的夜间去雾算法设计与实现

1. 算法核心思想

针对夜间场景中人工光源干扰、环境光分布不均及噪声显著的特点,提出多尺度大气光估计与自适应透射率优化的夜间去雾框架。通过融合低频环境光分布与高频细节特征,解决传统方法在夜间场景中的伪光晕、色彩失真和细节丢失问题。


2. 关键技术模块

2.1 多尺度环境光估计
  • 小波金字塔分解:将图像分解为多尺度子带(低频/中频/高频)

    [cA, cH, cV, cD] = dftmtx2(Img, 3);  % 三级小波分解
    
  • 局部环境光建模: 低频子带(cA):估计全局大气光分布 中频子带(cH/cV):捕捉光源扩散效应 高频子带(cD):抑制噪声干扰

2.2 自适应大气光融合
  • 加权融合策略

    A_fused = (0.6*cA + 0.3*cH + 0.1*cD);  % 动态权重调整
    
  • 非局部均值优化:消除孤立噪声点

    A_denoised = nlfilter(A_fused, [5,5], @(x) mean(x(:)));
    
2.3 多尺度透射率估计
  • 暗通道先验改进

    dark_channel = min(Img(:,:,1:3), [], 3);
    t = 1 - 0.95*(dark_channel/max(dark_channel(:)));
    
  • 边缘增强处理

    G = fspecial('unsharp');  % 锐化滤波器
    t_enhanced = imfilter(t, G, 'replicate');
    
2.4 复原模型优化
  • 改进大气散射模型

    J = (Img - A_fused)./(t + eps) + A_fused;
    
  • 颜色校正

    J = lab2rgb(rgb2lab(J));  // Lab空间色彩校正
    

3. 核心创新点

3.1 动态环境光建模
  • 多尺度权重分配:根据雾浓度自适应调整各尺度贡献度

    weight = exp(-0.1*std(cA(:)));  % 雾浓度与权重负相关
    
  • 光源方向估计:通过梯度方向场识别主要光源位置

3.2 混合滤波策略
  • 空间域约束:引导滤波保持边缘

    t_guided = guided_filter(Img, t, 8, 0.01);
    
  • 频域优化:小波阈值去噪

    [thr, sorh, keepapp] = wdencmp('gbl', t, 'sym4', 2, 0.1, 's');
    
3.3 色彩恢复机制
  • Retinex理论改进:分离光照与反射分量

    [L, R] = Retinex(J(:,:,1));  // 单通道Retinex处理
    
  • 自适应饱和度增强

    S = hsv2rgb(hsv(J));  // HSV空间饱和度调整
    

4. MATLAB实现代码

function dehazed = multi_scale_dehaze(Img)
    % 参数设置
    levels = 3;  % 分解层数
    lambda = 0.1;  // 正则化参数
    
    % 多尺度分解
    [cA, cH, cV, cD] = dftmtx2(Img, levels);
    
    % 环境光估计
    A_low = medfilt2(cA, [5,5]);
    A_med = wiener2(cH, [3,3]);
    A_high = imgaussfilt(cD, 1);
    
    % 自适应融合
    weight = [0.6, 0.3, 0.1];
    A = weight(1)*A_low + weight(2)*A_med + weight(3)*A_high;
    
    % 透射率估计
    dark = min(Img(:,:,1:3), [], 3);
    t = 1 - 0.95*(dark/max(dark(:)));
    t = guided_filter(Img, t, 8, 0.01);
    
    % 图像复原
    J = (Img - A)./max(t, 0.1) + A;
    
    % 色彩校正
    J = hsv2rgb(rgb2hsv(J));
    dehazed = imadjust(J);
end

参考代码 基于多尺度大气光的夜间去雾算法 www.youwenfan.com/contentcni/65716.html

5. 应用场景优化

5.1 低能见度监控
  • 动态范围扩展:处理10-3至102 lx照度范围
  • 实时性优化:GPU加速后达30fps(NVIDIA Jetson平台)
5.2 自动驾驶系统
  • 障碍物检测:结合YOLOv5实现雾天目标识别
  • 深度估计:利用立体视觉补偿大气散射误差
5.3 航空摄影测量
  • 地形重建:与SFM算法融合提升精度
  • 动态目标跟踪:卡尔曼滤波优化运动轨迹
posted @ 2025-10-13 10:19  yijg9998  阅读(26)  评论(0)    收藏  举报