matlab中的小波消噪,matlab小波分析在图像消噪中的应用实例

例一:利用小波分析给定一个二维含噪图像进行消噪处理

源程序如下:

clear all; %清楚所有变量

RGB=imread('5.bmp'); %读取MATLAB目录下的测试图片 名为:5.bmp

[x,map]=rgb2ind(RGB,128); %把真彩色图像RGB转换为索引图像

subplot(2,2,1);

image(x);

colormap(map);

title('原始的图像');

init=2055615866; %加入噪声

rand('seed',init);

X=double(x);

XX=X+randn(size(x))/10;

subplot(2,2,2);

image(XX);

colormap(map);

title('含噪声的图像');

[c,l]=wavedec2(XX,2,'sym5'); %进行小波分析

a1=wrcoef2('a',c,l,'sym5',1);

a2=wrcoef2('a',c,l,'sym5',2);

subplot(2,2,3);

image(a1);

colormap(map);

title('第一层的重构图像');

subplot(2,2,4);

image(a2);

colormap(map);

title('第二层的重构图像');

试验结果的图片:

747bbaf59e7e143d0ee95dd97b61e6b1.png

例一:利用小波分析给定一个二维含噪图像进行消噪处理例二:利用二维小波变换给定图像进行小波消噪处理

例二:利用二维小波变换给定图像进行小波消噪处理

clear all

RGB=imread('5.bmp');

[x,map]=rgb2ind(RGB,128);

subplot(2,2,1);

image(x);

colormap(map);

title('原始图像');

init=2055615866;

rand('seed',init);

X=double(x);

XX=X+randn(size(x))/10;

subplot(2,2,2);

image(XX);

colormap(map);

title('含噪图像');

[c,l]=wavedec2(XX,3,'coif2');

n=[1,2];

p=[10.28,24.08];

%nc=wthcoef2('h',c,l,n,p,'s');

%nc=wthcoef2('v',c,l,n,p,'s');

nc=wthcoef2('d',c,l,n,p,'s');

X1=waverec2(nc,l,'coif2');

subplot(2,2,3);

image(X1);

colormap(map);

%mc=wthcoef2('h',nc,l,n,p,'s');

mc=wthcoef2('v',nc,l,n,p,'s');

%mc=wthcoef2('d',nc,l,n,p,'s');

X2=waverec2(mc,l,'coif2');

subplot(2,2,4);

image(X2);

colormap(map);

title('第二次消噪后的图像');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值