LoginSignup
65
59

More than 3 years have passed since last update.

自動運転シミュレータ "LGSVL SIMULATOR" を使ってみる

Last updated at Posted at 2020-03-04

はじめに

LG電子さんが作ったフリーの自動運転用シミュレータ ”LGSVL SIMULATOR” を使ってみました。他のシミュレータを使ったことないので比較できませんが、ビジュアルのクオリティがすごいです。実行ファイル版は本当にダウンロードするだけなので、特に解説するようなことはないのですが、備忘録的な意味も込めて書き残しておきます。

なお、他のソフトウェアと連携すると威力を発揮するこのシミュレータですが、この記事はそこまでカバーしていません。悪しからず。。。

公式サイト
https://www.lgsvlsimulator.com/

公式ドキュメント(基本はここにある情報です)
https://www.lgsvlsimulator.com/docs/

欠落している情報もありますが、随時情報追加していこうと思います。

推奨環境

公式ドキュメントより

4 GHz Quad core CPU
Nvidia GTX 1080 (8GB memory)
Windows 10 64 Bit

推奨環境にWindowsとありますが、Linuxでもちゃんと使えます。

インストール ~ シミュレータ起動まで

Windows版

公式サイトに行きます。
01-0.jpg

Download for Windowsを押すか、横の▼プルダウンからOSにあったファイルをダウンロードします。
01-1.jpg

zipファイルを好きなところに解凍して、「simulator.exe」をクリックします。
01-2.jpg

すると、セットアップ画面が出てくるので、画質などを選び、[ Play! ] を押します。
02.jpg

こんな画面が出てくるので、[Open Browser...] を押します。
03-1.jpg

ログインを促されるので、ログインします。アカウントのない人は作りませう。
03-2.jpg

ログインすると、この画面(WebUIと言います)になります。
newmap (6).jpg

[Simulations]タブをクリックします。
ここでプロジェクト的なものを選択すると、下の方に▶再生ボタンが出てくるので、クリックします。
sim_play.png

すると、プロジェクトのステータスが"Running"になって、下の方の▶が■になるはずです。
sim_running.png

シミュレータに戻ると、下の画像のようなシミュレータの世界が表示されてます。
04.jpg
とりあえずこれでインストール完了です。

Linux版(ほとんどWindowsと同じ)

確認した環境はUbuntu16.04です。
公式サイトで、[Download for Linux]を押すか、横の▼プルダウンからLinux版ファイルをダウンロードします。
lin_01.png

ダウンロードしたzipファイルを好きなところに解凍して、実行ファイルをクリックします。
lin_02-1.png

または、terminalから起動します。
lin_02-2.png

この画面が表示されたら、画質などを選択して[OK]をクリックします。
lin_03.png

以降の操作はWindowsと同じです。

シミュレーションが開始されない場合

初めて使うVehicleの場合、こんな風にステータスがInvaildになってシミュレーションが開始されないみたいです。
sim_error.png
エラーメッセージにあるとおり、アセットバンドルとやらを最新バージョンに更新しましょう。

公式サイトの、コンテンツウェブサイトに行きます。
contents_site.JPG

[VEHICLES]のページで、使う車を選択して、"AssetBundle"を右クリックしてリンクをコピーします。
veh_copylink.png

シミュレータのWebUIに戻って、[Vehicles]タブをクリックし、使いたい車の設定(鉛筆のマーク)を開きます。
veh_setup.png

すると、こんなウィンドウが出てくるので、下のテキストボックスにさっきコピーしたリンクを貼り付けて、[Submit]をクリックします。
veh_bundle.jpg

すると、何かをダウンロードしている感じになります。
veh_download.png

ダウンロードが完了して、ステータスが"Valid"になれば完了です。
veh_valid.jpg

もう一度[Simurations]タブに戻って、シミュレーションを実行しましょう。
正常に実行できたときは、ステータスが"Running"になって、下の方の▶が■になるはずです。
sim_running.png

シミュレーション画面説明

基本操作

シミュレーション開始直後の画面から説明していきましょう。
menu.png

  1. メニューアイコン
  2. 再生・一時停止ボタン(インタラクティブモードのみ)
  3. センサメニュー
  4. インタラクティブメニュー(インタラクティブモードのみ)
  5. ブリッジメニュー
  6. コントロールメニュー
  7. インフォメーションメニュー
  8. カメラモード切り替え
  9. 車両切り替え

以下に、よく使う(かもしれない)メニューについて説明します。

3. センサーメニュー

ここでは、各センサーの表示/非表示を切り替えることができます。
あくまで画面に出すか否かの選択なので、センサデータ自体は常に生成されています。
12.jpg

4. インタラクティブメニュー

シミュレータの実行中に、環境のパラメータを変更することができます。
下の画像では、曇らせたり雨を降らせたりしています。
08.jpg

