最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

信號編碼和解碼的方法和設備與流程

文檔序號:11136029閱讀:1504來源:國知局
信號編碼和解碼的方法和設備與制造工藝

本發(fā)明實施例涉及領域通信領域,并且更具體地,涉及一種信號編碼和解碼的方法和設備。



背景技術:

在諸如移動通信和光纖通信之類的通信領域,在發(fā)送端采用編碼技術,來對要傳送的信號進行壓縮以提高傳輸效率,并且在接收端采用對應的解碼技術來恢復所傳送的信號。根據(jù)信號的特征、傳輸條件等,可以對信號進行時域編碼和/或頻域編碼。根據(jù)一定的規(guī)則為時域信號或頻域信號分配不同的編碼比特,并然后根據(jù)所分配的比特利用編碼方法對信號進行編碼。為了提高信號傳輸效率,希望用盡量少的編碼比特來表征要傳送的信號。因此,需要合理地分配編碼比特,從而在接收端通過解碼來失真盡量少地恢復輸出信號。

在現(xiàn)有的用于音頻信號的編碼器中,在較低碼率時,一般對語音能有較好的編解碼效果,但對音樂,編解碼效果比較差。為了提升低碼率時音樂的質量,利用部分比特通過時域編碼方法對輸入信號進行編碼;并且,根據(jù)所述輸入信號得到頻域信號,并利用剩余的比特通過頻域編碼方法對所述頻域信號進行編碼。在利用剩余的比特對所述頻域信號進行編碼時,通常沒考慮信號特性,用統(tǒng)一的方式對頻域信號進行比特分配,這導致對部分頻域信號的編碼效果不佳。在現(xiàn)有的用于音頻信號的解碼器中,簡單地利用與編碼技術對應的解碼技術恢復頻域信號,對經(jīng)未解碼出的頻域信號填充噪聲,然后進行頻域逆變換和時域綜合處理而得到輸出信號。所述噪聲填充在某些信號中引入了額外噪聲,降低了輸出信號的質量。

因此,現(xiàn)有的在頻域編碼算法中進行統(tǒng)一的比特分配方案,導致了對某些信號編碼效果不佳;而在現(xiàn)有的頻域解碼算法中的上述噪聲填充處理降低了輸出信號的質量。



技術實現(xiàn)要素:

本發(fā)明實施例提供了一種對信號進行編碼和解碼的方法和設備,其在編碼時可以對頻域信號的比特分配進行優(yōu)化,以用相同的比特達到更好的編碼效果,在解碼時可以利用頻域解碼所解碼出的信息做指導,進行頻域激勵信號的擴展,使輸出信號達到更好的效果。

一方面,提供了一種用于信號編碼的方法,所述方法包括:根據(jù)輸入信號得到頻域信號;按照預定分配規(guī)則將預定比特分配給所述頻域信號;在有比特分配的頻域信號的最高頻率大于預定值的情況下,調整頻域信號的比特分配;根據(jù)頻域信號的比特分配對頻域信號進行編碼。

另一方面,提供了一種用于信號解碼的方法,所述方法包括:從接收的比特流中獲得解碼出的頻域信號;在所述解碼出的頻域信號滿足預定條件的情況下,根據(jù)該解碼出的頻域信號來預測未解碼出的頻域信號;根據(jù)解碼出的頻域信號和預測的未解碼出的頻域信號來獲得最終輸出的時域信號。

又一方面,提供了一種用于信號編碼的設備,所述設備包括:頻域變換單元,根據(jù)輸入信號得到頻域信號;比特分配單元,按照預定分配規(guī)則將預定比特分配給所述頻域信號;比特調整單元,在有比特分配的頻域信號的最高頻率大于等于預定值時,調整所述頻域信號的比特分配;頻域編碼單元,根據(jù)所述頻域信號的比特分配對頻域信號進行編碼。

又一方面,提供了一種用于信號解碼的設備,所述設備包括:解碼單元,從接收的比特流中獲得解碼出的頻域信號;擴頻單元,用于預測未解碼出的頻域信號,在所述解碼出的頻域信號滿足預定條件的情況下,根據(jù)該解碼出的頻域信號來預測未解碼出的頻域信號;輸出單元,根據(jù)解碼出的頻域信號和預測的頻域信號來獲得最終輸出的時域信號。

在本發(fā)明實施例的上述技術方案中,在編碼時通過根據(jù)有比特分配的頻域信號的最高頻率來調整頻域信號的比特分配,在利用相同數(shù)目的比特進行頻域編碼的情況下達到了更好的編碼效果;在解碼時以該解碼出的頻域信號為指導,來設置未解碼出的頻域信號,使輸出信號達到更好的效果。

附圖說明

為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1圖示了根據(jù)本發(fā)明實施例的對信號進行編碼的方法;

圖2圖示了采用了本發(fā)明實施例的編碼方法的時頻聯(lián)合編碼方法;

圖3圖示了根據(jù)本發(fā)明實施例的對信號進行解碼的方法;

圖4圖示了在時頻聯(lián)合解碼方法中從接收的比特流中獲得解碼出的頻域信號的方法;

圖5圖示了根據(jù)本發(fā)明的編碼設備和/或解碼設備的示例性實現(xiàn);

圖6圖示了根據(jù)本發(fā)明實施例的對信號進行編碼的編碼設備;

圖7圖示了采用了本發(fā)明實施例的編碼設備的時頻聯(lián)合編碼設備;

圖8圖示了根據(jù)本發(fā)明實施例的對信號進行解碼的設備;

