デジタルプラクティス Vol.8 No.2(Apr. 2017)

自動車の運転支援・自動化のための画像センシング技術とその実践

岡田 隆三1  田辺 淳1  伴野 守保1

1 (株)東芝 

近年,自動車事故を未然に防ぐ自動緊急ブレーキ等の先進運転者支援システムが実用化され,さらに自動運転へと発展している.運転の支援や自動化を実現するためには,自動車周辺の道路環境を認識する必要があり,そのための主要なセンサの1つとしてカメラによる画像認識が用いられている.本稿では,道路環境を高精度に認識するための画像認識アルゴリズムと,それを量産自動車に搭載するために必須となる車載画像認識プロセッサの特長について述べる.具体的なプロセッサとして,(株)東芝のViscontiTMファミリを取り上げ,画像認識アルゴリズムを実時間動作させるために必要なハードウェアとソフトウェアの適切な切り分け,および実装手法とその効果について述べる.

1.はじめに

全世界の交通事故による死者数は,世界保健機関(WHO)の統計によると,2015年に年間約140万人で,主要な死因の第9位に位置する.2030年には,年間約150万人に増加し,第7位になると予想されている[1].交通事故を減らすために,交通安全関連の法整備や啓蒙活動とともに,自動車の安全技術への期待も大きい.

近年,自動車の安全技術は急速に進歩しており,事故の被害を低減するエアバッグ等の衝突安全装置に加え,自動緊急ブレーキ等の事故を未然に防ぐ予防安全装置も実用化[2]されている.予防安全の技術は,これまで人が担ってきた自動車の運転の一部を自動化する自動運転技術へと発展しており,さらなる安全性の向上が期待されている.

このような技術の進歩を後押ししている要因の1つとして,新車の安全性評価基準がある.特に欧州の基準であるEuro NCAP (European New Car Assessment Programme) [3]は,基準作りで先導的な役割を果たしており,2013年に自動緊急ブレーキが評価項目に追加され,2016年からは対象が歩行者に拡大した.2018年には夜間の歩行者や,サイクリストも評価対象となる予定で,さらに部分的な自動運転の評価についても検討されている.

自動運転は,安全性だけでなく,隊列走行や事故削減による交通の効率化およびCO2排出削減,高齢者等の交通弱者の交通手段確保とそれによる特に過疎地域での人口流出の歯止め,移動時間の有効活用といったさまざまな社会的な期待がある.また,自動車関連産業の競争力強化や,新しい部品やサービスの創出による市場の拡大といった,産業的な期待も大きい.そのため,近年,自動車メーカだけでなく多様な企業が自動運転の関連技術について発表[4]しており,その一部は一定の条件下ではあるがすでに実用化[5]されている.このようなさまざまな期待を現実のものとしていくために,現在盛んに研究開発が行われている.

運転の支援や自動化は,以下を繰り返すことで実現される.自車両や周囲をセンサにより「知覚」し,知覚したものを「認識・理解」し,「通信」により外部から得た情報も加味して,取るべき行動を「判断」し,判断に基づいて車両を制御するとともに,状況を搭乗者にフィードバックする.これらの中で上流の要素である「知覚」から「認識・理解」は,運転支援や自動運転の性能を左右する重要な要素である.センサとして,近赤外レーザレーダ,ミリ波レーダ,ステレオカメラ,単眼カメラ,超音波センサが実用化されている.自動運転の実証実験では,LIDAR(Laser Imaging Detection and Ranging,レーザ照射による測距装置)が用られることも多い.カメラは,車線逸脱防止,標識認識,歩行者検出など,その他のセンサにはない機能を提供できるという利点がある.そのため,単眼の可視カメラを利用した車線逸脱警報から始まり,近年では,ステレオ(2眼)[6]や単眼[7]の可視カメラを利用した衝突防止,近赤外線や遠赤外線のカメラを利用した夜間の人物検知[8],[9],さらに精度を高めるためにミリ波レーダとカメラを統合[2]した衝突防止といった多くの実用化例がある.

