AI経路認識と自己位置推定技術で実現へ ──SUBARUが挑む自動運転システムの開発舞台裏

イベント 公開日:
ブックマーク
AI経路認識と自己位置推定技術で実現へ ──SUBARUが挑む自動運転システムの開発舞台裏
高速道路では実用化が進んでいるが、一般道路ではまだ実現に至っていない自動運転。高速道路に比べ、自動運転の基本である「目標経路」を定めることが容易ではないからだ。SUBARUでは、カメラによるAI経路認識と、高精度地図システムの自己位置推定技術を活用して一般道路での課題の研究に取り組んでいる。今回のセッションでは、自動運転AIを中心とした研究開発の拠点である「SUBARU Lab」が、研究開発の現状や取り組みを語ってくれた。

アーカイブ動画

一般道に向けた経路認識の課題に対し、AIを用いて取り組む

田村様
株式会社SUBARU
技術本部 ADAS開発部 AI R&D課 田村 悠一郎氏

最初に登壇したのは、SUBARUが渋谷に構えるエンジニアリングラボ「SUBARU Lab」で、運転支援システム「アイサイト」の開発業務に従事する田村悠一郎氏だ。中でも自動運転の重要機能の1つであるレーンキープ、経路認識、主に白線の認識に関するAI開発に携わっている。

アイサイトの研究開発が始まったのは、今から34年前の1989年まで遡る。最新版はアイサイトX。衝突防止のために自動でブレーキが作動するなど、一般道路でも実用化されている機能も多い。

1-1

一方で自動運転においては、一般道路では使えるレベルの機能には至っていない。経路がシンプルな高速道路に比べ、交差点や駐車車両、白線がない・途切れているといった多種多様なシーンがあちらこちらにあるからだ。

自動運転の実現に向けては、高度なシステムを組む必要がある。一例として、以下のアーキテクチャが紹介された。

「カメラが認識するコンテンツも多種多様になり、加えてHD Mapの活用を進め、Map上のどこを車が走っているのかを特定する自己位置推定技術に関しても開発を進めている。その上で今回は、カメラでAIを用いて経路を認識しステアリング機構を制御する自動運転の操舵制御(レーンキープ)に関して紹介します。」(田村氏)

1-2

操舵制御を成立させるために必要な基本的な物理量は、大きく2つある。1つは、直線や曲線などの「道路形状」。もう1つは「経路と車両の相対量」だ。

操舵制御は、車両の旋回曲率を示す「道路曲率」と車が向かっていく角度と車線の角度の差分(ずれ)を示した「対車線ヨー角」、車が車線の中央からどれくらい端に寄っているかを示す「対車線横位置」。この3つの値が操舵制御を成立させるために必要な最も基本的な物理値であり、それを制御に送ることでレーンキープを実現している。

1-3

これまでのアプローチでは、まず道路上の白線をカメラが認識するにあたり画像にフィルターをかけ車線のエッジを強調し、車線の候補点として抽出。それらを実空間に投影し経路を特定していた。高速道路であれば、この手法で問題ない。だが、一般道路では白線が定かではないシーンなどさまざまなシチュエーションに遭遇する。

そこでSUBARUでは、ディープラーニングによるアプローチを採用する。NVIDIAが2016年に論文で発表した、直接ハンドル角を推論する手法、画像上の経路を推論して視差(距離)を元に実空間へ投影する手法などを参考にしながら、ベストな手法を模索していった。

今回のトライアルでは、AIから直接、実空間上の経路を推定するアプローチとした。モデルに関しては現在画像に加え、過去の画像を用意し、CNN(Convolutional Neural Network/畳み込みニューラルネットワーク)やLSTM(Long Short Term Memory)といった複層で処理アーキテクチャで、経路を推論することとした。

従来のアイサイトでは認識が難しかった側溝のフチ、縁石、ガードレールといった対象物もアノテーションを施すことで、経路の対象物として扱う。つまり大量のデータを集め学習することで、経路を導きだすアプローチとしたのである。

1-4

