Transcript 下載/瀏覽
進度報告 語音訊號處理 報告人:賴長柏 指導教授:陳有圳 教授 報告時間:2008/11/05 第一章 緒論 用電腦技術來處理語言問題的最終目的, 希望人類與機器可以用自然語言來溝通。 1.2 語音處裡的幾個技術 語音編碼(speech coding) 將聲波訊號轉變成為電的訊號,如電流或電壓, 再經過一個類比到數位轉換器(analog-todigital converter,ADC),變成數位的表達方式。 最基本的試用脈碼調變的方式來記錄聲音的波 形。 語音合成(speech synthesis) 文句轉語音系統(text-to-speech system, TTS system)是將每個字(character)或詞(word) 為 合成單位,轉換成以語音合成的參數,串接起 來合成整句話。 例如”XXX號請到X號櫃檯辦理” 語音辨認(speech recognition) 讓機器聽懂人說的話,就是自動語音辨認 (automatic speech recognition, ASR) ,一般 的語音辨認單位(speech recognition unit)是音 素、次音節、音節、或詞。 語音增強(speech enhancement) 語音中含有背景噪音(background noise),而 語音訊號增強就是要抑制噪音,使語音變得更 清晰。 說話人辨認(speaker recognition) 在許多應用的場合,需要認出說話人是誰,或 是對一個宣稱他是誰的人,從他說話的聲音來 確認是否真的就是這個人,前者是說話人的識 別(speaker identification),後者是說話人的確 認(speaker verification)。 第二章 語音的產生與語音學 人類能以語言溝通,進而累積知識,形 成文化,就是因為人類具有比其他生物優 越的發音器官。 人類的發音器官能夠產生多樣性的聲音, 構成豐富的詞彙。 2.1 人類的發音器官 發音的過程大致如下: (1)空氣經過聲帶(vocal folds),氣流通過時 會使得開口變成一開一閉的週期性動作,造成 週期性的激發氣流,產生聲音。 (2)振動的氣流會在口腔內產生共振(resonance) 現象,由嘴唇出去,型成有近似週期性的聲音, 稱為元音或母音 (vowel)。 (3)氣流進入口腔時,將舌頭提起,使口腔與鼻 腔相通,則鼻腔的共振會改變口腔內的共振現 象,傾向於將低頻成分壓低,就會發出鼻音 (nasal)。 (4) 讓口腔中某些部位,將氣流先暫時堵住再 放開,產生亂流,這類聲音會發生在母音之前 或之後,稱為輔音或子音(consonant),其實就 是對母音作修飾的動作。 2-3. 聲學語音學 元音 發元音時,聲帶振動,音強也較大,波形上可 以看到大的呈現週期性振幅。其週期就是音高 週期,對應的頻率就是基頻,通常以F0表示。 正常說話時,元音的音長大約是50到400ms之間。 表2-4 各元音的前三個共振峰平均頻率(Hz) 輔音 輔音是對元音的前或後作修飾。 帶聲的輔音會有類似元音的共振峰,因為聲帶 振動,所以和元音一樣有諧振的成分,但相對 於元音,能量小得多。 第五章 短時段之語音處理 我們在處理語音訊號時,通常是一小段 一小段地觀察語音訊號的變化,也就是以 音框為單位,對每一音框內的訊號,抽取 出代表語音的特徵參數,這就是短時段之 語音處理。 5.1 離散時間訊號 ADC 類比到數位轉換器(analog-to-digital converter ) 如數位錄音機,將麥克風取到的類比訊號,經過 ADC轉換成數位訊號。 DAC 數位到類比轉換器(digital-to-analog converter) 例如從CD光碟裡,取出數位訊號,經由DAC轉成 電流類比訊號,去推動喇叭輸出聲音。 將類比訊號轉換成數位訊號的過程,需 經過兩個步驟,就是取樣(sampling)與量化 (quantization)。 取樣 就是以固定的時間間隔,將類比訊號的振幅記 錄下來。將類比訊號乘上一個週期性的脈衝訊 號,得到一序列的脈衝, 而脈衝的大小就代表 類比訊號的振幅。 這個訊號在時間軸上是不連續的,稱之 為離散時間訊號(discrete-time signal),其 取樣的週期為Ts,取樣頻率(sampling frequency)就是Fs=1/Ts。 5.2 脈碼調變(PCM) 一個訊號取樣之後變成離散時間訊號, 用數位方式來表示這個離散時間訊號上的 每個取樣值。 量化 只用固定數目的位元來表示這些取樣值,那麼 這些二進數字就只能代表固定的幾個電位值, 這個轉換就叫做量化。 均勻量化 這種量化方式是採用固定的量化間距,劃分的 每個格子是一樣的寬度。 訊噪比SNR 其訊號強度對噪音強度的比值,就叫做訊噪比以分貝 (decibel, dB)來表示。 種類 取樣之位元數 訊噪比 一般音效卡 16kHz 89dB 新的音效卡 24kHz 137dB 電話系統 8kHz 41dB 5.3 加視窗與取音框 對一段語音的離散時間訊號,用一個固 定長度的視窗(window)套上去,只看視窗 內的訊號,用以求出在這視窗內的語音特 徵(speech features)。而套上去的這一段語 音即稱為音框(frame)。 通常視窗的長度是取10~40 毫秒(ms), 這樣一段語音訊號,足以計算出語音的特 徵參數(featureparameters)。 視窗的移動距離,大約會取5~20毫秒 (ms),讓前後的音框有部分重疊,這樣比 較能看到語音特徵改變的延續性。 第九章 語音訊號之波形編碼 語音編碼的目的,是要將語音的類比訊 號以數位方式表示,便於做數位式的儲存 與傳輸。 利用第五章講的脈碼調變,將類比訊號 變成二進數值,然後再進行資料壓縮,得 到高還原語音品質。 9.1 語音編碼的分類 語音編碼的目標: 低位元率(low bit rate) 高語音品質(high speech quality) 低複雜度(low complexity) 能容忍通道雜訊(tolerance to channel noise) 編碼演算就是分析訊號,去掉重複的並 對非重複的訊息做編碼。 就編碼方法而言,可以分成三種類型編碼器: 波形編碼器(waveform coder) 盡量保留訊號波形的形狀,逐個取樣點對振幅 作及時地演算。因為量化的關係,還原的波形 會有失真。 這類編碼器所得到的位元率(bit rate)至少都在 16 kb/s以上。 聲音編碼器(voice coder 或vocoder) 這種編碼器由分析器來抽取原始語音中代表發 音模型的一組參數,將這組參數編碼後作傳輸 或儲存。而解碼器會解出發音模型的參數,用 這參數來合成語音,最後重建語音波形。 這類編碼器所得到的位元率比較低,通常在4.8 kb/s以下。 混合編碼器(hybrid coders) 結合前兩類型編碼器的優點,來得到低位元率 而又接近原始語音的聲音品質,這種編碼器就 叫做混合編碼器。 9-2. 對數量化之脈碼調變 電話語音轉換成數位訊號的取樣頻率為 8kHz,用均勻量化,取樣只用八位元,訊 噪比只有約41dB,這樣的聲音品質並不好, 所以在電話系統上的脈碼調變,採用的是 非均勻量化的做法。 假設將一個訊號x(n)取對數值然後再做均勻 量化。這時候對y(n)作均勻量化,等於是對 x(n)作非均勻量化。 9-3. 差分脈碼調變 如果讓動態範圍縮小,固定的位元數可以得到較 小的量化間距,就可以改進聲音的品質。 理論上ε(n)的動態範圍比x(n)的動態範圍小得多, 對ε(n)做量化,可以得到比較小的量化誤差,這 種編碼方式,就叫做差分脈碼調變。 第十章 語音合成與聲音編碼器 聲音編碼器 在發送端將輸入的語音轉換成發音模型參數, 加以編碼後傳送。接收端的解碼器將模型參數 解碼,然後進行語音合成,還原語音後輸出。 混合編碼器 在發送端的編碼器中,利用「以合成作分析」 的方法,來決定最好的發音模型與訊號參數, 編碼後傳送,在接收端就利用這些參數作語音 合成。 10-1. 線性預估編碼 將線性預估係數,增益,音高週期,及聲 帶振動判斷等參數,加以編碼之後傳輸, 在接收端則解碼得出上述各參數,然後合 成語音,這就是線性預估編碼(linear predictive coding) 。 讓激發訊號通過全極點模型,產生輸出訊 號,將各個音段產生的輸出訊號連接起來, 做平滑處理,這樣就得到語音訊號。