圖9圖示了在時頻聯(lián)合解碼中的解碼單元的框圖。

具體實施方式

下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

本發(fā)明的編碼技術方案和解碼技術方案,可以應用于各種通信系統(tǒng)中的發(fā)送和接收,所述通信系統(tǒng)例如:GSM,碼分多址(CDMA,Code Division Multiple Access)系統(tǒng),寬帶碼分多址(WCDMA,Wideband Code Division Multiple Access Wireless),通用分組無線業(yè)務(GPRS,General Packet Radio Service),長期演進(LTE,Long Term Evolution)等。

編碼技術方案和解碼技術方案,廣泛應用于各種電子設備中,例如:移動電話,無線裝置,個人數(shù)據(jù)助理(PDA),手持式或便攜式計算機,GPS接收機/導航器,照相機,音頻/視頻播放器,攝像機,錄像機,監(jiān)控設備等。通常,這類電子設備中包括音頻編碼器或音頻解碼器,音頻編碼器或者解碼器可以直接由數(shù)字電路或芯片例如DSP(digital signal processor)實現(xiàn),或者由軟件代碼驅動處理器執(zhí)行軟件代碼中的流程而實現(xiàn)。

作為示例,在一種音頻編碼技術方案中,首先將音頻時域信號變換為頻域信號,再將編碼比特分配給音頻頻域信號進行編碼,將編碼后的信號通過通信系統(tǒng)傳輸給解碼端,解碼端對編碼后的信號解碼恢復。

圖1圖示了根據(jù)本發(fā)明實施例的對信號進行編碼的方法100。如圖1所示,該方法包括:

110:根據(jù)輸入信號得到頻域信號。所述輸入信號可以為各種類型,諸如圖像信號、數(shù)據(jù)信號、音頻信號、視頻信號、文本信號等??刹捎弥T如快速傅立葉變換(FFT,F(xiàn)ast Fourier Transform)、離散余弦變換(DCT,Discrete Cosine Transform)等算法對輸入信號進行頻域變換而得到頻域信號。輸入信號的類型和頻域變換算法不構成對本發(fā)明的限制。

120:按照預定分配規(guī)則將預定比特分配給所述頻域信號。所述預定比特tot_bit是用于對頻域信號進行頻域編碼所要使用的比特。所述預定分配規(guī)則例如可以是將預定比特中的較多比特分配給頻域信號中的低頻段信號、并將預定比特中的剩余比特分配給除了所述低頻段信號之外的能量較大的頻段。可以針對所有低頻段相同地、或者根據(jù)低頻段信號的能量分布,將所述較多比特分配在低頻段信號中。為低頻段信號分配較多比特的原因在于,在諸如語音頻信號中,低頻段信號通常包含人耳更敏感的信息。

下面以音頻信號的頻域編碼為例進行說明。在進行頻域編碼時,通常按照頻率等間隔地將頻域信號劃分為子帶,或者根據(jù)頻域系數(shù)來劃分子帶,例如每16個頻域系數(shù)一個子帶。例如,針對20ms一幀的寬帶信號,將0~4kHz頻率范圍的160個系數(shù)劃分為10個子帶,其中0~2kHz頻率范圍內有5個子帶,2~4kHz頻率范圍內有5個子帶。然后,針對每個子帶進行比特分配。對0~2kHz頻率范圍內的低頻頻域信號分配數(shù)目為1F_bit的較多比特,將預定比特tot_bit減去1F_bit得到剩余比特rest_bit,并根據(jù)2~4kHz頻率范圍內的每個子帶的包絡大小將剩余比特rest_bit分配給2~4kHz頻率范圍內的子帶,每個子帶5比特。根據(jù)rest_bits和每個子帶的包絡的大小來確定有比特分配的子帶的數(shù)目和有比特分配的最高頻帶的子帶last_bin,同時將不能被5整除的余數(shù)平均分配給0~2kHz范圍內的每個子帶。

130:在有比特分配的頻域信號的最高頻率大于預定值的情況下,調整頻域信號的比特分配。所述預定值B可以根據(jù)經(jīng)驗值設定;一個實施例中,可以根據(jù)所述預定比特的比特數(shù)目tot_bit和頻域信號的分辨率(例如,0~8kHz帶寬范圍內有320個頻域系數(shù))來確定預定值B。在固定帶寬的情況下,預定比特的比特數(shù)目tot_bit越多,預定值B越高;預定比特的比特數(shù)目tot_bit固定時,頻域信號的分辨率越高,預定值B越高。在帶寬固定、頻域信號的分辨率也是固定的情況下,預定值B可以僅根據(jù)預定比特的比特數(shù)目tot_bit來確定,預定比特的比特數(shù)目tot_bit越多,預定值B越高。該預定值B是一預先設置的上限頻率值。例如,根據(jù)經(jīng)驗估計,對輸入信號進行頻域變換后,頻率大于該預定值的頻域信號通常分配不到比特。因此,在具體實踐中,可以將預定值B設置為比頻域信號的最高頻率值低一定頻率的頻率值,例如,設置為2.9kHz、3.2kHz、3.5kHz等。在其他實施例中,預定值B也可以根據(jù)諸如幀長、所采用的變換方法、或變換窗長之類的其他因素來確定。

