JP6323179B2 - 物体検出システムおよび物体検出方法 - Google Patents

物体検出システムおよび物体検出方法 Download PDF

Info

Publication number
JP6323179B2
JP6323179B2 JP2014114059A JP2014114059A JP6323179B2 JP 6323179 B2 JP6323179 B2 JP 6323179B2 JP 2014114059 A JP2014114059 A JP 2014114059A JP 2014114059 A JP2014114059 A JP 2014114059A JP 6323179 B2 JP6323179 B2 JP 6323179B2
Authority
JP
Japan
Prior art keywords
window frame
image
plane
window
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014114059A
Other languages
English (en)
Other versions
JP2015228164A (ja
Inventor
勝浩 梅海
勝浩 梅海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2014114059A priority Critical patent/JP6323179B2/ja
Publication of JP2015228164A publication Critical patent/JP2015228164A/ja
Application granted granted Critical
Publication of JP6323179B2 publication Critical patent/JP6323179B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Analysis (AREA)
  • Closed-Circuit Television Systems (AREA)

Description

本発明は、物体検出システムおよび物体検出方法に関し、動画を解析して特定の物体を検出する技術に関する。
動画を解析して特定の物体を検出する技術は、様々な分野で利用されている。たとえば、工業製品の製造ライン等では、コンベア上を監視カメラで撮影し、流れてくる個々の製品を検出するシステムが導入されている。また、屋内や屋外の状況を監視カメラで撮影し、人物の存在を検出するシステムも広く利用されている。このようなシステムに利用するため、動画を構成する個々のフレーム画像から、固有の特徴をもった特定の物体を正確に認識するための技術が提案されている。
たとえば、下記の特許文献1には、画像中から特定の物体を検出するために、検出対象となる物体の形状特徴を基準として、画像中の候補領域が当該対象物体の領域である確信度を算出する手法が開示されている。また、特許文献2には、予め、検出対象物体についての特徴辞書と、検出対象物体と疑似物体とを識別するための判別特徴辞書とを用意しておき、画像中から特徴辞書に定義されている特徴を参照しながら物体候補を検出し、その後、判別特徴辞書を用いて、検出対象物体のみを正確に検出する物体検出装置が開示されている。
また、特許文献3には、単位領域中における特定色の有無を判定することにより、当該特定色を有する物体を検出する物体検出方法が開示されている。更に、特許文献4には、入力画像に対して変倍処理を行い、倍率を変えた複数通りの画像上で判定領域を走査しながら、各判定領域内について顔の検出を行う技術が開示されている。
特開平6−176150号公報 特開平10−222678号公報 特開2001−346224号公報 特開2007−257358号公報
上述したとおり、動画を解析して特定の物体を検出する物体検出システムとしては、従来から様々なアルゴリズムを利用したシステムが提案され、その一部は実用化されている。これらのシステムが採用しているアルゴリズムの基本原理は、動画を構成する個々のフレーム画像上を、いわばサーチライトのスポットで照らすようにして走査し、検出対象物体の特徴に合致する領域を見つける処理を繰り返す、というものである。
ここで、特定の領域が検出対象物体の特徴に合致するか否かの判定処理には、通常、テンプレートマッチングの手法が利用される。すなわち、検出対象物体の固有の特徴を示すデータを予めテンプレートとして用意しておき、個々のフレーム画像上で部分的な領域を走査しながら、当該テンプレートに合致する領域を探し出す、という手法が採用されている。ここで、テンプレートに合致するか否かの判定処理には、様々なアルゴリズムが利用されているが、いずれも画像の特徴についての合致判定処理であるため、演算負担は大きく、演算処理に時間を要することになる。
特に、パソコン等を利用して構築される汎用の物体検出システムの場合、CPUの演算処理能力に限界があり、高速な演算処理を行うことはできない。そのため、リアルタイム処理が必要とされる監視システムなどでは、十分な物体検出処理を行うことができないという問題が生じる。たとえば、24時間体制で監視を行いながら、人物を検出したときに警報を鳴らすようなシステムの場合、リアルタイム処理を行わざるを得ない。ところが、たとえば30フレーム/秒のレートで連続的に与えられるフレーム画像についてリアルタイム処理を行うことにすると、1フレームあたりの処理時間は1/30秒に限られてしまい、演算処理能力の低いCPUを利用したシステムでは、十分な対応を行うことができない。
このように、処理能力上の問題から演算処理時間を短縮する必要がある場合、従来は、「空間的な間引き」を行うか、「時間的な間引き」を行うことにより対応を行っている。ここで、「空間的な間引き」とは、フレーム画像上での探索領域の走査を粗くすることを意味し、1枚のフレーム画像に対する空間的な検出精度を低下させる要因になる。一方、「時間的な間引き」とは、動画を構成する連続したフレーム画像のすべてを処理対象とせず、数枚おきに抽出したフレーム画像についてのみ探索を行うことを意味し、動画全体に対する時間的な検出精度を低下させる要因になる。いずれも、動画を解析して特定の物体を検出するという目的を達成する上では、物体の検出精度が低下することは否めない。
そこで本発明は、空間的な検出精度および時間的な検出精度の双方を維持しつつ、演算処理時間を短縮することが可能な物体検出システムおよび物体検出方法を提供することを目的とする。
(1) 本発明の第1の態様は、動画を解析して特定の物体を検出する物体検出システムにおいて、
解析対象となる動画を時系列で与えられる複数のフレーム画像として入力するフレーム画像入力部と、
入力されたフレーム画像を格納するフレーム画像格納部と、
フレーム画像格納部に格納されているフレーム画像を、それぞれ抽出画像として順次抽出するフレーム画像抽出部と、
配置平面上の所定位置に複数の窓枠図形を配置した窓枠プレーンを、個々の抽出画像に対応づけて設定する窓枠プレーン設定部と、
検出対象となる物体の画像を含むサンプル画像を入力するサンプル画像入力部と、
入力されたサンプル画像を格納するサンプル画像格納部と、
フレーム画像抽出部によって抽出された抽出画像上に、窓枠プレーン設定部によって設定された対応する窓枠プレーンを、所定の位置基準に基づいて重ね合わせ、抽出画像から個々の窓枠図形の内部の窓内画像を切り出す窓内画像切出部と、
窓内画像切出部によって切り出された窓内画像とサンプル画像格納部に格納されているサンプル画像との類否判定を行い、両者が類似していると判定された場合に、当該窓内画像の切り出し対象となったフレーム画像上の、当該窓内画像の位置に、検出対象となる物体が存在する旨の検出結果を出力する物体検出部と、
を設け、
窓枠プレーン設定部が、配置平面上で窓枠図形を移動させるシフト処理を行うことにより新たな窓枠プレーンを生成し、抽出画像によって窓枠図形の位置が異なる窓枠プレーンを設定するようにしたものである。
(2) 本発明の第2の態様は、上述した第1の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、サンプル画像格納部に格納されているサンプル画像と同一形状同一サイズの窓枠図形を配置した窓枠プレーンを設定するようにしたものである。
(3) 本発明の第3の態様は、上述した第2の態様に係る物体検出システムにおいて、
物体検出部が、窓内画像とサンプル画像とについて、互いに対応位置にある画素の画素値を比較する処理を行い、画素値の差が所定の基準以下である場合に両者が類似している旨の判定を行うようにしたものである。
(4) 本発明の第4の態様は、上述した第2の態様に係る物体検出システムにおいて、
物体検出部が、窓内画像およびサンプル画像を、それぞれ共通する分割態様で複数の部分領域に分割する処理を行い、個々の部分領域ごとにそれぞれ構成画素の平均画素値を求め、互いに対応位置にある部分領域についての平均画素値を比較する処理を行い、平均画素値の差が所定の基準以下である部分領域の割合が所定の基準以上である場合に両者が類似している旨の判定を行うようにしたものである。
(5) 本発明の第5の態様は、上述した第1〜第4の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、配置平面上に分散配置された複数のグリッド点を定義し、個々のグリッド点を基準とした所定位置に、それぞれ所定形状をもった所定サイズの図形を配置することにより窓枠図形の配置を行い、グリッド点を移動させることによりシフト処理を行うようにしたものである。
(6) 本発明の第6の態様は、上述した第5の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、二次元格子の格子点として個々のグリッド点を定義し、移動対象となる各グリッド点を同一シフト方向に同一シフト距離だけ移動させることによりシフト処理を行うようにしたものである。
(7) 本発明の第7の態様は、上述した第6の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、二次元XY座標系のX軸およびY軸に沿って配置されたグリッド点を定義し、X軸方向への単位移動距離としてサンプル画像のX軸方向画素ピッチhxを設定し、Y軸方向への単位移動距離としてサンプル画像のY軸方向画素ピッチhyを設定し、各グリッド点のX軸方向のシフト距離を画素ピッチhxの整数倍に設定し、各グリッド点のY軸方向のシフト距離を画素ピッチhyの整数倍に設定するようにしたものである。
(8) 本発明の第8の態様は、上述した第7の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、グリッド点のX軸方向ピッチを画素ピッチhxの整数Gx倍に設定し、グリッド点のY軸方向ピッチを画素ピッチhyの整数Gy倍に設定し、X軸方向に関するシフト範囲を画素ピッチhxの(Gx−1)倍、Y軸方向に関するシフト範囲を画素ピッチhyの(Gy−1)倍に設定して、各グリッド点を各シフト範囲内でシフトさせることによりシフト処理を行うようにしたものである。
(9) 本発明の第9の態様は、上述した第8の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、グリッド点をX軸方向に画素ピッチhxだけ移動させるX軸シフト動作と、グリッド点をY軸方向に画素ピッチhyだけ移動させるY軸シフト動作と、を行う機能を有し、更に、グリッド点を、X軸方向に関する基準位置からのX軸方向に関するシフト距離が画素ピッチhxの(Gx−1)倍に達するまでX軸シフト動作を繰り返し実行する水平方向の走査処理と、この水平方向の走査処理完了後に、グリッド点のX軸方向に関する位置をX軸方向に関する基準位置に戻し、Y軸シフト動作を行った上で再び水平方向の走査処理を行う処理を、Y軸方向に関する基準位置からのY軸方向に関するシフト距離が画素ピッチhyの(Gy−1)倍に達するまで繰り返し実行する垂直方向の走査処理と、を行う機能を有し、水平方向の走査処理および垂直方向の走査処理を繰り返し実行しながら、フレーム画像抽出部が新たな抽出画像を抽出するたびに、当該抽出画像に対応する新たな窓枠プレーンを設定する処理を行うようにしたものである。
(10) 本発明の第10の態様は、上述した第1〜第9の態様に係る物体検出システムにおいて、
フレーム画像抽出部が、フレーム画像格納部に格納されている連続したフレーム画像を時系列の順に従って、1枚ずつ連続的に、もしくは、所定のフレーム間隔をおいて周期的に抽出するようにしたものである。
(11) 本発明の第11の態様は、上述した第1〜第10の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、窓枠プレーンとともに固定プレーンを設定する機能を有し、物体検出部により、窓枠プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、当該特定の窓枠図形を窓枠プレーンから固定プレーンの対応位置に移動させる処理を行い、物体検出部により、固定プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、当該特定の窓枠図形を固定プレーンから窓枠プレーンの帰還位置に戻す処理を行い、窓枠プレーン上の窓枠図形についてはシフト処理を行うが、固定プレーン上の窓枠図形についてはシフト処理を行わないようにし、帰還位置を、固定プレーンへの移動が行われなかった場合に本来あるべき位置とし、
窓内画像切出部が、窓枠プレーンと固定プレーンとの双方を抽出画像上に重ね合わせ、窓枠プレーン上の窓枠図形および固定プレーン上の窓枠図形の内部の窓内画像を切り出すようにしたものである。
(12) 本発明の第12の態様は、上述した第1〜第10の態様に係る物体検出システムにおいて、
サンプル画像入力部が、入力したサンプル画像を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を用意し、
サンプル画像格納部が、複数m通りの変倍サンプル画像を格納し、
窓枠プレーン設定部が、窓枠図形を移動させるシフト処理を行う機能とともに、窓枠図形のサイズを拡大もしくは縮小する変倍処理を行う機能を有し、この変倍処理により、窓枠プレーン上の窓枠図形のサイズを複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、
窓内画像切出部が、それぞれ個々のサイズをもった窓枠図形の内部から、当該サイズをもった窓内画像を切り出し、
物体検出部が、切り出された窓内画像と同じサイズの変倍サンプル画像を用いた類否判定を行うようにしたものである。
(13) 本発明の第13の態様は、上述した第12の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、窓枠プレーン上の窓枠図形に対して、シフト処理と変倍処理との双方を行うことにより窓枠図形の位置およびサイズの双方が異なる新たな窓枠プレーンを生成し、個々の抽出画像に応じて窓枠図形の位置およびサイズの双方が異なる窓枠プレーンを設定するようにしたものである。
(14) 本発明の第14の態様は、上述した第13の態様に係る物体検出システムにおいて、
窓枠プレーン設定部が、窓枠プレーンとともに固定プレーンを設定する機能を有し、物体検出部により、窓枠プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、当該特定の窓枠図形を窓枠プレーンから固定プレーンの対応位置に移動させる処理を行い、物体検出部により、固定プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、当該特定の窓枠図形を固定プレーンから窓枠プレーンの帰還位置に戻す処理を行い、窓枠プレーン上の窓枠図形についてはシフト処理および変倍処理を行うが、固定プレーン上の窓枠図形についてはシフト処理も変倍処理も行わないようにし、帰還位置を、固定プレーンへの移動が行われなかった場合に本来あるべき位置とし、帰還位置に戻される窓枠図形に対しては、固定プレーンへの移動が行われなかった場合に本来あるべきサイズとなるようなサイズ修正を行い、
窓内画像切出部が、窓枠プレーンと固定プレーンとの双方を抽出画像上に重ね合わせ、窓枠プレーン上の窓枠図形および固定プレーン上の窓枠図形の内部の窓内画像を切り出すようにしたものである。
(15) 本発明の第15の態様は、上述した第1〜第14の態様に係る物体検出システムを、コンピュータにプログラムを組み込むことにより構成したものである。
(16) 本発明の第16の態様は、上述した第1〜第14の態様に係る物体検出システムに、動画撮影を行う監視カメラを加えることにより監視システムを構成し、
監視カメラが撮影した動画を構成する個々のフレーム画像をリアルタイムで物体検出システムに与え、
物体検出システムが、与えられたフレーム画像に基づく物体検出の処理をリアルタイムで実行し、
監視カメラの撮影視野内の物体をリアルタイムで検出できるようにしたものである。
(17) 本発明の第17の態様は、動画を解析して特定の物体を検出する物体検出方法において、
コンピュータが、検出対象となる物体の画像を含むサンプル画像を準備するサンプル画像準備段階と、
コンピュータが、解析対象となる動画を構成する1枚のフレーム画像を入力するフレーム画像入力段階と、
コンピュータが、所定の配置平面上に複数のグリッド点を定義するグリッド点定義段階と、
コンピュータが、配置平面上のグリッド点を基準とした個々の位置に、それぞれ所定形状をもった所定サイズの窓枠図形を配置する窓枠図形配置段階と、
コンピュータが、フレーム画像上に配置平面を重ね合わせ、フレーム画像から個々の窓枠図形の内部の窓内画像をそれぞれ切り出す窓内画像切出段階と、
コンピュータが、窓内画像とサンプル画像との類否判定を行い、両者が類似していると判定された場合に、フレーム画像の当該窓内画像の位置に、検出対象となる物体が存在する旨の検出結果を出力する物体判定段階と、
を行い、
フレーム画像入力段階から物体判定段階に至るまでの一巡処理を、解析対象となる動画を構成する個々のフレーム画像のそれぞれについて繰り返し実行し、
グリッド点定義段階で、過去の一巡処理で定義したグリッド点の全部もしくは一部を配置平面上で移動させるシフト処理を行うことにより、新たなグリッド点を定義する処理を行い、
窓枠図形配置段階で、新たに定義されたグリッド点に基づいて、新たな位置に窓枠図形の配置を行い、一巡処理を繰り返す際に、窓枠図形の配置が変化するようにしたものである。
(18) 本発明の第18の態様は、上述した第17の態様に係る物体検出方法において、
第1回目の一巡処理におけるグリッド点定義段階で、二次元格子の格子点として個々のグリッド点を定義し、
第2回目以降の一巡処理におけるグリッド点定義段階で、移動対象となる各グリッド点を同一シフト方向に同一シフト距離だけ移動させることによりシフト処理を行うようにしたものである。
(19) 本発明の第19の態様は、上述した第18の態様に係る物体検出方法において、
窓枠図形配置段階で、サンプル画像と同一形状同一サイズの窓枠図形を配置するようにしたものである。
(20) 本発明の第20の態様は、上述した第19の態様に係る物体検出方法において、
第k回目(但し、kは自然数)の一巡処理における物体判定段階で、特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該特定の窓枠図形の配置基準となったグリッド点を固定状態にして、もしくは、当該グリッド点が既に固定状態にある場合には引き続き固定状態を維持して、固定状態のグリッド点については移動を行わないようにし、
第k回目の一巡処理における物体判定段階で、固定状態にあるグリッド点を基準として配置された窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該固定状態にあるグリッド点の固定状態を解除して、当該グリッド点がもともと固定状態になかった場合に本来あるべき位置まで移動させるようにしたものである。
(21) 本発明の第21の態様は、上述した第19の態様に係る物体検出方法において、
サンプル画像準備段階で、基本となるサンプル画像を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を準備し、
窓枠図形配置段階で、窓枠図形のサイズを複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、一巡処理を繰り返す際に、窓枠図形の配置とともにサイズが変化するようにし、
物体判定段階で、窓内画像と同じサイズの変倍サンプル画像を用いた類否判定を行うようにしたものである。
(22) 本発明の第22の態様は、上述した第19の態様に係る物体検出方法において、
サンプル画像準備段階で、基本となるサンプル画像を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を準備し、
第k回目(但し、kは自然数)の一巡処理における物体判定段階で、特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該特定の窓枠図形の配置基準となったグリッド点を固定状態にして、もしくは、当該グリッド点が既に固定状態にある場合には引き続き固定状態を維持して、固定状態のグリッド点については移動を行わないようにし、
第k回目の一巡処理における物体判定段階で、固定状態にあるグリッド点を基準として配置された窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該固定状態にあるグリッド点の固定状態を解除して、当該グリッド点がもともと固定状態になかった場合に本来あるべき位置まで移動させ、
窓枠図形配置段階で、固定状態にあるグリッド点を基準として配置する窓枠図形については、当該グリッド点の固定直前における窓枠図形のサイズを固定サイズとし、固定状態にないグリッド点を基準として配置する窓枠図形については、そのサイズを複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、一巡処理を繰り返す際に、窓枠図形の配置とともにサイズが変化するようにし、
物体判定段階で、窓内画像と同じサイズの変倍サンプル画像を用いた類否判定を行うようにしたものである。
(23) 本発明の第23の態様は、上述した第17〜第22の態様に係る物体検出方法を、コンピュータにプログラムを組み込んで実行させるようにしたものである。
本発明に係る物体検出システムおよび物体検出方法によれば、複数の窓枠図形を配置した窓枠プレーンを、1枚のフレーム画像上に重ね合わせ、個々の窓枠図形の内部から切り出した窓内画像とサンプル画像との類否判定により物体検出が行われる。しかも、窓枠プレーン上の窓枠図形はシフト処理によって移動するため、フレーム画像ごとに、それぞれ重ね合わせられる窓枠図形の位置が変化する。このため、1枚のフレーム画像に関する空間的な検出精度を低く設定し、演算負担を軽減したとしても、時間軸が異なる複数枚のフレームについて、それぞれ空間的に異なる位置の窓内画像について類否判定が行われることになり、空間的な検出精度に対する補填が行われる。よって、空間的な検出精度および時間的な検出精度の双方を維持しつつ、演算処理時間を短縮することが可能になる。
また、窓枠プレーンとともに固定プレーンを設定する実施形態を採用すれば、合致判定がなされた窓枠図形が固定プレーンへと移され、シフト処理の対象から外されるため、1つのフレーム画像上で一度検出された物体が、後続するフレーム画像上でも引き続き検出されやすくなり、検出精度を向上させることができる。
更に、サンプル画像を拡大もしくは縮小する変倍処理を行って複数m通りのサンプル画像を用意する実施形態を採用すれば、入力したサンプル画像とは倍率が異なる物体が存在しても検出が可能になり、検出精度を向上させることができる。
動画を解析して特定の物体を検出する一般的なアルゴリズムを説明するための原理図である。 物体検出システムで実行される類否判定方法の一例を示す図である。 物体検出システムで実行される類否判定方法の別な一例を示す図である。 サンプル画像P(S)と窓内画像P(W)との比較による類否判定を行う様子を示す図である。 フレーム画像Fと窓枠図形Wとの位置関係を示す平面図である。 時系列で得られる複数のフレーム画像によって動画が構成されている例を示す図である。 個々のフレーム画像に対するリアルタイムでの処理プロセスを示すタイムチャートである。 本発明に係る物体検出システムにおいて、配置平面上にグリッド点Gを分散配置した状態を示す平面図である。 図8に示す各グリッド点Gを中心として、それぞれ窓枠図形W(太線)を配置することにより窓枠プレーンαを設定した状態を示す平面図である。 第1番目のフレーム画像F(1)に第1番目の窓枠プレーンα(1)を重ね合わせた状態を示す平面図である。 第2番目のフレーム画像F(2)に第2番目の窓枠プレーンα(2)を重ね合わせた状態を示す平面図である。 第Gx番目のフレーム画像F(Gx)に第Gx番目の窓枠プレーンα(Gx)を重ね合わせた状態を示す平面図である。 第(Gx+1)番目のフレーム画像F(Gx+1)に第(Gx+1)番目の窓枠プレーンα(Gx+1)を重ね合わせた状態を示す平面図である。 第(Gx+2)番目のフレーム画像F(Gx+2)に第(Gx+2)番目の窓枠プレーンα(Gx+2)を重ね合わせた状態を示す平面図である。 第2Gx番目のフレーム画像F(2Gx)に第2Gx番目の窓枠プレーンα(2Gx)を重ね合わせた状態を示す平面図である。 第(2Gx+1)番目のフレーム画像F(2Gx+1)に第(2Gx+1)番目の窓枠プレーンα(2Gx+1)を重ね合わせた状態を示す平面図である。 第(Gy・Gx)番目のフレーム画像F(Gy・Gx)に第(Gy・Gx)番目の窓枠プレーンα(Gy・Gx)を重ね合わせた状態を示す平面図である。 第1番目のフレーム画像F(1)から第(Gy・Gx)番目のフレーム画像F(Gy・Gx)に至る個々のフレーム画像について、窓枠図形W(2,2)が重ね合わせられる位置を示す平面図である。 窓枠図形W(2,2)のシフト処理によるフレーム画像F上の走査領域を示す平面図である。 窓枠図形W(2,2)のシフト処理によるフレーム画像F上の走査領域を示す別な平面図である。 窓枠図形W(2,2),W(2,3),W(3,2)がそれぞれ担当する走査領域を示す平面図である。 本発明の基本的実施形態に係る物体検出システムの基本構成を示すブロック図である。 本発明の基本的実施形態に係る物体検出方法の基本手順を示すブロック図である。 本発明の固定プレーンを用いる実施形態の基本原理を示す平面図である。 本発明の固定プレーンを用いる実施形態の基本原理を示す斜視図である。 本発明の固定プレーンを用いる実施形態において、フレーム画像Fに窓枠プレーンαおよび固定プレーンβを重ね合わせた状態を示す平面図である。 サンプル画像の物体Mとは異なる倍率の物体が含まれているフレーム画像についての類否判定の一例を示す図である。 サンプル画像に対する変倍処理を行う実施形態の基本原理を示す平面図である。 図8に示す各グリッド点Gを中心として、それぞれ50%に変倍した窓枠図形W50(太線)を配置することにより窓枠プレーンα(50%)を設定した状態を示す平面図である。 図8に示す各グリッド点Gを中心として、それぞれ100%に変倍した窓枠図形W100(太線)を配置することにより窓枠プレーンα(100%)を設定した状態を示す平面図である。 図8に示す各グリッド点Gを中心として、それぞれ200%に変倍した窓枠図形W200(太線)を配置することにより窓枠プレーンα(200%)を設定した状態を示す平面図である。 本発明の固定プレーンを用いるとともに変倍処理を行う実施形態において、フレーム画像Fに窓枠プレーンαおよび固定プレーンβを重ね合わせた状態を示す平面図である。 本発明に係る監視システムの構成例を示す側面図である。 図33に示す監視システムに適したグリッド点の定義例を示す図である。
以下、本発明を図示する実施形態に基づいて説明する。
<<< §1. 特定物体の検出アルゴリズム >>>
ここでは、まず、動画を解析して特定の物体を検出するための一般的なアルゴリズムを説明する。ここで述べるアルゴリズムは、テンプレートマッチングと呼ばれる手法の1つであり、個々のフレーム画像上で部分的な領域を走査しながら、予めテンプレートとして用意されているサンプル画像に類似した領域を探し出す、という原理に基づく探索アルゴリズムである。
図1は、このような探索アルゴリズムを説明するための原理図である。図1(a) は、検出対象となる物体Mの画像を含むサンプル画像P(S)の平面図である。ここで、物体Mは、静止物体である必要はなく、車両や船舶などの移動物体であってもかまわないし、工業製品のみならず農作物や動植物であってもかまわない。あるいは、人間やその一部(たとえば、顔の部分)を物体Mとしてもかまわない。ただ、ここでは、便宜上、図示のようなバドミントンの羽根状の物体を、検出対象となる物体Mとした実施例について以下の説明を行うことにする。
サンプル画像P(S)は、検出対象となる物体Mを含んだ画像であれば、どのような画像であってもかまわないが、検出精度を高める上では、実際の動画画像上に現れると予想される物体Mの画像になるべく近似した、同程度のサイズの画像を用意するのが好ましい。
一方、図1(b) 〜(d) は、解析対象となる動画を構成する1枚のフレーム画像Fに対する探索プロセスを示す平面図である。図1(b) 〜(d) に示されているフレーム画像Fは、同一の画像であり、動画の1コマ分の静止画像ということになる。ここでは、図示のとおり、フレーム画像Fの左下位置に物体Mが写っているものとしよう。物体Mの探索は、このフレーム画像F上の所定位置に窓枠図形Wを配置し、その内部から窓内画像P(W)を切り出してサンプル画像P(S)と比較することにより行われる。窓枠図形Wの位置を動かしながら、比較対象となる両画像についての類否判定を行い、両者が類似していると判定された場合には、当該フレーム画像F上の、当該窓内画像Wの位置に、検出対象となる物体Mが存在するとの認識がなされる。
図1に示す例の場合、まず、図1(b) に示すように、フレーム画像Fの左上隅の位置に窓枠図形W1(図では太線の矩形で示す)を配置している。ここで、窓枠図形W1は、サンプル画像P(S)と同一形状同一サイズ(画素配列が同一)の図形であり、その内部から切り出される窓内画像P(W1)は、サンプル画像P(S)と同一サイズの画像(画素配列が同一の画像)になる。そこで、窓枠図形W1から切り出された窓内画像P(W1)とサンプル画像P(S)との類否判定が行われる。図において「P(S):P(W1)」なる記号が付された白矢印は、両画像の類否判定処理を示している。
図1(b) に示されている点Q1は、窓枠基準点であり、窓枠図形W1の中心に位置する点である。別言すれば、窓枠図形W1は、この窓枠基準点Q1を基準とする特定位置、すなわち、この例の場合は窓枠基準点Q1が中心点となるような特定位置に配置されていることになる。
図1(c) は、フレーム画像F上で窓枠基準点Qを走査することにより、窓枠図形Wを走査する様子を示す平面図である。この図には、窓枠基準点の初期位置Q1をZ字状に移動させながら、点Q2の位置まで走査した状態(点Q1〜点Q2間の窓枠基準点の位置は図示省略)が示されている。窓枠基準点Q1の位置には窓枠図形W1(太い破線)が配置されていたが、窓枠基準点Q2の位置には窓枠図形W2(太い実線)が配置されている。この窓枠基準点Q2の位置では、「P(S):P(W2)」なる記号が付された白矢印で示すとおり、窓枠図形W2から切り出された窓内画像P(W2)とサンプル画像P(S)との類否判定が行われる。
図1(d) には、フレーム画像F上で窓枠基準点QのZ字状走査を更に続け、点Q3の位置まで走査した状態が示されている。この窓枠基準点Q3の位置では、「P(S):P(W3)」なる記号が付された白矢印で示すとおり、窓枠図形W3から切り出された窓内画像P(W3)とサンプル画像P(S)との類否判定が行われる。
要するに、サーチライトのスポットで捜索するように、同一の窓枠図形Wをフレーム画像F上で移動させてゆき、個々の位置において、窓枠図形Wの内部から切り出した窓内画像P(W)をサンプル画像P(S)と比較する探索処理が繰り返し行われる。そして、両画像が類似すると判定された位置に、物体Mが存在するとの認定がなされる。
図示の例の場合、フレーム画像Fの左下位置に物体Mが写っているため、図1(d) に示す点Q3の位置まで走査した段階で、物体Mが発見されることになる。すなわち、図1(b) に示す窓内画像P(W1)とサンプル画像P(S)との類否判定では非類似と判定され、図1(c) に示す窓内画像P(W2)とサンプル画像P(S)との類否判定でも非類似と判定され、図1(d) に示す窓内画像P(W3)とサンプル画像P(S)との類否判定で、はじめて類似と判定されることになる。その結果、窓枠基準点Q3の位置(すなわち、窓枠図形W3の位置)に物体Mが検出される。
図2は、サンプル画像P(S)と窓内画像P(W)との類否判定方法の一例を示す図である。この判定方法の場合、図2(a) の平面図に示すとおり、互いに対応位置にある画素の画素値を比較する処理を行い、画素値の差が所定の基準以下である場合に両者が類似している旨の判定がなされる。
図2(a) には、サンプル画像P(S)の第i番目の画素Hs(i)の画素値と、窓内画像P(W)の第i番目の画素Hw(i)の画素値と、を比較する例が示されている。前述のとおり、サンプル画像P(S)と窓内画像P(W)とは同一サイズであり、同一の画素配列を有している。したがって、すべての画素は1対1に対応するので、それぞれ対応する画素同士で画素値の比較を行えばよい。カラー画像の場合は、3原色の個々の画素値ごとに差を求める処理を行い、差の絶対値の総和が所定の基準以下である場合に類似している旨の判定を行えばよい。
図2(b) には、カラー画像についての具体的な判定処理に用いる式の一例が示されている。この例の場合、まず、図(b1)に示すように、サンプル画像P(S)上の第i番目の画素Hs(i)の3原色RGBの画素値をそれぞれRs(i),Gs(i),Bs(i)と定義し、窓内画像P(W)上の第i番目の画素Hw(i)の3原色RGBの画素値をそれぞれRw(i),Gw(i),Bw(i)と定義する。
そして、図(b2)に示すように、相互に対応する第i番目の画素Hs(i)とHw(i)とについて、それぞれ各原色ごとに画素値の差の絶対値ΔR(i),ΔG(i),ΔB(i)を計算する。すなわち、ΔR(i)=|Rs(i)−Rw(i)|、ΔG(i)=|Gs(i)−Gw(i)|、ΔB(i)=|Bs(i)−Bw(i)|なる演算が行われる。
最後に、図(b3)に示す合致判定の条件式が満足されているか否かが調べられる。すなわち、Σi=1〜n(ΔR(i)+ΔG(i)+ΔB(i))≦Dthなる条件式を満足するか否かが確認される。ここで、nは、各画像内の総画素数であり、Dthは予め設定された類否判定のための所定の閾値である。
この図2に示す類否判定方法は、たとえば、ベルトコンベア上を特定の向きで流れてくる特定の工業製品を物体Mとして検出するような用途に最適である。ベルトコンベアの上方に定点カメラを設置して動画撮影を行えば、物体Mのフレーム画像F上の大きさはほぼ一定になるため、高精度での検出が可能になる。
一方、図3は、サンプル画像P(S)と窓内画像P(W)との類否判定方法の別な一例を示す図である。この判定方法の場合、図3(a) の平面図に示すとおり、各画像が共通する分割態様で複数の部分領域に分割される(図示の例では、9分割されている)。続いて、個々の部分領域ごとにそれぞれ構成画素の平均画素値を求め、互いに対応位置にある部分領域についての平均画素値を比較する処理が行われる。そして、平均画素値の差が所定の基準以下である部分領域の割合が所定の基準以上である場合に両者が類似している旨の判定がなされる。
図3(a) には、サンプル画像P(S)の第i番目の領域As(i)の平均画素値と、窓内画像P(W)の第i番目の領域Aw(i)の平均画素値と、を比較する例が示されている。この例では、各画像がそれぞれ9分割されているため、それぞれ対応する9組の部分領域対について平均画素値の差が求められる。カラー画像の場合は、3原色の個々の平均画素値ごとに差を求める処理を行い、差の絶対値の総和が所定の基準以下である場合に、当該部分領域同士が類似していると判定される。こうして、互いに類似していると判定された部分領域の割合が、所定の基準以上である場合に、両画像が類似しているとの判定がなされることになる。
図3(b) には、カラー画像についての具体的な判定処理に用いる式の一例が示されている。この例の場合、まず、図(b1)に示すように、サンプル画像P(S)上の第i番目の領域As(i)内の各画素の3原色の平均画素値Rs′(i),Gs′(i),Bs′(i)が求められる。同様に、窓内画像P(W)上の第i番目の領域Aw(i)内の各画素の3原色の平均画素値Rw′(i),Gw′(i),Bw′(i)が求められる。
そして、図(b2)に示すように、相互に対応する第i番目の領域As(i)とAw(i)とについて、それぞれ各原色ごとに平均画素値の差の絶対値ΔR′(i),ΔG′(i),ΔB′(i)を計算する。すなわち、ΔR′(i)=|Rs′(i)−Rw′(i)|、ΔG′(i)=|Gs′(i)−Gw′(i)|、ΔB′(i)=|Bs′(i)−Bw′(i)|なる演算が行われる。
続いて、図(b3)に示すように、個々の領域ごとに、部分合致判定式が満足されているか否かが調べられる。すなわち、各部分領域について、ΔR′(i)+ΔG′(i)+ΔB′(i)≦Dth1なる条件式を満足するか否かが確認される。ここで、Dth1は、予め設定された領域ごとの平均画素値の差に関する閾値である。この部分合致判定式が満足されていれば、当該部分領域は、部分合致した領域と認識されることになる。この部分合致した領域は、相互に「色合いが似ている」との判断がなされた領域ということになる。
最後に、図(b4)に示す合致判定の条件式が満足されているか否かが調べられる。すなわち、(部分合致した領域の数)/(領域の総数)≧Dth2なる条件式を満足するか否かが確認される。ここで、Dth2は、予め設定された部分合致した領域数に関する閾値である。図3(a) に示す例の場合、領域の総数は9であるので、たとえば、Dth2=80%に設定した場合、8以上の部分領域について部分合致が得られた場合に、最終的に、サンプル画像P(S)と窓内画像P(W)とは類似している、との判定がなされることになる。
この図3に示す類否判定方法は、色彩分布に特徴がある物体Mを検出する用途に最適である。たとえば、「茶色の鉢に植えられ、緑色の葉をもち、最上部に赤い花が咲いている植物」といった物品を検出する場合には、高精度での検出が可能になる。
以上、サンプル画像P(S)と窓内画像P(W)との類否判定方法を2つの例について説明したが、もちろん、この他にも様々な類否判定方法が知られており、後述する本発明の類否判定処理では、上述した2例の他にも、様々な類否判定方法を採用することが可能である。
なお、図2および図3では、サンプル画像P(S)と窓内画像P(W)とが同一形状同一サイズの画像である場合の類否判定方法を述べたが、両者は必ずしも同一形状である必要はなく、同一サイズである必要もない。別言すれば、窓内画像P(W)を切り出すために用いる窓枠図形Wは、必ずしも、サンプル画像P(S)と同一形状同一サイズの図形である必要はない。サンプル画像P(S)と窓内画像P(W)との形状やサイズが異なっても、画像としての様々な特徴量(たとえば、空間的な濃度勾配)を抽出し、抽出した特徴量の近似性に基づいて、両画像の類否判定を行うことが可能である。このような画像の特徴量抽出方法としては、様々な方法が公知であるため、ここでは詳しい説明は省略する。
また、図1では、単一のサンプル画像P(S)を用いて比較を行う例を述べたが、サンプル画像P(S)は複数用いるようにしてもかまわない。たとえば、3つの物品M1,M2,M3を検出する必要がある場合には、3種類のサンプル画像P(S1),P(S2),P(S3)を用意しておき、切り出した窓内画像P(W)を各サンプル画像と比較する処理を行えばよい。
このように、本発明で用いる物体検出アルゴリズムでは、必ずしも、サンプル画像P(S)と窓内画像P(W)とを同一形状同一サイズの画像とする必要はなく、また、用意するサンプル画像P(S)は1つだけに限定されるものではない。ただ、以下の実施例では、説明の便宜上、サンプル画像P(S)と窓内画像P(W)とを同一形状同一サイズの画像とし、用意するサンプル画像P(S)を1つだけとする例を述べることにする。
<<< §2. 演算処理時間に関する問題点とその対応 >>>
さて、§1では、動画を解析して特定の物体を検出するための一般的なアルゴリズムを説明し、図2および図3には、具体的な類否判定処理の演算例を示した。近年、監視カメラなどで撮影される画像の解像度は向上の一途をたどっており、1枚のフレーム画像に含まれる画素数も膨大なものになってきている。このため、§1で述べた類否判定処理に必要な演算量も膨大になり、負担の大きなものになってきている。したがって、演算処理能力の低いCPUを利用したシステムでは、リアルタイム処理を行うことが困難になってきていることは、既に述べたとおりである。
そこで、従来は、処理能力上の問題から演算処理時間を短縮する必要がある場合には、「空間的な間引き」か「時間的な間引き」を行うことにより対応を行っている。ここで、「空間的な間引き」とは、図1に示す例において、窓枠図形Wの走査ピッチを粗くすることを意味する。
たとえば、図1(c) には、窓枠図形WをZ字状に移動させながら、窓枠図形W1〜W2へと走査する例が示されている。実際には、窓枠図形W1とW2との間にも、多数の窓枠図形Wが存在し、個々の窓枠図形Wからそれぞれ窓内画像P(W)が切り出され、サンプル画像P(S)との比較が行われることになる。
ここで、1枚のフレーム画像F上での窓枠基準点Qの走査ピッチ(すなわち、窓枠図形Wの走査ピッチ)を粗くすると、1枚のフレーム画像Fから切り出される窓内画像P(W)の数は少なくなるので、サンプル画像P(S)との比較を行う回数が減って演算負担は軽減され、1枚のフレーム画像Fに関する処理時間を短縮することが可能になる。しかしながら、このような「空間的な間引き」を行うと、物体Mの空間的な検出精度の低下を招くことになる。
たとえば、図4に示すように、フレーム画像F上で窓枠基準点Qを走査する際に、基準点Q4の次の走査位置として基準点Q5を設定した場合を考えてみよう。この例の場合、基準点Q4,Q5の横方向の距離は、窓枠図形Wの横幅に等しく設定されている。別言すれば、窓枠図形Wがその横幅のピッチで横方向に走査されることになる。このため、基準点Q4の位置に配置された窓枠図形W4の右端は、基準点Q5の位置に配置された窓枠図形W5の左端に重なることになり、隣接配置される窓枠図形W4,W5は相互に全く重なり合わない図形になる。
このような粗いピッチで走査を行うと、物体Mの検出精度はかなり低下せざるを得ない。すなわち、図4に示す例の場合、フレーム画像F上に物体Mが含まれているにもかかわらず、窓枠図形W4によって切り出された窓内画像P(W4)をサンプル画像P(S)と比較する類否判定を行うと非類似との判定がなされ、続いて、窓枠図形W5によって切り出された窓内画像P(W5)をサンプル画像P(S)と比較する類否判定を行っても非類似との判定がなされてしまう。これは、窓内画像P(W4)や窓内画像P(W5)内に物体Mの画像の一部が含まれていたとしても、位置にずれが生じているため、図2や図3に示す類否判定方法では、非類似と判定されてしまうためである。
図1(d) に示す例において、窓枠図形W3によって切り出された窓内画像P(W3)がサンプル画像P(S)と類似していると判定され、物体Mの検出が行われたのは、窓枠図形W3が物体Mの検出に適した位置に配置されていたからに他ならない。したがって、窓枠図形Wの走査ピッチをより細かく設定し、図4に示す窓枠基準点Q4とQ5との間に、図1(d) に示すような走査基準点Q3が位置するようにすれば、物体Mの検出が可能になる。
このような観点から、窓枠図形Wの縦横の走査ピッチは、1画素単位とするのが理想的であることがわかる。図5は、フレーム画像Fと窓枠図形Wとの位置関係を示す平面図である。図に格子状に並べられた小さな正方形は、フレーム画像Fを構成する個々の画素Hである。ここでは、図示のとおり、画素Hの横寸法をhxとし、縦寸法をhyとする。別言すれば、フレーム画像Fは、横方向ピッチhx、縦方向ピッチhyで並べられた多数の画素の集合体ということになる。
もっとも、コンピュータ上で取り扱われるフレーム画像Fは、画素値の配列を示すデジタルデータであるため、寸法hx,hyは、物理的な寸法値としての意味をもつ量ではない。そこで本願では、寸法hxを横方向の長さの基本単位として用い、寸法hyを縦方向の長さの基本単位として用いることにする。たとえば、図に太線で示す矩形は、窓枠図形W1を示すものであるが、当該窓枠図形W1は、横方向寸法が14、縦方向寸法が10の矩形ということになる。ここで、横方向寸法の数値「14」は14画素分の横幅であることを示し、概念的には、14×hxなる長さを示している。同様に、縦方向寸法の数値「10」は10画素分の縦幅であることを示し、概念的には、10×hyなる長さを示している。
また、ここでは、フレーム画像Fを構成する個々の画素Hを、その画素配列上の行および列を示す数字を付記して示すことにし、第i行第j列目の画素をH(i,j)のように示すことにする。たとえば、図示されている画素H(1,1)は1行1列目の画素、画素H(1,2)は1行2列目の画素、画素H(2,1)は2行1列目の画素を示している。したがって、図示の窓枠図形W1は、その左上隅の画素が画素H(1,1)であるような矩形(この例の場合、横が14画素分の長さ、縦が10画素分の長さをもつ矩形)ということになる。
窓枠図形Wの縦横の走査ピッチを、理想的な1画素単位とする場合、まず、図5に太い実線の矩形で示す窓枠図形W1をフレーム画像F上に配置し、窓内画像P(W1)を切り出し、サンプル画像P(S)との比較を行うことになる。続いて、この窓枠図形W1を1画素分だけ右にシフトし、図5に太い破線の矩形で示す窓枠図形W2をフレーム画像F上に配置し、窓内画像P(W2)を切り出し、サンプル画像P(S)との比較を行うことになる。同様に、窓枠図形Wを右方向に順次1画素分ずつシフトさせる走査を行い、フレーム画像Fの右端に到達したら、続いて、2行目の画素H(2,1)を左上隅の画素とする窓枠図形Wを配置すればよい。図1(c) に示すZ字状の軌跡は、このような走査が行われることを示している。
処理能力上の問題から演算処理時間を短縮するために「空間的な間引き」を行うのであれば、このような窓枠図形Wの縦横の走査ピッチを、より粗く設定すればよい。たとえば、縦横の走査ピッチを2画素単位とすれば、配置される窓枠図形の右上隅の画素は、H(1,1),H(1,3),H(1,5),... ,H(3,1),H(3,3),H(3,5),... というようになり、総演算量(すなわち、総演算時間)は1/4に低減される。しかしながら、「空間的な間引き」の量を大きくすればするほど、1枚のフレーム画像に対する空間的な検出精度は低下することになる。たとえば、横方向の走査ピッチを窓枠図形Wの横幅(図5に示す例の場合は14)に設定すると、図4の例のような状態が生じ、物体Mの検出に失敗する。
一方、「時間的な間引き」とは、動画を構成する連続したフレーム画像のすべてを処理対象とせず、数枚おきに抽出したフレーム画像についてのみ探索を行うことを意味する。図6は、時系列で得られる複数のフレーム画像F(1),F(2),F(3),... ,F(k)によって動画が構成されている例を示す図である。たとえば30フレーム/秒のフレームレートをもつ動画の場合、1/30秒ごとに新たなフレーム画像が提供されることになる。
もちろん、本来であれば、この連続したフレーム画像のすべてについて、図1に示す探索処理を行うべきである。しかしながら、演算処理時間を短縮するためには、「時間的な間引き」を行うこともやむを得ない。特に、リアルタイム処理が必要とされる監視システムなどでは、1/30秒ごとに新たなフレーム画像が提供されたとしても、1枚のフレーム画像Fについての処理時間が1/30秒以下に抑えられない限り、「時間的な間引き」を行わざるを得ない。
図7は、個々のフレーム画像に対するリアルタイムでの処理プロセスを示すタイムチャートであり、図の横軸は時間軸を示す。図7(a) は、時系列でフレーム画像F(1),F(2),F(3)が順次提供されるタイミングを示している。すなわち、時刻t1において第1番目のフレーム画像F(1)が提供され、時刻t2において第2番目のフレーム画像F(2)が提供され、... 以下同様である。上例の場合、t1〜t2の時間は1/30秒ということになる。
図7(b) は、探索処理が行われる理想的なタイミングを示している。ここで、E(1)はフレーム画像F(1)について図1に例示するような探索アルゴリズムの処理プロセス、E(2)はフレーム画像F(2)についての同様の処理プロセス、... 以下同様である。図示の例では、各処理プロセスE(1),E(2),... の後に星印で示す予備時間が残されている。このような予備時間が確保されるようにすれば、個々のフレーム画像について、物体検出の探索処理だけでなく、他の様々な処理をリアルタイムで実行することができる。したがって、理想的には、この図7(b) に示すようなタイミングで各処理プロセスE(1),E(2),... が実行されるのが好ましい。
しかしながら、演算処理能力が低いため、1/30秒の時間では探索処理のプロセスが完了しない場合には、図7(c) に示す例のように、1つのフレーム画像についての処理を実行中に、監視カメラから後続する別なフレーム画像の提供が行われてしまうことになる。図示の例の場合、処理プロセスEE(1)は、時刻t1において提供された第1番目のフレーム画像F(1)についての探索処理のプロセスであるが、プロセスが完了した時点は時刻t4を過ぎており、既に第4番目のフレーム画像F(4)の提供が行われてしまっている。したがって、処理プロセスEE(1)の次には、第5番目のフレーム画像F(5)についての探索処理のプロセスEE(5)を行わざるを得ない。その結果、フレーム画像F(2)〜F(4)についての探索処理は省かれ、「時間的な間引き」が行われることになる。
検出対象となる物体Mが動体である場合、個々のフレーム画像ごとに、物体Mが写っている位置は異なる。たとえば、図6に示す例の場合、第1番目のフレーム画像F(1)上の物体Mの位置と第k番目のフレーム画像F(k)上の物体Mの位置とは異なっている。このため、物体Mの移動速度が速いと、「時間的な間引き」により物体Mの検出に失敗する可能性がある。このように、「時間的な間引き」を行うと、動画全体に対する時間的な検出精度を低下させる要因になる。
このように、処理能力上の問題から演算処理時間を短縮する必要がある場合、「空間的な間引き」もしくは「時間的な間引き」という対応策を採ることが可能であるが、いずれの対応策を採っても、動画を解析して特定の物体を検出するという目的を達成する上では、物体の検出精度が低下することは否めない。
本発明は、このような問題の解決を目的とするものであり、空間的な検出精度および時間的な検出精度の双方を維持しつつ、演算処理時間を短縮することが可能な物体検出システムおよび物体検出方法を提供するものである。
<<< §3. 本発明に係る窓枠図形とそのシフト処理 >>>
続いて、本発明の特徴となる窓枠図形とそのシフト処理の概念を説明する。まず、図8に示すように、X軸を横軸、Y軸を縦軸にとった二次元XY座標系上に、窓枠図形Wを配置するための配置平面を定義し、この配置平面上にグリッド点Gを分散配置する。別言すれば、グリッド点Gは、XY平面上に分散して配置するように定義された点ということになる。
ここに示す実施例の場合、X軸方向ピッチGx、Y軸方向ピッチGyをもつ二次元格子の各格子点の位置にグリッド点Gを配置している。前述したとおり、長さの基本単位は、画素ピッチhx,hyであるので、図示の各グリッド点Gは、横方向に画素ピッチhxのGx倍の間隔をおいて並び、縦方向に画素ピッチhyのGy倍の間隔をおいて並んだ点ということになる。ここでは、説明の便宜上、第i行第j列目に並んでいるグリッド点をG(i,j)と呼ぶことにする。
続いて、図9に示すように、個々のグリッド点Gを基準とした所定位置に、それぞれ所定形状をもった所定サイズの図形配置する。これらの図形は、§1で述べた探索アルゴリズムにおける窓枠図形Wに対応する。§1で述べたとおり、ここに示す実施例では、この窓枠図形Wとして、サンプル画像P(S)と同一形状同一サイズの図形を用意することにする。ここでは、サンプル画像P(S)として矩形の画像を用意しているため、各窓枠図形Wも図に太線で示すとおり矩形となり、その中心位置が各グリッド点Gに一致するように配置される。もっとも、グリッド点Gと窓枠図形Wとの相対位置は任意に設定することが可能であり、たとえば、窓枠図形Wの左上隅点がグリッド点G上にくるように配置してもかまわない。
ここでは、グリッド点G(i,j)を中心位置として配置された窓枠図形を窓枠図形W(i,j)と呼ぶことにする。また、窓枠図形W(i,j)の横幅をSx、縦幅をSyとする。長さの基本単位は、画素ピッチhx,hyであるので、1つの窓枠図形W(i,j)から切り出される窓内画像P(W(i,j))は、横方向にSx個、縦方向にSy個の画素を並べた画素配列によって構成されることになる。
なお、上述したとおり、窓枠図形W(i,j)の横幅Sxおよび縦幅Syは、サンプル画像P(S)の横幅および縦幅に一致するように設定されるので、サンプル画像P(S)が比較的大きな画像であり、Sx>Gx、Sy>Gyとなるような場合は、隣接する窓枠図形Wが相互に重なり合うことになる。図9に示す例は、Sx<Gx、Sy<Gyとなる例であるため、隣接する窓枠図形Wが互いに重なり合うことはなく、両者間に若干の空隙が確保されている。
本願では、図9に示すように、配置平面上の所定位置に複数の窓枠図形W(i,j)を配置したものを窓枠プレーンαと呼ぶことにする。後述するように、窓枠プレーンα上に配置された窓枠図形W(i,j)に対しては、配置平面(XY平面)上で移動させるシフト処理が行われる。ここでは、シフト処理により窓枠図形W(i,j)の配置がそれぞれ異なることになった複数の窓枠プレーンαを相互に区別するため、窓枠プレーンα(1),α(2),α(3),... のように番号を付して呼ぶことにする。
図10は、図6に示す第1番目のフレーム画像F(1)に第1番目の窓枠プレーンα(1)を重ね合わせた状態を示す平面図である。図10に示す窓枠プレーンα(1)は、図9に示す窓枠プレーンαと同じものであり、図にハッチングを施して示す矩形領域が、フレーム画像F(1)に相当する。説明の便宜上、フレーム画像F(1)はその輪郭だけを示し、内部にハッチングを施すことにより、画像(物体Mなど)の描画は省略する。
上述したシフト処理の説明を行う上では、フレーム画像F(1)に対する各窓枠図形W(i,j)の相対位置を明確にすることが非常に重要である。そこで、図に×印で示すとおり、フレーム画像F(1)の左上隅点に基準点Cを定義し、この基準点Cに対する各窓枠図形W(i,j)の相対位置に着目することにする。ここでは、特に、第2行第2列目の窓枠図形W(2,2)を太線で示すことにし、この窓枠図形W(2,2)と基準点Cとの相対位置に着目しながら、シフト処理の説明を行うことにする。このため、図10〜図17において、窓枠図形W(2,2)だけが太線で示されているが、これはシフト処理の説明の便宜のためであり、窓枠図形W(2,2)についてのみ特殊な処理が行われるわけではない。
ここで行うシフト処理は、図1(c) に示す走査処理の役割を担うものであり、フレーム画像F上において、窓枠図形WをZ字状に走査することを目的としている。したがって、シフト処理による各窓枠図形W(i,j)の移動方向は、図1(c) に示すZ字状の走査方向に準じたものになる。実際には、1つの窓枠図形Wによってフレーム画像Fの全領域を走査する必要はないので、後述するように、縦横の実際の走査距離は、図1(c) に示す走査距離に比べて小さい。
シフト処理が、図1(c) に示すZ字状の走査に準じたものであることを念頭におけば、図9に示す窓枠プレーンαを第1番目の窓枠プレーンα(1)として、第2番目の窓枠プレーンα(2)を得るには、第1番目の窓枠プレーンα(1)上の各窓枠図形W(i,j)のすべてを、配置平面(XY平面)上で図の右方向(X軸正方向)に所定のシフト距離だけ移動させればよいことが理解できよう。図11は、このようにして得られた第2番目の窓枠プレーンα(2)を第2番目のフレーム画像F(2)上に重ねた状態を示す平面図である。
図10では、第1番目のフレーム画像F(1)上に第1番目の窓枠プレーンα(1)が重ねられていたが、図11では、第2番目のフレーム画像F(2)上に第2番目の窓枠プレーンα(2)が重ねられている。このように、フレーム画像Fが新しくなると、そこに重ねる窓枠プレーンαも新しくなり、しかも新窓枠プレーンα上では、旧窓枠プレーンα上の各窓枠図形W(i,j)に対するシフト処理が行われている点がここで示す実施形態の重要な特徴である。
ここで、フレーム画像Fは、常に、XY座標系上の定位置に配置するものとする。別言すれば、処理対象となるフレーム画像がF(1),F(2),F(3),... と更新されても、その配置は常に固定されていることになる。一方、これらに重ねられる窓枠プレーンα(1),α(2),α(3),... 上では、上記シフト処理によって、各窓枠図形W(i,j)のXY座標系上での位置がずれてゆくことになる。その結果、フレーム画像に対する各窓枠図形W(i,j)の相対位置も、フレーム画像がF(1),F(2),F(3),... と更新されるにつれて、少しずつずれてゆくことになる。
このような相対位置のずれは、図に太線で示す窓枠図形W(2,2)の位置と図に×印で示す基準点C(フレーム画像Fの左上隅点)の位置とを対比すれば、容易に理解できよう。すなわち、図10に示すように、第1番目のフレーム画像F(1)と第1番目の窓枠プレーンα(1)との相対位置関係は、前者の基準点Cの位置に、後者の窓枠図形W(2,2)の左上隅点の位置が重なるような関係になっているのに対して、図11に示すように、第2番目のフレーム画像F(2)と第2番目の窓枠プレーンα(2)との相対位置関係は、前者の基準点Cの位置よりも、後者の窓枠図形W(2,2)の左上隅点の位置が、右方向にシフト距離dxだけ隔たっている。
これは、第2番目の窓枠プレーンα(2)上の各窓枠図形W(i,j)が、第1番目の窓枠プレーンα(1)上の各窓枠図形W(i,j)の位置よりも、図の右方向(X軸正方向)にシフト距離dxだけ移動していることを意味する。シフト距離dxとしては、任意の距離を設定することが可能であるが、ここでは、dx=1に設定している。前述したとおり、長さの基本単位は、画素ピッチhx,hyであるので、dx=1とは、シフト距離dxを画素Hの横方向ピッチhxとする設定を意味する。したがって、たとえば、太線で示す窓枠図形W(2,2)に着目すれば、図10に示す窓枠プレーンα(1)に比べて、図11に示す窓枠プレーンα(2)では、X軸方向に1画素分だけずれていることになり、ちょうど、図5に示す窓枠図形W1とW2の関係になっている。
同様に、第3番目のフレーム画像F(3)に重ねられる第3番目の窓枠プレーンα(3)では、各窓枠図形W(i,j)が、第2番目の窓枠プレーンα(2)上の各窓枠図形W(i,j)の位置よりも、更に図の右方向(X軸正方向)に1画素分の距離だけ右に移動したものになり、第1番目の窓枠プレーンα(1)と比べると、X軸方向のシフト距離はdx=2になる。同様に、第4番目のフレーム画像F(4)に重ねられる第4番目の窓枠プレーンα(4)では、各窓枠図形W(i,j)が、更に1画素分の距離だけ右に移動したものになり、第1番目の窓枠プレーンα(1)と比べると、X軸方向のシフト距離はdx=3になる。
図12は、第Gx番目のフレーム画像F(Gx)に第Gx番目の窓枠プレーンα(Gx)を重ね合わせた状態を示す平面図である。ここで、Gxは、図8に示すとおり、グリッド点GのX軸方向ピッチである。第Gx番目の窓枠プレーンα(Gx)では、第1番目の窓枠プレーンα(1)と比べると、各窓枠図形W(i,j)のX軸方向のシフト距離はdx=Gx−1になる。したがって、図12に示す例の場合、太線で示す窓枠図形W(2,2)の右上隅点は、ハッチングを施して示すフレーム画像F(Gx)の右上隅に位置する基準点Cに対して、図の右方向にdx=Gx−1だけ隔たった位置にある。
なお、図では、便宜上、各窓枠プレーンα(1),α(2),... ,α(Gx)の輪郭矩形を図面の定位置に配しているため、図10〜図12を対比観察すると、あたかもハッチングを施して示すフレーム画像F(1),F(2),... ,F(Gx)が徐々に図の左方に移動しているように見えるが、実際には、各フレーム画像F(1),F(2),... ,F(Gx)はXY座標系上の定位置に固定されており、各フレーム画像の基準点C(左上隅点)は、XY座標系上の定点となり、窓枠プレーンα(1),α(2),... ,α(Gx)上の各窓枠図形W(i,j)の方が徐々に図の右方に移動してゆくことになる。
ここで、図10〜図12に示すシフト処理は、図1(c) に示す横方向の走査に対応する。そして、この横方向のシフト処理は、図12に示すように、第Gx番目の窓枠プレーンα(Gx)が得られた時点で終了する。すなわち、続く第(Gx+1)番目のフレーム画像F(Gx+1)に重ねられる第(Gx+1)番目の窓枠プレーンα(Gx+1)は、図13に示すようなものになる。この図13に示す窓枠プレーンα(Gx+1)の特徴は、図10に示す窓枠プレーンα(1)と対比するとよくわかる。
すなわち、図10に示す第1番目の窓枠プレーンα(1)では、太線で示す窓枠図形W(2,2)の左上隅点が基準点Cに重なる位置にあったのに対して、図13に示す第(Gx+1)番目の窓枠プレーンα(Gx+1)では、太線で示す窓枠図形W(2,2)の左上隅点の位置が、基準点Cの位置よりも下方にシフト距離dyだけ隔たっている。
これは、第(Gx+1)番目の窓枠プレーンα(Gx+1)上の各窓枠図形W(i,j)が、第1番目の窓枠プレーンα(1)上の各窓枠図形W(i,j)の位置よりも、図の下方向(Y軸負方向)にシフト距離dyだけ移動していることを意味する。シフト距離dyとしては、任意の距離を設定することが可能であるが、ここでは、dy=1に設定している。前述したとおり、長さの基本単位は、画素ピッチhx,hyであるので、dy=1とは、シフト距離dyを画素Hの縦方向ピッチhyとする設定を意味する。したがって、たとえば、太線で示す窓枠図形W(2,2)に着目すれば、図10に示す窓枠プレーンα(1)に比べて、図13に示す窓枠プレーンα(Gx+1)では、Y軸方向に1画素分だけずれていることになる。
結局、図10〜図12に示すシフト処理は、各窓枠図形W(i,j)の位置を、画素配列の行方向に順次移動させてゆく水平走査に相当することになり、図12から図13に移るシフト処理は、各窓枠図形W(i,j)の位置を、次の行の先頭(左端)にジャンプさせる垂直走査に相当することになる。水平走査を図12に示す位置で終了する理由は、もう1画素分だけ水平走査を続けると、図12に示す窓枠図形W(2,1)の左上隅点が基準点Cに重なる位置にくるため、窓枠図形W(2,1)の基準点Cに対する相対位置が、図10に示す窓枠図形W(2,2)の基準点Cに対する相対位置と同じになってしまうためである(詳細は後述)。
図14は、第(Gx+2)番目のフレーム画像F(Gx+2)に第(Gx+2)番目の窓枠プレーンα(Gx+2)を重ね合わせた状態を示す平面図である。第(Gx+2)番目の窓枠プレーンα(Gx+2)では、図13に示す第(Gx+1)番目の窓枠プレーンα(Gx+1)と比べて、各窓枠図形W(i,j)が右方向に1画素分だけシフトしている。したがって、図14に示す例の場合、太線で示す窓枠図形W(2,2)の左上隅点は、ハッチングを施して示すフレーム画像F(Gx+2)の左上隅に位置する基準点Cに対して、図の右方向にdx=1だけ隔たり、図の下方向にdy=1だけ隔たった位置にある。
同様に、第(Gx+3)番目の窓枠プレーンα(Gx+3)では、各窓枠図形W(i,j)が右方向に更に1画素分だけ移動したものになり、基準点Cに対する窓枠図形W(2,2)の左上隅点の隔たりは、右方向にdx=2、下方向にdy=1になる。また、次の第(Gx+4)番目の窓枠プレーンα(Gx+4)では、各窓枠図形W(i,j)が右方向に更に1画素分だけ移動したものになり、基準点Cに対する窓枠図形W(2,2)の左上隅点の隔たりは、右方向にdx=3、下方向にdy=1になる。
図15は、第2Gx番目のフレーム画像F(2Gx)に第2Gx番目の窓枠プレーンα(2Gx)を重ね合わせた状態を示す平面図である。第2Gx番目の窓枠プレーンα(2Gx)では、第1番目の窓枠プレーンα(1)と比べると、各窓枠図形W(i,j)のX軸方向のシフト距離はdx=Gx−1、Y軸方向のシフト距離はdy=1になる。したがって、図15に示す例の場合、太線で示す窓枠図形W(2,2)の左上隅点は、ハッチングを施して示すフレーム画像F(2Gx)の左上隅に位置する基準点Cに対して、図の右方向にdx=Gx−1だけ隔たり、図の下方向にdy=1だけ隔たった位置にある。
ここで、図14〜図15に示すシフト処理は、図1(c) に示す2行目についての横方向の走査に対応する。そして、この2行目の横方向のシフト処理は、図15に示すように、第2Gx番目の窓枠プレーンα(2Gx)が得られた時点で終了する。すなわち、続く第(2Gx+1)番目のフレーム画像F(2Gx+1)に重ねられる第(2Gx+1)番目の窓枠プレーンα(2Gx+1)は、図16に示すようなものになる。この図16に示す窓枠プレーンα(2Gx+1)では、太線で示す窓枠図形W(2,2)の左上隅点の位置が、基準点Cの位置よりも下方にシフト距離dy=2だけ隔たっている。すなわち、図16に示す窓枠プレーンα(2Gx+1)は、図13に示す窓枠プレーンα(Gx+1)をY軸方向に1画素分だけずらしたものになっている。
結局、図14〜図15に示すシフト処理は、各窓枠図形W(i,j)の位置を、画素配列の行方向に順次移動させてゆく水平走査に相当することになり、図15から図16に移るシフト処理は、各窓枠図形W(i,j)の位置を、次の行の先頭(左端)にジャンプさせる垂直走査に相当することになる。水平走査を図15に示す位置で終了する理由は、もう1画素分だけ水平走査を続けると、図15に示す窓枠図形W(2,1)の基準点Cに対する相対位置が、図13に示す窓枠図形W(2,2)の基準点Cに対する相対位置と同じになってしまうためである(詳細は後述)。
図16に示す窓枠プレーンα(2Gx+1)の次には、各窓枠図形W(i,j)の位置を右方向に1画素分だけシフトさせた窓枠プレーンα(2Gx+2)が用いられる。この窓枠プレーンα(2Gx+2)では、窓枠図形W(2,2)の左上隅点は、基準点Cに対して、図の右方向にdx=1だけ隔たり、図の下方向にdy=2だけ隔たった位置にある。
このように、各窓枠図形W(i,j)の位置を、画素配列の行方向に順次移動させてゆくシフト処理(水平走査)は、窓枠図形W(2,2)の左上隅点が基準点Cに対してdx=Gx−1だけ隔たりを生じる位置まで繰り返され、当該位置まで到達すると、dx=0となる位置まで戻し、Y軸方向の隔たりdyを1だけ増加させるシフト処理(垂直走査)を行った上で、再び行方向のシフト処理(水平走査)を繰り返すことになる。このような走査は、図1(c) に示すZ字状の走査に相当する。
このようなZ字状の走査は、図17に示す第(Gy・Gx)番目の窓枠プレーンα(Gy・Gx)が得られるまで繰り返される。この窓枠プレーンα(Gy・Gx)は、第(Gy・Gx)番目のフレーム画像F(Gy・Gx)に重ね合わされる窓枠プレーンであり、太線で示す窓枠図形W(2,2)の左上隅点は、基準点Cに対して、右方向にシフト距離dx=Gx−1だけ隔たり、下方向にシフト距離dy=Gy−1だけ隔たったものになっている。
こうして、図17に示す窓枠プレーンα(Gy・Gx)が得られたら、Z字状の走査は初期状態に戻される。すなわち、続く第(Gy・Gx+1)番目のフレーム画像F(Gy・Gx+1)に重ね合わされる窓枠プレーンα(Gy・Gx+1)は、図10に示す第1番目の窓枠プレーンα(1)と同じものになり、太線で示す窓枠図形W(2,2)の左上隅点は、フレーム画像F(Gy・Gx+1)の左上隅に定義された基準点Cの位置にくる。Z字状の走査処理を図17に示す位置で終了する理由は、もう1画素分だけ下方にずらす垂直走査を続けると、窓枠図形W(1,2)の基準点Cに対する相対位置が、図10に示す窓枠図形W(2,2)の基準点Cに対する相対位置と同じになってしまうためである(詳細は後述)。
<<< §4. 本発明に係る物体検出の基本原理 >>>
§3では、図10〜図17を参照しながら、窓枠プレーンα(1)〜α(Gy・Gx)とフレーム画像F(1)〜F(Gy・Gx)との位置関係を説明し、フレーム画像Fに対して各窓枠図形W(i,j)によるZ字状の走査が行われることを示した。前述したように、図10〜図17では、図示の便宜上、各窓枠プレーンα(1)〜α(Gy・Gx)の輪郭矩形を図面の定位置に配しているため、図10〜図17を対比観察すると、あたかもハッチングを施して示すフレーム画像F(1)〜F(Gy・Gx)が移動しているように見えるが、実際には、各フレーム画像F(1)〜F(Gy・Gx)はXY座標系上の定位置に固定されており、各フレーム画像の基準点C(左上隅点)は、XY座標系上の定点となる。
このように、図にハッチングを施して示した各フレーム画像F(1)〜F(Gy・Gx)が定位置に固定されているという前提で、図に太線で示す窓枠図形W(2,2)のフレーム画像Fに対する相対位置の変遷を辿りながら図10〜図17を観察すれば、窓枠図形W(2,2)がフレーム画像F上をZ字状に走査してゆく様子を把握することができよう。
図18は、第1番目のフレーム画像F(1)から第(Gy・Gx)番目のフレーム画像F(Gy・Gx)に至る個々のフレーム画像について、窓枠図形W(2,2)が重ね合わせられる位置を示す平面図である。上述したとおり、フレーム画像F(1)〜F(Gy・Gx)の位置は常に定位置であるが、窓枠図形W(2,2)の位置は窓枠プレーンα(1)〜α(Gy・Gx)ごとに徐々に変遷してゆく。図では、第k番目のフレーム画像F(k)に重ね合わされる第k番目の窓枠プレーンα(k)における窓枠図形W(2,2)の位置を、W(2,2)[F(k)]なる符号で示してある。
すなわち、窓枠図形W(2,2)[F(1)]は、第1番目のフレーム画像F(1)に重ね合わされる第1番目の窓枠プレーンα(1)における窓枠図形W(2,2)の位置を示している。窓枠図形W(2,2)[F(1)]の左上隅点は、フレーム画像F(1)の左上隅に定義された基準点Cに一致している。両者の相対位置関係は、図10の状態に対応する。
一方、窓枠図形W(2,2)[F(Gx)]は、第Gx番目のフレーム画像F(Gx)に重ね合わされる第Gx番目の窓枠プレーンα(Gx)における窓枠図形W(2,2)の位置を示している。窓枠図形W(2,2)[F(Gx)]の左上隅点は、基準点Cから右方向にシフト距離dx=Gx−1だけ隔たっており、両者の相対位置関係は、図12の状態に対応する。
そして、窓枠図形W(2,2)[F((Gy−1)・Gx+1)]は、第((Gy−1)・Gx+1)番目のフレーム画像F((Gy−1)・Gx+1)に重ね合わされる第((Gy−1)・Gx+1)番目の窓枠プレーンα((Gy−1)・Gx+1)における窓枠図形W(2,2)の位置を示している。窓枠図形W(2,2)[F((Gy−1)・Gx+1)]の左上隅点は、基準点Cから下方向にシフト距離dy=Gy−1だけ隔たっている。
最後に、窓枠図形W(2,2)[F(Gy・Gx)]は、第(Gy・Gx)番目のフレーム画像F(Gy・Gx)に重ね合わされる第(Gy・Gx)番目の窓枠プレーンα(Gy・Gx)における窓枠図形W(2,2)の位置を示している。窓枠図形W(2,2)[F(Gy・Gx)]の左上隅点は、基準点Cから右方向にシフト距離dx=Gx−1だけ隔たっており、下方向にシフト距離dy=Gy−1だけ隔たっている。両者の相対位置関係は、図17の状態に対応する。
ここに示す実施例の場合、これら各窓枠図形W(2,2)は、検出対象となる物体Mの画像を含むサンプル画像P(S)と同一形状同一サイズの図形であり、この各窓枠図形W(2,2)から切り出される窓内画像P(W(2,2))は、サンプル画像P(S)と比較されて類否判定が行われる。この類否判定に基づく物体検出のアルゴリズムは、既に§1で説明したとおりである。
図19は、窓枠図形W(2,2)のシフト処理によるフレーム画像F上の走査領域を示す平面図である。図18に示す各窓枠図形W(2,2)のフレーム画像Fに対する相対位置を参照すれば、窓枠図形W(2,2)のZ字状走査により、フレーム画像F上の走査領域A(W(2,2))が探索対象となることが容易に理解できよう。ここで、図8に示すように、グリッド点GのX軸方向ピッチをGx、Y軸方向ピッチをGyとし、図9に示すように、各窓枠図形Wの横幅をSx、縦幅をSyとすれば、走査領域A(W(2,2))は、横幅Gx−1+Sx、縦幅Gy−1+Syをもった矩形領域になる。
もちろん、図19に示す走査領域A(W(2,2))は、あくまでも1つの窓枠図形W(2,2)が担当する走査領域である。したがって、図19にハッチングを施した残りの領域は、窓枠図形W(2,2)による走査は受けないが、別な窓枠図形による走査の対象となる。図9に示すとおり、各窓枠プレーンα上には、多数の窓枠図形がマトリックス状に配置されており、フレーム画像F上の各領域は、これら多数の窓枠図形による走査によって探索される。
図20は、窓枠図形W(2,2)のシフト処理によるフレーム画像F上の走査領域を示す別な平面図である。図に太い実線で示す矩形は、図18に示した窓枠図形W(2,2)[F(1)]および窓枠図形W(2,2)[F(Gx)]であり、いずれも横幅Sxをもつ矩形である。両者の横方向の隔たりはGx−1であり、走査領域A(W(2,2))の横幅は、Gx−1+Sxになる。一方、図に太い破線で示す矩形(内部にハッチングを施して示す)は、窓枠図形W(2,3)[F(1)]である。すなわち、第1番目の窓枠プレーンα(1)上において、窓枠図形W(2,2)[F(1)]の右隣に窓枠図形W(2,3)[F(1)]が位置していることになる。
窓枠図形W(2,3)も窓枠図形W(2,2)と全く同様に、フレーム画像F上をZ字状に走査するので、走査領域A(W(2,2))と同じ面積をもった走査領域A(W(2,3))を担当することになる。図21は、互いに隣接する窓枠図形W(2,2),W(2,3),W(3,2)がそれぞれ担当する走査領域を示す平面図である。実線で囲って示す走査領域A(W(2,2))は窓枠図形W(2,2)が担当する走査領域、破線で囲って示す走査領域A(W(2,3))は窓枠図形W(2,3)が担当する走査領域、一点鎖線で囲って示す走査領域A(W(3,2))は窓枠図形W(3,2)が担当する走査領域である。
図21では、各走査領域に異なるハッチングを施して示してあるが、図示のとおり、これら各走査領域は部分的に重複している。但し、重複領域の横幅Lxは、図20に示す窓枠図形Wの横幅Sxよりも小さくなり、重複領域の縦幅Lyは、窓枠図形Wの縦幅Syよりも小さくなる。すなわち、Lx<Sx、Ly<Syである。これは、図20に示すように、窓枠図形W(2,2)の水平方向の走査を、右方向への隔たりがGx−1に到達したところで打ち切り、窓枠図形W(2,2)の垂直方向の走査を、下方向への隔たりがGy−1に到達したところで打ち切っているためである。
図20を見れば明らかなように、もし、窓枠図形W(2,2)の水平方向の走査を、右方向への隔たりがGxとなる位置まで行ったとすると、W(2,2)[F(Gx)]に続いて、これを右方向に1画素分シフトしたW(2,2)[F(Gx+1)]が設定されることになり、窓枠図形W(2,2)が担当する走査領域A(W(2,2))の横幅は1画素分右へ広がることになるが、その場合、W(2,2)[F(Gx+1)]は、図にハッチングを施して示す窓枠図形W(2,3)[F(1)]と完全に一致してしまう。これは、フレーム画像F上の全く同じ領域に対して、2通りの窓枠図形W(2,2)[F(Gx+1)]とW(2,3)[F(1)]とによる重複走査が行われることを意味する。
もちろん、上例の場合、窓枠図形W(2,2)[F(Gx+1)]が、第(Gx+1)番目のフレーム画像F(Gx+1)の上に重ねられるのに対して、窓枠図形W(2,3)[F(1)]は、第1番目のフレーム画像F(1)の上に重ねられるので、各窓枠図形から切り出される窓内画像は異なるものになり、上述した重複走査は必ずしも無意味な走査ではない。ただ、できるだけ効率的な探索を行って演算処理時間を短縮する、という本発明の目的を達成する上では、このような重複走査を避けた方が、より効率的な処理が期待できる。
そこで、ここで述べる実施例の場合は、窓枠図形W(2,2)の水平方向の走査を、右方向への隔たりがGx−1に到達したところで打ち切り、第(Gx+1)番目のフレーム画像F(Gx+1)に重ねる第(Gx+1)番目の窓枠プレーンα(Gx+1)としては、図13に示すように、各窓枠図形W(i,j)を下方向に1画素分シフトしたものを用いている。同様の理由により、ここで述べる実施例の場合は、窓枠図形W(2,2)の垂直方向の走査を、下方向への隔たりがGy−1に到達したところで打ち切っている。
したがって、ここで述べる実施例の場合は、図21に示すとおり、互いに隣接する窓枠図形が担当する走査領域A(W(2,2)),A(W(2,3)),A(W(3,2))には、部分的に重なりが生じているものの、重複領域の横幅Lxおよび縦幅Lyは、窓枠図形Wの横幅Sxおよび縦幅Syよりも小さくなるので、フレーム画像F上の全く同じ領域に対して、異なる複数の窓枠図形Wによって重複走査が行われることはない。
このように、ここで述べる実施例において、窓枠図形Wの水平方向の走査を、右方向への隔たりがGx−1に到達したところで打ち切り、垂直方向の走査を、下方向への隔たりがGy−1に到達したところで打ち切っているのは、図19に示すように、1つの窓枠図形Wが担当する走査領域の横幅をGx−1+Sxとし、縦幅をGy−1+Syとすることにより、重複領域の横幅Lxおよび縦幅Lyが、Lx<Sx、Ly<Syなる条件を満たすようにし、フレーム画像F上の全く同じ領域に対して重複走査が行われることを避けるための配慮である。
さて、ここで述べる実施例の場合、図19に示すように、窓枠図形W(2,2)によるZ字状の走査により、フレーム画像F上における担当走査領域A(W(2,2))内の探索が行われる。そして、図9に示すように、窓枠プレーンα上には、複数の窓枠図形Wが分散して配置されているため、フレーム画像F上の全領域に対して、いずれかの窓枠図形Wによる探索が行われる。図9には、配置平面(XY平面)上に5×5のマトリックス状に25個の窓枠図形Wを配置した例を示したが、実際の窓枠図形Wの数および配置は、上述した走査処理により、フレーム画像F上の全領域がいずれかの窓枠図形Wの担当走査領域によってカバーされるように定めればよい。
この実施例の場合も、検出アルゴリズムの基本は、§1で述べたアルゴリズムと全く同じである。すなわち、各フレーム画像Fの上に窓枠プレーンαを重ね合わせ、当該窓枠プレーンα上に配置されている各窓枠図形Wによって、フレーム画像Fから窓内画像P(W)を切り出し、これをサンプル画像P(S)と比較して類否判定を行い、両者が類似していると判定された場合に、当該フレーム画像F上の、当該窓内画像P(W)の位置に、検出対象となる物体Mが存在する旨の検出が行われる。
ただ、個々のフレーム画像Fと個々の窓枠図形Wとの対応関係は、§1で述べた従来の検出アルゴリズムとは異なってくる。図1に示す探索アルゴリズムでは、同一のフレーム画像Fに対して、窓枠図形Wによる走査が行われる。このときの走査ピッチをあまり粗くすると、図4に示した例のように、検出に失敗することになる。したがって、実際には、縦横の走査ピッチを1画素分もしくはせいぜい数画素分に設定しないと、実用的な空間的検出精度を確保することができない。このため、演算処理能力の低いシステムでは、演算処理時間が長くかかるという問題が生じることは、既に述べたとおりである。
これに対して、ここで述べる実施例の場合、1枚のフレーム画像Fに対する窓枠図形Wの走査ピッチは、かなり粗く設定されていることになる。たとえば、図10には、第1番目のフレーム画像F(1)に、第1番目の窓枠プレーンα(1)を重ね合わせた状態が示されている。窓枠プレーンα(1)上には、合計25個の窓枠図形が配置されているが、図示の例の場合、このうち9個の窓枠図形Wがフレーム画像F(1)に重なって配置されている。したがって、この9個の窓枠図形Wからそれぞれ窓内画像P(W)が切り出され、サンプル画像P(S)と比較する処理が行われる。
具体的には、たとえば、窓枠図形W(2,2)からは窓内画像P(W(2,2))が切り出され、窓枠図形W(2,3)からは窓内画像P(W(2,3))が切り出され、それぞれサンプル画像P(S)との比較が行われる。比較の結果、両者が類似しているとの判定が行われれば、当該窓内画像の位置に物体Mが検出されたことになる。
なお、図示の例の場合、窓枠図形W(4,2)は、フレーム画像F(1)の下端から一部が食み出しているため、窓枠図形W(4,2)から切り出された窓内画像P(W(4,2))は、図にハッチングを施した部分だけに画像データを含む不完全な画像になるが、当該ハッチング領域の部分についてだけ比較を行えば、実用上は支障は生じない。もっとも、ハッチング領域の割合が少なくなると、誤検出の可能性が高まるので、実用上は、ハッチング領域の割合が一定以下である場合には、類否判定処理を行わないようにするのが好ましい。
§3で述べたとおり、第1番目のフレーム画像F(1)に重ねられるのは、図10に示す第1番目の窓枠プレーンα(1)だけである。一般論として説明すれば、第k番目のフレーム画像F(k)には、第k番目の窓枠プレーンα(k)が重ね合わせられることになるので、第k番目のフレーム画像F(k)については、この第k番目の窓枠プレーンα(k)上に離散的に配置された窓枠図形Wによる窓内画像の切り出しが行われるだけである。
このように、本発明の場合、ある1枚のフレーム画像Fについての空間的な検出精度のみを捉えると、従来の一般的な検出方法に比べて、かなり精度の低い検出が行われることになる。実際、図10に示す例では、第1番目のフレーム画像F(1)については、離散的に配置された9個の窓枠図形Wから切り出した9枚の窓内画像P(W)についてのみ、サンプル画像P(S)との類否判定が行われることになる。このような検出プロセスは、フレーム画像F(1)に関する限りにおいて、図4に示す失敗例よりも更に粗い走査を行う検出プロセスと同等になる。
しかしながら、本発明では、配置平面上で窓枠図形Wを移動させるシフト処理を行うことにより、常に新たな窓枠プレーンαが生成されるため、空間的な検出精度の低下を、時間軸上に沿ったシフト処理によって補うことが可能なる。
たとえば、図10に示すように、第1番目のフレーム画像F(1)について第1番目の窓枠プレーンα(1)を用いた探索処理が行われた後には、図11に示すように、第2番目のフレーム画像F(2)について第2番目の窓枠プレーンα(2)を用いた探索処理が行われることになる。ここで、図10に太線で示す窓枠図形W(2,2)[F(1)]のフレーム画像F(1)に対する相対位置と、図11に太線で示す窓枠図形W(2,2)[F(2)]のフレーム画像F(2)に対する相対位置と、を比較すると、シフト処理によって、前者よりも後者の方が右方向にシフト距離dx=1(1画素分)だけずれていることがわかる。
同様に、第3番目のフレーム画像F(3)について第3番目の窓枠プレーンα(3)を用いた探索処理が行われることになるが、そのときの窓枠図形W(2,2)[F(3)]の位置は、更に右方向に1画素分だけずれ、シフト距離dx=2になる。そして、図12に示すように、第Gx番目のフレーム画像F(Gx)について第Gx番目の窓枠プレーンα(Gx)を用いた探索処理を行う際には、窓枠図形W(2,2)[F(Gx)]の位置は、シフト距離dx=Gx−1だけ右方向にずれたものになる。
このような探索プロセスでは、同一のフレーム画像Fを対象とした走査ではないものの、時間的に連続した一連のフレーム画像F(1)〜F(Gx)を対象として、窓枠図形W(2,2)を右方向に1画素分ずつ走査する探索が行われていることになる。実際には、Y軸方向への垂直走査も行われるので、一連のフレーム画像F(1)〜F(Gy・Gx)を対象として、窓枠図形W(2,2)の二次元的な走査が行われることになる。ここで、もし、一連のフレーム画像F(1)〜F(Gy・Gx)が全く同一の画像であったとすれば、図1(c) において、縦横の走査ピッチを1画素に設定した場合の探索プロセスと同等の空間的かつ時間的検出精度をもった探索プロセスが実行されたことになる。しかも、1枚のフレーム画像Fに関する類否判定は、上例の場合、9枚の窓内画像P(W)についてのみ行えばよいので、演算処理の負担は大幅に軽減され、演算処理時間を大幅に短縮することができる。別言すれば、図7(b) に示すような理想的なタイミングで探索処理が可能になり、演算処理能力の低いシステムであっても、リアルタイム処理を十分に行うことが可能である。
一般に、動画は30フレーム/秒程度のレートで連続的に与えられるフレーム画像によって構成されており、よほど速い移動物体でない限り、第k番目のフレーム画像F(k)上の物体Mの位置と、第(k+1)番目のフレーム画像F(k+1)上の物体Mの位置とが、大きく異なることはない。したがって、上例の場合、一連のフレーム画像F(1)〜F(Gy・Gx)は、完全に同一の画像ではないにしても、ほぼ同一の画像と言うことができ、たとえ移動する物体Mを含んでいたとしても、その位置の変化は微小なものと考えてよい。したがって、実用上、十分な空間的な検出精度を確保することが可能になる。
要するに、本発明によれば、1枚のフレーム画像Fに関する限りにおいて「空間的な間引き」が行われていることになるが、この「空間的な間引き」による検出精度の低下は、時間軸上で窓枠図形に対するシフト処理を行うことによって補填され、動画全体としてみれば、空間的な検出精度を十分に確保することが可能になる。しかも、1枚のフレーム画像Fに関する演算処理時間が大幅に短縮され、図7(b) に示すような理想的なタイミングで探索処理が可能になるため、図7(c) に示すような「時間的な間引き」を行う必要はない。よって、時間的な検出精度を十分に確保することも可能になる。かくして、本発明によれば、空間的な検出精度および時間的な検出精度の双方を維持しつつ、演算処理時間を短縮することが可能になる。
なお、上述した実施例では、十分な空間的検出精度を確保するため、シフト処理における横方向ピッチおよび縦方向ピッチを1画素分に設定しているが、演算処理時間を更に短縮したい場合には、これらのピッチを2画素分以上に設定してもかまわない(もちろん、シフト処理のピッチを大きく設定すればするほど、空間的な検出精度は低下する)。また、上述した実施例では、十分な時間的検出精度を確保するため、「時間的な間引き」を全く行わない例、すなわち、第k番目のフレーム画像F(k)についての探索処理が完了した後、これに後続する第(k+1)番目のフレーム画像F(k+1)についての探索処理を行う例を示したが、演算処理能力が極めて低いシステムであるため、第k番目のフレーム画像F(k)についての探索処理が、第(k+1)番目のフレーム画像F(k+1)が提供されるまでに完了しない場合には、図7(c) に示すような「時間的な間引き」を行うようにしてもかまわない。
<<< §5. 本発明に係る物体検出システムの基本構成および動作 >>>
図22は、本発明の基本的実施形態に係る物体検出システムの基本構成を示すブロック図である。この物体検出システムは、§4で述べた物体検出の基本原理に基づいて、動画を解析して特定の物体を検出する機能を果たす。
図示のとおり、この物体検出システムには、フレーム画像入力部110、フレーム画像格納部120、フレーム画像抽出部130、窓枠プレーン設定部140、窓内画像切出部150、物体検出部160、サンプル画像格納部170、サンプル画像入力部180が設けられている。実際には、これらの各構成要素は、コンピュータに専用のプログラムを組み込むことによって構成することができる。したがって、実用上、この物体検出システムは、汎用コンピュータに専用プログラムをインストールすることにより構成されることになる。
フレーム画像入力部110は、解析対象となる動画を時系列で与えられる複数のフレーム画像として入力する構成要素であり、フレーム画像格納部120は、フレーム画像入力部110によって入力されたフレーム画像を格納する構成要素である。図22には、フレーム画像格納部120に、時間軸上で連続した一連のフレーム画像F(1),F(2),F(3),... ,F(k)... が格納されている状態が示されている。これらの各フレーム画像は、図6に例示するように、検出対象となる物体Mを含む画像である。なお、フレーム画像格納部120には、入力された全フレーム画像を蓄積しておく必要はなく、不要になったフレーム画像は逐次削除してゆくようにしてもかまわない。したがって、たとえば、最新のフレーム画像1枚だけを一時的に格納するバッファメモリによってフレーム画像格納部120を構成することもできる。
フレーム画像抽出部130は、このフレーム画像格納部120に格納されているフレーム画像を、それぞれ抽出画像として順次抽出する処理を行う。これまで述べてきた実施例の場合、フレーム画像抽出部130は、フレーム画像格納部120に格納されている連続したフレーム画像を時系列の順に従って、1枚ずつ連続的に抽出する機能を果たす。別言すれば「時間的な間引き」を全く行わずに、第1番目のフレーム画像F(1),第2番目のフレーム画像F(2),第3番目のフレーム画像F(3),... と順番に抽出する処理が行われる。図には、第k番目のフレーム画像F(k)が抽出画像として抽出された例が示されている。
もっとも、フレーム画像抽出部130は、必ずしもフレーム画像格納部130に格納されている連続したフレーム画像を、時系列の順に従って1枚ずつ連続的に抽出する処理を行う必要はなく、「時間的な間引き」を行うために、たとえば、4枚おきに抽出する等、所定のフレーム間隔をおいて周期的に抽出する処理を行ってもかまわない。「時間的な間引き」を行うと、フレーム画像入力部110がリアルタイムで動画入力を行っている場合でも、図7(c) に示す例のように、1枚のフレーム画像Fについての演算処理時間を十分に確保することが可能になる。ただ、時間的な検出精度は低下することになる。
窓枠プレーン設定部140は、配置平面上(上述した実施例の場合はXY平面上)の所定位置に複数の窓枠図形Wを配置した窓枠プレーンαを、個々の抽出画像F(k)に対応づけて設定する機能を果たす。すなわち、図示の例のように、フレーム画像抽出部130が第k番目のフレーム画像を抽出画像F(k)として抽出した場合、当該抽出画像F(k)に対応づけて、第k番目の窓枠プレーンα(k)を設定する処理が行われる。図において、フレーム画像抽出部130から窓枠プレーン設定部140に向かう矢印は、抽出画像F(k)の抽出タイミングを示す信号の流れを示している。フレーム画像抽出部130から窓枠プレーン設定部140に対して、次の抽出画像F(k+1)を抽出したタイミングを示す信号が与えられると、窓枠プレーン設定部140は、新たに第(k+1)番目の窓枠プレーンα(k+1)を設定する処理を行うことになる。
フレーム画像抽出部130によって抽出された抽出画像F(k)および窓枠プレーン設定部140によって設定された窓枠プレーンα(k)は、窓内画像切出部150に与えられる。窓内画像切出部150は、与えられた抽出画像F(k)上に、与えられた窓枠プレーンα(k)を、所定の位置基準に基づいて重ね合わせ、抽出画像F(k)から個々の窓枠図形Wの内部の窓内画像P(W)を切り出す処理を行う。ここで、窓枠プレーンα(k)は、抽出画像F(k)に対応して窓枠プレーン設定部140によって設定された窓枠プレーンである。
上述した実施例の場合、抽出画像F(k)は、XY座標系上の定位置に配置され、窓枠プレーンα(k)は、XY平面を配置平面として所定位置に複数の窓枠図形Wを配置したプレーンであるため、いずれもXY座標系の所定位置(たとえば、原点O)を基準として位置合わせされ、相互に重ね合わされる。窓内画像切出部150は、このような重ね合わせにより、抽出画像F(k)上に配置されることになった各窓枠図形Wの内部の画像として、窓内画像P(W)を切り出す処理を行う。
物体検出部160は、こうして窓内画像切出部150によって切り出された窓内画像P(W)について、対象物体Mの検出処理を行う。この検出処理は、サンプル画像格納部170に格納されているサンプル画像P(S)との比較によって行われる。サンプル画像入力部180は、検出対象となる物体Mの画像を含むサンプル画像P(S)を入力する役割を果たし、入力されたサンプル画像P(S)は、サンプル画像格納部170に格納される。物体検出部160は、窓内画像P(W)とサンプル画像P(S)との類否判定を行い、両者が類似していると判定された場合に、当該窓内画像P(W)の切り出し対象となったフレーム画像F(k)上の、当該窓内画像P(W)の位置に、検出対象となる物体Mが存在する旨の検出結果を出力する。
上述した実施例の場合、窓枠プレーン設定部140は、サンプル画像格納部170に格納されているサンプル画像P(S)と同一形状同一サイズの窓枠図形Wを配置した窓枠プレーンα(k)を設定する機能を有している。図において、サンプル画像格納部170から窓枠プレーン設定部140に向かう矢印は、サンプル画像P(S)の形状およびサイズを示す信号の流れを示している。結局、物体検出部160による比較対象となる窓内画像P(W)とサンプル画像P(S)は、同一形状同一サイズの画像になる。このような同一形状同一サイズの画像についての具体的な類否判定の方法は、図2および図3に例示したとおりである。
たとえば、図2に例示した類否判定方法を採用する場合、物体検出部160は、窓内画像P(W)とサンプル画像P(S)とについて、互いに対応位置にある画素Hs(i),Hw(i)の画素値を比較する処理を行い、画素値の差が所定の基準以下である場合(図2の例の場合、3原色の画素値の差の総和が閾値Dth以下である場合)に両者が類似している旨の判定を行うことになる。
一方、図3に例示した類否判定方法を採用する場合、物体検出部160は、窓内画像P(W)およびサンプル画像P(S)を、それぞれ共通する分割態様で複数の部分領域As(i),Aw(i)に分割する処理を行い、個々の部分領域ごとにそれぞれ構成画素の平均画素値を求め、互いに対応位置にある部分領域についての平均画素値を比較する処理を行い、平均画素値の差が所定の基準以下(図3の例の場合、3原色の平均画素値の差の総和が閾値Dth1以下)である部分領域の割合が所定の基準以上(図3の例の場合、閾値Dth2以上)である場合に両者が類似している旨の判定を行うことになる。
なお、ここに示す実施例の場合、窓枠プレーン設定部140は、オペレータによって入力された所定の設定用パラメータに基づいて窓枠プレーンαの設定を行う。ここで、設定用パラメータは、たとえば、図8に示すグリッド点GのX軸方向ピッチGx,Y軸方向ピッチGyや、シフト処理におけるX軸方向ピッチおよびY軸方向ピッチを示す変数(1画素単位でシフトするか、2画素単位でシフトするか等を定める変数)である。窓枠プレーン設定部140は、設定用パラメータおよびサンプル画像P(S)の形状やサイズを示す情報に基づいて、配置平面上(XY平面上)に複数の窓枠図形Wを分散して配置した初期窓枠プレーンαを生成し、続いて、配置平面上(XY平面上)で窓枠図形Wを移動させるシフト処理を行うことにより新たな窓枠プレーンαを生成する処理を行う。その結果、個々の抽出画像F(k)について、それぞれ窓枠図形Wの位置が異なる窓枠プレーンαを設定することができる。
より具体的に説明すれば、窓枠プレーン設定部140は、まず、図8に示す例のように、配置平面上(XY平面上)に分散配置された複数のグリッド点Gを定義し、図9に示す例のように、個々のグリッド点Gを基準とした所定位置に、それぞれ所定形状をもった所定サイズの図形を配置することにより窓枠図形Wの配置を行い、初期窓枠プレーンαを生成する。なお、ここに示す実施例の場合、窓枠図形Wとして、サンプル画像P(S)と同一形状同一サイズの図形を用いているが、窓枠図形Wは、必ずしもサンプル画像P(S)と同一形状同一サイズの図形とする必要はない。ただ、両者の形状やサイズが異なると、物体検出部160によって行われる類否判定処理が複雑になるため、実用上は、同一形状同一サイズの図形を用いるのが好ましい。
§3で述べた基本的なシフト処理の場合、窓枠プレーン設定部140は、初期窓枠プレーンαの設定時に用いたグリッド点を移動させることによりシフト処理を行い、新たな窓枠プレーンαの設定を行うことになる。図8に示す例の場合、二次元格子の格子点として個々のグリッド点Gが定義されているので、これらの各グリッド点Gを同一シフト方向に同一シフト距離だけ移動させることによりシフト処理を行っている。本発明においてシフト処理を行う場合、必ずしも全グリッド点Gを、同一シフト方向に同一シフト距離だけ移動させる必要はないが、演算処理を単純化し、効率的な探索処理を行う上では、各グリッド点Gを同一シフト方向に同一シフト距離だけ移動させるのが好ましい。
この場合、窓枠プレーン設定部140は、二次元XY座標系のX軸およびY軸に沿って配置されたグリッド点Gを定義し、X軸方向への単位移動距離(シフト処理のX軸方向ピッチ)としてサンプル画像P(S)のX軸方向画素ピッチhxを設定し、Y軸方向への単位移動距離(シフト処理のY軸方向ピッチ)としてサンプル画像P(S)のY軸方向画素ピッチhyを設定している。その結果、各グリッド点GのX軸方向のシフト距離dxは画素ピッチhxの整数倍に設定されることになり、各グリッド点GのY軸方向のシフト距離dyは、画素ピッチhyの整数倍に設定されることになる。
ここで、効率的な探索処理を行うためには、窓枠プレーン設定部140は、図8に示すグリッド点GのX軸方向ピッチを画素ピッチhxの整数Gx倍に設定し、グリッド点GのY軸方向ピッチを画素ピッチhyの整数Gy倍に設定し、§4において図18〜図21を参照して説明したとおり、X軸方向に関するシフト範囲(X軸方向のシフト距離dxの最大値)を画素ピッチhxの(Gx−1)倍、Y軸方向に関するシフト範囲(Y軸方向のシフト距離dyの最大値)を画素ピッチhyの(Gy−1)倍に設定して、各グリッド点Gをこのシフト範囲内でシフトさせることによりシフト処理を行うようにするのが好ましい。
§4で述べたように、Z字状走査に準じたシフト処理を行うには、窓枠プレーン設定部140に、グリッド点GをX軸方向に画素ピッチhxだけ移動させるX軸シフト動作と、グリッド点をY軸方向に画素ピッチhyだけ移動させるY軸シフト動作と、を行う機能をもたせておき、更に、グリッド点Gを、X軸方向に関する基準位置(基準点C)からのX軸方向に関するシフト距離dxが画素ピッチhxの(Gx−1)倍に達するまでX軸シフト動作を繰り返し実行する水平方向の走査処理と、この水平方向の走査処理完了後に、グリッド点GのX軸方向に関する位置をX軸方向に関する基準位置に戻し、Y軸シフト動作を行った上で再び水平方向の走査処理を行う処理を、Y軸方向に関する基準位置(基準点C)からのY軸方向に関するシフト距離dyが画素ピッチhyの(Gy−1)倍に達するまで繰り返し実行する垂直方向の走査処理と、を行う機能をもたせておくようにする。そうすれば、窓枠プレーン設定部140は、各走査処理を繰り返し実行しながら、フレーム画像抽出部130が新たな抽出画像を抽出するたびに、当該新たな抽出画像に対応する新たな窓枠プレーンを設定する処理を行うことができる。
なお、これまで述べた実施例では、フレーム画像抽出部130が抽出する抽出画像F(k)と窓枠プレーン設定部140が設定する窓枠プレーンα(k)との対応関係が1対1になっているが、両者の対応関係は必ずしも1対1にする必要はなく、n:1(nは任意の自然数)に設定してもかまわない。この場合、フレーム画像抽出部130が抽出したn枚の抽出画像F(k)〜F(k+n−1)について、同一の窓枠プレーンαが対応づけられることになる。
また、逆に、両者の対応関係を、1:m(mは任意の自然数)に設定してもかまわない。この場合、フレーム画像抽出部130が抽出した1枚の抽出画像F(k)について、m通りの窓枠プレーンαが対応づけられることになり、各窓枠プレーン上の窓枠図形から切り出された窓内画像について、サンプル画像P(S)との比較処理が行われることになる。ただ、実用上は、これまで述べたとおり、両者の対応関係を1対1に設定し、第k番目の抽出画像F(k)に対して、第k番目の窓枠プレーンα(k)が対応するような運用を行うのが最も効率的である。
§4で詳述したとおり、図22に示す物体検出システムでは、1枚のフレーム画像Fに関する限りにおいて「空間的な間引き」が行われていることになるが、この「空間的な間引き」による検出精度の低下は、時間軸上で窓枠図形に対するシフト処理を行うことによって補填され、動画全体としてみれば、空間的な検出精度を十分に確保することが可能になる。したがって、空間的な検出精度および時間的な検出精度の双方を維持しつつ、演算処理時間を短縮することが可能になる。
<<< §6. 本発明に係る物体検出方法の基本手順 >>>
上述した§5では、本発明を物体検出システムという装置発明として把握し、その基本構成および動作を説明した。ここでは、本発明を、動画を解析して特定の物体を検出する物体検出方法という方法発明として把握し、その基本手順を述べることにする。
図23は、本発明の基本的実施形態に係る物体検出方法の基本手順を示すブロック図である。この基本手順は、図示のとおりステップS1〜S8によって構成されている。これら個々の手順は、実際にはコンピュータによって実行される手順である。したがって、実用上、この物体検出方法は、専用のプログラムをインストールしたコンピュータによって実行される手順によって構成される。
まず、ステップS1のサンプル画像準備段階S1では、検出対象となる物体Mの画像を含むサンプル画像P(S)が準備される。続くステップS2のフレーム画像入力段階では、解析対象となる動画を構成する1枚のフレーム画像F(k)が入力される。そしてステップS3のグリッド点定義段階では、図8に示すように、所定の配置平面上に複数のグリッド点Gが定義され、ステップS4の窓枠図形配置段階では、図9に示すように、この配置平面上のグリッド点Gを基準とした個々の位置に、それぞれ所定形状をもった所定サイズの窓枠図形Wが配置される。前掲の実施例の場合、ステップS1で準備されたサンプル画像P(S)と同一形状同一サイズの窓枠図形Wが配置されることになる。
続いて、ステップS5の窓内画像切出段階において、ステップS2で入力したフレーム画像F(k)上に上記配置平面を重ね合わせ、フレーム画像F(k)から1つの窓枠図形Wの内部の窓内画像P(W)を切り出す処理が行われる。そして、ステップS6の物体判定段階において、ステップS5で切り出された窓内画像と、ステップS1で準備されたサンプル画像P(S)との類否判定が行われる。この類否判定によって、両者が類似していると判定された場合には、当該フレーム画像F(k)の当該窓内画像P(W)の位置に、検出対象となる物体Mが存在する旨の検出結果が出力される。
こうして、1つの窓枠図形Wについて、ステップS5の窓内画像切出段階とステップS6の物体判定段階とが行われると、ステップS7へ進み、ステップS4で配置された全窓枠図形についての処理が完了したか否かが判定される。そして、全窓枠図形についての処理が完了するまで、ステップS5,S6の処理が繰り返し実行される。全窓枠図形についての処理が完了すると、ステップS7からステップS8へと進むことになる。
ステップS8では、動画を構成する全フレーム画像について、ステップS2〜S7の一巡処理が完了したか否かが判定される。全フレーム画像の処理が完了するまで、ステップS2からの一巡処理が繰り返し実行され、全フレーム画像の処理が完了すれば、この手順は終了である。
結局、ステップS2のフレーム画像入力段階からステップS6の物体判定段階に至るまでの一巡処理が、解析対象となる動画を構成する個々のフレーム画像のそれぞれについて繰り返し実行されることになる。
しかも、ステップS3のグリッド点定義段階では、過去の一巡処理で定義したグリッド点Gを配置平面上で移動させるシフト処理を行うことにより、新たなグリッド点Gを定義する処理が行われ、ステップS4の窓枠図形配置段階では、ステップS3で新たに定義されたグリッド点Gに基づいて、新たな位置に窓枠図形Wの配置を行うことになる。上述した実施例の場合、第1回目の一巡処理におけるステップS3のグリッド点定義段階では、二次元格子の格子点として個々のグリッド点Gが定義され、第2回目以降の一巡処理におけるステップS3のグリッド点定義段階では、各グリッド点Gを同一シフト方向に同一シフト距離だけ移動させることによりシフト処理が行われる。
かくして、ステップS2〜S6の一巡処理を繰り返す際に、窓枠図形Wの配置が変化することになり、「空間的な間引き」による検出精度の低下を、時間軸上で窓枠図形に対するシフト処理を行うことによって補填する、という本発明に固有の作用効果が奏せられる。このように、図23に示す手順に係る物体検出方法によれば、空間的な検出精度および時間的な検出精度の双方を維持しつつ、演算処理時間を短縮することが可能になる。
<<< §7. 固定プレーンを用いる実施形態 >>>
続いて、ここでは、これまで述べてきた基本的実施形態の変形例として、窓枠プレーンαとともに固定プレーンβを併用する実施形態を述べる。
本発明において、窓枠図形Wを移動させるシフト処理を行うことにより新たな窓枠プレーンαを生成し、新たなフレーム画像について、窓枠図形Wの位置が異なる新たな窓枠プレーンαを設定することは、「空間的な間引き」による検出精度の低下を補填する効果を得るために極めて重要な作業である。そして、これまで述べてきた基本的な実施形態では、窓枠プレーンα上の全窓枠図形Wをシフト処理の対象として、すべての窓枠図形Wに対して、同一シフト方向に同一シフト距離だけ移動させるシフト処理が行われていた。
しかしながら、物体検出を効率的に行うという観点から、敢えてシフト処理の対象から外した方が好ましい窓枠図形も存在する。それは、切り出された窓内画像についての類否判定の結果、類似しているとの判定がなされた窓枠図形、別言すれば、物体の検出がなされた窓枠図形である。
たとえば、図1(d) には、窓枠図形W3について物体Mの検出がなされた例が示されている。すなわち、この例の場合、窓枠図形W3から切り出された窓内画像P(W3)とサンプル画像P(S)とについての類否判定処理により、両者は類似しているとの判定がなされたことになる。ここで、物体Mが移動中の物体であったとしても、その速度が極めて速いものでない限り、第k番目のフレーム画像F(k)上の物体Mの位置と、第(k+1)番目のフレーム画像F(k+1)上の物体Mの位置との間には、大きな差は生じないと考えられる。したがって、フレーム画像F(k)上の窓枠図形W3内に物体Mが存在していた場合、フレーム画像F(k+1)上でも、同じ位置の窓枠図形W3内に物体Mが存在している可能性が高い。
このような状況において、フレーム画像F(k+1)に重ね合わせる窓枠プレーンα(k+1)上で、窓枠図形W3に対するシフト処理が行われてしまうと、せっかくフレーム画像F(k)上で検出されていた物体Mが、フレーム画像F(k+1)上では検出されないという事態が生じるおそれがある。もちろん、シフト処理は、Z字状の走査に準じた循環形式で行われるため、しばらくすれば、再び同じ位置に窓枠図形が到来し、その時点で、物体Mの再検出を行うことが可能であるが、一度検出した物体Mをそのまま検出し続けるという観点からは、物体検出が行われた窓枠図形はシフト処理の対象から外し、そのまま同じ位置に維持する、という運用を行った方が好ましい。この§7で述べる実施形態は、このような着想から生まれた変形例である。
この§7で述べる実施形態では、図24に示すように、窓枠プレーンαとともに固定プレーンβを用いる。いずれも、XY平面上に定義されたプレーンであり、たとえば、原点Oを共通の基準点として相互の位置が定義される。図24(a) に示す窓枠プレーンαには、図9に示す窓枠プレーンαと同様に、5×5のマトリックス状に25個の窓枠図形W(1,1)〜W(5,5)が配置されている。ただ、この例では、窓枠図形W(2,3)のみが、固定プレーンβの対応位置に移動させられた状態が示されている。
固定プレーンβ上の窓枠図形W(2,3)の位置は、窓枠プレーンα上の窓枠図形W(2,3)があった位置(破線で示す位置)に対応しているので、このまま窓枠プレーンαと固定プレーンβとを、共通の基準点である原点Oの位置が一致するように重ね合わせれば、窓枠図形W(2,3)は破線で示す位置に重なり、5×5のマトリックス状に配置された25個の窓枠図形W(1,1)〜W(5,5)が得られることになる。実際、フレーム画像Fには、この2枚のプレーンα,βが重ね合わされ、両プレーンα,β上の各窓枠図形を用いて窓内画像の切り出しおよび類否判定処理が行われることになる。
ただ、窓枠プレーンα上の窓枠図形がシフト処理の対象になるのに対して、固定プレーンβ上の窓枠図形はシフト処理の対象にはならない。したがって、図24に示す例の場合、図24(a) に示す窓枠プレーンα上の24個の窓枠図形に対しては、これまで述べてきた基本的実施形態と同様に、同一シフト方向に同一シフト距離だけ移動させるシフト処理が実行され、フレーム画像Fに対する相対位置が徐々に変わってゆくことになるが、図24(b) に示す固定プレーンβ上の窓枠図形W(2,3)に対しては、シフト処理は行われず、フレーム画像Fに対する相対位置が固定された状態になる。
したがって、もし、第k番目のフレーム画像F(k)についての探索処理において、窓枠図形W(2,3)の位置に物体Mの検出が行われた場合には、図24に示すように、当該窓枠図形W(2,3)を窓枠プレーンαから固定プレーンβへと移動させる処理を行い、窓枠図形W(2,3)のフレーム画像Fに対する相対位置を固定状態にするのが好ましい。
図25は、このように、固定プレーンβを用いる実施形態の基本原理を示す斜視図である。図の上段には第k番目の窓枠プレーンα(k)、中段には第k番目の固定プレーンβ(k)、下段には第k番目のフレーム画像F(k)が示されている。図では、説明の便宜上、XYZ三次元座標系を定義し、三次元空間内に各プレーンが配置されている状態を示したが、実際には、フレーム画像F(k)は、XY平面上の定位置に配置され、窓枠プレーンα(k)および固定プレーンβ(k)は、図のZ軸負方向に平行移動され、XY平面上のフレーム画像F(k)に重ね合わされることになる。
なお、図25において、固定プレーンβ(k)およびフレーム画像F(k)の右端には、電気回路で用いる接地記号が記載されているが、これは固定プレーンβ(k)およびフレーム画像F(k)のXY座標系上での位置が固定されていることを示している。すなわち、固定プレーンβ(k)上の窓枠図形W(2,3)の位置は、第(k+1)番目の固定プレーンβ(k+1)上でも同位置となるように固定されており、第(k+1)番目のフレーム画像F(k+1)は、フレーム画像F(k)と同じ定位置に配置される。これに対して、窓枠プレーンα(k)上の各窓枠図形Wは、シフト処理によって、X軸方向およびY軸方向に移動してゆくことになるので、第(k+1)番目の窓枠プレーンα(k+1)上の各窓枠図形Wの位置は、図示の位置とは異なることになる。
図25は、フレーム画像F(k)上に存在する物体Mが、窓枠図形W(2,3)の位置において検出された状態を示している。すなわち、フレーム画像F(k)から窓枠図形W(2,3)によって切り出された窓内画像P(W(2,3))とサンプル画像P(S)とを比較した結果、両画像は類似するとの判定が得られたことになる。上述したとおり、このような判定が得られた場合、窓枠図形W(2,3)を窓枠プレーンα(k)から固定プレーンβ(k)へと移動させる処理を行うようにする。
フレーム画像F(k)が新たなフレーム画像F(k+1)に置き換えられると、窓枠プレーンα(k)および固定プレーンβ(k)も、それぞれ新たな窓枠プレーンα(k+1)および固定プレーンβ(k+1)に置き換えられる。ここで、窓枠プレーンα(k+1)上の各窓枠図形Wの位置はシフト処理によって移動しているが、固定プレーンβ(k+1)上の窓枠図形W(2,3)の位置は図示の位置のまま固定されている。
したがって、もし、フレーム画像F(k+1)上の物体Mの位置が、フレーム画像F(k)上の物体Mの位置と同じであれば(あるいは、類似との判定がなされるほど近似した位置にあれば)、フレーム画像F(k+1)についても、窓枠図形W(2,3)の位置に物体検出がなされることになる。一般的な物体Mであれば、1/30秒程度ではそれほど位置に変化が生じないので、フレーム画像F(k)と同じ位置に検出される可能性が高い。もちろん、フレーム画像F(k+2)、F(k+3)、... についても、窓枠プレーンα(k+2)、α(k+3)、... 上の窓枠図形Wはシフト処理により位置が変遷してゆくが、固定プレーンβ(k+2)、β(k+3)、... 上の窓枠図形W(2,3)の位置は固定されたままであるので、物体Mの位置に変化が生じていなければ、窓枠図形W(2,3)の位置に物体Mが検出され続けることになる。
なお、固定プレーンβ上に移動させられた窓枠図形W(2,3)について、物体検出が行われなくなった場合は、もはや当該窓枠図形W(2,3)を固定プレーンβ上に配置しておく意味はないので、これを窓枠プレーンα上の所定の帰還位置に戻す処理を行うようにする。この帰還位置としては、当該窓枠図形W(2,3)について、固定プレーンβへの移動が行われなかった場合に本来あるべき位置とすればよい。
たとえば、図25に示す例の場合、窓枠プレーンα(k)上の窓枠図形W(2,3)を固定プレーンβ(k)に移動すると、窓枠プレーンα(k)上には、破線で示す抜け殻が残ることになるが、シフト処理を行う際に、この抜け殻についても他の窓枠図形Wと同様に移動させるようにし、窓枠図形W(2,3)を窓枠プレーンα上に戻す処理を行うことになった場合には、当該抜け殻の位置を帰還位置として戻すようにすればよい。
図26(a) は、この固定プレーンを用いる実施形態において、第1番目のフレーム画像F(1)に窓枠プレーンα(1)および固定プレーンβ(1)の双方を重ね合わせた状態を示す平面図である。ここでは、この図26(a) に示す状態において、太線で示す窓枠図形W(2,3)について、物体検出が行われた場合を考えてみよう。この場合、図25に示すように、窓枠図形W(2,3)は、窓枠プレーンα(1)から固定プレーンβ(1)へと移されることになる。
一方、図26(b) は、第2番目のフレーム画像F(2)に窓枠プレーンα(2)および固定プレーンβ(2)の双方を重ね合わせた状態を示す平面図である。ここで、窓枠プレーンα(2)は、窓枠プレーンα(1)上の各窓枠図形Wを図の右方向に1画素だけ移動させるシフト処理を行うことによって得られたプレーンであるが、固定プレーンβ(2)は固定プレーンβ(1)と全く同じプレーンになる。その結果、図に×印で示す基準点C(フレーム画像Fの左上隅点)の位置を基準にすると、太線で示す窓枠図形W(2,3)は定位置に固定されたままであるが、それ以外の窓枠図形Wは、右方向に1画素だけ移動していることになる。
前述したとおり、窓枠図形W(2,3)は、物体検出が行われ続ける限り、固定プレーンβ上に留まるので、シフト処理によって、やがて左隣りの窓枠図形W(2,2)と重なりを生じることになるが、特に処理に支障が生じることはない。但し、物体検出が行われなくなった時点で、固定プレーンβから窓枠プレーンαの帰還位置へ戻されることになる。
もちろん、複数の窓枠図形Wについて物体検出が行われた場合には、これら複数の窓枠図形Wが窓枠プレーンαから固定プレーンβへと移動させられることになり、それぞれ物体検出が行われなくなった時点で、窓枠プレーンα上の帰還位置へと戻されることになる。
このように、この§7で述べる実施形態では、あるフレーム画像において一度検出された物体Mが、そのまま後続するフレーム画像においても検出され続ける可能性が高くなるので、より効率的な物体検出処理が可能になる。
図22に示す基本的実施形態に係る物体検出システムを、この§7で述べる実施形態に係る物体検出システムとして利用するには、まず、窓枠プレーン設定部140に、窓枠プレーンαとともに固定プレーンβを設定する機能を設けておき、これら2つのプレーンα,β間で、窓枠図形Wの移動が行われるようにすればよい。
具体的には、物体検出部160から窓枠プレーン設定部140に対して、類否判定の判定結果を示す信号を与えるようにし、物体検出部160により、窓枠プレーンα上の特定の窓枠図形Wの内部から切り出された窓内画像P(W)について類似しているとの判定がなされた場合には、当該特定の窓枠図形Wを窓枠プレーンαから固定プレーンβの対応位置に移動させる処理を行い、物体検出部160により、固定プレーンβ上の特定の窓枠図形Wの内部から切り出された窓内画像P(W)について類似していないとの判定がなされた場合には、当該特定の窓枠図形Wを固定プレーンβから窓枠プレーンαの帰還位置に戻す処理を行うようにすればよい。
ここで、窓枠プレーン設定部140は、窓枠プレーンα上の窓枠図形Wについては、これまで述べてきた基本的実施形態と同様のシフト処理を行うが、固定プレーンβ上の窓枠図形Wについてはシフト処理を行わないようにする。したがって、グリッド点Gに基づいて窓枠図形Wの配置を行う場合、窓枠プレーンα上の窓枠図形Wについてのグリッド点Gを移動対象となるグリッド点として移動させ、固定プレーンβ上の窓枠図形Wについてのグリッド点Gについては、移動させないようにすればよい。なお、窓枠図形Wを固定プレーンβから窓枠プレーンαへ戻す際は、前述したとおり、当該窓枠図形Wについて固定プレーンβへの移動が行われなかった場合に本来あるべき位置を帰還位置とすればよい。
また、窓枠プレーン設定部140から窓内画像切出部150に対しては、窓枠プレーンαとともに固定プレーンβを与えるようにし、窓内画像切出部150は、この窓枠プレーンαと固定プレーンβとの双方を抽出画像上に重ね合わせ、窓枠プレーンα上の窓枠図形Wおよび固定プレーンβ上の窓枠図形Wの内部の窓内画像を切り出す処理を行うようにすればよい。
一方、図23に示す基本的実施形態に係る物体検出方法に、この§7で述べる実施形態の概念を適用するには、次のような変更を加えればよい。
まず、第k回目(但し、kは自然数)の一巡処理における物体判定段階(ステップS6)で、特定の窓枠図形Wの内部から切り出された窓内画像P(W)について類似しているとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階(ステップS3)において、当該特定の窓枠図形Wの配置基準となったグリッド点Gを固定状態にして、もしくは、当該グリッド点Gが既に固定状態にある場合には引き続き固定状態を維持して、固定状態のグリッド点Gについては移動を行わないようする。
また、第k回目の一巡処理における物体判定段階(ステップS6)で、固定状態にあるグリッド点Gを基準として配置された窓枠図形Wの内部から切り出された窓内画像P(W)について類似していないとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階(ステップS3)において、当該固定状態にあるグリッド点Gの固定状態を解除して、当該グリッド点Gがもともと固定状態になかった場合に本来あるべき位置まで移動させる処理を行うようにすればよい。
<<< §8. サンプル画像に対する変倍処理を行う実施形態 >>>
§1では、図1を参照しながら、サンプル画像P(S)に基づいて動画中から特定の物体を検出する基本的なアルゴリズムを述べた。もちろん、この基本アルゴリズムは、動画中に出現するであろう物体Mの大きさがある程度予測される場合には有効であり、たとえば、ベルトコンベア上を特定の向きで流れてくる特定の工業製品を物体Mとして検出するような用途であれば、高精度での検出が可能になる。ベルトコンベアの上方に設けた定点カメラで動画撮影を行えば、フレーム画像F上に写る物体Mの大きさはほぼ一定になるため、サンプル画像P(S)として、適切な大きさの物体Mを含む画像を用意しておけば、特に問題は生じない。
しかしながら、物体Mの撮影環境によっては、動画中に出現するであろう物体Mの大きさが変動する場合がある。このような場合、これまで述べてきた基本的実施形態に係る類否判定では、物体Mの検出に失敗する可能性がある。
たとえば、図27は、サンプル画像P(S)の物体Mとは異なる倍率の物体M′,M''が含まれているフレーム画像Fについての類否判定の一例を示す図である。図27(a) は、予め用意されたサンプル画像P(S)であり、検出対象となる物体Mが所定の倍率で写っている画像になっている。一方、図27(b) は、サンプル画像P(S)に含まれている物体Mと同一倍率の物体Mが含まれているフレーム画像Fを示している。この場合、図示の位置に配置された窓枠図形W6を用いて切り出された窓内画像P(W6)とサンプル画像P(S)とを比較する類否判定を行えば、両者は類似するとの判定結果が得られ、物体Mの検出に成功する。
ところが、図27(c) に示すように、サンプル画像P(S)に含まれている物体Mに対して縮小された倍率をもつ物体M′が含まれているフレーム画像Fの場合、図示の位置に配置された窓枠図形W7を用いて切り出された窓内画像P(W7)とサンプル画像P(S)とを比較する類否判定を行うと、両者は非類似との判定結果が得られ、物体Mの検出に失敗する。同様に、図27(d) に示すように、サンプル画像P(S)に含まれている物体Mに対して拡大された倍率をもつ物体M''が含まれているフレーム画像Fの場合、図示の位置に配置された窓枠図形W8を用いて切り出された窓内画像P(W8)とサンプル画像P(S)とを比較する類否判定を行うと、両者は非類似との判定結果が得られ、やはり物体Mの検出に失敗する。
図27(c) に示す窓枠図形W7や図27(d) に示す窓枠図形W8の位置は、いずれも物体検出に適した位置であるが、用意されたサンプル画像P(S)に含まれている物体Mが、物体M′や物体M''の倍率と異なっているため、画像同士の類否判定において非類似との判定結果が出されてしまう結果となっている。このような検出失敗の事例は、検出対象となる物体が三次元空間内で自由に移動する環境にある場合に生じやすい。すなわち、物体が動画撮影に用いたカメラに近い位置を通過するか、遠い位置を通過するかによって、得られるフレーム画像F上に写る物体の大きさが変化してしまうことになる。
この§8で述べる実施形態は、このような問題にも対処可能な変形例を提示するものであり、その基本原理は、サンプル画像P(S)に対する変倍処理を行い、互いに倍率の異なる複数m通りのサンプル画像P(S)を用意し、それぞれに対して比較を行うようにするものである。
たとえば、図28に示すように、与えられたサンプル画像P(S)の倍率を基準となる100%に設定し、当該サンプル画像P(S)を、便宜上、変倍サンプル画像P(S100%)と呼ぶことにする。一方、この変倍サンプル画像P(S100%)に対して所定倍率で縮小処理もしくは拡大処理を施して変倍サンプル画像を作成する。図28には、倍率50%で縮小処理を施した変倍サンプル画像P(S50%)と、倍率200%で拡大処理を施した変倍サンプル画像P(S200%)とが例示されている。実際には、50%〜200%の間を、たとえば10%の刻み幅で変化させて、より多数の変倍サンプル画像を用意するのが好ましい。
このように、互いに倍率の異なる複数m通りの変倍サンプル画像P(S)を用意しておき、切り出された窓内画像をそれぞれの変倍サンプル画像P(S)と比較するようにすれば、図27に示す事例のように、フレーム画像F中に含まれる検出対象物体の大きさが不確定の場合にも、高い検出精度での検出が可能になる。
図22に示す基本的実施形態に係る物体検出システムを、この§8で述べる実施形態に係る物体検出システムとして利用するには、まず、サンプル画像入力部180に、入力したサンプル画像P(S)を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像(たとえば、図28に例示する変倍サンプル画像P(S50%)〜P(S200%))を用意する機能をもたせておき、サンプル画像格納部170には、これら複数m通りの変倍サンプル画像を格納しておくようにする。
一方、窓枠プレーン設定部140には、窓枠図形Wを移動させるシフト処理を行う機能とともに、窓枠図形Wのサイズを拡大もしくは縮小する変倍処理を行う機能をもたせておく。そうすれば、この変倍処理により、窓枠プレーンα上の窓枠図形Wのサイズを複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させることができる。また、窓内画像切出部150は、それぞれ個々のサイズをもった窓枠図形Wの内部から、当該サイズをもった窓内画像P(W)を切り出すことができ、物体検出部160は、切り出された窓内画像P(W)と同じサイズの変倍サンプル画像P(S)を用いた類否判定を行うことができる。
図29〜図31には、窓枠プレーン設定部140が変倍処理機能を利用して、3通りのサイズをもった窓枠図形Wを配置することによって得られた窓枠プレーンα(50%),α(100%),α(200%)が例示されている。
すなわち、図29に示す窓枠プレーンα(50%)は、図8に示す各グリッド点Gを中心として、それぞれ50%に変倍した窓枠図形W50(太線)を配置することにより設定された窓枠プレーンα(50%)を示す平面図である。個々の窓枠図形W50は、図28に示すサンプル画像P(S50%)と同一形状同一サイズの図形になっている。
また、図30に示す窓枠プレーンα(100%)は、図8に示す各グリッド点Gを中心として、それぞれ100%に変倍した(実際には、等倍であるため、具体的な変倍処理は不要である)窓枠図形W100(太線)を配置することにより設定された窓枠プレーンα(100%)を示す平面図である。実際には、この窓枠プレーンα(100%)は、図9に示す窓枠プレーンαと同一のものであり、個々の窓枠図形W100は、図28に示すサンプル画像P(S100%)と同一形状同一サイズの図形になっている。
一方、図31に示す窓枠プレーンα(200%)は、図8に示す各グリッド点Gを中心として、それぞれ200%に変倍した窓枠図形W200(太線)を配置することにより設定された窓枠プレーンα(200%)を示す平面図である。個々の窓枠図形W200は、図28に示すサンプル画像P(S200%)と同一形状同一サイズの図形になっている。隣接する窓枠図形W200は、相互に重なりを生じているが、特に支障は生じない。
以上、3通りの窓枠プレーンα(50%),窓枠プレーンα(100%),窓枠プレーンα(200%)を例示したが、たとえば、50%〜200%の間を10%の刻み幅で変化させて、複数m通りの変倍サンプル画像を用意した場合は、窓枠プレーン設定部140には、個々の変倍サンプル画像に対応させて、窓枠プレーンα(50%),窓枠プレーンα(60%),窓枠プレーンα(70%),... ,窓枠プレーンα(180%),窓枠プレーンα(190%),窓枠プレーンα(200%)という複数m通りの窓枠プレーンを設定する機能をもたせておくようにする。
なお、フレーム画像Fと窓枠プレーンαとの対応関係は、1:mの関係に設定することも可能であるが、実用上は、演算時間を短縮するために、1:1の関係に設定するのが好ましい。
すなわち、1:mの対応関係を設定した場合は、第k番目のフレーム画像F(k)に対して、複数m通りの窓枠プレーンα(50%)〜窓枠プレーンα(200%)が対応づけられるため、まず、フレーム画像F(k)の上に窓枠プレーンα(50%)を重ねて、個々の窓枠図形W50から切り出された窓内画像P(W50)を変倍サンプル画像P(S50%)と比較する処理を行い、続いて、フレーム画像F(k)の上に窓枠プレーンα(60%)を重ねて、個々の窓枠図形W60から切り出された窓内画像P(W60)を変倍サンプル画像P(S60%)と比較する処理を行い、... 、最後に、フレーム画像F(k)の上に窓枠プレーンα(200%)を重ねて、個々の窓枠図形W200から切り出された窓内画像P(W200)を変倍サンプル画像P(S200%)と比較する処理を行うことになる。
このように、1:mの対応関係を設定した場合は、1枚のフレーム画像F(k)に対して、複数m枚の窓枠プレーンα(50%)〜窓枠プレーンα(200%)を重ね合わせる探索処理が行われるので、検出精度は高くなるが、1枚のフレーム画像F(k)についての処理時間が長くなるという問題が生じる。
これに対して、1:1の関係に設定する場合は、窓枠プレーン設定部140が、窓枠プレーンα上の窓枠図形Wに対して、シフト処理と変倍処理との双方を行うことにより窓枠図形Wの位置およびサイズの双方が異なる新たな窓枠プレーンαを生成し、個々の抽出画像(フレーム画像)に応じて窓枠図形Wの位置およびサイズの双方が異なる窓枠プレーンαを設定するようにすればよい。
具体的には、まず、第k番目のフレーム画像F(k)に対しては、図29に示すような窓枠プレーンα(50%)を第k番目の窓枠プレーンα(k)として重ねて、個々の窓枠図形W50から切り出された窓内画像P(W50)を変倍サンプル画像P(S50%)と比較する処理を行う。フレーム画像F(k)についての探索処理は、これで完了である。
続いて、窓枠プレーン設定部140は、第(k+1)番目のフレーム画像F(k+1)に対応する第(k+1)番目の窓枠プレーンα(k+1)を設定する処理を行うことになるが、当該窓枠プレーンα(k+1)として、第k番目の窓枠プレーンα(k)(図29に示す窓枠プレーンα(50%))上の各窓枠図形Wに対して、シフト処理と変倍処理との双方を行うことにより窓枠図形Wの位置およびサイズの双方が異なる窓枠プレーンを生成するようにする。たとえば、図29に示す窓枠プレーンα(50%)を構成する各窓枠図形W50に対して変倍処理を施し、60%の大きさの窓枠図形W60になるような変更を行い、かつ、これまで述べてきたシフト処理を行うことにより、個々の窓枠図形W60を所定方向に所定距離だけ移動させることにより、第(k+1)番目の窓枠プレーンα(k+1)を設定すればよい。
結局、第(k+1)番目のフレーム画像F(k+1)に重ね合わされる第(k+1)番目の窓枠プレーンα(k+1)は、変倍サンプル画像P(S60%)と同一形状同一サイズの窓枠図形W60を、第k番目の窓枠プレーンα(k)についての各グリッド点Qに対してシフト処理を施した位置に配置した窓枠プレーンということになる。そこで、第(k+1)番目のフレーム画像F(k+1)に対しては、この第(k+1)番目の窓枠プレーンα(k+1)上の個々の窓枠図形W60から切り出された窓内画像P(W60)を変倍サンプル画像P(S60%)と比較する処理が行われる。フレーム画像F(k+1)についての探索処理は、これで完了である。
同様に、第(k+2)番目のフレーム画像F(k+2)に重ね合わされる第(k+2)番目の窓枠プレーンα(k+2)は、変倍サンプル画像P(S70%)と同一形状同一サイズの窓枠図形W70を、第(k+1)番目の窓枠プレーンα(k+1)についての各グリッド点Qに対してシフト処理を施した位置に配置した窓枠プレーンということになる。そこで、第(k+2)番目のフレーム画像F(k+2)に対しては、この第(k+2)番目の窓枠プレーンα(k+2)上の個々の窓枠図形W70から切り出された窓内画像P(W70)を変倍サンプル画像P(S70%)と比較する処理が行われる。フレーム画像F(k+2)についての探索処理は、これで完了である。
以下、同様に、新たな窓枠プレーンαを設定するたびに、配置する窓枠図形Wの変倍率を10%刻みで増加させてゆき、最大値200%に達したら、再び最小値の50%に戻し、上述の処理を繰り返してゆけばよい。あるいは、最大値200%に達したら、今度は、
190%,180%というように、10%刻みで減少させてゆくようにしてもかまわない。
このように、フレーム画像Fと窓枠プレーンαとの対応関係を、1:1の関係に設定すると、1枚のフレーム画像Fに関する限りにおいて、特定の変倍率の窓枠図形Wを用いた探索が行われ、特定の変倍サンプル画像との比較しか行われないことになるが、個々のフレーム画像に応じて窓枠図形Wの位置およびサイズの双方が異なる窓枠プレーンαが設定されるようになるので、動画全体としてみれば、複数m通りの大きさをもった変倍サンプル画像との比較が行われることになる。したがって、1枚のフレーム画像Fに関する処理時間を短時間に保ちつつ、複数m通りの変倍サンプル画像との比較が可能になり、検出対象となる物体Mの大きさにかかわらず、高い検出精度を確保することが可能になる。
図23に示す基本的実施形態に係る物体検出方法に、この§8で述べる実施形態の概念を適用するには、次のような変更を加えればよい。
まず、サンプル画像準備段階(ステップS1)では、基本となるサンプル画像P(S)を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を準備するようにする。そして、窓枠図形配置段階(ステップS4)では、窓枠図形Wのサイズを複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、一巡処理を繰り返す際に、窓枠図形Wの配置とともにサイズが変化するようにする。そして、物体判定段階(ステップ6)では、窓内画像P(W)と同じサイズの変倍サンプル画像を用いた類否判定を行うようにすればよい。
<<< §9. §7の実施形態と§8の実施形態との組み合わせ >>>
これまで述べてきた種々の実施形態は、相互に矛盾が生じない限り、適宜組み合わせて利用することが可能である。ここでは、その代表例として、§7で述べた固定プレーンを用いる実施形態と§8で述べたサンプル画像に対する変倍処理を行う実施形態とを組み合わせた例について簡単に説明しておく。
§7で述べた固定プレーンを用いる実施形態の特徴は、物体検出がなされた窓枠図形Wについては、窓枠プレーンαから固定プレーンβへと移動させ、シフト処理の対象から外すようにする、というものであるから、§8で述べたサンプル画像に対する変倍処理を行う実施形態と組み合わせても、何ら矛盾が生じることはない。ただ、両者を組み合わせる場合には、固定プレーンβへと移動させた窓枠図形Wについては、シフト処理の対象から外すだけでなく、変倍処理の対象からも外す、という運用を行うようにするのが好ましい。
ある変倍率(大きさ)の窓枠図形Wについて物体検出がなされた場合、当該物体は当該変倍率に適した大きさでフレーム画像Fに含まれているのであるから、後続するフレーム画像についての探索処理においても、当該窓枠図形Wの位置と大きさを変えない方が、物体検出の可能性が高まることになる。このような観点から、固定プレーンβへと移動させた窓枠図形Wについては、位置と大きさとの双方を固定するのが好ましい。したがって、窓枠プレーンα上の窓枠図形Wについては、シフト処理と変倍処理との双方を行うが、固定プレーンβ上の窓枠図形Wについては、シフト処理も変倍処理も行わないようにするのが理にかなっている。
図32(a) は、このような組み合わせ実施形態において、第1番目のフレーム画像F(1)に窓枠プレーンα(50%)および固定プレーンβの双方を重ね合わせた状態を示す平面図である。窓枠プレーンα(50%)は、図29に示すものと同じものであり、合計25個の窓枠図形W50がマトリックス状に配置されている。ここでは、この図32(a) に示す状態において、太線で示す窓枠図形W50(2,3)について、物体検出が行われた場合を考えてみよう。この場合、窓枠図形W50(2,3)は、窓枠プレーンα(50%)から固定プレーンβへと移されることになる。
一方、図32(b) は、第2番目のフレーム画像F(2)に窓枠プレーンα(100%)および固定プレーンβの双方を重ね合わせた状態を示す平面図である。ここで、窓枠プレーンα(100%)は、図32(a) に示す窓枠プレーンα(50%)に対して、シフト処理と変倍処理との双方を行うことにより新たに生成された窓枠プレーンであり、図32(a) に示す窓枠プレーンα(50%)上の各窓枠図形W50と、図32(b) に示す窓枠プレーンα(100%)上の各窓枠図形W100とは、位置およびサイズの双方が異なっている。
まず、窓枠プレーンα(50%)に対する変倍処理を行うことにより、窓枠プレーンα(100%)上の各窓枠図形Wは、変倍率100%に対応する窓枠図形W100になっている(§8で述べた実施例のように、変倍率を10%刻みで増加させる場合は、変倍率60%に対応する窓枠図形W60が配置されるが、ここでは、説明の便宜上、変倍率を100%まで増加させた例を示す)。また、シフト処理を行うことにより、個々の窓枠図形W100の配置位置を示すグリッド点Gは、図の右方向に1画素分だけ移動している。
もっとも、このようなシフト処理および変倍処理の対象となる窓枠図形Wは、図32(a) に示す窓枠プレーンα(50%)上の窓枠図形であり、固定プレーンβ上に移動させられた、太線で示す窓枠図形W50(2,3)については、シフト処理も変倍処理も実行されない。別言すれば、固定プレーンβ上の窓枠図形W50(2,3)は、基準点Cに対する位置に変わりはなく、大きさにも変わりはない。
したがって、図32(b) に示すように、第2番目のフレーム画像F(2)に窓枠プレーンα(100%)および固定プレーンβを重ね合わせた場合、太線で示す窓枠図形W50(2,3)だけが変倍率50%の大きさのまま同じ位置に残り、それ以外の窓枠図形Wは、変倍率100%の大きさに拡大され、かつ、基準点Cに対する位置(中心にあるグリッド点Gの位置)が、右方向に1画素分だけずれることになる。なお、図32(b) に示す破線の矩形は、窓枠図形W50(2,3)の位置に配置した変倍率100%の大きさの矩形図形を示している。この破線で示す矩形図形の位置を、他の矩形図形W100の位置と比べれば、他の矩形図形W100が右方向にシフトしていることが容易に理解できよう。
もちろん、図32(b) に示す状態において、窓枠図形W50(2,3)の内部から切り出された窓内画像P(W50(2,3))は、図28に示す変倍サンプル画像P(S50%)と比較されることになり、他の矩形図形W100の内部から切り出された窓内画像P(W100)は、図28に示す変倍サンプル画像P(S100%)と比較されることになる。そして、窓枠図形W50(2,3)について物体検出がなされれば、窓枠図形W50(2,3)はそのまま固定プレーンβに残り、シフト処理も変倍処理も行われない状態で、次の第3番目のフレーム画像F(3)に重ね合わされることになる。但し、物体検出が行われなくなった時点で、固定プレーンβから窓枠プレーンαの帰還位置へ戻されることになる。
このように、固定プレーンβ上の窓枠図形Wについては、物体検出がなされなくなってしまった時点で、窓枠プレーンαの所定の帰還位置に戻す処理が行われるが、このとき、他の窓枠図形Wのサイズと合致するように、サイズの修正も行うようにするのが好ましい。すなわち、窓枠プレーンα上の帰還位置に戻される窓枠図形Wに対しては、固定プレーンβへの移動が行われなかった場合に本来あるべきサイズとなるようなサイズ修正を行えばよい。
結局、§7の実施形態と§8の実施形態とを組み合わせた物体検出システムの場合、窓枠プレーン設定部140には、窓枠プレーンαとともに固定プレーンβを設定する機能をもたせておき、物体検出部160により、窓枠プレーンα上の特定の窓枠図形Wの内部から切り出された窓内画像P(W)について類似しているとの判定がなされた場合には、当該特定の窓枠図形Wを窓枠プレーンαから固定プレーンβの対応位置に移動させる処理を行えばよい。一方、物体検出部160により、固定プレーンβ上の特定の窓枠図形Wの内部から切り出された窓内画像P(W)について類似していないとの判定がなされた場合には、当該特定の窓枠図形Wを固定プレーンβから窓枠プレーンの帰還位置に戻す処理を行えばよい。
そして、窓枠プレーンα上の窓枠図形Wについてはシフト処理および変倍処理の双方を行うが、固定プレーンβ上の窓枠図形Wについてはシフト処理も変倍処理も行わないようにする。なお、固定プレーンβから窓枠プレーンαへの帰還位置は、固定プレーンβへの移動が行われなかった場合に本来あるべき位置とし、当該帰還位置に戻される窓枠図形Wに対しては、固定プレーンβへの移動が行われなかった場合に本来あるべきサイズとなるようなサイズ修正を行うようにする。
もちろん、窓内画像切出部150は、窓枠プレーンαと固定プレーンβとの双方を抽出画像F(k)上に重ね合わせ、窓枠プレーンα上の窓枠図形Wおよび固定プレーンβ上の窓枠図形Wの内部の窓内画像P(W)それぞれを切り出す処理を行うことになる。
以上述べた組み合わせ実施形態を、図23に示す基本的実施形態に係る物体検出方法に適用するには、次のような変更を加えればよい。
まず、サンプル画像準備段階(ステップS1)では、基本となるサンプル画像P(S)を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を準備する。そして、第k回目(但し、kは自然数)の一巡処理における物体判定段階(ステップS6)において、特定の窓枠図形Wの内部から切り出された窓内画像P(W)について類似しているとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階(ステップS3)で、当該特定の窓枠図形Wの配置基準となったグリッド点Gを固定状態にして、もしくは、当該グリッド点Gが既に固定状態にある場合には引き続き固定状態を維持して、固定状態のグリッド点Gについては移動を行わないようにする。
また、第k回目の一巡処理における物体判定段階(ステップS5)において、固定状態にあるグリッド点Gを基準として配置された窓枠図形Wの内部から切り出された窓内画像P(W)について類似していないとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階(ステップS3)で、当該固定状態にあるグリッド点Gの固定状態を解除して、当該グリッド点Gがもともと固定状態になかった場合に本来あるべき位置まで移動させる。
そして、窓枠図形配置段階(ステップS4)では、固定状態にあるグリッド点Gを基準として配置する窓枠図形Wについては、当該グリッド点Gの固定直前における窓枠図形Wのサイズを固定サイズとし、固定状態にないグリッド点Gを基準として配置する窓枠図形Wについては、そのサイズを複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、一巡処理を繰り返す際に、窓枠図形Wの配置とともにサイズが変化するようにする。もちろん、物体判定段階(ステップS6)では、窓内画像P(W)と同じサイズの変倍サンプル画像を用いた類否判定が行われる。
<<< §10. 監視システムへの応用例 >>>
最後に、本発明に係る物体検出システムに、動画撮影を行う監視カメラを付加することにより、監視システムを構成した応用例を述べておく。図33は、このような監視システムへの応用例を示す側面図である。
この例では、敷地210上が撮影視野となるように、建物220の屋上付近に監視カメラ230が取り付けられている。監視カメラ230としては、監視エリア内を撮影した動画をデータとして取り込む機能を有する一般的なデジタルカメラであれば、どのようなカメラを用いてもかまわない。監視カメラ230が撮影した動画を構成する個々のフレーム画像は、リアルタイムで図22に示す物体検出システムのフレーム画像入力部110に与えられる。この物体検出システムは、既に述べたとおり、与えられたフレーム画像に基づく物体検出の処理をリアルタイムで実行する機能を有しており、監視カメラ230の撮影視野内の物体をリアルタイムで検出することができる。
なお、図示の例のように、建物220の屋上付近に設置した監視カメラ230から、敷地210内が撮影視野となるような撮影を行うと、撮影視野は図に一点鎖線で示すように広がることになる。したがって、敷地210上に矩形領域を定義したとしても、当該矩形領域は、撮影画像上、図34に示すような台形状の領域になる。このような場合、窓枠図形Wを配置する基準点として機能するグリッド点Gは、図8に示すような正則格子状の格子点として定義する代わりに、図34に示すように、奥へゆくほど格子間隔が狭くなるような台形格子状の格子点として定義するのが好ましい。
また、各格子点に配置する窓枠図形Wのサイズに関しては、§8で述べたように、変倍処理を行う実施形態を採用するのが好ましい。これは、遠近法により、フレーム画像上の奥に位置する物体ほどサイズが小さく、手前に位置する物体ほどサイズが大きく写ると考えられるからである。
このように、図8では、X軸方向ピッチGx、Y軸方向ピッチGyで二次元マトリックス状に配列されたグリッド点Gを定義する例を述べたが、本発明を実施するにあたって、グリッド点Gの配置(すなわち、窓枠図形Wの配置)は、必ずしも二次元マトリックス状にする必要はない。
110:フレーム画像入力部
120:フレーム画像格納部
130:フレーム画像抽出部
140:窓枠プレーン設定部
150:窓内画像切出部
160:物体検出部
170:サンプル画像格納部
180:サンプル画像入力部
210:敷地
220:建物
230:監視カメラ
A(W(2,2)):窓枠図形W(2,2)による走査領域
A(W(2,3)):窓枠図形W(2,3)による走査領域
A(W(3,2)):窓枠図形W(3,2)による走査領域
As(i):サンプル画像P(S)の第i番目の領域
Aw(i):窓内画像P(W)の第i番目の領域
Bs(i):画素Hs(i)の原色Bの画素値
Bs′(i):領域As(i)内の原色Bの平均画素値
Bw(i):画素Hw(i)の原色Bの画素値
Bw′(i):領域As(i)内の原色Bの平均画素値
C:フレーム画像Fの基準点(左上隅点)
Dth:画素値の差に関する閾値
Dth1:領域ごとの平均画素値の差に関する閾値
Dth2:部分合致した領域数に関する閾値
dx:X軸方向のシフト距離
dy:Y軸方向のシフト距離
E(1)〜E(6):処理プロセス
EE(1),EE(5):処理プロセス
F,F(1)〜F(Gy・Gx):フレーム画像
G(1,1)〜G(5,5),G(i,j):グリッド点
Gs(i):画素Hs(i)の原色Gの画素値
Gs′(i):領域As(i)内の原色Gの平均画素値
Gw(i):画素Hw(i)の原色Gの画素値
Gw′(i):領域As(i)内の原色Gの平均画素値
Gx:グリッド点のX軸方向ピッチ
Gy:グリッド点のY軸方向ピッチ
H,H(1,1)〜H(3,1):フレーム画像F上の画素
Hs(i):サンプル画像P(S)の第i番目の画素
Hw(i):窓内画像P(W)の第i番目の画素
hx:画素Hの横寸法(横方向の長さの基本単位)
hy:画素Hの縦寸法(縦方向の長さの基本単位)
Lx:重複領域の横幅
Ly:重複領域の縦幅
M,M′,M'':物体
O:座標系の原点
P(S):サンプル画像
P(S50%),P(S100%),P(S200%):変倍サンプル画像
P(W),P(W1)〜P(W8):窓内画像
P(W(2,2)),P(W(2,3)),P(W(3,2)),:窓内画像
Q1〜Q5:窓枠基準点
Rs(i):画素Hs(i)の原色Rの画素値
Rs′(i):領域As(i)内の原色Rの平均画素値
Rw(i):画素Hw(i)の原色Rの画素値
Rw′(i):領域Aw(i)内の原色Rの平均画素値
S1〜S8:流れ図の各ステップ
Sx:窓枠図形Wの横幅
Sy:窓枠図形Wの縦幅
t1〜t7:時間軸上の時刻
W1〜W8:窓枠図形
W(1,1)〜W(5,5),W(i,j):窓枠図形
W50,W100,W200:変倍窓枠図形
W50(2,2),W50(2,3),W50(2,4):変倍窓枠図形
W100(2,2),W100(2,4):変倍窓枠図形
X:二次元座標系の座標軸
Y:二次元座標系の座標軸
α,α(1)〜α(Gy・Gx):窓枠プレーン
α(50%),α(100%),α(200%):変倍窓枠プレーン
β:固定プレーン
ΔB(i):第i番目の画素同士の原色Bの画素値の差
ΔB′(i):第i番目の領域同士の原色Bの平均画素値の差
ΔG(i):第i番目の画素同士の原色Gの画素値の差
ΔG′(i):第i番目の領域同士の原色Gの平均画素値の差
ΔR(i):第i番目の画素同士の原色Rの画素値の差
ΔR′(i):第i番目の領域同士の原色Rの平均画素値の差

Claims (23)

  1. 動画を解析して特定の物体を検出する物体検出システムであって、
    解析対象となる動画を時系列で与えられる複数のフレーム画像として入力するフレーム画像入力部と、
    入力されたフレーム画像を格納するフレーム画像格納部と、
    前記フレーム画像格納部に格納されているフレーム画像を、それぞれ抽出画像として順次抽出するフレーム画像抽出部と、
    配置平面上の所定位置に複数の窓枠図形を配置した窓枠プレーンを、個々の抽出画像に対応づけて設定する窓枠プレーン設定部と、
    検出対象となる物体の画像を含むサンプル画像を入力するサンプル画像入力部と、
    入力されたサンプル画像を格納するサンプル画像格納部と、
    前記フレーム画像抽出部によって抽出された抽出画像上に、前記窓枠プレーン設定部によって設定された対応する窓枠プレーンを、所定の位置基準に基づいて重ね合わせ、前記抽出画像から個々の窓枠図形の内部の窓内画像を切り出す窓内画像切出部と、
    前記窓内画像切出部によって切り出された窓内画像と前記サンプル画像格納部に格納されているサンプル画像との類否判定を行い、両者が類似していると判定された場合に、当該窓内画像の切り出し対象となったフレーム画像上の、当該窓内画像の位置に、検出対象となる物体が存在する旨の検出結果を出力する物体検出部と、
    を備え、
    前記窓枠プレーン設定部が、配置平面上で窓枠図形を移動させるシフト処理を行うことにより新たな窓枠プレーンを生成し、抽出画像によって窓枠図形の位置が異なる窓枠プレーンを設定することを特徴とする物体検出システム。
  2. 請求項1に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、サンプル画像格納部に格納されているサンプル画像と同一形状同一サイズの窓枠図形を配置した窓枠プレーンを設定することを特徴とする物体検出システム。
  3. 請求項2に記載の物体検出システムにおいて、
    物体検出部が、窓内画像とサンプル画像とについて、互いに対応位置にある画素の画素値を比較する処理を行い、画素値の差が所定の基準以下である場合に両者が類似している旨の判定を行うことを特徴とする物体検出システム。
  4. 請求項2に記載の物体検出システムにおいて、
    物体検出部が、窓内画像およびサンプル画像を、それぞれ共通する分割態様で複数の部分領域に分割する処理を行い、個々の部分領域ごとにそれぞれ構成画素の平均画素値を求め、互いに対応位置にある部分領域についての平均画素値を比較する処理を行い、平均画素値の差が所定の基準以下である部分領域の割合が所定の基準以上である場合に両者が類似している旨の判定を行うことを特徴とする物体検出システム。
  5. 請求項1〜4のいずれかに記載の物体検出システムにおいて、
    窓枠プレーン設定部が、配置平面上に分散配置された複数のグリッド点を定義し、個々のグリッド点を基準とした所定位置に、それぞれ所定形状をもった所定サイズの図形を配置することにより窓枠図形の配置を行い、前記グリッド点を移動させることによりシフト処理を行うことを特徴とする物体検出システム。
  6. 請求項5に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、二次元格子の格子点として個々のグリッド点を定義し、移動対象となる各グリッド点を同一シフト方向に同一シフト距離だけ移動させることによりシフト処理を行うことを特徴とする物体検出システム。
  7. 請求項6に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、二次元XY座標系のX軸およびY軸に沿って配置されたグリッド点を定義し、X軸方向への単位移動距離としてサンプル画像のX軸方向画素ピッチhxを設定し、Y軸方向への単位移動距離としてサンプル画像のY軸方向画素ピッチhyを設定し、各グリッド点のX軸方向のシフト距離を前記画素ピッチhxの整数倍に設定し、各グリッド点のY軸方向のシフト距離を前記画素ピッチhyの整数倍に設定することを特徴とする物体検出システム。
  8. 請求項7に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、グリッド点のX軸方向ピッチを画素ピッチhxの整数Gx倍に設定し、グリッド点のY軸方向ピッチを画素ピッチhyの整数Gy倍に設定し、X軸方向に関するシフト範囲を画素ピッチhxの(Gx−1)倍、Y軸方向に関するシフト範囲を画素ピッチhyの(Gy−1)倍に設定して、各グリッド点を前記各シフト範囲内でシフトさせることによりシフト処理を行うことを特徴とする物体検出システム。
  9. 請求項8に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、グリッド点をX軸方向に画素ピッチhxだけ移動させるX軸シフト動作と、グリッド点をY軸方向に画素ピッチhyだけ移動させるY軸シフト動作と、を行う機能を有し、更に、グリッド点を、X軸方向に関する基準位置からのX軸方向に関するシフト距離が画素ピッチhxの(Gx−1)倍に達するまで前記X軸シフト動作を繰り返し実行する水平方向の走査処理と、この水平方向の走査処理完了後に、グリッド点のX軸方向に関する位置を前記X軸方向に関する基準位置に戻し、前記Y軸シフト動作を行った上で再び前記水平方向の走査処理を行う処理を、Y軸方向に関する基準位置からのY軸方向に関するシフト距離が画素ピッチhyの(Gy−1)倍に達するまで繰り返し実行する垂直方向の走査処理と、を行う機能を有し、前記水平方向の走査処理および前記垂直方向の走査処理を繰り返し実行しながら、フレーム画像抽出部が新たな抽出画像を抽出するたびに、当該抽出画像に対応する新たな窓枠プレーンを設定する処理を行うことを特徴とする物体検出システム。
  10. 請求項1〜9のいずれかに記載の物体検出システムにおいて、
    フレーム画像抽出部が、フレーム画像格納部に格納されている連続したフレーム画像を時系列の順に従って、1枚ずつ連続的に、もしくは、所定のフレーム間隔をおいて周期的に抽出することを特徴とする物体検出システム。
  11. 請求項1〜10のいずれかに記載の物体検出システムにおいて、
    窓枠プレーン設定部が、窓枠プレーンとともに固定プレーンを設定する機能を有し、物体検出部により、前記窓枠プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、当該特定の窓枠図形を前記窓枠プレーンから前記固定プレーンの対応位置に移動させる処理を行い、物体検出部により、前記固定プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、当該特定の窓枠図形を前記固定プレーンから前記窓枠プレーンの帰還位置に戻す処理を行い、前記窓枠プレーン上の窓枠図形についてはシフト処理を行うが、前記固定プレーン上の窓枠図形についてはシフト処理を行わないようにし、前記帰還位置を、固定プレーンへの移動が行われなかった場合に本来あるべき位置とし、
    窓内画像切出部が、前記窓枠プレーンと前記固定プレーンとの双方を抽出画像上に重ね合わせ、前記窓枠プレーン上の窓枠図形および前記固定プレーン上の窓枠図形の内部の窓内画像を切り出すことを特徴とする物体検出システム。
  12. 請求項1〜10のいずれかに記載の物体検出システムにおいて、
    サンプル画像入力部が、入力したサンプル画像を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を用意し、
    サンプル画像格納部が、前記複数m通りの変倍サンプル画像を格納し、
    窓枠プレーン設定部が、窓枠図形を移動させるシフト処理を行う機能とともに、窓枠図形のサイズを拡大もしくは縮小する変倍処理を行う機能を有し、この変倍処理により、窓枠プレーン上の窓枠図形のサイズを前記複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、
    窓内画像切出部が、それぞれ個々のサイズをもった窓枠図形の内部から、当該サイズをもった窓内画像を切り出し、
    物体検出部が、切り出された窓内画像と同じサイズの変倍サンプル画像を用いた類否判定を行うことを特徴とする物体検出システム。
  13. 請求項12に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、窓枠プレーン上の窓枠図形に対して、シフト処理と変倍処理との双方を行うことにより窓枠図形の位置およびサイズの双方が異なる新たな窓枠プレーンを生成し、個々の抽出画像に応じて窓枠図形の位置およびサイズの双方が異なる窓枠プレーンを設定することを特徴とする物体検出システム。
  14. 請求項13に記載の物体検出システムにおいて、
    窓枠プレーン設定部が、窓枠プレーンとともに固定プレーンを設定する機能を有し、物体検出部により、前記窓枠プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、当該特定の窓枠図形を前記窓枠プレーンから前記固定プレーンの対応位置に移動させる処理を行い、物体検出部により、前記固定プレーン上の特定の窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、当該特定の窓枠図形を前記固定プレーンから前記窓枠プレーンの帰還位置に戻す処理を行い、前記窓枠プレーン上の窓枠図形についてはシフト処理および変倍処理を行うが、前記固定プレーン上の窓枠図形についてはシフト処理も変倍処理も行わないようにし、前記帰還位置を、固定プレーンへの移動が行われなかった場合に本来あるべき位置とし、前記帰還位置に戻される窓枠図形に対しては、固定プレーンへの移動が行われなかった場合に本来あるべきサイズとなるようなサイズ修正を行い、
    窓内画像切出部が、前記窓枠プレーンと前記固定プレーンとの双方を抽出画像上に重ね合わせ、前記窓枠プレーン上の窓枠図形および前記固定プレーン上の窓枠図形の内部の窓内画像を切り出すことを特徴とする物体検出システム。
  15. 請求項1〜14のいずれかに記載の物体検出システムとしてコンピュータを機能させるプログラム。
  16. 請求項1〜14のいずれかに記載の物体検出システムと、動画撮影を行う監視カメラと、を備えた監視システムであって、
    前記監視カメラが撮影した動画を構成する個々のフレーム画像をリアルタイムで前記物体検出システムに与え、
    前記物体検出システムが、与えられたフレーム画像に基づく物体検出の処理をリアルタイムで実行し、
    前記監視カメラの撮影視野内の物体をリアルタイムで検出することを特徴とする監視システム。
  17. 動画を解析して特定の物体を検出する物体検出方法であって、
    コンピュータが、検出対象となる物体の画像を含むサンプル画像を準備するサンプル画像準備段階と、
    コンピュータが、解析対象となる動画を構成する1枚のフレーム画像を入力するフレーム画像入力段階と、
    コンピュータが、所定の配置平面上に複数のグリッド点を定義するグリッド点定義段階と、
    コンピュータが、前記配置平面上の前記グリッド点を基準とした個々の位置に、それぞれ所定形状をもった所定サイズの窓枠図形を配置する窓枠図形配置段階と、
    コンピュータが、前記フレーム画像上に前記配置平面を重ね合わせ、前記フレーム画像から個々の窓枠図形の内部の窓内画像をそれぞれ切り出す窓内画像切出段階と、
    コンピュータが、前記窓内画像と前記サンプル画像との類否判定を行い、両者が類似していると判定された場合に、前記フレーム画像の当該窓内画像の位置に、検出対象となる物体が存在する旨の検出結果を出力する物体判定段階と、
    を有し、
    前記フレーム画像入力段階から前記物体判定段階に至るまでの一巡処理を、解析対象となる動画を構成する個々のフレーム画像のそれぞれについて繰り返し実行し、
    前記グリッド点定義段階で、過去の一巡処理で定義したグリッド点の全部もしくは一部を前記配置平面上で移動させるシフト処理を行うことにより、新たなグリッド点を定義する処理を行い、
    前記窓枠図形配置段階で、新たに定義されたグリッド点に基づいて、新たな位置に窓枠図形の配置を行い、一巡処理を繰り返す際に、窓枠図形の配置が変化するようにすることを特徴とする物体検出方法。
  18. 請求項17に記載の物体検出システムにおいて、
    第1回目の一巡処理におけるグリッド点定義段階で、二次元格子の格子点として個々のグリッド点を定義し、
    第2回目以降の一巡処理におけるグリッド点定義段階で、移動対象となる各グリッド点を同一シフト方向に同一シフト距離だけ移動させることによりシフト処理を行うことを特徴とする物体検出方法。
  19. 請求項18に記載の物体検出方法において、
    窓枠図形配置段階で、サンプル画像と同一形状同一サイズの窓枠図形を配置することを特徴とする物体検出方法。
  20. 請求項19に記載の物体検出方法において、
    第k回目(但し、kは自然数)の一巡処理における物体判定段階で、特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該特定の窓枠図形の配置基準となったグリッド点を固定状態にして、もしくは、当該グリッド点が既に固定状態にある場合には引き続き固定状態を維持して、固定状態のグリッド点については移動を行わないようにし、
    第k回目の一巡処理における物体判定段階で、固定状態にあるグリッド点を基準として配置された窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該固定状態にあるグリッド点の固定状態を解除して、当該グリッド点がもともと固定状態になかった場合に本来あるべき位置まで移動させることを特徴とする物体検出方法。
  21. 請求項19に記載の物体検出システムにおいて、
    サンプル画像準備段階で、基本となるサンプル画像を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を準備し、
    窓枠図形配置段階で、窓枠図形のサイズを前記複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、一巡処理を繰り返す際に、窓枠図形の配置とともにサイズが変化するようにし、
    物体判定段階で、窓内画像と同じサイズの変倍サンプル画像を用いた類否判定を行うことを特徴とする物体検出方法。
  22. 請求項19に記載の物体検出方法において、
    サンプル画像準備段階で、基本となるサンプル画像を拡大もしくは縮小する変倍処理を行うことにより、互いにサイズが異なる複数m通りの変倍サンプル画像を準備し、
    第k回目(但し、kは自然数)の一巡処理における物体判定段階で、特定の窓枠図形の内部から切り出された窓内画像について類似しているとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該特定の窓枠図形の配置基準となったグリッド点を固定状態にして、もしくは、当該グリッド点が既に固定状態にある場合には引き続き固定状態を維持して、固定状態のグリッド点については移動を行わないようにし、
    第k回目の一巡処理における物体判定段階で、固定状態にあるグリッド点を基準として配置された窓枠図形の内部から切り出された窓内画像について類似していないとの判定がなされた場合には、第(k+1)回目の一巡処理におけるグリッド点定義段階では、当該固定状態にあるグリッド点の固定状態を解除して、当該グリッド点がもともと固定状態になかった場合に本来あるべき位置まで移動させ、
    窓枠図形配置段階で、固定状態にあるグリッド点を基準として配置する窓枠図形については、当該グリッド点の固定直前における窓枠図形のサイズを固定サイズとし、固定状態にないグリッド点を基準として配置する窓枠図形については、そのサイズを前記複数m通りの変倍サンプル画像のサイズに等しいm段階のサイズに変化させ、一巡処理を繰り返す際に、窓枠図形の配置とともにサイズが変化するようにし、
    物体判定段階で、窓内画像と同じサイズの変倍サンプル画像を用いた類否判定を行うことを特徴とする物体検出方法。
  23. 請求項17〜22のいずれかに記載の物体検出方法をコンピュータに実行させるプログラム。
JP2014114059A 2014-06-02 2014-06-02 物体検出システムおよび物体検出方法 Expired - Fee Related JP6323179B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014114059A JP6323179B2 (ja) 2014-06-02 2014-06-02 物体検出システムおよび物体検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014114059A JP6323179B2 (ja) 2014-06-02 2014-06-02 物体検出システムおよび物体検出方法

Publications (2)

Publication Number Publication Date
JP2015228164A JP2015228164A (ja) 2015-12-17
JP6323179B2 true JP6323179B2 (ja) 2018-05-16

Family

ID=54885590

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014114059A Expired - Fee Related JP6323179B2 (ja) 2014-06-02 2014-06-02 物体検出システムおよび物体検出方法

Country Status (1)

Country Link
JP (1) JP6323179B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021144254A (ja) * 2018-05-23 2021-09-24 シャープ株式会社 画像解析装置、画像解析システムおよび画像解析方法
CN113727009B (zh) * 2020-05-25 2022-11-08 杭州海康威视数字技术股份有限公司 跟踪显示方法、装置和存储介质
CN112634366B (zh) * 2020-12-23 2023-10-17 北京百度网讯科技有限公司 位置信息的生成方法、相关装置及计算机程序产品
CN117197224B (zh) * 2023-08-16 2024-02-06 广东工业大学 一种基于残差网络的拉曼光谱仪自适应聚焦装置和方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4469980B2 (ja) * 2004-12-21 2010-06-02 国立大学法人静岡大学 移動体追跡のための画像処理方法
JP5743849B2 (ja) * 2011-10-27 2015-07-01 株式会社日立製作所 映像解析装置及びシステム

Also Published As

Publication number Publication date
JP2015228164A (ja) 2015-12-17

Similar Documents

Publication Publication Date Title
JP6323179B2 (ja) 物体検出システムおよび物体検出方法
US7742634B2 (en) Image processing method, three-dimensional position measuring method and image processing apparatus
US20080232715A1 (en) Image processing apparatus
JP2007000205A (ja) 画像処理装置及び画像処理方法並びに画像処理プログラム
WO2012063594A1 (ja) オブジェクト表示装置及びオブジェクト表示方法
US20200134384A1 (en) Abnormality detection device
EP2038845A2 (en) Image processing system, image processing program, and image processing method
KR102207408B1 (ko) 이미지 처리를 위한 방법, 장치 및 컴퓨터 판독 가능한 매체
US20080050012A1 (en) Image processing method, image processing apparatus, image processing program and program recording medium
US20200118247A1 (en) Image composition method, image composition device, and recording medium
JP6806066B2 (ja) 物体計数装置、物体計数方法、物体計数プログラム、および物体計数システム
JP3749726B1 (ja) 周期性ノイズ下での低コントラスト欠陥検査方法、繰返しパターン下での低コントラスト欠陥検査方法
CN109345551A (zh) 图像外轮廓中凹包络的检测方法、系统及计算机存储介质
JP4379706B2 (ja) 領域抽出方法
KR101940800B1 (ko) 파트별 영상이미지 합성방식의 도화영상 편집시스템
JP2008243226A (ja) 物体画像抽出方法
US9883102B2 (en) Image processing apparatus, image processing method, program, and camera
JPH10108003A (ja) 画像合成装置および画像合成方法
CN114266781A (zh) 缺陷检查装置、方法以及信息记录介质
JP4854042B2 (ja) 画像生成方法、画像生成装置、および画像生成プログラム
JP2007272578A (ja) 画像処理装置および画像処理方法
US20230296531A1 (en) Information processing apparatus, information processing method, and information processing program
CN112233127B (zh) 一种用于弯道拼接图像的下采样方法
JP4150554B2 (ja) 物体画像抽出方法、物体画像抽出プログラム
JP7429774B2 (ja) 損傷評価装置、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170425

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180313

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180326

R150 Certificate of patent or registration of utility model

Ref document number: 6323179

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees