图像增强序列——Naturalness Preserved Enhancement Algorithm for Non-Uniform Illumination Image

本文介绍了一种针对非均匀光照图像的自然度保持增强算法。该算法涉及亮通道处理、亮通滤波、权重直方图和累积分布函数(CDF)、对数直方图以及直方图均衡化等步骤。尽管实际效果与原文有所差距,但通过中值滤波的后续处理,可以改善由从PDF截图得到的图像质量。欢迎读者对编码实现提出指正。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 参考文献

2. 模型实现

% 论文: Naturalness Preserved Enhancement Algorithm for Non-Uniform Illumination Images
% 作者: Shuhang Wang, Hai-Miao Hu, Bo Li
% 链接:
% Author: HSW
% Date: 2018-04-29
%

clc;
close all;
clear;

img = imread('timg4.png');

[m, n, dims] = size(img);

downSample = 0;          % 对图像进行降采样
scale = 0.5;             % 降采样的比例
patchSize = 15;          % 公式(12)
patchSizeQ = 3;          % 公式(6)
neighborMode = 0;        % = 0 表示采用四邻域, = 1 表示采用8邻域
isPostProcess = 1;       % 是否进行中值滤波后处理
if dims == 3
    
    if downSample == 1
        m = uint8(m * scale);
        n = uint8(n * scale);
        img_in = imresize(img, [m, n]);
    else
        img_in = img;
    end
    
    figure;
    imshow(img_in, []);
    title('原图像');
    % 初始估计亮度: 用亮通道进行初步估计
    L_init = Illumination(img_in, 'max_c');
    
    figure;
    imshow(L_init, []);
    title('L_{init}');
    
    % 构造Bright-Pass Filter
    L_r = filter_BPF(L_init, patchSize, patchSizeQ, neighborMode);
    
    figure;
    imshow(L_r, []);
    title('L_{r}');
    
    % 公式(13)
    L_tmp = repmat(double(L_r), [1, 1, 3]);
    R_c = double(img_in) ./ (L_tmp + (L_tmp == 0) .* 0.001);
    
    % 公式(14)
    epsilon = 1;
    L_lg = log(double(L_r) + epsilon);
    
    figure;
    imshow(L_lg, []);
    title('L_{lg}');
    
    % 公式(17)
    [cLv, mp] = weight_hist(L_lg, L_r);
    
    % 公式(18) 和 (19)
    [cfz, sz] = log_hist();
    
    % 公式(22)
    L_m = filter_BLT(L_r, 
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值