インディアナ大学 – パデュー大学インディアナポリス校(IUPUI)では、高速センサデータ処理の利点を分析することを通じて、自動アプリケーションにおける道路輸送の安全性の向上を実現する方法を研究しています。ここでは、組み込みコンピューティング機能の中心的なリアルタイム実行プラットフォームとして、RTMaps EmbeddedおよびNXP BlueBoxが使用されています。

自動車メーカーは、自動運転車両向けのセンサや電子制御ユニット(ECU)の数の増大に対応するため、さまざまなタスクをリアルタイムに処理できる先進的かつ効率的なソリューションを利用する必要性に迫られています。自動運転車両では、カメラ、レーザースキャナ、レーダー、全地球的航法衛星システム(GNSS)レシーバなどのさまざまなセンサから受信したデータを数ミリ秒以内でロギング、タイムスタンプ同期、および処理し、車両の正確な位置と安全な動作を保証しなければなりません。インディアナ大学 – パデュー大学インディアナポリス校(IUPUI)工学部の学生たちは最近、4つの異なる自動化アプリケーションのセンサデータを処理できる高速演算プラットフォームのテストに向けた複数の研究を完了しました。

テストプラットフォームの構築

同大学の学生たちは、研究を開始するにあたり、Intempora社のRTMaps Embedded(バージョン4.5.0)を搭載したテストプラットフォームを構築しました。dSPACEが販売しているRTMaps Embeddedは、リアルタイムマルチセンサアプリケーション用ソフトウェアソリューションであり、強力なリアルタイム実行性能を有して多数のソフトウェアタスク間の時間的整合性に対処し、広帯域幅の生データストリームを提供することができます。RTMapsソリューションには、RTMaps Runtime Engine、RTMaps Studio、RTMaps Component Library、RTMaps SDK(ソフトウェア開発キット)など、複数の独立したモジュールが存在します。パデュー大学工学部のMohamed El-Sharkawy教授は、「RTMaps Embeddedは、マルチセンサに伴う課題に対応し、克服できるように設計されています」とし、「先進運転支援システム、自動車、およびロボット産業などの分野において堅牢かつ迅速な開発を行うための効率的かつ使いやすいフレームワークが備えられているため、私たちはアプリケーションを容易に開発、テスト、検証、ベンチマーク評価、および実行することができました」と述べています。また、テストプラットフォームには、車両が周辺の3D高精細画像をリアルタイムに作成できるようにするための組込みコンピューティングシステムであるNXP BlueBoxも導入されました。研究において、学生たちは特にBlueBox Version 2.0を使用しました。Version 2.0には、S32V234自動車用ビジョンおよびセンサフュージョンプロセッサ、LS2084A統合通信プロセッサ、S32VR27レーダーマイクロコントローラが備えられています。El-Sharkawy教授は、「NXP BlueBoxを使用すると、運転環境を分析でき、自動運転車両を開発する際の自動車の信頼性だけでなく、リスク要因を評価することもできます」とし、「BlueBoxは自動車の信頼性を向上させるうえで必要な性能と機能安全性を提供しており、RTMapsとの統合も可能です」と述べています。 注:RTMaps Embeddedは、自動運転機能に対応したプロトタイピングプラットフォームであるdSPACE MicroAutoBox Embedded SPUとも互換性があります。

図1:ユーザ定義のコンポーネントパッケージに対応したRTMapsワークスペース。
図2:RTMapsのCAN Frameビューアを使用した出力表示。

5つのアプリケーションをテスト

学生たちは、テストプラットフォームを構築したうえで、5つの自動運転用アプリケーションの研究およびプロトタイプの製作に取り組みました。

1.ユーザ定義のコンポーネントパッケージの作成

2.ニューラルネットワークを活用したPythonコンポーネントの開発

3.歩行者検出

4.リアルタイムシナリオの記録と再生

5.SVM分類器を使用した前方衝突警告

アプリケーション1:ユーザ定義のコンポーネントパッケージの作成

