(57)【要約】      （修正有）【課題】画像の配信先の装置における解析処理の高精度化を提供する。【解決手段】ネットワークカメラシステム１０００において、カメラ装置１００は、撮像センサ部１０１により撮像された複数の画像について、それぞれ解析処理を行う解析手段と、解析手段による解析処理の処理結果に応じて、複数の画像のうち、ネットワークを介して画像解析装置（サーバ装置２００）へ配信する画像を判断する配信データ判断部１０７と、判断手段により判断された画像を、画像解析装置へ配信する配信部１０８と、を備える。【選択図】図２
2018137638.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段により撮像された複数の画像について、それぞれ解析処理を行う解析手段と、
前記解析手段による解析処理の処理結果に応じて、前記複数の画像のうち、ネットワークを介して画像解析装置へ配信する画像を判断する判断手段と、
前記判断手段により判断された画像を、前記画像解析装置へ配信する配信手段と、を備えることを特徴とする画像処理装置。
【請求項２】
前記判断手段は、
前記複数の画像のうち、前記画像解析装置における解析処理の精度が向上する画像を前記配信する画像として判断することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記解析処理は、画像中の動体を検知する動体検知処理であり、
前記解析手段により検知された動体に関する情報を取得する取得手段をさらに備え、
前記判断手段は、前記取得手段により取得された情報に基づいて、前記配信する画像を判断することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記取得手段は、前記解析手段により検知された動体の画像内における移動量を示す移動情報を取得し、
前記判断手段は、前記動体の前記移動量が大きいほど、当該動体が含まれる画像を優先的に前記配信する画像として判断することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記取得手段は、前記解析手段により検知された動体の画像内における位置を示す位置情報を取得し、
前記判断手段は、前記動体の前記位置が画像端に近いほど、当該動体が含まれる画像を優先的に前記配信する画像として判断することを特徴とする請求項３または４に記載の画像処理装置。
【請求項６】
前記判断手段は、一定期間に前記画像解析装置へ配信する画像の数が、前記画像解析装置における解析処理のフレームレートに応じた一定の数となるように、前記配信する画像を判断することを特徴とする請求項１から５のいずれか１項に記載の画像処理装置。
【請求項７】
前記撮像手段により撮像された前記複数の画像を記憶する記憶手段と、
前記記憶手段により記憶された前記複数の画像から、前記判断手段により判断された画像を、前記配信手段により配信する画像として選択する選択手段と、をさらに備えることを特徴とする請求項１から６のいずれか１項に記載の画像処理装置。
【請求項８】
請求項１から７のいずれか１項に記載の画像処理装置と、
前記複数の画像を撮像する前記撮像手段と、を備えることを特徴とする撮像装置。
【請求項９】
請求項８に記載の撮像装置と、前記画像解析装置とがネットワークを介して接続されており、
前記撮像装置における撮像処理のフレームレートが、前記画像解析装置における解析処理のフレームレートよりも高いことを特徴とする画像処理システム。
【請求項１０】
撮像手段により撮像された複数の画像について、それぞれ解析処理を行うステップと、
前記解析処理の処理結果に応じて、前記複数の画像のうち、ネットワークを介して画像解析装置へ配信する画像を判断するステップと、
判断された画像を、前記画像解析装置へ配信するステップと、を含むことを特徴とする画像処理方法。
【請求項１１】
コンピュータを、請求項１から７のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法およびプログラムに関する。
【背景技術】
【０００２】
ネットワークカメラシステムは、例えば、公共の建物や場所、銀行、スーパ等の店舗、ダム、基地、飛行場等における立入り禁止区域等への侵入者あるいは侵入物体を監視する目的で、数多く用いられている。撮像装置であるネットワークカメラ（以下、単に「カメラ」という。）によって撮像された画像は、ネットワークを介してサーバに保存される。サーバは、保存された画像をもとに画像解析処理を行い、画像中に上記の侵入者や侵入物体が存在するか否かを解析する。その際、サーバは、画像中の動体を検知する動体検知を行い、検知された動体について人体であるかの解析を行い、所定領域に人体が侵入したかどうかを検知する侵入検知を行う。
【０００３】
サーバへ配信される画像のフレームレートが高ければ、映像解析の精度も高まる。しかしながら、その場合、サーバ側に配信される画像のデータサイズがより大きくなり、ネットワークの負荷が増大する。また、サーバ側の処理負荷が増大するとともに、記憶媒体の容量増大も必要となる。特許文献１には、画像内の特定の被写体が映っている特定領域の符号量を制御することで、カメラからサーバへ配信する画像のデータサイズを低減する方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２３９０８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、サーバがカメラから配信された画像を処理するフレームレートは、カメラが画像を処理するフレームレートとは異なる場合がある。サーバ側のフレームレートがカメラ側のフレームレートよりも低い場合、サーバは、カメラが配信可能なすべての画像を受信することはできないおそれがある。つまり、サーバは、カメラによって処理された画像のうち、間引いた形で画像を受信し、処理することになる。そのため、カメラが高フレームレートで画像を処理しサーバへ配信しても、サーバ側での動体検知の精度を必ずしも高めることはできないおそれがある。
上記特許文献１に記載の技術では、カメラが配信する画像のデータサイズを低減することができるため、ネットワークの負荷を増大することなくカメラから高フレームレートで画像を配信することができる。しかしながら、サーバ側のフレームレートがカメラ側のフレームレートよりも低い場合を考慮する必要がある。
そこで、本発明は、画像の配信先の装置における解析処理の高精度化を実現することを目的としている。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係る画像処理装置の一態様は、撮像手段により撮像された複数の画像について、それぞれ解析処理を行う解析手段と、前記解析手段による解析処理の処理結果に応じて、前記複数の画像のうち、ネットワークを介して画像解析装置へ配信する画像を判断する判断手段と、前記判断手段により判断された画像を、前記画像解析装置へ配信する配信手段と、を備える。
【発明の効果】
【０００７】
本発明によれば、画像の配信先の装置における解析処理の高精度化を実現することができる。
【図面の簡単な説明】
【０００８】
【図１】画像処理システムの一例を示すネットワーク接続構成図である。
【図２】カメラの機能ブロック図である。
【図３】カメラのハードウェア構成の一例を示す図である。
【図４】カメラからの映像配信を説明する図である。
【図５】カメラからの映像配信を説明する図である。
【図６】画像と動きベクトル量との関係を示す図である。
【図７】カメラが実行する制御処理を説明する図である。
【図８】動体検知の方法を説明する図である。
【図９】動きベクトル量の評価方法を説明する図である。
【図１０】第二の実施形態における動体検知の方法を説明する図である。
【図１１】第二の実施形態における動きベクトル量の評価方法を説明する図である。
【図１２】第二の実施形態のカメラが実行する制御処理を説明する図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明を実施するための形態について詳細に説明する。
なお、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
【００１０】
（第一の実施形態）
図１は、本実施形態における画像処理システムの動作環境の一例を示したネットワーク接続構成図である。本実施形態では、画像処理システムをネットワークカメラシステムに適用する。
ネットワークカメラシステム１０００は、複数のネットワークカメラ（以下、「カメラ装置」という。）１００と、サーバ装置２００と、を備える。カメラ装置１００およびサーバ装置２００は、ネットワーク３００によって接続されている。ネットワーク３００は、例えばＬＡＮ（Local Area Network）である。
なお、ネットワーク３００はＬＡＮに限定されるものではなく、インターネットやＷＡＮ（Wide Area Network）などであってもよい。また、ネットワーク３００への物理的な接続形態は、有線であってもよいし、無線であってもよい。さらに、図１においては、３台のカメラ装置１００がネットワーク３００に接続されているが、少なくとも１台のカメラ装置１００が接続されていればよく、接続台数は図１に示す数に限定されない。
【００１１】
カメラ装置１００は、被写体を撮像する監視カメラ等の撮像装置である。カメラ装置１００は、撮像した映像（画像）を、ネットワーク３００上へ配信可能であり、サーバ装置２００は、ネットワーク３００を介してカメラ装置１００から画像を取得し、解析処理を行う。本実施形態では、カメラ装置１００は、サーバ装置２００の処理能力に応じたフレームレートで、解析処理の処理結果に応じた映像配信を行うように構成されている。また、本実施形態では、カメラ装置１００が画像処理装置として機能する場合について説明する。
【００１２】
サーバ装置２００は、例えばパーソナルコンピューター（ＰＣ）などにより構成される画像解析装置とすることができる。このサーバ装置２００は、ユーザ（例えば、監視員）が操作可能であってもよい。サーバ装置２００が実行する解析処理は、動体検知処理、動体追尾処理、人体検知処理、顔検知処理、顔認識処理、顔認証処理、通過検知処理、侵入検知処理、混雑検知処理の少なくとも１つを含むことができる。本実施形態では、サーバ装置２００が、解析処理として、画像中の動体を検知する動体検知処理を行う場合について説明する。
なお、サーバ装置２００は、カメラ装置１００から配信される画像や、解析処理の結果を表示部に表示させるための表示制御機能を有していてもよい。さらに、サーバ装置２００は、解析処理に関する各種設定のための操作をユーザが行うための入力機能を有していてもよい。
【００１３】
図２は、カメラ装置１００の機能ブロック図である。カメラ装置１００は、撮像センサ部１０１、Ａ／Ｄ変換処理部１０２、現像処理部１０３、画像形成部１０４、データ記憶部１０５、動体判断部１０６、配信データ判断部１０７および配信部１０８を備える。
撮像センサ部１０１は、ズームレンズや撮像素子を備える撮像部１５（図３）からアナログ画像信号を取得し、Ａ／Ｄ変換処理部１０２に出力する。Ａ／Ｄ変換処理部１０２は、撮像センサ部１０１から入力されたアナログ画像信号をディジタル画像信号に変換する。ここで、ディジタル画像信号は、映像（動画像）を構成する各フレーム（画像）のディジタル画像信号とすることができる。
【００１４】
現像処理部１０３は、Ａ／Ｄ変換処理部１０２から出力されたディジタル画像信号に対して現像処理を行うことで、１枚の画像を生成する。この画像は、全方位３６０°を撮像した環状の全方位画像とすることができる。現像処理部１０３において現像処理された画像は、画像形成部１０４に出力される。画像形成部１０４は、現像処理部１０３から取得した画像に対して画像処理を行い、サーバ装置２００へ配信可能な画像を形成する。そして、画像形成部１０４は、処理後の画像をデータ記憶部１０５と動体判断部１０６とに出力する。
【００１５】
データ記憶部１０５は、ＳＤカードなどの記憶媒体に、画像形成部１０４によって処理された画像を複数フレーム分保持する。動体判断部１０６は、画像形成部１０４によって処理された画像に対して、解析処理として動体検知処理を行って画像内に動体が存在するか否かを判断し、その処理結果を配信データ判断部１０７に出力する。本実施形態では、動体判断部１０６は、時系列上連続する２つの画像の差分に基づいて動体判断を行う。配信データ判断部１０７は、動体判断部１０６から入力された処理結果に基づき、データ記憶部１０５に記憶された画像のうち、どの画像をサーバ装置２００へ配信するかを判断する。そして、配信データ判断部１０７は、データ記憶部１０５により記憶された画像から、サーバ装置２００へ配信すると判断した画像を選択し、配信部１０８へ送出する。配信部１０８は、配信データ判断部１０７により判断された画像を、ネットワーク３００を介してサーバ装置２００へ配信する。
【００１６】
また、カメラ装置１００は、サーバ装置２００からネットワーク３００を介して、ズームなどのカメラ制御用のコマンドを受信することができる。このようなカメラ制御用のコマンドは、まず配信部１０８が受信する。そして、配信部１０８が受信したカメラ制御用のコマンドがズームを指示する制御コマンドである場合には、配信部１０８はズームレンズに上記制御コマンドを送出する。ズームレンズは、配信部１０８から送出された制御コマンドに応じたズーム処理を行うことができる。
【００１７】
図３は、カメラ装置１００のハードウェア構成を示す図である。
カメラ装置１００は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、外部メモリ１４と、撮像部１５と、通信Ｉ／Ｆ１６と、システムバス１７とを備える。
ＣＰＵ１１は、カメラ装置１００における動作を統括的に制御するものであり、システムバス１７を介して、各構成部（１２〜１６）を制御する。ＲＯＭ１２は、ＣＰＵ１１が処理を実行するために必要なプログラムを記憶する不揮発性メモリである。なお、上記プログラムは、外部メモリ１４や着脱可能な記憶媒体（不図示）に記憶されていてもよい。ＲＡＭ１３は、ＣＰＵ１１の主メモリ、ワークエリアとして機能する。すなわち、ＣＰＵ１１は、処理の実行に際してＲＯＭ１２から必要なプログラムをＲＡＭ１３にロードし、ロードしたプログラムを実行することで各種の機能動作を実現する。
【００１８】
外部メモリ１４は、ＣＰＵ１１がプログラムを用いた処理を行う際に必要な各種データや各種情報を記憶している。また、外部メモリ１４には、ＣＰＵ１１がプログラムを用いた処理を行うことにより得られる各種データや各種情報が記憶される。撮像部１５は、被写体の撮像を行うための構成であり、ズームレンズと撮像素子とを備える。ズームレンズは、入射光を結像するための光学レンズを備え、光を撮像素子に集光させる。撮像素子は、光に応じて画像電気信号に変換する素子であり、ＣＣＤセンサやＣＭＯＳセンサにより構成することができる。この撮像素子は、ズームレンズを介して入光した光をアナログ画像信号に変換する。
【００１９】
通信Ｉ／Ｆ１６は、外部装置（本実施形態では、サーバ装置２００）と通信するためのインタフェースである。通信Ｉ／Ｆ１６は、例えばＬＡＮインタフェースである。システムバス１７は、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、外部メモリ１４、撮像部１５および通信Ｉ／Ｆ１６を通信可能に接続する。
図２に示すカメラ装置１００の各部の機能は、ＣＰＵ１１がプログラムを実行することで実現することができる。ただし、図２に示すカメラ装置１００の各部のうち少なくとも一部が専用のハードウェアとして動作するようにしてもよい。この場合、専用のハードウェアは、ＣＰＵ１１の制御に基づいて動作する。
【００２０】
図４は、カメラ装置１００が配信可能な画像と、サーバ装置２００が処理可能な画像との関係の一例を示す図である。図４において、上段は、カメラ装置１００が配信可能な画像４０、下段は、サーバ装置２００が処理可能な画像４０Ａを示している。この図４は、カメラ装置１００における画像を撮像し配信できる性能と、サーバ装置２００における画像を受信し処理できる性能とが異なる場合の例である。ここでは、カメラ装置１００は、ネットワーク３００を介してフレームレート１０ｆｐｓで画像４０を配信可能であり、サーバ装置２００は、ネットワーク３００を介してフレームレート５ｆｐｓで画像４０Ａを受信し処理可能であるものとする。
【００２１】
このように、サーバ装置２００において画像を処理可能なフレームレートは、カメラ装置１００において画像を配信可能なフレームレートよりも低い場合、カメラ装置１００が撮像処理した画像のうち、配信されない画像が存在することになる。図４に示す例では、カメラ装置１００が撮像処理した画像のうち半分はサーバ装置２００へ配信されない。そのため、カメラ装置１００によって撮像された画像内に動体を含む画像が存在する場合であっても、その動体を含む画像がサーバ装置２００へ配信されない場合がある。その場合、サーバ装置２００において動体検知、人体検知、人物認識などの解析を適切に行うことができない。
つまり、サーバ装置２００における動体の検知精度は、サーバ装置２００が画像を受信し処理できるフレームレートによって決まる。一方、カメラ装置１００が動体検知機能を有する場合、カメラ装置１００における動体の検知精度は、カメラ装置１００が画像を処理できるフレームレートによって決まる。そのため、サーバ装置２００の処理フレームレートが、カメラ装置１００での処理フレームレートよりも低い場合、カメラ装置１００において検知できた動体が、サーバ装置２００では検知できないといったことが発生する。
【００２２】
例えば、図５（ａ）に示すように、カメラ装置１００が一定期間に撮像処理したフレーム１からフレーム１０までの複数の画像４０のうち、フレーム４の画像中に動体が存在している場合について説明する。この場合、カメラ装置１００は、フレーム１からフレーム１０までの複数の画像４０について、それぞれ解析処理（動体検知処理）を行うことで、フレーム４の画像中に動体が存在していると判断する。つまり、カメラ装置１００は、フレーム３とフレーム４との間の画像差分と、フレーム４とフレーム５との間の画像差分とに基づいて、フレーム４において画像中に動体が存在していると判断する。
ところが、カメラ装置１００が、フレーム１、フレーム３、フレーム５、フレーム７、フレーム９の画像４０をサーバ装置２００へ配信してしまうと、サーバ装置２００が取得する画像４０Ａには、フレーム４に対応する画像が含まれない。サーバ装置２００は、フレーム１、フレーム３、フレーム５、フレーム７、フレーム９にそれぞれ対応するフレーム１Ａ〜フレーム５Ａの画像４０Ａに基づいて動体検知を行うため、フレーム４に含まれる動体を適切に検知することができないおそれがある。
【００２３】
そこで、本実施形態では、カメラ装置１００は、自装置において撮像処理した画像のうち、配信先であるサーバ装置２００において動体を検知しやすい画像（解析処理の精度が向上する画像）を配信するようにする。具体的には、カメラ装置１００は、フレーム１からフレーム１０までの画像４０に対して動体検知処理を行い、動体が検知された画像を優先的にサーバ装置２００へ配信するようにする。これにより、サーバ装置２００においても適切に画像の解析を行うことができる。ここで、サーバ装置２００へどの画像を配信するかは、カメラ装置１００の配信データ判断部１０７（図１）が判断する。
【００２４】
図５（ｂ）は、カメラ装置１００において動体が検知された場合にサーバ装置２００へ配信する画像の例である。図５は、カメラ装置１００がフレーム４で動体を検知した場合、サーバ装置２００へ、フレーム４を含むフレーム１、フレーム３、フレーム４、フレーム５、フレーム９の画像４０を配信する場合について示している。例えば、サーバ装置２００は、フレーム１、フレーム３、フレーム４、フレーム５、フレーム９にそれぞれ対応するフレーム１Ａ〜フレーム５Ａの画像４０Ａをもとに動体検知を行うことになる。そのため、サーバ装置２００は、フレーム３とフレーム４との間の画像差分と、フレーム４とフレーム５との間の画像差分とに基づいて、フレーム４に含まれる動体を適切に検知することができる。そして、高精度で人体の検知および人物の認識を行うことも可能となる。
【００２５】
配信データ判断部１０７は、画像中の動体に関する情報に基づいて、サーバ装置２００へどの画像を配信するかを判断する。ここで、動体に関する情報は、動体の移動情報とすることができ、動体の移動情報は、動体の移動量および移動方向の少なくとも一方を含むことができる。本実施形態では、動体の移動情報として、動体の移動量および移動方向を示す動きベクトルを用いる場合について説明する。図６は、図５（ａ）および図５（ｂ）に示したフレーム１〜フレーム１０にそれぞれ関連付けられた動きベクトルの量（動きベクトル量）の例である。動きベクトル量は、カメラ装置１００の動体判断部１０６（図１）によって算出される。
【００２６】
動体判断部１０６は、時系列上連続して撮像された複数の画像について、それぞれ画像中の動体を検知する動体検知処理を行い、検知された動体の動きベクトル量を取得し、画像と関連付ける。このとき、動体判断部１０６は、画像中に複数の動体を検知した場合には、それぞれについて動きベクトル量を取得し、これら複数の動きベクトル量の統計をとるなどして画像に関連付ける。
配信データ判断部１０７は、動体判断部１０６によって各画像に関連付けられた動きベクトル量を比較し、動きベクトル量が大きい画像ほど動体の動きが大きいために画像差分が大きく、動体検知の度合いが高い（動体を検知しやすい）と判断する。そして、配信データ判断部１０７は、データ記憶部１０５に記憶された一定期間に撮像処理された複数の画像から、動きベクトル量の大きな画像から優先的に配信画像として選択する。ここで、上記一定期間は、予め決められた時間を元にすることができ、図６の例では、カメラ装置１００が１０フレーム分の画像を処理する時間としている。
【００２７】
図６に示す例では、フレーム４、フレーム５、フレーム３、フレーム９、フレーム１の順に動きベクトル量が大きい。したがって、この場合、配信データ判断部１０７は、上記の動きベクトル量が大きいフレームを配信画像として選択する。このとき、配信データ判断部１０７は、上記一定期間内に配信する画像の数を、画像の配信先であるサーバ装置２００における処理のフレームレートに応じて一定に保つ。つまり、カメラ装置１００の処理のフレームレートが１０ｆｐｓであり、サーバ装置２００の処理のフレームレートが５ｆｐｓである場合、カメラ装置１００は、一定期間（１秒間）に撮像処理した１０枚の画像のうち、５枚の画像をサーバ装置２００に配信する。
【００２８】
次に、カメラ装置１００の動作について、図７を参照しながら説明する。図７に示す処理は、例えばユーザによる撮像開始指示の入力に応じて開始される。ただし、図７の処理の開始タイミングは、上記のタイミングに限らない。カメラ装置１００は、ＣＰＵ１１が必要なプログラムを読み出して実行することにより、図７に示す処理を実現することができる。
ただし、上述したように、図２に示す各要素のうち少なくとも一部が専用のハードウェアとして動作することで図７の処理が実現されるようにしてもよい。この場合、専用のハードウェアは、ＣＰＵ１１の制御に基づいて動作する。以降、アルファベットＳはフローチャートにおけるステップを意味するものとする。
【００２９】
まずＳ１において、カメラ装置１００の撮像センサ部１０１、Ａ／Ｄ変換処理部１０２、現像処理部１０３および画像形成部１０４は、撮像処理を行い、画像を形成する。Ｓ２では、データ記憶部１０５は、Ｓ１において撮像処理された画像を記憶媒体に保持する。Ｓ３では、動体判断部１０６は、Ｓ１において撮像処理された画像に対して、動体が画像中に存在するか否かを判断する。次に、Ｓ４では、動体判断部１０６は、Ｓ３において判断された動体に関する情報として、動体の動きの量を示す動きベクトル量を算出し、算出した動きベクトル量を、データ記憶部１０５によって記憶媒体に記憶された画像に関連付ける。動きベクトル量の算出方法については後述する。
【００３０】
Ｓ５では、配信データ判断部１０７は、サーバ装置２００へ配信する画像の候補となる一定期間の画像がデータ記憶部１０５によって保持されたか否かを判断する。ここで、上記一定期間は、上述したようにデータ記憶部１０５内に保持しておくことができる。配信データ判断部１０７は、Ｓ５において、一定期間の画像が保持されていないと判断した場合、Ｓ１に戻り、Ｓ１〜Ｓ５の処理を繰り返す。この処理を繰り返すことで、一定期間内に撮像処理された画像と、当該画像について算出された動きベクトル量とが保持される。
そして、配信データ判断部１０７は、Ｓ５において一定期間の画像が保持されたと判断すると、Ｓ６に移行し、一定期間に撮像処理された画像のうちどの画像をサーバ装置２００へ配信するかを、動きベクトル量の算出結果に基づいて判断する。また、配信データ判断部１０７は、サーバ装置２００へ配信すると判断した画像を、データ記憶部１０５によって記憶媒体に記憶された一定期間の画像の中から選択する。
【００３１】
Ｓ７では、配信部１０８は、Ｓ６において配信データ判断部１０７によって配信すると判断された画像を、ネットワーク３００を介してサーバ装置２００へ配信する。Ｓ８では、カメラ装置１００は、撮像を終了するか否かを判定する。例えば、カメラ装置１００は、ユーザによる撮像終了指示を入力した場合に撮像を終了すると判定し、図７の処理を終了する。一方、このＳ８において、カメラ装置１００が撮像を継続すると判定した場合にはＳ１に戻り、Ｓ１〜Ｓ８の処理を繰り返す。
【００３２】
以下、動体判断部１０６における動きベクトル量の算出方法について説明する。ここでは、図８（ａ）に示す画像シーケンスについて、第１フレームの画像４１と第２フレームの画像４２との差分をもとに、画像４１と画像４２との間における動体ベクトル量を算出する場合について説明する。図８（ａ）において、画像４１内には、人物５１および物体５２が存在し、画像４２内には、人物５１´および物体５２´が存在している。ここで、人物５１と人物５１´とは同一人物であり、物体５２と物体５２´とは同一物体である。
動きベクトル量の算出に際し、動体判断部１０６は、まず画像４１および画像４２に対して、それぞれ特徴点の抽出処理を行う。図８（ｂ）に、画像４１および画像４２における特徴点の抽出例を示す。図８（ｂ）中における×印で示している箇所が抽出された特徴点である。ここで、人物５１の特徴点６１に対応する人物５１´の特徴点は、画像４２における特徴点６１´である。また、物体５２の特徴点６２に対応する物体５２´の特徴点は、画像４２における特徴点６２´である。動体判断部１０６は、これらの画像間において対応する特徴点について、それぞれ画像内位置の差を判断する。
【００３３】
図９は、画像４１と画像４２とを重ねて表示した図である。特徴点６１と特徴点６１´とに着目すると、特徴点の画像内位置に差があることがわかる。一方、特徴点６２と特徴点６２´とに着目すると、特徴点の位置の差は見られない。動体判断部１０６は、対応する特徴点の位置の差の大きさを動きの量として取り扱い、動体の動きベクトル量として評価する。つまり、図９の例では、特徴点の位置の差がある人物５１（５１´）が動体であり、その動きベクトルは、矢印７１で表現できることになる。また、動体の動きベクトル量は、動きベクトル７１の大きさ（長さ）で表現できる。このように、画像間において対応する特徴点の位置の差が大きい場合は、動きベクトル量が大きく、動体の動きが大きいと判断することができる。
動体判断部１０６は、画像中の各特徴点の動きベクトルを算出し、これらを統計して画像間の全体の動体の動きベクトル（移動量と移動方向）を判断する。これにより、配信データ判断部１０７は、動体判断部１０６により判断された画像間の動体の移動量をもとに、どの画像をサーバ装置２００へ配信するとサーバ装置２００側での動体検知率を上げることができるかを判断することができる。
【００３４】
以上のように、本実施形態におけるカメラ装置１００は、自装置において撮像処理した複数の画像についてそれぞれ解析処理を行う。そして、カメラ装置１００は、その解析処理の処理結果に応じて、複数の画像のうち、ネットワーク３００を介して画像解析装置であるサーバ装置２００へ配信する画像を判断し、サーバ装置２００へ配信する。具体的には、カメラ装置１００は、撮像処理した複数の画像のうち、サーバ装置２００における解析処理の精度が向上する画像を優先的に配信する。したがって、画像の配信先であるサーバ装置２００において実施される解析処理の高精度化を実現することができる。
ここで、上記解析処理は、画像中の動体を検知する動体検知処理とすることができる。つまり、カメラ装置１００は、サーバ装置２００側の動体検知処理においてもカメラ装置１００と同様に動体を検知できる画像を選択して配信する。したがって、サーバ装置２００側での動体検知率を適切に高めることができる。
【００３５】
カメラ装置１００とサーバ装置２００とにおいて、それぞれ同様の動体検知処理を行った場合、カメラ装置１００において検知される動体が、サーバ装置２００側では検知できない場合がある。これは、サーバ装置２００側の解析処理のフレームレートに依存する。上述した図５（ａ）に示すように、カメラ装置１００が処理可能な画像のフレームレートに比べ、サーバ装置２００が処理可能な画像のフレームレートが低い場合、サーバ装置２００は、カメラ装置１００が配信可能な画像をすべて受信できない。そのため、カメラ装置１００からサーバ装置２００へ配信される画像によっては、サーバ装置２００での動体検知精度は、カメラ装置１００での動体検知精度より低くなってしまう。
これに対して、本実施形態では、カメラ装置１００は、サーバ装置２００へ配信可能なすべての画像に対して動体検知の評価を行い、その結果をもとにサーバ装置２００へ配信する画像を判断する。そのため、サーバ装置２００側での動体検知の精度を高めることができる。したがって、ネットワーク３００への配信負荷を増大させることなく、また、サーバ装置２００側での処理負荷および記憶媒体への負荷を増大させることなく、サーバ装置２００における動体検知精度を向上させることができる。
【００３６】
具体的には、カメラ装置１００は、サーバ装置２００へ配信する画像の判断に際し、撮像処理した画像をもとに動体を検知し、検知された動体に関する情報を取得する。ここで、動体に関する情報は、動体の移動量を示す移動情報とすることができ、移動情報としては、動体の移動量および移動方向を示す動きベクトルを用いることができる。そして、カメラ装置２００は、動体の移動量を示す動きベクトル量に基づいて、サーバ装置２００へ配信する画像を判断する。このとき、カメラ装置２００は、動体の移動量が大きいほど、当該動体が含まれる画像を優先的にサーバ装置２００へ配信する画像として判断する。
このように、カメラ装置１００は、画像中に存在する動体の動きが大きいほど、その画像は動体を検知するために必要な画像であると判断し、優先的にサーバ装置２００へ配信する。つまり、カメラ装置１００は、動体の検知度合いが大きい画像を優先した配信制御を行うことができる。したがって、サーバ装置２００側での動体検知率を確実に向上させることができる。
【００３７】
また、カメラ装置１００は、一定期間にサーバ装置２００へ配信する画像の数が、サーバ装置２００における解析処理のフレームレートに応じた一定の数となるように、当該サーバ装置２００へ配信する画像を判断する。このように、カメラ装置１００は、一定期間にサーバ装置２００へ配信する画像の数を一定に保つので、一定期間におけるサーバ装置２００側の処理負荷や容量負荷を一定に保つことができる。また、カメラ装置１００は、一定期間にサーバ装置２００へ配信する画像の数を、サーバ装置２００における解析処理のフレームレートに応じた数、つまり、サーバ装置２００が一定期間に処理可能な数とすることができる。したがって、サーバ装置２００は、カメラ装置１００から配信されたすべての画像について解析処理を行うことができ、適切に動体を検知することができる。
【００３８】
さらに、カメラ装置１００のデータ記憶部１０５は、撮像処理された複数の画像を記憶媒体に記憶し、配信データ判断部１０７は、記憶媒体に記憶された複数の画像から、サーバ装置２００へ配信すると判断された画像を選択して配信部１０８により配信する。このように、カメラ装置１００は、撮像処理された複数の画像を記憶媒体に記憶するので、サーバ装置２００から別の画像（追加の画像）の配信要求を受けた場合に、適切に配信対応することができる。
以上説明したように、本実施形態における画像処理システム１０００は、画像処理装置として機能するカメラ装置１００と、画像解析装置として機能するサーバ装置２００とがネットワーク３００を介して接続されている。また、カメラ装置１００における撮像処理のフレームレートは、サーバ装置２００における解析処理のフレームレートよりも高い。本実施形態では、このような画像処理システム１０００において、ネットワークの負荷を増大することなく、また、サーバ装置２００側の処理負荷や容量負荷を増大することなく、サーバ装置２００における解析処理の精度を向上させることができる。
【００３９】
（第二の実施形態）
次に、本発明の第二の実施形態について説明する。
上述した第一の実施形態では、動体の動きベクトル量のみに基づいて配信画像を選択する場合について説明した。この第二の実施形態では、さらに動体の位置情報を考慮して、配信画像を選択する場合について説明する。
図１０は、画像４３と当該画像４３に続くフレームである画像４４とを含む画像シーケンスの一例である。ここで、画像４３内には、人物５３、人物５４および物体５５が存在し、画像４４内には、人物５３´、人物５４´および物体５５´が存在している。ここで、人物５３と人物５３´、人物５４と人物５４´はそれぞれ同一人物であり、物体５５と物体５５´とは同一物体である。また、画像４３内の人物５３および５４はそれぞれ動体であり、人物５３は、画像４４内において人物５３´の位置に移動し、人物５４は、画像４４内において人物５４´の位置に移動している。
【００４０】
人物５３から人物５３´への移動量と、人物５４から人物５４´への移動量とを比べた図を図１１に示す。図１１中の矢印７２は、人物５３から人物５３´への動きベクトルであり、人物５３から人物５３´への移動量とその移動方向とを表している。同様に、矢印７３は、人物５４から人物５４´への動きベクトルであり、人物５４から人物５４´への移動量とその移動方向とを表している。この図１１からも明らかなように、矢印７２の方が矢印７３よりも大きい。したがって、人物５３から人物５３´への移動量の方が、人物５４から人物５４´への移動量よりも大きいことがわかる。
【００４１】
しかしながら、人物５４および５４´は、画像中において画角の端に対応する領域（画像端に近い領域）に位置している。そのため、移動量が小さくても、画角を外れて画像の外に出てしまう可能性が高い。つまり、画像端に近い位置に存在する動体は、画像内に存在している期間が少ない可能性が高く、フレームレートによっては、うまく動体として検知できない可能性が高い。
そこで、本実施形態では、動体判断部１０６は、動体の動きベクトル量だけでなく、動体の画像内における位置に関する情報である位置情報も取得する。そして、配信データ判断部１０７は、動体の動きベクトル量と位置情報とに基づいて、サーバ装置２００へどの画像を配信するかを判断する。具体的には、配信データ判断部１０７は、動体判断部１０６から取得された位置情報をもとに動体の画像内位置を判断し、画像端に近い位置に動体が存在すると判断した場合、その画像を優先的にサーバ装置２００へ配信するよう判断する。
【００４２】
図１２は、本実施形態におけるカメラ装置１００の動作を説明するフローチャートである。この図１２において、図７と同一処理を行う部分には図７と同一ステップ番号を付し、以下、処理の異なる部分を中心に説明する。
Ｓ３において、動体判断部１０６が、画像中に動体が存在するか否かを判断した後、Ｓ１１において、動体判断部１０６は、Ｓ３において判断された動体の画像内における位置情報を取得し、画像に関連付けて保持してからＳ４に移行する。
そして、Ｓ４において、動体判断部１０６が動体の動きベクトル量を算出し、画像に関連付けて保持した後、Ｓ１２において、配信データ判断部１０７は、動体の動きベクトル量と位置情報とに基づいて画像に重み付けをする。ここで、配信データ判断部１０７は、動体の動きベクトル量が大きいほど、また、動体の画像内位置が画像端に近いほど、サーバ装置２００への配信画像として選択しやすくなるように重み付けする。
【００４３】
このように、カメラ装置１００は、画像中の動体に関する情報として、動体の移動量を示す移動情報と動体の位置を示す位置情報とを取得し、これらの情報を考慮して、サーバ装置２００へどの画像を配信するかを判断する。したがって、サーバ装置２００側における動体検知率をより適切に高めることができる。
【００４４】
（変形例）
上記実施形態においては、動体の動きベクトル量（移動量）や位置情報に基づいて配信画像を判断する場合について説明した。しかしながら、配信画像の判断方法は上記に限定されるものではなく、動体の移動方向を用いてもよい。この場合、動体の移動方向が画像端に向かう方向である場合、動体が画角を外れて画像の外に出てしまう可能性が高いと判断し、その画像を優先的に配信画像として判断するようにしてもよい。つまり、動体の移動量、移動方向および位置の少なくとも１つに基づいて配信画像を判断することができる。
【００４５】
また、上記実施形態においては、解析処理として動体検知処理を行う場合について説明した。しかしながら、上述したように、解析処理は動体検知処理に限定されない。例えば、解析処理として認識処理を行う場合、認識対象が隠れていない画像を優先的に配信画像として判断してもよい。この場合、サーバ装置２００側では、適切に対象となるオブジェクトを認識することができ、さらにその認識結果をもとに、例えば特定のオブジェクトを識別する処理を行うこともできる。
さらに、上記実施形態においては、カメラ装置１００が画像処理装置として機能する場合について説明した。しかしながら、カメラ装置１００によって撮像された画像を記憶する記憶部を備え、サーバ装置２００へネットワーク３００を介して画像を配信可能な映像配信装置が画像処理装置として機能してもよい。
【００４６】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４７】
１０００…ネットワークカメラシステム、１００…ネットワークカメラ（カメラ装置）、１０６…動体判断部、１０７…配信データ判断部、１０８…配信部、２００…サーバ装置、３００…ネットワーク
【図１】
2018137638.tif 000003
【図２】
2018137638.tif 000004
【図３】
2018137638.tif 000005
【図４】
2018137638.tif 000006
【図５】
2018137638.tif 000007
【図６】
2018137638.tif 000008
【図７】
2018137638.tif 000009
【図８】
2018137638.tif 000010
【図９】
2018137638.tif 000011
【図１０】
2018137638.tif 000012
【図１１】
2018137638.tif 000013
【図１２】
2018137638.tif 000014