本稿では,センサとして多くの実用例があるカメラによって,自車両周辺を「認識・理解」する技術について述べる.カメラ映像から,自車両周辺や車室内を高精度に認識するには,画像認識アルゴリズの工夫と,それを車載環境でリアルタイム処理するためのソフトウェアとハードウェアの適切な切り分けが必要となる.東芝では,そのような車載画像認識向けのアルゴリズム,ソフトウェア,ハードウェアを開発しており,以下ではこれらに関する技術について述べる.まず,第2章で独自開発の画像認識アルゴリズムについて述べる.第3章では,それらを車載環境でリアルタイム処理するために,車載画像認識プロセッサVisconti (VIsion-based Sensing, CONTrol, and Intelligence) [10]で導入したハードウェアとソフトウェアの切り分けについて説明する.

2.画像認識アルゴリズムの工夫

図1は,車載カメラ映像による運転支援機能の例である.これらの機能を実現するには,前方車載カメラ等を用いて,他車両や歩行者等の自車両周辺の物体を認識する必要があり,この情報に基づいてたとえば自動緊急ブレーキが動作し,衝突を未然に防ぐ.また,走行レーンの認識により車線逸脱を警報したり,道路標識の認識により速度規制情報を運転者に提供できる.車室内のカメラ映像に対しては,運転者の個人認証による盗難防止や,顔向き認識による脇見・居眠り運転警報などが実現できる.以下では,これらの画像認識を高精度に行うためのアルゴリズムの工夫について述べる.

図1
図1 車載カメラによる運転支援機能

2.1 特定物体の検出

運転の支援や自動化を実現するための基本的な画像認識技術として,特定の対象を検出する技術がある.たとえば,前方車載カメラでは他車両や歩行者,車室内カメラであれば運転者の顔などを検出する必要がある.特に,Euro NCAPで,2016年から歩行者に対する自動緊急ブレーキが評価項目として追加されることを受けて,現在,車載カメラによる歩行者検出機能が注目されている.以下では検出対象を歩行者として物体検出技術を説明するが,他車両等のほかの検出対象でも基本的な考え方は同じである.

車載カメラで撮影した画像に映る歩行者を検出する技術としては,パターン認識を用いる手法が主流となっている.まず,歩行者がいる可能性がある画像内のすべての場所に,歩行者の大きさの矩形を候補領域として設定する.具体的な設定方法は用いるカメラシステムによって異なる.2台のカメラを用いるステレオ視の場合は,図2のようにカメラ画像からの距離情報(視差)を計算できる.これを使って道路面ではない物体の領域を抽出し,その場所に歩行者が立っていると仮定して候補領域を設定する.カメラ1台の場合は,距離情報が得られないので,カメラと道路面の位置関係を用いて,路面上に一定間隔で候補領域を配置する.次に,各候補領域に対して歩行者検出に有効な情報を取り出すために特徴量を計算し,最後に,あらかじめ大量のサンプル画像データを用いて学習しておいた識別器を用いて,この特徴量が歩行者画像のものかそうでないかを判定する(図3参照).

図2
図2 ステレオカメラを用いた歩行者検出の処理フロー(左)と処理結果(右:人物を囲む矩形は検出された歩行者,地面の横線は,その他の障害物の接地位置.座っている人は,現状の人物検出器では検出できないため,障害物として検出されている)
図3
図3 CoHOG 特徴量による人物検出(上)と性能(下)

特徴量としてよく知られているのは,画像の輝度勾配方向に関するヒストグラムHOG (Histograms of Oriented Gradients) [11]で,識別器はサポートベクトルマシン(Support Vector Machine; SVM)[12]が用いられることが多い.東芝では,HOGの改良である,2つの画素の輝度勾配方向に関する共起ヒストグラムCoHOG (Co-occurrence Histograms of Oriented Gradients) [13]をはじめとして,画像のテクスチャ情報を記述するLBP (Local Binary Pattern) [14]の共起ヒストグラムであるCoHLBP (Co-occurrence Histograms of LBP) [15]や,色の違いを考慮したColor CoHOGなどカラー複合共起特徴量[16]を開発している.これらは共起情報に着目して画像パターンを記述する能力を向上させた特徴量であり,従来のHOG特徴量よりも歩行者検出の精度が向上する.

