日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于线性预测的语音编码原理解析

發布時間:2024/4/11 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于线性预测的语音编码原理解析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文 | 拍樂云

早期的音頻系統都是基于聲音的模擬信號實現的,在聲音的錄制、編輯和播放過程中很容易引入各種噪聲,從而導致信號的失真。隨著信息技術的發展,數字信號處理技術在越來越多領域得到了應用,數字信號更是具備了易于存儲和遠距離傳輸、沒有累積失真、抗干擾能力強等等,信號和信號處理都往數字化發展。為了使得數字音頻可以被高效地壓縮存儲并高品質地還原,數字音頻的編碼技術就變成至關重要的一個部分了。本篇文章會介紹當今的音頻的編碼器(傳統算法非深度學習)的兩大主流陣營之一的基于線性預測的語音編碼器的原理。

?#01

音頻的編碼器分類及簡介

比較流行基于傳統算法的音頻的編碼器基本可以分成兩個大的類別:

  • Audio Codec(音頻編碼器): aac, mp3, ogg, celt(inside of opus) ...

  • Speech Codec(語音編碼器):?ilbc, isac, silk(inside of opus) ...

而這兩種編碼器類型基于完全不同的編碼原理,Audio Codec (音頻編碼器)利用了人類聽覺感知系統的特性來研究音頻編碼的方法,可以對較多音源,復雜信號進行高品質的編碼。而Speech Codec (語音編碼器)是以語音生成模型為基礎,可以對單個音源(人或者一些樂器的發音器官單元)進行更低碼率的高效編碼。

為什么已經有了可以對較多音源,復雜信號進行高品質編碼的Audio Codec,還需要研究和發展Speech Codec呢?

因為應用領域的需求完全不一樣。Audio Codec的應用領域更多和音樂有關,研究的是在保證盡量小的感知失真的前提下,對聲音進行壓縮編碼。早期mp3想要實現高品質所需要的編碼碼率還是比較高的,壓縮比并不高。而早期的數字電信系統的帶寬有限,如何可以用盡量小的帶寬實現可以還原出清晰的語音則成了Speech Codec的任務。更多在8kHz和16kHz采樣率下實現較低碼率的編碼。

?#02

語音的發聲模型和特性

既然需要設計一款專門針對語音的編碼器,那肯定要先研究一下語音的一些特性。

1. 人的發聲模型

總的來說,人的發聲模型可以分成三個部分:

  • 由肺和氣管產生生氣源

  • 喉和聲帶組成聲門

  • 咽腔,口腔,鼻腔等組成聲道

人的發聲過程基本過程可以這樣描述:由肺部擠壓產生流動高壓氣體,通過氣管,經過喉嚨,喉嚨控制相關軟骨組織和肌肉組織(其中最為重要為聲道)進行復雜運動,最終聲帶在控制下進行合攏或者分離,最終產生了聲音的激勵,再經過咽腔、口腔、鼻腔共鳴最終形成聲音。

2. 語音信號的一般分類

人發出不同的聲音時,語音激勵和聲道的情況也是完全不同的,發出的聲音基本可以分類為兩種類型:

  • 濁音:空氣流經過聲帶時,聲帶呈緊繃狀態,并產生張弛振動,即聲帶進行周期性的開啟和閉合,空氣流經過聲帶后形成一個一個脈沖,然后再經過各種聲道的共鳴作用,最后形成濁音。濁音典型波形如下圖:


非常的周期性

  • 輕音:空氣流經過聲帶時,聲帶呈放松狀態,之后在進入聲道時,如果聲道收縮,則氣流被迫高速通過,最終產生摩擦音或者清音,如果聲道某個部位完全閉合,氣流經過這里則受到阻塞,氣壓增大,然后閉合點突然開啟則最終產生爆破音。清音典型波形如下圖:

無明顯周期性

3. 語音信號的特性和模型

