(57)【特許請求の範囲】
【請求項１】
第１のピクチャ・グループ（ＧＯＰ）構造を有する圧縮されたデータの第１のビットストリームから、符号化変換されたピクチャを表す出力ビットストリームを生成し、前記符号化変換されたピクチャは、前記第１のＧＯＰ構造とは異なる少なくとも１つの第２のＧＯＰ構造を有する符号化変換方法であって、
前記第１のビットストリームを受け取る第１のステップと、
前記第１のビットストリームにおける１つ以上のピクチャの少なくも２つのマクロブロックから第１および第２の動き情報を取得する第２のステップであって、前記第１および第２の動き情報は、前記出力ビットストリームに含まれる予測符号化ピクチャにおけるマクロブロックを生成するために利用できる、第２のステップと、
前記第１および第２の動き情報から生成される前記マクロブロックのための動き情報を得るために、前記生成されるマクロブロックと、前記第１および第２の動き情報を有する前記マクロブロックとの相互関係に基づいて前記第１および第２の動き情報の各重みを計算する第３のステップと、
前記計算された第１の動き情報の重みが前記計算された第２の動き情報の重みより重い場合に、前記生成されたマクロブロックの前記符号化変換プロセスで用いられる第３の動き情報を生成するために、前記第１の動き情報を利用する第４のステップと、
前記第３の動き情報を用いることにより、生成される前記マクロブロックを符号化変換する第５のステップと、
前記第２から第５までのステップを順番に繰り返すことにより前記第１のビットストリームを符号化変換することにより前記第２のビットストリームを出力するステップとを備えることを特徴とする符号化変換方法。
【請求項２】
前記第５のステップは、前記第１のビットストリームのビット・レートが前記第２のビットストリームのビット・レートとは異なるように、前記第２のビットストリームの前記ビット・レートを制御するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記第５のステップは、前記第２のビットストリームによって表されるピクチャが、前記第１のビットストリームによって表されるピクチャのサイズとは異なるサイズを提示するように、前記第１のビットストリームによって表されるピクチャの前記サイズを調整するステップを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記第５のステップは、前記第２のビットストリームによって表されるピクチャが、前記第１のビットストリームによって表されるピクチャのサイズとは異なるサイズを提示するように、前記第１のビットストリームによって表される前記ピクチャの前記サイズを調整するステップを含むことを特徴とする請求項２に記載の方法。
【請求項５】
前記第５のステップは、前記第１のビットストリームによって表される前記ピクチャがフレーム・ピクチャとして既に符号化されている前記第２のビットストリームによって表される前記ピクチャを符号化するステップを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記第５のステップは、前記第１のビットストリームによって表される前記ピクチャがフィールド・ピクチャとして既に符号化されているときに、前記第２のビットストリームによって表される前記ピクチャをフレーム・ピクチャとして符号化するステップをさらに含むことを特徴とする請求項４に記載の方法。
【請求項７】
前記第５のステップは、前記第２のビットストリームによって表される前記ピクチャがインターレース・シーケンスとして出力されるように、前記第１のビットストリームによって表される前記ピクチャが順次シーケンスとして受け取られるときに、前記第１のビットストリームによって表される前記ピクチャをインターレース・シーケンス化するステップを含むことを特徴とする請求項４に記載の方法。
【請求項８】
前記第５のステップは、前記第２のビットストリームによって表される前記ピクチャが順次シーケンスとして出力されるように、前記第１のビットストリームによって表される前記ピクチャがインターレース・シーケンスとして受け取られるときに、前記第１のビットストリームによって表される前記ピクチャを非インターレース・シーケンス化するステップを含むことを特徴とする請求項４に記載の方法。
【請求項９】
前記第５のステップは、前記第１のビットストリームによって表されるピクチャがフレーム・ピクチャとして既に符号化されているときに、前記第２のビットストリームによって表されるピクチャをフィールド・ピクチャとして符号化するステップを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記第５のステップは、前記第１のビットストリームによって表されるピクチャがフィールド・ピクチャとして既に符号化されているときに、前記第２のビットストリームによって表されるピクチャをフレーム・ピクチャとして符号化するステップを含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記第２のビットストリームによって表されるピクチャがインターレース・シーケンスとして出力されるように、前記第１のビットストリームによって表されるピクチャが順次シーケンスとして受け取られるときに、前記第１のビットストリームによって表されるピクチャをインターレース・シーケンス化するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記第２のビットストリームによって表されるピクチャが順次シーケンスとして出力されるように、前記第１のビットストリームによって表されるピクチャがインターレース・シーケンスとして受け取られるときに、前記第１のビットストリームによって表される前記ピクチャを非インターレース・シーケンス化するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１３】
符号化変換することにより、主イメージを表す圧縮されたイメージ・データの第１のビットストリームから、前記主イメージの一部分を表す第２のビットストリームを生成するための符号化変換方法であって、
前記第１のビットストリームを受け取る第１のステップと、
前記第１のビットストリームにおける１つ以上のピクチャの少なくとも２つのマクロブロックから第１および第２の動き情報を取得する第２のステップであって、前記第１および第２の動き情報は、前記第２のビットストリームに含まれる予測符号化ピクチャにおけるマクロブロックを生成するために利用できる、第２のステップと、
前記生成されるマクロブロックと、前記第１および第２の動き情報から生成される前記マクロブロックとの相互関係に基づいて前記第１および第２の動き情報の各重みを計算する第３のステップと、
前記計算された第１の動き情報の重みが前記計算された第２の動き情報の重みより重い場合に、前記生成されたマクロブロックの前記符号化変換プロセスで用いられる第３の動き情報を生成するために、前記第１の動き情報を利用する第４のステップと、
前記第３の動き情報を用いることにより、生成される前記マクロブロックを符号化変換する第５のステップと、
前記第２から第５までのステップを順番に繰り返すことにより前記第１のビットストリームを符号化変換することにより前記第２のビットストリームを出力するステップとを備えることを特徴とする符号化変換方法。
【請求項１４】
符号化変換することにより、入力符号化パラメータを有する圧縮されたデータの入力ビットストリームから、前記入力ビットストリームの前記入力符号化パラメータとは異なる出力符号化パラメータを有する出力ビットストリームを生成する符号化変換方法であって、
前記入力ビットストリームを受け取る第１のステップと、
前記入力ビットストリームにおける１つ以上のピクチャの少なくとも２つのマクロブロックから第１および第２の動きベクトルを取得する第２のステップであって、前記第１および第２の動きベクトルは、前記出力ビットストリームに含まれる予測符号化ピクチャにおけるマクロブロックを生成するために利用できる、第２のステップと、
前記第１および第２の動きベクトルから生成される前記マクロブロックのための動きベクトルを得るために、前記生成されるマクロブロックと、前記第１および第２の動きベクトルを有するマクロブロックとの相互関係に基づいて前記第１および第２の動きベクトルの各重みを計算する第３のステップと、
前記計算された第１の動きベクトルの重みが前記計算された第２の動きベクトルの重みより重い場合に、前記第１の動きベクトルを利用して、前記生成されたマクロブロックの前記符号化変換プロセスで用いられる第３の動きベクトルを生成する第４のステップと、
前記第３の動きベクトルを用いることにより、生成される前記マクロブロックを符号化変換する第５のステップと、
前記第２から第５までのステップを順番に繰り返すことにより前記入力ビットストリームを符号化変換することにより圧縮されたデータの前記出力ビットストリームを出力するステップとを備えることを特徴とする符号化変換方法。
【請求項１５】
前記入力符号化パラメータが、ピクチャ・グループ（ＧＯＰ）構造、ピクチャ・サイズ、ビット・レート、フレーム・ピクチャ形式、フィールド・ピクチャ形式、順次シーケンス、およびインターレース・シーケンスのうちの少なくとも１つを表すことを特徴とする請求項１４に記載の符号化変換方法。
【請求項１６】
前記出力符号化パラメータが、ピクチャ・グループ（ＧＯＰ）構造、ピクチャ・サイズ、ビット・レート、フレーム・ピクチャ形式、フィールド・ピクチャ形式、順次シーケンス、およびインターレース・シーケンスのうちの少なくとも１つを表すことを特徴とする請求項１４に記載の符号化変換方法。
【発明の詳細な説明】
【０００１】
（政府使用許諾権）
米国政府は、本発明における支払い済み許可証、ならびに国立標準技術研究所（Ｎａｔｉｏｎａｌ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｓｔａｎｄａｒｄｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｙ）によって認められた契約番号７０ＮＡＮＢ５Ｈ１１７１の条項によって提供されるような妥当な条項で特許権所有者に対して他者に使用を許可するように要求するための限定状況内での権利を有する。
【０００２】
（発明の分野）
本発明は、一般にビデオ・シーケンスの符号化変換における動き推定（ｍｏｔｉｏｎ  ｅｓｔｉｍａｔｉｏｎ）に関し、より具体的に言えば、受け取ったビデオ・シーケンスから外挿された動き情報を使用することにより、受け取ったビデオ・シーケンスを符号化変換する、それに関して符号化変換プロセスからの動き推定を最小限にするか、または、なくすための技法に関する。
【０００３】
（発明の背景）
データ圧縮技法は、大量のデータを比較的小さな帯域幅を介して伝送できるようにするものである。圧縮システムで使用されるアルゴリズムは、使用可能な帯域幅または記憶域容量、アプリケーションが必要とする機能、ならびに圧縮アルゴリズム（符号器および復号器）を実施するために必要なハードウェアの入手可能性に依存している。本明細書で引用文献に基づいて組み込まれるＭｏｖｉｎｇ  Ｐｉｃｔｕｒｅｓ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ−ｔｙｐｅ  ２（「ＭＰＥＧ−２」）の圧縮標準は、ビデオ・データの圧縮に関するよく知られた技法である。ビデオ符号器が動きベクトルの算出に使用するプロセスである動き推定は、一般に、符号化プロセスの中で最もコストのかかる部分であるとみなされる。同様に動き推定は、ビデオ・シーケンスが復号化され、次いで新しいパラメータで再符号化される符号化変換（ｔｒａｎｓｃｏｄｉｎｇ）プロセスの中で最もコストのかかる部分である可能性が高い。高精細度テレビ（「ＨＤＴＶ」）の出現により、テレビジョン・スタジオはピクチャ・データのＭＰＥＧ−２ビットストリームをある形式から別の形式へと符号化変換する必要が生じるため、これは重要な関心事である。たとえば、ＨＤＴＶ標準に対応しているテレビジョン・スタジオは、ＭＰＥＧ−２ビットストリームを１つのピクチャ・グループ（「ＧＯＰ」）構造から他の構造へ、１つのピクチャ・サイズから他のサイズへ、および／またはあるビット・レートから他のビット・レートへ、符号化変換できなければならない。これらのスタジオは、ＭＰＥＧ−２ピクチャをフィールド・ピクチャからフレーム・ピクチャへ、またはフレーム・ピクチャからフィールド・ピクチャへ符号化変換する必要が生じる場合がある。さらにまたスタジオは、ＭＰＥＧ−２ピクチャをインターレース・シーケンス（ｉｎｔｅｒｌａｃｅｄ  ｓｅｑｕｅｎｃｅ）から順次シーケンス（ｐｒｏｇｒｅｓｓｉｖｅ  ｓｅｑｕｅｎｃｅ）へ、または順次シーケンスからインターレース・シーケンスへ符号化変換する必要が生じる場合もある。符号化変換は、入力が主イメージを表し符号化変換された出力が主イメージ内の副イメージを表す、「クロッピング（ｃｒｏｐｐｉｎｇ）」機能を実行するためにも使用することができる。
【０００４】
（発明の概要）
したがって、本発明の一目的は、動き推定を最小限にするか、または、なくすようなビデオ・シーケンスの符号化変換技法を提供することである。
【０００５】
他の目的は、入力ビットストリームからの動き情報を利用して、符号化変換された出力ビットストリーム用の動きベクトルを生成する、ビデオ・シーケンスの符号化変換技法を提供することである。
【０００６】
他の目的は、すべてのＭＰＥＧ−２予測モードをサポートする符号化変換プロセス用の、動き推定技法を提供することである。
【０００７】
これらおよび他の目的は、識別可能な符号化パラメータを有する圧縮されたイメージ・データの第１のビットストリームを受け取ることによって実行される、符号化変換方式を備えた本発明の原理に従って達成できるものである。これらのパラメータは、第１のビットストリーム内に表されたピクチャのＧＯＰ構造、第１のビットストリーム内に表されたピクチャのサイズ、第１のビットストリーム内に表されたピクチャがフィールド・ピクチャであるかフレーム・ピクチャであるか、および／または第１のビットストリーム内に表されたピクチャが順次シーケンスを定義するかまたはインターレース・シーケンスを定義するかに関係させることができる。第１の動き情報が第１のビットストリームから取得され、圧縮されたイメージ・データの第２のビットストリームに関する第２の動き情報を外挿するために使用される。第２のビットストリームは、第１のビットストリームのパラメータとは異なる１つまたは複数のパラメータを有し、符号化変換済み出力として提供される。
【０００８】
（発明の詳細な説明）
ここで図１を参照すると、動きベクトル外挿（ｅｘｔｒａｐｏｌａｔｉｏｎ）の基本原理が示されている。一般に、動きベクトル外挿とは、動きがシーケンス内のどこでも既知である場合に、ビデオ・シーケンス内の１つのイメージに関する動きを推定するための技法である。図１では、ピクチャＢ内の太線で表された四角形が、ビデオ・ピクチャ内にあるピクセル（別名ペル）の個々のブロックを表す。ピクチャ内の各ブロックは、固定位置を有するものと仮定されている。ＭＰＥＧ−２では、これらのブロックは「マクロブロック」と呼ばれ、それぞれが１６×１６ピクセルのブロックで構成される。図１の実線矢印は、ピクチャＡからピクチャＢに移動したブロックとして太線ブロックの既知の動きを表す。実際に、それは、動いたブロック内のイメージであって、固定位置にあるブロックそのものではない。動きベクトルによって定義されるこの既知の動きは、そのブロックがピクチャＢからピクチャＣへ動くとして、ブロックの動きを外挿するために使用される。図１の点線矢印は、外挿される動きベクトルを表す。図１は（添付の他の図面と同様に）ブロックに関連付けられたベクトルが基準ピクチャ内のブロックの「ソース（ｓｏｕｒｃｅ）」を示すという、一般的な符号化規則を使用しているので、図１内の矢印は実際には動きと反対の方向を示す。所与の動きベクトルは、実際にはそれぞれが２つのピクチャ間でのブロックの水平動きおよび垂直動きを示す１組のｘおよびｙ座標として表される。通常、外挿は、動きが時間的に均一であり空間的に「平滑（ｓｍｏｏｔｈ）」であると仮定する。したがって、ピクチャＢ内のそのブロックはピクチャＣに示された位置まで動くと期待され、それがオーバラップするすべてのブロックは、ほぼ同じ動きをすると期待される。
【０００９】
次に図２を参照すると、本発明の原理に従って構築された符号化変換システムが示されている。図２では、符号化変換システム２００が圧縮されたイメージ・データのＭＰＥＧ−２の入力ビットストリーム２０１を受け取る。特定のビット・レートを提示するこの入力ビットストリーム２０１は、所与のサイズおよびＧＯＰ構造のピクチャを表す。入力ビットストリーム２０１のピクチャ・データはフィールド・ピクチャまたはフレーム・ピクチャで構成され、順次シーケンスまたはインターレース・シーケンスを表すことが可能である。当分野で知られているＭＰＥＧ−２デコーダ（復号器）２０２は、入力ビットストリーム２０１を受け取り、それを復号して圧縮解除されたデジタル・イメージ・データ２０３の出力を生成する。デコーダ２０２は、別の出力２０４として、入力ビットストリーム２０１からの動き情報（すなわち動きベクトル）も提供する。デジタル・イメージ・データ２０３は中間処理ユニット２０５に入力され、中間処理ユニット２０５はピクセル・ドメイン内で動作し、既知の様式でデジタル・イメージ・データ２０３によって表されたピクチャのサイズを変更することができる。この中間処理ユニット２０５は、ピクチャのサイズ変更に加えて、デジタル・イメージ・データ２０３で表された主イメージ内にある副イメージを分離することによって既知のクロッピング機能を実行することができ、副イメージとして表されるデータの出力を提供する。中間処理ユニット２０５は、ピクチャの順次シーケンスをピクチャのインターレース・シーケンスに符号化変換するとき、およびピクチャのインターレース・シーケンスをピクチャの順次シーケンスに符号化変換するときに必要な、既知のインターレース化操作および非インターレース化操作を実行することもできる。中間処理ユニット２０５は、どの処理操作（あれば）が実行されるかを示し、さらにそのような処理で使用されるパラメータを示す外部入力２０６に応動して、それ自体の操作（ｏｐｅｒａｔｉｏｎ）を実行する。中間処理ユニット２０５の操作は任意選択である（ｏｐｔｉｏｎａｌ）ため、所与の符号化変換アプリケーションに対してピクチャのサイズ変更、クロッピング、インターレース化、および非インターレース化が実行されない場合、中間処理ユニット２０５は単なるパス・スルー・ユニットとして動作し、どのようなピクセル・ドメイン処理もなしに、デジタル・イメージ・データ２０７の出力を提供する。この場合、デジタル・イメージ・データ２０７およびデジタル・イメージ・データ２０３は、明らかに同じである。これに代わって、所与の符号化変換アプリケーションに対してこれら１つまたは複数の操作が実行される場合、中間処理ユニット２０５はピクセル・ドメイン処理操作を実行し、その結果処理されたデジタル・イメージ・データ２０７の出力を提供する。このデジタル・イメージ・データ２０７は、中間処理ユニット２０５によって処理されたか否かにかかわらず、ＭＰＥＧ−２符号器２０８に入力され、この符号器が、受け取ったイメージ・データ２０７を外部入力２０９が示す新しいパラメータを使用して再符号化する。たとえば、符号器２０８は、入力ビットストリーム２０１によって表されるピクチャのＧＯＰ構造とは異なるＧＯＰ構造のピクチャを表すように、デジタル・イメージ・データ２０７を符号化し、および／またはそのビット・レートを調節することができる。符号器２０８は、デジタル・イメージ・データ２０７を、フィールド・ピクチャまたはフレーム・ピクチャとして符号化することもできる。符号化プロセスを実行する場合、符号器２０８は、復号器２０２からの出力２０４内にある動き情報を使用して、再符号化されるピクチャ用に動きベクトルを外挿する。その後、再符号化されたピクチャは、ＭＰＥＧ−２圧縮されたデジタル・イメージ・データの出力ビットストリーム２１０として、符号化変換システム２００から提供される。
【００１０】
前述のように、この出力ビットストリーム２１０は、入力ビットストリーム２０１のサイズおよびＧＯＰ構造とは異なるピクチャ・サイズおよびＧＯＰ構造を表すことが可能であり、出力ビットストリーム２１０のビット・レートは、入力ビットストリーム２０１のビット・レートと異なるように制御することが可能である。さらに、入力ビットストリーム２０１がフレーム・ピクチャを表すのに反して、出力ビットストリーム２１０がフィールド・ピクチャを表すことができ、または、入力ビットストリーム２０１がフィールド・ピクチャを表すのに反して、出力ビットストリーム２１０がフレーム・ピクチャを表すことができる。同様に、入力ビットストリーム２０１が順次シーケンスを表すのに反して、出力ビットストリーム２１０がインターレース・シーケンスを表すことができ、または、入力ビットストリーム２０１がインターレース・シーケンスを表すのに反して出力ビットストリーム２１０が順次シーケンスを表すことができる。さらに、出力ビットストリーム２１０は入力ビットストリーム２０１の「クロップ」されたバージョンを表すこともできる。本質的には、符号化変換システム２００は一定のパラメータを有する入力ビットストリーム２０１を受け取り、その入力ビットストリーム２０１を符号化変換して、その入力ビットストリーム２０１のパラメータとは異なる１つまたは複数のパラメータを有する出力ビットストリーム２１０を生成する。この符号化変換システム２００は、入力ビットストリーム２０１からの動き情報を使用して、出力ビットストリーム２１０用の動き情報を外挿するという点において類の無いものである。
【００１１】
次に図３を参照すると、本発明の原理に従って、１つのＧＯＰ構造から他のＧＯＰ構造へピクチャを符号化変換するプロセスが示されている。図３では、入力ビットストリームは、内部符号化ピクチャ（ｉｎｔｒａ−ｃｏｄｅｄ  ｐｉｃｔｕｒｅ）（「Ｉピクチャ」）、双方向予測符号化ピクチャ（「Ｂピクチャ」）、Ｂピクチャ、および予測符号化ピクチャ（「Ｐピクチャ」）のＧＯＰ構造を有するピクチャを表している。すなわち、入力ビットストリームは、「ＩＢＢＰ」ＧＯＰ構造を表している。図３に示すように、入力ビットストリームの２つの連続するＢピクチャは、明確化のためにＢ１およびＢ２とラベル付けされる。この入力ビットストリームは、図２中の入力ビットストリーム２０１に類似している。符号化変換プロセス中で、「ＩＢＢＰ」のＧＯＰ構造を有する入力ビットストリームは、「ＩＰＰＰ」のＧＯＰ構造を有する出力ビットストリームに変換される。図３に示すように、出力ビットストリームの３つの連続するＰピクチャは、明確化のためにＰ１、Ｐ２、およびＰ３としてラベル付けされる。この出力ビットストリームは、図２中の出力ビットストリーム２１０に類似している。混乱を最小限にするために、個々のピクチャを構成するマクロブロックは図３において表示されない。符号化変換プロセスを実行するために、入力ビットストリームからのＩ−ＰおよびＰ−Ｂ２動きベクトルを利用して、出力ビットストリーム用の動きベクトルを外挿する。たとえば、図３に示すように、入力ビットストリームからのＩ−Ｐ動きベクトルを使用して、出力ビットストリーム用のＰ１−Ｐ２動きベクトルを推定することができる。同様に、入力ビットストリームからのＰ−Ｂ２動きベクトルを使用して、出力ビットストリーム用のＰ２−Ｐ３動きベクトルを推定することができる。
【００１２】
次に、ビデオ・シーケンスの４つのピクチャを示す図４を参照しながら、本発明の動きベクトルの外挿プロセスについてさらに詳細に説明する。これら４つのピクチャは、概念上、出力ビットストリーム内にも入力ビットストリーム内にも存在し、これは通常、実際のケースである。いずれの場合でも、図４のピクチャＴは、ピクチャＲに相対してその動きが決定される「ターゲット」ピクチャである。これらのピクチャは、どちらも出力ビットストリーム内に存在する。ピクチャＫＲおよびピクチャＫＴは、その相対的動きが入力ビットストリームから得られるピクチャである。本発明の原理に従い、ピクチャＫＲとピクチャＫＴとの間の既知の動きは、出力ビットストリーム用の動きベクトルを外挿するために使用することができる。ピクチャＫＲおよびピクチャＫＴは「基本ペア」と呼ばれ、ピクチャＲおよびピクチャＴは「カーレント・ペア」として参照される。いくつかの基本ペアを、１つの現在ペアの動きを推定するのに役立たせることができる。一般に、カーレント・ペアに一時的に近接するどんな基本ペアも、この目的に潜在的に役立つ。
【００１３】
符号化変換プロセス中には、ピクチャＴ内のいくつかのブロックが動き外挿情報を受け取らない場合がある。すなわち、ピクチャＴ内のいくつかのブロックが、近くの基本ペア内にあるどんなブロックの動きともオーバラップしない場合がある。ピクチャＴ内のこのようなブロックは、単に内部符号化するか、またはその動きを従来の様式で計算することができる。あるいは、このようなブロックの動きを近くのブロックから推測するかまたは内挿することができる。ただし大抵の場合、基本ペア内のいくつかのブロックが、ピクチャＴ内のほとんどのブロックとオーバラップしているため、その後のタスクは、いくつかの動きベクトル候補間から最良の動きベクトルを選択することになる。基本ペアからのオーバラップ・ブロックは、単一の動きベクトル候補を提供する。これは、複数の動きベクトル候補間から選択する場合、各動きベクトルに重みを付け、最大の重みを有する動きベクトルを選択するのに役立つ。図４のピクチャを一例として使用し、各動きベクトル候補の重み（ＭＶ）を以下のように計算される。
【００１４】
重み合計（ＭＶ）＝（オーバラップ重み）*（ピクチャ重み）*（丸め重み）
・・・・・・・・・・・・・（１）
上式では、
オーバラップ重み＝（ピクチャＴの対応するブロック内にあるピクセルとオーバラップするピクチャＫＴのブロック内にあるピクセル数）・・・・・・（２）
ピクチャ重み＝１／［１＋ａｂｓ（時間重み）］・・・・・・・・・・（３）
であって、さらに上式では
時間重み＝（ｔＫＴ−ｔＫＲ）*［（ｔＫＲ＋ｔＫＴ）−（ｔＴ＋ｔＲ）］
・・・・・・・・・・・・・（４）
および
丸め重み＝［１−（水平丸め誤差）］*［１−（垂直丸め誤差）］ ・・（５）
である。
【００１５】
前述の式（１）から（５）では、ｔＫＲ、ｔＫＴ、ｔＲ、およびｔＴがそれぞれピクチャＫＲ、ＫＴ、Ｒ、およびＴの表示時間を表す。記号”*”および”ａｂｓ”は、それぞれ乗法演算子および絶対値指示を表す。外挿されたベクトルが最も近い半分のピクセルに丸められたとき、したがって、それぞれがゼロ（０）から２分の１（１／２）の値をとるときに、水平および垂直の丸め誤差が生じる。式（１）から（５）は図４のピクチャに適用されたときを示すものであるが、これらの一般式は、他のピクチャ構成に適用可能であることが直観できるはずである。
【００１６】
本発明では、最大の重みを有する動きベクトル候補を単純に選択する技法に加えて、所与のブロックについて最適の動きベクトルを得る他の方法を意図する。代替の実施形態によれば、前述の式（１）から（５）を使用して重みが計算される場合の、重み付けされた平均を計算することができる。次いでこれらの重みを使用し、重み付けされた構成要素を生成するために重み値に対応する動きベクトルのｘまたはｙ構成要素を掛けること、重み付けされた構成要素を合計すること、ならびに重み付けされた構成要素の合計を重みの合計で割ることによって、最適の動きベクトルを構成要素ベースで計算することができる。
【００１７】
前述の重み付けの平均技法は、「クラスタ」ベースで実行することもできる。すなわち、動きベクトル候補のｘ−ｙプロッティングが動きベクトルの一つのクラスタ（すなわち近接するグループ分け（ｃｌｏｓｅ  ｇｒｏｕｐｉｎｇ））以上のクラスタを示す場合、各クラスタについて最適の動きベクトルを計算することができる。これが、クラスタの重心、すなわち「質量中心」である。その後、個々のクラスタの最適の動きベクトルから、最終的な最適の動きベクトルを選択することができる。
【００１８】
最適の動きベクトルは、重みをまったく使用せずに、複数の動きベクトル候補からも選択できることに留意されたい。たとえば、最適の動きベクトルを識別するために、ブロック間のピクセル差を表す、平均平方誤差（ＭＳＥ）または平均絶対差（ＭＡＤ）の計算を実行することができる。もちろん、ＭＳＥおよびＭＡＤ計算を使用することは、当分野の技術者にはよく知られている。
【００１９】
表１にリスト表示された以下のアルゴリズムは、ターゲット・ピクチャ（たとえば図４のピクチャＴ）のそれぞれ可能な予測モードについて、最適の動きベクトルを見つけるためのステップを示している。擬似コードで表されたこれらのステップは、当分野の技術者に知られたどのようなプログラミング言語ででもプログラミング可能である。
【００２０】
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
表１：最適の動きベクトルを見つけるための擬似コード
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
−ｆｏｒ  ターゲット・ピクチャ用とみなされる各予測モードについて
（現在ペア）
−ｆｏｒ  適用可能モードの各フィールドまたはフレームについて
（トップフィールド、ボトム・フィールド、フレーム）
−ターゲット・ピクチャ内のブロックごとに索引付けされたテーブルを
初期設定する
−ｆｏｒ  カーレント・ペアに役立つとみなされる各基本ペアについて
（たとえば、基本ペアが事前設定範囲内で一時的に近接する場合
この基本ペアは一般に「役立つ」とみなされる）
−基本ペアのターゲット内にある各内部符号化ブロックの
各動きベクトについて
−ターゲット・ピクチャ内でベクトルがブロックをどこへ
移動させるかを決定する
−ベクトルの重みを計算するか、またはその合致を評価する
（たとえばＭＳＥ、ＭＡＤ）
−関連するターゲット・ピクチャ・ブロックの
テーブル・エントリ内に情報を格納する
−ｆｏｒ  ターゲット・ピクチャ内の各ブロックについて
−フィールドまたはフレームについて最適の動きベクトルを決定する
−ｆｏｒ  ターゲット・ピクチャ内の各ブロックについて
−最適の予測モードおよび対応する動きベクトルを決定する
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
【００２１】
複数の動きベクトルが、フレーム・ピクチャのフィールド予測およびＰピクチャのデュアル・プライム（ｄｕａｌ  ｐｒｉｍｅ）など、いくつかの予測モードで所与の１つのブロックに関連付けられていることに留意されたい。また、Ｂピクチャの場合、符号器は、前方予測、後方予測、またはその両方のいずれを使用するかを各ブロックについて決定しなければならない。場合によっては、許容可能な結果を生成する予測モードがないことがある。これは、動きベクトル候補がない場合、または前述の技法のうちの１つに従って決定された最適の動きベクトルが特定の用途には不十分である場合に生じる。さらに、符号器が、入力シーケンスから出力シーケンスへの（変更されていない）動きベクトルを使用できるのみである場合もある。
【００２２】
図４では、サイズの変更なしに、フレーム・ピクチャに対してフレーム予測を使用している状況を想定されたい。ピクチャＫＴ内のブロックが関連ベクトルｖＫを有することを考えると、ピクチャＴ内の１つまたは複数のブロックは以下に定義された関連ベクトルｖを有することになる。
【００２３】
ｖ＝Ｔｖ*ｖＫ ・・・・・・・・・・・・・・・・・・・・・・・・（６）
上式で、
Ｔｖ＝（ｔＴ−ｔＲ）／（ｔＫＴ−ｔＫＲ）・・・・・・・・・・・（７）
である。
【００２４】
ここで、Ｔｖはベクトルの時間換算係数であり、ｔＫＲ、ｔＫＴ、ｔＲ、およびｔＴは、それぞれピクチャＫＲ、ＫＴ、Ｒ、およびＴの表示時間を表す。フレーム・ピクチャのフィールドが異なる時間に表示されるフレーム・ピクチャの場合、その表示時間にはあいまいな点がある。このような場合、その時間はそれぞれのフィールドの平均であるものとする。ピクチャＫＴからピクチャＴまでのブロックの動きを追跡するには、特定ブロックの左上隅のポイントについて考察する。図４のコンテキストでは、このポイントはピクチャＫＴ内のポイントｑＫおよびピクチャＴ内のポイントｑとして表されている。ポイントｑの動きは、次のように与えられる。
【００２５】
ｑ＝ｑＫ−（Ｔｂ*ｖＫ） ・・・・・・・・・・・・・・・・・・・（８）
上式で、
Ｔｂ＝（ｔＴ−ｔＫＴ）／（ｔＫＴ−ｔＫＲ）・・・・・・・・・・（９）
である。
【００２６】
サイズ変更されたピクチャを含む符号化変換プロセスでは、ピクチャＫＲおよびＫＴは、ピクチャＲおよびＴと同じサイズを含むことはない。サイズ変更は、以下のように対処される。ＲｘおよびＲｙが、それぞれピクチャの水平拡大および垂直拡大を表すとする。すなわち、
【００２７】
Ｒｘ＝（ピクチャＴの幅）／（ピクチャＫＴの幅）・・・・・・・（１０）
および
Ｒｙ＝（ピクチャＴの高さ）／（ピクチャＫＴの高さ）・・・・・（１１）
となる。ピクチャをサイズ変更する場合、式（６）および（８）を以下のように修正する必要がある。
ｖ＝Ｒ（Ｔｖ*ｖＫ） ・・・・・・・・・・・・・・・・・・・・（１２）
および
ｑ＝Ｒ（ｑＫ−（Ｔｂ*ｖＫ）） ・・・・・・・・・・・・・・・（１３）
前述の式は、以下の表記法を導く。
Ｒ（Ｖ）＝（Ｖｘ*Ｒｘ，Ｖｙ*Ｒｙ）・・・・・・・・・・・・・（１４）
【００２８】
上式で、Ｖは２構成要素ポイント（ピクセル）またはベクトルである。Ｒは、異なるブロックサイズではなく異なるピクチャ・サイズを表すことに留意されたい。
【００２９】
サイズ変更は、サイズ変更されたイメージだけではなく、関連するフィールドおよびフレーム・ピクチャ、ならびに関連するフィールドおよびフレーム予測にも適用される。（フィールド・ピクチャとフレーム・ピクチャ双方の）フィールド予測に対応するためには、ボトム・フィールドが、その座標が示すよりも０．５ピクセル低いことに留意されたい。フィールド・ピクチャまたはフレーム・ピクチャの変位（ｄｉｓｐｌａｃｅｍｅｎｔ）ベクトルｄＸは、以下のように定義される。
【００３０】
Ｘがトップフィールドまたはフレームの場合、ｄＸ＝（０，０）・（１５）
および
Ｘがボトム・フィールドの場合、ｄＸ＝（０，０．５）・・・・・（１６）
これを式（１２）および（１３）に当てはめると、ｖおよびｑの新しい式は次のようになる。
ｖ＝Ｒ（Ｔｖ*（ｖＫ＋ｄＫＲ−ｄＫＴ））＋ｄＴ−ｄＲ ・・・・（１７）
および
ｑ＝Ｒ（ｑＫ＋ｄＫＴ−［Ｔｂ*（ｖＫ＋ｄＫＲ−ｄＫＴ）］）−ｄＴ
・・・・・・・・・・（１８）
【００３１】
したがって、本発明の実施に使用される最終的な式は、（７）、（９）、および（１４）から（１８）の式である。
【００３２】
最終的に、図２の中間処理ユニット２０５がイメージをクロッピングするものと仮定する。上記の式を、以下のように適用することができる。ピクチャＲおよびＴは、元のピクチャと同じサイズであり、それらの適切な位置に出力イメージが埋め込まれたとみなす。この位置が、着目する領域を画定する。着目する領域にオーバラップするブロックだけが、外挿に使用される。次いで、図１から図４ならびにこれらから導出された式が、このケースに当てはめられる。
【００３３】
前述の開示は、均質性を示唆する場合がある。すなわち、ピクチャＴがフィールド・ベースの予測を使用するフレーム・ピクチャである場合は、ピクチャＫＴもフィールド・ベースの予測を使用するフレーム・ピクチャである。ただし以前に考察した式は、以下の例が示すように、より一般的なものである。
【００３４】
ピクチャＴがフレーム・ベースの予測を使用し、ピクチャＫＴがフィールド・ベースの予測を使用すると仮定する。本発明では、ピクチャＫＴがフィールド・ピクチャであるかフレーム・ピクチャであるかは問題ではない。どちらの場合も、ピクチャＫＴの動きベクトルはフィールド・ベースであるため、Ｒｙ＝２およびＲｘ＝１である。ピクチャＫＴがフレーム・ピクチャである場合、そのブロックは１６×８であるが、これは前述の式に対してトランスペアレント（ｔｒａｎｓｐａｒｅｎｔ）である。ブロックが１６×８の予測を使用する場合、その２つの半分（ｈａｌｖｅｓ）は、２つの別々のブロックとして扱われなければならない。
【００３５】
次に、ピクチャＴおよびピクチャＫＴがフィールド・ベースの予測を使用すると仮定する。この場合、どちらのピクチャのベクトルも同じサイズのイメージを表すため、サイズ変更は不要であり、Ｒｘ＝Ｒｙ＝１である。すなわち、本発明を実施するにあたって、フィールド・ピクチャとフレーム・ピクチャが混在しているかどうか、またはフィールド予測とフレーム予測が混在しているかどうかは、式には無関係である。
【００３６】
前述の開示で示したように、ピクチャＫＴ内のブロックがデュアル・プライム（ｄｕａｌ  ｐｒｉｍｅ）を使用している場合、その２つのベクトルは、おそらく異なる重みで別々に適用される。また、デュアル・プライム（ｄｕａｌ  ｐｒｉｍｅ）の結果としてピクチャＴを見積もることは、双方向補間の結果としてそれを見積もることとほとんど同じである。すなわち、各ベクトルは別々に見積もられ、次いで組み合わせが見積もられる。したがって、本発明は、すべてのＭＰＥＧ−２予測モード：フレーム・ピクチャに関するフレーム予測、フィールド予測、およびデュアル・プライム（ｄｕａｌ  ｐｒｉｍｅ）予測、ならびにフィールド・ピクチャに関するフィールド予測、デュアル・プライム（ｄｕａｌ  ｐｒｉｍｅ）予測、および１６×８予測、をサポートする。
【００３７】
本明細書で開示された式は、一般に非線形動きではなく線形動きの状況に向けられたものである。たとえば非線形動きは、ピクチャ内でのカメラ・ジッタまたはオブジェクトの均一な加速から発生する場合がある。このような非線形動きのインスタンス（場合）は、以下のように処理することができる。カメラ・ジッタに関連付けられた非線形動きの場合、ブロック動きと比較する前に、全体的な動きを計算から除外することが望ましいことがある。そのために、既知のＭＳＥおよびＭＡＤ計算を使用することができる。オブジェクトの均一な加速に関連付けられた非線形動きの場合は、この動きを２つではなく３つのピクチャを使用して外挿することが望ましいことがある。
【００３８】
以上、何が本発明の好ましい実施形態であると考えられるかについて図示および説明してきたが、当分野の技術者であれば、様々な変更および修正が実行可能であり、本発明の真の範囲から逸脱することなく、本発明の要素について均等物と置き換え可能であることを理解されよう。さらに、本発明の中心範囲から逸脱することなく、数多くの修正を実行することができる。したがって、本発明は、本発明を実施するために意図された最適のモードとして開示された特定の実施形態に限定されるものではないが、本発明が添付の特許請求の範囲内にあるすべての実施形態を含むことを意図している。
【図面の簡単な説明】
本発明のより正しい評価、およびそれに付随する多くの利点は、添付の図面と共に考察される以下の詳細な説明を参照することによって容易に明らかになると同時に、より良く理解されることになるであろう。
【図１】  動きベクトル外挿の基本原理を示す図である。
【図２】  本発明の原理に従って構築された符号化変換システムを示す図である。
【図３】  本発明の原理に従って１つのＧＯＰ構造から他のＧＯＰ構造へピクチャを符号化変換するプロセスを示す図である。
【図４】  符号化変換に適用する場合の動きベクトル外挿についてさらによく理解するために使用できる、動きベクトル外挿の一般的なケースを示す図である。
【図１】
0004514081.tif 000002
【図２】
0004514081.tif 000003
【図３】
0004514081.tif 000004
【図４】
0004514081.tif 000005