CoHOG特徴量[13]は,人物検出で実績のあるHOG特徴量を,共起情報を用いて画像パターンを記述する能力を高めた画像特徴量である.HOG特徴量は,各画素の輝度勾配方向からヒストグラムを作成するが,CoHOG特徴量は決まった位置関係にある2点の輝度勾配方向の共起ヒストグラムを用いる(図3参照).これによって,物体輪郭の曲率情報を扱うことが可能となり,記述能力が向上する. CoHOG特徴量は,HOG特徴量と同様に,まず画素毎に量子化された輝度勾配方向を計算し,候補領域をブロックに分割する.続いて,一定の距離範囲内の2画素について,輝度勾配方向の組み合わせが起きる頻度を各ブロックで算出し,共起(2次元)ヒストグラムを作成する.すべてのブロックの共起ヒストグラムと,HOG特徴量を連結したベクトルがCoHOG特徴量である.図3の場合,1点の輝度勾配方向は8通りのため共起ヒストグラムのビン数は8×8=64,画素の組合せ,すなわち共起ヒストグラムは1ブロックあたり30,HOG特徴量が8次元,ブロック数が3×6=18なので,CoHOG特徴量は(64×30+8)×18=34,704次元となる.図3下部のグラフは歩行者検出性能で,正検出率90%での誤検出率は,HOGと比較して約半分になっている.

Euro NCAPでは,2018年から夜間の歩行者に対する自動緊急ブレーキの性能が評価される予定である.夜間画像では日中よりも情報量が減少し歩行者検出精度が低下する.そのため,より多くの情報量を持った画像特徴量が求められる.そこで,カラー複合共起特徴量[16]と総称する新たな画像特徴量を開発した.これは従来の白黒画像ではなくカラー画像を用い,色の分布や相対的な変化,テクスチャ情報を特徴量化したもので,異なる四つの算出手法で特徴量ベクトルを求める.その1つであるColor CoHOGでは,CoHOG特徴量と同様の共起ヒストグラムを算出するが,図4のように,画素のペアに対し,色が類似している場合と,色が異なる場合で別の共起ヒストグラムを用いる点が異なる.これにより,Color CoHOG特徴量は形状やテクスチャだけでなく,色の相対的な変化も含めた画像の特徴を表現できる.また,別の特徴量算出手法である色ヒストグラムでは,色情報そのものを特徴量にしており,各画素の色を量子化して17ビンのヒストグラムを求める.さらにヒストグラム中の2つの頻度値のすべての組み合わせの積も特量ベクトルに加え,情報量を増やしている.このように,色の分布や相対的な変化,形状やテクスチャ情報を組み合わせて,多面的に画像の特徴を表現できるようにしている.

カラー複合共起特徴量を用いて,夜間画像に対し歩行者検出を行った結果と,従来のCoHOG特徴量との認識性能比較結果を図4に示す.カラー複合共起特徴量により,従来よりも特徴量に含まれる情報量が増えたことで認識性能が向上し,見逃し率10%での過検出が1/3.4に減少し約1.5%,見逃し率20%では過検出が約0.5%となった.

図4
図4 複合共起特徴量(上段:ColorCoHOG の処理,下段:夜間の検出性能と検出例)

2.2 三次元再構成による障害物検出

パターン認識手法は大量の学習サンプルを用いて検出対象特有のパターンを学習する必要があるため,路上の落下物など,対象の見た目に規則性がない対象の検出には適さない.そこで,自車両周辺の三次元的な形状の情報から障害物を検出するというアプローチを採用する.三次元情報を使って,路面から一定以上の高さの物体を検出し,障害物とする.三次元情報を得る手法として,ステレオカメラによる視差画像,LIDARなど距離センサを使う方法などがある.東芝では簡易な装置構成で距離データを取得する手法として,単眼カメラの時系列画像を用いる独自の三次元再構成手法を開発した.

三次元再構成技術の原理を図5に示す.画像からコーナー点等の特徴点を抽出し,その周辺の画像パターンと類似度が高い特徴点を,異なる時刻の画像から探索することで,画像上の動きを計算する.多数の特徴点の画像上の動きから,カメラの三次元的な運動を推定する.このとき,隣接する2つのフレームの特徴点の動きからカメラ運動推定を続けると,2フレーム間で発生した誤差の累積により精度が低下していく.そこで,3フレーム以上の特徴点照合の結果から運動推定を補正するバンドル調整[17]と呼ばれる処理により,カメラ運動の推定精度を向上させている.

