關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于SPCE061A智能小車機器人語音辨識系統的研究

        基于SPCE061A智能小車機器人語音辨識系統的研究

        作者: 時間:2009-10-13 來源:網絡 收藏

        上的實現過程可分為以下五個階段,如圖6所示。

        (1)初始化RAM
        命令的特征模型被保存在的內部
        RAM中,如果所需的RAM空間被舊的特征模型數據占滿,新特征模型則無法保存到RAM中,利用BSR_DeleteS-DGroup(0)函數可以把 RAM空間中所有的特征模型刪除,釋放出所需的空間。當RAM擦除成功BSR_DeleteS-DGroup(0)函數返回0,否則返回-1。
        (2)調用訓練模塊
        訓練過程通過調用函數im BSR_Train(int Corn-mandID,int TraindMode)來完成,CommandID為命令序號,范圍從0x100到0x105,并且對于每組訓練語句都是唯一的。TraindMode為訓練次數,為1表示使用者訓練一次,為2表示訓練者訓練兩次。為了增強可靠性,最好訓練兩次,否則的命令就會傾向于噪音,訓練次數是2時,兩次一定會有一些差異,所以一定要保證兩次訓練結果盡量接近。當int BSR_Train返回0時表明語音訓練成功。
        (3)初始化
        用來定義語音輸入來源,可以通過調用函數void BSR_InitRecognizer(int AudioSource)完成,其中參數Audio-Source為0時表示MIC語音輸入,為1時表示LINE_IN模擬電壓輸入。當主程序調用該函數時,語音辨識器便打開8kHz采用頻率的FIQ_TMA中斷,并將采樣得到的語音數據填入語音辨識器的數據隊列中。
        (4)啟動實時監控
        實時監控是用來觀察語音辨識是否正常工作,如果辨識正常則會產生脈寬為16ms連續穩定方波,否則會產生不穩定的波形,此時需要刪除命令或優化程序,否則將會丟失語音數據,產生辨識出錯信息。完成此功能可以通過調用BSR_EnableCPUIndicator()函數來完成。

        (5)辨識處理
        由函數int BSR_GetResult()完成語音辨識處理,當無命令辨識出來時,函數返回0;辨識器停止未初始化或辨識未激活返回-1;當辨識不合格時返回-2;當辨識出來時返回命令的序號。

        4 實驗與結論
        實驗中的正確辨識率在90%以上,實驗過程中發現影響正常辨識的因素主要包括周圍環境的噪音、人與小車的距離等,這些需要在今后的工作改正。需要說明的是在訓練過程中中,每條語音命令的長度不要超過13 s,訓練后得到的語音模型保存在RAM中,每條命令占用96Word。由于RAM空間有限,同時可辨識的語音命令為5條,為了運行復雜的辨識程序,必須通過擴展必要的存儲芯片完成的功能。
        這種語音控制的小車不僅可以將來為人服務,稍加擴展,就可以在多種不適合人作業的場合替代人執行任務,因此這種語音控制小車具有重要的學術價值。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 静安区| 托克托县| 陈巴尔虎旗| 长岭县| 内乡县| 军事| 达州市| 家居| 安图县| 资阳市| 桃园县| 武夷山市| 乌鲁木齐市| 观塘区| 永嘉县| 昌图县| 日照市| 博兴县| 平原县| 尉氏县| 义乌市| 长岭县| 屯门区| 花莲县| 通海县| 漳平市| 龙江县| 元江| 分宜县| 饶阳县| 邵阳县| 景东| 安庆市| 丹巴县| 昌黎县| 济南市| 八宿县| 清水河县| 信丰县| 广昌县| 三原县|