視頻編碼會針對時間和空間的冗余,那語音里面是不是也有一些明顯冗余呢?至少就前面的濁音來看,有非常明顯的周期性,從時間軸上來看是應該有明顯的冗余的,那如何進行壓縮呢,另外清音是否也有類似的冗余呢?

想弄明白答案,還是要先從根本來分析,先針對人的發聲系統進行建模:

需要注意的是發生濁音和清音是由完全不同的聲音激勵,再經過聲道共鳴發出的。

  • 濁音的語音激勵近似為:脈沖信號

  • 清音的語音激勵近似為:白噪聲

所以整個語音產生可以描述為一個系統,叫Speech Source-Filter Model,如下圖所示:

從這個模型我們可以看出來,語音的激勵本身不是脈沖信號就是白噪聲,基本上頻譜都是比較平的,且基本不包含實際信息。而語音本身所包含的復雜信息主要是由變化的聲道的處理形成的。而語音信號本身又符合短時平穩的特性。那么語音信號編碼器的一個樸素的編碼思想就在這里形成了:?

是不是可以針對每個短時語音序列分析,由于語音的復雜性基本由聲道處理形成,嘗試對于這個短時語音信號的聲道進行建模,然后再把簡單的語音激勵信號和聲道模型進行編碼,解碼的時候就可以利用語音的激勵信號,再次通過聲道模型,從而讓這個語音再次“說”一遍。

經過對人體生理發聲的一系列基礎研究,發現聲道模型的傳遞函數是自回歸滑動平均模型ARMA(Autoregressive moving average model),而ARMA模型本身就表明存在內在的相關性,即可以從歷史預測未來。這也就從根本上確定了之前對于語音信號時間冗余的編碼的可行性和理論基礎。

總的來說,語音的產生是:激勵模型G(z)、輻射模型R(z)和聲道模型V(z)進行級聯組合形成的,也符合ARMA模型。而建模過程為了可以方便計算經過近似,大致可以用全極點模型AR(p)過程來表達:

?? ??(1)

采用這樣的一個簡單模型的主要優點在于可以用線性預測分析法對增益G和濾波器系數{??}?進行直接而高效的計算。

?#03

LPC線性預測

線性預測編碼(LPC, Linear predictive coding)是主要用于音頻信號處理與語音處理中根據線性預測模型的信息用壓縮形式表示數字語音信號譜包絡(spectral envelope)的工具。它是最有效的語音分析技術之一,也是低碼率下編碼高質量語音最有用的方法之一,它能夠提供非常精確的語音參數預測。

線性預測的基本思想是:一個語音取樣的現在值可以用若干個語音取樣過去值的線性加權組合來逼近。

語音抽樣信號s(n)和激勵信號u(n)之間的關系可以用下列簡單的差分方程來表示:

?? ??(2)

p階線性預測是根據信號過去的p個取樣值的加權和來預測信號的當前取樣值s(n)的:

?? ??(3)

預測誤差定義為:

???(4)

其系統函數為:

??? ?(5)

那么A(z)和H(z)的關系如下:

?????(6)

此時線性預測的問題就變成求出一組預測系數{??} ,但是問題是e(n)的表達公式只有s(n)序列是已知的,???和?e(n)?都是未知的,這個方程其實是過定的,也就是解不唯一,那我們只需要找到一個“好”的解即可。而我們希望預測誤差越小越好,所以預測誤差的“最小均方差”就是一個很好方案,即:

??? ??(7)

然后對于a求偏導,經過一系列的計算,最終得到了著名的Yule-Walker方程:

??? ??(8)

其中R是自相關函數,R(j-i)=E[s(n-i)s(n-j)] ? ? ?(i, j = 1, 2, 3, ..., p)

可以看到上面的矩陣,不僅是對稱矩陣,而且平行對角線的元素也都相等,這樣的矩陣稱Toeplitz矩陣。這個方程組包含p+1個未知數(p個預測系數??和一個最小均方誤差??),而??到??都是已知數,可解。