図5
図5 三次元再構成の処理(上)と障害物検出結果(下:障害物として検出された点から地面への線分で障害物を表示,赤は近い障害物を示す)

カメラの三次元的な運動を推定できれば,三角測量の原理で奥行き距離を求められる.画像中の奥行き距離を測定したい位置に測定点を配置し,異なる時刻の画像間で,測定点周辺の画像パターンと類似度が高い位置を探索し位置の違い(視差)を求める.原理上,2フレーム間の視差から奥行は推定できるが,距離の精度を向上させるため,複数のフレームを用いてもっともらしい視差を推定する.複数のフレーム間で画像パターンの類似度が高い位置を探索する場合,探索空間内の類似度分布をそのまま保持する(ノンパラメトリック)とメモリ量が莫大になってしまう.そこで,類似度分布の形状を特定の関数で近似し,そのパラメータを保持する(パラメトリック)ことで,必要メモリ量を大幅に削減している[18].

以上で時系列画像から画像中の奥行き距離分布を求めることができる.結果として得られた三次元点群から平面フィッティングで路面を求め,路面から一定以上の高さのある領域を求めて障害物検出を行った結果を図5に示す.事前のサンプルの収集が難しい建造物や樹木が検出できている.以上の手法では,画像中に背景静止物以外の移動物は少ないと仮定しており,静止障害物のみを検出できる.他車両等の移動体はパターン認識等の別の手段で検出する.

3.車載向けプロセッサへの実装

車載カメラ向けの画像認識プロセッサは,第2章で述べたような計算量の多い画像認識アルゴリズムをリアルタイム実行できる処理性能の高さに加え,高温環境下でも動作させるために放熱処理の問題があり,低消費電力での動作を求められる.各社から車載向けのプロセッサ[19],[20],[21]が製品化されているが,処理性能と低消費電力を高いレベルでバランスさせることが課題となっている.

3.1 車載向け画像認識プロセッサ

東芝では,このような用途に適した画像認識プロセッサとして,Viscontiファミリ[10]を開発している(図6).汎用プロセッサで採用されているような,SIMD (Single Instruction Stream, Multiple Data Stream)命令によるデータ並列処理,VLIW (Very Long Instruction Word)による命令並列処理,マルチコアによるスレッド並列処理といった工夫だけでは,上記の課題を解決するには不十分であるため,Viscontiファミリでは,車載向けの画像認識で頻繁に用いられる演算量が多い処理要素を画像処理アクセラレータとしてハードウェア実装することで,車載応用としての汎用性を保ちつつ,高い処理性能を低消費電力で実現した.

図6
図6 Viscontiファミリーの機能ブロック図

2011年に開発されたVisconti2 [22]は,メディア処理を得意とする4つのMedia Processing Engine (MPE)を搭載し,各コアで64ビットSIMD命令を2つ並列実行できるコプロセッサImage recognition VLIW Coprocessor (IVC) 2を搭載している.画像処理アクセラレータとして,任意の画像変換を行うAffine Transform,ヒストグラムを生成するHistogram,HOG/CoHOG特徴量計算とSVMによる識別を行うHOG,画素の輝度値の差の絶対値和(Sum of absolute difference; SAD)による対応点探索を行うMatching,任意の局所画像演算を行うFilterアクセラレータの5種類が搭載されており,これらを用いて画像認識の各種アルゴリズムを高速に処理することが可能となっている.これらの画像処理アクセラレータを用いた実際の応用ソフトウェアの実装については,次節で述べる.

Visconti3は,さらに汎用処理コアとしてDual CPUのARMコア(Cortex-A9 MPCore)を搭載している.

