Giter Site home page Giter Site logo

eacsai / eurotruckselfdriver Goto Github PK

View Code? Open in Web Editor NEW

This project forked from xmy0916/eurotruckselfdriver

0.0 0.0 0.0 1.44 GB

使用paddlepaddle框架在欧卡2实现无人驾驶

Python 99.00% Shell 0.01% JavaScript 0.08% HTML 0.01% CSS 0.03% Jupyter Notebook 0.03% C++ 0.33% C 0.38% Fortran 0.03% Makefile 0.01% MATLAB 0.01% TeX 0.08% Roff 0.02% PowerShell 0.01% Batchfile 0.01%

eurotruckselfdriver's Introduction

项目使用说明

简介

本项目基于paddlepaddle深度学习框架,使用PIL库录屏的方式获取欧卡2游戏的视觉数据,搭建卷积神经网络拟合方向盘的角度,输入是视觉数据,输出是方向盘角度。通过vjoy虚拟摇杆来控制游戏中的卡车,实现了在欧卡2游戏中高速上无人驾驶。

效果演示

视屏地址:传送门

项目使用

  • selfDriverInBetaSimulator文件夹:在MIT仿真软件UDACITY上实现的无人驾驶代码。
  • selfDriverInEuroTruck文件夹:在欧卡2游戏里实现无人驾驶的代码。

欧卡2无人驾驶快速使用教程

!!!注意:多次上传可能会把模型文件修改了,这个方法可能跑不太好。

step1

安装software文件夹下的vJoySetup.exe,双击运行即可,一直默认安装。

step2

修改欧卡2的控制器,在选项->控制器->设置键盘加vjoy。

step3

运行autoDriver.py脚本开始自动驾驶。 !!!重要👇

脚本运行后会有opencv的窗口出现,需要调整你的游戏界面使得窗口内的图像是你的车窗视角

欧卡2无人驾驶完整训练加普通数据集准备教程

step1

安装software文件夹下的vJoySetup.exe,双击运行即可,一直默认安装。

step2

修改欧卡2的控制器,在选项->控制器->设置键盘加vjoy。

step3

运行trainPart/recordData.py脚本录制训练数据: !!!重要👇

按键‘O’开始录制 按键‘B’退出录制并写入log 未开始录制时按键a d控制方向盘 开启录制后按键u i控制方向盘 G刹车

step4

运行trainPart/analyze_data.py文件将数据集均匀化,因为自己录制数据角度为0的较多,随机舍弃一些同时数据增强补充一些 运行trainPart/ouka2_makelist.py文件生成train_data.txt和test_data.txt。

step5

运行trainPart/Train_Model.py开始训练,训练结束会自动保存在model_infer文件夹中。

step6

修改autoDriver.py第10行:segFlag = False设置成False为处理普通图像的模式自动驾驶 运行autoDriver.py脚本开始自动驾驶。 !!!重要👇

脚本运行后会有opencv的窗口出现,需要调整你的游戏界面使得窗口内的图像是你的车窗视角

欧卡2无人驾驶完整训练加分割处理的数据集准备教程

step1

安装software文件夹下的vJoySetup.exe,双击运行即可,一直默认安装。

step2

修改欧卡2的控制器,在选项->控制器->设置键盘加vjoy。

step3

运行trainPart/recordData.py脚本录制训练数据: !!!重要👇

按键‘O’开始录制 按键‘B’退出录制并写入log 未开始录制时按键a d控制方向盘 开启录制后按键u i控制方向盘 G刹车

step4

下载分割的模型: 因为github提交文件大小受限制,模型文件我上传了百度网盘,下载地址:

链接:https://pan.baidu.com/s/1UI9H2DDqnHdYslkvAFHCpA 
提取码:jtfe

文件下载后解压到:

EuroTruckSelfDriver/selfDriverInEuroTruck/Road/model/
路径下替换已有的2和test文件夹。

step5

运行trainPart/analyze_data.py文件将数据集均匀化,因为自己录制数据角度为0的较多,随机舍弃一些同时数据增强补充一些 运行./segAndMakeList.py文件生成train_data.txt和test_data.txt,并且将图像转成分割处理的图像保存在dataset/IMG_Seg下。 样式:

在这里插入图片描述 在这里插入图片描述

step6

运行trainPart/Train_Model.py开始训练,训练结束会自动保存在model_infer文件夹中。

step7

修改autoDriver.py第10行:segFlag = True设置成True为处理分割的模式自动驾驶 运行autoDriver.py脚本开始自动驾驶。 !!!重要👇

脚本运行后会有opencv的窗口出现,需要调整你的游戏界面使得窗口内的图像是你的车窗视角

eurotruckselfdriver's People

Contributors

xmy0916 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.