阿达马变换

来自testwiki
跳转到导航 跳转到搜索

Template:Mergefrom 阿达马变换Template:Lang),或称沃爾什-阿達瑪轉換,是一种廣義傅立葉變換(Fourier transforms),作为变换编码的一种在影片编码当中使用有很久的历史。在近来的影片编码标准中,阿达马变换多被用来计算SATD(一种影片残差信号大小的衡量)。

數字信號處理大型積體電路演算法的領域中,阿达马变换是一種簡單且重要的演算法之一,主要能針對頻譜做快速的分析。

变换矩阵

H.264中使用了4阶和8阶的阿达马变换来计算SATD,其变换矩阵为:

H4=[1111111111111111]
H8=[1111111111111111111111111111111111111111111111111111111111111111]

SATD计算方法

当计算4x4块[L4]的SATD时,先使用下面的方法进行二维的阿达马变换:

[L4]=[H4]×[L4]×[H4]

然后计算[L4]所有系数绝对值之和并归一化


类似的,当计算8x8块[L8]的SATD时,先使用下面的方法进行二维的Hadamard变换:

[L8]=[H8]×[L8]×[H8]

然后计算[L8]所有系数绝对值之和并归一化

建構阿达马变换

阿达马变换轉換主要型式為 2𝒌 點的轉換矩陣,其最小單位矩陣為 2x2 的阿达马变换矩陣,以下分別為二點、四點與如何產生 2𝒌 點的阿达马变换轉換步驟。

  • 二點阿达马变换轉換:

𝑾2=[1111]

  • 四點阿达马变换轉換:

𝑾4=[1111111111111111]

  • 產生 2𝒌 點阿达马变换的步驟:

步驟一: 𝑽2𝒌+1=[𝑾2𝒌𝑾2𝒌𝑾2𝒌𝑾2𝒌]


步驟二: 根據正負號次序 (Sign change,正負號改變次數) 將矩陣 (Matrix) 內的列向量做順序上的重新排列。

𝑽2𝒌+1𝑾2𝒌+1

範例

𝑽4=[𝑾2𝑾2𝑾2𝑾2]=[1111111111111111],𝑾4=[1111111111111111].


𝑽8=[1111111111111111111111111111111111111111111111111111111111111111],𝑾8=[1111111111111111111111111111111111111111111111111111111111111111].

特性

  • 正交性

n=0N1W[h,n]W[m,n]=0,ifhm.

其表示 Walsh-Hadamard 轉換矩陣中,不同的列向量 (Row verctor) 做內積 (Inner product) 為零。

可簡單從 Walsh-Hadamard 轉換矩陣中發現,其奇數列向量呈現左右兩邊偶對稱(Even symmetric)。反之,其偶數列向量呈現左右兩邊奇對稱(Odd symmetric)。

f[n]F[m]andg[n]G[m],

af[n]+bg[n]aF[m]+bG[m].

W[m,n]W[l,n]=W[ml,n].

範例:

00=0,01=1,10=1,11=0,

其運算方式為布林代數內的 XOR 邏輯閘。

δ[n]1,1Nδ[n].

其中, δ[n]={1,whenn=00,whenn0.

f[n]F[m],

f[nk]W[k,m]F[m].

f[n]F[m],

W[k,n]f[n]F[mk].

f[n]F[m],n=0N1|f[n]|2=(1N)n=0N1|F[m]|2.

f[n]F[m]andg[n]G[m],

n=0N1f[n]g[n]=(1N)n=0N1F[m]G[m].

  • 摺積性質 (Convolution Property)

f[n]F[m]andg[n]G[m],

h[n]=f[n]g[n]H[m]=F[m]G[m],

其中 代表邏輯摺積 (Logical convolution)。

優缺點比較

優點

  • 僅需實數運算 (Real operation) 。
  • 不需乘法運算 (No multiplication) ,僅有加減法運算。
  • 有部分性質類似於離散傅立葉變換 (Discrete fourier transform) 。
  • 順向轉換 (Forward transform) 與反向轉換 (Inverse transform ) 型式為相似式。

{F[m]=n=0N1W[m,n]f[n](Forward Type)f[n]=(1N)n=0N1W[m,n]F[m](Inverse Type),

其中 F[n]f[n] 分別都為行向量 (Column vector) 。

缺點

應用範圍

阿达马变换轉換主要為一種非常適合應用於頻域分析 (Spectrum analysis) ,去執行快速之分析。可惜的是對於摺積性質是一種邏輯摺積,與離散傅立葉變換上之摺積性質截然不同。因此,較摺積上無法取代離散傅立葉變換

主要應用範圍:

其主要是一種調變 (modulation) 與解調 (Demodultion) 之技術。

Jacket 轉換

廣義來說,其實阿达马变换轉換是 Jacket 轉換中的一項特例情況,其將 w=±20=1 即可求得。

以下為四點的 Jacket 轉換:

𝑱4=[11111ww11ww11111],where w=±2k.

  • 2𝒌+1 點的 Jacket 轉換:

𝑱2𝒌+1=[𝑱2𝒌𝑱2𝒌𝑱2𝒌𝑱2𝒌].

相关条目

參考文獻

  • Jian-Jiun Ding, Advanced Digital Signal Processing class note,the Department of Electrical Engineering, National Taiwan University (NTU), Taipei, Taiwan, 2008.
  • H. F. Harmuth,“Transmission of information by orthogonal functions,”1970.
  • Moon-Hu. Lee,“A new reverse Jacket transform and its fast algorithm,”IEEE Trans. Circuits Syst.-II, vol. 47, pp.39-46, 2000.
  • K.G.Beauchamp, "Walsh Functions and Their Applications," Academic Press,1975.
  • H. F. Harmuth, "Transmission of Information by Orthogonal Functions," Springer, 1969.