mallat算法分析及c语言实现,图像的Mallat算法分解(Matlab代码)

本文介绍了Mallat算法在图像处理中的应用,包括一维和二维的小波分解与合成。提供了用C语言实现的算法代码,并附带MATLAB测试程序,用于图像的小波分解和重构。读者可以通过这些代码理解Mallat算法的工作原理。
摘要由CSDN通过智能技术生成

Mallat 算法的分析与综合框架参考书上的资料很多,这里就不多说了。

下面是我写的关于图像的程序,分别是:一维分解,二维分解;一维合成,二维合成。最后是测试主程序。

谢谢参考,错了请反馈一下!

%内部子函数,对一行(row)矢量进行一次小波变换,利用fft实现

function y=mdec1(x,h,g)

%x 行数组

%h为低通滤波器

%g为高通滤波器

%输出: y 进行一级小波分解后的系数

lenx=size(x,2);                 %求行的长度

lenh=size(h,2);                 %求低通滤波器的长度

rh=h(end:-1:1);                 %rh是h的逆序  h0(n)=h(-n)

rrh=[zeros(1,(lenx-lenh)),rh];  %rrg在rg前插入(lenx-lenh))个零

rrh=circshift(rrh',1)';         %循环位移

rg=g(end:-1:1);                 %rg为高通滤波器的逆序g0(n)=g(-n)

rrg=[zeros(1,(lenx-lenh)),rg];  %rrg在rg前插入(lenx-lenh))个零

rrg=circshift(rrg',1)';         %循环位移

r1=dyaddown(ifft(fft(x).*fft(rrh,lenx)),1); %use para 1,下2奇采样

r2=dya

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值