(57)【特許請求の範囲】
【請求項１】
源ビデオ用の可視索引を作成するシステムにおいて、
前記源ビデオからフレームを抽出するフレーム抽出器と、
前記フレームをＤＣＴ係数のマクロブロックに変換するＤＣＴマクロブロック形成器と、
前記ＤＣＴ係数のマクロブロックに基づいて、重要な情景を検出すると共に、検出された各重要な情景に対してキーフレームを選択する重要情景プロセッサと、
前記選択されたキーフレームから所定の評価基準を満たさないキーフレームをフィルタ除去して可視索引を作成するキーフレームフィルタ器と、
前記可視索引を記憶する記憶媒体と、
を有し、
前記マクロブロックは少なくとも１つの輝度ブロックと少なくとも１つの色ブロックとを有し、
前記重要情景プロセッサは、前記少なくとも１つの輝度ブロック及び前記少なくとも１つの色ブロックの各々に対する連続するフレームのＤＣＴ係数の間の差分の別個の和に基づいて、前記重要な情景を検出すると共に、検出された各重要な情景に対して前記キーフレームを選択する、
ことを特徴とする可視索引を作成するシステム。
【請求項２】
請求項１に記載の可視索引を作成するシステムにおいて、前記キーフレームフィルタ器が、前記所定の評価基準を満たさないキーフレームを前記ＤＣＴ係数のマクロブロックに基づいて決定することを特徴とする可視索引を作成するシステム。
【請求項３】
圧縮された源ビデオ用の可視索引を作成するシステムにおいて、
前記圧縮された源ビデオをフレーム及びＤＣＴ係数のマクロブロックに変換するデコーダと、
前記フレームと前記ＤＣＴ係数のマクロブロックとに基づいて、重要な情景を検出すると共に検出された各重要な情景に対してキーフレームを選択する重要情景プロセッサと、
前記ＤＣＴ係数のマクロブロックに基づいて、前記キーフレームから所定の評価基準を満たさないキーフレームをフィルタ除去して可視索引を作成するキーフレームフィルタ器と、
前記可視索引を記憶する記憶媒体と、
を有し、
前記マクロブロックは少なくとも１つの輝度ブロックと少なくとも１つの色ブロックとを有し、
前記重要情景プロセッサは、前記少なくとも１つの輝度ブロック及び前記少なくとも１つの色ブロックの各々に対する連続するフレームのＤＣＴ係数の間の差分の別個の和に基づいて、前記重要な情景を検出すると共に、検出された各重要な情景に対して前記キーフレームを選択する、
ことを有することを特徴とする可視索引を作成するシステム。
【請求項４】
請求項１又は３に記載の可視索引を作成するシステムにおいて、前記重要情景プロセッサが前記重要な情景を検出するためにビデオカットと静止情景の少なくとも一方を検出することを特徴とする可視索引を作成するシステム。
【請求項５】
請求項１，２又は３に記載の可視索引を作成するシステムにおいて、前記キーフレームフィルタ器が単色フレームをフィルタ除去することを特徴とする可視索引を作成するシステム。
【請求項６】
請求項１，２又は３に記載の可視索引を作成するシステムにおいて、前記キーフレームフィルタ器が同一の対象物を画像の主要焦点又は主要焦点の１つとして有しているようなキーフレームをフィルタ除去することを特徴とする可視索引を作成するシステム。
【請求項７】
請求項１ないし６の何れか一項に記載の可視索引を作成するシステムと、
ディスプレイ上への表示、キーフレームへの手動又は自動送り、及び前記可視索引の印刷の少なくとも１つを行うために前記可視索引を取り出すビデオ検索装置と、
を有していることを特徴とするビデオ保管及び検索用のシステム。
【発明の詳細な説明】
技術分野
本発明は、源ビデオ（source video）の内容を解析し、選択された画像を用いて可視内容テーブル（visual table of contents）を生成するような可視索引付け（visual indexing）システムに関する。
背景技術
使用者は、後で又は繰り返し視聴するため、しばしばテープ上にホームビデオを記録し、又はテレビジョン番組、映画、コンサート、スポーツ競技等を記録する。ビデオは、しばしば、多様な内容を含み、或いは非常に長大なものである。しかしながら、使用者は、何が記録テープ上にあるかを書き印さないことがあり、テープ上に何を記録したか又はテープ上の何処に特別な場面、映画、出来事等を記録したかを思い出すことができない場合がある。このように、使用者は何がテープ上にあるかを思い出すため、座って全テープを見なければならないことがある。
ビデオ内容解析は、記録された題材の内容を示す情報を取り出す自動的又は準自動的な方法を使用する。ビデオ内容索引付け及び解析は、当該ビデオの可視行列から構造及び意味を取り出す。通常、ＴＶ番組又はホームビデオからはビデオクリップ（video clip）が取り出される。
１９９５年のマルチメディアツール及びアプリケーションの第８９〜１１１頁に公表された“圧縮されたデータを用いたビデオ解析及び検索”にHongjiang Zhang、Chien Yong Low及びStephen W. Smoliarにより記載されたシステムにおいては、２つのビデオフレームの間の対応するブロックが比較され、全てのブロックの間の差が、ブロック形式を分離することなく全ビデオフレームにわたって合計される。このZhangのシステムは、しかしながら、幾つかのブロックが色又は輝度に差があると、食い違った結果を生じることがある。本システムは、このような食い違った結果を防止することを目指す。
発明の開示
ビデオ保管（video archival）及び検索（video retrieval）を提供するようなシステムが望まれる。
更に、以前に記録された又は記録中のビデオ源のための可視索引を生成し、重要なキーフレーム（keyframes）を選択するのに利用可能であって且つ正確に選択し、それでいて使用者に対して利用可能な情報量を提供するようなシステムが望まれる。
更に、本発明は、ニュース、続き物、気象、スポーツ又は全ての形式の家庭記録ビデオのような有益な及び／又は娯楽の番組を含む源ビデオ用の可視内容抽出を扱うようなリアルタイムビデオ解析システムまでも提供する。
更に、本発明は、源ビデオ内容の内容を限定された計算資源を用いてリアルタイムまでも解析すると共に、選択された画像を用いて可視テーブルを生成する。
更に、本発明は、使用者が上記可視内容テーブル又は可視索引を用いてテープ、ファイル、ディスク、ＤＶＤ又は他の記憶手段上の特別な点にアクセスすることも可能にする。
更に、本発明は、可視索引中に一層適した可視画像を用意するための新たなビデオカット（video cut）検出方法、静止情景検出方法及びキーフレームフィルタリング方法を提供する。
加えて、本発明は可視索引からコマーシャルに属するキーフレームのフィルタリング除去を可能にする。
【図面の簡単な説明】
本発明、本発明の作用効果及び本発明の使用により得られる特別な目的の一層明快な理解のためには、添付図面及び本発明の好ましい実施例を説明した記載を参照されたい。添付図面において、
第１図は、ビデオ保管処理を示す。
第２Ａ図及び第２Ｂ図は、可視索引の生成に使用される装置のブロック図。
第３図は、フレーム、マクロブロック（macroblock）及び数個のブロックを示す。
第４図は、ブロックの数個のＤＣＴ係数を示す。
第５図は、ＤＣＴ係数を伴うマクロブロック及び数個のブロックを示す。
第６Ａ図及び第６Ｂ図はキーフレームフィルタリングの手順を示す。
第７図は、マクロブロック及びそのブロック記号に対する関係を示す。
第８図は、ビデオ検索処理を示す。
発明を実施するための最良の形態
可視索引は既存のテープ（又は、ファイル、ＤＶＤ、ディスク等）に作成することができ、又は新たなテープ上に記録を行っている際に作成することもできる。可視索引の作成を可能にするために、両テープは当該テープ上の選択された領域（本例においては、使用の容易さから開始部）に所定の部分を必要とする。本例の場合は、３０秒間の“空白（ブランク）”テープ又は重ね書き可能なテープが望ましい。ファイルの場合は、上記の可視索引用の選択された領域は当該ファイル内の何れかの位置を占めることができ、システムにより自動的に確保されるか又は使用者により手動で選択することができる。
該可視索引は、可視画像、オーディオ、テキスト又はこれらの何れかの組み合わせを含むことができる。本例の場合は、可視画像及びテキストが設けられる。可視索引を作成し使用するには、ビデオ内容索引付け処理が実行される。
上記ビデオ内容索引付け処理には２つのフェーズが存在する。即ち、保管（archival）と検索（retrieval）である。保管処理においては、ビデオ解析処理の間にビデオ内容が解析され、可視索引が作成される。ビデオ解析処理においては、自動的な重要情景検出（significant scene detection）及びキーフレーム選択が行われる。重要情景検出は、情景の変化、即ち“カット”を識別する（ビデオカット検出又は区分検出）と共に、静止情景を識別する（静止情景検出）ような処理である。各情景に関して、キーフレームと呼ばれる特に代表的なフレームが抽出される。キーフレームフィルタリング及び選択処理がビデオテープのような源ビデオの各キーフレームに適用されて、選択的に選ばれたキーフレームから可視索引を作成する。源テープが参照されるが、明らかに源ビデオはファイル、ディスク、ＤＶＤ又は他の記憶装置からのものでよく、又は伝送源（例えば、ホームビデオを記録中の）から直接のものでもよい。
ビデオテープ索引付けにおいては、通常、索引は源テープに記憶される。ビデオＣＤ、ＤＶＤ、又は他の記憶装置から、又は放送ストリームからのＭＰＥＧ１、ＭＰＥＧ２、ＭＰＥＧ４、動画ＪＰＥＧファイル又は何らかの他のビデオファイルのビデオ索引付けにおいては、索引はハードディスク又はその他の記憶媒体に記憶することができる。
第１図には、オーディオ及び／又はビデオを含むであろうような以前に記録された源ビデオを伴う源テープ用のビデオ保管処理を示している。尚、ＭＰＥＧファイルのような以前に待避された可視情報を伴う他の記憶装置に対しても同様の処理がとられるであろう。この処理においては、可視索引は源ビデオに基づいて作成される。使用者が記録をしようとしている源テープに関しては、第２の処理が該記録と同時に可視索引を作成する。
第１図は、ビデオテープ用の第１の処理（以前に記録された源テープ用）の一例を示している。ステップ１０１において、もし必要なら、源ビデオはＶＣＲのような再生／記録装置により巻き戻される。ステップ１０２において、上記源ビデオは再生される。この源ビデオからの信号はテレビジョン、ＶＣＲ又は他の処理装置により入力される。ステップ１０３においては、当該処理装置内の媒体プロセッサ又は外部プロセッサが上記ビデオ信号を入力し、該ビデオ信号をピクセルデータを表すフレームにフォーマットする（フレームグラッビング）。
ステップ１０４において、ホストプロセッサは各フレームをブロックに分離し、これらブロック及びそれらに関連するデータを変換してＤＣＴ（離散コサイン変換）係数を生成し；重要情景検出及びキーフレーム選択を実行し；キーフレームを構築してデータ構造としてメモリ、ディスク又はその他の記憶媒体に記憶する。ステップ１０５においては、該源テープは始点まで巻き戻され、ステップ１０６において該源テープは情報を記録するように設定される。ステップ１０７においては、前記データ構造が前記メモリから該源テープに伝送され、可視索引を生成する。次いで、該テープは、この可視索引を見るように巻き戻されてもよい。
使用者が記録中にテープ上に可視索引を作成しようと欲する場合は、上記処理は僅かに変更される。ステップ１０１及び１０２に代えて、第１図のステップ１１２に示すように、ビデオ（映画等）が記録されているにつれて、ステップ１０３のフレームグラッビング処理が行われる。
加えて、もし上記テープ又はファイルが一度に完全に記録されない場合は、部分的に作成されたビデオ索引が上記テープ等に待避されるか又は後の追加のためにテープメモリに待避される。
ステップ１０３及び１０４が、第２Ａ図及び第２Ｂ図にもっと詳細に示されている。ビデオはアナログの形態（連続データ）又はデジタルの形態（離散データ）の何れかで存在する。本例は、デジタル領域で動作し、従って処理にはデジタルの形態を用いる。このように、源ビデオ又はビデオ信号は、表示された一連の画像が連続的な画像の流れとして現れるように十分に高いレート（本例では毎秒３０フレーム）で表示されるような一連の個別の画像又はビデオフレームである。これらのビデオフレームは非圧縮のもの（ＮＴＳＣ若しくは生のビデオ）、又はＭＰＥＧ、ＭＰＥＧ２、ＭＰＥＧ４、動画ＪＰＥＧ等のフォーマットの圧縮されたデータとすることができる。
圧縮されていないビデオの情報は、媒体プロセッサ２０２内でインテルスマートビデオレコーダIII内にあるようなフレームグラッビング技術を用いて、先ずフレームに区分化される。他のフレームサイズも利用可能であるが、第３図に示す本例では、フレーム３０２は１つのテレビジョン、ビデオ又は他の可視画像を表し、３５２ x ２４０のピクセルを含んでいる。
フレーム３０２は、各々、ホストプロセッサ２１０（第２Ａ図）内で、本例では８ x ８ピクセルのブロック３０４に分解される。これらのブロック３０４及び通常の放送規格（ＣＣＩＲ-601）を用いて、マクロブロック作成器２０６（第２Ａ図）は輝度ブロックを作成すると共に、カラー情報を平均して色ブロック（chrominance blocks）を作成する。これら輝度及び色ブロックはマクロブロック３０８を形成する。当業者であれば4:1:1及び4:2:2等の他のフォーマットを容易に使用することもできるが、本例では、4:2:0が使用される。4:2:0においては、マクロブロック３０８は６個のブロック、即ち４つの輝度Ｙ１、Ｙ２、Ｙ３、Ｙ４及び２つの色Ｃｒ及びＣｂを有し、マクロブロック内の各ブロックは８ x ８ピクセルである。
該ビデオ信号は、例えば動画ＪＰＥＧ（Joint Photographic Experts Group）及びＭＰＥＧ（Motion Pictures Experts Group）のような圧縮規格を用いて圧縮された画像を表すこともできる。該信号が、代わりに、ＭＰＥＧ信号又は他の圧縮された信号である場合は、第２Ｂ図に示すように、このＭＰＥＧ信号はフレーム解析器２０５によりフレーム又はビット流解析技術を用いてフレームに分解される。これらフレームは、次いで、媒体プロセッサ２０３内のエントロピデコーダ２１４とテーブル指定器２１６とに送出される。エントロピデコーダ２１４は、上記ＭＰＥＧ信号をテーブル指定２１６からのデータを用い、例えばハフマンデコーディング又は他のデコーディング技術を用いてデコードする。
デコードされた信号は次に逆量子化器（dequantizer）２１８に供給され、該逆量子化器は上記のデコードされた信号をテーブル指定器２１６からのデータを用いて逆量子化する。媒体プロセッサ２０３内で行われるように図示されているが、これらステップ（ステップ２１４ないし２１８）は、使用される装置に応じて媒体プロセッサ２０３、ホストプロセッサ２１１又は他の外部装置の何れかで行われてもよい。
他の例として、システムが（例えば、媒体プロセッサ内に）当該処理の異なる段階へのアクセスを可能とするような符号化能力を有している場合は、前記ＤＣＴ係数はホストプロセッサに直接供給することもできる。これらの全ての方法において、処理はリアルタイムにまで実行することができる。
第１図のステップ１０４において、ホストプロセッサ２１０（例えば、インテル▲Ｒ▼ペンティアムTMチップ若しくは他のマルチプロセッサ、フィリップス▲Ｒ▼トライメディアTMチップ又は他の何れかのマルチメディアプロセッサ；コンピュータ；高性能化ＶＣＲ、記録／再生装置若しくはテレビジョン；又は何れかの他のプロセッサ）は、重要情景検出、キーフレーム検出、並びにデータ構造の構築及び例えばハードディスク、ファイル、テープ、ＤＶＤ又は他の記憶媒体等の索引メモリへの記憶を実行する。
重要情景検出：
自動的な重要情景検出のため、本発明は、何時ビデオの情景が変化したか又は静止情景が発生したかを検出するよう試みる。情景は１以上の関係した画像を表す。重要情景検出においては、２つの連続するフレームが比較され、もし、これらフレームが大幅に相違すると判定されたら、これら２つのフレームの間で情景変化が生じたと判定され、大幅に類似していると判定されたら、静止情景が生じたか否かを判定する処理が実行される。
各情景からは、当該情景を表すために１以上のキーフレームが抽出される。典型的には、現動作原理は１つの情景内の最初のビデオ（可視）フレームを使用することを提案する。しかしながら、多くの場合、１つの情景内の主要な題材又は事象はカメラがズーム又はパンされた後に発生する。加えて、現原理は典型的には幾らかの時間長の間一定のままである情景（静止情景）は検出しない。しかしながら、該情景に費やされる時間長に基づき、これは撮影者、監督等の視点からは、重要な情景であったかもしれない。本発明はこれら問題に配慮する。
本発明の各々は、ＤＣＴ（離散コサイン変換）係数の比較を利用する。先ず、入力された各フレーム３０２はホストプロセッサ２１０において個別に処理され、マクロブロック３０８を作成する。ホストプロセッサ２１０は、空間情報を含む各マクロブロック３０８を離散コサイン変換器２２０を用いて処理することによりＤＣＴ係数を抽出し、ＤＣＴ係数の６個の８ x ８ブロック４４０（第４図）を作成する。
入力されるビデオ信号がＭＰＥＧのような圧縮されたビデオフォーマットである場合は、ＤＣＴ係数は逆量子化の後に取り出され、離散コサイン変換器により処理される必要はない。加えて、前述したように、ＤＣＴ係数は使用される装置に応じて自動的に抽出することもできる。
ＤＣＴ変換器は、ブロック４４０（第４図）の各々Ｙ１、Ｙ２、Ｙ３、Ｙ４、Ｃｒ及びＣｂにＤＣＴ係数値を与える。この規格によれば、各ブロックの最左上隅はＤＣ情報（直流値）を含み、残りのＤＣＴ係数はＡＣ情報（交流値）を含む。これら交流値の周波数は、上記直流値の右から該直流値の丁度下のＤＣＴ係数へと、第４図に部分的に示すようにジグザグに増加する。
本発明は幾つかの異なる重要情景検出方法を使用することができるが、これらの方法の全てが各ブロックに対してＤＣＴ係数を用いる。ホストプロセッサ２１０は、更に、重要情景プロセッサ２３０（第２Ａ図）において上記マクロブロックの各々を、以下の方法の少なくとも１つを用いて処理する。
下記の方法においては、一層速く結果を作成するため及び効率の大幅な損失無しに処理を制限するために、処理は上記直流値のみに制限される。しかしながら、当業者であれば、明らかに、マクロブロックの各々に関してＤＣＴ係数の全てを処理することができる。各ブロックを介しこれらのステップを用いてループさせることにより、ＤＣＴ係数の全てを解析することができる。もっとも、これは処理に要する時間に影響する。
方法１：
SUM[i] = Σk,jABS(DCT1k,j[i] - DCT2k,j[i])
ここで、
ｋはフレーム幅方向のマクロブロックの数で、ｋ＝１ないしフレーム幅／１６、
ｊはフレーム高さ方向のマクロブロックの数で、ｊ＝１ないしフレーム高さ／１６、
ｉはマクロブロック内のブロックの数で、ｉ＝１ないしマクロブロック内のブロック数、
ＤＣＴ１k,j及びＤＣＴ２k,jは、第５図に示すように、前ビデオフレーム及び現ビデオフレームの各々の特定のマクロブロックに関するＤＣＴ係数、
ＡＢＳは絶対値関数である。
本例では、３５２ x ２４０ピクセルのフレームに対しては、ｋ＝１ないし２２、ｊ＝１ないし１５，及びｉ＝１ないし６である。本方法及び以下の方法では、フレームのマクロブロック幅又はフレームのマクロブロック高さは偶数整数であるとする。何故なら、フレームサイズが一様に見えない場合は、フレームサイズは処理中に合うように縮小拡大されるからである。
方法１は、マクロブロックのブロック（４つの輝度ブロック及び２つの色ブロック）の各々の区別をつける。この方法では、現フレームからの現マクロブロックにおける各輝度及び色ブロックに関する直流値が、前ビデオフレームにおける対応するブロックに関する対応する直流値から各々減算される。各差分の別個の和SUM[i]が、当該マクロブロック内の各輝度及び色ブロックに関して保持される。
差分の和は次のマクロブロックに繰り越され、対応する差分に加算される（SUM[1]，SUM[2]，…，SUM[6]）。現ビデオフレームのマクロブロックの各々を処理した後、現ビデオフレームの各輝度ブロック及び各色ブロックに関して累算された差分が得られる。これら６個のSUMの各々は、当該SUMが合計されたブロックの形式に特有の自身の上限及び下限敷居値と比較される。この方法はブロックの各形式について異なる敷居値比較を可能にする。
SUM[i]が所定の敷居値（thresh1[i]）、ここでは、
Thresh1[i] = 0.3 * ABS(Σk,jDCT2k,j[i])
より大きいと、現ビデオフレームは更なる処理及び可視索引中での可能性のある使用のために、フレームメモリに待避される。このフレームメモリは本発明におけるようにテープ、ディスクであってもよく、又は本システムの外部若しくは内部の如何なる他の記憶装置であってもよい。
SUM[i]が所定の敷居値（thresh2[i]）、ここでは、
Thresh2[i] = 0.02 * ABS(Σk,jDCT2k,j[i])
より小さいと、多分静止情景であることを示すために、静止情景カウンタ（SSctr）が増加される。前ビデオフレームが一時メモリに待避される。本発明においては、上記一時メモリは１個のみのフレームを待避し、従って上記前フレームは該一時メモリに現在記憶されている何れのビデオフレームも置換するであろう。上記カウンタが所定数（本例では、例えば３０）に到達すると、上記一時メモリ内に待避された最前の（most previous）ビデオフレームが、可視索引での可能性のある使用のためにフレームメモリに転送される。本発明においては、最終フレームの１つ前のフレームが静止情景を多分示すために待避されるが、明らかに、当業者であれば該方法及び以下の方法において可能性のある静止情景の第１フレームを待避し使用することもできる。
SUM[i]が前記２つの敷居値の間である場合は、SSctrは零にリセットされ、次の連続するフレームが比較される。
方法２：
SUM = Σk,jΣi(DCT1k,j,i - DCT2k,j,i)2/ABS(DCT2k,j,i)
ここで、
ｋはフレーム幅方向のマクロブロックの数であり、ｋ＝１ないしフレーム幅／１６、
ｊはフレーム高さ方向のマクロブロックの数であり、ｊ＝１ないしフレーム高さ／１６、
ｉはマクロブロック内のブロックの数であり、ｉ＝１ないしマクロブロック内のブロックの数、
DCT1k,j,i及びDCT2k,j,iは、前ビデオフレーム及び現ビデオフレームの各々の特定のマクロブロック及びブロックのＤＣＴ係数であり、
ABSは絶対値関数である。
方法１とは対照的に、方法２はブロック形式の間の区別はつけない。代わりに、方法２は現ビデオフレームと前ビデオフレームとのマクロブロックの間の直流差分のランニング合計を保持する。
ブロック間の各差分が自乗され、次いで現ブロックのＤＣＴ値に対して正規化される。即ち、現ビデオフレームからのブロックのＤＣＴ値が、前ビデオフレームにおける対応するブロックの対応するＤＣＴ値から減算される。次いで、この差分は自乗され、現ビデオフレームの対応するＤＣＴ値により除算される。もし、現ビデオフレームのＤＣＴ値が零である場合は、この比較のための和は１に設定される。フレームのマクロブロックの各々における各ブロックのＤＣＴ値の各々に関する差分は総和されて合計値SUMを得る。
次に、上記SUMは所定の敷居値と比較される。本例において、もし、SUMが所定の敷居値（thresh1）、
thresh1 = 0.3 * ABS(Σk,j,iDCT2k,j,i)
より大きい場合は、現ビデオフレームが更なる処理及び可視索引での可能性のある使用のためにフレームメモリに待避される。
本例において、もし、SUMが所定の敷居値（thresh2）、
thresh2 = 0.02 * ABS(Σk,j,iDCT2k,j,i)
より小さい場合は、静止情景カウンタ（SSctr）が可能性のある静止情景を示すために増加される。方法１におけるのと同様に、前ビデオフレームが、最前（most previous）のフレームのみを待避する一時メモリに待避される。SSctrが所定数（本例では、例えば３０）に到達すると、上記一時メモリ内に待避された最前のビデオフレームが、可視索引での可能性のある使用のためにフレームメモリに転送される。
もし、SUMが上記２つの敷居値の間である場合は、SSctrは零にリセットされ、次の連続したフレームが比較される。
方法３：
SUM[i] = Σk,j(DCT1k,j[i] - DCT2k,j[i])2/ABS(DCT2k,j)
ここで、
ｋはフレーム幅方向のマクロブロックの数であり、ｋ＝１ないしフレーム幅／１６、
ｊはフレーム高さ方向のマクロブロックの数であり、ｊ＝１ないしフレーム高さ／１６、
ｉはマクロブロック内のブロックの数であり、ｉ＝１ないしマクロブロック内のブロックの数、
DCT1k,j及びDCT2k,jは、前ビデオフレーム及び現ビデオフレームの各々の特定のマクロブロックのＤＣＴ係数であり、
ABSは絶対値関数である。
方法３は方法１と同様に、マクロブロックのブロック（４つの輝度ブロック及び２つの色ブロック）の各々の間の区別を行う。この方法においては、現ビデオフレームからの現マクロブロックにおける各輝度及び色ブロックに関する直流値が、前ビデオフレームにおける対応するブロックに関する対応する直流値から減算される。しかしながら、方法２におけるのと同様に、ブロック間の各差分は自乗され、現ブロックのＤＣＴ値に対して正規化される。即ち、現ビデオフレームからのブロックのＤＣＴ値が前ビデオフレームにおける対応するブロックの対応するＤＣＴ値から減算される。次いで、この差分は自乗され、現ビデオフレームの対応するＤＣＴ値により除算される。もし、現ビデオフレームのＤＣＴ値が零である場合は、該比較の和は１に設定される。
マクロブロックの各々における各形式のブロックのＤＣＴ値の各々に関する差分は累算されて、当該形式のブロック用の合計値SUM[i]が得られる。差分の別個の和SUM[i]は、マクロブロック内の輝度及び色ブロックの各々に対して保持される。これらの差分の和は、次のマクロブロックに繰り越され、対応する差分に加算される（SUM[1]，SUM[2]，…，SUM[6]）。現ビデオフレームのマクロブロックの各々を処理した後、現ビデオフレームの各輝度ブロック及び各色ブロックに関して累算された差分が得られる。これら６個のSUMの各々は、当該SUMが合計されたブロックの形式に特有の自身の上限及び下限敷居値と比較される。この方法はブロックの各形式について異なる敷居値比較を可能にする。
SUM[i]が所定の敷居値（先に定義したようなthresh1[i]）より大きいと、現ビデオフレームは更なる処理及び可視索引中での可能性のある使用のために、フレームメモリに待避される。
SUM[i]が所定の敷居値（先に定義したようなthresh2[i]）より小さいと、可能性のある静止情景であることを示すために、静止情景カウンタ（SSctr）が増加される。前ビデオフレームは、本発明においては最前の（most previous）ビデオフレームのみを待避するような一時メモリに待避される。上記SSctrが所定数（３０）に到達すると、上記一時メモリ内に待避された最前のビデオフレームが、可視索引での可能性のある使用のためにフレームメモリに転送される。
SUM[i]が前記２つの敷居値の間である場合は、SSctrは零にリセットされ、次の連続するフレームが比較される。
方法４：
方法１ないし３は、各々、完全なビデオフレームに対して作用し、個々の成分として総和又は累算される全ての輝度及び色に対してＤＣＴ値に関する差分又は差分の自乗の何れかの和をとる。方法４はマクロブロックのレベルで作用し、限られた処理で十分な結果をもたらす。
SUM = Σk,jMbdiff(MB1[i]k,j - MB2[i]k,j)
ここで、
ｋはフレーム幅方向のマクロブロックの数であり、ｋ＝１ないしフレーム幅／１６、
ｊはフレーム高さ方向のマクロブロックの数であり、ｊ＝１ないしフレーム高さ／１６、
ｉはマクロブロック内のブロックの数であり、ｉ＝１ないしマクロブロック内のブロックの数、
MB1k,j及びMB2k,jは、各々、前ビデオフレーム及び現ビデオフレームに関するマクロブロック、
Mbdiffは、２つのマクロブロックの間で互いに相違するブロックの数を決定し、この差が或る敷居値より大きい場合は第１の値を出力し、それ以外の場合は第２の値を出力するような関数である。
特定のマクロブロックのブロック（Ｙ１、Ｙ２、Ｙ３、Ｙ４、Ｃｒ及びＣｂ）の各々に関して、第１のマクロブロックの各ブロックと第２のマクロブロックの対応するブロックとを比較し、部分和subsum[i]を得ることにより、部分和（subsum[1]，subsum[2]，…，subsum[6]）が決定される。ここで、
subsum[i]j,k = ABS(DCT1[i]j,k - DCT2[i]j,k)
である。
例えば、現フレームの第１マクロブロックのＣｒの直流値が前フレームの第１マクロブロックのＣｒの直流値から減算され、subsum[Cr]1,1を得る。各subsum[i]は所定の敷居値（th1）と比較される。もし、本例において、上記subsum[i]が本例においては、
th1 = 0.3 * subsum[i]
であるような第１の所定の敷居値（th1）より大きい場合は、ブロックカウンタ（B1ctr）がインクリメントされ、一方、もし本例では、
th2 = 0.02 * subsum[i]
なる所定の第２敷居値（th2）より小さい場合は、ブロックカウンタ（B2ctr）がインクリメントされる。各subsum[i]は上記敷居値（th1及びth2）と比較されるが、該敷居値は定数（又は複数の定数）であるか、固定の関数（又は複数の関数）に基づくものであるか、又はブロックの形式に特有の関数（又は複数の関数）若しくは定数（複数の定数）に基づくものとすることができる。
マクロブロックの６個のブロックが処理された後、上記ブロックカウンタが解析される。もし、本例で、ブロックカウンタB1ctrが本例では３であるような所定の敷居値（B1th）より大きい場合は、当該マクロブロックは前ビデオフレームの対応するマクロブロックとは異なると見なされ、マクロブロックカウンタMB1ctrがインクリメントされる。この場合、前記B1ctrはリセットされ、次のマクロブロックが解析される。
１つのビデオフレームの全マクロブロックが処理されると、MB1ctrは所定のフレーム敷居値と比較される。もし、本例では３５２ x ２４０のフレーム（又は画像）を用いているMB1ctrが、１００なる第１の所定のフレーム敷居値（f1th）より大きいと、現フレームがフレームメモリに待避され、MB1ctrはリセットされる。
マクロブロック内の幾つかの数のブロックが類似しており、B2ctrが３なる所定の敷居値（B2th）より大きいと、当該マクロブロックは同一であるとみなされ、第２マクロブロックカウンタMB2ctrはインクリメントされる。この場合、B2ctrはリセットされ、次のマクロブロックが解析される。１つのフレームの全マクロブロックが解析され、もし、第２マクロブロックカウンタが２５０なる第２の所定のフレーム敷居値（f2th）より大きい場合は、ビデオフレームは同一であるとみなされ、フレームカウンタ（Fctr）はリセットされる。MB2ctrはリセットされ、次のフレームが解析される。Fctrが所定の敷居値（SSthresh、本例では３０）に到達すると、静止系列が発生したと推定され、前フレームがフレームメモリに待避される。この処理は、ビデオフレームが前ビデオフレームとは相違すると判定されるか、又は新たなフレームが使い尽くされるまで継続する。この場合、Fctrはリセットされ、次のビデオフレームが解析される。
この方法及び前記方法においてフレームメモリ内に待避されるフレームは、キーフレームであると見なされる。
方法４は、差分の正規化された自乗を用いて実施することもできる。即ち、ブロック間の差を単に使用するのに代えて、該差は自乗されると共に、減算されたブロック内で見いだされる値により除算される。この場合、情景カット検出は敷居に対してより敏感ではなくなる。
以下に述べるキーフレームフィルタリングは、各フレームが重要情景検出過程の下で処理される際に、又は全フレームが処理された後に、実施することができる。加えて、上述した敷居値はより小さな又はより大きな検出を得るように容易に変化させることができる。例えば、０.３においては０.０２と同様に容易に他の値に変更することができ、又は常数はより高い又はより低い効率を可能とするよう変化させることができ、例えばSSctrは異なってもよい。更に、各敷居は代わりに常数、固定関数、又は解析されているブロックの形式若しくは位置により可変な関数とすることもできる。
キーフレームフィルタリング：
本発明においては、フレームメモリに待避されるキーフレームの数を、繰り返しのフレーム及び他の選ばれた形式のフレームをフィルタリング除去することにより減少させるために、キーフレームフィルタリング方法が使用される。キーフレームフィルタリングは、ホストプロセッサ２１０内のキーフレームフィルタ器２４０により、重要情景検出（第２Ａ図及び第２Ｂ図）の後に実行される。重要情景検出処理の間は、例えば記録されたビデオの時間当たり２０００キーフレームのような膨大な数のキーフレーム（選択されたフレーム又は画像）が抽出される可能性があり、これは使用者により扱うにはしばしば数が多過ぎる。しかしながら、使用者の見通しからでは、重要情景検出において選択された全てのキーフレームが当該ビデオの可視内容を伝達するのに重要又は必要であるというのではない。例えば、会話シーンにおいては、話し手は数回見られそうである。本発明は、斯かる会話シーンに関しては話し手当たり１つのフレームのみの保持を可能とする。
第６Ａ図及び第６Ｂ図は、キーフレームフィルタリングの手順の概略である。第６Ａ図のステップ６０２ないし６０６に示すように、フレーム内の各ブロックに関してブロック記号（block signature）が導出される。ブロック記号７００は本例では８ビットであり、第７図に示すように、そのうちの３ビットは直流記号７０２を表し、５ビットは交流記号７０４を表す。１つのブロック内の直流値以外の全ての他のＤＣＴ係数は交流値である。
上記直流記号は、直流値を抽出し（ステップ６０２）、該直流値が特定の範囲内の値（本例では、-2400ないし2400）の何処にあるかを判定する（ステップ６０４）ことにより導出される。該範囲は、第７図に示すように、所定の数の区間に分割される。本発明においては、８つの区間が使用されている。もっとも、画像のもっと高い又は低い細分性のために、もっと多い又は少ない区間を使用することもできる。
各区間には、第７図に示すような予め規定されたマッピングが割り当てられる。各直流値は上記範囲と比較され、当該直流値がある区間用のマッピングが返送される。必要とされるビットにより表される値は、区間の数に相当する。本例では、上記範囲は８つの区間に分割されているので、３個のビットが使用される。かくして、第７図に示すようにブロック記号７００は直流記号７０２を最初の３ビットとして含み、交流記号７０４を残りの５ビットとして含む。
第６Ａ図のステップ６０４では、当該ブロックの交流値の範囲を良好に表すために、第７図に示すように、直流値に最も近い５つの交流値（Ａ１ないしＡ５）が抽出される。ステップ６０６におて、上記５つの交流値の各々が本例では２００である敷居値（ACthresh）と比較され、もし、当該交流値が該敷居値ACthreshより大きい場合は、当該交流記号７０６内の対応するビットが１のような所定の値に設定され、上記敷居値ACthresh以下の場合は、対応するビットは零に設定される。
このようにしてブロック記号７００が得られ、これらブロック記号を用いて、例えば単色であるフレームのような特定の画像又はフレームを可視索引からフィルタリング除去することができる。
単色フレームをフィルタリング除去する素早い方法が、直流記号のみを頼りとしてステップ６０２ないし６０４の間でなされる。各直流記号７０４が比較され、発生する各特定の直流記号について計数が保持される（ステップ６６０）。即ち、各直流記号は当該直流値が何の区間にあるかを示すから、本例では、８個の異なる直流記号が存在する。例えば、９０％のブロック、即ち1782個のブロック（0.9 * 330マクロブロック * ６ブロック）が同一の区間にある（同一の直流記号を有する）場合は、当該画像は単色であると見なされ（ステップ６６２）、当該フレームは捨てられるか又はフレームメモリからフィルタリング除去される（ステップ６６４）。他の例として、別個の計数が各形式のブロック（Ｃｒ、Ｃｂ、…）に対して保持され、これら別個の各計数が対応する敷居値と比較されるようにしてもよい。
フレーム内の各マクロブロックの各ブロックについてブロック記号（Blk_sig）を導出した後、領域が判定される。領域は、本例では、各々が当該領域内の少なくとも１つの他のブロックに隣接し、且つ、当該領域内の該他のブロックと同様のブロック記号を共有するような２以上のブロックである。タイミングを減少するのが望ましい場合は、領域を規定するのに、もっと多くのブロックが必要となる。当該フレームの各ブロック記号が他の各ブロック記号と比較され、領域を判定するために計数されるようにすることもできるが、本発明は、フレーム内の領域を判定するために領域成長方法（region growing process）のような既知の技術を使用する（ステップ６０８）。
上記領域成長方法の間には、各領域に対して１つの領域カウンタが領域内のブロック数（サイズ：size）を計数すべく保持され、１６ビットにより表される。領域を見つけるために一旦全フレームが解析されたら、各領域の重心又は中心を見つけるために他の既知の方法を使用することができ、該方法は本例ではx-y軸基準に基づくものである（ステップ６１０）。ｘ座標及びｙ座標の両方がＣＸ及びＣＹとして各々抽出され、１６ビットにより表される。この場合、各領域には領域記号Region(Blk_sigr，sizer，CXr，Cyr)が割り当てられ、ここでｒは領域番号である。当該領域用のブロック記号は、前記領域成長方法により判定された最も支配的なブロック記号に基づいて決定される。
特定の評価基準（本例では、増加するサイズ）に基づいて、領域が並び替えられ、領域フィルタリングが実行される（ステップ６１２）。本例においては、最大の３つの領域を除く全ての領域はフィルタ除去される。これら残りの３つの領域は、当該フレームを表すフレーム記号に組み込まれる。フレーム記号は、本例では、１６８ビットにより表され、（Region1，Region2，Region3）なる形態、詳細には（Blk_sig1，size1，CX1，CY1，Blk_sig2，size2，CX2，CY2，Blk_sig3，size3，CX3，CY3）なる形態である。
第６Ｂ図に示すように、フレーム比較手順は現フレーム（Ｆ２）と前フレーム（Ｆ１）とを、それらの各フレーム記号に基づいて比較する（ステップ６１６）。
本例では、各Region1が比較され、次いで各Region2が比較され、最後に各Region3が比較される。即ち、各領域のブロック記号が以下に従って比較される。
FDiff = ABS(size1F1 - size1F2) + ABS(size2F1 - size2F2) + ABS(size3F1 - size3F2)
FDiffが１０未満の場合は、フレームは類似であると見なされ、更なる対象物処理がなされる（ステップ６２０）。FDiffが１０以上の場合は、フレームは相違すると見なされ、該手順の下では何れのフレームもフィルタされない。
領域は、通常、物体、人、物等の“対象物”を表している。対象物処理は、領域内に見られる対象物が前フレームにおいて同一の位置又は非常に接近した近傍にあるかを判定する。本例では、該対象物は当該フレームの重要な焦点であるか又はより重要な焦点の１つである。例えば、ビデオはボールで遊んでいる子供に焦点を当てているかもしれず、その場合ボールは当該フレーム内で移動する。使用者が、可視索引内のフレームの数を、画像内の何処に対象物があるかを気にしない、ように制限したいと欲する場合は（ステップ６２２）、この時点で、Ｆ２、即ち現フレームはフレームメモリからフィルタ除去される（ステップ６２４）。
使用者が、対象物がフレーム内の何処にあるかを気にし、同一の又は非常に接近した近傍に見られる対象物を有するようなフレームのみをフィルタしたい場合は、幾つかの方法を使用することができる（対象物フィルタ、ステップ６２６）。
第１の方法は、以下に示すように、中心を、それらのユークリッド距離を判定することにより比較する。即ち、
Edist = SQRT[(CX1F1-CX1F2)2 + (CY1F1-CY1F2)2] + SQRT[(CX2F1-CX2F2)2 + (CY2F1-CY2F2)2] + SQRT[(CX3F1-CX3F2)2 + (CY3F1-CY3F2)2]
もし、Edistが３より大きい場合は、当該対象物は移動したと推定され、フィルタリングは実行されない。もし、Edistが３以下である場合は、当該対象物は略同じ位置に留まっていたと推定され、従って現フレームはフィルタ除去される。
対象物フィルタリングの第２の方法は、フレームをマクロブロックを用いて比較する。即ち、各マクロブロック内の各ブロックのブロック記号が比較される。例えば、現フレーム（Ｆ２）のＭＢ1,1（フレームの位置1,1のマクロブロック）のＹ１ブロックのブロック記号が、前フレーム（Ｆ１）のＭＢ1,1のＹ１ブロックのブロック記号比較される。
先ず、上記Ｙ１ブロックの直流記号が比較される。もし、直流記号が一致したら、交流記号がビット毎に比較される。計数値（ACcount）が保持され、もし、所定のビット数（本例では５ビットのうちの４つ）が一致した場合は、ブロックカウンタ（BlkCTR）がインクリメントされる。もし、直流記号が一致しない場合、又はACcountが４未満の場合は、次のブロックが解析される。
マクロブロックの各ブロックが（本例では、4:2:0、６個のブロックを用いて）解析される。１つのマクロブロック内の全ブロックが解析されたら、ブロックカウンタがチェックされる。もし、BlkCTRが４以上であったら、これらブロックは類似であると見なされ、マクロブロックカウンタ（MBCTR）が増加される。
画像中の全マクロブロックが一旦解析されると、MBCTRがチェックされる。もし、MBCTRが本例ではフレーム内のマクロブロックの７５％（２４７マクロブロック、即ち0.75 * 330マクロブロック）以上であると、当該フレームは類似していると見なされ、現フレーム（Ｆ２）がフレームメモリからフィルタ除去される。もし、MBCTRが７５％未満であると、この時点ではフレームはフィルタされない。
単色のフレームをフィルタ除去する付加的な方法は、領域サイズが判定される場合になされる。領域サイズがフレームブロックの９０％、即ち１７８２ブロック以上であると、当該フレームは単色であると見なされ、フレームメモリからフィルタされる。このフィルタリングは、上述した単色フレームフィルタリング方法よりも多くの処理を要する。
前記キーフレーム記号に基づいて、キーフレームがフィルタ除去され、使用者により最も望まれると思われるものだけを保持する。異なる敷居値を用いることにより、フィルタ除去されるキーフレームの数は増加又は減少させることができる。
キーフレームフィルタリング処理においては、源ビデオ中のコマーシャルの存在が、通常、判定される。本発明は、使用者が、コマーシャルからのキーフレームが可視索引の一部として含められるべきか、又は、それらキーフレームは除外されるべきかを選択することを可能にする。
コマーシャルの存在は、通常、時間単位当たりのカット数が大きいことにより示される。しかしながら、アクション映画も時間単位当たり多数のキーフレームを伴う長いシーンを有している場合がある。より信頼性のあるコマーシャル分離を行うために、源ビデオ内でのキーフレームの全分布が解析され、コマーシャルを伴う区画の頻度及び可能性を推定するよう試みる。
コマーシャルは、典型的には、テレビジョン番組の間に一定の間隔で、例えば３０分の連続コメディの間の５ないし１０分毎に、分散されている。コマーシャルの持続時間は典型的には１ないし２分である。コマーシャルは、何時、分当たり多数のキーフレームが発生するかを判定することにより分離される。即ち、各キーフレームの相対時間が他のキーフレームと比較される。
前記重要情景検出処理の間において、或るフレームがキーフレームとしてフレームメモリに待避される際、対応するフレーム番号が、例えばその発生の相対時間を示す時間コード、即ちタイムスタンプに変換される。全てのキーフレームが抽出された後、キーフレーム密度が最後の１分の間に関して計算される、ここで、
Ｌ１＝最後の分のキーフレーム密度＝最後の分におけるキーフレームの数／１８００
また、キーフレーム密度が最後の５分に関しても計算される。ここで、
Ｌ５＝最後の５分のキーフレーム密度＝最後の５分におけるキーフレームの数／９０００
本例では３であるような常数に関し、Ｌ１＞（Ｌ２ * 常数）であると、コマーシャル中断である可能性が示される。最後に示されたコマーシャル中断の最後のキーフレームのタイムスタンプが５分より大きい場合は、現在のコマーシャル中断が示され、最後の１分の全キーフレームがフレームメモリからフィルタされる。
ビデオ検索：
一旦ビデオテープ又はビデオファイルが可視索引を有すると、使用者は該可視索引にアクセスしたいと欲するであろう。ビデオ検索処理は、上記可視索引を使用者に対して利用可能な形態で表示する。使用者は該可視索引を介して検索（ブラウズ）し及びナビゲートし、源テープ又はＭＰＥＧファイル上の選択した点に向かって高速順方向送りをする。第８図は、この検索処理を詳細に示している。
ステップ８０２において、源ビデオは、もし必要なら、例えばＶＣＲ又は再生装置により可視索引の位置（本例ではテープの始点）まで巻き戻される。もし、上記源ビデオがＭＰＥＧファイル又はディスク上にあるなら、ポインタが記憶位置の始点を指し示し、巻き戻される必要はないであろう。同様にして、他の記憶手段は可視索引の始点に適切に設定される。
ステップ８０４において、上記可視索引は上記源ビデオからＶＣＲヘッド、コンピュータ又は他のハードウェア装置により読み取られ、索引メモリに待避される。この索引メモリは如何なる形式の記憶装置であってもよい。ステップ８０６においては、例えば上記ＶＣＲのプロセッサが、上記源ビデオの索引メモリからキーフレームを取り出す。また、ステップ８０６においては、取り出された上記キーフレームが本例では１２０ x ８０ピクセルにサイズを減少させるよう処理される。もっとも、他のフレームサイズも自動的に又は使用者により手動で選択することができる。
次いで、上記の処理されたフレームはステップ８０８において前記ホストプロセッサ２１０に転送される。該ホストプロセッサは、処理された上記キーフレームを表示メモリに書き込み、それらをコンピュータディスプレイ、テレビジョン画面等のユーザインターフェースに表示する。
ステップ８１０において、源ビデオは上記ビデオ索引が一旦読み取られると停止される。ビデオ索引付けシステム又はソフトウェアが、ステップ８１２において、キーフレームをコンピュータモニタ又はテレビジョン画面のようなディスプレイ上に表示されるようにする。ステップ８１４においては、使用者が望めば、上記可視索引は印刷される。使用者は、ステップ８１６に示すように、可視索引から特別なキーフレームを選択することもできる。使用者が源ビデオを、この特別なキーフレームで見たいと欲するなら、源テープは該源テープ上の対応する位置まで自動的に順方向送りされ、その位置からキーフレームが取り出され、該源テープは再生される（ステップ８１８）。他の例として、カウンタが表示され、使用者に該源ビデオを通して順方向送りするのを可能にするか、又は源ビデオを該可視索引から上記選択されたキーフレームまで再生するのを可能にする。
本発明は、前記重要情景検出処理を削除し、キーフレームフィルタリングだけを実施するようにしてもよい。しかしながら、処理は現在広く利用可能なプロセッサを用いたのでは大幅に遅くなるであろう。
付加的な特徴によれば、使用者は如何なる点でもビデオテープの再生を停止し、当該ビデオテープ用の可視索引にアクセスすることが可能となる。これには、１つのセッションの間にビデオテープが最初に使用される時に可視索引を記憶するメモリ又はバッファを必要とするであろう。
本発明はＤＣＴ係数を用いて示されている。しかしながら、波長係数、又は画像の副領域に作用して該副領域に関する代表的値を与える関数のような代表的値を代わりに使用することもできる。これは、重要情景検出及びキーフレームフィルタリングに使用することができる。
本発明を好ましい実施例に関して説明したが、上記に概要を述べた原理の範囲内における変形例は当業者にとっては明らかであり、本発明は上述した好ましい実施例に限定されることなく、これら変形例をも含むことを意図するものであると理解されたい。
【図１】
0004749518.tif 000002
【図２Ａ】
0004749518.tif 000003
【図２Ｂ】
0004749518.tif 000004
【図３】
0004749518.tif 000005
【図４】
0004749518.tif 000006
【図５】
0004749518.tif 000007
【図６Ａ】
0004749518.tif 000008
【図６Ｂ】
0004749518.tif 000009
【図７】
0004749518.tif 000010
【図８】
0004749518.tif 000011