專利名稱:一種信號處理方法和裝置的制作方法
技術領域:
本發(fā)明涉及數字信號處理技術領域,尤其是一種信號處理方法和裝置。
背景技術:
在數字通信領域,語音、圖像、音頻、視頻的傳輸有著非常廣泛的應用需求,如手機通話、音視頻會議、廣播電視、多媒體娛樂等。為了降低音視頻信號存儲或者傳輸過程中占用的資源,音視頻壓縮編碼技術應運而生。音視頻壓縮編碼技術的發(fā)展中涌現出了很多不同的技術分支,其中將信號由時域變換到頻域后再進行編碼處理的技術,又稱為變換域編碼技術由于具有很好的壓縮特性,得到了非常廣泛的應用。變換域編碼技術中將信號由時域變換到頻域的方法有很多種,其中傅立葉變換(Discrete Fourier transform, DFT)、離散余弦變換(Discrete Cosine Transform, DCT)、離散正弦變換(Discrete sine transform, DST)以及修正離散余弦變換(Modified Discrete Cosine Transform,MDCT)等時頻變換有著廣泛的應用,在頻譜分析、圖像編碼和語音編碼等領域的應用尤其廣泛。信號經過時頻變換后可以使用量化技術進行壓縮編碼, 也可以使用其他一些參數音頻編碼的方法進行編碼,從而達到數據壓縮的目的。然而,發(fā)明人發(fā)現,直接根據變換公式進行DCT-IV或MDCT正變換與逆變換會導致很高的計算復雜度和存儲量,提供一種低存儲量的時域頻域變換方法成為一種迫切的需要。
發(fā)明內容
本發(fā)明實施例的目的在于提供一種數據處理方法,減少音視頻編碼過程中時域頻域變換處理的存儲量。根據本發(fā)明的一實施例,一種數據處理方法,包括對輸入數據進行重組,得到重組后的數據;使用一個對稱的旋轉因子對重組后的數據進行預旋轉,旋轉因子為a·^^/+1 ,ρ = 0,. . .,L/2-1,a 為常數;對預旋轉處理后的數據進行L/2個點的快速傅里(Fast Fourier Transform, FFT) 變換,L為輸入數據的長度;使用一個對稱的旋轉因子對FFT變換后的數據進行后旋轉處理,旋轉因子為 b-Kq+1 ,q = 0,...,L/2_l,b 為常數;獲得輸出數據。根據本發(fā)明的另一實施例,一種時域到頻域的信號處理方法,包括對時域數據進行預處理,得到預處理后數據;使用旋轉因子a · 對所述預處理后的數據進行預旋轉處理;對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;
使用旋轉因子b_fFwk+°5對所述離散傅里葉變換后的數據進行后旋轉處理,獲得頻域數據;其中,在獲得頻域數據之前還包括利用固定旋轉補償因子進行固定旋轉補償的步驟;所述a、b為常數,所述N為時域數據長度,所述『_
N°根據本發(fā)明的另一實施例,一種頻域到時域的信號處理方法,包括對頻域數據進行進行預處理,得到預處理后的數據;使用旋轉因子C_fFwk+°5對所述預處理后的數據進行預旋轉處理;對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;使用旋轉因子d ·對所述快速傅里葉變換后的數據進行后旋轉處理;對所述后旋轉處理后的數據進行后處理,獲得時域數據;其中,在獲得時域數據之前還包括利用固定旋轉補償因子進行固定旋轉補償的步驟;所述c、d為常數,所述N為兩倍的頻域數據長度,所述 .警。根據本發(fā)明的另一實施例,一種信號處理裝置,包括重組單元,用于對輸入數據進行重組,得到重組后的數據;預旋轉單元,用于使用一個對稱的旋轉因子對重組后的數據進行預旋轉,旋轉因子為,P = 0,. . .,L/2-1,a 為常數;變換單元,用于對預旋轉處理后的數據進行L/2個點的快速傅里(Fast FourierTransform, FFT)變換,L為輸入數據的長度;后旋轉單元,用于使用一個對稱的旋轉因子對FFT變換后的數據進行后旋轉處理,旋轉因子為廣,q = 0,..., L/2-1,b為常數;輸出單元,用于獲得輸出數據。根據本發(fā)明的另一實施例,一種時域到頻域的信號處理裝置,包括預處理單元,用于對時域數據進行預處理,得到預處理后的數據;預旋轉單元,用于使用旋轉因子a ·5對所述預處理后的數據進行預旋轉處理;變換單元,用于對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;后旋轉單元,用于使用旋轉因子b_fFwk+°5對所述離散傅里葉變換后的數據進行后旋轉處理,獲得頻域數據;其中,還包括固定補償單元,用于利用固定旋轉補償因子進行固定旋轉補償處理;所述a、b為常數,所述N為時域數據長度,所述 =廣I。根據本發(fā)明的另一實施例,一種頻域到時域的信號處理裝置,包括預處理單元,用于對頻域數據進行預處理,得到預處理后的數據;預旋轉單元,用于使用旋轉因子C_fFwk+°5對所述預處理后的數據進行預旋轉處理;變換單元,對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;后旋轉單元,使用旋轉因子對所述快速傅里葉變換后的數據進行后旋轉處理;其中,還包括固定補償單元,用于利用固定旋轉補償因子進行固定旋轉補償處理;所述C、d為常數,所述N為兩倍的頻域數據長度,所述# _e—
N°本發(fā)明實施例,預旋轉和后旋轉步驟使用的旋轉因子具有對稱性,可以降低數據存儲量。同時,使用FFT可以加快變換的速度,降低其計算復雜度。
為了更清楚地說明本發(fā)明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本發(fā)明提供的時域到頻域的DCT-IV變換方法一個實施例的流程示意圖;圖2為本發(fā)明提供的時域到頻域的DCT-IV變換方法另一個實施例的流程示意圖;圖3為本發(fā)明提供的時域到頻域的DCT-IV變換方法另一個實施例的流程示意圖;圖4為本發(fā)明提供的時域到頻域的MDCT變換方法一個實施例的流程示意圖;圖5為本發(fā)明提供的頻域到時域的MDCT變換方法一個實施例的流程示意圖;圖6為本發(fā)明提供的時域到頻域的MDCT變換方法另一個實施例的流程示意圖;圖7為本發(fā)明提供的頻域到時域的MDCT變換方法另一個實施例的流程示意圖;圖8為本發(fā)明提供的信號處理裝置一個實施例的結構示意圖;圖9為本發(fā)明提供的時域到頻域的信號處理裝置一個實施例的結構示意圖;圖10為本發(fā)明提供的頻域到時域的信號處理裝置一個實施例的結構示意圖。
具體實施例方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。數字信號處理領域,音頻編解碼器、視頻編解碼器廣泛應用于各種電子設備中, 例如移動電話,無線裝置,個人數據助理(PDA),手持式或便攜式計算機,GPS接收機/導航器,照相機,音頻/視頻播放器,攝像機,錄像機,監(jiān)控設備等。通常,這類電子設備中包括音頻編碼器或音頻解碼器,音頻編碼器或者解碼器可以直接由數字電路或芯片例如 DSP (digital signal processor)實現,或者由軟件代碼驅動處理器執(zhí)行軟件代碼中的流程而實現。例如一種音頻編碼器,首先對輸入信號進行分幀處理,得到20ms—幀的時域數據;然后對時域數據進行加窗處理,得到加窗后的信號;對加窗后的時域信號進行頻域變換,例如MDCT變換或者DCT-IV型變換,將信號由時域變換到頻域;再對頻域信號進行分帶處理,得到分帶以后的頻域信號;然后對每一個子帶信號的能量進行計算,并對子帶能量進行量化編碼,傳輸到解碼端;接下來根據量化后的子帶能量值進行基于聽覺掩蔽效應的自適應比特分配,得到各個子帶用于量化編碼的比特數;最后對各個子帶內的頻點進行歸一化處理,根據所分配的編碼比特數,使用矢量量化技術對子帶內歸一化處理后的頻點進行矢量量化,得到矢量量化的碼書索引,編碼后傳輸到解碼端。解碼端接收到由編碼端傳輸出來的壓縮碼流以后,根據相應的解碼步驟從碼流中查找出各子帶信號能量的碼書索引,并得到各子帶信號能量的量化值;根據這些量化值采用和編碼端一致的比特分配技術,得到各個子帶所分配的比特數;根據各個子帶所分配的比特數,以及從碼流中獲取的各個子帶的矢量量化的碼書索引,得到各個子帶量化后的歸一化頻域系數;根據各子帶信號能量的量化值將各個子帶量化后的歸一化頻域系數進行去歸一化處理,得到完整的頻域信號;對解碼的到的頻域信號進行編碼端所用變換相對應的逆變換,將信號由頻域變換到時域,對時域信號進行后處理后得到合成信號,即為解碼端輸出信號。時域到頻域的信號處理方法又可稱作正變換,頻域到時域的信號處理方法又可稱作逆變換。DCT作為一種空間變換,其最大特點是具有能量緊致性,這就使得以DCT為基礎的編碼系統(tǒng)會具有很好的壓縮性能。第四型DCT(DCT-IV)經常用于音頻和視頻數據壓縮。
DCT-IV 變換的公式為少⑷=雲 i( )cos + + k = 0,1,2,···,L-1 其中,k 為
0到L-I間的整數??梢?,直接根據變換公式進行DCT-IV正變換與逆變換會導致很高的計算復雜度和存儲量。由于DCT-IV變換在實時通信領域特別是音頻編碼中的廣泛應用,減少DCT-V變換方法的存儲量成為一種迫切的需要。參考圖1,本發(fā)明一個實施例提供的一種信號處理方法,用于實現編碼過程中的時域到頻域的DCT-IV變換,減少變換過程的存儲量,該方法包括如下步驟SlOl 對時域數據進行重組,得到重組后的數據。假設為需要進行DCT-IV型變換的數據,該數據可以是經過加窗等預處理步驟后的數據。對數據進行重組,得到重組后的數據ζ (P)z(p) = x(2p) + j-x(L-\-2p),p = 0,1,2, L/2-1S102:使用一個對稱的旋轉因子對重組后的數據進行預旋轉,旋轉因子為^-W2X1 ,P = O,1,2,..., L/2-1,a 為常數。將重組數據Z(p)進行預旋轉處理,旋轉因子為&_『42廣,? = 0,1,2,...,L/2-1。其中巧2廣1 =cos^-jsm^,p = 0,1,2,…,L/2-1,a 為常數。由于旋轉因子中的W42/+1項可以寫成以下形式WX1ρ = 0,1,2,…,L/2-1滿足cos2難氣-廣)+1) = cos2球,+1))=如1^111,q = o,i,2, ...,L/4_1 和sin2M(2{y^-q)+l) = sm2"(L4(L2q+l)) = cos^^, q = 0,1, 2,…,L/4-1 的條件,因此具體的實現過程中只需要存儲一個L/2點的余弦數據表格a·cos^^,ρ = 0,1,2-, L/2-1或者正弦數據表格a_sin^^,p = 0,1,2-, L/2-1 即可。S103 對預旋轉處理后的數據進行L/2個點的快速傅里葉變換(Fast FourierTransform, FFT)。S104:使用一個對稱的旋轉因子對FFT變換后的數據進行后旋轉處理,旋轉因子為q = 0,. . .,L/2-1, b 為常數;對FFT變換后的數據進行后旋轉處理,旋轉因子為 q = 0,1,2,...,L/2_1 即q為0到L/2-1間的整數。其中
權利要求
1.一種數據處理方法,其特征在于,包括對輸入數據進行重組,得到重組后的數據;使用一個對稱的旋轉因子對重組后的數據進行預旋轉,旋轉因子為&·『4 +1, ρ =0,. . .,L/2-1,a 為常數;對預旋轉處理后的數據進行L/2個點的快速傅里(Fast Fourier Transform, FFT)變換,L為輸入數據的長度;使用一個對稱的旋轉因子對FFT變換后的數據進行后旋轉處理,旋轉因子為IfF42/+1 ,q = 0,...,L/2_l,b 為常數;獲得輸出數據。
2.根據權利要求1所述的方法,其特征在于,在獲得輸出數據之前還包括利用固定旋轉補償因子進行固定旋轉補償的步驟。
3.根據權利要求2所述的方法,其特征在于,利用固定旋轉補償因子進行固定旋轉補償的步驟包括進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子的乘積為
4.根據權利要求2所述的方法,其特征在于,利用固定旋轉補償因子進行固定旋轉補償的步驟包括進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子為乘積為的至少一個因子的一階泰勒級數展開值。
5.根據權利要求1所述的方法,其特征在于,所述a和b的乘積等于—
6.一種時域到頻域的信號處理方法,其特征在于,包括對時域數據進行預處理,得到預處理后數據;使用旋轉因子a·對所述預處理后的數據進行預旋轉處理;對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;使用旋轉因子b_fFwk+°5對所述離散傅里葉變換后的數據進行后旋轉處理,獲得頻域數據;其中,在獲得頻域數據之前還包括利用固定旋轉補償因子進行固定旋轉補償的步驟;所述a、b為常數,所述N為時域數據長度,所述^
7.根據權利要求6所述的方法,其特征在于,利用固定旋轉補償因子進行固定旋轉補償的步驟包括進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子的乘積為
8.根據權利要求6所述的方法,其特征在于,利用固定旋轉補償因子進行固定旋轉補償的步驟包括進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子為乘積為的至少一個因子的一階泰勒級數展開值。
9.根據權利要求1所述的方法,其特征在于,所述a和b的乘積等于^
10.一種頻域到時域的信號處理方法,其特征在于,包括 對頻域數據進行進行重組,得到重組后的數據;使用旋轉因子c·爐力+°5對所述重組后的數據進行預旋轉處理; 對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換; 使用旋轉因子d·對所述快速傅里葉變換后的數據進行后旋轉處理; 對所述后旋轉處理后的數據進行后處理,獲得時域數據;其中,在獲得時域數據之前還包括利用固定旋轉補償因子進行固定旋轉補償的步驟; 所述c、d為常數,所述N為兩倍的頻域數據長度,所述 .警。
11.根據權利要求10所述的方法,其特征在于,利用固定旋轉補償因子進行固定旋轉補償的步驟包括進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子的乘積為Wn0.75ο
12.根據權利要求10所述的方法,其特征在于,利用固定旋轉補償因子進行固定旋轉補償的步驟包括進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子為乘積為的至少一個因子的一階泰勒級數展開值。
13.一種信號處理裝置,其特征在于,包括重組單元,用于對輸入數據進行重組,得到重組后的數據;預旋轉單元,用于使用一個對稱的旋轉因子對重組后的數據進行預旋轉,旋轉因子為 3-^1-4 = 0,...,172-1,3 為常數;變換單元,用于對預旋轉處理后的數據進行L/2個點的快速傅里(Fast Fourier Transform, FFT)變換,L為輸入數據的長度;后旋轉單元,用于使用一個對稱的旋轉因子對FFT變換后的數據進行后旋轉處理,旋轉因子為廣1 ,q = 0,...,L/2-l,b為常數; 輸出單元,用于獲得輸出數據。
14.根據權利要求13所述的裝置,其特征在于,還包括固定旋轉補償單元,用于利用固定旋轉補償因子進行固定旋轉補償處理。
15.根據權利要求14所述的裝置,其特征在于,所述固定旋轉補償單元用于進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子的乘積為Μ—ι3ο
16.根據權利要求14所述的裝置,其特征在于,所述固定旋轉補償單元用于進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子為乘積為/的至少一個因子的一階泰勒級數展開值。2/y
17.根據權利要求14所述的裝置,其特征在于,所述a和b的乘積等于g
18.—種時域到頻域的信號處理裝置,其特征在于,包括預處理單元,用于對時域數據進行預處理,得到預處理后的數據;預旋轉單元,用于使用旋轉因子a·5對所述預處理后的數據進行預旋轉處理;變換單元,用于對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;后旋轉單元,用于使用旋轉因子b_fFwk+°5對所述離散傅里葉變換后的數據進行后旋轉處理,獲得頻域數據;其中,還包括固定補償單元,用于利用固定旋轉補償因子進行固定旋轉補償處理;所述a、b為常數,所述N為時域數據長度,所述 =廣I。
19.根據權利要求18所述的裝置,其特征在于,所述固定旋轉補償單元用于進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子的乘積為W/75
20.根據權利要求18所述的裝置,其特征在于,所述固定旋轉補償單元用于進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子為乘積為的至少一個因子的一階泰勒級數展開值。
21.—種頻域到時域的信號處理裝置,其特征在于,包括重組單元,用于對頻域數據進行重組,得到重組后的數據;預旋轉單元,用于使用旋轉因子對所述重組后的數據進行預旋轉處理;變換單元,對所述預旋轉處理后的數據進行N/4點的快速傅里葉變換;后旋轉單元,使用旋轉因子對所述快速傅里葉變換后的數據進行后旋轉處理;其中,還包括固定補償單元,用于利用固定旋轉補償因子進行固定旋轉補償處理;所述c、d為常數,所述N為兩倍的頻域數據長度,所述
22.根據權利要求21所述的裝置,其特征在于,所述固定旋轉補償單元用于進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子的乘積為W/75
23.根據權利要求21所述的裝置,其特征在于,所述固定旋轉補償單元用于進行至少一次固定旋轉補償,所述至少一次固定旋轉補償的旋轉補償因子為乘積為的至少一個因子的一階泰勒級數展開值。
全文摘要
本發(fā)明實施例公開了一種數據處理方法,包括對輸入數據進行重組,得到重組后的數據;使用一個對稱的旋轉因子對重組后的數據進行預旋轉,旋轉因子為p=0,...,L/2-1,a為常數;對預旋轉處理后的數據進行L/2個點的快速傅里(Fast Fourier Transform,FFT)變換,L為輸入數據的長度;使用一個對稱的旋轉因子對FFT變換后的數據進行后旋轉處理,旋轉因子為q=0,...,L/2-1,b為常數;獲得輸出數據。
文檔編號G10L19/02GK102592601SQ20111000403
公開日2012年7月18日 申請日期2011年1月10日 優(yōu)先權日2011年1月10日
發(fā)明者張德明, 李海婷, 許劍峰, 阿里斯·塔勒布 申請人:華為技術有限公司