matlab显示图像只有一半,我去噪后图像为什么只显示一半
我去噪后圖像為什么只顯示一半
i=imread('lena.png');
subplot(2,2,1);
imshow(i);
title('原始圖像');
%生成含噪圖像并顯示
j=imnoise(i,'gaussian',0,0.001);
subplot(2,2,2);
imshow(j);
title('含噪圖像');
%用sym4小波函數對j進行2層分解
[c,l]=wavedec2(j,2,'sym4');
%實現低通濾波消噪
a1=uint8(wrcoef2('a',c,l,'sym4',2));
%用coif2小波函數對j進行2層分解
[gc,gl]=wavedec2(a1,2,'coif2');
n=[1,2];%設置尺度向量
p=[10.28,24.08];%設置閾值向量
%對三個高頻系數進行閾值處理
nc=wthcoef2('h',gc,gl,n,p,'s');
nc=wthcoef2('v',gc,gl,n,p,'s');
nc=wthcoef2('d',gc,gl,n,p,'s');
mc=wthcoef2('h',gc,gl,n,p,'s');
mc=wthcoef2('v',gc,gl,n,p,'s');
mc=wthcoef2('d',gc,gl,n,p,'s');
%對更新后的小波分解結構進行閾值處理
x2=waverec2(mc,gl,'coif2');
%進行中值濾波
for ii=1:252;
for jj=1:252;
temp=0;
for m=0:3
for n=0:3
temp=temp+double(x2(ii+m,jj+n));
end
end
temp=temp/16;
x4(ii,jj)=temp;
end
end
for ii=253:256
for jj=253:256
x4(ii,jj)=double(i(ii,jj));
end
end
%顯示去噪圖像
subplot(2,2,3);
imshow(uint8(x4));
title('消噪圖像');
此帖于 2009-08-10 08:46 PM 被 0377lilitian 編輯。
原因: 加圖片
總結
以上是生活随笔為你收集整理的matlab显示图像只有一半,我去噪后图像为什么只显示一半的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 只应对不预测、减少焦虑
- 下一篇: 对倒立摆的LQR控制