一般道に関して、ある程度のデータ数を集めAIモデルの学習を進め、様々なシーンでの推論の評価をしていくと、交差点、右折レーン、濡れた路面で白線が見づらいシーンなども含め、それなりに経路の推論が成立したとのこと。

一方で、ある程度の性能が達成できたからといってAIの推論経路をそのまま製品化に向けて採用していいかというとそこには問題があるのではないかという考えもあったという。

「これまでのアイサイトの認識開発では、実際に道路に出てドライバーと同じ目線で車を走らせ、リアルワールドの多種多様な課題を見つけ出し、1つ1つ解決していくアプローチを取っていたからです。AIの経路開発においても、漠然と既定の評価データに対して性能が高い・低いだけでなく、1つ1つの課題を対策することができるのか?という点を意識しながら進めました」(田村氏)

1-5

経路推論を各シーンで実施、雪道は一筋縄ではいかなかった

例えば、交差点においてはアノテーターごとに経路のバラつきが生じるため、精度が上がらない問題があることが分かった。仮に経路が推論できたとしても、設定した経路がドライバーにとって違和感がないか?という問題点もある。滑らかで横Gがかからない経路の引き方もあれば、より道路形状を正確に表現する引き方もある。これらは、最終的な商品に落とし込むところまで一意に決定することが難しい問題もある。

そこでアノテーションの段階においては、白線のない交差点内に関して経路を引くことをやめることとした。手作業で経路を決定するのではなく、後から交差点の前後の白線位置から近似式を当てることで、自動的に経路が生成される手法を選択したのである。こうすることで、交差点内の経路は、手間のかかるアノテーション作業から切り離され、自動で何度でも学習をかける前に変更できるように工夫した。

1-6

続いては、夜に雨が降っているシチュエーションだ。白線が見えづらくなるため、推論性能が落ちてしまうという課題があった。だが、夜雨シーンはそう多くないため、実データを多く取得することは難しかった。

そこでモーションブラー処理を使い、夜雨の画像に近いデータを作成することとした。雨でなく夜間のデータというだけであれば、過去に蓄積したデータが沢山存在する。そこで、これまでアイサイトの開発で培ってきた大量のデータを活用することで、十分な量の学習データを用意することができた。

1-7

白線(経路)の付近に、日陰と日向の境目が来るようなシーンでも推論性能が悪化するという問題があった。こちらも走行試験を実施しても太陽光や道路条件によって簡単にデータを集めることが難しく、画像の一部分の輝度を落とすなどのData Augmentation(以下、DA)処理を施すことで学習データを生成した。

最後に事例紹介されたのが雪道だ。雪道に関しては路面が雪に覆われておりドライバーが走るであろう経路を一意に定義することが難しい問題がある。検討を重ねた結果、これまでのアプローチとは異なる手法で挑む。左右の車線を定義するのではなく、熟練ドライバーが辿った軌跡を経路としてAIの出力に活用する手法だ。

「車両の軌跡を計算すること自体は難しくない」と田村氏。計算を行い、画像に対してそのシーンでドライバーが実際に走行した経路を実空間上に射影し、それを正解に学習を行った。結果、机上ではおおむねAIの推論が走行経路を表現できることがわかったが、実際にこの推論をもとに車両制御を実施すると、ひとたび車両が車線の端に寄ってしまうと、そこから車線の中央に戻れず、うまくいかなかった。

その原因は、車両軌跡は車の中心を通るため、制御に必要な物理量として、対車線ヨー角、対車線横位置といった物理量が0になってしまう問題からだった。例えば、車両が道路の端を走行したデータに対して推論した結果、目標の経路は車両がいる位置よりももっと道路中心寄りにあるべきだが、車両軌跡を正解にしてしまうとそうはならず、車両がいる位置が正解になってしまうということである。そこで車線の中央を走行している画像を、あたかも車両が左端、右端に寄って撮像したかのように加工することを考えた。

1-8

このアプローチは、射影変換という手法である。撮像された画像を、カメラの位置や向きを変え視点変換した画像を作り出す手法で、距離画像を用いた画像上の座標変換により生成される。
「射影変換のための距離画像は、ステレオカメラの情報を利用しつつAIも活用して生成した。」(田村氏)。

