0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于多級矢量量化實現(xiàn)優(yōu)化LSF參數(shù)碼本的設計

電子設計 ? 來源:電子技術應用 ? 作者:周高洪,唐昆,崔 ? 2020-05-14 07:51 ? 次閱讀

矢量量化(Vector Quantization)是一種極其重要的信號壓縮方法,廣泛應用于語音、圖像信號壓縮等領域。信息論的一個分支——“率-畸變理論”指出,無論對于何種信息源,即使是無記憶的信息源(即各個采樣信號之間互相統(tǒng)計獨立),矢量量化總是優(yōu)于標量量化,且矢量維數(shù)越大優(yōu)度越高。因此,目前國內外對于矢量量化技術的研究非常廣泛而深入。平衡考慮量化效果和運算復雜度,多級矢量量化(MSVQ)提供了一個很好的折衷辦法。

線性預測編碼(LPC參數(shù)能很好地表征語音信號的短時譜包絡信息,在各種LPC參數(shù)中,線譜頻率(LSF)較其它參數(shù)能更有效地表達LPC信息。K.K.Paliwal和B.S.Atal仔細研究了用24~26個比特量化一個10階LSF參數(shù)的方法,提出了分裂矢量量化(Split Vector Quantization)和多級矢量量化MSVQ(Multistage Vector Quantization)兩種方案,并且試驗得到了用25比特的2級MSVQ能取得較好的量化效果(平均失真1dB,2~4dB概率小于2%,大于4dB為0)。

MSVQ算法有效減小了碼本容量,但如果在量化比特有限的情況下,想取得透明的量化效果,必須解決兩個問題:(1)怎樣搜索碼本得到最佳匹配索引;(2)怎樣設計碼本。在算法設計中這兩個問題必須統(tǒng)一考慮。對前一個問題,為了方便一般采用序列搜索算法,依次搜索得到各級的最佳匹配矢量。在碼本設計中,更多的也是分級依次進行碼本訓練,割裂了各級碼本之間的相關性。本文將著重研究多級矢量量化的聯(lián)合優(yōu)化碼本設計問題。

1、 問題分析

傳統(tǒng)的MSVQ算法在LSF參數(shù)碼本設計時采用一種連續(xù)(stage-by-stage)的設計方法,第k級碼本只與前面的第1至第(k-1)級碼本有關,而不考慮后續(xù)各級碼本,即將后續(xù)各級碼本內容視為0。在量化時,同樣只在本級尋找1個最佳匹配矢量,然后得到余量矢量送入下一級量化。量化過程可以用式(1)表示,假設有2級碼本,需要找出各級碼本索引:

基于多級矢量量化實現(xiàn)優(yōu)化LSF參數(shù)碼本的設計

在序列搜索算法中,搜索yi時,假設zj為0,搜索zj時yi已經固定。這樣的搜索算法顯然是一種次優(yōu)的搜索算法,解決這個問題的方法是全搜索。全搜索是最優(yōu)的搜索算法,但是其計算復雜度卻是難以承受的。例如,一個25比特2級碼本(13-12結構),其全搜索復雜度是上述連續(xù)搜索的2000倍以上。M進制搜索折衷解決了這個問題。在運算量大大減小的情況下,取得了逼近全搜索的量化效果。

在碼本設計中,無論是經典的GLA算法還是改進的模擬退火(SA)算法,碼本設計都是逐級連續(xù)進行的。利用各級碼本之間的相關性優(yōu)化碼本設計,可以較明顯地改善MSVQ的量化效果。在應用聯(lián)合碼本設計方法量化音頻DCT系數(shù)時,已經取得了大約0.4 dB的SNR改善。本文在量化LSF參數(shù)時,對比300步的SR算法,得到了大約0.05dB、約1bit的加權對數(shù)譜失真(WLSD)的改進效果。

2、 算法說明

2.1 失真距離量度

對一個MSVQ碼本,為方便考慮假設共有2級碼本。LSF參數(shù)為10維矢量。對LSF參數(shù)而言,其敏感矩陣(sensitivity matrix)是對角陣,因此可以用加權最小均方誤差(WMSE)代替加權對數(shù)譜失真(WLSD)作為失真量度。量化失真

r的經驗值一般為0.15。

2.2 理論推導

對一個訓練矢量集X和兩級碼本Y、Z,可以對X中每個矢量進行2級全搜索,得到最佳索引值對(i,j)。根據(jù)i和j的不同可以對X中每個矢量進行聚類。假設S為對第一級碼字形成的聚類,Si為所有X中第一級量化索引為i的訓練矢量集合。同樣假設R為第二級碼字聚類,可知,{S1,S2,…,SK1}和{R1,R2,…,RK2}均是同一X集合的不同劃分。對于X∈Si,平均量化失真為:

2.3 算法描述

(1)設置初始碼本,讀入訓練矢量文件,并對其進行兩級碼本全搜索,得到針對兩級碼本的聚類{S1,S2,…,SK1}和{R1,R2,…,RK2}。假設訓練矢量個數(shù)為num,對所有訓練矢量計算此時的量化失真之和,失真測度采用WLSD距離。設置迭代最大步數(shù)N,設置初始步數(shù)n=0;

(2)n=n+1,利用式(9)更新第一級碼本;

(3)重新對訓練矢量集進行全搜索,得到新的索引值對(i, j),然后利用式(10)更新第二級碼本;

(4)再次對訓練矢量集進行量化搜索,得到新的索引值對(i, j),并重新計算量化總畸變Dn;

(5)判斷n=N?若n<N,跳轉至(2)繼續(xù)進行迭代;若n=N,結束迭代,保存更新后的碼字至碼本文件。

2.4 算法的進一步優(yōu)化

上述聯(lián)合優(yōu)化MSVQ算法中,很重要的一步就是對訓練矢量進行聚類,使每個訓練矢量得到一個最匹配的索引值對(i, j)。(i, j)應當是通過全搜索得到的全局最佳匹配矢量。在不需要在線更新碼本的情況下,全搜索是可以采用的。然而如果在矢量維數(shù)較高時,想減小碼本訓練的運算量,也可以采用M進制序列搜索的方法。取M=8在實驗中得到了很好的效果。這樣即可得到一個性能近似的簡化版JCO-MSVQ碼本設計方法。

另外,在碼本設計中,可能出現(xiàn)聚類中無訓練矢量,即出現(xiàn)空聚類的情況。這時可以刪除該空聚類,并將包含訓練矢量最多的那個聚類抖動成兩個聚類。這樣可以獲得更小的聯(lián)合量化誤差,如圖1所示。

3、 實驗結果和分析

實際應用中,碼本訓練采用107 MB的語音文件,得到342302幀LSF參數(shù)(10維)和加權系數(shù),訓練矢量集足夠大。在實際的2kbps語音編碼算法中,對LSF參數(shù)進行3級矢量量化,比特分配為9/8/6,共23bits。利用聯(lián)合優(yōu)化碼本生成算法進行300步迭代,與SR算法的第三級300步迭代結果進行比較,得到訓練碼本總畸變數(shù)據(jù),如圖2所示。

可以看到,同樣步數(shù)的JCO-MSVQ算法較SR算法能取得更小的量化畸變。SR算法經過一定步數(shù)的迭代,基本沒有下探的空間。而JCO-MSVQ算法則能繼續(xù)優(yōu)化碼本,獲得更好的量化效果。并且,與SR算法不同,JCO-MSVQ算法中量化畸變是單調遞減的,因在訓練過程中每一步都是最優(yōu)的(簡化算法中是多進制搜索,因而是次優(yōu)的)。

統(tǒng)計量化譜失真,聯(lián)合碼本優(yōu)化MSVQ比其他的MSVQ有明顯的改善。在同一個LSF量化器中分別采用23bits SR碼本(碼本1)、24bits SR碼本(碼本2)和23bits聯(lián)合優(yōu)化碼本(碼本3),測試語音為一個3.5MB的語音文件,既有男聲也有女聲,共11348幀LSF參數(shù)。統(tǒng)計量化譜失真得到表1所示數(shù)據(jù)。

從表1數(shù)據(jù)可以看到,同是23bits的量化,聯(lián)合碼本設計MSVQ與應用SR算法生成碼本的MSVQ相比較,有大約1個比特的改善,接近于應用SR算法24bits量化的效果。甚至優(yōu)于文獻[2]中MSVQ算法的26bits量化(平均譜失真0.93dB)。平均譜失真為0.87dB,大于4dB的譜失真統(tǒng)計為0,達到了透明量化的要求。

本文研究結果已經成功應用于1/2kbps可變速率聲碼器項目中。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)

    關注

    8

    文章

    7113

    瀏覽量

    89303
  • 失真
    +關注

    關注

    2

    文章

    104

    瀏覽量

    21395
