如何对小波包分解与重构变换分解的第N层的低频部分进行重构

查看: 4519|回复: 12|关注: 0
图像小波分解后重构问题
关注者: 1
本帖最后由 yjccao123 于
15:46 编辑
我对一幅图进行三层小波分解,然后对其中的高频系数与低频系数进行了处理,我想利用新得到的这些系数矩阵重构出和原图像大小相同的图像,该怎么做?[C,S]=wavedec2(X,3,'db1');& &%对图像三级分解
ca1 = appcoef2(C,S,'db1',1);&&%提取尺度1的低频系数
ch1 = detcoef2('h',C,S,1);& & %提取尺度1的水平方向高频系数
cv1 = detcoef2('v',C,S,1);& & %提取尺度1的垂直方向高频系数
cd1= detcoef2('d',C,S,1);& &&&%提取尺度1的斜线方向高频系数
ca2 = appcoef2(C,S,'db1',2);
ch2 = detcoef2('h',C,S,2);
cv2 = detcoef2('v',C,S,2);
cd2= detcoef2('d',C,S,2);
ca3 = appcoef2(C,S,'db1',3);
ch3 = detcoef2('h',C,S,3);
cv3 = detcoef2('v',C,S,3);
cd3= detcoef2('d',C,S,3);
%%对上面12个系数矩阵进行处理
....复制代码本人刚学小波变换,希望各位大牛不吝赐教
sf, 表示不会
你已经得到了各个分量了,直接用这个函数
wrcoef2: 利用某个高频分量重建图像(与原图像图等大小)&&
关注者: 1
问题解决了,用的方法比较麻烦,希望能帮到一些同样困惑的朋友~
因为我小波分解都是用的matlab自带的工具箱
所以就基于小波分解函数 [C,S] = wavedec2(X,N,'wname') 来进行分析
这个函数的详细分析可以看这篇文章
(好吧,还不让发链接,哭了~~~~~~~)
百度搜索:wavedec2函数详解
了解了C和S具体的含义和内部结构之后,我们就可以进行还原了
我们都知道matlab自带的重构函数应该是这个 X = waverec2(C,S,'wname')
因此,如果想用这个函数对改动后的低频高频系数进行重构,必须改变C或者S的值
既然你了解了C与S表示什么意思,这个步骤就非常简单了
这个是我写的代码,供大家学习使用,里面有些不完善的地方,欢迎指正:%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 对小波分解后的低频系数,高频系数处理后的重构
%% 本例针对彩色图像
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear all
clc
M1=double(imread('lena.jpg'))/255;
zt=3;& && && && &%小波分解级数
wtype = 'haar';&&%小波分解类型
[C,S] = wavedec2(M1, zt, wtype);%多尺度二维小波分解
%% 尺度1低频与高频系数提取
ca1 = appcoef2(C,S,wtype,1);&&%提取尺度1的低频系数
ch1 = detcoef2('h',C,S,1);& & %提取尺度1的水平方向高频系数
cv1 = detcoef2('v',C,S,1);& & %提取尺度1的垂直方向高频系数
cd1= detcoef2('d',C,S,1);& &&&%提取尺度1的斜线方向高频系数
%% 尺度2低频与高频系数提取
ca2 = appcoef2(C,S,wtype,2);&&%提取尺度2的低频系数
ch2 = detcoef2('h',C,S,2);& & %提取尺度2的水平方向高频系数
cv2 = detcoef2('v',C,S,2);& &%提取尺度2的垂直方向高频系数
cd2= detcoef2('d',C,S,2);& & %提取尺度2的斜线方向高频系数
%% 尺度3低频与高频系数提取
ca3 = appcoef2(C,S,wtype,3); %提取尺度3的低频系数
ch3 = detcoef2('h',C,S,3);& &%提取尺度3的水平方向高频系数
cv3 = detcoef2('v',C,S,3);& &%提取尺度3的垂直方向高频系数
cd3= detcoef2('d',C,S,3);& & %提取尺度3的斜线方向高频系数
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 下面对这些系数矩阵进行处理,为了调试方便起见,我们对高频系数的进行去噪
%% 对低频系数不进行处理(另外由于C中只有尺度3的低频系数,因此处理低频系数要处理尺度3的)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 对尺度1的高频系数去噪
d_ch1(:,:,1)=wiener2(ch1(:,:,1),[5 5]);
d_ch1(:,:,2)=wiener2(ch1(:,:,2),[5 5]);
d_ch1(:,:,3)=wiener2(ch1(:,:,3),[5 5]); %水平方向去噪
d_cv1(:,:,1)=wiener2(cv1(:,:,1),[5 5]);
d_cv1(:,:,2)=wiener2(cv1(:,:,2),[5 5]);
d_cv1(:,:,3)=wiener2(cv1(:,:,3),[5 5]); %垂直方向去噪
d_cd1(:,:,1)=wiener2(cd1(:,:,1),[5 5]);
d_cd1(:,:,2)=wiener2(cd1(:,:,2),[5 5]);
d_cd1(:,:,3)=wiener2(cd1(:,:,3),[5 5]); %斜线方向去噪
%% 对尺度2的高频系数去噪
d_ch2(:,:,1)=wiener2(ch2(:,:,1),[3 3]);
d_ch2(:,:,2)=wiener2(ch2(:,:,2),[3 3]);
d_ch2(:,:,3)=wiener2(ch2(:,:,3),[3 3]); %水平方向去噪
d_cv2(:,:,1)=wiener2(cv2(:,:,1),[3 3]);
d_cv2(:,:,2)=wiener2(cv2(:,:,2),[3 3]);
d_cv2(:,:,3)=wiener2(cv2(:,:,3),[3 3]); %垂直方向去噪
d_cd2(:,:,1)=wiener2(cd2(:,:,1),[3 3]);
d_cd2(:,:,2)=wiener2(cd2(:,:,2),[3 3]);
d_cd2(:,:,3)=wiener2(cd2(:,:,3),[3 3]); %斜线方向去噪
%% 对尺度3的高频系数去噪
d_ch3(:,:,1)=wiener2(ch3(:,:,1),[2 2]);
d_ch3(:,:,2)=wiener2(ch3(:,:,2),[2 2]);
d_ch3(:,:,3)=wiener2(ch3(:,:,3),[2 2]); %水平方向去噪
d_cv3(:,:,1)=wiener2(cv3(:,:,1),[2 2]);
d_cv3(:,:,2)=wiener2(cv3(:,:,2),[2 2]);
d_cv3(:,:,3)=wiener2(cv3(:,:,3),[2 2]); %垂直方向去噪
d_cd3(:,:,1)=wiener2(cd3(:,:,1),[2 2]);
d_cd3(:,:,2)=wiener2(cd3(:,:,2),[2 2]);
d_cd3(:,:,3)=wiener2(cd3(:,:,3),[2 2]); %斜线方向去噪
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 下一步进行重构了,如何把处理完的高频系数整合到C中呢,
%% 我们知道C的结构是[A(N)|H(N)|V(N)|D(N)|H(N-1)|V(N-1)|D(N-1)|H(N-2)|V(N-2)|D(N-2)|...|H(1)|V(1)|D(1)]
%% 在本程序中 C的结构是 [A(3)|H(3)|V(3)|D(3)|H(2)|V(2)|D(2)|H(1)|V(1)|D(1)]
%% S(1,:)是A(3)大小,S(2,:)是H(3)大小,S(3,:)是H(2)大小,S(4,:)是H(1)大小,S(5,:)是原图像大小
%% S(1,:)与S(2:)完全一致,即A(N)与H(N)大小是一样的
%% 可以容易算出C行向量的大小应该为
%% S(1,1)*S(1,2)*S(1,3)*4+S(3,1)*S(3,2)*S(3,3)*3+...S(N-1,1)*S(N-1,2)*S(N-1,3)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
len1=S(1,1)*S(1,2)*S(1,3);& & %A(3),H(3),V(3),D(3)的大小
len2=S(3,1)*S(3,2)*S(3,3);& & %H(2),V(2),D(2)的大小
len3=S(4,1)*S(4,2)*S(4,3);& & %H(1),V(1),D(1)的大小
C(1:len1)=ca3(1:end);& &%%将A(3)放入相应位置
C(len1+1:2*len1)=d_ch3(1,end); %%将H(3),V(3),D(3)放入相应位置
C(2*len1+1:3*len1)=d_cv3(1,end);
C(3*len1+1:4*len1)=d_cd3(1,end);
C(4*len1+1:4*len1+len2)=d_ch2(1:end); %%将H(2),V(2),D(2)放入相应位置
C(4*len1+len2+1:4*len1+2*len2)=d_cv2(1:end);
C(4*len1+2*len2+1:4*len1+3*len2)=d_cd2(1:end);
C(4*len1+3*len2+1:4*len1+3*len2+len3)=d_ch1(1:end); %%将H(1),V(1),D(1)放入相应位置
C(4*len1+3*len2+len3+1:4*len1+3*len2+2*len3)=d_cv1(1:end);
C(4*len1+3*len2+2*len3+1:4*len1+3*len2+3*len3)=d_cd1(1:end);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 把一系列大小不同的矩阵依次放入一个大矩阵,
%% 肯定有更简单的方法,不用判断起始位置终止位置,
%% 本人能力有限,只能用这种笨方法
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 用函数waverec2进行重构
re_M1_1=waverec2(C,S,wtype);
figure(1);
subplot(1,2,1);imshow(M1);
subplot(1,2,2);imshow(re_M1_1);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 因为考虑到只要知道C,S就可以进行重构,因此突发奇想自己构造C,S,可不可以呢
%% 我们以尺度2的低频高频系数为例,进行重构
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
S1=[S(3,1),S(3,2),S(3,3);S(3,1),S(3,2),S(3,3);S(4,1),S(4,2),S(4,3);S(5,1),S(5,2),S(5,3)];
leng1=S1(1,1)*S1(1,2)*S1(1,3);& & %A(2),H(2),V(2),D(2)的大小
leng2=S1(3,1)*S1(3,2)*S1(3,3);& & %H(1),V(1),D(1)的大小
C1=zeros(size(leng1*4+leng2*3));&&
C1(1:leng1)=ca2(1:end);&&%%将A(2)放入相应位置
C1(leng1+1:2*leng1)=d_ch2(1:end); %%将H(2),V(2),D(2)放入相应位置
C1(2*leng1+1:3*leng1)=d_cv2(1:end);
C1(3*leng1+1:4*leng1)=d_cd2(1:end);
C1(4*leng1+1:4*leng1+leng2)=d_ch1(1:end); %%将H(1),V(1),D(1)放入相应位置
C1(4*leng1+leng2+1:4*leng1+2*leng2)=d_cv1(1:end);
C1(4*leng1+2*leng2+1:4*leng1+3*leng2)=d_cd1(1:end);
re_M1_2=waverec2(C1,S1,wtype);
figure(2);
subplot(1,2,1);imshow(M1);
subplot(1,2,2);imshow(re_M1_2);
复制代码
关注者: 1
libralibra 发表于
你已经得到了各个分量了,直接用这个函数
wrcoef2: 利用某个高频分量重建图像(与原图像图等大小)&&
呵呵,是啊 我在csdn也发了个,问题解决了 多谢
你好,我最近在做这个,我是对分解得到的各层高频系数(水平,垂直,斜对角方向)进行软阈值去噪,完了之后也想把最低层的低频系数与处理过的各高层系数重构图像,但是不知道要怎么重构,可以讲解一下吗,十分谢谢
i=imread('C:\Documents and Settings\lena.bmp');
x=imnoise(i,'gaussian',0,0.01); %加入均值为0,方差为0.01的高斯噪声
%subplot(231);imshow(i);title('原始图像');
subplot(232); imshow(x);title('含噪图像');
s=double(x);
[a,b]=size(s);
%n=[1,2,3];%设置尺度向量
p=0.01*(sqrt(2*log(a*b)));%阈值
[C,S]=wavedec2(s,3,'db1');%采用db1小波对图像x1进行3层分解,c为各层分解系数s为各层分解系数长度
a3=appcoef2(C,S,'db1',3);
[h3 v3 d3]=detcoef2('all',C,S,3);
[h2 v2 d2]=detcoef2('all',C,S,2);
[h1 v1 d1]=detcoef2('all',C,S,1);
%对系数进行软阈值处理:把信号的绝对值与阈值进行比较
%小于或等于阈值的点变为零,大于阈值的点为该点值与阈值的差值。
H3=wthresh(h3,'s',p);
H2=wthresh(h2,'s',p);
H1=wthresh(h1,'s',p);
V3=wthresh(v3,'s',p);
V2=wthresh(v2,'s',p);
V1=wthresh(v1,'s',p);
D3=wthresh(d3,'s',p);
D2=wthresh(d2,'s',p);
D1=wthresh(d1,'s',p);
你好,我最近在做这个,我是对分解得到的各层高频系数(水平,垂直,斜对角方向)进行软阈值去噪,完了之后也想把最低层的低频系数与处理过的各高层系数重构图像,但是不知道要怎么重构,可以讲解一下吗,十分谢谢
i=imread('C:\Documents and Settings\lena.bmp');
x=imnoise(i,'gaussian',0,0.01); %加入均值为0,方差为0.01的高斯噪声
%subplot(231);imshow(i);title('原始图像');
subplot(232); imshow(x);title('含噪图像');
s=double(x);
[a,b]=size(s);
%n=[1,2,3];%设置尺度向量
p=0.01*(sqrt(2*log(a*b)));%阈值
[C,S]=wavedec2(s,3,'db1');%采用db1小波对图像x1进行3层分解,c为各层分解系数s为各层分解系数长度
a3=appcoef2(C,S,'db1',3);
[h3 v3 d3]=detcoef2('all',C,S,3);
[h2 v2 d2]=detcoef2('all',C,S,2);
[h1 v1 d1]=detcoef2('all',C,S,1);
%对系数进行软阈值处理:把信号的绝对值与阈值进行比较
%小于或等于阈值的点变为零,大于阈值的点为该点值与阈值的差值。
H3=wthresh(h3,'s',p);
H2=wthresh(h2,'s',p);
H1=wthresh(h1,'s',p);
V3=wthresh(v3,'s',p);
V2=wthresh(v2,'s',p);
V1=wthresh(v1,'s',p);
D3=wthresh(d3,'s',p);
D2=wthresh(d2,'s',p);
D1=wthresh(d1,'s',p);
你好,我最近在做这个,我是对分解得到的各层高频系数(水平,垂直,斜对角方向)进行软阈值去噪,完了之后也想把最低层的低频系数与处理过的各高层系数重构图像,但是不知道要怎么重构,可以讲解一下吗,十分谢谢
i=imread('C:\ena.bmp');
x=imnoise(i,'gaussian',0,0.01); %加入均值为0,方差为0.01的高斯噪声
%subplot(231);imshow(i);title('原始图像');
subplot(232); imshow(x);title('含噪图像');
s=double(x);
[a,b]=size(s);
%n=[1,2,3];%设置尺度向量
p=0.01*(sqrt(2*log(a*b)));%阈值
[C,S]=wavedec2(s,3,'db1');%采用db1小波对图像x1进行3层分解,c为各层分解系数s为各层分解系数长度
a3=appcoef2(C,S,'db1',3);
[h3 v3 d3]=detcoef2('all',C,S,3);
[h2 v2 d2]=detcoef2('all',C,S,2);
[h1 v1 d1]=detcoef2('all',C,S,1);
%对系数进行软阈值处理:把信号的绝对值与阈值进行比较
%小于或等于阈值的点变为零,大于阈值的点为该点值与阈值的差值。
H3=wthresh(h3,'s',p);
H2=wthresh(h2,'s',p);
H1=wthresh(h1,'s',p);
V3=wthresh(v3,'s',p);
V2=wthresh(v2,'s',p);
V1=wthresh(v1,'s',p);
D3=wthresh(d3,'s',p);
D2=wthresh(d2,'s',p);
D1=wthresh(d1,'s',p);
关注者: 1
lizhen213 发表于
你好,我最近在做这个,我是对分解得到的各层高频系数(水平,垂直,斜对角方向)进行软阈值去噪,完了之后 ...len1=S(1,1)*S(1,2)*S(1,3);& & %A(3),H(3),V(3),D(3)的大小
len2=S(3,1)*S(3,2)*S(3,3);& & %H(2),V(2),D(2)的大小
len3=S(4,1)*S(4,2)*S(4,3);& & %H(1),V(1),D(1)的大小
C(1:len1)=a3(1:end);& &%%将A(3)放入相应位置
C(len1+1:2*len1)=H3(1,end); %%将H(3),V(3),D(3)放入相应位置
C(2*len1+1:3*len1)=V3(1,end);
C(3*len1+1:4*len1)=D3(1,end);
C(4*len1+1:4*len1+len2)=H2(1:end); %%将H(2),V(2),D(2)放入相应位置
C(4*len1+len2+1:4*len1+2*len2)=V2(1:end);
C(4*len1+2*len2+1:4*len1+3*len2)=D2(1:end);
C(4*len1+3*len2+1:4*len1+3*len2+len3)=H1(1:end); %%将H(1),V(1),D(1)放入相应位置
C(4*len1+3*len2+len3+1:4*len1+3*len2+2*len3)=V1(1:end);
C(4*len1+3*len2+2*len3+1:4*len1+3*len2+3*len3)=D1(1:end);
%% 用函数waverec2进行重构
re_M1_1=waverec2(C,S,'db1');复制代码试试行不行~
yjccao123 发表于
试试行不行~
非常感谢啊
站长推荐 /1
Powered by现在位置:
图像的高低频分离 详细内容
图像的高低频分离
图像的高低频分离
【摘要】:本文先介绍了小波分析的基本理论,包括连续小波变换、离散小波变换和小波包分析。小波变换具有时频局部化的特点,因此不但能对图像提供较精确的时域定位,也能提供较精确的频域定位。经过小波变换的图像具有频谱划、方向选择、多分辨率分析和天然塔式数据结构特点。基于小波变换这些特性,讨论了MATLAB语言环境下利用小波的方法把一个图像的高频部分和低频部分分别提取出来的方法。
【关键词】:小波分析;图像压缩;图像去噪;图像融合;图像分解;
1&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 前言1.1&&&&&&&& Matlab简介 1.1.1& Matlab概况
Matlab(Matrix Laboratory)为美国Mathworks公司1983年首次推出的一套高性能的数值分析和计算软件,其功能不断扩充,版本不断升级,目前的最新版本为7.1版。Matlab将矩阵运算、数值分析、图形处理、编程技术结合在一起,为用户提供了一个强有力的科学及工程问题的分析计算和程序设计工具,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能,是具有全部语言功能和特征的新一代软件开发平台。
Matlab已发展成为适合众多学科,多种工作平台、功能强大的大型软件。在欧美等国家的高校,Matlab已成为线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具。成为攻读学位的本科、硕士、博士生必须掌握的基本技能。在设计研究单位和工业开发部门,Matlab被广泛的应用于研究和解决各种具体问题。在中国,Matlab也已日益受到重视,短时间内就将盛行起来,因为无论哪个学科或工程领域都可以从Matlab中找到合适的功能。
当今的信息化社会,图像是人类赖以获取信息的最重要的来源之一。随着计算机技术的迅猛发展,图像技术与计算机技术不断融合,产生了一系列图像处理软件,如VC、Matlab,这些软件的广泛应用为图像技术的发展提供了强大的支持。Matlab已成为国际公认的最优秀的科技应用软件之一,具有编程简单、数据可视化功能强、可操作性强等特点,而且配有功能强大、专业函数丰富的图像处理工具箱,是进行图像处理方面工作必备的软件工具。1.1.2& Matlab发展过程&
Matlab名字由MATrix和LABoratory 两词的前三个字母组合而成。那是20世纪七十年代后期的事:时任美国新墨西哥大学计算机科学系主任的Cleve Moler教授出于减轻学生编程负担的动机,为学生设计了一组调用LINPACK和EISPACK库程序的“通俗易用”的接口,此即用FORTRAN编写的萌芽状态的Matlab。
经几年的校际流传,在Little的推动下,由Little、Moler、Steve Bangert合作,于1984年成立了MathWorks公司,并把MATLAB正式推向市场。从这时起,Matlab的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。
Matlab仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包。在时间进入20世纪九十年代的时候,Matlab已经成为国际控制界公认的标准计算软件。
MathWorks公司于1993年推出Matlab4.0版本,从此告别DOS版。4.X版在继承和发展其原有的数值计算和图形可视能力的同时,出现了以下几个重要变化:
(1)推出了SIMULINK。这是一个交互式操作的动态系统建模、仿真、分析集成环境。它的出现使人们有可能考虑许多以前不得不做简化假设的非线性因素、随机因素,从而大大提高了人们对非线性、随机动态系统的认知能力。
(2)开发了与外部进行直接数据交换的组件,打通了Matlab进行实时数据分析、处理和硬件开发的道路。
(3)推出了符号计算工具包。1993年MathWorks公司从加拿大滑铁卢大学购得Maple的使用权,以Maple为“引擎”开发了Symbolic Math Toolbox 1.0。
(4)构作了Notebook 。MathWorks公司瞄准应用范围最广的Word,运用DDE和OLE,实现了MATLAB与Word的无缝连接,从而为专业科技工作者创造了融科学计算、图形可视、文字处理于一体的高水准环境。
1997年仲春,Matlab5.0版问世,现今的Matlab拥有更丰富的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。诚然,到1999年底,Mathematica也已经升到4.0版,它特别加强了以前欠缺的大规模数据处理能力。
在国际学术界,Matlab已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到Matlab的应用。在设计研究单位和工业部门,Matlab被认作进行高效研究、开发的首选软件工具。1.1.3& Matlab的语言特点&
Matlab语言有如下特点:
(1)编程效率高
它是一种面向科学与工程计算的高级语言,允许用数学形式的语言编写程序,且比Basic、Fortran和C等语言更加接近我们书写计算公式的思维方式,用Matlab编写程序犹如在演算纸上排列出公式与求解问题。因此,Matlab语言也可通俗地称为演算纸式科学算法语言由于它编写简单,所以编程效率高,易学易懂。
(2)用户使用方便
Matlab语言是一种解释执行的语言(在没被专门的工具编译之前),它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。Matlab语言与其它语言相比,较好地解决了上述问题,把编辑、编译、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比VB还要简单的语言。
(3)扩充能力强
高版本的Matlab语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,而且Matlab的库函数同用户文件在形成上一样,所以用户文件也可作为Matlab的库函数来调用。因而,用户可以根据自己的需要方便地建立和扩充新的库函数,以便提高Matlab使用效率和扩充它的功能。
(4)语句简单,内涵丰富
Mat1ab语言中最基本最重要的成分是函数,不同数目的输入变量(包括无输入变量)及不同数目的输出变量,代表着不同的含义(有点像面向对象中的多态性)。这不仅使Matlab的库函数功能更丰富,而大大减少了需要的磁盘空间,使得Matlab编写的M文件简单、短小而高效。
(5)高效方便的矩阵和数组运算
Matlab语言规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变地照搬到数组间的运算,有些如算术运算符只要增加“?”就可用于数组间的运算。它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便。
(6)方便的绘图功能
Matlab的绘图是十分方便的,它有一系列绘图函数,例如线性坐标、对数坐标,半对数坐标及极坐标,均只需调用不同的绘图函数,在图上标出图题、XY轴标注,格(栅)绘制也只需调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不变颜色的点、线、复线或多重线。这种为科学研究着想的设计是通用的编程语言所不及的。
总之,Matlab语言的设计思想可以说代表了当前计算机高级语言的发展方向。相信在不断使用中会发现它的巨大潜力。 &
1.2&&&&& 课题简介
小波分析诞生于20世纪80年代, 被认为是调和分析即现代Fourier分析发展的一个崭新阶段。众多高新技术以数学为基础,而小波分析被誉为“数学显微镜”,这就决定了它在高科技研究领域重要的地位。目前, 它在模式识别、图像处理、语音处理、故障诊断、地球物理勘探、分形理论、空气动力学与流体力学上的应用都得到了广泛深入的研究,甚至在金融、证券、股票等社会科学方面都有小波分析的应用研究。
在传统的傅立叶分析中,信号完全是在频域展开的,不包含任何时频的信息,这对于某些应用来说是很恰当的,因为信号的频率的信息对其是非常重要的。但其丢弃的时域信息可能对某些应用同样非常重要,所以人们对傅立叶分析进行了推广,提出了很多能表征时域和频域信息的信号分析方法,如短时傅立叶变换,Gabor变换,时频分析,小波变换等。其中短时傅立叶变换是在傅立叶分析基础上引入时域信息的最初尝试,其基本假定在于在一定的时间窗内信号是平稳的,那么通过分割时间窗,在每个时间窗内把信号展开到频域就可以获得局部的频域信息,但是它的时域区分度只能依赖于大小不变的时间窗,对某些瞬态信号来说还是粒度太大。换言之,短时傅立叶分析只能在一个分辨率上进行。所以对很多应用来说不够精确,存在很大的缺陷。
而小波分析则克服了短时傅立叶变换在单分辨率上的缺陷,具有多分辨率分析的特点,在时域和频域都有表征信号局部信息的能力,时间窗和频率窗都可以根据信号的具体形态动态调整,在一般情况下,在低频部分(信号较平稳)可以采用较低的时间分辨率,而提高频率的分辨率,在高频情况下(频率变化不大)可以用较低的频率分辨率来换取精确的时间定位。&&&
本文介绍了小波变换的基本理论,并介绍了一些常用的小波函数,它们的主要性质包括紧支集长度、滤波器长度、对称性、消失矩等,都做了简要的说明。然后研究了小波分析在图像处理中的应用,包括图像压缩,图像去噪,图像融合,图像分解,图像增强等。
1.3&&&&& 本课题的设计思路
本文从二维小波理论出发,对其在图像处理的应用上进行了一些分析和处理,力图反映出小波分析在图像处理方面有着其独特的特点。本文就以下几点进行阐述:
①小波基本概念
②图像压缩
③图像消噪
④图象增强
⑤图象平滑处理2&&&&&&&& 小波变换及高低频图像分离 2.1&&&&& 小波变换的概念 2.1.1& 小波定义
小波变换是一种信号的时间――尺度分析方法,他具有多分辨率分析的特点,而且在时频两域都具有表征信号局部特征的能力,是一种窗口大小固定不变但其形状可变,时间窗和频率窗都可变的时频局部化分析方法。即再低频部分具有较高的频率分辨率和时间分辨率,在高频部分具有较高的时间分辨率和较低的频率分辨率,很适合探测正常信号中夹带的瞬态反常现象并展示其成分,所以被誉为分析信号的显微镜。
波分析是把信号分解成低频al和高频dl两部分,在分解中,低频al中失去的信息由高频dl捕获。在下一层的分解中,又将al分解成低频a2和高频d2两部分,低频a2中失去的信息由高频d2捕获,如此类推下去,可以进行更深层次的分解。
二维小波函数是通过一维小波函数经过张量积变换得到的,二维小波函数分解是把尺度j的低频部分分解成四部分:尺度j+1的低频部分和三个方向(水平、垂直、斜线)的高频部分。
2.1.2& 连续小波变换
定义:设 ,其傅立叶变换为 ,当 满足允许条件(完全重构条件或恒等分辨条件)
&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(1)
时,我们称 为一个基本小波或母小波。将母函数 经伸缩和平移后得
&&&&&&&&&&&&&&&
&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&(2)
称其为一个小波序列。其中a为伸缩因子,b为平移因子。对于任意的函数 的连续小波变换为
&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&(3)
其重构公式(逆变换)为
&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&(4)
由于基小波 生成的小波 在小波变换中对被分析的信号起着观测窗的作用,所以 还应该满足一般函数的约束条件
&&&&&&&&&&&&&&&&&&&&&&&&&&&&
〈 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& (5)
故 是一个连续函数。这意味着,为了满足完全重构条件式, 在原点必须等于0,即
&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(6)
为了使信号重构的实现在数值上是稳定的,处理完全重构条件外,还要求小波 的傅立叶变化满足下面的稳定性条件:
&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(7)
式中0〈A B〈 。2.1.3& 离散小波变换
在实际运用中,尤其是在计算机上实现时,连续小波必须加以离散化。因此,有必要讨论连续小波 和连续小波变换 的离散化。需要强调指出的是,这一离散化都是针对连续的尺度参数a和连续平移参数b的,而不是针对时间变量t的。这一点与我们以前习惯的时间离散化不同。在连续小波中,考虑函数:
这里 , ,且 , 是容许的,为方便起见,在离散化中,总限制a只取正值,这样相容性条件就变为
&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(8)
通常,把连续小波变换中尺度参数a和平移参数b的离散公式分别取作 ,,这里 ,扩展步长 是固定值,为方便起见,总是假定 (由于m可取正也可取负,所以这个假定无关紧要)。所以对应的离散小波函数 即可写作
&&&&&&&&&&&&&&&&&& (9)
而离散化小波变换系数则可表示为
&&&&&&&&&&&&&&&&&&&&&& (10)
其重构公式为
&&&&&&&&&&&&&&&&&&&&&&&&&& (11)
C是一个与信号无关的常数。然而,怎样选择 和 ,才能够保证重构信号的精度呢?显然,网格点应尽可能密(即 和 尽可能小),因为如果网格点越稀疏,使用的小波函数 和离散小波系数 就越少,信号重构的精确度也就会越低。2.1.4& 小波包分析
&短时傅立叶变换对信号的频带划分是线性等间隔的。多分辨分析可以对信号进行有效的时频分解,但由于其尺度是按二进制变化的,所以在高频频段其频率分辨率较差,而在低频频段其时间分辨率较差,即对信号的频带进行指数等间隔划分(具有等Q结构)。小波包分析能够为信号提供一种更精细的分析方法,它将频带进行多层次划分,对多分辨率分析没有细分的高频部分进一步分解,并能够根据被分析信号的特征,自适应地选择相应频带,使之与信号频谱相匹配,从而提高了时-频分辨率,因此小波包具有更广泛的应用价值。
关于小波包分析的理解,我们这里以一个三层的分解进行说明,其小波包分解树如图
图1 小波包分解树
图1中,A表示低频,D表示高频,末尾的序号数表示小波分解的层树(也即尺度数)。分解具有关系:
S=AAA3+DAA3+ADA3+DDA3+AAD3+DAA3+ADD3+DDD32.2&&&&& 小波变换
支集 随 而变狭小(仅考虑为紧支集的情形)
在实际计算中,我们常采用卷积代替相关,于是上面的公式变为:
设原始序列长度为M,小波函数支集长度为N,则卷积后的长度为M+N-1 ,所以存在边界处理问题。如果我们采用循环卷积,则需要循环移位。本程序中采用循环卷积。
上面的定义是连续小波变换,实际应用中我们多采用离散小波变换,离散小波变换是基于固定的二进格点,在适当选取小波函数是可以导致一个尺度分析和一个正交小波基,而连续小波变换是一个多尺度表示,并不能产生一个正交基。
尺度函数和小波的两尺度方程:
如果 对于所有 可逆,则有:
由 、 可以求得 、 ,从而得到Mallat快速算法。2.2.1& 多分辨率分析
Mallat 算法通过一组分解滤波器H(低通滤波器LPF)和G(高通滤波器HPF)对信号进行滤波,然后对输出结果进行下二采样(指隔一取一)来实现小波分解,分解的结果是产生长度减半的两个部分,一个是经低通滤波器产生的原始信号的平滑部分,另一个则是经高通滤波器产生的原始信号细节部分。重构时使用一组h 和g 合成滤波器对小波分解的结果滤波,再进行上二采样(相邻两点间补零)来生成重构信号。多级小波分解通过级联的方式进行,每一级的小波变换都是在前一级分解产生的低频分量上的继续,重构是分解的逆运算。低频分量上的信息比较丰富,能量集中;高频分量上的信息分量多为零,细节信息丰富,能量较少。
分解过程:
重构过程:
用公式可以表示为:
分解过程:
其中: , ,
重构过程:
对于本课题,是二维图像变换,而采用的小波是二维可分解的,所以分解时可以通过先对图像的行或列进行一次小波变换,再对图像的列或行进行一次小波变换;重构时,以相反的顺序作小波反变换,从而重构原图像。
先行后列:
先列后行:
本程序中应用先行后列。
对于图像处理,因为图像的灰度级只有256个等级,所以对于变换后的小波系数需要做规划处理,以让显示器可以显示出来。这里有两种不同的处理方法:线性变换和采用扩展系数。
简单线性变换:
设最大的小波系数为 ,最小为 ,则对于系数 ,做线性变换
这样子, 的范围即为[0,255],正好达到显示器的现实范围,但这样做的一个缺点是虽然保证了图像的层次,但丢失了图像的颜色信息。
反变换时:
采用扩展系数:
这种方法是基于这样的思想:对于紧支集小波, , ,我们以Harr小波为例。
Harr小波的分解:
如果序列 ,那么 , ,而图像的显示范围只有[0,255],所以需要对 , 作相应的处理。不妨这么做:对 的每一个元素除以 ,这样 就变为 ,而对 的每一个元素先加 再除以 ,则 就变为 ,于是 , 都可以达到显示器的显示范围。需要说明的是对于Harr波,这样的处理是十分恰当的,但是对于不同的小波(当然是紧支集的),即使是同一小波的不同支集长度,虽然 , ,但是并不是每一个 都是正的,而且所有正的 之和,例如Daubechies小波,是大于 的,如果凑巧在 为正的像素上,元素灰度级为255,而负的像素上为小于255(典型值是0),则对 作除以 处理,并不能得到最好的效果。不过幸运的是,这样的情形是很少的,所以可以大胆的使用这种方法,而对于很少出现的那种情况,可以大胆的将其设置为255即可,对结果的影响是很小的。因为是线性变换,反变换是很简单的。
需要注意的是,当分解层数大于1时,由于是二维处理,对于不同的带宽内,当量化处理是,不可能只是作像简单线性变换那么简单的反变换,所以本程序的另一版本应用了这一方法进行变换和编码,但没有进行量化处理。
图像经过小波变换后,能够获得良好的空间一频率多分辨率表示,小波变换具有以下主要特征:
(1)不仅保持原图像的空间特性,而且很好的提取了图像的高频信息。在低频处有很好的频率特性,在高频处有很好的空间选择性;
(2)小波分量有方向选择性,分为水平、垂直、斜向,这些特性都和人类的视觉特性相吻合;
(3)能量主要集中在低频子带图像;
(4)低通模糊子图具有很强的相关性,水平子带图像在水平方向相关系数大,而垂直方向小;垂直子带图像在垂直方向相关系数大,而水平方向小:斜子带图像在垂直方向和水平方向相关系数都小。2.2.2& 量化
本程序使用的是标量量化,即对单个像素作量化处理:首先给出小波系数的分布情况,然后根据分布情况选择合适的阀值,对于小于阀值的小波系数复0。用公式表示如下:
&&&&&&&&&&&&&
需要说明的是,从图中我们看到3个通道小波系数的分布的最大值都是一样的,其实事实并非如此,而是我们对每一个通道都做了规划处理而已。2.3&&&&& 图像消噪
&&信号阈值去噪的基本步骤主要包括如下三步:
(1)信号的小波分解;
(2)小波分解高频系数的阈值量化;
(3)信号的小波重构。使用分解的低频系数以及阈值量化后的高频系数进行小波重构。2.3.1& 图像消噪方法的一般说明
对二维图像信号的消噪方法同样适用于一维信号,尤其是对于几何图像更适合。
(1)二维信号的小波分解。选择一个小波和小波分解的层次N, 然后计算信号s到第N层的分解。
(2)对高频系数进行阀值量化。对于从一到N的每一层,选择一个阀值,斌对着一层的高频系数进行软阀值化处理。
(3)二维小波的重构。根据小波分解的第N层的低频系数和经过修改的从第1层到第N层的各层高频系数,来计算二维信号的小波重构。
在这三个步骤中,重点内容就是如何选取阀值和如何进行阀值的量化。
2.3.2& 编程及分析
给定一个有较大白噪声的图象,利用二维小波分析进行信号消噪处理。
分析:由于图象所含的噪声主要是白噪声,且集中于高部分,故用第通实现消去噪声。程
subplot(221);&&&&&&&&&&&&&&&&&&&&
colormap(map); 
       
