Simulator」を動かすまでの記事です。ための様々なカメラ、センサー情報をPythonで取得し、車操作に反映する事ができます。言っても仕方ないので以下YouTubeの動画を一回参照して下さい。www.youtube.com本記事はCARLAの導入と触りまでを記述するものです。物を作ってどうこうしてるアレではありません。-CARLAは、CoRL2017発表論文のAbstにもあるように、自動運転技術の発展のためのOSSです。Centerのメンバーです。Javaのクライアントがあります。CARLA同様、カメラ画像情報だけでなく深度やSegmentationのセンサー情報を利用できます。車だけでなくドローンも対応しており、Windowsバイナリもあるのでパパっと始められる点で優位です。CARLAを使った理由は環境(天気とか)が変えられる事くらいです。buildしんどかったのでAirSimの方が良いのかなと思ったりしています。あと他にもUdacityの教材リポジトリもありました。UnityこちらはUnityを直接触る内容のようです。いうのがちらほらあります。Soonとなっています。16.04かそれ以降のバージョンを推奨しています。16.04が入ったハード1つ用意出来るならそれがベストです。その中でVMでWindows動かすとかが良いでしょう。-buildしていきます。一応ドキュメントに従っていきますが、まあまあ大変です。途中でrequestsが必要になったのでここでインストールしています。xdg-user-dirs各Setupスクリプトでchmodコマンドが幾つか使われているので、自身のアカウントをsudoersに入れておく。libraryを全て統一する必要がある。今回は素のUbuntuが用意できたのでドキュメントの通り、clang3.9とLLVMのlibc++を使用した。4のインストールUnrealEngineをcloneしてくるが、EpicGamesのGithubリポジトリはcloseしているため、開発者として登録する必要がある。以下URLの右上からサインアップしてGithubアカウントをProfileに記載する必要がある。https://unrealengine.comここサインアップしたら登録したメールアドレスの認証も行っておく(認証してないと後述の自動車素材がダウンロードできない)サインアップ後、右上に人型アイコンができるのでそこから開発者用Profileページへ。「接続済みアカウント」に行って下にスクロールしていくと、Githubアカウントを記載するフォームがあるので書く。https://github.com/EpicGamesとか適当にgithubページに行くと招待状が届いている。memberする(背景が黒いのは自分が拡張しているから)これでやっと以下スクリプトが通るようになるので、clone時にGithubアカウント認証して設定スクリプトを走らせてmakeする。makeでは[x/N]みたいな表示が何回か出るし、素材ダウンロードもあるので適当なマシンでやると4時間くらいかかる。最初適当に50GBくらいVMで容量設定したが、make時足りなくなって途中で止まったのでGPartedを久々に使う事になった。ストレージは多めに見積もる必要がある。~/UnrealEngine_4.17./Setup.sh./GenerateProjectFiles.shmakeSetup.shでは、「Success」となっていてもその下にエラーメッセージが表示されている場合がある(大抵権限周りで)。~/.configを触る権限がないとかなのでsudoersでやり直し。Setup.shの真のSUCCESSは以下画像参照makeする時もsudoersに入ってないアカウントで作業して、sudo等の扱い間違えると権限の関係で以下辺りで死ぬ。chmodやchownコマンドで権限を読み書きできるようにして無理やり通しても、後続のCARLAビルドする時に死ぬので諦めてやり直すのが吉。(Access権限足りんよー)CrushReport-linux-Shippingのレシピで失敗しました権限周りを丁寧にやっていてもUE4Editorのレシピだけ失敗する場合がある。137依存パッケージのビルド順の問題だったので以下のように1つ1つ愛のある手作業でビルドしていくと通った。UnrealFrontendUnrealFrontend-Linux-Shippingじゃないの...と思ったけどUnrealFrontendっぽい。ARGS=-cleanCALRAのインストールCARLAをcloneしてきてbuildする。~/CARLA/Unreal/CarlaUE4/Contentへの追加や色々ダウンロード等が入るので、これもまた1時間ほどかかる。GitHubWindows端末が必要な作業が後半にあるので、Setup中に出来る所までやっておくと吉。ここでpyenv使ってる人はfaildやskippedが出たり、protobufやpyconfig.hが見つからないよと出る。systemして、UE4の関連パッケージインストールからやり直せば大丈夫。~/CARLA./Setup.shSUCCESSとなったら設定おわりこの後まさかのWindows端末が必要になる。これも時間がかかるのでSetup中に出来る所まで以下やっておくと吉。~/CARLA/Unreal/CarlaUE4/Content/配下に、追加で手動で自動車素材となるAutomotiveMaterialsを入れる作業である。Materialsを追加したダミーのプロジェクトを作り、プロジェクト内にあるAutomotiveMaterialsディレクトリをLinux端末にコピーしてくる(現状ライセンスの関係で自分で入れる形になっているらしくこの方法の改善に取り組んでいるらしいが...)以下URLからパッケージを0$で購入してダウンロードする訳だが、そのダウンロードがWindowsのLauncherアプリからしかダウンロードできない。Launcher自体のインストールためのInstallerを落としてくる。Installer起動してよしなにWindowsにインストール。インストールできたらLauncherを起動して「次へ」をおしながら、.NETFrameworkが必要だったりするので、ウィンドウの表示に従ってポチポチしていけば良い。起動したらLauncher内でマーケットプレイスに行けるので移動して、Automotiveで検索。バージョンを4.17に合わせてプロジェクトを作成する(最新が4.18になってたので注意)。プロジェクト作成したらダウンロードがはじまる。上記作業が終わったら、Windowsの「プロジェクト作成」で作ったプロジェクト配下にある{プロジェクト名}/Content/AutomotiveMaterialsディレクトリをコピーして、scp等でどうにかLinuxマシンに移動する。Linuxに送信したら、Linux端末の~/CARLA/Unreal/CarlaUE4/Content/配下に送信してきたAutomotiveMaterialsディレクトリを丸々コピーする。~/.profileRebuildスクリプトを走らせて、素材ファイルのリンクと周辺のビルドをする。3.x環境の場合はUE4Editorの起動時の引数に-opengl3が必要になるので、Rebuild.shの編集が必要。./Rebuild.shリンク作業のためにUE4Editorが起動する(ここでOpenGLが3以上でないと詰む)初回起動時は初期化が入るのでそれなりの時間を要する。死んでいる様子リンク作業は以下参照http://carla.readthedocs.io/en/latest/how_to_add_automotive_materials/コンテンツブラウザでContent/Static/Vehicles/GeneralMaterials/MaterialRedirectorsに行って「RedirectorInstance」を開き検索フォームで「Parent」を検索。DummyCarをM_Carpaintに名前を変えて上書き保存して終わり。この作業で失敗すると人や車が表示されないので何度かやってみる。以下のようにxbuild周りでエラーが出た場合は、UEのmakeをやり直すか権限設定を見直す。Serverが動き始める。-fps=15ない場合はbuild失敗してるか、compile済みのlatestから取ってくるか。pygame別コンソールを開いて~/CALRA/PythonClient/内にあるsampleを動かせばひとまず操作できるようになる。restartとりあえず楽しいです。-ひとまず動作させるまでで終わりです。本当は年末年始でAirSimも試し、クライアント作りまでやって設定色々書こうくらいまで思っていましたが、UE4のbuildに何回も失敗したり、Ubuntuが死んだり、CARLAが起動しても人Moduleが表示されなかったりとまあまあ辛かったのでここまでになりました。2018年1月7日CARLAが動けばAirSimも動くはずなのでチャレンジします。次は自身で自動運転操作するまでの工程とか、CARLAのパラメータsettingについて書いていきたいと思います。-スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。