在將頻域信號劃分為子帶以進行編碼的情況中,所述預定值B可以為在0~8kHz頻率范圍內的20個子帶的索引號,而有比特分配的頻域信號的最高頻率也可以用該最高頻率所位于的子帶的索引號來表示。例如,對采樣率為16kHz的寬帶信號,幀長為20ms,如果傳輸速率為6.8kbps,根據(jù)子帶的總數(shù)(20個)和待分配的預定比特的數(shù)目(6.8kbps×20ms=136bits),將B設置為6;在傳輸速率為7.6kbps時,根據(jù)子帶的總數(shù)(20個)和待分配的預定比特的數(shù)目(7.6kbps×20ms=152bits),將B設置為8??傊?,所述預定值B和有比特分配的頻域信號的最高頻率不局限于為頻率數(shù)值,還可以為子帶的索引號。在閱讀了本發(fā)明實施例的公開之后,工程技術人員根據(jù)實踐條件知道如何確定有比特分配的頻域信號的最高頻率是否大于預定值。

下面描述頻域信號的比特分配的調整。根據(jù)信號的類型或頻域特征等,可以減少頻域信號中對解碼端的輸出貢獻較少的部分的比特,并相應地增加有比特分配的最高頻率和其附近的頻域信號的比特分配。也就是說,所述調整頻域信號的比特分配可包括:減少所述頻域信號中被分配較多比特的頻段所分配的比特數(shù),并增加有比特分配的最高頻率和其附近的頻域信號所分配的比特數(shù)。對于音頻信號,所述被分配較多比特的頻段為例如0~2kHz的低頻段。下面舉例說明對頻域信號的比特分配的調整。

調整示例1:有比特分配的最高頻率為4kHz,如果2kHz~4kHz范圍內的某子帶比特分配為0,給此頻帶分配5比特,直到2kHz~4kHz范圍的所有子帶都分配到比特數(shù),假定2~4kHz范圍內額外增加的比特數(shù)為Nbit。此時,需要從0~2kHz范圍的子帶減少Nbit個比特。所采用的算法例如為:從0~2kHz范圍內的所有子帶(5個子帶)中每個子帶減少1個比特;然后減去一個最高頻的子帶;從剩余的4個子帶中每個子帶再減少1比特,再減少一個次高頻的子帶,……以此類推,直到所減少的比特數(shù)等于Nbit時停止。

調整示例2:對2kHz~4kHz范圍內的已分配比特的所有子帶增加J個比特,假如2~4kHz范圍有比特分配的子帶數(shù)為K,則此時2~4kHz范圍內額外增加的比特數(shù)Nbit=J×K,需要從0~2kHz范圍的子帶減少Nbit=J×K個比特。例如可采用的算法為:從0~2kHz范圍內的所有子帶(5個子帶)中平均每個子帶減少Nbit/5個比特。

調整示例3:對2kHz~4kHz范圍內沒有分配比特數(shù)的子帶各分5比特,然后對2~4kHz范圍內的所有子帶再增加J個比特,假如2~4kHz范圍有比特分配的子帶數(shù)為K,則此時2~4kHz范圍內額外增加的比特數(shù)Nbit=5×(5-K)+5×J,需要從0~2kHz范圍的子帶減少Nbit個比特。所采用的算法可以為:調整示例1中的算法和調整示例2中的算法中的任何一個。

此外,如果所述有比特分配的頻域信號的最高頻率小于預定值,則保持在120中按照預定分配規(guī)則進行的所述預定比特的分配。

140:根據(jù)調整后的比特分配對頻域信號進行編碼。在實踐中,可以根據(jù)需要采用任何頻域編碼方法。所選擇的頻域編碼方法不構成對本發(fā)明的限制。

通過以上對信號進行編碼的方法,通過根據(jù)有比特分配的頻域信號的最高頻率來調整頻域信號的比特分配,在利用相同數(shù)目的比特進行頻域編碼的情況下達到了更好的編碼效果。

以上的對信號進行編碼的方法可以適當?shù)貞糜诟鞣N編碼方案中,下面以其在時頻聯(lián)合編碼中的應用為例進行示例性說明。

圖2圖示了根據(jù)本發(fā)明實施例的時頻聯(lián)合編碼方法200。在圖2中,220、230、240分別于與圖1中的120、130、140相同。圖2與圖1的不同之處在于增加了步驟250、260,并且用211和212代替了圖1中的110。下文中將描述圖2與圖1的不同之處,并對于相同之處不進行重復。

211:通過對輸入信號進行時域分析得到第一時域信號和第二時域信號。例如,對輸入信號進行線性預測編碼(LPC,linear predictive coding)分析和處理得到線譜頻率(Line Spectral Frequency,LSF)參數(shù)和導抗譜頻率(Immittance Spectral Frequency,ISF)參數(shù)之一,還得到殘差信號res和自適應碼書貢獻exc_pit。所述LSF參數(shù)或ISF參數(shù)用于表示在LPC分析中所使用的系數(shù)(即LPC系數(shù))的頻域特性。將所述殘差信號res和自適應碼書貢獻exc_pit包括在第一時域信號中,自適應碼書貢獻exc_pit被包括在第二時域信號中。

212:通過對第一時域信號進行頻域變換和處理得到頻域信號。作為示例,對第一時域信號中的殘差信號res和自適應碼書貢獻exc_pit分別進行頻域變換,然后根據(jù)頻域的殘差信號f_res和頻域的自適應碼書貢獻f_exc_pit的相關性來判斷自適應碼書貢獻對輸出信號是否有貢獻。如果自適應碼書貢獻對輸出信號有貢獻,則從頻域的殘差信號f_res減去頻域的自適應碼書貢獻f_exc_pit而得到頻域的差值信號f_diff,并將該差值信號f_diff作為所述頻域信號。如果自適應碼書貢獻對輸出信號沒有貢獻,則將頻域的殘差信號f_res直接作為差值信號f_diff,即頻域信號。

