しかしながら、ビデオカメラで撮像して得られた撮像画像を処理する画像処理装置が設置された管制センター、又は監視センターなどと、ビデオカメラとを、例えば、数km〜数十km離れて設置せざるを得ない場合には、ビデオカメラで撮像した撮像画像をIP網などの通信回線を介して伝送し、伝送された撮像画像をセンター装置で取得し、センター装置は、取得した撮像画像を処理することにより、撮像対象の三次元位置を算出する必要がある。
この場合、各ビデオカメラで撮像して得られた撮像画像をIP網などの通信回線を介して画像処理装置へ伝送するため、撮像画像を伝送する際に行われる画像データの圧縮・伸張処理(例えば、MPEG2、MPEG4など)を行う処理装置の処理能力の差、又は通信回線上の通信量の多少などに応じて、二つのビデオカメラで同じ時点に撮像して得られた撮像画像夫々が、必ずしも同じ時点に画像処理装置で取得されず、撮像画像間の遅延が生じ、撮像対象の三次元位置を正確に算出することができない場合がある(又は予想される)。
また、2つのビデオカメラで撮像した撮像画像を同じ時点で取得するように同期させるためには、同期回路が必要となり、画像処理システムのコストが高くなる。また、通信回線を介して撮像画像を伝送する場合には、通信回線上の通信量は時々刻々変化するため、撮像画像間の遅延量も一定にはならず、取得する撮像画像を同期させることは、一層困難な場合があった。さらに、二つのビデオカメラが当初同期している場合であっても、経年変化などにより同期がずれる場合もある(又は予想される)。
図8は従来の撮像画像の遅延の例を示す説明図である。図8(a)に示すように、2つのビデオカメラで撮像対象の注目している点(注目点)を撮像した場合、ビデオカメラ1のレンズ中心と注目点とを結ぶ直線が、ビデオカメラ2に投影される。この投影された直線をエピポーラ線といい、2つのビデオカメラで撮像した撮像画像を処理して、撮像対象の三次元位置を算出する場合、それぞれのビデオカメラで撮像した点を対応付けるため、エピポーラ線上を探索する。
図8(b)に示すように、2つのビデオカメラが左右同じ高さに設置され、夫々の光軸が平行に保たれている場合は、エピポーラ線は、走査線に一致し、撮像画像上で水平線となり、注目点に対応する対応点はエピポーラ線上に存在する。しかし、撮像画像の遅延が生じる場合には、図8(c)に示すように、注目点に対応する対応点は、エピポーラ線上に存在せず、一方のビデオカメラで撮像した点の、他方のビデオカメラでの対応点は、遅れてエピポーラ線上に現れることになり、撮像対象の三次元位置を正確に算出することができない。
本発明は、斯かる事情に鑑みてなされたものであり、第1の撮像装置で撮像して得られた第1撮像画像に基づいて、撮像対象の特徴点を抽出し、抽出した特徴点に対応する対応点が、第2の撮像装置で撮像して得られた第2撮像画像のエピポーラ線上にあるか否かを判定し、対応点があると判定した場合に、該対応点が存在する第2撮像画像及び前記第1撮像画像の取得時点に基づいて、両撮像画像間の撮像遅延量を算出することにより、夫々の撮像装置で撮像される撮像画像間で遅延が生じた場合、又は撮像画像の同期が取れていない場合であっても、撮像画像間の画像遅延量を算出して撮像画像を処理する画像処理システム、該画像処理システムを構成する画像処理装置、該画像処理装置を実現するためのコンピュータプログラム、及び画像遅延量算出方法を提供することを目的とする。
また、本発明の他の目的は、前記対応点が、取得時点の異なる複数の第2撮像画像夫々のエピポーラ線上にあるか否かを判定するようにしてあることにより、撮像画像間の画像遅延量の大小に拘わらず、撮像画像間の画像遅延量を算出することができる画像処理装置を提供することにある。
また、本発明の他の目的は、撮像対象が移動するか否かを判定することにより、撮像装置で撮像して得られた撮像画像を利用して画像遅延量を算出することができる画像処理装置を提供することにある。
また、本発明の他の目的は、第1撮像画像の複数の特徴点を抽出し、抽出した特徴点毎に算出した画像遅延量の最頻値を算出するようにしてあることにより、撮像画像間の遅延量を精度良く算出することができる画像処理装置を提供することにある。
また、本発明の他の目的は、取得時点の異なる複数の第1撮像画像に基づいて特徴点を抽出し、前記第1撮像画像毎に算出した画像遅延量の最頻値を算出するようにしてあることにより、撮像画像間の遅延量を精度良く算出することができる画像処理装置を提供することにある。
また、本発明の他の目的は、算出した画像遅延量だけ取得時点が異なる第1撮像画像及び第2撮像画像を用いて、撮像対象の三次元座標を算出するようにしてあることにより、撮像画像間の遅延量に拘わらず、撮像対象の三次元座標を従来よりも正確に算出することができる画像処理装置を提供することにある。
第1発明に係る画像処理システムは、二つの撮像装置と、該撮像装置で撮像して得られた撮像画像を処理する画像処理装置とを備える画像処理システムにおいて、前記画像処理装置は、第1の撮像装置及び第2の撮像装置で撮像して得られた第1撮像画像及び第2撮像画像並びに両撮像画像の取得時点を記憶する記憶部と、前記第1撮像画像に基づいて、前記第1の撮像装置及び第2の撮像装置で撮像した共通の撮像対象の特徴点を抽出する抽出手段と、前記第2撮像画像で前記特徴点に対応するエピポーラ線を特定する特定手段と、前記特徴点に対応する対応点が、前記エピポーラ線上にあるか否かを判定する対応点判定手段と、該対応点判定手段で対応点があると判定した場合に、該対応点が存在する第2撮像画像及び前記第1撮像画像の取得時点に基づいて、両撮像画像間の画像遅延量を算出する算出手段とを備え、前記画像遅延量だけ取得時点が異なる第1撮像画像及び第2撮像画像を用いて前記撮像対象の三次元座標を算出するようにしてあることを特徴とする。
第2発明に係る画像処理装置は、取得した二つの撮像画像を処理する画像処理装置において、第1撮像画像、第2撮像画像、及び両撮像画像の取得時点を記憶する記憶部と、前記第1撮像画像に基づいて、撮像対象の特徴点を抽出する抽出手段と、前記第2撮像画像で前記特徴点に対応するエピポーラ線を特定する特定手段と、前記特徴点に対応する対応点が、前記エピポーラ線上にあるか否かを判定する対応点判定手段と、該対応点判定手段で対応点があると判定した場合に、該対応点が存在する第2撮像画像及び前記第1撮像画像の取得時点に基づいて、両撮像画像間の画像遅延量を算出する算出手段とを備えることを特徴とする。
第3発明に係る画像処理装置は、第2発明において、前記対応点判定手段は、前記対応点が、取得時点の異なる複数の第2撮像画像夫々で前記特徴点に対応するエピポーラ線上にあるか否かを判定するようにしてあることを特徴とする。
第4発明に係る画像処理装置は、第2発明又は第3発明において、前記抽出手段は、取得時点の異なる少なくとも二つの第1撮像画像で撮像対象に対応する特徴点を抽出し、抽出された特徴点に基づいて、前記撮像対象が移動するか否かを判定する移動判定手段を備え、前記撮像対象が移動する場合に、前記画像遅延量を算出するようにしてあることを特徴とする。
第5発明に係る画像処理装置は、第2発明乃至第4発明のいずれかにおいて、前記抽出手段は、第1撮像画像の複数の特徴点を抽出するようにしてあり、前記算出手段は、前記特徴点毎に算出した画像遅延量に基づいて、画像遅延量の最頻値を算出するようにしてあることを特徴とする。
第6発明に係る画像処理装置は、第2発明乃至第5発明のいずれかにおいて、前記抽出手段は、取得時点の異なる複数の第1撮像画像に基づいて特徴点を抽出するようにしてあり、前記算出手段は、前記第1撮像画像毎に算出した画像遅延量に基づいて、画像遅延量の最頻値を算出するようにしてあることを特徴とする。
第7発明に係る画像処理装置は、第2発明乃至第6発明のいずれかにおいて、前記画像遅延量だけ取得時点が異なる第1撮像画像及び第2撮像画像を用いて、撮像対象の三次元座標を算出するようにしてあることを特徴とする。
第8発明に係るコンピュータプログラムは、コンピュータに、撮像対象を撮像して得られた二つの撮像画像夫々の画像遅延量を算出させるためのコンピュータプログラムであって、コンピュータを、第1撮像画像に基づいて、前記撮像対象の特徴点を抽出する抽出手段と、第2撮像画像で前記特徴点に対応するエピポーラ線を特定する特定手段と、前記特徴点に対応する対応点が、前記エピポーラ線上にあるか否かを判定する対応点判定手段と、対応点があると判定した場合に、該対応点が存在する第2撮像画像及び前記第1撮像画像の取得時点に基づいて、両撮像画像間の画像遅延量を算出する算出手段として機能させることを特徴とする。
第9発明に係る画像遅延量算出方法は、二つの撮像装置で撮像して得られた撮像画像夫々の画像遅延量を算出する画像遅延量算出方法であって、第1の撮像装置で撮像して得られた第1撮像画像に基づいて、前記二つの撮像装置で撮像した共通の撮像対象の特徴点を抽出し、第2の撮像装置で撮像して得られた第2撮像画像で前記特徴点に対応するエピポーラ線を特定し、前記特徴点に対応する対応点が、前記エピポーラ線上にあるか否かを判定し、前記対応点があると判定した場合に、前記第1撮像画像及び前記対応点が存在する第2撮像画像の取得時点に基づいて、両撮像画像間の画像遅延量を算出することを特徴とする。
第1発明、第2発明、第8発明及び第9発明にあっては、第1の撮像装置で撮像対象を撮像して得られた第1撮像画像の各画素が有する輝度に基づいて、エッジを抽出し、抽出したエッジからピーク画素を抽出することにより、前記撮像対象の特徴点を抽出する。前記第1撮像画像における前記特徴点の座標に基づいて、第2撮像装置で前記撮像対象を撮像して得られた第2撮像画像における前記特徴点に対応するエピポーラ線を特定する。前記特徴点を注目画素とする画素ブロック(例えば、3×3画素ブロック)の各画素が有する輝度との相関演算をすることにより、前記特徴点に対応する対応点が前記エピポーラ線上に存在するか否かを判定する。対応点が存在する場合、該対応点が存在する第2撮像画像及び前記第1撮像画像の取得時点を特定し、取得時点の差を両撮像画像間の画像遅延量として算出する。これにより、算出された画像遅延量だけ取得時点が異なる第1撮像画像及び第2撮像画像を用いて処理をする。
第3発明にあっては、取得時点の異なる複数の第2撮像画像夫々におけるエピポーラ線上で、前記特徴点に対応する対応点が存在するか否かを判定する。画像遅延量の変化に応じて、前記対応点が存在する第2撮像画像の取得時点は変化する。取得時点の異なる複数の第2撮像画像のエピポーラ線上で、前記特徴点に対応する対応点が存在するか否かを判定することにより、画像遅延量が変化した場合であっても、対応点を探索することができる。
第4発明にあっては、取得時点の異なる少なくとも二つの第1撮像画像で撮像対象に対応する特徴点を抽出する。移動判定手段は、前記第1撮像画像における抽出された特徴点の座標が、取得時点の変化に応じて変化しているか否かを判定する。前記特徴点の座標が取得時点に応じて変化している場合は、撮像対象は移動しているものと判定し、算出手段は、画像遅延量を算出する。
第5発明にあっては、第1撮像画像において複数の特徴点を抽出する。抽出した特徴点毎に該特徴点に対応する対応点が、第2撮像画像における前記特徴点に対応するエピポーラ線上に存在するか否かを判定する。対応点が存在する場合、前記特徴点毎に算出した画像遅延量に基づいて、画像遅延量の最頻値を算出する。
第6発明にあっては、取得時点の異なる複数の第1撮像画像において特徴点を抽出する。抽出した特徴点毎に該特徴点に対応する対応点が、第2撮像画像における前記特徴点に対応するエピポーラ線上に存在するか否かを判定する。対応点が存在する場合、前記特徴点毎に算出した画像遅延量に基づいて、画像遅延量の最頻値を算出する。
第7発明にあっては、算出された画像遅延量だけ取得時点が異なる第1撮像画像及び第2撮像画像を用いて、撮像対象に対応する特徴点の第1撮像画像における座標及び対応点の第2撮像画像における座標に基づいて視差を算出し、算出した視差に基づいて前記撮像対象の三次元座標を算出する。
第1発明、第2発明、第8発明及び第9発明にあっては、第1撮像画像に基づいて撮像対象の特徴点を抽出し、抽出した特徴点に対応するエピポーラ線を特定する。前記特徴点に対応する対応点が前記エピポーラ線上に存在するか否かを判定し、前記第1撮像画像及び前記対応点が存在する第2撮像画像の取得時点に基づいて両撮像画像間の画像遅延量を算出することにより、夫々の撮像装置で撮像される撮像画像間で遅延がある場合、又は夫々の撮像装置で撮像される撮像画像の同期が取れていない場合であっても、撮像画像間の画像遅延量を算出することができる。
第3発明にあっては、取得時点の異なる複数の第2撮像画像夫々におけるエピポーラ線上で、前記特徴点に対応する対応点が存在するか否かを判定することにより、撮像画像間の画像遅延量の大小に拘わらず、撮像画像間の画像遅延量を算出することができる。
第4発明にあっては、移動する撮像対象を撮像した場合に、該撮像対象の特徴点を抽出することにより、撮像装置で撮像して得られた撮像画像を利用して画像遅延量を算出することができる。
第5発明にあっては、第1撮像画像の複数の特徴点を抽出し、抽出した特徴点毎に画像遅延量を算出し、画像遅延量の最頻値を算出することにより、撮像画像間の遅延量を精度良く算出することができる。
第6発明にあっては、取得時点の異なる複数の第1撮像画像に基づいて特徴点を抽出し、前記第1撮像画像毎に画像遅延量を算出し、画像遅延量の最頻値を算出することにより、撮像画像間の遅延量を精度良く算出することができる。
第7発明にあっては、算出した画像遅延量だけ取得時点が異なる第1撮像画像及び第2撮像画像を用いて、撮像対象の三次元座標を算出することにより、撮像画像間の遅延量に拘わらず、撮像対象の三次元座標を従来よりも正確に算出することができる。
以下、本発明を実施の形態を示す図面に基づいて説明する。図1は本発明の実施の形態に係る画像処理システムの概要を示す模式図である。図において、1及び2は車両、歩行者などの撮像対象を撮像するビデオカメラである。ビデオカメラ1、2夫々は、略同一高さであって水平方向に適長の距離を隔てて道路付近に設置されてあり、道路付近の共通する撮像対象を撮像するようにしてある。
ビデオカメラ1、2夫々には、画像データを所定の方式で圧縮するMPEG4エンコーダ3、4を接続してあり、MPEGエンコーダ3、4は、IP網などの通信回線5に接続してある。通信回線5には、ビデオカメラ1、2で撮像して得られた撮像画像を処理する画像処理装置6を接続してある。
ビデオカメラ1、2は、撮像して得られた画像データをNTSC信号としてMPEG4エンコーダ3、4へ夫々出力する。MPEG4エンコーダ3、4は、ビデオカメラ1、2から入力された画像データを所定の方式に基づいて圧縮し、圧縮したデータを通信回線5を介して画像処理装置6へ送信する。
図2は画像処理装置6の構成を示すブロック図である。図において、61はインタフェース部であり、通信回線5を介して受信した圧縮された画像データを元の画像データに復元する。インタフェース部61は、ビデオカメラ1、2から入力された画像データを第1画像メモリ62、第2画像メモリ63にフレーム単位で夫々記憶する。すなわち、フレームレートは、例えば、毎秒30フレームであり、画像処理装置6は、ビデオカメラ1、2で撮像して得られた撮像画像を毎秒30フレームの間隔で取得し、第1画像メモリ62、第2画像メモリ63に記憶する。
記録部67は、本発明のコンピュータプログラムPGを記録したCD−ROM671が挿入されることにより、CD−ROM671に記録されたコンピュータプログラムPGをRAM64に記憶する。CPU69は、RAM64に記憶されたコンピュータプログラムPGを実行する。画像処理装置6は、CD−ROM671に記録したコンピュータプログラムPGがRAM64に読み込まれ、読み込まれたコンピュータプログラムPGをCPU69で実行することにより、後述する特徴点抽出処理、エピポーラ線特定処理、対応点判定処理、画像遅延量算出処理、移動判定処理などの処理を実現する。
記憶部65は、コンピュータプログラムPGをCPU69で実行することにより、算出された画像遅延量を記憶している。
処理部68は、例えば、画像処理用LSIなどにより実現することができ、前処理部681、三次元座標算出部682を備える。前処理部681は、第1画像メモリ62から1フレーム単位の第1撮像画像を読み出し、読み出した第1撮像画像の全画素に対して、3×3画素マスクによるSobelフィルタでエッジを抽出し、抽出したエッジに基づくエッジ画像を生成する。前処理部681は、生成したエッジ画像を検索し、隣接する画素よりもエッジ強度が大きく、かつ、エッジ強度が所定の閾値以上であるピーク画素を抽出し、抽出したピーク画素の輝度、座標を三次元座標算出部682へ出力する。
また、前処理部681は、ピーク画素の位置と、隣接する画素のエッジ強度に基づいて、サブピクセル演算を行い真のピーク座標を算出し、算出した真のピーク座標を三次元座標算出部682へ出力する。
三次元座標算出部682は、記憶部65に記憶された画像遅延量sを読み出し、第1画像メモリから読み出した第1撮像画像の取得時点に比べて、画像遅延量sに相当するフレーム数だけ取得時点が異なる第2撮像画像を第2画像メモリ63から読み出す。
三次元座標算出部682は、前処理部681から入力された第1撮像画像におけるピーク画素の輝度、座標に基づいて、輝度値の相関演算を画素単位で行うことにより第2撮像画像における対応点を抽出する。
三次元座標算出部682は、前処理部681から入力された真のピーク座標及び対応点の座標により、第1撮像画像及び第2撮像画像における画素の視差を算出する。三次元座標算出部682は、算出した視差に基づいて、撮像対象のカメラ座標系における三次元位置を数1で表される式に基づいて算出する。
ここで、hはビデオカメラ1、2間の距離、dは視差、fはビデオカメラ1、2の焦点距離、x´L、y´Lは第1撮像画像における真のピーク座標、(x、y、z)は撮像対象のカメラ座標系における座標である。
また、三次元座標算出部682は、数2で表される式に基づいて、ワールド座標系における撮像対象の三次元位置を算出する。
ここで、(x、y、z)は、撮像対象のカメラ座標系における座標、Hはビデオカメラの高さ、θはピッチ角(水平から下方向を正)、(X、Y、Z)は撮像対象のワールド座標系における座標である。なお、簡単化のため、ヨー角及びロール角は、いずれも0としている。
入出力部66は、キーボード、マウス、ディスプレイなどを備え、画像処理装置6に対する入力操作、コンピュータプログラムPGの導入操作を行うことができるとともに、画像処理装置6で処理された処理結果の表示などを行う。
次に、本発明に係る画像処理システムの処理手順について説明する。図3は画像遅延量算出の処理手順を示すフローチャートである。画像処理装置6は、カウンタに「i」をセットし(S100)、第1画像メモリ62から取得時点がT−iΔ、及びT−(i+1)Δにおける1フレーム単位の第1撮像画像夫々を読み出す(S101)。ここで、1フレーム周期をΔ(例えば、1/30秒、またはその整数倍など)、最新の撮像画像の取得時点をTとすると、第1画像メモリ62は、取得時点が、T、T−Δ、…、T−iΔ、…、T−nΔ、…における第1撮像画像を記憶している。i、n(i<n)は整数である。また、画像メモリ63についても同様である。
画像処理装置6は、読み出した二つの第1撮像画像の各画素を順次走査し、各画素の輝度値に基づいてエッジを抽出することにより、撮像対象に対応する特徴点を抽出する(S102)。画像処理装置6は、取得時点が異なる二つの第1撮像画像で抽出された夫々の特徴点の第1撮像画像での座標が異なるか否かを判定することにより、撮像対象が移動するか否かを判定する(S103)。撮像対象が移動する場合(S103でYES)、画像処理装置6は、取得時点がT−iΔにおける第1撮像画像で抽出した特徴点の第1撮像画像における座標に基づいて、抽出した特徴点に対応する第2撮像画像におけるエピポーラ線を算出する(S104)。なお、ビデオカメラ1、2が左右同じ高さに設置され、夫々の光軸が平行に保たれている場合は、エピポーラ線は、走査線に一致する。
画像処理装置6は、第2画像メモリ63から取得時点がTの1フレーム分の第2撮像画像を読み出し(S105)、算出されたエピポーラ線に基づいて、読み出した第2撮像画像夫々のエピポーラ線を特定する(S106)。
画像処理装置6は、取得時点がT−iΔにおける第1撮像画像で抽出した特徴点を注目画素とする3×3画素ブロックの輝度値との相関演算を行うことにより、特徴点に対応する対応点をエピポーラ線上で探索する(S107)。なお、具体的な探索は、以下のいずれか行うことができる。相関値が所定値以上の点の中から、相関値が最大の点を対応点として選択する。又は、相関値が所定値以上の点が複数ある場合は、すべてを対応点として選択する。又は、相関値が所定値以上の点が複数ある場合は、すべてを却下する。すべての対応点を選択又は却下しても、後で統計処理(最頻値の算出)を行うことができる。画像処理装置6は、対応点の有無を判定し(S108)、対応点がある場合(S108でYES)、対応点が存在する第2撮像画像の取得時点(例えば、T−kΔ、kは0からnまでの整数)を記憶し(S109)、第1撮像画像の取得時点であるT−iΔと、記憶した取得時点T−kΔとに基づいて、両撮像画像の画像遅延量s(s=k−i)を算出する(S110)。
画像処理装置6は、全ての第2撮像画像を終了したか否かを判定する(S111)。対応点がない場合(S108でNO)、画像処理装置6は、ステップS111以降の処理を続ける。全ての第2撮像画像を終了していないと判定した場合(S111でNO)、画像処理装置6は、次の取得時点(例えば、T−Δ)の第2撮像画像を読み出すべく、ステップS105の処理を続ける。
画像処理装置6は、取得時点がT−nΔの第2撮像画像を読み出したか否かに基づいて、全ての第2撮像画像を終了している判定した場合(S111でYES)、画像処理装置6は、読み出した第1撮像画像の全画素を終了したか否かを判定する(S112)。第1撮像画像の全画素を終了していない場合(S112でNO)、画像処理装置6は、ステップS102以降の処理を続ける。
第1撮像画像の全画素を終了した場合(S112でYES)、画像処理装置6は、取得時点T−mΔの第1撮像画像を読み出したか否かに基づいて、第1撮像画像の全フレームを終了したか否かを判定する(S113)。第1撮像画像の全フレームを終了していない場合(S113でNO)、画像処理装置6は、カウンタに1を加算し(S114)、取得時点T−(i+1)Δ、及びT−(i+2)Δの第1撮像画像を読み出すべく、ステップ101以降の処理を続ける。
一方、撮像対象が移動しない場合(S103でNO)、画像処理装置6は、ステップS114以降の処理を続ける。第1撮像画像の全フレームを終了した場合(S113でYES)、画像処理装置6は、算出されたすべての画像遅延量の中から最頻値の画像遅延量を算出し(S115)、算出した画像遅延量を記憶部65に記憶して処理を終了する。
図4は画像メモリに記憶された撮像画像を示す概念図である。1フレーム周期をΔ(例えば、1/30秒、またはその整数倍など)、最新の撮像画像の取得時点をTとすると、第1画像メモリ62、第2画像メモリ63夫々は、ビデオカメラ1、2で撮像して得られた撮像画像を1フレーム単位で取得し、記憶しているため、取得時点が、T、T−Δ、…、T−iΔ、…、T−nΔ、…における第1撮像画像及び第2撮像画像を記憶している。i、n(i<n)は整数である。
上述の画像遅延量算出処理においては、画像処理装置6は、第1画像メモリ62に記憶され、取得時点がT−iΔの第1撮像画像で特徴点Pを抽出する。画像処理装置6は、第2画像メモリ63に記憶され、取得時点がTからT−nΔの各第2撮像画像を読み出し、各第2撮像画像におけるエピポーラ線を特徴点Pの座標に基づいて特定する。画像処理装置は、各第2撮像画像のエピポーラ線を探索し、特徴点Pに対応する対応点がエピポーラ線上にあるか否かを判定する。対応点Qがエピポーラ線上に存在すると判定した場合、画像処理装置6は、対応点Qが存在する第2撮像画像の取得時点であるT−kΔを記憶し、第1撮像画像の取得時点であるT−iΔと第2撮像画像の取得時点であるT−kΔとの差を画像遅延量s(s=k−i)として算出する。
なお、算出された画像遅延量は正の場合もあり、また負の場合もある。画像遅延量が正の場合は、ビデオカメラ1で撮像して得られた撮像画像よりもビデオカメラ2で撮像して得られた撮像画像が遅れて取得され、画像遅延量が負の場合は、ビデオカメラ2で撮像して得られた撮像画像よりもビデオカメラ1で撮像して得られた撮像画像が遅れて取得されていることを示す。
図5及び図6は画像遅延量の最頻値の例を示す説明図である。図5に示すように、第1撮像画像において、複数の特徴点P11、P12、…が抽出された場合は、特徴点毎に画像遅延量を算出し、算出した画像遅延量の中で最も頻度高く算出された値を最頻値として算出する。また、図6に示すように、取得時点が異なる複数の第1撮像画像夫々の特徴点P1、P2、…が抽出された場合は、第1撮像画像毎に画像遅延量を算出し、算出した画像遅延量の中で最も頻度高く算出された値を最頻値として算出する。
図7は三次元座標算出の処理手順を示すフローチャートである。画像処理装置6は、第1画像メモリ62から第1撮像画像を読み出し(S200)、読み出した第1撮像画像の取得時点と画像遅延量だけ取得時点が異なる第2撮像画像を第2画像メモリ63から読み出す(S201)。画像処理装置6は、読み出した第1撮像画像の画素が有する輝度に基づいてエッジを抽出し(S202)、抽出したエッジに基づくエッジ画像のピーク画素を抽出する(S203)。
画像処理装置6は、ピーク画素の位置と、その隣接する画素のエッジ強度を用いて、真のピーク位置を求めるサブピクセル演算を行う(S204)。画像処理装置6は、抽出されたピーク画素に基づいて、第2撮像画像のエピポーラ線上を探索して、ピーク画素に対応する対応点を抽出することにより、第1撮像画像及び第2撮像画像間でピーク画素の対応付けをする(S205)。
画像処理装置6は、対応付けられた画素の座標に基づいて視差を算出し(S206)、算出した視差、ビデオカメラ1、2のカメラパラメータ(焦点距離、高さ、ビデオカメラ間の距離など)に基づいて、三次元座標(カメラ座標系、ワールド座標系)を算出し(S207)、処理を終了する。
以上説明したように、本発明にあっては、ビデオカメラ1で撮像して得られた第1撮像画像に基づいて撮像対象の特徴点を抽出し、抽出した特徴点に基づいてビデオカメラ2で撮像して得られた第2撮像画像におけるエピポーラ線を特定する。前記特徴点に対応する対応点が前記エピポーラ線上に存在するか否かを判定し、前記第1撮像画像及び前記対応点が存在する第2撮像画像の取得時点に基づいて両撮像画像間の画像遅延量を算出することにより、夫々の撮像装置で撮像される撮像画像間で遅延が生じている場合、又は夫々の撮像装置で撮像される撮像画像の同期が取れていない場合であっても、撮像画像間の画像遅延量を算出することができる。また、算出した画像遅延量を用いて、撮像対象の三次元座標を従来よりも正確に算出することができるとともに、撮像画像を同期させる回路が不要になる。特に同期回路を備えていない既存のビデオカメラを用いて、三次元座標を算出する必要がある場合に、容易に実現することが可能となる。
また、取得時点の異なる複数の第2撮像画像夫々におけるエピポーラ線上で、前記特徴点に対応する対応点が存在するか否かを判定することにより、ビデオカメラ1、2で撮像して得られた撮像画像夫々の画像処理装置での取得時点が、通信回線の通信量の変動などにより変化した場合であっても、撮像画像間の画像遅延量を算出することができる。
また、撮像対象が移動しているか否かを判定することにより、撮像装置で撮像して得られた撮像画像を利用して画像遅延量を算出することができ、画像遅延量を算出するために画像処理装置の処理を止める必要がなく、実時間で画像遅延量の算出が可能になる。
また、第1撮像画像における複数の特徴点、又は取得時点の異なる複数の第1撮像画像を用いて、画像遅延量を複数算出し、算出した画像遅延量の中で最も頻度高く算出されたものを最頻値とすることにより、精度良く画像遅延量を算出することができる。
上述の実施の形態においては、最新の取得時点をTとして、T−iΔからT−mΔにおける第1撮像画像と、TからT−nΔにおける第2撮像画像を読み出す構成であったが、これは一例であり、これに限定されるものではないことは言うまでもない。すなわち、ビデオカメラ1、2のいずれからの撮像画像が遅延するか、また、どの程度遅延が見込まれるかに応じて、i、m、nは適宜決定することが可能である。
上述の実施の形態においては、対応点の有無を第2撮像画像における一本のエピポーラ線上を探索することにより判定する構成であったが、これに限定されるものではなく、ビデオカメラの設置位置に関する誤差、ビデオカメラのカメラパラメータの誤差などを考慮して、特定されたエピポーラ線に隣接する複数の走査線を含めてエピポーラ線として探索する構成であってもよい。また、ビデオカメラ1、2の相対位置に応じて、エピポーラ線が走査線に一致しない場合であっても同様に画像遅延量を算出することができる。
上述の実施の形態においては、第1撮像画像の特徴点すべてについて画像遅延量を算出するとともに、取得時点が異なる複数の第1撮像画像についても画像遅延量を算出する構成であったが、画像遅延量の算出は、画像処理システムを起動する場合に、一度だけ行うものでもよく、また、通信回線などの通信量に応じて、伝送遅延が一定でなく、頻繁に変動するような状況においては、画像処理を実時間で行いながら、一定周期(例えば、1分に一度)で画像遅延量を算出することもできる。
上述の実施の形態においては、道路の交通状況を把握する画像処理システムについて説明したが、本発明はこれに限定されるものではなく、防犯監視システム、スポーツ中継などの放送システムなど、複数のビデオカメラを用いて撮像対象を撮像するものであれば、いずれのシステムにおいても適用することが可能である。
上述の実施の形態においては、複数回算出した画像遅延量の最頻値を算出する構成であったが、複数回求めた画像遅延量に基づいて、最適な画像遅延量の算出は、これに限定されるものではなく、他の統計処理に基づいて算出するものであってもよい。
上述の実施の形態において、撮像対象が移動しているか否かを判定する場合に、フレーム周期Δだけ取得時点の異なる撮像画像を用いる構成であったが、取得時点の時間差は、これに限定されるものではなく、二つの撮像画像において同じ撮像対象が撮像されている限り、いずれの取得時点の撮像画像を用いてもよい。
上述の実施の形態においては、ビデオカメラ1で撮像した第1撮像画像に基づいて特徴点を抽出する構成であったが、ビデオカメラ1、2いずれで撮像した撮像画像を用いて特徴点を抽出することができるのはいうまでもない。
上述の実施の形態においては、ビデオカメラを2台備える構成であったが、ビデオカメラの数は2台に限定されるものではなく、3台以上備える場合であっても、本発明を適用することが可能である。この場合は、任意の2台を選択し、選択したビデオカメラ間の画像遅延量を算出することができる。