学生休息室

分享学生如何在日常项目中使用MATLAB和Simulink的技术和现实例子#studentsuccess金宝app

RoboCup@Home教育:2018年更新

塞巴斯蒂安·卡斯特罗回到这里来谈谈他的两大职业兴趣:机器人和教育。

这个RoboCup@Home教育挑战是一项基于并融入全球机器人杯竞赛的机器人技术教育经验。该计划由陈健锋教授来自南开大学,多年来一直参与机器人世界杯。

这一部分研讨会,部分比赛的目标是让年轻,经验较少的观众尝一尝如何编程一个自主服务机器人。我们的目标是让人们感到兴奋并有资格应对未来的挑战RoboCup@Home大联盟的竞争。

RoboCup@Home自2015年以来,教育挑战一直存在,但MathWorks首次参与是在2017年。在上一篇博文,我们在泰国曼谷举行的2017年RoboCup亚太公开赛上讲述了我们的第一次教学经历。

现在2018年已经过去了一半,我很高兴与大家分享我们的合作是如何继续和发展的。

2018年有什么新鲜事?

2018年至今,共有3家RoboCup@Home教育挑战。

  • 5月初:RoboCup日本公开赛2018-日本小垣
  • 5月下旬:2018欧洲机器人杯青少年锦标赛-意大利蒙特西尔瓦诺
  • 6月中旬:RoboCup 2018-加拿大蒙特利尔

RoboCup 2018活动是这三项活动中最大的一项,也是我们今年亲自参加的一项。我们有9支代表7个国家和4个大洲的队伍,这是一次非常棒的经历。

由于我们正在增加这些研讨会的频率,我们已经将内容开源并在RoboCup@Home教育网站.

RoboCup@Home加拿大教育-Jeffrey Tan教授提供

ROS支金宝app持许多机器人

如上图所示,我们使用海龟2作为我们的开发平台,因为它相对容易设置,并且已经存在了相当长的一段时间机器人操作系统(ROS),这是RoboCup(以及一般的机器人技术)中一个丰富的软件框架。

卢卡·伊奥奇教授来自罗马萨皮恩扎大学,是该项目的主要合作者之一RoboCup@Home及RoboCup@Home教育,以及今年意大利活动背后的驱动力。Iocchi教授的项目之一是马尔蒂诺-一个开源、低成本的机器人平台,也依赖于ROS。

ROS的一大优点是它的通信框架,它可以让你切换机器人平台(真实的或模拟的)不费吹灰之力。通过更改ROS主题的名称并编写一个简单的MATLAB脚本,让用户选择他们的机器人,Tan教授和Iocchi教授能够在意大利举办TurtleBot 2和MARRtino研讨会。未来,该材料可以扩展到其他流行的教育平台,如来自ROBOTIS的TurtleBot 3.

Iocchi教授总结了MATLAB在教授新手ROS方面的作用:“向年轻学生提供隐藏ROS复杂性的高级函数是可能的。”

RoboCup@Home意大利教育,以TurtleBot和MARRtino为特色-由Luca Iocchi教授提供

不是MATLAB*或*开源-MATLAB*和*开源!

当我们卷入RoboCup@Home在教育方面,谭教授很有风度,让我们展示任何关于MathWorks工具的东西,只要它与挑战相关。无论我们没有或不能覆盖什么,都将通过开源ROS包来解决。

…那么,这是如何工作的呢?实际上相当不错!

ROS是关于分布式功能的。基于ROS的解决方案通常使用几种编程语言,或金宝搏官方网站客户端库,以解决问题的不同部分。回想一下,MATLAB和Simulink通过金宝app机器人系统工具箱.如果你想知道更多,我们有关于这个的博客文章因此,我们不应将MATLAB和Simulink视为ROS的替代品,而应将其视为金宝app实现和集成ROS组件的选项。

重要的是要重申,这不是“MATLAB”“开源”,而不是“MATLAB”开放源代码”,我们用它来解决挑战。也就是说,团队可以自由选择他们的工具并产生截然不同的解决方案。我们已经受益于学生找到创造性解决方案以改进我们的研讨会材料的能力,并希望继续这样做!金宝搏官方网站

以下是我们目前提出的解决方案中MATLAB与开源的区别。

  • MATLAB:系统集成、决策、计算机视觉、导航、语音解析、操作算法
  • 开源:映射、语音识别和合成、移动基座和操纵器的低级驱动程序

为了在MATLAB和其他软件组件之间进行通信,我们还有几个选择:

  • 使用ROS在MATLAB和其他ROS节点之间发布/订阅消息
  • 从MATLAB运行系统命令启动/杀死外部ROS节点
  • 从MATLAB调用Python代码在没有ROS的情况下执行语音识别,或者与用Python开发的现有算法集成(一些团队已经开发了)

2018年RoboCup大会演讲-Jeffrey Tan教授提供

电脑视觉更新

我想提出的最后一个主题是计算机视觉。这是自2017年泰国事件以来,我们对MATLAB进行的最大的技术更新。我从一些颜色阈值和基本位置+深度跟踪简单开始,但这与服务机器人需要与人类互动(因此需要检测)这一事实之间存在很大的脱节。不幸的是,对于视觉算法的设计者来说,人类并不是一个颜色稳定的巨大斑点。

在这方面,我们必须引入一些更先进的解决方案,这些解决方案在应对挑战时效果良好。金宝搏官方网站

我们通过使用金宝搏官方网站内置人脸检测器识别机器人捕获的图像中的感兴趣区域(ROI),然后使用公开可用的神经网络对每张脸的性别进行分类。为了做后者,我利用了将Caffe模型导入MATLAB.

旁注1:我们也支持金宝appTensorflow Keras开放式神经网络交换(ONNX)模型导入。

旁注2:我的队友康奈尔德苏扎通过采用年龄检测神经网络并将其部署到NVIDIA Jetson TX2使用GPU编码器。您可以在上找到此的预览我们的Facebook群组,但希望在将来看到更多关于此的内容!

当然,愿景只是MathWorks能够带来的一个例子。正如谭教授所说,“在MATLAB中利用先进技术(工具箱)的潜力是一个巨大的优势,不仅对于初学者,对于经验丰富的ROS用户也是如此。”

测试面部和性别检测解决方案[来自塞巴斯蒂安的推特]

接下来呢?

对于扩展MathWorks工具的使用,我们已经有了一些想法:

期待更多RoboCup@Home教育挑战! 如果您对未来的挑战有任何疑问或想法,请在此处或roboticsarena@mathworks.com.

[左图]来自MathWorks、ROBOTIS和RoboCup的志愿者评委正在考察Skuba JR团队(泰国)的深度学习能力
[对]RoboCup@Home2018年教育组委会-Jeffrey Tan、Yoshinobu Hagiwara、M.Q.Azhar和Kanjanapan Sukvichai教授
陈健锋教授提供

要从上一篇博文中获取主题,请点击MathWorks徽标!
由Jeffrey Tan教授和Kanjanapan Sukvichai教授提供

|

评论

如需留言,请点击在这里登录到您的MathWorks帐户或创建新帐户。