在得到頻域信號之后,利用與圖1中的120、130、140相同的220、230、240對頻域信號進行編碼,而得到編碼后的頻域信號。

250:對第二時域信號進行編碼。作為示例,與頻域信號的編碼同時地執(zhí)行260??梢岳萌我鈺r域編碼方法(諸如預測編碼、脈沖編碼調制(Pulse Code Modulation,PCM)編碼等)對所述時域信號進行編碼,所采用的時域編碼方法不構成對本發(fā)明的限制。在自適應碼書貢獻對輸出信號有貢獻時,需要在解碼端得到自適應碼書貢獻,所以對該第二時域信號中的自適應碼書貢獻exc_pit進行編碼,以作為比特流傳送到接收端。然而,如果自適應碼書貢獻對輸出信號沒有貢獻,即解碼端的輸出不需要自適應碼書貢獻,則不需要該部分的時域編碼,從而提高了編碼效率。自適應碼書貢獻對輸出信號有貢獻意味著在解碼端僅僅根據(jù)編碼后的頻域信號不能得到高質量的輸出信號。

260:將編碼后的頻域信號和編碼后的第二時域信號復用為比特流。

需要說明的是,要進行頻域編碼的頻域信號除了包括差值信號f_diff之外,還可以包括其它信號,諸如指明自適應碼書貢獻對輸出信號是否有貢獻的標記flag。同樣地,要進行時域編碼的第二時域信號除了可包括自適應碼書貢獻exc_pit,還可以包括解碼需要的其它信息。

在上面結合圖2描述的時頻聯(lián)合編碼中,通過根據(jù)有比特分配的頻域信號的最高頻率來調整頻域信號的比特分配,并且與時域編碼相結合,從而達到了更好的編碼效果。

圖3圖示了根據(jù)本發(fā)明實施例的對信號進行解碼的方法300。該方法300包括:

310:從接收的比特流中獲得解碼出的頻域信號。在僅采用頻域編碼的情況,通過采用與頻域編碼方法對應的頻域解碼方法來從接收的比特流中獲得解碼出的頻域信號。對于時頻聯(lián)合編碼的情況,通過如下操作來從接收的比特流中獲得解碼出的頻域信號:對比特流中的頻域信息進行頻域解碼得到第一頻域信號;根據(jù)第一頻域信號確定在比特流中是否存在對輸出信號有貢獻的時域編碼信號;當確定在比特流中存在對輸出信號有貢獻的時域編碼信號時,對時域編碼信號進行時域解碼和頻域變換而得到第二頻域信號,并將第一頻域信號和第二頻域信號合成而獲得所述解碼出的頻域信號,這將在下面結合圖4進一步詳細描述。

320:在解碼出的頻域信號滿足預定條件的情況下,根據(jù)該解碼出的頻域信號來預測未解碼出的頻域信號。作為示例,所述解碼出的頻域信號滿足預定條件包括:該解碼出的頻域信號的最高頻率大于預定值、和該解碼出的頻域信號包括頻域變換后的對輸出信號有貢獻的時域編碼信號中的至少一個。要注意,在實踐中,可以先適用該解碼出的頻域信號包括頻域變換后的對輸出信號有貢獻的時域編碼信號的判斷條件,然后適用該解碼出的頻域信號的最高頻率大于預定值的判斷條件,或者采取相反的先后的順序,還可以僅僅采用兩者之一。

如前面結合圖1的130所描述的,所述預定值是根據(jù)頻域編碼所使用的預定比特的數(shù)目tot_bit和頻域信號的分辨率來確定的。根據(jù)實踐需要,可以將預定值設置為比頻域信號的最高頻率值低一定頻率的頻率值。在將頻域信號劃分為子帶的情況中,所述預定值可以為子帶的索引號,此時有比特分配的頻域信號的最高頻率也用該最高頻域所位于的子帶的索引號表示。解碼端的預定值的取值可以與編碼端的預定值的取值相同、也可以不同。

在時頻聯(lián)合編碼的情況中,在310中對比特流進行解碼而得到解碼出的頻域信號中可能包括頻域變換后的對輸出信號有貢獻的時域編碼信號,該頻域變換后的對輸出信號有貢獻的時域編碼信號例如是通過對比特流中包含的時域編碼信息進行時域解碼和頻域變換而獲得的信號,諸如為自適應碼書貢獻。根據(jù)被編碼信號的類型的不同、和在編碼時所采用的時域分析方法不是LPC分析時,該頻域變換后的對輸出信號有貢獻的時域編碼信號還可以是除了自適應碼書貢獻之外的其它信號。

在所述解碼出的頻域信號包括自適應碼書貢獻的情況中,可以根據(jù)前述的自適應碼書貢獻對輸出信號是否有貢獻的標記flag來獲知所述解碼出的頻域信號是否包括頻域變換后的對輸出信號有貢獻的時域編碼信號。在解碼出的頻域信號中包括頻域變換后的對輸出信號有貢獻的時域編碼信號,這說明僅靠頻域解碼難以得到高質量輸出,而且根據(jù)語音頻信號的特性,此時簡單地將未解碼出的頻域信號設置為噪聲會使輸出的信號質量惡化,從而需要預測未解碼出的頻域信號。