另外增益模型也可以利用激勵信號的為白噪聲的均方誤差為1且自相關函數為0的特性得出:

??? ??(9)

PS: 即使在濁音的情況下,由于一串脈沖信號在大部分時間也是非常小的,所以使用最小的預測誤差e(n)逼近u(n)和u(n)能量很小不矛盾。

至此公式(1)內的全極點模型的所有參數都解出來了。

?#04

Levinson-Durbin算法與格型濾波器

全極點模型的參數在可以計算的前提下,實際應用特別是對編碼傳輸來說還是有很大痛點:

  • 解方程需要求矩陣的逆,非常的消耗計算量;

  • AR的模型里面使用的是FIR濾波器,直接型FIR特別是高階的對于濾波系數的量化誤差異常敏感。

那么怎么解決呢?首先來看如何快速求解預測參數。

1. Levinson-Durbin算法

對于求解Yule-Walker方程,由于Toeplitz矩陣自己的特性,可以得到一種有效的迭代算法,論證的過程這里就不詳細寫了,相信有很多資料都可以查到。這個算法是一個迭代計算的過程,從最低階往上計算逐步遞推。不僅求出了所有的p階預測系數,還得到了所有低階預測系數,具體過程如下:

其中??又稱為是反射系數,并且只有??,才能保證系統H(z)穩定,且??和??是一一對應的。

2. 格型濾波器

有了??這個中間變量后,??把預測濾波器的低階系數和高階系數聯系到了一起:

?? ??j = 1,2,3,...,i-1

??? ? ? ? ? ? ? ?????(10)

那么既然反射系數??和預測系數替換,系統都由反射系數表達會變成什么樣呢?

原本FIR濾波器的時域差分方程為:

??? ???(11)

由于這里??是從之前i個采樣點來預測s[n]時產生的誤差,所以稱為:前向預測誤差。

??? ? ?(12)

再將公式(10)帶入并推導,最后得到的時域解釋為:

??? ??(13)

這里??則是根據樣本(n-i)之后的i個樣本點預測得到的,所以這個??又被稱為后向預測誤差。

前向和后向表達里的預測系數??替換成??的表達為:

??(14)

??(15)

那么根據(13)(14)遞推公式,已知我們知道s[n]求??,p階預測誤差濾波器由??表達如下,且各階前向和后向誤差也如下圖:

而語音的發聲的全極點建模如下圖:

  • 缺點:輸出每個樣本所經歷的計算量是普通直接型濾波器的兩倍。

  • 優點:只要保證反射系數??,就不會使得系統不穩定。

特別是高階型的濾波器對于系數的量化非常敏感,量化誤差稍大就可能導致系統不穩定,所以在需要對系數粗量化時,格型濾波器仍然是最優的實現方法。

?#05

LPC的全極點模型階數的影響

線性預測編碼里的全極點建模提供了一種從截取或加窗數據中獲得一個高分辨率信號頻譜的方法。但這是基于一個前提,即如果參數信號數據和模型互相擬合,那么可以用數據的有限長區間段來確定模型參數,進而也確定了其頻譜。

是不是LPC的全極點模型的階數越高越精確呢?

如果s[n]本身就是全極點系統生成的,那么只要估計方案選擇得當,使用高于原生成系統的階數意義并不大。而即使信號s[n]本身不能用一個全極點系統來精確建模,通常也會存在一個p的取值,在該值之上再增大時,對于預測誤差的影響就會非常小或者沒有影響。而這個閾值將表明一個全極點模型階數的有效選擇。

那么如果在有效階數一下,降低p的取值會對建模本身帶來多少誤差呢,或者說誤差主要表現在哪里呢?

這里直接給出一個基于線性預測全極點重建數據頻譜包絡在不同p值之下和原信號的對比圖:

有圖可見,降低LPC的全極點模型的階數和原信號的頻譜的對比表明了,其重建信號在階數越低的情況下其頻譜包絡越平滑(如圖:p=12),而越高的階數(p=40)則能表現更多的細節。所以基于LPC的編碼器的碼率肯定會影響模型的階數和量化的精度,由此也能看出重建聲音在低碼率下的音質并不能表現更多細節了。

