張國(guó)偉 吳澳輝 陳細(xì)水 胡春華
摘要:通過MATLAB仿真模擬軟件,以音頻分析與處理為設(shè)計(jì)目標(biāo),綜合運(yùn)用GUI界面設(shè)計(jì)一套完整的音頻分析與處理方法,實(shí)現(xiàn)對(duì)音頻的收集,并運(yùn)用函數(shù)調(diào)用來實(shí)現(xiàn)音頻信號(hào)的剪輯、分析混音,以此來實(shí)現(xiàn)音頻數(shù)據(jù)的分析與處理。本設(shè)計(jì)主要以高效率、低成本的方案,為基于MATLAB的音頻分析與處理提供技術(shù)參考。
關(guān)鍵詞:MATLAB;GUI界面;音頻分析與處理
1.引言
目前,隨著計(jì)算機(jī)與信息科學(xué)的飛速發(fā)展,在這個(gè)互聯(lián)網(wǎng)時(shí)代,語(yǔ)音交互已經(jīng)成為人機(jī)交互的主要手段,而音頻信號(hào)的采集和處理是人機(jī)交互的前提以及基礎(chǔ),主流的音頻處理包括音頻處理軟件、聲卡等[1,2]。不同的音頻處理一般包括對(duì)信號(hào)濾波、放大、采樣保持、A/D和D/A轉(zhuǎn)換等功能[3],其中對(duì)信號(hào)濾波、放大、采樣保持以其精度高、效率高、速度快、成本低等優(yōu)勢(shì)廣泛用于音頻處理與分析中[4~8]。文中設(shè)計(jì)的音頻處理與分析即采用通過多種編程方法驅(qū)動(dòng)聲卡,實(shí)現(xiàn)對(duì)語(yǔ)音信號(hào)的采集和回放,并利用功能函數(shù)快捷方便地對(duì)音頻信號(hào)進(jìn)行處理和分析,實(shí)現(xiàn)了基于MABLAB的音頻信號(hào)與處理的基本功能,并以低成本、高效率的優(yōu)勢(shì)為相關(guān)設(shè)計(jì)提供借鑒與參考。
2.整體設(shè)計(jì)
為了實(shí)現(xiàn)音頻信號(hào)的采集、處理等基本功能,本設(shè)計(jì)以MATLAB的圖形用戶界面為主控界面[9],分別采用聲卡及錄音進(jìn)行音頻的錄制,并能進(jìn)行音頻的分析;通過內(nèi)置函數(shù)進(jìn)行音頻的處理;通過GUI界面進(jìn)行用戶操作等。
3.系統(tǒng)設(shè)計(jì)及功能簡(jiǎn)介
3.1系統(tǒng)設(shè)計(jì)
基于MATLAB的音頻處理及分析的功能需求,系統(tǒng)的界面關(guān)系。其中前端的創(chuàng)建用戶、登錄等屬于系統(tǒng)界面的用戶端口;音頻導(dǎo)入、音頻錄制、音頻播放等則是系統(tǒng)的處理裝置。主控界面是利用MATLAB的GUI界面,功能均用內(nèi)置函數(shù)實(shí)現(xiàn),即系統(tǒng)基本功能集成在同一界面上實(shí)現(xiàn),降低了系統(tǒng)集成的成本。
3.2功能簡(jiǎn)介
在音頻文件的收取中,使用函數(shù)直接打開文件夾,簡(jiǎn)便的與電腦文檔進(jìn)行交互,方便對(duì)音頻文件的自主選取,在選取音頻文件后,會(huì)將音頻信息存儲(chǔ)在Matlab的內(nèi)存中,這樣我們可以任意的對(duì)這個(gè)音頻進(jìn)行處理并不會(huì)影響到我們最開始的音頻文件,在對(duì)音頻文件處理完成后,我們可以選擇對(duì)音頻文件的存儲(chǔ),這樣我們能就能夠得到我們需要的音頻文件,在錄音模式下,我們可以根據(jù)自己的需要對(duì)錄音時(shí)常進(jìn)行設(shè)置,錄音完成會(huì)保存在相應(yīng)的音頻文件中,這樣我們可以對(duì)錄音進(jìn)行簡(jiǎn)單的處理。
4.音頻處理實(shí)例分析
4.1音頻的采集
4.1.1錄制音頻模式
使用matlab中audiorecorder函數(shù)對(duì)音頻進(jìn)行錄制并且保存,可以通過輸入錄音時(shí)間來設(shè)置讓錄音進(jìn)行任意時(shí)間的錄入。
4.1.2通過導(dǎo)入音頻來進(jìn)行對(duì)導(dǎo)入音頻的調(diào)制
可以將調(diào)制完的音頻保存到Mr音頻文件
4.2音頻的處理設(shè)計(jì)
導(dǎo)入音頻,我們通過代碼實(shí)現(xiàn)在文件夾里面直接選取音頻文件,并且將文件名顯示在文本框中。
在這個(gè)操作界面下可以看到分別有很多種處理的模式,在這些模式的處理上,我們通過對(duì)設(shè)定的Fs的值進(jìn)行處理可以讓音頻展現(xiàn)出不同的播放效果,或者對(duì)音頻的頻率進(jìn)行過濾或?qū)σ纛l添加不同的數(shù)據(jù)都能得到不同的處理結(jié)果。
快放模式和慢放模式:
直接對(duì)Fs的值進(jìn)行倍數(shù)更改讓音頻播放進(jìn)行倍數(shù)的變化,最后得到的音頻整體會(huì)進(jìn)行快放或者慢放。
倒放模式:
我們使用flipud函數(shù)對(duì)音頻進(jìn)行整體的處理,然后對(duì)處理的函數(shù)進(jìn)行播放就能夠得到倒放的效果。
柔和模式:
通過對(duì)音頻頻率的處理柔化了一些比較高或者比較的頻率,使頻域相對(duì)趨于平緩,這樣出來的音頻播放效果更加的柔和。
噪音添加和去噪音模式:
添加噪音,我們使用了比較簡(jiǎn)單的直接添加Matlab白噪聲進(jìn)行噪聲的模擬,在去噪音模式中,我們使用im2double函數(shù)對(duì)音頻進(jìn)行濾波計(jì)算。
錄音模式:
我們可以自主設(shè)置錄音的時(shí)長(zhǎng),在錄音結(jié)束后我們可以對(duì)錄音進(jìn)行播放和查看,對(duì)錄音進(jìn)行上訴的音頻處理,也可以將錄音直接保存在音頻文件中。
5.結(jié)論
綜上,本設(shè)計(jì)已基本實(shí)現(xiàn)了音頻的采集、錄制、處理等功能。設(shè)計(jì)的不足之處在于,對(duì)音頻處理有專業(yè)高端需求的群體來說,可進(jìn)一步將語(yǔ)音處理的功能進(jìn)一步更加完善,以便更好地進(jìn)行專業(yè)的音頻處理。此外,系統(tǒng)設(shè)計(jì)還須進(jìn)一步完善,在音頻設(shè)計(jì)方面如實(shí)現(xiàn)人聲的識(shí)別并處理、音頻的無(wú)損連接、音樂的制作等,在登錄方面如實(shí)現(xiàn)對(duì)多個(gè)用戶進(jìn)行存儲(chǔ),在音頻存儲(chǔ)方面可改進(jìn)讓音頻存入云端這樣能夠進(jìn)行更多的儲(chǔ)存。
參考文獻(xiàn):
[1] 宋翔.數(shù)字音頻處理技術(shù)在多媒體計(jì)算機(jī)中的應(yīng)用分析[J].湖北農(nóng)機(jī)化,2019(22):67.
[2] 呂紫薇,馬昕洋,李豇安,李鐸,教召航.基于MATLAB的音頻信號(hào)的分析與處理[J].河北農(nóng)機(jī),2019(04):45-46.DOI:10.15989/j.cnki.hbnjzzs.2019.04.037.
[3] 尹學(xué)愛,馬國(guó)利,馮偉偉.基于MATLAB的聲音信號(hào)頻譜分析儀[J].教育教學(xué)論壇,2018(04):276-278.
[4] 彭南京. 基于音頻信號(hào)處理技術(shù)的音色分析系統(tǒng)的研究與實(shí)現(xiàn)[D].北京郵電大學(xué),2016.
[5] 劉衛(wèi)強(qiáng).基于MATLAB的音頻信號(hào)綜合分析處理[J].德州學(xué)院學(xué)報(bào),2014,30(04):33-42.
[6] 翟繼濤,雷洪.基于Matlab的音頻數(shù)據(jù)采集系統(tǒng)的分析與評(píng)價(jià)[J].電腦知識(shí)與技術(shù),2014,10(17):4134-4136.
[7] 羅秀芝,王伯雄,王雪.Matlab語(yǔ)言在測(cè)試與檢測(cè)技術(shù)實(shí)驗(yàn)中的應(yīng)用[J].實(shí)驗(yàn)技術(shù)與管理,2011,28(11):47-49+60.DOI:10.16791/j.cnki.sjg.2011.11.015.
[8] 張登奇,蔣敏.基于MATLAB的音頻信號(hào)處理技術(shù)實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2009,5(05):1211-1213.