0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TensorFlow Lite 构建的无人驾驶微型汽车

工程师 来源:TsinghuaJoking 作者:TsinghuaJoking 2020-10-19 11:27 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天在 Tensorflow公号看到推文Pixelopolis:由 TensorFlow Lite 构建无人驾驶微型汽车 ,作者介绍了他们在今年Google I/O大会上展示的TensorFlot Lite构建的无人驾驶微型汽车的展品:Pixcelopolis。

▲ TensorFlow Lite构建的无人驾驶微型车

每辆微型汽车都装配有一部 Pixel 手机,使用手机上的摄像头检测和理解周围的信号。手机使用了 Pixel Neural Core 边缘计算芯片( Edge TPU 支持的机器学习),可感应车道、避免碰撞和读取交通标志。

相比于基于云计算来实现视频处理和物体检测,边缘计算可以减少延迟对控制的影响(也许在5G下延迟影响小一点)。

▲ 通过手机识别各种目标的Pixelpolis

下图是整个展品的布局,模仿了一个小型城镇广场周围的交通环境。参观者可以通过手机端的一个应用模拟“站点”来选择出现的目的地。展品中的微型车就可以驾驶到目的地,整个过程用户可以查看车辆周围以及所检测到的物体。

▲ 演示区的道路设计

车模所有对外界的感知都来自于微型车膜前面的手机摄像头,有它获取前方的图片并手机内部署的神经网络完成车道保持、停车定位、障碍检测等。通过手机底部的USB-C接口扩展来与底层控制板通讯,完成电机控制等。

▲ 手机应用程序与Pixelopolis交互

▲ 手机端可以查看车辆周围所检测到的物品

展品作者采取了与 论文:End-to-end Learning for Self-Driving Cars中相类似的技术录像,使用卷积神经网络(CNN)来检测每帧图像内的交通指示线,并给出方向盘的调整量。增加了LSTM利用前期拍摄的多个图像帧进行改进。

▲ CNN 模型的输入和输出

控制器的模型很简单,下面代码就给出了网络的结构构成。

net_in = Input(shape = (80, 120, 3))x = Lambda(lambda x: x/127.5 - 1.0)(net_in)x = Conv2D(24, (5, 5), strides=(2, 2),padding=“same”, activation=‘elu’)(x) x = Conv2D(36, (5, 5), strides=(2, 2),padding=“same”, activation=‘elu’)(x)x = Conv2D(48, (5, 5), strides=(2, 2),padding=“same”, activation=‘elu’)(x)x = Conv2D(64, (3, 3), padding=“same”,activation=‘elu’)(x) x = Conv2D(64, (3, 3), padding=“same”,activation=‘elu’)(x)x = Dropout(0.3)(x)x = Flatten()(x)x = Dense(100, activation=‘elu’)(x)x = Dense(50, activation=‘elu’)(x)x = Dense(10, activation=‘elu’)(x) net_out = Dense(1, name=‘net_out’)(x)model = Model(inputs=net_in, outputs=net_out)

一个神经网络是否能够达到很好的性能,关键在于如何准备好让它学习的训练样本。为此。作者使用Unity, Udacity来构建了模拟器,自动生成训练车辆的图像数据。

通过在轨道上设置多个路径点, 微型汽车 可以行驶到不同的地点,并从中收集数据。在此模拟器中,我们每 50 毫秒收集一次图像数据和转角数据。

▲ 模拟器中的轨道中上设有多个路径点

大家都知道,软件虚拟出的场景图片和实际拍摄到的图片会有很大的差别,包括光线、周围环境以及其他的噪声。为了使得训练的神经网络能够适应实际要求,需要对数据进行增强。

他们将以下变量添加到场景中:随机的 HDRI 球体(具有不同的旋转模式和曝光值)、随机的环境亮度和颜色以及随机出现的车辆。

▲ 各种环境下的数据增强

下图给出了经过训练之后,卷积神经网络的第一层对于输入图片的输出。可以看出,它已经能够很好地将图片中道路信息边缘信息能够很好的提取,对于背景可以进行有效的压制。

▲ 第一层神经网络的输出

使用神经网络进行控制的一个最大的问题,就是车模有时会出现莫名其妙的动作。比如下面这个场景,明明已经成功的拐过弯道,进入平坦顺直的道路,车模则抽风地冲出跑道了。

这主要是因为所训练的样本没有能够均匀包含各种道路情况,模型比较脆弱。

▲ 早期版本中玩具车偏离了轨道

为此,在场景中添加了各种形状的曲线,以丰富原来训练数据库中大多数的直线轨道数据。

