2022年08月30日 更新
どうも、クラゲジュニアです。
ディープラーニング自動運転Donkey CarのシミュレーターDonkey Simulator
の導入と実行方法のまとめです。
本来、Donkey CarはPCとラジコン(ラズパイ制御)及び走行できる広い場所が必要となりますが、Donkey Simulator
を使うことでPC1台のみでシミュレーションすることができます。
[TOC]
Donkey CarはWindows、Mac、Linuxのどれでも導入可能です。今回クラゲジュニアはWindows Hyper-V仮想環境でWindows11の中にインストールしましたので、その環境前提で説明します。
※仮想環境の場合、USBゲームコントローラーが認識できないデメリットがあります。USBゲームコントローラーを使ってDonkeycarを動かしたい場合は、直接Windowsにインストールが必要です。
以下の2つが必要になります。
donkeycar
gym-donkeycar
ラジコンを使ったDoneky Carの場合は、donkeycar
をPCとラズパイのそれぞれにインストール必要ですが、シミュレーションの場合はPCのみです。ラズパイへのインストールの代わりにgym-donkeycar
が必要になります。
必ずPython3.7を選んでください。
https://docs.conda.io/en/latest/miniconda.html
クラゲジュニアはPCに合わせて64bit版を選択しました。
https://git-scm.com/download/win
Anaconda Promptを起動して以下を1行ずつ打ち込んでください。
mkdir projects
cd projects
git clone https://github.com/autorope/donkeycar
cd donkeycar
git checkout main
conda env create -f install\envs\windows.yml
conda activate donkey
pip install --user tensorflow==2.2.0
pip install -e .[pc]
donkey createcar --path ~/mycar
引き続きAnaconda Promptで以下を1行ずつ打ち込んでください。
cd ..
git clone https://github.com/tawnkramer/gym-donkeycar
cd gym-donkeycar
pip install -e .[gym-donkeycar]
donkey createcar --path ~/mysim
cd ../..
cd mysim
mysimの下にあるmyconfig.py
を開き、最終行に以下を追記して保存します。
DONKEY_GYM = True
DONKEY_SIM_PATH = "C:/Users/User/projects/DonkeySimWin/donkey_sim.exe"
DONKEY_GYM_ENV_NAME = "donkey-generated-track-v0"
この際、ユーザー名やディレクトリ名などのパスは各自の環境に合わせて変更してください。
DonkeySimWin.zip
をダウンロードします。
https://github.com/tawnkramer/gym-donkeycar/releases
展開するとDonkeySimWin
というフォルダができます。
展開したDonkeySimWin
をprojects
フォルダの下へ移動します。DonkeySimWin
の中にDonkeySimWin
が入っているので、下の階層のみ移動してください。donkey_sim.exe
のパスが以下のようになっていればOKです。
projects/DonkeySimWin/donkey_sim.exe
以下3つの流れになります。
引き続きAnaconda Promptで以下を打ち込みます。
python manage.py drive
シミュレーション環境が立ち上がります。
エラーになる場合は、donkey_sim.exe
を一度ダブルクリックで立ち上げて閉じます。WindowsによってPCが保護されました
と表示されている場合は詳細情報
をクリックして実行
を選択してください。
Anaconda Promptに表示されるURLを使ってブラウザでアクセスします。例えば以下のようなURLです。
http://localhost:8887/drive
Max Throttle
は小さい値を選択しておいた方が運転しやすい引き続きAnaconda Promptで以下を打ち込みます。先ほどの実行を終了していない場合はCtrl + C
で強制終了してください。
donkey train --tub ./data --model models/mypilot.h5
※学習に時間がかかりすぎる場合は、こちらのColaboratoryで行うことも可能です。
※TensorFlow実行時にエラーが出る場合は「TensorFlow実行時のDLL load failedエラーを回避する方法」の対策2を参照してください。
Anaconda Promptで以下を打ち込みます。
python manage.py drive --model models/mypilot.h5
Full Auto
を選択すると自動運転が始まります。
以上です。