www.gusucode.com > 《matlab图像处理与界面编程宝典》秦襄培 编著,每章的MATLAB源代码程序 > 第20章/代码20-4.txt

    
clear;                            % 清理工作空间
load wbarb;                       % 装载原始图像
figure;                           % 新建窗口
image(X);                        % 显示图像
colormap(map);                   % 设置色彩索引图
title('原始图像');                  % 设置图像标题
axis square;                     % 设置显示比例,生成含噪图像并图示
init=2055615866;                 % 初始值
randn('seed',init);                 % 随机值
XX=X+8*randn(size(X));           % 添加随机噪声
figure;                           % 新建窗口
image(XX);                       % 显示图像
colormap(map);                   % 设置色彩索引图
title('含噪图像');                   % 设置图像标题
axis square;                      %用小波函数coif2对图像XX进行2层分解
[c,l]=wavedec2(XX,2,'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');          % 图像的二维小波重构
figure;                           % 新建窗口
image(X1);                        % 显示图像
colormap(map);                    % 设置色彩索引图
title('第一次消噪后的图像');         % 设置图像标题  
axis square;                      % 设置显示比例,再次对高频小波系数进行阈值处理
%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');          % 图像的二维小波重构
figure;                            % 新建窗口
image(X2);                        % 显示图像
colormap(map);                    % 设置色彩索引图
title('第二次消噪后的图像');          % 设置图像标题
axis square;                       % 设置显示比例