计算机视觉课上讲到了沃尔什变换和哈达玛变换,这沃尔什矩阵的生成公式看着我都脑子疼

python 哈达玛变换 哈达玛矩阵计算_取值

而相较于沃尔什矩阵,哈达玛矩阵的生成方式则一目了然,在查阅了一大堆乱七八糟的资料看了各种公式我反正还是没看懂啥原理,但是查到了哈达玛矩阵和沃尔什矩阵之间是有联系的,那抛开公式不谈就可以较好理解的利用哈达玛矩阵生成沃尔什矩阵。

python 哈达玛变换 哈达玛矩阵计算_取值_02

哈达玛矩阵(Hadamard)

百度百科:哈达玛(Hadamard)矩阵是由+1和-1元素构成的且满足Hn*Hn’=nI(这里Hn’为Hn的转置,I为单位方阵)n阶方阵

嗷简单点,哈达玛矩阵就是个只有+1-,1的正交矩阵(X×X.T=E),他有什么用老师也没具体讲,我查了半天也没看懂就不乱说了。

他的生成方式简单,迭代就完事了,看着下面这个图你让我推一个1024阶的哈达玛矩阵我都能推出来,相比那个乱七八糟我公式符号都看不懂的沃尔什矩阵这简直就是人类福音。

python 哈达玛变换 哈达玛矩阵计算_取值_03

沃尔什矩阵(Walsh)

百度百科:未收录沃尔什矩阵的相关内容

你知道我有多绝望么,我就这么绝望,百度百科都没收录这个啥沃尔什矩阵我还要看着下面这张PPT上的公式想到底这是个啥,更令我绝望的是

百度百科:未收录拉德梅克函数

行吧,反正我知道sign长啥样,格雷码老师讲了,这公式我也能看懂,那我算算吧——这咋算啊草,翻了半天百度和CSDN啥都没找到,这定义的倒是挺好的但是算起来也太难了。

python 哈达玛变换 哈达玛矩阵计算_多路复用_04


但是功夫不负有心人,我看了半天这不是三种生成方式吗,拉德梅克函数,沃尔什序列对称性,哈达玛变换。哈达玛矩阵我会算啊。

看了半天的离散正交变换导论,最后的结论

python 哈达玛变换 哈达玛矩阵计算_多路复用_05

<n>为n的二进制调转

例,在8阶沃尔什矩阵中

python 哈达玛变换 哈达玛矩阵计算_取值_06

推导好像是按佩利排序的一个扩展,底子太差没看懂,反正生成方式我是明白饿了。

python 哈达玛变换 哈达玛矩阵计算_多路复用_07


python 哈达玛变换 哈达玛矩阵计算_多路复用_08


关于沃尔什变换的话

沃尔什变换与傅里叶变换相比,由于它只存在实数的加、减法运算而没有复数的乘法运算,使得计算速度快、存储空间少,有利于硬件实现,对实时处理和大量数据操作具有特殊吸引力。在通信系统中由于它的正交性和具有取值和算法简单等优点,便于构成正交的多路复用系统。

看了看例子就是沃尔什变换算起来简单,能一定程度上压缩信号内容,反正整了半天我会生成一个沃尔什矩阵了,哈达玛矩阵就是沃尔什矩阵的另一种排列方式。

沃尔什变换和哈达玛变换

沃尔什变换
python 哈达玛变换 哈达玛矩阵计算_取值_09
python 哈达玛变换 哈达玛矩阵计算_python 哈达玛变换_10
哈达玛变换
python 哈达玛变换 哈达玛矩阵计算_python 哈达玛变换_11
python 哈达玛变换 哈达玛矩阵计算_取值_12