title('原图 ');
&&&&&&&&&&&&&&& %画出原图象
randn('seed',init)
x=X+38*randn(size(X));
subplot(222);
colormap(map);
title('含噪声图象 ');          
          %画出含噪声图象
[c,s]=wavedec2(x,2,'sym4'); 
a1=wrcoef2('a',c,s,'sym4',1); %第一次低通滤波消噪 
subplot(223);
image(a1);
title('第一次消噪后图象 ');
&&&&&&&&&&&&&&&& %画出第一次低通滤波消噪后图象
a2=wrcoef2('a',c,s,'sym4',2); %第二次低通滤波消噪
subplot(224);
image(a2);
title('第二次消噪后图象 ');
           %画出第二次低通滤波消噪后图象
分析:& 第一次消噪滤去了大部分高频噪声,但与原图比较,依然有不少高频噪声,第二次消噪在第一次消噪基础上,再次滤去高频噪声,消噪效果较好,但图像质量比原图稍差。
2.4&&&&& 图像逐级分离
经过二维小波变换,可以将原图像逐级分离,分离成具有不同尺度的子图像(见图3-8)。原图经小波变换后生成四个分量部分:低频分量LL,保留了原图的大部分信息:高频分量LH(水平方向)、HL(垂直方向)、HH(对角线方向),均包含了边缘、区域轮廓等细节信息。多分辨小波变换还可以把图像分解到更低分辨率水平上,只对LL进行下一级的小波分解,得到由低频的轮廓信息和原信号在水平、垂直和对解线方向高频部分的细节信息组成,每一次分解均使得图像的分辨率变为原信号的一半。
图3-8 二维小波分解与重构2.4.1&&&&& 基于小波变换的自适应模糊阈值法原理
小波阈值图像去噪的基本思想是:
①先对含噪信号 做小波变换,选择合适的小波和小波分解层数 ,得到相应的小波系数;
②对分解得到的小波系数 进行阈值处理,得出估计小波系数 ,尽可能小, 为原始信号的小波变换系数;
③利用 进行小波重构,得到估计信号,&&& 即为去噪后的图像信号。
对观测图像信号 ,其中 为原始信号, 为方差为 的噪声。对 进行小波分解之后, 所对应的各尺度上的小波系数 在某些特定的位置有较大的值,这些点对应于原始信号 的奇变位置和重要信息,而其它大部分位置的 值较小,对于噪声 ,它所对应的小波系数 在每一尺度上是均匀分布的,而且值较小,并随着尺度的增加,其幅值有所减小。取 ,(N为信号长度),采用硬阈值和软阈值对小波系数进行阈值处理:
硬阈值法& : &&&&&&&&&&&&&&&&&&&&&&&&&&& (3-15)
软阈值法:&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &(3-16)
这两种方法易于实现,可快速地得到估计小波系数,在实际中得到了广泛的应用,但该算法存在不足。从图3-9看可知,在硬阈值方法中,小波系数 在阈值 处是不连续的,这样,利用 重构所得的信号会产生振荡;而由软阈值方法得到的 虽然整体连续性好,但当 时, 与 总存在恒定的偏差 ,小波域的分布是一致的,随着分解尺度的增加,小尺度上的边缘细节小波系数一般很小,在滤除噪声时往往同时滤除了部分边缘细节,造成了边缘模糊;
(a)硬阈值方法&&&&&&&&&&&&&&&&&&&&&&&&&& (b)软阈值方法
图3-9 硬阈值和软硬阈值方法
对于脉冲噪声,噪声点的相应小波系数一般很大,特别它对于低频成分的影响很大,因此在小波域内不易滤除。此外,根据小波变换与Lipschitz指数的关系可知,信号和噪声在不同尺度下的小波变换系数呈现的特性截然相反,即随着尺度的增大,信号的小波系数增大,而噪声的小波系数减小。在硬、软阈值两种方法,都没有考虑这一特性,在不同的小波分解尺度上采用相同的阈值,这样势必会滤除一些属于边缘信号的系数,造成图像模糊。针对以上不足,本文提出一种简单并且效果较好的折衷算法&――自适应模糊阈值去噪算法。
(2)自适应模糊阈值去噪算法的提出
由于中值滤波(Median Filter,MF)算法能够很好地消除脉冲噪声,保护细节及边缘的特性。因此,在本文的改进算法当中,先对含噪图像进行中值滤波处理得到平滑效果不佳的图像。具体操作分为二步:噪声检测、中值滤波。
为所有像素个数,
为 的个数,即噪声点个数, 为受噪声污染程度。根据噪声率按式(3-3)采用不同的滤波窗口进行标准中值滤波[11]。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& (3-17)
①小波系数随着尺度增加也增大的,表明是边缘细节,对此小波系数,保持不变;
②对于其他的小波系数采用式(4)得到小波系数估计值。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& (3-18)
其中 , 随着 的增大而减小, 为隶属函数,
&&&&&&&&&&& ,这样保证了 接近 时, 趋近于 , 的整体连续性得到了保证,从而避免了信号产生振荡;而且当 时, 与 的偏差越来越小,使重构信号与真实信号的逼近程度提高。在软阈值算法中, 减小了 ,因此要设法减小此偏差,当 的取值介于 与 之间,使估计出来的小波系数 更接近于 。基于此思想,在阈值估计当中加入一个模糊隶属函数 , 的取值就介于 与 之间了,从而获得更好的去噪效果。Donoho在软阈值算法中给出的阈值 ,它在不同尺度 上是固定的,在本文改进算法中的阈值取为 ,其中 为噪声的方差, 为离散采样信号的长度, 为分解尺度[12]。
图3-10 自适应模糊软阈值滤波流程图
综合上述,自适应模糊软阈值算法具体步骤如下,算法流程图如图3-10所示:
(1)对含噪图像经过中值滤波得到预处理后的图像;
(2)对预处理后的图像进行小波变换,对小波系数采取自适应的处理方式,边缘细节的小波系数保持不变,其他小波系数采用模糊软阈值处理;
(3)对经过(2)处理后的小波系数进行增强处理;
(4)对小波系数进行小波逆变换,得到去噪增强后的图像[13]。
2.4.2&&&&& 图象平滑处理
&& 说明:图像平滑的主要目的是为了减少噪声,一般情况下,在空间域内可以用于平均来减少噪声。在频率域,因为噪声浦多在高频段,因此可以曹用各种形式的低通滤波的办法来减少噪声。
&&& 编程:给定一个含噪声的图象,用二维小波分析和图象的中值滤波进行图象的平滑。
[分析]这是一个图象平滑处理问题。首先,对图象在频域内进行增强,然后在空域内加入较大的白噪声。通过对含噪图象进行平滑处理,即可以使含噪图象具有较好的平滑效果。具体处理过程如下:
&&&&&&&&&&&&&&&&&&&&&&&&& %装入原图
subplot(221);
image(X1);
colormap(map1);
title('woman');
axis square&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %画出原图
             
