• 
    

    
    

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

      基于HTK的嵌入式豬只聲音識(shí)別系統(tǒng)設(shè)計(jì)

      2017-04-10 07:27:32袁瑞臨張棲銘王峰范凡
      電腦知識(shí)與技術(shù) 2017年4期
      關(guān)鍵詞:嵌入式

      袁瑞臨++張棲銘++王峰++范凡

      摘要:為了對(duì)豬只異常狀態(tài)進(jìn)行檢測(cè),本文設(shè)計(jì)了一種基于嵌入式平臺(tái)的豬只聲音識(shí)別系統(tǒng),該系統(tǒng)以S3C2440芯片為微處理器,以Linux為操作系統(tǒng),以QT為顯示界面,并通過(guò)移植基于隱馬爾科夫模型算法的語(yǔ)音識(shí)別工具箱HTK,實(shí)現(xiàn)了自動(dòng)識(shí)別豬只不同狀態(tài)的聲音。經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證表明,本系統(tǒng)達(dá)到了預(yù)期的實(shí)驗(yàn)效果。

      關(guān)鍵詞:聲音識(shí)別;S3C2440; 隱馬爾科夫模型;HTK; 嵌入式

      中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)04-0186-03

      The Design of Embedded Voice Recognition System Based on HTK in Pigs

      YUAN Rui-lin ,ZHANG Qi-ming,WANG Feng,F(xiàn)AN Fan

      (1.College of Information Engineering, Taiyuan University of Technology, Jinzhong 030600,China)

      Abstract: In order to detect the abnormal state of pigs, this paper designs a pig voice recognition system based on embedded platform, the system uses S3C2440 chip microprocessor, the Linux operating system, using QT as the display interface, and through transplantation based on Hidden Markov model algorithm for speech recognition toolbox HTK, realizes the automatic identification of pigs in different states sound. The experimental results show that the system achieves the desired experimental results.

      Key words: voice recognition; S3C2440; HMM; HTK; embedded

      現(xiàn)代集約化的養(yǎng)豬場(chǎng)規(guī)模越來(lái)越大,自動(dòng)化和無(wú)人值守的水平日益提高,對(duì)豬場(chǎng)的狀態(tài)監(jiān)測(cè)提出了很高的要求,而豬的聲音信息可以很好地反映豬的狀態(tài),為飼養(yǎng)員判斷豬只的狀態(tài)提供參考。聲音識(shí)別作為模式識(shí)別的重要研究?jī)?nèi)容,近二十年來(lái)發(fā)展迅速,語(yǔ)音技術(shù)的應(yīng)用已經(jīng)成為一個(gè)具有競(jìng)爭(zhēng)性的新興高技術(shù)產(chǎn)業(yè)。隨著計(jì)算機(jī)技術(shù)與電子技術(shù)的發(fā)展,嵌入式系統(tǒng)的應(yīng)用領(lǐng)域越來(lái)越廣,基于嵌入式平臺(tái)的聲音識(shí)別技術(shù)發(fā)展備受關(guān)注。由英國(guó)劍橋大學(xué)工程系開(kāi)發(fā)的、由眾多函數(shù)庫(kù)和工具組成的聲音識(shí)別工具箱HTK(Hidden Markov Model Toolkit),經(jīng)過(guò)不斷地發(fā)展和改進(jìn),得到了廣泛使用,在嵌入式平臺(tái)上移植開(kāi)源的HTK可以縮短開(kāi)發(fā)周期,節(jié)約成本。本文主要介紹了一種通過(guò)移植HTK應(yīng)用于檢測(cè)和識(shí)別豬只不同狀態(tài)聲音的嵌入式系統(tǒng)實(shí)現(xiàn)的整個(gè)過(guò)程。

      1 實(shí)現(xiàn)原理

      1.1 聲音識(shí)別基本原理

      關(guān)于豬只聲音識(shí)別的算法,我們主要采用目前在聲音信號(hào)處理的各個(gè)領(lǐng)域使用最為廣泛的隱馬爾可夫模型(HMM)算法。HMM算法是一種屬于模板匹配類(lèi)型的模式識(shí)別方法,即按照一定的相似度測(cè)度準(zhǔn)則,使未知的聲音模型與參考模型庫(kù)作比較,以最大輸出概率的一個(gè)模型作為識(shí)別結(jié)果。

      在語(yǔ)音識(shí)別系統(tǒng)設(shè)計(jì)中,將每一種豬只狀態(tài)作為一個(gè)基本元,并建立對(duì)應(yīng)的HMM。HMM是一個(gè)輸出符號(hào)序列的雙重隨機(jī)過(guò)程,假設(shè)具有N種狀態(tài)S1,S2,S2,…,SN,在一定時(shí)間從某一個(gè)狀態(tài)轉(zhuǎn)移到另一個(gè)狀態(tài)并且會(huì)輸出一個(gè)符號(hào)序列。狀態(tài)轉(zhuǎn)移結(jié)果由初始狀態(tài)概率π和狀態(tài)轉(zhuǎn)移概率矩陣A決定,輸出的符號(hào)序列由觀察值概率矩陣B決定。

      在本文中,我們?cè)O(shè)定了具有6個(gè)轉(zhuǎn)移狀態(tài)的HMM模型,如圖1所示。其中,S1和S6分別稱為開(kāi)始狀態(tài)和結(jié)束狀態(tài),它們無(wú)觀察函數(shù),稱為非發(fā)散狀態(tài);S2至S5這4個(gè)狀態(tài)稱為活動(dòng)狀態(tài)。HMM的狀態(tài)轉(zhuǎn)換圖如下所示,其中aij為從狀態(tài)i到狀態(tài)j的轉(zhuǎn)移概率,bi為狀態(tài)i轉(zhuǎn)移時(shí)的輸出概率。

      1.2 硬件組成

      本嵌入式系統(tǒng)硬件采用Samsung公司推出的S3C2440芯片為核心,它是基于ARM920T的32位RISC微處理器,其主頻為400MHZ,并且具有低功耗、高性能、高集成度等優(yōu)點(diǎn)。豬只聲音通過(guò)麥克風(fēng)聲音傳感器采集回來(lái),再經(jīng)過(guò)數(shù)字音頻編譯碼器進(jìn)行處理。嵌入式音頻系統(tǒng)的CODEC采用Philips公司生產(chǎn)的UDA1341芯片,它提供標(biāo)準(zhǔn)的IIS接口,可與S3C2440內(nèi)置的IIS接口直接相連。音頻驅(qū)動(dòng)程序采用ALSA體系,由它提供的音頻編程API接口,可以對(duì)聲卡進(jìn)行控制,設(shè)置采樣頻率、聲道數(shù)目等參數(shù),并完成對(duì)聲卡的讀出數(shù)據(jù)及寫(xiě)入數(shù)據(jù)等操作。系統(tǒng)的其他模塊還有64M的SDRAM、256M的Nand Flash、MIC輸入接口、耳機(jī)輸出接口、電源模塊等。

      圖 2 硬件結(jié)構(gòu)圖

      1.3 軟件設(shè)計(jì)

      在軟件設(shè)計(jì)部分,首先采用自行編寫(xiě)的錄音程序?qū)⒇i只聲音保存為WAVE波形文件格式。再利用HTK所提供的數(shù)據(jù)準(zhǔn)備工具、HMM模型訓(xùn)練工具、識(shí)別工具和結(jié)果分析工具來(lái)實(shí)現(xiàn)豬只聲音信號(hào)的特征提取、訓(xùn)練、識(shí)別等過(guò)程。軟件結(jié)構(gòu)如下圖所示:

      圖 3 軟件設(shè)計(jì)結(jié)構(gòu)圖

      2 嵌入式系統(tǒng)設(shè)計(jì)

      以Linux為內(nèi)核的嵌入式操作系統(tǒng)的設(shè)計(jì),分為引導(dǎo)程序Bootloader的移植、內(nèi)核的移植、文件系統(tǒng)(包含應(yīng)用程序)的移植三大部分。本設(shè)計(jì)中Bootloader采用開(kāi)發(fā)板自帶的Uboot,故本文重點(diǎn)介紹內(nèi)核的移植及文件系統(tǒng)和應(yīng)用程序的移植。

      2.1 交叉編譯平臺(tái)搭建

      2.1.1 交叉編譯簡(jiǎn)介

      由于嵌入式平臺(tái)處理能力及存儲(chǔ)空間等資源的限制,需要在PC上利用交叉編譯工具鏈對(duì)需要下載到ARM平臺(tái)的文件進(jìn)行交叉編譯。本設(shè)計(jì)以ARM-Linux平臺(tái)作為運(yùn)行環(huán)境,故所選交叉編譯工具鏈為arm-linux-gcc。

      2.1.2 交叉編譯工具安裝過(guò)程

      在PC主機(jī)上安裝交叉編譯工具鏈的主要步驟為:

      ① 下載交叉編譯工具鏈arm-linux-gcc-4.3.2.tgz,并在/usr/local下建立arm文件夾:#mkdir /usr/local/arm。

      ② 將文件解壓縮:#tar xzvf arm-linux-gcc-4.3.2.tgz -C /usr/local/arm。

      ③ 添加環(huán)境變量,在profile文件中添加:export PATH=/usr/local/arm/4.3.2/bin:$PATH。

      2.2 內(nèi)核的移植

      2.2.1 內(nèi)核簡(jiǎn)介

      內(nèi)核是嵌入式操作系統(tǒng)的核心,內(nèi)核主要由進(jìn)程調(diào)度、內(nèi)存管理、虛擬文件系統(tǒng)、網(wǎng)絡(luò)接口和通訊進(jìn)程等組成。Linux內(nèi)核具有代碼開(kāi)源、體積小、效率高、易裁剪等優(yōu)點(diǎn)。本文中我們采用嵌入式Linux 2.6.31版本內(nèi)核作為移植對(duì)象,并結(jié)合聲音識(shí)別平臺(tái)硬件的需要進(jìn)行相應(yīng)的配置。

      2.2.2 內(nèi)核安裝過(guò)程

      內(nèi)核移植的主要步驟為:

      ①在官網(wǎng)上下載linux-2.6.31.tar.bz2內(nèi)核源碼。

      ②修改編譯配置文件Makefile,指定系統(tǒng)硬件框架及交叉編譯工具:

      ARCH ? = arm

      CROSS_COMPILE ?= arm-linux-

      ③在PC上Linux操作系統(tǒng)下進(jìn)入圖4所示的圖形化配置界面,打開(kāi)S3C2440的默認(rèn)配置文件后,再進(jìn)入"System Type"選項(xiàng)單,配置選中以下幾項(xiàng):

      2.3 文件系統(tǒng)的設(shè)計(jì)

      文件系統(tǒng)是操作系統(tǒng)的重要組成部分, Linux文件系統(tǒng)具有一些固定格式和功能的目錄。文件系統(tǒng)制作的主要過(guò)程是創(chuàng)建系統(tǒng)的各個(gè)目錄以及在這些目錄下添加各種文件,由于創(chuàng)建目錄部分無(wú)特別之處,故在下文中我們重點(diǎn)介紹在文件系統(tǒng)中如何添加本設(shè)計(jì)中所需要的應(yīng)用程序。

      2.3.1 HTK的編譯

      由于嵌入式平臺(tái)資源的限制,在ARM平臺(tái)主要完成豬只聲音的識(shí)別工作,而聲音模型的建立,即訓(xùn)練過(guò)程需要在PC平臺(tái)完成。因此整個(gè)系統(tǒng)搭建分為PC平臺(tái)和ARM平臺(tái)兩大部分。由于針對(duì)于宿主機(jī)的編譯過(guò)程和針對(duì)ARM-Linux平臺(tái)的類(lèi)似,這里只介紹過(guò)程相對(duì)復(fù)雜的交叉編譯過(guò)程,主要步驟如下:

      ①在HTK官網(wǎng):http://htk.eng.cam.ac.uk/download.shtml下載HTK-3.4.1.tar.gz源碼包。

      ②Linux下運(yùn)行解壓后文件夾下configure程序,生成Makefile文件:

      ./configure - prefix=/home/yrl/HTK1。

      ③修改源碼包下HTKLib文件夾中的編譯配置Makefile文件使其針對(duì)ARM平臺(tái),并移除一些嵌入式平臺(tái)不需要的庫(kù)文件,修改如下:

      CC = gcc

      CFLAGS := $(CFLAGS) -ansi -D_SVID_SOURCE -DOSS_AUDIO -D'ARCH="i686"' -Wall -Wno-switch -g -O2 -

      RANLIB = ranlib

      objects = HGraf.o esig_asc.o \

      lvobjects = $(basename HGraf.o).lv.o esig_asc.lv.o \

      修改為:

      CC = arm-linux-gcc

      CFLAGS := $(CFLAGS) -ansi -D_SVID_SOURCE -DOSS_AUDIO -D'ARCH="arm"' -Wall -Wno-switch -g -O2 -

      RANLIB =arm-linux-ranlib

      objects = esig_asc.o \

      lvobjects = esig_asc.lv.o \

      修改完成后保存,運(yùn)行:make。

      ④與第③步類(lèi)似,修改HTKTools文件夾下的Makefile文件,修改完保存退出。

      Linux下運(yùn)行:make

      make install。

      ⑤編譯完成后,將在HTKTools文件夾下生成所有可執(zhí)行程序中的用于提取MFCC特征的工具HCopy和用于識(shí)別的工具HVite添加到文件系統(tǒng)的/usr/bin目錄下即可。

      2.3.2 HTK的應(yīng)用

      在采集豬只聲音后,使用HTK所提供的與聲音識(shí)別相關(guān)的工具集構(gòu)建系統(tǒng)時(shí),根據(jù)圖3中所示的軟件工具完成聲音數(shù)據(jù)的標(biāo)記并提取MFCC特征,使用基于前向后向算法的工具HInit和Hcompv及基于Baum-Welch算法的HRest完成聲學(xué)模型的訓(xùn)練。在識(shí)別時(shí),使用HVite將提取好的測(cè)試數(shù)據(jù)的MFCC特征與聲學(xué)模型比較,得出識(shí)別結(jié)果。構(gòu)建好豬只聲音系統(tǒng)后,利用HResults對(duì)本系統(tǒng)進(jìn)行性能評(píng)估,可得到測(cè)評(píng)結(jié)果及相關(guān)信息。

      2.3.3 QT程序的設(shè)計(jì)

      為了便于在ARM上顯示結(jié)果并且方便測(cè)試,我們?cè)O(shè)計(jì)了Qt程序,并將編寫(xiě)好的程序利用Qt Embedded編譯器編譯成ARM-Linux平臺(tái)的可執(zhí)行程序,添加到文件系統(tǒng)中。在Qt程序中,嵌入編譯好的聲音識(shí)別可執(zhí)行程序,同時(shí)為了方便單次測(cè)試,在界面中加入了QPushButton部件,當(dāng)按鈕被點(diǎn)擊時(shí),根據(jù)設(shè)計(jì)的“信號(hào)與槽”機(jī)制便會(huì)觸發(fā)聲音采集程序,進(jìn)行識(shí)別。進(jìn)行一次測(cè)試后,Qt識(shí)別界面如下圖所示:

      3 結(jié)束語(yǔ)

      本設(shè)計(jì)通過(guò)移植較為成熟的開(kāi)源工具箱HTK,并且合理地進(jìn)行軟硬件裁剪,成功實(shí)現(xiàn)了豬只異常聲音在嵌入式平臺(tái)的檢測(cè)和識(shí)別。經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證,準(zhǔn)確率和處理速度均較為理想,具有很好的推廣價(jià)值。

      參考文獻(xiàn):

      [1] 韋東山. 嵌入式 Linux應(yīng)用開(kāi)發(fā)完全手冊(cè)[M].北京: 人民郵電出版社,2008.

      [2] 張懿. 構(gòu)造廉價(jià)的ARM9開(kāi)發(fā)平臺(tái)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2007(5):70-75.

      [3] 布蘭切特,薩默菲爾德.C++ GUI Qt4 編程[M].閆鋒欣,曾泉人,張志強(qiáng),譯.2版.北京:電子工業(yè)出版社,2013.

      [4] 楊成.嵌入式語(yǔ)音識(shí)別平臺(tái)及優(yōu)化研究[D].華南理工大學(xué),2010.

      [5] 胡航.語(yǔ)音信號(hào)處理[M].哈爾濱工業(yè)大學(xué)出版社,2000.

      [6] 王柄錫.實(shí)用語(yǔ)音識(shí)別基礎(chǔ)[M].北京:國(guó)防工業(yè)出版社,2005.

      [7] 韓紀(jì)慶,張磊,鄭鐵然.語(yǔ)音信號(hào)處理[M].北京: 清華大學(xué)出版社,2005.

      [8] 王炳錫,屈丹.實(shí)用語(yǔ)音識(shí)別基礎(chǔ)[M].北京:國(guó)防工業(yè)出版社,2005.

      猜你喜歡
      嵌入式
      Focal&Naim同框發(fā)布1000系列嵌入式揚(yáng)聲器及全新Uniti Atmos流媒體一體機(jī)
      TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
      電子制作(2019年7期)2019-04-25 13:17:14
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
      電子制作(2018年18期)2018-11-14 01:48:16
      嵌入式PLC的設(shè)計(jì)與研究
      電子制作(2018年16期)2018-09-26 03:27:18
      搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
      基于嵌入式系統(tǒng)Windows CE的應(yīng)用程序開(kāi)發(fā)
      嵌入式單片機(jī)在電機(jī)控制系統(tǒng)中的應(yīng)用探討
      電子制作(2017年8期)2017-06-05 09:36:15
      嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
      Altera加入嵌入式視覺(jué)聯(lián)盟
      安多县| 东明县| 河源市| 永嘉县| 邯郸县| 云梦县| 青浦区| 阿克陶县| 云梦县| 枣庄市| 尼玛县| 榆中县| 汾西县| 云龙县| 汤原县| 右玉县| 镇平县| 曲阳县| 许昌县| 水城县| 大连市| 含山县| 灵武市| 密山市| 中阳县| 广汉市| 张家港市| 神木县| 霍邱县| 金塔县| 鲜城| 民乐县| 林口县| 万安县| 荔波县| 海兴县| 玉田县| 吐鲁番市| 寿阳县| 罗山县| 全椒县|