(57)【要約】【課題】  本発明は、画像処理機能を効率的に検査する機能を有する画像処理装置の提供を目的とする。【解決手段】  一組のステレオ画像の相関を求め、両画像に共通する対応点に対する視差を導出し、その視差に基づいて前記対応点までの距離を算出する距離算出ルーチンを有し、前記距離算出ルーチンによって動作する画像処理部２２，２４を有する画像処理装置において、既知の一組のステレオ画像について前記距離算出ルーチンを適用する場合に画像処理部２２，２４から得られるべき処理結果を予め記憶する記憶手段を備え、画像処理部２２，２４の検査時に、前記既知の一組のステレオ画像と同一のテスト画像について前記距離算出ルーチンを適用した場合に画像処理部２２，２４から得られた処理結果と前記記憶手段に記憶された処理結果との比較をすることによって、画像処理部２２，２４の異常判定を行うことを特徴とする画像処理装置。【選択図】  図１
2006313498.tif 000002
【特許請求の範囲】
【請求項１】
一組のステレオ画像の相関を求め、両画像に共通する対応点に対する視差を導出し、その視差に基づいて前記対応点までの距離を算出する距離算出ルーチンを有し、
前記距離算出ルーチンによって動作する画像処理部を有する画像処理装置において、
既知の一組のステレオ画像について前記距離算出ルーチンを適用する場合に前記画像処理部から得られるべき処理結果を予め記憶する記憶手段を備え、
前記画像処理部の検査時に、前記既知の一組のステレオ画像と同一のテスト画像について前記距離算出ルーチンを適用した場合に前記画像処理部から得られた処理結果と前記記憶手段に記憶された処理結果との比較をすることによって、前記画像処理部の異常判定を行うことを特徴とする画像処理装置。
【請求項２】
前記比較の対象となる処理結果は、視差画像上の視差点の総数である請求項１記載の画像処理装置。
【請求項３】
前記比較の対象となる処理結果は、視差画像上の所定方向の線上の視差点の総数である請求項１記載の画像処理装置。
【請求項４】
前記比較の対象となる処理結果は、視差画像上の所定範囲の距離データを有する視差点の総数である請求項１記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理機能を検査する機能を有する画像処理装置に関する。
【背景技術】
【０００２】
従来から、モニタリング範囲に存在する対象物までの距離データを算出して監視を行い、算出された距離データの信頼性が低下している場合にフェールセーフを実行する監視装置が知られている（例えば、特許文献１参照）。この監視装置は、モニタリング範囲の一部の領域であって当該領域内における対象物までの距離に関して特定の傾向を有するような領域を監視領域として設定すると共に、当該監視領域内における距離データの垂直・水平成分の分散値（ばらつき）を検出する。そして、その検出された分散値が小さい場合には算出された距離データの信頼性が高いと判断され、大きい場合には算出された距離データの信頼性が低いと判断される。
【特許文献１】特開２００１−４３４９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、画像処理するシステムの起動時に、そのシステムを実現する各構成要素が正常に機能しているか否かを判定して起動する必要があるが、各構成要素の数が多くなり、また、機能が複雑になるにつれて、個別にそれぞれの機能をチェックすると多大な時間を要してしまう。この点、上記の従来技術においても、上述のような複雑なチェック方法を行っているため、同様の問題が生じてしまうおそれがある。
【０００４】
そこで、本発明は、画像処理機能を効率的に検査する機能を有する画像処理装置の提供を目的とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明の一局面によれば、
一組のステレオ画像の相関を求め、両画像に共通する対応点に対する視差を導出し、その視差に基づいて前記対応点までの距離を算出する距離算出ルーチンを有し、
前記距離算出ルーチンによって動作する画像処理部を有する画像処理装置において、
既知の一組のステレオ画像について前記距離算出ルーチンを適用する場合に前記画像処理部から得られるべき処理結果を予め記憶する記憶手段を備え、
前記画像処理部の検査時に、前記既知の一組のステレオ画像と同一のテスト画像について前記距離算出ルーチンを適用した場合に前記画像処理部から得られた処理結果と前記記憶手段に記憶された処理結果との比較をすることによって、前記画像処理部の異常判定を行うことを特徴とする画像処理装置が提供される。
【０００６】
本局面において、既知の一組のステレオ画像を用いることによって画像処理部による処理結果を事前に求めることは可能である。したがって、画像処理部の検査時に、その事前に求められた処理結果とそのステレオ画像と同一のテスト画像についての処理結果とを比較することによって、画像処理部のスルーチェックを行うことができ、チェックの信頼性を確保したまま、通常時のチェック時間を低減することができる。また、画像処理部の検査時には、通常時に使われる距離算出ルーチンをそのまま異常判定の検査に適用することができるので、検査のために特化した処理や余分な処理がほとんど不要になるとともに、検査のための処理負荷も軽減することができる。
【０００７】
また、前記比較の対象となる処理結果は、視差画像上の視差点の総数、視差画像上の所定方向の線上の視差点の総数、視差画像上の所定範囲の距離データを有する視差点の総数であるのがよい。
【発明の効果】
【０００８】
本発明によれば、画像処理機能を効率的に検査することができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。図１は、本発明の画像処理装置を用いた画像処理システムの構成の一例を示した図である。本画像処理システムは、カメラＥＣＵ（Electric  Control  Unit）１０とステレオＥＣＵ２０を備える。それぞれのＥＣＵは、中央処理演算装置（ＣＰＵ）、プログラムを記憶するＲＯＭ、データを一時的に記憶するＲＡＭ、入力インターフェース、出力インターフェースなどの複数の回路要素が一ユニットとして構成されたものである。コンピュータとも呼ばれる。なお、本発明の画像処理装置の機能は、ステレオＥＣＵ２０内の構成要素により実現される。
【００１０】
カメラＥＣＵ１０は、撮像素子１１，１２やレンズ１５，１６といったステレオカメラを構成するカメラモジュール１７、カメラＣＰＵ１３、画像出力部１４等を有する。撮像素子１１，１２は、例えば、ＣＣＤ（Charge  Coupled  Device）で構成されている。カメラＣＰＵ１３は、ステレオＥＣＵ２０からの制御信号に基づいてカメラ側の露出等の制御を行う。カメラＣＰＵ１３は、出力インターフェースである画像出力部１４を介して、撮像素子１１，１２による撮像画像を画像信号としてステレオＥＣＵ２０に送信する。なお、撮像素子は２個に限らず、それ以上の数を有してもよい。
【００１１】
ステレオＥＣＵ２０は、入力インターフェースである画像入力部２１、幾何変換処理部である幾何変換ＬＳＩ２２、画像認識処理部である画像処理ＬＳＩ２４、各処理部を監督するＳＶ−ＣＰＵ２３等を有する。
【００１２】
カメラＥＣＵ１０の画像出力部１４から出力された画像信号は、ステレオＥＣＵ２０の入力インターフェースである画像入力部２１に送られる。画像出力部１４と画像入力部２１は、所定のデジタル伝送方式のインターフェースである。
【００１３】
画像信号を受けた画像入力部２１は、画像信号の画像データを幾何変換ＬＳＩ２２に送る。幾何変換ＬＳＩ２２は、キャリブレーションデータを用いて、ステレオ演算処理に使用されるカメラモジュール１７の撮像画像から、撮像素子１１，１２やレンズ１５，１６等によるハード的な内部誤差要因（レンズ歪み、光軸ずれ、焦点距離ずれ及び撮像素子歪み等）の影響を取り除き、エピポーラ線を画像水平線にあわせる周知の処理を行う。幾何変換ＬＳＩ２２は、メモリ２５に記憶された幾何変換用のＬＵＴ（Look  Up  Table）に基づき入力画像を変換する。
【００１４】
上記の内部誤差要因が生じてしまうため、カメラモジュール１７はキャリブレーションを行ってから工場等から出荷される。したがって、幾何変換ＬＳＩ２２は、どのようなカメラモジュール１７を含むカメラＥＣＵ１０が接続されても、このあらかじめ行われているキャリブレーションのデータ（つまり、キャリブレーションデータ）を所定の補正演算式や所定の補正マップに適用することによって（つまり、幾何変換用ＬＵＴに基づいて）、上記の内部誤差要因を補正し、適正な幾何変換処理を行うことができるようになる。キャリブレーションデータには、例えば、焦点距離、撮像素子間隔、縦・横の画像サイズ、補正焦点距離、縦方向・横方向の光軸ずれ値、レンズ歪み量（若しくは、レンズ歪み係数）が挙げられる。また、カメラモジュール１７の特定ができるように、シリアルナンバーも含めてもよい。
【００１５】
画像処理ＬＳＩ２４は、幾何変換ＬＳＩ２２からの幾何変換された画像データに基づいて画像認識処理を行う。画像認識処理は、例えばステレオ視の技術によって撮像画像から立体物を検出する画像処理プログラムによる処理である。画像処理プログラムや処理すべき画像はメモリ２６に記録され、画像処理ＬＳＩ２４は、それらを読み込んで画像認識処理を行う。
【００１６】
画像認識処理は、例えば左右に配置された撮像素子１１，１２により撮像された一対の画像の相関を求め、同一物体に対する視差に基づいて三角測量の要領でその物体までの距離を算出するものである。
【００１７】
つまり、画像処理ＬＳＩ２４は、撮像素子１１，１２により撮像された一組のステレオ画像から同一の撮像対象物が写っている部分を抽出し、一組のステレオ画像同士でその撮像対象物の同一点を対応づけ、対応づけられた点（対応点）のずれ量（視差）を求めることによって撮像対象物までの距離を算出する。撮像対象物が前方にある場合、撮像素子１１による画像と撮像素子１２による画像とを重ね合わせると、撮像対象物が左右横方向にずれる。そして、片方の画像を１画素ずつシフトしながら最も重なり合う位置を求める。このときシフトした画素数をｎとする。レンズの焦点距離をｆ、光軸間の距離をｍ、画素ピッチをｄとすると、撮像対象物までの距離Ｌは、『Ｌ＝（ｆ・ｍ）／（ｎ・ｄ）』という関係式が成立する。この（ｎ・ｄ）が視差である。
【００１８】
ＳＶ−ＣＰＵ２３は、各処理部を監督（supervisor）するＣＰＵである。画像処理ＬＳＩ２４が兼ねても可である。ＳＶ−ＣＰＵ２３は、画像処理ＬＳＩ２４の処理画像に基づいて算出されたカメラ制御値（例えば、露出調整のパラメータであるシャッタスピード情報）をカメラＥＣＵ１０内のカメラＣＰＵ１３に送信・指示する。
【００１９】
このようなカメラＥＣＵ１０やステレオＥＣＵ２０を車両に搭載することによって、路上の障害物等の画像認識情報を利用する制御に使用することが可能である。例えば、ＳＶ−ＣＰＵ２３が、車内ＬＡＮを介して、画像認識処理結果を必要とする他のＥＣＵにその結果を送信すればよい。他のＥＣＵとは、例えば、衝突回避・衝突軽減システムを制御するＥＣＵ、車線維持支援システムや車線逸脱警報システムを制御するＥＣＵ、車間ＥＣＵ、ブレーキＥＣＵ等である。
【００２０】
それでは、上述の画像処理システムに本発明を適用したときの処理動作について説明する。
【００２１】
図２は、ステレオＥＣＵ２０が起動時に行う処理シーケンスの一例である。ステップ１において、電源投入等により起動したＳＶ−ＣＰＵ２３は、メモリの初期化や割り込みベクタの設定等を行う。ステップ２において、ＥＥＰＲＯＭ２８やＣＡＮドライバ（ＬＡＮとの接続インターフェースＩＣ）等の周辺ＩＣが初期化される。ステップ３において、幾何変換ＬＳＩ２２及び画像処理ＬＳＩ２４のリセットが解除されて、それらのＬＳＩが立ち上がる。ステップ４において、ＳＶ−ＣＰＵ２３は幾何変換ＬＳＩ２２及び画像処理ＬＳＩ２４からのＲＵＮパルス（リセットが解除されてＰＬＬロックアップが完了した後に発生するパルス）を確認することによって、幾何変換ＬＳＩ２２及び画像処理ＬＳＩ２４の起動チェックを行う。ＲＵＮパルスに異常があれば、異常を管理する所定のＥＣＵにＬＡＮを介してその異常が通知される。ステップ５において、幾何変換ＬＳＩ２２のレジスタの初期設定と書き込みチェックが行われる。ステップ６において、画像処理ＬＳＩ２４のレジスタの初期設定と書き込みチェックが行われる。ステップ７において、ＳＶ−ＣＰＵ２３は、メモリ２５，２６，２７のＥＣＣ／パリティエラーの通知が幾何変換ＬＳＩ２２や画像処理ＬＳＩ２４を介して正常に行われることを確認する。正常であれば、ＳＶ−ＣＰＵ２３は、メモリ２５，２６，２７のリセットを解除する。異常であれば、異常を管理する所定のＥＣＵにＬＡＮを介してメモリ異常が通知される。ステップ８において、カメラＥＣＵ１０（カメラＣＰＵ１３）とステレオＥＣＵ２０（ＳＶ−ＣＰＵ２３）間の通信チェックが行われる。正常の場合には、ＳＶ−ＣＰＵ２３はカメラＣＰＵ１３に画像送信の開始を指示する。異常の場合には、ＤＳＳ１にカメラ通信異常が通知される。ステップ９において、カメラＥＣＵ１０内の画像出力部１４とステレオＥＣＵ２０内の画像入力部２１を介して、幾何変換ＬＳＩ２２が画像信号を正常に受信できるか否かが確認される。異常であれば、異常を管理する所定のＥＣＵにＬＡＮを介して画像通信異常が通知される。ステップ１０において、カメラＥＣＵ１０からの画像信号が停止した際に、幾何変換ＬＳＩ２２でエラー判定し、正常にＳＶ−ＣＰＵ２３に割り込みが入ることが確認される。異常であれば、異常を管理する所定のＥＣＵにＬＡＮを介してエラー判定機能の異常が通知される。ステップ１１において、カメラＥＣＵ１０から送信されるテストパターン（テスト画像）によって画像処理機能のチェックが行われる。ステップ１１の詳細な説明は、後述する。テストパターンによるチェックの終了後、ステップ１２において、ステレオＥＣＵ２０は、カメラＥＣＵ１０（カメラモジュール１７）のキャリブレーションデータの取り込みを行う。上述したように、ステレオＥＣＵ２０は自身の画像処理を適正に行うために、カメラＥＣＵ１０（カメラモジュール１７）のキャリブレーションデータが必要である。そこで、カメラＥＣＵ１０とステレオＥＣＵ２０がはじめて接続されたとき、ステレオＥＣＵ２０は、カメラモジュール１７のシリアルナンバーとそのキャリブレーションデータを取り込む。取り込まれた両データは、ＥＥＰＲＯＭ２８に記憶される。記憶後、次回以降の通信（例えば、次回の起動時）では、シリアルナンバーのみの確認が行われ、初回通信時と同じであればＥＥＰＲＯＭ２８に記憶されたキャリブレーションデータが用いられる。ステップ１３において、画像処理ＬＳＩ２４は、画像処理プログラムをメモリからロードする。ステップ１４において、幾何変換用ＬＵＴが最終的に設定される。ステップ１５において幾何変換ＬＳＩ２２の幾何変換処理動作が開始可能となり、ステップ１６において画像処理ＬＳＩ２４の画像認識処理動作が開始可能となる。
【００２２】
それでは、ステップ１１におけるカメラＥＣＵ１０から送信されるテストパターンによって実施される画像処理機能のチェック動作について説明する。図３は、図２のステップ１１のテストパターンチェックの詳細シーケンスである。ステップ２０において、メモリ２５の幾何変換用ＬＵＴが設定される。ここでは、チェックルーチン汎用化のため、幾何変換用ＬＵＴが１対１（入力される幾何変換前画像＝出力される幾何変換後画像）に設定される。ステップ２１において、テストパターンチェック用プログラムが画像処理ＬＳＩ２４のプログラム領域にロードされる。ステップ２２において、ＳＶ−ＣＰＵ２３は、カメラＥＣＵ１０内のカメラＣＰＵ１３にテストパターンの送信開始を指示し、その指示を受けたカメラＣＰＵ１３が速やかにテストパターンの送信を行う。ステップ２３において、ＳＶ−ＣＰＵ２３は、幾何変換ＬＳＩ２２に対して幾何変換処理を開始するように指示（レジスタに設定）する。ステップ２４において、ＳＶ−ＣＰＵ２３は、画像処理ＬＳＩ２４に対してテストパターンチェック用プログラムの起動を指示する。ステップ２５において、まず、画像処理ＬＳＩ２４は、カメラＥＣＵ１０から受け取ったテストパターンをテストパターンチェック用プログラムによって処理する。そして、その処理結果と予めＥＥＰＲＯＭ２８その他の不揮発性メモリに記憶された正解値との比較が行われる。そのテストパターンチェック用プログラムによる処理結果がその正解値と一致していれば、正常と判断されて、次の処理（図２のステップ１２）へ移行する。一致していなければ、異常と判断されて、異常を管理する所定のＥＣＵにＬＡＮを介して画像処理機能の異常が通知される。
【００２３】
ここで、正解値とは、幾何変換ＬＳＩ２２と画像処理ＬＳＩ２４からなる画像処理部がそのテストパターンを画像処理することによって得られるべき処理結果である。テストパターンは、文字通り、テストのための既知のパターンであるため、幾何変換ＬＳＩ２２と画像処理ＬＳＩ２４の画像処理機能の異常有無を判断する基準となる値（つまり、正解値）を予め設計的に算出することは可能である。
【００２４】
続いて、上記のテストパターン及びテストパターン用チェックプログラムの簡単な具体例について説明する。図４は、テストパターンとテストパターン用チェックプログラムによるテストパターンの処理内容とを示す図である。テストパターンは、例えば図４（ａ），（ｂ）に示されるような、３本の棒状パターン（Ａ−Ａ’，Ｂ−Ｂ’，Ｃ−Ｃ’）を有する画像とする。図４（ａ）は、左右に配置された２つの撮像素子のうち、左側の撮像素子用のパターンである。図４（ｂ）は、左右に配置された２つの撮像素子のうち、右側の撮像素子用のパターンである。３つの棒状のパターンは、それぞれの視差が異なるように配置されている。この２つの画像に対し、テストパターン用チェックプログラムは、通常の画像処理（立体物検出処理）と同じロジックで立体物の検出処理を行う。この立体物検出処理により、３つの棒状パターンは３個の立体物として検出され、結果として、空間上の各棒状パターンの高さと位置が測定される（図４（ｃ））。その測定された高さと位置をそれらの正解値と照合することにより、正常に画像処理されたか否かが判断可能となる。
【００２５】
それでは、より詳細に、テストパターンの画像処理結果を評価することにより、ステレオＥＣＵ２０（特に、幾何変換ＬＳＩ２２と画像処理ＬＳＩ２４）が正常に動作していることを検査する手法について説明する。本手法は、左右に配置された撮像素子１１，１２により撮像された一対の画像の相関を求め、同一物体に対する視差に基づいて三角測量の要領でその物体までの距離を算出する上述の距離算出ルーチンを利用する。
【００２６】
図５は、テストパターンによるステレオＥＣＵ２０の画像認識処理機能の検査フローを示す図である。ステップ３０において、画像処理ＬＳＩ２４は，テストパターンチェック用プログラムを起動し、上記の距離算出ルーチンを呼び出して、テストパターンの画像認識処理を行う。距離算出ルーチンを実行すると、その処理結果として視差画像が生成される。この視差画像を利用した判定条件である、条件１（ステップ３１）、条件２（ステップ３２）及び条件３（ステップ３３）のいずれも成立すれば、ステレオＥＣＵ２０の画像認識処理機能は正常であると判断される。一つでも成立しない条件があれば、ステレオＥＣＵ２０の画像認識処理機能は異常であると判断される。
【００２７】
これらの３つの条件について、図６〜８を参照しながら説明する。図６〜８に示される視差画像は同一画像である。テストパターンとして、道路と横断歩道と背景が写っている既知の実画像を使用している。視差画像上の黒い部分（黒点）は、視差に基づいて算出された距離データを有している「視差点」である。一方、視差画像上の白い部分は、対象物がなく視差がないために距離データを有していない。
【００２８】
図６は、条件１を説明するための図である。条件１では、「今回の画像認識処理による視差画像上の視差点の総数」が「既知の視差画像上の視差点の総数（正解値）」に一致するか否かが確認される。つまり、視差点の総数が１２３４５個（例示）に一致しなければ、ステレオＥＣＵ２０の画像認識処理機能は異常であると判断される。
【００２９】
図７は、条件２を説明するための図である。条件２では、「今回の画像認識処理による視差画像上の同一Ｘ座標ごとの視差点の総数」が「既知の視差画像上の同一Ｘ座標ごとの視差点の総数（正解値）」に一致するか否かが確認される（今回の処理結果と正解値について、図７の視差画像に引かれた線上にある視差点の総数を比較し、すべてのＸ座標について実施）。つまり、いずれかの同一Ｘ座標方向上にある視差点の総数が一致しなければ、ステレオＥＣＵ２０の画像認識処理機能は異常であると判断される。
【００３０】
図８は、条件３を説明するための図である。条件３では、「今回の認識処理による視差画像上の所定視差領域ごとの視差点の総数」が「既知の視差画像上の所定視差領域ごとの視差点の総数（正解値）」に一致するか否かが確認される。所定視差領域とは、黒点が有する距離データをある距離範囲で区分した領域である。つまり、今回の処理結果と期待値について、０ｍ〜１０ｍの範囲にある距離データを有する視差点の総数の比較、１０ｍ〜２０ｍの範囲にある距離データを有する黒点の総数の比較、・・・というようにすべての範囲（すなわち、すべての視差領域）について比較する。いずれかの範囲の視差点の総数が一致しなければ、ステレオＥＣＵ２０の画像認識処理機能は異常であると判断される。なお、視差領域の区分範囲は、仕様等に応じて任意に決めればよい。
【００３１】
このように、既知のテストパターンに対し距離算出ルーチンを適用することによって、ステレオＥＣＵ２０の画像認識処理機能の異常有無を判定している。これにより、（検査時ではない）通常時の画像認識処理で使用する距離算出ルーチンをそのまま異常判定の検査に適用できるので、検査のために特化した処理や余分な処理がほとんど不要になるとともに、検査のためのＬＳＩ等の処理負荷も軽減することができる。また、既知のテストパターンを用いることによって画像認識処理の結果を事前に想定することが可能であるため、この想定された処理結果を正解値として予め記憶することができる。そして、同一のテストパターンを用いた処理結果とその正解値とを比較することによって、機能が複雑で本来ならより細かく分けてチェックが必要な画像処理認識機能をスルーチェックで効率的に行うことができ、チェックの信頼性を確保したまま、チェック時間を低減することができる。
【図面の簡単な説明】
【００３２】
【図１】本発明の画像処理装置を用いた画像処理システムの構成の一例を示した図である。
【図２】ステレオＥＣＵ２０が起動時に行う処理シーケンスの一例である。
【図３】図２のステップ１１のテストパターンチェックの詳細シーケンスである。
【図４】テストパターンとテストパターン用チェックプログラムによるテストパターンの処理内容とを示す図である。
【図５】テストパターンによる画像認識システムのチェックフローを示す図である。
【図６】認識処理による視差画像上の視差点の総数に関しての比較を示す図である。
【図７】認識処理による視差画像上の同一Ｘ座標ごとの視差点の総数に関しての比較を示す図である。
【図８】認識処理による視差画像上の所定視差領域ごとの視差点の総数に関しての比較を示す図である。
【符号の説明】
【００３３】
１０  カメラＥＣＵ
１１，１２  撮像素子  
１３  カメラＣＰＵ
１４  画像出力部
１５，１６  レンズ
１７  カメラモジュール
２０  ステレオＥＣＵ
２１  画像入力部
２２  幾何変換ＬＳＩ
２３  ＳＶ−ＣＰＵ
２４  画像処理ＬＳＩ
２５，２６，２７  メモリ
２８  ＥＥＰＲＯＭ
【図１】
2006313498.tif 000003
【図２】
2006313498.tif 000004
【図３】
2006313498.tif 000005
【図４】
2006313498.tif 000006
【図５】
2006313498.tif 000007
【図６】
2006313498.tif 000008
【図７】
2006313498.tif 000009
【図８】
2006313498.tif 000010