このようなDAにより大量の画像を生成し、AIモデルに学習させることで推論の性能を高めた結果、実車試験でも左右どちらか端に寄ることはなく、中央を走ることが確認できた。

「実車に実装した動作確認も行ったところ、熟練ドライバーのようにスムーズな走りではありませんが、経路を推論して自律で操舵を制御することが確認できました」(田村氏)

1-9

ドライバーにとって最適な車両挙動を実現することが最大の目的

田村氏は改めてSUBARU Labが取り組んでいる自動運転、AI開発のサイクルや組織の特徴を紹介した。中でも重要なのが「実現する車両挙動は、お客様にとって本当に嬉しいのか」の内容だ。AIが推論した挙動がドライバーにとって本当に望むものなのか、何度も繰り返し強調した。

「AIが推論した経路が本当に快適かどうかは、開発エンジニアがドライバーの気持ちになって、感じることが大切です。その目的に対してどのようなデータセットやモデルを使うのか、我々がしっかりと学び最適なものを選択する。その上で開発サイクルのインフラを構築することが、重要だと考えています」(田村氏)

1-10

AI開発を進める上で開発サイクルは重要だ。その中で速度と効率をいかに上げていくかという観点で各工程に自動化オペレーションを導入しつつある。一方で、車両挙動や正解の経路の良し悪し、モデルやデータセット、データ集めをどのように実施するかは、エンジニアの知見や想像力が大事だという。SUBARU Labは少数精鋭チームのため、各領域の研究者が担当領域だけに固執することなく、あらゆる工程の業務を視野に入れて、車の制御挙動を良くするという目的のために、チーム一丸となって進めていることも特徴だと語った。

続いては、一般道路における加減速制御の課題についてだ。カーブに入る際に自動で減速制御を行うには、遠方の曲率をAIが推論して、制御を行う必要がある。しかし操舵制御と比べ、加減速制御は認識した結果を車両挙動に反映するまでの応答が速くないため、かなりの遠方を認識する必要がある。

一方で、遠方の道路状況は左に曲がるのか、右に曲がるのかの判別が難しい。峠などは、左右が草木に覆われて状況を把握することが困難なシーンも多く、推論精度が上がらないのが実情であり、課題だという。大型トラックが前を走っている状況なども同様だ。

その結果、カーブに入ってからあわてて減速する状況となっており、快適でスムーズな自動運転が実現できないという課題があるのだ。

1-11

そこで検討しているのが、高精度3次元地図データ「HD Map」の活用だ。高速道路限定になるが、新型車両に搭載されたアイサイトXではすでに採用されている。ただし高速道路と比べれば、はるかに高精度で情報量の多いマップが必要であることは言うまでもない。

ここでも前述の開発サイクルに則り、実車を走らせて検証していった。すると高層ビル群に囲まれた渋谷エリアで検証したこともあり、GPSの精度がばらつき、HD Mapの示したレーンと実際の白線がずれていることが確認できた。

このようなズレを最小化するためには、誤差関数の最適化問題をアカデミックなアプローチで解く必要があるが、詳細については後述する。

「画像から経路を推論するアプローチでは、オクルージョン(遮蔽)がボトルネックとなります。その解決策となるのがHD Mapであり、マップ上に高精度に車をプロットすることが、これから重要なテクノロジーになると考えています」(田村氏)

1-12

マップマッチング・ローカリゼーション技術とその応用・課題

小甲様

株式会社SUBARU
技術本部 ADAS開発部 AI R&D課 小甲 啓隆氏

続いては、SUBARU Labの小甲氏が登壇。HD Mapに車を高精度にプロットするアプローチ「マップマッチング技術」について紹介した。

マップマッチング技術とは、走行経路や認識結果と地図をマッチングする技術であり、まさに先ほど田村氏が説明したように、自車が地図上のどこにいるかを特定するための技術である。3つの要素技術から構成され、それぞれに課題があるという。

例えば要素3のローカリゼーションでは、処理時間は要するが精度が高いアルゴリズムを採用するのか。処理時間は短いけれど、精度がそれほど高くないものを使用するのか、といった課題だ。

