(57)【特許請求の範囲】
【請求項１】
複数のシーケンシャルな画像フレームより構成される動画像を表わす動画データと、前記各フレームのそれぞれに対応づけられるシーケンシャルな音声データとを入力し、入力した動画データの中から、前記動画像に含まれる場面毎に検索用データを抽出する動画検索システムにおいて、
入力する前記動画データの内容に基づいて、前記各場面毎に、当該場面を構成するフレームを検出する場面切替検出手段と、
入力する前記音声データの音量を、対応するフレーム毎に検出する音量検出手段と、
前記場面切替検出手段により検出された各場面について、前記音量検出手段により予め定められた値以上の音量が検出されたフレームを含む動画データを、当該各場面についての前記検索用データとして当該場面から抽出する検索用データ抽出手段と、
を備え、
前記検索用データ抽出手段は、
前記検索用データを抽出する場面の最大数として指示された数以下に、前記検索用データを抽出する場面の数を制限することを特徴とする動画検索システム。
【請求項２】
複数のシーケンシャルな画像フレームより構成される動画像を表わす動画データと、前記各フレームのそれぞれに対応づけられるシーケンシャルな音声データとを入力し、入力した動画データの中から、前記動画像に含まれる場面毎に検索用データを抽出する動画検索システムにおいて、
入力する前記動画データの内容に基づいて、前記各場面毎に、当該場面を構成するフレームを検出する場面切替検出手段と、
入力する前記音声データの音量を、対応するフレーム毎に検出する音量検出手段と、
前記場面切替検出手段により検出された各場面について、前記音量検出手段が検出した各フレーム毎の音量に基づいて、予め定められた間隔離れたフレームに対する音量変化が予め定められた値以上であるフレームを含む動画データを、当該各場面についての前記検索用データとして当該場面から抽出する検索用データ抽出手段と、
を備え、
前記検索用データ抽出手段は、
前記検索用データを抽出する場面の最大数として指示された数以下に、前記検索用データを抽出する場面の数を制限することを特徴とする動画検索システム。
【請求項３】
請求項１または２記載の動画検索システムにおいて、
前記検索用データ抽出手段は、
前記場面切替検出手段により検出された場面のうち、前記音量検出手段により検出された音量に基づいて前記場面中における平均音量を算出する算出手段を備え、
該算出手段により算出された平均音量が予め定められた音量以上の場面についてのみ検索用データを抽出することを特徴とする動画検索システム。
【請求項４】
請求項１記載の動画検索システムにおいて、
前記検索用データ抽出手段は、
前記場面切替検出手段により検出された各場面について、最大音量を有するフレームを検出する検出手段を備え、
該検出手段により検出されたフレームを含む動画データを、前記各場面についての前記検索用データとして抽出することを特徴とする動画検索システム。
【請求項５】
請求項２記載の動画検索システムにおいて、
前記検索用データ抽出手段は、
前記場面切替検出手段により検出された各場面について、予め定められた間隔の離れたフレームに対する音量変化が最大であるフレームを含む動画データを、当該各場面についての前記検索用データとして抽出することを特徴とする動画検索システム。
【請求項６】
請求項１または２記載の動画検索システムにおいて、
前記検索用データ抽出手段は、
前記場面切替検出手段により検出された各場面から抽出するフレームの数を、当該各場面から抽出するフレームの最大数として指示された数以下に制限することを特徴とする動画検索システム。
【請求項７】
複数のシーケンシャルな画像フレームより構成される動画像を表わす動画データと、前記各フレームのそれぞれに対応づけられるシーケンシャルな音声データとを入力し、入力した動画データの中から、前記動画像に含まれる場面毎に検索用データを抽出する動画検索システムにおいて、
入力する前記動画データの内容に基づいて、前記各場面毎に、当該場面を構成するフレームを検出する場面切替検出手段と、
入力する前記音声データの音量を、対応するフレーム毎に検出する音量検出手段と、
前記場面切替検出手段により検出された各場面について、前記音量検出手段により予め定められた値以上の音量が検出されたフレームを含む動画データを、当各場面についての前記検索用データとして当該場面から抽出する第１の検索用データ抽出手段と、
前記場面切替検出手段により検出された各場面について、前記音量検出手段が検出した各フレーム毎の音量に基づいて、予め定められた間隔離れたフレームに対する音量変化が予め定められた値以上であるフレームを含む動画データを、当該場面についての前記検索用データとして当該場面から抽出する第２の検索用データ抽出手段と、
前記第１の検索用データ抽出手段または第２の検索用データ抽出手段の一方を、外部からの指示により切替て有効化する手段と、
を備え、
前記第１及び第２の検索用データ抽出手段は、
前記検索用データを抽出する場面の最大数として指示された数以下に、前記検索用データを抽出する場面の数を制限することを特徴とする動画検索システム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、映像を記憶している媒体から利用者が所定の場面についての映像を検索する、動画検索システムおよびその方法に関するものである。
【０００２】
【従来の技術】
近年、マルチメディアシステムの普及に伴い、ＡＶデータを扱うシステムが次々と開発されはじめている。ここでＡＶデータとは、動画像を表わす動画データと音声データを合わせ持ったデータを指す。ＡＶデータの形式としては、動画データと音声データを時間を基準として並列管理している形式が主流をなしている。例えばＡｐｐｌｅ  Ｃｏｍｐｕｔｅｒ社のＱｕｉｃｋＴｉｍｅでは、動画データや音声データを別々のトラックに入れ、それらのトラックを動じにアクセスしながら、音声を伴った動画を、再生している。
【０００３】
まず、動画データの符号化について説明する。動画データは、音声データと比較すると、単位時間当りの情報量がきわめて多い。しかし、一般に連続した動画では、前後の画像と注目している画像とはよく似ているので、データとして見ると冗長性が非常に多い。そこで、ディジタル的に高能率符号化を行い、必要な情報量を大きく削減することができる。現在、高能率符号化の手法としては、ＩＳＯ（国際標準化機構）／ＩＥＣ（国際電気標準会議）のＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）によって定められた国際標準草案ＭＰＥＧ１が主流である。本特許はＡＶデータの検索を行うためのものなので、膨大な量のＡＶデータを扱うことが考えられる。必然的にそのＡＶデータに高能率符号化が施されている可能性も十分有り得る。そこで、まずＭＰＥＧ１の符号化方式について、図１０を用いて説明する。
【０００４】
先に述べたように、一般的に連続した動画では、前後の画像と注目している画像とはよく似ている。そこでＭＰＥＧ１では、例えば画像１００４０を符号化しようとする時には、時間的に前方の画像１００１０との差分を取り、その差分値を符号化してＰピクチャ（前方予測符号化画像）１００８０とする。また、画像１００２０を符号化しようとする時には、時間的に前方の画像１００１０か、後方の画像１００４０、もしくは前方と後方から作られた補間画像との差分を取り、その差分値を符号化してＢピクチャ（両方向予測符号化画像）１００６０とする。同様に画像１００３０を符号化しようとする時にも、画像１００１０と１００４０からＢピクチャ１００７０をつくる。このように符号化することにより、時間軸方向の冗長度を減らして、情報量を少なくしている。また、常に差分を符号化するのではなく、例えば入力画像１００１０をそのまま符号化して、Ｉピクチャ（フレーム内符号化画像）１００５０とすることもある。
【０００５】
また、ＭＰＥＧ１では単に同じ位置の差をとるだけでなく、動き補償を使用する。これは、マクロブロック単位で、符号化しようとする画像の前画像の中で、符号化しようとするブロックと一番差分が少ないブロックを探索し、それとの差分をとることにより、さらに送らなければならないデータを削減する手法をいう。ここで、マクロブロックとは１６×１６画素のブロックである。実際には、Ｐピクチャでは動き補償後の予測画との差分をとったものと、差分をとらないものの二者のうちデータ量の少ないものをマクロブロック単位に選択して符号化する。しかしこれでもまだ、物体の動いたうしろから出てきた部分に関しては、多くのデータを送らなければならない。そこでＢピクチャでは、すでに復号化された動き補償後の時間的に前方だけでなく、後方またはその両者から作った補間画像との差分をとったものと、差分をとらないものの四者のうち一番データ量の少ないものを同じくマクロブロック単位に選択して符号化する。このようにすれば、ほとんどのデータは送らなくても済む。
【０００６】
ＭＰＥＧ１も、動画データや音声データを別々のトラックに入れ、それらのトラックを同時にアクセスして、音声を伴った動画を再生している。従って、例えば、ある時間の音声データに対応する動画データを抽出することも可能である。
【０００７】
ところで、このようなＡＶデータを用いたシステム、特にテキスト、グラフィック、サウンド等、各種データを利用してプレゼンテーション用などのアプリケーションを作成するオーサリングシステムにおいては、ＡＶデータの検索とその表示が重要な問題となる。なぜなら、ＡＶデータは他のデータに比べ、再生するためのデータ読み込み処理に必要とされる時間が長い上に、ＡＶデータそのものの再生時間も長い可能性があるからである。
【０００８】
従来、ＡＶデータの検索を行うシステムにおいて、希望するデータを取り出す機構の一つとしては、予め登録しておいたブラウジング（拾い読み）用のデータを、使用者の指示により個々にまたは複数個一覧表示するブラウジング検索があった。この検索方式では、ブラウジング用のデータを見ることにより短時間に動画の内容が把握できるため、ＡＶデータの検索方式としては優れた方式である。
【０００９】
ところで、ブラウジング検索方式の問題点としては、予め検索用のデータを設定しておく必要があるので、その設定作業に非常に手間がかかるという点が挙げられる。この問題点を解決するために、場面切替の発生部分を検出し、その前後いずれかのフレームを検索用の画像として検索リストに抽出、検索時にはそれらを一覧表示する、特開平３−２９２５７２号公報に記載の技術がある。ここでフレームとは、動画データを構成する最小単位の要素の静止画像である。場面（シーン）とは、被写体が連続的に撮影されているフレームの集合体であると定義する。場面切替の発生部分とは、異なる２場面の接続する部分を指すものとする。例えば一般的なテレビ動画では、１秒間は３０フレームの静止画像で構成されている。この方式では、次に検出される場面切替部分までの時間が一定時間以下の場面切替部分を除いて抽出することも可能である。この方式を用いれば、１場面につき１フレームの検索画像を抽出し、検索用のデータとして利用することができる。
【００１０】
【発明が解決しようとする課題】
しかしながら、上記公報に記載の技術においては、ＡＶデータが沢山の場面数を持つ場合には、検索対象となる画像数もそれだけ多くなるので、検索に時間を要するという問題がある。つまり、単に場面切替の生じたフレームを検索用の画像とするだけでは、動画検索用システムおよびその方法としては不十分である。
【００１１】
この発明は、重要な場面については、一場面につき、複数フレームの検索画像を抽出し、きめ細かな検索データの抽出を行うことを目的とする。
【００１２】
また、この発明は、重要でない場面については、場面から検索画像を抽出せずに、検索用データ数の削減を行うことを目的とする。
【００１３】
【課題を解決するための手段】
上記課題を解決するために、本発明によれば、
複数のシーケンシャルな画像フレームより構成される動画像を表わす動画データと、前記各フレームのそれぞれに対応づけられるシーケンシャルな音声データとを入力し、入力した動画データの中から、前記動画像に含まれる場面毎に検索用データを抽出する動画検索システムにおいて、
入力する前記動画データの内容に基づいて、前記各場面毎に、当該場面を構成するフレームを検出する場面切替検出手段と、
入力する前記音声データの音量を、対応するフレーム毎に検出する音量検出手段と、
前記場面切替検出手段により検出された各場面について、前記音量検出手段により予め定められた値以上の音量が検出されたフレームを含む動画データを、当該各場面についての前記検索用データとして当該場面から抽出する検索用データ抽出手段と、
を備え、
前記検索用データ抽出手段は、
前記検索用データを抽出する場面の最大数として指示された数以下に、前記検索用データを抽出する場面の数を制限することを特徴とする動画検索システムを提供する。
【００１４】
また、
複数のシーケンシャルな画像フレームより構成される動画像を表わす動画データと、前記各フレームのそれぞれに対応づけられるシーケンシャルな音声データとを入力し、入力した動画データの中から、前記動画像に含まれる場面毎に検索用データを抽出する動画検索システムにおいて、
入力する前記動画データの内容に基づいて、前記各場面毎に、当該場面を構成するフレームを検出する場面切替検出手段と、
入力する前記音声データの音量を、対応するフレーム毎に検出する音量検出手段と、
前記場面切替検出手段により検出された各場面について、前記音量検出手段が検出した各フレーム毎の音量に基づいて、予め定められた間隔離れたフレームに対する音量変化が予め定められた値以上であるフレームを含む動画データを、当該各場面についての前記検索用データとして当該場面から抽出する検索用データ抽出手段と、
を備え、
前記検索用データ抽出手段は、
前記検索用データを抽出する場面の最大数として指示された数以下に、前記検索用データを抽出する場面の数を制限することを特徴とする動画検索システムを提供する。
【００１５】
【作用】
まず、ＡＶデータについて説明する。ＡＶデータとは、動画像を表わす動画データと、対応する音声を表わす音声データとを合わせ持ったデータである。
【００１６】
ＡＶデータに対し、場面切替の発生部分と、各フレームの音量とをそれぞれ検出する。これらの検出した情報を元に、ＡＶデータから必要なフレームを抽出し、これから検索用データを作成して表示する。
【００１７】
即ち、動画検索用データの生成の為の基準として、場面切替だけでなく音声データについても着目する。なぜなら、音量の大きい部分や音量変化の激しい部分は、ＡＶデータにとって、より特徴的な部分であると考えられるからである。動画検索用データは、フレーム中から検索の為に必要な部分を選択し、それを結合することにより生成する。
【００１８】
ＡＶデータは、通常複数のシーンから構成されており、それぞれのシーンの再生時間に応じて、その内容の重要度も異なる。そこで、各シーンの再生時間に応じて、以下のように動画検索用データを抽出する。
【００１９】
再生時間の短いシーンからは、基本的には意味を持たないと判断して検索用データを抽出しない。ただし、該シーンの平均音量が一定値以上のものについては、何らかの意味を持つものとして、該シーン全てについて検索用データを抽出する。
【００２０】
再生時間の長いシーンは、何らかの意味を持つものと判断して、特徴部分を１つ抽出する。ただし、シーンが非常に長い場合にも特徴部分が１つしか抽出されないといった事態を避けたい場合には、検索者の指示により、同一シーン内から複数の特徴部分を抽出できるようにする。さらにこの場合、以下の２つの機能の内のいづれかを選択できるようにする。
【００２１】
（１）複数の特徴部分を抽出したい場合には、一定音量以上の全てのフレームを抽出する。
【００２２】
（２）特徴部分を１つだけ抽出したい場合には、該シーン中の最大音量を示すフレームを抽出する。
【００２３】
再生時間が中間的な長さのシーンは、平均音量が一定値以上であれば、何らかの意味を持つものとして、該シーン中の最大音量を示す部分を抽出する。平均音量が一定値未満であっても、該シーン中に一定音量差以上の音量変化部分が存在すれば、何らかの意味を持つものと判断して、該シーン中の最大の音量変化を示す部分を抽出する。それ以外のシーンは、特に意味の無いものと判断して、抽出しない。
【００２４】
ＡＶデータは、複数のフレームによって構成されており、それぞれのフレームごとにある大きさの最大，最小，平均等の音量的特徴を持っている。シーン中の音量変化を調べる場合は、あるフレームの音量を、そのフレームとは異なるフレームの音量と比較しなければならない。そこで、シーン中の音量変化を調べる場合に、以下のように行なう。
【００２５】
まず、音量変化を調べる場合に、すぐ前のフレームを差分検出の対象としたのでは、ノイズの影響により、音量差分が最大の部分を正確に判定できない場合がある。そこで、何フレーム前の音量を差分検出時の比較対象とするかを検索者が設定できるようにする。
【００２６】
さらに、音量変化の最大部分の検出は、音量の増加が最大の部分を検出したい場合と、音量の変化が最も大きい部分、すなわち音量差分の絶対値が最大の部分を検出したい場合の２通りがある。これら２通りの内のどちらを選択するかは、検索者が設定できるようにする。
【００２７】
また、検索用データは複数の特徴場面から抽出されたフレームを結合することにより構成される。しかし、検索用データ生成時に検索用データを大きくとり過ぎると、検索者が参照しなければならない画像数が増えるので、検索のために必要な時間も多くなる。そこで、検索用データを必要以上に抽出し過ぎないようにするために、以下のようにする。
【００２８】
まず、検索用データを抽出する各場面から抽出されるを構成するフレームの数は、検索者が決められるように、抽出時に特徴部分の前後何フレームを抽出するかを設定できるようにする。
【００２９】
また、検索用データが大き過ぎる場合、検索者が参照しなければならない画像数が増えるので、検索のために必要な時間も多くなる。そこで、大き過ぎる検索用データを減らすために、以下のようにする。
【００３０】
まず、検索用データの抽出を許容しうる最大の場面数を、検索者が設定できるようにしておく。設定場面数よりも検索用データを抽出する場面数が大きい場合には、検索用データを抽出する場面数を減らして、設定場面数以下にする。この場合に、最大音量が最小の場面と音量差分が最小の場面のどちらを先に削除するかを、検索者が設定できるようにする。
【００３１】
また、検索用データとして許容しうる最大の総フレーム数を、検索者が設定できるようにする。設定フレーム数よりも検索用データの総フレーム数が大きい場合には、検索用データのフレーム数を減らして、設定フレーム数以下にする。
【００３２】
上記の、検索用データのフレーム数を設定フレーム数以下にする機能において、逆に検索用データが小さくなり過ぎた場合、検索時にその内容が理解できなくなる恐れがある。そこで、これを回避するため、１シーン当りのフレーム数を小さくし過ぎてその内容が理解できなくなるようなことがないように、１シーンに最低限必要なフレーム数も、検索者が設定できるようにする。
【００３３】
【実施例】
図１は本発明の一実施例における動画検索用データ生成方式のブロック図である。図１中の１０１０は本実施例の動画検索用データ生成方式全体を制御する主制御部、１０２０は使用者がキーボードなどから動画ファイルの検索指示や、検索用データ抽出時に必要とされるパラメータの入力を行う入力部である。１０３０は動画ファイルの記録、読み出しを行うデータ記憶管理部、１０４０は動画ファイル中の特徴部分を抽出する検索用データ生成部、１０５０は検索用データ生成部１０４０で管理される検索データを表示する表示部、１０６０は上記各部間のデータ交換を行う通信部である。
【００３４】
上記構成は、例えば、主制御部１０１０をＣＰＵで、入力部１０２０をキーボードで、データ記憶管理部１０３０をハードディスクで、表示部１０５０をＣＲＴディスプレイで、検索用データ生成部１０４０をＲＯＭ、ＲＡＭ等に格納されＣＰＵで実行されるプログラムで、通信部１０６０をバスを用いて実現することにより、従来からよく知られた装置で構成可能である。
【００３５】
図１を実現可能な装置構成図を、図１１に示す。図１１において、１１０１０はＣＰＵ（中央処理装置）、１１０２０はキーボード、１１０３０はハードディスク、１１０４０はＲＯＭ（リードオンリメモリ）、１１０５０はディスプレイ、１１０６０はバスを示す。
【００３６】
図１に戻り１０３１、１０３２はデータ記憶管理部１０３０を構成する。１０３１はＡＶデータを記憶するデータ記憶部、１０３２は主制御部１０１０または検索用データ生成部１０４０からの制御でデータ記憶部１０３１のデータを読み出すデータ読み出し部である。１０４１、１０４２、１０４３は検索用データ生成部１０４０を構成する。１０４１はデータ読み出し部１０３２から読み出される動画ファイルの場面切替を検出する場面切替検出部である。１０４２はデータ読み出し部１０３２から読み出される動画ファイルのフレームごとの音量を検出する音量検出部である。１０４３は、場面切替検出部１０４１と音量検出部１０４２の情報を元に所定の処理を行い、その結果を管理する検索用データ選択管理部で、当該フレーム番号または当該フレームデータを保持するものとする。
【００３７】
まず、場面切替の検出処理について説明する。場面切替の検出処理は、例えば、時間的に連続する２フレーム間の相関および画像全体の並行移動を示す動きベクトルの情報を用いて行える。詳しくは、まず１つのフレーム内で２次元的な小ブロックを定め、時間的に連続する２フレーム間において、各ブロックの相関をとり（例えば誤差の２乗）、相関があるか否かを判断する（誤差の２乗の大きさ）。相関がある場合（誤差の２乗が小さい）は、連続する場面（シーン）と考えられ、場面切替は発生していない。しかし、このフレーム相関だけではパン（左右移動）やチルト（上下移動）等のカメラの並行移動に起因するシーンを場面切替と判断してしまうことになるため、更に画面の並行移動量、すなわち動きベクトルを検出し、この動きベクトルに基づいて場面切替か否かを判別する（動きベクトルが検出された場合は連続シーン）。この動きベクトルの検出は、例えばフレーム画像の空間的勾配と、画像間差の関係から求まる。動きベクトルの検出の方法に関しては、文献「画像のデジタル信号処理：吹抜敬彦著、日刊工業新聞社」に詳しい。
【００３８】
ここで、動きベクトルの検出方法について説明する。代表的な動きベクトルの検出方法としては、ブロックマッチング法がある。以下、ブロックマッチング法について、図１２を用いて説明する。ブロックマッチング法は、符号化対象画像の１マクロブロック（１６×１６画素のブロック）と、前画像の全てのマクロブロックを比較し、画像の差分が最も小さいマクロブロックへのベクトルを動きベクトルとして採用する方法である。例えばマクロブロック１２０１０の動きベクトルを求めたい場合、前画像から読み出すマクロブロック１２０２０〜１２０７０の位置を少しずつずらしていく（この図ではｘ軸方向に２ずつずらしている）。読み出したそれぞれのブロックをマクロブロック１２０１０と比較し、最も画像の差分の小さいブロック（この図ではブロック１２０４０）を求める。ブロックマッチングは、候補となりうるブロックの数だけ行う。この図ではベクトル（６，０）が動きベクトルとして採用される。
【００３９】
したがって、例えばＭＰＥＧ１において場面切替を検出する場合には、Ｐピクチャにおいて、動き補償後の予測画との差分をとったブロックと、差分をとらないブロックの数を調べ、差分をとったブロックの数が一定値以上であれば、動きベクトルは検出されたと考えて、連続する場面と判断しても差し支えない。
【００４０】
従って、場面切替が発生したと判断されるのは、フレーム間相関が無く、しかも動きベクトルが認められなかった場合となる。
【００４１】
ここで音量検出処理について説明する。音量検出処理において、各フレームごとの音量値をそのままの値で用いると、各フレームのノイズの影響を大きく受けてしまう。そこで、フレームごとのノイズを除去するために、各フレームごとの音量値は、例えば、音量を求めたいフレームと時間的に連続する前後３フレーム、つまり音量を求めたいフレームを含めて合計７フレームの平均値をとり、それを該フレームの音量値として定義する。もちろん、この方法以外のノイズ除去方法を用いることも可能である。
【００４２】
以下、各フレームの音量を検出する方法を説明する。通常、音響波形をディジタル化するためには、図１３に示すように、標本化、量子化、符号化を順番に行う必要がある。標本化では、時間を細かく区切って、その単位時間での波形の高さを見る。量子化では、その波形の高さを、ある桁数の２進数の細かさに区切って読む。符号化では、音響波形を、量子化によって得られた値のディジタル信号に変換する。一般の音楽用コンパクトディスクでは、標本化周波数（標本化する際、１秒間に刻む時間の数）が４４．１ｋＨｚ、量子化ビット数（量子化する際、音の強弱を区切る細かさ）が１６ビットである。
【００４３】
したがって各フレームの音量は、例えば図１４に示すように、１フレーム時間内の符号化数値群の中で、例えば最大値１４０１０をそのフレームの音量として定義することにより求めることができる。もちろん、１フレームに対応する時間内で、符号化された値の平均値や最小値１４０２０をそのフレームの音量として定義しても構わない。
【００４４】
本実施例では場面切替検出方法、音量検出方法として、上記したフレーム間相関と動きベクトル、フレーム音量定義を用いる。また、図８は検索用データの生成過程で必要となる各シーンごとの情報を格納するシーン特徴テーブルである。テーブルの各行にはそれぞれの場面のシーン終了フレーム番号、シーン長、平均音量、最大音量フレームアドレス、最大音量、最大音量差分フレームアドレス、最大音量差分を格納する。テーブルをリストによって実現することにより、テーブルのサイズは任意に変化させることが可能である。
【００４５】
以下、図１のブロック図の動作例を図２のフローチャートを使って説明する。図２は動画検索用データ生成方式の動作を示すフローチャートである。まず、動画ファイルの検索処理が入力部１０２０の指示によって開始されると、検索者は検索したい動画ファイルを入力部１０２０で選択する（ステップ２０１０）。主制御部１０１０は、指示された動画ファイルを検索するために、検索用データ生成部１０４０に対し当該動画ファイルの検索用データの作成指示を行う。検索用データ生成部１０４０では、検索用データ選択管理部１０４３がデータ読み出し部１０３２に当該動画ファイルの読み出し指示を行う（ステップ２０２０）。検索用データ選択管理部１０４３は、当該動画ファイルの特徴部分を明らかにするために、場面切替検出部１０４１と音量検出部１０４２に対し場面切替発生情報と各フレームの音量情報を要求し、図８に示すシーン特徴テーブルを作成する（ステップ２０３０）。検索用データ選択管理部１０４３は、シーン特徴テーブルから得られる情報を元に、当該動画ファイル中の特徴部分を図９の抽出テーブルに抽出する（ステップ２０４０）。抽出テーブルの各行には検索データを構成するそれぞれの場面の最大音量、最大音量差分、場面の開始フレーム番号、終了フレーム番号を格納する。テーブルをリストによって実現することにより、テーブルのサイズは任意に変化させることが可能である。検索用データ選択管理部１０４３は、入力部１０２０によって与えられる条件に基づいて、抽出テーブルから検索用のデータを選択する（ステップ２０５０）。最後に、主制御部１０１０は表示部１０５０に検索用データの一覧表示を指示し、表示部１０５０は抽出テーブルに保存される各シーンの開始フレーム番号から終了フレーム番号までのフレームを一覧表示する（ステップ２０６０）。なお、これらの各部間のデータ交換は、通信部１０６０を介して行われる。
【００４６】
図２のフローチャート中のシーン特徴テーブル作成処理、特徴部分抽出処理、検索用データ選択処理については、図３，図５，図７にそれぞれの処理内容例を表すフローチャートを示す。さらに図３のフローチャート中の場面切替検出処理については図４に、図５のフローチャート中の同一場面内複数特徴部分抽出処理については図６に、それぞれの処理内容例を表すフローチャートを示す。以下、図３から図７までのフローチャートについて、その処理内容例を順番に説明する。
【００４７】
図３に示すシーン特徴テーブル作成処理（ステップ２０３０）の動作例を説明する。まず、２フレーム間の音量差分を検出する場合に、任意の相対フレームとの音量差分が検出できるように、何フレーム前の音量との差分をとるかを指定する音量差分検出対象フレーム数αを、入力部１０２０により指定する。また、αフレーム前のフレームとの音量差分が最大となるフレームを検出する場合に、音量の増加が最大となるフレームをとるか、それとも音量の変化、すなわち音量差分の絶対値が最大となるフレームをとるかを、入力部１０２０により指定する。（ステップ３０１０）。動画ファイルの最初のフレームからのフレーム数をカウントする現フレーム番号に０をセットする（ステップ３０１５）。指定ファイルの１フレーム目を読み込み（ステップ３０２０）、初期設定値として、１シーンのフレーム数をカウントするフレームカウンタに１を、１シーン中の各フレームの音量の合計を表す変数総音量に０を、１シーン中で音量が最大となるフレームがどこにあるかを表す変数最大音量フレーム番号に現フレーム番号を、そのフレームの音量を表す変数最大音量に０を、１シーン中でαフレーム前との音量差が最大となるフレームがどこにあるかを表す変数最大音量差分フレーム番号に現フレーム番号を、そのフレームの音量とαフレーム前のフレームの音量の差を表す変数最大音量差分に０をセットする（ステップ３０３０）。現フレーム番号に１を加える（ステップ３０３５）。現在読み込んでいるフレームの音量が最大音量よりも大きいかどうかを調べ（ステップ３０４０）、大きい場合には、最大音量フレーム番号を現フレーム番号に、最大音量を現フレームの音量値に置き換える（ステップ３０５０）。
【００４８】
次に、αフレーム前のフレームとの音量差分をとる前に、αフレーム前のフレームが同一シーン内に存在するかどうかを見る必要があるので、フレームカウンタの値がα＋１以上あるかどうかを調べる（ステップ３０６０）。α＋１以上ある場合には、αフレーム前の音量と比較することができるので、αフレーム前の音量を検出した後（ステップ３０７０）、音量の増加が最大となるフレームを最大音量差分フレームとしてとる場合には、最大音量差分が”（現フレーム音量）−（αフレーム前の音量）”よりも小さいかどうかを調べる（ステップ３０８０，３０９０）。音量差分の絶対値が最大となるフレームを最大音量差分フレームとしてとる場合には、”（現フレーム音量）−（αフレーム前の音量）”の絶対値よりも小さいかどうかを調べる（ステップ３０８０，３１００）。小さい場合には、現音量差分が最大音量差分となるので、最大音量差分フレーム番号に現フレーム番号を、最大音量差分に”（現フレーム音量）−（αフレーム前の音量）”の絶対値を、それぞれ代入する（ステップ３１１０）。さらに、最大音量差分の値が０よりも小さければ（ステップ３１２０）、最大音量差分フレーム番号からαを引く（ステップ３１３０）。これは、音量減少方向の差分をとる場合に、その下がり始めのフレームを音量減少のフレームとして抽出したいためである。
【００４９】
次に、総音量に現フレーム音量を加え（ステップ３１４０）、次フレームが存在するか否かを調べる。次フレームが存在する場合には、次フレームを読み込み（ステップ３１６０）、場面切替検出処理（ステップ３１７０）を経て、場面切替フラグが立っているかどうかを見る（ステップ３１８０）。フラグが立っていなければ、フレームカウンタに１を加えた後（ステップ３２１０）、再び現フレーム番号に１を加える（ステップ３０３５）。フラグが立っている場合は、図８に示すシーン特徴テーブル８０１０の新しい行に、シーン終了フレーム番号８０１５として現フレーム番号の値を、シーン長８０２０としてフレームカウンタの値を、平均音量８０３０として”（総音量）÷（フレームカウンタ）”の値を、最大音量フレーム番号８０４０として変数最大音量フレーム番号の値を、最大音量８０５０として変数最大音量の値を、最大音量差分フレーム番号８０６０として変数最大音量差分フレーム番号の値を、最大音量差分８０７０として変数最大音量差分の値をそれぞれ登録し（ステップ３１９０）、終了フラグが立っていればシーン特徴テーブル作成処理を終了、立っていなければ、再び初期設定（ステップ３０３０）に戻り、処理を継続する。以上、図３のシーン特徴テーブル作成処理（ステップ２０３０）の動作例を説明した。
【００５０】
続いて、図３に示す場面切替検出処理（ステップ３１７０）の動作例を、図４を用いて説明する。まず、前フレームと現フレームの間に相関があるか（ステップ４０１０）、動きベクトルがあるかどうかを調べ（ステップ４０２０）、前フレームと現フレームの間に相関も動きベクトルもない場合には、場面切替が発生したものと判断して場面切替フラグを立てて（ステップ４０３０）、場面切替検出処理を終了する。相関あるいは動きベクトルの内、少なくとも一つ以上が検出された場合には、前フレームと現フレームは同一シーン内にあると判断して、場面切替フラグを降ろして（ステップ４０４０）、場面切替検出処理を終了する。以上、図４の場面切替検出処理（ステップ３１７０）の動作例を説明した。
【００５１】
続いて、図２に示す特徴部分抽出処理（ステップ２０４０）の動作例を図５を用いて説明する。まず、特徴部分を選別するためのパラメータとして、シーン長ａ，ｂ、音量ｃ，ｄ，ｅ、最大音量差分ｆを、入力部１０２０により設定する（ステップ５０１０）。加えて、入力部１０２０により、特徴フレームの前後何フレームを特徴部分として抽出するかを変数ｘで指定する。また、シーン長がｂ以上の場合に複数の特徴部分を抽出するか否かを入力部１０２０により指定する（ステップ５０２０）。シーン特徴テーブル８０１０の１番目の行を読み込み（ステップ５０３０）、シーンカウンタの値を０に設定する（ステップ５０４０）。
【００５２】
この後、シーンの長さによる場合分けを行う。まず、対象となるシーンがある程度以下の短いシーンであるかどうかを見るため、シーン長８０２０がａ以下であるかどうかを調べ（ステップ５０５０）、シーン長８０２０がａ以下でなければ、今度は対象となるシーンがある程度以上の長いシーンであるかどうかを見るため、シーン長８０２０がｂ以上であるかどうかを調べる（ステップ５０８０）。シーン長８０２０がａ以下である場合には、さらに平均音量８０３０がｄ以上であるかどうかを調べる（ステップ５０６０）。平均音量８０３０がｄ以上である場合には、シーン長８０２０が短くても特徴的な部分であると判断して、そのシーンの全フレームを抽出テーブルに抽出するために、最大音量９０２０に最大音量８０５０の値を、最大音量差分９０３０に最大音量差分８０７０の値を、開始フレーム番号９０４０に”（シーン終了フレーム番号）−（シーン長）＋１”を、終了フレーム番号９０５０にシーン終了フレーム番号８０１５を、それぞれ登録（ステップ５０７０）した後、シーンカウンタに１を加える（ステップ５１７０）。平均音量８０３０がｄよりも小さい場合には、その部分は特徴的ではないと判断して、何も行わない。
【００５３】
シーン長８０２０がｂ以上でない場合には、中間的なシーン長のシーンであると判断して、平均音量８０３０がｅ以上であるかどうかを調べる（ステップ５１３０）。平均音量８０３０がｅ以上である場合には、音量が最大となる部分がシーン中最も特徴的な部分であると判断して、最大音量フレーム番号のフレームとその前後ｘフレームを抽出テーブルに抽出するために、最大音量９０２０に最大音量８０５０の値を、最大音量差分９０３０に最大音量差分８０７０の値を、開始フレーム番号９０４０に”（最大音量フレーム番号）−ｘ”を、終了フレーム番号９０５０に”（最大音量フレーム番号）＋ｘ”を、それぞれ登録し（ステップ５１４０）、シーンカウンタに１を加える（ステップ５１７０）。平均音量８０３０がｅよりも小さい場合には、今度は最大音量差分８０７０がｆ以上であるかどうかを調べる（ステップ５１５０）。最大音量差分８０７０がｆ以上である場合には、音量の差分が最大となる部分がシーン中最も特徴的な部分であると判断して、最大音量差分フレーム番号のフレームとその前後ｘフレームを抽出テーブルに抽出するために、最大音量９０２０に最大音量８０５０の値を、最大音量差分９０３０に最大音量差分８０７０の値を、開始フレーム番号９０４０に”（最大音量差分フレーム番号）−ｘ”を、終了フレーム番号９０５０に”（最大音量差分フレーム番号）＋ｘ”を、それぞれ登録し（ステップ５１６０）、シーンカウンタに１を加える（ステップ５１７０）。最大音量差分がｆよりも小さい場合には、そのシーンは特徴的ではないと判断して、何も行わない。
【００５４】
一方、シーン長がｂ以上である場合には、ある程度以上長いシーンであると判断して、まず、そのシーンから複数の特徴部分を抽出するかどうかを調べる（ステップ５０９０）。複数の特徴部分を抽出する場合には、それらの特徴部分の数をカウントするシーンサブカウンタに０をセットし（ステップ５１００）、同一場面内複数特徴部分抽出処理（ステップ５１１０）によりそのシーンの特徴部分を抽出し、シーンカウンタに”（シーンサブカウンタ）−１”を加えた（ステップ５１２０）後、シーンカウンタに１を加える（ステップ５１７０）。つまり、ステップ５１２０とステップ５１７０を合わせて考えると、シーンカウンタにシーンサブカウンタの値を加えることに等しい。同一シーン内から複数の特徴部分を抽出しない場合には、音量が最大となる部分がシーン中最も特徴的な部分であると判断して、最大音量フレーム番号のフレームとその前後ｘフレームを抽出テーブルに抽出するために、最大音量９０２０に最大音量８０５０の値を、最大音量差分９０３０に最大音量差分８０７０の値を、開始フレーム番号９０４０に”（最大音量フレーム番号）−ｘ”を、終了フレーム番号９０５０に”（最大音量フレーム番号）＋ｘ”を、それぞれ登録（ステップ５１４０）、シーンカウンタに１を加える（ステップ５１７０）。
【００５５】
これらのステップのいずれかを経た後、シーン特徴テーブル８０１０に次の行が存在するかどうかを調べ（ステップ５１８０）、存在する場合はその行を読んで、再びシーン長がａ以下であるかどうか調べ（ステップ５０５０）、処理を継続する。存在しない場合には、特徴部分抽出処理を終了する。以上、図５の特徴部分抽出処理（ステップ２０４０）の動作例を説明した。
【００５６】
続いて、図５に示す同一場面内複数特徴部分抽出処理（ステップ５１１０）の動作例を、図６を用いて説明する。まず、複数の特徴部分を抽出するシーンのフレーム数と同数のフラグを用意して、”（シーン終了フレーム番号）−（シーン長）＋１”からシーン終了フレーム番号までの番号を割り当て、各フレームと１対１に対応付ける（ステップ６０１０）。抽出するシーンの１番目のフレームを読み込み（ステップ６０２０）、現フレームの音量が音量ｃ以上であるかどうかを調べる（ステップ６０３０）。音量ｃ以上であれば、現フレームとその前後のｘフレームに対応するフラグを立てる。その後、次フレームが存在するかどうかを調べ、存在する場合にはそのフレームを読み込んで（ステップ６０６０）、フレーム音量が音量ｃ以上であるかどうかを再び調べる（ステップ６０３０）。次フレームが存在しない場合には、時間的に連続するフラグの立っている部分が合計幾つあるかを調べてシーンサブカウンタにその値をセットし（ステップ６０７０）、最後にフラグに対応するフレームを抽出テーブルに抽出するために、最大音量９０２０に最大音量８０５０の値を、最大音量差分９０３０に最大音量差分８０７０の値を、開始フレーム番号９０４０に連続部分の開始フラグ番号を、終了フレーム番号９０５０に連続部分の終了番号を、全ての連続部分について順次登録し（ステップ６０８０）、同一場面内複数特徴部分抽出処理を終了する。以上、図６の同一場面内複数特徴部分抽出処理（ステップ５１１０）の動作例を説明した。
【００５７】
続いて、図２に示す検索用データ選択処理（ステップ２０５０）の動作例を、図７を用いて説明する。まず、検索用データの最大場面数を指定する最大許容限度場面数と、最大フレーム数を指定する最大許容限度フレーム数を指定する。また、１つの特徴部分を構成するフレームの数が小さくなり過ぎて内容が理解できなくなることを防止するために、１シーンを構成するフレーム数の下限を指定する最小必要限度フレーム数を指定する。さらに、最大音量の大きな特徴部分と最大音量差分の大きな特徴部分のどちらを検索用のデータとして優先するかを指定する（ステップ７０１０）。次に、シーンカウンタの値が最大許容限度場面数よりも多いかどうかを調べる（ステップ７０２０）。シーンカウンタの値が最大許容限度場面数よりも多い場合には、抽出場面数を減らす必要があるので、最大音量の大きな特徴シーンを最大音量差分の大きな特徴シーンよりも検索用のデータとして優先するかどうかを調べ（ステップ７０３０）、優先する場合には最大音量差分が一番小さいシーンを、優先しない場合には最大音量が一番小さいシーンを抽出テーブルからそれぞれ削除（ステップ７０４０）（ステップ７０５０）した後、シーンカウンタから１を引いて（ステップ７０５５）、再びステップ７０２０に戻り、シーンカウンタの値が最大許容限度場面数以下になるまでこれを繰り返す。この際、最大音量または最大音量差分が一番小さいシーンが複数ある場合には、終了フレーム番号が一番小さいシーンを削除する。
【００５８】
抽出場面数が最大許容限度場面数以下の場合には、まず、抽出テーブルの各行の”（終了フレーム番号）−（開始フレーム番号）＋１”の総和である抽出フレーム数を計算して（ステップ７０５８）、削除禁止シーンカウンタに０をセットする（ステップ７０６０）。削除禁止シーンカウンタは、１シーンを構成するフレームの数が、最低必要限度フレーム数よりも小さくなったシーンの数をカウントするカウンタである。次に、削除禁止シーンカウンタの値がシーンカウンタの値に等しいかどうかを調べる（ステップ７０７０）。等しい場合には、削除できるシーンが存在しないことを意味するので、検索用データ選択処理を終了する。等しくない場合には、抽出フレーム数が最大許容限度フレーム数よりも大きいかどうかを調べる（ステップ７０８０）。抽出フレーム数が最大許容限度フレーム数以下の場合には、フレーム削除の必要はないので、検索用データ選択処理を終了する。
【００５９】
抽出フレーム数が最大許容限度フレーム数よりも大きい場合には、抽出フレーム数を削減しなければならないので、まず、１つ目のシーンのシーン長を”（終了フレーム番号）−（開始フレーム番号）＋１”より計算して（ステップ７０９０）、シーン長が最低必要限度フレーム数よりも大きいかどうかを調べる（ステップ７１００）。シーン長が最低必要限度フレーム数よりも大きい場合には、そのシーンからのフレーム削減が可能なので、シーンの最前後１フレームずつを削除するために、シーンの開始フレーム番号に１を加え、終了フレーム番号から１を引き（ステップ７１１０）、抽出フレーム数から２を引く（ステップ７１１５）。シーン長が最低必要限度フレームよりも大きくない場合には、それ以上フレーム数を削減するとそのシーンの内容が理解できなくなるので、そのシーンからのフレーム削除は不可能と見なして、削除禁止カウンタに１を加える（ステップ７１２０）。次に、抽出テーブルに次シーンが存在するかどうかを調べる（ステップ７１３０）。存在する場合には、次シーンのシーン長を計算して（ステップ７１４０）、ステップ７１００から再び、次シーンが存在しなくなるまでこれを繰り返す。次シーンが存在しなくなった場合には、ステップ７０７０に戻り、削除禁止シーンカウンタがシーンカウンタに等しく、かつ抽出フレーム数が最大許容限度フレーム数以下になるまで、この処理を繰り返す。以上、図７の検索用データ選択処理（ステップ２０５０）の動作例を説明した。
【００６０】
上記実施例では、検索用データ生成処理を検索時に毎回行うものとしているが、図１の検索用データ選択管理部１０４３内に検索後も抽出テーブルを保持する機能を持たせれば、毎回行う必要はない。この際には、主制御部１０１０がブラウズ指示を受けた動画ファイルに関し検索用データ選択管理部１０４３をチェックし、既に検索用データが生成されている場合には、その検索用データに基づいて直接表示する。生成されていない場合にのみ検索用データ生成部１０４０で、検索用データの作成を行う。
【００６１】
また、上記実施例では、検索用データ生成の為の各種パラメータ設定は、使用者が全て図１の入力部１０２０により行うものとしているが、検索用データ選択管理部１０４３内で保持されるシーン特徴テーブルの情報をパラメータとして利用することも可能である。例えば、図５のｃに、そのシーンの平均音量の１．５倍の値を使用することもできる。これは、ｃをステップ５０１０で設定せず、同一場面内複数特徴部分抽出処理５１１０の開始時に、ｃ＝（平均音量）×１．５を設定すればよい。また、ステップ５０１０で、シーン長ｂとして動画ファイル全体のシーン長の１０％の値を用いたり、音量ｅとして動画ファイル全体の平均音量の２倍の値を用いることも可能である。これらの場合は、ｂ＝（シーン特徴テーブルのシーン長総和）×０．１、およびｅ＝〔｛（シーン長×平均音量）の総和｝÷（シーン長の総和）〕×２を、図５のステップ５０１０で設定すれば良い。
【００６２】
また、現在ＡＶデータを扱う場合、映像を蓄積する媒体としてはＶＴＲ等のテープが主流である。記憶媒体としてのテープは、シーケンシャルアクセスで、低速なマスストレージといえる。このような媒体を利用したシステムでは、検索の効果を高めるために、検索用データ選択管理部１０４３において、検索用データを高速ランダムアクセスが可能な別の記憶媒体（ハードディスク等）に蓄積することが考えられる。この方法によれば、動画ファイルの高速検索が可能になり、使用者は必要シーンのみをテープから再生することができる。
【００６３】
また、デジタル映像編集装置等では、アナログテープから装置内のデジタルメディア（ハードディスク等）にＡ／Ｄ変換して格納させる（ダウンロード）作業があり、本実施例での検索用データ生成処理をこの作業時に行うものとしてもよい。そうすればダウンロード終了後、直ちに動画ファイルの高速検索が可能となる。
【００６４】
以上説明したように、本実施例によれば、場面切り替えの生じたフレームと、フレームの音声情報とに基づいて、検索用の画像（動画）を抽出し、任意のＡＶデータ（ファイル）の検索が実現可能になる。
【００６５】
これにより、従来のように、検索を行う前にあらかじめ使用者が検索したい特徴部分を指定して検索用データを作成しておく必要がなくなり、使用者の作業量を低減できるという効果が得られる。
【００６６】
【発明の効果】
上記のように、本発明によれば、重要な（特徴的な）場面については、一場面につき複数フレームを検出用データとして抽出し、検出用データをきめ細かく抽出することができる。
【００６７】
また、本発明によれば、重要でない場面については、該場面から検索用データを抽出せずに、検索用データ数の削減を行うことができる。
【図面の簡単な説明】
【図１】図１は、本発明の実施例に係る動画検索用データ生成方式の全体的な構成を示すブロック図である。
【図２】図２は、図１の実施例の動作を示すフローチャートである。
【図３】図３は、図２のフローチャート中のシーン特徴テーブル作成処理の動作を示すフローチャートである。
【図４】図４は、図３のフローチャート中の場面切替検出処理の動作を示すフローチャートである。
【図５】図５は、図２のフローチャート中の特徴シーン抽出処理の動作を示すフローチャートである。
【図６】図６は、図５のフローチャート中の同一場面内複数特徴部分抽出処理の動作を示すフローチャートである。
【図７】図７は、図２のフローチャート中の検索用データ選択処理の動作を示すフローチャートである。
【図８】図８は、検索用データ生成の過程で作成されるシーン特徴テーブルである。
【図９】図９は、検索用データ生成の過程で作成される抽出テーブルである。
【図１０】図１０は、ＭＰＧ１の符号化方式に関する説明図である。
【図１１】図１１は、本発明の実現可能な装置構成図である。
【図１２】図１２は、ブロックマッチング法に関する説明図である。
【図１３】図１３は、各フレームの音量を検出する方法に関する説明図である。
【図１４】図１４は、各フレームの音量を検出する方法に関する説明図である。
【符号の説明】
１０１０…主制御部
１０２０…入力部
１０３０…データ記憶管理部
１０３１…データ記憶部
１０３２…データ読み出し部
１０４０…検索用データ生成部
１０４１…場面切替検出部
１０４２…音量検出部
１０４３…検索用データ選択管理部
１０５０…表示部
１０６０…通信部
【図１】
0003573493.tif 000002
【図２】
0003573493.tif 000003
【図３】
0003573493.tif 000004
【図４】
0003573493.tif 000005
【図５】
0003573493.tif 000006
【図６】
0003573493.tif 000007
【図７】
0003573493.tif 000008
【図８】
0003573493.tif 000009
【図９】
0003573493.tif 000010
【図１０】
0003573493.tif 000011
【図１１】
0003573493.tif 000012
【図１２】
0003573493.tif 000013
【図１３】
0003573493.tif 000014
【図１４】
0003573493.tif 000015