?#06

總結

本文介紹了基于線性預測的編碼器的主要工作原理,更說明了各個部分的設計緣由、特點、缺陷等,希望讀者可以對整個編碼主體部分的分工和由來有一個基本概念。很多推導過程都已省略,相信很多書籍和材料都能查到相應算法的具體推導。另外這也只是基于LPC編碼器編碼的主體原理,實際應用時,編碼器可能還會有很多其他模塊,比如熵編碼模塊、抵抗量化噪聲的模塊等等。


掃描圖中二維碼或點擊閱讀原文

了解大會更多信息

總結

以上是生活随笔為你收集整理的基于线性预测的语音编码原理解析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91极品在线 | 免费成人激情视频 | 污版视频在线观看 | 亚洲调教 | 久久久性色精品国产免费观看 | 在线不欧美 | 污视频免费在线观看 | 久久久夜色精品亚洲 | 香蕉尹人网 | 成人无遮挡 | 亚洲成人精品在线观看 | 在线观看欧美精品 | 亚洲精品毛片av | 国产情侣免费视频 | 欧美色图中文字幕 | 午夜久久久 | 深夜福利一区二区三区 | 99精品99 | 成人av日韩| 精品视频在线观看 | 美女吞精视频 | 手机在线看片国产 | 中文字幕一区在线 | 欧美熟妇精品久久久久久 | 性生活毛片 | 日韩一级欧美一级 | 一级黄色片免费在线观看 | 激情开心成人网 | 久久这里 | 黄色片中文字幕 | 亚洲jizzjizz | 性高潮久久久久久久 | 久草视频资源 | 久久涩视频 | 久久人人爽人人 | 国产在线无 | 成年人的毛片 | 99精品视频99 | 在线播放成人av | 亚洲福利av| 精品乱码一区内射人妻无码 | 99久久婷婷国产综合精品电影 | 欧美一区二区三区 | 亚洲视频一区二区三区在线观看 | 魔女鞋交玉足榨精调教 | 亚洲精品视频在线观看免费 | 一本色道综合久久欧美日韩精品 | 国产福利在线播放 | 国产成人一区二区在线 | 日韩丰满少妇无码内射 | 国产欧美日韩综合精品一区二区 | 精品午夜一区二区三区在线观看 | 我不卡av| 中国性老太hd大全69 | 欧美色图校园春色 | 欧美视频在线观看一区 | 高跟丝袜av | 亚洲AV无码一区二区三区性 | jzjzz成人免费视频 | 双性娇喘浑圆奶水h男男漫画 | 日韩精品不卡 | 羞辱狗奴的句子有哪些 | exo妈妈mv在线播放免费 | 亚洲天堂av一区二区三区 | www.日本在线观看 | 亚洲最大在线视频 | 超碰人人爱人人 | ktv做爰视频一区二区 | 国产精品一区二区视频 | 美女网站污| 亚洲三级a | 古装做爰无遮挡三级 | 98成人网 | www.久久精品.com| 97超级碰碰人妻中文字幕 | 911美女片黄在线观看游戏 | 成人午夜在线免费观看 | 国产午夜免费视频 | 亚洲精品6 | 91视频在线观看视频 | 久久国产加勒比精品无码 | 亚洲午夜久久久久久久久 | 亚洲丝袜中文字幕 | 综合视频一区 | 亚州中文字幕 | 欧美另类激情 | 黑料视频在线 | 亚洲欧美日韩综合一区二区 | 亚洲人交配视频 | 人妻熟女一区二区三区app下载 | 久久久久久久久久久av | 香港三日本三级少妇66 | 少妇人妻偷人精品一区二区 | 日韩中文字幕在线观看 | 全部免费毛片 | 日韩乱码视频 | 一本久道在线 | 91免费版黄色 | 91看片视频 |