安装miniconda Python 3.7 64位。
安装方法参见:Windows 10下安装Miniconda3
安装git 64 bit。
安装方法参见:GIT -2.18.0-64.bit 的安装与使用
C:\Users\adminitrator>d:
D:\>mkdir projects
D:\>cd projects
git clone https://github.com/autorope/donkeycar
cd donkeycar
git checkout master
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --set show_channel_urls yes
conda update -n base -c defaults conda
conda env remove -n donkey
conda env create -f install\envs\windows.yml
conda activate donkey
pip install -e .[pc]
如果你有NVidia卡,你应该更新到最新的驱动程序并安装Cuda SDK。
conda install tensorflow-gpu==1.13.1
donkey createcar --path D:/mycar
安装keras-vis
pip install keras-vis
d:
cd projects
git clone https://github.com/tawnkramer/gym-donkeycar
conda activate donkey
pip install -e gym-donkeycar
文件位置:D:\Miniconda3\envs\donkey\lib\site-packages\tensorflow\python\framework\dtypes.py。
修改dtpes.py文件的第526~530、535行。
原:
_np_qint8 = np.dtype([("qint8", np.int8, 1)])
_np_quint8 = np.dtype([("quint8", np.uint8, 1)])
_np_qint16 = np.dtype([("qint16", np.int16, 1)])
_np_quint16 = np.dtype([("quint16", np.uint16, 1)])
_np_qint32 = np.dtype([("qint32", np.int32, 1)])
np_resource = np.dtype([("resource", np.ubyte, 1)])
修改为:
_np_qint8 = np.dtype([("qint8", np.int8, (1,))])
_np_quint8 = np.dtype([("quint8", np.uint8, (1,))])
_np_qint16 = np.dtype([("qint16", np.int16, (1,))])
_np_quint16 = np.dtype([("quint16", np.uint16, (1,))])
_np_qint32 = np.dtype([("qint32", np.int32, (1,))])
np_resource = np.dtype([("resource", np.ubyte, (1,))])
文件位置:D:\projects\gym-donkeycar\examples
\supervised_learning\train.py
修改train.py文件的第29行:
原:
matplotlib.use('Agg')
修改为:
matplotlib.use('TkAgg')
从Donkey Gym Release下载并解压主机PC平台上可运行的模拟器(DonkeySimWindows.zip)。
将模拟器放在合适的位置。如:~/projects/DonkeySimWindows。
可使用游戏杆/键盘手动驾驶、自动驾驶还可使用训练好的神经网络驾驶,运行界面如下:
选择窗口大小,点击“Play!”进入。
点击“Log dir”可设置记录数据目录。
在主界面点击“Generated Track”,进入我们挑战赛的赛道环境。
可以选择右侧的各种驾驶模式。
这是速度、转向和PD参数设置界面,在自动驾驶时,要设置这些参数,取得好成绩。
打开Anaconda Prompt。
使用示例模型来验证设置。
conda activate donkey
d:
cd projects\gym-donkeycar\examples\supervised_learning
python evaluate.py --model=models/example_model.h5
启动“DonkeySim”环境。单击“NN Control over Network”按钮。
现在,你可以尝试根据自己的数据来训练自己的模型。
在模拟器中,按“Exit”进入主菜单。
单击“log dir”按钮并指定一个日志目录以保存数据。例如,你可以选择d:/projects/gym-donkeycar/examples/supervised_learning/log文件夹。
选择Generated Track环境。
单击“Auto Drive w Rec”或“Joystick/Keyboard w Rec”。记录约1万个样本(一圈以上)。查看左下角以查看日志计数。
完成后,单击“Stop”。
conda activate donkey
d:
cd projects\gym-donkeycar\examples\supervised_learning
python train.py --inputs=log/*.jpg --model=models/model.h5
模型结构可根据自己需要进行修改。
取消train.py文件的第208行注释,显示模型信息。
修改models.py文件(可设置学习率):
在第7行增加:
from tensorflow import keras
第57行修改为:
model.compile(optimizer=keras.optimizers.Adam(lr=0.0001), loss='mse', metrics=['acc'])
conda activate donkey
d:
cd projects\gym-donkeycar\examples\supervised_learning
python evaluate.py --model=models/model.h5
启动模拟器。选择Generated Track环境。单击“NN Control over Network”。
参加DonkeySim挑战赛的车必须连续不间断跑3圈以上,小车不能压到草坪,不能撞到障碍物,挑战赛共分为三大类:
参加DonkeySim挑战赛的选手,参赛作品必须提交以下文件、数据和视频。
conda activate donkey
d:
cd mycar
donkey makemovie --tub=D:\mycar\logs\log --out=log_movie.mp4
DonkeySim挑战赛公开参赛者提交的所有文件,采用自测与公示的方式进行评比,比赛成绩及时更新。比赛规则根据实施情况,听取大家的意见,不定时的更新,所有的原始数据尽量可靠的保存。