亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        嵌入式語(yǔ)音信號(hào)處理實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        2017-06-19 19:29:48梁瑞宇王青云
        實(shí)驗(yàn)室研究與探索 2017年5期
        關(guān)鍵詞:嵌入式信號(hào)實(shí)驗(yàn)

        梁瑞宇, 王青云, 趙 力

        (1.南京工程學(xué)院 通信工程學(xué)院,南京 211167; 2.東南大學(xué) 信息科學(xué)與工程學(xué)院,南京 210096)

        ·計(jì)算機(jī)技術(shù)應(yīng)用·

        嵌入式語(yǔ)音信號(hào)處理實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

        梁瑞宇1,2, 王青云1, 趙 力2

        (1.南京工程學(xué)院 通信工程學(xué)院,南京 211167; 2.東南大學(xué) 信息科學(xué)與工程學(xué)院,南京 210096)

        為體現(xiàn)教學(xué)與科研相互促進(jìn)的教學(xué)理念,面向語(yǔ)音信號(hào)處理教學(xué)和科研需要,以Cortex-A8微處理器和專用音頻編解碼芯片WM8960為硬件核心,構(gòu)建一款嵌入式語(yǔ)音信號(hào)處理綜合實(shí)驗(yàn)平臺(tái)?;谠搶?shí)驗(yàn)平臺(tái),利用QT開(kāi)發(fā)軟件,設(shè)計(jì)一款語(yǔ)音信號(hào)處理綜合實(shí)驗(yàn)教學(xué)與開(kāi)發(fā)軟件。文中完整地講述了系統(tǒng)的硬件構(gòu)成,驅(qū)動(dòng)程序的移植,并結(jié)合基于譜減法的語(yǔ)音增強(qiáng)算法,介紹了基于QT的語(yǔ)音開(kāi)發(fā)流程。基于該實(shí)驗(yàn)平臺(tái),學(xué)生不僅可以掌握語(yǔ)音信號(hào)處理的基本知識(shí),還可以熟悉面向語(yǔ)音應(yīng)用的嵌入式軟件開(kāi)發(fā)流程。系統(tǒng)界面友好,功能強(qiáng)大,可有效用于高校語(yǔ)音及信號(hào)處理教學(xué)工作,也可用于相關(guān)科研人員進(jìn)行語(yǔ)音信號(hào)處理相關(guān)課題的研發(fā)工作。

        語(yǔ)音信號(hào)處理; 語(yǔ)音增強(qiáng); 嵌入式; 實(shí)驗(yàn)教學(xué)

        0 引 言

        隨著人機(jī)交互和智能機(jī)器人技術(shù)的發(fā)展,語(yǔ)音信號(hào)處理已成為信息科學(xué)研究領(lǐng)域中發(fā)展最為迅速的一個(gè)分支。語(yǔ)音信號(hào)處理是用數(shù)字信號(hào)處理技術(shù)和語(yǔ)音學(xué)知識(shí)對(duì)語(yǔ)音信號(hào)進(jìn)行處理的一門(mén)新興學(xué)科,是一門(mén)理論性強(qiáng)、實(shí)用面廣、內(nèi)容新、難度大的交叉學(xué)科[1-2]。語(yǔ)音信號(hào)處理作為信息處理專業(yè)的一門(mén)重要的專業(yè)課,所涉及的理論知識(shí)較多。語(yǔ)音信號(hào)處理包括語(yǔ)音增強(qiáng)[3]、語(yǔ)音編碼、語(yǔ)音合成、語(yǔ)音識(shí)別[4]、說(shuō)話人識(shí)別[5]、情感識(shí)別[6]、語(yǔ)音隱藏、聲源定位[7]等。圍繞著這些應(yīng)用,該課程還會(huì)涉及一些相關(guān)理論,如矢量量化、隱馬爾科夫模型、高斯混合模型,支撐向量機(jī)等。因此,如何激發(fā)學(xué)生的學(xué)習(xí)興趣,從枯燥的理論中升華出來(lái),是提升課堂教學(xué)質(zhì)量的關(guān)鍵。

        目前,很多高校的語(yǔ)音信號(hào)處理課程的授課時(shí)間在32~48學(xué)時(shí)。在短暫的課堂授課時(shí)間內(nèi),使學(xué)生對(duì)各種應(yīng)用有所了解,并從中選擇一到兩種進(jìn)行深入研究,是非常困難的一件事。為此,很多高校都會(huì)增加實(shí)驗(yàn)環(huán)節(jié)使學(xué)生對(duì)課堂內(nèi)容進(jìn)行鞏固和吸收。但是,目前語(yǔ)音信號(hào)處理實(shí)驗(yàn)主要以MATLAB仿真為主[8],雖然有助于學(xué)生快速理解理論知識(shí),但是缺乏對(duì)語(yǔ)音如何采集、處理和播放整個(gè)流程的深入了解。因此,開(kāi)發(fā)出一款功能強(qiáng)大且實(shí)用的語(yǔ)音信號(hào)處理綜合實(shí)驗(yàn)平臺(tái),為學(xué)生和老師從事教學(xué)科研工作提供方便,已經(jīng)成為語(yǔ)音信號(hào)處理教學(xué)工作的重中之重。一個(gè)有效的實(shí)驗(yàn)平臺(tái)不但可以使學(xué)生掌握理論知識(shí),還可以使學(xué)生了解語(yǔ)音信號(hào)處理的整個(gè)開(kāi)發(fā)流程,為學(xué)生后期從事語(yǔ)音信號(hào)處理科創(chuàng)、競(jìng)賽或工作積累經(jīng)驗(yàn)。針對(duì)目前語(yǔ)音教學(xué)科研平臺(tái)較少的現(xiàn)狀[9-10],本文按照主流的嵌入式系統(tǒng)開(kāi)發(fā)設(shè)計(jì)理念,研發(fā)了一款語(yǔ)音信號(hào)處理綜合實(shí)驗(yàn)平臺(tái),介紹了平臺(tái)的硬件構(gòu)成和軟件實(shí)現(xiàn),并通過(guò)語(yǔ)音增強(qiáng)實(shí)驗(yàn)驗(yàn)證了平臺(tái)的有效性。

        1 系統(tǒng)構(gòu)成

        嵌入式語(yǔ)音實(shí)驗(yàn)平臺(tái)的硬件結(jié)構(gòu)如圖1所示,實(shí)驗(yàn)平臺(tái)由S5PV210核心處理器、WM8960語(yǔ)音編解碼芯片、存儲(chǔ)電路、揚(yáng)聲器、麥克風(fēng)、外設(shè)接口、電源和時(shí)鐘電路構(gòu)成。其中,電源和時(shí)鐘電路提供系統(tǒng)工作必需的電源和時(shí)鐘。外設(shè)接口包括串口、USB接口、網(wǎng)絡(luò)接口,用來(lái)與電腦通信,實(shí)現(xiàn)人機(jī)交互等功能。

        圖1 嵌入式語(yǔ)音實(shí)驗(yàn)平臺(tái)硬件結(jié)構(gòu)圖

        實(shí)驗(yàn)平臺(tái)的核心處理器選用Samsung公司高端的ARM Cortex-A8微處理器S5PV210芯片。S5PV210基于ARM v7指令架構(gòu),適用于復(fù)雜操作系統(tǒng)及用戶應(yīng)用,芯片功耗在300 mW以下,而性能卻高達(dá)2 000 MIPS[11-12]。S5PV210微處理器具有復(fù)雜的流水線架構(gòu),帶有先進(jìn)的動(dòng)態(tài)分支預(yù)測(cè),可實(shí)現(xiàn)2.0 DMIPS/MHz。

        語(yǔ)音編解碼芯片選用歐勝微電子公司的低功耗、高質(zhì)量的立體編解碼器芯片WM8960。該芯片內(nèi)置有麥克風(fēng)接口和立體聲耳機(jī)驅(qū)動(dòng)器以及立體聲24 bit sigma-delta模數(shù)轉(zhuǎn)換器和數(shù)模轉(zhuǎn)換器。其運(yùn)行的模擬電源電壓低至2.7 V,數(shù)字內(nèi)核運(yùn)行電壓可低至1.7 V。其高級(jí)的片上數(shù)字信號(hào)處理能夠?qū)崿F(xiàn)麥克風(fēng)輸入的自動(dòng)電平控制,并支持多種采樣率。該芯片與麥克風(fēng)和揚(yáng)聲器進(jìn)行配合,可實(shí)現(xiàn)語(yǔ)音的采集和播放。

        存儲(chǔ)電路由DDR2 SDRAM芯片K4T1G164QQ和NAND Flash芯片K9F2G08UOD構(gòu)成。系統(tǒng)采用4片16位128MB的SDRM芯片來(lái)構(gòu)成32位的數(shù)據(jù)接口,總大小為512MB。DDR2 SDRAM相比于老式的DDR SDRAM具有更高的運(yùn)行速率與更低的功耗。SDRAM主要用來(lái)存儲(chǔ)臨時(shí)數(shù)據(jù),而NAND Flash主要用來(lái)存儲(chǔ)根文件系統(tǒng)、boot代碼、系統(tǒng)內(nèi)核代碼和簡(jiǎn)單的數(shù)據(jù)。NAND Flash是連續(xù)存儲(chǔ)介質(zhì),適合存放大的數(shù)據(jù)量,其共用地址和數(shù)據(jù)總線,對(duì)一個(gè)固定大小的區(qū)域進(jìn)行操作,且使用壽命長(zhǎng)。

        2 WM8960驅(qū)動(dòng)移植

        因?yàn)榍度胧絃inux的開(kāi)源性、可裁剪性和可移植性,所以其成為嵌入系統(tǒng)開(kāi)發(fā)最常用的操作系統(tǒng)之一。在Linux操作系統(tǒng)中,內(nèi)核主要用來(lái)管理軟硬件資源,并提供運(yùn)行環(huán)境。要想通過(guò)Linux系統(tǒng)來(lái)對(duì)硬件進(jìn)行操作,必須在硬件和內(nèi)核之間架設(shè)一個(gè)通道,即Linux設(shè)備驅(qū)動(dòng)。平臺(tái)以WM8960作為語(yǔ)音采集和播放芯片,因此下面簡(jiǎn)單介紹WM8960芯片的驅(qū)動(dòng)移植過(guò)程。

        由于WM8960語(yǔ)音芯片是采用模塊的方式編譯進(jìn)Linux內(nèi)核系統(tǒng)的,故其驅(qū)動(dòng)程序的入口和出口函數(shù)分別為WM8960_modinit,WM8960_exit。所謂的入口和出口函數(shù)指的是:當(dāng)系統(tǒng)上電時(shí),內(nèi)核會(huì)將所有的驅(qū)動(dòng)代碼掛載到系統(tǒng)里,而加載驅(qū)動(dòng)首先執(zhí)行的就是驅(qū)動(dòng)的入口函數(shù)。而當(dāng)卸載不想要的驅(qū)動(dòng)時(shí),執(zhí)行的是對(duì)應(yīng)驅(qū)動(dòng)的出口函數(shù)。

        入口函數(shù)只是將WM8960設(shè)備對(duì)應(yīng)的數(shù)據(jù)結(jié)構(gòu)注冊(cè)到I2C總線中。采用的方式就是調(diào)用I2C總線的接口函數(shù)i2c_add_driver()。為增強(qiáng)驅(qū)動(dòng)的移植性,內(nèi)核采用了驅(qū)動(dòng)-設(shè)備分離的方式,即與硬件相關(guān)的信息放在一個(gè)結(jié)構(gòu)體里注冊(cè)進(jìn)內(nèi)核,而與硬件無(wú)關(guān)的信息放在另一個(gè)結(jié)構(gòu)體中注冊(cè)進(jìn)內(nèi)核。驅(qū)動(dòng)和設(shè)備二者通過(guò)匹配注冊(cè)的name來(lái)進(jìn)行識(shí)別,此處的注冊(cè)name為WM8960。

        當(dāng)驅(qū)動(dòng)層和設(shè)備層通過(guò)name匹配成功之后,第一個(gè)會(huì)執(zhí)行的函數(shù)就是probe函數(shù)。probe函數(shù)會(huì)判斷是否是負(fù)責(zé)驅(qū)動(dòng)的設(shè)備,然后完成該設(shè)備的初始化操作。代碼如下:

        static __devinit int WM8960_i2c_probe(struct i2c_client *i2c,

        const struct i2c_device_id *id){

        struct WM8960_priv *WM8960; //WM8960的私有數(shù)據(jù)結(jié)構(gòu)體

        struct snd_soc_codec *codec; //Codec結(jié)構(gòu)體

        WM8960 = kzalloc(sizeof(struct WM8960_priv),GFP_KERNEL);//分配空間

        if (WM8960 == NULL)

        return -ENOMEM;

        codec = &WM8960->codec;

        i2c_set_clientdata(i2c,WM8960);

        codec->control_data = i2c;

        codec->dev = &i2c->dev;

        return WM8960_register(WM8960,SND_SOC_I2C); //注冊(cè)

        }

        probe函數(shù)首先定義了兩個(gè)非常復(fù)雜數(shù)據(jù)結(jié)構(gòu):一個(gè)WM8960的私有數(shù)據(jù)結(jié)構(gòu)體WM8960,另一個(gè)是片上Linux音頻架構(gòu)中的Codec結(jié)構(gòu)體codec。然后,程序調(diào)用Linux內(nèi)核內(nèi)存分配接口kzalloc函數(shù)分配了一個(gè)空間,并且將空間的首地址交給了WM8960私有數(shù)據(jù)結(jié)構(gòu)體。為了讓其他函數(shù)也能使用該內(nèi)存,此處通過(guò)i2c_set_client函數(shù)將地址保存到i2c_client結(jié)構(gòu)體下面的一個(gè)void*指針里。這樣,其他函數(shù)可以通過(guò)i2c_get_client函數(shù)接口來(lái)得到保存的數(shù)據(jù)。probe函數(shù)最后調(diào)用WM8960_register函數(shù)來(lái)完成WM8960的注冊(cè)。

        完成上述驅(qū)動(dòng)添加和注冊(cè)工作后,音頻文件的采集和播放就可以通過(guò)調(diào)用Linux系統(tǒng)的聲卡驅(qū)動(dòng),再調(diào)用剛注冊(cè)的WM8960音頻編解碼芯片來(lái)完成。通常,在進(jìn)行語(yǔ)音信號(hào)采集與處理前,主程序需要對(duì)音頻采集參數(shù)進(jìn)行設(shè)置,主要包括采樣率的設(shè)置、單雙通道的配置、錄音與播音緩沖區(qū)大小的設(shè)置、采樣位數(shù)的設(shè)置等。配置完成后,算法便可以從錄音緩沖區(qū)讀取采集的語(yǔ)音數(shù)據(jù),處理完成后,送入語(yǔ)音播放緩沖區(qū)。

        錄音程序的核心代碼如下:

        ......

        int SIZE = 8;

        int CHANNELS = 1;

        int RATE = 8000;

        int LENGTH = 3;

        if (snd_open(SND_PCM_STREAM_CAPTURE, CHANNELS, RATE, SIZE) < 0) {

        fprintf(stderr, "設(shè)備打開(kāi)失敗= ");

        return; }

        size_t c, frame_size;

        c = (off64_t)capture.chunk_bytes; //定義塊的大小

        int count = (LENGTH*RATE)/c; //計(jì)算塊的數(shù)量

        unsigned char data_buff[count*c]; //定義數(shù)據(jù)緩存大小

        frame_size = c * 8 / capture.bits_per_frame; //求幀的數(shù)量

        for(int i=0;i

        if (SND_readPcm(&capture, frame_size) != frame_size) {

        fprintf(stderr, "讀取錯(cuò)誤 ");

        return; }

        memcpy(data_buff+i*c, capture.data_buf, c); //從數(shù)據(jù)緩沖區(qū)讀出數(shù)據(jù)

        }

        QVectorY1(count*c);

        for(int i=0;i

        Y1[i] = (data_buff[i]-128)/128.0; //預(yù)處理

        snd_close(SND_PCM_STREAM_CAPTURE); //關(guān)閉設(shè)備

        ......

        3 語(yǔ)音信號(hào)處理實(shí)驗(yàn)設(shè)計(jì)

        3.1 實(shí)驗(yàn)設(shè)計(jì)

        本文設(shè)計(jì)的語(yǔ)音信號(hào)處理綜合實(shí)驗(yàn)平臺(tái)功能比較強(qiáng)大,可以面向不同層次的學(xué)生進(jìn)行實(shí)驗(yàn)。教師可以根據(jù)學(xué)生基礎(chǔ),為學(xué)生量身定制實(shí)驗(yàn)套餐。如表1所示,實(shí)驗(yàn)主要分為3類。

        表1 實(shí)驗(yàn)套餐及適用學(xué)生

        注:字母說(shuō)明——學(xué)生條件:A.嵌入式底層程序開(kāi)發(fā)基礎(chǔ);B.QT編程基礎(chǔ);C.C或C++語(yǔ)言基礎(chǔ)。提供資料——I.實(shí)驗(yàn)原理及要求;II.編譯好內(nèi)核;III.QT界面及函數(shù)定義

        由表可知,根據(jù)學(xué)生的學(xué)習(xí)基礎(chǔ),老師可以選擇不同的套餐進(jìn)行實(shí)驗(yàn)設(shè)置,而學(xué)生可以跨過(guò)不同階段進(jìn)行超前學(xué)習(xí)。不同于MATLAB的教學(xué)方法和實(shí)驗(yàn)設(shè)置,該實(shí)驗(yàn)設(shè)置并不固定在一種單一模式下,可進(jìn)行選擇性擴(kuò)展和加深。通過(guò)分層次的設(shè)置,教師可以通過(guò)不同層次的實(shí)例演示來(lái)激發(fā)學(xué)生的學(xué)習(xí)興趣,加深學(xué)生對(duì)知識(shí)的理解,也為學(xué)生從事語(yǔ)音信號(hào)處理相關(guān)的實(shí)際課題或競(jìng)賽提供一種切實(shí)可行的實(shí)現(xiàn)方案和思路。對(duì)于電子類學(xué)生來(lái)說(shuō),C語(yǔ)言或C++是非常重要和普遍的基礎(chǔ)課,因此學(xué)生進(jìn)行實(shí)驗(yàn)困難不大,還可以鍛煉學(xué)生C語(yǔ)言的編程能力。下面以語(yǔ)音增強(qiáng)算法為例,介紹面向套餐3的學(xué)生實(shí)驗(yàn)安排情況。

        3.2 語(yǔ)音增強(qiáng)算法原理

        對(duì)于任何實(shí)驗(yàn)來(lái)說(shuō),學(xué)生都必須首先了解實(shí)驗(yàn)的基本原理。因此,簡(jiǎn)單介紹基于譜減法的語(yǔ)音增強(qiáng)算法的基本原理。

        語(yǔ)音增強(qiáng)主要研究如何利用信號(hào)處理技術(shù)消除信號(hào)中的強(qiáng)噪聲干擾,從而提高輸出信噪比以提取出有用信號(hào)的技術(shù)。語(yǔ)音增強(qiáng)是語(yǔ)音算法中最基本,最常用的算法之一,其主要目的:①改進(jìn)語(yǔ)音質(zhì)量,消除背景噪音,使聽(tīng)者樂(lè)于接受,不感覺(jué)疲勞,這是一種主觀度量;②提高語(yǔ)音可懂度,這是一種客觀度量。這兩個(gè)目的往往不能兼得,所以實(shí)際應(yīng)用中總是視具體情況而有所側(cè)重。根據(jù)語(yǔ)音和噪聲的特點(diǎn),常用的語(yǔ)音增強(qiáng)算法包括譜減法、維納濾波法、卡爾曼濾波法、自適應(yīng)濾波法等。考慮到學(xué)生的理解程度,本文以譜減法[13]為例來(lái)進(jìn)行說(shuō)明。整個(gè)算法的原理如圖2所示。

        圖2 譜減法原理圖

        設(shè)語(yǔ)音信號(hào)的時(shí)間序列為x(n),加窗分幀處理后得到第i幀語(yǔ)音信號(hào)為xi(m),幀長(zhǎng)為N。任何一幀語(yǔ)音信號(hào)xi(m)做FFT后為

        (1)

        對(duì)Xi(k)求出每個(gè)分量的幅值和相角,幅值是|Xi(k)|,相角為

        (2)

        已知前導(dǎo)無(wú)話段(噪聲段)時(shí)長(zhǎng)為IS,對(duì)應(yīng)的幀數(shù)為NIS,可以求出該噪聲段的平均能量為

        (3)

        譜減公式為

        (4)

        式中:a和b是兩個(gè)常數(shù),a稱為過(guò)減因子,b稱為增益補(bǔ)償因子。

        3.3 基于QT的算法實(shí)現(xiàn)

        此處選擇QT作為編程載體目的:①為了便于學(xué)生直觀觀測(cè)結(jié)果;②QT是優(yōu)秀的跨平臺(tái)C++圖形界面應(yīng)用程序開(kāi)發(fā)框架?;赒T進(jìn)行Linux下的圖形界面開(kāi)發(fā),可以大大提高Linux下的編程效率[14-16]。

        在沒(méi)有QT編程的基礎(chǔ)下,教師可以選擇套餐3開(kāi)展實(shí)驗(yàn)。此時(shí),套餐3提供的基本資料包括:添加好語(yǔ)音采集設(shè)備的Linux內(nèi)核,構(gòu)建好的QT執(zhí)行界面,QT的運(yùn)行說(shuō)明文檔以及針對(duì)該實(shí)驗(yàn)的函數(shù)定義:QVector〈double〉ssubspec(QVector〈double〉&signal, int wlen, int inc, int NIS, doublea, doubleb)。這里,譜減法的實(shí)現(xiàn)函數(shù)為ssubspec,其輸入變量包括signal(輸入語(yǔ)音信號(hào)),wlen(幀長(zhǎng)),inc(幀移),NIS(前導(dǎo)幀數(shù)),a(過(guò)減因子),b(增益補(bǔ)償因子)?;谧V減法原理設(shè)計(jì)的語(yǔ)音增強(qiáng)函數(shù)如下:

        QVector〈double〉ssubspec(QVector〈double〉&signal, int wlen, int inc, int NIS, double a, double b)

        {

        QVector〈double〉wnd = hamming(wlen) ; //設(shè)置窗函數(shù)

        QVector〈double〉 output,X ; //譜減后的語(yǔ)音序列和幅值

        QVector〈double〉Yphase,Yeng; //譜減前相位和能量

        int N = signal.size();//信號(hào)長(zhǎng)度

        int nf = (N-wlen)/inc +1 ; //幀數(shù)

        QVector〈double〉 Y = enframe(signal,wnd,wlen,nf,inc); //信號(hào)分幀

        //噪聲段平均能量,參考式(3)

        QVector〈double〉 D=noiseeng(Y,NIS,wlen);

        //計(jì)算信號(hào)相位

        for(int i= 0 ; i

        std::complex〈double〉f[wlen];

        for(int j =0 ; j

        f[j].real() = Y[i*wlen+j];

        f[j].imag() = 0;}

        //求信號(hào)的傅里葉變換,參考式(1)

        fft(f,wlen);

        for(int j=0 ; j

        //求信號(hào)相位,參考式(2)

        Yphase<

        for(int j=0 ; j

        Yeng<< abs(f[j])* abs(f[j]);}

        //譜減法降噪,參考式(4)

        for(int j=0 ; j

        if(Yeng[j]>=a*D[j]){

        X<

        else{

        X<

        }}

        output = OverlapAdd2(X,Yphase,wlen,inc,nf); //合成譜減后的語(yǔ)音

        return output;

        }

        當(dāng)輸入為一段信噪比為5 dB語(yǔ)音信號(hào)時(shí),譜減法語(yǔ)音增強(qiáng)后的效果如圖3所示。顯示的軟件為語(yǔ)音信號(hào)處理平臺(tái)的綜合性實(shí)驗(yàn)軟件(此處為實(shí)驗(yàn)平臺(tái)的完

        圖3 譜減法語(yǔ)音增強(qiáng)效果圖

        整界面,在單獨(dú)實(shí)驗(yàn)時(shí)可根據(jù)需要進(jìn)行裁剪)。菜單欄顯示了平臺(tái)可以完成的實(shí)驗(yàn),中心區(qū)為波形顯示區(qū)域,右邊為參數(shù)顯示區(qū)域。中心區(qū)的上部為原始語(yǔ)音信號(hào),下部分兩段,分別為帶噪的語(yǔ)音波形和譜減后的輸出信號(hào)。由圖可知,增強(qiáng)后的信號(hào)信噪比由5 dB變?yōu)?2.843 7 dB,提高了7.843 7 dB,改善效果比較明顯。從信號(hào)波形也可看出,譜減后的波形較帶噪語(yǔ)音有了明顯改善。

        4 結(jié) 論

        針對(duì)目前語(yǔ)音信號(hào)處理課程偏重于理論教學(xué)的現(xiàn)狀,本文秉承學(xué)以致用原則,開(kāi)發(fā)了一款基于嵌入式系統(tǒng)的語(yǔ)音信號(hào)處理綜合實(shí)驗(yàn)平臺(tái)。本文重點(diǎn)介紹了系統(tǒng)的硬件構(gòu)成和軟件設(shè)計(jì)架構(gòu),并通過(guò)基于譜減法的語(yǔ)音增強(qiáng)實(shí)驗(yàn),驗(yàn)證了平臺(tái)的性能有效性和界面友好性。此外,該平臺(tái)涉及了語(yǔ)音信號(hào)處理目前的主流研究方向,因此既可用于高等學(xué)院語(yǔ)音信號(hào)處理課程的教學(xué)工作,也可以滿足從事語(yǔ)音信號(hào)處理相關(guān)科研人員學(xué)習(xí)和研發(fā)的需要。

        [1] 劉衛(wèi)東, 孟曉靜,王艷芬. 語(yǔ)音信號(hào)處理實(shí)驗(yàn)教學(xué)研究探索[J]. 實(shí)驗(yàn)室研究與探索, 2008, 27(4): 72-74.

        [2] 趙 力, 梁瑞宇, 魏 昕,等. 語(yǔ)音信號(hào)處理[M].3版.北京: 機(jī)械工業(yè)出版社, 2016.

        [3] Deng F, Bao C, Kleijn W B. Sparse hidden markov models for speech enhancement in non-stationary noise environments[J]. IEEE/ACM Transactions on Audio, Speech, and Language Processing, 2015, 23(11): 1973-1987.

        [4] 周 健, 趙 力, 梁瑞宇,等. 基于噪聲魯棒性特征和SVM的耳語(yǔ)音可懂度增強(qiáng)[J]. 東南大學(xué)學(xué)報(bào)(英文版), 2012, 28(3): 261-265.

        [5] Zhang X, Zhang Y, Shi Y,etal. Power control algorithm in cognitive radio system based on modified Shuffled Frog Leaping Algorithm[J]. International Journal of Electronics and Communications, 2012, 66(6): 448-454.

        [6] 王 薇, 楊麗萍, 魏 麗,等. 語(yǔ)音情感特征的提取與分析[J]. 實(shí)驗(yàn)室研究與探索, 2013, 32(7): 91-94,191.

        [7] 張瀟丹, 胡 峰,趙 力. 基于改進(jìn)的蛙跳算法與支持向量機(jī)的實(shí)用語(yǔ)音情感識(shí)別[J]. 信號(hào)處理, 2011, 27(5): 678-689.

        [8] 楊 毅, 李澤偉, 鄧北星,等. 語(yǔ)音信號(hào)處理實(shí)驗(yàn)的改革與實(shí)踐[J]. 實(shí)驗(yàn)室研究與探索, 2014, 33(4): 123-126.

        [9] 伍技祥, 仲元昌, 李彩玲,等. 嵌入式數(shù)字語(yǔ)音處理實(shí)驗(yàn)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 實(shí)驗(yàn)室研究與探索, 2012, 31(10): 46-49.

        [10] 宋亞男, 林錫海, 徐榮華,等. 機(jī)器人語(yǔ)音識(shí)別實(shí)驗(yàn)設(shè)計(jì)與實(shí)現(xiàn)[J]. 實(shí)驗(yàn)技術(shù)與管理, 2013, 30(2): 36-38.

        [11] 楊繼森, 張 靜, 朱 革,等. 基于ARM Cortex平臺(tái)的嵌入式系統(tǒng)課程虛擬實(shí)驗(yàn)平臺(tái)設(shè)計(jì)[J]. 實(shí)驗(yàn)技術(shù)與管理, 2014, 31(7): 97-101.

        [12] 王青云, 梁瑞宇,馮月芹. ARM Cortex-A8嵌入式原理與系統(tǒng)設(shè)計(jì)[M].北京: 機(jī)械工業(yè)出版社, 2014.

        [13] Boll S F. Suppression of acoustic noise in speech using spectral subtraction[J]. IEEE Transactions on Acoustics, Speech and Signal Processing, 1979, 27(2): 113-120.

        [14] 房漢雄, 穆偉斌, 齊 跡,等. 移動(dòng)終端實(shí)驗(yàn)教學(xué)平臺(tái)設(shè)計(jì)與應(yīng)用[J]. 實(shí)驗(yàn)技術(shù)與管理, 2014, 31(8): 103-105.

        [15] 田 磊. 嵌入式Linux系統(tǒng)中基于QT庫(kù)的應(yīng)用程序設(shè)計(jì)[J]. 實(shí)驗(yàn)室研究與探索, 2014, 33(5): 84-86,115.

        [16] 趙明波, 謝 楠, 王亞軍, 等. 基于RFID和QT/E車輛出入監(jiān)控系統(tǒng)的設(shè)計(jì)[J]. 實(shí)驗(yàn)室研究與探索, 2014, 33(11): 95-99.

        Design and Implementation of an Experimental System for Embedded Speech Signal Processing

        LIANGRuiyu1,2,WANGQingyun1,ZHAOLi2

        (1. School of Communication Engineering, Nanjing Institute of Technology, Nanjing 211167, China; 2. School of Information Science and Engineering, Southeast University, Nanjing, 210096, China)

        To embody the idea of mutual promotion between teaching and scientific research, and to meet the needs of teaching and research for speech signal processing, an integrated experimental platform for embedded speech signal processing is design by using Cortex-A8 microprocessor and WM8960 audio coding and decoding chip as core hardware. Moreover, an integrated experimental teaching and development software is designed on this platform by using QT development software. Then, the system hardware structure and transplant of driver are described. By taking an example of the speech enhancement algorithm based on spectral subtraction, the speech development process based on QT is introduced. Based on this experimental platform, students can master not only the basic knowledge of speech signal processing, but also the development process of embedded software for the speech application. The system had friendly interface and strong functions, can be used for the teaching of speech and signal processing in colleges and universities, and for the research and development of related topics on speech signal processing.

        speech signal processing; speech enhancement; embedded; experimental teaching

        2016-09-15

        江蘇省“六大人才高峰”項(xiàng)目(2016-DZXX-023);江蘇省青藍(lán)工程,江蘇省高等教育教學(xué)改革研究課題(2015JSJG123);南京工程學(xué)院高等教育研究課題重點(diǎn)課題(2015ZD02)

        梁瑞宇(1978-),男,江蘇徐州人,博士,副教授,主要研究方向語(yǔ)音信號(hào)處理。Tel.:15380920360;E-mail:lly1711@163.com

        TN 912.3;G 642.0

        A

        1006-7167(2017)05-0126-05

        猜你喜歡
        嵌入式信號(hào)實(shí)驗(yàn)
        記一次有趣的實(shí)驗(yàn)
        信號(hào)
        鴨綠江(2021年35期)2021-04-19 12:24:18
        完形填空二則
        做個(gè)怪怪長(zhǎng)實(shí)驗(yàn)
        基于FPGA的多功能信號(hào)發(fā)生器的設(shè)計(jì)
        電子制作(2018年11期)2018-08-04 03:25:42
        搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        NO與NO2相互轉(zhuǎn)化實(shí)驗(yàn)的改進(jìn)
        實(shí)踐十號(hào)上的19項(xiàng)實(shí)驗(yàn)
        太空探索(2016年5期)2016-07-12 15:17:55
        基于LabVIEW的力加載信號(hào)采集與PID控制
        亚洲av色香蕉一区二区三区潮| 国产精品无码无片在线观看| 国产黑色丝袜在线观看视频| 久久福利青草精品资源| 国产精品亚洲综合色区丝瓜| 麻豆成人久久精品二区三区91| 亚洲视频专区一区二区三区| 国产成人自拍高清在线| 亚洲av日韩av天堂一区二区三区| 欧美专区在线| 国产乱老熟视频乱老熟女1| 91九色人妻精品一区二区三区| 免费无码又黄又爽又刺激| 日韩欧美区| 精品国免费一区二区三区| 白丝美女扒开内露出内裤视频| 久久天堂一区二区三区av| 在线综合亚洲欧洲综合网站| 8av国产精品爽爽ⅴa在线观看| 亚洲精品综合一区二区| 性色av一二三天美传媒| 国产亚洲欧美精品久久久| 99国产超薄丝袜足j在线观看| 性一交一乱一乱一视频亚洲熟妇| 国产午夜亚洲精品国产成人av| 乱色精品无码一区二区国产盗| 国产精品欧美成人| a欧美一级爱看视频| 蜜桃一区二区三区在线视频| www国产亚洲精品| 国产成人无码免费网站| 中文字幕一区二区三区四区在线 | 国产精品久久久精品三级18 | 亚洲av永久无码一区二区三区| 中文字幕无码免费久久| 国产乱子伦视频一区二区三区| 精品人妻一区二区三区狼人 | 国产91久久麻豆黄片| 人妻少妇乱子伦无码视频专区| 国产成人无码aⅴ片在线观看| 日本女优中文字幕在线观看|