学生たちは、RTMaps Studioのグラフィカルな開発環境とRTMaps Component Libraryを使用しました。そして、C/C++およびPythonコードを統合し、コンポーネントパッケージを作成しました。さらに、RTMaps SDKを使用して、RTMapsのプロジェクトワークスペースにコンポーネントパッケージをインポートしました。これにより、RTMaps Component Libraryから提供されるコンポーネントを接続して、RTMaps Studio内でアプリケーションを作成できるようになりました。IUPUI工学部の学生であるSreeram Venkitachalam氏は、「RTMaps Studioを使用すると、複雑なモジュール型アプリケーションを容易にセットアップすることができます」とし、「RTMaps Studioのワークスペースには、ライブラリから簡単にコンポーネントをドラッグできます。これらのコンポーネントは、通信、センサのインターフェース接続、アルゴリズムの構築、およびアクチュエータの接続に使用できます」と述べています。図1は、RTMaps Studioにインポートされたユーザ定義のコンポーネントパッケージを示しています。標準および拡張型のCANフレームはいずれも、RandomCANFrameGeneratorパッケージを使用して生成されました。受信したCANデータがフィルタリングされ、RTMapsのビルトインコンポーネントであるCAN Frameビューアに標準のフレームのみが表示されます。ジェネレータコンポーネントにはCANフレームの生成速度を制御するための2つの動作が組み込まれており、「スピードアップ」動作では現在のCAN生成速度が2倍になり、「スピードダウン」動作ではCAN生成速度が50%低下します。

アプリケーション2:ニューラルネットワークを活用したPythonコンポーネントの開発

学生たちは、次のアプリケーションプロジェクトにおいて、ニューラルネットワークを活用したPythonコンポーネントを開発し、入力画像の分類を行いました。ここでは、Pythonスクリプトを開発するため、構文が着色される便利なエディタを備えたRTMaps EmbeddedパッケージのPythonコンポーネントを使用しました。エディタは、コンポーネントモジュールを右クリックし、コンテキストメニューより表示できます。RTMapsのPythonブロックでは、「RTMaps_Python」と呼ばれるクラスが生成され、これによって入力を定期的または状況に応じて呼び出すことができます。RTMaps_Pythonクラスのコア関数は、メインプログラムを実行する無限ループとして機能します。学生たちは、RTMaps EmbeddedのPythonコンポーネントを使用することにより、車両の検出および道路標識の分類という2つのサンプルプロジェクトを完了することができました。

車両の検出

学生たちは、車両を検出するために、各層にプーリング機能を備えた5層の畳み込みニューラルネットワーク(CNN)によって画像を実装しました。このネットワークには、ネットワークの過剰適合を防止するため、完全に接続された2つの層とドロップアウト層を使用しました。また、モデルのトレーニングは回帰モデルを使用して行い、Adamオプティマイザで最適化しました。さらに、RTMaps Pythonブロックにニューラルネットワークのスケルトン構造を追加し、ブロックのトレーニング済みの重みを保存データとしてネットワークに供給しました。Pythonブロックのネットワークでは、画像に車両が含まれているかどうかを確認します。BlueBoxに転送されたRTMapsアプリケーションは、組込みプラットフォーム(BlueBox)で実行されます。BlueBox内のRTMaps Pythonライブラリは、TensorFlowディープラーニングライブラリ(tflearn)を組み込むことでCNN構造を構築できるよう変更されていました。

道路標識の分類

学生たちは、2番目のサンプルプロジェクトにおいて、ドイツの道路標識をTensorFlowモデルで分類することに成功しました。モデルを使用して道路標識を識別し、それらを43種類のいずれかに割り当て、検出された道路標識の意味を画像に表示しました。分類モデルにおいては、約3万9千枚の画像を使用してモデルのトレーニングを行いました。また、テスト用としてTensorFlowモデルを再作成し、トレーニングモデルを使用して保存したモデルの重みを追加して、入力された画像の種類を予測しました。テスト構造全体は、RTMapsのPythonコンポーネントで作成されました。トレーニングモデルと取得した画像がBlueBoxに送信され、予測結果は、画像内の標識に応じて道路標識の意味を示すラベルとして出力されました。

