(第1の実施形態の内容に至る経緯)
上述した特許文献1によれば、監視エリアにおいて検知された人物の動画映像内の位置情報及び人物の属性(例えば性別、年齢)毎にマスク画像が生成されるため、そのマスク画像により、プライバシーを確保した上で店舗内の人物の行動が把握可能となる。
しかしながら、特許文献1では、ユーザ(例えば監視者)がカメラの撮像映像に対して直接的に指定する監視エリア内の任意の領域に存在する人物をマスク画像に変更するという思想は考慮されていない。撮像映像内に存在する人物のプライバシーを保護することは重要ではあるが、カメラの設置環境によっては、撮像映像内の全ての領域に存在する1人以上の人物が全てマスク画像となってしまうと撮像映像の視認性が劣化する。このため、人物のプライバシー保護と撮像映像の視認性の劣化の抑制を両立することが望まれる。
そこで、以下の第1の実施形態では、カメラが設置された場所の環境に適合するように、カメラの撮像映像内に映る人物のプライバシーの保護とカメラの撮像映像の視認性の劣化の抑制とを両立し、ユーザの使い勝手を向上するモニタリングシステム及びマスク処理設定方法の例について説明する。
以下、適宜図面を参照しながら、本発明に係るモニタリングシステムを具体的に開示した各実施形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になることを避け、当業者の理解を容易にするためである。なお、添付図面及び以下の説明は、当業者が本開示を十分に理解するために提供されるものであり、これらにより特許請求の範囲に記載の主題を限定することは意図されていない。
以下、本発明に係るモニタリングシステム、監視エリア(例えば店舗、工場、営業所、図書館やイベント会場等の公共施設、事務所、銀行)に少なくとも一つの監視用途のカメラが設置される監視カメラシステム(有人監視カメラシステム、無人監視カメラシステムのどちらも可)を例示して説明する。
なお、本発明は、モニタリングシステムにおけるマスク処理設定方法として表現することも可能である。また、本発明は、モニタリングシステムを構成するコンピュータであるクライアントPC(Personal Computer)に、マスク処理設定方法により規定される動作を実行させるためのプログラム、又はマスク処理設定方法により規定される動作を実行させるためのプログラムが記録された記録媒体として表現することも可能である。
以下、モニタリングシステムの一例としての監視カメラシステムの使用者(例えば、監視エリアの撮像映像を閲覧する監視員)を、単に「ユーザ」という。また、以下の説明において、「全方位カメラ」、「PTZカメラ」及び「固定カメラ」を総称として、単に「カメラ」という。従って、以下の説明において、単に「カメラ」と記載されている場合、そのカメラは、全方位カメラ、PTZカメラ及び固定カメラのうち少なくとも一つを指すものとする。
(第1の実施形態)
図1は、各実施形態の監視カメラシステム100のシステム構成の一例を示す図である。監視カメラシステム100では、レコーダREC1,REC4と、ルータRUT2,RUT3,RUT4とがネットワークNWを介してそれぞれ接続されている。監視カメラシステム100は、ユーザにより使用されるクライアントPC10と、複数のカメラ(後述する全方位カメラ、PTZ(Pan Tilt Zoom)カメラ、固定カメラを参照)と、複数のレコーダ(後述参照)とを含む構成である。
レコーダREC1は、公知のルーティング機能を有するルータRUT1を介して、全方位カメラCAM11、PTZカメラCAM12,CAM13及び固定カメラCAM14にそれぞれ接続されている。これらの全方位カメラCAM11、PTZカメラCAM12,CAM13及び固定カメラCAM14によりそれぞれ撮像された撮像映像は、ルータRUT1を介してレコーダREC1において該当するカメラの識別情報及び撮像日時と関連付けて録画映像として記憶される。全方位カメラCAM11、PTZカメラCAM12,CAM13及び固定カメラCAM14は、それぞれ同一の撮像エリア又は異なる撮像エリアを撮像しても構わない。このように、本実施形態を含む各実施形態では、レコーダREC1に対して、複数のカメラ(つまり、全方位カメラCAM11、PTZカメラCAM12,CAM13及び固定カメラCAM14)が対応付けられている。
レコーダREC4は、オンラインストレージとしての機能を有し、ネットワークNWの接続先機器(例えば他のレコーダ、クライアントPC10)から録画の要求があった撮像映像等のデータを記憶する。
レコーダREC2は、公知のルーティング機能を有するルータRUT2を介して、ネットワークNWや、PTZカメラCAM21及び固定カメラCAM22にそれぞれ接続されている。PTZカメラCAM21及び固定カメラCAM22によりそれぞれ撮像された撮像映像は、ルータRUT2を介してレコーダREC2において該当するカメラの識別情報及び撮像日時と関連付けて録画映像として記憶される。PTZカメラCAM21及び固定カメラCAM22は、それぞれ同一の撮像エリア又は異なる撮像エリアを撮像しても構わない。このように、本実施形態を含む各実施形態では、レコーダREC2に対して、複数のカメラ(つまり、PTZカメラCAM21及び固定カメラCAM22)が対応付けられている。
レコーダREC3は、公知のルーティング機能を有するルータRUT3を介して、ネットワークNWや、全方位カメラCAM31、PTZカメラCAM32,CAM33及び固定カメラCAM34にそれぞれ接続されている。これらの全方位カメラCAM31、PTZカメラCAM32,CAM33及び固定カメラCAM34によりそれぞれ撮像された撮像映像は、ルータRUT3を介してレコーダREC3において該当するカメラの識別情報及び撮像日時と関連付けて録画映像として記憶される。全方位カメラCAM31、PTZカメラCAM32,CAM33及び固定カメラCAM34は、それぞれ同一の撮像エリア又は異なる撮像エリアを撮像しても構わない。このように、本実施形態を含む各実施形態では、レコーダREC3に対して、複数のカメラ(つまり、全方位カメラCAM31、PTZカメラCAM32,CAM33及び固定カメラCAM34)が対応付けられている。
情報処理装置の一例としてのクライアントPC10は、上述したカメラ(具体的には、全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34)により撮像されたそれぞれの撮像映像を用いて、その撮像映像に現れる移動体(例えば人物。以下同様。)の少なくとも一部又は全体をマスク画像に変更するためのマスク処理を行う機能を有する。クライアントPC10は、各種のカメラ又はレコーダから送信(配信)された撮像映像をモニタDPに表示したり、各種のカメラ又はレコーダから送信(配信)された撮像映像をマスク処理した後の編集映像をモニタDPに表示したりする。なお、以下の説明において、移動体は、人物に限定されず、自動車又はロボット等でも構わない。
ここで、マスク画像とは、撮像映像に現れる人物のプライバシーを保護するために、その人物が誰であるかの具体的な特定を困難にするための画像処理(つまり、マスク処理)が施された画像である。マスク画像は、例えば撮像映像に現れる人物の輪郭線内部が半透明に画像処理された画像である。また、以下の説明では、マスク処理をMOR(Moving Object Remover)処理と称することもある。MOR処理とは、詳細は図11及び図12を参照して後述するが、撮像映像に現れる移動体が存在する動体領域を、マスク画像(例えば半透明画像)に置き換える処理を示す。これにより、撮像映像中に現れる人物が誰であるかの具体的な特定が困難となり、その人物のプライバシーを保護することが可能となる。例えばマスク処理部114(後述参照)により、例えば撮像映像中の移動体(例えば人物)が半透明画像のマスク画像MSK1に置き換えられた場合、撮像映像に現れる人物の輪郭線内部が半透明になり背景画像が透けて見えて背景に何があるかもわかる。これにより、人物がマスク画像MSK1に置き換えられたとしても、人物のプライバシーの保護をしながら映像としての視認性も確保できる。
また、以下の説明において、カメラにより撮像された映像を「撮像映像」といい、撮像映像が例えばクライアントPC10又はマスク機能を有するマスクカメラ(後述参照)によってマスク処理された後のマスク画像が撮像映像に重畳された映像を「編集映像」という。
クライアントPC10は、公知のルーティング機能を有するルータRUT4を介して、ネットワークNWやシステムコントローラ5に接続されている。システムコントローラ5には、ユーザの操作を支援するために設けられたジョイスティックJ1が接続されている。システムコントローラ5は、例えば監視カメラシステム100を構成する機器の動作に関連する各種設定を行う。
ネットワークNWは、有線ネットワーク(例えばイントラネット、インターネット、有線LAN(Local Area Network)でもよいし、無線ネットワーク(例えば無線LAN)でもよい。なお、例えばレコーダREC1,REC2,REC3,REC4はネットワークNWを介することなく、直接にクライアントPC10と接続されてもよい。また、図1ではモニタDPはクライアントPCとは別体として設けられたものとして図示されている。但し、モニタDPは、図4に示すように、クライアントPC10の内部に含まれるように設けられても構わない。システムコントローラ5、ジョイスティックJ1及びクライアントPC10は、例えばユーザが監視時において常駐する監視室内に設置される。
また、ネットワークNWは広域通信網であるWAN(Wide Area Network)であってもよく、この場合には、例えば会社内の複数の拠点毎又は複数の店舗毎にそれぞれレコーダが設けられ、拠点毎又は店舗毎に撮像された撮像映像がそれぞれのレコーダに記憶される。
図2は、全方位カメラCAM11,…又は固定カメラCAM14,…の内部構成の一例を詳細に示すブロック図である。全方位カメラCAM11,CAM31及び固定カメラCAM14,CAM22,CAM34の内部構成は同一であり、ここでは説明を簡単にするために、例えば全方位カメラCAM11の内部構成として説明する。図2の説明において、全方位カメラCAM11を、他の全方位カメラ(例えば全方位カメラCAM31)、又は他の固定カメラ(例えば固定カメラCAM14)に読み替えても構わない。但し、図2の説明において、全方位カメラCAM11と固定カメラとで異なる構成の内容については説明する。図2に示す全方位カメラCAM11は、プロセッサC11、通信部C12、レンズC13、イメージセンサC14、メモリC15及び電源管理部C16を含む構成である。
プロセッサC11は、全方位カメラCAM11の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。プロセッサC11は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)又はFPGA(field-programmable gate array)を用いて構成される。
例えばプロセッサC11は、システムコントローラ5又はクライアントPC10を使用するユーザの操作に応じて、イメージセンサC14における撮像により得られた全方位画像データを取得し、更に、その全方位画像データのうち特定の範囲(方向)の画像を切り出した2次元パノラマ画像データ(つまり、2次元パノラマ変換した画像データ)を生成してメモリC15に記憶する。また、プロセッサC11は、システムコントローラ5又はクライアントPC10を使用するユーザの操作に応じて、イメージセンサC14における撮像により得られた固定画角の撮像画像データを取得してメモリC15に記憶する。
通信部C12は、ルータRUT1との間のデータ通信を制御するネットワークインタフェース(I/F)であり、全方位画像データ、2次元パノラマ画像データ又は固定画角の撮像画像データを、ルータRUT1を介してレコーダREC1に送信する。また、通信部C12は、全方位画像データ、2次元パノラマ画像データ又は固定画角の撮像画像データを、ルータRUT1及びレコーダREC1を介して、カメラの識別情報及び撮像日時と関連付けてクライアントPC10に送信しても構わない。
レンズC13は、例えば全方位カメラCAM11では広画角なレンズ又は魚眼レンズを用いて構成され、全方位カメラCAM11の撮像対象となる撮像エリアの全方位からの被写体光を入射して集光し、イメージセンサC14の受光面(撮像面)に被写体光の光学像を結像する。一方、レンズC13は、例えば固定カメラCAM14では固定画角のレンズを用いて構成され、固定カメラCAM14の撮像対象となる撮像エリアの画角方向からの被写体光を入射して集光し、イメージセンサC14の受光面(撮像面)に被写体光の光学像を結像する。
イメージセンサC14は、例えばCMOS(Complementary Metal Oxide Semiconductor)センサ又はCCD(Charge Coupled Device)センサを用いて構成され、レンズC13により集光された撮像エリアからの被写体光の光学像を受光面(撮像面)において撮像処理することで、撮像エリアの全方位画像データ又は固定画角の撮像画像データを取得する。この全方位画像データ又は固定画角の撮像画像データは、プロセッサC11により取得される。
メモリC15は、全方位カメラCAM11又は固定カメラCAM14の動作を規定するためのプログラムや設定値のデータが格納されたROM15zと、固定画角の撮像画像データ、全方位画像データ又はその一部の範囲が切り出された切り出し画像データやワークデータを記憶するRAM15yと、全方位カメラCAM11又は固定カメラCAM14に挿抜自在に接続され、各種データが記憶されるメモリカード15xとを有する。
電源管理部C16は、全方位カメラCAM11又は固定カメラCAM14の各部に直流電源を供給する。また、電源管理部C16は、ルータRUT1に接続される他の機器(例えばPTZカメラCAM12,CAM13)に直流電源を供給してもよい。
図3は、PTZカメラCAM12,CAM13,…の内部構成の一例を詳細に示すブロック図である。PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33の内部構成は同一であり、ここでは説明を簡単にするために、例えばPTZカメラCAM12の内部構成として説明する。図3の説明において、PTZカメラCAM12を、他のPTZカメラ(例えばPTZカメラCAM13)に読み替えても構わない。また、全方位カメラCAM11や固定カメラCAM14と同様の各部については、図2の各部に対応する符号を付すことでその説明を省略する。PTZカメラCAM12は、例えばユーザが使用するシステムコントローラ5又はクライアントPC10からの画角変更指示により、光軸方向(撮像方向)を調整可能なカメラである。
PTZカメラCAM12は、例えば全方位カメラCAM11と同様、プロセッサC21、通信部C22、レンズC23、イメージセンサC24、メモリC25を有する他、撮像方向制御部C27及びレンズ駆動モータC28を有する。プロセッサC21は、例えばシステムコントローラ5又はクライアントPC10の画角変更指示があると、撮像方向制御部C27に画角変更指示を通知する。
撮像方向制御部C27は、プロセッサC21から通知された画角変更指示に従い、PTZカメラCAM12の撮像方向をパン方向及びチルト方向のうち少なくとも1つを制御し、更に必要に応じて、ズーム倍率を変更するための制御信号をレンズ駆動モータC28に出力する。レンズ駆動モータC28は、この制御信号に従って、レンズC23を駆動し、その撮像方向(つまり、光軸方向)を変更するとともに、レンズC23の焦点距離を調節してズーム倍率を変更する。
レンズC23は、1又は2以上のレンズを用いて構成される。レンズC23では、撮像方向制御部C27からの制御信号に応じたレンズ駆動モータC28の駆動により、パン回転、チルト回転の光軸方向が変更される。
図4は、クライアントPC10の内部構成の一例を詳細に示すブロック図である。図4に示すクライアントPC10は、プロセッサ11、通信部12、操作部13、ストレージ15、メモリ16及び電源管理部17を含む構成である。
プロセッサ11は、クライアントPC10の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。プロセッサ11は、例えばCPU、MPU、DSP又はFPGAを用いて構成される。プロセッサ11は、画像入力部111、背景画像処理部112、マスク処理設定部113、マスク処理部114及び映像出力制御部115を有する。
画像入力部111は、各種のカメラやレコーダから送信されてかつ通信部12により受信された撮像映像を入力する。
背景画像処理部112は、図11及び図12を参照して詳述するが、画像入力部111により取得された撮像映像を用いて、クライアントPC10におけるマスク処理(MOR処理)において行われる背景画像の生成や更新の各種処理を行う。背景画像の生成や更新の詳細については後述する。
マスク処理設定部113は、ユーザ操作(後述参照)に応じて、クライアントPC10が実行可能なマスク処理(MOR処理)に関する設定を行う。
マスク処理設定部113は、例えば画像入力部111により取得された撮像映像に対してマスク処理を実行するか又は実行しないかを指定するユーザ操作に応じて、その撮像映像の配信元(送信元)であるカメラ(つまり、全方位カメラ、PTZカメラ、固定カメラ)に関連付けてマスク処理の実行又は不実行を示すマスク設定情報を生成してストレージ15又はメモリ16に保存する。
また、マスク処理設定部113は、例えば画像入力部111により取得された撮像映像の中でマスク処理の対象外領域を指定するユーザ操作に応じて、指定された領域の位置情報(例えば座標情報)をマスク処理の対象外領域とするマスク設定情報を生成してストレージ15又はメモリ16に保存する。マスク設定情報の生成の詳細については後述するが、マスク設定情報はカメラごとに、マスク処理の実行又は不実行の指定、マスク処理の対象外領域の位置情報を少なくとも保持する。
マスク処理部114は、マスク処理設定部113により生成されるマスク設定情報を基に、画像入力部111により取得された撮像映像の中から、マスク設定情報により指定されるマスク処理の対象外領域を除外した領域をマスク処理の対象領域として選択する。マスク処理部114は、選択したマスク処理の対象領域において、移動体(例えば人物)の輪郭線をマスク画像(例えば半透明画像)に変更したマスク画像を生成する。マスク処理の詳細については後述する。
映像出力制御部115は、マスク処理の不実行が設定されたカメラからの撮像映像、又はカメラにより既にマスク処理(後述参照)された編集映像をそのままモニタDPに表示する。また、映像出力制御部115は、クライアントPC10におけるマスク処理の実行が設定されたカメラからの撮像映像と、この撮像映像に対してマスク処理部114により生成されたマスク画像とを用いて、撮像映像中の移動体(例えば人物)の位置にマスク画像を重畳した編集映像を生成する。映像出力制御部115は、この編集映像をモニタDPに表示する。
通信部12は、各種のカメラやレコーダから送信された撮像映像又は編集映像(後述参照)を、ルータRUT4を介して受信してプロセッサ11に出力する。
操作部13は、ユーザの入力操作の内容をプロセッサ11に通知するためのユーザインターフェース(UI:User Interface)であり、例えばマウス、キーボード等のポインティングデバイスで構成される。また、操作部13は、例えばモニタDPの表示画面に対応して配置され、ユーザの指やスタイラスペンによって直接入力操作が可能なタッチパネル又はタッチパッドを用いて構成されてもよい。
表示部の一例としてのモニタDPは、例えばLCD(Liquid Crystal Display)又は有機EL(Electroluminescence)を用いて構成され、マスク処理設定部113により設定されるカメラ設定画面(図6参照)や領域設定画面(図7参照)を表示したり、映像出力制御部115により出力された撮像映像又は編集映像を表示したりする。
記憶部の一例としてのストレージ15は、例えばマスク処理設定部113により生成されるマスク設定情報を記憶し、更に、各種のカメラやレコーダから配信(送信)された撮像映像やプロセッサ11により生成された編集映像のデータを記憶する。
メモリ16は、クライアントPC10の動作を規定するためのプログラムや設定値のデータが格納されたROM161と、プロセッサ11が生成した各種のデータや処理途中のワークデータを記憶するRAM162とを含む。また、図4には図示されていないが、メモリ16は、クライアントPC10に挿抜自在に接続され、各種データが記憶されるメモリカード(不図示)を更に有しても構わない。
電源管理部17は、クライアントPC10の各部に直流電源を供給する。
図5は、レコーダREC1,…の内部構成の一例を詳細に示すブロック図である。レコーダREC1,REC2,REC3,REC4の内部構成は同一であり、ここでは説明を簡単にするために、例えばレコーダREC1の内部構成として説明する。図5の説明において、レコーダREC1を、他のレコーダ(例えばレコーダREC2)に読み替えても構わない。図5に示すレコーダREC1は、プロセッサR11、通信部R12、メモリR13、ストレージR14及び電源管理部R16を含む構成である。
プロセッサR11は、レコーダREC1の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。プロセッサR11は、例えばCPU、MPU、DSP又はFPGAを用いて構成される。
例えばプロセッサR11は、システムコントローラ5又はクライアントPC10を使用するユーザの操作に応じて、各種のカメラ(例えば全方位カメラCAM11、PTZカメラCAM12,CAM13、固定カメラCAM14)により撮像された撮像映像のデータを受信し、この撮像映像のデータを録画映像として撮像日時及びカメラの識別情報と関連付けてストレージR14に保存する。
通信部R12は、各種のカメラ(例えば全方位カメラCAM11、PTZカメラCAM12,CAM13、固定カメラCAM14)により撮像された撮像映像のデータ又はこの撮像映像がマスク処理されて得られた編集映像(後述参照)を、ルータRUT1を介して受信してプロセッサR11に出力する。また、通信部R12は、クライアントPC10からの指示に応じて、プロセッサR11がストレージR14から読み出した録画映像のデータをクライアントPC10に送信する。
メモリR13は、レコーダREC1の動作を規定するためのプログラムや設定値のデータが格納されたROM131と、プロセッサR11が生成した各種のデータや処理途中のワークデータを記憶するRAM132とを含む。また、図5には図示されていないが、メモリR13は、レコーダREC1に挿抜自在に接続され、各種データが記憶されるメモリカード(不図示)を更に有しても構わない。
ストレージR14は、例えば各種のカメラから配信(送信)された撮像映像のデータを記憶する。また、ストレージR14は、クライアントPC10により生成された編集映像のデータがクライアントPC10からレコーダREC1に送信された場合に、その編集映像のデータを記憶しても構わない。
電源管理部R15は、レコーダREC1の各部に直流電源を供給する。
次に、本実施形態の監視カメラシステム100の動作について、図6〜図10を参照して詳細に説明する。
図6は、カメラ設定画面WD1の一例を示す図である。図7は、領域設定画面WD2の一例を示す図である。図8は、マスク処理(MOR処理)の設定に関するユーザオペレーションに伴う画面の時系列遷移の第1例を示す説明図である。図9は、マスク処理(MOR処理)の設定に関するユーザオペレーションに伴う画面の時系列遷移の第1例を示す説明図である。図10は、第1の実施形態における、マスク処理(MOR処理)の設定に関するユーザオペレーションに伴うクライアントPC10の動作手順の一例を詳細に説明するフローチャートである。
先ず、図6に示すカメラ設定画面WD1について説明する。
図6では、カメラ設定画面WD1の一部が抜粋して示されている。マスク処理設定部113は、例えばユーザ操作により、カメラ設定画面WD1をモニタDPに表示する。このカメラ設定画面WD1では、ユーザの操作部13を用いた操作により、例えば最大64台のカメラ(つまり、全方位カメラ、PTZカメラ、固定カメラにより構成)の個々のカメラに対し、少なくともIP(Internet Protocol)アドレス、マスク処理(MOR処理)、マスク処理(MOR処理)の設定、初期学習期間、通常学習期間が関連付けられて設定可能となる。また、カメラ設定画面WD1に設けられた4つのタブ(カメラ1−16,カメラ17−32,カメラ33−48,カメラ49−64)を切り替えることで、カメラ16台単位で、該当するカメラについて、少なくともIP(Internet Protocol)アドレス、マスク処理(MOR処理)、マスク処理(MOR処理)の設定、初期学習期間、通常学習期間の情報を設定可能である。
IPアドレスの列CLM1では、該当するカメラのIPアドレスが入力される。
マスク処理(MOR処理)の列CLM2では、クライアントPC10でのマスク処理(MOR処理)の実行(ON)又は不実行(OFF)の2つのうちいずれかが選択される(枠WK2参照)。
マスク処理(MOR処理)の設定の列CLM3では、マスク処理(MOR処理)の対象外領域を設定させるための領域設定画面WD2を表示させる設定ボタン(枠WK1参照)が表示される。但し、列CLM2においてONが選択されたカメラについては列CLM3の設定ボタンが押下可能に表示されるが、列CLM2においてOFFが選択されたカメラについては列CLM3の設定ボタンは押下可能に表示されない(例えば列CLM3の図6の紙面上から5段目,8段目,10段目,15段目の点線参照)。
初期学習期間の列CLM4では、後述するマスク処理(MOR処理)における初期学習期間が入力される(枠WK3参照)。同様に、列CLM2においてONが選択されたカメラについては列CLM4の初期学習期間は入力可能であるが、列CLM2においてOFFが選択されたカメラについては列CLM4の初期学習期間は入力不可である(例えば列CLM4の図6の紙面上から5段目,8段目,10段目,15段目の点線参照)。
通常学習期間の列CLM5では、後述するマスク処理(MOR処理)における通常学習期間が入力される(枠WK3参照)。同様に、列CLM2においてONが選択されたカメラについては列CLM5の通常学習期間は入力可能であるが、列CLM2においてOFFが選択されたカメラについては列CLM5の通常学習期間は入力不可である(例えば列CLM5の図6の紙面上から5段目,8段目,10段目,15段目の点線参照)。
次に、図7に示す領域設定画面WD2について説明する。
図7では、領域設定画面WD2の全体が示されている。マスク処理設定部113は、ユーザ操作により、カメラ設定画面WD1の列CLM2においてONが選択されたカメラについて列CLM3の設定ボタンが押下されると、領域設定画面WD2をモニタDPに切り替えて表示する。なお、マスク処理設定部113は、カメラ設定画面WD1と領域設定画面WD2とを別個にモニタDPに表示しても構わない。この領域設定画面WD2では、ユーザの操作部13を用いた操作により、カメラにより撮像された撮像映像MV1が映し出されながら、マスク処理(MOR処理)の対象外領域がカメラと関連付けて設定可能となる。
領域設定画面WD2では、デバイス名TM1、視覚領域TM2、非視覚領域TM3、削除TM4、画像呼出TM5の各項目と、映像用の表示領域と、設定完了用のセットボタンSTBTとが示されている。映像用の表示領域は、デバイス名TM1により指定されているカメラ(例えばPTZカメラCAM13)により現在撮像されている撮像映像MV1(つまり、ライブ映像)の表示領域である。但し、領域設定画面WD2の映像用の表示領域に映し出される映像は、カメラ(例えばPTZカメラCAM13)により現在撮像されている撮像映像MV1(つまり、ライブ映像)に限定されず、例えばレコーダREC1において既に記憶されている過去の録画映像であっても構わない。この場合には、クライアントPC10は、レコーダREC1から配信(送信)された過去の録画映像を受信して領域設定画面WD2の映像用の表示領域に表示する。
デバイス名TM1では、例えばPTZカメラCAM13が示されている。
視覚領域TM2には、マスク処理の対象外領域を指定するための領域選択ボタンVA1、VA2,VA3が表示されている。言い換えると、マスク処理の対象外領域に指定されると、その領域内に移動する人物がいても、マスク処理されず、映像中に映し出されることになる。領域選択ボタンVA1は、マスク処理の対象外領域を四角形(例えば矩形状)で指定するために使用される(図8参照)。領域選択ボタンVA2は、マスク処理の対象外領域を多角形(例えば五角形)で指定するために使用される(図9参照)。領域選択ボタンVA3は、領域選択ボタンVA1又は領域選択ボタンVA2の操作によって指定されたマスク処理の対象外領域を選択するために使用される。
非視覚領域TM3には、撮像映像から隠す領域(隠し領域)を指定するための領域選択ボタンIVA1、IVA2,IVA3が表示されている。言い換えると、隠し領域に指定されると、その隠し領域内は例えば黒色で塗りつぶされて、映像中に映し出されなくなる。領域選択ボタンIVA1は、隠し領域を四角形(例えば矩形状)で指定するために使用される。領域選択ボタンIVA2は、隠し領域を多角形(例えば五角形)で指定するために使用される。領域選択ボタンIVA3は、領域選択ボタンIVA1又は領域選択ボタンIVA2の操作によって指定された隠し領域を選択するために使用される。
削除TM4には、選択された一つのマスク処理の対象外領域又は選択された一つの隠し領域を削除するための選択ボタンDL1と、選択された全てのマスク処理の対象外領域又は選択された全ての隠し領域を削除するための選択ボタンDL2とが表示されている。なお、マスク処理の対象外領域又は隠し領域において一つだけが選択されている場合には、撮像映像MV1中において、該当する領域部分が点線で示される。
セットボタンSTBTは、マスク処理の対象外領域や隠し領域が指定された場合に、その指定されたマスク処理の対象外領域や隠し領域を確定するために、ユーザ操作によって押下される。従って、マスク処理設定部113は、セットボタンSTBTの押下により、指定されたマスク処理の対象外領域や隠し領域の位置情報(より具体的には、撮像映像MV1中の位置情報)をデバイス名TM1により特定されるカメラに関連付けてストレージ15又はメモリ16に保存する。
ここで、マスク処理の対象外領域の設定について、例えば図8及び図10を参照して説明する。カメラ設定画面WD1(図6参照)を表示するためのユーザ操作により、マスク処理設定部113は、カメラ設定画面WD1をモニタDPに表示する(S1)。
ユーザ操作により、カメラ設定画面WD1(図6参照)のPTZカメラCAM13のレコードの列CLM2がONに選択され、かつ同レコードの列CLM3の設定ボタン(枠WK1参照)が押下されると(S2、YES)、マスク処理設定部113は、PTZカメラCAM13に対応する領域設定画面WD2をモニタDPに表示する(S3)。列CLM3の設定ボタンが押下されない限り(S2、NO)、クライアントPC10のプロセッサ11の処理はステップS3に進まない。
図8の領域設定画面WD2において、ユーザ操作により、視覚領域TM2の領域選択ボタンVA1(例えば四角形状の領域選択ボタンVA1)が押下され(S4)、かつ、人物JB1,JB2,JB3が映っている撮像映像MV1中のテレビ装置の周囲をドラッグ操作等によって囲むように指定されたとする(S5)。マスク処理設定部113は、領域設定画面WD3において、領域選択ボタンVA1により指定されたテレビ装置の周囲に四角形状の枠JGA1を描画する。更に、マスク処理設定部113は、領域設定画面WD3において、ユーザ操作によってセットボタンSTBTが押下されたことを契機に(S6)、枠JGA1の位置情報(例えば座標情報)をマスク処理の対象外領域として、PTZカメラCAM13と関連付けたカメラ設定情報を生成してストレージ15又はメモリ16に保存する(S7)。マスク処理部114は、マスク処理設定部113により生成されたカメラ設定情報を参照し、撮像映像MV1中の枠JGA1の内部以外の移動体(例えば人物JB1,JB2,JB3)をマスク画像MK1,MK2,MK3に変更するためのマスク処理を行う。映像出力制御部115は、マスク処理部114により生成されたマスク画像MK1,MK2,MK3と撮像映像MV1とを用いた編集映像を生成してモニタDPの映像表示画面WD4に表示する。
これにより、枠JGA1の内部はマスク処理の対象外領域であるためにマスク処理は行われず、例えば映像表示画面WD4の枠NMK1内のテレビ装置に移動する人物が映し出されたとしても、その人物はマスク画像(例えばマスク画像MK1)に変更されず、映像表示画面WD4に映し出される編集映像の視認性の劣化を抑制できる。
なお、映像出力制御部115は、マスク処理部114におけるマスク処理の中で実行される通常学習(後述参照)を実行している時は、マスク処理(より具体的には通常学習)を実行していることを示す「MOR Running」のインジケータID1を映像表示画面WD4の左上端(Upper left)に表示する。これにより、ユーザは、クライアントPC10においてマスク処理が実行されている状態をモニタDPの映像表示画面WD4を閲覧することで、視覚的かつ簡単に把握できる。
ここで、マスク処理の対象外領域の設定について、例えば図9及び図10を参照して説明する。カメラ設定画面WD1(図6参照)を表示するためのユーザ操作により、マスク処理設定部113は、カメラ設定画面WD1をモニタDPに表示する(S1)。
ユーザ操作により、カメラ設定画面WD1(図6参照)のPTZカメラCAM13のレコードの列CLM2がONに選択され、かつ同レコードの列CLM3の設定ボタン(枠WK1参照)が押下されると(S2、YES)、マスク処理設定部113は、PTZカメラCAM13に対応する領域設定画面WD2をモニタDPに表示する(S3)。列CLM3の設定ボタンが押下されない限り(S2、NO)、クライアントPC10のプロセッサ11の処理はステップS3に進まない。
図9の領域設定画面WD2において、ユーザ操作により、視覚領域TM2の領域選択ボタンVA2(例えば五角形状の領域選択ボタンVA2)が押下され(S4)、かつ、人物JB1,JB2,JB3が映っている撮像映像MV1中の人物JB1の頭部周辺が囲まれるように五角形の頂点PT1,PT2,PT3の選択及び頂点間の辺がドラッグ操作等によって指定されたとする(S5)。マスク処理設定部113は、領域設定画面WD3において、領域選択ボタンVA2により指定された人物JB1の頭部周辺に五角形状の枠JGA2を描画する。更に、マスク処理設定部113は、領域設定画面WD3において、ユーザ操作によってセットボタンSTBTが押下されたことを契機に(S6)、枠JGA2の位置情報(例えば座標情報)をマスク処理の対象外領域として、PTZカメラCAM13と関連付けたカメラ設定情報を生成してストレージ15又はメモリ16に保存する(S7)。マスク処理部114は、マスク処理設定部113により生成されたカメラ設定情報を参照し、撮像映像MV1中の枠JGA2の内部以外の移動体(例えば人物JB2,JB3)をマスク画像MK2,MK3(図8参照)に変更するためのマスク処理を行う。映像出力制御部115は、マスク処理部114により生成されたマスク画像MK2,MK3と撮像映像MV1とを用いた編集映像を生成してモニタDPの映像表示画面(不図示)に表示する。
これにより、枠JGA2の内部はマスク処理の対象外領域であるためにマスク処理は行われず、例えば映像表示画面(不図示)内の人物JB1の頭部周辺で移動する人物が映し出されたとしても、その人物はマスク画像(例えばマスク画像MK1)に変更されず、映像表示画面に映し出される編集映像の視認性の劣化を抑制できる。
次に、クライアントPC10のプロセッサ11におけるマスク処理(MOR処理)の動作内容の詳細について、図11及び図12を参照して説明する。図11は、各実施形態に共通するマスク処理(MOR処理)の動作手順の一例を詳細に説明するフローチャートである。図12は、図11のステップS15,S16における背景画像の更新処理の動作手順の一例を詳細に説明するフローチャートである。
図11において、プロセッサ11の背景画像処理部112は、画像入力部111により取得された撮像映像(例えばカメラにより撮像開始されてから一定時間分の撮像映像)を分析し、この撮像映像中で動きの無い領域(以下、「静止領域」という)からなる背景画像を生成する(S11)。以下、このステップS11の処理を、マスク処理(MOR処理)における「初期学習」と定義する。
図13は、初期学習による背景画像の生成手順を模式的に示す説明図である。背景画像処理部112は、一定時間分の撮像映像を取得し、撮像映像を構成する複数の撮像画像(図13の紙面左側参照)において、公知の画像処理(例えばフレーム間差分の演算)により、撮像画像のフレーム間において静止領域と動きのある領域(以下、「動体領域」という)とを検知する。図13では人物JB4が移動体として示されている。背景画像処理部112は、上述した画像処理により、動きの無い領域(つまり、静止領域)からなる背景画像BG1を生成する。
なお、ステップS11の初期学習の処理中では、背景画像処理部112は撮像映像中において静止領域と動体領域との分離を行うことができない。このため、初期学習の期間中の撮像映像はモニタDPに表示されない。言い換えると、映像出力制御部115は、初期学習の期間中は、カメラから配信(送信)された撮像映像をモニタDPに表示しない。
図14は、マスク処理(MOR処理)の概念を模式的に示す説明図である。ステップS11の初期学習の終了後、プロセッサ11のマスク処理部114は、ステップS11において生成された背景画像BG1の画素値(例えば輝度値又はRGB(Red Green Blue)値。以下同様。)とカメラから配信(送信)された現在の撮像映像AA1の画素値とを、背景画像や撮像映像を構成する画素の単位又は複数の画素からなる所定画素領域の単位(例えば4画素×4画素の単位)で比較する。
マスク処理部114は、上述した比較の結果として、画素値が一定の閾値(既知)より大きな差異がある撮像映像中の領域を動体領域OB1と判断する(S12)。マスク処理部114は、動体領域と判断した撮像映像中の該当部分の画像をマスク画像MSK1(例えば半透明画像)に変更し、マスク画像MSK1を撮像映像AA1中の動体領域に重畳した編集映像BB1を生成してモニタDPに表示する(S13)。なお、編集映像BB1をモニタDPに表示する処理は、映像出力制御部115により行われても構わない。また、マスク処理部114は、生成した編集映像BB1を、カメラの識別番号(例えばカメラID)と関連付けて、ストレージ15又はメモリ16に保存してもよいしレコーダ(例えばレコーダREC1)に送信して記憶させても構わない。例えばマスク処理部114により、例えば撮像映像中の移動体(例えば人物)が半透明画像のマスク画像MSK1に置き換えられた場合、撮像映像に現れる人物の輪郭線内部が半透明になり背景画像が透けて見えて背景に何があるかもわかる。これにより、人物がマスク画像MSK1に置き換えられたとしても、人物のプライバシーの保護をしながら映像としての視認性も確保できる。
一方、マスク処理部114は、上述した比較の結果として、画素値が一定の閾値(既知)より小さな差異となった撮像映像中の領域を静止領域と判断する(S14)。マスク処理部114は、静止領域と判断した撮像映像中の該当部分の画像を現在の撮像映像又は背景画像としてそのままモニタDPに表示する(S14)。なお、静止領域と判断された撮像映像中の該当部分の画像をモニタDPに表示する処理は、映像出力制御部115により行われても構わない。また、マスク処理部114は、静止領域と判断した撮像映像中の該当部分の画像を、カメラの識別番号(例えばカメラID)と関連付けて、ストレージ15又はメモリ16に保存してもよいしレコーダ(例えばレコーダREC1)に送信して記憶させても構わない。また、ステップS12,S13,S14は時系列の順に沿って行われるものではなく、並行してほぼ同時又は同時に行われる。ステップS15,S16についても同様である。
ステップS14の後、背景画像処理部112は、ステップS14において静止領域と判断された映像領域について、その映像領域とステップS11において生成された背景画像とを用いて背景画像を更新する(S15)。例えば背景画像に対して1秒に1回の更新処理(図12参照)を行い、新しい撮像映像の情報を1%、現在の背景画像の情報を99%使用する場合には、およそ100秒後に背景画像は全面的に更新される。ステップS15の処理の詳細については、図12を参照して後述する。
ステップS14の後、背景画像処理部112は、ステップS12において動体領域と判断された映像領域について、その映像領域とステップS11において生成された背景画像とを用いて背景画像を更新する(S16)。以下、これらのステップS15,S16の処理を、マスク処理(MOR処理)における「通常学習」を定義する。例えば背景画像に対して1秒に1回の更新処理(図12参照)を行い、新しい撮像映像の情報を0.1%、現在の背景画像の情報を99.9%使用する場合には、およそ1000秒後に背景画像は全面的に更新される。この場合、通常学習の期間は、上述したステップS15で例示した100秒と、ステップS16で例示した1000秒のうち長い方の期間(つまり、1000秒=およそ17分程度)となる。ステップS16の処理の詳細については、図12を参照して後述する。
ステップS15,S16の後、マスク処理(MOR処理)が終了する場合には(S17、YES)、図11に示すプロセッサ11の処理は終了する。一方、ステップS15,S16の後、マスク処理(MOR処理)が終了しない場合には(S17、YES)、プロセッサ11の処理はステップS12に戻る。
ステップS15,S16の各処理は、図12に示す処理の順に行われる。ステップS15の処理とステップS16の処理との違いは、後述する背景画像更新比率Xの値である。図12の説明では、例えば、ステップS15の処理に関しては背景画像更新比率X=0.01(=1%)とし、ステップS16の処理に関しては背景画像更新比率X=0.001(=0.1%)とする。
具体的に説明すると、背景画像更新比率X=0.01(=1%)とは、背景画像の更新において、新しい撮像映像の情報を1%使用し、現在の背景画像の情報を99%使用することを意味する。同様に、背景画像更新比率X=0.001(=0.1%)とは、背景画像の更新において、新しい撮像映像の情報を0.1%使用し、現在の背景画像を99.9%使用することを意味する。いずれにせよ、背景画像の更新では、背景画像更新比率Xの値に応じて、新しい撮像映像の情報を取り入れることを意味する。
図12の説明では画素値をRGB値(つまり、画像中の画素における赤色、緑色、青色の強さを示す値)とする。なお、カラーテーブルが24ビットRGBの場合、(R,G,B)=(255,255,255)は白色を示し、(R,G,B)=(0,0,0)は黒色を示し、(R,G,B)=(255,0,0)は赤色を示し、(R,G,B)=(0,255,0)は緑色を示し、(R,G,B)=(0,0,255)は青色を示す。
図12において、背景画像処理部112は、更新対象となる背景画像を構成する画素の座標(x,y)を(0,0)に設定する(S21)。背景画像処理部112は、現在の撮像映像から座標(x,y)の画素における画素値(R0,G0,B0)を取得する(S22)。背景画像処理部112は、現在の背景画像(例えばステップS11の初期学習において生成された背景画像)から座標(x,y)の画素における画素値(R1,G1,B1)を取得する(S23)。
背景画像処理部112は、ステップS22において取得した画素値(R0,G0,B0)とステップS23において取得した画素値(R1,G1,B1)とを用いて、数式(1)〜数式(3)に従って、更新後の背景画像を構成する画素の座標(x,y)における画素値(R2,G2,B2)を算出する(S24)。
R2=R0×X+R1×(1.0−X)・・・(1)
G2=G0×X+G1×(1.0−X)・・・(2)
B2=B0×X+B1×(1.0−X)・・・(3)
例えばR0=100、R1=50、X=0.1(=10%)の場合には、数式(1)により、R2=100×0.1+50×0.9=55と算出される。これにより、背景画像処理部112は、該当する画素のR(要素)値は50(=R1)から55(=R2)に更新することができる。
ステップS24の後、背景画像処理部112が更新対象となる背景画像の全ての画素の座標(x,y)について数式(1)〜数式(3)を用いた算出により画素値が更新された場合には(S25、YES)、図12に示す背景画像処理部112の処理は終了する。
一方、ステップS24の後、背景画像処理部112が更新対象となる背景画像の全ての画素の座標(x,y)について数式(1)〜数式(3)を用いた算出により画素値が更新されていない場合には(S25、NO)、背景画像処理部112は、画素の座標(x,y)を次の座標に設定する(S26)。ステップS26の後、背景画像処理部112の処理はステップS22に戻る。
これにより、プロセッサ11は、図11及び図12に示すマスク処理(MOR)を行うことで、撮像映像中において動きのある領域(例えば人物)についてマスク画像に変更することで、その動体領域中の人物等が誰であるかの特定を困難にする編集映像を生成してモニタDPに表示することができ、その人物のプライバシーの保護を図ることができる。また、プロセッサ11は、例えば撮像エリアに新しい固定物が設置されたり、電灯が消灯したり点灯したりする等の環境変化が生じた場合でも、その環境変化に追従した背景画像に更新することができる。例えば、プロセッサ11は、新しく設置された固定物を背景画像に取り込む更新を行うことが可能となり、環境変化に即した適切な編集映像を生成してモニタDPに映し出すことも可能である。
なお、ステップS16の処理では、新しい固定物が静止領域であることを背景画像処理部112が判断するための十分な時間が経過した後に、背景画像として取り込まれるために、環境に即した適切な背景追従時間の経過後に背景画像に取り込まれることが好ましい。背景追従時間は、通常学習の期間に相当するものである。例えば道路上の人物等、停止する可能性が低い環境(例えば場所)では、背景追従時間は短めの通常学習の期間(例えば5分=300秒)が設定されることが好ましい。一方、例えば図書館、オフィス、工場の人物等、停止する可能性が高い環境(例えば場所)では、背景追従時間は長めの通常学習の期間(例えば20分=1200秒)が設定されることが好ましい。
以上により、第1の実施形態の監視カメラシステム100は、撮像エリアを撮像する少なくとも一つのカメラ(例えば全方位カメラCAM11,…)と、カメラにより撮像された撮像エリアの撮像映像AA1、又は撮像映像AA1に現れる人物の動体領域OB1の少なくとも一部又は全体をマスク画像に変更するためのマスク処理を行って得た編集映像BB1をモニタDPに表示するクライアントPC10と、を備える。また、クライアントPC10は、撮像映像MV1の表示領域を含む、マスク処理の対象外領域を設定するための領域設定画面WD2をモニタDPに表示する(図7参照)。クライアントPC10は、ユーザ操作に応じて、領域設定画面WD2内の撮像映像MV1の表示領域の中で指定された領域(例えば図8に示す枠JGA1参照)をマスク処理の対象外領域とするカメラ設定情報を、撮像映像MV1に対応するカメラ(例えばその撮像映像を配信したカメラ)と関連付けてストレージ15又はメモリ16に記憶する。
これにより、クライアントPC10は、各種のカメラが設置された場所の環境に適合するように、ユーザの簡単な操作によって、クライアントPC10において行われるマスク処理(MOR処理)の対象外領域をカメラごとに個別に設定することができる。従って、監視カメラシステム100は、何かのトラブルがあった場合にそのトラブルの原因究明を効率的に行うために、カメラ(例えばPTZカメラCAM13)から配信された撮像映像MV1やレコーダ(例えばレコーダREC1)から配信されたカメラの撮像映像MV1内に映る人物をマスク画像に変更できるのでその人物のプライバシーを保護できるとともに、マスク処理(MOR処理)の対象外領域に映ったカメラの撮像映像の視認性の劣化を抑制できる。つまり、監視カメラシステム100は、カメラが設置された場所の環境に適合するように、カメラの撮像映像内に映る人物のプライバシーの保護とカメラの撮像映像の視認性の劣化の抑制とを両立し、ユーザの使い勝手を向上することができる。
また、クライアントPC10は、カメラごとに生成されたカメラ設定情報を用いて、撮像映像MV1の全体領域からマスク処理の対象外領域(例えば図8に示す枠JGA1参照)を除くマスク処理の対象領域に対してマスク処理を行って得た編集映像をモニタDPに表示する。これにより、クライアントPC10は、例えばユーザが撮像映像中で注目している映像領域部分の視認性を確保した上で映像出力でき、更に、マスク処理の対象領域の映像中に現れる人物をマスク画像に置き換えて表示できるので、マスク処理の対象領域内の人物が誰であるかの特定を困難にでき、プライバシーの確保を図ることができる。
また、クライアントPC10は、少なくともマスク処理の実行又は不実行をカメラごとに設定するためのカメラ設定画面WD1をモニタDPに表示し、ユーザ操作に応じて、カメラ設定画面WD1の中でいずれかのカメラに対応するマスク処理の実行が指定された場合に、カメラ設定画面WD1から、指定されたカメラに対応する領域設定画面WD2に切り替えてモニタDPに表示する。これにより、ユーザは、カメラ設定画面WD1においていずれかのカメラにより撮像された撮像映像に対してマスク処理(MOR処理)の実行又は不実行を簡易に設定できる。更に、ユーザは、カメラ設定画面WD1においてマスク処理(MOR処理)の実行を設定しかつ設定ボタンを押下することで領域設定画面WD2がモニタDPに表示されるので、マスク処理(MOR処理)の実行と対象外領域の設定とを連続的に行うことができる。
また、クライアントPC10は、ユーザ操作により、領域設定画面WD2内の撮像映像MV1の表示領域の中で指定された四角形領域をマスク処理の対象外領域に設定する。これにより、ユーザは、領域設定画面WD2に表示される撮像映像MV1を閲覧しながら、マスク処理の対象外領域とすることで視認性を確保したい部分を四角形状で選択することができる。
また、クライアントPC10は、ユーザ操作により、領域設定画面WD2内の撮像映像MV1の表示領域の中で指定された多角形領域(例えば五角形領域)をマスク処理の対象外領域に設定する。これにより、ユーザは、領域設定画面WD2に表示される撮像映像MV1を閲覧しながら、マスク処理の対象外領域とすることで視認性を確保したい部分を多角形状(例えば五角形領域)で選択することができる。
また、クライアントPC10は、少なくともマスク処理の実行又は不実行をカメラごとに設定するためのカメラ設定画面WD1をモニタDPに表示し、カメラ設定画面WD1に対するユーザ操作に応じて、マスク処理の中で撮像映像MV1の背景画像を生成するための初期学習の期間と、マスク処理の中で背景画像を更新するための通常学習の期間とをカメラごとに関連付けてストレージ15又はメモリ16に保存する。
これにより、ユーザは、各種のカメラが設置された場所の環境に適合するように、ユーザの簡単な操作によって、クライアントPC10において行われるマスク処理(MOR処理)の背景画像の初期学習及び通常学習の期間をカメラごとに個別に設定することができ、ユーザの使い勝手を向上できる。従って、クライアントPC10は、カメラ(例えばPTZカメラCAM13)が設定された環境(例えば場所)に応じて、その周辺に存在する人物の行動特性(例えば人物の移動が多い場所、人物の移動が少ない場所)に適合するように背景画像の生成及び更新を行うことができ、環境に即した適切なマスク処理後の編集映像を生成、表示することができる。
(第2の実施形態の内容に至る経緯)
特許文献1によれば、監視エリアにおいて検知された人物の動画映像内の位置情報及び人物の属性(例えば性別、年齢)毎にマスク画像が生成されるため、そのマスク画像により、プライバシーを確保した上で店舗内の人物の行動が把握可能となる。
しかしながら、特許文献1では、動画映像において検知された人物の画像領域をマスク画像に変更するのはカメラであり、カメラからの動画映像を受信する受信装置(例えばユーザが使用するクライアントPC)によりマスク処理が行われることは考慮されていない。
このため、クライアントPCが複数のカメラにより撮像されたそれぞれ異なる撮像映像を受信してモニタに分割表示している間、それぞれの撮像映像毎にマスク処理の実行又は不実行の有無の設定を個々に行うことができず、ユーザの使い勝手が良くなかった。例えば、カメラにてマスク処理が行われるように予め設定されている場合、そのカメラから配信された映像がクライアントPCのモニタに表示されている間では、カメラの撮像処理を一旦停止させ、カメラのマスク処理を不実行とする設定に変更しない限り、モニタでの表示途中でクライアントPCにより、カメラにおけるマスク処理を不実行とする設定に変更することはできなかった。
そこで、第2の実施形態では、複数種類の異なる撮像映像をモニタに分割して表示する際に、個々の撮像映像に対するマスク処理の実行又は不実行の設定を撮像映像毎に簡易に設定し、ユーザの使い勝手を向上するモニタリングシステム及び映像表示方法の例を説明する。
(第2の実施形態)
第2の実施形態のモニタリングシステムとして、第1の実施形態で説明した監視カメラシステム100を例示して説明する。第2の実施形態の監視カメラシステム100の内部構成は第1の実施形態の監視カメラシステム100と同一であるため、同一の内容の説明は簡略化又は省略し、異なる内容について説明する。
図15(A)及び図15(B)は、複数のカメラの撮像映像を3分割した表示例を示す図である。図15(C)は、複数のカメラの撮像映像を4分割した表示例を示す図である。
クライアントPC10は、複数のカメラ(例えば全方位カメラCAM11、PTZカメラCAM12,CAM13)から配信(送信)された個々の異なる撮像映像を受信したとする。それぞれのカメラにおいてマスク処理(MOR処理)が実行されることがカメラ設定画面WD1(図6参照)において設定されている場合、プロセッサ11は、マスク処理部114において、図11及び図12に示す処理に従ってそれぞれの撮像映像中の人物をマスク画像に変更した(置き換えた)マスク処理後の編集映像MV2,MV3,MV4を生成する。プロセッサ11は、映像出力制御部115において、マスク処理部114により生成された編集映像MV2,MV3,MV4を3分割して映した映像表示画面WD5a又は映像表示画面5bをモニタDPに表示することができる(図15(A)又は図15(B)参照)。
図15(A)の映像表示画面WD5aでは、編集映像の表示領域全体3DV1のうち、編集映像MV2の表示領域は、他の編集映像MV3,MV4の表示領域に比べて大きくなっている。図15(B)の映像表示画面WD5bでは、編集映像の表示領域全体3DV2のうち、編集映像MV4の表示領域は、他の編集映像MV2,MV3の表示領域に比べて大きくなっている。プロセッサ11は、図15(A)、図15(B)又は図15(C)に示す表示切替ボックスCGB1に対するユーザ操作に応じて、図15(A)に示す3分割の表示形態を、指定された表示形態(例えば図15(B)に示す3分割の表示形態、又は図15(C)に示す4分割の表示形態)に切り替えできる。但し、図15(A)及び図15(B)の図面の複雑化を避けるために、図15(A)及び図15(B)において表示切替ボックスCGB1の図示は省略されている。また、プロセッサ11は、図15(A)や図15(B)に示す3分割の表示形態において、どの編集映像の表示領域を最も大きくできるかをユーザ操作により設定できる。
クライアントPC10は、複数のカメラ(例えば全方位カメラCAM11、PTZカメラCAM12,CAM13、固定カメラCAM14)から配信(送信)された個々の異なる撮像映像を受信したとする。それぞれのカメラにおいてマスク処理(MOR処理)が実行されることがカメラ設定画面WD1(図6参照)において設定されている場合、プロセッサ11は、マスク処理部114において、図11及び図12に示す処理に従ってそれぞれの撮像映像中の人物をマスク画像に変更した(置き換えた)マスク処理後の編集映像MV2,MV3,MV4,MV5を生成する。プロセッサ11は、映像出力制御部115において、マスク処理部114により生成された編集映像MV2,MV3,MV4,MV5を4分割して映した映像表示画面WD6をモニタDPに表示することができる(図15(C)参照)。
図15(C)の映像表示画面WD6では、編集映像の表示領域全体4DV1のうち、4つの編集映像MV2,MV3,MV4,MV5の表示領域が均等である。
なお、図15(A)、図15(B)、図15(C)では、映像表示画面WD5a,WD5b,WD6に表示される映像は全てプロセッサ11によりマスク処理が施された後の編集映像が示されている。但し、少なくとも一つの映像は、マスク処理が施されていない撮像映像であっても構わない。これは、カメラ設定画面WD1において、カメラごとにマスク処理(MOR処理)の実行又は不実行の設定情報に起因する。言い換えると、クライアントPC10は、複数の映像を分割表示する際に、カメラ設定画面WD1でユーザにより設定されたカメラ設定情報に従って、それぞれのカメラに対応するマスク処理を実行した編集映像やマスク処理を実行しないで受信したままの撮像映像を用いて分割表示すればよい。
例えば4分割の表示形態の際、ユーザの会社の入り口付近に設置されたカメラから配信された1つの撮像映像は、クライアントPC10によりマスク処理がなされずにそのまま映像表示画面(例えば映像表示画面WD6)に表示される。更に、会社の建物内に設置された他の複数(3つ)のカメラから配信された3つの撮像映像は、それぞれマスク処理がなされ、マスク処理により得られた複数の編集映像が同じ映像表示画面の残りの表示領域に表示されてもよい。これにより、ユーザ(例えば監視者)は、それぞれのカメラの設置場所の事情に合わせて、それぞれの場所に現れた人物の特定の要否を適宜決定して設定できる。例えば、ユーザは、顔を把握したい場所の撮像映像中の人物の顔を把握できるし、一方、顔を把握する必要がない場所又は顔を把握してはいけない場所では人物の顔がマスク画像になっているのでその人物のプライバシー保護を遵守できる。
次に、本実施形態のクライアントPC10の分割表示の第1動作手順について、図16を参照して説明する。図16は、第2の実施形態における、複数のカメラの撮像映像の表示の際にクライアントPC10において行われる動作手順の一例を詳細に説明するフローチャートである。図16に示す処理は、クライアントPC10に撮像映像を配信するカメラごとに、クライアントPC10において行われる。
図16において、プロセッサ11のマスク処理設定部113は、クライアントPC10が受信した、分割表示の対象となるカメラの撮像映像を取得しているかどうかを判断する(S31)。マスク処理設定部113は、分割表示の対象となるカメラの撮像映像を取得していないと判断した場合には(S31、NO)、分割表示の対象となるカメラの撮像映像を取得するまで待機する(S32)。この場合には、映像出力制御部115は、分割表示の対象となるカメラからの撮像映像を取得していないので、モニタDPには何も表示しない。つまり、モニタDPの映像表示画面内の表示領域はブランクとなる。又は、クライアントPC10が既に受信している撮像映像があれば、映像出力制御部115は、その撮像映像をモニタDPの映像表示画面内の表示領域に表示してもよい。
マスク処理設定部113は、分割表示の対象となるカメラの撮像映像を取得したと判断した場合には(S31、YES)、撮像映像に含まれるカメラの識別情報を基に、ストレージ15又はメモリ16に記憶しているカメラ設定情報の該当するカメラのレコードを参照して読み出す(S33)。マスク処理設定部113は、読み出したレコードにおいて撮像映像に対してマスク処理(MOR処理)を実行する旨の設定がなされているかどうかを判断する(S34)。
マスク処理設定部113は、読み出したレコードにおいてマスク処理(MOR処理)を実行する旨の設定がなされていると判断した場合(S34、YES)、その旨をマスク処理部114に通知する。マスク処理部114は、マスク処理設定部113からの通知に応じて、該当するカメラからの撮像映像に対して図11及び図12に示したマスク処理(MOR処理)を実行し、マスク処理後の編集映像を生成する(S35)。映像出力制御部115は、ステップS35において生成された編集映像をモニタDPの映像表示画面内の該当表示領域(例えば図15(A)の編集映像MV2の表示領域)に表示する(S35)。
一方、マスク処理設定部113は、読み出したレコードにおいてマスク処理(MOR処理)を実行する旨の設定がなされていないと判断した場合(S34、NO)、オリジナルの撮像映像(つまり、マスク処理されていない撮像により得られた撮像映像。以下同様。)を表示する旨を映像出力制御部115に通知する(S36)。映像出力制御部115は、マスク処理設定部113からの通知に応じて、クライアントPC10がカメラから受信したオリジナルの撮像映像をモニタDPの映像表示画面内の該当表示領域(例えば図15(A)の編集映像MV2の表示領域)に表示する(S36)。
ステップS35又はステップS36の後、クライアントPC10の分割表示が終了する場合には(S37、YES)、図16に示すプロセッサ11の処理は終了する。一方、ステップS35,S36の後、クライアントPC10の分割表示が終了しない場合には(S37、NO)、プロセッサ11の処理はステップS31に戻る。
図17は、カメラの撮像映像とその同じカメラの過去の複数の異なる撮像映像とを4分割した表示例を示す図である。クライアントPC10は、一つのカメラ(例えば固定カメラCAM14)から配信(送信)された現在の撮像映像(ライブ映像)を受信し、更に、一つのレコーダ(例えばレコーダREC1)から配信された複数の異なる録画映像を受信したとする。複数の異なる録画映像は、現在の撮像映像(ライブ映像)を配信しているカメラ(例えば固定カメラCAM14)により過去に撮像された録画映像である。このカメラにおいてマスク処理(MOR処理)が実行されることがカメラ設定画面WD1(図6参照)において設定されている場合、プロセッサ11は、マスク処理部114において、図11及び図12に示す処理に従ってそれぞれの撮像映像及び録画映像中の人物をマスク画像に変更した(置き換えた)マスク処理後の編集映像MV6,編集録画映像MV7,MV8,MV9を生成する。プロセッサ11は、映像出力制御部115において、マスク処理部114により生成された編集映像MV6,編集録画映像MV7,MV8,MV9を4分割して映した映像表示画面WD7をモニタDPに表示することができる(図17参照)。
図17の映像表示画面WD7では、編集映像や編集録画映像の表示領域全体4DV2のうち、4つの映像(具体的には、編集映像MV6,編集録画映像MV7,MV8,MV9)の表示領域が均等である。編集録画映像MV7,MV8,MV9は、例えば編集録画映像MV7、編集録画映像MV8、編集録画映像MV9の順に撮像日時が古い又は新しいものである。これにより、クライアントPC10は、同一のカメラにより撮像された現在の撮像映像と過去に撮像された録画映像とがそれぞれマスク処理(MOR処理)された編集映像や編集録画映像をモニタDPに分割表示できるので、ユーザの人物の追跡や行動把握等を効果的に支援することができる。
次に、本実施形態のクライアントPC10の分割表示の第2動作手順について、図18を参照して説明する。図18は、第2の実施形態における、カメラの撮像映像及びレコーダから録画映像の表示の際にクライアントPC10において行われる動作手順の一例を詳細に説明するフローチャートである。図18に示す処理は、クライアントPC10に現在の撮像映像(ライブ映像)を配信するカメラ、又はそのカメラにより撮像された過去の録画映像を配信するレコーダ毎に、クライアントPC10において行われる。
また、図18に示す処理と図16に示す処理とが同一である場合には、図16に示す処理のステップ番号と同一のステップ番号を付与して説明を簡略化又は省略し、異なる内容について説明する。
図18において、プロセッサ11のマスク処理設定部113は、クライアントPC10が受信した、分割表示の対象となるカメラからの撮像映像又はレコーダからの録画映像を取得しているかどうかを判断する(S31A)。マスク処理設定部113は、カメラからの撮像映像又はレコーダからの録画映像を取得していないと判断した場合には(S31A、NO)、カメラからの撮像映像又はレコーダからの録画映像を取得するまで待機する(S32)。なお、クライアントPC10は、ユーザの撮像日時の指定により、レコーダに対して該当する録画映像を要求すると、レコーダから配信された該当する録画映像を受信して取得することができ、各実施形態でも同様である。
マスク処理設定部113は、分割表示の対象となるカメラからの撮像映像又はレコーダからの録画映像を取得したと判断した場合には(S31A、YES)、撮像映像や録画映像に含まれるカメラの識別情報を基に、ストレージ15又はメモリ16に記憶しているカメラ設定情報の該当するカメラのレコードを参照して読み出す(S33A)。マスク処理設定部113は、読み出したレコードにおいて撮像映像や録画映像に対してマスク処理(MOR処理)を実行する旨の設定がなされているかどうかを判断する(S34A)。
マスク処理設定部113は、読み出したレコードにおいてマスク処理(MOR処理)を実行する旨の設定がなされていると判断した場合(S34A、YES)、その旨をマスク処理部114に通知する。マスク処理部114は、マスク処理設定部113からの通知に応じて、該当するカメラからの撮像映像又はレコーダからの録画映像に対して図11及び図12に示したマスク処理(MOR処理)を実行し、マスク処理後の編集映像又は編集録画映像を生成する(S35A)。映像出力制御部115は、ステップS35において生成された編集映像又は編集録画映像をモニタDPの映像表示画面内の該当表示領域(例えば図17の編集映像MV6又は編集録画映像MV7の表示領域)に表示する(S35A)。
一方、マスク処理設定部113は、読み出したレコードにおいてマスク処理(MOR処理)を実行する旨の設定がなされていないと判断した場合(S34A、NO)、オリジナルの撮像映像又は録画映像を表示する旨を映像出力制御部115に通知する(S36A)。映像出力制御部115は、マスク処理設定部113からの通知に応じて、クライアントPC10がカメラから受信したオリジナルの撮像映像又は録画映像をモニタDPの映像表示画面内の該当表示領域(例えば図17の編集映像MV6又は編集録画映像MV7の表示領域)に表示する(S36A)。
以上により、第2の実施形態の監視カメラシステム100は、撮像エリアを撮像する複数のカメラ(例えば全方位カメラCAM11,…)と、個々のカメラにより撮像された撮像エリアの撮像映像に現れる移動体(例えば人物)の少なくとも一部をマスク画像に変更するためのマスク処理の実行又は不実行の設定情報をカメラごとに保持するクライアントPC10と、を備える。また、クライアントPC10は、マスク処理の実行が設定された複数のカメラにより撮像された個々の撮像映像をマスク処理して得た個々の編集映像、又はマスク処理の実行が設定された1つのカメラにより撮像された個々の撮像映像をマスク処理して得た編集映像とマスク処理の不実行が設定された少なくとも1つのカメラにより撮像された個々の撮像映像と、をモニタDPに分割表示する。
第2の実施形態のクライアントPC10も、第1の実施形態と同様に、撮像映像に現れる移動中の人物の少なくとも一部又は全部をマスク画像に置き換えるマスク処理を行うことができる。これにより、クライアントPC10は、複数の異なる撮像映像をモニタDPに分割表示する際に、クライアントPC10が受信した個々の撮像映像の配信元(送信元)としてのカメラごとに、マスク処理の実行又は不実行の設定を簡易に設定できるので、ユーザの使い勝手を向上することができる。従って、クライアントPC10は、カメラの設置場所の事情に適合するように、分割表示の対象となる撮像映像毎に、マスク処理を行ったり行わなかったりする設定を可変にできるので、ユーザの適切な監視業務や高精度なマーケティング分析に資することができる。
また、第2の実施形態の監視カメラシステム100は、個々のカメラにより撮像された撮像エリアの撮像映像を録画映像として撮像日時と関連付けて記憶するレコーダ(例えばREC1)を更に備える。クライアントPC10は、マスク処理の実行が設定されたカメラにより撮像された撮像映像をマスク処理して得た編集映像とマスク処理の実行が設定されたカメラにより過去の異なる撮像日時に撮像されてレコーダに記憶された複数の録画映像をマスク処理して得た個々の編集録画映像と、をモニタDPに分割表示する。
これにより、クライアントPC10は、同一のカメラにより撮像された現在の撮像映像と過去に撮像された録画映像とがそれぞれマスク処理(MOR処理)された編集映像や編集録画映像をモニタDPに分割表示できるので、例えば監視業務やマーケティング分析においてカメラの設置場所付近に現れた人物の追跡や行動把握等を効果的に支援することができる。
(第3の実施形態の内容に至る経緯)
特許文献1によれば、監視エリアにおいて検知された人物の動画映像内の位置情報及び人物の属性(例えば性別、年齢)毎にマスク画像が生成されるため、そのマスク画像により、プライバシーを確保した上で店舗内の人物の行動が把握可能となる。
しかしながら、特許文献1では、動画映像において検知された人物の画像領域をマスク画像に変更するのはカメラであり、カメラからの動画映像を受信する受信装置(例えばユーザが使用するクライアントPC)によりマスク処理が行われることは考慮されていない。
クライアントPCにおいてマスク処理ができない場合、マスク処理を実行する機能(以下、「マスク機能」という)が無いカメラにより撮像された撮像映像についてマスク処理を行うことはできなかった。マスク機能が無い既設のカメラにマスク機能を追加することは困難を伴う。このため、監視効率の向上やマーケティング分析精度の向上を図ることが困難であった。
そこで、第3の実施形態では、マスク機能を有さないカメラに対してマスク機能を別途追加すること無く、マスク機能を有さないカメラにより撮像された撮像映像に対してマスク処理を適切に施し、監視効率やマーケティング分析精度の向上を図るモニタリングシステム及び映像表示方法の例を説明する。
(第3の実施形態)
第3の実施形態のモニタリングシステムとして、第1の実施形態で説明した監視カメラシステム100を例示して説明する。第3の実施形態の監視カメラシステム100の内部構成は第1の実施形態の監視カメラシステム100と同一であるため、同一の内容の説明は簡略化又は省略し、異なる内容について説明する。
第3,第4の各実施形態では、図1に示す監視カメラシステム100において、少なくとも固定カメラCAM14は、上述したマスク機能を有する。つまり、固定カメラCAM14は、自ら撮像した撮像映像に対し、図11及び図12に示すマスク処理(MOR処理)を実行することができる。言い換えると、第3,第4の各実施形態では、固定カメラCAM14のプロセッサC11には、図3に示すクライアントPC10のプロセッサ11内の画像入力部111、背景画像処理部112、マスク処理設定部113及びマスク処理部114と同じ各部が含まれるように構成されているとする。
なお、固定カメラCAM14は、クライアントPC10におけるマスク処理と同等のマスク処理(つまり、第1の実施形態で説明した、ユーザ操作に基づくマスク処理の対象外領域を除いた領域において行うマスク処理)を行うことができなくても、例えば特許文献1に記載したマスク処理を行うことができても構わない。また、第3,第4の各実施形態ではマスクカメラは1台として説明しているが、1台だけに限定されず、複数のカメラがマスクカメラとして動作するものであっても構わない。
また、第3,第4の各実施形態において、固定カメラCAM14のように、マスク機能を有するカメラを便宜的に「マスクカメラ」といい、固定カメラCAM14を除く他のカメラのように、マスク機能を有さないカメラを便宜的に「通常カメラ」という。
次に、本実施形態のクライアントPC10のマスク処理の設定及び撮像映像の表示に関する動作手順について、図19〜図21を参照して説明する。図19は、第3の実施形態における、マスクカメラ及び通常カメラに対するクライアントPC10のマスク処理(MOR処理)の設定及び撮像映像の表示の動作手順の一例を詳細に説明するシーケンス図である。図20は、第3,第4の各実施形態におけるカメラ設定画面の一例を示す図である。図21は、クライアントPC10のモニタDPに表示される、撮像映像がマスク処理された編集映像の4分割表示例を示す図である。
図19において、ユーザ操作により、クライアントPC10の運用が開始される操作があると(S41)、クライアントPC10は、例えばカメラ設定画面WD1A(図20参照)に対するユーザ操作によりマスクカメラにおけるマスク処理の実行(ON)又は不実行(OFF)が指定された場合に、マスクカメラにおけるマスク処理の実行又は不実行が指定されたカメラ設定情報とカメラ設定情報を設定する旨の指示とをマスクカメラに送信する(S42)。
ここで、図20に示すカメラ設定画面WD1Aについて説明する。図6に示すカメラ設定画面WD1と重複する項目又は同様な項目の説明は簡略化又は省略し、異なる内容について説明する。
図20では、カメラ設定画面WD1Aの一部が抜粋して示されている。マスク処理設定部113は、例えばユーザ操作により、カメラ設定画面WD1AをモニタDPに表示する。このカメラ設定画面WD1Aでは、ユーザの操作部13を用いた操作により、例えば最大64台のカメラ(つまり、全方位カメラ、PTZカメラ、固定カメラにより構成)の個々のカメラに対し、少なくともIPアドレス、マスク処理(MOR処理)、マスク処理(MOR処理)の設定、初期学習期間、通常学習期間が関連付けられて設定可能となる。また、カメラ設定画面WD1Aに設けられた4つのタブ(カメラ1−16,カメラ17−32,カメラ33−48,カメラ49−64)を切り替えることで、カメラ16台単位で、該当するカメラについて、少なくともIPアドレス、マスク処理(MOR処理)、マスク処理(MOR処理)の設定、初期学習期間、通常学習期間の情報を設定可能である。
マスク処理(MOR処理)の列CLM2Aでは、マスク処理の不実行(OFF)、マスクカメラでのマスク処理(CAM−MOR)の実行、又はクライアントPC10でのマスク処理(PC−MOR)の実行(ON)の3つのうちいずれかが選択される(枠WK2A参照)。言い換えると、図6のカメラ設定画面WD1におけるマスク処理の実行(ON)は、図20のカメラ設定画面WD1においては、マスクカメラでのマスク処理(CAM−MOR)の実行、又はクライアントPC10でのマスク処理(PC−MOR)の実行(ON)に該当する。
マスク処理(MOR処理)の設定の列CLM3では、列CLM2Aにおいて、マスクカメラでのマスク処理(CAM−MOR)又はクライアントPC10でのマスク処理(PC−MOR)が選択された場合に、マスク処理の対象外領域を設定させるための領域設定画面WD2を表示させる設定ボタン(枠WK1参照)が表示される。但し、列CLM2Aにおいてマスク処理の不実行(OFF)が選択されたカメラについては列CLM3の設定ボタンは押下可能に表示されない(例えば列CLM3の図20の紙面上から5段目,8段目,10段目,15段目の点線参照)。
図19において、マスクカメラは、ステップS42においてクライアントPC10から送信された指示に従い、その指示とともに送信されたカメラ設定情報を基に、そのカメラ設定情報により指定されるマスク処理の実行(ON)又は不実行(OFF)を設定し、設定した旨の応答をクライアントPC10に返す(S43)。
クライアントPC10は、通常カメラ及びマスクカメラに対し、それぞれ撮像の開始と撮像映像の配信とを指示する(S44)。通常カメラは、クライアントPC10からの指示に従い、撮像を開始し(S45)、以後、撮像により得られた撮像映像の配信を継続する(S47)。クライアントPC10は、通常カメラから配信された撮像映像を受信する。
マスクカメラは、クライアントPC10からの指示に従い、撮像を開始し(S46)、更に、ステップS43において設定されたマスク処理の実行(ON)又は不実行(OFF)を判断する。つまり、マスクカメラは、ステップS43においてマスク処理の実行(ON)を設定した場合には、撮像により得られた撮像映像をマスク処理(図11及び図12参照)することで得た編集映像をクライアントPC10に向けて配信し、その配信を継続する(S48)。一方、マスクカメラは、ステップS43においてマスク処理の不実行(OFF)を設定した場合には、撮像により得られた撮像映像をそのままクライアントPC10に向けて配信し、その配信を継続する(S48)。
クライアントPC10は、通常カメラ又はマスクカメラに対応したカメラ設定情報の中で、マスクカメラがマスク処理を実行する旨もしくはマスク処理自体が不実行である旨が設定されている場合には、受信した撮像映像をそのままモニタDPに表示する(S49、図21参照)。
一方、クライアントPC10は、通常カメラ又はマスクカメラに対応したカメラ設定情報の中で、クライアントPC10がマスク処理を実行する旨が設定されている場合には、受信した撮像映像に対してマスク処理(図11及び図12参照)を行い、マスク処理により得た編集映像をモニタDPに表示する(S49、図21参照)。
図21の映像表示画面WD7Aでは、編集映像の表示領域全体(図17参照)のうち、4つの映像(具体的には、編集映像MV6A,MV7A,MV8A,MV9A)の表示領域が均等である。編集映像MV6A,MV9Aは、例えばマスクカメラにおいて撮像された撮像映像がマスクカメラにおいてマスク処理された結果として得られた編集映像がクライアントPC10においてそのまま表示されたものである。編集映像MV7Aは、例えばマスクカメラにおいて撮像された撮像映像がマスクカメラにおいてマスク処理されずクライアントPC10においてマスク処理された結果として得られた編集映像が表示されたものである。編集映像MV8Aは、例えば通常カメラにおいて撮像された撮像映像がクライアントPC10においてマスク処理された結果として得られた編集映像が表示されたものである。これにより、クライアントPC10は、マスク機能を有さない通常カメラやマスク機能を有するマスクカメラに対応したマスク処理の実行(ON)又は不実行(OFF)の設定に応じて、マスクカメラ又はクライアントPC10自身によりマスク処理された編集映像をモニタDPに分割表示できるので、個々のカメラで撮像された撮像映像中の人物のプライバシーを確保した上で、監視業務やマーケティング分析の効率化に資することができる。
以上により、第3の実施形態の監視カメラシステム100は、撮像エリアを撮像し、撮像エリアの撮像映像に現れる移動体(例えば人物)の少なくとも一部をマスク画像に変更するためのマスク処理を実行不能な通常カメラ(例えば全方位カメラCAM11)と、撮像映像に対するマスク処理の実行又は不実行の設定情報を保持するクライアントPC10と、を備える。クライアントPC10は、撮像映像に対するクライアントPC10でのマスク処理の実行が設定されている場合に、撮像映像をマスク処理するとともに、マスク処理により得た編集映像をモニタDPに表示する。一方、クライアントPC10は、撮像映像に対するクライアントPC10でのマスク処理の不実行が設定されている場合に、撮像映像をそのままモニタDPに表示する。
第3の実施形態のクライアントPC10も、第1の実施形態と同様に、撮像映像に現れる移動中の人物の少なくとも一部又は全部をマスク画像に置き換えるマスク処理を行うことができる。これにより、クライアントPC10は、マスク機能を有さない通常カメラに対してマスク機能を別途追加すること無く、マスク機能を有さない通常カメラにより撮像された撮像映像に対してマスク処理を適切に施し、監視効率やマーケティング分析精度の向上を図ることができる。
また、第3の実施形態の監視カメラシステム100は、撮像エリアを撮像し、撮像エリアの撮像映像に現れる移動体(例えば人物)の少なくとも一部をマスク画像に変更するためのマスク処理を実行可能なマスクカメラ(例えば固定カメラCAM14)、を更に備える。クライアントPC10は、マスクカメラにおけるマスク処理の実行又は不実行の設定情報を保持し、マスクカメラにおけるマスク処理の実行が設定されている場合に、マスクカメラにおけるマスク処理に基づく編集映像をモニタDPにそのまま表示する。
これにより、クライアントPC10は、マスク機能を既に有するマスクカメラに対するマスク処理の実行の設定によってマスク処理がなされた場合には、マスクカメラにより生成されたマスク処理後の編集映像を受信してそのまま表示することで、クライアントPC10におけるマスク処理の実行を省略できて処理負荷を軽減でき、負荷分散を図ることができる。
また、第3の実施形態の監視カメラシステム100は、撮像エリアを撮像し、撮像エリアの撮像映像に現れる移動体(例えば人物)の少なくとも一部をマスク画像に変更するためのマスク処理を実行可能なマスクカメラ(例えば固定カメラCAM14)、を更に備える。クライアントPC10は、マスクカメラにおけるマスク処理の実行又は不実行の設定情報を保持し、マスクカメラにおけるマスク処理の不実行が設定されている場合に、撮像映像をマスク処理し、このマスク処理により得た編集映像をモニタDPに表示する。
これにより、クライアントPC10は、例えばマスクカメラにおけるマスク処理よりも優れたマスク機能を有している場合(例えば、第1の実施形態で説明した、ユーザ操作に基づくマスク処理の対象外領域を除いた領域において行うマスク処理を行える場合)には、マスクカメラで行われるマスク処理により得られる編集映像よりも、ユーザの嗜好に沿うマスク処理後の編集映像を得ることができ、ユーザの使い勝手を向上できる。
(第4の実施形態の内容に至る経緯)
特許文献1によれば、監視エリアにおいて検知された人物の動画映像内の位置情報及び人物の属性(例えば性別、年齢)毎にマスク画像が生成されるため、そのマスク画像により、プライバシーを確保した上で店舗内の人物の行動が把握可能となる。
しかしながら、特許文献1では、動画映像において検知された人物の画像領域をマスク画像に変更するのはカメラであり、カメラからの動画映像を受信する受信装置(例えばユーザが使用するクライアントPC)によりマスク処理が行われることは考慮されていない。
つまり、特許文献1では、マスク処理はカメラでしか行えなかったため、現在撮像中のライブ映像(撮像映像)はカメラにおいてマスク処理が可能であるが、レコーダに既に記憶されている過去の撮像映像(以下、「録画映像」という)に対してはマスク処理を行うことはできなかった。
このため、何かしらのイベントの録画映像を事後的に検証する際、被写体の人物のプライバシーを保護するために、例えば権限のある人(マネージャ等)と権限のない人(一般ユーザ)とがそれぞれアクセス可能な録画映像を2種類用意する必要があった。例えば権限のある人は録画映像中の人物がマスク処理されていない録画映像を閲覧可能であり、一般ユーザは録画映像中の人物がマスク処理された録画映像を閲覧する。このような運用下では、同じ場面の撮像映像を録画するためにレコーダの記憶容量の増大が避けられなかった。特に近年、撮像映像の画質が高画質化(例えば4K化)していることもあり、レコーダに記憶される撮像映像のデータ量は膨大である。
言い換えると、上述した2種類の録画映像を用意するためには、1台のカメラでは足りず、例えば2台のカメラ(具体的には、マスク処理を実行する機能(以下、「マスク機能」という)を有するカメラと、マスク機能を有さないカメラ)が必要となる。このため、システム構築において部品点数が増加するのでコストアップが避けられず、システム構成も煩雑であった。また、上述したクライアントPCにおいてマスク処理ができないと、権限の有無(上述したマネージャと、一般ユーザのような権限の有無)だけで2種類の録画映像が必要となる場合に限定されず、例えばイベントの内容や種類によってもマスク処理された録画映像とマスク処理されていない録画映像との2種類の録画映像が必要となることもあった。
そこで、第4の実施形態では、過去にカメラに撮像されてレコーダに既に記憶されているイベントの録画映像を閲覧する際に、その録画映像1つのデータを用いて、マスク処理を行うか又はマスク処理を行わないかを簡単に選択し、監視効率やマーケティング分析精度の向上を図るモニタリングシステム及び映像表示方法の例を説明する。
(第4の実施形態)
第4の実施形態のモニタリングシステムとして、第3の実施形態で説明した監視カメラシステム100を例示して説明する。第4の実施形態の監視カメラシステム100の内部構成は第3の実施形態の監視カメラシステム100と同一であるため、同一の内容の説明は簡略化又は省略し、異なる内容について説明する。
第4の実施形態では、図1に示す監視カメラシステム100において、少なくとも一つのカメラが接続されている各レコーダ(つまり、レコーダREC1,REC2,REC3)には、各レコーダに接続されている少なくとも一つのカメラとの間でペアリング(言い換えると、紐付け)されている。より具体的には、レコーダREC1には、全方位カメラCAM11、PTZカメラCAM12,CAM13及び固定カメラCAM14がペアリング(紐付け)されている。レコーダREC2には、PTZカメラCAM21及び固定カメラCAM22がペアリング(紐付け)されている。レコーダREC3には、全方位カメラCAM31、PTZカメラCAM32,CAM33及び固定カメラCAM34がペアリング(紐付け)されている。この少なくとも一つのカメラとレコーダとのペアリングの関係は第4の実施形態に限定されず、上述した第1,第2,第3の各実施形態においても同様に適用されても構わない。
図22は、レコーダ設定画面WD8の一例を示す図である。クライアントPC10のプロセッサ11は、レコーダ設定画面WD8を表示するためのユーザ操作に応じて、モニタDPにレコーダ設定画面WD8を表示する。
レコーダ設定画面WD8では、ユーザ操作により、レコーダの設定が行われる。例えば、レコーダのIPアドレス、レコーダのHTTP(Hypertext Transfer Protocol)ポート番号、名称、FTP(File Transfer Protocol)ポート番号、タイムゾーン、ペアリングされている少なくとも一つのカメラの設定(setup)が行われる。図22では、例えば4つのレコーダに関して、それぞれのデバイス、モデル、IPアドレスが例示的に示されている。
モニタDPに表示されたレコーダ設定画面WD8において、ユーザ操作により、「Device mng.」(デバイスマネージャ、枠WK4参照)、「Recorder」(枠WK5参照)、いずれかのレコーダを特定するレコード(枠WK6参照)の順に押下されて選択されると、プロセッサ11は、その選択前には押下不可であったEditボタン(枠WK7参照)を押下可能に表示切替する。
ユーザ操作により、Editボタン(枠WK7参照)が押下されると、プロセッサ11は、選択されたレコード(枠WK6参照)のレコーダにペアリングされている少なくとも一つのカメラに関するカメラ設定画面(図20参照)をモニタDPに表示する。このカメラ設定画面(図20参照)において設定可能な項目は第3の実施形態(図20参照)において説明した内容と同一であるため、詳細な説明は省略する。
次に、本実施形態のクライアントPC10のマスク処理の設定に関する動作手順について、図23(A)及び図23(B)を参照して説明する。図23(A)は、第4の実施形態における、マスク処理(MOR処理)の設定の動作手順の第1例を詳細に説明するシーケンス図である。図23(B)は、第4の実施形態における、マスク処理(MOR処理)の設定の動作手順の第2例を詳細に説明するシーケンス図である。
図23(A)において、ユーザ操作により、クライアントPC10の機器設定が開始される操作があると(S51)、クライアントPC10は、例えばレコーダ設定画面WD8のEditボタン(枠WK7参照)の押下に基づいて表示されるカメラ設定画面(図20参照)をモニタDPに表示する。クライアントPC10は、このカメラ設定画面に対するユーザ操作により、レコーダ(例えばレコーダREC1)とペアリングされているマスクカメラ(つまり、マスク機能を実行可能な固定カメラCAM14)に対するマスク処理の実行(ON)又は不実行(OFF)の設定をそのレコーダに指示する(S52)。
レコーダ(例えばレコーダREC1)は、ステップS52のクライアントPC10からの指示に従い、自己(例えばレコーダREC1)とペアリングされているマスクカメラ(つまり、固定カメラCAM14)に対するマスク処理の実行(ON)又は不実行(OFF)の設定をマスクカメラに指示する(S53)。マスクカメラは、ステップS53のレコーダからの指示に従い、マスク処理の実行(ON)又は不実行(OFF)を設定し(S54)、設定を完了した旨の応答をレコーダに返す。レコーダは、マスクカメラからの設定完了の旨の応答を受信すると、同様に設定完了の旨の応答をクライアントPC10に返す。
これにより、例えばクライアントPC10とマスクカメラとが同一の拠点又は店舗に存在しない場合には、クライアントPC10はマスクカメラに対して直接のマスク処理の設定を行うことができないが、クライアントPC10とマスクカメラとのデータ送受信を仲介するレコーダを介在させることで、クライアントPC10からマスクカメラへのマスク処理の設定を円滑に行うことができる。
図23(B)において、ユーザ操作により、クライアントPC10の機器設定が開始される操作があると(S51)、クライアントPC10は、例えばレコーダ設定画面WD8のEditボタン(枠WK7参照)の押下に基づいて表示されるカメラ設定画面(図20参照)をモニタDPに表示する。クライアントPC10は、このカメラ設定画面に対するユーザ操作により、レコーダ(例えばレコーダREC1)とペアリングされているマスクカメラ(つまり、マスク機能を実行可能な固定カメラCAM14)に対するマスク処理の実行(ON)又は不実行(OFF)の設定をマスクカメラに対して直接に指示する(S52A)。
マスクカメラは、ステップS52AのクライアントPC10からの指示に従い、マスク処理の実行(ON)又は不実行(OFF)を設定し(S54A)、設定を完了した旨の応答をクライアントPC10に直接に返す。
これにより、例えばクライアントPC10とマスクカメラとが同一の拠点又は店舗に存在する場合には、クライアントPC10は、レコーダを介することなく、マスクカメラに対して直接のマスク処理の設定を円滑かつ簡易に行うことができる。
次に、本実施形態のクライアントPC10のマスク処理の設定後における撮像映像の表示に関する動作手順について、図24〜図26を参照して説明する。図24は、第4の実施形態における、運用開始後のクライアントPCにおける撮像画像の取得及び表示に関する動作手順の第1例を詳細に説明するシーケンス図である。図25は、第4の実施形態における、運用開始後のクライアントPCにおける撮像画像の取得及び表示に関する動作手順の第2例を詳細に説明するシーケンス図である。図26は、図24,図25のステップS69における、クライアントPCの表示の動作手順の一例を詳細に説明するフローチャートである。
図25の説明において、図25に示す処理と図24に示す処理とが同一である場合には、同一のステップ番号を付与して説明を簡略化又は省略し、異なる内容について説明する。
図24において、ユーザ操作により、クライアントPC10の運用が開始される操作があると(S61)、クライアントPC10は、映像の配信開始(つまり、録画をレコーダに指示する(S62)。
レコーダは、ステップS62のクライアントPC10の指示に従い、撮像映像もしくは編集映像の配信を開始するか、又は撮像映像もしくは編集映像の配信の開始をマスクカメラ及び通常カメラに対してそれぞれ指示する(S63)。マスクカメラは、ステップS63のレコーダの指示に従い、撮像を開始する(S64)。同様に、通常カメラは、ステップS63のレコーダの指示に従い、撮像を開始する(S65)。
通常カメラは、マスク処理を行うことができないので、撮像を開始した後、撮像により得た撮像映像のレコーダへの配信を継続する(S66)。なお、レコーダは、ステップS66において通常カメラから配信された撮像映像(ライブ映像)を受信すると、ストレージR14に保存する(S68)。
マスクカメラは、撮像を開始した後、図23(A)又は図23(B)においてマスク処理の実行(ON)が設定されている場合には、ステップS64の撮像開始により得た撮像映像をマスク処理(例えば図11及び図12参照)して得た編集映像のレコーダへの配信を継続する(S67)。一方、マスクカメラは、撮像を開始した後、図23(A)又は図23(B)においてマスク処理の不実行(OFF)が設定されている場合には、ステップS64の撮像開始により得た撮像映像のレコーダへの配信を継続する(S67)。なお、レコーダは、ステップS67においてマスクカメラから配信された撮像映像(ライブ映像)又は編集映像を受信すると、ストレージR14に保存する(S68)。
ステップS62において、例えば過去にレコーダに記憶された録画映像を配信するためのユーザ操作がなされた場合には、このユーザ操作により、映像の配信開始の指示には、ユーザが希望する撮像日時(言い換えると、録画日時)の指定情報が含まれる。この場合、レコーダは、クライアントPC10から送信された撮像日時に撮像された録画映像をストレージR14から読み出してクライアントPC10に配信する(S68)。
ステップS62において、例えばカメラにより撮像された撮像映像を配信するためのユーザ操作がなされた場合には、映像の配信開始の指示により、カメラが現在撮像している撮像映像(ライブ映像)が配信される。この場合、レコーダは、ステップS66において通常カメラから配信された撮像映像、及びステップS67においてマスクカメラから配信された撮像映像又は編集映像をクライアントPC10に配信し、その配信を継続する(S68)。
クライアントPC10は、ステップS68においてレコーダから配信された撮像映像(ライブ映像)、録画映像又は編集映像を、レコーダとペアリング(紐付け)されているカメラの種別毎に設定されたマスク処理の実行(ON)又は不実行(OFF)の設定に従って、映像をモニタDPに表示する(S69)。ステップS69の詳細については、図26を参照して後述する。
図25において、通常カメラは、マスク処理を行うことができないので、撮像を開始した後、撮像により得た撮像映像のレコーダ及びクライアントPC10へのそれぞれの配信を継続する(S66A)。なお、レコーダは、ステップS66Aにおいて通常カメラから配信された撮像映像(ライブ映像)を受信すると、ストレージR14に保存する(S68A)。
マスクカメラは、撮像を開始した後、図23(A)又は図23(B)においてマスク処理の実行(ON)が設定されている場合には、ステップS64の撮像開始により得た撮像映像をマスク処理(例えば図11及び図12参照)して得た編集映像のレコーダ及びクライアントPC10へのそれぞれの配信を継続する(S67A)。一方、マスクカメラは、撮像を開始した後、図23(A)又は図23(B)においてマスク処理の不実行(OFF)が設定されている場合には、ステップS64の撮像開始により得た撮像映像のレコーダ及びクライアントPC10へのそれぞれの配信を継続する(S67A)。なお、レコーダは、ステップS67Aにおいてマスクカメラから配信された撮像映像(ライブ映像)又は編集映像を受信すると、ストレージR14に保存する(S68A)。
ステップS62において、例えば過去にレコーダに記憶された録画映像を配信するためのユーザ操作がなされた場合には、このユーザ操作により、映像の配信開始の指示には、ユーザが希望する撮像日時(言い換えると、録画日時)の指定情報が含まれる。この場合、レコーダは、クライアントPC10から送信された撮像日時に撮像された録画映像をストレージR14から読み出してクライアントPC10に配信する(S68A)。
クライアントPC10は、ステップS68においてレコーダから配信された撮像映像(ライブ映像)、録画映像又は編集映像を、レコーダとペアリング(紐付け)されているカメラの種別毎に設定されたマスク処理の実行(ON)又は不実行(OFF)の設定に従って、映像をモニタDPに表示する(S69)。ステップS69の詳細については、図26を参照して後述する。
図26において、クライアントPC10は、ステップS68又はステップS68Aにおいてレコーダ、マスクカメラ又は通常カメラのいずれかから配信された映像を受信して取得する(S71)。
クライアントPC10は、ストレージ15又はメモリ16に記憶されているカメラ設定情報(図22及び図20参照)を読み出し、ステップS71において取得した映像の配信元のレコーダとペアリングされているカメラ又はその映像の配信元のカメラに対するマスク処理の実行又は不実行の設定を参照する(S72)。
クライアントPC10は、カメラ設定情報においてマスク処理の不実行(OFF)が設定されていると判断した場合には、ステップS71において取得した映像(具体的には、撮像映像又は録画映像)をそのままモニタDPに表示する(S73)。
クライアントPC10は、カメラ設定情報において該当するカメラでのマスク処理の実行(ON)が設定されていると判断した場合には、ステップS71において取得した映像(具体的には、マスクカメラによりマスク処理が施されて生成された編集映像)をそのままモニタDPに表示する(S73)。
クライアントPC10は、カメラ設定情報において該当するカメラに関してクライアントPC10でのマスク処理の実行が設定されていると判断した場合には、ステップS71において取得した映像(具体的には、撮像映像又は編集映像)をマスク処理(図11及び図12)し、このマスク処理により得た編集映像をモニタDPに表示する(S74)。但し、クライアントPC10がステップS71においてレコーダから配信された編集映像を受信した場合に、この編集映像のデータにマスクカメラによってマスク処理が施された旨の情報が含まれている場合には、クライアントPC10は、現在のカメラ設定情報の内容を加味することなく、受信した編集映像をマスク処理することなく優先的にそのままモニタDPに表示しても構わない。これにより、クライアントPC10は、他のデバイス(つまり、マスクカメラ)において既にマスク処理された編集映像に対し、更なるマスク処理の実行を省略することができ、クライアントPC10の処理負荷を軽減できるとともに、その編集映像の視認性の劣化を抑制できる。
以上により、第4の実施形態の監視カメラシステム100は、撮像エリアを撮像する少なくとも一つのカメラ(例えば全方位カメラCAM11,固定カメラCAM14,…)と、このカメラと対応付けられ、撮像エリアの撮像映像を録画映像として撮像日時と関連付けて記憶するレコーダ(例えばレコーダREC1)と、撮像エリアの撮像映像に現れる移動体(例えば人物)の少なくとも一部をマスク画像に変更するためのマスク処理の実行又は不実行の設定情報を、レコーダに対応付けられるカメラごとに保持するクライアントPC10と、を備える。クライアントPC10は、例えばユーザ操作による撮像日時の指定に応じて、マスク処理の実行が設定されている場合に、指定された撮像日時に撮像された録画映像をマスク処理して得た編集録画映像をモニタDPに表示する。一方、クライアントPC10は、マスク処理の不実行が設定されている場合に、指定された撮像日時に撮像された録画映像をそのままモニタDPに表示する。
第4の実施形態のクライアントPC10も、第1の実施形態と同様に、撮像映像に現れる移動中の人物の少なくとも一部又は全部をマスク画像に置き換えるマスク処理を行うことができる。これにより、クライアントPC10は、過去にカメラに撮像されてレコーダに既に記憶されているイベントの録画映像を閲覧する際に、その録画映像1つのデータを用いて、クライアントPC10においてマスク処理を行うか又はマスク処理を行わないかを簡単に選択することができ、監視効率やマーケティング分析精度の向上を図ることができる。
また、第4の実施形態の監視カメラシステム100において、少なくとも一つのカメラは、マスク処理を実行不能な通常カメラ(例えば全方位カメラCAM11)を含む。クライアントPC10は、通常カメラにより撮像された撮像映像に対するマスク処理の実行(ON)が設定されている場合に、撮像映像をマスク処理して得た編集映像をモニタDPに表示する。一方、クライアントPC10は、通常カメラにより撮像された撮像映像に対するマスク処理の不実行(OFF)が設定されている場合に、撮像映像をそのままモニタDPに表示する。
これにより、クライアントPC10は、通常カメラにより撮像されている現在の撮像映像(ライブ映像)を受信している場合に、通常カメラでの撮像映像に対するマスク処理の実行又は不実行の設定に応じて、ユーザの嗜好に適合する撮像映像又は編集映像をモニタDPに表示することができ、ユーザの監視業務やマーケティング分析の精度向上に資することができる。
また、第4の実施形態の監視カメラシステム100において、少なくとも一つのカメラは、マスク処理を実行可能なマスクカメラ(例えば固定カメラCAM14)を含む。クライアントPC10は、マスクカメラにより撮像された撮像映像に対するマスクカメラにおけるマスク処理の実行が設定されている場合に、マスクカメラにより撮像映像がマスク処理された編集映像をそのままモニタDPに表示する。一方、クライアントPC10は、マスクカメラにより撮像された撮像映像に対するクライアントPC10におけるマスク処理の実行が設定されている場合に、撮像映像をマスク処理し、その結果として得た編集映像をモニタDPに表示する。
これにより、クライアントPC10は、マスク機能を既に有するマスクカメラに対するマスク処理の実行の設定によってマスク処理がなされた場合、マスクカメラにより生成されたマスク処理後の編集映像を受信してそのまま表示することで、クライアントPC10におけるマスク処理の実行を省略できて処理負荷を軽減でき、負荷分散を図ることができる。また、クライアントPC10は、クライアントPC10におけるマスク処理の実行の設定によってマスク処理がなされた場合には、例えばマスクカメラにおけるマスク処理よりも優れたマスク機能(例えば、第1の実施形態で説明した、ユーザ操作に基づくマスク処理の対象外領域を除いた領域において行うマスク処理を行える場合)によって得た編集映像を得ることができ、ユーザのニーズに適合した映像を確認させることができる。
また、クライアントPC10は、マスクカメラにより撮像されている現在の撮像映像(ライブ映像)に対するマスク処理の不実行が設定されている場合に、撮像映像をそのままモニタDPに表示する。これにより、ユーザは、例えばイベントの条件や制約によって、現在のライブ映像をそのまま閲覧する必要がある場合に、現在のライブ映像を確認することができ、ユーザのニーズに適合した映像を確認させることができる。
(第5の実施形態の内容に至る第1の経緯)
特許文献1によれば、監視エリアにおいて検知された人物の動画映像内の位置情報及び人物の属性(例えば性別、年齢)毎にマスク画像が生成されるため、そのマスク画像により、プライバシーを確保した上で店舗内の人物の行動が把握可能となる。
しかしながら、特許文献1では、動画映像において検知された人物の画像領域をマスク画像に変更するのはカメラであり、カメラからの動画映像を受信する受信装置(例えばユーザが使用するクライアントPC)によりマスク処理が行われることは考慮されていない。また、既設の監視カメラには、特許文献1のマスク処理を実行可能な機能(マスク機能)を有していないものが少なくない。
ここで、例えばユーザの監視業務の中で、監視エリアに複数の監視カメラが設置され、かつそれぞれの監視カメラから配信されている最新の撮像映像を受信したクライアントPCのモニタにおいて、ユーザ操作により、それぞれの撮像映像が順に切り替えて表示されることを想定する。クライアントPCは、監視カメラの撮像映像の表示を切り替える度に、選択された監視カメラの撮像映像に対してマスク処理を行うため、マスク処理における初期学習(後述参照)において撮像映像中の背景画像(つまり、撮像映像中で動きの無い静止領域からなる画像領域)を生成する必要がある。しかしながら、この初期学習の処理中は、撮像映像中の背景画像の生成が完了していないためにクライアントPCは撮像映像の表示をできず、撮像映像の表示ができない期間(例えば30秒〜1分程度)が発生するという課題がある(図30参照)。図30は、マスクカメラ方式とクライアントPC方式とにおける、表示対象となるカメラのライブ映像の切り替えに伴う表示時の課題の説明図である。
ここで、図30を参照して、上述した課題をより具体的に説明する。
マスクカメラ方式(詳細は図28参照)では、それぞれのマスクカメラ(つまり、マスク機能を有するそれぞれのカメラA,B)において撮像映像に対してマスク処理が行われる。つまり、カメラAにより生成された編集映像BB1中の移動体(例えば人物)の画像部分はマスク画像に置き換えられ、カメラBにより生成された編集映像CC1中の移動体(例えば人物)の画像部分はマスク画像に置き換えられている。ここで、カメラAから配信された編集映像BB1がモニタに表示されている状態で、クライアントPCのユーザ操作によって、モニタに表示される映像の配信元がカメラAからカメラBに切り替えられた場合、クライアントPCは、カメラBにより生成された編集映像CC1をすぐに表示することが可能である。
一方、クライアントPC方式(詳細は図29参照)では、例えばカメラA,Bはマスク機能を有さず、カメラA,Bから配信された撮像映像に対してクライアントPCにおいてマスク処理が行われる。つまり、カメラAから配信された撮像映像がクライアントPCによってマスク処理されて編集映像BB1が生成され、カメラBから配信された撮像映像がクライアントPCによってマスク処理されて編集映像CC1が生成される。ここで、カメラAから配信された撮像映像に基づいてクライアントPCにより生成された編集映像BB1がモニタに表示されている状態で、クライアントPCのユーザ操作によって、モニタに表示される映像の配信元がカメラAからカメラBに切り替えられた場合、クライアントPCは、カメラBから配信された撮像映像にマスク処理を行う際、背景画像を生成するために初期学習を行う必要がある。この初期学習は例えば30秒〜1分程度であるが、この初期学習の期間、クライアントPCはカメラBから配信された撮像映像をマスク処理した結果の編集映像CC1を表示できない。言い換えると、クライアントPCは、カメラAからカメラBへの切り替えがあっても、カメラBから配信された撮像映像をマスク処理した結果の編集映像CC1をすぐに表示できない。
監視カメラの撮像映像の表示を切り替える度に、クライアントPCにおける初期学習の処理を仮に省略した場合、クライアントPCにおいて適正な背景画像が生成されないことになる。このため、クライアントPCがマスク処理において移動体(例えば人物)の検知を正しくできず、マスク処理後の編集映像内の人物がマスク画像に置き換えて表示されずにそのまま表示されてしまい、その人物のプライバシーが的確に保護されないという可能性がある。
そこで、第5の実施形態の第1映像表示方式〜第4映像表示方式(後述参照)では、モニタへの表示対象となる監視カメラの撮像映像の切り替えがあっても、選択された撮像映像の非表示を抑制した上でマスク処理を適切に施し、ユーザの監視業務の効率やマーケティング分析精度の向上を図るモニタリングシステム及び映像表示方法の例を説明する。
(第5の実施形態)
第5の実施形態のモニタリングシステムとして、第1の実施形態で説明した監視カメラシステム100を例示して説明する。第5の実施形態の監視カメラシステム100の内部構成は第1の実施形態の監視カメラシステム100に対し、更にサーバPC30を含む構成である(図27参照)。サーバPC30以外の各装置の構成は第1の実施形態の監視カメラシステム100と同一であるため、同一の内容の説明は簡略化又は省略し、異なる内容について説明する。
図27は、各実施形態の監視カメラシステム100のシステム構成の他の一例を示す図である。図27に示す監視カメラシステム100では、図1に示す監視カメラシステム100に対し、サーバPC30が追加されている。サーバPC30は、ネットワークNWに接続されている。また、サーバPC30は、ネットワークNWを介して、クライアントPC10、レコーダREC1,REC4とも接続されている。また、サーバPC30は、ネットワークNW及び各ルータを介して各種のカメラとも接続されている。サーバPC30の具体的な内部構成については、図40を参照して後述する。
ここで、上述したマスクカメラ方式とクライアントPC方式の詳細について、図28及び図29を参照して説明する。図28は、固定カメラCAM14がマスク機能を有する場合にマスク処理後の編集映像BB1がクライアントPC10のモニタDPに表示される手順を時系列に説明する模式図である。図29は、クライアントPC10がマスク機能を有する場合にマスク処理後の編集映像BB1がクライアントPC10のモニタDPに表示される手順を時系列に説明する模式図である。ここでは、カメラとして固定カメラCAM14を例示して説明するが、マスクカメラ方式及びクライアントPC方式を固定カメラCAM14に限らず、他のカメラにも同様に適用可能であることは言うまでもない。
図28に示すマスクカメラ方式では、固定カメラCAM14がマスク機能を有するマスクカメラであって、かつマスク処理の実行(ON)が設定されている場合、固定カメラCAM14は、マスク処理によって、撮像映像AA1に現れる移動体(例えば人物)の動体領域OB1をマスク画像MSK1に置き換えて編集映像BB1を得る。固定カメラCAM14は、編集映像BB1をクライアントPC10に配信(送信)する。クライアントPC10は、固定カメラCAM14から配信された編集映像BB1をモニタDPに表示する。つまり、撮像映像AA1中の人物は、固定カメラCAM14からクライアントPC10に配信される前に、マスクカメラとしての固定カメラCAM14のマスク処理によってマスク画像に置き換えられる。
図29に示すクライアントPC方式では、固定カメラCAM14がマスク機能を有さない場合、又はマスク機能を有するがマスク処理の不実行(OFF)が設定されている場合、固定カメラCAM14は、撮像映像AA1に現れる移動体(例えば人物)の動体領域OB1をマスク画像MSK1に置き換えるためのマスク処理を実行せず、撮像映像AA1をそのままクライアントPC10に配信(送信)する。クライアントPC10は、固定カメラCAM14から配信された撮像映像AA1に対してマスク処理を行い、撮像映像AA1に現れる移動体(例えば人物)の動体領域OB1をマスク画像MSK1に置き換えた編集映像BB1を生成してモニタDPに表示する。つまり、撮像映像AA1中の人物は、固定カメラCAM14からクライアントPC10に配信された後、クライアントPC10のマスク処理によってマスク画像に置き換えられる。
図31は、第5の実施形態の動作概要の一例の説明図である。以下の説明において、図27に示す全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34の中で2つの異なるカメラを例示する際に、「カメラA」、「カメラB」という。第5の実施形態では、クライアントPC10は、カメラAから配信された撮像映像をマスク処理して生成した編集映像BB1をモニタDPに表示している状態で、モニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられた場合、カメラAの編集映像BB1の背景画像BG1を情報蓄積部の一例としてのストレージ15に保存し、更に、前回使用時のカメラBの編集映像CC1の背景画像BG2をストレージ15から取得する。クライアントPC10は、この取得した背景画像BG2を用いてマスク処理を行うことで、初期学習(図11のステップS11参照)を行うことなく、マスク処理後の編集映像CC1を表示することができる。なお、情報蓄積部は、編集映像BB1の背景画像が保存され、上述したストレージ15の他に、例えば後述するサーバPC30、RAM162、SDカード、ネットワークNWを介して接続されたクラウドコンピュータ(不図示)等でも構わない。
(第1映像表示方式)
第1映像表示方式では、クライアントPC10は、モニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられた時、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15に保存(退避)し、次回カメラAに切り替えられた時に保存(退避)していた背景画像を用いてマスク処理を行う(図32及び図33参照)。
図32は、第5の実施形態における第1映像表示方式,第2映像表示方式の概要を示す模式図である。クライアントPC10は、プロセッサ11により実行されるメイン処理として、例えばカメラAから配信された撮像映像AA1を受信し、撮像映像AA1にマスク処理を行って得た編集映像BB1をモニタDPに表示する(S81)。ここで、モニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられた場合、クライアントPC10は、カメラAの編集映像BB1の背景画像BG1をストレージ15に保存する(S82)。クライアントPC10は、次に表示するカメラBについて、前回使用時のカメラBの編集映像CC1の背景画像BG2をストレージ15から取得する(S83)。クライアントPC10は、ステップS83において取得した背景画像BG2を用いてマスク処理を行い、マスク処理後の編集映像CC1をモニタDPに表示する。
図33は、第5の実施形態における第1映像表示方式の動作手順の一例を説明するフローチャートである。図33の説明の前提として、モニタDPに表示される映像の配信元としてのカメラは選択されていないとする。
図33において、ユーザ操作により、モニタDPに表示される映像の配信元としてカメラAが選択されたとする(S91A)。クライアントPC10のプロセッサ11は、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15に保存しているか否かを判断する(S92A)。プロセッサ11は、カメラAの撮像映像の背景画像も編集映像の背景画像もストレージ15に保存していないと判断した場合には(S92A、NO)、カメラAの撮像映像を用いて初期学習(図11のステップS11参照)を実行する(S93A)。これにより、プロセッサ11は、カメラAの撮像画像の背景画像を生成できる。ステップS93Aの後、プロセッサ11の処理はステップS95Aに進む。
一方、プロセッサ11は、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15に保存していると判断した場合には(S92A、YES)、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S94A)。ステップS94Aの後、プロセッサ11の処理はステップS95Aに進む。
プロセッサ11は、ステップS93A又はステップS94Aの後、カメラAから配信されている撮像映像と、ステップS93Aにおいて生成した背景画像又はステップS94Aにおいて取得した背景画像とを用いてマスク処理を行い、マスク処理後の編集映像をモニタDPに表示する(S95A)。
ここで、例えばモニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられたとする(S91B)。プロセッサ11は、カメラAの編集映像の背景画像をストレージ15に保存する(S96B)。
プロセッサ11は、カメラBの撮像映像もしくは編集映像の背景画像をストレージ15に保存しているか否かを判断する(S92B)。プロセッサ11は、カメラBの撮像映像の背景画像も編集映像の背景画像もストレージ15に保存していないと判断した場合には(S92B、NO)、カメラBの撮像映像を用いて初期学習(図11のステップS11参照)を実行する(S93B)。これにより、プロセッサ11は、カメラBの撮像画像の背景画像を生成できる。ステップS93Bの後、プロセッサ11の処理はステップS95Bに進む。
一方、プロセッサ11は、カメラBの撮像映像もしくは編集映像の背景画像をストレージ15に保存していると判断した場合には(S92B、YES)、カメラBの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S94B)。ステップS94Bの後、プロセッサ11の処理はステップS95Bに進む。
プロセッサ11は、ステップS93B又はステップS94Bの後、カメラBから配信されている撮像映像と、ステップS93Bにおいて生成した背景画像又はステップS94Bにおいて取得した背景画像とを用いてマスク処理を行い、マスク処理後の編集映像をモニタDPに表示する(S95B)。
ここで、例えばモニタDPに表示される映像の配信元がカメラBから再びカメラAに切り替えられたとする。なお、カメラAではなく、他のカメラに切り替えられても構わない。例えば再びカメラAに切り替えられた場合、プロセッサ11は、切替前に使用していたカメラBの編集映像の背景画像をストレージ15に保存する(S96A)。ステップS96Aの後、ステップS92A→ステップS94A→ステップS95Aの処理が同様に繰り返される。更に、この後、ユーザ操作によりカメラの切替操作がある度に、切替対象として選択されたカメラに対し、例えば「ステップS91B→ステップS96B(切替前に使用していた背景画像のストレージへの保存)→ステップS92B→ステップS94B又はステップS93B→ステップS95B」を一つの単位とした処理が繰り返して実行される。
第1映像表示方式によれば、クライアントPC10は、カメラの映像を切り替えてモニタDPに表示する場合に、選択されたカメラの前回使用していた撮像映像もしくは編集映像の背景画像をストレージ15から取得してマスク処理できるので、切替によって選択されたカメラから配信されている撮像映像の背景画像を初期学習によって生成する必要が無い。つまり、クライアントPC10は、カメラAからカメラBに切り替えられた場合に、カメラBから配信されている撮像映像の背景画像を生成する期間、映像の非表示を抑制でき、ユーザの監視業務の効率アップやマーケティング分析精度の向上を支援することができる。第1映像表示方式は、例えば室内環境により、モニタDPに表示される映像の内容が日時により変化し辛い場合には特に有効となる。映像の内容が日時により変化し辛い場合は、例えば屋外からの日光による影響が少ない場合、工場内など機器の移動が発生しにくい場合が該当する。言い換えると、第1映像表示方式は、カメラから配信されている撮像映像の背景画像(つまり、静止領域)が大きく変化することが無い環境の場合に特に有効となる。
(第2映像表示方式)
第2映像表示方式では、クライアントPC10は、モニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられた時、カメラBの撮像映像又は編集映像を前回表示した時(言い換えると、撮像映像もしくは編集映像の背景画像の生成時点)からの経過時間が既定値(設定値)より短い場合にのみ、カメラBの前回使用した背景画像をストレージ15から取得してマスク処理を行う(図32及び図34参照)。
図32において、クライアントPC10は、ステップS82の後、切替により選択されたカメラ(例えばカメラB)の前回の撮像映像又は編集映像の表示時からの経過時間と既定値(設定値)とを比較する(S84)。上述したように、クライアントPC10は、切替により選択されたカメラ(例えばカメラB)の前回の撮像映像又は編集映像の表示時からの経過時間が既定値(設定値)より短い場合にのみ、カメラBの前回使用した背景画像をストレージ15から取得してマスク処理を行う。
図34は、第5の実施形態における第2映像表示方式の動作手順の一例を説明するフローチャートである。図34の説明において、図33と重複する処理については同一のステップ番号を付与して説明を簡略化又は省略し、異なる内容について説明する。
図34において、プロセッサ11は、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15に保存していると判断した場合には(S92A、YES)、カメラAの撮像映像又は編集映像の前回の表示時からの経過時間と既定値(設定値)とを比較する(S97A)。プロセッサ11は、カメラAの撮像映像又は編集映像の前回の表示時からの経過時間が既定値(設定値)より長いと判断した場合には(S97A、YES)、カメラAから配信されている撮像映像を用いて初期学習(図11のステップS11参照)を実行する(S93A)。
一方、プロセッサ11は、カメラAの撮像映像又は編集映像の前回の表示時からの経過時間が既定値(設定値)より短いと判断した場合には(S97A、NO)、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S94A)。カメラBが選択された場合についてもステップS97Aの処理と同様であるため、カメラBが選択された場合のステップS97Bに関する説明は省略する。
第2映像表示方式によれば、クライアントPC10は、例えば前回にカメラBの撮像映像又は編集映像を表示してから上述した既定値として例えば30分以内であれば、背景画像が大きく変わることが無いとの前提に基づいて、前回使用時の背景画像をストレージ15から取得してマスク処理の際に使用する。監視対象となる撮像エリアに多くの監視用途のカメラが設置されているような状況では、クライアントPC10は、一定時間毎にカメラの撮像映像又は編集映像を順次切り替えて表示することが多い。また、カメラの撮像位置における環境の変化(例えば人物の移動、新しい物品が配置される)が多い場所では、背景画像が短い期間に変化することがある。このような状況では、第2映像表示方式は特に有効となる。
図35及び図36は、第5の実施形態における第1映像表示方式,第2映像表示方式の動作手順の一例を説明するシーケンス図である。
図35において、操作部13を用いたユーザ操作により、カメラAの撮像映像の表示要求がなされたとする(S101)。プロセッサ11は、この表示要求に従い、カメラAの背景画像をストレージ15に要求するが(S102)、ストレージ15から該当する背景画像が無い旨の応答を受けたとする(S103)。なお、ステップS102及びステップS103の処理として、プロセッサ11がステップS101の表示要求に従い、ストレージ15においてカメラAの背景画像を探索したが見つからなかったことを判断する処理と置き換えても構わない。
プロセッサ11は、カメラAの撮像映像の配信要求を、通信部12を介してカメラAに対して送信する(S104)。これにより、カメラAは、ステップS109においてプロセッサ11から配信停止要求を受信するまで、撮像により得た撮像映像(ライブ映像)をクライアントPC10に配信(送信)する(S105)。プロセッサ11は、カメラAから配信された撮像映像を受信する。
プロセッサ11は、カメラAの背景画像を生成するために、カメラAから配信された撮像映像を用いて、初期学習(図11のステップS11参照)を実行する(S106)。更に、プロセッサ11は、ステップS106の初期学習を実行した後、カメラAの撮像映像をマスク処理し、マスク処理により得た編集映像をモニタDPに表示する(S107)。
ここで、操作部13を用いたユーザ操作により、カメラBの撮像映像の表示要求がなされたとする(S108)。プロセッサ11は、この表示要求に従い、カメラAの撮像映像の配信停止要求を送信する(S109)。これにより、カメラAは、撮像映像の配信を停止する。
プロセッサ11は、カメラAの編集映像の表示時に使用していた背景画像をストレージ15に保存(退避)する(S110)。更に、プロセッサ11は、カメラBの背景画像をストレージ15に要求するが(S111)、ストレージ15から該当する背景画像が無い旨の応答を受けたとする(S112)。なお、ステップS111及びステップS112の処理として、プロセッサ11がステップS108の表示要求に従い、ストレージ15においてカメラBの背景画像を探索したが見つからなかったことを判断する処理と置き換えても構わない。
プロセッサ11は、カメラBの撮像映像の配信要求を、通信部12を介してカメラBに対して送信する(S113)。これにより、カメラBは、ステップS115においてプロセッサ11から配信停止要求を受信するまで、撮像により得た撮像映像(ライブ映像)をクライアントPC10に配信(送信)する(S114)。プロセッサ11は、カメラAから配信された撮像映像を受信する。
プロセッサ11は、カメラBの背景画像を生成するために、カメラBから配信された撮像映像を用いて、初期学習(図11のステップS11参照)を実行する(S106)。更に、プロセッサ11は、ステップS106の初期学習を実行した後、カメラBの撮像映像をマスク処理し、マスク処理により得た編集映像をモニタDPに表示する(S107)。
ここで、操作部13を用いたユーザ操作により、カメラAの撮像映像の表示要求が再度なされたとする(S101)。プロセッサ11は、この表示要求に従い、カメラBの撮像映像の配信停止要求を送信する(S115)。これにより、カメラBは、撮像映像の配信を停止する。
プロセッサ11は、カメラBの編集映像の表示時に使用していた背景画像をストレージ15に保存(退避)する(S110)。更に、プロセッサ11は、カメラAの背景画像をストレージ15に要求し(S102)、ストレージ15から該当する背景画像の応答を受けたとする(S103A)。なお、ステップS102及びステップS103Aの処理として、プロセッサ11がステップS101の表示要求に従い、ストレージ15においてカメラAの背景画像を探索して取得した処理と置き換えても構わない。
プロセッサ11は、カメラAの撮像映像の配信要求を、通信部12を介してカメラAに対して送信する(S104)。これにより、カメラAは、上述したステップS115においてプロセッサ11から配信停止要求を受信するまで、撮像により得た撮像映像(ライブ映像)をクライアントPC10に配信(送信)する(S105)。プロセッサ11は、カメラAから配信された撮像映像を受信する。
プロセッサ11は、カメラBの背景画像を生成するための初期学習を行う必要が無く、ステップS103Aにおいて取得したカメラBの撮像映像とカメラAから配信されている撮像映像とを用いて、撮像映像をマスク処理し、マスク処理により得た編集映像をモニタDPに表示する(S107A)。ステップS107A以降の処理は、カメラの切替がある度に、同様の処理(つまり、前回使用した背景画像を用いてマスク処理がなされる処理)が繰り返される。
なお、第2映像表示方式では、ステップS115の後、例えば図34のステップS97Aの処理がプロセッサ11により行われる。プロセッサ11は、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15に保存していると判断した場合に、カメラAの撮像映像又は編集映像の前回の表示時からの経過時間と既定値(設定値)とを比較する(S97A)。プロセッサ11は、カメラAの撮像映像又は編集映像の前回の表示時からの経過時間が既定値(設定値)より短いと判断した場合にのみ(S97A、NO)、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S103A)。
(第3映像表示方式)
第3映像表示方式では、クライアントPC10は、現在モニタDPに表示していないカメラの撮像映像もしくは編集映像の背景画像を、バックグラウンド処理によって常時更新する。クライアントPC10は、バックグラウンド処理によって更新された最新の背景画像とカメラから配信されている撮像映像とを用いて、メイン処理としてのマスク処理及びマスク処理後の編集映像をモニタDPに表示する(図37〜図39参照)。
カメラから配信されている撮像映像又は編集映像を表示する間、例えば監視対象の状況を把握する必要があることから、一定値以上の表示フレームレート(1fps以上で例えば30fps)を用いた撮像映像又はマスク処理後の編集映像の表示が求められる。一方、現在モニタDPに表示していない他のカメラの撮像映像については背景画像が更新されれば良く、例えば10秒に1コマ(1フレーム)等の極めて低速な背景画像の更新処理でよい。また、このような低速で背景画像の更新処理を行ったとしても、そのカメラの撮像映像や編集映像の表示がされる訳では無いので端末操作者(例えばユーザ)に対する画面表示への影響(例えば表示の遅延)は無く、メイン処理となるマスク処理の性能(処理負荷等)に与える影響は軽微である。また、バックグラウンド処理により背景画像の更新処理(通常学習)を行った場合でも、クライアントPC10に対して必要となるリソースや性能はわずかであり、例えば「背景画像」×「カメラ数」の情報量の処理や保存が可能なリソースがあれば十分と言える。
図37は、第5の実施形態における第3映像表示方式の概要を示す模式図である。クライアントPC10は、プロセッサ11により実行されるメイン処理として、例えばカメラAから配信された撮像映像AA1を受信し、撮像映像AA1にマスク処理を行って得た編集映像BB1をモニタDPに表示する(S81)。また、クライアントPC10は、プロセッサ11により実行されるバックグラウンド処理として、例えば現在モニタDPに表示していない他のカメラ(例えばカメラB)から配信されている撮像映像を受信し、受信した撮像映像とカメラBの撮像映像もしくは編集映像の背景画像とを用いて、カメラBの背景画像を更新する(S85)。
ステップS85の背景画像の更新処理は、現在クライアントPC10と通信可能な(接続可能な)カメラから配信されている撮像映像に対して行われるものであり、例えば定期的に行われても良いし、少なくとも一定時間が経過すれば行われても良いし、要は繰り返して実行されれば構わない。なお、ステップS85の詳細は、例えば図11のステップS14及びステップS15において説明済みであるため、説明を省略する。
クライアントPC10は、バックグラウンド処理により生成又は更新した背景画像をストレージ15に保存する(S86)。ここで、モニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられた場合、クライアントPC10は、カメラAの編集映像の背景画像をストレージ15に保存し、次に表示するカメラBについて、バックグラウンド処理によってストレージ15に保存されたカメラBの撮像映像又は編集映像の背景画像をストレージ15から取得する(S83)。クライアントPC10は、メイン処理として、ステップS83において取得した背景画像とカメラBから配信されている撮像映像とを用いてマスク処理を行い、マスク処理後の編集映像をモニタDPに表示する。
図38は、図37に示すメイン処理の動作手順の一例を説明するフローチャートである。図39は、図37に示すバックグラウンド処理の動作手順の一例を説明するフローチャートである。図38の説明の前提として、モニタDPに表示される映像の配信元としてカメラAが選択されているとし、図39の説明の前提として、現在モニタDPに表示されていないカメラBについて背景画像の生成又は更新の処理が行われているとする。
図38において、クライアントPC10のプロセッサ11は、カメラAの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S121)。プロセッサ11は、現在カメラAから配信されている撮像映像とステップS121において取得した背景画像とを用いてマスク処理を行い、マスク処理後の編集映像をモニタDPに表示する(S122)。ここで、操作部13を用いたユーザ操作により、モニタDPに表示される映像の配信元としてのカメラが変更されたとする(S123)。例えば、カメラAからカメラBに切り替える旨の操作がなされたとする。なお、カメラの変更がなされない場合には(S123、NO)、プロセッサ11の処理はステップS122に戻る。
この場合(S123、YES)、プロセッサ11は、カメラBの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S124)。プロセッサ11は、現在カメラBから配信されている撮像映像とステップS124において取得した背景画像とを用いてマスク処理を行い、マスク処理後の編集映像をモニタDPに表示する(S125)。ここで、操作部13を用いたユーザ操作により、モニタDPに表示される映像の配信元としてのカメラが変更されたとする(S126)。例えば、カメラBからカメラCに切り替える旨の操作がなされたとする。なお、カメラの変更がなされない場合には(S126、NO)、プロセッサ11の処理はステップS125に戻る。
カメラBからカメラCに切り替える旨の操作がなされた場合でも、以降の処理は、選択されたカメラについて、ステップS121及びステップS122と同様の各処理が繰り返して実行される。
図39において、プロセッサ11は、カメラBから配信されている撮像映像を取得する(S131)。プロセッサ11は、カメラBの撮像映像もしくは編集映像の背景画像をストレージ15に保存している場合には、カメラBの撮像映像もしくは編集映像の背景画像をストレージ15から取得する(S132)。なお、カメラBの撮像映像もしくは編集映像の背景画像がストレージ15に保存されていない場合には、ステップS132の処理は省略される。
プロセッサ11は、カメラBから配信されている撮像映像とステップS132において取得した背景画像とを用いて、背景画像を更新(図12参照)する(S133)。又は、ステップS132の処理が省略された場合には、プロセッサ11は、カメラBから配信されている撮像映像を用いて、カメラBの背景画像を生成(図11のステップS11参照)する(S133)。プロセッサ11は、ステップS133において生成したカメラBの背景画像又は更新したカメラBの背景画像をストレージ15に保存する(S134)。
この後、プロセッサ11は、ステップS131〜ステップS134の各処理(BGpb)を単位として、カメラCについても同様に背景画像の生成や更新の各処理(BGpc)を実施し、その後、カメラAについても同様に背景画像の生成や更新の各処理(BGpa)を実施する。以降、背景画像の更新の処理(BGpb)→背景画像の更新の処理(BGpc)→背景画像の更新の処理(BGpa)が繰り返される。
第3映像表示方式によれば、クライアントPC10は、現在モニタDPに表示していないカメラの背景画像をバックグラウンド処理で更新できるので、上述した第1映像表示方式や第2映像表示方式に比べて、過大な処理負荷を受けることなく、最新の背景画像に更新でき、使用する背景画像の精度が向上する。これにより、クライアントPC10は、背景画像が更新されたカメラに切り替えられた場合に、そのカメラにより撮像された撮像映像中の静止物及び移動体(例えば人物)を、上述した第1映像表示方式や第2映像表示方式に比べて正しく認識することが可能となり、結果的に静止物を移動体と誤認識する頻度を低減することができる。
(第4映像表示方式)
第4映像表示方式では、クライアントPC10とサーバPC30とで第3映像表示方式のメイン処理とバックグラウンド処理とが分担される。具体的には、クライアントPC10は、第3映像表示方式におけるメイン処理を実行し、サーバPC30は、第3映像表示方式におけるバックグラウンド処理を実行する。サーバPC30は、バックグラウンド処理としての背景画像の生成又は更新により得た背景画像をストレージSP14(図40参照)に保存(退避)する。
図40は、サーバPCの内部構成の一例を詳細に示すブロック図である。図40に示すサーバPC30は、プロセッサSP11、通信部SP12、メモリSP13、ストレージSP14及び電源管理部SP15を含む構成である。
プロセッサSP11は、サーバPC30の各部の動作を統括して制御するための信号処理、他の各部との間のデータの入出力処理、データの演算処理及びデータの記憶処理を行う。プロセッサSP11は、例えばCPU、MPU、DSP又はFPGAを用いて構成される。
例えばプロセッサSP11は、各種のカメラ(例えば全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34)から配信されているそれぞれの撮像映像のデータを、通信部SP12を介して取得する。プロセッサSP11は、各種のカメラから配信されている撮像映像を用いて、例えば図39に示すバックグラウンド処理を行うことで、背景画像を生成し、又は背景画像を繰り返して更新する(例えば定期的に更新する)。また、プロセッサSP11は、各種のカメラから配信されている撮像映像を、録画映像として、撮像日時及びカメラの識別情報と関連付けてストレージSP14に保存してもよい。
通信部SP12は、各種のカメラ(例えば全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34)から配信されている撮像映像のデータを受信してプロセッサSP11に出力する。また、通信部SP12は、プロセッサSP11がストレージSP14から読み出した録画映像のデータをクライアントPC10に送信したり、プロセッサSP11がストレージSP14から読み出した背景画像のデータをクライアントPC10に送信したりする。
メモリSP13は、サーバPC30の動作を規定するためのプログラムや設定値のデータが格納されたROM131SPと、プロセッサSP11が生成した各種のデータや処理途中のワークデータを記憶するRAM132SPとを含む。また、図40には図示されていないが、メモリSP13は、サーバPC30に挿抜自在に接続され、各種データが記憶されるメモリカード(不図示)を更に有しても構わない。
ストレージSP14は、例えば各種のカメラから配信(送信)された撮像映像のデータを記憶したり、プロセッサSPにより生成又は更新された背景画像のデータを記憶したりする。また、ストレージSP14は、クライアントPC10により生成された編集映像や編集録画映像のデータをクライアントPC10から受信した場合に、その編集映像や編集録画映像のデータを記憶しても構わない。
電源管理部SP15は、サーバPC30の各部に直流電源を供給する。
図41は、第5の実施形態における第4映像表示方式の概要を示す模式図である。クライアントPC10は、プロセッサ11により実行されるメイン処理として、例えばカメラAから配信された撮像映像AA1を受信し、撮像映像AA1にマスク処理を行って得た編集映像BB1をモニタDPに表示する(S81)。サーバPC30は、プロセッサSP11により実行されるバックグラウンド処理として、各種のカメラ(例えば全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34)から配信されている撮像映像を受信し、受信したそれぞれの撮像映像と各種のカメラの撮像映像もしくは編集映像の背景画像とを用いて、各種のカメラの背景画像をそれぞれ更新する(S85A)。
ステップS85Aの背景画像の更新処理は、現在サーバPC30と通信可能な(接続可能な)全てのカメラから配信されている撮像映像に対して行われるものであり、例えば定期的に行われても良いし、少なくとも一定時間が経過すれば行われても良いし、要は繰り返して実行されれば構わない。なお、ステップS85Aの詳細は、例えば図11のステップS14及びステップS15において説明済みであるため、説明を省略する。
サーバPC30は、バックグラウンド処理により生成又は更新した背景画像をストレージSP14に保存して順次更新する(S86A)。ここで、モニタDPに表示される映像の配信元がカメラAからカメラBに切り替えられた場合、クライアントPC10は、カメラAの編集映像の背景画像をストレージ15に保存してもよいし保存しなくても構わない。また、クライアントPC10は、次に表示するカメラBについて、サーバPC30のバックグラウンド処理によってストレージSP14に保存されたカメラBの撮像映像もしくは編集映像の背景画像をサーバPC30から受信して取得する(S83A)。クライアントPC10は、メイン処理として、ステップS83Aにおいて取得した背景画像とカメラBから配信されている撮像映像とを用いてマスク処理を行い、マスク処理後の編集映像をモニタDPに表示する。
上述したように、第4映像表示方式では、クライアントPC10は図38に示すメイン処理を行い、一方、サーバPC30は図39に示すバックグラウンド処理を行う。つまり、クライアントPC10とサーバPC30とでメイン処理とバックグラウンド処理とを分担する。従って、第4映像表示方式によれば、各種のカメラの背景画像がサーバPC30のバックグラウンド処理によって更新されるので、クライアントPC10は、ユーザ操作によっていずれかのカメラの撮像映像をモニタDPに表示する旨の操作がなされる度に、選択されたカメラの最新の背景画像をサーバPC30からリアルタイムに取得でき、取得した上でメイン処理としてマスク処理を実行できる。これにより、クライアントPC10は、ユーザ操作により選択されたカメラの背景画像を生成することなく(つまり、初期学習をすることなく)、適切にマスク処理した編集映像をモニタDPに表示できる。
以上により、第5の実施形態の監視カメラシステム100は、撮像エリアを撮像する複数のカメラ(例えば全方位カメラCAM11,固定カメラCAM14,…)と、複数のカメラのうちの第1カメラ(カメラA)から配信された撮像エリアの撮像映像、又は撮像映像に現れる移動体をマスク画像に変更するためのマスク処理を行って得た編集映像をモニタDPに表示するクライアントPC10と、を備える。クライアントPC10は、個々のカメラから配信された各撮像映像の背景画像を生成してストレージ15に保存する。クライアントPC10は、カメラAから第2カメラ(カメラB)への切替に応じて、選択されたカメラBから配信された撮像映像の背景画像をストレージ15から取得し、ストレージ15から取得した背景画像とカメラBから配信された撮像映像とを用いて、カメラBから配信された撮像映像に対してマスク処理を行って得た編集映像をモニタDPに表示する。
第5の実施形態のクライアントPC10も、第1の実施形態と同様に、撮像映像に現れる移動中の人物の少なくとも一部又は全部をマスク画像に置き換えるマスク処理を行うことができる。これにより、クライアントPC10は、カメラの映像を切り替えてモニタDPに表示する場合に、選択されたカメラの前回使用していた撮像映像もしくは編集映像の背景画像をストレージ15から取得してマスク処理できるので、切替によって選択されたカメラから配信されている撮像映像の背景画像を初期学習によって生成する必要が無い。つまり、クライアントPC10は、カメラAからカメラBに切り替えられた場合に、カメラBから配信されている撮像映像の背景画像を生成する期間、映像の非表示を抑制でき、ユーザの監視業務の効率アップやマーケティング分析精度の向上を支援することができる。
また、クライアントPC10は、カメラAからカメラBへの切替に応じて、カメラAから配信された撮像映像の背景画像をストレージ15に記憶(保存)する。これにより、クライアントPC10は、切り替えられるまでに使用していた最新のカメラAの背景画像をストレージ15に保存でき、次回にカメラAの撮像映像をモニタDPに表示する際に、最新の背景画像を用いてマスク処理を迅速かつ適切に実行できる。
また、クライアントPC10は、カメラAからカメラBへの切替に応じて、カメラBの編集映像の前回表示時からの経過時間が所定時間(例えば30分)より短い場合に、選択されたカメラBから配信された撮像映像の背景画像をストレージ15から取得する。これにより、クライアントPC10は、例えば前回にカメラBの撮像映像又は編集映像を表示してから30分以内であれば背景画像が大きく変わることが無いというカメラBの設置環境であれば、前回使用時の背景画像をストレージ15から取得してマスク処理の際に使用できるので、カメラBからの撮像映像に対して再度初期学習をすること無く、マスク処理を迅速かつ適切に実行できる。
また、クライアントPC10は、モニタDPに表示されていない、少なくとも一つのカメラから配信された撮像映像の背景画像をストレージ15から取得して一定間隔で更新し、更新後の背景画像をストレージ15に記憶する。これにより、クライアントPC10は、現在モニタDPに表示していないカメラの背景画像をバックグラウンド処理で更新できるので、上述した第1映像表示方式や第2映像表示方式に比べて、過大な処理負荷を受けることなく、最新の背景画像に更新でき、使用する背景画像の精度が向上する。これにより、クライアントPC10は、背景画像が更新されたカメラに切り替えられた場合に、そのカメラにより撮像された撮像映像中の静止物及び移動体(例えば人物)を、上述した第1映像表示方式や第2映像表示方式に比べて正しく認識することが可能となり、結果的に静止物を移動体と誤認識する頻度を低減することができる。
また、第5の実施形態の監視カメラシステム100は、撮像エリアを撮像する複数のカメラ(例えば全方位カメラCAM11,固定カメラCAM14,…)と、複数のカメラのうちの第1カメラ(カメラA)から配信された撮像エリアの撮像映像、又は撮像映像に現れる移動体をマスク画像に変更するためのマスク処理を行って得た編集映像をモニタDPに表示するクライアントPC10と、個々のカメラから配信された各撮像映像の背景画像を生成してストレージSP14に保存するサーバPC30と、を備える。サーバPC30は、バックグラウンド処理として、ストレージSP14から取得した各撮像映像の背景画像を一定間隔で更新し、更新後の各背景画像をストレージSP14に記憶する。クライアントPC10は、カメラAから第2カメラ(カメラB)への切替に応じて、選択されたカメラBに対応する生成後又は更新後の背景画像をサーバPC30から取得し、サーバPC30から取得した背景画像とカメラBから配信された撮像映像とを用いて、カメラBから配信された撮像映像に対してマスク処理を行って得た編集映像をモニタDPに表示する。
言い換えると、クライアントPC10のメイン処理に対するバックグラウンド処理として、各種のカメラの背景画像がサーバPC30によって更新される。従って、クライアントPC10は、ユーザ操作によっていずれかのカメラの撮像映像をモニタDPに表示する旨の操作がなされる度に、選択されたカメラの最新の背景画像をサーバPC30からリアルタイムに取得でき、取得した上でメイン処理としてマスク処理を実行できる。これにより、クライアントPC10は、ユーザ操作により選択されたカメラの背景画像を生成することなく(つまり、初期学習をすることなく)、適切にマスク処理した編集映像をモニタDPに表示できる。
(第5の実施形態の内容に至る第2の経緯)
特許文献1によれば、監視エリアにおいて検知された人物の動画映像内の位置情報及び人物の属性(例えば性別、年齢)毎にマスク画像が生成されるため、そのマスク画像により、プライバシーを確保した上で店舗内の人物の行動が把握可能となる。
しかしながら、特許文献1では、動画映像において検知された人物の画像領域をマスク画像に変更するのはカメラであり、カメラからの動画映像を受信する受信装置(例えばユーザが使用するクライアントPC)によりマスク処理が行われることは考慮されていない。また、既設の監視カメラには、特許文献1のマスク処理を実行可能な機能(マスク機能)を有していないものが少なくない。
ここで、例えばユーザの監視業務の中で、監視エリアに設置された監視カメラからそれぞれ撮像されてレコーダ等の外部装置に録画(記録)された過去の撮像映像をクライアントPCのモニタに表示する際に、ユーザ操作により、再生対象となる録画日時が順に切り替えて表示されることを想定する。クライアントPCは、録画映像の録画日時が切り替わる度に、指定された録画日時の録画映像に対してマスク処理を行うため、マスク処理における初期学習(後述参照)において録画映像中の背景画像(つまり、録画映像中で動きの無い静止領域からなる画像領域)を生成する必要がある。しかしながら、この初期学習の処理中は、録画映像中の背景画像の生成が完了していないためにクライアントPCは録画映像の表示をできず、録画映像の表示ができない期間(例えば30秒〜1分程度)が発生するという課題がある(図42参照)。図42は、マスクカメラ方式とクライアントPC方式とにおける、任意の指定日時におけるカメラの編集録画映像の表示時の課題の説明図である。
ここで、図42を参照して、上述した課題をより具体的に説明する。
マスクカメラ方式(詳細は図28参照)では、マスクカメラ(つまり、マスク機能を有するカメラ)において撮像映像に対してマスク処理が行われる。つまり、マスクカメラにより生成された編集映像中の移動体(例えば人物)の画像部分はマスク画像に置き換えられて、編集録画映像としてレコーダ(例えばレコーダREC1)に保存される。ここで、ユーザ操作により、任意の指定日時に撮像された過去の撮像映像(例えば、レコーダREC1に保存されている録画映像)の再生が指示された場合、クライアントPCは、レコーダREC1から取得した編集録画映像DD1をすぐに表示することが可能である。
一方、クライアントPC方式(詳細は図29参照)では、例えばカメラはマスク機能を有さず、カメラから配信された撮像映像に対してクライアントPCにおいてマスク処理が行われる。つまり、カメラから配信された撮像映像がクライアントPCによってマスク処理されて編集映像が生成される。ここで、ユーザ操作により、任意の指定日時に撮像された過去の撮像映像(例えば、レコーダREC1に保存されている録画映像)の再生が指示された場合、クライアントPCは、レコーダREC1から取得した録画映像にマスク処理を行う際、背景画像を生成するために初期学習を行う必要がある。この初期学習は例えば30秒〜1分程度であるが、この初期学習の期間、クライアントPCはレコーダREC1から取得した録画映像をマスク処理した結果の編集録画映像DD1を表示できない。言い換えると、クライアントPCは、ユーザ操作により任意の指定日時に撮像された録画映像の再生指示があっても、レコーダREC1から取得した録画映像をマスク処理した結果の編集録画映像DD1をすぐに表示できない。
監視カメラの録画映像の録画日時がユーザ操作により指定される度に、クライアントPCにおける初期学習の処理を仮に省略した場合、クライアントPCにおいて適正な背景画像が生成されないことになる。このため、クライアントPCがマスク処理において移動体(例えば人物)の検知を正しくできず、マスク処理後の編集録画映像内の人物がマスク画像に置き換えて表示されずにそのまま表示されてしまい、その人物のプライバシーが的確に保護されないという可能性がある。
そこで、第5の実施形態の第5映像表示方式〜第6映像表示方式では、モニタへの表示対象となる監視カメラの録画映像の録画日時の指定があった場合に、指定された録画日時における録画映像の非表示を抑制した上でマスク処理を適切に施し、ユーザの監視業務の効率やマーケティング分析精度の向上を図るモニタリングシステム及び映像表示方法の例を説明する。
(第5映像表示方式)
図43は、第5の実施形態における第5映像表示方式の概要を示す模式図である。第5映像表示方式では、クライアントPC10は、プロセッサ11により実行されるメイン処理として、例えばカメラAから配信された撮像映像AA1を受信し、撮像映像AA1にマスク処理を行って得た編集映像BB1をモニタDPに表示する(S81)。なお、クライアントPC10は、ステップS81として、カメラAから配信された撮像映像AA1をマスク処理する以外に、例えば過去の録画映像を保持する配信装置から配信された録画映像を受信し、この録画映像にマスク処理を行って得た編集映像をモニタDPに表示してもよい。この処理は、図46におけるステップS81においても同様である。但し、クライアントPC10は、ステップS81のマスク処理を行う前に、配信装置から配信された録画映像の背景画像を予め保持しているか、又は配信装置からの配信された録画映像に背景画像が含まれる場合にその背景画像を取得しているとする。配信装置は、例えば上述したカメラA、レコーダ(例えばレコーダREC1,REC2,REC3,REC4)、PCレコーダ、クライアントPC10自身のうちいずれであっても構わない。PCレコーダは、例えばそのPCレコーダ自身に内蔵されるハードディスクに録画映像を保持した汎用のPCであり、具体的にはクライアントPC10でもよいし、クライアントPC10を除くネットワークNWに接続された他のPC(図27において不図示)でもよい。PCレコーダは、例えば図27に示す各種のカメラから配信された撮像映像を内蔵ハードディスクに録画(記録)し、自身又は他のPC(例えばクライアントPC10)に対して録画した映像(録画映像)を配信するアプリケーションが組み込まれた汎用的なPCである。
また、クライアントPC10は、プロセッサ11により実行されるバックグラウンド処理として、各種のカメラ(例えば全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34)から配信されている撮像映像を受信し、受信したそれぞれの撮像映像を用いて、各種のカメラの背景画像を繰り返し(例えば定期的に)生成する(S88)。
ステップS88の背景画像の繰り返し生成処理は、現在クライアントPC10と通信可能な(接続可能な)全てのカメラから配信されている撮像映像に対して行われるものであり、例えば定期的に行われても良いし、少なくとも一定時間が経過すれば行われても良いし、要は繰り返して実行されれば構わない。なお、ステップS88の詳細は、例えば図11のステップS11において説明済みであるため、説明を省略する。
クライアントPC10は、バックグラウンド処理により生成した(言い換えると、順次追加した)背景画像をストレージ15に保存して順次蓄積する(S86B)。ここで、ユーザ操作により、ユーザがカメラAに対して再生したい録画映像の録画日時が指定された時、クライアントPC10は、録画日時に最も近い生成日時に生成されたカメラAの背景画像をストレージ15から読み出して取得する(S87)。クライアントPC10は、メイン処理として、ステップS87において取得した背景画像とストレージ15又はサーバPC30のストレージSP14から取得したカメラAの上述した録画日時における録画映像とを用いてマスク処理を行い、マスク処理後の編集録画映像をモニタDPに表示する。
図44は、図43に示すメイン処理の動作手順の一例を説明するフローチャートである。図45は、図43に示すバックグラウンド処理の動作手順の一例を説明するフローチャートである。図44の説明の前提として、モニタDPに表示される録画映像(つまり、ユーザ操作により指定される録画日時に撮像された撮像映像)は、レコーダ(例えばレコーダREC1)からクライアントPC10に送信されてストレージ15に保存されているとする。図45の説明の前提として、サーバPC30は、カメラA→カメラB→カメラC→…の順に、同一の処理を行う。カメラCは、図27に示すいずれかのカメラである。
図44において、操作部13を用いたユーザ操作により、モニタDPに表示される録画映像の配信元としてのカメラ(例えばカメラA)が選択され(S141、YES)、かつユーザが再生したい録画日時が指定されたとする(S142)。この場合、クライアントPC10のプロセッサ11は、指定された録画日時に撮像されたカメラAの撮像映像(つまり、カメラAの録画映像)をストレージ15から取得する(S143)。プロセッサ11は、バックグラウンド処理によりストレージ15に保存されたカメラAの生成日時毎の背景画像の中から、録画日時に最も近い生成日時(図45参照)に生成されたカメラAの背景画像をストレージ15から取得する(S144)。
プロセッサ11は、ステップS143において取得したカメラAの録画映像とステップS144において取得したカメラAの背景画像とを用いてマスク処理(図11及び図12参照)を行う(S145)。プロセッサ11は、マスク処理後の編集録画映像をモニタDPに表示する(S146)。ステップS146の後、プロセッサ11のメイン処理はステップS141に戻り、この時点でユーザ操作によりカメラが選択されない場合には(S141、NO)、プロセッサ11のメイン処理は終了する。
図45において、クライアントPC10は、カメラAから配信されている撮像映像を受信する。プロセッサ11は、カメラAから配信されている撮像映像を、通信部12を介して取得する(S151)。プロセッサ11は、ステップS151において取得したカメラAの撮像映像の背景画像を生成する(図11のステップS11参照、S152)。
プロセッサ11は、ステップS152において生成したカメラAの撮像映像の背景画像とカメラAの識別情報(例えばカメラAのIDもしくはIPアドレス、又はその組み合わせ)とステップS152において生成した背景画像の生成日時とを対応付けてストレージ15に保存する(S153)。
ステップS153の後、ステップS152における背景画像の生成から所定時間(例えば30分)が経過したか否かがプロセッサ11により判断される(S154)。ステップS152における背景画像の生成から所定時間(例えば30分)が経過したと判断された場合には(S154、YES)、プロセッサ11の処理はステップS151に戻り、以降、カメラAの背景画像の生成が上述した所定時間毎に繰り返される。
また、プロセッサ11は、カメラBやカメラC、その他のカメラについても、カメラAの背景画像の所定時間毎の生成処理(BGqa)と同様の処理を実行する(BGqb,BGqc)。
第5映像表示方式によれば、クライアントPC10は、バックグラウンド処理として各種のカメラ(上述参照)から配信されている撮像映像の背景画像を繰り返して生成し、この背景画像をカメラの識別情報と背景画像の生成日時と対応付けてストレージ15に保存して蓄積している。従って、クライアントPC10は、クライアントPC10に対するユーザ操作により、モニタDPへの表示対象となる監視カメラの録画映像の録画日時が指定された場合に、その指定された録画日時に最も近い生成日時に生成された背景画像をストレージ15から取得し、この背景画像と録画日時の録画映像とを用いてマスク処理できる。これにより、クライアントPC10は、ユーザが再生したい録画映像をモニタDPに表示する際に、その録画映像の非表示を抑制した上で人物等の移動体をマスク画像に置き換えるためのマスク処理を適切に施し、ユーザの監視業務の効率やマーケティング分析精度の向上を図ることができる。
(第6映像表示方式)
第6映像表示方式では、上述した第4映像表示方式と同様に、クライアントPC10とサーバPC30とで第5映像表示方式のメイン処理とバックグラウンド処理とが分担される。具体的には、クライアントPC10は、第5映像表示方式におけるメイン処理を実行し、サーバPC30は、第5映像表示方式におけるバックグラウンド処理を実行する。サーバPC30は、バックグラウンド処理としての背景画像の繰り返し生成により得たその都度の背景画像を、カメラの識別情報と背景画像の生成日時と対応付けてストレージSP14に保存(退避)する。
図46は、第5の実施形態における第6映像表示方式の概要を示す模式図である。クライアントPC10は、プロセッサ11により実行されるメイン処理として、例えばカメラAから配信された撮像映像AA1を受信し、撮像映像AA1にマスク処理を行って得た編集映像BB1をモニタDPに表示する(S81)。サーバPC30は、プロセッサSP11により実行されるバックグラウンド処理として、各種のカメラ(例えば全方位カメラCAM11,CAM31、PTZカメラCAM12,CAM13,CAM21,CAM32,CAM33、固定カメラCAM14,CAM22,CAM34)から配信されている撮像映像を受信し、受信したそれぞれの撮像映像を用いて、各種のカメラの背景画像を繰り返し(例えば定期的に)生成する(S88A)。
ステップS88Aの背景画像の繰り返し生成処理は、現在サーバPC30と通信可能な(接続可能な)全てのカメラから配信されている撮像映像に対して行われるものであり、例えば定期的に行われても良いし、少なくとも一定時間が経過すれば行われても良いし、要は繰り返して実行されれば構わない。なお、ステップS88Aの詳細は、例えば図11のステップS11において説明済みであるため、説明を省略する。
サーバPC30は、バックグラウンド処理により生成した(言い換えると、順次追加した)背景画像をストレージSP14に保存して順次蓄積する(S86C)。ここで、ユーザ操作により、ユーザがカメラAに対して再生したい録画映像の録画日時が指定された時、クライアントPC10は、録画日時に最も近い生成日時に生成されたカメラAの背景画像をサーバPC30から受信して取得する(S87)。クライアントPC10は、メイン処理として、ステップS87において取得した背景画像とストレージ15又はサーバPC30のストレージSP14から取得したカメラAの上述した録画日時における録画映像とを用いてマスク処理を行い、マスク処理後の編集録画映像をモニタDPに表示する。
第6映像表示方式によれば、クライアントPC10は図44に示すメイン処理を行い、一方、サーバPC30は図45に示すバックグラウンド処理を行う。つまり、クライアントPC10とサーバPC30とでメイン処理とバックグラウンド処理とを分担する。従って、第6映像表示方式によれば、各種のカメラの背景画像がサーバPC30のバックグラウンド処理によって更新されるので、クライアントPC10は、ユーザ操作によってユーザが再生したいと考えているいずれかのカメラの録画映像の録画日時の指定操作がなされる度に、指定された録画日時に最も近いカメラの背景画像をサーバPC30から迅速に取得でき、この背景画像と録画日時における録画映像とを用いてメイン処理としてのマスク処理を実行してマスク処理後の編集録画映像をモニタDPに表示できる。これにより、クライアントPC10は、どのカメラの任意の録画日時における録画映像を再生したい場合でも、適切にマスク処理した編集映像をモニタDPに表示できるので、例えば何かのインシデントが発生した時の原因究明の効率的な支援を行うことができ、ユーザの監視業務の効率アップやマーケティング分析精度を向上することができる。
以上により、第5の実施形態の監視カメラシステム100は、撮像エリアを撮像するカメラ(例えば固定カメラCAM14)と、このカメラから配信された撮像エリアの一定期間分の撮像映像を録画映像としてストレージ15に保存するクライアントPC10と、を備える。クライアントPC10は、撮像エリアの一定期間分の撮像映像の背景画像を繰り返し生成し、生成後の背景画像とカメラの識別情報と背景画像の生成日時とを対応付けてストレージ15に保存して順次追加して蓄積する。クライアントPC10は、ユーザが再生を希望する録画日時(再生日時)の指定に応じて、指定された再生日時に最も近い生成日時に生成された背景画像をストレージ15から取得し、ストレージ15から取得した背景画像と録画映像としての撮像エリアの一定期間分の撮像映像とを用いて、録画映像に現れる移動体(例えば人物)をマスク画像に変更するためのマスク処理を行って得た編集録画映像をモニタDPに表示する。
従って、クライアントPC10は、クライアントPC10に対するユーザ操作により、モニタDPへの表示対象となる監視カメラの録画映像の録画日時が指定された場合に、その指定された録画日時に最も近い生成日時に生成された背景画像をストレージ15から取得し、この背景画像と録画日時の録画映像とを用いてマスク処理できる。これにより、クライアントPC10は、ユーザが再生したい録画映像をモニタDPに表示する際に、その録画映像の非表示を抑制した上で人物等の移動体をマスク画像に置き換えるためのマスク処理を適切に施し、ユーザの監視業務の効率やマーケティング分析精度の向上を図ることができる。
また、第5の実施形態の監視カメラシステム100は、撮像エリアを撮像するカメラ(例えば固定カメラCAM14)と、このカメラから配信された撮像エリアの一定期間分の撮像映像を録画映像としてストレージ15に保存するクライアントPC10と、カメラから配信された撮像エリアの一定期間分の撮像映像の背景画像を繰り返し生成し、生成後の背景画像とカメラの識別情報と背景画像の生成日時とを対応付けてストレージSP14に保存するサーバPC30と、を備える。クライアントPC10は、ユーザが再生を希望する録画日時(再生日時)の指定に応じて、指定された再生日時に最も近い生成日時に生成された背景画像をサーバPC30から取得し、サーバPC30から取得した背景画像とストレージ15に保存した録画映像としての撮像エリアの一定期間分の撮像映像とを用いて、録画映像に現れる移動体(例えば人物)をマスク画像に変更するためのマスク処理を行って得た編集録画映像をモニタDPに表示する。
従って、各種のカメラの背景画像がサーバPC30のバックグラウンド処理によって更新されるので、クライアントPC10は、ユーザ操作によってユーザが再生したいと考えているいずれかのカメラの録画映像の録画日時の指定操作がなされる度に、指定された録画日時に最も近いカメラの背景画像をサーバPC30から迅速に取得でき、この背景画像と録画日時における録画映像とを用いてメイン処理としてのマスク処理を実行してマスク処理後の編集録画映像をモニタDPに表示できる。これにより、クライアントPC10は、どのカメラの任意の録画日時における録画映像を再生したい場合でも、適切にマスク処理した編集映像をモニタDPに表示できるので、例えば何かのインシデントが発生した時の原因究明の効率的な支援を行うことができ、ユーザの監視業務の効率アップやマーケティング分析精度を向上することができる。
以上、図面を参照しながら各種の実施形態について説明したが、本発明はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、上述した各実施形態を組み合わせた事項についても当然に本発明の技術的範囲に属するものと了解される。
本発明は、監視エリアの撮像映像において検知された移動体(例えば人物)の画像領域を、その移動体が誰であるかを特定不能とするためのマスク画像に変更するマスク処理後の編集映像を出力するモニタリングシステム、映像表示方法及びコンピュータプログラムに関する。
本発明は、上述した従来の状況に鑑みて案出され、モニタへの表示対象となる監視カメラの撮像映像の切り替えがあっても、選択された撮像映像の非表示を抑制した上でマスク処理を適切に施し、ユーザの監視業務の効率やマーケティング分析精度の向上を図るモニタリングシステム、映像表示方法及びコンピュータプログラムを提供することを目的とする。
本発明は、撮像エリアを撮像する複数のカメラと、前記複数のカメラのうちの第1カメラから配信された前記撮像エリアの撮像映像、又は前記撮像映像に現れる移動体をマスク画像に変更するためのマスク処理を行って得た第1編集映像をモニタに表示する情報処理装置と、を備え、前記情報処理装置は、個々の前記カメラから配信された各撮像映像の背景画像を繰り返し生成して記憶部に保存し、前記情報処理装置は、前記第1カメラから第2カメラへの切替に応じて、前記第1カメラから配信されて前記記憶部に記憶されている撮像映像の背景画像を前記記憶部に保持させておき、更に、前記第2カメラから配信された撮像映像の背景画像を前記記憶部から取得し、前記記憶部から取得した背景画像と前記第2カメラから配信された撮像映像とを用いて、前記第2カメラから配信された撮像映像に対して前記マスク処理を行って得た第2編集映像を前記モニタに表示する、モニタリングシステムを提供する。
本発明は、モニタへの表示対象となる監視カメラの撮像映像の切り替えがあっても、選択された撮像映像の非表示を抑制した上でマスク処理を適切に施し、ユーザの監視業務の効率やマーケティング分析精度の向上を図るモニタリングシステム、映像表示方法及びコンピュータプログラムとして有用である。