(57)【要約】【課題】パターンのない領域があっても、推定対象平面を表わす領域を精度よく推定する。【解決手段】撮像装置１２によって、異なる位置姿勢で第１の画像及び第２の画像を撮像し、画像変換部３２によって、射影変換行列によって第１の画像を変換する。差分計算部３４によって、変換画像と第２の画像との各画素の差分を算出し、平面候補領域検出部３６によって、複数の閾値の各々を用いて、階層構造で表わされる複数の道路平面候補領域を検出する。そして、平面領域判定部３８によって、最も大きい閾値から降順に、閾値を用いて検出された道路平面候補領域のうち、道路平面のみを表していないと前回判定された道路平面候補領域内の道路平面候補領域の各々について、道路平面のみを表わしているか否かの判定を順次行う。領域統合部４０によって、道路平面のみを表わしていると判定された道路平面候補領域を統合して、道路平面領域を推定する。【選択図】図１
2010009236.tif 000002
【特許請求の範囲】
【請求項１】
推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段と、
前記撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段と、
前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段と、
大きさが異なる複数の閾値の各々を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出する領域検出手段と、
最も大きい閾値を用いて検出された前記平面候補領域の各々が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記閾値を用いて検出された前記平面候補領域のうち、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から検出された前記平面候補領域の各々について、前記推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段と、
前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段と、
を含む平面領域推定装置。
【請求項２】
推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段と、
前記撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段と、
前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段と、
大きさが異なる複数の閾値のうち最も大きい閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から、前記閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段と、
前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段と、
を含む平面領域推定装置。
【請求項３】
前記判定手段は、最も大きい閾値を用いて検出された前記平面候補領域の各々が、前記推定対象平面のみを表わす領域、及び前記推定対象平面を表わす領域を含む領域の何れであるかを判定し、次に大きい閾値から降順に、前記閾値を用いて検出された前記平面候補領域のうち、前記推定対象平面を表わす領域を含む領域であると前回判定された前記平面候補領域内から検出された前記平面候補領域の各々について、前記推定対象平面のみを表わす領域及び前記推定対象平面を表わす領域を含む領域の何れであるかを判定する判定を順次行う請求項１記載の平面領域推定装置。
【請求項４】
前記判定手段は、最も大きい閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が、前記推定対象平面のみを表わす領域、及び前記推定対象平面を表わす領域を含む領域の何れであるかを判定し、次に大きい閾値から降順に、前記推定対象平面を表わす領域を含む領域であると前回判定された前記平面候補領域内から、前記閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が、前記推定対象平面のみを表わす領域、及び前記推定対象平面を表わす領域を含む領域の何れであるかを判定する判定を順次行う請求項２記載の平面領域推定装置。
【請求項５】
前記撮像手段によって撮像された第１画像及び第２画像の各々から、特徴点であって、かつ、第１画像及び第２画像の間で対応した点を検索する検索手段と、
前記検索手段によって検索された前記対応した点に基づいて、前記第１の位置及び第１の姿勢と前記第２の位置及び第２の姿勢との相対関係を算出する位置姿勢算出手段と、
前記検索手段によって検索された前記対応した点と前記位置姿勢算出手段によって算出された相対関係とに基づいて、前記第１画像における推定対象平面上の特徴点の３次元位置を算出する位置算出手段と、
前記位置算出手段によって算出された前記推定対象平面上の特徴点の３次元位置に基づいて、前記推定対象平面を表わすパラメータを算出する平面パラメータ算出手段とを更に含み、
前記画像変換手段は、前記位置姿勢算出手段によって算出された相対関係、及び前記平面パラメータ算出手段によって算出された前記推定対象平面を表わすパラメータに基づいて、前記変換の変換行列を算出し、前記変換行列に基づいて、前記第１画像を変換する請求項１〜請求項４の何れか１項記載の平面領域推定装置。
【請求項６】
前記撮像手段によって撮像された第１画像及び第２画像の各々から、特徴点であって、かつ、第１画像及び第２画像の間で対応した点を検索する検索手段と、
前記検索手段によって検索された前記対応した点に基づいて、前記第１の位置及び第１の姿勢と前記第２の位置及び第２の姿勢との相対関係を算出する位置姿勢算出手段と、
前記検索手段によって検索された前記対応した点と前記位置姿勢算出手段によって算出された相対関係とに基づいて、前記検索手段によって検索された前記対応した点の３次元位置を算出する位置算出手段とを更に含み、
前記判定手段は、前記平面候補領域内の前記対応した点の３次元位置に基づいて、前記平面候補領域が前記推定対象平面のみを表わしているか否かを判定する請求項１〜請求項５の何れか１項記載の平面領域推定装置。
【請求項７】
前記差分算出手段は、各画素について、画素を含む所定領域の画素値の差分を算出する請求項１〜請求項６の何れか１項記載の平面領域推定装置。
【請求項８】
コンピュータを、
推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段、
前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段、
大きさが異なる複数の閾値の各々を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出する領域検出手段、
最も大きい閾値を用いて検出された前記平面候補領域の各々が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記閾値を用いて検出された前記平面候補領域のうち、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から検出された前記平面候補領域の各々について、前記推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段、及び
前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段
として機能させるためのプログラム。
【請求項９】
コンピュータを、
推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段、
前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段、
大きさが異なる複数の閾値のうち最も大きい閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から、前記閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段、及び
前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、平面領域推定装置及びプログラムに係り、特に、推定対象平面を表わす領域を推定する平面領域推定装置及びプログラムに関する。
【背景技術】
【０００２】
従来より、複数の線を有する路面と路面上に存在する障害物を区別するため、路面上の特徴点から射影変換行列を求め、射影変換画像との差分を計算したときの各点の値の大きさにより路面か障害物かを判定する障害物検出装置が知られている（特許文献１）。
【０００３】
また、２台のカメラから平面の射影変換行列を推定し、推定した射影変換行列により一方のカメラの画像を変換し、もう一方のカメラの画像との差分をとることにより、平面領域を検出する平面検出装置が知られている（特許文献２）。
【０００４】
上記の特許文献１、２に記載の技術では、平面の射影変換行列を求め、射影変換行列により変換した画像を用いて差分計算により平面領域を検出している。
【特許文献１】特開２０００−２９３６９３号公報
【特許文献２】特開２００６−５３７５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の特許文献１、２に記載の技術では、パターンのない領域について、変換によりずれが生じても、差分値に変化が出ないため、平面領域であるか否かを精度よく判定することができない、という問題がある。
【０００６】
本発明は、上記の問題点を解決するためになされたもので、パターンのない領域があっても、推定対象平面を表わす領域を精度よく推定することができる平面領域推定装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するために第１の発明に係る平面領域推定装置は、推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段と、前記撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段と、前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段と、大きさが異なる複数の閾値の各々を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出する領域検出手段と、最も大きい閾値を用いて検出された前記平面候補領域の各々が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記閾値を用いて検出された前記平面候補領域のうち、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から検出された前記平面候補領域の各々について、前記推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段と、前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段とを含んで構成されている。
【０００８】
また、第２の発明に係るプログラムは、コンピュータを、推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段、前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段、大きさが異なる複数の閾値の各々を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出する領域検出手段、最も大きい閾値を用いて検出された前記平面候補領域の各々が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記閾値を用いて検出された前記平面候補領域のうち、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から検出された前記平面候補領域の各々について、前記推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段、及び前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段として機能させるためのプログラムである。
【０００９】
第１の発明及び第２の発明によれば、移動体に搭載された撮像手段によって、推定対象平面を含む範囲を撮像した複数の画像を出力する。そして、画像変換手段によって、撮像手段が第１の位置及び第１の姿勢となっているときに撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、第１画像を変換する。
【００１０】
差分算出手段によって、画像変換手段によって変換された第１画像と第２画像とに基づいて、各画素について画素値の差分を算出する。領域検出手段によって、大きさが異なる複数の閾値の各々を用いて、算出された画素値の差分が閾値未満となる領域を平面候補領域として検出する。
【００１１】
そして、判定手段によって、最も大きい閾値を用いて検出された平面候補領域の各々が推定対象平面のみを表わしているか否かを判定する。また、判定手段によって、次に大きい閾値から降順に、閾値を用いて検出された平面候補領域のうち、推定対象平面のみを表していないと前回判定された平面候補領域内から検出された平面候補領域の各々について、推定対象平面のみを表わしているか否かを判定する判定を順次行う。領域推定手段によって、判定手段によって推定対象平面のみを表わしていると判定された平面候補領域を統合して、推定対象平面を表わす領域を推定する。
【００１２】
このように、変換された第１画像と第２画像との各画素の差分から、大きさが異なる複数の閾値の各々を用いて検出された平面候補領域について、検出に用いられた閾値の大きさの降順に、推定対象平面のみを表わしているか否かを順次判定して、推定対象平面を表わす領域を推定することにより、パターンのない領域があっても、推定対象平面を表わす領域を精度よく推定することができる。
【００１３】
第３の発明に係る平面領域推定装置は、推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段と、前記撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段と、前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段と、大きさが異なる複数の閾値のうち最も大きい閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から、前記閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段と、前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段とを含んで構成されている。
【００１４】
第４の発明に係るプログラムは、コンピュータを、推定対象平面を含む範囲を撮像した複数の画像を出力する移動体に搭載された撮像手段が第１の位置及び第１の姿勢となっているときに前記撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、前記第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で前記撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、前記第１画像を変換する画像変換手段、前記画像変換手段によって変換された前記第１画像と前記第２画像とに基づいて、各画素について画素値の差分を算出する差分算出手段、大きさが異なる複数の閾値のうち最も大きい閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定し、次に大きい閾値から降順に、前記推定対象平面のみを表していないと前回判定された前記平面候補領域内から、前記閾値を用いて、前記算出された画素値の差分が前記閾値未満となる領域を平面候補領域として検出すると共に、前記平面候補領域が推定対象平面のみを表わしているか否かを判定する判定を順次行う判定手段、及び前記判定手段によって前記推定対象平面のみを表わしていると判定された平面候補領域を統合して、前記推定対象平面を表わす領域を推定する領域推定手段として機能させるためのプログラムである。
【００１５】
第３の発明及び第４の発明によれば、移動体に搭載された撮像手段によって、推定対象平面を含む範囲を撮像した複数の画像を出力する。そして、画像変換手段によって、撮像手段が第１の位置及び第１の姿勢となっているときに撮像手段によって撮像された第１画像における推定対象平面を表わす領域を、第１の位置及び第１の姿勢と異なる第２の位置及び第２の姿勢で撮像手段によって撮像された第２画像において推定対象平面が表されるべき領域に変換するための変換によって、第１画像を変換する。
【００１６】
差分算出手段によって、画像変換手段によって変換された第１画像と第２画像とに基づいて、各画素について画素値の差分を算出する。領域検出手段によって、大きさが異なる複数の閾値の各々を用いて、算出された画素値の差分が閾値未満となる領域を平面候補領域として検出する。
【００１７】
そして、判定手段によって、大きさが異なる複数の閾値のうち最も大きい閾値を用いて、算出された画素値の差分が閾値未満となる領域を平面候補領域として検出すると共に、平面候補領域が推定対象平面のみを表わしているか否かを判定する。また、判定手段によって、次に大きい閾値から降順に、推定対象平面のみを表していないと前回判定された平面候補領域内から、閾値を用いて、算出された画素値の差分が閾値未満となる領域を平面候補領域として検出すると共に、平面候補領域が推定対象平面のみを表わしているか否かを判定する判定を順次行う。領域推定手段によって、判定手段によって推定対象平面のみを表わしていると判定された平面候補領域を統合して、推定対象平面を表わす領域を推定する。
【００１８】
このように、変換された第１画像と第２画像との各画素の差分から、大きさが異なる複数の閾値の降順に、閾値を用いて平面候補領域を検出して、推定対象平面のみを表わしているか否かを順次判定して、推定対象平面を表わす領域を推定することにより、パターンのない領域があっても、推定対象平面を表わす領域を精度よく推定することができる。
【００１９】
第１の発明に係る判定手段は、最も大きい閾値を用いて検出された平面候補領域の各々が、推定対象平面のみを表わす領域、及び推定対象平面を表わす領域を含む領域の何れであるかを判定し、次に大きい閾値から降順に、閾値を用いて検出された平面候補領域のうち、推定対象平面を表わす領域を含む領域であると前回判定された平面候補領域内から検出された平面候補領域の各々について、推定対象平面のみを表わす領域及び推定対象平面を表わす領域を含む領域の何れであるかを判定する判定を順次行うことができる。
【００２０】
第３の発明に係る判定手段は、最も大きい閾値を用いて、算出された画素値の差分が閾値未満となる領域を平面候補領域として検出すると共に、平面候補領域が、推定対象平面のみを表わす領域、及び推定対象平面を表わす領域を含む領域の何れであるかを判定し、次に大きい閾値から降順に、推定対象平面を表わす領域を含む領域であると前回判定された平面候補領域内から、閾値を用いて、算出された画素値の差分が閾値未満となる領域を平面候補領域として検出すると共に、平面候補領域が、推定対象平面のみを表わす領域、及び推定対象平面を表わす領域を含む領域の何れであるかを判定する判定を順次行うことができる。
【００２１】
第１の発明及び第３の発明に係る平面領域推定装置は、撮像手段によって撮像された第１画像及び第２画像の各々から、特徴点であって、かつ、第１画像及び第２画像の間で対応した点を検索する検索手段と、検索手段によって検索された対応した点に基づいて、第１の位置及び第１の姿勢と第２の位置及び第２の姿勢との相対関係を算出する位置姿勢算出手段と、検索手段によって検索された対応した点と位置姿勢算出手段によって算出された相対関係とに基づいて、第１画像における推定対象平面上の特徴点の３次元位置を算出する位置算出手段と、位置算出手段によって算出された推定対象平面上の特徴点の３次元位置に基づいて、推定対象平面を表わすパラメータを算出する平面パラメータ算出手段とを更に含み、画像変換手段は、位置姿勢算出手段によって算出された相対関係、及び平面パラメータ算出手段によって算出された推定対象平面を表わすパラメータに基づいて、変換の変換行列を算出し、変換行列に基づいて、第１画像を変換することができる。
【００２２】
上記の平面領域推定装置は、撮像手段によって撮像された第１画像及び第２画像の各々から、特徴点であって、かつ、第１画像及び第２画像の間で対応した点を検索する検索手段と、検索手段によって検索された対応した点に基づいて、第１の位置及び第１の姿勢と第２の位置及び第２の姿勢との相対関係を算出する位置姿勢算出手段と、検索手段によって検索された対応した点と位置姿勢算出手段によって算出された相対関係とに基づいて、検索手段によって検索された対応した点の３次元位置を算出する位置算出手段とを更に含み、判定手段は、平面候補領域内の対応した点の３次元位置に基づいて、平面候補領域が推定対象平面のみを表わしているか否かを判定することができる。これによって、平面候補領域が推定対象平面を表わしているか否かを精度よく判定することができる。
【００２３】
上記の差分算出手段は、各画素について、画素を含む所定領域の画素値の差分を算出することができる。これによって、第１画像の変換のずれを考慮した画素値の差分により、平面候補領域を検出することができる。
【発明の効果】
【００２４】
以上説明したように、本発明の平面領域推定装置及びプログラムによれば、パターンのない領域があっても、推定対象平面を表わす領域を精度よく推定することができる、という効果が得られる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００２６】
図１に示すように、本実施の形態に係る平面領域推定装置１０は、車両（図示省略）に搭載され、かつ、道路平面を含む自車両前方を撮像して画像を出力する撮像装置１２と、撮像装置１２から得られる画像に基づいて、道路平面を表わす領域を推定して、推定結果を表示装置１６に表示させるコンピュータ１４とを備えている。
【００２７】
撮像装置１２は、自車両前方を撮像し、画像の画像信号を生成する単眼のカメラで構成される撮像部（図示省略）と、撮像部で生成された画像信号をＡ／Ｄ変換するＡ／Ｄ変換部（図示省略）と、Ａ／Ｄ変換された画像信号を一時的に格納するための画像メモリ（図示省略）とを備えている。
【００２８】
コンピュータ１４は、ＣＰＵと、ＲＡＭと、後述する平面領域推定処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備え、機能的には次に示すように構成されている。コンピュータ１４は、撮像装置１２により異なる位置姿勢で撮像された複数の画像を取得する画像入力部１８と、取得した複数の画像の各々から、画像上で追跡しやすい特徴点を複数抽出する特徴点抽出部２０と、特徴点抽出部２０により得られた２つの画像の各々における特徴点から、２つの画像の間で対応する対応点を検索する対応点検索部２２と、対応点検索部２２で得られた各対応点における各画像の画像座標を入力として、対応点が検索された一方の画像を撮像したときの撮像装置１２の位置姿勢を基準とした、対応点が検索された他方の画像を撮像したときの撮像装置１２の位置姿勢への変化（位置及び姿勢の相対関係）を、撮像装置１２の運動のＸＹＺ軸方向の移動量及びＸＹＺ軸を基準とする回転量として算出する位置姿勢算出部２４と、対応点検索部２２で得られた各対応点における各画像の画像座標と位置姿勢算出部２４によって算出された移動量及び回転量とに基づいて、各対応点の３次元座標を計算する３次元位置計算部２６とを備えている。
【００２９】
画像入力部１８は、異なる位置及び姿勢で撮像された２つの画像を撮像装置１２から取得する。なお、以下では、異なる位置及び姿勢で撮像された２つの画像のうち、第１の位置及び第１の姿勢で撮像された画像を第１の画像とし、第２の位置及び第２の姿勢で撮像された画像を第２の画像として説明する。
【００３０】
特徴点抽出部２０は、撮像装置１２から取得した第１の画像から特徴点を抽出すると共に、撮像装置１２から取得した第２の画像から特徴点を抽出する。特徴点とは、周囲の点と区別でき、異なる画像間で対応関係を求めることが容易な点のことを指す。特徴点は、２次元的に濃淡変化の勾配値が大きくなる画素を検出する方法（例えばＨａｒｒｉｓオペレータなど）を用いて、自動的に抽出される。Ｈａｒｒｉｓオペレータを用いる方法では、以下に説明するように、特徴点を抽出する。まず、画像の点（ｕ，ｖ）の輝度をＩ（ｕ，ｖ）として、以下の（１）式によって、行列Ｍを計算する。
【００３１】
【数１】
2010009236.tif 000003
【００３２】
ただし、Ｉｕ，Ｉｖはそれぞれ水平方向、垂直方向の微分、Ｇσは標準偏差σのガウス分布による平滑化を表す。
【００３３】
そして、上記（１）式で計算された行列Ｍの固有値λ１、λ２を用いて、以下の（２）式によりコーナー強度を計算する。
【００３４】
【数２】
2010009236.tif 000004
【００３５】
ただし、ｋは予め設定される定数であって、０．０４〜０．０６の値が一般に用いられる。Ｈａｒｒｉｓオペレータを用いる方法では、このコーナー強度がしきい値以上でかつ極大となる点を選択し、選択された点を特徴点として抽出する。
【００３６】
対応点検索部２２は、特徴点抽出部２０において抽出された第１の画像の特徴点に対応する点を、第２の画像において抽出された特徴点から検索して、特徴点の対応付けを行う。
【００３７】
２つの画像間での特徴点の対応付けでは、特徴点周辺に設定した小領域での輝度分布が似ている点の組を選択し、選択された点の組を対応している点とする。２つの特徴点が似ているかどうかの判定にはＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅｓ）などの値を用いればよい。
【００３８】
例えば、第１の画像Ｉ１の特徴点ｐ＝（ｘ，ｙ）について、第２の画像Ｉ２の特徴点ｐ'＝（ｘ’，ｙ’）の各々との組み合わせをペアとして、以下の（３）式を各々計算する。
【００３９】
【数３】
2010009236.tif 000005
ただし、ｒは、小領域の大きさを決定する変数であり、予め定められている。
【００４０】
そして、上記（３）式によって計算される値が最小となったときの第２の画像の特徴点を検索し、第１の画像の特徴点に対応する点とする。
【００４１】
上記の計算を、第１の画像の特徴点の各々について行って、第１の画像の特徴点の各々に対応する点を、第２の画像の特徴点から検索する。また、対応点検索部２２は、特徴点抽出部２０において２つの画像の各々から抽出された特徴点について、２つの画像間で対応する点を少なくとも８組検索する。
【００４２】
位置姿勢算出部２４は、対応点検索部２２より得られる２つの画像における少なくとも８組の対応点の画像座標から、２つの画像の各々が撮像されたときの撮像装置１２の位置及び姿勢の変化（ＸＹＺ軸方向の移動量及びＸＹＺ軸を基準とする回転量）を計算する。位置及び姿勢の変化は、図２に示すように、第１の画像から第２の画像への回転行列Ｒ（Ｘ軸を基準とする回転量、Ｙ軸を基準とする回転量、Ｚ軸を基準とする回転量）と、並進ベクトルｔ（Ｘ軸方向の移動量ｔｘ、Ｙ軸方向の移動量ｔｙ、Ｚ軸方向の移動量ｔｚ）との６要素から構成される運動である。なお、回転行列Ｒ及び並進ベクトルｔの要素は、２つの画像間の画像座標の変換を表す物理量である。
【００４３】
ここで、第１の画像から第２の画像への回転行列Ｒと並進ベクトルｔとの計算方法について説明する。第１の画像におけるｎ点の対応点の画像座標Ｉｉと第２の画像におけるｎ点の対応点の画像座標Ｉｉ’とについて（ｎ≧８）、対応点が正しくて誤差がなければ、以下の（４）式を満たす３×３行列Ｆが存在する。
【００４４】
【数４】
2010009236.tif 000006
【００４５】
ただし、Ｉｉ＝(ｕｉ，ｖｉ，１)Ｔ、Ｉｉ’＝(ｕｉ’，ｖｉ’，１)Ｔであり、第１の画像での画像座標（ｕｉ，ｖｉ）の点に対応する第２の画像での点の画像座標が（ｕｉ’，ｖｉ’）である。
【００４６】
ここで、上記（４）式を満たす行列Ｆは、定数倍の不定性を持っている。すなわち、Ｆｓが上記（４）式を満たす場合には、αＦｓも上記（４）式を満たす（ただし、ａは実数）。よって、行列Ｆを以下の（５）式のように表すことができる。
【００４７】
【数５】
2010009236.tif 000007
【００４８】
また、上記（４）式、（５）式より、以下の（６）式が成り立つ。
【００４９】
【数６】
2010009236.tif 000008
【００５０】
ここで、８組以上の対応点Ｉｉ、Ｉｉ’があれば、上記（６）式が少なくとも８つ得られるため、８つの変数ｆ１１〜ｆ３２を求めることができる。なお、得られる８つの式が互いに独立である必要があり、また、誤差が含まれる場合であっても安定して計算するために、他の対応点の組となるべく異なる動きをしている特徴点の組を対応点として検索することが好ましい。
【００５１】
上述したように行列Ｆが計算でき、また、撮像装置１２のキャリブレーション行列Ｋが既知である場合には、以下の（７）式、（８）式より、回転行列Ｒと並進ベクトルｔとを計算することができる．
【００５２】
【数７】
2010009236.tif 000009
【００５３】
撮像装置１２のキャリブレーション行列Ｋは、以下の（９）式で表される。
【００５４】
【数８】
2010009236.tif 000010
【００５５】
ただし、ｆｘは、撮像装置１２のＸ方向の焦点距離、ｆｙは、撮像装置１２のＹ方向の焦点距離、（ｃｕ，ｃｖ）は画像中心である。なお、画像上の画像座標は、Ｘ方向に対応するＵ方向の座標ｕとＹ方向に対応するＶ方向の座標ｖとで表されるものとする。
【００５６】
３次元位置計算部２６は、対応点検索部２２から得られる２つの画像間でのｎ点の対応点の画像座標の組Ｉｉ、Ｉｉ’、及び位置姿勢算出部２４から得られる２つの画像間の回転行列及び並進ベクトルを用いて、ｎ点の対応点の３次元座標を計算する。対応点の３次元座標は以下の方法により計算できる。
【００５７】
まず、２枚の画像の各々の対応点の画像座標を（ｕ，ｖ）、（ｕ’，ｖ’）とし、画像間の回転行列をＲとし、並進ベクトルをｔとし、撮像装置１２のキャリブレーション行列をＫとしたとき、以下の（１０）式、（１１）式のような行列Ｐ、Ｐ’を定義する。
【００５８】
【数９】
2010009236.tif 000011
【００５９】
そして、ｐｉ，ｐ’ｉをそれぞれ行列Ｐ，Ｐ’の第ｉ行のベクトルとすると、対応点の３次元座標Ｘ＝（ｘ，ｙ，ｚ，１）Ｔは以下の（１２）式の解として求めることができる。
【００６０】
【数１０】
2010009236.tif 000012
【００６１】
また、コンピュータ１４は、道路平面上の各対応点の３次元座標に基づいて、道路平面を表わすパラメータを推定する平面推定部３０と、一方の画像の道路平面領域を他方の画像の道路平面領域に重ねるように変換するための変換を示す射影変換行列に基づいて、一方の画像を変換する画像変換部３２と、一方の画像を変換した変換画像と他方の画像との各画素の差分値を計算する差分計算部３４と、各画素の差分値に基づいて、道路平面候補領域を検出する平面候補領域検出部３６と、検出された道路平面候補領域が道路平面を表わす領域であるか否かを判定する平面領域判定部３８と、道路平面を表わす領域を統合して、推定結果として表示装置１６に表示させる領域統合部４０とを備えている。
【００６２】
平面推定部３０は、３次元位置計算部２６により得られる対応点の３次元位置のうち、第１の画像の道路平面を表わす領域内の対応点の３次元位置を用いて、道路平面を表わすパラメータを推定する。推定する道路平面は３次元空間で以下の（１４）式で表すことができる。
【００６３】
【数１１】
2010009236.tif 000013
上記（１４）式において、（ａ,ｂ,ｃ）が、推定する道路平面のパラメータである。
【００６４】
平面推定部３０は、第１の画像の道路平面を表わす領域内から対応点を抽出し、抽出された対応点の３次元座標から、上記のパラメータ（ａ,ｂ,ｃ）を求める。３点以上の３次元座標が得られると、上記パラメータの計算が可能であるが、３点より多くの３次元座標から得られた場合には、最小二乗法やＬＭｅｄＳ（Ｌｅａｓｔ Ｍｅｄｉａｎ Ｓｑｕａｒｅｓ）法などにより、パラメータ（ａ,ｂ,ｃ）を推定する。なお、第１の画像の道路平面を表わす領域は、撮像装置１２の道路平面に対する位置及び姿勢に基づいて、予め求めておけばよい。または、１ステップ前の処理で推定された道路平面領域を用いて、第１の画像の道路平面を表わす領域を求めてもよい。また、上記の推定する道路平面のパラメータは、撮像装置１２の第１の位置及び第１の姿勢に対する道路平面の相対的な位置及び姿勢を表わしている。
【００６５】
画像変換部３２は、位置姿勢算出部２４により算出された第１の画像と第２の画像との間の位置及び姿勢の変化と、平面推定部３０により得られた道路平面のパラメータとに基づいて、第１の画像における道路平面を表わす領域を、第２の画像において道路平面が表されるべき領域に重ねるように変換するための変換を示す射影変換行列を計算し、計算された射影変換行列により、第１の画像を変換する。
【００６６】
第１の画像と第２の画像との間の位置及び姿勢の変化が、回転行列Ｒと並進ベクトルｔによって表され、道路平面のパラメータ（ａ,ｂ,ｃ）で表される道路平面がａｘ＋ｂｙ＋ｃｚ＝1であるとき、射影変換行列Ｈは、以下の（１５）式によって計算される。
【００６７】
【数１２】
2010009236.tif 000014
【００６８】
ただし、行列Ｋは撮像装置１２のキャリブレーション行列である。
【００６９】
上記（１５）式によって計算された射影変換行列Ｈを用いて、第１の画像を射影変換した変換画像を生成する。第１の画像の画素をＩｉとすると、対応する変換画像の画素Ｊｉは以下の（１６）式により計算される。
Ｊｉ＝Ｈ・Ｉｉ      ・・・（１６）
例えば、図３（Ａ）に示すような第１の画像を射影変換して、図３（Ｃ）に示すような変換画像を生成する。
【００７０】
差分計算部３４は、画像変換部３２により生成された、射影変換行列により第１の画像を変換した変換画像と第２の画像とについて、各画素の差分値を計算する。例えば、上記図３（Ｃ）に示すような変換画像と、図３（Ｂ）に示すような第２の画像との各画素の差分値を計算する。
【００７１】
平面候補領域検出部３６は、差分計算部３４により得られた各画素に対する差分値から、複数の平面候補領域を検出する。
【００７２】
ここで、本実施の形態の原理について説明する。従来、２枚の画像を用いて平面候補領域を抽出する場合、画像間の位置及び姿勢の相対的な関係、及び推定対象の平面の位置及び姿勢の相対的な関係を求め、２つの画像間での平面領域に対する射影変換行列を計算し、一方の画像を射影変換行列により変換した変換画像と、もう一方の画像との差分をとり、各画素の差分値を閾値で２値化することにより、平面領域を求めている。射影変換した変換画像ともう一方の画像との差分をとると、平面領域上にある画素であれば、変換画像と第２の画像とで同じ位置を表わしており、差分値が小さくなるため、平面領域を抽出することができる。しかし、テクスチャパターンのない領域では、変換画像と第２の画像でずれが生じても差分が大きくならず、平面領域に属していなくても差分値が小さくなるため、誤って平面領域として抽出してしまう。
【００７３】
これに対し、複数の閾値の各々を用いて、各画素の差分値の２値化を行い、差分値が閾値より小さくなる領域を、階層構造で表される分割された領域として検出し、それぞれ分割された領域毎に、画像から計算された内部に存在する特徴点の３次元位置を用いて、平面領域であるか否かを判定することにより、テクスチャのない領域を誤って平面領域として抽出することが防ぐことができる。
【００７４】
そこで、本実施の形態では、平面候補領域検出部３６によって、大きさが異なる複数の閾値を用いて、以下に説明するように、階層構造で表わされる複数の平面候補領域を検出する。
【００７５】
まず、平面候補領域の検出では、各注目画素に対して、その注目画素を中心とする所定領域を設定して、所定領域の画素の差分値として、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅｓ）又はＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｅｆｆｅｒｅｎｃｅｓ）を計算し、その計算値が、閾値未満であれば、注目画素が平面候補領域上の画素であると判断し、計算値が閾値以上であれば、注目画素が平面候補領域上の画素でないと判断する。
【００７６】
閾値を変更して、各々の閾値を用いて、各注目画素が平面候補領域上の画素であるか否かを判断して、複数の平面候補領域を検出する。例えば、Ｔｈ１＞Ｔｈ２＞Ｔｈ３の関係にある３つの閾値を用いて、道路平面候補領域を検出すると、図４（Ａ）に示すように、最も大きい閾値Ｔｈ１を用いて検出した場合には、道路平面上にない領域も含んだ広い道路平面候補領域が検出される。また、図４（Ｂ）、（Ｃ）に示すように、検出に用いる閾値をＴｈ２、Ｔｈ３と小さくするに従い、道路平面候補領域が多くの領域に分割されて検出される。
【００７７】
上記図４（Ｃ）に示すように、閾値をＴｈ３と小さくした場合には、道路平面の一部が候補領域として検出されなくなるが、これは推定された位置及び姿勢の変化、及び平面パラメータに含まれる誤差の影響で、輝度変化が大きい部分などで、道路平面であっても差分値が閾値Ｔｈ３より大きくなることによるものである。また、閾値をＴｈ３にまで小さくした場合でもテクスチャのない道路平面以外の領域が候補領域として検出される。
【００７８】
なお、各閾値で道路平面候補領域を検出するとき、各画素のＳＡＤ又はＳＳＤの計算値のみに基づいて検出を行うと、誤差やノイズなどにより、孤立した平面候補領域が検出されたり、検出された平面候補領域内に抜けが発生したりするため、検出された道路平面候補領域に対して、収縮、膨張処理を行うようにしても良い。
【００７９】
上述したように、複数の閾値の各々を用いて、複数の道路平面候補領域が検出されると、道路平面候補領域の包含関係から、候補領域間の関係が求められ、階層構造で表わされる道路平面候補領域が取得される。
【００８０】
検出に用いる閾値を大きい閾値から小さい閾値に変更すると、小さい閾値で検出された候補領域は、大きい閾値で検出された候補領域内の部分領域となる。そこで、大きい値閾値で検出された候補領域と小さい閾値で検出された候補領域との包含関係から、図５に示すような階層構造で表わされる複数の道路平面候補領域を求める。最も大きい閾値を用いて検出された候補領域Ａ１を一番上の階層とし、候補領域Ａ１は、次に大きい閾値で検出された候補領域Ｂ１〜Ｂ５に分割され、例えば、候補領域Ｂ２は、次に大きい閾値で検出された候補領域Ｃ２、Ｃ３に分割される。これらの候補領域の包含関係から階層構造で表わされる複数の道路平面候補領域が求められる。
【００８１】
平面領域判定部３８は、平面候補領域検出部３６により得られる階層構造で表わされる複数の道路平面候補領域、対応点検索部２２で検索された対応点の画像上の位置、及び３次元位置計算部２６により計算された対応点の３次元位置に基づいて、以下に説明するように、道路平面候補領域の各々が、道路平面のみを表わす領域であるか否かを判定する。
【００８２】
得られた平面候補領域の階層構造を用いて、階層構造の上位にある道路平面候補領域から、順に、道路平面のみを表わしているか否かを判定する。まず、最も上位の階層に対応する道路平面候補領域Ａ１が、道路平面のみを表わしているか、道路平面領域を含まないか、又は何れでもないかを判定する。この判定は、判定対象の道路平面候補領域内の特徴点が、道路平面上の点であるか否かにより行い、図６に示すように、各特徴点について、３次元位置に基づいて、道路平面上の点であるか否かが判定される。道路平面候補領域内の特徴点の全てについて、特徴点の３次元位置と道路平面との距離が閾値以下であれば、全ての特徴点が道路平面上の点のみから構成され、道路平面候補領域が道路平面のみを表わしていると判定される。また、道路平面候補領域内の特徴点の全てについて、特徴点の３次元位置と道路平面との距離が閾値より大きければ、全ての特徴点が道路平面上にない点であり、道路平面候補領域が道路平面領域を含まないと判定される。
【００８３】
例えば、最上位の階層に対応する道路平面候補領域Ａ１では、道路平面上の点と道路平面上にない点との両方を含むため、道路平面候補領域が、道路平面のみを表わす領域、及び道路平面領域を含む領域の何れでもない。このような場合には、不明であると判定し、階層構造において、道路平面候補領域Ａ１の下位の階層に対応する道路平面候補領域の各々について、同様に上記の判定処理を行う。
【００８４】
例えば、最上位より１つ下位の階層に対応する道路平面候補領域Ｂ１には、道路平面上でない特徴点のみが含まれるので、道路平面領域を含まないと判定し、更に下位の階層に対応する道路平面候補領域Ｃ１については、上記の判定処理を行わない。また、最上位より１つ下位の階層に対応する他の道路平面候補領域Ｂ２には、道路平面上の特徴点と道路平面上でない特徴点との両方が含まれるので、不明であると判定し、更に一つ下位の階層に対応する道路平面候補領域Ｃ２、Ｃ３の各々について、上記の判定処理を行う。
【００８５】
このように、上記の判定処理で、道路平面候補領域について不明であると判定されれば、１つ下位の階層に対応する道路平面候補領域について判定処理を行い、道路平面候補領域が道路平面のみを表わす、又は道路平面領域を含まないと判定された場合には、更に下位の階層に対応する道路平面候補領域については、判定処理を行わない。これによって、図７に示すような、各道路平面候補領域に対する判定結果が得られる。
【００８６】
領域統合部４０は、図８（Ａ）に示すような、平面領域判定部３８によって道路平面のみを表わしていると判定された道路平面候補領域を統合して、図８（Ｂ）に示すような、統合された候補領域を、道路平面領域として推定する。
【００８７】
候補領域の統合処理は、以下に説明するように行う。平面領域のみを表わしていると判定されたｎ個の候補領域Ｒ１〜Ｒｎが得られたとき、異なる２つの候補領域ペアＲｉ,Ｒｊについて、まず隣り合っているか否かを判定する。
【００８８】
隣り合っているか否かの判定は、Ｒｉの領域中心とＲｊの領域中心とを結ぶ直線が、Ｒｉ、Ｒｊ以外の候補領域を通るか否かで行う。中心を結ぶ直線が他の候補領域を通ることがなければ隣り合っていると判定し、他の候補領域を通れば隣り合っていないと判定する。Ｒｉ,Ｒｊが隣り合っていなければ、他の候補領域ペアを選択して、上記の隣り合っているか否かの判定を行う。２つの候補領域Ｒｉ,Ｒｊが隣り合っていれば、２つの候補領域の統合を行い、１つの領域とする。
【００８９】
領域統合部４０は、上記の統合処理を、統合できる候補領域がなくなるまで繰り返し、統合された候補領域を、道路平面領域として推定し、表示装置１６に出力する。
【００９０】
また、２つの候補領域の統合は、以下に説明するように行われる。２つの候補領域ペアＲｉ,Ｒｊを統合するときに、まず、一方の候補領域の境界上の点から、もう一方の候補領域の境界上の点のうち、最も近くなる点を求め、その２点を直線で結ぶ。得られた直線が２つの候補領域内を通らないなら、統合領域の境界候補となる直線の集合に、得られた直線を追加する。例えば、図９（Ａ）に示すように、候補領域Ｒｉの境界上の点Ｐｍから候補領域Ｒｊの境界上の最も近い点を結ぶ直線は、候補領域Ｒｉ,Ｒｊの内部を通らないので、統合領域の境界候補となる直線の集合に追加される。また、図９（Ｂ）に示すように、候補領域Ｒｉの境界上の点Ｐｎから候補領域Ｒｊの境界上の最も近い点を結んだ直線は、候補領域Ｒｉの内部を通るので、境界候補としない。
【００９１】
以上のような処理を、候補領域Ｒｉ及びＲｊの境界上のすべての点について行って、統合領域の境界候補となる直線の集合を求める。
【００９２】
統合領域の境界候補となる直線の集合が得られると、境界候補となる直線の集合のうちの２本の直線を選択し、選択された２本の直線により囲まれる領域を統合領域としたときに、統合領域の面積が最大となるような２本の直線を特定する。例えば、図１０（Ａ）に示すような、境界候補の直線の集合が得られた場合には、直線Ｌ３とＬ５を選択すると、図１０（Ｂ）に示すような統合領域が得られ、直線Ｌ１とＬ７を選択すると、図１０（Ｃ）に示すような統合領域が得られる。この場合には、上記図１０（Ｃ）のような統合領域の面積が最大となるので、統合領域の面積が最大となるような２本の直線として、直線Ｌ１とＬ７が特定される。
【００９３】
最後に、得られた統合領域から、道路平面領域でないと判定された道路平面候補領域と重なる領域を削除して、２つの候補領域ペアＲｉ,Ｒｊを統合した領域とする。
【００９４】
次に、本実施の形態に係る平面領域推定装置１０の作用について説明する。なお、平面領域推定装置１０を搭載した車両の走行中に、道路平面領域を推定する場合を例に説明する。
【００９５】
まず、撮像装置１２によって、自車両前方の連続撮像が開始されると、コンピュータ１４において、図１１に示す平面領域推定処理ルーチンが実行される。
【００９６】
まず、ステップ１００において、撮像装置１２から、第１の位置及び第１の姿勢で撮像された第１の画像と、第２の位置及び第２の姿勢で撮像された第２の画像とを順に取得する。
【００９７】
そして、ステップ１０２において、上記ステップ１００で取得した第１の画像と第２の画像との各々から特徴点を複数抽出し、ステップ１０４で、上記ステップ１０２で抽出された複数の特徴点から、第１の画像と第２の画像との間で対応する対応点を少なくとも８組検索する。そして、ステップ１０６において、上記ステップ１０４で検索された少なくとも８組の対応点の画像座標に基づいて、第１の画像を撮像したときの撮像装置１２の位置姿勢を基準とした第２の画像を撮像したときの撮像装置１２の位置姿勢の変化を表わす並進ベクトル及び回転行列を算出する。
【００９８】
そして、ステップ１０８において、上記ステップ１０６で算出された第１の画像と第２の画像との間における並進ベクトル及び回転行列、及び上記ステップ１０４で検索された第１の画像と第２の画像との各々における対応点の画像座標に基づいて、この対応点が示す特徴点の３次元座標を計算する。次のステップ１１０では、上記ステップ１０８で計算された、第１の画像の道路平面を表わす領域内の対応点が示す特徴点の３次元座標に基づいて、道路平面を表わすパラメータを推定する。
【００９９】
そして、ステップ１１２において、上記ステップ１０６で算出された第１の画像と第２の画像との間における並進ベクトル及び回転行列と、上記ステップ１０８で推定された道路平面を表わすパラメータとに基づいて、射影変換行列を算出する。ステップ１１４において、上記ステップ１１２で算出された射影変換行列に従って、第１の画像を変換する。
【０１００】
次のステップ１１６では、上記ステップ１１４で第１の画像を変換した変換画像と、上記ステップ１００で取得した第２の画像との各画素の差分値を算出する。そして、ステップ１１８において、大きさが異なる複数の閾値の各々を用いて、上記ステップ１１６で算出された各画素の差分値から、階層構造で表わされる複数の道路平面候補領域を検出する。
【０１０１】
ステップ１２０において、階層構造の階層を示す変数ｎを初期値である１に設定すると共に、判定対象領域として、最も大きい閾値を用いて検出された少なくとも１つの道路平面候補領域を設定する。次に、ステップ１２２で、上記ステップ１０８で算出された対応点の３次元座標のうち、第ｎ階層の判定対象領域である道路平面候補領域内の対応点の３次元座標に基づいて、第ｎ階層の判定対象領域である道路平面候補領域が、道路平面のみを表わしているか、道路平面領域を含まないか、又は不明であるか（何れでもないか）を判定する。
【０１０２】
そして、ステップ１２４において、上記ステップ１２２の第ｎ階層の判定対象領域に対する判定において、不明であると判定された道路平面候補領域が存在するか否かを判定する。不明であると判定された道路平面候補領域が存在する場合には、ステップ１２６において、階層構造の階層を示す変数ｎをインクリメントし、ステップ１２８において、上記ステップ１２２において不明であると前回判定された道路平面候補領域内に存在する第ｎ階層の道路平面候補領域を、第ｎ階層の判定対象領域として設定して、ステップ１２２へ戻る。
【０１０３】
上記ステップ１２４において、不明であると判定された道路平面候補領域が存在せず、第ｎ階層の判定対象領域の全てについて、道路平面のみを表わしている、又は道路平面領域を含まないと判定された場合には、ステップ１３０へ移行する。また、上記ステップ１２４において、不明であると判定された道路平面候補領域が存在する場合であっても、一番小さい閾値を用いて検出された道路平面候補領域について、上記ステップ１２２の判定が行われた場合には、ステップ１３０へ移行する。
【０１０４】
ステップ１３０では、上記ステップ１２２で道路平面のみを表わしていると判定された道路平面候補領域を統合して、道路平面領域として推定する。そして、ステップ１３２において、推定された道路平面領域を表示装置１６に表示させて、平面領域推定処理ルーチンを終了する。
【０１０５】
また、上記ステップ１３０は、図１２に示す平面候補統合処理ルーチンによって実現される。まず、ステップ１５０において、上記ステップ１２２で道路平面のみを表わしていると判定された道路平面候補領域のうち、２つの道路平面候補領域のペアＲｉ、Ｒｊ（１≦ｉ，ｊ≦ｎ、ｉ≠ｊ）を選択する。そして、ステップ１５２において、上記ステップ１５０で選択された２つの道路平面候補領域のペアＲｉ、Ｒｊが隣り合っているか否かを判定する。２つの道路平面候補領域のペアＲｉ、Ｒｊが隣り合っていないと判定された場合には、上記ステップ１５０へ戻って、道路平面候補領域の別のペアを選択する。
【０１０６】
一方、上記ステップ１５２で、２つの道路平面候補領域のペアＲｉ、Ｒｊが隣り合っていると判定された場合には、ステップ１５４において、２つの道路平面候補領域のペアＲｉ、Ｒｊを統合する。
【０１０７】
そして、ステップ１５６では、上記ステップ１２２で道路平面のみを表わしていると判定された道路平面候補領域のうち、全ての道路平面候補領域のペアについて、上記ステップ１５２の判定処理が行われたか否かを判定し、上記ステップ１５２の判定処理が行われていない道路平面候補領域のペアが存在する場合には、上記ステップ１５０へ戻り、道路平面候補領域の別のペアを選択する。一方、上記ステップ１５６において、全ての道路平面候補領域のペアについて、上記ステップ１５２の判定処理が行われた場合には、平面候補統合処理ルーチンを終了する。
【０１０８】
上記ステップ１５４の処理は、図１３に示す処理ルーチンによって実現される。まず、ステップ１５８において、一方の道路平面候補領域の境界上の点から、もう一方の道路平面候補領域の境界上の最も近い点までの直線を求める。ステップ１６０では、上記ステップ１５８で得られた直線が、どちらの道路平面候補領域内も通らないか否かを判定し、どちらの道路平面候補領域内も通らない場合には、統合領域の境界候補となる直線の集合に、上記ステップ１５８で得られた直線を追加する。
【０１０９】
そして、ステップ１６２において、一方の道路平面候補領域の全ての境界上の点について、上記ステップ１５８、１６０の処理を実行したか否かを判定する。全ての境界上の点について実行していない場合には、上記ステップ１５８へ戻り、一方の道路平面候補領域の境界上の他の点について、上記ステップ１５８、１６０の処理を実行する。
【０１１０】
上記ステップ１６２で、全ての境界上の点について実行したと判定された場合には、ステップ１６４において、境界候補となる直線の集合から、２本の直線により囲まれる領域を統合領域としたときに統合領域の面積が最大となるような２本の直線を特定して、特定した２本の直線を統合領域の境界として、２つの道路平面候補領域を統合する。
【０１１１】
そして、ステップ１６６において、上記ステップ１６４で得られた統合領域から、上記ステップ１２２で道路平面領域を含まないと判定された道路平面候補領域と重なる領域を削除して、処理ルーチンを終了する。
【０１１２】
以上説明したように、第１の実施の形態に係る平面領域推定装置によれば、第１の画像を変換した変換画像と第２の画像との各画素の差分から、大きさが異なる複数の閾値の各々を用いて検出された、階層構造で表わされる複数の平面候補領域について、検出に用いられた閾値の大きさの降順に、道路平面のみを表わしているか否かを順次判定して、なるべく大きい範囲の領域として、道路平面を表わす領域を検出することができる。また、パターンのない領域があっても、誤って道路平面を表わす領域として検出することを防止することができる。また、道路平面のみを表わす領域を統合して、道路平面を表わす領域を精度よく推定することができる。
【０１１３】
また、道路平面候補領域内の対応点の３次元位置に基づいて、道路平面候補領域が道路平面のみを表わしているか否かを精度よく判定することができる。
【０１１４】
次に、第２の実施の形態に係る平面領域推定装置について説明する。なお、第２の実施の形態に係る平面領域推定装置は、第１の実施の形態と同様の構成となっているため、同一符号を付して説明を省略する。
【０１１５】
第２の実施の形態では、オプティカルフローの近似式を利用して、第１の画像を変換している点が、第１の実施の形態と異なっている。
【０１１６】
第２の実施の形態では、画像変換部３２によって、第１の画像における道路平面を表わす領域を、第２の画像において道路平面が表されるべき領域に重ねるように変換するための変換を示すオプティカルフローの近似式を計算し、計算された近似式により、第１の画像を変換する。
【０１１７】
位置姿勢算出部２４により算出された第１の画像と第２の画像との間の位置及び姿勢の変化が、回転行列ｗ＝(ｗｘ,ｗｙ,ｗｚ)Ｔと並進ベクトルｔ＝(ｔｘ,ｔｙ,ｔｚ)Ｔで表されるとき、道路平面ＡＸ＋ＢＹ＋ＣＺ＝1上にある点を投影した点ｐ＝(ｘ,ｙ)Ｔの画像間のオプティカルフローの近似式(ｕ,ｖ)Ｔは、以下の（１７）式、（１８）式により計算される。
【０１１８】
【数１３】
2010009236.tif 000015
【０１１９】
上記（１７）式、（１８）式により、第１の画像における点ｐ＝(ｘ,ｙ)Ｔに対応する第２の画像上の点はｐ’＝(ｘ＋ｕ,ｙ＋ｖ)Ｔとなる。上記（１７）式、（１８）式により、第１の画像の各画素について、変換画像において対応する画素を求め、第１の画像を変換して変換画像を生成する。
【０１２０】
なお、第２の実施の形態に係る平面領域推定装置の他の構成及び作用は、第１の実施の形態と同様であるため、説明を省略する。
【０１２１】
次に、第３の実施の形態に係る平面領域推定装置について説明する。なお、第１の実施の形態と同様の構成となっている部分については、同一符号を付して説明を省略する。
【０１２２】
第３の実施の形態では、道路平面のみを表わしているか道路平面領域を含まないか不明であると前回判定された道路平面候補領域内から、閾値を用いて、道路平面候補領域を検出するようになっている点が、第１の実施の形態と異なっている。
【０１２３】
図１４に示すように、第３の実施の形態に係る平面領域推定装置３１０のコンピュータ３１４は、画像入力部１８と、特徴点抽出部２０と、対応点検索部２２と、位置姿勢算出部２４と、３次元位置計算部２６と、平面推定部３０と、画像変換部３２と、差分計算部３４と、各画素の差分値に基づいて、後述する平面領域判定部３８で不明であると前回判定された道路平面候補領域内から、道路平面候補領域を検出する平面候補領域検出部３３６と、平面候補領域検出部３３６によって検出された道路平面候補領域が道路平面のみを表わしている否かを判定する平面領域判定部３３８と、領域統合部４０とを備えている。
【０１２４】
平面候補領域検出部３３６は、大きさが異なる複数の閾値について、大きい閾値から降順に、以下に説明するように、複数の道路平面候補領域を順次検出する。
【０１２５】
まず、各画素の差分値に基づいて、最も大きい閾値を用いて、差分値が閾値未満となる領域を、道路平面候補領域として検出する。
【０１２６】
次に、前回の検出により得られた道路平面候補領域のうち、平面領域判定部３３８によって不明であると判定された道路平面候補領域内から、次に大きい閾値を用いて、差分値が閾値未満となる領域を、道路平面候補領域として検出する。
【０１２７】
そして、平面領域判定部３３８によって不明であると判定された道路平面候補領域がなくなるまで、前回の検出により得られた道路平面候補領域のうち、平面領域判定部３３８によって不明であると判定された道路平面候補領域内から、次の大きい閾値を用いて、差分値が閾値未満となる領域を、道路平面候補領域として検出する検出処理を繰り返し行う。
【０１２８】
平面領域判定部３３８は、平面候補領域検出部３３６によって道路平面候補領域が検出される毎に、対応点検索部２２で検索された対応点の画像上の位置、及び３次元位置計算部２６により計算された対応点の３次元位置に基づいて、検出された道路平面候補領域が、道路平面のみを表わしているか、道路平面領域を含まないか、又は不明であるか（何れでもないか）を判定する。
【０１２９】
道路平面候補領域が不明であると判定されれば、上記の平面候補領域検出部３３６によって、不明であると判定された道路平面候補領域内から、閾値を用いて、再び道路平面候補領域が検出される。一方、道路平面候補領域が道路平面のみを表わしている、又は道路平面領域を含まないと判定された場合には、その道路平面候補領域内から、平面候補領域検出部３３６によって道路平面候補領域が検出されない。
【０１３０】
次に、第３の実施の形態に係る平面領域推定処理ルーチンについて、図１５を用いて説明する。なお、第１の実施の形態と同様の処理については、同一符号を付して詳細な説明を省略する。
【０１３１】
まず、ステップ１００において、撮像装置１２から、第１の画像と第２の画像とを順に取得し、ステップ１０２において、取得した第１の画像と第２の画像との各々から特徴点を複数抽出し、ステップ１０４で、抽出された複数の特徴点から、第１の画像と第２の画像との間で対応する対応点を少なくとも８組検索する。そして、ステップ１０６において、第１の画像を撮像したときの撮像装置１２の位置姿勢を基準とした第２の画像を撮像したときの撮像装置１２の位置姿勢の変化を表わす並進ベクトル及び回転行列を算出する。
【０１３２】
そして、ステップ１０８において、対応点が示す特徴点の３次元座標を計算する。次のステップ１１０では、道路平面を表わすパラメータを推定する。ステップ１１２において、射影変換行列を算出し、ステップ１１４において、算出された射影変換行列に従って、第１の画像を変換する。
【０１３３】
次のステップ１１６では、第１の画像を変換した変換画像と第２の画像との各画素の差分値を算出する。そして、ステップ３５０において、閾値を識別するための変数ｎを初期値である１に設定し、ステップ３５２において、最も大きい閾値（ｎ番目に大きい閾値）を用いて、上記ステップ１１６で算出された各画素の差分値から、道路平面候補領域を検出する。
【０１３４】
次のステップ３５４では、上記ステップ１０８で算出された対応点の３次元座標のうち、上記ステップ３５２又は後述するステップ３５６でｎ番目に大きい閾値を用いて検出された道路平面候補領域内の対応点の３次元座標に基づいて、ｎ番目に大きい閾値を用いて検出された道路平面候補領域の各々が、道路平面のみを表わしているか、道路平面領域を含まないか、又は不明であるか（何れでもないか）を判定する。
【０１３５】
そして、ステップ１２４において、上記ステップ３５４の判定において、不明であると判定された道路平面候補領域が存在するか否かを判定する。不明であると判定された道路平面候補領域が存在する場合には、ステップ３５６において、閾値を識別する変数ｎをインクリメントする。そして、ステップ３５８において、上記ステップ３５４において不明であると前回判定された各道路平面候補領域内の各画素の差分値から、ｎ番目に大きい閾値を用いて、道路平面候補領域を各々検出して、ステップ３５４へ戻る。
【０１３６】
上記ステップ１２４において、不明であると判定された道路平面候補領域が存在せず、ｎ番目に大きい閾値を用いて検出された道路平面候補領域の全てについて、道路平面のみを表わしている、又は道路平面領域を含まないと判定された場合には、ステップ１３０へ移行する。また、上記ステップ１２４において、不明であると判定された道路平面候補領域が存在する場合であっても、一番小さい閾値を用いて検出された道路平面候補領域について、上記ステップ３５４の判定が行われた場合には、ステップ１３０へ移行する。
【０１３７】
ステップ１３０では、上記ステップ１２２で道路平面のみを表わしていると判定された道路平面候補領域を統合して、道路平面領域として推定する。そして、ステップ１３２において、推定された道路平面領域を表示装置１６に表示させて、平面領域推定処理ルーチンを終了する。
【０１３８】
以上説明したように、第３の実施の形態に係る平面領域推定装置によれば、第１の画像を変換した変換画像と第２の画像との各画素の差分から、大きさが異なる複数の閾値の降順に、閾値を用いて道路平面候補領域を検出して、道路平面のみを表わしているか否かを順次判定して、なるべく大きい範囲の領域として、道路平面を表わす領域を検出することができる。また、パターンのない領域があっても、誤って道路平面を表わす領域として検出することを防止することができる。また、道路平面のみを表わす領域を統合して、道路平面を表わす領域を精度よく推定することができる。
【０１３９】
なお、上記の第１の実施の形態〜第３の実施の形態では、２つの画像から抽出された複数の特徴点から、２つの画像の間で対応する点を検索する場合を例に説明したが、２つの画像の一方の画像から特徴点を抽出し、他方の画像から、抽出された特徴点に対応する対応点を検索するようにしてもよい。
【０１４０】
また、上記の実施の形態では、撮像装置の位置姿勢の変化を表わすものとして、並進ベクトル及び回転行列を算出する場合を例に説明したが、これに限定されるものではなく、撮像装置の位置姿勢の変化を表わすものとして他の指標を算出するようにしてもよい。
【０１４１】
また、平面領域推定処理ルーチンにおいて、一番小さい閾値を用いて検出された道路平面候補領域についても、不明であると判定された場合には、道路平面候補領域の検出及び道路平面を表わす領域であるかの判定の繰り返しを終了する場合を例に説明したが、これに限定されるものではなく、更に小さい閾値を新たに用意して、道路平面候補領域を検出し、道路平面を表わす領域であるかの判定を行うようにしてもよい。
【図面の簡単な説明】
【０１４２】
【図１】本発明の第１の実施の形態に係る平面領域推定装置を示すブロック図である。
【図２】位置姿勢の変化を表わす並進ベクトル及び回転行列を説明するための図である。
【図３】（Ａ）第１の画像を示すイメージ図、（Ｂ）第２の画像を示すイメージ図、及び（Ｃ）第１の画像を射影変換により変換した変換画像を示すイメージ図である。
【図４】（Ａ）最も大きい閾値Ｔｈ１を用いて検出された道路平面候補領域を示すイメージ図、（Ｂ）次に大きい閾値Ｔｈ２を用いて検出された道路平面候補領域を示すイメージ図、及び（Ｃ）最も小さい閾値Ｔｈ３を用いて検出された道路平面候補領域を示すイメージ図である。
【図５】検出された道路平面候補領域の階層構造を示すイメージ図である。
【図６】道路平面上にある特徴点と、道路平面上にない特徴点とを示すイメージ図である。
【図７】各道路平面候補領域に対する判定結果を示すイメージ図である。
【図８】（Ａ）道路平面のみを表わすと判定された道路平面候補領域を示すイメージ図、及び（Ｂ）道路平面候補領域統合して推定された道路平面を表わす領域を示すイメージ図である。
【図９】（Ａ）一方の候補領域の境界上の点から他方の候補領域の境界上の最も近い点を結ぶ直線であって、何れの候補領域の内部も通らない直線を示す図、及び（Ｂ）一方の候補領域の境界上の点から他方の候補領域の境界上の最も近い点を結ぶ直線であって、一方の候補領域の内部を通る直線を示す図である。
【図１０】（Ａ）統合領域の境界候補となる直線の集合を示す図、（Ｂ）境界候補となる直線の集合から選択された２本の直線により囲まれる統合領域を示す図、及び（Ｃ）境界候補となる直線の集合から特定された２本の直線により囲まれる面積が最大となる統合領域を示す図である。
【図１１】本発明の第１の実施の形態に係る平面領域推定装置のコンピュータにおける平面領域推定処理ルーチンを示すフローチャートである。
【図１２】本発明の第１の実施の形態に係る平面領域推定装置のコンピュータにおける平面候補統合処理ルーチンを示すフローチャートである。
【図１３】２つの候補領域を統合する処理の処理ルーチンを示すフローチャートである。
【図１４】本発明の第３の実施の形態に係る平面領域推定装置を示すブロック図である。
【図１５】本発明の第３の実施の形態に係る平面領域推定装置のコンピュータにおける平面領域推定処理ルーチンを示すフローチャートである。
【符号の説明】
【０１４３】
１０、３１０  平面領域推定装置
１２   撮像装置
１４、３１４  コンピュータ
２０   特徴点抽出部
２２   対応点検索部
２４   位置姿勢算出部
２６   ３次元位置計算部
３０   平面推定部
３２   画像変換部
３４   差分計算部
３６、３３６  平面候補領域検出部
３８、３３８  平面領域判定部
４０   領域統合部
【図１】
2010009236.tif 000016
【図２】
2010009236.tif 000017
【図３】
2010009236.tif 000018
【図４】
2010009236.tif 000019
【図５】
2010009236.tif 000020
【図６】
2010009236.tif 000021
【図７】
2010009236.tif 000022
【図８】
2010009236.tif 000023
【図９】
2010009236.tif 000024
【図１０】
2010009236.tif 000025
【図１１】
2010009236.tif 000026
【図１２】
2010009236.tif 000027
【図１３】
2010009236.tif 000028
【図１４】
2010009236.tif 000029
【図１５】
2010009236.tif 000030