YouTuber 用户奥斯汀-布莱克(Austin Blake)就是这样一个人,他家里正好有一辆自制的卡丁车。 在将其命名为"Crazy Cart"之后,他决定将其改装成自己的自动驾驶测试平台。 为此,他首先设计了一条临时赛道,用对比鲜明的胶带标记,铺在他工作室的地板上。 如下图所示,空间非常狭小,但小车的转弯半径也很小。
接下来是最难的部分--让 Crazy Cart 真正掌握自动驾驶技能。 为此,布莱克通过训练有素的神经网络模型,采用了一种名为行为克隆的技术。 首先,他手动驾驶卡丁车在赛道上行驶时录制了约 15000 张图像,并将每个点的转向角度作为训练标签。 然后,他将这些数据输入卷积神经网络,该网络学会将图像输入与相应的转向方向联系起来。
要获得一个性能良好的模型,需要经过大量的试验和失误。 最初的测试失败了,因为网络难以分辨轨道边缘和导航急转弯。 Blake 尝试了数据增强技巧、调整超参数、使用多个摄像头,甚至添加广角镜头来增强视野。
然而,真正的突破来自于他添加了亮蓝色胶带作为外边界,以增加对比度。有了明确的轨道,他的作品就可以仅凭单目视觉在地面轨道上自主滑行,无需昂贵的传感器。
这台设备总共需要三个 Arduinos。 一个 Arduino 将计算机中的转向预测信息传递给第二个 Arduino,后者将这些数据与位置反馈信息结合起来,操作一个控制转向角的电机。 第三个 Arduino 通过向卡丁车的速度控制器发送控制信号来控制油门。
当然,与在具有复杂性和不可预测性的真实公共道路上航行相比,这只是一个相当有限的使用案例。 布雷克坦言,后者是一项难度极大的挑战,需要更丰富的传感器数据,而不仅仅是摄像头。
尽管如此,这个项目还是令人印象深刻,它展示了现代机器学习在从不起眼的视觉输入中提炼驾驶智能方面的能力。 扩展该项目可能需要更多的训练数据,但一个人的能力有限。