信號編碼和解碼方法以及設(shè)備的制作方法
【專利摘要】本發(fā)明實施例提供了信號編碼和解碼方法以及設(shè)備。該方法包括:根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目k,其中i為正數(shù),k為正整數(shù);根據(jù)各個子帶量化的包絡(luò)從各個子帶中選擇k個子帶,或者根據(jù)心理聲學(xué)模型從各個子帶中選擇k個子帶;對k個子帶的頻譜系數(shù)進(jìn)行一次編碼操作。本發(fā)明實施例中,通過根據(jù)可用比特數(shù)和第一飽和閾值確定將要編碼的子帶數(shù)目k,并從各個子帶中選擇k個子帶來進(jìn)行編碼,而非對整個頻帶進(jìn)行編碼,能夠減少解碼信號的頻譜空洞,從而能夠提升輸出信號的聽覺質(zhì)量。
【專利說明】信號編碼和解碼方法以及設(shè)備
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及信號處理領(lǐng)域,并且具體地,涉及信號編碼和解碼方法以及設(shè)備。
【背景技術(shù)】
[0002] 目前的通信傳輸越來越重視語音或音頻信號的質(zhì)量,因此對信號編解碼的要求也 越來越高。在現(xiàn)有的中低速率信號編解碼算法中,由于可供分配的比特數(shù)不足,所以將可 供分配的比特數(shù)在整個頻帶內(nèi)進(jìn)行分配時,頻譜就會出現(xiàn)很多空洞,而且有一些即便是全0 的矢量,也需要浪費(fèi)1比特表示。此外,又由于這些算法的某些限制,在編碼后還可能有一 定比特的剩余,這又造成了比特數(shù)的浪費(fèi)。從而造成解碼端解碼出來的信號質(zhì)量不好。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明實施例提供信號編碼和解碼方法以及設(shè)備,能夠提升信號的聽覺質(zhì)量。
[0004] 第一方面,提供了一種信號編碼方法,包括:根據(jù)可用比特數(shù)和第一飽和閾值i, 確定將要編碼的子帶數(shù)目k,其中i為正數(shù),k為正整數(shù);根據(jù)各個子帶量化的包絡(luò)從所述各 個子帶中選擇k個子帶,或者根據(jù)心理聲學(xué)模型從所述各個子帶中選擇k個子帶;對所述k 個子帶的頻譜系數(shù)進(jìn)行一次編碼操作。
[0005] 結(jié)合第一方面,在第一種可能的實現(xiàn)方式中,所述對所述k個子帶的頻譜系數(shù)進(jìn) 行一次編碼操作,包括:對所述k個子帶的頻譜系數(shù)進(jìn)行歸一化,以得到所述k個子帶歸一 化的頻譜系數(shù);對所述k個子帶歸一化的頻譜系數(shù)進(jìn)行量化,以得到所述k個子帶量化的頻 譜系數(shù)。
[0006] 結(jié)合第一方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,還包括:如 果在所述一次編碼操作后所述可用比特數(shù)中剩余的比特數(shù)大于或等于第一比特數(shù)閾值,則 根據(jù)所述剩余的比特數(shù)、所述第二飽和閾值j和所述k個子帶量化的頻譜系數(shù),確定將要二 次編碼的m個矢量,其中j為正數(shù),m為正整數(shù);對所述m個矢量的頻譜系數(shù)進(jìn)行二次編碼 操作。
[0007] 結(jié)合第一方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述根據(jù) 所述剩余的比特數(shù)、第二飽和閾值j和所述k個子帶量化的頻譜系數(shù),確定將要二次編碼的 m個矢量,包括:根據(jù)所述剩余的比特數(shù)和所述第二飽和閾值j,確定將要編碼的矢量數(shù)目 m ;根據(jù)所述k個子帶量化的頻譜系數(shù)確定候選頻譜系數(shù),所述候選頻譜系數(shù)包括所述k個 子帶歸一化的頻譜系數(shù)減去對應(yīng)的所述k個子帶量化的頻譜系數(shù)所得到的頻譜系數(shù);從所 述候選頻譜系數(shù)所屬的矢量中選擇所述m個矢量。
[0008] 結(jié)合第一方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述從所 述候選頻譜系數(shù)所屬的矢量中選擇所述m個矢量,包括:對所述候選頻譜系數(shù)所屬的矢量 進(jìn)行排序,以得到排序后的矢量;從所述排序后的矢量中選擇前m個矢量;其中所述排序后 的矢量劃分為第一組矢量和第二組矢量,所述第一組矢量排在所述第二組矢量之前,所述 第一組矢量對應(yīng)于所述k個子帶量化的頻譜系數(shù)所屬的矢量中值為全0的矢量,所述第二 組矢量對應(yīng)于所述k個子帶量化的頻譜系數(shù)所屬的矢量中值為非全0的矢量。
[0009] 結(jié)合第一方面的第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,在所述第 一組矢量和所述第二組矢量中的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶從 低頻到高頻的順序排列的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
[0010] 結(jié)合第一方面的第四種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,在所述第 一組矢量和所述第二組矢量中的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶量 化的包絡(luò)從大到小的順序排列的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
[0011] 結(jié)合第一方面的第三種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述從所 述候選頻譜系數(shù)所屬的矢量中選擇所述m個矢量,包括:按照所述候選頻譜系數(shù)所屬的矢 量所在的子帶量化的包絡(luò)從大到小的順序,從所述候選頻譜系數(shù)所屬的矢量中選擇m個矢 量。
[0012] 結(jié)合第一方面的第二種可能的實現(xiàn)方式至第七種可能的實現(xiàn)方式中任一可能的 實現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述對所述m個矢量的頻譜系數(shù)進(jìn)行二次編碼操 作,包括:確定所述m個矢量的頻譜系數(shù)的全局增益;使用所述m個矢量的頻譜系數(shù)的全局 增益對所述m個矢量的頻譜系數(shù)進(jìn)行歸一化;對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量化。
[0013] 結(jié)合第一方面的第四種可能的實現(xiàn)方式至第六種可能的實現(xiàn)方式中任一可能的 實現(xiàn)方式,在第九種可能的實現(xiàn)方式中,所述對所述m個矢量的頻譜系數(shù)進(jìn)行二次編碼操 作,包括:確定所述第一組矢量的頻譜系數(shù)的全局增益和所述第二組矢量的頻譜系數(shù)的全 局增益;使用所述第一組矢量的頻譜系數(shù)的全局增益對所述m個矢量中屬于所述第一組矢 量的頻譜系數(shù)進(jìn)行歸一化,并使用所述第二組矢量的頻譜系數(shù)的全局增益對所述m個矢量 中屬于所述第二組矢量的頻譜系數(shù)進(jìn)行歸一化;對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量 化。
[0014] 結(jié)合第一方面的第三種可能的實現(xiàn)方式至第九種可能的實現(xiàn)方式中任一可能的 實現(xiàn)方式,在第十種可能的實現(xiàn)方式中,所述根據(jù)所述剩余的比特數(shù)和所述第二飽和閾值 j,確定將要編碼的矢量數(shù)目m,包括:按照下列等式確定m :m = X M) + 0.5J,其中,C 表示剩余的比特數(shù),Μ表示每個矢量所包含的頻譜系數(shù)數(shù)目。
[0015] 結(jié)合第一方面或第一方面的第一種可能的實現(xiàn)方式至第十種可能的實現(xiàn)方式中 任一可能的實現(xiàn)方式,在第十一種可能的實現(xiàn)方式中,所述根據(jù)可用比特數(shù)和第一飽和閾 值i,確定將要編碼的子帶數(shù)目k,包括:按照下列等式確定k :k = [B/(i X L) + 0.5J,其中, B表示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
[0016] 結(jié)合第一方面或第一方面的第一種可能的實現(xiàn)方式至第十一種可能的實現(xiàn)方式 中任一可能的實現(xiàn)方式,在第十二種可能的實現(xiàn)方式中,所述根據(jù)可用比特數(shù)和第一飽和 閾值i,確定將要編碼的子帶數(shù)目k,包括:如果信號為瞬態(tài)信號、摩擦音信號或大周期信 號,則根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目k。
[0017] 第二方面,提供了一種信號解碼方法,包括:根據(jù)可用比特數(shù)和第一飽和閾值i, 確定將要解碼的子帶數(shù)目k,其中i為正數(shù),k為正整數(shù);根據(jù)解碼的各個子帶的包絡(luò)從所述 各個子帶中選擇k個子帶,或根據(jù)心理聲學(xué)模型從所述各個子帶中選擇k個子帶;進(jìn)行一次 解碼操作,以得到所述k個子帶量化的頻譜系數(shù)。
[0018] 結(jié)合第二方面,在第一種可能的實現(xiàn)方式中,還包括:如果在所述一次解碼后所述 可用比特數(shù)中剩余的比特數(shù)大于或等于第一比特數(shù)閾值,則根據(jù)所述剩余的比特數(shù)和所述 第二飽和閾值j,確定將要二次解碼的矢量數(shù)目m,其中j為正數(shù),m為正整數(shù);進(jìn)行二次解 碼操作,以得到所述m個矢量歸一化的頻譜系數(shù)。
[0019] 結(jié)合第二方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,還包括:確 定所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之間的對應(yīng)關(guān)系。
[0020] 結(jié)合第二方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述確定 所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之間的對應(yīng)關(guān)系,包括: 確定所述m個矢量與所述k個子帶量化的頻譜系數(shù)所屬的矢量中第一類矢量之間的對應(yīng)關(guān) 系,其中所述m個矢量與所述第一類矢量之間是一一對應(yīng)的。
[0021] 結(jié)合第二方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述確定 所述m個矢量與所述k個子帶量化的頻譜系數(shù)所屬的矢量中的第一類矢量之間的對應(yīng)關(guān) 系,包括:對所述k個子帶量化的頻譜系數(shù)所屬的矢量進(jìn)行排序,得到排序后的矢量,其中 所述排序后的矢量劃分為第一組矢量和第二組矢量,所述第一組矢量排列在所述第二組矢 量之前,所述第一組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為全〇的矢量, 所述第二組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為非全〇的矢量;從所述 排序后的矢量中選擇前m個作為所述第一類矢量;建立所述第一類矢量與所述m個矢量之 間的對應(yīng)關(guān)系。
[0022] 結(jié)合第二方面的第四種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,在所述第 一組矢量和所述第二組矢量中的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶從 低頻到高頻的順序排列的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
[0023] 結(jié)合第二方面的第四種可能的實現(xiàn)方式,在第六種可能的實現(xiàn)方式中,在所述第 一組矢量和所述第二組矢量中的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶的 包絡(luò)從大到小的順序排列的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
[0024] 結(jié)合第二方面的第三種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述確定 所述m個矢量與所述k個子帶量化的頻譜系數(shù)所屬的矢量中的第一類矢量之間的對應(yīng)關(guān) 系,包括:按照所述k個子帶量化的頻譜系數(shù)所屬的矢量所在的子帶的包絡(luò)從大到小的順 序,從所述k個子帶量化的頻譜系數(shù)所屬的矢量中選擇m個作為所述第一類矢量;建立所述 第一類矢量與所述m個矢量之間的對應(yīng)關(guān)系。
[0025] 結(jié)合第二方面的第二種可能的實現(xiàn)方式至第七種可能的實現(xiàn)方式中任一實現(xiàn)方 式,在第八種可能的實現(xiàn)方式中,還包括:解碼所述m個矢量的全局增益;使用所述m個矢 量的全局增益對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行修正,以得到所述m個矢量的頻譜系 數(shù)。
[0026] 結(jié)合第二方面的第四種可能的實現(xiàn)方式至第六種可能的實現(xiàn)方式中任一實現(xiàn)方 式,在第九種可能的實現(xiàn)方式中,還包括:解碼第一全局增益和第二全局增益;使用所述第 一全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所述第一組矢量對應(yīng)的頻譜系數(shù)進(jìn)行 修正,并使用所述第二全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所述第二組矢量對 應(yīng)的頻譜系數(shù)進(jìn)行修正,以得到所述m個矢量的頻譜系數(shù)。
[0027] 結(jié)合第二方面的第八種可能的實現(xiàn)方式或第九種可能的實現(xiàn)方式,在第十種可能 的實現(xiàn)方式中,還包括:對所述k個子帶量化的頻譜系數(shù)和所述m個矢量的頻譜系數(shù)進(jìn)行疊 力口,得到所述k個子帶歸一化的頻譜系數(shù);對所述k個子帶歸一化的頻譜系數(shù)中值為0的頻 譜系數(shù)進(jìn)行噪聲填充,并對所述各個子帶中除k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢 復(fù),以得到第一頻帶的頻譜系數(shù),其中所述第一頻帶由所述各個子帶組成;使用所述各個子 帶的包絡(luò)修正所述第一頻帶的頻譜系數(shù),得到所述第一頻帶歸一化的頻譜系數(shù);使用所述 第一頻帶的全局增益對所述第一頻帶歸一化的頻譜系數(shù)進(jìn)行修正,以得到最終的第一頻帶 頻域信號。
[0028] 結(jié)合第二方面的第十種可能的實現(xiàn)方式,在第i^一種可能的實現(xiàn)方式中,所述對 所述k個子帶量化的頻譜系數(shù)和所述m個矢量的頻譜系數(shù)進(jìn)行疊加,得到所述k個子帶歸 一化的頻譜系數(shù),包括:根據(jù)所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系 數(shù)之間的對應(yīng)關(guān)系,對所述m個矢量的頻譜系數(shù)和所述k個子帶量化的頻譜系數(shù)進(jìn)行疊加。
[0029] 結(jié)合第二方面的第十種可能的實現(xiàn)方式或第i^一種可能的實現(xiàn)方式,在第十二種 可能的實現(xiàn)方式中,所述對所述k個子帶歸一化的頻譜系數(shù)中值為0的頻譜系數(shù)進(jìn)行噪聲 填充,包括:根據(jù)核心層解碼信息,確定加權(quán)值;使用所述加權(quán)值,對在所述k個子帶歸一化 的頻譜系數(shù)中與所述值為〇的頻譜系數(shù)相鄰的頻譜系數(shù)以及隨機(jī)噪聲進(jìn)行加權(quán)。
[0030] 結(jié)合第二方面的第十二種可能的實現(xiàn)方式,在第十三種可能的實現(xiàn)方式中,所述 根據(jù)核心層解碼信息,確定加權(quán)值,包括:從所述核心層解碼信息中獲取信號分類信息;如 果所述信號分類信息指示信號為摩擦音,則獲取預(yù)定的加權(quán)值;如果所述信號分類信息指 示信號為除摩擦音之外的其它信號,則從所述核心層解碼信息中獲取基音周期,并根據(jù)所 述基音周期確定加權(quán)值。
[0031] 結(jié)合第二方面的第十種可能的實現(xiàn)方式至第十三種可能的實現(xiàn)方式中任一實現(xiàn) 方式,在第十四種可能的實現(xiàn)方式中,所述對所述各個子帶中除所述k個子帶之外的其它 子帶的頻譜系數(shù)進(jìn)行恢復(fù),包括:從所述各個子帶中選擇與所述k個子帶之外的其它子帶 相鄰的η個子帶,并根據(jù)所述η個子帶的頻譜系數(shù)對所述k個子帶之外的其它子帶的頻譜 系數(shù)進(jìn)行恢復(fù),其中η為正整數(shù);或者,從所述k個子帶中選擇p個子帶,并根據(jù)所述p個子 帶的頻譜系數(shù)對所述k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),其中所述p個子帶中 每個子帶被分配的比特數(shù)大于或等于第二比特數(shù)閾值,其中P為正整數(shù)。
[0032] 結(jié)合第二方面的第一種可能的實現(xiàn)方式至第十四種可能的實現(xiàn)方式中任一實現(xiàn) 方式,在第十五種可能的實現(xiàn)方式中,所述根據(jù)所述剩余的比特數(shù)和所述第二飽和閾值j, 確定將要二次解碼的矢量數(shù)目m,包括:按照下列等式確定m:m = LC/(jxM) + 0.5j,其 中,C表示剩余的比特數(shù),Μ表示每個矢量所包含的頻譜系數(shù)數(shù)目。
[0033] 結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式至第十五種可能的實現(xiàn)方式 中任一實現(xiàn)方式,在第十六種可能的實現(xiàn)方式中,所述根據(jù)可用比特數(shù)和第一飽和閾值i, 確定將要解碼的子帶數(shù)目k,包括:按照下列等式確定k :k = L_B/(i X L) + 0.5」,其中,B表 示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
[0034] 結(jié)合第二方面或第二方面的第一種可能的實現(xiàn)方式至第十六種可能的實現(xiàn)方式 中任一實現(xiàn)方式,在第十七種可能的實現(xiàn)方式中,所述根據(jù)可用比特數(shù)和第一飽和閾值i, 確定將要解碼的子帶數(shù)目k,包括:如果信號為瞬態(tài)信號、摩擦音信號或大周期信號,則根 據(jù)可用比特數(shù)和第一飽和閾值i,確定將要解碼的子帶數(shù)目k。
[0035] 第三方面,提供了一種信號編碼設(shè)備,包括:確定單元,用于根據(jù)可用比特數(shù)和第 一飽和閾值i,確定將要編碼的子帶數(shù)目k,其中i為正數(shù),k為正整數(shù);選擇單元,用于根據(jù) 所述確定單元確定的所述子帶數(shù)目k,根據(jù)各個子帶量化的包絡(luò)從所述各個子帶中選擇k 個子帶,或者根據(jù)心理聲學(xué)模型從所述各個子帶中選擇k個子帶;編碼單元,用于對所述選 擇單元所選擇的k個子帶的頻譜系數(shù)進(jìn)行一次編碼操作。
[0036] 結(jié)合第三方面,在第一種可能的實現(xiàn)方式中,所述編碼單元具體用于:對所述k個 子帶的頻譜系數(shù)進(jìn)行歸一化,以得到所述k個子帶的歸一化的頻譜系數(shù);對所述k個子帶歸 一化的頻譜系數(shù)進(jìn)行量化,以得到所述k個子帶量化的頻譜系數(shù)。
[0037] 結(jié)合第三方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,所述選擇 單元,還用于如果在所述一次編碼操作后所述可用比特數(shù)中剩余的比特數(shù)大于或等于第一 比特數(shù)閾值,則根據(jù)所述剩余的比特數(shù)、第二飽和閾值j和所述k個子帶量化的頻譜系數(shù), 確定將要二次編碼的m個矢量,其中j為正數(shù),m為正整數(shù);所述編碼單元,還用于對所述選 擇單元所確定的所述m個矢量的頻譜系數(shù)進(jìn)行二次編碼操作。
[0038] 結(jié)合第三方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述選擇 單元具體用于:根據(jù)所述剩余的比特數(shù)和所述第二飽和閾值j,確定將要編碼的矢量數(shù)目 m ;根據(jù)所述k個子帶量化的頻譜系數(shù)確定候選頻譜系數(shù),所述候選頻譜系數(shù)包括所述k個 子帶歸一化的頻譜系數(shù)減去對應(yīng)的所述k個子帶量化的頻譜系數(shù)所得到的頻譜系數(shù);從所 述候選頻譜系數(shù)所屬的矢量中選擇所述m個矢量。
[0039] 結(jié)合第三方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述選擇 單元具體用于:對所述候選頻譜系數(shù)所屬的矢量進(jìn)行排序,以得到排序后的矢量;從所述 排序后的矢量中選擇前m個矢量;其中,所述排序后的矢量劃分為第一組矢量和第二組矢 量,所述第一組矢量排在所述第二組矢量之前,所述第一組矢量對應(yīng)于所述k個子帶量化 的頻譜系數(shù)所屬的矢量中值為全〇的矢量,所述第二組矢量對應(yīng)于所述k個子帶量化的頻 譜系數(shù)所屬的矢量中值為非全〇的矢量。
[0040] 結(jié)合第三方面的第三種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述選擇 單元具體用于按照所述候選頻譜系數(shù)所屬的矢量所在的子帶量化的包絡(luò)從大到小的順序, 從所述候選頻譜系數(shù)所屬的矢量中選擇m個矢量。
[0041] 結(jié)合第三方面的第二種可能的實現(xiàn)方式至第五種可能的實現(xiàn)方式中任一實現(xiàn)方 式,在第六種可能的實現(xiàn)方式中,所述編碼單元具體用于:確定所述m個矢量的頻譜系數(shù)的 全局增益;使用所述m個矢量的頻譜系數(shù)的全局增益對所述m個矢量的頻譜系數(shù)進(jìn)行歸一 化;對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量化。
[0042] 結(jié)合第三方面的第四種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,所述編碼 單元具體用于:確定所述第一組矢量的頻譜系數(shù)的全局增益和所述第二組矢量的頻譜系數(shù) 的全局增益;使用所述第一組矢量的頻譜系數(shù)的全局增益對所述m個矢量中屬于所述第一 組矢量的頻譜系數(shù)進(jìn)行歸一化,并使用所述第二組矢量的頻譜系數(shù)的全局增益對所述m個 矢量中屬于所述第二組矢量的頻譜系數(shù)進(jìn)行歸一化;對所述m個矢量歸一化的頻譜系數(shù)進(jìn) 行量化。
[0043] 結(jié)合第三方面的第三種可能的實現(xiàn)方式至第七種可能的實現(xiàn)方式中任一實 現(xiàn)方式,在第八種可能的實現(xiàn)方式中,所述選擇單元具體用于按照下列等式確定m: m = LC/(jxM:) + 0.5j,其中,C表示剩余的比特數(shù),Μ表示每個矢量所包含的頻譜系數(shù)數(shù) 目。
[0044] 結(jié)合第三方面或第三方面的第一種可能的實現(xiàn)方式至第八種可能的實現(xiàn)方式中 任一實現(xiàn)方式,在第九種可能的實現(xiàn)方式中,所述確定單元具體用于按照下列等式確定k: k = [_B/(i X L) + 0.5_|,其中,B表示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
[0045] 結(jié)合第三方面或第三方面的第一種可能的實現(xiàn)方式至第九種可能的實現(xiàn)方式中 任一實現(xiàn)方式,在第十種可能的實現(xiàn)方式中,所述確定單元具體用于如果信號為瞬態(tài)信號、 摩擦音信號或大周期信號,則根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目 k〇
[0046] 第四方面,提供了一種信號解碼設(shè)備,包括:確定單元,用于根據(jù)可用比特數(shù)和第 一飽和閾值i,確定將要解碼的子帶數(shù)目k,其中i為正數(shù),k為正整數(shù);選擇單元,用于根據(jù) 所述確定單元確定的所述子帶數(shù)目k,根據(jù)解碼的各個子帶的包絡(luò)從所述各個子帶中選擇 k個子帶,或根據(jù)心理聲學(xué)模型從所述各個子帶中選擇k個子帶;解碼單元,用于進(jìn)行一次 解碼操作,以得到所述選擇單元所選擇的所述k個子帶量化的頻譜系數(shù)。
[0047] 結(jié)合第四方面,在第一種可能的實現(xiàn)方式中,所述第一確定單元,還用于如果在所 述一次解碼操作后所述可用比特數(shù)中剩余的比特數(shù)大于或等于第一比特數(shù)閾值,則根據(jù)所 述剩余的比特數(shù)、所述第二飽和閾值j和所述第一組解碼的頻譜系數(shù),確定將要二次解碼 的矢量數(shù)目m,其中j為正數(shù),m為正整數(shù);所述解碼單元,還用于進(jìn)行二次解碼操作,以得到 所述m個矢量歸一化的頻譜系數(shù)。
[0048] 結(jié)合第四方面的第一種可能的實現(xiàn)方式,在第二種可能的實現(xiàn)方式中,還包括:第 二確定單元,用于確定所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之 間的對應(yīng)關(guān)系。
[0049] 結(jié)合第四方面的第二種可能的實現(xiàn)方式,在第三種可能的實現(xiàn)方式中,所述第二 確定單元具體用于確定所述m個矢量與所述k個子帶量化的頻譜系數(shù)所屬的矢量中第一類 矢量之間的對應(yīng)關(guān)系,其中所述m個矢量與所述第一類矢量之間是一一對應(yīng)的。
[0050] 結(jié)合第四方面的第三種可能的實現(xiàn)方式,在第四種可能的實現(xiàn)方式中,所述第二 確定單元具體用于對所述k個子帶量化的頻譜系數(shù)所屬的矢量進(jìn)行排序,得到排序后的矢 量,其中所述排序后的矢量劃分為第一組矢量和第二組矢量,所述第一組矢量排列在所述 第二組矢量之前,所述第一組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為全 〇的矢量,所述第二組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為非全〇的矢 量;從所述排序后的矢量中選擇前m個作為所述第一類矢量;建立所述第一類矢量與所述m 個矢量之間的對應(yīng)關(guān)系。
[0051] 結(jié)合第四方面的第三種可能的實現(xiàn)方式,在第五種可能的實現(xiàn)方式中,所述第二 確定單元具體用于按照所述k個子帶量化的頻譜系數(shù)所屬的矢量所在的子帶的包絡(luò)從大 到小的順序,從所述k個子帶量化的頻譜系數(shù)所屬的矢量中選擇m個作為所述第一類矢量; 建立所述第一類矢量與所述m個矢量之間的對應(yīng)關(guān)系。
[0052] 結(jié)合第四方面的第一種可能的實現(xiàn)方式至第五種可能的實現(xiàn)方式中任一實現(xiàn)方 式,在第六種可能的實現(xiàn)方式中,還包括修正單元;所述解碼單元還用于解碼所述m個矢量 的全局增益;所述修正單元,用于使用所述m個矢量的全局增益對所述m個矢量歸一化的頻 譜系數(shù)進(jìn)行修正,以得到所述m個矢量的頻譜系數(shù)。
[0053] 結(jié)合第四方面的第四種可能的實現(xiàn)方式,在第七種可能的實現(xiàn)方式中,還包括修 正單元;所述解碼單元還用于解碼第一全局增益和第二全局增益;所述修正單元,用于使 用所述第一全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所述第一組矢量對應(yīng)的頻譜 系數(shù)進(jìn)行修正,并使用所述第二全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所述第二 組矢量對應(yīng)的頻譜系數(shù)進(jìn)行修正,以得到所述m個矢量的頻譜系數(shù)。
[0054] 結(jié)合第四方面的第六種可能的實現(xiàn)方式或第七種可能的實現(xiàn)方式,在第八種可能 的實現(xiàn)方式中,還包括疊加單元和恢復(fù)單元:所述疊加單元,用于對所述k個子帶量化的頻 譜系數(shù)和所述m個矢量的頻譜系數(shù)進(jìn)行疊加,得到k個子帶的頻譜系數(shù);所述恢復(fù)單元,用 于對所述k個子帶歸一化的頻譜系數(shù)中值為0的頻譜系數(shù)進(jìn)行噪聲填充,并對所述各個子 帶中除k個之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),以得到第一頻帶的頻譜系數(shù),其中所述 第一頻帶由所述各個子帶組成;所述修正單元,還用于使用所述各個子帶的包絡(luò)修正所述 第一頻帶的頻譜系數(shù),得到所述第一頻帶歸一化的頻譜系數(shù);所述修正單元,還用于使用所 述第一頻帶的全局增益對所述第一頻帶歸一化的頻譜系數(shù)進(jìn)行修正,以得到最終的第一頻 帶頻域信號。
[0055] 結(jié)合第四方面的第八種可能的實現(xiàn)方式,在第九種可能的實現(xiàn)方式中,所述疊加 單元具體用于根據(jù)所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之間的 對應(yīng)關(guān)系,對所述m個矢量的頻譜系數(shù)和所述k個子帶量化的頻譜系數(shù)進(jìn)行疊加。
[0056] 結(jié)合第四方面的第八種可能的實現(xiàn)方式或第九種可能的實現(xiàn)方式,在第十種可能 的實現(xiàn)方式中,所述恢復(fù)單元具體用于:根據(jù)核心層解碼信息,確定加權(quán)值;使用所述加權(quán) 值,對在所述k個子帶歸一化的頻譜系數(shù)中與所述值為0的頻譜系數(shù)相鄰的頻譜系數(shù)以及 隨機(jī)噪聲進(jìn)行加權(quán)。
[0057] 結(jié)合第四方面的第十種可能的實現(xiàn)方式,在第i^一種可能的實現(xiàn)方式中,所述恢 復(fù)單元具體用于:從所述核心層解碼信息中獲取信號分類信息;如果所述信號分類信息指 示信號為摩擦音,則獲取預(yù)定的加權(quán)值;如果所述信號分類信息指示信號為除摩擦音之外 的其它信號,則從所述核心層解碼信息中獲取基音周期,并根據(jù)所述基音周期確定加權(quán)值。
[0058] 結(jié)合第四方面的第八種可能的實現(xiàn)方式至第i^一種可能的實現(xiàn)方式中任一實現(xiàn) 方式,在第十二種可能的實現(xiàn)方式中,所述恢復(fù)單元具體用于從所述各個子帶中選擇與所 述k個子帶之外的其它子帶相鄰的η個子帶,并根據(jù)所述η個子帶的頻譜系數(shù)對所述k個 子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),其中η為正整數(shù);或者,從所述k個子帶中選擇 P個子帶,并根據(jù)所述P個子帶的頻譜系數(shù)對所述k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行 恢復(fù),其中所述P個子帶中每個子帶被分配的比特數(shù)大于或等于第二比特數(shù)閾值,其中P為 正整數(shù)。
[0059] 結(jié)合第四方面的第一種可能的實現(xiàn)方式至第十二種可能的實現(xiàn)方式中任一實現(xiàn) 方式,在第十三種可能的實現(xiàn)方式中,所述第一確定單元具體用于按照下列等式確定m : m = [_C/(jxM:) + 0.5_|,其中,C表示剩余的比特數(shù),Μ表示每個矢量所包含的頻譜系數(shù)數(shù) 目。
[0060] 結(jié)合第四方面或第四方面的第一種可能的實現(xiàn)方式至第十三種可能的實現(xiàn)方式 中任一實現(xiàn)方式,在第十四種可能的實現(xiàn)方式中,所述第一確定單元具體用于按照下列等 式確定k :k = [B/G X L) + 0.5J,其中,B表示可用比特數(shù),L表示每個子帶所包含的頻譜系 數(shù)數(shù)目。
[0061] 結(jié)合第四方面或第四方面的第一種可能的實現(xiàn)方式至第十四種可能的實現(xiàn)方式 中任一實現(xiàn)方式,在第十五種可能的實現(xiàn)方式中,所述第一確定單元具體用于如果信號為 瞬態(tài)信號、摩擦音信號或大周期信號,則根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要解碼 的子帶數(shù)目k。
[0062] 本發(fā)明實施例中,通過根據(jù)可用比特數(shù)和第一飽和閾值確定將要編碼的子帶數(shù)目 k,并從各個子帶中選擇k個子帶來進(jìn)行編碼,而非對整個頻帶進(jìn)行編碼,能夠減少解碼信 號的頻譜空洞,從而能夠提升輸出信號的聽覺質(zhì)量。
【專利附圖】
【附圖說明】
[0063] 為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對本發(fā)明實施例中所需要使 用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發(fā)明的一些實施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0064] 圖1是根據(jù)本發(fā)明實施例的信號編碼方法的示意性流程圖。
[0065] 圖2是根據(jù)本發(fā)明另一實施例的信號解碼方法的示意性流程圖
[0066] 圖3是根據(jù)本發(fā)明一個實施例的信號編碼方法的過程的示意性流程圖。
[0067] 圖4是根據(jù)本發(fā)明實施例的確定二次編碼的矢量的過程的示意圖。
[0068] 圖5是根據(jù)本發(fā)明一個實施例的信號編碼設(shè)備的示意框圖。
[0069] 圖6是根據(jù)本發(fā)明一個實施例的信號解碼設(shè)備的示意框圖。
[0070] 圖7是根據(jù)本發(fā)明另一實施例的信號編碼設(shè)備的示意框圖。
[0071] 圖8是根據(jù)本發(fā)明另一實施例的信號解碼設(shè)備的示意框圖。
【具體實施方式】
[0072] 下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實施例是本發(fā)明的一部分實施例,而不是全部實施例?;诒景l(fā) 明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實 施例,都應(yīng)屬于本發(fā)明保護(hù)的范圍。
[0073] 編碼技術(shù)和解碼技術(shù),廣泛應(yīng)用于各種電子設(shè)備中,例如:移動電話,無線裝置, 個人數(shù)據(jù)助理(Personal Data Assistant, PDA),手持式或便攜式計算機(jī),全球定位系統(tǒng) (Global Positioning System, GPS)接收機(jī)/導(dǎo)航器,照相機(jī),音頻/視頻播放器,攝像機(jī), 錄像機(jī),監(jiān)控設(shè)備等。通常,這類電子設(shè)備中包括音頻編碼器或音頻解碼器,音頻編碼器 或者解碼器可以直接由數(shù)字電路或芯片例如數(shù)字信號處理(Digital Signal Processor, DSP)芯片實現(xiàn),或者由軟件代碼驅(qū)動處理器執(zhí)行軟件代碼中的流程而實現(xiàn)。
[0074] 圖1是根據(jù)本發(fā)明實施例的信號編碼方法的示意性流程圖。圖1的方法由編碼端 執(zhí)行,例如語音或音頻編碼器。本發(fā)明實施例中所指的信號,可以是語音或音頻信號。
[0075] 在編碼過程中,編碼端可以先將時域信號變換為頻域信號,例如可以采用快速 傅立葉變換(Fast Fourier Transform,F(xiàn)FT)或改進(jìn)離散余弦變換(Modified Discrete Cosine Transform,MDCT)等算法進(jìn)行時頻變換。然后,編碼端可以利用全局增益對頻域信 號的頻譜系數(shù)進(jìn)行歸一化,將歸一化的頻譜系數(shù)進(jìn)行分帶以得到各個子帶。
[0076] 110,根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目k,其中i為正 數(shù),k為正整數(shù)。
[0077] 可用比特數(shù)可以是指能夠用于編碼的總比特數(shù)。
[0078] 第一飽和閾值i可以是預(yù)先確定的。例如,可以基于如下原則確定第一飽和閾值 i :當(dāng)一個子帶內(nèi)平均每個頻譜系數(shù)分配的比特數(shù)大于或等于第一飽和閾值i時,則可以認(rèn) 為向該子帶分配的比特達(dá)到飽和。平均每個頻譜系數(shù)分配的比特數(shù)可以是向該子帶分配的 比特數(shù)與該子帶的頻譜系數(shù)數(shù)目的比值。向子帶分配的比特數(shù)達(dá)到飽和的含義可以是指即 使向該子帶分配更多的比特,該子帶的性能也不會有明顯的提升。第一飽和閾值i可以是 正數(shù)。通常情況下,i彡1.5。
[0079] 此外,也可以通過第一飽和閾值i和頻譜系數(shù)的數(shù)目,確定可用比特數(shù)閾值,進(jìn)而 確定將要編碼的子帶數(shù)目k。例如:預(yù)設(shè)i=2,總子帶數(shù)目為4,有兩個子帶內(nèi)的頻譜系數(shù) 的數(shù)目為64,有兩個子帶內(nèi)的頻譜系數(shù)的數(shù)目為72 ;這時,三個子帶包含的最少頻譜系數(shù) 的數(shù)目為64+64+72=200,所以,可以設(shè)定可用比特數(shù)閾值為200*2=400,當(dāng)可用比特數(shù)>400 時,k為4,否則k為3。
[0080] 120,根據(jù)各個子帶量化的包絡(luò)從各個子帶中選擇k個子帶,或者根據(jù)心理聲學(xué)模 型從各個子帶中選擇k個子帶。
[0081] 例如,編碼端可以按照各個子帶量化的包絡(luò)從大到小的順序,從各個子帶中選擇k 個子帶?;蛘?,編碼端可以根據(jù)心理聲學(xué)模型確定各個子帶的重要性,可以按照各個子帶的 重要性由高到低的順序選擇k個子帶。
[0082] 130,對k個子帶的頻譜系數(shù)進(jìn)行一次編碼操作。
[0083] 應(yīng)理解,此處的一次編碼可以指編碼端在編碼過程中對頻譜系數(shù)執(zhí)行的第一次編 碼操作。本發(fā)明實施例中,編碼操作可以包括歸一化、量化和寫碼流等操作。
[0084] 現(xiàn)有技術(shù)中,編碼端在整個頻帶內(nèi)統(tǒng)一進(jìn)行比特分配,然后對整個頻帶進(jìn)行編碼, 造成整個頻譜有很多空洞。本發(fā)明實施例中,編碼端首先根據(jù)可用比特數(shù)和第一飽和閾值 確定將要編碼的子帶數(shù)目k,然后從各個子帶中選擇k個子帶來進(jìn)行編碼。不向除k個子帶 以外剩余的子帶分配比特,因此這些剩余的子帶也不被編碼。這樣使得這k個子帶能夠被 更好地編碼,在解碼端能夠減少解碼信號的頻譜空洞,從而提升輸出信號的質(zhì)量。因此,本 發(fā)明實施例能夠提升信號的聽覺質(zhì)量。
[0085] 本發(fā)明實施例中,通過根據(jù)可用比特數(shù)和第一飽和閾值確定將要編碼的子帶數(shù)目 k,并從各個子帶中選擇k個子帶來進(jìn)行編碼,而非對整個頻帶進(jìn)行編碼,能夠減少解碼信 號的頻譜空洞,從而能夠提升輸出信號的聽覺質(zhì)量。
[0086] 本發(fā)明實施例可以應(yīng)用于各種類型的語音或音頻信號,例如瞬態(tài)信號、摩擦音信 號或大周期信號等。
[0087] 可選地,作為一個實施例,如果信號為瞬態(tài)信號、摩擦音信號或大周期信號,則編 碼端可以根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目k。
[0088] 具體地,編碼端可以確定輸入的信號是否為瞬態(tài)信號、摩擦音信號或大周期信號。 如果輸入的信號為瞬態(tài)信號、摩擦音信號或大周期信號,則可以執(zhí)行圖1的方法。這樣,能 夠提升瞬態(tài)信號、摩擦音信號或大周期信號的編碼質(zhì)量。
[0089] 可選地,作為另一實施例,在步驟110中,編碼端可以按照等式(1)確定子帶數(shù)目 k :
【權(quán)利要求】
1. 一種信號編碼方法,其特征在于,包括: 根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目k,其中i為正數(shù),k為正 整數(shù); 根據(jù)各個子帶量化的包絡(luò)從所述各個子帶中選擇k個子帶,或者根據(jù)心理聲學(xué)模型從 所述各個子帶中選擇k個子帶; 對所述k個子帶的頻譜系數(shù)進(jìn)行一次編碼操作。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對所述k個子帶的頻譜系數(shù)進(jìn)行一次 編碼操作,包括: 對所述k個子帶的頻譜系數(shù)進(jìn)行歸一化,以得到所述k個子帶歸一化的頻譜系數(shù); 對所述k個子帶歸一化的頻譜系數(shù)進(jìn)行量化,以得到所述k個子帶量化的頻譜系數(shù)。
3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括: 如果在所述一次編碼操作后所述可用比特數(shù)中剩余的比特數(shù)大于或等于第一比特數(shù) 閾值,則根據(jù)所述剩余的比特數(shù)、第二飽和閾值j和所述k個子帶量化的頻譜系數(shù),確定將 要二次編碼的m個矢量,其中j為正數(shù),m為正整數(shù); 對所述m個矢量的頻譜系數(shù)進(jìn)行二次編碼操作。
4. 根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述剩余的比特數(shù)、所述第二飽 和閾值j和所述k個子帶量化的頻譜系數(shù),確定將要二次編碼的m個矢量,包括: 根據(jù)所述剩余的比特數(shù)和所述第二飽和閾值j,確定將要二次編碼的矢量數(shù)目m ; 根據(jù)所述k個子帶量化的頻譜系數(shù)確定候選頻譜系數(shù),所述候選頻譜系數(shù)包括所述k 個子帶歸一化的頻譜系數(shù)減去對應(yīng)的所述k個子帶量化的頻譜系數(shù)所得到的頻譜系數(shù); 從所述候選頻譜系數(shù)所屬的矢量中選擇所述m個矢量。
5. 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述從所述候選頻譜系數(shù)所屬的矢量中 選擇所述m個矢量,包括: 對所述候選頻譜系數(shù)所屬的矢量進(jìn)行排序,以得到排序后的矢量; 從所述排序后的矢量中選擇前m個矢量; 其中,所述排序后的矢量被劃分為第一組矢量和第二組矢量,所述第一組矢量排在所 述第二組矢量之前,所述第一組矢量對應(yīng)于所述k個子帶量化的頻譜系數(shù)所屬的矢量中值 為全0的矢量,所述第二組矢量對應(yīng)于所述k個子帶量化的頻譜系數(shù)所屬的矢量中值為非 全〇的矢量。
6. 根據(jù)權(quán)利要求5所述的方法,其特征在于,在所述第一組矢量和所述第二組矢量中 的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶的頻率從低頻到高頻的順序排列 的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
7. 根據(jù)權(quán)利要求5所述的方法,其特征在于,在所述第一組矢量和所述第二組矢量中 的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶量化的包絡(luò)從大到小的順序排列 的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
8. 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述從所述候選頻譜系數(shù)所屬的矢量中 選擇所述m個矢量,包括: 按照所述候選頻譜系數(shù)所屬的矢量所在的子帶量化的包絡(luò)從大到小的順序,從所述候 選頻譜系數(shù)所屬的矢量中選擇m個矢量。
9. 根據(jù)權(quán)利要求3至8中任一項所述的方法,其特征在于,所述對所述m個矢量的頻譜 系數(shù)進(jìn)行二次編碼操作,包括: 確定所述m個矢量的頻譜系數(shù)的全局增益; 使用所述m個矢量的頻譜系數(shù)的全局增益對所述m個矢量的頻譜系數(shù)進(jìn)行歸一化; 對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量化。
10. 根據(jù)權(quán)利要求5至7中任一項所述的方法,其特征在于,所述對所述m個矢量的頻 譜系數(shù)進(jìn)行二次編碼操作,包括: 確定所述第一組矢量的頻譜系數(shù)的全局增益和所述第二組矢量的頻譜系數(shù)的全局增 M ; 使用所述第一組矢量的頻譜系數(shù)的全局增益對所述m個矢量中屬于所述第一組矢量 的頻譜系數(shù)進(jìn)行歸一化,并使用所述第二組矢量的頻譜系數(shù)的全局增益對所述m個矢量中 屬于所述第二組矢量的頻譜系數(shù)進(jìn)行歸一化; 對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量化。
11. 根據(jù)權(quán)利要求4至10中任一項所述的方法,其特征在于,所述根據(jù)所述剩余的比特 數(shù)和所述第二飽和閾值j,確定將要二次編碼的矢量數(shù)目m,包括: 按照下列等式確定m: m = |_C/(jxM) + 0.5」, 其中,C表示剩余的比特數(shù),M表示每個矢量所包含的頻譜系數(shù)數(shù)目。
12. 根據(jù)權(quán)利要求1至11中任一項所述的方法,其特征在于,所述根據(jù)可用比特數(shù)和第 一飽和閾值i,確定將要編碼的子帶數(shù)目k,包括: 按照下列等式確定k : k = LB/(ixL) + 0.5」, 其中,B表示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
13. 根據(jù)權(quán)利要求1至12中任一項所述的方法,其特征在于,所述根據(jù)可用比特數(shù)和第 一飽和閾值i,確定將要編碼的子帶數(shù)目k,包括: 如果信號為瞬態(tài)信號、摩擦音信號或大周期信號,則根據(jù)可用比特數(shù)和第一飽和閾值 i,確定將要編碼的子帶數(shù)目k。
14. 一種信號解碼方法,其特征在于,包括: 根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要解碼的子帶數(shù)目k,其中i為正數(shù),k為正 整數(shù); 根據(jù)解碼的各個子帶的包絡(luò)從所述各個子帶中選擇k個子帶,或根據(jù)心理聲學(xué)模型從 所述各個子帶中選擇k個子帶; 進(jìn)行一次解碼操作,以得到所述k個子帶量化的頻譜系數(shù)。
15. 根據(jù)權(quán)利要求14所述的方法,其特征在于,所述方法還包括: 如果在所述一次解碼操作后所述可用比特數(shù)中剩余的比特數(shù)大于或等于第一比特數(shù) 閾值,則根據(jù)所述剩余的比特數(shù)和所述第二飽和閾值j,確定將要二次解碼的矢量數(shù)目m, 其中j為正數(shù),m為正整數(shù); 進(jìn)行二次解碼操作,以得到所述m個矢量歸一化的頻譜系數(shù)。
16. 根據(jù)權(quán)利要求15所述的方法,其特征在于,所述方法還包括: 確定所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之間的對應(yīng)關(guān) 系。
17. 根據(jù)權(quán)利要求16所述的方法,其特征在于,所述確定所述m個矢量歸一化的頻譜系 數(shù)與所述k個子帶量化的頻譜系數(shù)之間的對應(yīng)關(guān)系,包括: 確定所述m個矢量與所述k個子帶量化的頻譜系數(shù)所屬的矢量中第一類矢量之間的對 應(yīng)關(guān)系,其中所述m個矢量與所述第一類矢量之間是一一對應(yīng)的。
18. 根據(jù)權(quán)利要求17所述的方法,其特征在于,所述確定所述m個矢量與所述k個子帶 量化的頻譜系數(shù)所屬的矢量中的第一類矢量之間的對應(yīng)關(guān)系,包括: 對所述k個子帶量化的頻譜系數(shù)所屬的矢量進(jìn)行排序,得到排序后的矢量; 從所述排序后的矢量中選擇前m個作為所述第一類矢量; 建立所述第一類矢量與所述m個矢量之間的對應(yīng)關(guān)系; 其中,所述排序后的矢量劃分為第一組矢量和第二組矢量,所述第一組矢量排列在所 述第二組矢量之前,所述第一組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為全 〇的矢量,所述第二組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為非全〇的矢 量。
19. 根據(jù)權(quán)利要求18所述的方法,其特征在于,在所述第一組矢量和所述第二組矢量 中的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶的頻率從低頻到高頻的順序排 列的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
20. 根據(jù)權(quán)利要求18所述的方法,其特征在于,在所述第一組矢量和所述第二組矢量 中的每組矢量中,不同子帶的矢量之間是按照矢量所在子帶的包絡(luò)從大到小的順序排列 的,且同一子帶內(nèi)的矢量是按照矢量原始順序排列的。
21. 根據(jù)權(quán)利要求17所述的方法,其特征在于,所述確定所述m個矢量與所述k個子帶 量化的頻譜系數(shù)所屬的矢量中的第一類矢量之間的對應(yīng)關(guān)系,包括: 按照所述k個子帶量化的頻譜系數(shù)所屬的矢量所在的子帶的包絡(luò)從大到小的順序,從 所述k個子帶量化的頻譜系數(shù)所屬的矢量中選擇m個作為所述第一類矢量; 建立所述第一類矢量與所述m個矢量之間的對應(yīng)關(guān)系。
22. 根據(jù)權(quán)利要求16至21中任一項所述的方法,其特征在于,所述方法還包括: 解碼所述m個矢量的全局增益; 使用所述m個矢量的全局增益對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行修正,以得到所 述m個矢量的頻譜系數(shù)。
23. 根據(jù)權(quán)利要求18至20中任一項所述的方法,其特征在于,所述方法還包括: 解碼第一全局增益和第二全局增益; 使用所述第一全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所述第一組矢量對應(yīng) 的頻譜系數(shù)進(jìn)行修正,并使用所述第二全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所 述第二組矢量對應(yīng)的頻譜系數(shù)進(jìn)行修正,以得到所述m個矢量的頻譜系數(shù)。
24. 根據(jù)權(quán)利要求22或23所述的方法,其特征在于,所述方法還包括: 對所述k個子帶量化的頻譜系數(shù)和所述m個矢量的頻譜系數(shù)進(jìn)行疊加,得到所述k個 子帶歸一化的頻譜系數(shù); 對所述k個子帶歸一化的頻譜系數(shù)中值為0的頻譜系數(shù)進(jìn)行噪聲填充,并對所述各個 子帶中除k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),以得到第一頻帶的頻譜系數(shù),其 中所述第一頻帶由所述各個子帶組成; 使用所述各個子帶的包絡(luò)修正所述第一頻帶的頻譜系數(shù),得到所述第一頻帶歸一化的 頻譜系數(shù);使用所述第一頻帶的全局增益對所述第一頻帶歸一化的頻譜系數(shù)進(jìn)行修正,以 得到最終的第一頻帶頻域信號。
25. 根據(jù)權(quán)利要求24所述的方法,其特征在于,所述對所述k個子帶量化的頻譜系數(shù)和 所述m個矢量的頻譜系數(shù)進(jìn)行疊加,得到所述k個子帶歸一化的頻譜系數(shù),包括: 根據(jù)所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之間的對應(yīng)關(guān) 系,對所述m個矢量的頻譜系數(shù)和所述k個子帶量化的頻譜系數(shù)進(jìn)行疊加。
26. 根據(jù)權(quán)利要求24或25所述的方法,其特征在于,所述對所述k個子帶歸一化的頻 譜系數(shù)中值為〇的頻譜系數(shù)進(jìn)行噪聲填充,包括: 根據(jù)核心層解碼信息,確定加權(quán)值; 使用所述加權(quán)值,對在所述k個子帶歸一化的頻譜系數(shù)中與所述值為0的頻譜系數(shù)相 鄰的頻譜系數(shù)以及隨機(jī)噪聲進(jìn)行加權(quán)。
27. 根據(jù)權(quán)利要求26所述的方法,其特征在于,所述根據(jù)核心層解碼信息,確定加權(quán) 值,包括: 從所述核心層解碼信息中獲取信號分類信息; 如果所述信號分類信息指示信號為摩擦音,則獲取預(yù)定的加權(quán)值; 如果所述信號分類信息指示信號為除摩擦音之外的其它信號,則從所述核心層解碼信 息中獲取基音周期,并根據(jù)所述基音周期確定加權(quán)值。
28. 根據(jù)權(quán)利要求24至27中任一項所述的方法,其特征在于,所述對所述各個子帶中 除所述k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),包括: 從所述各個子帶中選擇與所述k個子帶之外的其它子帶相鄰的n個子帶,并根據(jù)所述n 個子帶的頻譜系數(shù)對所述k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),其中n為正整數(shù); 或者, 從所述k個子帶中選擇p個子帶,并根據(jù)所述p個子帶的頻譜系數(shù)對所述k個子帶之 外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),其中所述P個子帶中每個子帶被分配的比特數(shù)大于或 等于第二比特數(shù)閾值,其中P為正整數(shù)。
29. 根據(jù)權(quán)利要求15至28中任一項所述的方法,其特征在于,所述根據(jù)所述剩余的比 特數(shù)和所述第二飽和閾值j,確定將要二次解碼的矢量數(shù)目m,包括: 按照下列等式確定m: m = LC/(jxM) + 0.5j, 其中,C表示剩余的比特數(shù),M表示每個矢量所包含的頻譜系數(shù)數(shù)目。
30. 根據(jù)權(quán)利要求14至29中任一項所述的方法,其特征在于,所述根據(jù)可用比特數(shù)和 第一飽和閾值i,確定將要解碼的子帶數(shù)目k,包括: 按照下列等式確定k : k = LB/(ixL) + 0_5」, 其中,B表示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
31. 根據(jù)權(quán)利要求14至30中任一項所述的方法,其特征在于,所述根據(jù)可用比特數(shù)和 第一飽和閾值i,確定將要解碼的子帶數(shù)目k,包括: 如果信號為瞬態(tài)信號、摩擦音信號或大周期信號,則根據(jù)可用比特數(shù)和第一飽和閾值 i,確定將要解碼的子帶數(shù)目k。
32. -種信號編碼設(shè)備,其特征在于,包括: 確定單元,用于根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要編碼的子帶數(shù)目k,其中i 為正數(shù),k為正整數(shù); 選擇單元,用于根據(jù)所述確定單元確定的所述子帶數(shù)目k,根據(jù)各個子帶量化的包絡(luò)從 所述各個子帶中選擇k個子帶,或者根據(jù)心理聲學(xué)模型從所述各個子帶中選擇k個子帶; 編碼單元,用于對所述選擇單元所選擇的k個子帶的頻譜系數(shù)進(jìn)行一次編碼操作。
33. 根據(jù)權(quán)利要求32所述的設(shè)備,其特征在于,所述編碼單元具體用于:對所述k個子 帶的頻譜系數(shù)進(jìn)行歸一化,以得到所述k個子帶的歸一化的頻譜系數(shù);對所述k個子帶歸一 化的頻譜系數(shù)進(jìn)行量化,以得到所述k個子帶量化的頻譜系數(shù)。
34. 根據(jù)權(quán)利要求33所述的設(shè)備,其特征在于, 所述選擇單元,還用于如果在所述一次編碼操作后所述可用比特數(shù)中剩余的比特數(shù)大 于或等于第一比特數(shù)閾值,則根據(jù)所述剩余的比特數(shù)、第二飽和閾值j和所述k個子帶量化 的頻譜系數(shù),確定將要二次編碼的m個矢量,其中j為正數(shù),m為正整數(shù); 所述編碼單元,還用于對所述選擇單元所確定的所述m個矢量的頻譜系數(shù)進(jìn)行二次編 碼操作。
35. 根據(jù)權(quán)利要求34所述的設(shè)備,其特征在于,所述選擇單元具體用于:根據(jù)所述剩余 的比特數(shù)和所述第二飽和閾值j,確定將要編碼的矢量數(shù)目m ;根據(jù)所述k個子帶量化的頻 譜系數(shù)確定候選頻譜系數(shù),所述候選頻譜系數(shù)包括所述k個子帶歸一化的頻譜系數(shù)減去對 應(yīng)的所述k個子帶量化的頻譜系數(shù)所得到的頻譜系數(shù);從所述候選頻譜系數(shù)所屬的矢量中 選擇所述m個矢量。
36. 根據(jù)權(quán)利要求35所述的設(shè)備,其特征在于,所述選擇單元具體用于:對所述候選頻 譜系數(shù)所屬的矢量進(jìn)行排序,以得到排序后的矢量;從所述排序后的矢量中選擇前m個矢 量;其中,所述排序后的矢量劃分為第一組矢量和第二組矢量,所述第一組矢量排在所述第 二組矢量之前,所述第一組矢量對應(yīng)于所述k個子帶量化的頻譜系數(shù)所屬的矢量中值為全 〇的矢量,所述第二組矢量對應(yīng)于所述k個子帶量化的頻譜系數(shù)所屬的矢量中值為非全0的 矢量。
37. 根據(jù)權(quán)利要求35所述的設(shè)備,其特征在于,所述選擇單元具體用于按照所述候選 頻譜系數(shù)所屬的矢量所在的子帶量化的包絡(luò)從大到小的順序,從所述候選頻譜系數(shù)所屬的 矢量中選擇m個矢量。
38. 根據(jù)權(quán)利要求34至37中任一項所述的設(shè)備,其特征在于,所述編碼單元具體用于: 確定所述m個矢量的頻譜系數(shù)的全局增益;使用所述m個矢量的頻譜系數(shù)的全局增益對所 述m個矢量的頻譜系數(shù)進(jìn)行歸一化;對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量化。
39. 根據(jù)權(quán)利要求36所述的設(shè)備,其特征在于,所述編碼單元具體用于:確定所述第一 組矢量的頻譜系數(shù)的全局增益和所述第二組矢量的頻譜系數(shù)的全局增益;使用所述第一組 矢量的頻譜系數(shù)的全局增益對所述m個矢量中屬于所述第一組矢量的頻譜系數(shù)進(jìn)行歸一 化,并使用所述第二組矢量的頻譜系數(shù)的全局增益對所述m個矢量中屬于所述第二組矢量 的頻譜系數(shù)進(jìn)行歸一化;對所述m個矢量歸一化的頻譜系數(shù)進(jìn)行量化。
40. 根據(jù)權(quán)利要求35至39中任一項所述的設(shè)備,其特征在于,所述選擇單元具體用于 按照下列等式確定m: m = [C/(jx M) + 0.5j, 其中,C表示剩余的比特數(shù),M表示每個矢量所包含的頻譜系數(shù)數(shù)目。
41. 根據(jù)權(quán)利要求32至40中任一項所述的設(shè)備,其特征在于,所述確定單元具體用于 按照下列等式確定k : k = _xL) + 0.5」, 其中,B表示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
42. 根據(jù)權(quán)利要求32至41中任一項所述的設(shè)備,其特征在于,所述確定單元具體用于 如果信號為瞬態(tài)信號、摩擦音信號或大周期信號,則根據(jù)可用比特數(shù)和第一飽和閾值i,確 定將要編碼的子帶數(shù)目k。
43. -種信號解碼設(shè)備,其特征在于,包括: 第一確定單元,用于根據(jù)可用比特數(shù)和第一飽和閾值i,確定將要解碼的子帶數(shù)目k, 其中i為正數(shù),k為正整數(shù); 選擇單元,用于根據(jù)所述第一確定單元確定的所述子帶數(shù)目k,根據(jù)解碼的各個子帶的 包絡(luò)從所述各個子帶中選擇k個子帶,或根據(jù)心理聲學(xué)模型從所述各個子帶中選擇k個子 帶; 解碼單元,用于進(jìn)行一次解碼操作,以得到所述選擇單元所選擇的所述k個子帶量化 的頻譜系數(shù)。
44. 根據(jù)權(quán)利要求43所述的設(shè)備,其特征在于, 所述第一確定單元,還用于如果在所述一次解碼后所述可用比特數(shù)中剩余的比特數(shù)大 于或等于第一比特數(shù)閾值,則根據(jù)所述剩余的比特數(shù)、所述第二飽和閾值j和所述第一組 解碼的頻譜系數(shù),確定將要二次解碼的矢量數(shù)目m,其中j為正數(shù),m為正整數(shù); 所述解碼單元,還用于進(jìn)行二次解碼操作,以得到所述m個矢量歸一化的頻譜系數(shù)。
45. 根據(jù)權(quán)利要求44所述的設(shè)備,其特征在于,還包括: 第二確定單元,用于確定所述m個矢量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜 系數(shù)之間的對應(yīng)關(guān)系。
46. 根據(jù)權(quán)利要求45所述的設(shè)備,其特征在于,所述第二確定單元具體用于確定所述m 個矢量與所述k個子帶量化的頻譜系數(shù)所屬的矢量中第一類矢量之間的對應(yīng)關(guān)系,其中所 述m個矢量與所述第一類矢量之間是一一對應(yīng)的。
47. 根據(jù)權(quán)利要求46所述的設(shè)備,其特征在于,所述第二確定單元具體用于對所述k個 子帶量化的頻譜系數(shù)所屬的矢量進(jìn)行排序,得到排序后的矢量;從所述排序后的矢量中選 擇前m個作為所述第一類矢量;建立所述第一類矢量與所述m個矢量之間的對應(yīng)關(guān)系;其 中,所述排序后的矢量劃分為第一組矢量和第二組矢量,所述第一組矢量排列在所述第二 組矢量之前,所述第一組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為全〇的矢 量,所述第二組矢量包括所述第一組解碼的頻譜系數(shù)所屬的矢量中值為非全0的矢量。
48. 根據(jù)權(quán)利要求46所述的設(shè)備,其特征在于,所述第二確定單元具體用于按照所述k 個子帶量化的頻譜系數(shù)所屬的矢量所在的子帶的包絡(luò)從大到小的順序,從所述k個子帶量 化的頻譜系數(shù)所屬的矢量中選擇m個作為所述第一類矢量;建立所述第一類矢量與所述m 個矢量之間的對應(yīng)關(guān)系。
49. 根據(jù)權(quán)利要求44至48中任一項所述的設(shè)備,其特征在于,還包括修正單元; 所述解碼單元還用于解碼所述m個矢量的全局增益; 所述修正單元,用于使用所述m個矢量的全局增益對所述m個矢量歸一化的頻譜系數(shù) 進(jìn)行修正,以得到所述m個矢量的頻譜系數(shù)。
50. 根據(jù)權(quán)利要求47所述的設(shè)備,其特征在于,還包括修正單元; 所述解碼單元還用于解碼第一全局增益和第二全局增益; 所述修正單元,用于使用所述第一全局增益對所述m個矢量歸一化的頻譜系數(shù)中與所 述第一組矢量對應(yīng)的頻譜系數(shù)進(jìn)行修正,并使用所述第二全局增益對所述m個矢量歸一化 的頻譜系數(shù)中與所述第二組矢量對應(yīng)的頻譜系數(shù)進(jìn)行修正,以得到所述m個矢量的頻譜系 數(shù)。
51. 根據(jù)權(quán)利要求49或50所述的設(shè)備,其特征在于,還包括疊加單元和恢復(fù)單元: 所述疊加單元,用于對所述k個子帶量化的頻譜系數(shù)和所述m個矢量的頻譜系數(shù)進(jìn)行 疊加,得到k個子帶的頻譜系數(shù); 所述恢復(fù)單元,用于對所述k個子帶歸一化的頻譜系數(shù)中值為0的頻譜系數(shù)進(jìn)行噪聲 填充,并對所述各個子帶中除k個之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),以得到第一頻帶 的頻譜系數(shù),其中所述第一頻帶由所述各個子帶組成; 所述修正單元,還用于使用所述各個子帶的包絡(luò)修正所述第一頻帶的頻譜系數(shù),得到 所述第一頻帶歸一化的頻譜系數(shù); 所述修正單元,還用于使用所述第一頻帶的全局增益對所述第一頻帶歸一化的頻譜系 數(shù)進(jìn)行修正,以得到最終的第一頻帶頻域信號。
52. 根據(jù)權(quán)利要求51所述的設(shè)備,其特征在于,所述疊加單元具體用于根據(jù)所述m個矢 量歸一化的頻譜系數(shù)與所述k個子帶量化的頻譜系數(shù)之間的對應(yīng)關(guān)系,對所述m個矢量的 頻譜系數(shù)和所述k個子帶量化的頻譜系數(shù)進(jìn)行疊加。
53. 根據(jù)權(quán)利要求51或52所述的設(shè)備,其特征在于,所述恢復(fù)單元具體用于:根據(jù)核 心層解碼信息,確定加權(quán)值;使用所述加權(quán)值,對在所述k個子帶歸一化的頻譜系數(shù)中與所 述值為〇的頻譜系數(shù)相鄰的頻譜系數(shù)以及隨機(jī)噪聲進(jìn)行加權(quán)。
54. 根據(jù)權(quán)利要求53所述的設(shè)備,其特征在于,所述恢復(fù)單元具體用于:從所述核心層 解碼信息中獲取信號分類信息;如果所述信號分類信息指示信號為摩擦音,則獲取預(yù)定的 加權(quán)值;如果所述信號分類信息指示信號為除摩擦音之外的其它信號,則從所述核心層解 碼信息中獲取基音周期,并根據(jù)所述基音周期確定加權(quán)值。
55. 根據(jù)權(quán)利要求51至54中任一項所述的設(shè)備,其特征在于,所述恢復(fù)單元具體用于 從所述各個子帶中選擇與所述k個子帶之外的其它子帶相鄰的n個子帶,并根據(jù)所述n個 子帶的頻譜系數(shù)對所述k個子帶之外的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),其中n為正整數(shù);或 者,從所述k個子帶中選擇p個子帶,并根據(jù)所述p個子帶的頻譜系數(shù)對所述k個子帶之外 的其它子帶的頻譜系數(shù)進(jìn)行恢復(fù),其中所述P個子帶中每個子帶被分配的比特數(shù)大于或等 于第二比特數(shù)閾值,其中P為正整數(shù)。
56. 根據(jù)權(quán)利要求44至55中任一項所述的設(shè)備,其特征在于,所述第一確定單元具體 用于按照下列等式確定m: m = Lc./(jxM) + 0.5j, 其中,C表示剩余的比特數(shù),M表示每個矢量所包含的頻譜系數(shù)數(shù)目。
57. 根據(jù)權(quán)利要求43至56中任一項所述的設(shè)備,其特征在于,所述第一確定單元具體 用于按照下列等式確定k: k=LB/(ixL) + 0_5」, 其中,B表示可用比特數(shù),L表示每個子帶所包含的頻譜系數(shù)數(shù)目。
58. 根據(jù)權(quán)利要求43至57中任一項所述的設(shè)備,其特征在于,所述第一確定單元具體 用于如果信號為瞬態(tài)信號、摩擦音信號或大周期信號,則根據(jù)可用比特數(shù)和第一飽和閾值 i,確定將要解碼的子帶數(shù)目k。
【文檔編號】G10L19/02GK104282312SQ201310271015
【公開日】2015年1月14日 申請日期:2013年7月1日 優(yōu)先權(quán)日:2013年7月1日
【發(fā)明者】劉澤新, 苗磊, 胡晨 申請人:華為技術(shù)有限公司