二輪車検出装置、信号制御システム、二輪車検出システム、二輪車検出方法及びコンピュータプログラム
【課題】環境変化に影響されず、かつ広範囲で従来よりも二輪車を正確に検出することができる二輪車検出装置、該二輪車検出装置を備える信号制御システム、前記二輪車検出装置を備える二輪車検出システム、二輪車検出方法、及び前記二輪車検出装置を実現するコンピュータプログラムを提供する。
【解決手段】CPU28は、撮像画像の画素の動きベクトルの角度差を算出し、算出した角度差が閾値以下であるか否かを判定し、算出された角度差が閾値以下である画素であって、隣接する画素を連結した連結ブロックを特定する。CPU28は、特定された連結ブロックの撮像画像上の座標に基づいて、縦寸法及び横寸法を算出した上で、縦寸法が横寸法より大きいか否かを判定し、縦寸法が横寸法より大きい場合、連結ブロックに対応する移動体を二輪車として検出する。
【解決手段】CPU28は、撮像画像の画素の動きベクトルの角度差を算出し、算出した角度差が閾値以下であるか否かを判定し、算出された角度差が閾値以下である画素であって、隣接する画素を連結した連結ブロックを特定する。CPU28は、特定された連結ブロックの撮像画像上の座標に基づいて、縦寸法及び横寸法を算出した上で、縦寸法が横寸法より大きいか否かを判定し、縦寸法が横寸法より大きい場合、連結ブロックに対応する移動体を二輪車として検出する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、道路を含む領域を撮像装置で撮像して得られた撮像画像を処理して、二輪車を検出する二輪車検出装置、該二輪車検出装置を備える信号制御システム、前記二輪車検出装置を備える二輪車検出システム、二輪車検出方法、及び前記二輪車検出装置を実現するコンピュータプログラムに関する。
【背景技術】
【0002】
円滑な交通又は交通事故抑止のために、道路上の車両に関する詳細な交通情報を提供するシステムが求められており、特に二輪車の速度、位置などの検出情報を用いて交差点内事故を抑止するシステムの各種実験が行われており、その有効性も実証されつつある。
【0003】
二輪車が関連する事故としては、交差点で車両が右折する場合に、対向車に隠れた二輪車との衝突事故、交差点で車両が左折する場合に、二輪車を巻き込む事故などがあり、これらの事故は多発している。二輪車の事故を未然に防止するために、交差点に接近する二輪車を検知し、近隣の車両に二輪車の位置又は移動方向などの情報を提供するために二輪車を検出するシステムが提案されている。
【0004】
例えば、路面上から車線幅方向の1次元の光量信号を得るように路面上方に、1次元CCDカメラを設置し、路面上には光量信号に変調を与えるようにCCDカメラの視野内で間欠的なマーキングを施しておく。車両がCCDカメラの視野内を通過した場合、マーキングからの光量信号が変調され、その変調の幅が小さい車両を二輪車として検出する車両検出装置が提案されている(特許文献1参照)。
【0005】
また、予め作成した車両が存在しない道路のみの映像(背景画像)におけるエッジ情報と、車両が存在する場合の映像におけるエッジ情報との差分を算出し、車両のみのエッジ情報を抽出し、抽出したエッジ情報に対して膨張収縮処理等を行った結果に基づいて、車両範囲を検出する。検出された車両範囲の大きさにより二輪車の識別を行うシステムが提案されている(非特許文献1参照)。
【特許文献1】特開平6−242259号公報
【非特許文献1】電学論C、122巻2号、平成14年、「交通流計測における適用環境の拡大と二輪車の判別」、小沢慎治、他2名
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1の装置にあっては、二輪車を検出することができる範囲が、路面の車線幅方向のごく狭い範囲に限定されているため、交差点のような広範囲で、二輪車を検出することができないという問題があった。
【0007】
また、非特許文献1のシステムにあっては、交差点付近の事故が発生し易い時間帯の場合、交差点付近を走行する車両数が多いため、背景画像を精度良く作成することが困難である。このため、誤って車両が存在する映像を背景画像とした場合、車両が存在しない場合でも、車両が存在すると誤検出する虞があった。
【0008】
本発明は、斯かる事情に鑑みてなされたものであり、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することにより、環境変化に影響されず、かつ広範囲で従来よりも二輪車を正確に検出することができる二輪車検出装置、二輪車検出方法、及び前記二輪車検出装置を実現するコンピュータプログラムを提供することを目的とする。
【0009】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出し、前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出することにより、従来よりも二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0010】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出し、算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0011】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出し、算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0012】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出し、算出された距離に基づいて、前記高さ閾値を変更することにより、広範囲に亘って二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0013】
また、本発明の他の目的は、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて第1の動きベクトルを算出し、算出された第1の動きベクトルに対応して移動して得られた新たな撮像画像及び撮像時点が異なる他の撮像画像夫々で局所領域を用いた勾配法に基づいて、さらに第2の動きベクトルを算出し、算出された第1及び第2の動きベクトルを合成することにより、二輪車の動きの大小に拘わらず、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0014】
また、本発明の他の目的は、前記画素ブロック又は局所領域の大きさを、撮像画像の遠距離に対応する領域よりも近距離に対応する領域で大きくすることにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0015】
また、本発明の他の目的は、撮像画像の遠距離に対応する領域において、撮像時点が異なる撮像画像夫々で局所領域を用いた勾配法に基づいて動きベクトルを算出し、撮像画像の近距離に対応する領域において、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて動きベクトルを算出することにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0016】
また、本発明の他の目的は、前記画素ブロック又は局所領域を横長の矩形状にすることにより、二輪車の路面からの高さに応じて変動する動きベクトルの影響を受けずに、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0017】
また、本発明の他の目的は、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことにより、路面上の不要な情報を抑制して精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0018】
また、本発明の他の目的は、撮像画像の画素の動きベクトルを取得する手段を備えることにより、多地点又は遠隔地点における二輪車を集中的に検出することができる二輪車検出装置を提供することにある。
【0019】
また、本発明の他の目的は、二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置を備えることにより、二輪車事故を抑制することができる信号制御システムを提供することにある。
【0020】
また、本発明の他の目的は、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの撮像画像上の座標に基づいて、二輪車の位置、速度、又は移動方向を算出し、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定し、判定結果を出力することにより、二輪車事故を抑制することができる二輪車検出システムを提供することにある。
【課題を解決するための手段】
【0021】
第1発明に係る二輪車検出装置は、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置において、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段とを備えることを特徴とする。
【0022】
第2発明に係る二輪車検出装置は、第1発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出する算出手段を備え、前記検出手段は、前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出すべくなしてあることを特徴とする。
【0023】
第3発明に係る二輪車検出装置は、第1発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出する算出手段を備え、前記検出手段は、前記算出手段で算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする。
【0024】
第4発明に係る二輪車検出装置は、第1発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出する算出手段を備え、前記検出手段は、前記算出手段で算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする。
【0025】
第5発明に係る二輪車検出装置は、第4発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出する手段と、該手段で算出された距離に基づいて、前記高さ閾値を変更する手段とを備えることを特徴とする。
【0026】
第6発明に係る二輪車検出装置は、第1発明乃至第5発明のいずれかにおいて、撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、前記第1の撮像時点における撮像画像の画素の第1の動きベクトルを算出する手段と、該手段で算出された第1の動きベクトルに応じて前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、前記新たな撮像画像の画素の第2の動きベクトルを算出する手段とを備え、両手段で算出された第1及び第2の動きベクトルの合成ベクトルを撮像画像の画素の動きベクトルとすることを特徴とする。
【0027】
第7発明に係る二輪車検出装置は、第6発明において、前記画素ブロック又は局所領域の大きさは、撮像画像の遠距離に対応する領域よりも撮像画像の近距離に対応する領域で大きいことを特徴とする。
【0028】
第8発明に係る二輪車検出装置は、第1発明乃至第5発明のいずれかにおいて、撮像時点が異なる複数の撮像画像夫々で局所領域を用いた勾配法に基づいて、撮像画像の遠距離に対応する領域の画素の動きベクトルを算出する手段と、撮像時点が異なる複数の撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、撮像画像の近距離に対応する領域の画素の動きベクトルを算出する手段とを備え、両手段で算出された動きベクトルを撮像画像の画素の動きベクトルとすることを特徴とする。
【0029】
第9発明に係る二輪車検出装置は、第6発明乃至第8発明のいずれかにおいて、前記画素ブロック又は局所領域は、横長の矩形状であることを特徴とする。
【0030】
第10発明に係る二輪車検出装置は、第9発明において、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことを特徴とする。
【0031】
第11発明に係る二輪車検出装置は、第1発明乃至第5発明のいずれかにおいて、撮像画像の画素の動きベクトルを取得する手段を備えることを特徴とする。
【0032】
第12発明に係る信号制御システムは、第1発明乃至第11発明のいずれかに係る二輪車検出装置と、該二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置とを備えることを特徴とする。
【0033】
第13発明に係る二輪車検出システムは、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置と、該二輪車検出装置で検出された二輪車に関する情報を報知する報知装置とを備える二輪車検出システムにおいて、前記二輪車検出装置は、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段と、特定された連結ブロックの撮像画像上の座標に基づいて、前記検出手段で検出された二輪車の位置、速度、又は移動方向を算出する手段と、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定する手段と、該手段で判定した判定結果を前記報知装置へ出力する手段とを備え、前記報知装置は、前記判定結果を出力する手段を備えることを特徴とする。
【0034】
第14発明に係る二輪車検出方法は、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出方法において、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することを特徴とする。
【0035】
第15発明に係るコンピュータプログラムは、コンピュータに、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出させるためのコンピュータプログラムにおいて、コンピュータを、撮像画像の画素の動きベクトルの角度差を算出する手段と、該手段で算出された角度差が閾値以下であるか否かを判定する手段と、前記角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、該手段によって特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する手段として機能させることを特徴とする。
【0036】
第1発明、第14発明、及び第15発明にあっては、撮像画像の画素毎の動きベクトルの角度差が閾値以下である画素を連結した連結ブロックを特定する。これにより、位置変化がない道路上の影、路面標記などを排除して、道路を走行する移動体を特定する。なお、連結ブロックを特定する場合、動きベクトルの角度差が閾値以下であり、かつ隣接した画素を連結することもできる。検出手段は、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する。例えば、連結ブロックが特定された場合、該連結ブロックが所定の寸法より大きい場合、前記連結ブロックに対応する移動体は、二輪車以外の車両であるとし、所定の寸法より小さい場合、二輪車として検出する。
【0037】
第2発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出する。前記検出手段は、前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出する。二輪車に対応する撮像画像は、縦寸法が横寸法より大きいため、特定された連結ブロックの縦横寸法に応じて二輪車を検出する。
【0038】
第3発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出する。前記検出手段は、前記算出手段で算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出する。これにより、幅閾値を二輪車の実際の幅程度に予め定めておくことにより、撮像画像上の座標に応じて連結ブロックの大きさが変化する場合であっても、二輪車以外の車両と区別して二輪車を検出する。
【0039】
第4発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出する。前記検出手段は、前記算出手段で算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出する。これにより、高さ閾値を二輪車の実際の高さ程度に予め定めておくことにより、撮像画像上の座標に応じて連結ブロックの大きさが変化する場合であっても、二輪車以外の車両と区別して二輪車を検出する。
【0040】
第5発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出し、算出された距離に基づいて、前記高さ閾値を変更する。例えば、移動体が二輪車であるとした場合、二輪車までの距離が近いときには、二輪車の撮像画像上での高さは、二輪車先端部と二輪車後端部との距離に対応する。一方、二輪車までの距離が遠いときには、二輪車の撮像画像上での高さは、二輪車先端部と搭乗者の頭部との距離に対応する。移動体までの距離に応じて、高さ閾値を変更することにより、移動体までの距離に拘わらず広範囲で二輪車以外の車両と区別して二輪車を検出する。
【0041】
第6発明にあっては、撮像時点の異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロック(例えば、注目画素とその周辺の画素で構成される)を用いたブロックマッチング法に基づいて、画素ブロックの撮像画像での位置変化を求め、前記第1の撮像時点における撮像画像の画素の第1の動きベクトルを算出する。算出された第1の動きベクトルに応じて、前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、局所領域でのオプティカルフローが一定という拘束条件のもと、前記新たな撮像画像の画素の第2の動きベクトルを算出し、ブロックマッチング法及び勾配法により算出された第1及び第2の動きベクトルを合成して動きベクトルを算出する。
【0042】
第7発明にあっては、撮像画像の遠距離に対応する領域(すなわち、撮像画像において車両までの距離が遠い領域)では、前記画素ブロック又は局所領域の大きさを小さくし、撮像画像の近距離に対応する領域(すなわち、撮像画像において車両までの距離が近い領域)では、前記画素ブロック又は局所領域の大きさを大きくする。これにより、前記画素ブロック又は局所領域の大きさを撮像画像での二輪車の大きさに近づける。
【0043】
第8発明にあっては、撮像画像の遠距離に対応する領域では、撮像時点が異なる撮像画像夫々で局所領域を用いた勾配法に基づいて、画素の動きベクトルを算出する。これにより、画素の動きが小さく、例えば、1画素未満の微小な動きであっても動きベクトルを算出する。一方、撮像画像の近距離に対応する領域では、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、画素の動きベクトルを算出する。これにより、画素の動きがより大きい動きベクトルを算出する。
【0044】
第9発明にあっては、前記画素ブロック又は局所領域を横長の矩形状にする。これにより、連結ブロック内の動きベクトルを算出する場合に、前記画素ブロック又は局所領域の縦方向に応じて変動する二輪車部分の路面からの高さ、又は二輪車部分までの距離の影響を少なくしつつ、所要の画素ブロック又は局所領域の大きさを確保する。
【0045】
第10発明にあっては、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しい。これにより、連結ブロック内の動きベクトルを算出する場合に、二輪車部分以外の領域、例えば、路面上の不要な情報が前記画素ブロック又は局所領域内に入ることを抑制する。
【0046】
第11発明にあっては、予め算出された動きベクトルを取得する。
【0047】
第12発明にあっては、二輪車が検出された検出結果に基づいて信号灯器を制御する。例えば、二輪車が検出された場合、信号灯器の点灯表示を変更することにより、左折車両又は右折車両の進入を抑制する。
【0048】
第13発明にあっては、前記二輪車検出装置は、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する。前記二輪車検出装置は、特定された連結ブロックの撮像画像上の座標に基づいて、前記検出手段で検出された二輪車の位置、速度、又は移動方向を算出し、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定する。前記二輪車検出装置は、例えば、前記二輪車が所定の道路領域に閾値時間内に進入する場合、判定結果を前記報知装置へ出力する。該報知装置は、所定の道路領域に二輪車が閾値時間内に進入することを出力することにより、二輪車が近づいていることを報知する。
【発明の効果】
【0049】
第1発明、第14発明、及び第15発明にあっては、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することにより、環境変化に影響されず、かつ広範囲で従来よりも二輪車を正確に検出することができる。
【0050】
第2発明にあっては、特定された連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0051】
第3発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出し、算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0052】
第4発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出し、算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0053】
第5発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出し、算出された距離に基づいて、前記高さ閾値を変更することにより、広範囲に亘って二輪車を正確に検出することができる。
【0054】
第6発明にあっては、撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像の画素ブロックを用いたブロックマッチング法に基づいて第1の動きベクトルを算出し、算出された第1の動きベクトルに対応して前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、さらに第2の動きベクトルを算出し、算出した第1及び第2の動きベクトルを合成して動きベクトルとすることにより、二輪車の動きが大きい場合でも、微小な動きである場合でも、精度良く二輪車を検出することができる。
【0055】
第7発明にあっては、前記画素ブロック又は局所領域の大きさを、撮像画像の遠距離に対応する領域よりも近距離に対応する領域で大きくすることにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる。
【0056】
第8発明にあっては、撮像画像の遠距離に対応する領域において、撮像時点が異なる撮像画像夫々で局所領域を用いた勾配法に基づいて動きベクトルを算出し、撮像画像の近距離に対応する領域において、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて動きベクトルを算出することにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる。
【0057】
第9発明にあっては、前記画素ブロック又は局所領域を横長の矩形状にすることにより、二輪車の路面からの高さに応じて変動する動きベクトルの影響を受けずに、精度良く二輪車を検出することができる。
【0058】
第10発明にあっては、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことにより、路面上の不要な情報を抑制して精度良く二輪車を検出することができる。
【0059】
第11発明にあっては、撮像画像の画素の動きベクトルを取得する手段を備えることにより、多地点又は遠隔地点における二輪車を集中的に検出することができる。また、ビデオカメラの画角等の調整やビデオカメラの保守も集中的に対応できる。このため、システム全体のコスト低減を実現できる。
【0060】
第12発明にあっては、二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置を備えることにより、二輪車事故を抑制することができる。
【0061】
第13発明にあっては、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの撮像画像上の座標に基づいて、二輪車の位置、速度、又は移動方向を算出し、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定し、判定結果を出力することにより、二輪車事故を抑制することができる。
【発明を実施するための最良の形態】
【0062】
実施の形態1
以下、本発明を実施の形態を示す図面に基づいて説明する。図1は本発明に係る二輪車検出装置を含む二輪車検出システム及び信号制御システムの概要を示す模式図である。図において、二輪車検出システムは、ビデオカメラ1、二輪車検出装置2、制御装置3、警告表示板6、無線発信装置7などを備えている。また、信号制御システムは、ビデオカメラ1、二輪車検出装置2、制御装置3、信号灯器4などを備えている。
【0063】
ビデオカメラ1は、交差点近傍に設置され、道路を含む領域を撮像する。ビデオカメラ1の光軸は、例えば、交差点付近の停止線から50mの範囲にある道路(二輪車検出範囲)に存在する二輪車を撮像するように道路方向に沿って配置してある。これにより、ビデオカメラ1は、交差点の上流50mの位置から交差点に向かって走行する二輪車を撮像する。
【0064】
ビデオカメラ1には、二輪車検出装置2を接続してある。二輪車検出装置2は、ビデオカメラ1で撮像して得られた撮像画像を処理して二輪車を検出するとともに、二輪車の速度、位置、移動方向などを算出する。二輪車検出装置2には、通信線5を介して制御装置3を接続してあり、二輪車の検出結果を制御装置3へ出力する。制御装置3には、信号灯器4、4、警告表示板6、6、無線発信装置7などを接続してある。
【0065】
制御装置3は、二輪車検出装置2から出力された二輪車の検出結果に基づいて、信号灯器4の表示を制御する。例えば、交差点に二輪車が接近している場合、信号灯の表示時間を変更する。また、制御装置3は、二輪車検出装置2から出力された二輪車の検出結果に基づいて、警告表示板6に文字又は画像などにより、二輪車が交差点付近にいることを報知する。また、制御装置3は、二輪車検出装置2から出力された二輪車の検出結果に基づいて、無線発信装置7を通じて、二輪車が交差点付近にいることを交差点付近の車両に報知する。これにより、交差点で車両が右折する場合に対向車に隠れた二輪車との衝突事故、又は交差点で車両が左折する場合に二輪車を巻き込む事故などを未然に防止する。
【0066】
図2は二輪車検出装置2及び制御装置3の構成を示すブロック図である。図において、1はビデオカメラである。ビデオカメラ1は撮像して得られた撮像画像を映像信号(アナログ信号)として画像入力部21へ出力する。画像入力部21は、取得した映像信号をA/D変換部22へ出力し、A/D変換部22は、入力された映像信号をデジタル信号に変換し、CPU28の制御のもと、変換されたデジタル信号を画像データとして画像メモリ23へ記憶する。CPU28は、画像入力部21を介してビデオカメラ1から入力された撮像画像を画像データとして、ビデオカメラ1のフレームレート(撮像時点の間隔、例えば、1秒間に30フレーム)と同期して、1フレーム単位(例えば、480×640画素)で画像メモリ23に記憶する。
【0067】
補助記憶部27は、本発明のコンピュータプログラムPGを記録したCD−ROM29が挿入されることにより、CD−ROM29に記録されたコンピュータプログラムPGをRAM24に記憶する。CPU28は、RAM24に記憶されたコンピュータプログラムPGを実行する。二輪車検出装置2は、CD−ROM29に記録したコンピュータプログラムPGがRAM24に読み込まれ、読み込まれたコンピュータプログラムPGをCPU28で実行することにより、後述する動きベクトル算出処理、二輪車検出処理などを実現する。なお、CPU28は、二輪車が二輪車検出範囲に存在する間、所定の処理を繰り返すことができる。
【0068】
画像メモリ23は、画像入力部21を介して取得された撮像画像を画像データとして、フレーム毎に記憶する。
【0069】
記憶部26は、コンピュータプログラムPGをCPU28で実行することにより、得られた動きベクトルの算出結果、二輪車の検出処理結果を各フレームに対応して記憶している。
【0070】
通信部25は、二輪車検出装置2で検出した二輪車に関する検出結果(報知情報)を、通信線5を介して制御装置3へ出力する。
【0071】
制御装置3の通信部31は、二輪車検出装置2から出力された二輪車の検出結果(報知情報)を受け付け、CPU35の制御のもと、記憶部32に記憶する。また、通信部31は、信号灯器4の信号表示を制御するための制御信号を出力する。また、通信部31は、警告表示板6、及び無線発信装置7で二輪車に関する警告を出力するために必要な制御信号を出力する。
【0072】
記憶部32は、信号灯器4の信号表示を制御するために用いられる信号表示データ321、信号表示を計画する表示計画データ322などを記憶している。信号表示データ321は、月日、曜日、時間帯、交差点の交通量などに応じて、信号灯器4の青表示、黄表示、及び赤表示の各表示時間などを設定してある。
【0073】
CPU35は、補助記憶部34で読み込まれたコンピュータプログラムをRAM33にロードし、該コンピュータプログラムを実行することにより、信号灯器4の制御処理を行う。より具体的には、CPU35は、記憶部32に記憶された二輪車の検出結果に基づいて、二輪車が交差点を安全に通過できない場合には、黄表示又は赤表示になる時刻を早くする、又は青表示の時刻を延長するよう表示計画を変更して表示計画データ322を更新する。また、二輪車が交差点を安全に通過できる場合には、表示計画を変更しない。
【0074】
図3は撮像画像の一例を示す説明図である。図に示すように、二輪車検出装置2は、例えば、交差点の停止線から50mの範囲であって、片側2車線の道路を走行する車両をビデオカメラ1で撮像して得られた撮像画像に基づいて、二輪車以外の車両と区別して二輪車を検出する。
【0075】
図4は画素の動きベクトルを示す説明図である。図に示すように、撮像時点tkの撮像画像における画素Pjの座標が(xk、yk)、撮像時点tk+1の撮像画像における画素Pjの座標が(xk+1、yk+1)である場合、動きベクトルPVjは、(xk+1−xk、yk+1−yk)となる。異なる撮像時点の時間間隔は、1フレーム間隔でもよく、また、数フレーム間隔であってもよい。なお、上述の画素は、複数の画素で構成される画素ブロックであってもよい。この場合は、画素ブロック毎に動きベクトルが決定される。
【0076】
図5は本発明に係る二輪車検出装置の動きベクトルの算出例を示す説明図である。動きベクトルの算出方法は、ブロックマッチング法と勾配法とがある。本発明においては、ブロックマッチング法及び勾配法で算出した動きベクトル(第1及び第2の動きベクトル)を合成して最終的な動きベクトルを算出する。
【0077】
まず、ブロックマッチング法について説明する。ブロックマッチング法は、異なる撮像時点(例えば、時刻tと時刻t+1)の撮像画像を用いる。ブロックマッチング法は、時刻tの撮像画像において、注目画素P1を中心とする横長の矩形領域をテンプレートとして登録し、時刻t+1の撮像画像における任意の画素を中心とする前記テンプレートと同じ大きさの矩形領域との相関値を算出し、算出した相関値が最大となる画素位置P2を検出するものである。
【0078】
相関値は、数1の式で表される。
【0079】
【数1】
【0080】
ここで、矩形領域のサイズをUxW(U、Wは整数)、時刻tにおける撮像画像の座標(x、y)の画素の輝度値をI(x、y、t)、−W/2≦i≦W/2、−U/2≦j≦U/2(i、jは整数)であり、−1≦相関値≦1である。また、数2の式は矩形領域内の平均輝度値である。
【0081】
【数2】
【0082】
上述の通り、ブロックマッチング法は、横長の矩形領域(画素ブロック)の大きさを適宜変更することにより、動き量が大きい場合の動きベクトルを算出することができる。
【0083】
次に、勾配法について説明する。勾配法は、動画像の各フレームのオプティカルフロー(動きベクトルの場)を求める方法として、各画素における輝度(明るさ)の空間的勾配と時間的勾配の関係を用いるものである。すなわち、勾配法は、撮像画像の輝度分布が動きに際して不変に保たれると仮定した勾配拘束式(すなわち、輝度の空間的勾配と時間的勾配の関係式)に基づいて、オプティカルフローを求める方法である。勾配法のうち、空間的局所最適化法は、特に計算量が少なく精度良好な方法であり、以下に説明する。
【0084】
勾配法は、異なる撮像時点(例えば、時刻tと時刻t+1)の撮像画像を用いる。時刻tにおける撮像画像の座標(x、y)の画素の輝度をI(x、y、t)とする。時刻t+1(時刻tに対してδtだけ時間が経過したとする)において、座標(x、y)の画素が座標(x+δx、y+δy)に移動したとする。ここで、輝度は変化しないと仮定すると、I(x、y、t)=I(x+δx、y+δy、t+δt)の関係式が成立する。
【0085】
上式の右辺をテイラー展開すると、数3の式が得られる。
【0086】
【数3】
【0087】
ε(x、y、t)は、2次以上の高次の項であり、微小であるためこれを無視するとともに、数3の式の両辺δtで割り、δtを0に近づけると、数4の式を得る。この式は、オプティカルフローの勾配拘束式と呼ばれる。
【0088】
【数4】
【0089】
ここで、輝度勾配をIx=∂I/∂x、Iy=∂I/∂y、時間勾配をIt=∂I/∂tとし、オプティカルフローをu=δx/δt、v=δy/δtとする。
【0090】
所要の横長の局所領域(M×N)(M、Nは整数)でオプティカルフローが一定であるという拘束条件を付加すると、前記局所領域で得られるオプティカルフローは、同一の解を持つと仮定するので、誤差Eは数5の式で表される。ここで、−M/2≦i≦M/2、−N/2≦j≦N/2(i、jは整数)は前記局所領域内の座標である。
【0091】
【数5】
【0092】
最小2乗法の考え方から、∂E/∂u=0、∂E/∂v=0を算出し、前記局所領域内で重み付け平滑化すると、数6の(1)式及び(2)式を得る。ここでwi,jは重み付けマトリクスであり、前記局所領域の中央部ほど重み付けが大きくなるような分布を持つマトリクスを使用することができる。
【0093】
【数6】
【0094】
数6の式を解くことにより、オプティカルフロー(u、v)、すなわち、動きベクトルが数7の(3)式、(4)式、及び(5)式のように得られる。
【0095】
【数7】
【0096】
上述の通り、勾配法は、ブロックマッチング法のように画素ブロックを用いる必要がないため、1画素未満の微小な動きベクトルであっても算出することができる。
【0097】
図5に示すように、本発明に係る二輪車検出装置の動きベクトルの算出法は、まずブロックマッチング法により、撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロックを用いて前記第1の撮像時点における撮像画像の画素の大きな動きベクトル(第1の動きベクトル)を算出する。算出した動きベクトルに応じて、前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法により動きベクトル(第2の動きベクトル)を算出し、夫々の方法で算出した動きベクトル(第1及び第2の動きベクトル)を合成して最終的な動きベクトルを算出する。これにより、ブロックマッチング法により、大きな動きベクトルを算出するとともに、ブロックマッチング法では、算出することができない1画素未満の微小な動きベクトルも算出し、両者の動きベクトルを合成することにより、精度良く動きベクトルを求めることが可能になる。
【0098】
次に、本発明に係る二輪車検出装置2の処理手順について説明する。図6は二輪車検出装置2の動きベクトル算出の処理手順を示すフローチャートである。CPU28は、撮像時点の異なる2つの撮像画像(例えば、撮像時点tのフレームft、撮像時点t+1のフレームft+1)を画像メモリ23から取得する(S10)。
【0099】
CPU28は、取得した一方の撮像画像の画素ブロック(例えば、7×15画素)毎に、画素ブロック内画素が有する輝度値(又は階調値など)に基づいて、他方の撮像画像を走査し一致する画素ブロックを特定する(S11)。2つの撮像画像間で一致する画素ブロックを特定する場合、上述した相関値を用いることができる。
【0100】
CPU28は、2つの撮像画像で一致する画素ブロックの撮像画像における座標(位置)変化に基づいて、ブロックマッチング法による各画素の動きベクトルを算出する(S12)。なお、座標変化が無い場合は、動きベクトルはゼロである。
【0101】
CPU28は、撮像時点tにおける撮像画像の画素毎に算出した動きベクトルに応じて、各画素を動きベクトル分(大きさ及び方向)だけ移動させた撮像画像を生成する(S13)。
【0102】
CPU28は、生成した撮像画像及び撮像時点t+1における撮像画像に対して、勾配法により動きベクトルを算出し(S14)、ブロックマッチング法により算出した動きベクトルと勾配法により算出した動きベクトルを合成して最終的な動きベクトルを算出する(S15)。
【0103】
CPU28は、算出された動きベクトルの角度差を算出し(S16)、算出した角度差が閾値以下であるか否かを判定し(S17)、算出された角度差が閾値以下である場合(S17でYES)、すべての動きベクトルについて処理したか否かを判定し(S18)、すべての動きベクトルについて処理した場合(S18でYES)、角度差が閾値以下である画素であって、隣接する画素を連結した連結ブロックを特定する(S19)。
【0104】
一方、算出された角度差が閾値以下でない場合(S17でNO)、又はすべての動きベクトルについて処理していない場合(S18でNO)、CPU28は、ステップS16以降の処理を続ける。
【0105】
これにより、動きベクトルの方向が異なる画素は、ノイズとして除去する。また、連結ブロックは走行車両に対応する。なお、連結ブロックを特定する場合に、連結ブロックを構成する画素の数が、予め定めた閾値より小さい場合は、ノイズとして除去することもできる。
【0106】
CPU28は、動きベクトルの算出処理の終了要求を受け付けたか否かを判定し(S20)、処理終了でない場合(S20でNO)には、ステップS10以降の処理を続ける。処理終了である場合(S20でYES)、CPU28は、処理を終了する。
【0107】
図7は二輪車検出装置2の二輪車検出の処理手順を示すフローチャートである。CPU28は、特定された連結ブロックに基づいて、二輪車検出処理を行う(S30)。なお、二輪車検出処理については、後述する。CPU28は、二輪車として検出された連結ブロックの撮像画像上の最も下側の位置(座標)の動きベクトルの始点位置を二輪車の位置とし、その動きベクトルの大きさを二輪車の速度とし、その動きベクトルの方向を二輪車の移動方向として算出する(S31)。
【0108】
CPU28は、算出された位置、速度、移動方向に基づいて、二輪車が予め定められた危険領域(例えば、交差点付近の左折車巻き込みゾーン、右折車衝突ゾーン)への到達時間を算出する(S32)。CPU28は、算出した到達時間が所定の閾値より小さいか否かを判定する(S33)。
【0109】
到達時間が閾値より小さい場合(S33でYES)、CPU28は、報知情報(二輪車検出結果)を出力する(S34)。これにより、二輪車検出装置2は、交差点付近の危険領域に二輪車が接近していることを報知することができる。CPU28は、二輪車検出処理の終了要求を受け付けたか否かを判定し(S35)、処理終了でない場合(S35でNO)には、ステップS30以降の処理を続ける。
【0110】
到達時間が閾値より大きい場合(S33でNO)、CPU28は、ステップS35以降の処理を続ける。一方、処理終了である場合(S35でYES)、CPU28は、処理を終了する。
【0111】
次に二輪車検出処理について説明する。図8は二輪車検出処理手順を示すフローチャートである。CPU28は、特定された連結ブロックの撮像画像上の座標に基づいて、縦寸法及び横寸法を算出した上で、縦寸法が横寸法より大きいか否かを判定する(S301)。
【0112】
縦寸法が横寸法より大きい場合(S301でYES)、CPU28は、特定された連結ブロックに対応する移動体を二輪車として記録する(S302)。CPU28は、すべての連結ブロックについて処理を行ったか否かを判定する(S303)。
【0113】
すべての連結ブロックについて処理を行っていない場合(S303でNO)、CPU28は、ステップS301以降の処理を続ける。連結ブロックの縦寸法が横寸法より小さい場合(S301でNO)、CPU28は、ステップS303以降の処理を続ける。すべての連結ブロックについて処理を行った場合(S303でYES)、CPU28は、処理を終了する。これにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0114】
上述の処理は、撮像画像1フレームに対する処理であるが、この処理を各フレームに対して継続して処理を行うこともできる。また、複数のフレームの都度、間引きして処理を行うようにしてもよい。
【0115】
連結ブロックの動きベクトルの始点位置から、連結ブロックに対応する二輪車の位置(二輪車までの距離)は、例えば、数8の式(6)、(7)で表される式に基づいて行うことができる。
【0116】
【数8】
【0117】
図9は実空間座標及び撮像面座標の関係を示す説明図である。実空間での座標系を(X、Y、Z)、撮像画像上での座標系を(x、y)とする。実空間では、垂直方向をZ、道路の延びる方向をY、道路を横断する方向をXにとる。撮像画像面上でのx軸方向を実空間でのX方向に平行とし、撮像画像面上でのy軸方向を実空間でのY方向とし、ビデオカメラ俯角(ビデオカメラの光軸とY軸方向とがなす角度)をαとなるように設置する。また、ビデオカメラレンズの焦点距離をF、ビデオカメラの設置高さをH、撮像画像面のy軸方向の大きさ(寸法)をQy、撮像面のy軸方向の画素数をNyとし、撮像画像面のx軸方向の大きさ(寸法)をQx、撮像面のx軸方向の画素数をNxとする。なお、二輪車の高さは0(すなわち、路面上の位置)とする。
【0118】
図10は連結ブロックの例を示す説明図である。図に示すように、撮像画像を所定の画素で分割し、各画素の動きベクトルを算出し、算出した動きベクトルの角度差が閾値以下である画素であって、隣接する画素のみを連結することにより、連結ブロックを特定する。動きベクトルの角度差が閾値以下の画素であっても、離隔している画素はノイズとして除去する。また、連結された画素の数が所定の閾値以下の場合も、ノイズとして除去することにより、連結ブロックにより走行車両を精度良く特定することができる。さらに特定された連結ブロックの大きさ(縦横寸法)に基づいて、二輪車以外の車両から二輪車を区別して、二輪車を検出する。
【0119】
図11は連結ブロックにより特定された二輪車の例を示す説明図である。上述の通り、ビデオカメラ1は、片側2車線の道路を含む領域を撮像するように配置してある。ある撮像時点における撮像画像の二輪車は、二輪車以外の車両を除外して連結ブロックにより特定される。
【0120】
図12は危険領域の例を示す説明図である。図に示すように、危険領域は、例えば、交差点の上流側の道路であって、路肩沿いの車線の交差点近傍領域である左折車巻き込みゾーン、及び交差点中央部の対向車線と重なる領域である右折車衝突ゾーンにより構成される。ビデオカメラ1を設置した状態で撮像される撮像領域内に、この危険領域の位置を予め設定しておくことができる。なお、交差点付近に複数のビデオカメラを設置して、危険領域を複数設定することもできる。
【0121】
図13は二輪車検出装置2で算出される算出情報を示す説明図である。図13(a)に示すように、1フレームの撮像画像は、例えば、480×640の画素P1、P2、…Pnに分割される。図13(b)に示すように、画素毎に算出された動きベクトルPV1、PV2、…PVnが記録される。動きが検出されなかった画素の動きベクトルはゼロである。図13(c)に示すように、1フレームの撮像画像毎に、検出された二輪車の数(連結ブロック数)、二輪車毎の速度v1、…、二輪車毎の位置Y1、…、二輪車毎の移動方向θ1、…などを記録する。なお、移動方向θ1は、動きベクトルの向きが垂直方向(撮像画像の上下方向)となす角度などにより表すことができる。
【0122】
実施の形態2
上述の実施の形態1においては、連結ブロックの縦寸法と横寸法との差に基づいて、連結ブロックから二輪車を検出する場合について説明したが、二輪車の検出は、これに限定されるものではない。
【0123】
図14は実施の形態2に係る二輪車検出処理手順を示すフローチャートである。CPU28は、特定された連結ブロックの撮像画像上での座標を特定する(S310)。この場合、特定する座標としては、例えば、撮像画像上で連結ブロックの下側両端部(横寸法)を用いることができる。
【0124】
CPU28は、特定した座標に基づいて、連結ブロックに対応する移動体の幅を算出する(S311)。なお、連結ブロックの座標から移動体の幅は、数8の式(6)、(8)、(9)により算出することができる。
【0125】
CPU28は、算出した幅が予め定められた二輪車の幅を示す閾値より小さいか否かを判定する(S312)。幅が閾値より小さい場合(S312でYES)、CPU28は、連結ブロックに対応する移動体を二輪車として記録する(S313)。CPU28は、すべての連結ブロックについて処理を行ったか否かを判定する(S314)。
【0126】
すべての連結ブロックについて処理を行っていない場合(S314でNO)、CPU28は、ステップS310以降の処理を続ける。算出した幅が閾値より大きい場合(S312でNO)、CPU28は、ステップS314以降の処理を続ける。すべての連結ブロックについて処理を行った場合(S314でYES)、CPU28は、処理を終了する。これにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0127】
実施の形態3
上述の実施の形態2においては、連結ブロックの座標(横寸法)に基づいて、対応する移動体の実際上の幅を算出して二輪車を検出する場合について説明したが、二輪車の検出は、これに限定されるものではない。
【0128】
図15は実施の形態3に係る二輪車検出処理手順を示すフローチャートである。CPU28は、特定された連結ブロックの撮像画像上での座標を特定する(S320)。この場合、特定する座標としては、例えば、撮像画像上で連結ブロックの上下中央部(縦寸法)を用いることができる。
【0129】
CPU28は、特定した座標に基づいて、連結ブロックに対応する移動体の高さを算出する(S321)。なお、連結ブロックの座標から移動体の高さは、数8の式(6)、(7)により算出することができる。
【0130】
CPU28は、算出した高さが予め定められた二輪車の高さを示す閾値より小さいか否かを判定する(S322)。高さが閾値より小さい場合(S322でYES)、CPU28は、連結ブロックに対応する移動体を二輪車として記録する(S323)。CPU28は、すべての連結ブロックについて処理を行ったか否かを判定する(S324)。
【0131】
すべての連結ブロックについて処理を行っていない場合(S324でNO)、CPU28は、ステップS320以降の処理を続ける。算出した高さが閾値より大きい場合(S322でNO)、CPU28は、ステップS324以降の処理を続ける。すべての連結ブロックについて処理を行った場合(S324でYES)、CPU28は、処理を終了する。これにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0132】
上述の実施の形態3において、二輪車を検出するための高さ閾値を変化させて、より精度良く二輪車を検出することができる。図16は二輪車の高さ閾値を変化させる場合の閾値例を示す説明図である。図に示すように、二輪車とビデオカメラとの距離に応じて、撮像画像上での二輪車存在範囲(二輪車画像)は異なる。例えば、二輪車の位置がビデオカメラに近い地点Aの場合、二輪車の後端部が視野内にあるため、撮像画像上で二輪車の存在範囲は、二輪車の先端部から後端部までとなる。
【0133】
一方、二輪車の位置がビデオカメラから遠い地点Bの場合、二輪車の後端部が搭乗者によって隠されるため、撮像画像上での二輪車の存在範囲は、撮像画像上で二輪車の存在範囲は、二輪車の先端部から搭乗者頭頂部までとなる。
【0134】
ここで、ビデオカメラの設置高さをH、二輪車の長さをL、搭乗者の頭頂部高さをh1、二輪車後端部の高さをh2(いずれも定数)とし、搭乗者が二輪車の中央部に存在するとした場合、二輪車先端部の位置Yから、撮像画像上での二輪車の存在範囲を算出することができる。
【0135】
地点Aと地点Bとの境界となる位置、すなわち、二輪車の後端部と搭乗者の頭頂部とが重なる場合の二輪車の先端部の位置Y0は、数9の式(10)で算出することができる。
【0136】
【数9】
【0137】
従って、二輪車の先端部の位置Yが、Y≦Y0の場合、路面高さの位置において、Y〜Y1の範囲に相当する撮像画像上の範囲が二輪車の見かけ上の高さになり、このY1−Yの値を二輪車検出の高さ閾値として用いることができる。ここで、Y1は、数9の式(11)で表される。
【0138】
同様に、二輪車の先端部の位置Yが、Y>Y0の場合、路面高さの位置において、Y〜Y2の範囲に相当する撮像画像上の範囲が二輪車の見かけ上の高さになり、このY2−Yの値を二輪車検出の高さ閾値として用いることができる。ここで、Y2は、数9の式(12)で表される。これにより、二輪車までの距離に拘わらず、広範囲に亘って二輪車を正確に検出することができる。
【0139】
実施の形態4
上述の実施の形態1においては、動きベクトルを算出する場合に、ブロックマッチング法及び勾配法で算出した動きベクトルを合成して最終的な動きベクトルを算出するものであったが、これに限定されるものではなく、例えば、二輪車までの距離に応じてブロックマッチング法及び勾配法を使い分けることもできる。
【0140】
図17は撮像画像を分割して動きベクトル算出法を使い分ける場合の例を示す説明図である。図に示すように、二輪車までの距離が遠い場合、すなわち、撮像画像上の上側の領域においては、勾配法により動きベクトルを算出する。一方、二輪車までの距離が近い場合、すなわち、撮像画像上の下側の領域においては、ブロックマッチング法により動きベクトルを算出する。
【0141】
二輪車が遠距離にある場合、動きベクトルの大きさは比較的小さく、1画素未満の微小な動きベクトルも算出することができる勾配法が優れている。一方二輪車が近距離にある場合、動きベクトルは大きく変化するため、効率よく大きな動きベクトルを算出できるブロックマッチング法が優れている。なお、ブロックマッチング法及び勾配法での動きベクトル算出手順は、実施の形態1と同様であるので、説明は省略する。
【0142】
実施の形態5
上述の実施の形態では、動きベクトルを算出するための画素ブロック(ブロックマッチング法の場合)、又は局所領域(勾配法の場合)は、横長の所定の大きさの矩形状であったが、これに限定されるものではなく、例えば、車両までの距離に応じて大きさを変えることもできる。
【0143】
図18は画素ブロック又は局所領域の例を示す説明図である。図に示すように、二輪車までの距離が遠い場合、すなわち、撮像画像上の上側の領域においては、横長の画素ブロック又は局所領域を小さくし(例えば、4×8)する。一方、二輪車までの距離が近い場合、すなわち、撮像画像上の下側の領域においては、横長の画素ブロック又は局所領域を大きく(例えば、8×16)する。
【0144】
二輪車までの距離に応じて、撮像画像上での二輪車の大きさも異なり、前記画素ブロック又は局所領域の大きさを、二輪車以外の車両の大きさの1/2〜1/10程度、又は二輪車の幅の1/1〜1/2程度の大きさになるようにすることで、二輪車以外の路面上の不要な情報を除外するとともに、動きベクトル算出のための処理労力を低減しつつ、精度良く動きベクトルを算出することができる。
【0145】
実施の形態6
上述の実施の形態においては、ビデオカメラで撮像して得られた撮像画像から各画素ブロックの動きベクトルを算出する構成であったが、これに限定されるものではなく、ビデオカメラで撮像してMPEG、MPEG2、MPEG4、H.264等の符号化映像の形式に変換された映像データに含まれる各画素ブロックの動きベクトル情報を用いてもよい。例えば、複数の交差点近傍に設置されたビデオカメラ1、1、…で撮像して得られた撮像画像に基づいて、予め動きベクトルを算出しておき、算出した動きベクトルを通信回線に接続された二輪車検出装置で取得して、多地点、遠隔地点などの二輪車の検出、検出した二輪車の速度、位置、移動方向を集中的に算出し、各交差点付近を走行する車両に二輪車がいることを報知することもできる。
【0146】
図19は本発明の実施の形態6に係る二輪車検出装置を含む二輪車検出システムの概要を示す模式図である。図において、1は道路を含む領域を撮像するビデオカメラである。ビデオカメラ1は、複数の交差点近傍に設置され、ビデオカメラ1の光軸は、例えば、交差点付近の停止線から50mの範囲にある道路に存在する二輪車を撮像するように道路方向に沿って配置してある。これにより、ビデオカメラ1は、交差点の上流50mの位置から交差点に向かって走行する二輪車を撮像する。
【0147】
ビデオカメラ1には、制御装置8を接続してあり、制御装置8には信号灯器4、警告表示板6、無線発信装置7などを接続してある。制御装置8は、ビデオカメラ1で撮像して得られた画像データを所定の方式(例えば、MPEG、MPEG2、MPEG4、H.264など)に基づいて符号化処理するとともに、画像データに基づいて算出した動きベクトルを符号化処理し、符号化処理後のデータ及び動きベクトルを、通信回線9を介して接続された二輪車検出装置2へ送信する。
【0148】
ここで、MPEG、MPEG2、MPEG4、H.264等の符号化映像とは、画像の中の動く部分だけを検出し保存するなどして映像データを圧縮しているものであって、この形式に変換する際に、画素の動きベクトルの算出が行われる。
【0149】
制御装置8は、後述するように、二輪車検出装置2から通信回線9を介して出力された二輪車の検出結果(報知情報)に基づいて、信号灯器4の制御、警告表示板6への警告表示、無線発信装置7への警告情報の出力を行う。これにより、多地点又は遠隔地点にある交差点で車両が右折する場合に対向車に隠れた二輪車との衝突事故、又は交差点で車両が左折する場合に二輪車を巻き込む事故などを未然に防止する。
【0150】
二輪車検出装置2は、画像入力部21に代えて、通信部25で制御装置8、8、…から送信された符号化処理後のデータを取得し、取得したデータ元の画像データを復元するとともに、動きベクトルなどを抽出する。二輪車検出装置2は、抽出した動きベクトルに基づいて、連結ブロックを特定し、二輪車を検出するとともに、二輪車の速度、位置、移動方向を算出し、危険領域に到達する時間が所定の閾値より短い場合、報知情報を制御装置8、8、…へ通信回線9を介して出力する。
【0151】
図20は制御装置8の構成を示すブロック図である。ビデオカメラ1は撮像して得られた撮像画像を映像信号(アナログ信号)として画像入力部81へ出力する。画像入力部81は、取得した映像信号をA/D変換部82へ出力し、A/D変換部82は、入力された映像信号をデジタル信号に変換し、CPU88の制御のもと、変換されたデジタル信号を画像データとして画像メモリ83へ記憶する。CPU88は、画像入力部81を介してビデオカメラ1から入力された撮像画像を画像データとして、ビデオカメラ1のフレームレート(撮像時点の間隔、例えば、1秒間に30フレーム)と同期して、1フレーム単位(例えば、480×640画素)で画像メモリ83に記憶する。
【0152】
CPU88は、画像メモリ83に記憶した画像データを所定の方式(例えば、MPEG、MPEG2、MPEG4、H.264など)に基づいて符号化処理し、符号化処理後のデータを通信部85から二輪車検出装置2へ送信する。CPU88は、符号化処理を行う際に画像データに基づいて動きベクトルを算出し、算出した動きベクトルを符号化処理する。
【0153】
補助記憶部87は、コンピュータプログラムPGを読み込み、CPU88は、読み込まれたコンピュータプログラムをRAM84にロードし、ロードされたコンピュータプログラムPGを実行することにより、動きベクトル算出処理、信号灯器4の制御処理、報知情報の出力処理などを行う。なお、動きベクトル算出処理、信号灯器4の制御処理、報知情報の出力処理は、実施の形態1と同様であるので、説明は省略する。
【0154】
図21は実施の形態6における二輪車検出装置2の処理手順を示すフローチャートである。CPU28は、制御装置8から送信された符号化画像データを受信する(S40)。CPU28は、受信した符号化画像データから動きベクトルを抽出する(S41)。
【0155】
CPU28は、算出された動きベクトルの方向が略一致する画素であって、隣接する画素を連結した連結ブロックを特定する(S42)。CPU28は、特定された連結ブロックの大きさに基づいて、二輪車を検出する(S43)。
【0156】
CPU28は、二輪車として検出された連結ブロックの撮像画像上の最も下側の位置(座標)の動きベクトルの始点位置を二輪車の位置とし、その動きベクトルの大きさを二輪車の速度とし、その動きベクトルの方向を二輪車の移動方向として算出する(S44)。
【0157】
CPU28は、算出された位置、速度、移動方向に基づいて、二輪車が予め定められた危険領域(例えば、交差点付近の左折車巻き込みゾーン、右折車衝突ゾーン)への到達時間を算出する(S45)。CPU28は、算出した到達時間が所定の閾値より小さいか否かを判定する(S46)。
【0158】
到達時間が閾値より小さい場合(S46でYES)、CPU28は、報知情報(二輪車検出結果)を出力する(S47)。これにより、二輪車検出装置2は、交差点付近の危険領域に二輪車が接近していることを報知することができる。CPU28は、二輪車検出処理の終了要求を受け付けたか否かを判定し(S48)、処理終了でない場合(S48でNO)には、ステップS40以降の処理を続ける。
【0159】
到達時間が閾値より大きい場合(S46でNO)、CPU28は、ステップS48以降の処理を続ける。一方、処理終了である場合(S48でYES)、CPU28は、処理を終了する。
【0160】
なお、上述の処理は、撮像画像1フレームに対する処理であるが、この処理を各フレームに対して継続して処理を行うこともできる。また、複数のフレームの都度、間引きして処理を行うようにしてもよい。これにより、二輪車の検出を広範囲、かつ多地点・遠隔地点において安定的に実現することができる。
【0161】
上述の実施の形態においては、警告表示板により文字又は画像で警告するとともに、無線発信装置で警告する場合について説明したが、警告、すなわち、報知情報の出力は、これに限定されるものではなく、近赤外線を用いた光ビーコンなどを通じて出力してもよい。
【0162】
上述の実施の形態1〜5においては、ビデオカメラ1と二輪車検出装置2とは、別個の装置で構成されていたが、ビデオカメラ1と二輪車検出装置2とを統合して、ひとつの装置として構成してもよい。
【0163】
上述の実施の形態においては、撮像画像のすべての画素に対して動きベクトルを算出する構成であったが、複数の画素で構成されるブロック毎に動きベクトルを算出する構成であってもよい。
【0164】
上述の実施の形態においては、ブロックマッチング法で動きベクトルを算出する場合に、数1の式で表される相関値を用いる構成であったが、これに限定されるものではなく、画素ブロック内画素の差分階調値の絶対値の和、画素の平均階調値の差の絶対値、画素の階調値の標準偏差の差の絶対値など、いずれの方法を用いてもよい。
【0165】
上述の実施の形態において、異なる撮像時点の撮像画像を取得する場合、撮像時点の時間間隔は、道路の交通状況に応じて、適宜設定することができる。二輪車が比較的高速で走行する道路の場合は、時間間隔を短くし、低速走行車両が多い道路では、時間間隔を長くすることができる。
【0166】
二輪車を検出する場合、二輪車の移動方向がビデオカメラから離れていく場合であっても、連結ブロックの最下部の動きベクトルの情報から、二輪車の位置、速度、移動方向を算出することもでき、そのような場合に本発明を適用することができる。
【図面の簡単な説明】
【0167】
【図1】本発明に係る二輪車検出装置を含む二輪車検出システム及び信号制御システムの概要を示す模式図である。
【図2】二輪車検出装置及び制御装置の構成を示すブロック図である。
【図3】撮像画像の一例を示す説明図である。
【図4】画素の動きベクトルを示す説明図である。
【図5】本発明に係る二輪車検出装置の動きベクトルの算出例を示す説明図である。
【図6】二輪車検出装置の動きベクトル算出の処理手順を示すフローチャートである。
【図7】二輪車検出装置の二輪車検出の処理手順を示すフローチャートである。
【図8】二輪車検出処理手順を示すフローチャートである。
【図9】実空間座標及び撮像面座標の関係を示す説明図である。
【図10】連結ブロックの例を示す説明図である。
【図11】連結ブロックにより特定された二輪車の例を示す説明図である。
【図12】危険領域の例を示す説明図である。
【図13】二輪車検出装置で算出される算出情報を示す説明図である。
【図14】実施の形態2に係る二輪車検出処理手順を示すフローチャートである。
【図15】実施の形態3に係る二輪車検出処理手順を示すフローチャートである。
【図16】二輪車の高さ閾値を変化させる場合の閾値例を示す説明図である。
【図17】撮像画像を分割して動きベクトル算出法を使い分ける場合の例を示す説明図である。
【図18】画素ブロック又は局所領域の例を示す説明図である。
【図19】本発明の実施の形態6に係る二輪車検出装置を含む二輪車検出システムの概要を示す模式図である。
【図20】制御装置の構成を示すブロック図である。
【図21】実施の形態6における二輪車検出装置の処理手順を示すフローチャートである。
【符号の説明】
【0168】
1 ビデオカメラ
2 二輪車検出装置
3、8 制御装置
4 信号灯器
5 通信線
6 警告表示板
7 無線発信装置
9 通信回線
21、81 画像入力部
22、82 A/D変換部
23、83 画像メモリ
24、84 RAM
25、85 通信部
26、86 記憶部
27、87 補助記憶部
28、88 CPU
29 CD−ROM
31 通信部
32 記憶部
33 RAM
34 補助記憶部
35 CPU
【技術分野】
【0001】
本発明は、道路を含む領域を撮像装置で撮像して得られた撮像画像を処理して、二輪車を検出する二輪車検出装置、該二輪車検出装置を備える信号制御システム、前記二輪車検出装置を備える二輪車検出システム、二輪車検出方法、及び前記二輪車検出装置を実現するコンピュータプログラムに関する。
【背景技術】
【0002】
円滑な交通又は交通事故抑止のために、道路上の車両に関する詳細な交通情報を提供するシステムが求められており、特に二輪車の速度、位置などの検出情報を用いて交差点内事故を抑止するシステムの各種実験が行われており、その有効性も実証されつつある。
【0003】
二輪車が関連する事故としては、交差点で車両が右折する場合に、対向車に隠れた二輪車との衝突事故、交差点で車両が左折する場合に、二輪車を巻き込む事故などがあり、これらの事故は多発している。二輪車の事故を未然に防止するために、交差点に接近する二輪車を検知し、近隣の車両に二輪車の位置又は移動方向などの情報を提供するために二輪車を検出するシステムが提案されている。
【0004】
例えば、路面上から車線幅方向の1次元の光量信号を得るように路面上方に、1次元CCDカメラを設置し、路面上には光量信号に変調を与えるようにCCDカメラの視野内で間欠的なマーキングを施しておく。車両がCCDカメラの視野内を通過した場合、マーキングからの光量信号が変調され、その変調の幅が小さい車両を二輪車として検出する車両検出装置が提案されている(特許文献1参照)。
【0005】
また、予め作成した車両が存在しない道路のみの映像(背景画像)におけるエッジ情報と、車両が存在する場合の映像におけるエッジ情報との差分を算出し、車両のみのエッジ情報を抽出し、抽出したエッジ情報に対して膨張収縮処理等を行った結果に基づいて、車両範囲を検出する。検出された車両範囲の大きさにより二輪車の識別を行うシステムが提案されている(非特許文献1参照)。
【特許文献1】特開平6−242259号公報
【非特許文献1】電学論C、122巻2号、平成14年、「交通流計測における適用環境の拡大と二輪車の判別」、小沢慎治、他2名
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1の装置にあっては、二輪車を検出することができる範囲が、路面の車線幅方向のごく狭い範囲に限定されているため、交差点のような広範囲で、二輪車を検出することができないという問題があった。
【0007】
また、非特許文献1のシステムにあっては、交差点付近の事故が発生し易い時間帯の場合、交差点付近を走行する車両数が多いため、背景画像を精度良く作成することが困難である。このため、誤って車両が存在する映像を背景画像とした場合、車両が存在しない場合でも、車両が存在すると誤検出する虞があった。
【0008】
本発明は、斯かる事情に鑑みてなされたものであり、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することにより、環境変化に影響されず、かつ広範囲で従来よりも二輪車を正確に検出することができる二輪車検出装置、二輪車検出方法、及び前記二輪車検出装置を実現するコンピュータプログラムを提供することを目的とする。
【0009】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出し、前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出することにより、従来よりも二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0010】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出し、算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0011】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出し、算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0012】
また、本発明の他の目的は、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出し、算出された距離に基づいて、前記高さ閾値を変更することにより、広範囲に亘って二輪車を正確に検出することができる二輪車検出装置を提供することにある。
【0013】
また、本発明の他の目的は、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて第1の動きベクトルを算出し、算出された第1の動きベクトルに対応して移動して得られた新たな撮像画像及び撮像時点が異なる他の撮像画像夫々で局所領域を用いた勾配法に基づいて、さらに第2の動きベクトルを算出し、算出された第1及び第2の動きベクトルを合成することにより、二輪車の動きの大小に拘わらず、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0014】
また、本発明の他の目的は、前記画素ブロック又は局所領域の大きさを、撮像画像の遠距離に対応する領域よりも近距離に対応する領域で大きくすることにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0015】
また、本発明の他の目的は、撮像画像の遠距離に対応する領域において、撮像時点が異なる撮像画像夫々で局所領域を用いた勾配法に基づいて動きベクトルを算出し、撮像画像の近距離に対応する領域において、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて動きベクトルを算出することにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0016】
また、本発明の他の目的は、前記画素ブロック又は局所領域を横長の矩形状にすることにより、二輪車の路面からの高さに応じて変動する動きベクトルの影響を受けずに、精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0017】
また、本発明の他の目的は、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことにより、路面上の不要な情報を抑制して精度良く二輪車を検出することができる二輪車検出装置を提供することにある。
【0018】
また、本発明の他の目的は、撮像画像の画素の動きベクトルを取得する手段を備えることにより、多地点又は遠隔地点における二輪車を集中的に検出することができる二輪車検出装置を提供することにある。
【0019】
また、本発明の他の目的は、二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置を備えることにより、二輪車事故を抑制することができる信号制御システムを提供することにある。
【0020】
また、本発明の他の目的は、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの撮像画像上の座標に基づいて、二輪車の位置、速度、又は移動方向を算出し、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定し、判定結果を出力することにより、二輪車事故を抑制することができる二輪車検出システムを提供することにある。
【課題を解決するための手段】
【0021】
第1発明に係る二輪車検出装置は、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置において、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段とを備えることを特徴とする。
【0022】
第2発明に係る二輪車検出装置は、第1発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出する算出手段を備え、前記検出手段は、前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出すべくなしてあることを特徴とする。
【0023】
第3発明に係る二輪車検出装置は、第1発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出する算出手段を備え、前記検出手段は、前記算出手段で算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする。
【0024】
第4発明に係る二輪車検出装置は、第1発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出する算出手段を備え、前記検出手段は、前記算出手段で算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする。
【0025】
第5発明に係る二輪車検出装置は、第4発明において、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出する手段と、該手段で算出された距離に基づいて、前記高さ閾値を変更する手段とを備えることを特徴とする。
【0026】
第6発明に係る二輪車検出装置は、第1発明乃至第5発明のいずれかにおいて、撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、前記第1の撮像時点における撮像画像の画素の第1の動きベクトルを算出する手段と、該手段で算出された第1の動きベクトルに応じて前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、前記新たな撮像画像の画素の第2の動きベクトルを算出する手段とを備え、両手段で算出された第1及び第2の動きベクトルの合成ベクトルを撮像画像の画素の動きベクトルとすることを特徴とする。
【0027】
第7発明に係る二輪車検出装置は、第6発明において、前記画素ブロック又は局所領域の大きさは、撮像画像の遠距離に対応する領域よりも撮像画像の近距離に対応する領域で大きいことを特徴とする。
【0028】
第8発明に係る二輪車検出装置は、第1発明乃至第5発明のいずれかにおいて、撮像時点が異なる複数の撮像画像夫々で局所領域を用いた勾配法に基づいて、撮像画像の遠距離に対応する領域の画素の動きベクトルを算出する手段と、撮像時点が異なる複数の撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、撮像画像の近距離に対応する領域の画素の動きベクトルを算出する手段とを備え、両手段で算出された動きベクトルを撮像画像の画素の動きベクトルとすることを特徴とする。
【0029】
第9発明に係る二輪車検出装置は、第6発明乃至第8発明のいずれかにおいて、前記画素ブロック又は局所領域は、横長の矩形状であることを特徴とする。
【0030】
第10発明に係る二輪車検出装置は、第9発明において、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことを特徴とする。
【0031】
第11発明に係る二輪車検出装置は、第1発明乃至第5発明のいずれかにおいて、撮像画像の画素の動きベクトルを取得する手段を備えることを特徴とする。
【0032】
第12発明に係る信号制御システムは、第1発明乃至第11発明のいずれかに係る二輪車検出装置と、該二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置とを備えることを特徴とする。
【0033】
第13発明に係る二輪車検出システムは、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置と、該二輪車検出装置で検出された二輪車に関する情報を報知する報知装置とを備える二輪車検出システムにおいて、前記二輪車検出装置は、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段と、特定された連結ブロックの撮像画像上の座標に基づいて、前記検出手段で検出された二輪車の位置、速度、又は移動方向を算出する手段と、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定する手段と、該手段で判定した判定結果を前記報知装置へ出力する手段とを備え、前記報知装置は、前記判定結果を出力する手段を備えることを特徴とする。
【0034】
第14発明に係る二輪車検出方法は、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出方法において、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することを特徴とする。
【0035】
第15発明に係るコンピュータプログラムは、コンピュータに、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出させるためのコンピュータプログラムにおいて、コンピュータを、撮像画像の画素の動きベクトルの角度差を算出する手段と、該手段で算出された角度差が閾値以下であるか否かを判定する手段と、前記角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、該手段によって特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する手段として機能させることを特徴とする。
【0036】
第1発明、第14発明、及び第15発明にあっては、撮像画像の画素毎の動きベクトルの角度差が閾値以下である画素を連結した連結ブロックを特定する。これにより、位置変化がない道路上の影、路面標記などを排除して、道路を走行する移動体を特定する。なお、連結ブロックを特定する場合、動きベクトルの角度差が閾値以下であり、かつ隣接した画素を連結することもできる。検出手段は、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する。例えば、連結ブロックが特定された場合、該連結ブロックが所定の寸法より大きい場合、前記連結ブロックに対応する移動体は、二輪車以外の車両であるとし、所定の寸法より小さい場合、二輪車として検出する。
【0037】
第2発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出する。前記検出手段は、前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出する。二輪車に対応する撮像画像は、縦寸法が横寸法より大きいため、特定された連結ブロックの縦横寸法に応じて二輪車を検出する。
【0038】
第3発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出する。前記検出手段は、前記算出手段で算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出する。これにより、幅閾値を二輪車の実際の幅程度に予め定めておくことにより、撮像画像上の座標に応じて連結ブロックの大きさが変化する場合であっても、二輪車以外の車両と区別して二輪車を検出する。
【0039】
第4発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出する。前記検出手段は、前記算出手段で算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出する。これにより、高さ閾値を二輪車の実際の高さ程度に予め定めておくことにより、撮像画像上の座標に応じて連結ブロックの大きさが変化する場合であっても、二輪車以外の車両と区別して二輪車を検出する。
【0040】
第5発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出し、算出された距離に基づいて、前記高さ閾値を変更する。例えば、移動体が二輪車であるとした場合、二輪車までの距離が近いときには、二輪車の撮像画像上での高さは、二輪車先端部と二輪車後端部との距離に対応する。一方、二輪車までの距離が遠いときには、二輪車の撮像画像上での高さは、二輪車先端部と搭乗者の頭部との距離に対応する。移動体までの距離に応じて、高さ閾値を変更することにより、移動体までの距離に拘わらず広範囲で二輪車以外の車両と区別して二輪車を検出する。
【0041】
第6発明にあっては、撮像時点の異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロック(例えば、注目画素とその周辺の画素で構成される)を用いたブロックマッチング法に基づいて、画素ブロックの撮像画像での位置変化を求め、前記第1の撮像時点における撮像画像の画素の第1の動きベクトルを算出する。算出された第1の動きベクトルに応じて、前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、局所領域でのオプティカルフローが一定という拘束条件のもと、前記新たな撮像画像の画素の第2の動きベクトルを算出し、ブロックマッチング法及び勾配法により算出された第1及び第2の動きベクトルを合成して動きベクトルを算出する。
【0042】
第7発明にあっては、撮像画像の遠距離に対応する領域(すなわち、撮像画像において車両までの距離が遠い領域)では、前記画素ブロック又は局所領域の大きさを小さくし、撮像画像の近距離に対応する領域(すなわち、撮像画像において車両までの距離が近い領域)では、前記画素ブロック又は局所領域の大きさを大きくする。これにより、前記画素ブロック又は局所領域の大きさを撮像画像での二輪車の大きさに近づける。
【0043】
第8発明にあっては、撮像画像の遠距離に対応する領域では、撮像時点が異なる撮像画像夫々で局所領域を用いた勾配法に基づいて、画素の動きベクトルを算出する。これにより、画素の動きが小さく、例えば、1画素未満の微小な動きであっても動きベクトルを算出する。一方、撮像画像の近距離に対応する領域では、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、画素の動きベクトルを算出する。これにより、画素の動きがより大きい動きベクトルを算出する。
【0044】
第9発明にあっては、前記画素ブロック又は局所領域を横長の矩形状にする。これにより、連結ブロック内の動きベクトルを算出する場合に、前記画素ブロック又は局所領域の縦方向に応じて変動する二輪車部分の路面からの高さ、又は二輪車部分までの距離の影響を少なくしつつ、所要の画素ブロック又は局所領域の大きさを確保する。
【0045】
第10発明にあっては、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しい。これにより、連結ブロック内の動きベクトルを算出する場合に、二輪車部分以外の領域、例えば、路面上の不要な情報が前記画素ブロック又は局所領域内に入ることを抑制する。
【0046】
第11発明にあっては、予め算出された動きベクトルを取得する。
【0047】
第12発明にあっては、二輪車が検出された検出結果に基づいて信号灯器を制御する。例えば、二輪車が検出された場合、信号灯器の点灯表示を変更することにより、左折車両又は右折車両の進入を抑制する。
【0048】
第13発明にあっては、前記二輪車検出装置は、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する。前記二輪車検出装置は、特定された連結ブロックの撮像画像上の座標に基づいて、前記検出手段で検出された二輪車の位置、速度、又は移動方向を算出し、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定する。前記二輪車検出装置は、例えば、前記二輪車が所定の道路領域に閾値時間内に進入する場合、判定結果を前記報知装置へ出力する。該報知装置は、所定の道路領域に二輪車が閾値時間内に進入することを出力することにより、二輪車が近づいていることを報知する。
【発明の効果】
【0049】
第1発明、第14発明、及び第15発明にあっては、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することにより、環境変化に影響されず、かつ広範囲で従来よりも二輪車を正確に検出することができる。
【0050】
第2発明にあっては、特定された連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0051】
第3発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出し、算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0052】
第4発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出し、算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出することにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0053】
第5発明にあっては、特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出し、算出された距離に基づいて、前記高さ閾値を変更することにより、広範囲に亘って二輪車を正確に検出することができる。
【0054】
第6発明にあっては、撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像の画素ブロックを用いたブロックマッチング法に基づいて第1の動きベクトルを算出し、算出された第1の動きベクトルに対応して前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、さらに第2の動きベクトルを算出し、算出した第1及び第2の動きベクトルを合成して動きベクトルとすることにより、二輪車の動きが大きい場合でも、微小な動きである場合でも、精度良く二輪車を検出することができる。
【0055】
第7発明にあっては、前記画素ブロック又は局所領域の大きさを、撮像画像の遠距離に対応する領域よりも近距離に対応する領域で大きくすることにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる。
【0056】
第8発明にあっては、撮像画像の遠距離に対応する領域において、撮像時点が異なる撮像画像夫々で局所領域を用いた勾配法に基づいて動きベクトルを算出し、撮像画像の近距離に対応する領域において、撮像時点が異なる撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて動きベクトルを算出することにより、二輪車までの距離にかかわらず広範囲に亘って、精度良く二輪車を検出することができる。
【0057】
第9発明にあっては、前記画素ブロック又は局所領域を横長の矩形状にすることにより、二輪車の路面からの高さに応じて変動する動きベクトルの影響を受けずに、精度良く二輪車を検出することができる。
【0058】
第10発明にあっては、前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことにより、路面上の不要な情報を抑制して精度良く二輪車を検出することができる。
【0059】
第11発明にあっては、撮像画像の画素の動きベクトルを取得する手段を備えることにより、多地点又は遠隔地点における二輪車を集中的に検出することができる。また、ビデオカメラの画角等の調整やビデオカメラの保守も集中的に対応できる。このため、システム全体のコスト低減を実現できる。
【0060】
第12発明にあっては、二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置を備えることにより、二輪車事故を抑制することができる。
【0061】
第13発明にあっては、撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、特定された連結ブロックの撮像画像上の座標に基づいて、二輪車の位置、速度、又は移動方向を算出し、算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定し、判定結果を出力することにより、二輪車事故を抑制することができる。
【発明を実施するための最良の形態】
【0062】
実施の形態1
以下、本発明を実施の形態を示す図面に基づいて説明する。図1は本発明に係る二輪車検出装置を含む二輪車検出システム及び信号制御システムの概要を示す模式図である。図において、二輪車検出システムは、ビデオカメラ1、二輪車検出装置2、制御装置3、警告表示板6、無線発信装置7などを備えている。また、信号制御システムは、ビデオカメラ1、二輪車検出装置2、制御装置3、信号灯器4などを備えている。
【0063】
ビデオカメラ1は、交差点近傍に設置され、道路を含む領域を撮像する。ビデオカメラ1の光軸は、例えば、交差点付近の停止線から50mの範囲にある道路(二輪車検出範囲)に存在する二輪車を撮像するように道路方向に沿って配置してある。これにより、ビデオカメラ1は、交差点の上流50mの位置から交差点に向かって走行する二輪車を撮像する。
【0064】
ビデオカメラ1には、二輪車検出装置2を接続してある。二輪車検出装置2は、ビデオカメラ1で撮像して得られた撮像画像を処理して二輪車を検出するとともに、二輪車の速度、位置、移動方向などを算出する。二輪車検出装置2には、通信線5を介して制御装置3を接続してあり、二輪車の検出結果を制御装置3へ出力する。制御装置3には、信号灯器4、4、警告表示板6、6、無線発信装置7などを接続してある。
【0065】
制御装置3は、二輪車検出装置2から出力された二輪車の検出結果に基づいて、信号灯器4の表示を制御する。例えば、交差点に二輪車が接近している場合、信号灯の表示時間を変更する。また、制御装置3は、二輪車検出装置2から出力された二輪車の検出結果に基づいて、警告表示板6に文字又は画像などにより、二輪車が交差点付近にいることを報知する。また、制御装置3は、二輪車検出装置2から出力された二輪車の検出結果に基づいて、無線発信装置7を通じて、二輪車が交差点付近にいることを交差点付近の車両に報知する。これにより、交差点で車両が右折する場合に対向車に隠れた二輪車との衝突事故、又は交差点で車両が左折する場合に二輪車を巻き込む事故などを未然に防止する。
【0066】
図2は二輪車検出装置2及び制御装置3の構成を示すブロック図である。図において、1はビデオカメラである。ビデオカメラ1は撮像して得られた撮像画像を映像信号(アナログ信号)として画像入力部21へ出力する。画像入力部21は、取得した映像信号をA/D変換部22へ出力し、A/D変換部22は、入力された映像信号をデジタル信号に変換し、CPU28の制御のもと、変換されたデジタル信号を画像データとして画像メモリ23へ記憶する。CPU28は、画像入力部21を介してビデオカメラ1から入力された撮像画像を画像データとして、ビデオカメラ1のフレームレート(撮像時点の間隔、例えば、1秒間に30フレーム)と同期して、1フレーム単位(例えば、480×640画素)で画像メモリ23に記憶する。
【0067】
補助記憶部27は、本発明のコンピュータプログラムPGを記録したCD−ROM29が挿入されることにより、CD−ROM29に記録されたコンピュータプログラムPGをRAM24に記憶する。CPU28は、RAM24に記憶されたコンピュータプログラムPGを実行する。二輪車検出装置2は、CD−ROM29に記録したコンピュータプログラムPGがRAM24に読み込まれ、読み込まれたコンピュータプログラムPGをCPU28で実行することにより、後述する動きベクトル算出処理、二輪車検出処理などを実現する。なお、CPU28は、二輪車が二輪車検出範囲に存在する間、所定の処理を繰り返すことができる。
【0068】
画像メモリ23は、画像入力部21を介して取得された撮像画像を画像データとして、フレーム毎に記憶する。
【0069】
記憶部26は、コンピュータプログラムPGをCPU28で実行することにより、得られた動きベクトルの算出結果、二輪車の検出処理結果を各フレームに対応して記憶している。
【0070】
通信部25は、二輪車検出装置2で検出した二輪車に関する検出結果(報知情報)を、通信線5を介して制御装置3へ出力する。
【0071】
制御装置3の通信部31は、二輪車検出装置2から出力された二輪車の検出結果(報知情報)を受け付け、CPU35の制御のもと、記憶部32に記憶する。また、通信部31は、信号灯器4の信号表示を制御するための制御信号を出力する。また、通信部31は、警告表示板6、及び無線発信装置7で二輪車に関する警告を出力するために必要な制御信号を出力する。
【0072】
記憶部32は、信号灯器4の信号表示を制御するために用いられる信号表示データ321、信号表示を計画する表示計画データ322などを記憶している。信号表示データ321は、月日、曜日、時間帯、交差点の交通量などに応じて、信号灯器4の青表示、黄表示、及び赤表示の各表示時間などを設定してある。
【0073】
CPU35は、補助記憶部34で読み込まれたコンピュータプログラムをRAM33にロードし、該コンピュータプログラムを実行することにより、信号灯器4の制御処理を行う。より具体的には、CPU35は、記憶部32に記憶された二輪車の検出結果に基づいて、二輪車が交差点を安全に通過できない場合には、黄表示又は赤表示になる時刻を早くする、又は青表示の時刻を延長するよう表示計画を変更して表示計画データ322を更新する。また、二輪車が交差点を安全に通過できる場合には、表示計画を変更しない。
【0074】
図3は撮像画像の一例を示す説明図である。図に示すように、二輪車検出装置2は、例えば、交差点の停止線から50mの範囲であって、片側2車線の道路を走行する車両をビデオカメラ1で撮像して得られた撮像画像に基づいて、二輪車以外の車両と区別して二輪車を検出する。
【0075】
図4は画素の動きベクトルを示す説明図である。図に示すように、撮像時点tkの撮像画像における画素Pjの座標が(xk、yk)、撮像時点tk+1の撮像画像における画素Pjの座標が(xk+1、yk+1)である場合、動きベクトルPVjは、(xk+1−xk、yk+1−yk)となる。異なる撮像時点の時間間隔は、1フレーム間隔でもよく、また、数フレーム間隔であってもよい。なお、上述の画素は、複数の画素で構成される画素ブロックであってもよい。この場合は、画素ブロック毎に動きベクトルが決定される。
【0076】
図5は本発明に係る二輪車検出装置の動きベクトルの算出例を示す説明図である。動きベクトルの算出方法は、ブロックマッチング法と勾配法とがある。本発明においては、ブロックマッチング法及び勾配法で算出した動きベクトル(第1及び第2の動きベクトル)を合成して最終的な動きベクトルを算出する。
【0077】
まず、ブロックマッチング法について説明する。ブロックマッチング法は、異なる撮像時点(例えば、時刻tと時刻t+1)の撮像画像を用いる。ブロックマッチング法は、時刻tの撮像画像において、注目画素P1を中心とする横長の矩形領域をテンプレートとして登録し、時刻t+1の撮像画像における任意の画素を中心とする前記テンプレートと同じ大きさの矩形領域との相関値を算出し、算出した相関値が最大となる画素位置P2を検出するものである。
【0078】
相関値は、数1の式で表される。
【0079】
【数1】
【0080】
ここで、矩形領域のサイズをUxW(U、Wは整数)、時刻tにおける撮像画像の座標(x、y)の画素の輝度値をI(x、y、t)、−W/2≦i≦W/2、−U/2≦j≦U/2(i、jは整数)であり、−1≦相関値≦1である。また、数2の式は矩形領域内の平均輝度値である。
【0081】
【数2】
【0082】
上述の通り、ブロックマッチング法は、横長の矩形領域(画素ブロック)の大きさを適宜変更することにより、動き量が大きい場合の動きベクトルを算出することができる。
【0083】
次に、勾配法について説明する。勾配法は、動画像の各フレームのオプティカルフロー(動きベクトルの場)を求める方法として、各画素における輝度(明るさ)の空間的勾配と時間的勾配の関係を用いるものである。すなわち、勾配法は、撮像画像の輝度分布が動きに際して不変に保たれると仮定した勾配拘束式(すなわち、輝度の空間的勾配と時間的勾配の関係式)に基づいて、オプティカルフローを求める方法である。勾配法のうち、空間的局所最適化法は、特に計算量が少なく精度良好な方法であり、以下に説明する。
【0084】
勾配法は、異なる撮像時点(例えば、時刻tと時刻t+1)の撮像画像を用いる。時刻tにおける撮像画像の座標(x、y)の画素の輝度をI(x、y、t)とする。時刻t+1(時刻tに対してδtだけ時間が経過したとする)において、座標(x、y)の画素が座標(x+δx、y+δy)に移動したとする。ここで、輝度は変化しないと仮定すると、I(x、y、t)=I(x+δx、y+δy、t+δt)の関係式が成立する。
【0085】
上式の右辺をテイラー展開すると、数3の式が得られる。
【0086】
【数3】
【0087】
ε(x、y、t)は、2次以上の高次の項であり、微小であるためこれを無視するとともに、数3の式の両辺δtで割り、δtを0に近づけると、数4の式を得る。この式は、オプティカルフローの勾配拘束式と呼ばれる。
【0088】
【数4】
【0089】
ここで、輝度勾配をIx=∂I/∂x、Iy=∂I/∂y、時間勾配をIt=∂I/∂tとし、オプティカルフローをu=δx/δt、v=δy/δtとする。
【0090】
所要の横長の局所領域(M×N)(M、Nは整数)でオプティカルフローが一定であるという拘束条件を付加すると、前記局所領域で得られるオプティカルフローは、同一の解を持つと仮定するので、誤差Eは数5の式で表される。ここで、−M/2≦i≦M/2、−N/2≦j≦N/2(i、jは整数)は前記局所領域内の座標である。
【0091】
【数5】
【0092】
最小2乗法の考え方から、∂E/∂u=0、∂E/∂v=0を算出し、前記局所領域内で重み付け平滑化すると、数6の(1)式及び(2)式を得る。ここでwi,jは重み付けマトリクスであり、前記局所領域の中央部ほど重み付けが大きくなるような分布を持つマトリクスを使用することができる。
【0093】
【数6】
【0094】
数6の式を解くことにより、オプティカルフロー(u、v)、すなわち、動きベクトルが数7の(3)式、(4)式、及び(5)式のように得られる。
【0095】
【数7】
【0096】
上述の通り、勾配法は、ブロックマッチング法のように画素ブロックを用いる必要がないため、1画素未満の微小な動きベクトルであっても算出することができる。
【0097】
図5に示すように、本発明に係る二輪車検出装置の動きベクトルの算出法は、まずブロックマッチング法により、撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロックを用いて前記第1の撮像時点における撮像画像の画素の大きな動きベクトル(第1の動きベクトル)を算出する。算出した動きベクトルに応じて、前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法により動きベクトル(第2の動きベクトル)を算出し、夫々の方法で算出した動きベクトル(第1及び第2の動きベクトル)を合成して最終的な動きベクトルを算出する。これにより、ブロックマッチング法により、大きな動きベクトルを算出するとともに、ブロックマッチング法では、算出することができない1画素未満の微小な動きベクトルも算出し、両者の動きベクトルを合成することにより、精度良く動きベクトルを求めることが可能になる。
【0098】
次に、本発明に係る二輪車検出装置2の処理手順について説明する。図6は二輪車検出装置2の動きベクトル算出の処理手順を示すフローチャートである。CPU28は、撮像時点の異なる2つの撮像画像(例えば、撮像時点tのフレームft、撮像時点t+1のフレームft+1)を画像メモリ23から取得する(S10)。
【0099】
CPU28は、取得した一方の撮像画像の画素ブロック(例えば、7×15画素)毎に、画素ブロック内画素が有する輝度値(又は階調値など)に基づいて、他方の撮像画像を走査し一致する画素ブロックを特定する(S11)。2つの撮像画像間で一致する画素ブロックを特定する場合、上述した相関値を用いることができる。
【0100】
CPU28は、2つの撮像画像で一致する画素ブロックの撮像画像における座標(位置)変化に基づいて、ブロックマッチング法による各画素の動きベクトルを算出する(S12)。なお、座標変化が無い場合は、動きベクトルはゼロである。
【0101】
CPU28は、撮像時点tにおける撮像画像の画素毎に算出した動きベクトルに応じて、各画素を動きベクトル分(大きさ及び方向)だけ移動させた撮像画像を生成する(S13)。
【0102】
CPU28は、生成した撮像画像及び撮像時点t+1における撮像画像に対して、勾配法により動きベクトルを算出し(S14)、ブロックマッチング法により算出した動きベクトルと勾配法により算出した動きベクトルを合成して最終的な動きベクトルを算出する(S15)。
【0103】
CPU28は、算出された動きベクトルの角度差を算出し(S16)、算出した角度差が閾値以下であるか否かを判定し(S17)、算出された角度差が閾値以下である場合(S17でYES)、すべての動きベクトルについて処理したか否かを判定し(S18)、すべての動きベクトルについて処理した場合(S18でYES)、角度差が閾値以下である画素であって、隣接する画素を連結した連結ブロックを特定する(S19)。
【0104】
一方、算出された角度差が閾値以下でない場合(S17でNO)、又はすべての動きベクトルについて処理していない場合(S18でNO)、CPU28は、ステップS16以降の処理を続ける。
【0105】
これにより、動きベクトルの方向が異なる画素は、ノイズとして除去する。また、連結ブロックは走行車両に対応する。なお、連結ブロックを特定する場合に、連結ブロックを構成する画素の数が、予め定めた閾値より小さい場合は、ノイズとして除去することもできる。
【0106】
CPU28は、動きベクトルの算出処理の終了要求を受け付けたか否かを判定し(S20)、処理終了でない場合(S20でNO)には、ステップS10以降の処理を続ける。処理終了である場合(S20でYES)、CPU28は、処理を終了する。
【0107】
図7は二輪車検出装置2の二輪車検出の処理手順を示すフローチャートである。CPU28は、特定された連結ブロックに基づいて、二輪車検出処理を行う(S30)。なお、二輪車検出処理については、後述する。CPU28は、二輪車として検出された連結ブロックの撮像画像上の最も下側の位置(座標)の動きベクトルの始点位置を二輪車の位置とし、その動きベクトルの大きさを二輪車の速度とし、その動きベクトルの方向を二輪車の移動方向として算出する(S31)。
【0108】
CPU28は、算出された位置、速度、移動方向に基づいて、二輪車が予め定められた危険領域(例えば、交差点付近の左折車巻き込みゾーン、右折車衝突ゾーン)への到達時間を算出する(S32)。CPU28は、算出した到達時間が所定の閾値より小さいか否かを判定する(S33)。
【0109】
到達時間が閾値より小さい場合(S33でYES)、CPU28は、報知情報(二輪車検出結果)を出力する(S34)。これにより、二輪車検出装置2は、交差点付近の危険領域に二輪車が接近していることを報知することができる。CPU28は、二輪車検出処理の終了要求を受け付けたか否かを判定し(S35)、処理終了でない場合(S35でNO)には、ステップS30以降の処理を続ける。
【0110】
到達時間が閾値より大きい場合(S33でNO)、CPU28は、ステップS35以降の処理を続ける。一方、処理終了である場合(S35でYES)、CPU28は、処理を終了する。
【0111】
次に二輪車検出処理について説明する。図8は二輪車検出処理手順を示すフローチャートである。CPU28は、特定された連結ブロックの撮像画像上の座標に基づいて、縦寸法及び横寸法を算出した上で、縦寸法が横寸法より大きいか否かを判定する(S301)。
【0112】
縦寸法が横寸法より大きい場合(S301でYES)、CPU28は、特定された連結ブロックに対応する移動体を二輪車として記録する(S302)。CPU28は、すべての連結ブロックについて処理を行ったか否かを判定する(S303)。
【0113】
すべての連結ブロックについて処理を行っていない場合(S303でNO)、CPU28は、ステップS301以降の処理を続ける。連結ブロックの縦寸法が横寸法より小さい場合(S301でNO)、CPU28は、ステップS303以降の処理を続ける。すべての連結ブロックについて処理を行った場合(S303でYES)、CPU28は、処理を終了する。これにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0114】
上述の処理は、撮像画像1フレームに対する処理であるが、この処理を各フレームに対して継続して処理を行うこともできる。また、複数のフレームの都度、間引きして処理を行うようにしてもよい。
【0115】
連結ブロックの動きベクトルの始点位置から、連結ブロックに対応する二輪車の位置(二輪車までの距離)は、例えば、数8の式(6)、(7)で表される式に基づいて行うことができる。
【0116】
【数8】
【0117】
図9は実空間座標及び撮像面座標の関係を示す説明図である。実空間での座標系を(X、Y、Z)、撮像画像上での座標系を(x、y)とする。実空間では、垂直方向をZ、道路の延びる方向をY、道路を横断する方向をXにとる。撮像画像面上でのx軸方向を実空間でのX方向に平行とし、撮像画像面上でのy軸方向を実空間でのY方向とし、ビデオカメラ俯角(ビデオカメラの光軸とY軸方向とがなす角度)をαとなるように設置する。また、ビデオカメラレンズの焦点距離をF、ビデオカメラの設置高さをH、撮像画像面のy軸方向の大きさ(寸法)をQy、撮像面のy軸方向の画素数をNyとし、撮像画像面のx軸方向の大きさ(寸法)をQx、撮像面のx軸方向の画素数をNxとする。なお、二輪車の高さは0(すなわち、路面上の位置)とする。
【0118】
図10は連結ブロックの例を示す説明図である。図に示すように、撮像画像を所定の画素で分割し、各画素の動きベクトルを算出し、算出した動きベクトルの角度差が閾値以下である画素であって、隣接する画素のみを連結することにより、連結ブロックを特定する。動きベクトルの角度差が閾値以下の画素であっても、離隔している画素はノイズとして除去する。また、連結された画素の数が所定の閾値以下の場合も、ノイズとして除去することにより、連結ブロックにより走行車両を精度良く特定することができる。さらに特定された連結ブロックの大きさ(縦横寸法)に基づいて、二輪車以外の車両から二輪車を区別して、二輪車を検出する。
【0119】
図11は連結ブロックにより特定された二輪車の例を示す説明図である。上述の通り、ビデオカメラ1は、片側2車線の道路を含む領域を撮像するように配置してある。ある撮像時点における撮像画像の二輪車は、二輪車以外の車両を除外して連結ブロックにより特定される。
【0120】
図12は危険領域の例を示す説明図である。図に示すように、危険領域は、例えば、交差点の上流側の道路であって、路肩沿いの車線の交差点近傍領域である左折車巻き込みゾーン、及び交差点中央部の対向車線と重なる領域である右折車衝突ゾーンにより構成される。ビデオカメラ1を設置した状態で撮像される撮像領域内に、この危険領域の位置を予め設定しておくことができる。なお、交差点付近に複数のビデオカメラを設置して、危険領域を複数設定することもできる。
【0121】
図13は二輪車検出装置2で算出される算出情報を示す説明図である。図13(a)に示すように、1フレームの撮像画像は、例えば、480×640の画素P1、P2、…Pnに分割される。図13(b)に示すように、画素毎に算出された動きベクトルPV1、PV2、…PVnが記録される。動きが検出されなかった画素の動きベクトルはゼロである。図13(c)に示すように、1フレームの撮像画像毎に、検出された二輪車の数(連結ブロック数)、二輪車毎の速度v1、…、二輪車毎の位置Y1、…、二輪車毎の移動方向θ1、…などを記録する。なお、移動方向θ1は、動きベクトルの向きが垂直方向(撮像画像の上下方向)となす角度などにより表すことができる。
【0122】
実施の形態2
上述の実施の形態1においては、連結ブロックの縦寸法と横寸法との差に基づいて、連結ブロックから二輪車を検出する場合について説明したが、二輪車の検出は、これに限定されるものではない。
【0123】
図14は実施の形態2に係る二輪車検出処理手順を示すフローチャートである。CPU28は、特定された連結ブロックの撮像画像上での座標を特定する(S310)。この場合、特定する座標としては、例えば、撮像画像上で連結ブロックの下側両端部(横寸法)を用いることができる。
【0124】
CPU28は、特定した座標に基づいて、連結ブロックに対応する移動体の幅を算出する(S311)。なお、連結ブロックの座標から移動体の幅は、数8の式(6)、(8)、(9)により算出することができる。
【0125】
CPU28は、算出した幅が予め定められた二輪車の幅を示す閾値より小さいか否かを判定する(S312)。幅が閾値より小さい場合(S312でYES)、CPU28は、連結ブロックに対応する移動体を二輪車として記録する(S313)。CPU28は、すべての連結ブロックについて処理を行ったか否かを判定する(S314)。
【0126】
すべての連結ブロックについて処理を行っていない場合(S314でNO)、CPU28は、ステップS310以降の処理を続ける。算出した幅が閾値より大きい場合(S312でNO)、CPU28は、ステップS314以降の処理を続ける。すべての連結ブロックについて処理を行った場合(S314でYES)、CPU28は、処理を終了する。これにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0127】
実施の形態3
上述の実施の形態2においては、連結ブロックの座標(横寸法)に基づいて、対応する移動体の実際上の幅を算出して二輪車を検出する場合について説明したが、二輪車の検出は、これに限定されるものではない。
【0128】
図15は実施の形態3に係る二輪車検出処理手順を示すフローチャートである。CPU28は、特定された連結ブロックの撮像画像上での座標を特定する(S320)。この場合、特定する座標としては、例えば、撮像画像上で連結ブロックの上下中央部(縦寸法)を用いることができる。
【0129】
CPU28は、特定した座標に基づいて、連結ブロックに対応する移動体の高さを算出する(S321)。なお、連結ブロックの座標から移動体の高さは、数8の式(6)、(7)により算出することができる。
【0130】
CPU28は、算出した高さが予め定められた二輪車の高さを示す閾値より小さいか否かを判定する(S322)。高さが閾値より小さい場合(S322でYES)、CPU28は、連結ブロックに対応する移動体を二輪車として記録する(S323)。CPU28は、すべての連結ブロックについて処理を行ったか否かを判定する(S324)。
【0131】
すべての連結ブロックについて処理を行っていない場合(S324でNO)、CPU28は、ステップS320以降の処理を続ける。算出した高さが閾値より大きい場合(S322でNO)、CPU28は、ステップS324以降の処理を続ける。すべての連結ブロックについて処理を行った場合(S324でYES)、CPU28は、処理を終了する。これにより、二輪車以外の車両と区別して、従来よりも二輪車を正確に検出することができる。
【0132】
上述の実施の形態3において、二輪車を検出するための高さ閾値を変化させて、より精度良く二輪車を検出することができる。図16は二輪車の高さ閾値を変化させる場合の閾値例を示す説明図である。図に示すように、二輪車とビデオカメラとの距離に応じて、撮像画像上での二輪車存在範囲(二輪車画像)は異なる。例えば、二輪車の位置がビデオカメラに近い地点Aの場合、二輪車の後端部が視野内にあるため、撮像画像上で二輪車の存在範囲は、二輪車の先端部から後端部までとなる。
【0133】
一方、二輪車の位置がビデオカメラから遠い地点Bの場合、二輪車の後端部が搭乗者によって隠されるため、撮像画像上での二輪車の存在範囲は、撮像画像上で二輪車の存在範囲は、二輪車の先端部から搭乗者頭頂部までとなる。
【0134】
ここで、ビデオカメラの設置高さをH、二輪車の長さをL、搭乗者の頭頂部高さをh1、二輪車後端部の高さをh2(いずれも定数)とし、搭乗者が二輪車の中央部に存在するとした場合、二輪車先端部の位置Yから、撮像画像上での二輪車の存在範囲を算出することができる。
【0135】
地点Aと地点Bとの境界となる位置、すなわち、二輪車の後端部と搭乗者の頭頂部とが重なる場合の二輪車の先端部の位置Y0は、数9の式(10)で算出することができる。
【0136】
【数9】
【0137】
従って、二輪車の先端部の位置Yが、Y≦Y0の場合、路面高さの位置において、Y〜Y1の範囲に相当する撮像画像上の範囲が二輪車の見かけ上の高さになり、このY1−Yの値を二輪車検出の高さ閾値として用いることができる。ここで、Y1は、数9の式(11)で表される。
【0138】
同様に、二輪車の先端部の位置Yが、Y>Y0の場合、路面高さの位置において、Y〜Y2の範囲に相当する撮像画像上の範囲が二輪車の見かけ上の高さになり、このY2−Yの値を二輪車検出の高さ閾値として用いることができる。ここで、Y2は、数9の式(12)で表される。これにより、二輪車までの距離に拘わらず、広範囲に亘って二輪車を正確に検出することができる。
【0139】
実施の形態4
上述の実施の形態1においては、動きベクトルを算出する場合に、ブロックマッチング法及び勾配法で算出した動きベクトルを合成して最終的な動きベクトルを算出するものであったが、これに限定されるものではなく、例えば、二輪車までの距離に応じてブロックマッチング法及び勾配法を使い分けることもできる。
【0140】
図17は撮像画像を分割して動きベクトル算出法を使い分ける場合の例を示す説明図である。図に示すように、二輪車までの距離が遠い場合、すなわち、撮像画像上の上側の領域においては、勾配法により動きベクトルを算出する。一方、二輪車までの距離が近い場合、すなわち、撮像画像上の下側の領域においては、ブロックマッチング法により動きベクトルを算出する。
【0141】
二輪車が遠距離にある場合、動きベクトルの大きさは比較的小さく、1画素未満の微小な動きベクトルも算出することができる勾配法が優れている。一方二輪車が近距離にある場合、動きベクトルは大きく変化するため、効率よく大きな動きベクトルを算出できるブロックマッチング法が優れている。なお、ブロックマッチング法及び勾配法での動きベクトル算出手順は、実施の形態1と同様であるので、説明は省略する。
【0142】
実施の形態5
上述の実施の形態では、動きベクトルを算出するための画素ブロック(ブロックマッチング法の場合)、又は局所領域(勾配法の場合)は、横長の所定の大きさの矩形状であったが、これに限定されるものではなく、例えば、車両までの距離に応じて大きさを変えることもできる。
【0143】
図18は画素ブロック又は局所領域の例を示す説明図である。図に示すように、二輪車までの距離が遠い場合、すなわち、撮像画像上の上側の領域においては、横長の画素ブロック又は局所領域を小さくし(例えば、4×8)する。一方、二輪車までの距離が近い場合、すなわち、撮像画像上の下側の領域においては、横長の画素ブロック又は局所領域を大きく(例えば、8×16)する。
【0144】
二輪車までの距離に応じて、撮像画像上での二輪車の大きさも異なり、前記画素ブロック又は局所領域の大きさを、二輪車以外の車両の大きさの1/2〜1/10程度、又は二輪車の幅の1/1〜1/2程度の大きさになるようにすることで、二輪車以外の路面上の不要な情報を除外するとともに、動きベクトル算出のための処理労力を低減しつつ、精度良く動きベクトルを算出することができる。
【0145】
実施の形態6
上述の実施の形態においては、ビデオカメラで撮像して得られた撮像画像から各画素ブロックの動きベクトルを算出する構成であったが、これに限定されるものではなく、ビデオカメラで撮像してMPEG、MPEG2、MPEG4、H.264等の符号化映像の形式に変換された映像データに含まれる各画素ブロックの動きベクトル情報を用いてもよい。例えば、複数の交差点近傍に設置されたビデオカメラ1、1、…で撮像して得られた撮像画像に基づいて、予め動きベクトルを算出しておき、算出した動きベクトルを通信回線に接続された二輪車検出装置で取得して、多地点、遠隔地点などの二輪車の検出、検出した二輪車の速度、位置、移動方向を集中的に算出し、各交差点付近を走行する車両に二輪車がいることを報知することもできる。
【0146】
図19は本発明の実施の形態6に係る二輪車検出装置を含む二輪車検出システムの概要を示す模式図である。図において、1は道路を含む領域を撮像するビデオカメラである。ビデオカメラ1は、複数の交差点近傍に設置され、ビデオカメラ1の光軸は、例えば、交差点付近の停止線から50mの範囲にある道路に存在する二輪車を撮像するように道路方向に沿って配置してある。これにより、ビデオカメラ1は、交差点の上流50mの位置から交差点に向かって走行する二輪車を撮像する。
【0147】
ビデオカメラ1には、制御装置8を接続してあり、制御装置8には信号灯器4、警告表示板6、無線発信装置7などを接続してある。制御装置8は、ビデオカメラ1で撮像して得られた画像データを所定の方式(例えば、MPEG、MPEG2、MPEG4、H.264など)に基づいて符号化処理するとともに、画像データに基づいて算出した動きベクトルを符号化処理し、符号化処理後のデータ及び動きベクトルを、通信回線9を介して接続された二輪車検出装置2へ送信する。
【0148】
ここで、MPEG、MPEG2、MPEG4、H.264等の符号化映像とは、画像の中の動く部分だけを検出し保存するなどして映像データを圧縮しているものであって、この形式に変換する際に、画素の動きベクトルの算出が行われる。
【0149】
制御装置8は、後述するように、二輪車検出装置2から通信回線9を介して出力された二輪車の検出結果(報知情報)に基づいて、信号灯器4の制御、警告表示板6への警告表示、無線発信装置7への警告情報の出力を行う。これにより、多地点又は遠隔地点にある交差点で車両が右折する場合に対向車に隠れた二輪車との衝突事故、又は交差点で車両が左折する場合に二輪車を巻き込む事故などを未然に防止する。
【0150】
二輪車検出装置2は、画像入力部21に代えて、通信部25で制御装置8、8、…から送信された符号化処理後のデータを取得し、取得したデータ元の画像データを復元するとともに、動きベクトルなどを抽出する。二輪車検出装置2は、抽出した動きベクトルに基づいて、連結ブロックを特定し、二輪車を検出するとともに、二輪車の速度、位置、移動方向を算出し、危険領域に到達する時間が所定の閾値より短い場合、報知情報を制御装置8、8、…へ通信回線9を介して出力する。
【0151】
図20は制御装置8の構成を示すブロック図である。ビデオカメラ1は撮像して得られた撮像画像を映像信号(アナログ信号)として画像入力部81へ出力する。画像入力部81は、取得した映像信号をA/D変換部82へ出力し、A/D変換部82は、入力された映像信号をデジタル信号に変換し、CPU88の制御のもと、変換されたデジタル信号を画像データとして画像メモリ83へ記憶する。CPU88は、画像入力部81を介してビデオカメラ1から入力された撮像画像を画像データとして、ビデオカメラ1のフレームレート(撮像時点の間隔、例えば、1秒間に30フレーム)と同期して、1フレーム単位(例えば、480×640画素)で画像メモリ83に記憶する。
【0152】
CPU88は、画像メモリ83に記憶した画像データを所定の方式(例えば、MPEG、MPEG2、MPEG4、H.264など)に基づいて符号化処理し、符号化処理後のデータを通信部85から二輪車検出装置2へ送信する。CPU88は、符号化処理を行う際に画像データに基づいて動きベクトルを算出し、算出した動きベクトルを符号化処理する。
【0153】
補助記憶部87は、コンピュータプログラムPGを読み込み、CPU88は、読み込まれたコンピュータプログラムをRAM84にロードし、ロードされたコンピュータプログラムPGを実行することにより、動きベクトル算出処理、信号灯器4の制御処理、報知情報の出力処理などを行う。なお、動きベクトル算出処理、信号灯器4の制御処理、報知情報の出力処理は、実施の形態1と同様であるので、説明は省略する。
【0154】
図21は実施の形態6における二輪車検出装置2の処理手順を示すフローチャートである。CPU28は、制御装置8から送信された符号化画像データを受信する(S40)。CPU28は、受信した符号化画像データから動きベクトルを抽出する(S41)。
【0155】
CPU28は、算出された動きベクトルの方向が略一致する画素であって、隣接する画素を連結した連結ブロックを特定する(S42)。CPU28は、特定された連結ブロックの大きさに基づいて、二輪車を検出する(S43)。
【0156】
CPU28は、二輪車として検出された連結ブロックの撮像画像上の最も下側の位置(座標)の動きベクトルの始点位置を二輪車の位置とし、その動きベクトルの大きさを二輪車の速度とし、その動きベクトルの方向を二輪車の移動方向として算出する(S44)。
【0157】
CPU28は、算出された位置、速度、移動方向に基づいて、二輪車が予め定められた危険領域(例えば、交差点付近の左折車巻き込みゾーン、右折車衝突ゾーン)への到達時間を算出する(S45)。CPU28は、算出した到達時間が所定の閾値より小さいか否かを判定する(S46)。
【0158】
到達時間が閾値より小さい場合(S46でYES)、CPU28は、報知情報(二輪車検出結果)を出力する(S47)。これにより、二輪車検出装置2は、交差点付近の危険領域に二輪車が接近していることを報知することができる。CPU28は、二輪車検出処理の終了要求を受け付けたか否かを判定し(S48)、処理終了でない場合(S48でNO)には、ステップS40以降の処理を続ける。
【0159】
到達時間が閾値より大きい場合(S46でNO)、CPU28は、ステップS48以降の処理を続ける。一方、処理終了である場合(S48でYES)、CPU28は、処理を終了する。
【0160】
なお、上述の処理は、撮像画像1フレームに対する処理であるが、この処理を各フレームに対して継続して処理を行うこともできる。また、複数のフレームの都度、間引きして処理を行うようにしてもよい。これにより、二輪車の検出を広範囲、かつ多地点・遠隔地点において安定的に実現することができる。
【0161】
上述の実施の形態においては、警告表示板により文字又は画像で警告するとともに、無線発信装置で警告する場合について説明したが、警告、すなわち、報知情報の出力は、これに限定されるものではなく、近赤外線を用いた光ビーコンなどを通じて出力してもよい。
【0162】
上述の実施の形態1〜5においては、ビデオカメラ1と二輪車検出装置2とは、別個の装置で構成されていたが、ビデオカメラ1と二輪車検出装置2とを統合して、ひとつの装置として構成してもよい。
【0163】
上述の実施の形態においては、撮像画像のすべての画素に対して動きベクトルを算出する構成であったが、複数の画素で構成されるブロック毎に動きベクトルを算出する構成であってもよい。
【0164】
上述の実施の形態においては、ブロックマッチング法で動きベクトルを算出する場合に、数1の式で表される相関値を用いる構成であったが、これに限定されるものではなく、画素ブロック内画素の差分階調値の絶対値の和、画素の平均階調値の差の絶対値、画素の階調値の標準偏差の差の絶対値など、いずれの方法を用いてもよい。
【0165】
上述の実施の形態において、異なる撮像時点の撮像画像を取得する場合、撮像時点の時間間隔は、道路の交通状況に応じて、適宜設定することができる。二輪車が比較的高速で走行する道路の場合は、時間間隔を短くし、低速走行車両が多い道路では、時間間隔を長くすることができる。
【0166】
二輪車を検出する場合、二輪車の移動方向がビデオカメラから離れていく場合であっても、連結ブロックの最下部の動きベクトルの情報から、二輪車の位置、速度、移動方向を算出することもでき、そのような場合に本発明を適用することができる。
【図面の簡単な説明】
【0167】
【図1】本発明に係る二輪車検出装置を含む二輪車検出システム及び信号制御システムの概要を示す模式図である。
【図2】二輪車検出装置及び制御装置の構成を示すブロック図である。
【図3】撮像画像の一例を示す説明図である。
【図4】画素の動きベクトルを示す説明図である。
【図5】本発明に係る二輪車検出装置の動きベクトルの算出例を示す説明図である。
【図6】二輪車検出装置の動きベクトル算出の処理手順を示すフローチャートである。
【図7】二輪車検出装置の二輪車検出の処理手順を示すフローチャートである。
【図8】二輪車検出処理手順を示すフローチャートである。
【図9】実空間座標及び撮像面座標の関係を示す説明図である。
【図10】連結ブロックの例を示す説明図である。
【図11】連結ブロックにより特定された二輪車の例を示す説明図である。
【図12】危険領域の例を示す説明図である。
【図13】二輪車検出装置で算出される算出情報を示す説明図である。
【図14】実施の形態2に係る二輪車検出処理手順を示すフローチャートである。
【図15】実施の形態3に係る二輪車検出処理手順を示すフローチャートである。
【図16】二輪車の高さ閾値を変化させる場合の閾値例を示す説明図である。
【図17】撮像画像を分割して動きベクトル算出法を使い分ける場合の例を示す説明図である。
【図18】画素ブロック又は局所領域の例を示す説明図である。
【図19】本発明の実施の形態6に係る二輪車検出装置を含む二輪車検出システムの概要を示す模式図である。
【図20】制御装置の構成を示すブロック図である。
【図21】実施の形態6における二輪車検出装置の処理手順を示すフローチャートである。
【符号の説明】
【0168】
1 ビデオカメラ
2 二輪車検出装置
3、8 制御装置
4 信号灯器
5 通信線
6 警告表示板
7 無線発信装置
9 通信回線
21、81 画像入力部
22、82 A/D変換部
23、83 画像メモリ
24、84 RAM
25、85 通信部
26、86 記憶部
27、87 補助記憶部
28、88 CPU
29 CD−ROM
31 通信部
32 記憶部
33 RAM
34 補助記憶部
35 CPU
【特許請求の範囲】
【請求項1】
取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置において、
撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、
特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段と
を備えることを特徴とする二輪車検出装置。
【請求項2】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出する算出手段を備え、
前記検出手段は、
前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出すべくなしてあることを特徴とする請求項1に記載の二輪車検出装置。
【請求項3】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出する算出手段を備え、
前記検出手段は、
前記算出手段で算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする請求項1に記載の二輪車検出装置。
【請求項4】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出する算出手段を備え、
前記検出手段は、
前記算出手段で算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする請求項1に記載の二輪車検出装置。
【請求項5】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出する手段と、
該手段で算出された距離に基づいて、前記高さ閾値を変更する手段と
を備えることを特徴とする請求項4に記載の二輪車検出装置。
【請求項6】
撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、前記第1の撮像時点における撮像画像の画素の第1の動きベクトルを算出する手段と、
該手段で算出された第1の動きベクトルに応じて前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、前記新たな撮像画像の画素の第2の動きベクトルを算出する手段と
を備え、
両手段で算出された第1及び第2の動きベクトルの合成ベクトルを撮像画像の画素の動きベクトルとすることを特徴とする請求項1乃至請求項5のいずれかに記載の二輪車検出装置。
【請求項7】
前記画素ブロック又は局所領域の大きさは、撮像画像の遠距離に対応する領域よりも撮像画像の近距離に対応する領域で大きいことを特徴とする請求項6に記載の二輪車検出装置。
【請求項8】
撮像時点が異なる複数の撮像画像夫々で局所領域を用いた勾配法に基づいて、撮像画像の遠距離に対応する領域の画素の動きベクトルを算出する手段と、
撮像時点が異なる複数の撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、撮像画像の近距離に対応する領域の画素の動きベクトルを算出する手段と
を備え、
両手段で算出された動きベクトルを撮像画像の画素の動きベクトルとすることを特徴とする請求項1乃至請求項5のいずれかに記載の二輪車検出装置。
【請求項9】
前記画素ブロック又は局所領域は、横長の矩形状であることを特徴とする請求項6乃至請求項8のいずれかに記載の二輪車検出装置。
【請求項10】
前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことを特徴とする請求項9に記載の二輪車検出装置。
【請求項11】
撮像画像の画素の動きベクトルを取得する手段を備えることを特徴とする請求項1乃至請求項5のいずれかに記載の二輪車検出装置。
【請求項12】
請求項1乃至請求項11のいずれかに記載の二輪車検出装置と、該二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置とを備えることを特徴とする信号制御システム。
【請求項13】
取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置と、該二輪車検出装置で検出された二輪車に関する情報を報知する報知装置とを備える二輪車検出システムにおいて、
前記二輪車検出装置は、
撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、
特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段と、
特定された連結ブロックの撮像画像上の座標に基づいて、前記検出手段で検出された二輪車の位置、速度、又は移動方向を算出する手段と、
算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定する手段と、
該手段で判定した判定結果を前記報知装置へ出力する手段と
を備え、
前記報知装置は、
前記判定結果を出力する手段を備えることを特徴とする二輪車検出システム。
【請求項14】
取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出方法において、
撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、
特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することを特徴とする二輪車検出方法。
【請求項15】
コンピュータに、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出させるためのコンピュータプログラムにおいて、
コンピュータを、
撮像画像の画素の動きベクトルの角度差を算出する手段と、
該手段で算出された角度差が閾値以下であるか否かを判定する手段と、
前記角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、
該手段によって特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する手段として機能させることを特徴とするコンピュータプログラム。
【請求項1】
取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置において、
撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、
特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段と
を備えることを特徴とする二輪車検出装置。
【請求項2】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックの縦寸法及び横寸法を算出する算出手段を備え、
前記検出手段は、
前記連結ブロックの縦寸法が横寸法より大きい場合に、前記連結ブロックに対応する移動体を二輪車として検出すべくなしてあることを特徴とする請求項1に記載の二輪車検出装置。
【請求項3】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の幅を算出する算出手段を備え、
前記検出手段は、
前記算出手段で算出された幅が幅閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする請求項1に記載の二輪車検出装置。
【請求項4】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体の高さを算出する算出手段を備え、
前記検出手段は、
前記算出手段で算出された高さが高さ閾値より小さい場合、前記移動体を二輪車として検出すべくなしてあることを特徴とする請求項1に記載の二輪車検出装置。
【請求項5】
特定された連結ブロックの撮像画像上の座標に基づいて、前記連結ブロックに対応する移動体までの距離を算出する手段と、
該手段で算出された距離に基づいて、前記高さ閾値を変更する手段と
を備えることを特徴とする請求項4に記載の二輪車検出装置。
【請求項6】
撮像時点が異なる第1の撮像時点及び第2の撮像時点における撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、前記第1の撮像時点における撮像画像の画素の第1の動きベクトルを算出する手段と、
該手段で算出された第1の動きベクトルに応じて前記第1の撮像時点における撮像画像の画素を移動して得られた新たな撮像画像及び前記第2の撮像時点における撮像画像夫々で局所領域を用いた勾配法に基づいて、前記新たな撮像画像の画素の第2の動きベクトルを算出する手段と
を備え、
両手段で算出された第1及び第2の動きベクトルの合成ベクトルを撮像画像の画素の動きベクトルとすることを特徴とする請求項1乃至請求項5のいずれかに記載の二輪車検出装置。
【請求項7】
前記画素ブロック又は局所領域の大きさは、撮像画像の遠距離に対応する領域よりも撮像画像の近距離に対応する領域で大きいことを特徴とする請求項6に記載の二輪車検出装置。
【請求項8】
撮像時点が異なる複数の撮像画像夫々で局所領域を用いた勾配法に基づいて、撮像画像の遠距離に対応する領域の画素の動きベクトルを算出する手段と、
撮像時点が異なる複数の撮像画像夫々で画素ブロックを用いたブロックマッチング法に基づいて、撮像画像の近距離に対応する領域の画素の動きベクトルを算出する手段と
を備え、
両手段で算出された動きベクトルを撮像画像の画素の動きベクトルとすることを特徴とする請求項1乃至請求項5のいずれかに記載の二輪車検出装置。
【請求項9】
前記画素ブロック又は局所領域は、横長の矩形状であることを特徴とする請求項6乃至請求項8のいずれかに記載の二輪車検出装置。
【請求項10】
前記画素ブロック又は局所領域の横寸法は、撮像画像上の二輪車の幅に略等しいことを特徴とする請求項9に記載の二輪車検出装置。
【請求項11】
撮像画像の画素の動きベクトルを取得する手段を備えることを特徴とする請求項1乃至請求項5のいずれかに記載の二輪車検出装置。
【請求項12】
請求項1乃至請求項11のいずれかに記載の二輪車検出装置と、該二輪車検出装置で二輪車が検出された検出結果に基づいて、信号灯器を制御する信号制御装置とを備えることを特徴とする信号制御システム。
【請求項13】
取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出装置と、該二輪車検出装置で検出された二輪車に関する情報を報知する報知装置とを備える二輪車検出システムにおいて、
前記二輪車検出装置は、
撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、
特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する検出手段と、
特定された連結ブロックの撮像画像上の座標に基づいて、前記検出手段で検出された二輪車の位置、速度、又は移動方向を算出する手段と、
算出された位置、速度、又は移動方向に基づいて、前記二輪車が所定の道路領域に進入するか否かを判定する手段と、
該手段で判定した判定結果を前記報知装置へ出力する手段と
を備え、
前記報知装置は、
前記判定結果を出力する手段を備えることを特徴とする二輪車検出システム。
【請求項14】
取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出する二輪車検出方法において、
撮像画像の画素の動きベクトルの角度差が閾値以下である画素を連結してなる連結ブロックを特定し、
特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出することを特徴とする二輪車検出方法。
【請求項15】
コンピュータに、取得した撮像画像を処理して移動体を特定し、特定した移動体の中から二輪車の存在を検出させるためのコンピュータプログラムにおいて、
コンピュータを、
撮像画像の画素の動きベクトルの角度差を算出する手段と、
該手段で算出された角度差が閾値以下であるか否かを判定する手段と、
前記角度差が閾値以下である画素を連結してなる連結ブロックを特定する手段と、
該手段によって特定された連結ブロックの形状又は大きさに基づいて、二輪車を検出する手段として機能させることを特徴とするコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2007−148647(P2007−148647A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−340513(P2005−340513)
【出願日】平成17年11月25日(2005.11.25)
【出願人】(000002130)住友電気工業株式会社 (12,747)
【Fターム(参考)】
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願日】平成17年11月25日(2005.11.25)
【出願人】(000002130)住友電気工業株式会社 (12,747)
【Fターム(参考)】
[ Back to top ]