树莓派上利用Tensorflow实现小车的自动驾驶

作者: Timthony 2018-11-30 17:53:51

先抛出大家最关心的——代码地址:

github传送门:https://github.com/Timthony/self_drive

码云传送门:https://gitee.com/tiantianhang/self_drive

基于树莓派的人工智能自动驾驶小车

# 整体流程

  1. 电机控制
  2. 摄像头调试
  3. 道路数据采集
  4. 搭建深度学习模型,参数调试
  5. 自动驾驶真实道路模拟
  6. 参数最终调试

使用方法:

  1. 先将树莓派小车硬件组装好
  2. 使用zth_car_control.py来控制小车的前后左右移动,配合zth_collect_data.py来人工操作,使小车在自己制作的跑道进行数据采集。(该过程在树莓派进行)
  3. 数据采集完成以后使用zth_process_img.py来对采集的数据进行处理,之前当前先完成一些数据清洗的工作。(电脑上执行)
  4. 使用神经网络模型对数据进行训练zth_train.py,得到训练好的模型。(电脑上执行)
  5. 在树莓派小车上使用zth_drive和训练好的模型,载入模型,即可实现在原先跑道的自动驾驶。(树莓派上执行)

注意:只需要使用上述提到的代码即可,别的都是一些初始版本或者正在增加的一些新模块。

树莓派上利用Tensorflow实现小车的自动驾驶

树莓派上利用Tensorflow实现小车的自动驾驶

# 注意事项:

  1. 赛道需要自己制作,很重要,决定了数据质量。(我是在地板上,贴的有色胶带,然后贴成了跑道的形状)。
  2. 赛道的宽度大约是车身的两倍。
  3. 大约采集了五六万张图像,然后筛选出三四万张。
  4. 摄像头角度问题

# 具体制作流程:

  1. 小车原始模型,某宝购买玩具车即可,比如:有电机,有自带电池盒(给电机供电)
  2. 树莓派,摄像头,蓄电电池组(用于树莓派供电)
  3. 使用一些螺栓,螺柱,亚克力板将树莓派,蓄电电池固定在小车上(具体方法,看手头的工具吧)
  4. 组装好以后,树莓派通过VNC连接电脑,登陆树莓派,在树莓派安装keras环境,以便***调用训练好的模型。
  5. 关于小车的控制(电机控制,摄像头采集数据),都在源文件,有注释,大致思路就是通过方向键AWSD来控制方向,使用了pygame的工具包。
  6. 通过电脑端的wasd方向键手动控制小车(已经VNC连接好)在制作好的赛道上进行图像采集,直线部分按w,左拐弯按a,右拐弯按d等,建议采集50000张以上。

(采集的图像命名要求为,0_xxxx,1_xxxx,其中首位字母就代表了你按下的是哪个键,比如图像是0开头,那么这张图像就是直行,按下的是w键,这些0,1,2,3,4 数字就相当于数据的标签值)

       7. 将图片从树莓派拷贝下来,进行数据清洗,使用电脑端的深度学习环境进行模型训练,使用的模型可以自行定义。

       8. 将训练好的模型文件.h5拷贝到树莓派,然后通过树莓派调用载入模型,即可处理实时的图像,并且根据图像预测出是0,1,2,3,4等数字,也就表示了树莓派该怎么移动,通过树莓派控制电机即可。

# 正在进行一些改进:

  1. 使用迁移学习进行fine-tuning是否可以提高精度
  2. 处理光照问题
  3. 处理数据类别不平衡的问题

欢迎交流讨论

树莓派 Tensorflow 自动驾驶
上一篇:新一代大数据与人工智能基础架构技术的发展与趋势 下一篇:数据库运维的那些难题,我们用机器学习解决了
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

在冠状病毒期间区分物联网事实与虚构

长期以来,物联网一直被吹捧为互联网的第二阶段,如今,冠状病毒时期正在加快和放大关于物联网即将被迅速采用的讨论频率和强度

Ahmad Malkawi ·  2天前
研究公司统计了9大AI领域,分析了世界各国AI法律举措

世界各国政府正在迅速采取行动,以确保现有的法律、法规以及框架,能够在人工智能技术变革中继续起效,应对由新浪潮带来的种种新挑战。

佚名 ·  2020-03-30 18:48:45
中国的自动驾驶,到底比美国差在哪?

从亚利桑那凤凰城到德克萨斯埃尔帕索的路程大概 690 公里,在地图上显示,开车需要 6.5 个小时以上。如果你最近在两座城市之间的高速公路上行驶过,可能在你身边经过的卡车,就是自动驾驶的。

赵子潇 ·  2020-03-30 16:01:33
没有数据就没有自动驾驶的未来:自动驾驶汽车为何需要大数据

大数据使自动驾驶的未来成为可能。自动驾驶是汽车制造商的一个热门话题。提供高度自主性的技术对于未来的汽车发展至关重要。随着物联网的发展,我们的汽车可以看到、听到甚至预测未来

佚名 ·  2020-03-27 22:15:52
疫情后的自动驾驶,发展有了更明确的方向!

疫情给了自动驾驶向大众介绍自己的机会,同时也让自己更加看清了自己的发展。那么在看清之后,行业将朝着怎样的方向前进呢?

林中易木 ·  2020-03-27 16:20:06
2020 新的自动驾驶技术报告出炉!

对于自动驾驶的技术进展,WEVOLVER 发布的《2020 自动驾驶技术报告》进行了全面的阐释。

肖漫 ·  2020-03-25 13:51:05
全球自动驾驶年度“实力”榜出炉,百度超越Waymo排第一,Waymo:我反对评测标准

行业进步神速——从总里程到平均接管,无人车相比去年宛如开启“飙车”模式。更关键的是,中国公司表现实在太好了,按照平均接管指标,全球Top 10中,有4家来自中国。

乾明 郭一璞 ·  2020-02-28 10:21:56
自动驾驶知识科普 自动驾驶汽车的七大核心技术

目前自动驾驶L3商业化技术已经成熟,L4级/L5级加速发展进入验证试点阶段。本文将为大家科普下目前自动驾驶汽车所要涉及哪些核心技术,到底离真正商用落地,技术上还需要哪些升级。

自动驾驶之家 ·  2020-01-09 08:42:23
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载