NPC(Non Player Car)のON/OFFもできます。
10.jpg
ちなみにここで変更できるパラメータは、シミュレーションの初期設定で決められるものなので、インタラクティブモードでないときはそっちで決めておくこともできます。

5. ブリッジメニュー

ここでは生成されているセンサデータの情報が一部表示されています。
13.jpg

6. コントロールメニュー

ここには、車の操作などに使うキーボード・ショートカットが記述されています。
14.jpg
よく使うショートカットはここにも書いておきます。

アクセル:↑
ブレーキ:↓
ステアリング:←/→

前進ギヤ:PageUp
後退ギヤ:PageDown

スタート地点にリセット:F12
ヘッドライトON/OFF:H
カメラズーム:W/S

搭載センサ設定

ここでは、車に搭載するセンサのスペックや個数・位置を設定する方法を説明します。
[Vehicles]タブをクリックし、センサをいじりたい車の編集(スパナのマーク)を開きます。
senser_setup.png

すると、画像のような大きなテキストボックスが表れるので、ここにセンサの設定を記入していきます。
sensor_json.jpg
このテキストはJSON形式で書かれていて、いろいろとお作法があるので、公式ドキュメントの記入例を参考にしてください。
該当ページ → https://www.lgsvlsimulator.com/docs/sensor-json-options/

試しに、カメラを4方向に向けて搭載し、全方位カメラみたいにしてみました。
camera.jpg

このときのJSON記入例です。

[{
    "type": "Color Camera",
    "name": "Main Camera1",
    "params": {
      "Width": 1920,
      "Height": 1080,
      "Frequency": 15,
      "JpegQuality": 75,
      "FieldOfView": 50,
      "MinDistance": 0.1,
      "MaxDistance": 1000,
      "Topic": "/simulator/main_camera_1",
      "Frame": "camera",
      "Distorted": true,
      "DistortionParameters": [-0.25349, 0.11868, 0, 0]
    },
    "transform": {
      "x": 0,
      "y": 1.7,
      "z": -0.2,
      "pitch": 0,
      "yaw": 0,
      "roll": 0
    }
},
{
    "type": "Color Camera",
    "name": "Main Camera2",
    "params": {
      "Width": 1920,
      "Height": 1080,
      "Frequency": 15,
      "JpegQuality": 75,
      "FieldOfView": 50,
      "MinDistance": 0.1,
      "MaxDistance": 1000,
      "Topic": "/simulator/main_camera_2",
      "Frame": "camera",
      "Distorted": true,
      "DistortionParameters": [-0.25349, 0.11868, 0, 0]
    },
    "transform": {
      "x": 0,
      "y": 1.7,
      "z": -0.2,
      "pitch": 0,
      "yaw": 90,
      "roll": 0
    }
},
{
    "type": "Color Camera",
    "name": "Main Camera3",
    "params": {
      "Width": 1920,
      "Height": 1080,
      "Frequency": 15,
      "JpegQuality": 75,
      "FieldOfView": 50,
      "MinDistance": 0.1,
      "MaxDistance": 1000,
      "Topic": "/simulator/main_camera_3",
      "Frame": "camera",
      "Distorted": true,
      "DistortionParameters": [-0.25349, 0.11868, 0, 0]
    },
    "transform": {
      "x": 0,
      "y": 1.7,
      "z": -0.2,
      "pitch": 0,
      "yaw": 180,
      "roll": 0
    }
},
{
    "type": "Color Camera",
    "name": "Main Camera4",
    "params": {
      "Width": 1920,
      "Height": 1080,
      "Frequency": 15,
      "JpegQuality": 75,
      "FieldOfView": 50,
      "MinDistance": 0.1,
      "MaxDistance": 1000,
      "Topic": "/simulator/main_camera_4",
      "Frame": "camera",
      "Distorted": true,
      "DistortionParameters": [-0.25349, 0.11868, 0, 0]
    },
    "transform": {
      "x": 0,
      "y": 1.7,
      "z": -0.2,
      "pitch": 0,
      "yaw": 270,
      "roll": 0
    }
},
{
    "type": "Keyboard Control",
    "name": "Keyboard Car Control"
},
{
    "type": "Wheel Control",
    "name": "Wheel Car Control"
},
{
    "type": "Vehicle Control",
    "name": "Autoware Car Control",
    "params": {
        "Topic": "/vehicle_cmd"
    }
}]

最後の方に書いてある"Keyboard Control"は消すと車を操作できなくなるので消さないように。

最後に

ここまでだとただのドライブシミュレータですが、他のソフトウェアと連携することで、自動運転のシミュレーションができるようになります。が、記事が長くなるので、それはまた別の記事で。。。

あと、ソースビルド版もあります。こっちを使えば、シミュレータの中もいろいろいじれるらしいです。
こちらもいずれ記事にするつもりです。

このページは以上です。

65
59
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
65
59