▲ (左)方形轨道与(右)弯曲轨道

功夫不负有心人,修正数据集不均衡的问题后,车辆便开始能够在弯道处正确转向。

▲ 车辆在弯道可以成功转弯

似乎理性的增加数据可以提高车模的性能,但有时候仅仅采用小的技巧便可以解决大问题。比如当微型车模运行到展品边缘时,就会看到很多展台外面的场景。外面的场景多变,很难通过数据来表征这些变化。怎么办?

作者就用了一个字:切!

将输入图像的下面四分之一切出来,送入神经网络进行训练,就有效化解了上述的问题。

▲ 展品上的轨道,以及在展品边缘看到的图像

为了能够进行车辆定位以及检测其它干扰车辆,在手机Pixcel 4上的Neural Core Edge TPU上运行了 ssd_mobilenet_edgetpu 模型,这是来自 TensorFlow 目标检测模型库 。每帧检测时间仅用6.6毫秒,在实时应用中游刃有余。

为了是检测神经网络模型能够适应展品场景需要,作者同样使用了模拟器和真实场景中的数据来训练模型。为了提高检测鲁棒性,使用了 Unreal Engine 4 来随机生成物体和背景。使用 labelImg 工具进行对样本进行了手动标注。

▲ 进行目标识别的数据库

使用神经网络最大的工作量是在准备训练数据集合。之后的网络搭建和训练则非常容易,分分钟搞定。检查一下,网络识别交通标志的效果还是很不错的。

▲ 网络识别效果

最后一个工作,就是需要将网络部署到手机平台上。这需要借助于TensorFlow Lite 将模型进行个数转换,并在Android下编写相应的Python脚本来进行部署。

作者还设想着,通过视觉SLAM能够为他们的这个展品增加车辆全程定位。真的是一个手机平台可以练习很多算法

▲ 视觉SLAM定位

为了实现一个顶着手机运行的微型车膜,作者也是费力不断改进机械结构,经过了五代设计最终得到了一个合理的机械设计。可以将手机、控制板、电池、电机等集成在一个小巧乖致的微型车模中。

▲ 第一代设计

▲ 第二代设计

▲ 第三代射击

▲ 第四代设计

▲ 第五代设计

下面给出了嵌入在车体内部的控制板、电机、电池等配件。

▲ 底层运动控制单片机板

▲ (左)屏蔽罩和电机,(右)电源插座、电源开关、电机启动按钮、电机重置按钮、开发板状态 LED、电机状态 LED

▲ 3000mAh 锂离子电池(左)与 18650 锂离子电池(右)

的确,一辆小小的微型车模,包括了计算机视觉深度学习传感器融合、定位、路径规划、控制、系统集成等多个学科内容。通过这个环节几乎可以将一个专业所需要学习的多个课程集成在一起。这不,在Udacity平台上,还真的提供了无人驾驶汽车纳米学位项目 供希望获得全面培训的工程师和学生学习。