2-1

マップマッチングは3ステップで進める。まずはGPS情報を使い、大雑把な部分地図を取得する。いわゆる世界地図は情報量が多いため、ハードウェアなどの性能をオーバーしてしまうからだ。GPS情報は、数mから数十mもの誤差があるという。

次に車に搭載したカメラから得た認識結果や走行軌跡情報を取得し、ローカル地図のようなものを作成する。これらの地図を重ね合わせることで、正確な位置をプロットしていく。

2-2

ここからはまさにアカデミックなアプローチとなる。ステップ3のローカリゼーションにおいて、どのような流れやアルゴリズムを使って行っているのかを紹介した。

以下スライドの左画像がGPSから得た部分地図の情報。右がアイサイトから得た認識結果の情報だ。HD Mapは3Dとのイメージだが、ローカリゼーションにおいては2次元の鳥瞰図で行う。

「マップを見ると標識が2つ、信号が1つ、道路の端、レーンなどの情報が示されていることが分かると思います。なおレーンとは白線ではなく、車が走る中央の走行車線を示します。GPS情報はサードパーティから購入しますが、右側の認識画像は自車から得たものとなります」(小甲氏)

2-3

数学的な表現をすれば、ローカリゼーションは2次元上の自己位置(x,y)と向き(θ)と3つのパラメータを求める問題と置き換えることができる。

そこで基本方針として、エネルギー最小化問題(最適化問題)と定型化。繰り返し法に基づく非線形最適化手法を用い、先述2つの地図上の3つの対象物の誤差を最小化する誤差関数として解いていく。

誤差関数が最小化となる(x,y,θ)の組を求める問題とも言い変えられ、同問題を解く方法は多数あるそうだ。その中から本セッションでは、繰り返し法の1つであるガウス・ニュートン法を使った手法を、具体的な計算の流れとともに紹介した。

2-4

ガウス・ニュートン法を用いてマッチングの誤差を最小化する

以下スライドの式1を見ると、パラメータVは(x,y,θ)の3つからなり、式.1の更新式により繰り返し計算することで収束していく。式1を計算するためには、r(Vt)とJの計算方法が判れば、計算できることがわかる。なおVtは現在のパラメータの組のこと。

2-5

r(Vt)はパラメータVtを用いて残差をベクトル化したものであり、正確にはスライドで示したように、6次元のベクトルになるという。

2-6

一方、Jはヤコビ行列と呼ばれるものであり、残差r(Vt)の偏微分結果を縦に並べたものとなり、今回の例では6行3列の行列になる。

2-7

ヤコビ行列の計算は列ごとに、それぞれの偏微分を計算していく流れで進める。その結果、ヤコビ行列Jが求められることになる。通常自力で式を偏微分して求めるが、微分不可能な場合もあるため、ここでは汎用的に使用できる数値微分を紹介した。

2-8

これらの計算の結果、パラメータVを収束することができた。ただし初期解V(0)次第では収束に何回も計算が必要であったり、場合によっては局所解に収束してしまうケースがあるという。

そのためセオリーとしては、なるべく大局解に近いとこから初期解を設定することがポイントだ。またガウス・ニュートン法の弱点として、うまく収束せず発散するようなケースもある。そのため派生法である、レーベンバーグマルカート法が用いられることもあるという。

小甲氏は、ガウス・ニュートン法を用いたローカリゼーション成果も紹介した。残差r(Vt)の二乗和が減っていることが確認できる。ittは計算の繰り返し回数を示したものであり、今回のアプローチでは4回で収束したことが分かる。マッチングパラメータが(x,y,θ)と3つしかないためであり、増えれば当然計算回数も同じく増える。

一方で、現在の精度はまだ不十分であること。精度を高めるためには、地図と検出した物体のマッチング精度がすべてである。

実装における課題も同様であり、精度を高めるためには、今回は使用しなかった白線情報を使用したり、残差ベクトルの作り方を工夫する必要がある。

また、何らかの理由により実際には物体があり、アイサイトでも確認しているのに、地図情報ではないといったケースも少なくないという。さらにはアセットが限られているため、プログラムの高速化なども考慮する必要がある。