最新のVisconti4[23]は,新たな画像処理アクセラレータとして,Enhanced CoHOG,Structure from Motion (SfM),Pyramidアクセラレータを搭載している.Enhanced CoHOGアクセラレータによって2.1節のカラー複合共起特徴量によるパターン認識処理を高速に計算できる.SfMアクセラレータは,2.2節の三次元再構成をリアルタイム処理するために搭載されている.これらの機能強化により,Visconti4はパターン認識性能を従来製品から2倍に向上させ,三次元再構成機能によって検出対象を拡大している.また,従来製品で使用頻度が高かった多段階の画像縮小を行うピラミッド画像を生成するためのPyramidアクセラレータを新たに追加している.汎用コアや他の画像処理アクセラレータについても,個数の追加や機能追加を行うことで演算性能の向上させている.MPEのクロック周波数を266MHzに抑えて消費電力を低減し,高い演算能力やデータアクセス性能が必要な処理はアクセラレータで処理することで,最大1.9 TOPS (Tera Operations Per Second)という高い処理性能を3.4W(MPEと画像処理アクセラレータのフル稼働時の合計)という低消費電力で実現している.

   

3.2 ソフトウェア実装最適化

運転の支援や自動化のための画像認識アプリケーションは,高いリアルタイム性が要求される.たとえば,自動緊急ブレーキの機能では,自車両の走行軌道上の障害物の検知にかかる時間が長くなると,空走距離が長くなり,衝突回避が難しくなる.そのため,第2章で述べたようなアルゴリズムを,Viscontiファミリに実装して実用的な機能とするには,高いリアルタイム性が必要となる.ここでは,図2のようなステレオカメラを用いた歩行者検出処理[24]を例にして,Visconti2で画像認識アルゴリズムをリアルタイム動作させるための実装手法について述べる.

図2の歩行者検出処理は,後退時に人や障害物の存在をドライバーに警告する機能を実現することを目的としている.試作に用いたバックガイドモニタ用カメラは,超広角レンズを用いたアナログNTSCカメラである.このようなカメラの場合,インターレース信号による偶数行走査線と奇数行の位置ずれや,レンズ歪みによる画像周辺部の湾曲が問題となる.そこで,ステレオ画像を入力した後,画像の補正処理として奇数行画素をその上下の偶数行画素の平均値で置き換えるインターレース除去処理と,あらかじめ作成しておいた歪み補正を行うための画像変形テーブルを用いた歪み除去処理を行う.

図2の歩行者検出処理は,後退時に人や障害物の存在をドライバーに警告する機能を実現することを目的としている.試作に用いたバックガイドモニタ用カメラは,超広角レンズを用いたアナログNTSCカメラである.このようなカメラの場合,インターレース信号による偶数行走査線と奇数行の位置ずれや,レンズ歪みによる画像周辺部の湾曲が問題となる.そこで,ステレオ画像を入力した後,画像の補正処理として奇数行画素をその上下の偶数行画素の平均値で置き換えるインターレース除去処理と,あらかじめ作成しておいた歪み補正を行うための画像変形テーブルを用いた歪み除去処理を行う.

ステレオ視差計算のために,左右のカメラの各走査線が三次元空間中の同じ高さとなるように,あらかじめ求めておいたカメラのキャリブレーション情報を用いて平行化の処理を行う.また,2つのカメラの特性の違いにより,同じ物体でも輝度が異なる場合があるので,注目画素の周辺4×4画素の平均値を,注目画素の画素値から引くことにより画像の直流成分を除去し,カメラ間の明るさの差を軽減する.以上でステレオ視差計算に必要な画像の補正処理ができているので, SADを用いた対応点探索によって,視差を求める.

次に,得られた視差画像から歩行者の候補領域を求める障害物検出処理を行う.歩行者は,地面に対してほぼ垂直に立っていると仮定し,平均的な歩行者の大きさの矩形領域として候補領域を抽出する.

最後に,各候補領域に対してCoHOG特徴量を計算し,あらかじめ学習しておいた線形SVM識別器によって歩行者か否かを識別する.歩行者はカメラからの距離に応じて画像中で様々な大きさに映るので,候補領域画像をCoHOG特徴の計算を行う一定サイズの画像に縮小処理してから特徴量を計算する.

以上の処理を,Visconti2の汎用コアであるMPEのみを使って,最適化を行わない状態で実行すると,1フレームあたり1,120msの実行時間がかかる(表1参照).プロセッサの各種計算資源を使った実装最適化は,高速化を行うための効果と労力を考慮して,次の順に行う.

