當前位置: 華文星空 > 知識

大疆新出的機甲大師機器人,到底好不好玩?

2020-03-28知識

大疆創新在 3 月 9 號釋出了機甲大師系列的新品 RoboMaster EP。

很幸運,第二天我就拿到了一台已經組裝好的 EP 步兵。

(看到機甲大師 EP 一臉懵逼的川普)

新玩具到手,趕緊在周末玩了起來。

大疆官方介紹 RoboMaster EP 是面向編程教育新出的編程機器人。

相比於上一代的 RoboMaster S1 版本,這個版本更有更多的可拓展性。

多了一系列的配件,可以組裝成各種機器人。

其中包括帶有機械臂的工程機器人。

帶有炮台的步兵機器人。

還有高達形態的機器人

由於這是面向教育的編程機器人,機甲大師 EP 留了足夠的拓展空間和傳感介面。

結合 3D 打印。極客們可以打造任意形態的機甲大師 EP 。

但是最讓我覺得有意思的,是 EP 終於可以開放了 SDK 編程逗貓。

相當於我們有了機甲大師 EP 的 Root 許可權。

給一個極客 Root 許可權,比讓極客和美女關一個房間刺激多了。

多說無益,寫程式碼才是正經事!

既然底層 SDK 開放,那可就好玩了。

趕緊跑一波 Hello World 試試。

找了一番機甲大師開發者的入門文件,按照指引執行程式碼後。

我們成功透過 WIFI 連線到了這台機器人上。

(使用 python3 的 socket 模組連線機甲大師 EP)

來,我們先試點簡單的。

輸入命令:

blaster fire

控制台顯示命令發送成功,機甲大師 EP 也成功發送了一顆水晶彈。

好玩,再來個刺激的,根據官網文件介紹,使用 chassis speed命令可以進行雲台速度設定,那麽我們來玩個愛的魔力轉圈圈好了:

chassis speed x 0 y 0 z 60

這個命令執行會讓雲台固定原地,以每秒 60 度速度自身旋轉。

(此時好奇的川普過來圍觀)

既然 EP 開放了編程SDK,那麽我們限制搞事情的只有我們的想象力了。

鋼鐵俠有一個智能管家 Jarvis。我們是不是也可以搞一個聲控版的機甲大師 EP ?

答案是可以的!

把一個大象放進冰箱分四步,做一個智能機甲只需要分三步。

框架有了,我們接下來要去做具體的實作。

首先是錄音部份,這個簡單,直接使用現成的 pyaudio 模組就可以解決。

然後到語音辨識部份,我們要去 Keras 訓練一個語音辨識模型(大霧)直接在百度大腦的 AI 開放平台上建立一個套用,即可薅一個每日免費使用 5w 次的語音辨識服務。

最後就是行為處理部份,這個就是一堆對上個步驟辨識到的文本做 if else 的處理。

從確定編程思路,到申請許可權,調通機器人與語音辨識服務,最終耗時大概一個下午。

程式碼寫好了,跑起來試試?

使用 Python 編程,語音控制機甲 https://www.zhihu.com/video/1227282517789081600

WOW !That's Pretty Cool~

半天完成開發並偵錯語音控制小車的功能,這 SDK 易用性確實還不錯。

另外,根據文件所說,機甲大師 EP 開放了影片流推播的功能。

那意味著我們可以利用機甲大師 EP 影片流做影像辨識。

也意味著,我們可以結合深度學習完成機甲大師 EP 辨識貓臉的目的。

廢話少說,開始寫程式碼。

首先試下影片流是否能夠正常傳輸。

根據機甲大師開發者文件。我們需要連線到 SDK 模式控制,並輸入命令:

stream on

開啟機甲大師推流到 TCP 埠 40921。

然後我們在 OpenCV 中使用函數:

cv2.VideoCapture("tcp://10.0.0.16:40921")

獲取到這個地址的的影片流。最後把影像以幀的形式顯示在程式執行端,就是這個效果:

(機甲大師 EP 影片流推播到 OpenCV)

編程環境有了,影片流有了,我們還缺個貓臉辨識模型。

總不能自己去拍一萬張貓的照片去訓練模型吧。

我把辨識貓的希望寄托在了全球最大的同性社交網站 Github。

然後我找到了一個叫 cat-detector 的專案,這是一位叫 fdalvi 的網友訓練的野外貓咪檢測專案,他把這個神經網絡叫 CatNet 。

(CatNet)

看了下 True Positive 的檢測效果:

看起來很不錯,但是再看 False Positive 的樣本:

emmmmmmm,這效果有點差強人意啊。

看起來效果和 OpenCV 內建的貓臉辨識工具效果也好不了多少,不如直接用 CV 內建的辨識方法好了。

cv2.Cascade classifier('haarcascade_frontalcatface.xml')

借助這個貓臉辨識模型,成功辨識到了川普 的大臉。

(使用 opencv 的貓臉辨識模型辨識貓咪)

根據大疆官網所說,機甲大師 EP 除了步兵形態還有工程車形態。

工程車版機甲大師更適合做物品獲取,物品互動等任務的編程。

相信結合機甲大師 EP 開放的 SDK 能力和 Python 編程,自動給貓咪鏟屎不再是一個難事。

除了人工智能逗貓以外,還可以基於編程實作自動獲取快遞、基於傳感器實作下雨自動關窗關門、基於人臉辨識做家庭守護衛士,當檢測到陌生人發射水晶彈攻擊等,可玩性非常高。

最後發一張機甲大師 EP 與川普的合照:

註:

1. 本文謹代表個人觀點,不代表大疆官方。

2. 川普是我家貓咪的名字,如有雷同,不勝榮幸。

3. 開放 SDK 許可權不意味著擁有 Root 許可權,此處只是一個比喻。

參考文件:

https://www. pyimagesearch.com/2016/ 06/20/detecting-cats-in-images-with-opencv/

https:// robomaster-dev.readthedocs.io /zh_CN/latest/index.html

https://www. dji.com/cn/robomaster-e p