資源簡介
針對傳統小波閾值函數的缺點,提出改進的閾值函數,代碼實現
代碼片段和文件信息
%?軟閾值,硬閾值及改進的閾值小波圖像去噪方法比較
%?采用全局閾值,各層的閾值一樣
%%?==============初始化======
clcclear;close?all;
I?=?imread(‘lena.jpg‘);
I_noise??=?imnoise(I‘gaussian‘00.06);
I1_noise?=?double(I_noise);
figure(‘color‘‘w‘);
imshow(I);title(‘Original?Image‘)
figure(‘color‘‘w‘);
imshow(I_noise);title(‘Noisy?Image‘);axis?square;
w?=?‘bior2.4‘;%小波類型
N?=?2;%層數
%?------?小波分解?---
[cs]?=?wavedec2(I1_noiseNw);%s=n+2行
%?--------小波閾值獲取--------
c1?=?c;
i?=?prod(s(1:))+1:length(c);
h?=?length(c)-prod(s(N+1:));%D(1)的起點位置,即HH1
delta?=?median(abs(c(h:end)))/0.6745;%最高細節子帶小波系數絕對中值,即HH1噪聲標準差
[m1n1]?=?size(I);
n?=?prod([m1?n1]);
thr?=?delta*sqrt(2*log(n));
%%?======軟閾值去噪==============
sorh?=?‘s‘;
c1(i)?=?wthresh(c(i)sorhthr);?%
%?閾值去噪
Id?=?waverec2(c1sw);
%?[thrsorhkeepapp]?=?ddencmp(‘den‘‘wv‘I1_noise);
%?Id?=?wdencmp(‘gbl‘cswNthrsorhkeepapp);
figure(‘color‘‘w‘);
imshow(uint8(Id));title(‘soft?denoisy?Image‘)axis?off;
%%?=======硬閾值去噪結果==========
sorh?=?‘h‘;
c2?=?c;
c2(i)?=?wthresh(c(i)sor
- 上一篇:matlab程序信噪比
- 下一篇:QPSK調制解調+誤碼率統計+成型濾波+匹配濾波
評論
共有 條評論