作為根據(jù)該解碼出的頻域信號來預測未解碼出的頻域信號的示例,可以從該解碼出的頻域信號的最高頻率開始向低頻率選擇的一段頻帶的頻域信號,并根據(jù)所選擇的頻域信號來預測未解碼出的頻域信號。例如,對幀長為20ms,采樣率為12.8kHz的信號,頻域系數(shù)為256個,帶寬為6.4kHz,在7.6kbps碼率時,每16個系數(shù)一個子帶,共有16個子帶,預定值設為10(4kHz),當該解碼出的頻域信號的最高頻帶大于10時,則4~6.4kHz范圍未解碼出的頻域系數(shù)通過1.6~4kHz范圍內解碼出的頻域系數(shù)預測得到。作為預測的實現(xiàn)的示例,可通過對所選擇的頻域信號進行歸一化處理、包絡處理等來預測未解碼出的頻域信號。所述歸一化處理、包絡處理的實現(xiàn)是本領域技術人員已知的手段,這里不進行詳細描述。此外,根據(jù)輸出信號的類型,本領域的技術人員可能選擇其它的方式來預測未解碼出的頻域信號,例如還可以根據(jù)已解碼出的頻域信號中固定頻段的頻域信號來預測未解碼出的頻域信號。

需要說明的是,在根據(jù)解碼出的頻域信號得到未解碼出的頻域信號之后,為了防止所預測的頻域信號中有能量過大的頻點,可以通過來自編碼端的ISF參數(shù)或LSF參數(shù)來對所預測的未解碼出的頻域系數(shù)進行修正。例如,通過LSF參數(shù)或ISF參數(shù)估計共振峰位置;在每個估計的共振峰位置,對幅值較大的頻域系數(shù)進行縮放。作為示例,當在該共振峰位置附近的預測的頻域系數(shù)的幅值大于一閾值(該閾值可以根據(jù)編碼端的時域分析的特征來設置)時,減小在該共振峰位置附近的預測的頻域系數(shù)的幅值。

此外,在頻域信號不滿足所述預定條件時,則利用噪聲來預測該未解碼出的頻域信號。

330:根據(jù)解碼出的頻域信號和預測的頻域信號來獲得最終輸出的時域信號。在通過解碼得到了解碼出的頻域信號,并預測了未解碼出的頻域信號之后,從而獲得整個頻帶內的頻域信號,則通過進行諸如快速傅立葉逆變換(IFFT,Inverse Fast Fourier Transform)之類的頻域逆變換等處理來得到時域的輸出信號。作為示例,對于時頻聯(lián)合編碼的情況,對所述ISF參數(shù)或LSF參數(shù)進行變換得到LPC系數(shù),利用該LPC系數(shù)對頻域逆變換之后得到的信號進行時域綜合,來得到最終輸出的時域信號。在實踐中,本領域的工程技術人員知道如何根據(jù)頻域信號得到時域的輸出信號的方案,這里不進行詳細描述。

在上面結合圖3描述的根據(jù)本發(fā)明實施例的對信號進行解碼的方法中,通過以該解碼出的頻域信號為指導,來設置未解碼出的頻域信號,使輸出信號達到更好的效果。

為了向本領域的技術人員更好地公開本發(fā)明實施例,下面結合圖4描述根據(jù)本發(fā)明實施例的解碼方法在時頻聯(lián)合解碼方案中的應用。在時頻聯(lián)合解碼方案中,除了從接收的比特流中獲得解碼出的頻域信號(310)的步驟之外,隨后的操作與結合圖3的描述的320、330相同。因此,下面僅描述在時頻聯(lián)合解碼方法中如何得到解碼出的頻域信號。

圖4圖示了在時頻聯(lián)合解碼方法中從接收的比特流中獲得解碼出的頻域信號的方法410。該方法410包括:

411:將比特流解復用為第一組比特和第二組比特。在接收端解碼時,當接收到了比特流后,采用與圖2的260中的復用技術對應的解復用技術將比特流解復用為第一組比特和第二組比特。該第一組比特包括要進行下述的頻域解碼的頻域信息,而該第二組比特包括要進行下述的時域解碼的、對輸出信號有貢獻的時域編碼信號。

對于音頻信號的時域聯(lián)合解碼,該第一組比特例如包括差值信號f_diff、指明自適應碼書貢獻對輸出信號是否有貢獻的標記flag等。該第二組比特例如在自適應碼書貢獻對輸出信號有貢獻時包括自適應碼書貢獻。要注意,該第一組比特和第二組比特與信號的編碼對應地還可以包括其它的信號。

412:對第一組比特進行頻域解碼得到第一頻域信號,并根據(jù)第一頻域信號確定在比特流中是否存在對輸出信號有貢獻的時域編碼信號。通過與編碼端的頻域編碼方法對應的解碼方法對對第一組比特進行解碼,以得到第一頻域信號。該第一頻域信號例如包括解碼后的差值信號f_diff、和指明自適應碼書貢獻對輸出信號是否有貢獻的標記flag。

413:對第二組比特進行時域解碼。通過與編碼端的時域編碼方法對應的解碼方法對對第二組比特進行解碼,以得到解碼后的時域信號。具體地,當確定在比特流中存在對輸出信號有貢獻的時域編碼信號時,對第二組比特中的時域編碼信號進行時域解碼。

414:對解碼后的時域信號中的自適應碼書貢獻進行頻域變換得到第二頻域信號。

415:將第一頻域信號和第二頻域信號合成獲得解碼出的頻域信號。作為示例,當自適應碼書貢獻對輸出信號有貢獻時,通過相加第一頻域信號中的差值信號f_diff和第二頻域信號中的自適應碼書貢獻來合成所述頻域信號。當自適應碼書貢獻對輸出信號沒有貢獻時,直接將第一頻域信號中的差值信號f_diff作為所述頻域信號。

