(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-12
(45)【発行日】2022-02-10
(54)【発明の名称】オプティカルフロー推定装置、オプティカルフロー推定方法、オプティカルフロー推定システム、及びオプティカルフロー推定プログラム、並びにヨーレート推定装置、ヨーレート推定方法、ヨーレート推定システム、及びヨーレート推定プログラム
(51)【国際特許分類】
G06T 7/254 20170101AFI20220203BHJP
G08G 1/16 20060101ALI20220203BHJP
G06T 7/00 20170101ALI20220203BHJP
【FI】
G06T7/254 A
G08G1/16 C
G06T7/00 650B
(21)【出願番号】P 2018100265
(22)【出願日】2018-05-25
【審査請求日】2020-12-09
(73)【特許権者】
【識別番号】502324066
【氏名又は名称】株式会社デンソーアイティーラボラトリ
(73)【特許権者】
【識別番号】899000079
【氏名又は名称】学校法人慶應義塾
(74)【代理人】
【識別番号】100115808
【氏名又は名称】加藤 真司
(74)【代理人】
【識別番号】100113549
【氏名又は名称】鈴木 守
(74)【代理人】
【識別番号】230121430
【氏名又は名称】安井 友章
(72)【発明者】
【氏名】関川 雄介
(72)【発明者】
【氏名】原 孝介
(72)【発明者】
【氏名】青木 義満
(72)【発明者】
【氏名】長田 惇
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特開2000-168442(JP,A)
【文献】特開2002-197445(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
G08G 1/16
(57)【特許請求の範囲】
【請求項1】
移動体に固定されたカメラからのデータに基づいてオプティカルフローを推定するオプティカルフロー推定装置であって、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、
初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定部と、
初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部と、
を備えた、オプティカルフロー推定装置。
【請求項2】
前記オプティカルフロー正則化部は、初期推定された前記オプティカルフローから前記回転パラメータの回転成分を除いたオプティカルフローとFOEから放射状に延びるオプティカルフローとに基づいて前記修正を行う、請求項1に記載のオプティカルフロー推定装置。
【請求項3】
前記オプティカルフロー正則化部は、初期推定された前記オプティカルフローから前記回転パラメータの回転成分を除いたオプティカルフローとFOEから放射状に延びるオプティカルフローとに基づいて第2のオプティカルフローを求めることにより前記修正を行い、さらに前記第2のオプティカルフローに前記回転成分を戻す、請求項2に記載のオプティカルフロー推定装置。
【請求項4】
前記カメラはイベントカメラであり、前記データはイベントデータである、請求項1~3のいずれかに記載のオプティカルフロー推定装置。
【請求項5】
前記回転パラメータ推定部は、初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する、請求項1~4のいずれかに記載のオプティカルフロー推定装置。
【請求項6】
前記オプティカルフロー正則化部は、オプティカルフローの向きをFOEに従って修正する、請求項1~5のいずれかに記載のオプティカルフロー推定装置。
【請求項7】
前記回転パラメータ推定部は、前記カメラの視野の上部分のイベントデータを用いて前記回転パラメータを推定する、請求項1~6のいずれかに記載のオプティカルフロー推定装置。
【請求項8】
前記回転パラメータ推定部は、ヨーレートに車両の運動モデルを適用して前記回転パラメータを推定する、請求項5に記載のオプティカルフロー推定装置。
【請求項9】
前記回転パラメータ推定部は、ヨーレートをカルマンフィルタ又はパーティクルフィルタにかけることで前記運動モデルを適用する、請求項8に記載のオプティカルフロー推定装置。
【請求項10】
移動体に固定されたカメラからのデータに基づいてオプティカルフローを推定するオプティカルフロー推定方法であって、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定ステップと、
初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定ステップと、
初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化ステップと、
を備えた、オプティカルフロー推定方法。
【請求項11】
移動体に固定され、データを出力するカメラと、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、
初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定部と、
初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部と、
を備えた、オプティカルフロー推定システム。
【請求項12】
移動体に固定されたカメラからのデータが入力される装置にて実行されるオプティカルフロー推定プログラムであって、前記装置を、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部、
初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定部、及び
初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部、
として機能させる、オプティカルフロー推定プログラム。
【請求項13】
移動体に固定されたカメラからのデータに基づいて前記車両のヨーレートを推定するヨーレート推定装置であって、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、
初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定部と、
初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部と、
を備えた、ヨーレート推定装置。
【請求項14】
移動体に固定されたカメラからのデータに基づいて前記車両のヨーレートを推定するヨーレート推定方法であって、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定ステップと、
初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定ステップと、
初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化ステップと、
を含む、ヨーレート推定方法。
【請求項15】
移動体に固定され、データを出力するカメラと、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、
初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定部と、
初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部と、
を備えた、ヨーレート推定システム。
【請求項16】
移動体に固定されたカメラからのデータが入力される装置にて実行されるヨーレート推定プログラムであって、前記装置を、
前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部、
初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定部、及び
初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部、
として機能させる、ヨーレート推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラからのデータに基づいてオプティカルフローを推定するオプティカルフロー推定装置、オプティカルフロー推定方法、オプティカルフロー推定システム、及びオプティカルフロー推定プログラム、並びにそれらを用いたーレート推定装置、ヨーレート推定方法、ヨーレート推定システム、及びヨーレート推定プログラムに関する。
【背景技術】
【0002】
車両の自動運転や運転支援をするシステムでは、車両前方の移動体の検知や自車両の進路推定を行う。このために、システムは、車載カメラの画像から、画素値の移動ベクトルであるオプティカルフローを推定する。車載カメラの画像における静止物体のオプティカルフローを推定することで自車両の進路推定が可能となり、移動物体のオプティカルフローを推定することで移動物体の自車両に対する相対的な移動ベクトルを推定できる。
【0003】
しかしながら、特に、移動体や静止物体が相対的に速い速度で移動する場合や、車載カメラに入射する光量が足りない場合(例えば、暗闇で運転している場合)や、逆に車載カメラに入射する光量が大きすぎる場合(例えば、逆光で運転している場合)には、オプティカルフローを有効に算出できる画像が得られないことがある。
【0004】
上記の問題に鑑みて、車載カメラとして、イベントカメラを採用することが提案されている。従来のカメラが輝度をフレームで取得するのに対して、イベントカメラは、人間の知覚システムを模倣したカメラであり、輝度の変化のみを捉える。イベントカメラの出力は、輝度が所定の閾値以上に変化した場合の時刻、画素の位置、極性(輝度が小さくなったか大きくなったか)を表す非同期のデータ列である。
【0005】
よって、イベントカメラの出力は、従来のカメラの出力と比較して、空間的に非常にスパース(疎)であり、データ量が非常に少ない。また、イベントカメラは、従来のカメラと比較して、時間解像度が非常に高く(例えば、マイクロミリ秒オーダ)、ダイナミックレンジが高いという特性がある。すなわち、イベントカメラは、従来のカメラと比較して、少データ量、高時間解像度、ハイダイナミックレンジ(HDR)という特性を有している。これらの特性は、瞬時ないしリアルタイムに画像処理をして移動体を検知する必要がある車載カメラにとって非常に重要である。
【0006】
非特許文献1には、イベントカメラの出力(イベントデータ)からオプティカルフローを推定する方法が開示されている。非特許文献1の方法では、イベントデータに関するコスト関数を定義して、当該コスト関数を最適化することでオプティカルフローを推定する。
【0007】
この方法では、ある一定の時間幅内のイベントデータのみから輝度とオプティカルフローを同時に推定する。コスト関数は、輝度とオプティカルフローに対してイベントカメラの仕組み、オプティカルフローと輝度との整合性、空間的及び時間的な滑らかさに関する項で構成されている。
【0008】
非特許文献1の方法によって、移動体の動きが速く、かつ、ダイナミックレンジが高いシーンにおいても、瞬時ないしリアルタイムに、輝度の復元及びオプティカルフローの推定が可能となる。
【先行技術文献】
【非特許文献】
【0009】
【文献】P. Bardow, A. J. Davison, and S. Leutenegger. Simultaneous Optical Flow and Intensity Estimation From an Event Camera. The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 884-892, 2016.
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、非特許文献1の方法では、スパースなイベントデータから輝度を復元し、その輝度を用いてオプティカルフローを計算するため、正確なオプティカルフローを得ることは難しく、ノイズも多くなる。輝度は主にイベントが発生した個所において復元され、他の個所は滑らかにすることによって復元されることから、オプティカルフローは正確に正しい方向を向いていないことが多く、より正しい向きを示すオプティカルフローを得るためには改善の余地がある。
【0011】
本発明は、移動体に固定されたカメラで得られたデータに基づくオプティカルフローの推定の精度を向上すること目的とする。
【課題を解決するための手段】
【0012】
本発明の一態様は、移動体に固定されたカメラからのデータに基づいてオプティカルフローを推定するオプティカルフロー推定装置であって、このオプティカルフロー推定装置は、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定部と、初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部とを備えた構成を有している。
【0013】
この構成により、従来の方法によって初期推定されたオプティカルフローがFOEに従うように正則化されるので、オプティカルフロー推定の精度を向上できる。
【0014】
上記のオプティカルフロー推定装置において、前記オプティカルフロー正則化部は、初期推定された前記オプティカルフローから前記回転パラメータの回転成分を除いたオプティカルフローとFOEから放射状に延びるオプティカルフローとに基づいて前記修正を行ってよい。
【0015】
上記のオプティカルフロー推定装置において、前記オプティカルフロー正則化部は、初期推定された前記オプティカルフローから前記回転パラメータの回転成分を除いたオプティカルフローとFOEから放射状に延びるオプティカルフローとに基づいて第2のオプティカルフローを求めることにより前記修正を行い、さらに前記第2のオプティカルフローに前記回転成分を戻してよい。
【0016】
上記のオプティカルフロー推定装置において、前記カメラはイベントカメラであってよく、前記データはイベントデータであってよい。
【0017】
上記のオプティカルフロー推定装置において、前記回転パラメータ推定部は、初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定してよい。
【0018】
上記のオプティカルフロー推定装置において、前記オプティカルフロー正則化部は、オプティカルフローの向きをFOEに従って修正してよい。
【0019】
従来の方法によるオプティカルフローの初期推定では、向きについて誤差が生じやすいところ、この構成によれば、FOEに従ってオプティカルフローの向きが修正されるので、オプティカルフロー推定の精度を向上できる。
【0020】
上記のオプティカルフロー推定装置において、前記回転パラメータ推定部は、前記カメラの視野の上部分のイベントデータを用いて前記回転パラメータを推定してよい。
【0021】
この構成により、ヨーレートの変化が大きい上部分を用いてヨーレートが推定されるので、ヨーレートの推定の精度を向上できる。
【0022】
上記のオプティカルフロー推定装置において、前記回転パラメータ推定部は、ヨーレートに車両の運動モデルを適用して前記回転パラメータを推定してよい。
【0023】
この構成により、車両としてあり得ないヨーレートの変化等を排除することができ、ヨーレートの推定精度を向上できる。
【0024】
上記のオプティカルフロー推定装置において、前記回転パラメータ推定部は、ヨーレートをカルマンフィルタ又はパーティクルフィルタにかけることで前記運動モデルを適用してよい。
【0025】
本発明の他の態様は、移動体に固定されたカメラからのデータに基づいてオプティカルフローを推定するオプティカルフロー推定方法であって、このオプティカルフロー推定方法は、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定ステップと、初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定ステップと、初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化ステップとを備えた構成を有している。
【0026】
本発明のさらに他の態様は、オプティカルフロー推定システムであって、移動体に固定され、データを出力するカメラと、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定部と、初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部とを備えた構成を有している。
【0027】
本発明のさらに他の態様は、移動体に固定されたカメラからのデータが入力される装置にて実行されるオプティカルフロー推定プログラムであって、オプティカルフロー推定プログラムは、前記装置を、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部、初期推定された前記オプティカルフローに基づいて回転パラメータを推定する回転パラメータ推定部、及び初期推定された前記回転パラメータに基づいて、初期推定された前記オプティカルフローをFOEに従うように修正することにより、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部として機能させる構成を有している。
【0028】
本発明のさらに他の態様は、移動体に固定されたカメラからのデータに基づいて前記車両のヨーレートを推定するヨーレート推定装置であって、このヨーレート推定装置は、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定部と、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部とを備えた構成を有している。
【0029】
本発明のさらに他の態様は、移動体に固定されたカメラからのデータに基づいて前記車両のヨーレートを推定するヨーレート推定方法であって、このヨーレート推定方法は、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定ステップと、初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定ステップと、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化ステップとを含む構成を有している。
【0030】
本発明のさらに他の態様は、ヨーレート推定システムであって、このヨーレート推定システムは、移動体に固定され、データを出力するカメラと、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部と、初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定部と、初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部とを備えた構成を有している。
【0031】
本発明のさらに他の態様は、移動体に固定されたカメラからのデータが入力される装置にて実行されるヨーレート推定プログラムであって、このヨーレート推定プログラムは、前記装置を、前記データに基づいてオプティカルフローの初期推定を行うオプティカルフロー初期推定部、初期推定された前記オプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する回転パラメータ推定部、及び初期推定された前記オプティカルフローを正則化するオプティカルフロー正則化部として機能させる構成を有している。
【発明の効果】
【0032】
本発明によれば、従来の方法によって初期推定されたオプティカルフローがFOEに従うように正則化されるので、オプティカルフロー推定の精度を向上できる。
【図面の簡単な説明】
【0033】
【
図1】
図1は、本発明の実施の形態のオプティカルフロー推定システムの構成を示す図である。
【
図3】
図3は、コスト関数を項ごとに図解した図である。
【
図5】
図5は、車載カメラの運動モデルを示す図である。
【
図7】
図7は、視野内においてイベントが発生した個所の例を示す図である。
【
図8】
図8は、回転運動と並進運動を説明する図である。
【
図9】
図9は、FOEによる正則化を説明する図である。
【
図10】
図10は、本発明の実施の形態のオプティカルフロー推定方法のフローチャートである。
【発明を実施するための形態】
【0034】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下に説明する実施の形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施の形態に応じた具体的構成が適宜採用されてよい。
【0035】
本実施の形態のオプティカルフロー推定システムは、イベントカメラで得られたイベントデータに基づいてオプティカルフローを推定するにあたって、イベントデータに基づくオプティカルフロー推定の不完全さを補うために、車載カメラの運動の特徴と、FOE(Focus Of Expansion:拡張焦点)の性質を利用した新規な正則化を行う。従来の方法では、イベントデータから一様な方向を向くオプティカルフローや明らかに誤った方向を向いているオプティカルフローが推定され得るが、本実施の形態のオプティカルフロー推定システムは、オプティカルフローからカメラの回転パラメータを推定し、オプティカルフローの回転成分を考慮してFOEの性質を利用した正則化を行うことで、正しい向きを持つオプティカルフローを推定する。
【0036】
図1は、本発明の実施の形態のオプティカルフロー推定システムの構成を示す図である。オプティカルフロー推定システム100は、イベントカメラ10と、オプティカルフロー推定装置20とを備えている。オプティカルフロー推定装置20は、オプティカルフローを正則化するために回転パラメータであるヨーレートを推定するので、ヨーレート推定装置としても機能し、オプティカルフロー推定システム100はヨーレート推定システムとしても機能する。
【0037】
イベントカメラ10は、その光軸が車両の進行方向に向くように、車両に固定される車載カメラである。イベントカメラ10は、矩形の視野内に車両の直前の路面から遠方の風景までが含まれるように、車両に固定される。なお、車両の直前の路面(車両の前方部分を含んでもよい)は視野の下部分で捉えられ、遠方の物体や高い物体は視野の上部分で捉えられる。
【0038】
イベントカメラ10は、二次元配列された画素ごとに輝度の変化を検知する。すなわち、イベントカメラ10は、生体から発想を得たカメラであって、標準的なフレームベースのカメラとは全く異なるカメラである。フレームベースのカメラでは、ある一定の時間間隔(例えば、約30m秒間隔)で全画素の輝度値をフレーム画像として出力する。
【0039】
これに対して、イベントカメラ10は、フレームという概念を持たず、輝度値が所定の閾値以上に変化したときに、その変化した時刻のタイムスタンプ、変化した画素の位置、変化の極性(正負のいずれに変化したか)の情報を出力する。すなわち、イベントカメラ10の出力は、非同期のデータ列である。
【0040】
イベントカメラ10のタイムスタンプはマイクロ秒のオーダであり、検出可能なイベントの最小時間間隔は12μs程度である。このように、イベントカメラ10は、時間解像度が極めて高いという特性を有している。また、イベントカメラ10では、変化がない時刻及び変化がない画素についてはイベントを発生しないので、イベントデータには冗長なデータがなく、イベントデータのデータ量は小さく抑えられる。
【0041】
さらに、イベントカメラ10は、logのオーダで輝度の変化を捉えるため、ダイナミックレンジが非常に大きいという特性を有する。標準的なフレームベースのカメラのダイナミックレンジが50dB程度であるのに対して、イベントカメラのダイナミックレンジは120dB程度である。
【0042】
このように、イベントカメラ10は、標準的なフレームベースのカメラと比較して、時間解像度が高く、データ量が少なく、ダイナミックレンジが大きいという特性を有している。これらの特性は、車載カメラとして用いられる場合に極めて有効である。しかしながら、イベントカメラ10の出力は、フレームベースのカメラとは出力の形が大きく異なっているため、イベントカメラ10の出力を従来のコンピュータビジョンのアルゴリズムをそのまま適用することはできない。本実施の形態では、イベントカメラの出力からオプティカルフローを推定するが、この場合にもフレームベースのカメラの出力からオプティカルフローを推定する場合とは異なった工夫が必要である。
【0043】
オプティカルフロー推定装置20は、オプティカルフロー初期推定部21と、回転パラメータ推定部22と、オプティカルフロー正則化部23とを備えている。これらの各構成要素は、1つまたは複数のプロセッサが本実施の形態のオプティカルフロー推定プログラムを実行することで実現される。このために、オプティカルフロー推定装置20は、情報処理装置として、1つまたは複数のプロセッサを備える。オプティカルフロー推定プログラムは、オプティカルフロー推定装置20の記憶装置に記憶され、プロセッサによって読み出されて実行されてもよいし、可搬型の記憶媒体に記憶されてプロセッサによって読み出されて実行されてもよい。
【0044】
オプティカルフロー初期推定部21は、非特許文献1の方法に従って、イベントカメラ10の出力に基づいてオプティカルフローを推定する。ここでのオプティカルフローの推定は初期推定であって、後述するように、最終的にはオプティカルフロー正則化部23による正則化によってオプティカルフローが推定される。
【0045】
オプティカルフロー初期推定部21は、所定の時間幅のタイムウィンドウを定義して、タイムウィンドウ内で、輝度とオプティカルフローとイベントとの関係について設計されたコスト関数を最適化することで、イベントデータのみから輝度とオプティカルフローとを同時に推定する。
【0046】
この方法により、イベントカメラが車両に搭載される場合のような、イベントカメラと対象物の両方が動いている複雑な環境において、リアルタイムでオプティカルフローを推定することができる。
【0047】
図2は、本発明の実施の形態のタイムウィンドウを示す図である。タイムウィンドウの空間的なサイズをIとし、全時間幅をTとし、全時間幅Tを、δ
tの幅をもつK個のセルに分ける。コスト関数は式(1)のように定義される。
【数1】
【0048】
ここで、Lは輝度であり、uはオプティカルフローであり、添え字xは空間微分を表しており、添え字tは時間微分を表している。また、tpは前回イベントが発生した時刻であり、φ(x)は位置xでのタイムウィンドウ内のイベントの数であり、iは各イベントのインデクスを表している。さらに、θはイベントカメラ10でイベントを発生させるための輝度変化の閾値であり、ρiはインデクスiのイベントの極性を表している。
【0049】
第5項の関数h
θは、式(2)で定義される。
【数2】
第5項以外の項はすべてL1ノルムが使用されており、エッジを保存して最適化を行うことができる。
【0050】
図3は、本発明の実施の形態のコスト関数を項ごとに図解した図である。
図3に示すように、第1項は、オプティカルフローの空間微分のL1ノルムであり、微分が大きい箇所(即ち、変化が激しい箇所)のコストが大きくなる。したがって、第1項は、推定したオプティカルフローの空間的な滑らかさを評価する項である。
【0051】
第2項は、オプティカルフローの時間微分のL1ノルムであり、微分が大きい時刻(即ち、変化が激しい時刻)のコストが大きくなる。したがって、第2項は、推定したオプティカルフローの時間的な滑らかさを評価する項である。第3項は、画像の空間微分のL1ノルムであり、推定した輝度画像の空間的な滑らかさを評価する項である。
【0052】
第4項について説明する前に、オプティカルフローの定義を説明する。オプティカルフローは、フレーム間の画素の移動ベクトルとして定義される。いま、時刻tにおける位置(x,y)の輝度値をI(x,y,t)とし、その画素がΔtという微小時間経過した後にΔx,Δyだけ移動するとする。このとき、移動する前と移動した後とでは輝度値が同じになることから、下式(3)の定義式が得られる。
【数3】
【0053】
この式(3)の左辺をテイラー展開して、2次以降の項を切り捨てると、下式(4)が得られる。
【数4】
【0054】
式(4)が成り立つためには、右辺の第2項以降が0になる必要がある。よって、下式(5)のオプティカルフローの拘束式が得られる。なお、このとき、両辺をΔtで割っている。
【数5】
【0055】
また、画素の単位時間あたりの移動量がオプティカルフローになることから、u=Δx/Δt、v=Δy/Δtとおき、I
x=∂I/∂x、I
y=∂I/∂y、∂I/∂t=I
tとおくと、拘束式は下式(6)のように表される。
【数6】
【0056】
また、u=(u,v)、I
x=(I
x,I
y)として、内積の形で表すと、拘束式は下式(7)となり、式(1)のコスト関数の第4項の表記と同様になる。
【数7】
【0057】
第4項は、式(7)の左辺のL1ノルムとなっており、輝度とオプティカルフローが整合していれば0に近づく。よって、この第4項は、輝度とオプティカルフローとの整合性を評価する項である。
【0058】
第5項及び第6項は、イベントカメラに関するデータ項である。イベントが発生する仕組みに基づいて、タイムウィンドウ内のイベントがあった箇所の輝度値の整合性とイベントがない箇所の輝度の不変性という2つ性質に関して、以下に説明するようにコストを設計することで、輝度画像が再構成される。
【0059】
第5項は、輝度値にθ以上の変化があったときに、その超えた分をコストとし、輝度値にθ以上の変化がなかったときに、コストを0とする項である。すなわち、イベントが発生した場合には、輝度値にθ以上の変化があったときであり、同じ画素でイベントが発生した場合には、前のイベントが発生したときの輝度値からθを超えて離れている分がこの第5項のコストとなる。前にイベントが変化してから次にイベントが発生するまでは閾値θ以上の変化はないので、この間は第5項は0となり何もコストに加えられない。
【0060】
オプティカルフロー初期推定部21は、このコスト関数(式(1))をタイムウィンドウ内で最適化することで、輝度とオプティカルフローを推定する。オプティカルフロー初期推定部21は、1フレーム分の最適化を終えると、タイムウィンドウを1セル分スライドさせて、タイムウィンドウをオーバーラップさせながら最適化を行うことで、輝度とオプティカルフローを推定していく。
【0061】
回転パラメータ推定部22及びオプティカルフロー正則化部23の説明に先立って、FOEの概念と、車載カメラとしてのイベントカメラ10のFOEの特性を利用した運動解析とを説明する。
【0062】
図4は、FOEの定義を説明する図である。一般に、カメラが並進運動のみを行う場合には、
図4に示すように、FOEは、カメラの微小時間における移動ベクトルの向きの並進軸と画像平面との交点と定義される。
【0063】
ここで、
図4の大文字のX,Y,Zはカメラ座標系、小文字のx,yは画像座標系を表している。FOEの画像座標系における位置を(x
0,y
0)とし、並進ベクトルをTとすると、単純にカメラ座標系と画像座標系の関係から焦点距離fを使って下式(8)を導くことができる。
【数8】
【0064】
よって、この式(8)から、FOEの座標は下式(9)で表される。
【数9】
【0065】
車載カメラとしてのイベントカメラ10には、イベントカメラ10が車両に固定されているという特徴と、横方向の並進運動成分が進行方向の並進運動成分に比べて非常に小さい、即ち、Tx<<Tz、Ty<<Tzであるという特徴がある。したがって、車載カメラとしてのイベントカメラ10には、FOEが一定であり、その位置がほぼ視野の中心になるという性質がある。イベントカメラ10の光軸と車の進行方向とが完全に一致していればFOEは視野の中心になるが、ずれていれば進行方向以外の並進運動が生じるため、FOEは視野の中心ではなくなる。
【0066】
このイベントカメラ10が車載カメラであることによるFOEの特性を用いることで、オプティカルフローの推定、イベントカメラ10の回転パラメータの推定を容易に行うことができる。
【0067】
図5は、車載カメラの運動モデルを示す図である。
図5に示すように、イベントカメラ10が並進運動T=(T
x,T
y,T
z)
T、回転運動Ω=(Ω
x,Ω
y,Ω
z)
Tで表される運動をしたときのカメラ座標系における点P(X
n,Y
n,Z
n)から点P´(X
n+1,Y
n+1,Z
n+1)への移動を考える。
【0068】
このとき、点Pのイベントカメラ10に対する相対移動ベクトルはT´=-T、Ω´=-Ωとなることから、点Pと点P´との関係は、下式(10)で表現される。
【数10】
【0069】
このとき、Rは点Pの相対回転行列であり、回転角が小さい場合には、正弦及び余弦のテイラー展開の2次以上の項を省略できるため、各軸の回転パラメータを用いて下式(11)のように表される。
【数11】
【0070】
式(11)を式(10)に代入すると、下式(12)が導かれる。
【数12】
【0071】
各方向の変化量は下式(13)で表される。
【数13】
【0072】
次に、点Pから点P´に移動する場合の画像上の点p(x
n,y
n)から点p´(x
n+1,y
n+1)への移動を考える。画像上の点p(x
n,y
n)は投影変換式から、カメラ座標系の点P(X
n,Y
n,Z
n)を用いて下式(14)で表現される。
【数14】
【0073】
画面上の点pの移動速度をv=(v
x,v
y)とすると、式(14)を微分することで下式(15)が導かれる。
【数15】
【0074】
ここで、サンプリング間隔が十分に小さい場合は、フレーム間の画像上の対応点の関係は下式(16)のようになる。
【数16】
【0075】
式(16)に自車両の運動を考慮した式(13)とFOEを定義した式(9)を代入し、T
Z/Z
n≠0を仮定して整理することで、下式(17)が得られる。
【数17】
【0076】
この式(17)は、FOEの座標と、対応点の座標と、回転パラメータの3つの要素で構成されている。すなわち、FOEをあらかじめ求めておき、対応点を見つけることで回転パラメータを推定することができる。
【0077】
本実施の形態の回転パラメータ推定部22は、さらに、得られたヨーレートに車両の運動モデルを適用することで最終的なヨーレートを推定する。本実施の形態で得られるイベントデータは、車載のイベントカメラ10によって得られるものであるので、極端にヨー角が変化することはないと想定できる。よって、そのような極端なヨー角の変化を排除するように、フィルタリングを行うことで、推定するヨーレートの精度を向上できる。具体的には、回転パラメータ推定部22は、ヨーレートをカルマンフィルタ又はパーティクルフィルタにかけることで最終的な推定ヨーレートを得る。
【0078】
図6は、FOEの性質を説明する図である。対応点の移動ベクトルはオプティカルフローそのものであり、Ωを含む項はオプティカルフローの回転成分である。
図6に示すように、オプティカルフローから回転による成分を除くことで、オプティカルフローはFOEから放射状に延びることになる。
【0079】
本実施の形態では、このようなFOEの性質を利用して正則化を行う。イベントカメラ10を用いて推定されたオプティカルフローは、イベントデータというスパースなデータから推定されていることから、不完全なものであり、特に正確な向きが得られないことがある。そこで、本実施の形態では、FOEを用いた正則化を加えることで向きの推定精度を向上する。
【0080】
回転パラメータ推定部22は、初期推定されたオプティカルフローに基づいて、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定する。すなわち、回転パラメータ推定部22は、イベントカメラ10が車両に搭載されることを踏まえて、カーブにおいて発生するハンドル操作によるY軸周りの回転(ヨーレート)Ω
Yのみを考え、X軸周りの回転(ピッチレート)Ω
X及びZ軸周りの回転(ロールレート)Ω
Zはないものとする。Ω
X=Ω
Z=0を式(17)に代入すると下式(18)が得られる。
【数18】
【0081】
自車両の運動により仮定した画像上の点pと点p´を、推定した輝度画像から決める対応点p=(x,y)と点p´=(x´,y´)に置き換えて整理をすると下式(19)が得られる。
【数19】
【0082】
よって、1つの対応点p(x,y)とp´(x´,y´)が分かれば、対応点とFOEの座標から回転パラメータΩ
Yを算出できる。ここで、対応点とは、フレーム間の画素の移動を考えたときの同一画素を示す点の組のことであり、上述のオプティカルフローと同義である。本実施の形態では、全画素分の密なオプティカルフローを推定しているので、式(19)は、初期推定したオプティカルフローu=(u
x,u
y)を用いて下式(20)のように書き直すことができる。
【数20】
【0083】
この式(20)から全画素分のΩ
Yを求めることができる。このなかから推定値Ω^
Yを求めるために、イベントを利用した投票を行う。
図7は、視野内においてイベントが発生した個所の例を示す図である。式(20)によって全画素のΩ
Yを求めた後に、Δの幅で離散化して、
図7に示す視野(全画素)の上部分におけるイベント発生個所での最頻値をΩ^
Yとする。イベントが発生した個所のみで投票を行う理由は、輝度復元とオプティカルフローの仕組みにある。
【0084】
すなわち、オプティカルフローはコスト関数の第4項のオプティカルフローに関する項によって、復元された輝度に整合するように推定される。この輝度値は、コスト関数の第6項のイベントカメラに関する項によって、イベントが発生したときのイベントと輝度とが整合するように推定される。すなわち、入力であるイベントデータが最も反映されるイベント発生個所は信頼度が高いといえる。
【0085】
これに対して、イベント発生個所以外の個所は、コスト関数の第1項から第3項までの滑らかさの項によって周りの値から推定されるので信頼性は低いといえる。したがって、視野の上部分のみで投票ことで、回転成分を正確に捉えることができる。なお、上部分は、例えば視野を中央の高さで分けた上半分の部分として定義してよい。
【0086】
図8は、回転運動と並進運動を説明する図である。
図8の例では、車両は左にカーブしている。視野の下部分はイベントカメラ10に近い部分であり、白線や道路脇の塀などの個所のオプティカルフローは、イベントカメラ10の並進運動による影響が比較的大きくなり、回転による成分が顕著には現れない。
【0087】
これに対して、視野の上部分はイベントカメラ10から遠い部分であり、ビルなどの個所のオプティカルフローは、イベントカメラ10の回転運動による影響が比較的大きくなり、回転による成分が顕著に現れる。このように、回転パラメータを正確に求めるためには視野の上部分を用いることが有効であり、よって、回転パラメータ推定部22は、視野の上部分に限定して投票を行う。
【0088】
オプティカルフロー正則化部23は、回転パラメータ推定部22と同様に、式(18)において対応点をオプティカルフローuに置き換える。また、式(18)の回転パラメータΩ
Yを含む項は、オプティカルフローの回転成分を表している。オプティカルフローの回転成分を下式(21)のようにu
Ω=(u
x
Ω,u
y
Ω)と置くと、下式(22)が得られる。
【数21】
【数22】
【0089】
式(22)では、上述のFOEの性質が簡潔に表されている。回転を除いたフローu´を下式(23)で表す。
【数23】
【0090】
ここで、FOEから放射状に各座標に延ばした矢印をu
foeとし、下式(24)のようにu´と長さを同じにしたものをu´
foeとする。
【数24】
【0091】
このu´
foeとu´に対して、αで表される比で下式(25)のようにu^´を決定する。
【数25】
【0092】
オプティカルフロー正則化部23は、このu´
foeとu´の2乗誤差を目的関数として最適化を行うことで、回転成分を除いたオプティカルフローをFOEに従うように修正(正則化)する。この最適化後に、オプティカルフロー正則化部23は、下式(26)のようにu^´に回転成分u
Ωを戻して、u^を得る。
【数26】
【0093】
図9は、FOEによる正則化を説明する図である。オプティカルフロー正則化部23による正則化により、
図9に示すようにオプティカルフローはFOEに従うように修正され、よりよいものになると考えられる。このように、オプティカルフローの初期推定、及びその後の回転パラメータの推定及び正則化を、タイムウィンドウをスライドさせて繰り返すことで、より正しい向きにオプティカルフローを正則することができ、それに伴って推定する回転パラメータΩ^
Yの精度も向上する。
【0094】
図10は、本発明の実施の形態のオプティカルフロー推定方法のフローチャートである。オプティカルフロー推定方法は、オプティカルフロー推定装置20において実行される。まず、オプティカルフロー初期推定部21は、指定されたタイムウィンドウについて、オプティカルフローの初期推定を行う(ステップS101)。次に、回転パラメータ推定部22が、初期推定されたオプティカルフローに基づいて、イベントカメラ10(即ち、車両)の回転パラメータ(ヨーレート)を推定する(ステップS102)。
【0095】
オプティカルフロー正則化部23は、初期推定されたオプティカルフローをFOEを用いて正則化する(ステップS103)。オプティカルフロー推定装置20は、処理すべきタイムウィンドウをスライドさせ(ステップS104)、ステップS101~ステップS103を繰り返す。
【0096】
以上のように、本実施の形態のオプティカルフロー推定システム100によれば、イベントカメラが車両の進行方向を向いて固定される場合にはヨーレートで補正したFOEが固定であるという性質を利用して、イベントデータに基づいて初期推定したオプティカルフローを正則化して最終的なオプティカルフローを推定する。すなわち、まず、FOEによる正則なしの問題(凸問題)を解いた(初期推定)後に、それを初期値として正則化ありの問題(非凸問題)を解く(最終推定)という構成によって、オプティカルフローの推定精度を向上させる。
【0097】
また、初期推定されたオプティカルフローをFOEに従って修正する際に、オプティカルフローの向きを用いる構成を採用している。これにより、ノイズの影響を受けやすい向きの推定の精度を向上できる。
【0098】
さらに、全画素について得られたヨーレートの最頻値を採用することでヨーレートを推定するが、その際には、イベントカメラ10の視野の上部分のみで投票を行う。これにより、ヨーレートが反映されたオプティカルフローが出現しやすい部分のみを用いてヨーレートを推定するので、ヨーレート推定の精度を向上できる。
【0099】
なお、上記の実施の形態では、車両に搭載されたイベントカメラにてイベントデータが生成され、当該イベントデータからオプティカルフローを推定するオプティカルフロー推定装置を説明したが、本発明のオプティカルフロー推定装置は、これに限られない。すなわち、オプティカルフローの推定に用いるデータはイベントデータに限られず、通常のカメラで得られた通常の画像データであってもよい。このように通常のカメラで得られる画像データの場合にも、初期推定された回転パラメータに基づいて初期推定されたオプティカルフローをFOEに従うように修正を行って、初期推定されたオプティカルフローを正則化することで、オプティカルフローの推定の精度を向上できる。
【0100】
また、カメラは車両に搭載されるものに限られず、車両以外の移動体に備えられるものであってよい。さらに、上記の実施の形態では、カメラが車両に搭載されることを前提として、回転パラメータ推定部22が、ピッチレート及びロールレートを0とすることで、回転パラメータとしてヨーレートを推定するオプティカルフロー推定装置を説明したが、移動体の種類によっては、回転パラメータ推定部22は、回転パラメータとして、ピッチレート又はロールレートを推定してもよい。
【産業上の利用可能性】
【0101】
本発明は、オプティカルフロー推定の精度を向上でき、カメラからのデータに基づいてオプティカルフローを推定するオプティカルフロー推定装置等として有用である。
【符号の説明】
【0102】
10 イベントカメラ
20 オプティカルフロー推定装置(ヨーレート推定装置)
21 オプティカルフロー初期推定部
22 回転パラメータ推定部
23 オプティカルフロー正則化部
100 オプティカルフロー推定システム(ヨーレート推定システム)