(57)【要約】      （修正有）【課題】時分割した映像データを並列的に分散して映像解析することで、本対象イベントの検出処理を高速に行う。【解決手段】映像解析並列処理を、１パス目では、映像データを複数の処理区間に時分割し、隣り合う処理区間との間に互いにオーバラップ区間を持たせて、映像データから映像又は音声が切り替わる基準イベントの検出処理を並列に実行する。その後の２パス目では、その基準イベント間の基準イベント区間を用いて本対象イベント検出を実行する際に用いる各処理区間を計算し、その各処理区間を用いて本対象イベントの検出処理を並列に実行する。【選択図】図１
2014039137.tif 000002
【特許請求の範囲】
【請求項１】
記憶手段から映像データを読み出して、それぞれに割り当てられた時分割区間の映像データを用いて映像又は音声が切り替わる基準イベントの検出処理を並列に実行する複数の映像解析手段と、
前記検出された基準イベント間の基準イベント区間を用いて、本対象イベントの検出処理を実行する際に用いる各処理区間を計算する処理区間計算手段と、を有し、
前記複数の映像解析手段は、
前記計算された各処理区間の映像データを用いて前記基準イベントの内容の度合いが変化する本対象イベントの検出処理を並列に実行することを特徴とする映像解析装置。
【請求項２】
前記処理区間計算手段は、
一定の処理区間基本長に収まるように複数の前記基準イベント区間を前記各処理区間に割り当てることを特徴とする請求項１記載の映像解析装置。
【請求項３】
前記映像解析手段は、
割り当てられた前記時分割区間の最後において前記基準イベントの発生状態が継続している場合に、当該発生状態が終了するまで次の時分割区間の映像データを用いて前記基準イベント検出処理を継続し、
前記処理区間計算手段は、
当該継続により延長された基準イベント区間を用いて前記各処理区間を計算することを特徴とする請求項１又は２記載の映像解析装置。
【請求項４】
前記基準イベントは、切り替わった映像シーンの発生であり、
前記本対象イベントは、当該映像シーン内の映像アップショットであることを特徴とする請求項１乃至３のいずれかに記載の映像解析装置。
【請求項５】
コンピュータにより、
記憶手段から映像データを読み出して、それぞれに割り当てられた時分割区間の映像データを用いて映像又は音声が切り替わる基準イベントの検出処理を並列に実行するステップと、
前記検出された基準イベント間の基準イベント区間を用いて、本対象イベントの検出処理を実行する際に用いる各処理区間を計算するステップと、
前記計算された各処理区間の映像データを用いて前記基準イベントの内容の度合いが変化する本対象イベントの検出処理を並列に実行するステップと、
を有することを特徴とする映像解析方法。
【請求項６】
コンピュータを請求項１乃至４のいずれかに記載の映像解析装置として機能させるための映像解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時分割した映像データを並列的に分散して映像解析する技術に関する。
【背景技術】
【０００２】
現在、映像中のフレームから画像データやそれに対応する音声データを取得して画像等の特徴量を抽出し、それを用いて映像シーンが切り替わるカット点やカメラワークの切替点をイベント発生として検出する映像解析技術がある。
【０００３】
例えば、特許文献１には、フレームの輝度情報に基づいてカット点を検出する方法が記載されている。また、特許文献２には、動きベクトルに基づいて映像内の前景と背景の動きを分類し、動物体が大きく撮影されているショット区間をアップショット区間として検出する方法が開示されている。
【０００４】
ここで、特許文献２の検出方法によれば、検出器内部でカット点を検出し、その検出処理と併行してフレーム内の動きベクトルを評価することにより、アップショットを検出している。このとき、動きベクトルの評価値は新たなカット点の検出によってリセットされることから、アップショット区間は、２つのカット点で挟まれたショット区間を越えない範囲で検出されることになる。
【０００５】
そこで本発明では、アップショットのように所定のイベント区間を越えない範囲で検出されるイベントを本対象イベントと称し、その区間を本対象イベント区間とする。また、本対象イベント区間を区切る基準となるイベントを基準イベントと称し、その区間を基準イベント区間とする。例えば、カット点の場合、隣接する２つのカット点に挟まれるショット区間を基準イベント区間とする。尚、ディゾルブやフェードイン／アウトといった継続時間を伴う漸次カットの場合、カットの継続が終了する点をショット区間の境界とする。参考までに、このような区間関係を図１６に例示する。
【０００６】
また、このようなアップショット検出以外に、本対象イベントとして、例えば、特許文献３に記載されたような、映像内で盛り上がっている音声区間を検出する音声ハイライトの検出がある。この音声ハイライト検出によれば、まず、映像が持つ音データの強度や周波数の時間変化から有声／無声区間を判定し、音声区間を決定する。そして、次に、この音声区間の中から音データの強調度を算出し、閾値以上の強調度を持つ音声区間を音声ハイライト区間として検出する。この場合には、音声区間が基準イベント区間となり、音声ハイライト区間が本対象イベント区間となる。
【０００７】
また、前述したショット区間内のフレームにおいて、中心のサムネイル画像を生成する処理でも適用可能である。この場合には、カット点の検出が基準イベントとなり、サムネイル生成処理が本対象イベントとなる。
【０００８】
このように、本対象イベントの発生やその区間、基準イベントの発生やその区間を検出する映像解析技術は従来から存在している。
【０００９】
しかしながら、そのような映像解析処理は、一般的に映像データの先端から最後まで逐次的に比較演算処理を行うことにより実現されるため、映像を構成するフレーム数に比例した演算時間が必要となることから、映像解析処理の時間短縮が望まれている。
【００１０】
そこで、このような要望に対して特許文献４によれば、映像データを複数の処理区間に時分割し、各処理区間内の映像データを用いて映像解析処理を時間的に並列に分散して実行することにより、映像解析に要する全体の処理時間を短縮している。
【００１１】
また、前の処理区間で発生したイベントが次の処理区間でも継続している場合を考慮して、隣り合う処理区間の間に互いに重なり合うオーバラップ区間を持たせ、そのオーバラップ区間を長くすることによりイベントの検出漏れを防止していた。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特許第２８３９１３２号公報
【特許文献２】特許第４６４０００１号公報
【特許文献３】特許第３８０３３１１号公報
【特許文献４】特許第３７８５０６８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、イベントの検出漏れを防止し、更に正確なイベント検出結果を得るにはオーバラップ区間を長くする必要があるため、その映像解析の高速化度合いが低下してしまう。
【００１４】
また、隣り合う処理区間に跨るイベントが常に発生するとは限らないため、全ての処理区間にオーバラップ区間を設けることにより、映像解析処理が極めて非効率となってしまう。
【００１５】
本発明は、上記課題を鑑みてなされたものであり、その課題とするところは、本対象イベントの検出処理の効率的な高速化である。
【課題を解決するための手段】
【００１６】
請求項１記載の映像解析装置は、記憶手段から映像データを読み出して、それぞれに割り当てられた時分割区間の映像データを用いて映像又は音声が切り替わる基準イベントの検出処理を並列に実行する複数の映像解析手段と、前記検出された基準イベント間の基準イベント区間を用いて、本対象イベントの検出処理を実行する際に用いる各処理区間を計算する処理区間計算手段と、を有し、前記複数の映像解析手段は、前記計算された各処理区間の映像データを用いて前記基準イベントの内容の度合いが変化する本対象イベントの検出処理を並列に実行することを特徴とする。
【００１７】
本発明によれば、映像データから基準イベントを検出し、本対象イベントの検出処理を実行する際に用いる各処理区間を当該基準イベント間の基準イベント区間を用いて計算するため、本対象イベントの検出処理を高速に行うことができる。
【００１８】
請求項２記載の映像解析装置は、請求項１記載の映像解析装置において、前記処理区間計算手段は、一定の処理区間基本長に収まるように複数の前記基準イベント区間を前記各処理区間に割り当てることを特徴とする。
【００１９】
本発明によれば、一定の処理区間基本長に収まるように複数の基準イベント区間を上記各処理区間に割り当てるため、各映像解析手段における処理時間の平準化により、本対象イベントの検出処理を効率良く行うことができる。
【００２０】
請求項３記載の映像解析装置は、請求項１又は２記載の映像解析装置において、前記映像解析手段は、割り当てられた前記時分割区間の最後において前記基準イベントの発生状態が継続している場合に、当該発生状態が終了するまで次の時分割区間の映像データを用いて前記基準イベント検出処理を継続し、前記処理区間計算手段は、当該継続により延長された基準イベント区間を用いて前記各処理区間を計算することを特徴とする。
【００２１】
本発明によれば、割り当てられた時分割区間の最後において基準イベントの発生状態が継続している場合に、その発生状態が終了するまで次の時分割区間の映像データを用いて基準イベント検出処理を継続し、その継続により延長された基準イベント区間を用いて上記各処理区間を計算するため、必要以上のオーバラップ区間を多発させることなく本対象イベントの検出処理を効率良く行うことができる。
【００２２】
請求項４記載の映像解析装置は、請求項１乃至３のいずれかに記載の映像解析装置において、前記基準イベントは、切り替わった映像シーンの発生であり、前記本対象イベントは、当該映像シーン内の映像アップショットであることを特徴とする。
【００２３】
請求項５記載の映像解析方法は、コンピュータにより、記憶手段から映像データを読み出して、それぞれに割り当てられた時分割区間の映像データを用いて映像又は音声が切り替わる基準イベントの検出処理を並列に実行するステップと、前記検出された基準イベント間の基準イベント区間を用いて、本対象イベントの検出処理を実行する際に用いる各処理区間を計算するステップと、前記計算された各処理区間の映像データを用いて前記基準イベントの内容の度合いが変化する本対象イベントの検出処理を並列に実行するステップと、を有することを特徴とする。
【００２４】
請求項６記載の映像解析プログラムは、コンピュータを請求項１乃至４のいずれかに記載の映像解析装置として機能させることを特徴とする。
【発明の効果】
【００２５】
本発明によれば、本対象イベントの検出処理を高速に行うことができる。
【図面の簡単な説明】
【００２６】
【図１】映像解析システムの全体構成を示す図である。
【図２】映像解析装置の動作フローチャートを示す図である。
【図３】基準イベント検出処理区間の計算フローチャートを示す図である。
【図４】基準イベント検出処理区間データ例を示す図である。
【図５】映像解析の並列処理動作を示す図である。
【図６】基準イベント検出処理の動作フローチャートを示す図である。
【図７】処理区間の動的延長例を示す図である。
【図８】基準イベント検出処理結果の統合例を示す図である。
【図９】基準イベント区間データ例を示す図である。
【図１０】本対象イベント検出処理区間の計算フローチャート（第１計算例）を示す図である。
【図１１】第１計算例における基準イベント区間の割当イメージを示す図である。
【図１２】本対象イベント検出処理区間データ例を示す図である。
【図１３】第２計算例における基準イベント区間の割当イメージを示す図である。
【図１４】本対象イベント検出処理の動作フローチャートを示す図である。
【図１５】映像解析装置のコンピュータ実装例を示す図である。
【図１６】基準イベント区間と本対象イベント区間の区間関係例を示す図である。
【発明を実施するための形態】
【００２７】
本発明は、映像解析並列処理を２パスで実行することにより、本対象イベントの検出処理を高速・高効率で行うことを特徴としている。すなわち、１パス目では、映像データを複数の処理区間に時分割し、隣り合う処理区間との間に互いにオーバラップ区間を持たせて基準イベントの検出処理を並列に実行する。その後の２パス目では、その基準イベント間の基準イベント区間を用いて本対象イベント検出を実行する際に用いる各処理区間を計算し、その各処理区間を用いて本対象イベントの検出処理を並列に実行する。
【００２８】
以下、本発明を実施する一実施の形態について図面を用いて説明する。但し、本発明は多くの異なる様態で実施することが可能であり、本実施の形態の記載内容に限定して解釈すべきではない。
【００２９】
本実施の形態に係る映像解析システムの全体構成を図１に示す。この映像解析システムは、解析対象の映像データを映像解析装置１００に入力するデータ入力装置３００と、入力された映像データの映像や音声を解析する映像解析装置１００と、その解析結果をモニター等に出力するデータ出力装置５００とを備えている。
【００３０】
それら各装置３００，１００，５００は、ＬＡＮ等の通信ネットワークにより通信可能に接続され、任意の通信プロトコルを用いて相互にデータを送受することが可能である。以下、各装置の機能について詳述する。
【００３１】
データ入力装置３００は、ユーザにより操作されるものであり、ＨＴＴＰ（Hypertext Transfer Protocol）やＳＭＢ（Server Message Block）等の通信プロトコルを用いて、解析対象の映像データとそれを解析する際の並列処理数データを映像解析装置１００に入力する装置である。
【００３２】
データ出力装置５００は、データ入力装置３００と同様にユーザにより操作されるものであるが、入力された映像データを用いて映像解析装置１００により解析された解析結果情報を受信してモニターやプリンタ等に出力する装置である。
【００３３】
続いて、映像解析装置１００の機能について説明する。映像解析装置１００は、映像記憶部１１と、処理区間計算部１２と、処理区間記憶部１３と、解析処理管理部１４と、映像解析部１５と、検出結果統合部１６と、基準イベント記憶部１７と、統合結果記憶部１８とで主に構成されている。
【００３４】
映像記憶部１１は、通信ネットワークを介してデータ入力装置３００から入力された映像データと並列処理数データを読み出し可能に記憶しておく機能を有している。尚、並列処理数とは映像解析部１５を構成する処理ワーカ部１５２の数に該当し、ユーザは任意の数を指定することができる。以下、処理ワーカ数という。
【００３５】
処理区間計算部１２は、映像データを処理ワーカ数で時分割した各処理区間（基準イベント検出用の処理区間）をそれぞれ計算する機能を有している。また、映像解析部１５によって検出された基準イベント間の基準イベント区間を用いて、本対象イベントの検出処理を実行する際に用いる各処理区間（本対象イベント検出用の処理区間）をそれぞれ計算する機能を有している。
【００３６】
処理区間記憶部１３は、処理区間計算部１２によって計算された基準イベント検出処理区間データと本対象イベント検出処理区間データを読み出し可能に記憶しておく機能を有している。
【００３７】
解析処理管理部１４は、基準イベント検出処理区間データ又は本対象イベント検出処理区間データに定められた各処理区間を映像解析部１５の各処理ワーカ部１５２にそれぞれ割り当てる機能を有している。
【００３８】
映像解析部１５は、映像取得部１５１と複数の処理ワーカ部１５２とで構成されている。映像取得部１５１は、映像記憶部１１から映像データを取得して後段の各処理ワーカ部１５２に送出する機能を有している。
【００３９】
複数の処理ワーカ部１５２は、基準イベント検出用の処理区間が自身に割り当てられた際には、その割り当てられた処理区間の映像データを用いて基準イベントの検出処理を並列に実行する機能を有している。また、本対象イベント検出用の処理区間が割り当てられた際には、その割り当てられた処理区間の映像データを用いて本対象イベントの検出処理を並列に実行する機能を有している。
【００４０】
尚、基準イベントとは、映像又は音声が切り替わるイベントである。例えば上述したように、映像シーンが切り替わるカット点や、有声区間から無声区間への切り替わりの発生である。
【００４１】
これに対し本対象イベントとは、基準イベントの内容の度合いが変化する基準イベント区間内で発生するイベントである。例えば上述したように、ショット区間内での映像アップショットの発生や、有声区間内の音声ハイライトの発生である。
【００４２】
これら基準イベントや本対象イベントの各検出手法は背景技術で説明したように公知である。例えば上述したように、フレーム間の輝度値や音データの強調度の変化率を用いて検出することができる。
【００４３】
また、処理ワーカ部１５２の数は、データ入力装置３００から入力された並列処理数に対応するように動的に増減させることも可能である。例えば、並列処理数としてｗ個が入力された場合、そのｗ個の第１処理ワーカ部１５２ａ〜第ｗ処理ワーカ部１５２ｗによって映像解析並列処理が独立して実行される。
【００４４】
検出結果統合部１６は、映像解析部１５による映像解析結果を取得して統合する機能を有している。具体的には、基準イベントの検出処理が実行された際には、各処理ワーカ部１５２での基準イベント検出処理結果を統合して基準イベント記憶部１７に記憶し、本対象イベントの検出処理が実行された際には、各処理ワーカ部１５２での本対象イベント検出処理結果を統合して統合結果記憶部１８に記憶する。
【００４５】
基準イベント記憶部１７は、検出結果統合部１６によって統合された基準イベント検出処理結果を読み出し可能に記憶しておく機能を有している。
【００４６】
統合結果記憶部１８は、検出結果統合部１６によって統合された本対象イベント検出処理結果を読み出し可能に記憶しておく機能を有している。
【００４７】
続いて、図２を参照しながら映像解析装置１００の動作について説明する。まず、本動作の処理主体である映像解析装置１００は、ユーザ操作によりデータ入力装置３００から入力された映像データを受信して映像記憶部１１に記憶し、更にその映像データを映像解析並列処理するための並列処理数データを受信して、ｗ個の処理ワーカ数ｗとして映像記憶部１１に記憶する（ステップＳ１）。
【００４８】
次に、処理区間計算部１２が、解析対象の映像データとそれに対応する処理ワーカ数ｗを映像記憶部１１から読み出して、その映像データを当該処理ワーカ数ｗで時分割した複数の処理区間（基準イベント検出用の処理区間）を計算する（ステップＳ２）。
【００４９】
ここで、図３を参照しながら、基準イベント検出処理区間の計算方法について詳述する。まず、解析対象の映像データからその映像長Ｌを取得し（ステップＳ２ａ）、更にその映像データに対応する処理ワーカ数ｗを映像記憶部１１から取得する（ステップＳ２ｂ）。
【００５０】
次に、処理区間用カウンタｉを初期化し（ステップＳ２ｃ）、ｉ≧ｗが成立するか否かを判定する（ステップＳ２ｄ）。
【００５１】
ｉ≧ｗが成立しない場合、式（１）と式（２）を用いて処理開始フレームＳｉと処理終了フレームＥｉをそれぞれ計算し（ステップＳ２ｅ）、そのＳｉとＥｉ間の処理区間を基準イベント検出処理区間Ｐｉとして処理区間記憶部１３に記憶する（ステップＳ２ｆ）。
【００５２】
Ｓｉ＝ｉ・（Ｌ／ｗ）      ・・・（１）
Ｅｉ＝Ｓｉ＋１            ・・・（２）
その後、処理区間用カウンタｉをインクリメントして（ステップＳ２ｇ）、ステップＳ２ｄに戻り、ｉ≧ｗが成立するまでステップＳ２ｅ〜ステップＳ２ｇを繰り返す。そして、ｉ≧ｗが成立した場合に処理を終了する。
【００５３】
以上説明したステップＳ２ａ〜ステップＳ２ｇの各処理を実行することにより、映像長Ｌを処理ワーカ数ｗで時分割して得られるｗ個の基準イベント検出処理区間Ｐｉが計算される。尚、Ｐｉは、ｗ個中のｉ番目の基準イベント検出処理区間Ｐを識別するＩＤとなる。
【００５４】
また、ＳｉはＰｉにおけるフレームの開始位置情報を示し、ＥｉはそのＰｉにおけるフレームの終了位置情報を示している。Ｓｉ及びＥｉは、本実施の形態において映像の先頭からの時間情報（単位：ｍｓ）で表されるが、このような時間情報に代えて先頭からのフレーム番号を用いてもよい。
【００５５】
基準イベント検出処理区間Ｐｉの計算結果例を図４に示す。この例の場合、基準イベント検出処理区間Ｐ０の処理開始フレームＳ０は「０（ｍｓ）」となり、その処理終了フレームＥ０は「１０００（ｍｓ）」となる。また、Ｐ１のＳ１は「１０００（ｍｓ）」、そのＥ１は「２０００（ｍｓ）」となり、Ｐ２のＳ２は「２０００（ｍｓ）」、そのＥ２は「３０００（ｍｓ）」となり、Ｐ３のＳ３は「３０００（ｍｓ）」、そのＥ３は「４０００（ｍｓ）」となり、Ｐ４のＳ４は「４０００（ｍｓ）」、そのＥ４は「５０００（ｍｓ）」となる。
【００５６】
しかし、これまでに計算された基準イベント検出処理区間Ｐｉは、映像データを処理ワーカ数ｗで単純に時分割した便宜的処理区間であり、基準イベントの発生や、隣り合う処理区間間での基準イベントの発生継続状態を考慮したものではない。
【００５７】
そこで、後述するように、この基準イベント検出処理区間Ｐｉ（正確には、基準イベント検出用の処理区間）を基準イベントに基づく基準イベント区間を用いて補正し、本対象イベントの検出処理時には補正後の処理区間Ｐｉ’を用いるようにする。
【００５８】
続いて、図２のフローチャートに戻り、解析処理管理部１４は、ステップＳ２で計算されたｗ個の基準イベント検出処理区間Ｐｉを処理区間記憶部１３から取得して第１処理ワーカ部１５２ａ〜第ｗ処理ワーカ部１５２ｗにそれぞれ割り当てる。その後、それら各処理ワーカ部１５２は、自身に割り当てられた基準イベント検出処理区間Ｐｉの映像データを用いて基準イベント検出処理を並列に実行する（ステップＳ３）。
【００５９】
例えば、図５に示すように、解析処理管理部１４は、Ｐ０〜Ｐ４の各処理区間を第１処理ワーカ部１５２ａ〜第５処理ワーカ部１５２ｅにそれぞれ割り当て、それら各処理ワーカ部１５２ａ〜１５２ｅは、同図の矢印で示すように基準イベントの検出処理を独立して並列実行する。
【００６０】
ここで、図６を参照しながら、基準イベント検出処理動作について詳述する。まず、各処理ワーカ部１５２は、自身に割り当てられた基準イベント検出処理区間Ｐｉの処理開始フレームＳｉから基準イベントの検出処理を開始する（ステップＳ３ａ）。
【００６１】
そして、処理終了フレームＥｉに到達した後に（ステップＳ３ｂ）、検出中の基準イベントの発生状態が継続しているか否かを判定し（ステップＳ３ｃ）、未だ継続状態にある場合にのみ、その発生状態が終了するまで、処理終了フレームＥｉを後ろにずらして基準イベント検出処理区間Ｐｉを延長し、その解析処理を継続する（ステップＳ３ｄ）。
【００６２】
特に映像のカット点の検出では、一瞬でシーンが切り替わる瞬時カット以外に、ディゾルブやフェードイン／アウトのような映像効果を利用した継続的時間幅を伴う漸次カットが発生している場合がある。そのようなケースの際には、この漸次カットが処理区間の処理終了フレームで発生している場合に処理区間の延長が発生し、漸次カットの発生状態が終了するまで解析処理を継続する。その他、例えば音声区間の場合には、その音声区間が終了するまで解析処理を継続する。
【００６３】
例えば、図７（ａ）に示すように、Ｐ０，Ｐ１の各処理区間が第１処理ワーカ部１５２ａ，第２処理ワーカ部１５２ｂにそれぞれ割り当てられ、各基準イベント検出処理が矢印に示すようにそれぞれ実行され、第１処理ワーカ部１５２ａにおいて処理終了フレームＥｉ（フレーム位置情報「１０００（ｍｓ）」）に到達した際に、現在検出中の基準イベントが発生状態であったと仮定する。
【００６４】
この場合、第１処理ワーカ部１５２ａは、図７（ｂ）に示すように、処理終了フレームＥ０を後ろにずらして基準イベント検出に係る解析処理を続行し、その基準イベントの発生状態が終了したとき（例えば、フレーム位置情報「１２００（ｍｓ）」の時点）にその解析処理を終了する。
【００６５】
このように基準イベント検出処理区間Ｐｉが延長されることにより、第１処理ワーカ部１５２ａで解析処理されるＰ０は、ステップＳ２で算出された本来のＰ００に加えて延長されたＰ０１が足し合わされた処理区間とされ、基準イベント検出処理区間データのＰ０のＥ０が「１０００（ｍｓ）」から「１２００（ｍｓ）」に更新される。
【００６６】
そして、図６のフローチャートに戻り、ステップＳ３ｄにおいて延長された処理区間での基準イベント検出処理が終了したとき、又は、ステップＳ３ｂにおいて処理終了フレームまで基準イベント検出処理が到達し且つステップＳ３ｃにおいて基準イベント検出中ではないと判断された後に、基準イベントの検出処理結果を映像解析結果として検出結果統合部１６に送出する（ステップＳ３ｅ）。
【００６７】
次に、図２のフローチャートに戻り、検出結果統合部１６は、各処理ワーカ部１５２から送出された基準イベントの検出処理結果を統合し、基準イベントの発生が考慮された基準イベント区間データとして基準イベント記憶部１７に記憶する（ステップＳ４）。
【００６８】
このとき、ステップＳ３の解析処理において基準イベント検出処理区間Ｐｉの延長が発生していると、隣り合う処理区間のオーバラップ区間で解析処理がそれぞれ実行されていることになる。
【００６９】
そこで上記統合時には、そのオーバラップ区間については、図８に示すように、時間的に映像の先頭に近い処理区間で検出した結果を優先して統合する。オーバラップ区間で解析処理を行った複数の処理区間のうち、どの処理区間が映像の先頭に近いかは、処理区間記憶部１３に記憶された基準イベント検出処理区間データに基づいて判断する。
【００７０】
上記統合処理によって得られた基準イベント区間データを図９に示す。この基準イベント区間データには、図４に示した基準イベント検出処理区間データと同様に処理開始フレームＳ及び処理終了フレームＥが含まれ、更にはその区間長を表すカット長（基準イベント長）が含まれているが、基準イベントの発生を単位としている。尚、Ｃｊは、映像先頭から数えてｊ番目の基準イベント区間を識別するＩＤである。
【００７１】
以上説明したステップＳ２〜ステップＳ４が１パス目の処理である。引き続き、２パス目の処理について説明する。１パス目で計算された基準イベント区間Ｃｊは、基準イベントの発生に基づいて計算されている。ゆえに、以下説明する２パス目において、この基準イベント区間データを用いて本対象イベント検出を実行する際に用いる各処理区間を計算することにより、本対象イベントの検出処理を高速・高効率・高精度で行うことが可能となる。
【００７２】
続いて、図２のフローチャートに戻り、処理区間計算部１２は、基準イベント記憶部１７から基準イベント区間データを読み出し、そのデータ内の各基準イベント区間Ｃｊを用いて、各処理ワーカ部１５２に振り分ける処理区間を補正後の処理区間Ｐｉ’（本対象イベント検出処理区間データ）として計算する（ステップＳ５）。
【００７３】
ここで、図１０及び図１１を参照しながら、その処理区間（正確には、本対象イベント検出用の処理区間）の第１計算例について詳述する。まず、映像記憶部１１から解析対象の映像データを読み出して、その映像長Ｌとそれに対応する処理ワーカ数ｗを取得する（ステップＳ５ａ）。
【００７４】
次に、基準イベント記憶部１７から基準イベント区間データを読み出して、上記解析対象の映像データに対して１パス目で求めた基準イベント区間Ｃｊの数ｎを取得する（ステップＳ５ｂ）。
【００７５】
次に、処理区間用カウンタｉと基準イベント区間用カウンタｊと割り当て用カウンタｒとをそれぞれ初期化し（ステップＳ５ｃ）、式（３）を用いて各処理ワーカ部１５２に対する基準イベント区間Ｃｊの平均割当数Ａを計算する（ステップＳ５ｄ）。尚、Ｆｌｏｏｒは床関数であり、（ｎ／ｗ）以下の最大の整数が計算される。
【００７６】
Ａ＝Ｆｌｏｏｒ（ｎ／ｗ）      ・・・（３）
次に、ｉ≧ｗが成立するか否かを判定する（ステップＳ５ｅ）。ｉ≧ｗが成立しない場合、処理区間Ｐと割り当て用カウンタｒを初期化し（ステップＳ５ｆ）、現時点の基準イベント区間用カウンタｊに対応する基準イベント区間Ｃｊを基準イベント区間データから取得して（ステップＳ５ｇ）、処理区間Ｐに追加する（ステップＳ５ｈ）。
【００７７】
次に、ｒ＞Ａが成立するか否かを判定し（ステップＳ５ｉ）、ｒ＞Ａが成立しない場合、基準イベント区間用カウンタｊと割り当て用カウンタｒをそれぞれインクリメントして（ステップＳ５ｊ，Ｓ５ｋ）、ｒ＞Ａが成立するまでステップＳ５ｇ〜ステップＳ５ｋを繰り返す。
【００７８】
このステップＳ５ｇ〜ステップＳ５ｋの各処理を実行することにより、処理区間Ｐに対して割り当てられる基準イベント区間Ｃｊが決定されることになる。そして、ｒ＞Ａが成立する場合に、処理区間用カウンタｉをインクリメントし（ステップＳ５ｌ）、現在の処理区間Ｐを処理区間Ｐｉ’（補正後の処理区間Ｐｉ’，本対象イベント検出処理区間）として処理区間記憶部１３に記憶する（ステップＳ５ｍ）。
【００７９】
その後、ステップＳ５ｅに戻り、ｉ≧ｗが成立するまでステップＳ５ｅ〜Ｓ５ｍを繰り返すことにより、各基準イベント区間Ｃｊを適宜足し合わせて得られるｗ個の本対象イベント検出処理区間Ｐｉ’が計算される。尚、Ｐｉ’は、ｗ個のｉ番目の本対象イベント検出処理区間Ｐを識別するＩＤである。
【００８０】
尚、ｉ≧ｗが成立した際に未割り当ての基準イベント区間Ｃｊが存在する可能性がある。そこで、ｊ＝ｎ−１が成立するか否かを判定し（ステップＳ５ｎ）、ｊ＝ｎ−１が成立する場合には、未割り当ての基準イベント区間Ｃｊを最後の本対象イベント検出処理区間Ｐｗ−１’に全て足し合わせて処理区間記憶部１３に記憶する（ステップＳ５ｏ，Ｓ５ｐ）、一方、未割り当ての基準イベント区間Ｃｊが存在しないことによりｊ＝ｎ−１が成立する場合には、処理を終了する。
【００８１】
以上の処理を実行することにより、図４に示した各処理区間は図１２に示すような各処理区間に補正されることになる。この処理区間では、図９に示した基準イベント区間Ｃ０，Ｃ１が処理区間Ｐ０’に割り当てられ、処理開始フレームＳ０は「０（ｍｓ）」、その処理終了フレームＥ０は「１２００（ｍｓ）」となっている。同様に、Ｃ２，Ｃ３がＰ１’に割り当てられ、Ｐ１’のＳ１は「１２００（ｍｓ）」、そのＥ１は「２１００（ｍｓ）」となり、Ｃ４，Ｃ５がＰ２’に割り当てられ、Ｐ２’のＳ２は「２１００（ｍｓ）」、そのＥ２は「３３００（ｍｓ）」となり、Ｃ６，Ｃ７がＰ３’に割り当てられ、Ｐ３’のＳ３は「３３００（ｍｓ）」、そのＥ３が「４５００（ｍｓ）」となり、Ｃ８がＰ４’に割り当てられ、Ｐ４’のＳ４は「４５００（ｍｓ）」、そのＥ４は「５０００（ｍｓ）」となっている。
【００８２】
続いて、図１３を参照しながら、本対象イベント検出処理区間の第２計算例について詳述する。この計算例では、各処理ワーカ部１５２に割り当てる基準イベント区間Ｃｊの総計長を平準化する。
【００８３】
まず、映像記憶部１１から解析対象映像データの映像長Ｌとそれに対応する処理ワーカ数ｗを取得し、式（４）を用いて処理区間基本長Ｌ’を計算する。
【００８４】
Ｌ’＝Ｌ／ｗ      ・・・（４）
次に、この処理区間基本長Ｌ’になるべく収まるように、映像先頭側の基準イベント区間Ｃｊから順に各処理区間Ｐ’に割り当てる。図１３では、基準イベント区間Ｃａ，Ｃｂを第１処理ワーカ部１５２ａの処理区間Ｐ０’に割り当て、基準イベント区間Ｃｃを第２処理ワーカ部１５２ｂの処理区間Ｐ１’に割り当てている。
【００８５】
ここで、基準イベント区間Ｃｄを第２処理ワーカ部１５２ｂの処理区間Ｐ１’に対して更に割り当てると処理区間基本長Ｌ’を超えるため、第３処理ワーカ部１５２ｃの処理区間Ｐ２’に割り当てる。次に、基準イベント区間Ｃｅを第２処理ワーカ部１５２ｂの処理区間Ｐ１’に割り当てても処理区間基本長Ｌ’内に収まるため、第２処理ワーカ部１５２ｂの処理区間Ｐ１’に割り当てる。
【００８６】
また、処理区間基本長Ｌ’よりも基準イベント区間Ｃｊの区間長が長い場合には、基準イベント区間Ｃｊが割り当てられていない任意の処理ワーカ部１５２の処理区間に割り当てる。更に、基準イベント区間Ｃｊをどの処理ワーカ部１５２の処理区間に割り当てても処理区間基本長Ｌ’を超える場合には、基準イベント区間を割り当てた後の処理区間長が最も短くなるように基準イベント区間Ｃｊを割り当てる。
【００８７】
以上の処理を繰り返して全ての基準イベント区間Ｃｊを各処理ワーカ部１５２の処理区間Ｐ’に割り当てた場合には、各処理区間Ｐ’の長さが平準化されるので、後に行う本対象イベントの検出処理を効率的に並列分散化することができる。
【００８８】
尚、いずれの計算例を用いた場合であっても、処理ワーカ部１５２に対する処理区間内の基準イベント区間の順序は、映像内での順序関係を保った状態で割り当てられている。したがって、イベント検出時には早送り方向のみにシーク進め、巻き戻し方向のシークは発生しない。巻き戻し方向のシークが発生するように割当てると、例えば符号化された映像では、キーフレームの頭出し等のオーバヘッドがかかり、高速化に影響が出ることになる。
【００８９】
次に、図２のフローチャートに戻り、解析処理管理部１４は、ステップＳ５で計算されたｗ個の本対象イベント検出処理区間Ｐｉ’を処理区間記憶部１３から取得して第１処理ワーカ部１５２ａ〜第ｗ処理ワーカ部１５２ｗにそれぞれ割り当て、それら各処理ワーカ部１５２は、自身に割り当てられた本対象イベント検出処理区間Ｐｉ’の映像データを用いて本対象イベント検出処理を並列に実行する（ステップＳ６）。
【００９０】
ここで、図１４を参照しながら、本対象イベント検出処理の動作について詳述する。まず、自身に割り当てられた本対象イベント検出処理区間Ｐｉ’の処理開始フレームＳｉから基準イベント検出処理を開始する（ステップＳ６ａ）。
【００９１】
そして、処理終了フレームＥｉに到達した後に（ステップＳ６ｂ）、本対象イベントの検出処理結果を映像解析結果として検出結果統合部１６に送出する（ステップＳ６ｃ）。
【００９２】
次に、図２のフローチャートに戻り、検出結果統合部１６は、各処理ワーカ部１５２から送出された本対象イベントの検出結果を統合し、解析結果情報として統合結果記憶部１８に記憶する（ステップＳ７，Ｓ８）。この解析結果情報には、本対象イベントが発生している区間の開始フレームや終了フレームに係る位置情報等が含まれている。
【００９３】
このような解析結果情報を統合結果記憶部１８に記憶しておくことにより、ユーザは、データ出力装置５００を用いて本対象イベントの検出結果を出力させ、利用することができる。例えば、本対象イベント検出結果をデータ出力装置５００のディスプレイに表示させたり、他の装置で更に処理を加えて利用するためにテキストファイルで読み出す等の処理を行うことができる。
【００９４】
このとき、必要に応じて本対象イベントに関する補足情報を統合結果記憶部１８に記憶するようにしてもよい。補足情報として例えば、映像アップショット区間の中で動物体が最もアップになるフレーム位置情報を記憶する。
【００９５】
以上説明した映像解析装置１００のコンピュータ実装例を図１５に示す。同図（ａ）に示すように、解析処理管理部１４で行う解析タスク管理をマルチコアＣＰＵの１つのコア（１）で実行し、第１処理ワーカ部１５２ａ〜第３処理ワーカ部１５２ｃで行う映像解析並列処理をコア（１）に接続された複数のコア（２）〜（４）でそれぞれ実行する。
【００９６】
また、同図（ｂ）に示すように、解析処理管理部１４で行う解析タスク管理を１台のサーバで実行し、第１処理ワーカ部１５２ａ〜第３処理ワーカ部１５２ｃで行う映像解析並列処理を当該サーバに接続された複数の解析サーバ（１）〜（３）でそれぞれ実行するようにしてもよい。
【００９７】
更に、上記以外にも、マルチコアＣＰＵを持つ複数のサーバにより、映像の解析処理を並列して実行するように構成してもよい。このように、各処理ワーカ部１５２が独立して動作可能な環境であれば、処理ワーカ部１５２の構築形態はどのようなものでもよい。
【００９８】
以上説明した本実施の形態によれば、カット点検出のような基準イベントの検出を短時間で実施可能な場合に、映像データを複数の処理区間に時分割し、隣り合う処理区間との間に互いにオーバラップ区間を持たせて基準イベントの検出処理を並列に実行する１パス目の処理と、その基準イベント間の基準イベント区間を用いて本対象イベント検出を実行する際に用いる各処理区間を計算し、その各処理区間を用いて本対象イベントの検出処理を並列に実行する２パス目の処理との２段階の映像解析処理を採用しているため、本対象イベントの検出処理を効率良く高速化しつつ、高精度に行うことができる。
【００９９】
すなわち、基準イベントの検出が高速で実施可能な場合に、先に基準イベントを検出し、その基準イベントを用いて早送り方向のみシークが発生するように本対象イベント検出用の処理区間を定めるため、巻き戻し方向のシークの発生を防止し、解析処理の高速化を実現することができる。
【０１００】
また、基準イベントを跨がないことを利用して本対象イベント検出の処理区間を決定するため、本対象イベントの検出精度を保持しながらその検出処理の並列実行を実現することができる。
【０１０１】
また、時分割した処理区間の終了時点でイベント検出中である場合にのみ処理区間を延長させて次の処理区間にオーバラップ区間を発生させるため、精度の高い解析処理が可能であると共に、必要以上のオーバラップ区間を多発させることなく効率的な解析処理の並列実行を行うことができる。
【０１０２】
加えて、本対象イベント検出処理に用いる処理区間の長さが一定の処理区間基本長に収まるように定めているので、各処理ワーカ部の稼働時間が平準化されるため、効率的な解析処理を実現することができる。
【０１０３】
最後に、上述した映像解析装置は、メモリやＣＰＵ等を具備するコンピュータにより実現可能である。また、その装置内における各機能部の機能を実行するプログラムをコンピュータに搭載することにより、当該コンピュータを映像解析装置として機能させる映像解析プログラムを構築することも可能である。
【符号の説明】
【０１０４】
１００…映像解析装置
１１…映像記憶部（記憶手段）
１２…処理区間計算部（処理区間計算手段）
１３…処理区間記憶部
１４…解析処理管理部
１５…映像解析部
１５１…映像取得部
１５２…処理ワーカ部（映像解析手段）
１５２ａ〜１５２ｗ…第１処理ワーカ部〜第ｗ処理ワーカ部（映像解析手段）
１６…検出結果統合部
１７…基準イベント記憶部
１８…統合結果記憶部
３００…データ入力装置
５００…データ出力装置
Ｓ…処理ステップ
【図１】
2014039137.tif 000003
【図２】
2014039137.tif 000004
【図３】
2014039137.tif 000005
【図４】
2014039137.tif 000006
【図５】
2014039137.tif 000007
【図６】
2014039137.tif 000008
【図７】
2014039137.tif 000009
【図８】
2014039137.tif 000010
【図９】
2014039137.tif 000011
【図１０】
2014039137.tif 000012
【図１１】
2014039137.tif 000013
【図１２】
2014039137.tif 000014
【図１３】
2014039137.tif 000015
【図１４】
2014039137.tif 000016
【図１５】
2014039137.tif 000017
【図１６】
2014039137.tif 000018