教育部自动化类高等教学委员会在清华召开了院长会议,其中李少远老师对今年大学生学科竞赛实践教学进行了总结。以在刚刚过去的暑期中,新冠疫情影响下,成功举办的全国大学生智能车竞赛为例,探索面向未来实践发展。希望智能车竞赛为工科学生的大学期间专业课程实践提供更好的锻炼平台。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 锂电池
    +关注

    关注

    262

    文章

    8589

    浏览量

    182768
  • 芯片
    +关注

    关注

    462

    文章

    53538

    浏览量

    459156
  • 网络
    +关注

    关注

    14

    文章

    8131

    浏览量

    93091
  • 无人驾驶
    +关注

    关注

    99

    文章

    4255

    浏览量

    126043
  • TensorFlow Lite
    +关注

    关注

    0

    文章

    26

    浏览量

    804
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    小马智行无人驾驶车参与第十五届全运会火炬传递

    一盏燃着全运会圣火的火种灯,一段6.8公里的无人驾驶行程,同时与小马智行的无人驾驶车联系起来,共同创造了全运会新的历史——无人驾驶车首次参与火炬传递环节。
    的头像 发表于 11-04 14:01 450次阅读

    2025无人驾驶技术细节及发展趋势|(星创易联细节解析)

    ​到了"拐点"? 如果你相信那些科技媒体的头条,无人驾驶在2025年将"迎来爆发式增长"。这话听起来耳熟吗? 没错,从2018年开始,每年都是"无人驾驶元年",每年都在"拐点将至"。现在又轮到
    的头像 发表于 09-26 15:17 334次阅读
    2025<b class='flag-5'>无人驾驶</b>技术细节及发展趋势|(星创易联细节解析)

    无人驾驶:智能决策与精准执行的融合

    无人驾驶核心操控技术:智能决策与精准执行的融合 无人驾驶的核心操控系统是车辆实现自主驾驶的“大脑”与“四肢”,其技术核心在于通过感知、决策、执行三大模块的协同工作,替代人类驾驶员完成实
    的头像 发表于 09-19 14:03 458次阅读

    【上海晶珩睿莓1开发板试用体验】TensorFlow-Lite物体归类(classify)

    目前尚未得知睿莓1开发板上面有NPU或者DPU之类的额外处理器,因此使用树莓派系列使用最广泛的TensorFlow-Lite库进行物体归类,使用CPU运行代码,因此占用的是CPU的算力。在
    发表于 09-12 22:43

    西井科技中标鄂州花湖国际机场无人驾驶货运牵引车项目

    航空物流领域无人驾驶技术落地的重要实践,也将为鄂州花湖机场构建 “智慧基因”、打造国际一流航空货运枢纽注入新动能。
    的头像 发表于 07-24 10:03 900次阅读

    无法将Tensorflow Lite模型转换为OpenVINO™格式怎么处理?

    Tensorflow Lite 模型转换为 OpenVINO™ 格式。 遇到的错误: FrontEnd API failed with OpConversionFailure:No translator found for TFLite_Detection_PostP
    发表于 06-25 08:27

    智行者科技无人驾驶小巴落地海南

    。这条串联城市地标的示范线路,正是智行者以"无人驾驶大脑"重塑日常公共出行的缩影——通过高效、安全、可持续的无人驾驶小巴,为智能出行注入全新动能。
    的头像 发表于 06-11 10:34 1292次阅读

    无人驾驶技术未来在哪里?低速才是突破口

      无人驾驶技术这几年从实验室迅速走向现实。在大众印象中,无人驾驶常被等同于在城市道路上自由穿梭的智能汽车,但实际率先实现商业化落地的,是低速无人驾驶。它们活跃于园区、景区、工厂、社区
    的头像 发表于 05-23 15:38 630次阅读
    <b class='flag-5'>无人驾驶</b>技术未来在哪里?低速才是突破口

    无人驾驶解决方案包含哪些方面?感知、决策与控制

    ​在人工智能与物联网技术飞速发展的今天,无人驾驶已经从实验室走向现实应用场景。然而,一个真正成熟的无人驾驶解决方案绝非单纯依靠几项核心技术就能实现,而是需要构建一个涵盖硬件设施、软件系统、网络通信
    的头像 发表于 04-14 10:21 1372次阅读
    <b class='flag-5'>无人驾驶</b>解决方案包含哪些方面?感知、决策与控制

    FlexBuild构建Debian 12,在“tflite_ethosu_delegate”上构建失败了怎么解决?

    /workspace/tn_debian_FlexBuild 构建/components_lsdk2412/apps/ml/tflite/tensorflow/lite/tools/cmake
    发表于 04-01 06:53

    易控智驾发布矿山无人驾驶应用落地成果

    近日,“易路相伴 智约共赢”无人驾驶矿用车规模化应用成果发布会在三亚顺利召开。作为全球领先的矿山无人驾驶公司,易控智驾发布了矿山无人驾驶应用落地成果,成为行业首个突破落地1000台无人驾驶
    的头像 发表于 03-04 11:25 944次阅读

    DeepSeek眼中的矿山无人驾驶

    “AI百晓生”——DeepSeek的爆火,引发了一场向AI测问未来的热潮。而对矿山无人驾驶这个领域的发展,DeepSeek会给出怎样的答案?
    的头像 发表于 02-27 10:24 835次阅读

    为什么聊自动驾驶的越来越多,聊无人驾驶的越来越少?

    和自动驾驶有什么区别?为什么现在一直都在聊自动驾驶,却鲜少有企业提无人驾驶?今天智驾最前沿就围绕这个话题和大家简单聊聊。 自动驾驶无人驾驶
    的头像 发表于 02-23 10:52 1007次阅读
    为什么聊自动<b class='flag-5'>驾驶</b>的越来越多,聊<b class='flag-5'>无人驾驶</b>的越来越少?

    小马智行第六代无人驾驶Robotaxi亮相香港国际机场

    小马智行进军又一国际大都会。近日,香港机场管理局宣布,载客无人车最快将在明年底前运行。期间,香港机场管理局向媒体展示了多款无人驾驶车辆,这些无人驾驶车型中的大部分已经或即将在机场投入使用。小马智行第六代
    的头像 发表于 01-03 17:07 1239次阅读