• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

模仿人臉表情的高逼真機(jī)器人,附模仿表情的APP+Arduino源碼

2017/06/30
110
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

FaceAPP-Arduino-master.zip

共3個(gè)文件

模仿人臉表情的高逼真機(jī)器人概述:

和之前的跡APP一樣,我給顏藝Boy也提供了Arduino的庫函數(shù)支持,可以讓Arduino通過藍(lán)牙讀取人臉的表情、姿態(tài)、位置信息,庫的使用非常簡單,看示例代碼就知道了。支持通過藍(lán)牙輸出人臉數(shù)據(jù),開發(fā)板通過藍(lán)牙串口讀取,可以結(jié)合Arduino實(shí)現(xiàn)一些有趣的作品。見“相關(guān)文件”下載。

制作的手機(jī)APP截圖:

模仿人臉表情的高逼真機(jī)器人程序功能模塊:

  • OpenCV人臉識別
  • 基于多級回歸樹的人臉關(guān)鍵點(diǎn)回歸
  • 基于SVM的人臉訓(xùn)練集表情分類識別
  • 3D GUI顯示
  • 藍(lán)牙通信用于連接硬件

模仿人臉表情的高逼真機(jī)器人視頻演示:

模仿人臉表情的高逼真機(jī)器人總結(jié):

其中關(guān)鍵點(diǎn)的檢測效果還不錯(cuò),而表情分類由于樣本量的原因稍有些許不穩(wěn)定(各種表情只用了25個(gè)訓(xùn)練樣本)

由于訓(xùn)練樣本運(yùn)算量較大,所以先通過手機(jī)采集圖像數(shù)據(jù),然后加好標(biāo)簽在PC端讀取數(shù)據(jù)進(jìn)行訓(xùn)練,APP中則直接加載訓(xùn)練好的XML文件。值得一提的是,在表情分類模塊中,對人臉關(guān)鍵點(diǎn)數(shù)據(jù)的歸一化操作十分重要,在網(wǎng)上看到一些案例是直接將點(diǎn)的像素坐標(biāo)歸一化,然而這樣無法保證對所有頭部姿態(tài)都進(jìn)行正確分類。所以程序里我使用了一個(gè)坐標(biāo)轉(zhuǎn)換,將點(diǎn)的像素坐標(biāo)轉(zhuǎn)換為以人眉心為原點(diǎn)的坐標(biāo)系,這樣再歸一化之后泛化效果就好了很多。

藍(lán)牙模塊連接,連接線如圖:

注意的是只需要接藍(lán)牙的Tx,不需要接Rx,這樣是為了讓Arduino的print函數(shù)依然可以往控制臺打印數(shù)據(jù),另外下載程序的時(shí)候不要連接藍(lán)牙不然會(huì)數(shù)據(jù)沖突無法下載。還需要注意初始化的波特率必須跟藍(lán)牙模塊移植。
其實(shí)用軟串口的話就沒有這些問題了,但是我好懶。。沒時(shí)間完善庫😥,要是有同學(xué)加上了軟串口功能可以找我把代碼整合進(jìn)去。

APP兼容性
由于市面上手機(jī)型號繁多,對于不同架構(gòu)的CPU不一定全部都能支持,有安裝問題的可以在下載頁面留言反饋我有空的話會(huì)盡量適配的。安裝好了之后如果打開應(yīng)用卡住或者閃退可能是手機(jī)上的安全軟件限制了APP的權(quán)限,這時(shí)候需要去手機(jī)設(shè)置里開啟APP使用攝像頭和藍(lán)牙的權(quán)限,以原生系統(tǒng)為例操作步驟如下:設(shè)置-應(yīng)用-已安裝-i顏藝Boy-權(quán)限管理。

  • FaceAPP-Arduino-master.zip
    下載
    描述:這款A(yù)PP的Arduino庫,可以實(shí)時(shí)獲取人臉信息
  • i顏藝Boy.apk
    下載
    描述:模仿表情的APP
  • 原文出處.txt
    下載
    描述:原文出處

相關(guān)推薦