アプリケーション3:歩行者の検出

学生たちは、次のアプリケーション試験において、Axis IPカメラ(IPCAM)を使用してリアルタイムフレームを取得することで、歩行者を検出できるようにしました。RTMapsのPythonアプリケーションの歩行者検出モデルでは、入力された画像内の人物を検出し、バウンディングボックスを描画します(図7)。事前学習済みの検出器として、勾配方向ヒストグラム(HOG)と線形サポートベクターマシン(SVM)が使用されました。また、バウンディングボックスの重複回避には、非最大抑制(NMS)が使用されました。歩行者検出モデルはIPCAMに統合され、IPCAMからの入力画像がPythonアプリケーションに供給されました。RTMapsの画像ビューアには、検出された歩行者とバウンディングボックスが表示されました。

アプリケーション4:リアルタイムシナリオの記録と再生

学生たちは、4番目のアプリケーションプロジェクトにおいて、RTMapsを使用してリアルタイムデータを記録および再生できるか検証しました。ここでは、BlueBoxのLS2084AにIPCAMを統合して画像を取得し、それらをRECファイルとしてIPCAMフォルダに保存しました。取得したデータをRECファイルとして保存することで、学生たちは容易に再生することができました。

アプリケーション5:SVM分類器を使用した前方衝突警告

学生たちは、最後のアプリケーションプロジェクトにおいて、車載前方監視レーダーモデルと分類器アルゴリズムを含む前方衝突警告システムの実装に取り組みました。レーダーモデルから出力される値は、速度/加速度および分離距離です。これらの出力を線形回帰およびSVM分類器への入力として使用し、警告範囲(つまり、自車と前車との間で衝突が起きる可能性のある範囲)を予測しました。

まとめ

IUPUI工学部の学生たちは、RTMaps EmbeddedプラットフォームとNXP BlueBoxを使用することにより、自動運転に関するさまざまなアプリケーションプロジェクトを完了することができました。彼らは、5つのさまざまなサンプルアプリケーションの開発およびテストを完了したことで、Intempora RTMaps 4.5.0と演算プラットフォームであるBlueBox 2.0の統合が可能であることを再確認しました。また、データ量やADASアルゴリズムの複雑さが増大する中、周辺の交通環境や走行条件をすばやく検出および応答できる自動運転車両の実現に向けた研究において、RTMapsとBlueBoxの処理能力は大いに役立ちました。

インディアナ大学 – パデュー大学インディアナポリス校のご厚意により寄稿

dSPACE MAGAZINE、2019年2月発行

パデュー大学工学部の活動に貢献してきた研究メンバー

Mohamed El-Sharkawy氏

Mohamed El-Sharkawy氏

教授 フルブライト奨学生 IoT共同実験室の責任者

Akash Gaikwad氏

Akash Gaikwad氏

大学院生 IoT共同実験室 電気およびコンピュータ工学部

Surya Kollazhi Manghat氏

Surya Kollazhi Manghat氏

大学院生 IoT共同実験室 電気およびコンピュータ工学部

Sreeram Venkitachalam氏

Sreeram Venkitachalam氏

大学院生 IoT共同実験室 電気およびコンピュータ工学部、現在はAptiv社のテストおよび検証エンジニア

Niranjan Ravi氏

Niranjan Ravi氏

大学院生 IoT共同実験室 電気およびコンピュータ工学部

Sree Bala Shruthi Bhamidi氏

Sree Bala Shruthi Bhamidi氏

大学院生 IoT共同実験室 電気およびコンピュータ工学部

Dewant Katare氏

Dewant Katare氏

大学院生 IoT共同実験室 電気およびコンピュータ工学部

最新の技術開発動向をつかんで、イノベーションを加速。

メールマガジンの購読希望・変更/配信停止手続き

Enable form call

At this point, an input form from Click Dimensions is integrated. This enables us to process your newsletter subscription. The form is currently hidden due to your privacy settings for our website.

External input form

By activating the input form, you consent to personal data being transmitted to Click Dimensions within the EU, in the USA, Canada or Australia. More on this in our privacy policy.