首页 理论教育哈达玛变换:理论与应用

哈达玛变换:理论与应用

【摘要】:在数字信号处理中,为了可进行快速运算,取样数通常取2的整数次幂,因而沃尔什变换和哈达玛变换这两种称呼常被混用。有时,这两类变换被统称为沃尔什-哈达玛变换。哈达玛变换基具有简单的递推关系,给计算带来很大方便。按照式生成哈达玛矩阵的MATLAB代码如下:N=4时运行结果如图4-4所示。2阶哈达玛变换基等于:式中,表示克罗内克直积。所以,反变换哈达玛基等于正变换哈达玛基。

由上面分析可知,离散沃尔什变换是对[0,1]区间上的连续沃尔什函数进行等间隔取样的结果,因为沃尔什函数是一组完备正交函数集,故可用于正交变换。从本质上说,哈达玛变换与沃尔什变换是相同的,它们的区别在于当取样数N是2的整数幂时,这两类变换基仅仅是行(列)的顺序不同;当N不是2的整数幂时,沃尔什变换可用于任意正整数,而哈达玛变换仅能用到N=200。在数字信号处理中,为了可进行快速运算,取样数通常取2的整数次幂,因而沃尔什变换和哈达玛变换这两种称呼常被混用。有时,这两类变换被统称为沃尔什-哈达玛变换。哈达玛变换基具有简单的递推关系,给计算带来很大方便。一维哈达玛正变换核由下列公式给出:

aij)=(1/N)(-1)pij),ij=0,1,2,…,N-1 (4-31)

式中

978-7-111-48233-8-Chapter04-34.jpg

需注意的是,式(4-32)中符号∑表示模2加法,kni)表示数z二进制表示中第i比特值。按照式(4-31)生成哈达玛矩阵的MATLAB代码如下:

978-7-111-48233-8-Chapter04-35.jpg

978-7-111-48233-8-Chapter04-36.jpg

N=4时运行结果如图4-4所示。MATLAB定义的哈达玛内联函数是hard- mard(n)。当N=2nn为整数)的哈达玛变换基可通过下面递推公式求得:

978-7-111-48233-8-Chapter04-37.jpg

图4-4 4阶哈达玛基函数

978-7-111-48233-8-Chapter04-38.jpg

式中,978-7-111-48233-8-Chapter04-39.jpg表示克罗内克(Kronecker)直积。2阶哈达玛变换基等于:

978-7-111-48233-8-Chapter04-40.jpg

采用式(4-33)生成哈达玛变换基的MATLAB代码如下:

978-7-111-48233-8-Chapter04-41.jpg

978-7-111-48233-8-Chapter04-42.jpg

结合式(4-33)和式(4-34)易知哈达玛基是正交基;又由式(4-32)可知哈达玛基具有对称性。所以,反变换哈达玛基等于正变换哈达玛基。