(57)【要約】【課題】被写体の通過を検知するために用いる基準位置に対して、被写体の検出領域を適切に設定する。【解決手段】情報処理装置は、画像内に設定された、当該画像から検出された物体が通過したことを検知するために用いる検知線の設定情報を取得する取得手段と、取得手段により取得された検知線の設定情報に基づいて、画像から物体を検出する検出処理を行う画像内の検出領域を設定する設定手段と、を備える。取得手段は、検知線の設定情報として、画像内における検知線の位置、長さおよび傾きの少なくとも１つを取得することができる。【選択図】      図３
2019082795.tif 000002
【特許請求の範囲】
【請求項１】
画像内に設定された、当該画像から検出された物体が通過したことを検知するために用いる検知線の設定情報を取得する取得手段と、
前記取得手段により取得された前記検知線の設定情報に基づいて、前記画像から前記物体を検出する検出処理を行う前記画像内の検出領域を設定する設定手段と、を備えることを特徴とする情報処理装置。
【請求項２】
前記取得手段は、
前記検知線の設定情報として、前記画像内における前記検知線の位置、長さおよび傾きの少なくとも１つを取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記画像を表示手段に表示させる表示制御手段をさらに備え、
前記取得手段は、前記表示制御手段により表示された前記画像内における前記検知線の指定を受け付け、前記検知線の設定情報を取得することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記設定手段は、
前記検知線を含み、前記検知線の延伸方向に少なくとも前記検知線の長さを有し、前記検知線に直交する方向に所定の検知幅を有する領域を、前記検出領域として設定することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記設定手段は、
前記検知線の長さに所定の倍率をかけた長さを前記検知幅として設定することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記設定手段は、
前記物体の移動速度に基づいて、前記検知幅を設定することを特徴とする請求項４に記載の情報処理装置。
【請求項７】
前記設定手段は、
前記物体の移動速度に基づいて、前記検知線の通過前後における前記検出処理による前記物体の検出回数がそれぞれ設定回数以上となるよう、前記検知幅を設定することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記設定手段は、
前記物体の大きさに基づいて、前記検知線の延伸方向における前記検出領域の長さを設定することを特徴とする請求項４に記載の情報処理装置。
【請求項９】
前記設定手段は、
前記検知線の上端側に少なくとも前記物体の大きさに相当する長さを有する前記検出領域を設定することを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記設定手段は、
前記検知線を含み、前記検知線の延伸方向に少なくとも前記検知線の長さを有し、前記検知線に直交する方向に所定の検知幅を有する領域を囲む外接矩形を、前記検出領域として設定することを特徴とする請求項１から９のいずれか１項に記載の情報処理装置。
【請求項１１】
画像内に設定された、当該画像から検出された物体が通過したことを検知するために用いる検知線の設定情報を取得するステップと、
取得された前記検知線の設定情報に基づいて、前記画像から前記物体を検出する検出処理を行う前記画像内の検出領域を設定するステップと、を含むことを特徴とする情報処理方法。
【請求項１２】
請求項１から１０のいずれか１項に記載の情報処理装置と、
前記画像を撮像する撮像手段と、を備えることを特徴とする撮像装置。
【請求項１３】
請求項１２に記載の撮像装置と、
前記撮像装置とネットワークを介して接続され、表示手段を備えるクライアント装置と、を備えることを特徴とするネットワークカメラシステム。
【請求項１４】
コンピュータを、請求項１から１０のいずれか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
従来、監視カメラによって撮像された画像を解析し、画像内の人体を検出する人体検出処理が知られている。このような人体検出処理は、画像内に設定された検知線を通過する人体の数をカウントする通過検知処理に用いられる。
人体検出処理には、画像から人体の特徴量を抽出し、予め作成しておいた辞書と比較するテンプレートマッチングを行う手法が用いられる。ところが、このテンプレートマッチングでは、抽出された特徴量と辞書との比較を繰り返し行うため、処理時間が多くかかる。そのため、画像内に大勢の人がいる場合や、背景が複雑で人との判別が困難である場合には、人体検出処理が所定時間内に完了しない。この場合、途中で処理を打ち切って次の画像に対する人体検出処理に移行することになり、通過検知処理の精度が低下してしまう。
【０００３】
そこで、画像内の所定領域に対してのみ人体検出処理を実行することで、検出処理のフレームレートを向上させる方法がある。
特許文献１には、ステレオカメラを使用して各画素が距離情報を有する距離画像を生成し、上記距離情報を利用して、検出すべき特定物体のサイズに合わせて検出領域のサイズを設定する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２８００８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、画像内の所定領域から人体を検出し、検出された人体のうち検知線の通過が検知された人体の数をカウントする場合、ユーザは、人体検出処理を行う検出領域と通過検知処理に用いる検知線の二つを手動で設定する必要があり、手間がかかった。また、ユーザが検知線に対して適切な検出領域を設定することは困難であった。上記特許文献１に記載の技術においても、検知線に対して適切な検出領域を自動で設定することはできない。
そこで、本発明は、被写体の通過を検知するために用いる基準位置に対して、被写体の検出領域を適切に設定することを課題としている。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る情報処理装置の一態様は、画像内に設定された、当該画像から検出された物体が通過したことを検知するために用いる検知線の設定情報を取得する取得手段と、前記取得手段により取得された前記検知線の設定情報に基づいて、前記画像から前記物体を検出する検出処理を行う前記画像内の検出領域を設定する設定手段と、を備える。
【発明の効果】
【０００７】
本発明によれば、被写体の通過を検知するために用いる基準位置に対して、被写体の検出領域を適切に設定することができる。
【図面の簡単な説明】
【０００８】
【図１】ネットワークカメラおよびクライアント装置の構成例を示す図である。
【図２】ネットワークカメラのハードウェア構成例である。
【図３】検知線設定画面の一例である。
【図４】ネットワークカメラの検出領域設定処理手順を示すフローチャートである。
【図５】第一の実施形態における検出領域の設定方法を説明する図である。
【図６】検出領域生成処理手順を示すフローチャートである。
【図７】検出領域が画像全体に設定されている場合の問題点を説明する図である。
【図８】第二の実施形態における検出領域の設定方法を説明する図である。
【図９】第三の実施形態における検出領域の設定方法を説明する図である。
【図１０】その他の実施形態における検出領域の設定方法を説明する図である。
【図１１】ネットワークカメラおよびクライアント装置の別の構成例である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明を実施するための形態について詳細に説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
【００１０】
（第一の実施形態）
図１は、ネットワークカメラ１００およびクライアント装置２００の構成例を示すブロック図である。ネットワークカメラ（以下、単に「カメラ」という。）１００とクライアント装置２００とは、ネットワーク３００によって相互に通信可能に接続されており、カメラ１００とクライアント装置２００とによって、ネットワークカメラシステムが構成されている。
このネットワークカメラシステムは、例えば、リテール分野での顧客行動分析を行うためのシステムとすることができる。具体的には、当該ネットワークカメラシステムは、店舗のレジ前の領域内にいる人数をカウントして曜日・時間帯ごとのレジの混雑度合のデータを取得することができる。また、当該ネットワークカメラシステムは、店舗内の所定の位置を通過する人数をカウントして店舗の来店者数や来店客の移動軌跡を取得することができる。
【００１１】
ネットワーク３００は、例えば、Ｅｔｈｅｒｎｅｔ（登録商標）の通信規格に準拠する複数のルータ、スイッチ、ケーブル等から構成される。なお、ネットワーク３００は、カメラ１００とクライアント装置２００との間で通信可能な構成であれば、その通信規格、規模および構成は問わない。ネットワーク３００は、インターネットや有線ＬＡＮ（Local Area Network）、無線ＬＡＮ（Wireless LAN）、ＷＡＮ（Wide Area Network）、若しくはこれらの複合により実現してもよい。
【００１２】
カメラ１００は、所定の撮像範囲を撮像する撮像装置である。カメラ１００は、撮像領域を変更可能に構成されたＰＴＺカメラ（Pan Tilt Zoom カメラ）であってもよい。また、カメラ１００は、ＰｏＥ（Power over Ethernet）に対応していてもよいし、ＬＡＮケーブルを介して電力が供給される構成でもよい。さらに、図１では、１台のカメラ１００がネットワーク３００に接続されているが、ネットワーク３００には複数のカメラを接続することもできる。
【００１３】
クライアント装置２００は、パーソナルコンピュータ（ＰＣ）やスマートフォン、タブレット型ＰＣといった端末装置により構成され、カメラ１００に対して各種コマンドを送信可能である。カメラ１００に対して送信されるコマンドには、カメラ１００の撮像方向（方角）および画角を変更するためのコマンド、撮像パラメータを変更するためのコマンド、画像処理に関するコマンド、画像の送信を開始させるためのコマンド等を含むことができる。また、クライアント装置２００は、上記コマンドに対するレスポンスをカメラ１００から受信することもできる。
【００１４】
カメラ１００は、クライアント装置２００から撮像方向および画角を変更するためのコマンドを受信した場合、撮像方向および画角を変更する。また、カメラ１００は、画像の送信を開始させるためのコマンドに応じて、画像をクライアント装置２００に送信する。クライアント装置２００は、上記の画像の送信を開始させるためのコマンドを受けてカメラ１００が送信した画像を受信し、受信した画像を録画するとともに、クライアント装置２００を使用するユーザに提示する表示制御を行うことができる。
【００１５】
図１に示すように、カメラ１００は、撮像部１０１と、画像処理部１０２と、システム制御部１０３と、通信部１０４と、を備える。さらに、カメラ１００は、被写体検出部１０５と、被写体ＩＤ付与部１０６と、検知判定部１０７と、検知線設定部１０８と、検知線記憶部１０９と、検出領域設定部１１０と、検出領域記憶部１１１と、を備える。また、クライアント装置２００は、システム制御部２０１と、表示部２０２と、入力部２０３と、通信部２０４と、を備える。そして、カメラ１００の通信部１０４とクライアント装置２００の通信部２０４とが、ネットワーク３００を介して相互に通信可能な状態に接続されている。
【００１６】
まず、カメラ１００の構成および各部の機能について説明する。
撮像部１０１は、レンズおよびＣＭＯＳ（Complementary Metal Oxide Semiconductor）、ＣＣＤ（Charge Coupled Device）等の撮像素子を含んで構成され、被写体の撮像を行う。また、撮像部１０１は、撮像面に結像された光像を光電変換によりデジタル電気信号に変換する処理を行う。画像処理部１０２は、撮像部１０１において光電変換された信号に対して所定の画像処理を行う。上記画像処理としては、ホワイトバランス処理、シャープネス処理、階調変換処理がある。また、画像処理部１０２は、上記画像処理が施された画像を圧縮符号化して画像データを生成し、生成した画像データをシステム制御部１０３に出力する。
【００１７】
システム制御部１０３は、画像処理部１０２から受信した画像をクライアント装置２００へ送信すべく通信部１０４に出力する。また、システム制御部１０３は、通信部１０４を介してクライアント装置２００から受信したコマンドを解析し、コマンドに応じた処理を行う。具体的には、システム制御部１０３は、受信したコマンドに応じて、画像処理部１０２に対する画像処理パラメータの変更指示を行う。さらに、システム制御部１０３は、受信したコマンドに応じて、後述する被写体検出部１０５に対する被写体検出処理のパラメータの設定や、検知判定部１０７に対する通過検知処理のパラメータの設定等を行う。
【００１８】
被写体検出部１０５は、画像処理部１０２により生成された画像を解析し、画像内の物体（例えば、人体）を検出する被写体検出処理を行う。具体的には、被写体検出部１０５は、検出領域記憶部１１１に記憶された検出領域の設定情報を読み込み、画像処理部１０２により生成された画像内の上記検出領域に対して被写体検出処理を行う。
被写体ＩＤ付与部１０６は、被写体検出部１０５による被写体検出処理の検出結果に対して、連続する画像間で検出された被写体を区別するためのＩＤを付与する。具体的には、被写体ＩＤ付与部１０６は、被写体検出部１０５が検出した被写体の位置情報およびサイズ情報をもとに、連続する画像間で検出された被写体同士をマッチング処理する。そして、被写体ＩＤ付与部１０６は、マッチングされた被写体には共通なＩＤを付与し、マッチングする相手の無かった被写体は、新規に検出された被写体として新たなＩＤを作成し付与する。付与された被写体ＩＤにより、画像内に検出された複数の被写体を区別することができる。
【００１９】
検知判定部１０７は、被写体検出部１０５により検出された被写体が、画像内に設定された検知線を通過したか否かを判定する通過検知処理を行う。なお、通過検知処理は、被写体が、画像内における所定の位置（基準位置）を通過したか否かを判定する処理であればよく、必ずしも線で判定しなくてもよい。まず、検知判定部１０７は、被写体ＩＤ付与部１０６によりＩＤが付与された被写体の現在位置を、不図示のメモリ等に記憶する。そして、検知判定部１０７は、検知線記憶部１０９に記憶された検知線の設定情報を読み込み、被写体の過去位置と現在位置とに基づいて、被写体が検知線を通過したか否かを判定する。検知判定部１０７は、被写体が検知線を通過したと判定した場合、通過カウントをカウントアップし、検知線を通過した被写体の数を計数する。
【００２０】
検知線設定部１０８は、ユーザ入力をもとに、被写体の通過を検知するために用いる検知線を設定し、検知線の設定情報を検知線記憶部１０９に格納する。ここで、検知線の設定情報は、画像内における検知線の位置、長さおよび傾きの少なくとも１つを含む。
検出領域設定部１１０は、検知線記憶部１０９に新たに格納された検知線の設定情報に基づいて、被写体検出処理を行う画像内の検出領域を設定し、検出領域の設定情報を検出領域記憶部１１１に格納する。
【００２１】
次に、クライアント装置２００の構成および各部の機能について説明する。
クライアント装置２００のシステム制御部２０１は、通信部２０４を介してカメラ１００から受信した画像を複合化する画像処理部を内部に有し、カメラ１００から受信した画像を表示部２０２へ表示する表示制御を行う。また、システム制御部２０１は、ユーザのグラフィックユーザインタフェース（ＧＵＩ）操作に応じて各種コマンドを生成し、生成したコマンドを、カメラ１００へ送信すべく通信部２０４へ出力する。
【００２２】
表示部２０２は、液晶ディスプレイ（ＬＣＤ）等のモニタを含んで構成されており、カメラ１００から取得した画像やＧＵＩを表示する。入力部２０３は、キーボードやマウス等のポインティングデバイスを含んで構成されており、クライアント装置２００のユーザは、入力部２０３を操作し、ＧＵＩを介して各種コマンドを入力することができる。本実施形態では、クライアント装置２００のユーザは、入力部２０３を操作し、ＧＵＩを介して上述した検知線を指定することができる。
通信部２０４は、カメラ１００の通信部１０４からネットワーク３００を介して送信される画像や信号を受信し、受信した情報をシステム制御部２０１に送信する。また、通信部２０４は、システム制御部２０１の指示に基づいて、上記コマンドを、ネットワーク３００を介してカメラ１００の通信部１０４へ送信する。
【００２３】
（ハードウェア構成）
図２は、カメラ１００のハードウェア構成例である。
図２に示すように、カメラ１００は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、外部メモリ１４と、撮像部１５と、入力部１６と、通信Ｉ／Ｆ１７と、システムバス１８とを備える。ＣＰＵ１１は、カメラ１００における動作を統括的に制御するものであり、システムバス１８を介して、各構成部（１２〜１７）を制御する。ＲＯＭ１２は、ＣＰＵ１１が処理を実行するために必要な制御プログラム等を記憶する不揮発性メモリである。なお、当該プログラムは、外部メモリ１４や着脱可能な記憶媒体（不図示）に記憶されていてもよい。ＲＡＭ１３は、ＣＰＵ１１の主メモリ、ワークエリア等として機能する。すなわち、ＣＰＵ１１は、処理の実行に際してＲＯＭ１２から必要なプログラム等をＲＡＭ１３にロードし、当該プログラム等を実行することで各種の機能動作を実現する。
【００２４】
外部メモリ１４は、例えば、ＣＰＵ１１がプログラムを用いた処理を行う際に必要な各種データや各種情報等を記憶している。また、外部メモリ１４には、例えば、ＣＰＵ１１がプログラム等を用いた処理を行うことにより得られた各種データや各種情報等が記憶される。撮像部１５は、図１の撮像部１０１に対応する。入力部１６は、電源ボタンや各種設定ボタン等を含んで構成されている。通信Ｉ／Ｆ１７は、図１の通信部１０４に対応する。図１に示すカメラ１００の各要素の一部または全部の機能は、ＣＰＵ１１がプログラムを実行することで実現することができる。ただし、図１に示すカメラ１００の各要素のうち少なくとも一部が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、ＣＰＵ１１の制御に基づいて動作する。
【００２５】
なお、クライアント装置２００の場合、図２の撮像部１５に代えて、図１の表示部２０２に対応するハードウェア構成を具備する。さらに、クライアント装置２００の場合、入力部１６として、図１の入力部２０３に対応するハードウェア構成と、通信Ｉ／Ｆ１７として、図１の通信部２０４に対応するハードウェア構成と、を具備する。そして、図１に示すクライアント装置２００の各要素の一部または全部の機能は、ＣＰＵ１１に対応するクライアント装置２００のＣＰＵがプログラムを実行することで実現することができる。ただし、図１に示すクライアント装置２００の各要素のうち少なくとも一部が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、ＣＰＵの制御に基づいて動作する。
【００２６】
カメラ１００は、画像をクライアント装置２００へ送信することで、当該画像をクライアント装置２００の表示部２０１に表示させる表示制御を行い、表示部２０１に表示された画像内における検知線の指定を受け付ける。カメラ１００は、ユーザが、クライアント装置２００の表示部２０１に表示された画像上において検知線を指定したとき、指定された検知線の設定情報を取得し、取得した検知線の設定情報に基づいて、被写体検出処理を行う検出領域を設定する。
【００２７】
図３は、クライアント装置２００の表示部２０１に表示される、検知線の設定画面４００の一例である。設定画面４００には、カメラ１００によって撮像された画像が表示される。なお、設定画面４００には、カメラ１００によって現在撮像されている映像を表示してもよいし、予め録画された映像を表示してもよい。また、設定画面４００には、静止画像を表示してもよい。
設定画面４００上では、ユーザが任意の検知線４１０を指定することが可能である。この検知線４１０を用いた通過検知処理により、例えば被写体５００が画像内を右方向に移動して検知線４１０を通過したことを検知することが可能となる。本実施形態では、カメラ１００は、検知線４１０の設定情報に基づいて、当該検知線４１０を用いた通過検知処理に適した検出領域４２０を設定し、被写体検出処理を実行する領域を検出領域４２０内に限定する。
【００２８】
被写体検出処理では、カメラ１００は、画像内の検出領域４２０から物体（例えば、人体）の特徴量を抽出し、予め作成しておいた辞書と比較するテンプレートマッチングを行う。このとき、カメラ１００は、検出領域４２０の左上から水平方向のスキャンを行い、一ライン下がって再び左から右に水平方向のスキャンを行うスキャン処理により、検出領域４２０から物体（例えば、人体）を検出する。つまり、検出領域４２０外の領域については、被写体検出処理を実行しない。
【００２９】
なお、本実施形態では、撮像装置であるカメラ１００が、上記検出領域を設定する情報処理装置として動作する場合について説明する。ただし、クライアント装置２００が上記の情報処理装置として動作してもよいし、一般のＰＣや他の機器等が上記の情報処理装置として動作してもよい。これは後述する第二の実施形態以降も同様である。
【００３０】
次に、本実施形態におけるカメラ１００の動作について説明する。
図４は、カメラ１００が実行する検出領域設定処理手順を示すフローチャートである。この図４の処理は、ユーザがクライアント装置２００の表示部２０１に表示された設定画面上において、検知線を指定したタイミングで開始される。ただし、図４の処理の開始タイミングは、上記のタイミングに限らない。
カメラ１００は、ＣＰＵ１１が必要なプログラムを読み出して実行することにより、図４に示す各処理を実現することができる。ただし、図１に示すカメラ１００の各要素のうち少なくとも一部が専用のハードウェアとして動作することで図４の処理が実現されるようにしてもよい。この場合、専用のハードウェアは、ＣＰＵ１１の制御に基づいて動作する。以降、アルファベットＳはフローチャートにおけるステップを意味するものとする。
【００３１】
まず、Ｓ１において、カメラ１００は、ユーザがクライアント装置２００の表示部２０１に表示された設定画面を操作して指定した検知線の設定情報を受信する。ここで、検知線の設定情報は、上述したように、検知線の位置、長さおよび傾きに関する情報を含む。
次にＳ２では、カメラ１００は、Ｓ１において取得された検知線の設定情報に基づいて、被写体検出処理を行う検出領域を生成する検出領域生成処理を実行する。
【００３２】
図５は、検知線４１０に対する検出領域４２０の生成方法を説明する図である。
ユーザが指定した検知線４１０の位置と検知したい人が存在する領域とには相関があり、また、検知線４１０の長さＬと検知したい人の身長ｈとにも相関があると想定する。そこで、カメラ１００は、検知線４１０を含み、検知線４１０の延伸方向に検知線４１０の長さＬを有する矩形領域を、検出領域４２０として設定する。また、検知線４１０の傾きと検知したい人の移動方向とには相関があると想定し、カメラ１００は、検知線４１０に対して直交する方向に所定の検知幅Ｗ１、Ｗ２を有する矩形領域を、検出領域４２０として設定する。
【００３３】
本実施形態では、一般的な被写体の身長ｈを１．７ｍとし、検知線４１０の長さＬが画像上で２ｍに相当するものとする。そして、通過を正しく検知するために、検知線４１０の前後でそれぞれ被写体が３歩移動する距離を検知幅Ｗ１、Ｗ２とする。被写体の歩幅を０．９ｍとした場合、画像上の２．７ｍの距離が、検知線４１０前後の検知幅Ｗ１、Ｗ２となる。検知線４１０の長さＬを２ｍとした場合、検知線４１０前後の検知幅Ｗ１、Ｗ２は、検知線４１０の長さＬの１．３５倍となる。このように、カメラ１００は、検知線４１０の長さＬに所定の倍率（１．３５倍）をかけた長さを検知幅Ｗ１、Ｗ２として設定する。
【００３４】
なお、検出領域４２０の検知線４１０の延伸方向における長さは、検知線４１０の長さＬに所定のマージンを設けた長さであってもよい。つまり、カメラ１００は、検知線４１０を含み、検知線４１０の延伸方向に少なくとも検知線４１０の長さＬを有し、検知線４１０に直交する方向に所定の検知幅Ｗ１、Ｗ２を有する矩形領域を、検知線４１０に対する検出領域４２０とする。
また、検知幅Ｗ１、Ｗ２は、同じ長さに限定されるものではなく、通過を検知したい被写体をより確実に検出できるように、検知幅Ｗ１は検知幅Ｗ２よりも長く設定してもよい。
【００３５】
図６は、図４のＳ２において実行される検出領域生成処理手順を示すフローチャートである。
Ｓ２１では、カメラ１００は、検知線の設定情報に含まれる検知線の長さＬをもとに、検知線の長さＬに所定の倍率（本実施形態では１．３５倍）をかけた長さを、検出領域の検知幅Ｗ１、Ｗ２として算出する。次に、Ｓ２２では、カメラ１００は、検知線の延伸方向に当該検知線の長さＬを有し、検知線に直交する方向に、検知線からそれぞれ検知幅Ｗ１、Ｗ２だけ広げた矩形領域を生成する。最後に、カメラ１００は、Ｓ２２において生成された矩形領域を、検知線に対する検出領域として設定する。
【００３６】
図４に戻って、Ｓ３では、Ｓ２において作成された検出領域に重なる検出領域が、検出領域記憶部１１１に記憶されているか否かを判定する。重なる検出領域が存在する場合、Ｓ４に移行し、重なる検出領域が存在しない場合、Ｓ６に移行する。
Ｓ４では、カメラ１００は、重なる検出領域全てを囲む外接矩形を作成し、Ｓ５に移行する。Ｓ５では、カメラ１００は、上記の重なる検出領域全ての設定情報を検出領域記憶部１１１から削除する。また、カメラ１００は、Ｓ４において作成された外接矩形を、各検知設定に対する共通の検出領域として設定する。
Ｓ６では、カメラ１００は、Ｓ２またはＳ５において設定された検出領域の設定情報を検出領域記憶部１１１に記憶し、処理を終了する。
【００３７】
以上説明したように、本実施形態におけるカメラ１００は、画像内に設定された、被写体検出処理で用いる検知線の設定情報を取得し、取得された検知線の設定情報に基づいて、被写体検出処理を行う画像内の検出領域を設定する。
これにより、カメラ１００は、検知線の設定情報をもとに、当該検知線を用いた通過検知に適した被写体の検出領域を自動的に設定することができる。このように、カメラ１００は、通過検知設定に適した被写体の検出領域を、ユーザ操作を必要とすることなく適切に設定することができ、ユーザの手を煩わせることなく通過検知処理の精度を高めることが可能となる。
【００３８】
検知線の設定情報の取得に際し、カメラ１００は、画像をクライアント装置２００の表示部２０１に表示させ、表示部２０１に表示された画像内における検知線の指定を受け付ける。ユーザは、クライアント装置２００が備える表示部２０１に表示された画像を参照しながら、画像上の複数点をクライアント装置２００が備えるキーボードやマウス等のポインティングデバイスを用いて指定することで、検知線を指定することができる。カメラ１００は、検知線の設定情報として、ユーザが指定した複数の点の画像上の位置情報や、ユーザが指定した複数の点によって形成される線分の長さや傾きといった情報を取得することができる。
したがって、カメラ１００は、ユーザが指定した検知線の設定情報を適切に取得し、ユーザが指定した検知線に対して適切な検出領域を設定することができる。
【００３９】
また、カメラ１００は、検知線の設定情報に基づいて、検知線を含み、検知線の延伸方向に少なくとも検知線の長さＬを有し、検知線に直交する方向に所定の検知幅Ｗ１、Ｗ２を有する領域を、被写体検出処理を行う検出領域として設定する。ここで、検知幅Ｗ１、Ｗ２は、検知線の長さＬに所定の倍率をかけた長さとすることができる。
このように、カメラ１００は、ユーザにより指定された検知線は、通過を検知したい被写体の情報と相関があることに着目し、検出領域の位置および大きさを設定する。したがって、カメラ１００は、通過を検知したい被写体を適切に検出可能な検出領域を設定することができ、通過検知処理の精度を適切に向上させることができる。
【００４０】
カメラ１００は、被写体検出処理を、時系列上連続する画像に対して予め定めた所定のフレームレートで実行する。通過検知処理により検知線を通過する物体（例えば、人体）を精度良くカウントするためには、ある程度以上のフレームレートで被写体検出処理を行う必要がある。例えば１秒間に１０枚の画像に対して被写体検出処理を行う必要がある。
ところが、被写体検出処理は、テンプレートマッチングにより物体（人体）を検出するため、処理時間が多くかかる。そのため、画像内に大勢の人がいる場合や背景が複雑で人との判別が困難である場合には、処理がリアルタイム時間内に完了しない状況が発生する。この場合、途中で被写体検出処理を打ち切って次の画像に対する被写体検出処理に移行することになり、通過検知処理の精度が低下してしまう。
【００４１】
つまり、図７に示すように、画像６００全体を被写体検出処理の検出領域４２０Ａに設定した場合、画像６００の左上の位置から右下の最終位置まで順にスキャンを行って、画像６００から人体を検出する検出処理を行うことになる。そのため、上述したように画像内に大勢の人がいる場合などでは、画像６００の下の方に存在する人体を検出できずに処理を打ち切る動作を実施しなければならない。
画像６００の下の方に通過を検知したい被写体５００が存在する場合、通過検知処理の結果に影響のない画像６００の上の方に存在する被写体５１０に対してのみ検出処理が行われ、被写体５００に対しては検出処理が行われないことになる。その結果、被写体５００を適切に検出できずに通過カウントの精度が低下してしまう。
【００４２】
これに対して、本実施形態では、通過検知に影響しない領域に対して検出処理を行わないように、設定された検知線に応じた適切な検出領域を設定することができる。したがって、被写体検出処理により通過検知したい被写体を適切に検出し、精度良く通過検知処理を行うことができる。
【００４３】
（第二の実施形態）
次に、本発明の第二の実施形態について説明する。
上述した第一の実施形態では、検知線の設定情報に基づいて検出領域を設定する場合について説明した。第二の実施形態では、検知線に対して垂直な方向への被写体の移動速度を考慮して検出領域を設定する場合について説明する。
【００４４】
被写体の通過を適切に検知するためには、検知線の通過前後において、ある程度の回数被写体を検出する必要がある。そこで、本実施形態では、カメラ１００は、検知線の通過前後の被写体の検出回数がそれぞれ設定回数以上となるよう、検出領域の検知幅Ｗ１、Ｗ２を設定する。
具体的には、図８に示すように、検知線４１０の通過前における被写体５００の検出回数が少なくとも６回、検知線４１０の通過後における被写体５００の検出回数が少なくとも４回となるように検出領域４２２を作成する。この場合、被写体の検出フレームレートを１０ｆｐｓとすると、通過前に０．６秒間、通過後に０．４秒間、被写体が被写体検出処理により検出されるように検出領域の検知幅Ｗ１、Ｗ２を設定する必要がある。この検出領域の検知幅Ｗ１、Ｗ２は、被写体の移動速度Ｖに応じて異なる。そのため、実際に移動する被写体を測定し、被写体の移動速度Ｖに基づいて検出領域の検知幅Ｗ１、Ｗ２を設定するようにする。
【００４５】
まず、図８の破線に示すように、カメラ１００は、検知線４１０の長さＬと同じ幅で、検知線４１０に直交する方向に画像端まで延長した矩形領域を、基本領域４２１として設定する。次に、被写体５００に検知したい最大の移動速度Ｖで移動してもらい、カメラ１００は、基本領域４２１および検知線４１０を用いて、実際に被写体検出処理および通過検知処理を行う。そして、カメラ１００は、処理フレームごとの被写体５００の位置を求め、検知線４１０を通過する６回前に被写体５００を検出した位置と、検知線４１０の通過後４回目に被写体５００を検出した位置とを検出領域の端として、検出領域４２２を決定する。
【００４６】
以上説明したように、本実施形態におけるカメラ１００は、検知線の設定情報と被写体の移動速度とに基づいて、被写体検出処理を行う検出領域を設定する。これにより、通過を検知したい被写体の移動速度が速いほど、検出領域を広く設定することが可能となる。具体的には、カメラ１００は、被写体の移動速度に基づいて、検知線の通過前後の被写体の検出回数がそれぞれ設定回数以上となるよう、検出領域の検知幅Ｗ１、Ｗ２を設定する。したがって、被写体を適切に検出し、検知線の通過を精度良く検知することができる。
また、カメラ１００は、検知線の通過前における上記設定回数を、検知線の通過後における上記設定回数よりも多く設定することもできる。この場合、被写体の通過をより確実に検知することができる。
【００４７】
（第三の実施形態）
次に、本発明の第三の実施形態について説明する。
上述した第一の実施形態では、検知線の設定情報に基づいて検出領域を設定する場合について説明した。第三の実施形態では、被写体の大きさを考慮して検出領域を設定する場合について説明する。
【００４８】
図９（ａ）に示すように、通過を検知する被写体５００の位置を、当該被写体５００の足元位置５００ａとした場合、検知線４１０の上端４１１をぎりぎり通過する被写体５００の大部分は、検知線４１０の外側を通過する。
そのため、例えば、上述した図５に示すように、検知線４１０の延伸方向に検知線４１０の長さＬを有する検出領域４２０を設定し、当該検出領域４２０について被写体検出処理を行った場合、図９（ａ）に示す被写体５００を適切に検出できないおそれがある。
【００４９】
そこで、本実施形態では、カメラ１００は、被写体５００の大きさに基づいて、検知線４１０の延伸方向における検出領域の長さを設定する。具体的には、カメラ１００は、図９（ｂ）に示すように、検知線４１０の上端４１１側に被写体５００の大きさ（身長ｈ）に相当する長さを有する検出領域４２４を設定する。この検出領域４２４は、検知線４１０を含み、検知線４１０の延伸方向に検知線４１０の長さＬを有し、検知線４１０に直交する方向に検知幅Ｗ１、Ｗ２を有する領域４２３を、検知線上端４１１側に被写体５００の大きさ（身長ｈ）分だけ広げた領域である。
【００５０】
以上説明したように、本実施形態におけるカメラ１００は、検知線の設定情報と被写体の大きさとに基づいて、被写体検出処理を行う検出領域を設定する。これにより、通過を検知したい被写体を検出するのに十分な広さを有する検出領域を設定することが可能となる。具体的には、カメラ１００は、被写体の大きさに基づいて、検知線の延伸方向における検出領域の長さを設定する。したがって、被写体を適切に検出し、検知線の通過を精度良く検知することができる。
また、カメラ１００は、検知線の上端側に少なくとも被写体の大きさに相当する長さを有する検出領域を設定することができる。この場合、足元がぎりぎり検知線を通過するような被写体についても、被写体検出処理により適切に検出し、検知線の通過を検知することができる。
【００５１】
（変形例）
上記各実施形態においては、検知線は、画像内において垂直方向に設定する場合について説明した。しかしながら、検知線は、画像内において水平方向に設定してもよいし、斜め方向に設定してもよい。
図１０に示すように、検知線４１０が斜め方向に設定された場合、まず、カメラ１００は、上記各実施形態と同様に、検知線４１０の延伸方向に検知線４１０の長さＬを有し、検知線４１０に直交する方向に検知幅Ｗ１、Ｗ２を有する矩形領域４２５を設定する。そして、カメラ１００は、当該矩形領域４２５を囲む外接矩形を、検出領域４２６として設定する。これにより、画像に対して斜め方向に設定された検知線に対しても、適切な検出領域を設定することができる。
【００５２】
また、上記各実施形態においては、カメラ１００が検出領域の生成処理を実行する場合について説明したが、クライアント装置２００が検出領域の生成処理を実行するようにしてもよい。この場合、図１１に示すように、クライアント装置２００が、図１に示す検出領域設定部１１０と同様に検出領域を設定する処理を行う検出領域生成部２０５を有する。そして、クライアント装置２００は、検出領域生成部２０５において生成された検出領域の設定情報を、ネットワーク３００を介してカメラ１００に送信する。カメラ１００は、図１の検出領域設定部１１０に代えて検出領域設定部１１０Ａを有し、検出領域設定部１１０Ａは、クライアント装置２００から受信した検出領域の設定情報を検出領域記憶部１１１に記憶する。
【００５３】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５４】
１００…ネットワークカメラ、１０１…撮像部、１０２…画像処理部、１０３…システム制御部、１０４…通信部、１０５…被写体検出部、１０６…被写体ＩＤ付与部、１０７…検知判定部、１０８…検知線設定部、１０９…検知線記憶部、１１０…検知領域設定部、１１１…検知領域記憶部、２００…クライアント装置、２０１…システム制御部、２０２…表示部、２０３…入力部、２０４…通信部、３００…ネットワーク
【図１】
2019082795.tif 000003
【図２】
2019082795.tif 000004
【図３】
2019082795.tif 000005
【図４】
2019082795.tif 000006
【図５】
2019082795.tif 000007
【図６】
2019082795.tif 000008
【図７】
2019082795.tif 000009
【図８】
2019082795.tif 000010
【図９】
2019082795.tif 000011
【図１０】
2019082795.tif 000012
【図１１】
2019082795.tif 000013