自動運転は信頼できる?できない? 車載画像処理が抱える困難さの考察

私たちが自動運転に高い期待をもっていることは、テクノロジー関連の主要な展示会では例外なく自動運転技術を目にすることからも明らかです。ひと度事故を起こせば人命にも関わりかねない自動運転の開発は、高度な処理を求められながら、一方で車載ならではの制約も課され、様々な困難が伴います。
自動運転を実現するためには、まず初めに信頼性の高い先進運転支援システム(ADAS)を構築しなければなりませんが、実はそれ自体が困難な課題です。ADASの画像処理は、ますます複雑化するアプリケーションや環境に対応する必要があります。その一方で、認識精度の向上させ、自律学習、機械学習、ニューラルネットワークやその他の人工知能アルゴリズムを提供しなければなりません。
これらの要件は、必然的に画像処理タスクの複雑さと負荷を増大させ、より多くのコンピューティングリソースと処理時間を消費します。しかしこれは、限られたリソース、高度なハードウェア要求といった車載アプリケーションに求められる特性と真っ向から衝突するものです。ここに、車載アプリケーション開発者が日々直面している困難があります。
では、突破口を見出すために、車載用画像処理の典型的なプロセスを見てみましょう。このプロセスには4つのステップが含まれます。
ステップ1
前処理:前処理には、フレーム技術、色調整、ホワイトバランス、コントラストバランシング、画像整流が含まれます。これらのグラフィック出力プリミティブの処理には大量のデータが必要なだけでなく、各プリミティブは他のプリミティブとは独立しており、依存性が低いため、高帯域幅と並列データ処理能力が必要です。
ステップ2
特徴抽出:特徴抽出は、前処理、特に重要なエッジおよびコーナーに基づいて、画像から特徴を抽出することを含みます。
ステップ3
ターゲット識別:人物、車両、交通信号などの画像内のオブジェクトは、特徴を識別するためのデータの出力に基づいて識別され、機械学習およびニューラルネットワークアルゴリズムの利用が必要になります。
ステップ4
ターゲットトラッキング:上記画像の各フレームを記録し、ターゲットを決定するために複数のフレームを蓄積し、安定した識別と判断を実現、更にシステムとして機能安全を担保して、ECUへのステータス・判断結果の確実なインタフェースを遂行します。
最初の3つのステップは通常、ボトム・レベルおよびミッド・レベルの処理とみなされ、並列処理が比較的進んでいる領域です。ステップ4には、順次実行と連続処理を必要とする論理関係が含まれます。ここでは、車載画像処理における各タスクは異なる要件を有し、単一のフレームワークを有するハードウェアプラットフォームがすべての要件を満たすことは困難であると結論付けられます。このため、異なるタイプのハードウェアリソースがさまざまな計算や処理タスクに対応できるように、より複雑で包括的な異種システムアーキテクチャを構築する必要性が生じるのです。
例えばザイリンクス社のZynq UltraScale+ MPSoCを利用した開発プラットホーム、UltraZ ADボードでは、各種の周囲監視、前方監視カメラのシリアライザとの接続が可能です。また、開発が進む7M pixcel以上の高解像度カメラのシリアライザへのインタフェースが約束されています。カメラ以外のレーダ(Lidar/Rader)や各種センサのインタフェースや将来の拡張にもフレキシブルに対応が可能な構成になっています。
センサインタフェースの後段では色調整・ホワイトバランス・コントラスト・機械学習性能を左右する画像補正・フィルター処理が必須ですが、プロセッサでの処理とは異なり、FPGAではセンサーのフレームデータが揃う前に、逐次処理で画像処理行う回路を搭載することでフレームメモリへのバッファリングが必要なく、インタフェース毎に処理回路を複数持たせることで画処理遅延を最小限に抑えられるメリットがあります。特徴点抽出・人検知・物体認識も、FPGAロジックに再適化された(2値、整数化、演算圧縮、プルーニング利用)機械学習アルゴリズムの開発が進み認識精度を保ったまま、高フレームレートで判定可能且つ、省ロジックでの推論が可能と成りました。機械学習のフレームワークはCAFÉ, Tensor Flow, Chainner, Mxnet 等を利用してラーニングを行えるように工夫されているため、他のプラットホームからの乗り換えも容易になって来ています。
また、機械学習の評価ステップでは学習済みのネットワークの処理結果を、確認したいというニーズがあります、UltraZ ADは処理画像をHDMI 1.4 出力や、PCIeやNVMe I/Fを介したストレージ保存で対応することが可能です。
自動運転プラットホームでは複雑な処理を2つのFPGA SoCデバイスで協調処理することが必須と成ります。UltraZ ADボードでは2つのZynq MPSoC にROS/ROS2を搭載し協調処理を実現可能です。これにより、一方のSoCで物体認識を行い、他方で経路生成を行うような使い方が可能になります。
Zynq UltraScale+ MPSoC にはハイパフォーマンスなArm Cortex-A53プロセッサを最大4コア、リアルタイムプロセッサとしてArm Cortex-R5を2コア搭載することで、ヘテロジニアスなシステム構成を実現しています。A53とR5は電源分離されたヘテロジニアスなプロセッサ構成となっており、機能安全を担保することが可能で、 デバイスで ISO 26262 ASIL C (HFT=1) 認証を取得しています。
UltraZ ADを素早くADASシステムとして評価をしたいエンジニアは、ザイリンクス社のソリューションパートであるXylon社のADAS 向けIPコアを利用することで、イメージISP、HDR処理、最大6カメラサラウンドビュー、バーチャルフライングビュー、白線検知、等の機能を素早く実装可能です。
UltraZ ADボードでは機能案安全をコンセプト段階から評価すること考慮し、機能安全を考慮した2つのSoC デバイス以外に各SoC の稼働状況を監視するInfineon社の機能安全マイコンを搭載しており、電源管理・各FPGA状態監視 や車輛システムとの通信を実装可能です。
車載画像処理は、組み込みビジョン処理にとって困難な分野であり、より緊密な相乗効果とさまざまなリソースの包括的な統合を必要とします。ハードウェア開発者は、高性能なハードウェアアクセラレーション構造を策定するために、ターゲットアプリケーションの要件を十分に理解している必要があります。ソフトウェア開発者は、ハードウェアを最大限に活用するために、ハードウェアを十分に活用し、リソースを合理的に割り当てる必要があります。これは難しいかもしれませんが、それは完全に自律的な運転を達成するために必要なステップとなり、UltraZ ADボードとその設計コンセプトはお客様の自動運転の設計効率向上をサポートします。