表1 実装最適化の効果
表1

1. 演算量の多い処理をアクセラレータに割り当てる.

2. 依存関係がない処理を並列実行できるように,処理スケジュールをを変更する.

3. メモリアクセスを最適化する.

4. データを分割してパイプライン処理する.

5. アクセラレータ,SIMD命令,VLIW命令が使えるようにアルゴリズムを変更する.

以下では,Visconti2の各種計算資源を使った実装最適化について説明する.

まず,表2のように演算量が多い処理を画像処理アクセラレータに割り当てる.インターレース除去,輝度正規化,縮小画像生成,輝度勾配方向は,局所処理のためFilterアクセラレータで処理する.レンズ歪み補正とステレオ画像の平行化処理は,連続する画像の変形処理のため,1つの変形テーブルにまとめてAffine Transformアクセラレータを用いる.候補領域生成については,適当な画像処理アクセラレータがないためMPEを用いる.これらの処理の計算資源割り当てを単純に行って,順に直列処理した場合の処理時間は,表2に示すように45msであった.計算資源が並列動作している部分がなく,ビデオレートである33msを大きく上回る処理時間となっている.次に,依存関係のない処理を並列実行することで42msとなり,キャッシュヒット率向上の最適化,Working RAM・DMA等の利用によるメモリアクセスの隠蔽により33msとなる.さらに,処理するデータを分割して,分割された一部データの処理Aが終わったら次の処理Bを開始し,別の部分のデータの処理Aと並列動作させるパイプライン処理により並列度を向上させた結果,29msとなり,ビデオレート以下での実行が可能となった.この例では,ここでビデオレートを超えたため,SIMD命令やVLIW命令を用いた更なる高速化は行わなかった.

表2 歩行者検出の処理の割合
表2

4.おわりに

本稿では,自動車の運転支援や自動化において重要な役割を果たす,カメラ映像による自車両周辺の認識技術について述べた.独自の画像認識アルゴリズムとして,パターン認識によって特定の物体を高精度に検出するための画像特徴量CoHOG,CoHLBP,さらに夜間にも対応できるカラー複合共起特徴量について述べた.また,パターン認識では対応できない見た目の規則性がない障害物を検出するため,三次元再構成により静止障害物を検出するアルゴリズムについて述べた.これらのアルゴリズムを車載環境でリアルタイム実行するため,画像認識プロセッサViscontiファミリでのハードウェアとソフトウェアの切り分けについて説明した.また,ステレオカメラによる歩行者検出の事例を用いて,Visconti2へのアルゴリズム実装最適化について述べた.

今後,自動運転に向けて自車両の全周囲を遠方まで,障害物を見逃すことなく認識することが求められる.LIDAR等の別のセンサが普及することも予想されるが,カメラも高解像度化,広ダイナミックレンジ化,低照度時高感度化等の機能向上が進み,重要なセンサであり続けると考えられる.自動運転の実用化に向けて,画像認識のソフトウェアとハードウェアの両面から貢献していきたい.

参考文献
岡田 隆三(非会員)ryuzo.okada@toshiba.co.jp

1999年(株)東芝入社.研究開発センターにて,車載画像認識,映像監視を中心にコンピュータビジョン技術,システムの研究開発に従事.1999年大阪大学大学院工学研究科博士課程修了.博士(工学).2006年~2008年カリフォルニア大学ロサンゼルス校客員研究員.

田辺 淳(非会員)jun.tanabe@toshiba.co.jp

2000年(株)東芝入社.組み込みプロセッサコア開発,マルチメディアSoC開発,マルチコア・メニーコアプロセッサの研究・開発に従事.2000年慶應義塾大学大学院理工学研究科修士課程修了.

伴野 守保(非会員)moriyasu.banno@toshiba.co.jp

1983年東京芝浦電気(株)(現(株)東芝)入社.(株)東芝ストレージ&デバイスソリューション社にて,車載・産業用画像認識のLSI企画・開発及びミドルウェア企画・開発に従事.1983年大阪工業大学卒.

採録決定:2017年1月17日
編集担当:冨士 仁(日本電信電話(株))