(57)【要約】【課題】制御部が一律な処理で各映像解析部が必要とするフレームを渡すことができるようにし，汎用性，拡張性に優れた映像解析装置を実現する。【解決手段】映像解析部１０は，各特徴量抽出技術を実現した特徴量出力部１２とともに，画像データが逐次入力されるごとに次に必要となるフレーム番号またはフレーム時間情報である次フレーム情報を指定する次フレーム指定部１１を持つ。制御部１４では，各映像解析部１０の次フレーム指定部１１により指定されたフレームがフレームデータ取得部１３から取得された場合にのみ，その映像解析部１０に対してフレームデータを渡す。【選択図】図１
2010176240.tif 000002
【特許請求の範囲】
【請求項１】
映像をフレームごとの画像データとして取得するフレームデータ取得部と，
フレームごとの画像データを逐次入力することによって，その映像の特徴的な区間またはそれに付随する値である特徴量を出力する特徴量出力部および前記画像データが逐次入力されるごとに次に必要となるフレーム番号またはフレーム時間情報である次フレーム情報を指定する次フレーム指定部とを有する単数または複数の映像解析部と，
前記映像解析部から指定される次フレーム情報に基づき，それぞれの前記映像解析部が必要なフレームの画像データを前記フレームデータ取得部より取得して前記映像解析部に送る制御部と，
を備えることを特徴とする映像解析装置。
【請求項２】
コンピュータを，
映像をフレームごとの画像データとして取得するフレームデータ取得部と，
フレームごとの画像データを逐次入力することによって，その映像の特徴的な区間またはそれに付随する値である特徴量を出力する特徴量出力部および前記画像データが逐次入力されるごとに次に必要となるフレーム番号またはフレーム時間情報である次フレーム情報を指定する次フレーム指定部とを有する単数または複数の映像解析部と，
前記映像解析部から指定される次フレーム情報に基づき，それぞれの前記映像解析部が必要なフレームの画像データを前記フレームデータ取得部より取得して前記映像解析部に送る制御部として，
機能させるための映像解析プログラム。
【請求項３】
フレームごとの画像データを逐次入力することによって，その映像の特徴的な区間またはそれに付随する値である特徴量を出力する特徴量出力部および前記画像データが逐次入力されるごとに次に必要となるフレーム番号またはフレーム時間情報である次フレーム情報を指定する次フレーム指定部とを有する映像解析部を備える単数または複数の映像解析処理装置に対して，解析対象となるフレームの画像データを送り，映像の解析を行わせる映像解析制御装置であって，
当該映像解析制御装置またはその外部の装置が備えるフレームデータ取得部から，映像をフレームごとの画像データとしてフレームの時間順に取得する手段と，
前記映像解析処理装置から指定される次フレーム情報に基づき，前記フレームデータ取得部から取得したフレームが，前記映像解析処理装置が必要なフレームの画像データであるかどうかを判定する手段と，
前記フレームデータ取得部から取得したフレームが，前記映像解析処理装置が必要なフレームの画像データであると判定された場合に，そのフレームの画像データを前記映像解析処理装置へ送る手段と，
前記映像解析処理装置から受信した次フレーム情報を記憶する手段と，
を備えることを特徴とする映像解析制御装置。
【請求項４】
コンピュータを，前記映像制御装置が備える各手段として機能させるための映像解析制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，映像データから各種特徴量を解析するための映像解析装置，映像解析制御装置およびそれらのプログラムに関するものである。
【背景技術】
【０００２】
映像データを解析して，その映像の特徴的な区間やそれに付随する値（以下「特徴量」という）を自動的に出力する方式に関しては，従来から各種の技術が存在している。
【０００３】
特許文献１には，映像データ列から映像カット点を検出する技術が記載されており，この方法により，時間的にゆっくりとしたシーン変化を含むカット点（カット区間）を出力することができる。
【０００４】
特許文献２には，画像データ列（映像データと同じ意味で記載されている）からカメラパラメータを推定する技術が記載されており，この方法により，映像データから，パン，チルトなどと呼ばれるカメラ動作がある区間について，そのパラメータ値と共に出力することができる。
【０００５】
特許文献３には，フレーム画像の中から文字部分を画素連結領域として抽出する文字領域抽出技術が記載されており，この方法を映像データのフレーム画像に適用することにより，映像データから，一般にテロップと呼ばれている文字領域が含まれる映像区間と，そのテロップ位置情報を出力することができる。
【０００６】
特許文献４には，映像から動物体アップフレーム画像（アップショットともいう）を検出する技術が記載されておりり，この方法により，動物体がクローズアップされ比較的大きく写っている映像フレーム区間を出力することができる。
【０００７】
これらの技術に共通することは，映像を，連続する画像データ（フレームと呼ばれる）ととらえ，複数のフレームを入力データとして，それぞれ，カット，カメラワーク，テロップ，動物体アップショットなどの特徴量を算出して出力することにある。そのため，これらの技術と，単一のフレームデータ取得部（映像をフレームデータとして取得する機能）とを組み合わせ，単一の映像データに対して，様々な特徴量を同時に出力する映像解析装置あるいは映像解析プログラムを構成することは可能であった。実際に，映像からフレームデータを取得する処理は，ＣＰＵやメモリといったコンピュータ上のリソースを多く消費するため，一度のデコード処理で複数の特徴量を抽出をすることのメリットは大きい。
【０００８】
なお，映像データは，多くのフレーム画像から成り立っている。例えば，標準的な３０ｆｐｓ（フレーム／秒）の映像データは，１つ１つのフレームが約３３ｍｓｅｃ（ミリ秒）ずつの画像となる。前述した特許文献１，２，３，４等の技術を実現した場合，ＣＰＵやメモリ等の計算のために必要なリソースが多く必要となるため，実行速度や実行効率を上げるためには，３３ｍｓｅｃごとの全てのフレームを対象として計算をするのではなく，それぞれ，１００ｍｓｅｃごと，５００ｍｓｅｃごとなどの周期でフレーム画像を取得し，各技術による抽出処理をする実施形態を取ることが多い。
【０００９】
例えば，１秒以下の非常に短いカット区間というのは，そもそも利用者にとって認識できるものではなく，むしろ，瞬間的なノイズとして取り扱うべきものである。そのため，カット区間抽出については３００ｍｓｅｃごとのフレームをもとにカット点の抽出処理を行ったとしても，実用上の問題は起こりにくい。
【００１０】
カメラワークについても同様であり，特にカメラワークの特徴量抽出のほうがカットより比較的リソースを多く必要とするので，さらに区間を大きくして５００ｍｓｅｃごとの処理としたほうが，より実用的になる。
【００１１】
一方で，動物体アップショット検出は，もっともクローズアップして被写体を捕えるフレームを探索することを行うので，動物体があると判定されている区間においては，ちょうど利用者がビデオのコマ送りをしながら探すのと同様に，３３ｍｓｅｃごとの全フレームを入力対象として処理を行うことになる。
【００１２】
テロップの場合には，特許文献３の段落［００３１］から［００３７］に記載されているように，時間的に連続する複数のフレーム画像を入力し，平均化カラー画像を作成することにより，テロップの誤検出を抑制する効果があることが知られている。このため，例えば５００ｍｓｅｃごとに連続した４枚の画像を処理する，といったような制御が必要になる。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特許第２８３９１３２号公報
【特許文献２】特許第３４０８１１７号公報
【特許文献３】特許第３４６７１９５号公報
【特許文献４】特開２００６−２４４０７４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
前述したように，映像を連続するフレームととらえ，時間的に近接する複数のフレームを入力データとして特徴量を出力する技術には多様なものがあり，また，今後も同様に新たな特徴量を抽出する技術が開発されると考えられる。
【００１５】
しかしながら，これらの，個別の特徴量抽出の技術を実現した映像解析装置あるいは映像解析プログラムを組み合わせて，様々な特徴量を同時に出力する装置あるいはそのプログラムを構成することは，困難になっていく。すなわち，各特徴量抽出技術が，それぞれ，異なる間隔でのフレームデータを必要とするため，その全体を制御する装置あるいはプログラムは，その各々の間隔を管理しながら各映像解析部を呼び出さなくてはならない。さらに，未知の特徴量抽出技術が開発された場合には，それに合わせて，全体を制御する装置あるいはプログラムとなる制御部を，毎回改造しなくてはならない。
【００１６】
図７は，本発明の課題を説明するための図であり，個別の特徴量抽出の技術を組み合わせて，様々な特徴量を同時に出力する装置の構成例を示す図である。図８は，図７に示す制御部の処理フローチャートである。
【００１７】
従来技術の個別の特徴量抽出を実現する映像解析装置を組み合わせて，様々な特徴量を同時に出力する装置を考えた場合，例えば図７に示すような装置構成になると考えられる。図７において，ＣＵＴ映像解析部１０１は，特許文献１に記載されているようなカット点の検出を行うものであり，その検出結果であるカット点に関する特徴量（以下「ＣＵＴ特徴量」という）の出力機能を持つＣＵＴ特徴量出力部１０２を有する。
【００１８】
ＣＡＭ映像解析部１１１は，特許文献２に記載されているようなカメラパラメータの推定を行うものであり，その推定結果であるカメラワークに関する特徴量（以下「ＣＡＭ特徴量」という）の出力機能を持つＣＡＭ特徴量出力部１１２を有する。
【００１９】
ＴＬＰ映像解析部１２１は，特許文献３に記載されているようなテロップの検出を行うものであり，その検出結果であるテロップに関する特徴量（以下「ＴＬＰ特徴量」という）の出力機能を持つＴＬＰ特徴量出力部１２２を有する。
【００２０】
ＵＰＳ映像解析部１３１は，特許文献４に記載されているような動物体アップフレーム画像の検出を行うものであり，その検出結果である動物体アップフレーム画像に関する特徴量（以下「ＵＰＳ特徴量」という）の出力機能を持つＵＰＳ特徴量出力部１３２を有する。
【００２１】
フレームデータ取得部１４０は，圧縮符号化された映像データを，フレーム画像にデコードし，デコード結果のフレームデータを制御部１５０に渡す。制御部１５０は，フレームデータ取得部１４０から得たフレームデータを，適当なタイミングでＣＵＴ映像解析部１０１，ＣＡＭ映像解析部１１１，ＴＬＰ映像解析部１２１，ＵＰＳ映像解析部１３１に渡し，これらの各部に映像を解析させる処理を行う。
【００２２】
図８に従って，制御部１５０が行う処理について説明する。図８において，ＴＳｃｕｔは，ＣＵＴ映像解析部１０１が次に処理対象とするタイムスタンプ［ｍｓｅｃ］を保持するためのメモリ領域，ＴＳｃａｍは，ＣＡＭ映像解析部１１１が次に処理対象とするタイムスタンプを保持するためのメモリ領域，ＴＳｔｌｐは，ＴＬＰ映像解析部１２１が次に処理対象とするタイムスタンプを保持するためのメモリ領域である。ＵＰＳ映像解析部１３１は，全フレームについて解析を行うので，次に処理対象とするタイムスタンプを保持するためのメモリ領域（ＴＳｕｐｓ）は用いなくてもよい。Ｃｔｌｐは，この後連続して処理対象とするフレーム画像数のカウンタを保持するためのメモリ領域である。
【００２３】
制御部１５０は，最初に解析対象の映像データが格納された映像ファイルのオープンやバッファ領域の確保などの各機能の初期化を行う（ステップＳ１０１）。次に，各タイムスタンプ変数ＴＳｘｘｘとカウンタＣｔｌｐの値を全て０にセットする（ステップＳ１０２）。その後，フレームデータ取得部１４０からフレームデータを取得する（ステップＳ１０３）。
【００２４】
続いて，制御部１５０は，映像ファイルのデータが終了するまで，以下に説明するステップＳ１０５からステップＳ１１６までの処理とステップＳ１０３の処理を繰り返す（ステップＳ１０４）。
【００２５】
取得したフレームのタイムスタンプをｔ［ｍｓｅｃ］とする。まず，タイムスタンプｔがＴＳｃｕｔになったかどうかを判定する（ステップＳ１０５）。ＴＳｃｕｔになっていなければ，ステップＳ１０８へ進む。ＴＳｃｕｔになったならば，ＣＵＴ映像解析部１０１にフレームデータを渡す（ステップＳ１０６）。その後，タイムスタンプｔに３００を加えた値をＴＳｃｕｔに設定する（ステップＳ１０７）。すなわち，次の処理対象フレームを３００ｍｓｅｃ後のフレームに設定する。
【００２６】
続いて，タイムスタンプｔがＴＳｃａｍになったかどうかを判定する（ステップＳ１０８）。ＴＳｃａｍになっていなければ，ステップＳ１１１へ進む。ＴＳｃａｍになったならば，ＣＡＭ映像解析部１１１にフレームデータを渡す（ステップＳ１０９）。その後，現在のタイムスタンプｔに５００を加えた値をＴＳｃａｍに設定する（ステップＳ１１０）。
【００２７】
次に，Ｃｔｌｐが０より大きいか，またはタイムスタンプｔがＴＳｔｌｐになったかどうかを判定する（ステップＳ１１１）。判定結果が“偽”の場合には，ステップＳ１１６へ進む。判定結果が“真”であれば，ＴＬＰ映像解析部１２１にフレームデータを渡す（ステップＳ１１２）。その後，Ｃｔｌｐが３よりと小さいかどうかを判定し（ステップＳ１１３），３より小さければ，Ｃｔｌｐを１カウントアップする（ステップＳ１１４）。そうでなければ，現在のタイムスタンプｔに５００を加えた値をＴＳｔｌｐに設定し，Ｃｔｌｐに０をセットする（ステップＳ１１５）。
【００２８】
ＵＰＳ映像解析部１３１に対しては，取得したフレームのフレームデータを渡す（ステップＳ１１６）。ＵＰＳ映像解析部１３１は，全フレームの解析を行うことになる。その後，制御部１５０は，ステップＳ１０３の処理に戻り，フレームデータ取得部１４０から次のフレームのフレームデータを取得し，同様に処理を繰り返す。
【００２９】
映像ファイルが終了したならば（ステップＳ１０４），バッファ領域の解放や映像ファイルのクローズなどの各機能の終了処理を行う（ステップＳ１１７）。
【００３０】
以上の処理内容から明らかなように，単に従来の種々の映像解析部１０１〜１３１に対してフレームデータを渡す制御部１５０を付加しただけでは，制御部１５０のフロー中に，各映像解析部１０１〜１３１固有の処理が入り，煩雑な制御が必要になる。このため，制御部１５０は，統一的な一律な処理ができなくなる。このことは，このような全体としての映像解析装置あるいは映像解析プログラムの拡張性を大きく損ねることとなる。
【００３１】
本発明は上記課題の解決を図り，種々の映像解析部に対して，制御部が一律な処理で各映像解析部が必要なフレームを渡すことができる機構を提供することにより，汎用性，拡張性に優れた映像解析システムの構築を可能にすることを目的としている。
【課題を解決するための手段】
【００３２】
上記課題を解決するために，本発明では，映像解析部として，各特徴量抽出技術を実現した特徴量出力機能とともに，次フレーム指定機能を設け，制御部では，その次フレーム指定機能により指定されたフレームがフレームデータ取得部から取得された場合にのみ，その映像解析部に対してフレームデータを渡すという構成をとる。
【００３３】
詳しくは，本発明に係る映像解析装置は，映像をフレームごとの画像データとして取得するフレームデータ取得部と，フレームごとの画像データを逐次入力することによって，その映像の特徴的な区間またはそれに付随する値である特徴量を出力する特徴量出力部および画像データが逐次入力されるごとに次に必要となるフレーム番号またはフレーム時間情報である次フレーム情報を指定する次フレーム指定部とを有する単数または複数の映像解析部と，映像解析部から指定される次フレーム情報に基づき，それぞれの映像解析部が必要なフレームの画像データをフレームデータ取得部より取得して映像解析部に送る制御部とを備える。
【００３４】
これらの各部は，単一のコンピュータで実現することもできるが，映像解析部と制御部とを，ネットワークで接続される異なるコンピュータ上に実装する装置構成とすることもできる。その際に，フレームデータ取得部を制御部と同じコンピュータ上に実装することも，また，さらに異なるコンピュータ上に実装することも可能である。
【発明の効果】
【００３５】
本発明によれば，制御部では，各映像解析部に固有なフレームデータの取得間隔を事前に知ることなく，各映像解析部が必要なフレームを渡す機構を実現することができる。そのため，未知の特徴量抽出技術が開発された場合でも，制御部に特別な改造を施すことなく，複数の特徴量を同時に出力する機構を容易に実現することが可能となる。
【図面の簡単な説明】
【００３６】
【図１】本発明の実施形態に係る映像解析装置の構成例を示す図である。
【図２】フレームデータ取得部の処理フローチャートである。
【図３】制御部の処理フローチャートである。
【図４】カット点を検出する映像解析部の処理フローチャートである。
【図５】テロップを検出する映像解析部の処理フローチャートである。
【図６】ネットワークシステムで構成される映像解析装置の例を示す図である。
【図７】本発明の課題を説明する装置の構成例を示す図である。
【図８】図７に示す制御部の処理フローチャートである。
【発明を実施するための形態】
【００３７】
以下では主に，本発明の各部を，ＣＰＵやメモリなどのコンピュータのハードウェアとソフトウェアプログラムを用いて実施する場合を例として述べる。
【００３８】
図１は，本発明の実施形態に係る映像解析装置の構成例を示す。映像解析装置１は，映像データからそれぞれ異なる特徴量を抽出する複数の映像解析部１０［０］，１０［１］，１０［３］，…と，解析対象の映像をフレームごとの画像データとして取得するフレームデータ取得部１３と，制御部１４とから構成される。なお，この映像解析装置１は汎用性を有するため，映像解析部１０が複数ではなく単数であっても，正常に機能する。
【００３９】
各映像解析部１０は，それぞれ，次フレーム指定部１１［０］，１１［１］，１１［２］，…と，特徴量出力部１２［０］，１２［１］，１２［２］，…とを備える。
【００４０】
次フレーム指定部１１は，映像解析部１０にフレームが逐次入力されるごとに，次に必要となるフレーム番号またはフレーム時間情報の次フレーム情報を，制御部１４に通知する機能を有する。また，特徴量出力部１２は，フレームごとの画像データを逐次入力することによって，その映像の特徴的な区間やそれに付随する値などの特徴量を出力する機能を有する。
【００４１】
制御部１４は，映像解析部１０から指定される次フレーム情報に基づき，それぞれの映像解析部１０が必要なフレームのデータをフレームデータ取得部１３から取得して映像解析部１０に送る制御機能を持つ。
【００４２】
以上の本実施形態における映像解析部１０，フレームデータ取得部１３，制御部１４は，この例では単一のコンピュータ上で実行されるソフトウェアモジュールによって構成されるものであり，各構成要素間の動作は，そのソフトウェアの関数コールの形式で実行されるものとして説明する。
【００４３】
フレームデータ取得部１３は，ＭＰＥＧなどの形式で符号化・圧縮化等の処理がなされたファイルを入力し，フレーム画像にデコードする機能を有するソフトウェアモジュールによって構成される。このようなソフトウェアは数多く実現されている。
【００４４】
図２に，フレームデータ取得部１３の処理フローチャートを示す。フレームデータ取得部１３は，図２に示すように，主に「初期化」「フレーム取得」「終期化」の各フェーズからなり，上位のソフトウェア（制御部１４）から逐次関数コールで呼び出されることによって，機能提供がなされる。具体的には，以下のとおりである。
【００４５】
まず，制御部１４が，対象とする映像ファイル名を引数として指定して，「初期化」関数を呼び出すと，フレームデータ取得部１３は引数で指定されたファイルをオープンし（ステップＳ１０），フレームデータ取得部１３の内部で必要なバッファ領域を確保する（ステップＳ１１）といった初期化動作を行う。
【００４６】
以降，制御部１４から，制御部１４内の格納域アドレスを引数とする「フレーム取得」関数呼び出しが連続的に行われ，フレームデータ取得部１３は呼び出されるごとに映像ファイルからデコードされたフレームデータを１枚ずつ内部バッファ領域に読み出す（ステップＳ１２）。映像ファイルが終了した場合には，ファイル終了を関数呼び出し元の制御部１４に通知する（ステップＳ１３）。映像ファイルからフレームデータが得られた場合には，その１フレーム分のデータを指定された制御部１４内の格納域アドレスに展開し（ステップＳ１４），制御部１４に返却する。返却されるフレームデータには，タイムスタンプと呼ばれる映像ファイル中のフレーム画像の時間的インデックス情報が含まれる。フレームデータ取得部１３の実施方法によっては，時間的情報ではなく，先頭から何フレーム目かを表す番号のインデックス情報のみが含まれる場合もあるが，その場合には，フレームレート（単位時間当たりのフレーム数）の逆数を掛けることによって，タイムスタンプと同等に扱うことができる。
【００４７】
映像の解析が全て終了し，制御部１４から「終期化」関数の呼び出しがあると，フレームデータ取得部１３は，映像ファイルをクローズし（ステップＳ１５），また初期化時に確保したバッファ領域を解放して（ステップＳ１６），処理を終了する。
【００４８】
制御部１４の処理フローを図３に示す。本発明では，フレームを入力データとして特徴量を出力する複数の映像解析部１０の一般化が可能であるため，それらＮ個の映像解析部１０を，映像解析部１０［０］，映像解析部１０［１］，…，映像解析部１０［Ｎ−１］とする。具体的には，その使用目的に合わせて，例えば，映像解析部１０［０］は，カット点検出映像解析部であり，映像解析部１０［１］は，テロップ検出映像解析部であり，…といったようになる。このような定義は，例えば，映像解析装置１の設定ファイル（図示省略）に記述しておき，制御部１４の初期化時にその設定ファイルを読み込んで，指定するといった実施方法を採ることができる。
【００４９】
制御部１４では，このようなＮ個の映像解析部１０に対応するＮ個の配列ＴＳ［］を，メモリ領域１５に持つ。この配列値を用いて，図３のステップＳ２５において，実際に各映像解析部１０にフレームデータを渡して解析処理の関数コールを行うか否かを決定することができる。解析処理関数コールを行った場合には，ステップＳ２７において，その戻り値（あるいは別の実施例の場合には，出力パラメータ値）で，配列ＴＳ［ｉ］の値を更新する。この処理により，次にその映像解析部１０が必要とするフレームを，制御部１４で汎用的に管理することができる。
【００５０】
この制御部１４が実行する処理は，以下のとおりである。まず最初に各機能の初期化を行う（ステップＳ２０）。ここでは，前述した「初期化」関数の呼び出し，フレームデータ格納域として用いる内部バッファ領域の確保，また必要に応じて各映像解析部１０への初期化指示などを行う。また，メモリ領域１５のタイムスタンプ配列ＴＳ［０］〜ＴＳ［Ｎ−１］を全て０にセットする（ステップＳ２１）。
【００５１】
その後，制御部１４は，内部バッファ領域の格納域アドレスを引数として「フレーム取得」関数呼び出しを行い，フレームデータ取得部１３からフレームデータを取得する（ステップＳ２２）。関数呼び出しの戻り値が「ファイル終了」かどうかを判定し（ステップＳ２３），「ファイル終了」であれば，ステップＳ２９へ進む。                            
【００５２】
戻り値が「ファイル終了」ではなく，「正常取得」であり，フレームデータが内部バッファ領域に格納されたならば，ループカウンタｉを０からＮ−１までインクリメントしながら（ステップＳ２４），以下のステップＳ２５〜Ｓ２７の処理を，ｉ＝Ｎ−１になるまで繰り返す（ステップＳ２８）。
【００５３】
取得したフレームのタイムスタンプをｔ［単位：ｍｓｅｃ］とする。繰り返し処理では，まず，タイムスタンプｔがＴＳ［ｉ］以上かどうかを判定する（ステップＳ２５）。ｔがＴＳ［ｉ］より小さければ，ステップＳ２６，Ｓ２７をスキップする。タイムスタンプｔがＴＳ［ｉ］以上であれば，ｉ番目の映像解析部１０［ｉ］へ内部バッファ領域に格納されたフレームデータを渡す（ステップＳ２６）。その後，映像解析部１０［ｉ］の次フレーム指定部１１［ｉ］から指定される次フレーム情報の値をタイムスタンプ配列ＴＳ［ｉ］にセットする（ステップＳ２７）。
【００５４】
以上の繰り返し処理がｉ＝Ｎ−１まで終了したならば（ステップＳ２８），ステップＳ２２へ戻り，次のフレームデータの取得を繰り返す。
【００５５】
フレームデータ取得部１３から「ファイル終了」が通知されたならば，前述した「終期化」関数の呼び出し，フレームデータ格納域として用いた内部バッファ領域の解放，また必要に応じて各映像解析部１０への終了処理指示などの各機能の終了処理を行い（ステップＳ２９），処理を終了する。
【００５６】
次に，映像解析部１０の処理フローを図４，図５の例に従って説明する。ここでは，特許文献１の映像解析技術を利用した例を図４に示し，特許文献３の映像解析技術を利用した例を図５に示す。
【００５７】
図４に示す映像解析部１０［０］は，映像解析によりカット点検出を行うものであり，制御部１４から１フレーム分のフレームデータを引数とする解析処理の指示があると，特許文献１に記載されているようなカット点の抽出処理を実行する（ステップＳ３０）。カット点抽出処理によりカット点が検出されたかどうかを判定し（ステップＳ３１），カット点が検出されたならば，特徴量出力部１２［０］を呼び出す。そうでなければ，次フレーム指定部１１［０］の処理（ステップＳ３３）へ進む。
【００５８】
特徴量出力部１２［０］は，検出されたカット点の情報を所定の結果ファイル（または結果格納メモリ域）に出力する（ステップＳ３２）。
【００５９】
次フレーム指定部１１［０］は，ｔに３００［ｍｓｅｃ］を加えた値を次フレーム情報として設定し（ステップＳ３３），その次フレーム情報を戻り値として制御部１４に返却する。次フレーム情報をｔ＋３００として，制御部１４に通知することにより，３００ｍｓｅｃごとのフレームに対してカット点の検出処理を行うことができるようになる。
【００６０】
図５に示す映像解析部１０［１］は，映像解析によりテロップの検出を行うものである。メモリ領域１６に用意されたカウンタＣｔｌｐの初期値は０に設定されている。この例では，５００ｍｓｅｃごとに連続した４枚のフレーム画像を入力し，平均化カラー画像を作成して，テロップを検出するものとする。
【００６１】
制御部１４から１フレーム分のフレームデータを引数とする解析処理の指示があると，まず，カウンタＣｔｌｐの値が３より小さいかどうかを判定する（ステップＳ４０）。３より小さい場合には，特許文献３に記載されている方法による複数フレーム平均化処理を実行する（ステップＳ４１）。一方，カウンタＣｔｌｐの値が３になった場合には，特許文献３に記載されている方法によるテロップ検出処理を実行する（ステップＳ４２）。テロップが検出された場合には（ステップＳ４３），特徴量出力部１２［１］を呼び出し，検出されたカット点の情報を所定の結果ファイル（または結果格納メモリ域）に出力する（ステップＳ４４）。
【００６２】
その後，次フレーム指定部１１［１］の処理へ進み，カウンタＣｔｌｐの値が３より小さいかどうかを判定する（ステップＳ４５）。３より小さい場合には，カウンタＣｔｌｐの値を１カウントアップし（ステップＳ４６），ｔに１［ｍｓｅｃ］を加えた値を次フレーム情報として設定し（ステップＳ４７），その次フレーム情報を戻り値として制御部１４に返却する。このように，次フレーム情報をｔ＋１とすることによって，タイムスタンプが現在よりも少しでも進めば，再度，映像解析部１０［１］が制御部１４から呼び出されるようになるため，連続してフレームデータが渡されることになる。
【００６３】
一方，カウンタＣｔｌｐの値が３になったならば，カウンタＣｔｌｐの値を０に戻し（ステップＳ４８），ｔに５００［ｍｓｅｃ］を加えた値を次フレーム情報として設定し（ステップＳ４９），その次フレーム情報を戻り値として制御部１４に返却する。
【００６４】
以上のようにして，次フレーム情報を制御部１４に通知することにより，５００ｍｓｅｃごとに４枚のフレームデータを入力し，テロップの検出処理を行うことができるようになる。
【００６５】
ここでは，映像解析部１０の次フレーム指定部１１により指定された次フレーム情報については，映像解析部１０を呼び出す解析処理関数の戻り値として制御部１４に返却される例を説明したが，別の実施例としては，解析処理関数コールにおいて，出力用のパラメータを設け，その出力用パラメータに次フレーム情報を設定してリターンするという方法を採ることも可能である。
【００６６】
カット点検出とテロップ検出の映像解析部１０の例を説明したが，他の種類の特徴量を抽出する映像解析部１０についても同様に，次フレーム指定部１１によって，次に必要となるフレーム番号やフレーム時間情報などの次フレーム情報を制御部１４に通知する手段を設けることにより，制御部１４では，フレームデータの映像解析部１０への引渡し処理を一律に実行することができるようになる。
【００６７】
以上の実施形態として，説明を分かりやすくするため，図１に示す各部の機能を，単一のコンピュータに実装する場合の例を説明したが，他の実施形態としては，各機能を別々のコンピュータ上で実行されるソフトウェアモジュールによって実現し，これらのコンピュータは，ＬＡＮを通じて相互に通信ができるものとすることもできる。
【００６８】
図６に，映像解析装置をネットワークシステムを用いて構築する例を示す。本実施形態における映像解析装置は，それぞれ異なるコンピュータ（ＣＰＵおよびメモリ等）で実現される映像解析制御装置２０と，映像解析処理装置３０［０］，３０［１］，３０［２］，…と，ＬＡＮなどのネットワーク４０とから構成される。映像解析制御装置２０は，図１で説明したフレームデータ取得部１３と制御部１４とを有する。
【００６９】
すなわち，映像解析制御装置２０の制御部１４は，フレームデータ取得部１３から映像をフレームごとの画像データとしてフレームの時間順に取得する手段と，映像解析処理装置３０から指定される次フレーム情報に基づき，フレームデータ取得部１３から取得したフレームが，映像解析処理装置３０が必要なフレームの画像データであるかどうかを判定する手段と，フレームデータ取得部１３から取得したフレームが，映像解析処理装置３０が必要なフレームの画像データであると判定された場合に，そのフレームの画像データを映像解析処理装置３０へ送る手段と，映像解析処理装置３０から受信した次フレーム情報を記憶する手段とを備える。
【００７０】
各映像解析処理装置３０は，図１で説明した映像解析部１０を有する。映像解析制御装置２０および各映像解析処理装置３０は，ネットワーク４０を通じて，命令とフレームデータや次フレーム情報等のデータを送受信することで，単一のコンピュータによって映像解析装置を実現する場合と同様に，本発明を実施することができる。もちろん，フレームデータ取得部１３と制御部１４とを，異なるコンピュータに実装して本発明を実施することも可能である。
【符号の説明】
【００７１】
１    映像解析装置
１０  映像解析部
１１  次フレーム指定部                                                          １２  特徴量出力部
１３  フレームデータ取得部
１４  制御部
【図１】
2010176240.tif 000003
【図２】
2010176240.tif 000004
【図３】
2010176240.tif 000005
【図４】
2010176240.tif 000006
【図５】
2010176240.tif 000007
【図６】
2010176240.tif 000008
【図７】
2010176240.tif 000009
【図８】
2010176240.tif 000010