在獲得解碼出的頻域信號之后,采用與圖3的320、330相同的步驟來獲得最終輸出的時域信號。

與上述方法實施例相關聯(lián),本發(fā)明還提供一種編碼設備和一種解碼設備,該編碼設備或解碼設備可以位于終端設備,網(wǎng)絡設備,或測試設備中。所述編碼設備或解碼設備可以由硬件電路來實現(xiàn),或者由軟件配合硬件來實現(xiàn)。

圖5圖示了根據(jù)本發(fā)明的編碼設備和/或解碼設備的示例性實現(xiàn)。如圖5所示,由一個處理器510經(jīng)由輸入/輸出接口520來調用編碼設備或解碼設備530,在內存540的協(xié)助下實現(xiàn)音頻信號的編碼或解碼處理。該編碼設備或解碼設備530可以執(zhí)行上述方法實施例中的各種方法和流程。

圖6圖示了根據(jù)本發(fā)明實施例的對信號進行編碼的編碼設備600。該編碼設備600包括:頻域變換單元610,根據(jù)輸入信號得到頻域信號;比特分配單元620,按照預定分配規(guī)則將預定比特分配給所述頻域信號;比特調整單元630,在有比特分配的頻域信號的最高頻率大于等于預定值時,調整所述頻域信號的比特分配;頻域編碼單元640,根據(jù)調整后的比特分配對頻域信號進行編碼。

頻域變換單元610可根據(jù)輸入信號得到頻域信號。該輸入信號可以為諸如圖像信號、數(shù)據(jù)信號、音頻信號、視頻信號、文本信號等的各種類型的信號??刹捎弥T如FFT、DCT等算法對輸入信號進行頻域變換而得到頻域信號。輸入信號的類型和頻域變換算法不構成對本發(fā)明的限制。

比特分配單元620可按照預定分配規(guī)則將預定比特tot_bit分配給所述頻域信號。所述tot_bit是用于對頻域信號進行編碼所要使用的比特數(shù)目。所述預定分配規(guī)則例如可以是將所述預定比特中的較多比特分配給頻域信號中的低頻段信號,并將預定比特中的剩余比特分配給除了所述低頻段信號之外的能量較大的頻段。對于低頻段的頻域信號的分配,可以針對所有低頻段相同地、或者根據(jù)低頻段信號的能量分布,將所述較多比特分配在低頻段信號中。為低頻段信號分配較多比特的原因在于,諸如語音之類的音頻信號在頻域中主要集中在低頻范圍內,為其分配較多比特能提高頻域編碼的效率。

作為示例,在對音頻信號進行頻域編碼的示例性情況中,如前面結合圖1的120所描述的,將0~4kHz頻率范圍的頻域信號劃分為10個子帶,其中0~2kHz頻率范圍內有5個子帶,2~4kHz頻率范圍內有5個子帶。然后,針對每個子帶進行比特分配。為0~2kHz頻率范圍內的低頻頻域信號分配數(shù)目為1F_bit的較多比特。根據(jù)2~4kHz頻率范圍內的每個子帶的包絡將剩余比特rest_bit(tot_bit減去1F_bit)分配給2~4kHz頻率范圍內的子帶。具體地,根據(jù)rest_bits和每個子帶的包絡的大小來確定有比特分配的子帶的數(shù)目和有比特分配的最高頻帶的子帶last_bin,同時將不能被5整除的余數(shù)平均分配給0~2kHz范圍內的每個子帶。

比特調整單元630可以在有比特分配的頻域信號的最高頻率大于等于預定值B時,調整所述頻域信號的比特分配。所述預定值B是根據(jù)所述預定比特的比特數(shù)目tot_bit和頻域信號的分辨率(例如,4kHz)來確定的。該預定值是一預先設置的上限頻率值。在具體實踐中,預定值B可以為比頻域信號的最高頻率值(例如,4kHz)低一定頻率的頻率值,例如,為2.9kHz、3.2kHz、3.5kHz等。如前所述,在將頻域信號劃分為子帶以進行編碼的情況中,所述預定值B可以為在0~4kHz頻率范圍內的10個子帶的索引號(例如,7或8),此時,有比特分配的頻域信號的最高頻率也要用該最高頻率所位于的子帶的索引號index來表示。

如果所述有比特分配的頻域信號的最高頻率(例如,index=7)小于預定值(例如,B=8),則保持在比特分配單元620中按照預定分配規(guī)則進行的所述預定比特的分配。

比特調整單元630可在所述最高頻率大于等于預定值時,調整所述比特分配單元620按照預定分配規(guī)則進行的頻域信號的比特分配。根據(jù)所述輸入信號的類型或所述頻域信號的頻域特征等,可以減少頻域信號中對解碼端的輸出貢獻較少的部分,并相應地增加有比特分配的最高頻率和其附近的頻域信號的比特分配。作為示例,所述比特調整單元630可減少所述頻域信號中被分配較多比特的頻段所分配的比特數(shù),并增加有比特分配的最高頻率和其附近的頻域信號所分配的比特數(shù)。對于音頻信號,所述被分配較多比特的頻段為例如0~2kHz的低頻段。

關于調整頻域信號的比特分配的實現(xiàn),可以參照上面描述的調整示例1~3,這里不再詳細說明。

