当前位置: 华文星空 > 知识

大疆新出的机甲大师机器人,到底好不好玩?

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