「ガウス・ニュートン法をはじめとした要素技術を、SUBARUではすべて内製化しています。そのためカメラのズレなどを検出して補正する自動調整、評価開発などに活用できるCGモデルの生成などにも活用しています」(小甲氏)

1-10

【Q&A】参加者からの質問に登壇者が回答

セッション後は、参加者からの質問に登壇者が回答した。いくつか紹介したい。

Q.学習・推論で使われる画像はステレオか

右画像のみです。AIを複雑にすると性能は上がりますが、ハードウェアのコストになるからです。今後は変わる可能性はありますが、最小のコストで最大の成果を出すことを心がけています。

Q.雪道走行では経路設定よりも実際の走行の方が難しいのではないか

雪路面ではハンドリングの問題も生じますから、タイヤからの摩擦力などを考慮することで、ある程度は人間のような自動運転を実現しています。

Q.車両挙動はドライバーの運転の癖や好みなど、自動で調整されているのか

現時点ではしていません。エキスパートと免許取り立てのドライバーでは異なりますから、検討している段階です。

Q.雨・雪・霜などでカメラが覆われると精度は下がるか。また、太陽光や対向車のヘッドライトの影響はあるか

真っ白になってしまった場合は、システムを停止する機能を実装しています。対向車のヘッドライトに関しては白線に見えるシーンもあるため、改めてそのシーンの画像を集めて修正しました。

Q.雪道の経路推論で紹介した手法は他の路面でも使っていないのか

今回のトライアルでは使用していませんが、実際は使っています。例えば、ドライバーが走りたい経路で進むと壁に衝突するようなケースです。

Q.マップマッチングにより目標パスが急変し、急操舵となることはないのか

地図と認識の使い分けは、非常に難しい問題だと捉えています。考え方としては地図情報をそのまま制御に使うアプローチはしない方向で、開発を進めています。

Q.セグメンテーションはアノテーターによる手作業なのか

基本的には自動でセグメンテーションすることを目指しています。CGの作成も同様です。ただしうまくセグメンテーションできない場合もありますので、多少の手作業による修正は加えています。

Q.ローカリゼーションのマッチングで高さ情報は使っていないのか

内部的には使っています。看板や標識、信号、ポールなど。明らかに異なるとマッチングに影響するからです。一方で複数の高さ情報が重なるとマッチングするとの課題もあるため、どのようにリジェクトするか、時系列でチェックしています。

Q.マップマッチングで車速や加速度といった情報は使っていないのか

使っています。ただし、1フレームでマップマッチングするようなことはしていません。ある程度の時系列で情報を溜め、その中で整合性を取るようなアプローチとしています。

Q.トンネル内などデッドレコニングでの自己位置推定はどのように行っているのか

認識画像の検出や車速などを活用して行っています。カーナビ同様、トンネルを入出する際に情報を合わせるようなアプローチをしています。 ただ長いトンネルの出口では、しっかり合わないこともあります。誤差がそれほど大きくなければ、特に注力することはありません。一方で停止線などのシーンなど、本当に必要なシーンを作り込むことを意識しています。

Q.高速道路下などGPSの情報がズレている際の対応は?

都市部ではGPSの感度がよくないエリアがあり、実際ズレが生じるケースもあります。GPSにはアンテナ感度など信頼度情報を入手することができるので、その情報を元に判断しています。

Q.標識や信号機が移設された場合の対応は?

よく起きる問題で、我々は地図の鮮度問題と呼んでいます。対策としては対象物がない判断を行い、ローカリゼーションするアルゴリズム等を使用しています。

株式会社SUBARU
https://www.subaru.co.jp/
株式会社SUBARUの採用情報
https://www.subaru.co.jp/recruit/

グループにあなたのことを伝えて、面談の申し込みをしましょう。

テクノロジーと共に成長しよう、
活躍しよう。

TECH PLAYに登録すると、
スキルアップやキャリアアップのための
情報がもっと簡単に見つけられます。

面白そうなイベントを見つけたら
積極的に参加してみましょう。
ログインはこちら

タグからイベントをさがす