Amazon DeepRacer 是开始使用机器学习 (ML) 的最快方式。您可以在基于云的虚拟模拟器中使用 1/18 比例自动驾驶车辆训练强化学习 (RL) 模型,并在全球 Amazon DeepRacer League 中角逐奖金和荣誉。今天,我们将通过对 Amazon DeepRacer 设备软件进行开源来扩展 Amazon DeepRacer 功能,以提供有趣的动手学习。
为什么要开源
Amazon DeepRacer 虚拟赛事和线下赛事已广受好评,但开发人员现在想要其汽车超越赛车联赛。Amazon DeepRacer 是一款基于 Ubuntu 的计算机轮式小车,该装置由我们可以对代码进行开源的机器人操作系统 (ROS) 提供支持,可以让拥有基本 Linux 编码技能的开发人员能够轻松对其汽车有意思的新用途进行原型开发。Amazon DeepRacer 设备软件现已公开可用,因此,任何拥有汽车和创意的人员均可让其设备的新用途成为现实。
我们汇编了 6 个来自 Amazon DeepRacer 团队和全球 Amazon DeepRacer 社区成员的示例项目,以帮助您开始探索开源可实现的无限可能。在开发人员使用 #deepracerproject 分享新项目时,我们将会在 Amazon DeepRacer 机器人项目页面突出显示我们的收藏。无论是使用 DeepBlaster 项目在汽车上挂载 Nerf 加农炮,还是通过 Mapping 项目创建家或办公室的虚拟化效果,亦或是通过 DeepDriver 项目提出与朋友和同事进行赛车的新方式,您都可以使用开源代码和示例项目完成所有这些工作。文档可在 GitHub 中找到,并且可以在 Amazon DeepRacer Slack 频道中与数千位社区成员进行协作。Amazon DeepRacer 潜能的唯一限制是您的想象力(当然,还有物理定律)。
让我们开始试验
将 Amazon DeepRacer 设备代码进行开源之后,您可以轻松快速地更改当前所跟踪赛道的赛车的默认行为。想要通过部署对抗措施来阻止其他车辆超车?想要部署您自己的自定义算法,以便提高车辆从 A 点驶向 B 点的速度?您只要敢想,然后就可进行编码。我们非常希望看到您提出的创意,从新的赛车形式到 Amazon DeepRacer 的新用途。
即日起,您可以从六个项目中进行选择 (跟随领袖、Mapping、越野(由 Amazon Web Services 创建)、RoboCat、DeepBlaster 和 DeepDriver(由开源社区创建),或者创立您自己的一个项目。您可以从跟随领队示例项目入手,该项目将会训练汽车检测和跟踪一个物体。这是最快的构建和运行项目,在下一个部分,我们将演示修改 Amazon DeepRacer 汽车的默认行为是多么的简单。要完成此设置,请升级到最新的软件版本,然后通过 SSH 进入汽车。
升级版本链接:
https://docs.aws.amazon.com/d...
下载“跟随领袖”项目
使用 SSH 连接到汽车,切换至根用户,并创建工作目录。然后克隆“跟随领袖” GitHub 存储库:
sudo su
mkdir -p ~/deepracer_ws
cd ~/deepracer_ws
git clone
https://github.com/aws-deepracer/aws-deepracer-follow-the-leader-sample-project.git
将项目存储库完全克隆到汽车这一过程可能需要几分钟(取决于您的网络连接速度)。“跟随领袖”项目包含若干个安装脚本,有助于更快地简化启动和运行过程。此外,如果您更习惯于运行基于 shell 的命令或者想要详细了解使用每个阶段的相关文档的流程,则还可以手动完成后续步骤。
下载和转换对象检测模型
首先,我们需要下载和转换对象检测模型。为此,我们可以运行“跟随领袖”存储库中附带的脚本:
sudo su
cd ~/deepracer_ws/aws-deepracer-follow-the-leader-sample-project/installers
/usr/bin/bash install_object_detection_model.sh
安装程序脚本将会先下载并优化模型,然后再将优化项目复制到模型位置。完成此过程大约需要 3–4 分钟。
您可以使用下载和转换对象检测模型的详细说明手动完成此阶段:
https://github.com/aws-deepra...
如果先前未初始化,则初始化 rosdep
Rosdep 有助于安装依赖项包。如果先前未在设备上初始化,则先初始化 rosdep。
`sudo rosdep init
sudo rosdep update`
构建“跟随领袖”包
接下来,我们需要提取项目所需的包依赖项并构建它们:
sudo su
cd ~/deepracer_ws/aws-deepracer-follow-the-leader-sample-project/installers
/usr/bin/bash build_and_install_ftl_application.sh
成功后,您应该可以查看与以下类似的屏幕:
脚本将会下载并安装所需的包依赖项,并构建包。完成此过程可能需要大约 8–10 分钟。
您也可以按照跟随领袖 README.md“下载和构建”部分的步骤 1–10 手动完成此阶段。安装脚本将会执行相同步骤(只需为您省去了一些键入操作)。
启动“跟随领袖”应用程序
现在,我们可以运行“跟随领袖”应用程序:
sudo su
cd ~/deepracer_ws/aws-deepracer-follow-the-leader-sample-project/installers
/usr/bin/bash run_ftl_application.sh
启用“跟随领袖”模式
最后,我们需要使用命令行界面 (CLI) 为车辆打开另一个 SSH 会话,以启用“跟随领袖”模式:
sudo su
cd ~/deepracer_ws/aws-deepracer-follow-the-leader-sample-project/installers
/usr/bin/bash enable_ftl_mode.sh
现在,您或者志愿者(或者一个物体)可以动起来并看着车辆开始跟随!是不是很棒?
分享您的成果
恭喜!您已完成第一个示例项目。使用标签 #deepracerproject 在社交媒体上与朋友和家人分享您的体验,以便让我们了解您的工作情况。随着社区创造更多的 Amazon DeepRacer 项目,我们会将它们添加到 Amazon DeepRacer GitHub 组织并在后续博客文章中进行详细介绍,让每一个人都可以获得灵感。
参考资料
Amazon DeepRacer:
https://aws.amazon.com/deepra...
Amazon DeepRacer 机器人项目:
https://aws.amazon.com/deepra...
DeepBlaster:
https://youtu.be/vP5-n_1Ze1M
Mapping:
https://youtu.be/hMYKFOKqDWs
DeepDriver:
https://youtu.be/uGFHACot0e0
GitHub :
https://github.com/aws-deepra...
Amazon DeepRacer Slack 频道:
https://deepracing.io/
跟随领袖:
https://youtu.be/8U9pSWYJt1E
越野:
https://github.com/aws-deepra...
RoboCat:
https://youtu.be/_JzgC4b4xFA
使用 SSH 连接到汽车:
https://docs.aws.amazon.com/d...
跟随领袖 README.md:
https://github.com/aws-deepra...
本篇作者
David Smith
Amazon DeepRacer 高级解决方案架构师
他热衷于 Amazon DeepRacer、技术支撑和学习。工作之余,他喜欢 Formula 1、无人机飞行(和坠毁)、3D 打印、跑步(公园跑)、修补代码和陪伴家人。