[c,s]=wavedec2(X,2,’sym4’);&&&&&&& %二层分解小波信号
sizec=size( c );            
for I= 1:sizec(2)            %频域里增强图像
&&&& if(c( I )&350)
&&&&&& c( I )=1.3*c( I );
&&&&&& d( I )=0.5*c( I );
xx=waverec(c,s,’sym4’);        %系数重构
init=;           %加入噪声
rand(‘seed’,init);
xx=xx+68*(rand(size(xx)));
subplot(221);image(xx);
title(‘增强的含噪图象‘);
for I=2:1:255              %中值滤波
&& for j=2:1:255
&&&&& temp=0;
& for n=1:3
&&&&&& temp=temp+xx(I+m-2,j+n-2);
temp=temp/9;
colormap(map);
subplot(222);
image(xx);
title(‘平滑后的图象‘);
axis square&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& %画出平滑后图像
结果分析:
平滑后的图像没有原图清晰,但边缘轮廓过渡更自然,消噪的效果还是比较明显的,噪声图像中的一些粒状颗粒在平滑后基本消失。&&&&&&&&&& 2.4.3&&&&& 高频低频分离效果图
3&&&&&&&& 致 谢
时光流逝,转眼间四年的大学学习和生活即将结束。在论文即将完成之际,我要向那些曾给予支持和帮助的人们表示深深的谢意。
首先,深深地感谢我的指导教师王冬梅老师。本文正是在王老师的悉心指导、热情关怀下完成的。王老师渊博的知识、正直的品格、严谨的治学态度以及兢兢业业的工作作风给我留下了深刻的印象。从本课题的研究开始到论文的完成,王老师一直给予了我最大的鼓励和帮助,在遇到困难时,及时为我指明了方向。在此,我由衷地向她致以最诚挚的谢意。
另外,感谢我的父母对我多年来的养育之恩和默默奉献,学业的完成离不开他们的全力支持和生活上的悉心关怀。
最后,感谢我的舍友和其他一些不曾提及但真真切切帮助过我、关心过我的其他同学和朋友,正是他们使我在学习中有了长足的进步。
4&&&&&&&& 参考文献
[1] MALLATS.A Tour Guide of Signal Processing[M].Beijing:Machine Industry Press,.
[2] DONOHODL,VETTERLIM,DEVORERA Data compression and harmonic analysis[J].IEEE Trans on Information Theory,):.
[3] STACK JL,CANDESE J,DONOHOD L,The curvelet transform for image denoising[J].IEEE Trans on Image Proccessing,):670-684.
[4] STACK JL,MURTAGH F.Gray and color image constrast enhancement by the curvelet transform [J].IEEE Trans on Image Processing,):706- 716.
[5] CAITT,SILVERMANBW.Incorporating information on Neighbouring Coefficients into wavelet estimation [J].The Indian Journal of Statistics,):127-148.
[6] 杨群生,陈敏等.基于模糊技术的随机噪声消除算法[J].华南理工大学学报,):82-87.
[7] L.K.Shark and C.Yu.Denoising by optimal fuzzy thresholding in wavelet domain [J].IEEE Electronics letters,):581-582.
[8] S.Mallat,Sifen Zhong,Characterization of signals from multiscale edges[J].IEEE Trans on PAMI,1992,PAMI-14(7):710-732.
[9] Keesok J.Han and Ahmed H.Tewfik.Hybnd Wavelet Transform Fllter for Image Recovery[J].IEEETrans.Image Processing,1998,l540-544.
[10] H.K .Kwan .Fuzzy filters for noise image filtering [J].IEEE.4.
[11] 杨晋生,蔡靖等.一种具有鲁棒性的基于小波变换的滤波方法[J].电子与信息学报,):413-417.
[12] 张磊,潘泉,张洪才等.小波域滤波阈值参数的选取[J].电子学报,):400-402.
[13] Mallat and Zhong S.Characterization of signals from multiscale edges[J].IEEE& Trans on PAMI,(7):710- 732.
5&&&&&&&& 附录
没有相关文章
推 荐 阅 读
阅 读 排 行
专 题 列 表
Corporation </small Inc. 网站备案号:鄂ICP备号-2 
基于架构  

我要回帖

更多关于 matlab小波分解与重构 的文章

 

随机推荐