【图像去噪】基于matlab改进非局部均值红外图像混合噪声【含Matlab源码 1640期】
【摘要】
一、全变分算法简介
传统的去噪算法无法有效去除红外图像中的条纹与随机混合噪声。针对这一问题,提出了一种改进的基于非局部均值(NL-means)的混合噪声去除方法。首先,分析了非局部均值算法处理混合噪声的...
一、全变分算法简介
传统的去噪算法无法有效去除红外图像中的条纹与随机混合噪声。针对这一问题,提出了一种改进的基于非局部均值(NL-means)的混合噪声去除方法。首先,分析了非局部均值算法处理混合噪声的问题,并用一组实验分析了红外图像块中混合噪声的特性。根据实验结果,文中用有色高斯模型对混合噪声进行建模,并基于Mahalanobis距离改进了传统的基于欧氏距离的块相似性度量方法,使之对图像中不同复杂程度的区域进行自适应。仿真和真实数据实验均表明:文中算法相比于传统的图像去噪算法,能较好地去除条纹与随机混合噪声。
二、部分源代码
function cnlmdenoisedemo
%CNLMDENOISEDEMO CNLM denoising method.
% CNLMDENOISEDEMO reads an image, adds random stripe and white noise and denoises it
% using CNLM denoising.
%
% To run the demo, type CNLMDENOISEDEMO from the Matlab prompt.
disp(' ');
disp(' ********** CNLM Denoising Demo **********');
disp(' ');
disp(' This demo reads an image, adds random Stripe and White mixed Gaussian noise.');
disp(' The mixed noise will be removed using an improved NLM method (CNLM).');
disp(' The denoised image will be shown.');
disp(' ');
%% prompt user for image %%
addpath('.\functions')
im = readImage('cnlmdenoisedemo');
%% generate noisy image %%
sigma_white = 5;
sigma_stripe = 5;
disp(' ');
disp('Generating mixed noisy image...');
n = randn(size(im)) * sigma_white;
n = n + repmat(randn(1, size(im, 2)), size(im, 1), 1) .* sigma_stripe;
imnoise = im + n;
% denoise!
disp('Performing CNLM denoising...');
[dI] = CNLM(imnoise, 2, 5);
% show results %
figure; imshow(newlp(im));
title('Original image');
figure; imshow(newlp(imnoise));
title('Noisy image')
% title(sprintf('Noisy image, PSNR = %.2fdB', 20*log10(params.maxval * sqrt(numel(im)) / norm(im(:)-imnoise(:))) ));
figure; imshow(newlp(dI));
% title(sprintf('Denoised image, PSNR: %.2fdB', 20*log10(params.maxval * sqrt(numel(im)) / norm(im(:)-imout(:))) ));
title('Denoised image')
figure; imshow(newlp(n))
title('Extracted mixed noise')
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
三、运行结果
四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 蔡利梅.MATLAB图像处理——理论、算法与实例分析[M].清华大学出版社,2020.
[2]杨丹,赵海滨,龙哲.MATLAB图像处理实例详解[M].清华大学出版社,2013.
[3]周品.MATLAB图像处理与图形用户界面设计[M].清华大学出版社,2013.
[4]刘成龙.精通MATLAB图像处理[M].清华大学出版社,2015.
[5]李方舟, 赵耀宏, 向伟, 刘海峥. 基于改进非局部均值的红外图像混合噪声去除方法[J]. 红外与激光工程, 2019
文章来源: qq912100926.blog.csdn.net,作者:海神之光,版权归原作者所有,如需转载,请联系作者。
原文链接:qq912100926.blog.csdn.net/article/details/122156736
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)