所述頻域編碼單元640根據(jù)調整后的比特分配對頻域信號進行編碼。對頻域信號進行編碼的方法例如可以為變換編碼、子帶編碼等。此外,在所述最高頻率小于預定值時,所述比特調整單元630不調整頻域信號的比特分配。此時,頻域信號的比特分配是按照預定比特分配規(guī)則進行的比特分配,所述頻域編碼單元640根據(jù)所述按照預定比特分配規(guī)則進行的比特分配來對頻域信號進行編碼。

在以上對信號進行編碼的設備600中,通過根據(jù)有比特分配的頻域信號的最高頻率來調整頻域信號的比特分配,達到了更好的編碼效果。

所述編碼設備600可以適當?shù)貞糜诟鞣N編碼技術中,下面以其在時頻聯(lián)合編碼中的應用為例進行示例性說明。

圖7圖示了采用了本發(fā)明實施例的編碼設備的時頻聯(lián)合編碼設備700。

該時頻聯(lián)合編碼設備700包括:時域分析單元711,通過對輸入信號進行時域分析得到第一時域信號和第二時域信號;頻域變換單元712,通過對第一時域信號進行頻域變換和處理得到頻域信號;比特分配單元720,按照預定分配規(guī)則將預定比特分配給所述頻域信號;比特調整單元730,在有比特分配的頻域信號的最高頻率大于等于預定值時,調整所述頻域信號的比特分配;頻域編碼單元740,根據(jù)調整后的比特分配對頻域信號進行編碼;時域編碼單元750,對第二時域信號進行編碼;比特復用單元760,將編碼后的頻域信號和編碼后的第二時域信號復用為比特流。

在圖7中,比特分配單元720、比特調整單元730、頻域編碼單元740分別于與圖6中的比特分配單元620、比特調整單元630、頻域編碼單元640相同。圖7與圖6的不同之處在于增加了時域編碼單元750、比特復用單元760,并且用時域分析單元711和頻域變換單元712代替了圖6中的頻域變換單元610。下文中將描述圖7與圖6的不同之處,并對于相同之處不進行重復。

時域分析單元711通過對輸入信號進行時域分析得到第一時域信號和第二時域信號。例如,對輸入信號進行LPC分析和處理得到ISF參數(shù)(或LSF參數(shù))、殘差信號res和自適應碼書貢獻exc_pit。將所述殘差信號res和自適應碼書貢獻exc_pit作為第一時域信號,將自適應碼書貢獻exc_pit作為第二時域信號。

頻域變換單元712可通過對第一時域信號進行頻域變換和處理得到頻域信號。作為示例,對第一時域信號中的殘差信號res和自適應碼書貢獻exc_pit分別進行頻域變換,并然后根據(jù)頻域的殘差信號f_res和頻域的自適應碼書貢獻f_exc_pit的相關性來判斷自適應碼書貢獻對輸出信號是否有貢獻。如果自適應碼書貢獻對輸出信號有貢獻,則從頻域的殘差信號f_res減去頻域的自適應碼書貢獻f_exc_pit而得到頻域的差值信號f_diff,并將該差值信號f_diff包括在所述頻域信號。如果自適應碼書貢獻對輸出信號沒有貢獻,則將頻域的殘差信號f_res直接作為差值信號f_diff,以作為頻域信號傳送。該頻域信號除了包括差值信號f_diff之外,還可以包括其它信號,例如指明自適應碼書貢獻對輸出信號是否有貢獻的標記flag。

在得到頻域信號之后,利用與圖7中的比特分配單元720、比特調整單元730、頻域編碼單元740對頻域信號進行編碼,而得到編碼后的頻域信號。

時域編碼單元750可以對第二時域信號進行編碼??梢允褂弥T如預測編碼、脈沖編碼調制等時域編碼方法對所述時域信號進行編碼。在自適應碼書貢獻對輸出信號有貢獻時,需要在解碼端得到自適應碼書貢獻,所以對該第二時域信號中的自適應碼書貢獻exc_pit進行編碼,以傳送到接收端。然而,如果自適應碼書貢獻對輸出信號沒有貢獻,則不需要對自適應碼書貢獻進行編碼和傳輸,從而提高了編碼效率。比特復用單元760可將編碼后的頻域信號和編碼后的第二時域信號復用為比特流。

在上面結合圖7描述的時頻聯(lián)合編碼設備中,通過根據(jù)有比特分配的頻域信號的最高頻率來調整頻域信號的比特分配,并且與時域編碼相結合,從而達到了更好的編碼效果。

圖8圖示了根據(jù)本發(fā)明實施例的對信號進行解碼的解碼設備800。該解碼設備800包括:解碼單元810,從接收的比特流中獲得解碼出的頻域信號;擴頻單元820,用于預測未解碼出的頻域信號,在所述解碼出的頻域信號滿足預定條件的情況下,根據(jù)該解碼出的頻域信號來預測未解碼出的頻域信號;輸出單元830,根據(jù)解碼出的頻域信號和預測的頻域信號來獲得最終輸出的時域信號。

解碼單元810可從接收的比特流中獲得解碼出的頻域信號。在僅采用頻域編碼的情況,通過采用與頻域編碼方法對應的頻域解碼方法來從接收的比特流中獲得解碼出的頻域信號。對于時頻聯(lián)合編碼的情況,解碼單元810可通過如下操作從接收的比特流中獲得解碼出的頻域信號:對比特流中的頻域信息進行頻域解碼得到第一頻域信號;根據(jù)第一頻域信號確定在比特流中是否存在對輸出信號有貢獻的時域編碼信號;當確定在比特流中存在對輸出信號有貢獻的時域編碼信號時,對時域編碼信號進行時域解碼和頻域變換而得到第二頻域信號,并將第一頻域信號和第二頻域信號合成而獲得所述解碼出的頻域信號,這將在下面結合圖9詳細描述。

