AIMのデータロガーで取得したデータをDashWareというソフトウェアを使って車載映像に合成する方法を紹介する。
ちなみにこの方法、AIMのログデータを取り出す方法以降に関してはDashWareの使い方の説明となるので、他のデータロガーでも同様の方法でロガーデータを車載映像に合成することが可能になるはず。
今回作るものはこちら↓
GPSデータから取得した速度やGセンサー、スロットル開度やブレーキ、エンジン回転数、あとついでに吸気温度と水温と触媒温度を表示させている。車やロガーによっては更に多くの情報を出すこともできるので、そのあたりは各々の需要に合わせて勝手にカスタマイズしていってほしい。
つまりこれは脱法SmartyCAM。
ただ・・・正直めんどくさい部分もあるので、お金のある人はSmartyCAMを買ったほうが断然良い。
このやり方は、手間をかけたり悩んだりしてでも、とにかく無料でログデータを合成したい人向けの手法になる。もちろんこの記事の中では最低限悩まないように、僕が悩んだこととその解決法を記述はするが、それ以外のトラブルが起こっても僕にはわからない。
DashWareを使ってAIMのログデータを合成する
用意するもの
- AIMのデータロガー
- Windows10のPC
- 車載映像
- DashWare(PCソフト)
今回は僕が使っているAIM SOLO2 DLを前期型のRX-8に接続して得られたデータを元に動画を作成していく。
DashWareをインストールする
ログデータの合成ソフトは、GoPro社が買収したPCソフトウェア「DashWare」を使用する。↓のページからダウンロードして、Windows10 OSのパソコンにインストールする。Windows11への対応はされていない様子。
ちなみにDashWare、もうここ6~7年ぐらい更新されていない様子なので、そのへんが心配な人は素直にAIMのSmartyCAMを買うべき。またDashWareはWindowsにしか対応していないので、MACのパソコンで作業したい人はWindowsエミュレーターなどを別途入れる必要がある。
Race Studio AnalysisからCSVデータを取り出す
AIMの解析ソフトであるRace Studio Analysisを開く。
まず最初に、「ファイル→Language」から言語設定を英語に変更する。なぜか日本語設定だとデータの一部が日本語で書き出されてしまい、DashWareに取り込む際に少し手間が増える。Race Studio Analysisを英語設定にするほうが結果的に楽。
言語設定を英語にしたら、Race Studio Analysisを一度閉じ、もう一度開く。
再起動後のRace Studio Analysisで、合成したいテストデータを開き、「File→Data Export」を選択。
データ出力設定を行う。
- Browseから任意の出力場所とファイル名を選択。
特に変更しない場合はログデータが保管されている場所へ出力される。 - CompatibilityはCSVを選択。
- ChannelsとLap timeはSelect Allボタンをクリックして全部を選択。
- Saveをクリック
これでCSV形式のデータが出力される。
出力されたCSVファイルが確認できた。
DashWareでプロジェクトを作成する
先程インストールしたDashWareを立ち上げる。「File→New Project」から新規プロジェクトを作成する。
- Project Nameには任意のプロジェクト名を入力
今回は「220130AP-11h」と、走った日時や場所がわかる明確な名前をつけた。
DashWareは日本語対応していないので、半角英数字で表記したほうが良いかも。 - Project Templateは初回は「None」を選択
このあとテンプレートを作成するので、2回目以降は保存したテンプレートを使用すれば良い。
2つを設定できたらOKボタンをクリック。すると新規プロジェクトが作成される。
Input SettingsのVideoとData File(s)の+ボタンをクリックして、合成したい動画とデータファイル(先程Race Studio Analysisから書き出したCSVファイル)を選択する。
Data Fileを選択する際はChoose a data profileがAiMになっていることを確認。これは自動で選択されるはず。
ここで大事なことだが、動画ファイルはmp4形式しか受け付けていない。その他形式でも読み込めるだけでなく作業もできるのだが、書き出しの際にエラーが発生する(後述)。
動画とログデータを同期させる
- 右上の「Synchronization」タブをクリック。
- 動画をわかりやすい場所(コーナーのクリッピングポイント等)に移動させる
- ログデータを動画と同じ場所まで移動させる(コース図上の赤い点が自車の位置を表している)
- 「Sync with Video」にチェックを入れ、動画とログデータの位置関係を固定する
という順で、動画とログデータの位置関係を合わせる。動画側の再生ボタンをクリックして、データと動画の動きがおおよそ合っていることを確認する。
このあとログデータを動画内に表示させた時、微妙なズレに気づく場合があるかもしれない。その時は「Synchronization」に戻り、「Sync with Video」のチェックを外し、微調整すればOK。微調整後は「Sync with Video」にもう一度チェックを入れることを忘れないようにする。
ゲージを動画内に表示させる
「Gauge Toolbox」タブを開くと、プリセットされた様々なゲージが出てくる。この中で好きなものを動画内にドラッグ・アンド・ドロップしていくと、好きな位置に各種ゲージを表示させることができる。各ゲージのサイズ調整なども動画内に入れたあとにできる。
この時、各ゲージの単位や表示させたい項目等が違っていたとしても、あまり気にせず目的や好みに近い見た目や動きのものを選択する。単位や項目、色等はこのあと自由に変更できる。
上の画面ではプリセットされたゲージの
- Arc Gauge 3 Basic
- Gold Metalic Lap Info KPH
- White Shadow Map
を動画内に表示させている。
ゲージの表示内容を修正する
ここからの作業が一番手間で時間がかかる。
Projectタブに戻り動画を動かしてみると、
- Gセンサーの横Gの動きが左右逆
- THROTTLE(アクセル開度)やBRAKEのバーが正しく動かない
- 速度の単位がmphになっているのでkm/hに変えたい
- 右上にも速度表示(KPH)が入っているので消したい
など様々な問題や気になる点が出てくる。これらを一つ一つ修正していく。
- 表示を修正したいゲージ(今回はArc Gauge 3 Basic)をクリック
- 「Edit Project Gauge」ボタンをクリック
- Gauge Designerウィンドウが開く
このGauge Designerウィンドウを使って、ゲージの修正を行っていく。
Gセンサーの左右逆転を修正する
まずは横Gが左右逆転しているところから修正する。
Componentsの中から「G-Force Plot」を選択して、「Edit Components Proparties」をクリック。
G-Force Plot Propertiesウィンドウが開くので、この中の「Flip Lateral G / X Axis」にチェックを入れる。すると横Gが左右反転されて正しい表示になるので、下にあるOKボタンをクリックする。
THROTTLEバーの動きを正す
次にTHROTTLEバーを正しく表示させる。
- ゲージ内のTHROLLEをクリック。
- するとおそらくComponents内のTextかAnimatied Barあたりが自動で選択されるはず。これによって赤い枠で囲んだ「Filled Rectangle」の5項目がTHROTTLEバー表示の要素になっていることがわかる。
この中で一番上にある「Animated Bar」を選択。 - 「Edit Components Proparties」をクリック
Animated Bar Propertiesウィンドウが開くので、
- Value InputをThrottleに変更
- Range Settingsの数値を変更
Min Value=0
Max Value=100 - OKボタンをクリック
で正しく表示されるはず。RX-8のスロットル開度は0~100で表示されているのでレンジを0~100にしたが(レンジは取り出したCSVファイルのTPSの項目で確認できる。他項目を入力する場合もCVSファイルの中身を確認する)、他の車種では違う場合もあるかもしれないので、各々のCSVファイルを確認してほしい。
BRAKEバーに入力させる情報を追加する
BRAKEバーに新たに入力させる情報を追加する。
Gauge Inputsを確認すると、
- RPM
- Throttle
- MPH
- Acceleration / Y Gs
- Lateral Gs
の5項目がゲージ内に入力されることがわかる。と同時に、Brakeが入っていないことにも気づくはず。なので「Add Input」ボタンをクリックしてゲージ内に入力させる項目を追加する。
Input Nameウィンドウが開くので、
- Data Categoryで「Steering, Throttle, Blakes」を選択
- Data Typeで「Brake Position」を選択
- Gauge Inputは適当な名前(自動挿入される名前のままでOK)を入力
する。前期型RX-8の場合はブレーキはON/OFFのスイッチしか無いのだが、ブレーキ圧力センサーからの信号を受け取れる車はData Typeに「Brake Pressure Combined All」を選択すると良い。できたらAddボタンをクリック。
- Gauge Inputsに追加したBrake Positionがあることを確認
- ゲージ内のBRAKEをクリック
- Componentsの中からBRAKEに割り当てられている項目がわかるので、その中の一番上のAnimated Barを選択
- Edit Components Propartiesをクリック
- Value InputをBrake Positionに変更
- Range Settingsの数値を変更
Min Value=0
MAX Value=1 - OKボタンをクリック
こちらもMin ValueとMAX Valueは取り出したCSVファイルを確認して、各々の数値に合わせる。
表示されている単位を変更する
元のゲージの速度単位がマイル(mph)になっているのでキロメートル(km/h)に変更する
- ゲージ内のmphをクリック
- 割り当てられている項目「Text」がわかるので、これを選択
- Edit Components Propartiesをクリック
- Text SettingのTextを「km/h」に書き換える
- OKボタンをクリック
これで単位を書き換えることができた。
ここまでくればこのゲージの表示内容の修正が完了。Gauge Designerウィンドウの「File→Save Gauge」をクリックして、ウィンドウを閉じる。
ログデータの各項目をゲージに割り当てる
現状では各ゲージの中に表示されている項目が、取り出したCSVファイルの正しい項目に割り当てられているとは限らないので、自分の表示させたい項目をゲージ内に割り当てていく。
- Project Gaugesの中でゲージを選択
- Edit Gauge Input Assignmentsをクリック
- Gauge Input Mapperウィンドウが開く
- Data Valueから任意の項目を設定
僕の前期型RX-8(※AIMデータロガーのECUセッティングは後期RX-8用に設定してある)の場合、各項目は次のように割り当てている。
Gauge Input | Data Value |
---|---|
RPM | RPM |
Throttle | TPS |
MPH | GPS_Speed |
Acceleration / Y Gs | GPS_LonAcc |
Lateral Gs | GPS_LatAcc |
Brake Position | Brake2 |
Data Valueに各CSVファイルを確認しつつ割り当てる項目を選択していく。
他のゲージに関しても、ここまでと同様にゲージの表示項目を設定、書き換え、不要な項目の削除などを行い、CSVデータを割り当てていけば、見た目を変更したり、目的のデータを画面上に表示させることができる。
テンプレートを保存する
欲しい見た目と正しい動きになったら、テンプレートを保存する。
- File→Save Projectでプロジェクトを保存
- File→Save Project As Templateをクリック
- Template Nameに任意の名前を付ける
- OKボタンをクリック
これでテンプレートが保存できた。次回からは新規プロジェクトを作るときのテンプレート選択で、今回作成したテンプレートを選べば良い。そうすれば次回からは動画とデータのタイミングを合わせ、動画の書き出しを行うだけになる。
動画を書き出す
ここまでくれば、あとは動画を書き出すだけ。
動画の下にある三角形のマークを移動させ、書き出したい部分を切り取る。
- File→Create Videoをクリック
- 開いたウィンドウのBrowseボタンをクリックし、動画の保存場所のファイル名を選択
- Create Videoボタンをクリック
これで動画が書き出せる。
正しく動画が書き出せたときは、このようなProgressバーが表示される。
動画を書き出すときにエラーが発生する場合
動画を書き出す際に、このような「Error rendering in MediaFoundationMedia Foundation Error + -1072875847」といったエラー表示が出てくる場合がある。僕はこれの解決策に少し悩まされた。
DashWareのFAQページには色々と解決策が書かれていて、
- 最新版のDashWareを使用する
- K-Lite codec packをインストールする
- QuickTimeをアンインストール後再インストールする
などなどがあるが、僕が試した限りどれも効果がなかった。
結局このエラーの原因は、DashWare最新版(v1.9.1)ではエンコーダーが1種類しかなく、合成元の動画はmp4形式以外受け付けていないため。ということで解決策は単純明快で、
元動画をmp4形式に変換すること。
おそらくDashWareは長いこと更新されていないためmp4でもH264コーデックでないとダメな気がする。僕はH265コーデックで試したりしていないので正確には不明。
僕の場合はAdobe Media Encoderを使って動画を変換したが、動画変換のフリーソフトは様々あるので、元動画がmp4でない場合は好きなものを選んで変換すれば大丈夫なはず。
一度苦労すれば、あとはタイミングを合わせるだけ
ということでDashWareを使って動画内にAIMのロガーデータを合成する方法を紹介した。自由度が高い分だけテンプレートを作るまではかなりめんどくさい上、完全に好みの見た目にしようと思うと結構大変になってくる。が、一度作ってテンプレートができれば、2回目からは動画とデータのタイミングを合わせるだけ。動作もそこまで重たくないのが嬉しい。ただ編集画面上ではデータの動きがカクつくので、動画を書き出したあとに微妙にタイミングがずれていることに気づく事もあったが…。
DashWare自体の操作は直感的な部分もあるので、個人的にはLap+のデータを同期できるVSD for GPSよりも簡単に感じる。
ただ、このDashWareがいつまでサポートされて使えるのかはわからない。データを同期させる時間や手間などを考えても、AIMロガーのユーザーならSmartyCAMを買うほうが圧倒的に良いことだけは間違いない。なかなか高くて買えないが……。
コメント
こんにちは 同じことをやろうとしております。
analysisのソフトで Import testにて開いたデータが一覧に表示されません。
なにか考えられることはありますでしょうか。
こんにちは。
現在はRace Studio3(RS3)上の解析ソフトが基本になっていますが、RS3はCSVファイルの書き出しができないので、RS3で取り込んだデータをRace Studio Analysis(RS2)でも読めるように設定しないといけません。
RS2のData→Import testを開いて、ファイルの種類でRS3を選べばRS3ファイルがRS2でも読み込めます。