梁民
摘 要: 為了解決目前4G通信網(wǎng)絡(luò)中語(yǔ)音質(zhì)量評(píng)價(jià)問題, 該研究基于PESQ算法,設(shè)計(jì)開發(fā)了語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng)。該系統(tǒng)主要由語(yǔ)音采樣和語(yǔ)音質(zhì)量評(píng)價(jià)兩個(gè)部分組成,語(yǔ)音采樣部分由具有錄音功能的手機(jī)進(jìn)行樣本采集,語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng)則調(diào)用PESQ算法對(duì)語(yǔ)音樣本文件給出MOS平均意見分。該系統(tǒng)個(gè)性化和模塊化的設(shè)計(jì)特點(diǎn)保證它能對(duì)不同的4G網(wǎng)絡(luò)類型進(jìn)行語(yǔ)音質(zhì)量評(píng)價(jià)。系統(tǒng)運(yùn)行實(shí)踐證明該系統(tǒng)能有效對(duì)4G網(wǎng)絡(luò)通信語(yǔ)音質(zhì)量做出客觀評(píng)價(jià),因而具有一定推廣價(jià)值。
關(guān)鍵詞: 語(yǔ)音質(zhì)量感知評(píng)價(jià); 第四代移動(dòng)通信; 語(yǔ)音質(zhì)量評(píng)價(jià); 網(wǎng)絡(luò)優(yōu)化
中圖分類號(hào): TN926?34; TP311 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2016)08?0006?03
Research on application of PESQ algorithm in 4G network
LIANG Min
(Information Technology Center, Renmin University of China, Beijing 100872, China)
Abstract: With the popularization of 4G communication network in modern society, some new problems in the application process have occurred naturally. A speech quality evaluation system designed and developed on the basis of PESQ algorithm to solve the problem in evaluation of speech quality during the process of communication. The system is composed of two parts in which the first part is devoted to speech sampling and the second part is used to evaluate the speech quality. The speech sampling is conducted by the mobile phones which have the record function. The speech quality evaluation system gives a MOS average mark based on PESQ algorithm. The characteristics of individualization and modular design guaranteed the successful application of this system to evaluate different kinds of 4G communication networks. The operation practice of this system has proved this system can objectively evaluate speech quality of 4G network communication.
Keywords: perceptual evaluation of speech quality; 4G mobile communication; speech quality evaluation; network optimization
0 引 言
在移動(dòng)4G通信網(wǎng)絡(luò)中,語(yǔ)音通信是一個(gè)核心業(yè)務(wù),隨著移動(dòng)網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,客戶對(duì)網(wǎng)絡(luò)通話質(zhì)量要求日漸提高,語(yǔ)音質(zhì)量的好壞直接影響用戶對(duì)于運(yùn)營(yíng)商的選擇。根據(jù)移動(dòng)通信網(wǎng)絡(luò)服務(wù)質(zhì)量要求,建立一套語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng),更好地對(duì)4G網(wǎng)絡(luò)的語(yǔ)音服務(wù)質(zhì)量進(jìn)行定量測(cè)量、分析、評(píng)估,就成為移動(dòng)運(yùn)營(yíng)商的迫切需要。本研究采用PESQ算法作為語(yǔ)音質(zhì)量評(píng)價(jià)參數(shù),應(yīng)用于4G通信網(wǎng)絡(luò)的語(yǔ)音質(zhì)量評(píng)價(jià)中,設(shè)計(jì)了一套比較完善的語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng),解決了4G通信網(wǎng)絡(luò)中語(yǔ)音的檢測(cè)與評(píng)價(jià)問題。
1 PESQ算法原理
PESQ(Perceptual Evaluation of Speech Quality),即主觀語(yǔ)音質(zhì)量評(píng)價(jià)。PESQ算法是將語(yǔ)音信號(hào)的頻率、響度等物理特性與人類心理感知特性的關(guān)系通過(guò)數(shù)學(xué)模型對(duì)應(yīng)起來(lái),用客觀模型來(lái)模擬主觀感覺的評(píng)價(jià)的算法。該模型采用時(shí)頻映射、頻率彎折和響度彎折等方法,盡可能地以數(shù)學(xué)方式表達(dá)語(yǔ)音中“可感知”的特性。PESQ算法的思路是:對(duì)參考信號(hào)和被測(cè)試信號(hào)先進(jìn)行電平調(diào)整,調(diào)整到標(biāo)準(zhǔn)聽覺電平,然后用輸入濾波器模擬標(biāo)準(zhǔn)電話聽筒進(jìn)行濾波。接著對(duì)通過(guò)電平調(diào)整和濾波后的兩個(gè)信號(hào)在時(shí)間上對(duì)準(zhǔn),并進(jìn)行聽覺變換,這個(gè)變換包括對(duì)系統(tǒng)中線性濾波和增益變化的補(bǔ)償和均衡。兩個(gè)聽覺變換后的信號(hào)之間的不同作為擾動(dòng)(即差值),分析擾動(dòng)曲面提取出兩個(gè)失真參數(shù),在頻率和時(shí)間上累積起來(lái),最終得到PESQ分?jǐn)?shù),并將這個(gè)分?jǐn)?shù)映像到對(duì)主觀平均意見分的預(yù)測(cè)值。PESQ算法模型如圖1所示。
2 語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng)主要由語(yǔ)音采樣和質(zhì)量評(píng)價(jià)兩個(gè)子系統(tǒng)組成,兩個(gè)系統(tǒng)是操作獨(dú)立又相互聯(lián)系的。
2.1 語(yǔ)音采樣系統(tǒng)
語(yǔ)音采樣系統(tǒng)主要實(shí)現(xiàn)待測(cè)評(píng)4G網(wǎng)絡(luò)的語(yǔ)音樣本文件的采集。語(yǔ)音采樣系統(tǒng)硬件包括語(yǔ)音發(fā)送端手機(jī)和語(yǔ)音接收端手機(jī),兩個(gè)手機(jī)必須均支持通話錄音功能。手機(jī)終端1通過(guò)4G通信網(wǎng)絡(luò)和手機(jī)終端2通話,同時(shí)兩個(gè)手機(jī)分別把語(yǔ)音內(nèi)容錄制到本地手機(jī) ,分別保存為參考音頻文件和采樣音頻文件。語(yǔ)音采樣系統(tǒng)硬件拓?fù)鋱D如圖2所示。
2.2 語(yǔ)音評(píng)價(jià)系統(tǒng)
語(yǔ)音評(píng)價(jià)系統(tǒng)主要完成采樣語(yǔ)音的檢測(cè)與評(píng)價(jià)功能。
2.2.1 語(yǔ)音評(píng)價(jià)系統(tǒng)設(shè)計(jì)
語(yǔ)音評(píng)價(jià)系統(tǒng)包含模塊為:采集模塊、解碼模塊、業(yè)務(wù)處理模塊、顯示模塊、日志模塊。系統(tǒng)框架圖見圖3。
(1) 采集模塊:對(duì)手機(jī)錄制的音頻文件的采集及格式轉(zhuǎn)換。
(2) 解碼模塊:根據(jù)采集模塊的采集結(jié)果,每收到一幀數(shù)據(jù),調(diào)用解碼模塊對(duì)這幀數(shù)據(jù)進(jìn)行分析,并不斷根據(jù)消息體類型按照4GPP、LTE相關(guān)協(xié)議嵌套分析并解碼每一層數(shù)據(jù),直到獲得PESQ算法需要的接收端語(yǔ)音消息。
(3) 業(yè)務(wù)處理模塊:主要根據(jù)不同的解碼模塊處理后的數(shù)據(jù)幀,作出相應(yīng)的數(shù)據(jù)計(jì)算以及多個(gè)相關(guān)數(shù)據(jù)幀的數(shù)據(jù)整合,把分散在不同幀的數(shù)據(jù)作為一個(gè)整體,通過(guò)相應(yīng)業(yè)務(wù)處理,得出相關(guān)數(shù)據(jù)。
(4) 顯示模塊:作用是把業(yè)務(wù)處理模塊的處理結(jié)果,顯示在電腦端或者手機(jī)端,方便使用者能直觀地看到相關(guān)參數(shù)。
(5) 日志模塊:主要完成數(shù)據(jù)采集的記錄,解碼關(guān)鍵步驟的記錄,業(yè)務(wù)模塊的業(yè)務(wù)流的記錄以及錯(cuò)誤信息的記錄。
2.2.2 語(yǔ)音評(píng)價(jià)系統(tǒng)的實(shí)現(xiàn)
采樣系統(tǒng)采集到的參考音頻文件和采樣音頻文件均保存在計(jì)算機(jī)特定目錄下,調(diào)用系統(tǒng)PESQ算法,最終給出采樣音頻文件的MOS得分。分?jǐn)?shù)越高說(shuō)明失真越?。徽Z(yǔ)音評(píng)估質(zhì)量越高,移動(dòng)網(wǎng)絡(luò)系統(tǒng)語(yǔ)音通話效果也就越好。PESQ算法的使用如圖4所示。
調(diào)用PESQ算法進(jìn)行MOS得分計(jì)算模塊的實(shí)現(xiàn)如下:
由于PESQ算法的輸入語(yǔ)音信號(hào)是 16 位線性 PCM信號(hào), 所以選擇WAV文件作為測(cè)試語(yǔ)音信號(hào)。WAV文件有一個(gè)長(zhǎng)度為 44 字節(jié)的頭部信息, 在使用 PESQ 算法對(duì)音頻文件進(jìn)行語(yǔ)音質(zhì)量評(píng)估的時(shí)候, 需要顯式地指定文件后綴名為“ .wav”或者“ .WAV” , 以便通知PESQ算法跳過(guò)頭部的 44個(gè)字節(jié),從第44個(gè)字節(jié)后面讀入有效音頻數(shù)據(jù)。
PESQ軟件系統(tǒng)中調(diào)用PESQ算法部分代碼如下:
voidMosValues()
{
//沒有正常啟動(dòng)播放,擇停止語(yǔ)音評(píng)估
if (!this.startPlay || this.testSoundLevel) return;
//語(yǔ)音評(píng)估
this.NotifyMosEvent(EventFSMSDK.DataOperationEvent.DataOperationTypeEnum.MosEvaluate);
stringsrcFileAddress = SystemPropetiesSingle.Instance().WaveFileAddress;
floatpesqScore = 0;
floatpesqLqScore = 0;
WaveFormatwaveFormat = GetWaveFormat(srcFileAddress);
int rate = waveFormat.SamplesPerSecond == 8000 ? 1 : 0;
floatvoiceAdjLevel = 0.03F;
if (GetPesqResult(0, rate, srcFileAddress, sRecordWaveFileName, out pesqLqScore, voiceAdjLevel))
{
//發(fā)送通知
LogFrame frame = new LogFrame();
frame.frameType = 0xFFDD;
frame.timeStamp = DateTime.Now.ToFileTime();
frame.AddData(pesqScore);
frame.AddData(pesqLqScore);
if (OnReceivedOneFrame != null)
OnReceivedOneFrame(this, frame);
}
//評(píng)估完成后,刪除語(yǔ)音文件
this.DeleteWaveFile(pesqLqScore);
}
GetPesqResult是PESQ算法模塊的動(dòng)態(tài)連接庫(kù),在C#中通過(guò)如下代碼實(shí)現(xiàn)了函數(shù)的導(dǎo)入:
[DllImport(@"PESQModule.dll", EntryPoint = "PesqGetResult")]
static extern boolGetPesqResult(int swap, int rate, string refpathname, string degpathname, out float refmos, float voiceAdj);
PESQ得分界面分成左右兩部分,左邊部分的上方顯示的是樣本語(yǔ)音的波形,左邊部分的下方顯示采樣語(yǔ)音的波形。右邊部分的上方顯示當(dāng)前接收語(yǔ)音的MOS得分,右邊部分的下方顯示更多接收語(yǔ)音的MOS得分,它反映了4G LTE移動(dòng)網(wǎng)路的語(yǔ)音質(zhì)量的變化。系統(tǒng)的PESQ得分界面如圖5所示。
3 結(jié) 語(yǔ)
本系統(tǒng)將PESQ算法應(yīng)用于4G通信網(wǎng)絡(luò)語(yǔ)音評(píng)價(jià)中,能針對(duì)不同類型的網(wǎng)絡(luò)和測(cè)試要求進(jìn)行個(gè)性化設(shè)置。由于采用了模塊化設(shè)計(jì),能隨著網(wǎng)絡(luò)和容量變化輕松升級(jí)。運(yùn)行實(shí)踐證明該系統(tǒng)有效解決了4G網(wǎng)絡(luò)中語(yǔ)音質(zhì)量評(píng)價(jià)問題,具有一定的推廣價(jià)值。
參考文獻(xiàn)
[1] 陳曉翔,路保本,林嘉宇.PESQ算法在軍事語(yǔ)音評(píng)估中的性能分析[J].微處理機(jī),2014,35(1):35?40.
[2] 周璐,邱小軍,林志斌.PESQ測(cè)量語(yǔ)音增強(qiáng)算法性能不確定性的研究[J].電聲技術(shù),2010,34(1):71?73.
[3] 陳明義,何孝月.基于 PESQ的VOIP系統(tǒng)語(yǔ)音質(zhì)量評(píng)估應(yīng)用研究[J].微計(jì)算機(jī)信息,2008,24(27):171?173.
[4] 盧衛(wèi),陸希玉.4G時(shí)代移動(dòng)互聯(lián)網(wǎng)的發(fā)展趨勢(shì)[J].電信科學(xué),2014,30(5):50?54.
[5] 凌渝.基于PESQ算法的語(yǔ)音質(zhì)量客觀評(píng)價(jià)方法研究[J].警察技術(shù),2011(5):30?32.
[6] 倪萍,魏芳.基于PESQ算法的彩鈴鈴音質(zhì)量評(píng)估系統(tǒng)[J].計(jì)算機(jī)應(yīng)用與軟件,2012(10):145?147.
[7] 陳新.基于PESQ算法的MOS測(cè)試解決方案[J].移動(dòng)通信,2008,32(13):56?59.
[8] 李野,吳亞鋒,劉雪飛.基于PESQ的空乘人員語(yǔ)音質(zhì)量評(píng)價(jià)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].測(cè)控技術(shù),2009,28(1):31?34.