二元小波轉換(Dyadic Wavelet Transform)是縮放以二的級數為基底且取樣過後的小波轉換,但時間沒有取樣。
基本介紹
- 中文名:二元小波轉換
- 外文名:Dyadic Wavelet Transform
- 套用:信號處理
背景,定義,套用,Matlab實現,
背景
小波變換是一種用於決定卷積的特定視窗函式,提供了將圖像分解成不同尺度組成的一種數學框架。成百種不同的小波函式被提出用來增強或模糊特定的特徵。二維的離散傅立葉變換是將圖像分解成不同全局正弦和餘弦函式的和,而二維離散的小波變換是將一幅圖像在每個尺度層上分解為四個組成部分之和。小波轉換的架構分成兩個部分,一個是小波分解(waveletanalysis),另一個是小波合成(wavelet synthesis)。小波分解首先要有一個原始數列的數據,這個原始數列是一個無窮數列。以影像壓縮為例,數列里的每個元素的值,可以是影像中每個圖點的灰階值。有了這樣的一個原始數列之後,我們要將原始數列分別進行低頻分析濾波以及高頻分析濾波這兩個步驟。如果說我們將原始的影像,看成是由影像中具有一致性的數據以及具有高度變化性的數據,這兩種數據組合而成的話,那么我們將原始數列經過低頻分析濾波的步驟之後,所產生的低頻數列,則將保留原始數列的一致性的數據,比如說人臉部特寫的影像中,臉部會有一大片區域的顏色值相近,或者是風景照中的背景天空的一大片藍色,就是原始資料中具有一致性的部分。而我們將原始數列經過高頻分析濾波的步驟之後,所產生的高頻數列,則將保留原始數列的高度變化性的數據,比如說在影像中物體的輪廓部分,邊界內外的顏色值相差甚大,或者是有許多顏色參雜在一起的區域,都是原始數據中具有高度變化性的部分。因此小波分解的步驟其實就是將原始數據中的一致性數據與高度變化性數據分解成兩筆獨立的數據。小波合成的部分將低頻數列經過低頻合成濾波之後的數列,與高頻數列經過高頻合成濾波之後的數列,相加起來,就可以還原成原始的數列。
定義
二元小波轉換(Dyadic Wavelet Transform)是縮放以二的級數為基底且取樣過後的小波轉換,但時間沒有取樣。的二元小波轉換的定義為:
它也定義了一個穩定(stable)、完整(complete)的表示式,如果它的Heisenberg boxes囊括了所有的頻率軸,也就是存在一個A和B使所有的二元小波都是L2(R)的 frame (Frames are a stable, possibly redundant, representation of signals)。
套用
快速二元小波轉換 (Fast Dyadic Wavelet Transform, FDWT) 使用與快速小波轉換(Fast Wavelet Transform)相同的濾波器來進行轉換,但是差別在於不需要再進行次採樣(subsampling),時常用在擷取音樂訊號的Onset。
Matlab實現
二元小波變換的 Matlab 實現:
(1) dwt 函式
功能:離散小波變換
格式:[cA,cD]=dwt(X,'wname')
[cA,cD]=dwt(X,Lo_D,Hi_D)
說明:[cA,cD]=dwt(X,'wname') 使用指定的小波基函式 'wname' 對信號 X 進行分解,cA、cD 分別為近似分量和細節分量;[cA,cD]=dwt(X,Lo_D,Hi_D) 使用指定的濾波器組 Lo_D、Hi_D 對信號進行分解。
(2) idwt 函式
功能:離散小波反變換
格式:X=idwt(cA,cD,'wname')
X=idwt(cA,cD,Lo_R,Hi_R)
X=idwt(cA,cD,'wname',L)
X=idwt(cA,cD,Lo_R,Hi_R,L)
說明:X=idwt(cA,cD,'wname') 由近似分量 cA 和細節分量 cD 經小波反變換重構原始信號 X 。
'wname' 為所選的小波函式
X=idwt(cA,cD,Lo_R,Hi_R) 用指定的重構濾波器 Lo_R 和 Hi_R 經小波反變換重構原始信號 X 。
X=idwt(cA,cD,'wname',L) 和 X=idwt(cA,cD,Lo_R,Hi_R,L) 指定返回信號 X 中心附近的 L 個點。
(1) dwt 函式
功能:離散小波變換
格式:[cA,cD]=dwt(X,'wname')
[cA,cD]=dwt(X,Lo_D,Hi_D)
說明:[cA,cD]=dwt(X,'wname') 使用指定的小波基函式 'wname' 對信號 X 進行分解,cA、cD 分別為近似分量和細節分量;[cA,cD]=dwt(X,Lo_D,Hi_D) 使用指定的濾波器組 Lo_D、Hi_D 對信號進行分解。
(2) idwt 函式
功能:離散小波反變換
格式:X=idwt(cA,cD,'wname')
X=idwt(cA,cD,Lo_R,Hi_R)
X=idwt(cA,cD,'wname',L)
X=idwt(cA,cD,Lo_R,Hi_R,L)
說明:X=idwt(cA,cD,'wname') 由近似分量 cA 和細節分量 cD 經小波反變換重構原始信號 X 。
'wname' 為所選的小波函式
X=idwt(cA,cD,Lo_R,Hi_R) 用指定的重構濾波器 Lo_R 和 Hi_R 經小波反變換重構原始信號 X 。
X=idwt(cA,cD,'wname',L) 和 X=idwt(cA,cD,Lo_R,Hi_R,L) 指定返回信號 X 中心附近的 L 個點。