擴頻單元820可用于預測未解碼出的頻域信號。在所述解碼出的頻域信號滿足預定條件的情況下,擴頻單元820可根據(jù)解碼出的頻域信號來預測未解碼出的頻域信號。作為示例,所述解碼出的頻域信號滿足預定條件包括:該解碼出的頻域信號的最高頻率大于預定值、和該解碼出的頻域信號包括頻域變換后的對輸出信號有貢獻的時域編碼信號中的至少一個。在實踐中,可根據(jù)需要進行選擇。

如前面所描述的,所述預定值可根據(jù)頻域編碼所使用的預定比特的數(shù)目tot_bit和頻域信號的分辨率來確定的。根據(jù)實踐需要,可以將預定值設置為比頻域信號的最高頻率值低一定頻率的頻率值。在將頻域信號劃分為子帶的情況中,所述預定值可以為子帶的索引號,此時有比特分配的頻域信號的最高頻率也用該最高頻域所位于的子帶的索引號表示。

在使用時頻聯(lián)合解碼技術的情況中,在解碼單元810對比特流進行解碼得到的解碼出的頻域信號中可能包括對比特流中包含的時域信息進行時域解碼和頻域變換而獲得的信號,其例如為自適應碼書貢獻??梢愿鶕?jù)前述的自適應碼書貢獻對輸出信號是否有貢獻的標記flag來獲知所述頻域信號是否包括頻域變換后的對輸出信號有貢獻的時域編碼信號。根據(jù)被編碼信號的類型的不同、和在編碼時所采用的時域分析方法不是LPC分析時,該頻域變換后的對輸出信號有貢獻的時域編碼信號還可以是其它信號。

在解碼出的頻域信號中包括對比特流中包含的時域信息進行時域解碼和頻域變換而獲得的信號,這說明未解碼出的頻域信號中包括對輸出有用的信息,從而需要預測未解碼出的頻域信號,簡單地將未解碼出的頻域信號設置為噪聲會使輸出的信號質量惡化。

此外,在該解碼出的頻域信號不滿足預定條件時,所述擴頻單元820可以將該未解碼出的頻域信號設置為噪聲。

作為根據(jù)解碼出的頻域信號來預測未解碼出的頻域信號的示例,所述擴頻單元820可以從該解碼出的頻域信號的最高頻率開始向低頻率選擇的一段頻帶的頻域信號,并如上所述對所選擇的頻域信號進行處理,以根據(jù)所選擇的頻域信號來預測未解碼出的頻域信號。此外,還可以采用其它的方式來預測未解碼出的頻域信號,例如還可以根據(jù)已解碼出的頻域信號中固定頻段的頻域信號來預測未解碼出的頻域信號。

輸出單元830可根據(jù)解碼出的頻域信號和預測的頻域信號來獲得最終輸出的時域信號。在預測了未解碼出的頻域信號之后,獲得了整個頻帶內的頻域信號,則通過使用與編碼時采用的頻域變換的逆變換對整個帶寬的頻域信號進行頻域逆變換,從而得到時域的輸出信號。如前所述,該輸出單元可以通過使用根據(jù)ISF參數(shù)(或LSF參數(shù))得到的LPC系數(shù)對頻域逆變換之后的信號進行時域綜合,來得到最終輸出的時域信號以輸出。

對于解碼設備800中的各個單元的更詳細操作,可以參照前面結合圖3所描述的各個步驟。

在上面結合圖8描述的根據(jù)本發(fā)明實施例的對信號進行解碼的解碼設備800中,通過以所解碼出的頻域信號為指導,來設置未解碼出的頻域信號,使輸出信號達到更好的效果。

為了向本領域的技術人員更好地公開本發(fā)明實施例,下面簡要描述根據(jù)本發(fā)明實施例的解碼設備在時頻聯(lián)合解碼方案中的應用。在時頻聯(lián)合解碼方案中,除了解碼單元810的操作之外,其它構成單元的操作與擴頻單元820、輸出單元830的操作相同。因此,下面僅描述解碼單元810在時頻聯(lián)合解碼方法中的具體實現(xiàn)。

圖9圖示了在時頻聯(lián)合解碼中的解碼單元910的框圖。該解碼單元910包括:解復用單元911,將比特流解復用為第一組比特和第二組比特;頻域解碼單元912,對第一組比特進行頻域解碼得到第一頻域信號,并根據(jù)第一頻域信號確定在比特流中是否存在對輸出信號有貢獻的時域編碼信號;時域解碼單元913,當確定在比特流中存在對輸出信號有貢獻的時域編碼信號時,對第二組比特中的進行時域解碼;頻域變換單元914,對解碼后的時域信號進行頻域變換得到第二頻域信號;合成單元915,將第一頻域信號和第二頻域信號合成獲得解碼出的頻域信號。

為描述的方便和簡潔,對于所述解復用單元911、頻域解碼單元912、時域解碼單元913、頻域變換單元914、合成單元915的具體操作,請參見圖4中的411、412、413、414、和415,在此不再贅述。

本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結合來實現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術方案的特定應用和設計約束條件。專業(yè)技術人員可以對每個特定的應用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應認為超出本發(fā)明的范圍。

在本申請所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。

所述功能如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。

以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應所述以權利要求的保護范圍為準。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1