基于語音識別的微博簽到系統(tǒng)
近年來,語音識別在語音導(dǎo)航,室內(nèi)設(shè)備控制,人際對話等方面得到了廣泛的應(yīng)用。
本文引用地址:http://m.butianyuan.cn/article/201611/322041.htm我們在今年第1期雜志《為設(shè)備添加社交網(wǎng)絡(luò)功能》中,實現(xiàn)了W5500EVB自己發(fā)微博功能。試想如果我們把語音識別與微博簽到結(jié)合起來,我們上班時,報上姓名,經(jīng)識別后,攝像頭為我們拍張照片,傳到新浪微博,這樣既能得到我們簽到的時間,又能保證是本人簽到,可靠高效,同時朋友通過微博能了解到我們上班時的狀態(tài),這樣是不是很有意思呢?
今天要介紹的就是上面提到的,基于語音識別的微博簽到系統(tǒng),我們用攝像頭ov2640拍照,LD3320做語音識別,然后W5500EVB把我們想說的話,以及照片發(fā)送到新浪微博。
基于語音識別的微博簽到系統(tǒng)設(shè)計
(1)
a)
b)
c)
(2)
(3)
(4)
(5)
a)
b)
c)
d)
圖1是系統(tǒng)實物圖。
圖1系統(tǒng)實物圖
首先,我們了解一下整個程序流程,流程圖由一個主流程圖(見圖2)和四個子流程圖(圖3,圖4,圖5,圖6)組成。在STM32及ov2640初始化完成之后,將進(jìn)行網(wǎng)絡(luò)參數(shù)配置,根據(jù)自己網(wǎng)絡(luò)的情況配置W5500的IP地址等網(wǎng)絡(luò)參數(shù),確保W5500能連接外網(wǎng)。然后配置LD3320語音模塊,語音模塊處于初始狀態(tài),將進(jìn)行寫入識別列表,啟動語音識別過程,當(dāng)我們對著麥克風(fēng)說話的時候,LD3320檢測到有語音輸入,LD3320將進(jìn)入中斷,在中斷中將把我們說的內(nèi)容與寄存器里的詞條比較,如果找到1-4個候選答案,返回“找到識別結(jié)果”狀態(tài),如果沒有找到候選答案,返回“未找到識別結(jié)果”狀態(tài)。在下一次循環(huán)中,LD3320如果是“找到識別結(jié)果”狀態(tài),將拍攝照片及發(fā)送微博,如果是“未找到識別結(jié)果”狀態(tài),將進(jìn)入初始狀態(tài),如果是“正在識別”或者“識別錯誤”將重新檢查LD3320的狀態(tài)。各個子流程圖描述的比較詳盡,這里不再一一贅述。對于拍攝照片子流程圖,我們需要了解jpg圖片的數(shù)據(jù)格式,圖片的前兩個字節(jié)是0xff,0xd8,最后兩個字節(jié)是0xff,0xd9,在中斷程序接收圖片數(shù)據(jù)的過程中,首先判斷數(shù)據(jù)是不是前兩個字節(jié),如果是,保存數(shù)據(jù),后面的數(shù)據(jù)是先保存,然后判斷是不是數(shù)據(jù)結(jié)尾,直到接收成功。
圖2系統(tǒng)主流程圖
圖3寫入識別列表函數(shù)流程圖
圖5拍攝照片流程圖
圖6發(fā)送微博流程圖
以上四個子流程圖,已清晰地給大家展示語音識別微博簽到系統(tǒng)的整個工作流程,那么接下來就為大家揭開詳細(xì)的制作過程。
評論