情報送信装置及び情報送信方法
【課題】処理の高速化及びネットワークにかかる負荷を低減することを目的とする。
【解決手段】画像中の物体を検出する検出手段と、検出手段で検出された物体の状態を判別する判別手段と、検出手段で検出された物体に関する物体情報及び判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、ネットワークを介して通信可能な処理装置より、送信手段で送信すべき属性情報に関する要求を受信する受信手段と、受信手段で受信された要求に含まれる値に基づいて処理装置に送信する属性情報の内容を決定する制御手段と、を有するによって課題を解決する。
【解決手段】画像中の物体を検出する検出手段と、検出手段で検出された物体の状態を判別する判別手段と、検出手段で検出された物体に関する物体情報及び判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、ネットワークを介して通信可能な処理装置より、送信手段で送信すべき属性情報に関する要求を受信する受信手段と、受信手段で受信された要求に含まれる値に基づいて処理装置に送信する属性情報の内容を決定する制御手段と、を有するによって課題を解決する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報送信装置及び情報送信方法に関する。
【背景技術】
【0002】
モニタリングシステムにおいてネットワークカメラの導入が進んでいる。典型的なモニタリングシステムは、複数のネットワークカメラと、カメラ映像を録画する録画装置と、ライブ乃至は録画映像を再生するビューワーと、から構成される。ネットワークカメラは、画像処理により映像中の異常を検出する機能を持ち、異常が発生すると録画装置やビューワーに通知する。ビューワーは、異常通知を受信すると警告を表示する。また録画装置は、異常の種別や時刻を記録し、後から異常を検索し、異常発生時の映像を再生する。これらの異常映像の検索を高速に行うために、映像と同時に異常状態や物体の有無等の情報をメタデータとして記録する技術がある。
監視装置において、移動物体の位置や外接矩形等属性情報を映像と共に記録し、再生時において移動物体の外接矩形を映像に重畳して表示する方式が開示されている(特許文献1)。また、移動物体情報をメタデータとして配信する技術がある(特許文献2)。
一方、ネットワーク経由でデバイスの状態取得や制御を行う標準規格であるUPnPにおいて、制御端末であるコントロールポイントから制御対象であるデバイスの属性を変化させたり、逆に属性の変化情報を取得したりする技術が開示されている。ここで、UPnPとは、Universal Plug and Playの略である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第03461190号公報
【特許文献2】特開2002―262296号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
映像中の物体検出、異常状態解析、通報等の一連の処理を、複数のカメラや処理装置で分担して行う場合、システムを構成する機器間で大量のデータが送受信される。カメラで検出される物体情報は、例えば位置、速度、外接矩形があるが、更に、物体の境界領域情報やその他の特徴情報までを含めると大量の情報となる。しかしながら、必要とされる物体情報は用途や機器構成によって異なり、カメラにおいて検出された物体情報の全てが必要とされるわけではない。しかるに従来の方式ではカメラで検出された物体情報を全て処理装置側に送信していたため、カメラ、ネットワーク、処理装置において無駄が多く、負荷が大きかった。この問題に対しては、UPnPのようにカメラ・処理装置間で送受信する物体属性情報を指定する方式が一見有効である。しかしながら、映像処理の用途では状態更新の同期が保証される必要があるため、個々の状態更新通知を非同期で行うUPnP方式では問題が解決されない。
【0005】
本発明はこのような問題点に鑑みなされたもので、処理の高速化及びネットワークにかかる負荷を低減することを目的とする。
【課題を解決するための手段】
【0006】
そこで、本発明の情報送信装置は、画像中の物体を検出する検出手段と、前記検出手段で検出された物体の状態を判別する判別手段と、前記検出手段で検出された物体に関する物体情報及び前記判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、ネットワークを介して通信可能な処理装置より、前記送信手段で送信すべき属性情報に関する要求を受信する受信手段と、前記受信手段で受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を決定する制御手段と、を有する。
【発明の効果】
【0007】
本発明によれば、処理の高速化及びネットワークにかかる負荷を低減することができる。
【図面の簡単な説明】
【0008】
【図1】ネットワークシステムのシステム構成の一例を示す図である。
【図2】ネットワークカメラのハードウェア構成の一例を示す図である。
【図3】ネットワークカメラの機能構成の一例を示す図である。
【図4】表示装置の機能構成の一例を示す図である。
【図5】表示装置における物体情報の表示の一例を示す図である。
【図6】物体検出に関する処理の一例を示すフローチャートである。
【図7】ネットワークカメラから配信されるメタデータの一例を示す図である。
【図8】判別条件の設定パラメータの一例を示す図である。
【図9】解析処理に関する設定の変更を説明するための図である。
【図10】シーンメタデータの指定を説明するための図である。
【図11】シーンメタデータをXML形式で表現した一例を示す図(その1)である。
【図12】ネットワークカメラと処理装置(表示装置)との間の通信手順の一例を示す図である。
【図13】録画装置の一例を示す図である。
【図14】録画装置における物体識別結果の表示の一例を示す図である。
【図15】シーンメタデータをXML形式で表現した一例を示す図(その2)である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について図面に基づいて説明する。
【0010】
<第1の実施形態>
本実施形態では、映像中の物体情報等のメタデータを処理装置に配信するネットワークカメラ(コンピュータ)と、前記メタデータを受信して解析処理や表示処理等を行う処理装置(コンピュータ)と、からなるネットワークシステムを用いて説明を行なう。ネットワークカメラは、処理装置で行う処理の種別等に応じてメタデータの配信内容を変更する。なお、メタデータは、属性情報の一例である。
本実施形態におけるネットワークシステムの典型的なシステム構成を図1に示す。図1は、ネットワークシステムのシステム構成の一例を示す図である。図1に示されるように、ネットワークシステムでは、ネットワークカメラ100、警報装置210、表示装置220、録画装置230がネットワーク経由で通信可能に接続されている。警報装置210、表示装置220、録画装置230は、処理装置の一例である。
ネットワークカメラ100は、物体を検出する機能や検出した物体の状態を簡易判別する機能を持つ。ネットワークカメラ100からは映像に加えて物体情報を含む各種情報がメタデータとして配信される。ネットワークカメラ100は、メタデータを後述するように映像に添付するか、若しくは映像とは別ストリームで配信する。映像やメタデータは警報装置210、表示装置220、録画装置230等の処理装置が受信する。これら処理装置は受信した映像とメタデータとを利用して、映像への物体枠の重畳表示や、物体の種別判定、認証等の処理を行う。
【0011】
次に本実施形態におけるネットワークカメラ100のハードウェア構成の一例を図2に示す。図2は、ネットワークカメラのハードウェア構成の一例を示す図である。
図2に示されるように、ネットワークカメラ100は、CPU10と、記憶装置11と、ネットワークインターフェース12と、撮像装置13と、雲台装置14と、を含む。なお、後述するように、撮像装置13と、雲台装置14と、をあわせて撮像装置、雲台装置110ともいう。
CPU10は、バス等を介して接続された他の構成要素を制御する。例えば、CPU10は、雲台装置14及び撮像装置13を制御し、物体を撮像する。記憶装置11は、RAM及び/又はROM及び/又はHDD等であって、撮像装置13で撮像された画像や、後述する処理に必要な情報及びデータ、プログラム等を記憶する。ネットワークインターフェース12は、ネットワークカメラ100をネットワークに接続する。CPU10は、ネットワークインターフェース12を介して例えば、画像等を送信したり、要求を受信したりする。
【0012】
なお、本実施形態では、図2に示されるようなネットワークカメラ100を用いて説明を行なうが、図2を例えば、撮像装置、雲台装置110と、それ以外の部分(CPU10、記憶装置11、ネットワークインターフェース12)と、に分けてもよい。このように分ける構成とした場合、撮像装置、雲台装置110は、ネットワークカメラ、それ以外の部分(CPU10、記憶装置11、ネットワークインターフェース12)は、サーバー装置とすることもできる。このような構成の場合、ネットワークカメラとサーバー装置とは、所定のインターフェースを介して接続され、サーバー装置が、ネットワークカメラで撮像された画像等に基づき、後述するメタデータを作成し、例えば画像にメタデータを添付し、処理装置に送信する。このような構成の場合、情報送信装置は、例えば、サーバー装置に対応する。図2の構成の場合は、情報送信装置は、例えば、ネットワークカメラ100に対応する。
CPU10が、記憶装置11に記憶されているプログラムに基づき処理を実行することによって、後述するネットワークカメラ100の機能及び後述するフローチャートに係る処理等が実現される。
【0013】
次に本実施形態におけるネットワークカメラ100(又は上述したサーバー装置)の機能構成の一例を図3に示す。図3は、ネットワークカメラの機能構成の一例を示す図である。
表示装置220からのパン、チルト、ズーム制御要求は、通信I/F部131経由で制御要求受信部132が受信し、撮影制御部121に渡される。そして撮影制御部121は、撮像装置、雲台装置110を制御する。一方、映像は撮影制御部121経由で、映像入力部122によって取得され、映像符号化部123において符号化される。ここで符号化方式としてはJPEGやMPEG−2、MPEG−4、H.264等の方式がある。
一方、入力映像は物体検出部127にも送信され、物体検出部127が映像中(画像中)の物体を検出する。次に解析処理部128において物体の状態を判別し、状態判別情報を出力する。解析処理部128は複数同時に平行して処理を行うことも可能である。物体検出部127で検出される物体情報は、例えば位置、面積、外接矩形、存在時間、静止度、領域マスク等である。また解析処理部128で解析された結果の状態判別情報は、例えば入場、退場、置き去り、持ち去り、通過等である。制御要求受信部132は、検出したい物体情報、解析したい状態判別情報の設定に関する要求を受信し、解析制御部130で前記要求を解析し、変更内容を解読して、検出したい物体情報、解析したい状態判別情報の設定を変更する。
【0014】
物体情報と状態判別情報とは符号化部129で符号化される。符号化部129で符号化された物体情報と状態判別情報とは映像付加情報生成部124で例えば符号化した映像に付加され、映像送信制御部126から通信I/F部131を通じて表示装置220等の処理装置に配信される。処理装置からは、パン・チルトの制御要求や、解析処理部128等の設定変更要求、映像配信設定要求等の様々な要求が送信される。これは例えば、HTTPのGETメソッドや、SOAPを用いて送受信することが可能である。ここで通信I/F部131は、主としてTCP/IPを担当する。そして、制御要求受信部132は、HTTPやSOAPの構文解析(パージング)を担当する。また、カメラ制御要求に対する返信は、状態送信制御部125経由で返信される。
【0015】
次に本実施形態の表示装置220の機能構成を図4に示す。なお、表示装置220のハードウェア構成は、例えば、CPU、記憶装置、ディスプレイ等を含み、CPUが、記憶装置に記憶されたプログラムに基づき、処理を実行することにより、以下に示す表示装置220の機能等が実現される。
図4は、表示装置の機能構成の一例を示す図である。表示装置220は、ネットワークカメラ100から受信した物体情報を表示する機能を持つ。図4において表示装置220は、通信I/F部221、映像受信部222、メタデータ解読部223、シーン情報表示部224を機能構成として含む。
図5は、表示装置における物体情報の表示の一例を示す図である。図5は画面上の1つのウィンドウを表したものであり、ウィンドウ枠400と、映像表示領域410とから構成される。映像表示領域410に表示されている映像上には置き去り検知イベント発生を示す枠412が示されている。
【0016】
本実施形態における置き去り検知は、ネットワークカメラ100における物体検出部127の物体検出(物体抽出)と、解析処理部128の検出された物体の状態解析(状態判別)と、の二段階から構成される。物体検出に関する処理を図6に示す。図6は、物体検出に関する処理の一例を示すフローチャートである。
事前に知識のない物体領域を検出するためには、背景差分用いられることが多い。背景差分とは、現在の映像を過去の映像から生成した背景モデルと比較することによって物体を検出する手法である。本実施形態ではJPEGで用いるような、ブロック単位の離散コサイン変換後のDCT成分から求めた複数の特徴量を、背景モデルに利用する。特徴量としては、DCT計数の絶対値和や、隣接フレーム間の対応成分の差分和等があるが、本実施形態は特定の特徴量に依存するものではない。またブロック単位で背景モデルを持つ手法の他にも画素単位の濃度分布を持つ手法(例えば特開平10−255036号公報)もあり、本実施形態では何れの手法も利用が可能である。
【0017】
以下、説明の簡略化のため、CPU10を主語に説明を行なう。
図6において、背景更新処理の開始後、CPU10は、S501で画像の取得を行い、次にS510で周波数成分(DCT係数)を生成する。次にCPU10は、S511で周波数成分から特徴量(画像特徴量)を抽出する。CPU10は、S512においてS511で抽出した複数の特徴量が既存の背景モデルと合致するかを判別する。
背景の変化に対応するため、背景モデルは複数の状態を持つ。この状態をモードと称する。各モードは前述した複数の特徴量を背景の一状態として保持する。原画像との比較は特徴量ベクトルの差分演算によって行われる。CPU10は、S512では既存モードと比較して、類似モードが存在する場合はY分岐し、S514で対応するモードの特徴量を更新する。これは新規特徴量と、既存特徴量と、を一定比率で混合することによる。
【0018】
CPU10は、S513において類似モードが存在しない場合には、N分岐し、S515に進んで影のブロックかどうかを判別する。CPU10は、特徴量のうち、既存モードと比較して輝度に起因する特徴量成分のみが変化していないことによって前記判別を行なうことができる。CPU10は、S515で影ブロックと判定された場合には、何もしない(S516)。CPU10は、影ブロックではないと判定した場合にはN分岐し、S517に進んで新規モードを生成する。CPU10は、S514、S516、S517終了後、S518に進み、全てのブロックで処理が終了後、S520に進んで物体の抽出処理を行う。
【0019】
S521からS526までは物体抽出処理である。CPU10は、S521で各ブロックにおいて、複数のモードのうち前景モードが存在するかどうかを判別する。次にCPU10は、S522で前景ブロックの統合処理を行い、連結した領域を得る。次にCPU10は、S523で小領域をノイズとして除去する。最後にCPU10は、S524、S525で全ての物体に対して、物体情報の抽出を行い、物体抽出処理を終了する。
図6の方式によれば、背景モデルを逐次更新しながら安定して物体情報を抽出することができる。
【0020】
図7は、ネットワークカメラから配信されるメタデータの一例を示す図である。ここに示すメタデータは、物体情報や、物体の状態判別情報、イベント情報等のシーン情報を含むため、シーンメタデータと称する。図7には説明のために便宜上付与したID、メタデータの配信指定の際に用いる識別子、内容の説明、データの例を表記してある。
シーン情報は、フレーム情報と、個別の物体情報と、物体の領域マスク情報と、から構成される。フレーム情報は、ID番号10から15までであり、フレーム番号、フレーム時刻、物体データの次元(縦横ブロック数)、イベントマスクから構成される。ID10は、フレーム情報をまとめて配信する際に指定する識別子である。イベントとは、物体の状態を示す属性値がある一定の条件にあてはまることを示すものであり、置き去り、持ち去り、出現等がある。イベントマスクとは当該フレームにおいて、前記イベントがあるかどうかをビット単位で示すものである。
【0021】
次に物体情報は、ID20から28までであり、個々の物体単位のデータを表現する。情報としてはイベントマスク、サイズ、外接矩形、代表点、存在時間、静止時間、動きがある。ID20は、物体情報をまとめて配信する際に指定する識別子である。ID22からID28までは物体ごとにデータが存在する。代表点(ID25)は、物体の位置を表す点であり、重心点でもよい。また後述するように物体領域のマスク情報が1ブロック1ビットで表現されている場合、マスク情報から個別の物体領域を特定するために、領域探索の開始点として利用される。存在時間(ID26)は、物体を構成する前景ブロックが新規に作成されてからの経過時間であり、属するブロックの平均値乃至は中央値を用いる。静止時間(ID27)は、存在時間のうち物体を構成する前景ブロックが前景として判別された時間の割合である。動き(ID28)は、物体の速度を示し、例えば、前フレームにおける近接物体との関連付けによって求めることができる。
【0022】
次に物体の詳細情報として、ID40から43までに示す物体領域マスクデータがある。物体の詳細情報は、物体領域をブロック単位のマスクとして表現したものである。ID40は、マスク情報の配信を指定する際に使用する識別子である。マスク情報には個別物体領域の境界情報は記録されず、個々の物体の境界を特定するためには各物体の代表点(ID25)をもとに領域分割を行う。この方式の利点は物体ごとにマスクにラベル情報がないためデータ量が少ないことである。一方で物体間に重複がある場合は正確な境界領域が特定できない。ID42は、圧縮方式であり、非圧縮や、ランレングス符号化等の可逆圧縮方式を示す。またID43は、物体マスクの本体であり、通常1ブロック1ビットである。もちろんラベル情報を付与して1ブロック1バイトとしてもよい。この場合、領域分割処理は不要となる。
【0023】
イベントマスク情報(状態判別情報)(ID15、ID22)について説明する。ID15は、フレーム中に置き去りや持ち去り等のイベントが含まれるかどうかを示すものである。またID22は、当該物体が置き去りや持ち去り等の状態にあるかどうかを示すものである。何れも複数のイベントが存在する場合、対応するビットの論理和で表現される。置き去りや持ち去りの判別結果は、図3の解析処理部128の処理結果を用いる。
【0024】
次に、図8及び図9を用いて、解析処理部128の処理方法と解析処理に関する設定の方法とを説明する。解析処理部128は、物体の属性値が判別条件に合致するかどうかを判別する。図8は、判別条件の設定パラメータの一例を示す図である。図8には説明ために付与したID、設定値名、内容の説明、値(設定値)の例を示している。パラメータには、ルール名(ID00、ID01)、有効フラグ(ID03)、検出領域(ID20〜24)がある。また、上限と下限とが設定されるものとして、領域被覆率(ID05、ID06)、物体重複率(ID07、ID08)、面積(ID09、ID10)、存在時間(ID11、ID12)、静止時間(ID13、ID14)がある。更に、上限と下限とが設定されるものとして、フレーム内の物体数(ID15、ID16)、がある。検出領域は多角形で表現される。
領域被覆率と領域重複率とは、何れも検出領域と物体領域とが重複する面積を分子とする割合である。領域被覆率は、検出領域面積に対する前記重複面積の割合である。一方、領域重複率は、物体面積に対する前記重複面積の割合である。上記の二つを用いることによって、置き去りと持ち去りとの区別が可能である。即ち、検出領域を持ち去り対象物体の周囲に設定することにより、持ち去り発生時に領域被覆率と領域重複比率との両方が共に所定の値より高い値になる。なお、領域は矩形に限定されず、多角形での設定が可能である。
【0025】
図9は、解析処理に関する設定の変更を説明するための図である。図9は置き去りイベントの設定画面の例である。600は、アプリケーションのウィンドウであり、映像表示610と、設定部620と、からなる。検出対象領域は、映像表示610において多角形611で表現され、頂点Pを追加・削除・変更することにより形状を自由に指定することができる。ユーザーは、設定部620を操作し、置き去り検知物体の面積の最小値621と、静止時間の最小値622とを設定する。ここで、面積の最小値621は図8において、ID09面積下限値に対応する。静止時間の最小値622は図8において、ID13静止時間下限値に対応する。また領域内の置き去り物体を検出するため、ユーザーは、ID05の領域被覆比率の下限値を、設定画面等を操作して設定する。ここで他の設定値は規定の値でよく、全ての設定値を変更する必要は無い。
図9に示される画面は、例えば表示装置220等の処理装置に表示される。図9等の画面を介して処理装置で設定されたパラメータの設定値は、HTTPのGETメソッドを用いてネットワークカメラ100に渡すことができる。
なお、物体がうろつき状態かどうかを判別するためには、存在時間と静止時間とを用いる。即ち、CPU10は、所定の面積以上の物体において、存在時間が所定の時間より長く、静止時間が所定の時間より短い場合はうろつき状態と判別することができる。
【0026】
次に配信するシーンメタデータの指定方法について、図10を用いて説明する。図10は、シーンメタデータの指定を説明するための図である。この指定は設定の一種でるため、図10ではID、設定値名、説明、指定方法及び値の例を示している。図7で説明したように、シーンメタデータにはフレーム情報、物体情報、物体領域マスク情報がある。これらに対し、各処理装置のユーザーは、処理装置210、220、230側で行う後処理に応じて、各処理装置の設定画面(又は指定画面)等を介して配信内容を指定する。
まず個別データで設定する方法がある。これは処理装置が、例えば、M_ObjSize,M_ObjRect,等の指定により、シーン情報を個別に指定する方法である。
CPU10は、指定された個別のシーン情報に基づいて、前記指定に係る処理装置に対して送信するシーンメタデータを変更し、変更したシーンメタデータを送信する。
次にカテゴリで指定する方法がある。これは処理装置が、M_FrameInfo,M_ObjectInfo,M_ObjectMaskInfo,のように、個別のシーンデータをまとめたカテゴリ単位で指定する方式である。
CPU10は、指定された個別のシーンデータをまとめたカテゴリに基づいて、前記指定に係る処理装置に対して送信するシーンメタデータを変更し、変更したシーンメタデータを送信する。
更にクライアントタイプによる指定方法がある。これはデータを受信するクライアント、即ち処理装置の種別によって配信するデータを決定するものである。処理装置は、クライアントタイプとして、ビューワー(M_ClientViewer)、録画サーバー(M_ClientRecorder)、画像解析装置(M_CilentAanlizer)、等の指定を行う。
CPU10は、指定されたクライアントタイプに基づいて、前記指定に係る処理装置に対して送信するシーンメタデータを変更し、変更したシーンメタデータを送信する。
例えばビューワーと指定した場合、物体単位でのイベントマスクと外接矩形とがあれば、表示装置220は、図5のような表示を行なうことができる。例えば、クライアントタイプと、送信するシーンメタデータとの対応情報は、新規のクライアントタイプを作成するのに合わせて事前にネットワークカメラ100に登録しておくものとする。
上述した設定(指定)は、イベント判別処理と同様にHTTPのGETメソッドを用いて、各処理装置からネットワークカメラ100に設定することができる。また、ネットワークカメラ100が、メタデータ配信の途中であっても、上述した設定を動的に変更することができる。
【0027】
次にシーンメタデータの配信方法について述べる。シーンメタデータはXML形式で表現して映像とは別に送る方式や、バイナリ表現して映像に添付して送る方式がある。前者の方式は映像とシーンメタデータを別のフレームレートで送信できるという利点がある。一方で後者の方式はJPEG等の符号化方式に有効であり、シーンメタデータとの同期が容易であるという利点がある。
図11は、シーンメタデータをXML形式で表現した一例を示す図(その1)である。図7のシーンメタデータのうち、フレーム情報と、2つの物体情報と、を表現した例である。これは図5のようなビューワーへの配信を想定しており、受信側で置き去り物体を矩形で表示することができる。一方、バイナリ表現の場合は、バイナリXMLとして送信することもできるし、図7に示すデータが順に並ぶ独自表現とすることもできる。
【0028】
図12は、ネットワークカメラと処理装置(表示装置)との間の通信手順の一例を示す図である。
図12においてネットワークカメラ100は、S602で初期化処理を実行後、リクエストの到着を待つ。一方で表示装置220は、S601で初期化処理を実行後、S603でネットワークカメラ100との接続要求を行う。接続要求には、ユーザー名やパスワードが含まれる。ネットワークカメラ100は、接続要求を受信すると、S604で接続要求に含まれるユーザー名やパスワードに基づき認証処理を行い、S606で接続許可を行う。その結果、表示装置220側で、接続の確立が確認される(S607)。
続いてS609で表示装置220からは、イベント判別ルールの設定要求として、設定値(送信内容(配信内容)を指定する値)が送信される。これに対してネットワークカメラ100は、設定値を受信し(S610)、設定値に基づいてS612でイベント判別ルール(判別条件の設定パラメータ等)の設定処理を行う。これにより配信するシーンメタデータが決定される。
【0029】
以上の準備が終了すると、S614で物体検出・解析処理が開始され、S616で映像の送信が始まる。ここではシーン情報はJPEGヘッダに添付して送信する例を示す。S617で表示装置220は映像を受信し、S619でシーンメタデータ(又はシーン情報)を解読する(処理実行)。そしてS621で図5に示したように、置き去り物体の枠を表示したり、置き去りイベントを表示したりする。
以上説明した手法によれば、映像中の物体情報やイベント情報等のシーンメタデータを配信するネットワークカメラと、シーンメタデータを受信して各種処理を行う処理装置とからなるシステムにおいて、処理装置の後処理等に応じて配信するメタデータを変更する。その結果不要な処理を省くことが可能となり、ネットワークカメラ、及び、処理装置の高速化や、ネットワーク帯域への負荷を軽減することができる。
【0030】
<第2の実施形態>
第2の実施形態としては、データ受信側の処理装置が検出物体の識別や認証を行う場合、ネットワークカメラ100から送信するシーンメタデータに物体マスクデータを加えて送信する。これにより、処理装置が行う認識処理の負荷を軽減できる。本実施形態のシステム構成は第1の実施形態と同じであるため、説明を省略し、以下、第1の実施形態と異なる部分を中心に説明する。
本実施形態における受信側の処理装置の構成例を図13に示す。なお、録画装置230のハードウェア構成は、例えば、CPU、記憶装置、ディスプレイ等を含み、CPUが、記憶装置に記憶されたプログラムに基づき、処理を実行することにより、以下に示す録画装置230の機能等が実現される。
【0031】
図13は、録画装置の一例を示す図である。録画装置230は、通信I/F部231、映像受信部232、シーンメタデータ解読部233、物体識別処理部234、物体情報データベース235、照合結果表示部236、から構成される。
録画装置230は、複数のネットワークカメラからの映像を受信し、映像中に特定の物体が存在するかどうかを判別する機能を持つ。一般に物体の識別には、画像や画像から抽出した特徴量の照合(マッチング)による方法が用いられる。識別機能を受信装置側に持つ利点は、物体情報のデータベースは容量が大きいため、制限のある組み込み環境では、十分な容量を確保できないからである。識別処理の例としては、検出された静止物体の種類(箱、バッグ、ペットボトル、衣類、玩具、傘、雑誌等)を識別する機能がある。これにより箱、バッグ、ペットボトルのような危険物が含まれる可能性が高いものを優先して警告することができる。
【0032】
図14は、録画装置における物体識別結果の表示の一例を示す図である。図14は録画アプリケーションの例であり、400は一つのウィンドウである。映像表示領域410に表示されている映像中に置き去り物体(枠412で示される物体)が検出され、物体の認識結果450が表示される。タイムライン440は、過去のイベント発生時刻を表示するものである。右端が現在時刻であり、時間の経過と共に表示イベントが右から左にむかってシフトする。ユーザーが現在又は過去の時刻を指定すると、録画装置230は、選択中カメラの録画映像を指定時刻から再生する。イベントには、システムの起動・停止、録画の開始・停止、外部センサー入力状態の変化、動き検知状態の変化、物体の登場、退場、置き去り、持ち去り等がある。なお、図においてイベント441は矩形で表示されているが、矩形以外の図形で表記することもできる。
ここでネットワークカメラ100は、シーンメタデータとして、第1の実施形態に加えて、物体の領域マスク情報を送信する。これにより物体識別処理部234において、物体の存在する部分に関してのみ識別処理を行うことで、録画装置230の処理負荷を軽減することができる。物体形状が正確な矩形となることは稀なため、領域マスク情報と共に送信した方がより負荷の軽減につながる。
【0033】
本実施形態において録画装置230は、シーンメタデータの送信要求として、図10においてデータカテゴリーとして、物体データ(M_ObjInfo)と物体マスクデータ(M_OjbMaskInfo)とを指定する。これにより、図7における物体情報のうち、ID21から28の物体データと、ID42,43の物体マスクデータと、が配信される。また事前にネットワークカメラ100側に受信装置の種別と送信するシーンデータとの対応表を設けておく。そして、録画装置230が、図10のクライアントタイプによる指定でレコーダー(M_ClientRecorder)を指定することにより、物体マスク情報をネットワークカメラ100に配信させることもできる。配信されるシーンメタデータのフォーマットは、第1の実施形態と同様にXML形式でもよいし、バイナリ方式でもよい。図15は、シーンメタデータをXML形式で表現した一例を示す図(その2)である。本実施形態では、シーンメタデータに、第1の実施形態における図11に加えて<object_mask>タグが新たに加わり、物体マスクデータが配信される。
【0034】
<第3の実施形態>
第3の実施形態としては、処理装置側で物体の追尾や人物の行動解析を行いたい場合、ネットワークカメラ100から物体の速度情報や物体のマスク情報を送信すると効率がよい。行動解析を行う場合、人物の追尾による軌跡の抽出が必要である。これは異なるフレーム間で検出した人物の対応付けであり、そのためには速度情報(M_ObjMotion)が有効である。また人物画像のテンプレートマッチングによる対応付け手法が採用されることもあり、この場合、物体領域のマスク情報(M_ObjeMaskInfo)を利用してマッチングを効率よく行うことができる。これらのメタデータの配信指定は、第1の実施形態で述べたように、メタデータの個別指定、カテゴリ指定、受信クライアントタイプによる指定が可能である。クライアントタイプによる指定の場合、行動解析を行う受信装置をM_ClientAnalizerとして表記し、配信するシーンメタデータの組と共に事前に登録する。
【0035】
更に別の処理装置としては、ネットワークカメラにて顔検出と顔認証とを行い、認証できなかった場合、処理装置側のデータベースで認証を行うことも可能である。この場合、顔の位置、サイズ、角度等を示すメタデータを新規に設けて配信する。処理装置側ではローカルに保持する顔特徴データベースに照合して、人物を特定する。この場合、ネットワークカメラ100は、新規に顔メタデータのカテゴリ、M_FaceInfoを設ける。そして、ネットワークカメラ100は、顔の枠、M_FaceRect(左上、右下点の座標)、上下、左右、面内回転角度、M_FacePitch、M_FaceYaw、M_FaceRole、等の顔検出情報を配信する。この場合のシーンメタデータの指定方法としては、第1の実施形態と同様に、メタデータを個別に指定する方法、カテゴリで指定する方法、クライアントタイプと必要なメタデータの種類を事前に登録する手法を採用することができる。クライアントタイプによる指定の場合、顔認証を行う受信装置として、M_ClientFaceIdentificator等と登録する。
【0036】
以上述べた方法によれば、人物の行動解析を行う場合や、顔検出及び顔認証を行う場合等のクライアント側の処理内容に応じて、ネットワークカメラ100からシーンメタデータを配信する。これにより、クライアント側の処理を効率的に行うことができ、結果として多数の対象の処理や、高解像度対応、複数カメラ対応が可能になる。
【0037】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
【0038】
以上、上述した各実施形態によれば、処理の高速化及びネットワークにかかる負荷を低減することができる。
【0039】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0040】
100 ネットワークカメラ
【技術分野】
【0001】
本発明は、情報送信装置及び情報送信方法に関する。
【背景技術】
【0002】
モニタリングシステムにおいてネットワークカメラの導入が進んでいる。典型的なモニタリングシステムは、複数のネットワークカメラと、カメラ映像を録画する録画装置と、ライブ乃至は録画映像を再生するビューワーと、から構成される。ネットワークカメラは、画像処理により映像中の異常を検出する機能を持ち、異常が発生すると録画装置やビューワーに通知する。ビューワーは、異常通知を受信すると警告を表示する。また録画装置は、異常の種別や時刻を記録し、後から異常を検索し、異常発生時の映像を再生する。これらの異常映像の検索を高速に行うために、映像と同時に異常状態や物体の有無等の情報をメタデータとして記録する技術がある。
監視装置において、移動物体の位置や外接矩形等属性情報を映像と共に記録し、再生時において移動物体の外接矩形を映像に重畳して表示する方式が開示されている(特許文献1)。また、移動物体情報をメタデータとして配信する技術がある(特許文献2)。
一方、ネットワーク経由でデバイスの状態取得や制御を行う標準規格であるUPnPにおいて、制御端末であるコントロールポイントから制御対象であるデバイスの属性を変化させたり、逆に属性の変化情報を取得したりする技術が開示されている。ここで、UPnPとは、Universal Plug and Playの略である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第03461190号公報
【特許文献2】特開2002―262296号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
映像中の物体検出、異常状態解析、通報等の一連の処理を、複数のカメラや処理装置で分担して行う場合、システムを構成する機器間で大量のデータが送受信される。カメラで検出される物体情報は、例えば位置、速度、外接矩形があるが、更に、物体の境界領域情報やその他の特徴情報までを含めると大量の情報となる。しかしながら、必要とされる物体情報は用途や機器構成によって異なり、カメラにおいて検出された物体情報の全てが必要とされるわけではない。しかるに従来の方式ではカメラで検出された物体情報を全て処理装置側に送信していたため、カメラ、ネットワーク、処理装置において無駄が多く、負荷が大きかった。この問題に対しては、UPnPのようにカメラ・処理装置間で送受信する物体属性情報を指定する方式が一見有効である。しかしながら、映像処理の用途では状態更新の同期が保証される必要があるため、個々の状態更新通知を非同期で行うUPnP方式では問題が解決されない。
【0005】
本発明はこのような問題点に鑑みなされたもので、処理の高速化及びネットワークにかかる負荷を低減することを目的とする。
【課題を解決するための手段】
【0006】
そこで、本発明の情報送信装置は、画像中の物体を検出する検出手段と、前記検出手段で検出された物体の状態を判別する判別手段と、前記検出手段で検出された物体に関する物体情報及び前記判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、ネットワークを介して通信可能な処理装置より、前記送信手段で送信すべき属性情報に関する要求を受信する受信手段と、前記受信手段で受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を決定する制御手段と、を有する。
【発明の効果】
【0007】
本発明によれば、処理の高速化及びネットワークにかかる負荷を低減することができる。
【図面の簡単な説明】
【0008】
【図1】ネットワークシステムのシステム構成の一例を示す図である。
【図2】ネットワークカメラのハードウェア構成の一例を示す図である。
【図3】ネットワークカメラの機能構成の一例を示す図である。
【図4】表示装置の機能構成の一例を示す図である。
【図5】表示装置における物体情報の表示の一例を示す図である。
【図6】物体検出に関する処理の一例を示すフローチャートである。
【図7】ネットワークカメラから配信されるメタデータの一例を示す図である。
【図8】判別条件の設定パラメータの一例を示す図である。
【図9】解析処理に関する設定の変更を説明するための図である。
【図10】シーンメタデータの指定を説明するための図である。
【図11】シーンメタデータをXML形式で表現した一例を示す図(その1)である。
【図12】ネットワークカメラと処理装置(表示装置)との間の通信手順の一例を示す図である。
【図13】録画装置の一例を示す図である。
【図14】録画装置における物体識別結果の表示の一例を示す図である。
【図15】シーンメタデータをXML形式で表現した一例を示す図(その2)である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について図面に基づいて説明する。
【0010】
<第1の実施形態>
本実施形態では、映像中の物体情報等のメタデータを処理装置に配信するネットワークカメラ(コンピュータ)と、前記メタデータを受信して解析処理や表示処理等を行う処理装置(コンピュータ)と、からなるネットワークシステムを用いて説明を行なう。ネットワークカメラは、処理装置で行う処理の種別等に応じてメタデータの配信内容を変更する。なお、メタデータは、属性情報の一例である。
本実施形態におけるネットワークシステムの典型的なシステム構成を図1に示す。図1は、ネットワークシステムのシステム構成の一例を示す図である。図1に示されるように、ネットワークシステムでは、ネットワークカメラ100、警報装置210、表示装置220、録画装置230がネットワーク経由で通信可能に接続されている。警報装置210、表示装置220、録画装置230は、処理装置の一例である。
ネットワークカメラ100は、物体を検出する機能や検出した物体の状態を簡易判別する機能を持つ。ネットワークカメラ100からは映像に加えて物体情報を含む各種情報がメタデータとして配信される。ネットワークカメラ100は、メタデータを後述するように映像に添付するか、若しくは映像とは別ストリームで配信する。映像やメタデータは警報装置210、表示装置220、録画装置230等の処理装置が受信する。これら処理装置は受信した映像とメタデータとを利用して、映像への物体枠の重畳表示や、物体の種別判定、認証等の処理を行う。
【0011】
次に本実施形態におけるネットワークカメラ100のハードウェア構成の一例を図2に示す。図2は、ネットワークカメラのハードウェア構成の一例を示す図である。
図2に示されるように、ネットワークカメラ100は、CPU10と、記憶装置11と、ネットワークインターフェース12と、撮像装置13と、雲台装置14と、を含む。なお、後述するように、撮像装置13と、雲台装置14と、をあわせて撮像装置、雲台装置110ともいう。
CPU10は、バス等を介して接続された他の構成要素を制御する。例えば、CPU10は、雲台装置14及び撮像装置13を制御し、物体を撮像する。記憶装置11は、RAM及び/又はROM及び/又はHDD等であって、撮像装置13で撮像された画像や、後述する処理に必要な情報及びデータ、プログラム等を記憶する。ネットワークインターフェース12は、ネットワークカメラ100をネットワークに接続する。CPU10は、ネットワークインターフェース12を介して例えば、画像等を送信したり、要求を受信したりする。
【0012】
なお、本実施形態では、図2に示されるようなネットワークカメラ100を用いて説明を行なうが、図2を例えば、撮像装置、雲台装置110と、それ以外の部分(CPU10、記憶装置11、ネットワークインターフェース12)と、に分けてもよい。このように分ける構成とした場合、撮像装置、雲台装置110は、ネットワークカメラ、それ以外の部分(CPU10、記憶装置11、ネットワークインターフェース12)は、サーバー装置とすることもできる。このような構成の場合、ネットワークカメラとサーバー装置とは、所定のインターフェースを介して接続され、サーバー装置が、ネットワークカメラで撮像された画像等に基づき、後述するメタデータを作成し、例えば画像にメタデータを添付し、処理装置に送信する。このような構成の場合、情報送信装置は、例えば、サーバー装置に対応する。図2の構成の場合は、情報送信装置は、例えば、ネットワークカメラ100に対応する。
CPU10が、記憶装置11に記憶されているプログラムに基づき処理を実行することによって、後述するネットワークカメラ100の機能及び後述するフローチャートに係る処理等が実現される。
【0013】
次に本実施形態におけるネットワークカメラ100(又は上述したサーバー装置)の機能構成の一例を図3に示す。図3は、ネットワークカメラの機能構成の一例を示す図である。
表示装置220からのパン、チルト、ズーム制御要求は、通信I/F部131経由で制御要求受信部132が受信し、撮影制御部121に渡される。そして撮影制御部121は、撮像装置、雲台装置110を制御する。一方、映像は撮影制御部121経由で、映像入力部122によって取得され、映像符号化部123において符号化される。ここで符号化方式としてはJPEGやMPEG−2、MPEG−4、H.264等の方式がある。
一方、入力映像は物体検出部127にも送信され、物体検出部127が映像中(画像中)の物体を検出する。次に解析処理部128において物体の状態を判別し、状態判別情報を出力する。解析処理部128は複数同時に平行して処理を行うことも可能である。物体検出部127で検出される物体情報は、例えば位置、面積、外接矩形、存在時間、静止度、領域マスク等である。また解析処理部128で解析された結果の状態判別情報は、例えば入場、退場、置き去り、持ち去り、通過等である。制御要求受信部132は、検出したい物体情報、解析したい状態判別情報の設定に関する要求を受信し、解析制御部130で前記要求を解析し、変更内容を解読して、検出したい物体情報、解析したい状態判別情報の設定を変更する。
【0014】
物体情報と状態判別情報とは符号化部129で符号化される。符号化部129で符号化された物体情報と状態判別情報とは映像付加情報生成部124で例えば符号化した映像に付加され、映像送信制御部126から通信I/F部131を通じて表示装置220等の処理装置に配信される。処理装置からは、パン・チルトの制御要求や、解析処理部128等の設定変更要求、映像配信設定要求等の様々な要求が送信される。これは例えば、HTTPのGETメソッドや、SOAPを用いて送受信することが可能である。ここで通信I/F部131は、主としてTCP/IPを担当する。そして、制御要求受信部132は、HTTPやSOAPの構文解析(パージング)を担当する。また、カメラ制御要求に対する返信は、状態送信制御部125経由で返信される。
【0015】
次に本実施形態の表示装置220の機能構成を図4に示す。なお、表示装置220のハードウェア構成は、例えば、CPU、記憶装置、ディスプレイ等を含み、CPUが、記憶装置に記憶されたプログラムに基づき、処理を実行することにより、以下に示す表示装置220の機能等が実現される。
図4は、表示装置の機能構成の一例を示す図である。表示装置220は、ネットワークカメラ100から受信した物体情報を表示する機能を持つ。図4において表示装置220は、通信I/F部221、映像受信部222、メタデータ解読部223、シーン情報表示部224を機能構成として含む。
図5は、表示装置における物体情報の表示の一例を示す図である。図5は画面上の1つのウィンドウを表したものであり、ウィンドウ枠400と、映像表示領域410とから構成される。映像表示領域410に表示されている映像上には置き去り検知イベント発生を示す枠412が示されている。
【0016】
本実施形態における置き去り検知は、ネットワークカメラ100における物体検出部127の物体検出(物体抽出)と、解析処理部128の検出された物体の状態解析(状態判別)と、の二段階から構成される。物体検出に関する処理を図6に示す。図6は、物体検出に関する処理の一例を示すフローチャートである。
事前に知識のない物体領域を検出するためには、背景差分用いられることが多い。背景差分とは、現在の映像を過去の映像から生成した背景モデルと比較することによって物体を検出する手法である。本実施形態ではJPEGで用いるような、ブロック単位の離散コサイン変換後のDCT成分から求めた複数の特徴量を、背景モデルに利用する。特徴量としては、DCT計数の絶対値和や、隣接フレーム間の対応成分の差分和等があるが、本実施形態は特定の特徴量に依存するものではない。またブロック単位で背景モデルを持つ手法の他にも画素単位の濃度分布を持つ手法(例えば特開平10−255036号公報)もあり、本実施形態では何れの手法も利用が可能である。
【0017】
以下、説明の簡略化のため、CPU10を主語に説明を行なう。
図6において、背景更新処理の開始後、CPU10は、S501で画像の取得を行い、次にS510で周波数成分(DCT係数)を生成する。次にCPU10は、S511で周波数成分から特徴量(画像特徴量)を抽出する。CPU10は、S512においてS511で抽出した複数の特徴量が既存の背景モデルと合致するかを判別する。
背景の変化に対応するため、背景モデルは複数の状態を持つ。この状態をモードと称する。各モードは前述した複数の特徴量を背景の一状態として保持する。原画像との比較は特徴量ベクトルの差分演算によって行われる。CPU10は、S512では既存モードと比較して、類似モードが存在する場合はY分岐し、S514で対応するモードの特徴量を更新する。これは新規特徴量と、既存特徴量と、を一定比率で混合することによる。
【0018】
CPU10は、S513において類似モードが存在しない場合には、N分岐し、S515に進んで影のブロックかどうかを判別する。CPU10は、特徴量のうち、既存モードと比較して輝度に起因する特徴量成分のみが変化していないことによって前記判別を行なうことができる。CPU10は、S515で影ブロックと判定された場合には、何もしない(S516)。CPU10は、影ブロックではないと判定した場合にはN分岐し、S517に進んで新規モードを生成する。CPU10は、S514、S516、S517終了後、S518に進み、全てのブロックで処理が終了後、S520に進んで物体の抽出処理を行う。
【0019】
S521からS526までは物体抽出処理である。CPU10は、S521で各ブロックにおいて、複数のモードのうち前景モードが存在するかどうかを判別する。次にCPU10は、S522で前景ブロックの統合処理を行い、連結した領域を得る。次にCPU10は、S523で小領域をノイズとして除去する。最後にCPU10は、S524、S525で全ての物体に対して、物体情報の抽出を行い、物体抽出処理を終了する。
図6の方式によれば、背景モデルを逐次更新しながら安定して物体情報を抽出することができる。
【0020】
図7は、ネットワークカメラから配信されるメタデータの一例を示す図である。ここに示すメタデータは、物体情報や、物体の状態判別情報、イベント情報等のシーン情報を含むため、シーンメタデータと称する。図7には説明のために便宜上付与したID、メタデータの配信指定の際に用いる識別子、内容の説明、データの例を表記してある。
シーン情報は、フレーム情報と、個別の物体情報と、物体の領域マスク情報と、から構成される。フレーム情報は、ID番号10から15までであり、フレーム番号、フレーム時刻、物体データの次元(縦横ブロック数)、イベントマスクから構成される。ID10は、フレーム情報をまとめて配信する際に指定する識別子である。イベントとは、物体の状態を示す属性値がある一定の条件にあてはまることを示すものであり、置き去り、持ち去り、出現等がある。イベントマスクとは当該フレームにおいて、前記イベントがあるかどうかをビット単位で示すものである。
【0021】
次に物体情報は、ID20から28までであり、個々の物体単位のデータを表現する。情報としてはイベントマスク、サイズ、外接矩形、代表点、存在時間、静止時間、動きがある。ID20は、物体情報をまとめて配信する際に指定する識別子である。ID22からID28までは物体ごとにデータが存在する。代表点(ID25)は、物体の位置を表す点であり、重心点でもよい。また後述するように物体領域のマスク情報が1ブロック1ビットで表現されている場合、マスク情報から個別の物体領域を特定するために、領域探索の開始点として利用される。存在時間(ID26)は、物体を構成する前景ブロックが新規に作成されてからの経過時間であり、属するブロックの平均値乃至は中央値を用いる。静止時間(ID27)は、存在時間のうち物体を構成する前景ブロックが前景として判別された時間の割合である。動き(ID28)は、物体の速度を示し、例えば、前フレームにおける近接物体との関連付けによって求めることができる。
【0022】
次に物体の詳細情報として、ID40から43までに示す物体領域マスクデータがある。物体の詳細情報は、物体領域をブロック単位のマスクとして表現したものである。ID40は、マスク情報の配信を指定する際に使用する識別子である。マスク情報には個別物体領域の境界情報は記録されず、個々の物体の境界を特定するためには各物体の代表点(ID25)をもとに領域分割を行う。この方式の利点は物体ごとにマスクにラベル情報がないためデータ量が少ないことである。一方で物体間に重複がある場合は正確な境界領域が特定できない。ID42は、圧縮方式であり、非圧縮や、ランレングス符号化等の可逆圧縮方式を示す。またID43は、物体マスクの本体であり、通常1ブロック1ビットである。もちろんラベル情報を付与して1ブロック1バイトとしてもよい。この場合、領域分割処理は不要となる。
【0023】
イベントマスク情報(状態判別情報)(ID15、ID22)について説明する。ID15は、フレーム中に置き去りや持ち去り等のイベントが含まれるかどうかを示すものである。またID22は、当該物体が置き去りや持ち去り等の状態にあるかどうかを示すものである。何れも複数のイベントが存在する場合、対応するビットの論理和で表現される。置き去りや持ち去りの判別結果は、図3の解析処理部128の処理結果を用いる。
【0024】
次に、図8及び図9を用いて、解析処理部128の処理方法と解析処理に関する設定の方法とを説明する。解析処理部128は、物体の属性値が判別条件に合致するかどうかを判別する。図8は、判別条件の設定パラメータの一例を示す図である。図8には説明ために付与したID、設定値名、内容の説明、値(設定値)の例を示している。パラメータには、ルール名(ID00、ID01)、有効フラグ(ID03)、検出領域(ID20〜24)がある。また、上限と下限とが設定されるものとして、領域被覆率(ID05、ID06)、物体重複率(ID07、ID08)、面積(ID09、ID10)、存在時間(ID11、ID12)、静止時間(ID13、ID14)がある。更に、上限と下限とが設定されるものとして、フレーム内の物体数(ID15、ID16)、がある。検出領域は多角形で表現される。
領域被覆率と領域重複率とは、何れも検出領域と物体領域とが重複する面積を分子とする割合である。領域被覆率は、検出領域面積に対する前記重複面積の割合である。一方、領域重複率は、物体面積に対する前記重複面積の割合である。上記の二つを用いることによって、置き去りと持ち去りとの区別が可能である。即ち、検出領域を持ち去り対象物体の周囲に設定することにより、持ち去り発生時に領域被覆率と領域重複比率との両方が共に所定の値より高い値になる。なお、領域は矩形に限定されず、多角形での設定が可能である。
【0025】
図9は、解析処理に関する設定の変更を説明するための図である。図9は置き去りイベントの設定画面の例である。600は、アプリケーションのウィンドウであり、映像表示610と、設定部620と、からなる。検出対象領域は、映像表示610において多角形611で表現され、頂点Pを追加・削除・変更することにより形状を自由に指定することができる。ユーザーは、設定部620を操作し、置き去り検知物体の面積の最小値621と、静止時間の最小値622とを設定する。ここで、面積の最小値621は図8において、ID09面積下限値に対応する。静止時間の最小値622は図8において、ID13静止時間下限値に対応する。また領域内の置き去り物体を検出するため、ユーザーは、ID05の領域被覆比率の下限値を、設定画面等を操作して設定する。ここで他の設定値は規定の値でよく、全ての設定値を変更する必要は無い。
図9に示される画面は、例えば表示装置220等の処理装置に表示される。図9等の画面を介して処理装置で設定されたパラメータの設定値は、HTTPのGETメソッドを用いてネットワークカメラ100に渡すことができる。
なお、物体がうろつき状態かどうかを判別するためには、存在時間と静止時間とを用いる。即ち、CPU10は、所定の面積以上の物体において、存在時間が所定の時間より長く、静止時間が所定の時間より短い場合はうろつき状態と判別することができる。
【0026】
次に配信するシーンメタデータの指定方法について、図10を用いて説明する。図10は、シーンメタデータの指定を説明するための図である。この指定は設定の一種でるため、図10ではID、設定値名、説明、指定方法及び値の例を示している。図7で説明したように、シーンメタデータにはフレーム情報、物体情報、物体領域マスク情報がある。これらに対し、各処理装置のユーザーは、処理装置210、220、230側で行う後処理に応じて、各処理装置の設定画面(又は指定画面)等を介して配信内容を指定する。
まず個別データで設定する方法がある。これは処理装置が、例えば、M_ObjSize,M_ObjRect,等の指定により、シーン情報を個別に指定する方法である。
CPU10は、指定された個別のシーン情報に基づいて、前記指定に係る処理装置に対して送信するシーンメタデータを変更し、変更したシーンメタデータを送信する。
次にカテゴリで指定する方法がある。これは処理装置が、M_FrameInfo,M_ObjectInfo,M_ObjectMaskInfo,のように、個別のシーンデータをまとめたカテゴリ単位で指定する方式である。
CPU10は、指定された個別のシーンデータをまとめたカテゴリに基づいて、前記指定に係る処理装置に対して送信するシーンメタデータを変更し、変更したシーンメタデータを送信する。
更にクライアントタイプによる指定方法がある。これはデータを受信するクライアント、即ち処理装置の種別によって配信するデータを決定するものである。処理装置は、クライアントタイプとして、ビューワー(M_ClientViewer)、録画サーバー(M_ClientRecorder)、画像解析装置(M_CilentAanlizer)、等の指定を行う。
CPU10は、指定されたクライアントタイプに基づいて、前記指定に係る処理装置に対して送信するシーンメタデータを変更し、変更したシーンメタデータを送信する。
例えばビューワーと指定した場合、物体単位でのイベントマスクと外接矩形とがあれば、表示装置220は、図5のような表示を行なうことができる。例えば、クライアントタイプと、送信するシーンメタデータとの対応情報は、新規のクライアントタイプを作成するのに合わせて事前にネットワークカメラ100に登録しておくものとする。
上述した設定(指定)は、イベント判別処理と同様にHTTPのGETメソッドを用いて、各処理装置からネットワークカメラ100に設定することができる。また、ネットワークカメラ100が、メタデータ配信の途中であっても、上述した設定を動的に変更することができる。
【0027】
次にシーンメタデータの配信方法について述べる。シーンメタデータはXML形式で表現して映像とは別に送る方式や、バイナリ表現して映像に添付して送る方式がある。前者の方式は映像とシーンメタデータを別のフレームレートで送信できるという利点がある。一方で後者の方式はJPEG等の符号化方式に有効であり、シーンメタデータとの同期が容易であるという利点がある。
図11は、シーンメタデータをXML形式で表現した一例を示す図(その1)である。図7のシーンメタデータのうち、フレーム情報と、2つの物体情報と、を表現した例である。これは図5のようなビューワーへの配信を想定しており、受信側で置き去り物体を矩形で表示することができる。一方、バイナリ表現の場合は、バイナリXMLとして送信することもできるし、図7に示すデータが順に並ぶ独自表現とすることもできる。
【0028】
図12は、ネットワークカメラと処理装置(表示装置)との間の通信手順の一例を示す図である。
図12においてネットワークカメラ100は、S602で初期化処理を実行後、リクエストの到着を待つ。一方で表示装置220は、S601で初期化処理を実行後、S603でネットワークカメラ100との接続要求を行う。接続要求には、ユーザー名やパスワードが含まれる。ネットワークカメラ100は、接続要求を受信すると、S604で接続要求に含まれるユーザー名やパスワードに基づき認証処理を行い、S606で接続許可を行う。その結果、表示装置220側で、接続の確立が確認される(S607)。
続いてS609で表示装置220からは、イベント判別ルールの設定要求として、設定値(送信内容(配信内容)を指定する値)が送信される。これに対してネットワークカメラ100は、設定値を受信し(S610)、設定値に基づいてS612でイベント判別ルール(判別条件の設定パラメータ等)の設定処理を行う。これにより配信するシーンメタデータが決定される。
【0029】
以上の準備が終了すると、S614で物体検出・解析処理が開始され、S616で映像の送信が始まる。ここではシーン情報はJPEGヘッダに添付して送信する例を示す。S617で表示装置220は映像を受信し、S619でシーンメタデータ(又はシーン情報)を解読する(処理実行)。そしてS621で図5に示したように、置き去り物体の枠を表示したり、置き去りイベントを表示したりする。
以上説明した手法によれば、映像中の物体情報やイベント情報等のシーンメタデータを配信するネットワークカメラと、シーンメタデータを受信して各種処理を行う処理装置とからなるシステムにおいて、処理装置の後処理等に応じて配信するメタデータを変更する。その結果不要な処理を省くことが可能となり、ネットワークカメラ、及び、処理装置の高速化や、ネットワーク帯域への負荷を軽減することができる。
【0030】
<第2の実施形態>
第2の実施形態としては、データ受信側の処理装置が検出物体の識別や認証を行う場合、ネットワークカメラ100から送信するシーンメタデータに物体マスクデータを加えて送信する。これにより、処理装置が行う認識処理の負荷を軽減できる。本実施形態のシステム構成は第1の実施形態と同じであるため、説明を省略し、以下、第1の実施形態と異なる部分を中心に説明する。
本実施形態における受信側の処理装置の構成例を図13に示す。なお、録画装置230のハードウェア構成は、例えば、CPU、記憶装置、ディスプレイ等を含み、CPUが、記憶装置に記憶されたプログラムに基づき、処理を実行することにより、以下に示す録画装置230の機能等が実現される。
【0031】
図13は、録画装置の一例を示す図である。録画装置230は、通信I/F部231、映像受信部232、シーンメタデータ解読部233、物体識別処理部234、物体情報データベース235、照合結果表示部236、から構成される。
録画装置230は、複数のネットワークカメラからの映像を受信し、映像中に特定の物体が存在するかどうかを判別する機能を持つ。一般に物体の識別には、画像や画像から抽出した特徴量の照合(マッチング)による方法が用いられる。識別機能を受信装置側に持つ利点は、物体情報のデータベースは容量が大きいため、制限のある組み込み環境では、十分な容量を確保できないからである。識別処理の例としては、検出された静止物体の種類(箱、バッグ、ペットボトル、衣類、玩具、傘、雑誌等)を識別する機能がある。これにより箱、バッグ、ペットボトルのような危険物が含まれる可能性が高いものを優先して警告することができる。
【0032】
図14は、録画装置における物体識別結果の表示の一例を示す図である。図14は録画アプリケーションの例であり、400は一つのウィンドウである。映像表示領域410に表示されている映像中に置き去り物体(枠412で示される物体)が検出され、物体の認識結果450が表示される。タイムライン440は、過去のイベント発生時刻を表示するものである。右端が現在時刻であり、時間の経過と共に表示イベントが右から左にむかってシフトする。ユーザーが現在又は過去の時刻を指定すると、録画装置230は、選択中カメラの録画映像を指定時刻から再生する。イベントには、システムの起動・停止、録画の開始・停止、外部センサー入力状態の変化、動き検知状態の変化、物体の登場、退場、置き去り、持ち去り等がある。なお、図においてイベント441は矩形で表示されているが、矩形以外の図形で表記することもできる。
ここでネットワークカメラ100は、シーンメタデータとして、第1の実施形態に加えて、物体の領域マスク情報を送信する。これにより物体識別処理部234において、物体の存在する部分に関してのみ識別処理を行うことで、録画装置230の処理負荷を軽減することができる。物体形状が正確な矩形となることは稀なため、領域マスク情報と共に送信した方がより負荷の軽減につながる。
【0033】
本実施形態において録画装置230は、シーンメタデータの送信要求として、図10においてデータカテゴリーとして、物体データ(M_ObjInfo)と物体マスクデータ(M_OjbMaskInfo)とを指定する。これにより、図7における物体情報のうち、ID21から28の物体データと、ID42,43の物体マスクデータと、が配信される。また事前にネットワークカメラ100側に受信装置の種別と送信するシーンデータとの対応表を設けておく。そして、録画装置230が、図10のクライアントタイプによる指定でレコーダー(M_ClientRecorder)を指定することにより、物体マスク情報をネットワークカメラ100に配信させることもできる。配信されるシーンメタデータのフォーマットは、第1の実施形態と同様にXML形式でもよいし、バイナリ方式でもよい。図15は、シーンメタデータをXML形式で表現した一例を示す図(その2)である。本実施形態では、シーンメタデータに、第1の実施形態における図11に加えて<object_mask>タグが新たに加わり、物体マスクデータが配信される。
【0034】
<第3の実施形態>
第3の実施形態としては、処理装置側で物体の追尾や人物の行動解析を行いたい場合、ネットワークカメラ100から物体の速度情報や物体のマスク情報を送信すると効率がよい。行動解析を行う場合、人物の追尾による軌跡の抽出が必要である。これは異なるフレーム間で検出した人物の対応付けであり、そのためには速度情報(M_ObjMotion)が有効である。また人物画像のテンプレートマッチングによる対応付け手法が採用されることもあり、この場合、物体領域のマスク情報(M_ObjeMaskInfo)を利用してマッチングを効率よく行うことができる。これらのメタデータの配信指定は、第1の実施形態で述べたように、メタデータの個別指定、カテゴリ指定、受信クライアントタイプによる指定が可能である。クライアントタイプによる指定の場合、行動解析を行う受信装置をM_ClientAnalizerとして表記し、配信するシーンメタデータの組と共に事前に登録する。
【0035】
更に別の処理装置としては、ネットワークカメラにて顔検出と顔認証とを行い、認証できなかった場合、処理装置側のデータベースで認証を行うことも可能である。この場合、顔の位置、サイズ、角度等を示すメタデータを新規に設けて配信する。処理装置側ではローカルに保持する顔特徴データベースに照合して、人物を特定する。この場合、ネットワークカメラ100は、新規に顔メタデータのカテゴリ、M_FaceInfoを設ける。そして、ネットワークカメラ100は、顔の枠、M_FaceRect(左上、右下点の座標)、上下、左右、面内回転角度、M_FacePitch、M_FaceYaw、M_FaceRole、等の顔検出情報を配信する。この場合のシーンメタデータの指定方法としては、第1の実施形態と同様に、メタデータを個別に指定する方法、カテゴリで指定する方法、クライアントタイプと必要なメタデータの種類を事前に登録する手法を採用することができる。クライアントタイプによる指定の場合、顔認証を行う受信装置として、M_ClientFaceIdentificator等と登録する。
【0036】
以上述べた方法によれば、人物の行動解析を行う場合や、顔検出及び顔認証を行う場合等のクライアント側の処理内容に応じて、ネットワークカメラ100からシーンメタデータを配信する。これにより、クライアント側の処理を効率的に行うことができ、結果として多数の対象の処理や、高解像度対応、複数カメラ対応が可能になる。
【0037】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
【0038】
以上、上述した各実施形態によれば、処理の高速化及びネットワークにかかる負荷を低減することができる。
【0039】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0040】
100 ネットワークカメラ
【特許請求の範囲】
【請求項1】
画像中の物体を検出する検出手段と、
前記検出手段で検出された物体の状態を判別する判別手段と、
前記検出手段で検出された物体に関する物体情報及び前記判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、
ネットワークを介して通信可能な処理装置より、前記送信手段で送信すべき属性情報に関する要求を受信する受信手段と、
前記受信手段で受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を決定する制御手段と、
を有する情報送信装置。
【請求項2】
前記判別手段は、前記検出手段で検出された前記物体の属性情報が判別条件に合致するか否かに基づいて前記物体の状態を判別する、請求項1記載の情報送信装置。
【請求項3】
前記要求に含まれる値は、前記処理装置のタイプに関する値であり、
前記制御手段は、前記前記処理装置のタイプに関する値に基づいて前記処理装置に送信する前記属性情報の内容を決定する、請求項1又は2記載の情報送信装置。
【請求項4】
前記要求に含まれる値は、前記属性情報に含まれるデータのカテゴリに関する値であり、
前記制御手段は、前記データのカテゴリに関する値に基づいて前記処理装置に送信する前記属性情報の内容を決定する、請求項1又は2記載の情報送信装置。
【請求項5】
前記要求に含まれる値は、前記属性情報に含まれる個別のデータに関する値であり、
前記制御手段は、前記個別のデータに関する値に基づいて前記処理装置に送信する前記属性情報の内容を決定する、請求項1又は2記載の情報送信装置。
【請求項6】
画像中の物体を検出する検出ステップと、
前記検出ステップで検出された物体の状態を判別する判別ステップと、
前記検出ステップで検出された物体に関する物体情報及び前記判別ステップで判別された物体の状態に関する状態判別情報を画像の属性情報として、ネットワークを介して通信可能な処理装置より、前記属性情報に関する要求を受信する受信ステップと、
前記受信ステップで受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を決定する制御ステップと、
前記処理装置に前記決定された内容の属性情報を送信する送信ステップと、
を有する情報送信方法。
【請求項7】
コンピュータを、
画像中の物体を検出する検出手段と、
前記検出手段で検出された物体の状態を判別する判別手段と、
前記検出手段で検出された物体に関する物体情報及び前記判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、
ネットワークを介して通信可能な処理装置より、前記送信手段で送信する属性情報に関する要求を受信する受信手段と、
前記受信手段で受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を変更する制御手段と、
して機能させるプログラム。
【請求項8】
請求項7記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【請求項1】
画像中の物体を検出する検出手段と、
前記検出手段で検出された物体の状態を判別する判別手段と、
前記検出手段で検出された物体に関する物体情報及び前記判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、
ネットワークを介して通信可能な処理装置より、前記送信手段で送信すべき属性情報に関する要求を受信する受信手段と、
前記受信手段で受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を決定する制御手段と、
を有する情報送信装置。
【請求項2】
前記判別手段は、前記検出手段で検出された前記物体の属性情報が判別条件に合致するか否かに基づいて前記物体の状態を判別する、請求項1記載の情報送信装置。
【請求項3】
前記要求に含まれる値は、前記処理装置のタイプに関する値であり、
前記制御手段は、前記前記処理装置のタイプに関する値に基づいて前記処理装置に送信する前記属性情報の内容を決定する、請求項1又は2記載の情報送信装置。
【請求項4】
前記要求に含まれる値は、前記属性情報に含まれるデータのカテゴリに関する値であり、
前記制御手段は、前記データのカテゴリに関する値に基づいて前記処理装置に送信する前記属性情報の内容を決定する、請求項1又は2記載の情報送信装置。
【請求項5】
前記要求に含まれる値は、前記属性情報に含まれる個別のデータに関する値であり、
前記制御手段は、前記個別のデータに関する値に基づいて前記処理装置に送信する前記属性情報の内容を決定する、請求項1又は2記載の情報送信装置。
【請求項6】
画像中の物体を検出する検出ステップと、
前記検出ステップで検出された物体の状態を判別する判別ステップと、
前記検出ステップで検出された物体に関する物体情報及び前記判別ステップで判別された物体の状態に関する状態判別情報を画像の属性情報として、ネットワークを介して通信可能な処理装置より、前記属性情報に関する要求を受信する受信ステップと、
前記受信ステップで受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を決定する制御ステップと、
前記処理装置に前記決定された内容の属性情報を送信する送信ステップと、
を有する情報送信方法。
【請求項7】
コンピュータを、
画像中の物体を検出する検出手段と、
前記検出手段で検出された物体の状態を判別する判別手段と、
前記検出手段で検出された物体に関する物体情報及び前記判別手段で判別された物体の状態に関する状態判別情報を画像の属性情報としてネットワークを介して通信可能な複数の処理装置に送信する送信手段と、
ネットワークを介して通信可能な処理装置より、前記送信手段で送信する属性情報に関する要求を受信する受信手段と、
前記受信手段で受信された前記要求に含まれる値に基づいて前記処理装置に送信する前記属性情報の内容を変更する制御手段と、
して機能させるプログラム。
【請求項8】
請求項7記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2011−55270(P2011−55270A)
【公開日】平成23年3月17日(2011.3.17)
【国際特許分類】
【出願番号】特願2009−202690(P2009−202690)
【出願日】平成21年9月2日(2009.9.2)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年3月17日(2011.3.17)
【国際特許分類】
【出願日】平成21年9月2日(2009.9.2)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]