<本発明について>
本発明は、カメラ等の撮像手段に撮影された映像(画像も含む)や、インターネット等の通信ネットワーク等により外部から取得した各種映像等から人物の部位の認識や動作の認識を高精度に行う。具体的には、本発明は、例えば既存の単眼カメラ1台等を用いて撮影された映像等に対する画像認識により、画像中に含まれる人物等における特定部位(例えば、手先や腕、頭、足、つま先等)を認識する。また、本発明では、認識された特定部位を経時的(時系列的)に追跡することで、正確な挙動認識を行う。
以下に、本発明における部位認識装置、部位認識方法、及び部位認識プログラムを好適に実施した形態について、図面を用いて説明する。なお、以下の処理では、人体の部位認識の一例として手先検出を例に説明するが、本発明においてはこれに限定されるものではなく、例えば頭(顔)、足等の部位であってもよい。
<部位認識装置:機能構成例>
図1は、本実施形態における部位認識装置の機能構成の一例を示す図である。図1に示す部位認識装置10は、入力手段11と、出力手段12と、蓄積手段13と、人体領域検出手段14と、部位認識手段15と、挙動認識手段16と、画面生成手段17と、通知手段18と、送受信手段19と、制御手段20とを有するよう構成されている。
入力手段11は、ユーザ等からの人体領域検出指示や、部位認識指示、挙動認識指示、画面生成指示、通知指示、送受信指示等の本実施形態を実現するための各種指示を受け付ける。なお、入力手段11は、例えばキーボードや、マウス等のポインティングデバイス、或いは、マイク等の音声入力デバイス等からなる。
出力手段12は、入力手段11により入力された指示内容や、各指示内容に基づいて生成された制御データにより、各構成で実行された経過又は結果等の各種情報を表示したり、その音声を出力する。なお、出力手段12は、ディスプレイ等の画面表示機能やスピーカ等の音声出力機能等を有する。
更に、出力手段12は、各機能により出力された結果や画面生成手段17により生成された画面に表示された情報等を外部機器に出力する。つまり、出力手段12は、外部機器への出力として、例えば、プリンタに出力したり、ファイルを生成して蓄積手段13や、予め設定されたデータベース等の記憶装置や記録媒体に出力したり、監視区域(警備対象施設)内のセンサのON/OFFやライトの点灯/消灯を切り替えたり、警備員が所持する携帯端末に対して部位認識結果に基づく関連情報(異常があった場所や内容等)を表示するための制御信号を出力するといった印刷・出力機能等を有する。また、出力手段12は、上述した1又は複数の外部機器に同時に出力することができる。
なお、上述した入力手段11及び出力手段12は、タッチパネルとして一体の構成であってもよい。
蓄積手段13は、上述した本実施形態を実現するための様々な情報を蓄積することができ、必要に応じて読み出しや書き込みが行われる。具体的には、蓄積手段13は、顔の認証や、性別・年代等を推定するのに使用される各種特徴量データや、人体領域検出手段14における人体領域検出結果、部位認識手段15における手先等の部位検出結果、挙動認識手段16における挙動認識結果、画面生成手段17における画面生成結果、通知手段18における通知結果、送受信手段19における送受信情報、制御手段20により制御された情報、エラー発生時のエラー情報、ログ情報、本発明を実現するためのプログラム等の各情報が蓄積される。更に、蓄積手段13は、後述するグラフマッチング用データベースや時系列的に取得される人体領域や所定の部位の移動軌跡に対応する行動パターン情報等を蓄積する。
人体領域検出手段14は、例えば、コンビニエンスストアや百貨店等のレジ付近や、銀行の受付等の所定の監視区域等に設置された各カメラや、巡回している監視ロボットに設けられたカメラ等の撮像手段等により撮影されたリアルタイム映像や、撮影された後蓄積された膨大な量の監視映像、送受信手段19により接続されるインターネット等の通信ネットワークを介して遠隔地にある画像サーバ等に蓄積された映像等の各種映像に対して、その映像中の画像に対して人体領域検出を行い、人物が含まれているか否かを判断する。
具体的には、人体領域検出手段14は、例えば、カメラ等により撮影された映像を、送受信手段19を介して取得し、その取得した映像に含まれる時系列の各画像のうち、所定の画像(各フレーム画像や数フレーム分の間隔を空けた画像等)をキャプチャし、キャプチャした画像について1又は複数の人物を検出する。
また、人体領域検出手段14は、例えば連続する画像フレーム同士を比較して、色情報(輝度、色度等)が所定時間内に変化する場所が存在し、更にその場所で囲まれる領域が所定の領域以上のもの、又は経時的な移動範囲が所定の範囲内のものを人体領域として検出する。なお、人体検出手法については、本発明においてはこれに限定されるものではない。
また、人体領域検出手段14は、人体領域の中心座標、及び人体領域の画像上の大きさを検出し、その人体領域を所定形状により元の画像に合成して人体領域が明確に分かるように画面表示するための各種情報を取得し、蓄積手段13に蓄積させる。なお、人体領域の形状は、例えば矩形や円形、楕円形、他の多角形、人物の外形形状から所定倍率で拡大させた2値のシルエット形状等であってもよい。つまり、人体領域検出手段14は、例えば、人体領域を白塗りにし、その他を黒塗りにしたシルエット形状の画像を生成することができる。更に、人体領域検出手段14は、頭髪、上衣、下衣等の色情報を抽出したり、人物の実空間上での位置座標を算出したりする機能を有していてもよい。
部位認識手段15は、人体領域検出手段14により検出された人物領域に対する所定の部位として、例えば、手先領域を検出する。具体的には、部位認識手段15は、人体領域検出手段14により検出された人物領域に対して細線化を行う。また、部位認識手段15は、細線化された画像から、その端点や分岐点等の点同士の接続関係を表す行列(グラフ)に変換する。
また、部位認識手段15は、原画像全体に対してエッジ検出を行い、検出された画面全体のエッジ情報から、人体領域のエッジを抽出する。また、部位認識手段15は、変換したグラフに基づき、予め人物の姿勢等を登録した人物モデルグラフ(行列モデル)を用いてマッチング(モデルグラフマッチング)等を行うこともできる。これにより、得られた領域が人物であるかどうかを判別すると共に、手先に該当する1又は複数の端点をその辞書から得ることができ、端点を手先として認識することができる。
また、部位認識手段15は、認識対象が手先であれば、片手又は両手の部位を認識してもよく、また手先以外にも頭や足等、予め設定される複数の部位のうち、1又は複数の部位を、予め設定されたそれぞれの形状や色等の特徴を用いたパターンマッチング処理等を行うことで、同時に認識してもよい。なお、手先の検出においては、例えば、最初に、画像中に含まれる対象人物の一方の手の手先領域を認識し、その後、認識した手先領域の特徴に基づいて、同一画像中の他の手先領域を認識することで両手を認識することができる。
更に、部位認識手段15は、後述するように、人体の頭部や手先等の各部位の判別を行ったり、例えば手先等の所定の部位の位置を特定する前に、その手先候補の推定を行うこともできる。なお、部位認識手段15の具体例については後述する。
挙動認識手段16は、人体領域検出手段14により検出された人体領域、及び/又は、部位認識手段15により認識された所定の部位(1又は複数の部位)を、撮影された映像から時系列に取得し、取得した人体領域や部位の連続的な移動方向、移動速度、所定動作の繰り返し回数等により対象人物の挙動を認識する。なお、挙動認識手段16は、例えば、人体領域及び所定の部位の時系列情報と、予め設定された行動パターンとを照合して、その人物挙動を認識することができる。
具体的には、挙動認識手段16は、例えば、手先を左右に激しく移動させる等、手先の時間経過に伴う移動状態や手先の位置情報等から、手先の突き出し行為の有無及び挙動等を認識する。また、挙動認識手段16は、例えば、予め設定された行動パターンとして、人体領域がコンビニエンスストアのレジ付近を何度も往復するような場合、レジ付近で所定時間以上停止しているような場合には、その人物を不審者として認識することができる。
また、挙動認識手段16は、設置されたカメラの設置場所や位置等の位置情報と人体領域から顔領域を抽出し、その顔領域から顔の特徴点を取得して、顔の向き等により挙動を認識することもできる。なお、顔の特徴点は、例えば撮影された画像に含まれる顔における目や鼻、口等の位置情報からその顔の特徴量を取得し、予め設定された顔として検出されるための特徴量の照合パターンを用いたマッチング処理等を行うことにより人物の顔を検出する。また、上述の顔検出処理に限定されず、例えばエッジ検出や形状パターン検出による顔検出、色相抽出又は肌色抽出による顔検出等を用いることができる。
更に、挙動認識手段16は、顔領域の中心座標(位置情報)、及び領域の画像上の大きさ(サイズ)を検出し、その顔領域を所定形状により元の画像に合成して顔領域が明確に分かるように画面表示するための各種情報を取得し、蓄積手段13に蓄積させることもできる。なお、顔領域の形状は、本発明においては、矩形や円形、楕円形、他の多角形、人物の顔の外形形状から所定倍率で拡大させたシルエット形状等であってもよい。
画面生成手段17は、カメラにより撮影された映像や人体領域検出手段14により検出された人体領域、本実施形態における部位認識を行うためのメニュー画面、部位認識を行うための入力画面、人体領域結果、部位認識結果、挙動認識結果、通知手段18における通知結果等、本実施形態における部位認識処理を実現するうえで必要な各種画面を生成する。このとき、画面生成手段17は、上述した各構成により処理された結果を表示する画面を生成するだけでなく、蓄積手段13等に予め設定された各種データを表示するための画面を生成することもでき、例えば撮影された人物の領域に対応する位置情報等に関する数値化されたデータ(例えば、座標や時間情報、人物情報)等を表示させることもできる。
なお、画面生成手段17が画面生成に必要な各種情報は、蓄積手段13に予め蓄積されている情報等から必要な情報を適宜読み出して使用することができる。また、画面生成手段17は、生成された画面等を出力手段12としてのディスプレイ等に表示したり、スピーカ等により音声等を出力することができる。
通知手段18は、挙動認識手段16により得られる認識結果において、人に襲い掛かる動作であったり、殴る、蹴る等の動作であった場合には、例えば危険人物である旨等を示す緊急信号を生成し、生成された緊急信号をユーザや管理者、警備会社等におけるそのビルの担当警備員、監視員、代表責任者、監視ロボット等の所定の連絡先に通知する。また、通知手段18は、その挙動を認識した画像に関する情報(撮影日時、撮影場所、その前の所定時間分の映像等)と、その特定物体の情報を画面生成手段17により生成させて、出力手段12により表示させる。
なお、通知手段18は、例えば監視ロボット等に通知を行う場合には、その監視ロボットが対象者と対面しているか又は監視ロボットが備える撮像手段により対象者が撮影されるほど接近した位置にいるため、監視ロボットから対象者に対して音声メッセージを出力させたり、警報ランプや非常音等により周囲に対して注意を促すような処理を行わせるような監視ロボットに対する制御信号を通知することもできる。
送受信手段19は、LAN(Local Area Network)やインターネット等の通信ネットワーク等を介して1又は複数のカメラや監視ロボットが備える撮像手段からの監視映像を受信する。また、送受信手段19は、例えば、上記の通信ネットワーク等を介して遠隔地にある画像サーバ等に蓄積された各種映像の中から必要な情報を選択して取得することもできる。
ここで、送受信手段19は、カメラから直接監視映像を受信し、リアルタイムに処理して事前に犯罪を予防することが好ましいが、例えば予めカメラで取得した映像をどこかに一時的に保存しておき、その保存された情報をまとめて上述した本実施形態における各種処理を行ってもよい。
また、送受信手段19は、装置内の蓄積手段13に蓄積されている各種プログラムや各種データを他の端末に送信したり、他の端末から各種データを受信するための通信インタフェースとして用いることができる。
制御手段20は、部位認識装置10における各機能構成全体の制御を行う。具体的には、制御手段20は、入力手段11により入力されたユーザからの指示情報等に基づいて、上述した各機能構成における処理を実行させる等の各種制御を行う。
<部位認識装置:ハードウェア構成例>
ここで、上述した部位認識装置10においては、各機能をコンピュータに実行させることができる実行プログラム(部位認識プログラム)を生成し、例えば汎用のパーソナルコンピュータ(PC)、サーバ等にその実行プログラムをインストールすることにより、本実施形態における部位認識を実現することができる。
ここで、本実施形態における部位認識処理が実現可能なコンピュータのハードウェア構成例について図を用いて説明する。図2は、本実施形態における部位認識処理が実現可能なハードウェア構成の一例を示す図である。図2における部位認識装置10のコンピュータ本体には、入力装置31と、出力装置32と、ドライブ装置33と、補助記憶装置34と、メモリ装置35と、各種制御を行うCPU(Central Processing Unit)36と、ネットワーク接続装置37とを有するよう構成されており、これらはシステムバスBで相互に接続されている。
入力装置31は、使用者が操作するキーボード及びマウス等のポインティングデバイスを有しており、使用者からのプログラムの実行等、各種操作信号を入力する。出力装置32は、本発明における部位認識等を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するモニタを有し、CPU36に有する制御プログラムに基づいてプログラム実行結果等を表示することができる。
ここで、本発明において、コンピュータ本体にインストールされる実行プログラムは、例えば、CD−ROM等の記録媒体38等により提供される。プログラムを記録した記録媒体38はドライブ装置33にセット可能であり、記録媒体38に含まれる実行プログラムが、記録媒体38からドライブ装置33を介して補助記憶装置34にインストールされる。
補助記憶装置34は、ハードディスク等のストレージ手段であり、本発明における実行プログラムや、コンピュータに設けられた制御プログラムの他に、ドライブ装置33から読み取ることができる各種データを蓄積し、必要に応じて入出力を行うことができる。また、上述した部位認識で得られる各種データ等を格納することもできる。
メモリ装置35は、CPU36により補助記憶装置34から読み出された実行プログラム等を格納する。なお、メモリ装置35は、ROM(Read Only Memory)やRAM(Random Access Memory)等からなる。
CPU36は、OS(Operating System)等の制御プログラム、メモリ装置35により読み出され格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御する。
また、CPU36は、本発明における実行プログラム及び制御プログラムにより、本実施形態における部位認識処理を実現することができる。なお、プログラムの実行中に必要な各種情報は、補助記憶装置34から取得することができ、また格納することもできる。
ネットワーク接続装置37は、通信ネットワーク等と接続することにより、実行プログラムを通信ネットワークに接続されている他の端末等から取得したり、部位認識プログラムを実行することで得られた各種情報若しくは当該プログラム自体を他の端末等に提供することができる。
なお、本発明における実行プログラムはCD−ROM等の持ち運び可能な記録媒体38に格納することにより任意の端末で、そのCD−ROMから実行プログラムを取得し実行することができる。
なお、記録媒体38は、上述したCD−ROMの他、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
上述したようなハードウェア構成により、特別な装置構成を必要とせず、低コストで高精度に本発明における部位認識処理を行うことができる。また、プログラムをインストールすることにより、汎用のパーソナルコンピュータ等で本発明における部位認識処理を容易に実現することができる。
<部位認識処理例>
次に、上述した部位認識装置10や部位認識プログラムを用いた本実施形態における部位認識処理手順について説明する。
図3は、本実施形態における部位認識の概略処理手順の一例を示すフローチャートである。図3において、まず所定の位置に取り付けられたカメラ等の撮像手段により撮影された映像中に含まれる所定の画像をキャプチャ(取得)し(S01)、キャプチャした画像に含まれる人体領域を検出する(S02)。次に、S02の処理の結果として人体領域があるか否かを判断し(S03)、人体領域がある場合(S03において、YES)、その人体領域に対して上述した人体の所定の部位(手先等)を認識し(S04)、その認識した部位を時系列的に追跡し、その結果から挙動認識を行う(S05)。なお、挙動認識は、必要に応じて選択的に行うことができる。なお、S04の処理において、画像中に複数人数が撮影されていれば、その人物毎の所定の部位が抽出される。
その後、S02の処理における人体領域検出結果やS04の処理における部位認識結果、S05の処理における挙動認識結果等をディスプレイの出力手段等に表示する画面を生成し(S05)、生成した画面を表示する(S07)。なお、S07の処理では、1つ画像からだけではなく、例えば時系列の映像から選択された複数の画像における人体領域検出や部位検出、挙動等の比較を行って、その比較画像を表示する行うこともできる。
また、S05の処理における挙動認識において、不審者又は危険人物等であると判断された場合には、ユーザや管理センタ、警備員等に通知を行う(S08)。
ここで、S03の処理において人体領域がない場合(S03において、NO)、又はS08の処理が終了後、部位認識処理を終了するか否かを判断し(S09)、部位認識処理を終了しない場合(S09において、NO)、S01に戻り、次の対象画像をキャプチャして後続の処理を行う。また、ユーザ等からの終了指示等により部位認識処理を終了する場合(S09において、YES)、処理を終了する。
<本実施形態における部位認識例>
次に、上述した本実施形態における部位認識手段15における部位認識例について説明する。なお、以下の処理では、便宜上、人体領域検出手段14における処理内容も説明する。
<第1の実施例:円検出>
まず本実施形態における部位認識の第1の実施例について具体的に説明する。図4は、本実施形態における部位認識の第1の実施例を説明するための図である。図4に示す第1の実施例では、例えば、画像から検出した人体領域全体に「手先」らしい円を探索し、その円から手先を検出するものである。
つまり、円検出は、人体のエッジ検出後、人体の上部から順に、予め設定された画像サイズに対応する人体の大きさを基準に設定した円の探索を行い、手先の位置を認識する。
図4に示すように、所定の位置に取り付けられたカメラ等の撮像手段により撮影された映像中に含まれる所定の画像をキャプチャ(取得)し、キャプチャした原画像(図4(a))に含まれる人体領域を検出する。具体的には、人体領域検出手段14により人体領域をシルエットとして検出する(図4(b))。なお、図4(b)の例では、人体領域を白塗りとし、その他を黒塗りとしているが、本発明においてはこれに限定されるものではない。
また、第1の実施例では、画像に人体領域がある場合、上述した人体領域検出と平行して画像全体に対するエッジを検出する(図4(c))。なお、このエッジ検出処理も上述した人体領域検出手段14により検出することができる。
次に、エッジ化された画像の中から上述した人体領域に対応させて人体のエッジを検出する(図4(d))。なお、本実施形態におけるエッジとは、画像中における隣接画素間の色差や輝度差等に基づき、物体の輪郭部分等を抽出する処理等を意味している。
次に、第1の実施例では、所定の部位(手先)部分を抽出するための円検出を行う。具体的には、部位認識手段15は、人体エッジ領域を対象にして、頭等の端部から人体領域のエッジが円形に近い箇所を走査して探していく。なお、走査方向は、胴体方向から手先に対して行う。そして、例えば、最初に検出された円形に近い部分を手先部分として検出する(図4(e))。
<円検出処理について>
ここで、上述した円検出処理について具体的に説明する。図5は、円検出処理を説明するための一例を示す図である。図5の例では、上述した人体エッジ検出処理により検出された人体エッジを含む予め設定された注目領域内に円又は円に近い形状(楕円や正方形、正六角形等)からなる所定の形状があるか否かを判断して円検出を行う。
具体的には、図5(a)、(b)に示すように、注目点(中心)から人体エッジ上のある点まで直線を基準にして、ある点からのエッジ方向の角度を取得し、注目領域内の全ての人体エッジ上の点に対してエッジ方向の角度を、所定角度毎のヒストグラムに加算する。このとき、もしエッジの形状が円形であれば、全ての点のエッジ方向は、例えば図5(a)の左図に示す矢印のように注目点からある点までの直線に対して90°となり、ほぼ円形であれば、図5(b)に示すように80〜100度以内のヒストグラムの値(加算値)が大きくなる。そのため、これらの結果を、注目点を細線化した線分上で移動させて計測していくことで、円形部分を検出することができる。
なお、図5(b)に示すように注目領域内に円がない場合には、各エッジと中心がなす角度のヒストグラム結果はバラバラとなる。
ここで、本実施形態では、例えば、加算値の値が予め設定された閾値以上のときにその部分が円形であると推測することができる。なお、閾値は、画質や画像中における人体領域の大きさ等により適宜変更することができる。また、円検出の際には、上述したグラフ化情報に基づいて胴体部分から手のほうに向けて注目点を移動していき、最初に円を検出した部分の注目点を手先の位置とする。これは、2番目以降の円検出は、把持物体である可能性が高いからである。なお、上述の処理は、画像中に含まれる全ての手先候補に対して行われる。
上述したように、第1の実施例における円検出処理を行うことで、画像中の人体に対する所定の部位(例えば、手先等)の位置を高精度に取得するこができる。なお、本実施形態において、手先は、握った状態でも開いた状態でも、対応する所定の形状を用いて容易に認識することができる。また、所定の形状は、認識対象の部位毎に設定されており、例えば足であれば足先の形状が設定され、頭であれば大きめの円形状が設定される。
<第2の実施例:細線化画像>
次に、本実施形態における部位認識の第2の実施例について具体的に説明する。図6は、本実施形態における部位認識の第2の実施例を説明するための図である。図6に示す第2の実施例では、例えば、上述した第1の実施例における円検出を行わずに、細線化処理を行い、細線化された線分の端点のうち、所定の画素の位置から手先位置を判断するものである。
具体的には、図6に示すように、まず原画像(図6(a))から人体領域を抽出する(図6(b))。ここまでは、上述した第1の実施例と同様の処理を行うため、ここでの具体的な説明は省略する。
次に、図6(b)で得られた人体領域に対して細線化を行う。ここで、細線化処理は、図6(b)に示す人体領域のシルエットを圧縮して得られるものであり、具体的にはシルエットの外周形状を基準にし、中心点を結んで細線化を行うものである。
その後、細線化した情報に基づいて、その線分の形状や分岐点、端点、又は、その組み合わせ、他の分岐点や端点との相対位置関係等から画像中における手先部分を認識する(図6(c))。
つまり、第2の実施例では、細線化した端点が、どの画素位置にあるかで手先位置を判断する。
<第3の実施例:円検出+細線化画像>
次に、本実施形態における部位認識の第3の実施例について具体的に説明する。図7は、本実施形態における部位認識の第3の実施例を説明するための図である。図7に示す第3の実施例では、上述した第1の実施例と第2の実施例とを組み合わせたものである。つまり、上述した第1の実施例における円検出を行う場合に、細線化された線上を中心候補として円検索を行うものである。
具体的には、図7に示すように、上述した第1の実施例の図4(a)〜(d)までは、図7(a)〜(d)と同一の処理を行う。その後、図7(b)に示す人体領域のシルエットを圧縮して細線化を行う(図7(e))。
その後、細線化した線分を円検出における円の中心部と併せて、線分の端部から移動させていくことで、人体領域のシルエット画像の外枠が円形の部分を抽出する。そして、検出された円形部分を手先部分として認識し、その中心位置を手先部分の位置座標として取得する(図7(f))。
第3の実施例に示すように、細線化した線上を円の中心候補として、円探索を行うことで、処理コストを削減し、効率的に円検出を行うことができる。
<第4の実施例:細線化グラフ>
次に、本実施形態における部位認識の第4の実施例について具体的に説明する。図8は、本実施形態における部位認識の第4の実施例を説明するための図である。図8に示す第4の実施例では、上述した第2の実施例における細線化画像を行列化し、予め設定された行列モデル(モデルグラフ)とマッチングを行い、一致した行列モデルに予め設定されている部位情報に基づいて、手先の位置を認識する。なお、以下の説明では、上述した行列モデルとのマッチング処理を、モデルグラフマッチングをいう。
つまり、図8の例では、まず上述した第2の実施例等を同様に、キャプチャした原画像
(図8(a))から人体領域を検出する(図8(b))。その後、人体領域のシルエットに基づいて細線化処理を行い(図8(c))、細線化された線分に基づいてモデルグラフマッチングを行い(図8(d))、手先の検出を行う(図8(e))。
<行列化処理について>
ここで、上述した細線化画像の行列化処理について、図を用いて具体的に説明する。図9は、本実施形態における行列化処理を説明するための図である。なお、本実施形態における行列化処理では、例えば、細線化した情報に対し、その線分中における分岐点と、端点とを設定し、設定された分岐点と端点とを行列により表記することにより、グラフ化を行っている。
具体的には、図9に示すように、行列の行を分岐点の番号とし、行列の列を分岐点と端点の番号とし、行列要素が0の場合には、「接続関係なし」とし、行列要素が1の場合には、「接続関係あり」として行列によるグラフ化を行う。
つまり、図9の例では、分岐点の0番は、分岐点の1番、端点の0,1,2番と接続し、分岐点の1番は、分岐点の0番、端点の3番、4番と接続していることを意味している。
なお、上述したようにして生成された行列は、予め設定された行列モデルとマッチングを行うが、その行列モデルには、予め各分岐点又は端点が、どのような部位であるかを示す部位情報、及びその位置情報が設定されている。したがって、モデルグラフマッチングにより、一致した行列モデルを抽出することで、手先の部位に相当する端点を容易且つ正確に取得することができる。
なお、上述した図8(d)では、便宜上、細線化されたモデルが表示されているが、実際には、図9に示すように、グラフ化された行列モデルとして蓄積手段13等に蓄積されている。
<モデルグラフマッチング処理ついて>
ここで、上述したモデルグラフマッチング処理について具体的に説明する。図10は、グラフマッチングを説明するための図である。
図10に示すように、予め設定された人物の所定の動作パターンに対応する複数のモデルグラフが蓄積されたモデルグラフデータベース(行列モデルデータベース)を用いて、グラフ化された情報に対してそれが人体領域であるか否かを正確に確認することができる。
本実施形態では、例えば、各モデルグラフに予め正確な手、頭、足等の部位情報を設定しておき、その部位情報に基づいて、マッチングしたグラフから、その人体の手先部位等を高精度に取得することができる。
したがって、図10に示すように、モデルグラフデータベースを用いることで、例えば画像から得られたグラフ化データが、人体ではない場合やノイズ等で複雑に分岐した場合等のときに一致しないようにすることで、より高精度に人体の検出やその手先の位置や向き等の情報を取得することができる。なお、この場合には手先の状態は限定されず、握っていても開いていてもよい。
また、例えば、対象人物が大きな帽子を被っていたり、手を繋いでいたり、杖をついている等、人物そのものとは異なる場合であっても、対応するモデルグラフを予め設定しておくことで、適切に部位認定を行うことができる。
なお、上述したモデルグラフデータベースは、予め蓄積手段13に蓄積されていてもよく、送受信手段19を用いてインターネット等の通信ネットワークを介して、外部装置から取得してもよい。
上述したマッチングを行うことにより、特定の姿勢(手を挙げている等)を認識でき、人体検出時に誤って検出された領域を、無駄な処理することなく除外することができる。
なお、図10に示すモデルグラフは概念図であって、実際のモデルグラフのデータは、具体的には行列等に基づいて登録されている。
モデルグラフを用いることで、無駄な情報を省いて迅速なマッチング処理を行うことができ、また高精度に部位の認識を行うことができる。
<第5の実施例:重み付き細線化グラフ>
次に、本実施形態における部位認識の第5の実施例について具体的に説明する。第5の実施例では、上述した第4の実施例における処理とほぼ同様の処理を行う(図8(a)〜(e))。
しかしながら、第5の実施例では、第4の実施例と比較すると、細線化画像を重み付きの行列にし、その行列に基づいてモデルグラフマッチングを行うものである。
ここで、上述の内容について、図を用いて具体的に説明する。図11は、重みを付与した細線化グラフの生成手法について説明するための図である。
第5の実施例におけるグラフ化処理では、グラフ化される値(行列要素)に対して重みを付与する。
具体的には、図11に示すように、カメラ等により撮影された映像から所定のフレーム画像をキャプチャし、キャプチャした画像から上述したように人体領域を検出し、検出された人体領域に対して細線化を行う。また、その細線化情報に基づいて上述したように分岐点及び端点からなる行列を用いてグラフ化を行う。
このとき、カメラの設置位置等に対応させて、人体領域を含む画像領域を更に複数の領域(ゾーン)に細分化し、細分化したデータに対して重み付けを付加してグラフ化(行列化)を行う。
図11の例では、人体領域に対応する画像領域に対して、例えば、全体の縦の長さを基準に上から1/5のゾーンを頭部ゾーン、下から足部ゾーン、残りの領域を手部ゾーンとして3つのゾーンに細分化している。そして、細分化した頭部ゾーンの重みを1とし、手部ゾーンの重みを2とし、足部ゾーンの重みを3として、それぞれグラフとして反映させる。更に、分岐点の部分と端点との部分とで異なる数値(例えば、分岐点9、端点1等)にすることで、違いを明確にすることができる。
このように、各ゾーン毎に予め設定した重みや点の種類毎に異なる値を付与することにより、そのグラフを参照するだけで、どの部分の端点であるかを容易に把握することができ、その部分から手先やその他の部位(例えば、頭、足等)を容易に検出することができる。また、より重要なゾーンで検出された端点又は分岐点には、高い重みを付加しておくことにより、重要なゾーン毎に端点や分岐点を管理することができる。なお、予め設定され蓄積手段13等に蓄積されているモデルグラフにも上述したような重み付けがなされている。
したがって、第5の実施例によれば、重み付けした行列モデルとモデルグラフとをマッチングすることでより確実に行列と同一のモデルグラフを取得することができ、これにより手先等の所定の部位の位置を高精度に取得することができる。
<モデルグラフに対応する部位情報について>
ここで、上述したモデルグラフに対応する部位情報の具体例について図を用いて説明する。図12は、モデルグラフデータベースを説明するための図である。なお、図12(a)は、モデルグラフデータベースのデータ項目例を示し、図12(b)は、モデルグラフデータベースの具体的なデータ例を示している。
図12(a)に示すデータ項目としては、例えば、モデルグラフ番号によりモデルを識別する識別情報としての「ModelID」と、そのモデルの分岐点数を示す「branchnum」と、そのモデルのノード数(分岐点+端点数)を示す「nodenum」と、そのモデルグラフ(行列モデル)(例えば、図11に示すような重み付き隣接行列等も含む)を示す「graph」と、モデル中の手先数を示す「handCount」等がある。また、図12(a)に示す項目に対するデータは、図12(b)に示すように、複数のモデルがデータベースに蓄積されている。なお、このデータの配列や数値の条件等については、本発明においては特に制限されるものではない。
例えば、手先を認識する際のモデルグラフマッチングでは、モデルグラフデータベースの構成要素のうち、「graph」は手、頭、足の情報を表すものであり、各部位を識別するための重み付けがされる。なお、重み付け方法は、上述したように、例えば、得られた人体領域を5等分し、上1/5を頭部ゾーン、下1/5を足部ゾーン、残りの中央部を手部ゾーンとし、細分化した領域を上から順に1〜3の重みを付与する。また、例えば分岐点同士の接続には、9を付与することもできる。なお、本実施形態では、例えば、上述した第4の実施例のように、重み付けを付与していなくてもよい。
なお、上述したように、例えば人体領域を5等分する重み付け方法を用いた場合に、対象人物が手を挙げていると、頭部候補が2つとなり手の認識が難しくなるという問題がある。しかしながら、この場合には、上述した重み付けを行った細線化グラフと、予め用意したモデルグラフとのマッチングを行うことにより、特定の姿勢(手を挙げている等)を認識でき、人体検出時に誤って検出された領域を、無駄な処理することなく除外することができる。
なお、上述したように、例えば人体領域を5等分する重み付け方法を用いた場合に、対象人物が手を挙げていると、頭部候補が2つとなり手の認識が難しくなるという問題がある。しかしながら、この場合には、上述した重み付けを行った細線化グラフと、予め用意したモデルグラフとのマッチングを行うことにより、特定の姿勢(手を挙げている等)を認識でき、人体検出時に誤って検出された領域を、無駄な処理することなく除外することができる。
ここで、対象人物の手が挙がっている場合の対策処理について、図を用いて説明する。図13は、対象人物の手が挙がっている場合の対応を説明するための図である。図13(a)には、手が挙がっている場合の細線化した状態を示しており、図13(b)は、拡張したモデルグラフデータベースの項目例を示している。図13(b)の項目例では、図12(a)のデータ例と比較して、挙手時の頭部位置決定処理用のパラメータである「head」と、手が上がっているモデルであることを示す「handsUP」等が追加されている。
つまり、図13の例では、手が挙がっているか否かを「handsUp」にて判別し、例えば、「handsUp」が1以上の時、「head」の値別に処理を行い、手先と頭部を分離する。つまり、図13(a)に示すように頭部ゾーンに2つの端点がある場合に、そのx方向(水平方向)を比較し、分岐点から離れた位置にある方を手先とするように設定する。
また、一例として、片方の手先が上がっている場合(handsUp:1)、0番目の分岐点のx座標値と頭部・手先候補を比較し、x座標値が近い方を頭部とするという処理を行うことで、手先と頭部を分ける。「head」には、どの分岐点と比較すべきかの情報を示している。手が挙がっている場合の対策処理は、マッチング処理の結果として、手を挙げているというパラメータが抽出した場合に上述した頭部・手先判別処理が行われる。なお、頭部・手先判別処理は、上述した部位検出手段15により行われる処理である。
上述したように、モデルグラフマッチング処理を行うことで、特定の姿勢(手を挙げている等)を認識でき、人体検出時に誤って検出された領域を、無駄な処理することなく除外することができる。
<第6の実施例:円検出+細線化画像の応用>
次に、本実施形態における部位認識の第6の実施例について具体的に説明する。図14は、本実施形態における部位認識の第6の実施例を説明するための図である。図14に示す第6の実施例では、上述した第3の実施例における円検出と細線化処理を行う場合に、手先候補の推定を行う。なお、手先候補の推定は、上述した部位検出手段15により行われる処理である。
第6の実施例では、図14に示すように手先候補として腕の領域を推定する(図14(f))。具体的には、図14(a)〜図14(e)までの処理は、上記した第3の実施例(図7)と同様であるが、第6の実施例の場合には、更に細線化したデータから腕の領域を推定する。なお、腕の領域の推定は、細線化した線分を画面に表示し、ユーザが入力手段等を用いて指示した領域を腕の領域と推定してもよく、また線分の端点及び分岐点の位置関係等に基づいて腕の領域を推定してもよい。
その後、第6の実施例では、推定された手先候補の領域のみに円検出を行い、手先を特定する(図14(g))。これにより、円検出による探索範囲を減らせることができるため、より効率的且つ迅速に部位認識を行うことができる。
<第7の実施例:円検出+細線化グラフ(重み付きも含む)の応用>
次に、本実施形態における部位認識の第7の実施例について具体的に説明する。図15は、本実施形態における部位認識の第7の実施例を説明するための図である。図15に示す第7の実施例では、上述した第6の実施例に対し、更に細線化処理による細線化された線分(図15(e))から手先候補を推定する際に、上述したモデルグラフとのグラフマッチングを行う(図15(f))。
具体的には、上述した行列モデル(モデルグラフ)に手先候補となる腕の位置又は領域等を1又は複数設定しておき、細線化した線分を行列化(グラフ化)して、行列モデルとマッチングすることにより、手先候補の領域(図15(g)を容易に取得することができる。
その後、第7の実施形態では、モデルグラフマッチングにより得られる推定された手先候補の位置又は領域のみに対して円検出を行い、手先を特定する(図15(h))。これにより、より正確に候補の推定を行うことができ、円検出による探索範囲を更に減らせることができるため、より効率的且つ迅速に部位認識を行うことができる。
<人体エッジとグラフマッチングとを用いた手先の円検出手法について>
ここで、例えば上述した第7の実施例に示す人体エッジとグラフマッチングとを用いた手先の円検出手法について、具体的に図を用いて説明する。図16は、本実施形態における人体エッジを用いた円検出手法の具体例を説明するための図である。
本実施形態における人体エッジを用いた円検出手法では、例えば次の(ア)〜(エ)の例が考えられる。
(ア)エッジ検出→エッジの2値化→ヒストグラムに蓄積、判別を行う。
(イ)エッジ検出→エッジの2値化→エッジの細線化→ヒストグラムに蓄積、判別を行う。
(ウ)エッジ検出→エッジの2値化→エッジの細線化→エッジの円に対する占有度をヒストグラムに蓄積し、判別を行う。
(エ)細線化画像を用いて円の中心候補を絞り込んだ、上記(ア)〜(ウ)の方法を行う。ここで、上記(ア)〜(ウ)の具体的な処理について、以下に説明する。
<(ア)の手法について>
まず、上述したように画像全体のエッジを検出した後、有効なエッジのみを残すため、閾値処理等によりエッジを2値化する。その後、該当領域のエッジをヒストグラム化し、円判定を行う。ヒストグラムに加算する際は、エッジがある画素1つに対し、該当の角度に1加算する。2値化前のエッジの値を、ヒストグラムに加算してもよい。
このとき、図16(a)に示すように、原画像からエッジ検出を行った際には、エッジ強度情報を持ち、その後エッジの2値化を行った場合にはエッジか否かの情報を持つことになる。
<(イ)の手法について>
上述した(ア)の手法では、エッジ強度が高い場合等に円が2画素幅以上の線で構成されることでヒストグラムの加算値が増え、円らしい箇所が多く検出されてしまう可能性がある。そこで、(イ)の手法では、図16(b)に示すように、エッジを細線化し、1画素の線とすることで、円ではない箇所の無駄な検出を抑える。ここで、エッジの2値化及び細線化には、一般的な処理であるCannyのエッジ検出処理を用いているが、本発明においてはこれに限定されるものではない。また、(イ)の手法の場合、ヒストグラムに加算する際は、エッジがある画素1つに対し、該当の角度に1加算する。
<(ウ)の手法について>
上述した(イ)では、円の大きさが大きくなるほど、円を構成する画素数が増え、ヒストグラムの加算値が高くなる。一方、小さい円は加算値が少なくなり、票数に閾値を与えて円検出を行う場合に、小さい円を検出しにくくなる可能性がある。また、小さい円を検出するためには閾値を下げる必要があり、その結果、円ではないエッジの塊を誤って円として検出してしまう可能性がある。
そこで、(ウ)の手法では、注目領域の中心から注目する画素の距離を用い、注目画素が仮に真円を構成していると仮定したうえで、その注目画素が円周を占める割合(以下、「円占有度」という)をヒストグラムに加算する方法を用いる。これにより、大小の円を統合的に扱うことができ、円の大きさに関係なく円検出を行うことができる。
ここで、(ウ)の手法について、図16(c)等を用いて、更に具体的に説明する。まず定数として注目領域の中心から注目する画素までの距離をrとする。また、注目画素がエッジである場合、注目領域の中心をそのまま中心とした真円を構成していると仮定し、その注目画素が画素のサイズである「1」の長さ分円周を占めていることとする。このとき、半径がrである円の円周は、「2πr」である。したがって、注目画素の円占有度は、「1/2πr」である。このようにして算出した円占有度をヒストグラムに加算し、同様の処理を注目領域の全画素に対して行う。このとき、注目領域にある図形が、注目領域の中心をそのまま中心とするエッジの途切れていない真円であれば、理想的には2πr個エッジが存在し、図16(c)に示すように、ヒストグラムの値が1(つまり、円周を100%途切れなくエッジが並んでいる)と考えることができる。これにより、例えば、「円占有度が50%以上であれば円とする」等の閾値を用いて円の判別を行うことができる。
この方法では、注目領域にある図形が楕円形状の場合でも、円周をどの程度エッジで占めているかを把握し、他の領域との比較を行う際の有用な指標となる。楕円形状の場合、中心に近い(短軸に近い)エッジは占有度が大きくなり(1票の重み大)、逆に中心から遠い(長軸に近い)エッジは占有度が小さくなる(1票の重み小)。楕円が途切れていない場合は、円占有度が1に近似できる値になると考えられる。
ただし、円のどの位置にある場合でも円周を「1」占めていると仮定しているため、円が途切れていない場合に、円占有度が1を超える場合がある。つまり、円占有度を用いたヒストグラムを使う場合、エッジの2値化・細線化をすることで、より有効な処理が可能となる。
ここで、上述の(ウ)の処理手順についてフローチャートを用いて説明する。図17は、(ウ)の処理手順の一例を示すフローチャートである。図17において、まず上述したようにエッジを検出し(S11)、検出したエッジの2値化を行い(S12)、細線化を行う(S13)。
次に、注目領域分のループ処理を行う。注目領域分のループ処理としては、注目領域の画素分ループ処理として、まず注目している画素がエッジか否かを判断し(S14)、エッジである場合(S14において、YES)、上述したように円占有度を算出し(S15)、ヒストグラムに追加する(S16)。S16の処理が終了後、又は、S14の処理において、注目している画素がエッジでない場合(S16において、NO)、次の画素に対して同様の処理を行う。
画素分のループ処理が終了後、そのヒストグラムの結果から、その注目領域が円であるか否かを判断し(S17)、円でない場合(S17において、NO)、他の注目領域を設定し、その注目領域に対して同様の処理を行う。また、S17の処理において、その注目領域が円である場合(S17において、YES)、処理を終了する。
なお、上述の注目領域分のループ処理としては、例えば、予め設定された細線化画像の腕上を円の中心候補とし、胴体方向から手先方向までを対象としてループ処理を行うことができるが、本発明においてはこれに限定されるものではない。
また、上述の処理では、最初に円が検出された場合又は全領域で円が検出されなかった場合に終了しているが、本発明においてはこれに限定されるものではなく、例えば円検出された注目領域の位置を記憶し、更にループ処理を続けてもよい。
<手先検出の応用例>
次に、本実施形態における手先検出の応用例について説明する。上述した手先検出手法については、画像中に含まれる両方の手について同様の処理をそれぞれの手について行うことによりそれぞれの手先を検出することができるが、本実施形態においてはこれに限定されるものではなく、例えば検出された一方の手先から取得される情報に基づいて、未検出である他方の手先を検出することができる。その具体例について以下に説明する。図18は、手先検出の実施例を説明するための図である。
図18の例では、1つの画像中における同一人物の両手については、一方の手と他方の手は、その色情報や形状の特徴が同一又は類似しているため、例えば検出された一方の手先領域の形状パターンや画像の色情報等の特徴を用いてテンプレートを生成し、生成したテンプレートに基づいて人体領域全体にマッチング処理を行い、最も一致する箇所を手先とする。
具体的に説明すると、まず検出した一方の手先からフィルタ情報を作成する。このフィルタ情報は、対象の画像に撮影されている人体を基準にした手先の大きさ、形状、位置等の手先情報を含んでいる。なお、図18の例では、撮影された人体の身長から推定される手先の大きさ、形状等から生成した円をフィルタとする。また、フィルタの内容は、検出した手先の画素値そのままとする。
次に、このフィルタ情報を用いてテンプレートマッチングを行う。図18では、得られた人体領域の最上部から、右側へ順にフィルタを移動し、その一致度が予め設定される閾値を超えた場合に、その部分を手先とする。
ここで、フィルタ情報に含まれる形状は、円の他、点、矩形、その他任意の形(楕円や長方形)等、自由に設定することができる。また、フィルタ内の値は、検出した手先の画素値の他、肌色として規定した値を領域全体に分布させたり、手先座標上の画素値を領域全体に分布させたり、検出した手先領域の平均画素値を領域内に分布させる等を行うことができる。
また、テンプレートマッチングを行う箇所は、例えば、画像全体、人体領域内、人体領域内の手部ゾーン(手先があると重み付けした範囲)等が可能であり、予め設定された順序や位置に基づいて処理を行うことができる。
更に、本実施例において、類似度を数式により計算することもでき、その場合に計算する式は、一般的に以下に示す式(1)のようなRSSDを用い、算出されたRSSDが予め設定された値以上の場合には、一致であると判断することができる。なお、RSSDの「R」は類似度を示し、「SSD」は「Sum of Sqared Difference」の略であり、距離の算出方法が、差の二乗和を用いているという意味である。
ここで、式(1)におけるMはテンプレート画像の横の画素数を示し、Nはテンプレート画像の縦の画素数を示している。
なお、上述した数式は、本発明についてはこれに限定されるものではない。例えば、式(1)に示す距離は「ユークリッド距離」と呼ばれ、ユークリッド距離は画素同士の直線距離のことであるが、ユークリッド距離の他、「チェス盤距離」「市街地距離」等の考え方があり、本発明ではそれらを用いることも可能である。
また、別の手法として、閾値を越える画素を手先とする場合の他、最も一致度の高い箇所を手先とする方法もある。
更に、他の実施例としては、例えば、予め設定される矩形等の袖口形状に基づいて袖口位置を取得し、手先と袖口位置をペアにしたフィルタを行ったり、手先候補が多数現れた場合に、上述した円検出手法を用いて、最も円形度の高い(円らしい)箇所を手先とするといった処理を行うことができる。
<画面生成手段により生成される画面例>
次に、本実施形態における画面生成手段17により生成される画面例について、図を用いて説明する。図19は、本実施形態により生成される画面の一例を示す図である。
図19に示す画面40では、原画像41、細線化画像42、人体エッジ画像43、部位認識結果画像44等を一度に表示することができる。また、それぞれの画像を選択することで、その対象画像を拡大表示したり、時系列に映像を表示することもできる。なお、映像を表示する場合には、原画像41、細線化画像42、人体エッジ画像43、及び部位認識結果画像44は、それぞれ同期して同じ時間の内容が表示されることが好ましいが、少なくとも1つの画像みが異なった時間の内容を表示させてもよい。
また、本実施形態では、例えば図19に示す部位認識結果画像44のように、画像上に所定の文字情報(例えば、手先の座標や頭部等の部位情報、撮影時刻等)を表示させることができる。
なお、画面生成手段17により生成される画面の内容やレイアウト等については、本発明においてはこれに限定されるものではなく、例えば挙動認識手段16により得られた挙動結果や通知手段18により通知された内容、その他処理実行時における各種エラーメッセージ等を表示することもできる。更に、画面生成手段17は、時間の異なる部位認識結果を連続的に並べて表示させたり、合成して表示させた画面を生成することができる。
ここで、図20は、本実施形態により生成される他の画面例を示す図である。例えば、図20(a)に示すように、人物の挙動が歩行行為と認識した場合には、その移動中の所定フレームを並べて表示する画面を生成する。
なお、歩行行為と認識する場合には、まず上述した部位認識手段15において、両手及び両足の部位を認識し、次に挙動認識手段16において、その両手及び両足の間隔(例えば、大、中、小、無し等)、人体領域の移動距離(矩形中心のx座標の移動、或いは頭部座標の移動等)から挙動を認識することができる。つまり、図20(a)の例では、歩行の状態で部位の間隔が変わり、その周期性が認められるため、手を振っている、足を開閉していると判断することができる。
また、本実施形態では、画面生成手段17により図20(b)に示すように複数のフレームを合成した合成画像を表示することができる。このとき、人体領域が移動していたとしてもその速度によっては重なる部分が存在する。そのため、本実施形態では、図20(b)に示すように、人体領域検出手段14により得られる人体領域の輝度を変更して人体を透けて表示させることができる。また、画面生成手段17は、合成画像を表示する際、例えば、図20(b)に示すように頭部座標の移動イメージを点や矢印等を用いて重ねて表示する画面を生成することもできる。なお、本実施形態では、挙動認識手段16は、上述したように頭部座標の変位のみから挙動(移動行為等)を判断することもできる。
また、図20(c)は、挙動認識として挙手行動を認識したときの連続フレーム画像を示し、図20(d)は、図20(c)の連続フレームを図20(b)と同様に重ね合わせた例を示している。この場合、腕の部分しか移動していないため、図20(d)に示すように、輝度変化させる領域を一部の領域(例えば、腕部分のみ)にして表示させることができる。
また、図20(e)は、挙動認識として殴る行動を認識したときの連続フレーム画像を示し、図20(f)は、図20(e)の連続フレームを図20(b)と同様に重ね合わせた例を示している。この場合、腕の部分しか移動していないため、図20(f)に示すように、輝度変化させる領域を一部の領域(例えば、腕部分のみ)にして表示させることができる。
なお、本実施形態では、図20(a)〜(f)に示すように、部位認識手段15により認識された部位を丸印等で強調表示することもでき、更に挙動認識手段16により得られる移動の軌跡を矢印等で表示することもできる。
更に、画面生成手段17は、手先を認識した位置を拡大させることもでき、これにより、防犯上有用な把持物の情報や、物を掴む行為を、容易に確認することができる。なお、カメラからのリアルタイム映像が表示されている場合には、挙動認識手段16は、撮影されたカメラの機能を用いて、その部位のズームアップした画像を表示させることができる。
上述したように本発明によれば、撮影等により得られた映像や画像に含まれる人物の部位等を高精度に認識することができる。具体的には、本発明によれば、色情報を用いない為、顔や手先を覆うものがあっても実施することができる。また、本発明によれば、照明変化に強いので、顔と手先に色の差異がある場合の他、暗くてもエッジが見えれば部位認識を行うことができる。同時に、照明が強くてもよく、白黒画像であっても色合いの調整が悪くてもよい。
また、人物がカメラに対して正面を向いていなくても部位認識を行うことができる。また本発明は、アナログカメラに限定されず、ネットワークカメラやUSBカメラであってもよく、また赤外線カメラ等であってもよい等、適用範囲が広い。更に、本発明を実施する場合には、カメラ1台から取得した映像又は画像があればよいため、複数のカメラを必要とせず安価である。また、全国各地に多く設置されているアナログカメラからの映像や画像をそのまま用いることができる。
また、本発明によれば、画像の背景等にも限定されず、対象人物に所定の動作やマーカを強要することもなく、把持物があったとしても円検出等を用いることで、容易に所定の部位を取得することができる。
なお、本発明の応用例として、例えば、特定の挙動を認識することで、監視員や警察に自動通報でき、また監視員の負担を軽減することができる。具体的には、本発明は、手先を前後させるような行動を「殴る」とし、警察に即時通報したり、手先を振って移動する(通過する)人物に対しては監視対象外とする等の処理に活用することができる。
また、本発明において、足先の検出に利用すれば足の位置に関する情報を用いて歩行検出も可能になる。また、所定の行為のみ確認すればよいため、確認対象が減り、監視員に複数のモニタを同時に確認させることもできる。したがって、コスト低減を図ることができる。
更に、警備員の巡回において、例えば戸締りや消火器の位置を確認する際に「指差呼称」と呼ばれる指差しの確認を行うが、このような指差呼称が行われた否かを認識することで、警備員の勤怠管理に応用できる。
また、本発明における挙動認識手法を利用して、例えば「手を振ったら照明を消す」といったユーザインターフェースの機能として利用することもできる。また、本発明における特定の挙動の認識により、例えば商品を手に取って戻したというような行動を認識することで、詳細なユーザの動作結果をマーケティングに反映させることができる。
また本発明は、車載カメラによる映像の処理から、手を挙げてタクシーを止める動作を行う人物の認識や交通整理員の動作の認識を可能とする。また、本発明は、上述した人体領域体検出や部位認識を応用して、アニメーション映像を生成することで、既存の防犯カメラを活かし、人物の動作のみを表現したプライバシー映像を作成することもできる。
また本発明は、医師や理学療法士等が不在でも、自動的にリハビリを支援できるシステムに応用できる。例えば、リハビリを行う人物を撮影し、手足の運動機能回復訓練の様子を計測したり、「もっと手を上へ」といったように、手足の位置を適切な位置に指示するシステム等に応用することができる。
以上本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。