每日一博|树莓派上用 Tensorflow 实现小车的自动驾驶_模子_小车
点击右上方,关注开源中国OSC号,获取最新技能资讯
基于树莓派的人工智能自动驾驶小车
# 整体流程
电机掌握
摄像头调试
道路数据采集
搭建深度学习模型,参数调试
自动驾驶真实道路仿照
参数终极调试
利用方法:
1. 先将树莓派小车硬件组装好
2. 利用zth_car_control.py来掌握小车的前后旁边移动,合营zth_collect_data.py来人工操作,使小车在自己制作的跑道进行数据采集。(该过程在树莓派进行)
3. 数据采集完成往后利用zth_process_img.py来对采集的数据进行处理,之前当前先完成一些数据洗濯的事情。(电脑上实行)
4. 利用神经网络模型对数据进行演习zth_train.py,得到演习好的模型。(电脑上实行)
5. 在树莓派小车上利用zth_drive和演习好的模型,载入模型,即可实现在原来跑道的自动驾驶。(树莓派上实行)
把稳:只须要利用上述提到的代码即可,别的都是一些初始版本或者正在增加的一些新模块。
# 把稳事变:
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.处理数据种别不平衡的问题
欢迎互换谈论
点击下方“理解更多”,获取代码地址。
本文系作者个人观点,不代表本站立场,转载请注明出处!