(57)【要約】【課題】車載カメラの取付け位置や角度のずれといった異常を適切に検出することができる技術を提供する。【解決手段】移動体に搭載されるカメラの取付けのずれを検出するカメラずれ検出装置は、前記カメラによって所定時間をおいて入力された２つの画像間における特徴点の動きであるオプティカルフローを前記特徴点ごとに導出する導出部と、複数の前記オプティカルフローに基づいて前記カメラを搭載する移動体の移動量を統計処理によって推定する推定部と、前記推定部で得られた推定情報と、前記カメラ以外の外部センサから入力される前記移動体の移動に関わる実測情報とに基づいて前記カメラのずれを判定する判定部と、を備える。【選択図】図１
2019121030.tif 000002
【特許請求の範囲】
【請求項１】
移動体に搭載されるカメラの取付けのずれを検出するカメラずれ検出装置であって、
前記カメラによって所定時間をおいて入力された２つの画像間における特徴点の動きであるオプティカルフローを前記特徴点ごとに導出する導出部と、
複数の前記オプティカルフローに基づいて前記カメラを搭載する移動体の移動量を統計処理によって推定する推定部と、
前記推定部で得られた推定情報と、前記カメラ以外の外部センサから入力される前記移動体の移動に関わる実測情報とに基づいて前記カメラのずれを判定する判定部と、
を備える、カメラずれ検出装置。
【請求項２】
前記推定情報には、前記移動体の前後方向および左右方向の移動量の推定値が含まれる、請求項１に記載のカメラずれ検出装置。
【請求項３】
前記判定部は、前記移動体の前後方向の移動量と、前記移動体の左右方向の移動量と、前記移動体の前後方向および左右方向の移動量に基づいて得られる特定量とのうち少なくともいずれか１つについて、前記推定部で得られた推定値と、前記実測情報によって得られる値との差が所定の閾値以上になった場合に、前記カメラのずれが発生していると判定する、請求項２に記載のカメラずれ検出装置。
【請求項４】
前記実測情報は、通信バスを介して前記判定部に入力される前記移動体の速度情報を含む、請求項１から３のいずれか１項に記載のカメラずれ検出装置。
【請求項５】
前記判定部による前記カメラのずれ判定は、前記外部センサによって前記移動体が直進していると判断される場合に取得された情報を用いて行われる、請求項１から４のいずれか１項に記載のカメラずれ検出装置。
【請求項６】
前記判定部による前記カメラのずれ判定は、前記外部センサによって前記移動体が所定速度範囲内で走行していると判断される場合に取得された情報を用いて行われる、請求項１から５のいずれか１項に記載のカメラずれ検出装置。
【請求項７】
前記移動体の移動量が所定距離に到達するまで前記推定部で得られた推定値を足し合わせて累積値を求める処理が行われ、
前記判定部は、前記移動体の移動量が前記所定距離に到達した時点で前記累積値に基づいて前記カメラのずれを判定する、請求項１から６のいずれか１項に記載のカメラずれ検出装置。
【請求項８】
前記判定部は、前記画像の中心部を含む第１領域内の前記特徴点の前記オプティカルフローを用いて推定された前記推定情報に基づいて前記カメラがずれていると判定した場合に、前記画像の中心部を含まない第２領域内の前記特徴点の前記オプティカルフローを用いて求められた前記推定情報によって前記カメラのずれを再判定する、請求項１から７のいずれか１項に記載のカメラずれ検出装置。
【請求項９】
移動体に搭載されるカメラの取付けのずれを検出するカメラずれ検出方法であって、
前記カメラによって所定時間をおいて入力された２つの画像間における特徴点の動きであるオプティカルフローを前記特徴点ごとに導出する導出工程と、
複数の前記オプティカルフローに基づいて前記カメラを搭載する移動体の移動量を統計処理によって推定する推定工程と、
前記推定工程で得られた推定情報と、前記カメラ以外のセンサから入力される前記移動体の移動に関わる実測情報とに基づいて前記カメラのずれを判定する判定工程と、
を備える、カメラずれ検出方法。
【請求項１０】
移動体に搭載されたカメラで撮影された画像に基づき前記移動体の移動量を推定する推定部と、
前記推定部で得られた移動量情報と、前記移動体に搭載されたカメラ以外の外部センサにより検出された前記移動体の移動に関わる実測情報速とを得て前記移動体に搭載されたカメラの異常を判定する判定部と、
を備える、異常検出装置。
【請求項１１】
移動体に搭載された複数のカメラのそれぞれにおいて撮影された画像に基づき前記複数のカメラ毎に前記移動体の移動量を推定する推定部と、
前記推定部で得られたカメラ毎の移動量情報を比較し異常が発生しているカメラを判定する判定部と、
を備える、異常検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラずれ検出装置、カメラずれ検出方法および異常検出装置に関する。
【背景技術】
【０００２】
従来、車両等の移動体に搭載されたカメラ（以下、車載カメラという）を用いて、例えば車両の駐車支援等の運転支援が行われている。車載カメラは、例えば、車両を工場から出荷する前に、車両に固定状態で取り付けられる。しかしながら、車載カメラは、例えば不意の接触や経年変化等によって、工場出荷時の取付け状態からずれを起こすという異常を生じることがある。車載カメラの取付け位置や角度がずれると、カメラ画像を利用して判断されるハンドルの操舵量等に誤差が生じるために、車載カメラの取付けのずれを検出することは重要である。
【０００３】
特許文献１には、複数の撮像手段同士間の光軸ずれを検出する技術が開示される。詳細には、２つのカメラの光軸の相対的な軸ずれに起因する視差オフセットは、自車両の直進状態で各カメラにより検知した適宜の静止対象物までの距離の所定時間での変化と、この所定時間でのナビゲーション装置等により検出された自車両の移動量との偏差に応じた値とされることが開示される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１５３７７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１における光軸ずれ検出手段では、互いに光軸が平行に配置される２つのカメラ間の光軸ずれを検出することができる。しかしながら、当該光軸ずれ検出手段では、単独の車載カメラにおける、工場出荷時の取付け状態からのずれを検出することはできない。
【０００６】
本発明は、車載カメラの取付け位置や角度のずれといった異常を適切に検出することができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明の、移動体に搭載されるカメラの取付けのずれを検出するカメラずれ検出装置は、前記カメラによって所定時間をおいて入力された２つの画像間における特徴点の動きであるオプティカルフローを前記特徴点ごとに導出する導出部と、複数の前記オプティカルフローに基づいて前記カメラを搭載する移動体の移動量を統計処理によって推定する推定部と、前記推定部で得られた推定情報と、前記カメラ以外の外部センサから入力される前記移動体の移動に関わる実測情報とに基づいて前記カメラのずれを判定する判定部と、を備える構成（第１の構成）になっている。
【０００８】
上記第１の構成のカメラずれ検出装置において、前記推定情報には、前記移動体の前後方向および左右方向の移動量の推定値が含まれる構成（第２の構成）であることが好ましい。
【０００９】
上記第２の構成のカメラずれ検出装置において、前記判定部は、前記移動体の前後方向の移動量と、前記移動体の左右方向の移動量と、前記移動体の前後方向および左右方向の移動量に基づいて得られる特定量とのうち少なくともいずれか１つについて、前記推定部で得られた推定値と、前記実測情報によって得られる値との差が所定の閾値以上になった場合に、前記カメラのずれが発生していると判定する構成（第３の構成）であることが好ましい。
【００１０】
上記第１から第３のいずれかの構成のカメラずれ検出装置において、前記実測情報は、通信バスを介して前記判定部に入力される前記移動体の速度情報を含む構成（第４の構成）であることが好ましい。
【００１１】
上記第１から第４のいずれかの構成のカメラずれ検出装置において、前記判定部による前記カメラのずれ判定は、前記外部センサによって前記移動体が直進していると判断される場合に取得された情報を用いて行われる構成（第５の構成）であることが好ましい。
【００１２】
上記第１から第５のいずれかの構成のカメラずれ検出装置において、前記判定部による前記カメラのずれ判定は、前記外部センサによって前記移動体が所定速度範囲内で走行していると判断される場合に取得された情報を用いて行われる構成（第６の構成）であることが好ましい。
【００１３】
上記第１から第６のいずれかの構成のカメラずれ検出装置において、前記移動体の移動量が所定距離に到達するまで前記推定部で得られた推定値を足し合わせて累積値を求める処理が行われ、前記判定部は、前記移動体の移動量が前記所定距離に到達した時点で前記累積値に基づいて前記カメラのずれを判定する構成（第７の構成）であることが好ましい。
【００１４】
上記第１から第７のいずれかの構成のカメラずれ検出装置において、前記判定部は、前記画像の中心部を含む第１領域内の前記特徴点の前記オプティカルフローを用いて推定された前記推定情報に基づいて前記カメラがずれていると判定した場合に、前記画像の中心部を含まない第２領域内の前記特徴点の前記オプティカルフローを用いて求められた前記推定情報によって前記カメラのずれを再判定する構成（第８の構成）であってよい。
【００１５】
上記目的を達成するために本発明の、移動体に搭載されるカメラの取付けのずれを検出するカメラずれ検出方法は、前記カメラによって所定時間をおいて入力された２つの画像間における特徴点の動きであるオプティカルフローを前記特徴点ごとに導出する導出工程と、複数の前記オプティカルフローに基づいて前記カメラを搭載する移動体の移動量を統計処理によって推定する推定工程と、前記推定工程で得られた推定情報と、前記カメラ以外のセンサから入力される前記移動体の移動に関わる実測情報とに基づいて前記カメラのずれを判定する判定工程と、を備える構成（第９の構成）になっている。
【００１６】
上記目的を達成するために本発明の異常検出装置は、移動体に搭載されたカメラで撮影された画像に基づき前記移動体の移動量を推定する推定部と、前記推定部で得られた移動量情報と、前記移動体に搭載されたカメラ以外の外部センサにより検出された前記移動体の移動に関わる実測情報速とを得て前記移動体に搭載されたカメラの異常を判定する判定部と、を備える構成（第１０の構成）になっている。
【００１７】
上記目的を達成するために本発明の異常検出装置は、移動体に搭載された複数のカメラのそれぞれにおいて撮影された画像に基づき前記複数のカメラ毎に前記移動体の移動量を推定する推定部と、前記推定部で得られたカメラ毎の移動量情報を比較し異常が発生しているカメラを判定する判定部と、を備える構成（第１１の構成）になっている。
【発明の効果】
【００１８】
本発明によると、車載カメラの取付け位置や角度のずれといった異常を適切に検出することができる。
【図面の簡単な説明】
【００１９】
【図１】カメラずれ検出システムの構成を示すブロック図
【図２】車載カメラが車両に配置される位置を例示する図
【図３】カメラずれ検出装置によるカメラずれの検出フローの一例を示すフローチャート
【図４】特徴点を抽出する手法を説明するための図
【図５】オプティカルフローを導出する手法を説明するための図
【図６】座標変換処理を説明するための図
【図７】推定部によって生成される第１ヒストグラムの一例を示す図
【図８】推定部によって生成される第２ヒストグラムの一例を示す図
【図９】カメラずれが発生した場合のヒストグラムの変化を例示する図
【図１０】判定部によって行われるカメラずれ判定処理の一例を示すフローチャート
【図１１】カメラずれの再判定処理の一例について説明するための図
【図１２】カメラずれ検出装置によるカメラずれの検出フローの変形例を示すフローチャート
【発明を実施するための形態】
【００２０】
以下、本発明の例示的な実施形態について、図面を参照しながら詳細に説明する。以下の説明では、移動体として車両を例にとり説明するが移動体であれば車両に限定されない。また以下の説明では、車両の直進進行方向であって、運転席からハンドルに向かう方向を「前方向」とする。また、車両の直進進行方向であって、ハンドルから運転席に向かう方向を「後方向」とする。また、車両の直進進行方向及び鉛直線に垂直な方向であって、前方向を向いている運転者の右側から左側に向かう方向を「左方向」とする。また、車両の直進進行方向及び鉛直線に垂直な方向であって、前方向を向いている運転者の左側から右側に向かう方向を「右方向」とする。
【００２１】
＜１．カメラずれ検出システム＞
図１は、本発明の実施形態に係るカメラずれ検出システムＳＹＳの構成を示すブロック図である。カメラずれ検出システムＳＹＳは、例えば車両の工場出荷時における取付け状態等、基準となる取付け状態からの車載カメラのずれといった異常を検出するシステムである。システムＳＹＳは異常検出システムである。図１に示すように、カメラずれ検出システムＳＹＳは、カメラずれ検出装置１と、撮影部２と、入力部３と、センサ部４とを備える。
【００２２】
カメラずれ検出装置１は、車載カメラの取付けのずれを検出する装置である。検出装置１は、移動体に搭載されるカメラの異常を検出する異常検出装置である。取付けのずれには、取付け位置のずれや取付け角度のずれが含まれる。カメラずれ検出装置１は、車載カメラを搭載する各車両に備えられる。カメラずれ検出装置１は、撮影部２に含まれる車載カメラ２１〜２４で撮影された撮影画像、および、当該装置１の外部に設けられるセンサ部４からの情報を処理して、車載カメラ２１〜２４の取付け位置や取付け角度のずれを検出する。カメラずれ検出装置１の詳細については後述する。
【００２３】
なお、カメラずれ検出装置１は、不図示の表示装置や運転支援装置に処理情報を出力してよい。表示装置は、カメラずれ検出装置１から出力される情報に基づいて、適宜、警告等を画面に表示する。運転支援装置は、カメラずれ検出装置１から出力される情報に基づいて、適宜、運転支援機能を停止したり、撮影情報の補正を行って運転支援を行ったりする。運転支援装置は、例えば自動運転を支援する装置、自動駐車を支援する装置、緊急ブレーキを支援する装置等であってよい。
【００２４】
撮影部２は、車両周辺の状況を監視する目的で車両に設けられる。本実施形態では、撮影部２は、４つの車載カメラ２１〜２４を備える。各車載カメラ２１〜２４は、有線または無線によってカメラずれ検出装置１に接続される。図２は、車載カメラ２１〜２４が車両７に配置される位置を例示する図である。図２は、車両７を上から見た図である。
【００２５】
車載カメラ２１は車両７の前端に設けられる。このため、車載カメラ２１をフロントカメラ２１とも呼ぶ。フロントカメラ２１の光軸２１ａは車両７の前後方向に沿っている。フロントカメラ２１は車両７の前方向を撮影する。車載カメラ２２は車両７の後端に設けられる。このため、車載カメラ２２をバックカメラ２２とも呼ぶ。バックカメラ２２の光軸２２ａは車両７の前後方向に沿っている。バックカメラ２２は車両７の後方向を撮影する。フロントカメラ２１及びバックカメラ２２の取付け位置は、車両７の左右中央であることが好ましいが、左右中央から左右方向に多少ずれた位置であってもよい。
【００２６】
車載カメラ２３は車両７の左側ドアミラー７１に設けられる。このため、車載カメラ２３を左サイドカメラ２３とも呼ぶ。左サイドカメラ２３の光軸２３ａは車両７の左右方向に沿っている。左サイドカメラ２３は車両７の左方向を撮影する。車載カメラ２４は車両７の右側ドアミラー７２に設けられる。このため、車載カメラ２４を右サイドカメラ２４とも呼ぶ。右サイドカメラ２４の光軸２４ａは車両７の左右方向に沿っている。右サイドカメラ２４は車両７の右方向を撮影する。
【００２７】
各車載カメラ２１〜２４は魚眼レンズで構成され、水平方向の画角θは１８０°以上である。このため、車載カメラ２１〜２４によって、車両７の水平方向における全周囲を撮影することができる。なお、本実施形態では、車載カメラの数は４つであるが、この数は適宜変更されてよく、複数でも単数でもよい。例えば、車両７がバックで駐車することを支援する目的で車載カメラが搭載されている場合には、撮影部２が有する車載カメラは、バックカメラ２２、左サイドカメラ２３、右サイドカメラ２４の３つで構成されてよい。
【００２８】
図１に戻って、入力部３は、カメラずれ検出装置１に対する指示を入力可能とする。入力部３は、例えば、タッチパネル、ボタン、レバー等で構成されてよい。入力部３は、有線または無線によってカメラずれ検出装置１に接続される。
【００２９】
センサ部４は、車載カメラ２１〜２４が搭載される車両７に関する情報を検出する複数のセンサを有する。本実施形態では、センサ部４は、車速センサ４１と舵角センサ４２とを含む。車速センサ４１は、車両７の速度を検出する。舵角センサ４２は、車両７のステアリングホイール（ハンドル）の回転角を検出する。車速センサ４１および舵角センサ４２は、通信バス５０を介してカメラずれ検出装置１と繋がる。すなわち、車速センサ４１で取得された車両７の速度情報は、通信バス５０を介してカメラずれ検出装置１に入力される。舵角センサ４２で取得された車両７のステアリングホイールの回転角情報は、通信バス５０を介してカメラずれ検出装置１に入力される。なお、通信バス５０は、例えばＣＡＮ（Controller Area Network）バスであってよい。
【００３０】
＜２．カメラずれ検出装置＞
図１に示すように、カメラずれ検出装置１は、画像取得部１１と、制御部１２と、記憶部１３とを備える。
【００３１】
画像取得部１１は、４つの車載カメラ２１〜２４のそれぞれから、撮影画像を取得する。画像取得部１１は、アナログの撮影画像をデジタルの撮影画像に変換するＡ／Ｄ変換機能などの基本的な画像処理機能を有する。画像取得部１１は、取得した撮影画像に所定の画像処理を行い、処理後の撮影画像を制御部１２に入力する。
【００３２】
制御部１２は、例えばマイクロコンピュータであり、カメラずれ検出装置１の全体を統括的に制御する。制御部１２は、ＣＰＵ、ＲＡＭおよびＲＯＭ等を備える。記憶部１３は、例えば、フラッシュメモリ等の不揮発性のメモリであり、各種の情報を記憶する。記憶部１３は、ファームウェアとしてのプログラムや各種のデータを記憶する。
【００３３】
詳細には、制御部１２は、導出部１２１と、推定部１２２と、判定部１２３とを備える。すなわち、カメラずれ検出装置１は、導出部１２１と、推定部１２２と、判定部１２３とを備える。制御部１２が備えるこれら各部１２１〜１２３の機能は、例えば記憶部１３に記憶されるプログラムに従ってＣＰＵが演算処理を行うことによって実現される。
【００３４】
なお、制御部１１の導出部１２１、推定部１２２、および、判定部１２３の少なくともいずれか１つは、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアで構成されてもよい。また、導出部１２１、推定部１２２、および、判定部１２３は、概念的な構成要素である。１つの構成要素が実行する機能を複数の構成要素に分散させたり、複数の構成要素が有する機能を１つの構成要素に統合したりしてよい。
【００３５】
導出部１２１は、車載カメラ２１〜２４によって所定時間をおいて入力された２つの画像間における特徴点の動きであるオプティカルフロー（動きベクトル）を特徴点ごとに導出する。なお、本実施形態では、車両７は４つの車載カメラ２１〜２４を有する。このために、導出部１２１は、各車載カメラ２１〜２４について、オプティカルフローを特徴点ごとに導出する。特徴点は、撮影画像中のエッジの交点など、撮影画像において際立って検出できる点である。特徴点は、例えば路面に描かれた白線のエッジ、路面上のひび、路面上のしみ、路面上の砂利等である。特徴点は、通常、１つの撮影画像の中に多数存在する。導出部１２１は、例えば、ハリスオペレータ等の公知の手法を用いて撮影画像の特徴点を導出する。
【００３６】
推定部１２２は、複数のオプティカルフローに基づいて車載カメラ２１〜２４を搭載する車両７の移動量を統計処理によって推定する。なお、本実施形態では、車両７が４つの車載カメラ２１〜２４を有するために、推定部１２２は、車載カメラ２１〜２４ごとに、車両７の移動量の推定値を求める。本実施形態では、推定部１２２が行う統計処理は、ヒストグラムを用いた処理である。ヒストグラムを用いた移動量の推定処理の詳細については後述する。
【００３７】
判定部１２３は、推定部１２２で得られた推定情報と、車載カメラ２１〜２４以外の外部センサから入力される車両７の移動に関わる実測情報とに基づいて車載カメラ２１〜２４のずれ、すなわち異常を判定する。なお、本実施形態では、車両７が４つの車載カメラ２１〜２４を有するために、判定部１２３は、車載カメラ２１〜２４ごとにカメラずれの判定を行う。
【００３８】
本実施形態では、判定部１２３は、推定部１２２で得られた推定情報と、車速センサ４１から入力される車両７の速度情報とに基づいて車載カメラ２１〜２４のずれを判定する。すなわち、本実施形態においては、実測情報は、通信バス５０を介して判定部１２３に入力される車両７の速度情報を含む。これによれば、車両７の実際の移動量を簡単且つ正確に取得することができる。
【００３９】
なお、車両７の移動に関わる実測情報は、車速センサ４１から取得される車両７の速度情報に限定されない。例えば、車両７の移動に関わる実測情報は、ＧＰＳ（Global Positioning System）受信機から取得される車両７の移動距離情報（移動量情報）であってもよい。また、車両７の移動に関わる実測情報は、１つの情報ではなく、複数の情報であってよい。例えば、車両７の移動に関わる実測情報は、車速センサ４１から取得される車両７の速度情報と、舵角センサ４２から取得される車両７におけるステアリングホイールの回転角情報との２つの情報であってもよい。
【００４０】
本実施形態の構成によれば、カメラずれ検出装置１は、車載カメラ２１〜２４の撮影画像と、車速センサ４１等の車両７が既に備えるセンサを用いてカメラずれを検出することができるために、カメラずれを検出するための構成に要するコストを抑制することができる。また、本実施形態の構成では、撮影画像の大部分が路面であると想定することで、路面の特徴点のオプティカルフローを利用した統計処理によって、カメラずれを検出することができる。
【００４１】
図３は、カメラずれ検出装置１によるカメラずれの検出フローの一例を示すフローチャートである。なお、本実施形態では、４つの車載カメラ２１〜２４のそれぞれについて、図３に示すカメラずれの検出フローが実施される。重複説明を避けるために、ここでは、フロントカメラ２１の場合を代表例として、カメラずれの検出フローを説明する。
【００４２】
図３に示すように、まず、制御部１２は、フロントカメラ２１を搭載する車両７が直進しているか否かを確認する（ステップＳ１）。車両７が直進しているか否かは、例えば、舵角センサ４２から得られるステアリングホイールの回転角情報に基づいて判断することができる。例えば、ステアリングホイールの回転角がゼロの時に車両７が完全にまっすぐに進むとした場合に、回転角がゼロの場合だけなく、回転角がプラス方向とマイナス方向の一定範囲内の回転である場合を含めて、車両７が直進していると判断してよい。なお、直進には、前進方向の直進と、後退方向の直進との両方が含まれる。
【００４３】
制御部１２は、車両７が直進していると判断されるまで、ステップＳ１の確認を繰り返す。車両７が直進走行しない限り、カメラずれを判定するための情報が取得されない。換言すると、判定部１２３による車載カメラ（フロントカメラ）２１のずれ判定は、車載カメラ以外の外部センサ（ここでは舵角センサ４２）によって車両７が直進していると判断される場合に取得された情報を用いて行われる。これによれば、車両７の進行方向が曲がっている場合の情報を用いてカメラずれの判定が行われないために、カメラずれを判定するための情報処理が複雑になることを避けられる。
【００４４】
車両７が直進していると判断される場合（ステップＳ１でＹｅｓ）、制御部１２は、車両７の速度が所定速度範囲内であるか否かを確認する（ステップＳ２）。所定速度範囲は、例えば時速３ｋｍ以上時速５ｋｍ以下である。本実施形態では、車両７の速度は、車載カメラ２１〜２４以外の外部センサである車速センサ４１によって取得することができる。なお、ステップＳ１とステップＳ２とは、順番が入れ替わってもよい。また、ステップＳ１とステップＳ２とは同時に処理が行われてもよい。
【００４５】
制御部１２は、車両７の速度が所定速度範囲外である場合（ステップＳ２でＮｏ）、ステップＳ１に戻って車両７の直進判断を行う。車両７の速度が所定速度範囲内でない限り、カメラずれを判定するための情報が取得されない。換言すると、判定部１２３による車載カメラ（フロントカメラ）２１のずれ判定は、車載カメラ２１〜２４以外の外部センサ（ここでは車速センサ４１）によって車両７が所定速度範囲内で走行していると判断される場合に取得された情報を用いて行われる。例えば、車両７の速度が速すぎると、オプティカルフローの導出が不確かになり易くなる。一方で、車両７の速度が遅すぎると、車速センサ４１から取得される車両７の速度の信頼性が低下する。この点、本実施形態の構成によれば、車両７の速度が速すぎる場合や遅すぎる場合を除いてカメラずれの判定を行うことができるために、カメラずれの判定の信頼性を向上することができる。
【００４６】
なお、所定速度範囲は設定変更可能であることが好ましい。これによれば、所定速度範囲を各車両に適した値にすることができ、カメラずれの判定の信頼性を向上することができる。本実施形態では、所定速度範囲の設定は入力部３によって行うことができる。
【００４７】
車両７が所定速度範囲内で走行していると判断される場合（ステップＳ２でＹｅｓ）、導出部１２１によって特徴点の抽出が行われる（ステップＳ３）。換言すると、車両７が所定の低速で直進走行している場合に、導出部１２１によって特徴点の抽出が行われる。導出部１２１による特徴点の抽出は、例えば、停止している車両７が動き出す場合や、走行している車両７が止まる場合等に行われる。
【００４８】
図４は、特徴点ＦＰを抽出する手法を説明するための図である。図４は、フロントカメラ２１で撮影される撮影画像Ｐを模式的に示している。特徴点ＦＰは路面ＲＳ上に存在する。図４においては、特徴点ＦＰの数は２つとされているが、この数は便宜的なものであり、実際の数を示すものではない。通常、多数の特徴点が取得される。図４に示すように、導出部１２１は特徴点ＦＰを所定領域ＲＥ内で抽出する。所定領域ＲＥは、撮影画像Ｐの中心部Ｃを含む広範囲に設定される。これにより、特徴点ＦＰの発生箇所が均一でなく偏った範囲である場合でも、特徴点ＦＰを抽出することができる。なお、所定領域ＲＥは、車両７のボディＢＯが映る領域は避けて設定される。
【００４９】
特徴点ＦＰが抽出されると、導出部１２１は、抽出した特徴点ＦＰごとにオプティカルフローを導出する（ステップＳ４）。図５は、オプティカルフローＯＦを導出する手法を説明するための図である。図５は、図４と同様に便宜的に示された模式図である。図５は、図４に示す撮影画像（前フレームＰ）の撮影後、所定時間が経過した後にフロントカメラ２１で撮影された撮影画像（現フレームＰ´）である。図４に示す撮影画像Ｐの撮影後、所定時間が経過するまでの間に、車両７は後退している。図５に示す破線の丸印は、図４に示す撮影画像Ｐの撮影時点における特徴点ＦＰの位置を示す。
【００５０】
図５に示すように、車両７が後退すると、車両７の前方に存在する特徴点ＦＰは車両７から離れる。すなわち、特徴点ＦＰは、現フレームＰ´と前フレームＰとで異なる位置に現れる。導出部１１は、現フレームＰ´の特徴点ＦＰと前フレームＰの特徴点ＦＰとを、その近傍の画素値に基づいて対応付け、対応付けた特徴点ＦＰのそれぞれの位置に基づいてオプティカルフローＯＦを導出する。
【００５１】
オプティカルフローＯＦが導出されると、推定部１２２は、カメラ座標系で得られた各オプティカルフローＯＦを、ワールド座標系のオプティカルフローに変換する（ステップＳ５）。図６は、座標変換処理を説明するための図である。図６に示すように、推定部１２２は、フロントカメラ２１の位置（視点ＶＰ１）から見たオプティカルフローＯＦを、車両７が存在する路面の上方の視点ＶＰ２から見たオプティカルフローＯＦ_Ｃに変換する。推定部１２２は、撮影画像Ｐにおける各オプティカルフローＯＦを、路面に相当する仮想平面ＲＳ_Ｖに投影することで、ワールド座標系のオプティカルフローＯＦ_Ｃに変換する。
【００５２】
次に、推定部１２２は、ワールド座標系の各オプティカルフローＯＦ_Ｃに基づいてヒストグラムを生成する（ステップＳ６）。本実施形態では、推定部１２２は、各オプティカルフローＯＦ_Ｃを前後方向と左右方向との２成分に分けて、第１ヒストグラムと第２ヒストグラムとを生成する。図７は、推定部１２２によって生成される第１ヒストグラムＨＧ１の一例を示す図である。図８は、推定部１２２によって生成される第２ヒストグラムＨＧ２の一例を示す図である。なお、図７および図８はカメラずれが発生していない場合に得られるヒストグラムを示す。
【００５３】
図７に示す第１ヒストグラムＨＧ１は、各オプティカルフローＯＦ_Ｃの前後方向成分に基づいて得られたヒストグラムである。第１ヒストグラムＨＧ１は、オプティカルフローＯＦ_Ｃの数を度数とし、前後方向への移動量（オプティカルフローＯＦ_Ｃの前後方向成分の長さ）を階級とするヒストグラムである。図８に示す第２ヒストグラムＨＧ２は、オプティカルフローＯＦ_Ｃの左右方向成分に基づいて得られたヒストグラムである。第２ヒストグラムＨＧ２は、オプティカルフローＯＦ_Ｃの数を度数とし、左右方向への移動量（オプティカルフローＯＦ_Ｃの左右方向成分の長さ）を階級とするヒストグラムである。
【００５４】
図７および図８は、カメラずれが発生しておらず、車両７が後方に直進した場合に得られるヒストグラムである。このために、第１ヒストグラムＨＧ１は、後退側の特定の移動距離（階級）に偏って度数が多くなっている。一方、第２ヒストグラムＨＧ２は、移動量ゼロの近傍の階級に偏って度数が多くなっている。
【００５５】
図９は、カメラずれが発生した場合のヒストグラムの変化を例示する図である。図９は、フロントカメラ２１がチルト方向（鉛直方向）に回転してずれた場合を例示する。図９において、上段（ａ）はカメラずれが発生していない場合（正常時）の第１ヒストグラムＨＧ１であり、下段（ｂ）はカメラずれが発生した場合の第１ヒストグラムＨＧ１である。フロントカメラ２１のチルト方向の回転ずれは、主にオプティカルフローＯＦ_Ｃの前後方向成分に影響を与える。図９に示す例では、フロントカメラ２１のチルト方向の回転ずれによって、度数が大きくなる階級が正常時に比べて前方側にずれている。
【００５６】
なお、フロントカメラ２１のチルト方向の回転ずれは、オプティカルフローＯＦ_Ｃの左右方向成分に対する影響は小さい。このために、図示は省略するが、第２ヒストグラムＨＧ２のカメラずれ前後の変化は、第１ヒストグラムＨＧ１の場合に比べて小さい。ただし、これは、フロントカメラ２１がチルト方向にずれた場合の話であり、フロントカメラ２１が、例えばパン方向（水平方向）やロール方向（光軸を中心とする回転方向）等にずれを生じた場合には、異なったヒストグラム変化が発生する。
【００５７】
推定部１２２は、生成したヒストグラムＨＧ１、ＨＧ２によって車両７の移動量を推定する（ステップＳ７）。本実施形態では、推定部１２２は、第１ヒストグラムＨＧ１によって、車両７の前後方向の移動量を推定する。推定部１２２は、第２ヒストグラムＨＧ２によって、車両７の左右方向の移動量を推定する。すなわち、推定部１２２で得られた推定情報には、車両７の前後方向および左右方向の移動量の推定値が含まれる。これによれば、車両７の前後方向および左右方向の移動量の推定値を用いてカメラずれの検出を行うことができるために、カメラずれの検出結果の信頼性を向上することができる。なお、本実施形態では、特定の条件下で抽出される特徴点が路面ＲＳ上に存在するとの前提の下に車両７の移動量を推定する。
【００５８】
本実施形態では、推定部１２２は、第１ヒストグラムＨＧ１の中央値（メジアン）を前後方向の移動量の推定値とする。推定部１２２は、第２ヒストグラムＨＧ２の中央値を左右方向の移動量の推定値とする。ただし、推定部１２２による推定値の決定方法は、これに限定されない。推定部１２２は、例えば、各ヒストグラムＨＧ１、ＨＧ２の度数が最大となる階級を移動量の推定値としてもよい。また、推定部１２２は、例えば、各ヒストグラムＨＧ１、ＨＧ２において、平均値を移動量の推定値としてもよい。
【００５９】
なお、図９に示す例では、一点鎖線はフロントカメラ２１が正常である場合の前後方向の移動量の推定値を示し、二点鎖線はカメラずれが発生した場合の前後方向の移動量の推定値を示す。図９に示すように、カメラずれの発生によって、前後方向の移動量の推定値に差Δが生じていることがわかる。
【００６０】
推定部１２２で車両７の移動量の推定値が得られると、判定部１２３はフロントカメラ２１のずれ判定を行う（ステップＳ８）。判定部１２３は、車両７の前後方向の移動量と、車両７の左右方向の移動量と、車両７の前後方向および左右方向の移動量に基づいて得られる特定量とのうち少なくともいずれか１つについて、推定部１２２で得られた推定値と、車載カメラ２１〜２４以外の外部センサから入力される車両７の移動に関わる実測情報によって得られる値との差が所定の閾値以上になった場合に、車載カメラ（フロントカメラ）２１のずれが発生していると判定する。これによれば、車載カメラから得られる車両７の移動量の推定値と、外部センサを用いた実測情報から得られる車両７の移動量とを比較して、車載カメラのずれを適切に検出することができる。
【００６１】
本実施形態では、車載カメラ２１〜２４以外の外部センサから入力される車両７の移動に関わる実測情報は、車速センサ４１から入力される車両７の速度情報である。この速度情報から推定値と比較する車両７の移動量が算出される。詳細には、当該移動量は、オプティカルフローＯＦを導出するための２つの撮影画像の撮影時間間隔と、その間の車速センサ４１によって得られる車両７の速度とによって算出される。また、当該移動量は、推定部１２２で得られる移動量の推定値が前後方向と左右方向との２つであることに対応して、前後方向と左右方向との２つの値が存在する。ただし、本実施形態では、車両７が前後方向に直進している場合にオプティカルフローＯＦを導出するための撮影画像を撮影する構成であるために、この間に車両７は左右方向に移動しておらず、速度情報から算出される左右方向の移動量は常にゼロになる。
【００６２】
図１０は、判定部１２３によって行われるカメラずれ判定処理の一例を示すフローチャートである。まず、判定部１２３は、前後方向の移動量について、推定部１２２で推定された推定値と、車速センサ４１から得られる車両７の速度情報によって求められる値との差の大きさが第１閾値より小さいか否かを確認する（ステップＳ１１）。両者の差の大きさが第１閾値以上である場合（ステップＳ１１でＮｏ）、判定部１２３は、フロントカメラ２１の取付け状態が異常であり、カメラずれが生じていると判定する（ステップＳ１５）。一方、両者の差の大きさが第１閾値より小さい場合（ステップＳ１１でＹｅｓ）、判定部１２３は、前後方向の移動量からは異常が検出されないと判定する。
【００６３】
前後方向の移動量から異常が検出されない場合、判定部１２３は、左右方向の移動量について、推定部１２２で推定された推定値と、車速センサ４１から得られる車両７の速度情報によって求められる値との差の大きさが第２閾値より小さいか否かを確認する（ステップＳ１２）。両者の差の大きさが第２閾値以上である場合（ステップＳ１２でＮｏ）、判定部１２３は、フロントカメラ２１の取付け状態が異常であり、カメラずれが生じていると判定する（ステップＳ１５）。一方、両者の差の大きさが第２閾値より小さい場合（ステップＳ１２でＹｅｓ）、判定部１２３は、左右方向の移動量からは異常が検出されないと判定する。
【００６４】
左右方向の移動量からも異常が検出されない場合、判定部１２３は、前後方向および左右方向の移動量に基づいて得られる特定量について、推定部１２２で推定された推定値と、車速センサ４１から得られる車両７の速度情報によって求められる値との差の大きさが第３閾値より小さいか否かを確認する（ステップＳ１３）。本実施形態では、特定量は、前後方向の移動量を二乗して得られる値と、左右方向の移動量を二乗して得られる値との和の平方根値である。ただし、これは例示にすぎず、特定量は、例えば、前後方向の移動量を二乗して得られる値と、左右方向の移動量を二乗して得られる値との和であってもよい。
【００６５】
特定量の推定値と、速度情報によって求められる値との差の大きさが第３閾値以上である場合（ステップＳ１３でＮｏ）、判定部１２３は、フロントカメラ２１の取付け状態が異常であり、カメラずれが生じていると判定する（ステップＳ１５）。一方、両者の差の大きさが第３閾値より小さい場合（ステップＳ１３でＹｅｓ）、判定部１２３は、フロントカメラ２１の取付け状態は正常であると判定する（ステップＳ１４）。
【００６６】
本実施形態では、前後方向の移動量、左右方向の移動量、および、特定量のうち、いずれか１つでも、推定部１２２で得られる推定値と、速度情報によって得られる値との比較により異常が認められると、カメラずれが発生していると判定する。これによれば、カメラずれが発生しているにもかかわらず、カメラずれが発生していないと判定する可能性を低減できる。ただし、これは例示である。例えば、前後方向の移動量、左右方向の移動量、および、特定量の全てにおいて、推定部１２２で得られる推定値と、速度情報から得られる値との比較により異常が認められる場合に限って、カメラずれが発生していると判定する構成としてもよい。カメラずれの判定基準は、入力部３によって適宜変更することができることが好ましい。
【００６７】
本実施形態では、前後方向の移動量、左右方向の移動量、および、特定量について、推定値と速度情報から得られる値との比較を順番に行う構成としたが、これらの比較は同じタイミングで行われてもよい。また、前後方向の移動量、左右方向の移動量、および、特定量について、推定値と速度情報から得られる値との比較を順番に行う構成の場合、その順番は特に限定されず、図１０に示す順番とは異なる順番とされてもよい。なお、本実施形態では、移動量に基づいてカメラずれを判定したが、速度に基づいてカメラずれを判定してもよい。この場合、オプティカルフローから推定した移動量と、オプティカルフローの算出に使用したフレーム間の時間を基に前後方向および左右方向の速度を推定し、車速センサ４１から得られる車両７の速度と比較することでカメラずれを判定すればよい。この場合の車速センサ４１から得られる車両７の速度は前後方向の速度であり、左右方向の速度は０である。すなわち、本実施形態では、移動量と速度は同義である。
【００６８】
なお、カメラずれが検出された場合、カメラずれ検出装置１は、そのことを運転者等に報知するための処理を行うことが好ましい。また、カメラずれ検出装置１は、車載カメラ２１〜２４からの情報を用いて運転支援を行う運転支援装置に、カメラずれが発生していることを通知する処理を行うことが好ましい。本実施形態では、４つの車載カメラ２１〜２４が存在するが、４つの車載カメラ２１〜２４のうちの１つでもカメラずれが発生した場合には、上記報知処理及び通知処理を行うことが好ましい。
【００６９】
＜３．変形例等＞
＜３−１．第１変形例＞
以上においては、判定部１２３によって、カメラずれが生じていると一度判定されただけで、カメラずれが発生しているとの判定を確定し、カメラずれを検出する構成としている。これに限らず、判定部１２３によってカメラずれが生じていると判定された場合に、少なくとも１回、再判定を行い、再判定によって更にカメラずれが生じていると判定された場合に、カメラずれが発生しているとの判定を確定してもよい。再判定は、単純に、図３に示すステップＳ１〜Ｓ８を少なくとも１回繰り返す構成であってよいが、別の構成であってもよい。
【００７０】
図１１は、カメラずれの再判定処理の一例について説明するための図である。図１１においては特徴点の記載は省略されている。図１１に示すように、判定部１２３は、画像の中心部Ｃを含む第１領域ＲＥ１内の特徴点のオプティカルフローを用いて推定された推定情報に基づいて車載カメラがずれていると判定した場合に、画像の中心部Ｃを含まない第２領域ＲＥ２内の特徴点のオプティカルフローを用いて求められた推定情報によって車載カメラのずれを再判定してよい。再判定で用いる画像は、先のカメラずれの判定に用いた画像と同じであってよいが、場合によっては、先のカメラずれの判定に用いた画像の撮影後に再度撮影された画像であってもよい。
【００７１】
第２領域ＲＥ２は、１つでもよいが複数であってもよい。図１１に示す例では、第２領域ＲＥ２は２つであるが３つ以上であってもよい。第２領域ＲＥ２が複数である場合、各第２領域ＲＥ２において、導出部１２１によるオプティカルフローＯＦの導出、推定部１２２による移動量の推定情報の取得、および、判定部１２３によるカメラずれの判定が行われる。第２領域ＲＥ２は、第１領域ＲＥ１に比べて小さい領域であることが好ましい。
【００７２】
車載カメラ２１〜２４のカメラずれが生じた場合、画像の中心部Ｃよりも中心部Ｃから離れた領域の方が、推定部１２２によって得られる車両７の移動量と、車速センサ４１等のセンサから得られる実測情報によって得られる車両７の移動量との差が大きくなり易い。このために、画像の中心部Ｃから離れて位置する第２領域ＲＥ２を用いた再判定を行うことによって、カメラずれの検出精度を向上することができる。
【００７３】
＜３−２．第２変形例＞
図１２は、カメラずれ検出装置１によるカメラずれの検出フローの変形例を示すフローチャートである。図１２に示すステップＳ１からステップＳ７の処理は、上述した図３に示す処理と同様であるために説明は省略する。本変形例では、ステップＳ７によって移動量の推定値を求めた後に、求めた移動量の推定値を先に求めた移動量の累積値に足し合わせる処理が行われる（ステップＳ９）。当該処理は、例えば推定部１２２又は判定部１２３で行われてよい。なお、累積値算出処理は、前後方向の移動量の推定値、および、左右方向の移動量の推定値に対して行われる。また、第１回目の推定値が求められた際には、先に求めた累積値が無いために、累積値算出処理で得られる累積値は、ステップＳ７で取得した推定値そのものになる。
【００７４】
累積値の算出が行われると、車両７の移動量が所定の移動距離に到達したか否かが確認される（ステップＳ１０）。本変形例では、ここで言う車両７の移動量は、オプティカルフローＯＦを導出するための２つの画像の撮影時間間隔に車両７が前後方向に移動する量を積算したものである。車両７の前後方向の移動量は、車速センサ４１によって得られる速度情報から算出される。当該移動量の積算の開始は、推定値の累積処理の開始に合わせて行われる。車両７の前後方向の移動量が所定の移動距離に到達しない場合（ステップＳ１０でＮｏ）、ステップＳ１に戻って、ステップＳ１〜ステップＳ７およびステップＳ９が順次行われる。
【００７５】
一方、車両７の前後方向の移動量が所定の移動距離に到達すると（ステップＳ１０でＹｅｓ）、判定部１２３によってカメラずれの判定が行われる（ステップＳ８Ａ）。判定部１２３は、移動量の推定値として累積値を用いる。本実施形態では、累積値には、前後方向の累積値と、左右方向の累積値とが存在する。比較対象となる値は、オプティカルフローＯＦを導出するための２つの画像の撮影時間間隔に車両７が移動する量を積算したもので、車速センサ４１によって得られる速度情報から算出される。当該値には、前後方向の移動量と、左右方向の移動量とが存在する。ただし、本変形例では、車両７が前後方向に直進している場合にオプティカルフローＯＦを導出するための撮影画像を撮影する構成であるために、この間に車両７は左右方向に移動しておらず、左右方向の移動量（左右方向の累積値と比較する比較値）はゼロである。
【００７６】
本変形例では、車両７の移動量が所定距離に到達するまで推定部１２２で得られた推定値を足し合わせて累積値を求める処理が行われ、判定部１２３は、車両７の移動量が所定距離に到達した時点で累積値に基づいて車載カメラのずれを判定する。これによれば、カメラずれが生じている場合に、推定値と、実測情報から得られる値との差が明確に表れるタイミングでずれ判定を行うことができ、ずれ判定の信頼性を向上することができる。
【００７７】
＜３−３．第３変形例＞
以上においては、判定部１２３によって、オプティカルフローから推定した移動量と車速センサ４１等のセンサから得られる実測情報とに基づきカメラのずれを判定した。第３変形例では、判定部１２３によって、各カメラ２１〜２４でオプティカルフローから推定した移動量どうしを比較してカメラのずれ、すなわち異常を判定する。第３変形例では、推定部１２２は、移動体に搭載された複数のカメラ２１〜２４のそれぞれにおいて撮影された画像に基づき複数のカメラ毎に移動体の移動量を推定する。判定部１２３は、推定部１２２で得られたカメラ毎の移動量情報を比較し異常が発生しているカメラを判定する。例えば、判定部１２３は、各カメラで推定した移動量どうしの差が全て誤差範囲を含む所定範囲内であれば全カメラは正常であると判定する。一方、カメラ間で推定した移動量に閾値以上の差がある場合は、小さい方の移動量を推定したカメラ、あるいは大きい方の移動量を推定したカメラのどちらかに異常があると判定する。なお、どちらが異常であるかを特定する場合は、車速センサ４１等のセンサから得られる実測情報と移動量を比較して異常なカメラを特定すればよい。本変形例では、各カメラで推定した移動量どうしの差でカメラのずれを判定するため、外部のセンサを用いなくてもカメラのずれを判定できる。
【００７８】
＜３−４．その他＞
本明細書における実施形態や変形例の構成は、本発明の例示にすぎない。実施形態や変形例の構成は、本発明の技術的思想を超えない範囲で適宜変更されてもよい。また、複数の実施形態及び変形例は、可能な範囲で組み合わせて実施されてよい。
【００７９】
以上においては、車載カメラ２１〜２４のずれ判定に用いるデータは、車両７が直進走行している場合に収集される構成とした。ただし、これは例示であり、車載カメラ２１〜２４のずれ判定に用いるデータは、車両７が直進走行していない場合に収集されてもよい。車速センサ４１から得られる速度情報と舵角センサ４２から得られる情報とを用いれば、車両７の前後方向および左右方向の実際の移動量を正確に求めることができるために、車両７が直進走行していない場合でも上述のずれ判定を行うことができる。
【００８０】
また、以上においては、推定部１２２は、前後方向の移動量の推定値と、左右方向の移動量の推定値とを求める構成としたが、いずれか一方だけを求める構成としてもよい。ただし、いずれか一方だけの推定値を求める構成とする場合には、推定部１２２は、前後方向の移動量の推定値のみを求めることが好ましい。この場合、例えば、判定部１２３は、前後方向の移動量について、推定部１２２で得られる推定値と、センサ部４で取得される実測情報から得られる値とを比較してカメラずれの判定を行ってよい。
【符号の説明】
【００８１】
１・・・カメラずれ検出装置
７・・・車両
２１・・・フロントカメラ（車載カメラ）
２２・・・バックカメラ（車載カメラ）
２３・・・左サイドカメラ（車載カメラ）
２４・・・右サイドカメラ（車載カメラ）
４１・・・車速センサ（外部センサ）
４２・・・舵角センサ（外部センサ）
５０・・・通信バス
１２１・・・導出部
１２２・・・推定部
１２３・・・判定部
Ｃ・・・画像の中心部
ＦＰ・・・特徴点
ＯＦ・・・オプティカルフロー
ＲＥ１・・・第１領域
ＲＥ２・・・第２領域
【図１】
2019121030.tif 000003
【図２】
2019121030.tif 000004
【図３】
2019121030.tif 000005
【図４】
2019121030.tif 000006
【図５】
2019121030.tif 000007
【図６】
2019121030.tif 000008
【図７】
2019121030.tif 000009
【図８】
2019121030.tif 000010
【図９】
2019121030.tif 000011
【図１０】
2019121030.tif 000012
【図１１】
2019121030.tif 000013
【図１２】
2019121030.tif 000014