ttksd 发表于 2016-4-5 16:01

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

  例一:利用小波分析给定一个二维含噪图像进行消噪处理
  源程序如下:
  clear all; %清楚所有变量

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

  =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('含噪声的图像');

  =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('第二层的重构图像');
  试验结果的图片:


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

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

  RGB=imread('5.bmp');

  =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('含噪图像');

  =wavedec2(XX,3,'coif2');

  n=;

  p=;

  %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('第二次消噪后的图像');


转自:http://www.zhixing123.cn/matlab/23150.html

页: [1]
查看完整版本: matlab小波分析在图像消噪中的应用实例