收藏 人收藏

    評論

    相關推薦

    什么是CAD矢量化?

    在使用浩辰CAD制圖軟件進行繪圖的過程中,經常需要進行CAD矢量化操作,可能有些小伙伴不是很清楚什么是CAD矢量化,接下來給大家詳細介紹一下吧!CAD矢量化是什么意思?矢量化的意思就是
    發(fā)表于 03-06 17:02

    使用SVE對HACCmk進行矢量化的案例研究

    介紹隨著 Arm 引入 Scalable Vector Extensions (SVE) 作為 ARMv8-2 中的可選擴展,編譯器自動矢量化器可以在優(yōu)化 SVE 或 Neon 之間進行選擇。程序員
    發(fā)表于 11-08 11:50

    基于Hopfield神經網絡的圖像矢量量化

    矢量量化是圖像壓縮的重要方法。論文提出了基于Hopfield 神經網絡的圖像矢量量化方法,該方法首先構造聚類表格;然后聚類表格按離散Hopfield 神經網絡串行方式運行;最后根據(jù)
    發(fā)表于 07-11 08:19 ?19次下載

    基于多級SMVQ的圖象編碼算法

    邊緣匹配矢量量化器(SMVQ)是有限狀態(tài)矢量量化器(FSVQ)的一個分支。該量化器適合于對圖像塊間相關性高的圖像進行壓縮編碼,其優(yōu)點是在比特率相近的情況下,編碼質量高
    發(fā)表于 08-07 09:46 ?12次下載

    一種優(yōu)化的鞋樣圖像矢量化方法

    針對制鞋業(yè)中鞋樣的錄入問題,提出了一種實現(xiàn)從圖像格式到圖形格式轉化的圖像矢量化方法。并且形成的圖形文件可根據(jù)不同鞋業(yè)CAD 軟件的要求而存儲成相應的格式。該方法還
    發(fā)表于 08-13 15:24 ?18次下載

    基于小波變換與矢量量化的圖像壓縮研究

    離散小波變換(DWT) 在圖像壓縮方面的研究目前國內外已經取得了令人矚目的成就,小波變換和矢量量化相結合在圖像處理方面的應用近幾年已成為人們的研究熱點, 但是由于離散小波
    發(fā)表于 12-07 11:22 ?14次下載

    一種基于暫時分解的高效線譜頻率參數(shù)量化方法

    本文基于二階暫時分解模型,利用LSF參數(shù)的有序性,給出了一種用于LSF參數(shù)壓縮的TD算法,在參數(shù)量化
    發(fā)表于 01-12 18:59 ?12次下載

    一種增強的LPC參數(shù)多級矢量量化技術

    為充分利用碼本的級間相關性,提出了一種聯(lián)合碼本優(yōu)化多級矢量量化(JCO-MSVQ)碼本設計方法。
    發(fā)表于 07-05 16:35 ?14次下載

    MAPGIS矢量化技巧步驟詳解

    利用MapGis進行屏幕跟蹤矢量化 > 1.利用MAPGIS矢量化作圖。
    發(fā)表于 10-21 15:45 ?0次下載

    基于矢量量化編碼的數(shù)據(jù)壓縮算法的研究與實現(xiàn)

    基于矢量量化編碼的數(shù)據(jù)壓縮算法的研究與實現(xiàn) As the rapid development of communications and information technology, data
    發(fā)表于 06-16 08:32 ?1798次閱讀

    基于TMS320DM642的最大熵矢量量化實現(xiàn)

    的熵最大化,從而確保在沒有先驗知識的情況下不會造成太多量化誤差;另一方面則考慮了矢量集合在時間空間上的分布關系。本文在TMS320DM642處理器上實現(xiàn)了這種算法,并進行了一系列的算法和程序層的
    發(fā)表于 02-28 15:56 ?0次下載

    第2部分:高級代碼矢量化優(yōu)化

    從Serial到Awesome,第2部分:高級代碼矢量化優(yōu)化
    的頭像 發(fā)表于 05-31 11:39 ?2238次閱讀

    矢量化的優(yōu)點和數(shù)據(jù)大小的影響

    矢量化的優(yōu)點和數(shù)據(jù)大小的影響
    的頭像 發(fā)表于 11-15 06:36 ?5871次閱讀

    矢量化或性能模具:調整最新的AVX SIMD指令

    英特爾?Advisor可以優(yōu)先考慮用于矢量化的循環(huán),為您提供關鍵的優(yōu)化數(shù)據(jù),并幫助優(yōu)化新的指令集。 學習如何。
    的頭像 發(fā)表于 11-05 06:37 ?3743次閱讀

    壓縮感知中的聯(lián)合信源信道矢量量化

    我們研究了使用矢量量化器(VQ)對壓縮感知(CS)測量進行聯(lián)合信源信道編碼(JSCC),提出了一個實現(xiàn)最佳JSCC方案的框架,該方案能夠在離散無記憶信道上編碼和傳輸稀疏源的CS測量,并對稀疏源信號
    發(fā)表于 11-05 08:00 ?0次下載
    壓縮感知中的聯(lián)合信源信道<b class='flag-5'>矢量量化</b>