(57)【要約】【課題】車両に搭載された撮像部の位置及び姿勢の推定精度を向上できる位置姿勢推定装置を提供する。【解決手段】位置姿勢推定装置は、車両１０に搭載された撮像部２により得られた時系列の複数の画像のそれぞれについて静止領域を特定する静止領域特定部３１と、複数の画像のそれぞれについて、その画像の静止領域から複数の特徴点を抽出し、複数の画像間で、複数の特徴点のうち、実空間上の同一位置に対応する特徴点同士を対応付けることで複数の特徴点の組を求める対応付け部３２と、複数の特徴点の組に基づいて、複数の画像のうちの一つの画像上の特徴点を複数の画像のうちの他の画像上の対応する特徴点へ投影し、かつ、その一つの画像の取得時と他の画像の取得時間の撮像部２の相対的な位置及び姿勢の変化を表す変換行列を求めることで、複数の画像のそれぞれの取得時の撮像部２の位置及び姿勢を推定する位置姿勢推定部３３とを有する。【選択図】図３
2020076714.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載された撮像部により得られた時系列の複数の画像のそれぞれについて、静止している物体が写っている静止領域を特定する静止領域特定部と、
前記複数の画像のそれぞれについて、当該画像の前記静止領域から複数の特徴点を抽出し、前記複数の画像間で、前記複数の特徴点のうち、実空間上の同一位置に対応する特徴点同士を対応付けることで複数の特徴点の組を求める対応付け部と、
前記複数の特徴点の組に基づいて、前記複数の画像のうちの一つの画像上の特徴点を前記複数の画像のうちの他の画像上の対応する特徴点へ投影し、かつ、前記一つの画像の取得時と前記他の画像の取得時間の前記撮像部の相対的な位置及び姿勢の変化を表す変換行列を求めることで、前記複数の画像のそれぞれの取得時の前記撮像部の位置及び姿勢を推定する位置姿勢推定部と、
を有する位置姿勢推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載された撮像部の位置及び姿勢を推定する位置姿勢推定装置に関する。
【背景技術】
【０００２】
車両の運転支援あるいは自動運転制御に利用するため、車両周囲に存在する物体を検知するためのカメラが車両に搭載されることがある。カメラが撮影することで得られた画像に表された物体と車両との位置関係を正確に推定するためには、カメラの位置及び姿勢が正確に求められることが好ましい。そこで、移動体が直進する時の移動体の移動前後において、移動体に設置された各カメラにより得られた画像に基づいて、カメラ間の相対位置を推定する技術が提案されている（例えば、特許文献１を参照）。この技術では、カメラごとに、移動体が直進する時の移動体の移動前後において得られた各画像から特徴点が抽出され、その画像間で抽出された特徴点同士が対応付けられる。そしてカメラごとに、対応付けられた特徴点から、一方の画像から他方の画像への射影変換を行うホモグラフィ行列が推定され、推定されたホモグラフィ行列に従って、一方のカメラに対する他方のカメラの相対位置が推定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−１０１０７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
カメラが搭載された車両の周囲に、他の車両といった移動する物体（以下、移動物体と呼ぶ）が存在すると、そのカメラにより得られた画像においても移動物体が表されている領域が含まれることがある。そして移動物体が表された領域から抽出された特徴点が、画像間での対応付け及びホモグラフィ行列の推定に利用されると、各画像の取得時における、その特徴点の実空間での対応位置が互いに異なっているために、ホモグラフィ行列の推定精度が低下してしまい、その結果として、カメラの位置などの推定精度も低下する。
【０００５】
そこで、本発明は、車両に搭載された撮像部の位置及び姿勢の推定精度を向上できる位置姿勢推定装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一つの実施形態によれば、位置姿勢推定装置が提供される。この位置姿勢推定装置は、車両に搭載された撮像部により得られた時系列の複数の画像のそれぞれについて、静止している物体が写っている静止領域を特定する静止領域特定部と、複数の画像のそれぞれについて、その画像の静止領域から複数の特徴点を抽出し、複数の画像間で、複数の特徴点のうち、実空間上の同一位置に対応する特徴点同士を対応付けることで複数の特徴点の組を求める対応付け部と、複数の特徴点の組に基づいて、複数の画像のうちの一つの画像上の特徴点を複数の画像のうちの他の画像上の対応する特徴点へ投影し、かつ、その一つの画像の取得時と他の画像の取得時間の撮像部の相対的な位置及び姿勢の変化を表す変換行列を求めることで、複数の画像のそれぞれの取得時の撮像部の位置及び姿勢を推定する位置姿勢推定部とを有する。
【発明の効果】
【０００７】
本発明に係る位置姿勢推定装置は、車両に搭載された撮像部の位置及び姿勢の推定精度を向上できるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】位置姿勢推定装置が実装される車両制御システムの概略構成図である。
【図２】位置姿勢推定装置の一つの実施形態である電子制御装置のハードウェア構成図である。
【図３】位置姿勢推定処理を含む車両制御処理に関する、電子制御装置のプロセッサの機能ブロック図である。
【図４】画像上の静止領域の一例を示す図である。
【図５】位置姿勢推定処理を含む、車両制御処理の動作フローチャートである。
【図６】変形例による、静止領域特定部３１の処理の動作フローチャートである。
【図７】画像上の静止領域の他の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図を参照しつつ、位置姿勢推定装置について説明する。この位置姿勢推定装置は、車両に搭載されたカメラにより得られた、車両の周囲が表された時系列の複数の画像のそれぞれから静止している物体（以下、単に静止物体と呼ぶ）が表された領域（以下、単に静止領域と呼ぶ）を検出する。そしてこの位置姿勢推定装置は、各画像について、その画像の静止領域から複数の特徴点を抽出し、画像間で抽出された特徴点を対応付け、対応付けられた特徴点の組に基づいて、複数の画像のうちの一方の画像上の各点を他方の画像上の対応点へ射影変換する行列を求めることで、カメラの位置及び姿勢を推定する。
【００１０】
以下では、位置姿勢推定装置を、車両制御システムに適用した例について説明する。この例では、位置姿勢推定装置は、車両に搭載されたカメラにより得られた画像に対して位置姿勢推定処理を実行することで、カメラの位置及び姿勢を推定し、その推定結果に基づいて、車両の周囲に存在する各種の物体、例えば、他の車両または人の移動軌跡を求めて、車両の運転制御に利用する。
【００１１】
図１は、位置姿勢推定装置が実装される車両制御システムの概略構成図である。また図２は、位置姿勢推定装置の一つの実施形態である電子制御装置のハードウェア構成図である。本実施形態では、車両１０に搭載され、かつ、車両１０を制御する車両制御システム１は、車両１０の周囲を撮影するためのカメラ２と、位置姿勢推定装置の一例である電子制御装置（ＥＣＵ）３とを有する。カメラ２とＥＣＵ３とは、コントローラエリアネットワークといった規格に準拠した車内ネットワーク４を介して通信可能に接続される。
【００１２】
カメラ２は、撮像部の一例であり、CCDあるいはC-MOSなど、可視光に感度を有する光電変換素子のアレイで構成された２次元検出器と、その２次元検出器上に撮影対象となる領域の像を結像する結像光学系を有する。そしてカメラ２は、車両１０の前方を向くように、例えば、車両１０の車室内に取り付けられる。そしてカメラ２は、所定の撮影周期（例えば1/30秒〜1/10秒）ごとに車両１０の前方領域を撮影し、その前方領域が写った画像を生成する。カメラ２により得られた画像は、カラー画像であってもよく、あるいは、グレー画像であってもよい。
【００１３】
カメラ２は、画像を生成する度に、その生成した画像を車内ネットワーク４を介してＥＣＵ３へ出力する。
【００１４】
ＥＣＵ３は、車両１０を制御する。本実施形態では、ＥＣＵ３は、カメラ２により得られた時系列の一連の画像から検出された物体に基づいて車両１０を自動運転するよう、車両１０を制御する。そのために、ＥＣＵ３は、通信インターフェース２１と、メモリ２２と、プロセッサ２３とを有する。
【００１５】
通信インターフェース２１は、通信部の一例であり、ＥＣＵ３を車内ネットワーク４に接続するためのインターフェース回路を有する。すなわち、通信インターフェース２１は、車内ネットワーク４を介して、カメラ２と接続される。そして通信インターフェース２１は、カメラ２から画像を受信する度に、受信した画像をプロセッサ２３へわたす。
【００１６】
メモリ２２は、記憶部の一例であり、例えば、揮発性の半導体メモリ及び不揮発性の半導体メモリを有する。そしてメモリ２２は、ＥＣＵ３のプロセッサ２３により実行される位置姿勢推定処理において使用される各種のデータ、例えば、カメラ２から受信した画像、位置姿勢推定処理で利用される識別器を特定するための各種パラメータ、及び、位置姿勢推定処理で利用される各種閾値などを記憶する。さらに、メモリ２２は、地図情報などを記憶してもよい。
【００１７】
プロセッサ２３は、制御部の一例であり、１個または複数個のＣＰＵ(Central Processing Unit)及びその周辺回路を有する。プロセッサ２３は、論理演算ユニット、数値演算ユニットあるいはグラフィック処理ユニットといった他の演算回路をさらに有していてもよい。そしてプロセッサ２３は、車両１０が走行している間、カメラ２から画像を受信する度に、受信した画像に対して位置姿勢推定処理を実行する。さらに、プロセッサ２３は、受信した画像から検出された車両１０の周囲の物体に基づいて、車両１０を自動運転するよう、車両１０を制御する。
【００１８】
図３は、位置姿勢推定処理を含む車両制御処理に関する、ＥＣＵ３のプロセッサ２３の機能ブロック図である。プロセッサ２３は、静止領域特定部３１と、対応付け部３２と、位置姿勢推定部３３と、運転計画部３４と、車両制御部３５とを有する。プロセッサ２３が有するこれらの各部は、例えば、プロセッサ２３上で動作するコンピュータプログラムにより実現される機能モジュールである。あるいは、プロセッサ２３が有するこれらの各部は、プロセッサ２３に設けられる、専用の演算回路であってもよい。また、プロセッサ２３が有するこれらの各部のうち、静止領域特定部３１、対応付け部３２及び位置姿勢推定部３３が、位置姿勢推定処理を実行する。
【００１９】
静止領域特定部３１は、カメラ２により生成された、時系列の複数の画像のそれぞれにおいて、その画像上で静止物体が写っている静止領域を特定する。
【００２０】
本実施形態では、静止領域特定部３１は、カメラ２から画像を受信する度に、受信した最新の画像から写っている物体を検出する。そして静止領域特定部３１は、最新の画像から検出された物体及び過去の画像から検出された物体を追跡して、最新の画像から検出された物体が移動している移動物体か否かを判定する。そして静止領域特定部３１は、最新の画像において、移動物体が写っている領域以外を静止領域とする。
【００２１】
例えば、静止領域特定部３１は、最新の画像を識別器に入力することで、最新の画像に表された物体を検出する。静止領域特定部３１は、識別器として、例えば、入力された画像から、その画像に表された物体を検出するように予め学習されたディープニューラルネットワーク（ＤＮＮ）を用いることができる。静止領域特定部３１は、そのようなＤＮＮとして、例えば、Wei Liu他、「SSD: Single Shot MultiBox Detector」、ECCV2016、2016年（非特許文献１）に記載されたSingle Shot MultiBox Detector（ＳＳＤ）、または、Shaoqing Ren他、「Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks」、NIPS、2015年（非特許文献２）に記載されたFaster R-CNNといった、コンボリューショナルニューラルネットワーク型（ＣＮＮ）のアーキテクチャを持つＤＮＮを用いることができる。この場合、静止領域特定部３１が最新の画像をＤＮＮタイプの識別器に入力することで、その識別器は、その画像上で検出対象となる物体（例えば、車、人、道路標識）などが表された領域（以下、物体領域と呼ぶ）を表す情報、及び、物体領域に表された物体の種類を表す情報を出力する。
【００２２】
あるいは、静止領域特定部３１は、ＤＮＮ以外の識別器を用いてもよい。例えば、静止領域特定部３１は、識別器として、画像上に設定されるウィンドウから算出される特徴量（例えば、Histograms of Oriented Gradients, ＨＯＧ）を入力として、そのウィンドウに検出対象となる物体が表される確信度を出力するように予め学習されたサポートベクトルマシン（ＳＶＭ）を用いてもよい。静止領域特定部３１は、最新の画像上に設定するウィンドウの位置、サイズ及びアスペクト比を様々に変更しながら、そのウィンドウから特徴量を算出し、算出した特徴量をＳＶＭへ入力することで、そのウィンドウについて確信度を求める。そして静止領域特定部３１は、確信度が所定の確信度閾値以上である場合、そのウィンドウを、検出対象となる物体が表された物体領域とする。
【００２３】
あるいはまた、静止領域特定部３１は、検出対象となる物体が表されたテンプレートと最新の画像との間でテンプレートマッチングを行うことで、物体領域を検出してもよい。
【００２４】
静止領域特定部３１は、最新の画像及び過去の画像から検出された物体を、所定のトラッキング手法に従って追跡する。
例えば、静止領域特定部３１は、各画像に対してカメラ２についての車両１０への取り付け位置などの情報を用いて視点変換処理を実行することで、その画像を鳥瞰画像に変換する。その際、静止領域特定部３１は、画像上での検出された物体のサイズに基づいて車両１０からその物体までの距離を推定し、推定した距離に基づいて鳥瞰画像上での検出された物体上の各点の位置を特定してもよい。例えば、検出対象となる物体の種類ごとに、メモリ２２に、車両１０からその物体までの距離が所定の基準距離である場合の画像上のその物体の基準サイズが予め記憶される。そして静止領域特定部３１は、画像上での検出された物体のサイズに対する、その検出された物体に対応する基準サイズの比を、基準距離に乗じて得られる距離を、検出された物体までの推定距離とすることができる。そして静止領域特定部３１は、一連の鳥瞰画像に対してKalman Filterなどを用いたトラッキング処理を実行することで、各鳥瞰画像間で、検出された物体のうちの同じものを対応付ける。これにより、静止領域特定部３１は、各鳥瞰画像間で対応付けられた物体を追跡することでその物体の軌跡を求める。静止領域特定部３１は、その軌跡に基づいて、最新の画像取得時における、車両１０に対する追跡中の物体の相対速度をもとめる。
【００２５】
あるいは、静止領域特定部３１は、オプティカルフローに基づく追跡処理に従って、最新の画像から検出された物体を過去の画像から検出された物体と対応付けることで、最新の画像から検出された物体を追跡してもよい。そして静止領域特定部３１は、時間経過に伴う画像上での追跡中の物体のサイズの変化に基づいて、車両１０に対するその物体の相対速度を推定してもよい。例えば、追跡中の着目する物体について、静止領域特定部３１は、上記のように、画像上での検出された物体のサイズに対する、その検出された物体に対応する基準サイズの比に基づいて、各画像取得時における車両１０からその物体までの距離を推定する。そして静止領域特定部３１は、画像取得周期ごとの推定距離の差を、その画像取得周期で除することで、その物体の相対速度を推定できる。
【００２６】
静止領域特定部３１は、各画像取得時における、追跡中の物体の相対速度に、車両１０の速度を加算することで、その物体の速度を推定できる。なお、車両１０の速度は、例えば、車両１０に設けられた車速センサ（図示せず）により測定され、その測定された車両１０の速度は、車内ネットワーク４を介して車速センサからＥＣＵ３へ送信される。
【００２７】
静止領域特定部３１は、最新の画像について、その画像から検出された物体のうちの追跡中の物体のそれぞれについて、その物体の推定速度を所定の閾値（例えば、2〜3km/h）と比較する。そして静止領域特定部３１は、推定速度が所定の閾値以上となる物体を移動物体と判定する。
【００２８】
静止領域特定部３１は、最新の画像について、移動物体が表された物体領域を除いた残りの領域を静止領域とする。静止領域は、例えば、ビットマップなどで表される。
【００２９】
図４は、画像上の静止領域の一例を示す図である。画像４００において、ｎ個の物体領域４０１−１〜４０１−ｎが検出されており、これら物体領域に表された物体は移動物体と推定されている。そのため、画像４００から物体領域４０１−１〜４０１−ｎを除いた残りの領域４０２が、静止領域となる。
【００３０】
静止領域特定部３１は、最新の画像についての静止領域を表す情報を対応付け部３２へ通知する。また、静止領域特定部３１は、最新の画像について、その画像から検出された物体領域の位置及び範囲を表す情報を運転計画部３４へ通知する。さらに、物体領域に表されている物体の種類も識別器により出力されている場合には、静止領域特定部３１は、物体領域に表されている物体の種類も運転計画部３４へ通知してもよい。
【００３１】
対応付け部３２は、例えば、Structure from Motion(SfM)手法に従ってカメラ２の位置及び姿勢を推定するために、カメラ２により生成された時系列の複数の画像のそれぞれの静止領域から抽出される複数特徴点のうち、実空間の同一の位置に対応する特徴点同士を画像間で対応付ける。
【００３２】
本実施形態では、対応付け部３２は、カメラ２から画像を受信する度に、その最新の画像の静止領域から複数の特徴点を抽出する。例えば、対応付け部３２は、静止領域に対してSIFTあるいはHarrisオペレータといった特徴点抽出用のフィルタを適用することで、静止領域から複数の特徴点を抽出する。対応付け部３２は、抽出した各特徴点の位置を画像とともにメモリ２２に記憶する。
【００３３】
その後、対応付け部３２は、最新の画像と過去の画像（例えば、直前の画像あるいは所定フレーム数前の画像）との間で、静止領域から抽出された複数の特徴点のうち、実空間での同一の点に対応する特徴点同士を対応付ける。そのために、対応付け部３２は、例えば、特徴点の対応付けを行う画像の組に含まれる一方の画像における、抽出された複数の特徴点のうちの着目する特徴点を中心とする所定サイズ（例えば、5x5画素）の領域をテンプレートとする。そして対応付け部３２は、その画像の組に含まれる他方の画像と、着目する特徴点のテンプレートとの間でテンプレートマッチングを実行することで、他方の画像から抽出された複数の特徴点のうち、そのテンプレートと最も一致する領域に含まれる特徴点を、着目する特徴点と対応付ける。
【００３４】
あるいは、対応付け部３２は、Lucas-Kanade法といった追跡手法を利用して、画像間で各特徴点を対応付けてもよい。
【００３５】
対応付け部３２は、最新の画像と過去の画像との組について、互いに対応付けられた複数の特徴点の組を位置姿勢推定部３３へ通知する。
【００３６】
位置姿勢推定部３３は、カメラ２から画像が得られる度に、得られた最新の画像と過去の画像との間で対応付けられた複数の特徴点の組に基づいて、最新の画像取得時における、カメラ２の姿勢を推定する。例えば、位置姿勢推定部３３は、複数の特徴点の組と、カメラ２の焦点距離といったカメラ２の内部パラメータとに基づいて、最新の画像と過去の画像のうちの一方の画像上の点を、他方の画像上の対応点へ投影するために用いられ、かつ、その二つの画像のそれぞれの取得時間のカメラ２の相対的な位置及び姿勢の変化を表す基本行列を算出する。この場合、位置姿勢推定部３３は、例えば、最新の画像から抽出された各特徴点が、基本行列に従って過去の画像の対応する特徴点へ投影されるように、数値解析により基本行列を算出する。なお、基本行列を算出するために、特徴点の組の数は５個以上であることが好ましい。
【００３７】
基本行列がもとめられると、位置姿勢推定部３３は、過去の画像取得時におけるカメラ２の位置及び姿勢と、基本行列または射影変換行列に含まれる、過去の画像取得時から最新の画像取得時までの間のカメラ２の回転を表す回転行列及びカメラ２の並進を表す並進ベクトルにより、最新の画像取得時における、カメラ２の位置及び姿勢を推定できる。なお、位置姿勢推定部３３は、過去の画像取得時から最新の画像取得時までの車両１０の加速度または角速度に基づいて、過去の画像取得時から最新の画像取得時までの車両１０の移動量及び移動方向を推定し、その推定結果を並進ベクトルとしてもよい。なお、車両１０の加速度及び角速度は、例えば、車両１０に搭載された加速度センサ（図示せず）またはジャイロセンサ（図示せず）により測定され、その測定結果は、車内ネットワーク４を介してＥＣＵ３へわたされる。
【００３８】
プロセッサ２３は、カメラ２から画像が得られる度に、位置姿勢推定処理を繰り返すことで、何れかの画像取得時におけるカメラ２の位置及び姿勢を基準として、各画像取得時におけるカメラ２の位置及び姿勢を推定できる。
【００３９】
また、位置姿勢推定部３３は、得られた回転行列及び並進ベクトルに基づいて、三角測量の原理により、各特徴点の組ごとに、その特徴点の組に対応する実空間上の点の位置を推定できる。そして位置姿勢推定部３３は、推定した実空間上の点の位置と対応する画像上の特徴点の位置とに基づいて、バンドル調整処理を行うことで、カメラ２の位置及び姿勢の推定精度をさらに向上してもよい。
【００４０】
位置姿勢推定部３３は、最新の画像取得時におけるカメラ２の位置及び姿勢を表す情報を運転計画部３４へ通知する。
【００４１】
運転計画部３４は、各画像について検出された、車両１０の周囲に存在する物体と車両１０とが衝突しないように車両１０の走行予定経路を１以上生成する。走行予定経路は、例えば、現時刻から所定時間先までの各時刻における、車両１０の目標位置の集合として表される。例えば、運転計画部３４は、静止領域特定部３１と同様に、カメラ２から画像を受信する度に、カメラ２についての車両１０への取り付け位置などの情報を用いて視点変換処理を実行することで、受信した画像を、カメラ２を基準とする座標系で表される鳥瞰画像に変換する。さらに、運転計画部３４は、各画像取得時のカメラ２の位置及び姿勢に基づいて、その鳥瞰画像中に含まれる物体領域の世界座標系での位置を求める。そして運転計画部３４は、世界座標系で表された一連の物体領域に対してKalman Filterなどを用いたトラッキング処理を実行することで、各画像から検出された物体を追跡する。そして運転計画部３４は、その追跡結果により得られた軌跡から、物体のそれぞれの所定時間先までの予測軌跡を推定する。運転計画部３４は、追跡中の各物体の予測軌跡に基づいて、何れの物体についても所定時間先までの追跡中の物体のそれぞれと車両１０間の距離の予測値が所定距離以上となるように、車両１０の走行予定経路を生成する。その際、運転計画部３４は、例えば、車両１０に搭載されたＧＰＳ受信機（図示せず）から得た、車両１０の現在位置情報と、メモリ２２に記憶されている地図情報とを参照して、車両１０が走行可能な車線の数を確認してもよい。そして運転計画部３４は、車両１０が走行可能な車線が複数存在する場合には、車両１０が走行する車線を変更するように走行予定経路を生成してもよい。
なお、運転計画部３４は、複数の走行予定経路を生成してもよい。この場合、運転計画部３４は、複数の走行予定経路のうち、車両１０の加速度の絶対値の総和が最小となる経路を選択してもよい。
【００４２】
運転計画部３４は、生成した走行予定経路を車両制御部３５へ通知する。
【００４３】
車両制御部３５は、車両１０が通知された走行予定経路に沿って走行するように車両１０の各部を制御する。例えば、車両制御部３５は、通知された走行予定経路、及び、車速センサ（図示せず）により測定された車両１０の現在の車速に従って、車両１０の加速度を求め、その加速度となるようにアクセル開度またはブレーキ量を設定する。そして車両制御部３５は、設定されたアクセル開度に従って燃料噴射量を求め、その燃料噴射量に応じた制御信号を車両１０のエンジンの燃料噴射装置へ出力する。あるいは、車両制御部３５は、設定されたブレーキ量に応じた制御信号を車両１０のブレーキへ出力する。
【００４４】
さらに、車両制御部３５は、車両１０が走行予定経路に沿って走行するために車両１０の進路を変更する場合には、その走行予定経路に従って車両１０の操舵角を求め、その操舵角に応じた制御信号を、車両１０の操舵輪を制御するアクチュエータ（図示せず）へ出力する。
【００４５】
図５は、プロセッサ２３により実行される、位置姿勢推定処理を含む、車両制御処理の動作フローチャートである。プロセッサ２３は、カメラ２から画像を受信する度に、図５に示される動作フローチャートに従って車両制御処理を実行する。なお、以下に示される動作フローチャートにおいて、ステップＳ１０１〜Ｓ１０６の処理が位置姿勢推定処理に対応する。
【００４６】
プロセッサ２３の静止領域特定部３１は、カメラ２から得られた最新の画像から物体を検出し、検出した物体が表された物体領域を求める（ステップＳ１０１）。
【００４７】
また、静止領域特定部３１は、過去の画像及び最新の画像から検出された物体を追跡することで、最新の画像から検出された物体のうちの移動物体を特定する（ステップＳ１０２）。そして静止領域特定部３１は、最新の画像において、移動物体が表された物体領域を除いた残りの領域を静止領域として特定する（ステップＳ１０３）。
【００４８】
プロセッサ２３の対応付け部３２は、最新の画像の静止領域から複数の特徴点を抽出する（ステップＳ１０４）。そして対応付け部３２は、最新の画像から抽出された各特徴点を、過去の画像から抽出された複数の特徴点のうち、実空間での同じ位置を表す特徴点と対応付ける（ステップＳ１０５）。
【００４９】
その後、プロセッサ２３の位置姿勢推定部３３は、最新の画像と過去の画像との間で対応付けられた特徴点の組に基づいて最新の画像取得時のカメラ２の位置及び姿勢を推定する（ステップＳ１０６）。
【００５０】
プロセッサ２３の運転計画部３４は、各画像取得時のカメラ２の位置及び姿勢に基づいて各画像取得時の検出された物体の位置を推定することで、その物体を追跡し、その追跡結果に基づいて推定されるその物体の予測軌跡と所定の距離以上となるように、車両１０の走行予定経路を生成する（ステップＳ１０７）。そしてプロセッサ２３の車両制御部３５は、走行予定経路に沿って車両１０が走行するように車両１０を制御する（ステップＳ１０８）。そしてプロセッサ２３は、車両制御処理を終了する。
【００５１】
以上に説明してきたように、この位置姿勢推定装置は、車両に搭載されたカメラにより生成された、時系列の複数の画像のそれぞれにおいて静止領域を特定し、静止領域から抽出された特徴点に基づいて、各画像取得時におけるカメラの位置及び姿勢を推定する。そのため、この位置姿勢推定装置は、車両の周囲に移動物体が多数存在する場合でも、車両に搭載されたカメラの位置及び姿勢の推定精度を向上できる。
【００５２】
変形例によれば、静止領域特定部３１は、カメラ２から画像を受信する度に、受信した最新の画像を、画素ごとに写っている物体の種類を識別するセグメンテーション用の識別器に入力することで、その画像において静止物体が写っている画素を特定してもよい。そして静止領域特定部３１は、静止物体が写っている画像の集合をその画像についての静止領域としてもよい。この場合には、静止領域特定部３１が用いる識別器は、例えば、Fully Convolutional Network（ＦＣＮ）といった、セグメンテーション用の何れかのＣＮＮアーキテクチャを有するＤＮＮとすることができる。あるいは、静止領域特定部３１は、ランダムフォレストあるいはサポートベクトルマシンといった他の機械学習手法に従ったセグメンテーション用の識別器を利用してもよい。
【００５３】
図６は、この変形例による、静止領域特定部３１の処理の動作フローチャートである。静止領域特定部３１は、図５に示される位置姿勢推定処理の動作フローチャートにおける、ステップＳ１０１〜Ｓ１０３の処理の代わりに、以下の動作フローチャートに従って静止領域を特定すればよい。
【００５４】
静止領域特定部３１は、カメラ２から得られた最新の画像をセグメンテーション用の識別器に入力することで、その画像上の画素ごとに、その画素に写っている物体の種類を特定する（ステップＳ２０１）。そして静止領域特定部３１は、静止物体が写っている画像の集合をその画像についての静止領域として特定する（ステップＳ２０２）。プロセッサ２３は、ステップＳ２０２の後、図５に示される動作フローチャートにおける、ステップＳ１０４以降の処理を実行すればよい。
【００５５】
図７は、画像上の静止領域の他の一例を示す図である。画像７００において、領域７０１には車両が写っていると判定されている。一方、領域７０２には、空が写っていると判定されており、領域７０３には建造物が写っていると判定されており、領域７０４には路面が写っていると判定されている。この場合、車両は移動する可能性が有る物体であるため、領域７０１は、静止領域に含まれない。一方、空、建造物及び路面が静止物体に相当するので、領域７０２〜領域７０４の和集合が静止領域となる。
【００５６】
また、静止領域特定部３１は、ＳＳＤまたはFaster R-CNNのように、検出された物体の種類を出力する識別器を利用する場合、検出された物体の種類に応じて静止領域を特定してもよい。すなわち、静止領域特定部３１は、建造物、道路標識あるいは道路標示といった静止物体に相当する検出物体が表された物体領域の集合を静止領域としてもよい。あるいは、静止領域特定部３１は、車両あるいは人といった、自力で移動する可能性のある物体が表された物体領域を画像から除いた残りの領域を静止領域としてもよい。
【００５７】
なお、対応付け部３２は、複数の画像のそれぞれの静止領域のうち、路面が写っている部分領域よりも路面以外が写っている部分領域の方について特徴点を抽出し易くしてもよい。これは、一般に、路面よりも建造物等の方が、テクスチャが複雑であり、特徴点として利用するのに適した箇所が多いためである。そこで、例えば、対応付け部３２は、SIFTまたはHarrisオペレータといった特徴点検出用の処理を行うことで得られる、特徴点である確からしさを表す値と比較される、特徴点検出用の判定閾値を、路面が写っている部分領域よりも路面以外が写っている部分領域の方が低くなるように設定すればよい。また、識別器が、道路標示と道路標示が無い部分の路面とを区別して出力する場合には、対応付け部３２は、道路標示が写っている部分領域について適用される判定閾値の値を、道路標示以外の路面が写っている部分領域について適用される判定閾値の値よりも低くしてもよい。また、道路標示のエッジは特徴点として利用し易いので、対応付け部３２は、道路標示が写っている部分領域と道路標示以外の路面が写っている部分領域との境界に隣接する画素に適用される判定閾値の値を、道路標示以外の路面が写っている部分領域について適用される判定閾値の値よりも低くしてもよい。
【００５８】
また、各特徴点の組に対応する実空間上の点が路面上に位置している場合には、位置姿勢推定部３３は、最新の画像と過去の画像間で対応付けられた少なくとも４個の特徴点の組と、カメラ２の内部パラメータとに基づいて、基本行列の代わりに射影変換行列を算出してもよい。この場合も、位置姿勢推定部３３は、射影変換行列に含まれる、最新の画像取得時と過去の画像取得時間のカメラ２の相対的な位置及び姿勢の変化を表す回転行列及び並進ベクトルに基づいて、各画像取得時における、カメラ２の位置及び姿勢を推定できる。
【００５９】
なお、静止領域特定部３１がセグメンテーション用の識別器を用いて静止領域を特定する場合、運転計画部３４は、カメラ２から画像が得られる度に、上述したような物体検出用の識別器にその画像を入力することで、その画像に表された物体を検出してもよい。
【００６０】
さらに、車両１０には、複数のカメラが搭載されていてもよい。この場合には、位置姿勢推定部３３は、特許文献１に記載された手法に従って、カメラごとに得られた複数の画像の静止領域から抽出され、かつ、互いに対応付けられた複数の特徴点の組に基づいて、一方のカメラに対する他方のカメラの相対的な位置を推定してもよい。
【００６１】
また、上記の実施形態または変形例による、位置姿勢推定装置のプロセッサ２３の各部の機能を実現するコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体といった、コンピュータ読取可能な可搬性の記録媒体に記録された形で提供されてもよい。
【００６２】
以上のように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【符号の説明】
【００６３】
１    車両制御システム
２    カメラ
３    電子制御装置（位置姿勢推定装置）
４    車内ネットワーク
２１    通信インターフェース
２２    メモリ
２３    プロセッサ
３１    静止領域特定部
３２    対応付け部
３３    位置姿勢推定部
３４    運転計画部
３５    車両制御部
【図１】
2020076714.tif 000003
【図２】
2020076714.tif 000004
【図３】
2020076714.tif 000005
【図４】
2020076714.tif 000006
【図５】
2020076714.tif 000007
【図６】
2020076714.tif 000008
【図７】
2020076714.tif 000009