• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于LabVIEW的語(yǔ)音信號(hào)處理

      2017-09-09 20:18劉鑫金暄宏
      軟件導(dǎo)刊 2017年8期
      關(guān)鍵詞:聲卡

      劉鑫+金暄宏

      摘 要:針對(duì)LabVIEW的語(yǔ)音信號(hào)分析,為了體現(xiàn)LabVIEW的簡(jiǎn)潔性與可靠性,分別通過(guò)聲卡和LabVIEW自帶的程序包對(duì)聲音進(jìn)行信號(hào)采集與聲音信息保存,并利用LabVIEW自身強(qiáng)大的信號(hào)處理能力進(jìn)行信號(hào)分析處理,對(duì)語(yǔ)音信號(hào)進(jìn)行端點(diǎn)檢測(cè)、濾波、加窗等預(yù)處理。研究結(jié)果表明,通過(guò)與理論數(shù)值的對(duì)比,可以得到與預(yù)期一致的實(shí)驗(yàn)結(jié)果,并能夠通過(guò)更加簡(jiǎn)單易懂的程序完成該功能,從而充分體現(xiàn)了G語(yǔ)言的簡(jiǎn)潔性、可靠性。

      關(guān)鍵詞:LabVIEW;聲卡;信號(hào)采集;聲音保存;信號(hào)分析;G語(yǔ)言

      DOIDOI:10.11907/rjdk.171328

      中圖分類號(hào):TP319

      文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào)文章編號(hào):1672-7800(2017)008-0135-03

      0 引言

      語(yǔ)音信號(hào)的處理與人工智能、計(jì)算機(jī)科學(xué)、信號(hào)處理學(xué)等領(lǐng)域關(guān)系越來(lái)越密切。語(yǔ)音信號(hào)采集與分析更是智能機(jī)器人發(fā)展的重要推動(dòng)力量。但是現(xiàn)在市場(chǎng)上的語(yǔ)音分析系統(tǒng)價(jià)格昂貴、操作復(fù)雜,且僅能用于特定的方面,因此有關(guān)實(shí)驗(yàn)教學(xué)都是利用Matlab進(jìn)行語(yǔ)音及其相關(guān)信號(hào)的處理[1]。但是Matlab卻有學(xué)習(xí)慢、程序直觀性不夠等缺點(diǎn),在進(jìn)行語(yǔ)音信號(hào)處理時(shí)往往比較慢、比較難。

      LabVIEW作為一種強(qiáng)大的信號(hào)處理軟件,其基礎(chǔ)語(yǔ)言G語(yǔ)言作為圖形化語(yǔ)言,不僅可以代替?zhèn)鹘y(tǒng)的測(cè)量?jī)x器,還擁有應(yīng)用方案靈活、性能提高快、綜合成本更低等優(yōu)點(diǎn)[2]。不論是工程實(shí)踐還是學(xué)校教學(xué),它都是一個(gè)很不錯(cuò)的工具軟件,也越來(lái)越多地在工業(yè)領(lǐng)域、教育領(lǐng)域得到推廣。

      1 系統(tǒng)設(shè)計(jì)

      1.1 LabVIEW簡(jiǎn)介

      LabVIEW是一種程序開發(fā)環(huán)境,由美國(guó)國(guó)家儀器(National Instruments,NI)公司研制開發(fā),是目前國(guó)際上唯一的編譯型圖形化編程語(yǔ)言[3]。LabVIEW類似于C和BASIC開發(fā)環(huán)境,但是與其它計(jì)算機(jī)語(yǔ)言有著明顯的差別。其它計(jì)算機(jī)語(yǔ)言都是采用基于文本的語(yǔ)言產(chǎn)生代碼,而LabVIEW使用的是圖形化編輯語(yǔ)言G編寫程序,產(chǎn)生的程序是框圖的形式。 不僅使編程變得簡(jiǎn)單,而且生動(dòng)有趣,有助于語(yǔ)言學(xué)習(xí)。

      1.2 信號(hào)采集過(guò)程

      聲卡(Sound Card)也叫音頻卡,是多媒體技術(shù)中最基本的組成部分,是實(shí)現(xiàn)聲波/數(shù)字信號(hào)相互轉(zhuǎn)換的一種硬件。聲卡的基本功能是把來(lái)自話筒、磁帶、光盤的原始聲音信號(hào)加以轉(zhuǎn)換,輸出到耳機(jī)、揚(yáng)聲器、擴(kuò)音機(jī)、錄音機(jī)等聲響設(shè)備,或通過(guò)音樂(lè)設(shè)備數(shù)字接口(MIDI)使樂(lè)器發(fā)出聲音。電腦聲卡的工作原理很簡(jiǎn)單,麥克風(fēng)和喇叭所用的都是模擬信號(hào),而電腦所能處理的都是數(shù)字信號(hào),聲卡的作用就是實(shí)現(xiàn)兩者的轉(zhuǎn)換。從結(jié)構(gòu)上分,聲卡可分為模數(shù)轉(zhuǎn)換電路和數(shù)模轉(zhuǎn)換電路兩部分:模數(shù)轉(zhuǎn)換電路負(fù)責(zé)將麥克風(fēng)等聲音輸入設(shè)備采集到的模擬聲音信號(hào)轉(zhuǎn)換為電腦能處理的數(shù)字信號(hào),而數(shù)模轉(zhuǎn)換電路負(fù)責(zé)將電腦使用的數(shù)字聲音信號(hào)轉(zhuǎn)換為喇叭等設(shè)備能使用的模擬信號(hào)[4]。

      LabVIEW中提供了強(qiáng)大的數(shù)據(jù)采集程序包,可以很簡(jiǎn)單地通過(guò)程序包對(duì)聲卡進(jìn)行調(diào)用。例如使用Acquire Sound獲取相關(guān)聲音信息,只需要設(shè)置相關(guān)參數(shù)就可以獲得所需要的語(yǔ)音信息。

      由于聲卡直接對(duì)收集的聲音信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換,因此聲卡所得到的信息直接為數(shù)字量而非模擬量,不需要再次進(jìn)行模數(shù)轉(zhuǎn)換。根據(jù)對(duì)信號(hào)采集和保存的相關(guān)要求,程序后面板設(shè)計(jì)如圖1所示。

      對(duì)聲音進(jìn)行采集時(shí)主要的參數(shù)為錄音時(shí)間、采樣位數(shù)、采樣頻率和聲卡通道。在LabVIEW的Acquire Sound程序包中都涵蓋了相關(guān)參數(shù)的設(shè)置。雙擊該函數(shù)即可看見設(shè)置面板,為了方便修改相關(guān)信息,也可外接。

      1.3 語(yǔ)音信號(hào)分析處理

      對(duì)語(yǔ)音信號(hào)進(jìn)行采集保存后,便可對(duì)存儲(chǔ)的信號(hào)進(jìn)行讀取進(jìn)而進(jìn)行處理分析。由于語(yǔ)音信號(hào)攜帶著大量的信息,而語(yǔ)音分析的目的就是對(duì)這些信息進(jìn)行處理分析,因此需要對(duì)語(yǔ)音信息進(jìn)行不同的變換。語(yǔ)音信息分析可分為時(shí)域和變換域等處理方法[5]。而利用傅里葉變換對(duì)信號(hào)進(jìn)行處理,進(jìn)而得到其頻域信息是研究語(yǔ)音信號(hào)特征的重要方法之一。傅立葉變換是數(shù)字信號(hào)處理領(lǐng)域一種很重要的算法。傅立葉原理表明:任何連續(xù)測(cè)量的時(shí)序或信號(hào),都可以表示為不同頻率的正弦波信號(hào)的無(wú)限疊加。而根據(jù)該原理創(chuàng)立的傅立葉變換算法利用直接測(cè)量到的原始信號(hào),以累加方式來(lái)計(jì)算該信號(hào)中不同正弦波信號(hào)的頻率、振幅和相位。

      和傅立葉變換算法對(duì)應(yīng)的是反傅立葉變換算法。該反變換從本質(zhì)上說(shuō)也是一種累加處理,這樣就可以將單獨(dú)改變的正弦波信號(hào)轉(zhuǎn)換成一個(gè)信號(hào)。因此,可以說(shuō),傅立葉變換將原來(lái)難以處理的時(shí)域信號(hào)轉(zhuǎn)換成了易于分析的頻域信號(hào)(信號(hào)的頻譜),可以利用一些工具對(duì)這些頻域信號(hào)進(jìn)行處理、加工,最后還可以利用傅立葉反變換將這些頻域信號(hào)轉(zhuǎn)換成時(shí)域信號(hào)[6]。傅里葉變換如下:

      F(ω)=F[f(t)]=∫∞-∞f(t)e-jωt dt(1)

      其逆變換如下所示:

      f(t)=F-1[F(ω)]=12π∫∞-∞F(ω) ejωtdω(2)

      在LabVIEW中可利用已有的工程包簡(jiǎn)單方便地對(duì)信號(hào)進(jìn)行快速傅里葉變換,并針對(duì)不同的傅里葉變換信息進(jìn)行分類處理。由于錄音時(shí)無(wú)法完全錄入所需信息,其中必然會(huì)夾雜一些非有效信息,需要將這些無(wú)效的雜音或者并未發(fā)聲的信息進(jìn)行濾除,因而需要進(jìn)行端點(diǎn)檢測(cè),探查出語(yǔ)音信號(hào)是從何處開始又在何處結(jié)束的。由于LabVIEW內(nèi)部是擁有Matlab節(jié)點(diǎn)的,所以可以使用Matlab進(jìn)行聯(lián)合編程。后面板如圖2所示。雖然使用了Matlab,但是這樣處理仍然比單獨(dú)使用Matlab編程快得多。

      在進(jìn)行時(shí)域分析時(shí),要對(duì)信號(hào)進(jìn)行預(yù)加重,主要是加窗,并對(duì)高頻部分進(jìn)行加重,進(jìn)而加強(qiáng)其高頻部分的分辨率。其結(jié)果是高頻部分的幅值得到提升,頻譜變得平坦。

      在加強(qiáng)高頻部分時(shí),傳遞函數(shù)為:endprint

      H(z)=1-a·z-1(3)

      一般通過(guò)式(3)的一階FIR高通數(shù)字濾波器實(shí)現(xiàn)預(yù)加重,其中a為預(yù)加重系數(shù),一般a取值為0.9

      接下來(lái)需要進(jìn)行加窗分幀處理。所謂分幀,就是語(yǔ)音信號(hào)平穩(wěn)性只在很短的時(shí)間內(nèi)(一般認(rèn)為在10~30ms內(nèi)語(yǔ)音信號(hào)可近似相等),這就意味著可以將語(yǔ)音信號(hào)分割成短段來(lái)處理。而語(yǔ)音信號(hào)的分幀多是采用可移動(dòng)的有限長(zhǎng)度的窗口進(jìn)行加權(quán)處理。一般分幀為33~100幀/s,不同的情況分幀長(zhǎng)度也會(huì)不同。而分幀方法采用的是交疊分段的方法,即前后幀的交疊部分稱為幀移,幀移與幀長(zhǎng)相對(duì)度(即比值)控制在0~0.5之間[7]。而加窗時(shí)可采用漢明窗來(lái)進(jìn)行加窗處理,漢明窗函數(shù)如下:w(n)=0.54-0.46cos[2πnN-1],0≤n≤N

      0,其他 (4)

      然后對(duì)所需要的信息進(jìn)行濾波提取。

      綜上所述,圖3是設(shè)計(jì)后面板。

      2 實(shí)驗(yàn)結(jié)果分析

      首先,先錄一段語(yǔ)音,然后對(duì)所存語(yǔ)音信息進(jìn)行提取即端點(diǎn)提取。結(jié)果的時(shí)域信號(hào)如圖4和圖5所示。

      由圖5不難發(fā)現(xiàn),在之前保存的語(yǔ)音信號(hào)已經(jīng)得到了裁剪,原始語(yǔ)音信號(hào)開始部分的無(wú)效信號(hào)的大部分成分已經(jīng)被濾除。

      接下來(lái)使用LabVIEW中的快速傅里葉函數(shù)對(duì)信號(hào)進(jìn)行傅里葉變換,得到信號(hào)的頻率譜以及能量譜密度函數(shù)。由于人所能接受的語(yǔ)音信號(hào)的頻率為300~3 400Hz之間,可以對(duì)所得到的語(yǔ)音信號(hào)進(jìn)行300~3 400Hz帶通濾波??稍贚abVIEW后面板中選擇濾波器,并將類型選擇為帶通,這里可選擇使用IIR、巴特沃斯濾波器,階數(shù)選擇3,對(duì)濾波后的信號(hào)進(jìn)行觀察。所得結(jié)果如圖6-圖10所示。

      本實(shí)驗(yàn)中使用的窗函數(shù)為漢明窗。從實(shí)驗(yàn)結(jié)果中不難看出,預(yù)處理后得到的信號(hào)高頻部分得到加強(qiáng),波形整體變得更加平坦,濾波效果明顯。此信號(hào)可以直接對(duì)照運(yùn)用Matlab實(shí)現(xiàn)對(duì)語(yǔ)音的采集與分析,結(jié)果相同[8]。

      3 結(jié)論

      本實(shí)驗(yàn)利用聲卡對(duì)聲音信號(hào)進(jìn)行采集和保存,并利用LabVIEW進(jìn)行信號(hào)有效部分截?。ǘ它c(diǎn)檢測(cè))、預(yù)處理和濾波處理。雖然設(shè)計(jì)簡(jiǎn)單,但是對(duì)處理后的信息可以進(jìn)行再次加工,獲得諸如聲紋識(shí)別、語(yǔ)音加密等用途,充分證明了LabVIEW的簡(jiǎn)單性和功能的強(qiáng)大性。面對(duì)將來(lái)對(duì)語(yǔ)音信息越來(lái)越大的需求,運(yùn)用LabVIEW對(duì)相關(guān)信息進(jìn)行處理會(huì)越來(lái)越快速、簡(jiǎn)單、可靠。該實(shí)驗(yàn)就很好地證明了這一點(diǎn)。

      參考文獻(xiàn):

      [1] 于振江.一種基于Matlab的語(yǔ)音信息采集與分析系統(tǒng)設(shè)計(jì)[J].科學(xué)情報(bào)開發(fā)與經(jīng)濟(jì),2012,22(12):112-112.

      [2] 張易知,肖嘯,張喜斌,等.虛擬儀器的設(shè)計(jì)與實(shí)現(xiàn)[M].西安:西安電子科技大學(xué)出版社,2002.

      [3] 火元蓮,齊永峰,張鵬萬(wàn),等.基于LabVIEW的數(shù)字信號(hào)處理模擬實(shí)驗(yàn)系統(tǒng)[J].西北師范大學(xué)學(xué)報(bào):自然科學(xué)版,2008,67(4):114-115.

      [4] 饒志芳.聲卡工作原理[J].電子測(cè)試, 2000,7(2):156-160.

      [5] 李春泉,伍軍云,熊殷,基于MATLAB的語(yǔ)音信號(hào)時(shí)頻域參數(shù)分析[J].科技廣場(chǎng),2007,20(9):22-24.

      [6] 冷建華.傅里葉變換[M].北京:清華大學(xué)出版社, 2004.

      [7] 劉代龍.基于MATLAB的語(yǔ)音信號(hào)預(yù)處理[D].畢節(jié):貴州工程應(yīng)用技術(shù)學(xué)院, 2014.

      [8] 陳宇峰.基于聲卡和Matlab的語(yǔ)音信號(hào)采集和處理[J].中國(guó)現(xiàn)代教育裝備,2006,9(5):49-56.

      猜你喜歡
      聲卡
      聽雪
      這個(gè)“U盤”拯救了二哥的啞巴電腦
      多語(yǔ)音交互設(shè)備驅(qū)動(dòng)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      聲卡數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)方式分析
      榨干PC聲卡的剩余價(jià)值!
      網(wǎng)絡(luò)國(guó)際之電腦
      云安县| 平利县| 宁阳县| 海阳市| 如皋市| 许昌县| 泌阳县| 虞城县| 奉贤区| 安康市| 应用必备| 新田县| 渝中区| 常宁市| 宁国市| 新营市| 永福县| 衡山县| 石棉县| 神池县| 灵台县| 奉化市| 雅安市| 汝南县| 新营市| 富锦市| 铜山县| 山阳县| 巫山县| 冕宁县| 万州区| 新龙县| 明星| 淄博市| 昭通市| 普宁市| 昌宁县| 青岛市| 金沙县| 尼玛县| 天等县|