(57)【要約】      （修正有）【課題】動き及び予測の重み付けパラメータを符号化する方法及び装置を提供する。【解決手段】符号化方法は、複数仮説区画の重み付けパラメータを生成するステップと、重み付けパラメータを変換するステップと、変換された重み付けパラメータを符号化するステップと、を含んでいる。動き補償予測の対象である各ブロックに対する参照ブロックのそれぞれに関連付けられる重み付けパラメータの対の間の変換プロセスを含んでいる。この変換プロセスにより、重み付けパラメータに変換が適用される。【選択図】図２
2011091840.tif 000002
【特許請求の範囲】
【請求項１】
複数仮説区画の重み付けパラメータを生成するステップと、
前記重み付けパラメータを変換するステップと、
変換された重み付けパラメータを符号化するステップと、
を含む符号化方法。
【請求項２】
複数仮説区画の重み付けパラメータを、動き補償予測を実行する一部として、生成する動き推定ユニットと、
前記重み付けパラメータを、変換された重み付けパラメータに変換する変換器と、
変換された重み付けパラメータを符号化する符号化器と、
を備える符号化器。
【請求項３】
命令を格納する一つ以上の記録可能媒体を有する製品であって、該命令は、システムによる実行時に、前記システムに、
複数仮説区画の重み付けパラメータを生成するステップと、
前記重み付けパラメータを変換するステップと、
変換された重み付けパラメータを符号化するステップと、
を含む符号化方法を実行させる製品。
【請求項４】
可変長復号を使用してビットストリームを復号して、複数仮説区画の変換された重み付けパラメータを含む復号されたデータを得るステップと、
前記変換された重み付けパラメータに逆変換を適用するステップと、
逆変換された重み付けパラメータと共に動き補償を使用して、フレームデータを再構築するステップと、
を含む復号方法。
【請求項５】
可変長復号を使用してビットストリームを復号し、複数仮説区画の変換された重み付けパラメータを含む復号されたデータを得る可変長復号器と、
前記復号されたデータの一部に逆量子化演算を実行して係数を生成する逆量子化器と、
前記係数に第１の逆変換を適用して画像データを生成する第１の逆変換器と、
前記変換された重み付けパラメータに第２の逆変換を適用して重み付けパラメータを生成する第２の逆変換器と、
少なくとも一つの動きベクトルと前記重み付けパラメータとを使用して予測を生成する動き補償ユニットと、
前記予測を前記画像データに加算してフレームデータを再構築する加算器と、
を備える復号器。
【発明の詳細な説明】
【優先権】
【０００１】
[0001]本特許出願は、「動き及び予測の重み付けパラメータを符号化する方法及び装置（Ｍｅｔｈｏｄ  Ａｎｄ  Ａｐｐａｒａｔｕｓ  Ｆｏｒ  Ｃｏｄｉｎｇ  Ｍｏｔｉｏｎ  ａｎｄ  Ｐｒｅｄｉｃｔｉｏｎ  Ｗｅｉｇｈｔｉｎｇ  Ｐａｒａｍｅｔｅｒｓ）」と題して２００５年５月２６日に出願された対応の仮特許出願第６０／６８５，２６１号の優先権を主張するものであり、当該仮特許出願を参照することによって本明細書に援用するものである。
【発明の分野】
【０００２】
[0002]本発明は、ビデオの符号化及び復号に関するものであり、より詳細には、本発明は、動き及び予測の重み付けパラメータの符号化に関するものである。
【発明の背景】
【０００３】
[0003]動き補償（フレーム間）予測は、符号化効率の面において相当な恩恵をもたらすことができるために、ＭＰＥＧ２−１／２やＨ．２６４（又はＪＶＴ或いはＭＰＥＧ  ＡＶＣ）等のビデオ符号化方式及びビデオ符号化規格における極めて重要な要素となっている。しかしながら最近まで、これら規格の殆どにおいては、主として、それだけでは無い場合にも、時間的変位を考慮することによって動き補償を行っている。より具体的には、ＭＰＥＧ−１、２やＭＰＥＧ−４等の規格では、フレーム間予測において２種類のピクチャタイプ、すなわち予測（Ｐ）ピクチャと双方向予測（Ｂ）ピクチャを考慮する。そのようなピクチャは、互いに重ならないブロックのセットに分割され、ブロックのそれぞれに動きパラメータのセットが関連付けられる。Ｐピクチャの場合、動きパラメータは、参照ブロックに対する現在のブロックＩ（ｘ，ｙ）の水平変位及び垂直変位に限られており、Ｉ（ｘ，ｙ）を予測するために使用する第２のブロックＩ（ｘ’，ｙ’）のポジションを示している。図１Ａは、Ｐピクチャにおける動き補償の例を示している。しかしながら、Ｂピクチャの場合、参照ブロックからの変位の代わりに、又はこれに加えて、第２の参照ブロックからの水平変位及び垂直変位を考慮する。図１Ｂは、Ｂピクチャにおける動き補償の例を示している。Ｂピクチャの場合、基本的には、これら二つの参照ブロックからの予測の双方を、等しい重み付け係数（１／２，１／２）を使用して平均することによって、予測を生成する。
【０００４】
[0004]しかしながら、上記のモデルは、時間的な明度の変動（例：フェード、クロスフェード、フラッシュ、カメラ絞り調節等）が含まれるビデオシーンには十分ではない。すなわち、単純な並進のみのフレーム間手法では、時間的な明度の変化を伴うときに符号化効率を十分に高めることができない。この目的のために、動き補償時に輝度変動も考慮する幾つかの方法が過去に提案されている。Ｋａｍｉｋｕｒａ等による「ビデオ符号化におけるグローバルな明度変動補償（Ｇｌｏｂａｌ  Ｂｒｉｇｈｔｎｅｓｓ−Ｖａｒｉａｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｆｏｒ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）」（ＩＥＥＥ  Ｔｒａｎｓ  ｏｎ  ＣＳＶＴ、ｖｏｌ．８、ｐ．９８８〜１０００、１９９８年１２月）、Ｒｏｄｒｉｇｕｅｓ等による「空間変換及び輝度変換を用いた階層的な動き補償（Ｈｉｅｒａｒｃｈｉｃａｌ  Ｍｏｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｗｉｔｈ  Ｓｐａｔｉａｌ  ａｎｄ  Ｌｕｍｉｎａｎｃｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）」（ＩＣＩＰ、ｐ．５１８〜５２１、２００１年１０月）、Ｒｏｄｒｉｇｕｅｓ等による「空間変換及び輝度変換を用いた低ビットレートのビデオ符号化（Ｌｏｗ−Ｂｉｔ  Ｒａｔｅ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  ｗｉｔｈ  Ｓｐａｔｉａｌ  ａｎｄ  Ｌｕｍｉｎａｎｃｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）」（ＣｏｎｆＴｅｌｅ２００１、Ｆｉｇｕｅｉｒａ  ｄａ  Ｆｏｚ、２００１年４月２２〜２４日）、Ｊ．Ｂｏｙｃｅによる「ビデオ符号化規格Ｈ．２６４／ＭＰＥＧ４  ＡＶＣにおける重み付け予測（Ｗｅｉｇｈｔｅｄ  Ｐｒｅｄｉｃｔｉｏｎ  ｉｎ  ｔｈｅ  Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｓｔａｎｄａｒｄ）」（ＩＳＣＡＳ、ｐ．７８９〜７９２、２００４年５月）を参照されたい。
【０００５】
[0005]より具体的には、動き補償時に幾何学的変換のみを考慮するのではなく、予測された信号が、二つの新しいパラメータｗ及びｏを使用して、スケーリング及び／又は調整される。時刻ｔ、ポジション（ｘ，ｙ）における明度値Ｉ（ｘ，ｙ，ｔ）をもつサンプルは、基本的にｗ＊Ｉ（ｘ＋ｄｘ，ｙ＋ｄｙ，ｔ’）＋ｏとして構築される。ここで、ｄｘ及びｄｙは空間変位パラメータ（動きベクトル）である。しかしながら、これらの新しい重み付けパラメータによって、動き情報を表すために必要なオーバーヘッドビットが相当に増大することがあり、従って、そのような方式の恩恵が減少することがある。この目的のために、Ｋａｍｉｋｕｒａ等は、「ビデオ符号化におけるグローバルな明度変動補償（Ｇｌｏｂａｌ  Ｂｒｉｇｈｔｎｅｓｓ−  Ｖａｒｉａｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｆｏｒ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）」（ＩＥＥＥ  Ｔｒａｎｓ  ｏｎ  ＣＳＶＴ、ｖｏｌ．８、ｐ．９８８〜１０００、１９９８年１２月）の中で、殆どの輝度変化がグローバルに起こるものと仮定することによって、各フレームに対して１組のグローバルパラメータ（ｗ，ｏ）のみを使用することを提案している。これらパラメータの使用又は不使用についてもブロックレベルにて伝え、これによって、局所的な明度変動が存在するときに幾つかの更なる恩恵を提供している。
【０００６】
[0006]いくぶん類似する方式がＨ．２６４においても採用されている。しかしながら、Ｈ．２６４規格では、明度変動を更に深く利用することのできる幾つかの別の特徴もサポートしている。具体的には、コーデックは、複数の参照ピクチャを考慮できるのみならず、複数の参照ピクチャの再順序付けを行う（ｒｅｏｒｄｅｒｉｎｇ）ことができ、これにより、参照ピクチャのそれぞれに複数の重みを関連付けて局所的な明度変動を良好に扱うことができる。オプションとして、双予測区画の重みは、時間的距離、より正確には各ピクチャに関連付けられるピクチャ順序カウント距離（ｐｉｃｔｕｒｅ  ｏｒｄｅｒ  ｃｏｕｎｔ  ｄｉｓｔａｎｃｅ）を考慮することによって、暗黙的に導くこともできる。一方で、Ｒｏｄｒｉｇｕｅｓ等による「空間変換及び輝度変換を用いた階層的な動き補償（Ｈｉｅｒａｒｃｈｉｃａｌ  Ｍｏｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｗｉｔｈ  Ｓｐａｔｉａｌ  ａｎｄ  Ｌｕｍｉｎａｎｃｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）」（ＩＣＩＰ、ｐ．５１８〜５２１、２００１年１０月）及びＲｏｄｒｉｇｕｅｓ等による「空間変換及び輝度変換を用いた低ビットレートのビデオ符号化（Ｌｏｗ−Ｂｉｔ  Ｒａｔｅ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  ｗｉｔｈ  Ｓｐａｔｉａｌ  ａｎｄ  Ｌｕｍｉｎａｎｃｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ）」（ＣｏｎｆＴｅｌｅ２００１、Ｆｉｇｕｅｉｒａ  ｄａ  Ｆｏｚ、２００１年４月２２−２４日）においては、オプションとして、ビットのオーバーヘッドをいくらか制約するために、量子化の後、階層構造を使用して重みを伝える。しかしながら、この方法は、Ｐフレーム内で重み付け予測を考慮しているにすぎず、双予測については考慮されていない。
【０００７】
[0007]これらの手法では、重み付けパラメータがブロックレベルで考慮されており、これにより局所的な明度変動が良好に扱われるが、双予測の動き補償と、これらのパラメータを効率的に符号化する方法は、特に考慮されていない。これらの論文では、並進のみに基づく予測に対して、輝度変換を更に使用した場合に予測の平均二乗誤差が向上することによる恩恵を主眼としており、パラメータの符号化については深く考慮していない。
【０００８】
[0008]ビデオ圧縮規格ＩＴＵ−Ｈ．２６４（又はＪＶＴ或いはＩＳＯ  ＭＰＥＧ４  ＡＶＣ）では、時間的な明度変動を利用してパフォーマンスを向上させることのできる重み付け予測ツールを採用している。ビデオ符号化規格Ｈ．２６４は、動き補償予測に重み付け予測（ＷＰ）を採用した最初のビデオ圧縮規格である。
【０００９】
[0009]動き補償予測は、複数の参照ピクチャを考慮することができ、この場合に、複数の参照ピクチャのうち使用するピクチャを示す参照ピクチャインデックスが符号化される。Ｐピクチャ（又はＰスライス）においては、片方向予測のみを使用し、使用可能な三章ピクチャをリスト０において管理する。Ｂピクチャ（又はＢスライス）においては、二つの個別の参照ピクチャリスト（リスト０及びリスト１）が管理される。Ｂピクチャ（又はＢスライス）においては、リスト０又はリスト１のいずれかを使用しての片方向予測、或いは、リスト０及びリスト１の双方を使用しての双予測を行うことができる。双予測を使用するときには、リスト０の予測情報（predictor）とリスト１の予測情報とを平均し、最終的な予測情報を形成する。Ｈ．２６４の重み付け予測ツールでは、Ｐピクチャ及びＢピクチャの双方において、任意の乗算重み付け係数と加算オフセットとを参照ピクチャ予測に適用することができる。重み付け予測の使用は、Ｐスライス及びＳＰスライスに設定されるシーケンスパラメータにおいて示される。重み付け予測モードには、Ｐスライス、ＳＰスライス、Ｂスライスにおいてサポートされる明示モードと、Ｂスライスのみにおいてサポートされる暗黙モードの２種類が存在する。
【００１０】
[0010]明示モードにおいては、重み付け予測パラメータが、スライスヘッダにおいて符号化される。色成分それぞれの乗算重み付け係数及び加算オフセットは、Ｐスライスのリスト０と、Ｂスライスのリスト０及びリスト１において、使用可能な参照ピクチャのそれぞれについて、符号化することができる。しかしながら、このシンタックスでは、同じ参照ピクチャストアから予測するときにも、同じピクチャ内の異なるブロックが異なる重み付け係数を使用することもできる。これは、再順序付けコマンドを使用して、複数の参照ピクチャインデックスを特定の参照ピクチャストアに関連付けることによって可能になる。
【００１１】
[0011]片方向予測に使用される重み付けパラメータと同じ重み付けパラメータが、双予測用に組み合わせて使用される。各マクロブロック、又は区画のサンプル用の最終的なフレーム間予測（ｉｎｔｅｒ  ｐｒｅｄｉｃｔｉｏｎ）は、使用される予測タイプに基づいて生成される。リスト０からの片方向予測の場合、
【数１】
2011091840.tif 000003
であり、リスト１からの片方向予測の場合、
【数２】
2011091840.tif 000004
であり、双予測の場合は、
【数３】
2011091840.tif 000005
である。これらの式において、Ｃｌｉｐ１（）は、サンプル値を範囲［０，１＜＜ＳａｍｐｌｅＢｉｔＤｅｐｔｈ−1]内にクリッピングする演算子であり、ＳａｍｐｌｅＢｉｔＤｅｐｔｈは現在のサンプルに関連するビットの数であり、Ｗ０及びＯ０は、リスト０における現在の参照信号に関連する重み付け係数及びオフセットであり、Ｗ１及びＯ１は、リスト１における現在の参照信号に関連する重み付け係数及びオフセットであり、ＬＷＤは、対数重み分母丸め係数（ｌｏｇ  ｗｅｉｇｈｔ  ｄｅｎｏｍｉｎａｔｏｒ  ｒｏｕｎｄｉｎｇ  ｆａｃｔｏｒ）であって本質的には重み付け係数量子化器の役割を果たすものである。ＳａｍｐｌｅＰ０及びＳａｍｐｌｅＰ１は、リスト０及びリスト１の初期予測情報サンプルであり、ＳａｍｐｌｅＰは、重み付け予測された最終的なサンプルである。
【００１２】
[0012]暗黙的な重み付け予測モードにおいては、重み付け係数はスライスヘッダにおいて明示的に伝送されず、代わりに、現在のピクチャとその参照ピクチャとの間の相対距離に基づいて導出される。このモードは、Ｂスライス内の双予測符号化マクロブロック及びマクロブロック区画に対してのみ使用され、これらブロック及び区画には、直接モードを使用するものが含まれる。先の明示モードのセクションに示した双予測の式と同じ式を使用するが、相違点として、オフセット値Ｏ０及びＯ１がゼロであり、重み付け係数Ｗ０及びＷ１が、次式を用いて導かれる。
【数４】
2011091840.tif 000006
これは、
【数５】
2011091840.tif 000007
を、除算のない安全な１６ビット演算としたものである。上式において、ＴＤＤ及びＴＤＢは、それぞれ、リスト０の参照ピクチャに対するリスト１の参照ピクチャの時間的距離と、リスト０の参照ピクチャに対する現在のピクチャの時間的距離（いずれも範囲［−１２８，１２7]内に限定されている）である。
【００１３】
[0013]ビデオ符号化規格Ｈ．２６４では、動き補償において複数の重みを使用することができるが、この規格では、スライスレベルにおいて各リストについて伝えることのできる参照ピクチャが最大１６個であるため、複数の重みの使用は相当に制限される。このことは、考慮することのできる重み付け係数の数が限られることを意味する。この制限が課されなくても、ピクチャの符号化に必要となりうる全ての重み付けパラメータを伝えることは、困難ではないにせよ非効率的となる可能性がある。Ｈ．２６４においては、各参照ピクチャの重み付けパラメータを、予測メカニズムを考慮せずに独立して符号化するが、参照ピクチャのインデックスを伝えるための追加のオーバーヘッドも大きくなり得ることに留意されたい。従って、Ｈ．２６４と、Ｋａｍｉｋｕｒａ等による「ビデオ符号化におけるグローバルな明度変動補償（Ｇｌｏｂａｌ  Ｂｒｉｇｈｔｎｅｓｓ−  Ｖａｒｉａｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｆｏｒ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）」（ＩＥＥＥ  Ｔｒａｎｓ  ｏｎ  ＣＳＶＴ、ｖｏｌ．８、ｐ．９８８〜１０００、１９９８年１２月）に開示されている方法は、局所的な明度変動に対してよりも、グローバルな明度変動に対して、より適している。言い換えれば、これらのツールは、グローバルな明度変動の場合に良好に機能する傾向にあるが、特定の制限に起因して、大きな局所的明度変動が存在するときに達成できる利益は僅かである。
【発明の概要】
【００１４】
[0014]符号化及び／又は復号を行う方法及び装置を開示する。一実施形態においては、本符号化方法は、複数仮説（ｍｕｌｔｉ−ｈｙｐｏｔｈｅｓｉｓ）区画の重み付けパラメータを生成するステップと、重み付けパラメータを変換するステップと、変換された重み付けパラメータを符号化するステップと、を含んでいる。
【００１５】
[0015]以下の詳細な説明と、本発明の様々な実施形態の添付の図面とから、本発明が更に完全に理解されるであろう。しかしながら、これらの実施形態は、本発明をそれら特定の実施形態に制限するものではなく、説明及び理解のみを目的としているものと解釈されたい。
【図面の簡単な説明】
【００１６】
【図１Ａ】Ｐピクチャにおける動き補償の例を示す図である。
【図１Ｂ】Ｂピクチャにおける動き補償の例を示す図である。
【図２】符号化プロセスの一実施形態のフローチャートである。
【図３】復号プロセスの一実施形態のフローチャートである。
【図４】親子関係を有するツリーであって、双予測の動き情報を符号化するためツリーを示す図である。
【図５】符号化することのできるノード情報を有する別のツリーを示す図である。
【図６】符号化器の一実施形態のブロック図を示している。
【図７】復号器の一実施形態のブロック図を示している。
【図８】重み付けパラメータの表現と真の値との間の関係の例である。
【図９】グローバルな重み付けと局所的な重み付けとを組み合わせて使用するプロセスのフローチャートの一実施形態を示す図である。
【図１０】双予測を使用してフレームを符号化するための重み付けパラメータの変換プロセスを示す図である。
【図１１】複数仮説の場合の重み付けパラメータ用のプロセスを示す図である。
【図１２】制御された忠実度をもつ双予測用の重み付けパラメータの変換プロセスを示している。
【図１３】本明細書に記載した一つ以上のオペレーションを実行することのできる例示的なコンピュータシステムのブロック図である。
【本発明の詳細な説明】
【００１７】
[0030]ビデオ符号化アーキテクチャの双予測（又は複数予測）区画における重み付けパラメータを符号化する効率的な符号化方式を開示する。この符号化方式は、ビデオ符号化システムのパフォーマンスを高めるものであり、この符号化方式を使用することにより、局所的な明度変動を扱うことができる。この符号化方式は、動き補償予測の対象である各ブロックに対する参照ブロックのそれぞれに関連付けられる重み付けパラメータの対の間の変換プロセスを含んでいる。この変換プロセスにより、重み付けパラメータに変換が適用される。一実施形態においては、変換後の重み付けパラメータが、予測方法を使用して各ブロック用に伝達され、ゼロツリー符号化構造（ｚｅｒｏ  ｔｒｅｅ  ｃｏｄｉｎｇ  ｓｔｒｕｃｔｕｒｅ）を使用して符号化される。これにより、これらのパラメータを符号化するのに必要なオーバーヘッドが低減する。本明細書に記載した方法は、主として、双予測区画を対象としている。概念の一部は、片方向予測区画にも適用することができる。
【００１８】
[0031]一実施形態においては、片方向予測区画と双予測区画との間の相互作用を利用して、効率を更に高める。また、特殊な考慮を、双予測ピクチャ又はスライス用に成し、異なるリスト又は双方のリストからブロックを予測することができる。
【００１９】
[0032]一実施形態においては、本符号化方式は、グローバルな重み付けパラメータと局所的な重み付けパラメータの双方を組み合わせて考慮することによって、更に拡張される。オプションとして、シーケンスレベル、ピクチャレベル、又はスライスレベルにおいて伝えられる更なる重み付けパラメータも考慮する。
【００２０】
[0033]別の実施形態においては、そのようなパラメータの粒度可変の動的範囲（ｖａｒｉａｂｌｅ  ｇｒａｎｕｌａｒｉｔｙ  ｄｙｎａｍｉｃ  ｒａｎｇｅ）も考慮する。これらの重み付けパラメータは細かく調整可能であり、これにより、符号化効率の面で更なる恩恵が提供される。
【００２１】
[0034]以下の説明では、本発明をより完全に説明するため数多くの詳細部分を記載してある。しかしながら、当業者には、これらの特定の詳細部分を使用せずに本発明を実施できることが明らかであろう。周知の構造及び装置については、本発明が曖昧になることがないように、詳細に示すのではなくブロック図形式で示してある。
【００２２】
[0035]以下の詳細な説明の一部は、コンピュータメモリ内のデータビットに対する操作のアルゴリズム及び記号表現の形式で提示してある。このようなアルゴリズムによる説明及び表現は、データ処理の技術分野における当業者が、自身の開発内容の要旨を他の当業者に最も効果的に伝えるために使用する手段である。アルゴリズムは、本明細書において、及び一般的には、目的の結果に達する首尾一貫した一連のステップとして認識される。これらのステップは、物理量の物理的操作を必要とするステップである。通常、しかし必ずしもそうではないが、これらの数量は、格納、伝送、結合、比較、その他の操作を行うことのできる電気信号又は磁気信号の形式をとる。これらの信号を、例えばビット、値、要素、記号、文字、術語、数字として表現することは、主として、一般的に使用されているという理由から、場合によっては便利であることが実証されている。
【００２３】
[0036]しかしながら、上記及び同様の表現のいずれも、該当する物理量が関連付けられるものであり、物理量に付された便利なラベルにすぎないことを認識しておく必要がある。以下の説明から明らかであるように、特に明記しない限りは、説明全体を通じて、「処理する」、「計算する」、「決定する」、「表示する」等の用語を用いての説明は、コンピュータシステムのレジスタ及びメモリ内で物理的（電子的）数量として表されているデータを操作して、コンピュータシステムのメモリ又はレジスタ、或いはそれ以外の、そのような情報の記憶装置、伝送装置、又は表示装置において同様に物理量として表される他のデータに変換する、コンピュータシステム、又は類似する電子計算装置の動作及び処理を意味しているものと理解されたい。
【００２４】
[0037]本発明は、本明細書におけるオペレーションを実行する装置にも関する。この装置は、必要な目的を対象に専用に構築することができ、或いは、格納されているコンピュータプログラムによって選択的に起動又は再構成される汎用コンピュータを備えることができる。そのようなコンピュータプログラムは、コンピュータ可読記憶媒体、例えば、以下に限定されないが、任意のタイプのディスク（例：フロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスク）、ＲＯＭ（読取り専用メモリ）、ＲＡＭ（ランダムアクセスメモリ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード又は光カード、或いは、電子的命令を格納するのに適しておりそれぞれがコンピュータシステムのバスに結合されている任意のタイプの媒体、に格納することができる。
【００２５】
[0038]本明細書に提示したアルゴリズム及び表記・表現（ｄｉｓｐｌａｙ）は、特定のコンピュータ或いはその他の装置に本質的に関連するものではない。本明細書における教示内容によるプログラムは、様々な汎用システムにおいて使用することができ、或いは、場合によっては、必要な方法ステップを実行するための専用の装置を構築することが都合よい。これらの様々なシステムの必要な構造は、以下の説明から明らかになるであろう。更に、本発明は、特定のプログラミング言語に関連して説明していない。本明細書に説明した本発明の教示内容は、様々なプログラミング言語を使用して実施できることが理解されるであろう。
【００２６】
[0039]機械可読媒体には、機械（例：コンピュータ）が読むことのできる形式で情報を格納又は伝送する任意のメカニズムが含まれる。例えば、機械可読媒体としては、読取り専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイスのほか、電気、光、音響、又はその他の形式の伝搬信号（例：搬送波、赤外線信号、デジタル信号）等が挙げられる。
＜概要＞
【００２７】
[0040]本発明の実施形態は、重み付け予測を含む動き補償を使用する符号化方式を含んでいる。予測に関連する重み付けパラメータを変換し、次いで、予測に関連するオフセットと共に符号化する。復号プロセスは、符号化プロセスの逆である。
【００２８】
[0041]図２は、符号化プロセスの一実施形態のフローチャートである。このプロセスは処理ロジックによって実行されるものであり、処理ロジックは、ハードウェア（回路、専用ロジック等）、ソフトウェア（汎用コンピュータシステム又は専用マシン上で実行されるもの等）、又は双方の組合せを備えることができる。
【００２９】
[0042]以下、図２を参照する。このプロセスでは、最初に、処理ロジックが、動き推定を実行する一部として、複数仮説区画（例：双予測区画）の重み付けパラメータを生成する（処理ブロック２０１）。一実施形態においては、重み付けパラメータは、符号化するフレームの各区画（ブロック）について、少なくとも一対の重み付けパラメータのセットを含んでいる。一実施形態においては、複数対の変換された重み付けパラメータの重みは、その合計が一定である。一実施形態においては、フレームの少なくとも二つの区画に対して異なる重み付け係数を使用する。一実施形態においては、重み付けパラメータは、局所的な明度変動を補償する。
【００３０】
[0043]一実施形態においては、重み付け予測パラメータは、忠実度レベルが可変である。可変忠実度レベルは、予め定義されたものであるか、変換された重み付けパラメータを符号化した表現を含むビットストリームの一部として伝えられる。一実施形態においては、一つのグループの重み付けパラメータが、別のグループの重み付けパラメータよりも忠実度が高い。
【００３１】
[0044]次いで、処理ロジックは、重み付けパラメータに変換を適用し、変換された重み付けパラメータを生成する（処理ブロック２０２）。一実施形態においては、重み付けパラメータを変換するステップは、各参照信号に関連する少なくとも二つの重み付けパラメータに変換を適用することを含んでいる。一実施形態においては、重み付けパラメータを変換するステップは、次式を満たす変換を適用することを含んでいる。
【数６】
2011091840.tif 000008
これらの式において、ｗＱ０及びｗＱ１は、量子化された重み付けパラメータであり、Ｂ＿ｗＱ０及びＢ＿ｗＱ１は、ｗＱ０及びｗＱ１の変換後のバージョンである。
【００３２】
[0045]重み付けパラメータに変換を適用した後、処理ロジックは、変換された重み付けパラメータとオフセットとを符号化する（処理ブロック２０３）。一実施形態においては、変換された重み付けパラメータを、可変長符号化を使用して、少なくとも一つのオフセットと共に符号化する。可変長符号化では、ゼロツリー符号化構造を使用することができる。可変長符号化は、ハフマン符号化又は算術符号化であってもよい。
【００３３】
[0046]一実施形態においては、変換された重み付けパラメータを符号化するステップは、隣接区画の変換された係数と所定の重み付けパラメータとから成る群のうちの一方に基づく予測を使用して、差分符号化を行なうことを含んでいる。予測のための隣接区画が存在しないときには、所定の重み付けパラメータを使用する。所定の重み付けパラメータは、デフォルトの重み付けパラメータか、又はグローバルに伝えられる重み付けパラメータとすることができる。
【００３４】
[0047]図３は、復号プロセスの一実施形態のフローチャートである。一実施形態においては、このような復号プロセスは、図２の符号化プロセスの一部として符号化された情報を復号する目的で使用する。このプロセスは処理ロジックによって実行され、処理ロジックは、ハードウェア（回路、専用ロジック等）、ソフトウェア（汎用コンピュータシステム又は専用マシン上で実行されるもの等）、又は双方の組合せを備えることができる。
【００３５】
[0048]以下、図３を参照する。このプロセスでは、最初に、処理ロジックは、可変長復号を使用してビットストリームを復号し、複数仮説区画（例：双予測区画）の変換された重み付けパラメータを含む復号されたデータを得る（処理ブロック３０１）。可変長復号は、ハフマン符号化又は算術符号化であってもよい。
【００３６】
[0049]可変長復号の後、処理ロジックは、変換された重み付けパラメータに逆変換を適用する（処理ブロック３０２）。一実施形態においては、逆変換された重み付けパラメータは、参照信号に関連する少なくとも二つの重み付けパラメータを含んでいる。
【００３７】
[0050]次いで、処理ロジックは、逆変換された重み付けパラメータと共に動き補償を使用して、フレームデータを再構築する（処理ブロック３０３）。
＜重み付け予測の具体例＞
【００３８】
[0051]重み付け予測は、フェード、クロスフェード／ディゾルブ、単純な明度変動（例：フラッシュ、シェーディング変化）を含むビデオデータを符号化する場合に有用である。一方で、双予測（一般的には複数仮説予測）では、複数の予測を単純な重み付けメカニズムを使用して組み合わせることによって、信号に対するより良好な予測を生成することができるものと仮定する。従来の双予測では、全ての予測に対して等しい重み（すなわち１／２）を使用することが多い。一実施形態においては、例えば、時間的距離や量子化、又は各信号に発生する或いは存在するその他のノイズのために、ある信号が別の信号よりも高い相関を有する。時刻ｔ、ポジション（ｘ，ｙ）におけるサンプルＩ（ｘ，ｙ，ｔ）について重み付け方式の双予測を実行するために、次式を使用することができる。
【数７】
2011091840.tif 000009
この式において、ｗｅｉｇｈｔｋ、ｄｘｋ、ｄｙｋ、ｔｋは、リストｋからの予測に対応する重み、水平変位、垂直変位、時刻であり、ｏｆｆｓｅｔはオフセットパラメータである。一実施形態においては、暗黙的な重み付け予測の場合、重みを、
【数８】
2011091840.tif 000010
であるように選択する。この式において、ｃは定数である。一実施形態においては、定数ｃは１である。これは、基本的には、全ての予測サンプルの間の加重平均の計算とみなすこともできる。
【００３９】
[0052]二つの双予測重みの間の上記の関係は、殆どの場合に、すなわち、明度変動或いはクロスフェードが存在しない従来のコンテンツに対して成り立つ。
【００４０】
[0053]一実施形態においては、パラメータｗｅｉｇｈｔ０及びｗｅｉｇｈｔ１を使用する代わりに、Ｎビットの量子化されたパラメータｗＱ０及びｗＱ１を使用する。一実施形態においては、Ｎは６ビットである。代入を行うと、上の式５は次式と等価になる。
【数９】
2011091840.tif 000011
この式において、＜＜は左ビットシフト演算子を表しており、＞＞は右ビットシフト演算子を表している。
【００４１】
[0054]二つの新しいパラメータ、すなわち変換後の量子化されたパラメータＢ＿ｗＱ０及びＢ＿ｗＱ１と、量子化されたパラメータとの関係は、以下の通りである。
【数１０】
2011091840.tif 000012
【数１１】
2011091840.tif 000013
【００４２】
[0055]式６の関係が殆どのブロック／区画に成り立つと考え、一実施形態においては、Ｂ＿ｗＱ０を、更に、
【数１２】
2011091840.tif 000014
と変形することができ、最終的に以下の式となる。
【数１３】
2011091840.tif 000015
代替の実施形態においては、差別化した符号化を使用し、Ｂ＿ｗＱ０のデフォルトの予測情報として１＜＜Ｎを使用する。
【００４３】
[0056]一実施形態においては、パラメータＢ＿ｗＱ０及びＢ＿ｗＱ１をそのまま符号化する。別の実施形態においては、パラメータＢ＿ｗＱ０及びＢ＿ｗＱ１を、隣接する双予測区画からのＢ＿ｗＱ０及びＢ＿ｗＱ１の値を考慮することによって、差分符号化する。そのような区画が存在しない場合、これらのパラメータをデフォルト値ｄＢ＿ｗＱ０及びｄＢ＿ｗＱ１を使用して予測することができる（例：双方の値を０に設定することができる）。
【００４４】
[0057]図１０は、双予測を使用してフレームを符号化するための重み付けパラメータの変換プロセスを示している。以下、図１０を参照する。変換器１００１は、量子化された重み付けパラメータｗＱ０及びｗＱ１を受け取り、変換された重み付けパラメータＢ＿ｗＱ０及びＢ＿ｗＱ１をそれぞれ生成する。これらの変換された重み付けパラメータを、可変長符号化器１００２を使用して、オフセットと共に可変長符号化する。その後、符号化された重み付けパラメータをビットストリームの一部として復号器に送る。可変長復号器１１０３は、このビットストリームを復号し、変換された重み付けパラメータＢ＿ｗＱ０及びＢ＿ｗＱ１とオフセットとを生成する。逆変換器１００４は、変換された重み付けパラメータを逆変換し、量子化された重み付けパラメータｗＱ０及びｗＱ１を生成する。この重み付けパラメータｗＱ０に、動き補償されたサンプルｘ０を乗算器１００６によって乗算して出力を生成し、その出力を加算器１００７に入力する。また、重み付けパラメータｗＱ１に、動き補償されたサンプルｘ１を、乗算器１００５を用いて乗算する。そして、乗算器１００５の演算結果を、乗算器１００６の出力と２Ｎ−１とに、加算器１００７を用いて、加算する。さらに、加算器１００７の出力を、除算器１００８を用いて２Ｎで除する。この除算の結果に加算器１００９を用いてオフセットを加算して、予測されたサンプルｘ’を生成する。
【００４５】
[0058]なお、本発明は、双予測の場合に限定されず、Ｍ個の異なる仮説を使用する複数仮説の場合にも同様に適用することができる。その場合にも、Ｍ個の仮説の重みの間の最も可能性の高い関係が、
【数１４】
2011091840.tif 000016
という形であるものと仮定することによって、一実施形態においては、元の重み付けパラメータを次の形式に変形する。
【数１５】
2011091840.tif 000017
一方で、最終的な重み付けパラメータを次のように生成することができる。
【数１６】
2011091840.tif 000018
【００４６】
[0059]図１１は、複数仮説の場合における、重み付けパラメータのプロセスを示している。図１１を参照すると、図１０に示した構成と同じ構成を示してあるが、異なる点として、図１１においては、変換器１１０１が二つ以上の重み付けパラメータのセットを変換し、可変長符号化器１１０２が、量子化された重み付けパラメータのセットと、各セットの一つのオフセットとを符号化する。復号においては、可変長復号器１１０３がビットストリームを復号し、変換された重み付けパラメータのセットを生成する。変換された重み付けパラメータの各セットを逆変換器１１０４によって逆変換し、図１０における方式と同じように、その出力を組み合わせて、予測されたサンプルｘ’を生成する。加算器１１０７は、量子化された重み付けパラメータ全ての乗算の結果全てを加算する。
【００４７】
[0060]一般的には、一つのピクチャ又はスライスにおいて、双予測区画と片方向予測区画の双方を組み合わせることができる。具体的には、双予測区画が、リスト０予測又はリスト１予測のいずれかを使用する片方向予測隣接区画を持つことができ、或いは、リストＸ（Ｘは０又は１）を使用する片方向予測区画が、異なるリストを使用する隣接区画を持つことさえ可能である。双予測区画内の動きベクトルと、片方向予測区画の動きベクトルとが依然として相関していることがあるが、リストが異なり、且つ異なる数の仮説を使用する重み付けパラメータの動きベクトルについては、相関しない可能性が高い（すなわち、双予測区画からの重みと片方向予測区画からの重みとでは関係が少なく、リスト０を使用する片方向予測区画からの重み及び動きベクトルと、リスト１を使用する別の区画からのこれらのパラメータとでは関係が少ない）。一実施形態においては、ある予測モード（リスト０、リスト１、双予測）からの全ての重みは、同じモードにおける隣接する区画からのみ予測するように制限する。一実施形態においては、現在の区画が双予測区画であり、Ｒ個の隣接区画（Ｎｅｉｇｈ０，Ｎｅｉｇｈ１，．．．，ＮｅｉｇｈＲ）全ても双予測であるならば、重み付けパラメータＢ＿ｗＱｋを次のように予測する。
【数１７】
2011091840.tif 000019
この式において、ｆ（）は、ｋ番目の重み付けパラメータの予測を求めるための関係に対応する。一実施形態においては、例えば、ｆに使用する関数は、全ての予測情報の中央値である。
【００４８】
[0061]代替の実施形態においては、平均等の関数を使用し、使用する参照フレーム若しくは所定のコスト、又はその双方に基づく上又は左の隣接区画のみを考慮する。しかしながら、ＮｅｉｇｈＪにおいて異なる予測タイプを使用する場合、その予測プロセスからＮｅｉｇｈＪを除外することができる。一実施形態においては、予測が得られない場合、前述したデフォルト値を予測情報として使用することができる。
【００４９】
[0062]一実施形態においては、予測後、重み付けパラメータと、一般的にはブロックの動きパラメータとを、ゼロツリー符号化を使用して更に効率的に符号化する。図４及び図５は、符号化することのできるノード情報を有する二つの想定可能なツリーを表している。図４を参照すると、双予測の動き情報を符号化するための親子関係の例を示している。この例においては、ノードがリストに基づいて分割されており、リスト０の水平及び垂直動きベクトルの変位差の親ノードが共通であり、リスト１の水平及び垂直動きベクトルの変位差の親ノードが共通である。図５においては、動きは動きベクトル成分に基づいて分割されている。この場合には、リスト０及びリスト１の双方の水平動きベクトルの変位差の親ノードが共通であるのに対し、リスト０及びリスト１の双方の垂直動きベクトルの変位差の親ノードが共通である。
【００５０】
[0063]図４及び図５に記載した、ノードタイプデータとリーフインデックスデータの双方を含んでいるツリーは、「係数のポジションを符号化する方法及び装置（Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｄｉｎｇ  Ｐｏｓｉｔｉｏｎｓ  ｏｆ  Ｃｏｅｆｆｉｃｉｅｎｔｓ）」と題して２００５年６月２９日に出願された米国特許出願第１１／１７２，０５２号に記載されているツリー符号化（例：ゼロツリー符号化）を使用して符号化する（及びその後に復号する）ことができる。
【００５１】
[0064]しかしながら、特定の予測タイプのデフォルト値を一定にする必要はない。一実施形態においては、グローバルパラメータ／デフォルトパラメータのセットを、Ｈ．２６４の明示モードにおいて使用されるパラメータセットのように使用して符号化し、或いはこれに代えて、Ｈ．２６４の暗黙モード方式に類似するメカニズムを使用して導出する。導出方法又はパラメータは、ピクチャレベル又はスライスレベルにおいて伝えることができる。
【００５２】
[0065]図９は、グローバルな重み付けと局所的な重み付けとを組み合わせて使用するプロセスの一実施形態のフローチャートを示している。このプロセスは処理ロジックによって実行され、処理ロジックは、ハードウェア（回路、専用ロジック等）、ソフトウェア（汎用コンピュータシステム又は専用マシン上で実行されるもの等）、又は双方の組合せを備えことができる。
【００５３】
[0066]以下、図９を参照する。このプロセスでは、最初に、デフォルトの重み付けパラメータを設定する（処理ブロック９０１）。そのような場合、リスト０、リスト１、及び双予測のデフォルトのスケーリングパラメータ及びオフセットパラメータが存在する。リスト０の場合、デフォルトの重み付けパラメータは｛ＤＳｃａｌｅＬ０，ＤＯｆｆｓｅｔＬ０｝である。リスト１の場合、重み付けパラメータは｛ＤＳｃａｌｅＬ１，ＤＯｆｆｓｅｔＬ１｝である。双予測の場合、デフォルトの重み付けパラメータは｛ＤＳｃａｌｅＢｉ＿Ｌ０，ＤＳｃａｌｅＢｉ＿Ｌ１，ＤＯｆｆｓｅｔ｝である。
【００５４】
[0067]次いで、プロセスは、フレーム内の各ブロックについて続行し、処理ロジックは、ブロックが双予測ブロックであるかを調べる（処理ブロック９０３）。双予測ブロックである場合、処理ロジックは処理ブロック９０４に移行し、双予測の利用可能な予測情報が存在するかを調べる。存在する場合、処理ロジックは、隣接区画を使用し、関数ｆｂｉｐｒｅｄ（Ｎｅｉｇｈ０，．．．，Ｎｅｉｇｈ１）を用いて重み付けパラメータ予測情報を計算し（処理ブロック９０５）、処理は処理ブロック９１４に移行する。双予測の利用可能な予測信号が存在しない場合、処理ロジックは、重み付けパラメータをデフォルト｛ＤＳｃａｌｅＢｉ＿Ｌ０，ＤＳｃａｌｅＢｉ＿Ｌ１，ＤＯｆｆｓｅｔ｝に設定し（処理ブロック９０６）、処理は処理ブロック９１４に移行する。
【００５５】
[0068]フレーム内のブロックを双予測しない場合、処理は処理ブロック９０７に移行し、処理ロジックは、ブロックリストがリスト０であるかを調べる。リスト０である場合、処理は処理ブロック９０８に移行し、処理ロジックは、リスト０予測の利用可能な予測情報が存在するかを調べる。存在する場合、処理ロジックは、隣接区画ｆＬ０（Ｎｅｉｇｈ０，．．．，Ｎｅｉｇｈ１）を使用して重み付けパラメータ予測情報を計算し（処理ブロック９０９）、処理は処理ブロック９１４に移行する。リスト０の利用可能な予測情報が存在しない場合、処理ロジックは、重み付けパラメータをデフォルト値｛ＤＳｃａｌｅＬ０，ＤＯｆｆｓｅｔＬ０｝に設定し（処理ブロック９１０）、処理は処理ブロック９１４に移行する。
【００５６】
[0069]リスト０を使用してブロックを予測しない場合、処理は処理ブロック９１１に移行し、処理ロジックは、リスト１予測の利用可能な予測情報が存在するかを調べる。存在する場合、処理ロジックは、隣接区画ｆＬ０）（Ｎｅｉｇｈ０，．．．，Ｎｅｉｇｈ１）を使用して重み付けパラメータ予測情報を計算し（処理ブロック９１２）、処理は処理ブロック９１４に移行する。リスト１の利用可能な予測情報が存在しない場合、処理ロジックは、重み付けパラメータをデフォルト値｛ＤＳｃａｌｅＬ１，ＤＯｆｆｓｅｔＬ１｝に設定し（処理ブロック９１３）、処理は処理ブロック９１４に移行する。
【００５７】
[0070]処理ブロック９１４において、処理ロジックは、重み付けパラメータを復号する。その後、重み付けパラメータ予測情報を重み付けパラメータに加算する（処理ブロック９１５）。次いで、フレーム内の各ブロックについてこのプロセスを繰り返し、フレーム内の各ブロックを処理した時点で、プロセスが終了する。
【００５８】
[0071]上の説明に基づいて、双予測区画と片方向予測区画とに対して個別のデフォルトの重みを使用することができるが、そのようなパラメータは、Ｋａｍｉｋｕｒａ等による「ビデオ符号化におけるグローバルな明度変動補償（Ｇｌｏｂａｌ  Ｂｒｉｇｈｔｎｅｓｓ−  Ｖａｒｉａｔｉｏｎ  Ｃｏｍｐｅｎｓａｔｉｏｎ  ｆｏｒ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）」（ＩＥＥＥ  Ｔｒａｎｓ  ｏｎ  ＣＳＶＴ、ｖｏｌ．８、ｐ．９８８〜１０００、１９９８年１２月）と、Ｊ．Ｂｏｙｃｅによる「ビデオ符号化規格Ｈ．２６４／ＭＰＥＧ４  ＡＶＣにおける重み付け予測（Ｗｅｉｇｈｔｅｄ  ｐｒｅｄｉｃｔｉｏｎ  ｉｎ  ｔｈｅ  Ｈ．２６４／ＭＰＥＧ４  ＡＶＣ  ｖｉｄｅｏ  ｃｏｄｉｎｇ  ｓｔａｎｄａｒｄ）」（ＩＳＣＡＳ、ｐ．７８９〜７９２、２００４年５月）に提示されているものと類似する方法を使用して、推定することができる。表１は、この目的に使用することのできる予測重みテーブルのシンタックス（ｐｒｅｄｉｃｔｉｏｎ  ｗｅｉｇｈｔ  ｔａｂｌｅ  ｓｙｎｔａｘ）の例を示している。このテーブルでは、片方向予測領域と双予測領域のためのグローバル重みを個別に伝え得ることがわかる。
【００５９】
[0072]更には、双予測重みは異なるダイナミックレンジを持つことができ、パラメータｌｕｍａ＿ｂｉｐｒｅｄ＿ｗｅｉｇｈｔ＿ｔｙｐｅ及びｃｈｒｏｍａ＿ｂｉｐｒｅｄ＿ｗｅｉｇｈｔ＿ｔｙｐｅを使用して重みの導出方法を制御する。より具体的には、明度（ｌｕｍａ）については、ｌｕｍａ＿ｂｉｐｒｅｄ＿ｗｅｉｇｈｔ＿ｔｙｐｅを０に設定する場合、デフォルトの重み１／２が使用される。１に設定する場合、暗黙モードが使用され、２に設定する場合、現在のＨ．２６４の明示モードにおいて行われているように片方向重みが使用される。３に設定する場合、重み付けパラメータがヘッダにおいて明示的に伝えられる。
【表１】
2011091840.tif 000020
【表２】
2011091840.tif 000021
【００６０】
[0073]重み付けパラメータ及びオフセットパラメータの忠実度（ｆｉｄｅｌｉｔｙ）を一定にする、すなわち、重み付けパラメータをＮビットに均一に量子化することができるが、フレーム内の様々な変動を良好に扱うためには、不均一な量子化の方が効率的且つ適切であることがある。一実施形態においては、小さい重み付けパラメータ又はオフセットパラメータに対しては細かい忠実度を使用し、大きいパラメータに対しては忠実度を増大させる。
【００６１】
[0074]一般的に、重み付けパラメータＢ＿ｗＱｋ、ｗＱｋ、或いは場合によっては差分値ｄＢ＿ｗＱｋへのマッピングを提供するパラメータｑｗｋの符号化として、次式を使用したものが想定される。
【数１８】
2011091840.tif 000022
使用することのできる関数は以下のとおりである。
【数１９】
2011091840.tif 000023
【数２０】
2011091840.tif 000024
【数２１】
2011091840.tif 000025
【数２２】
2011091840.tif 000026
【数２３】
2011091840.tif 000027
【数２４】
2011091840.tif 000028
【００６２】
[0075]式（１７）（又はより一般的な式（１８））によって表される関数は、重み付けパラメータの忠実度の表現において柔軟性を高めることができる。なお、演算ａ・ｘは、乗算のみならず、整数又は浮動小数点数の除算も示すことがある（すなわちａは１より小さいと想定する）。図８は、重み付けパラメータの表現と真の値との間の関係の例である。
【００６３】
[0076]一実施形態においては、パラメータの決定は、フレーム又はシーケンスの事前分析を実行し、重み付けパラメータの分布（ｄｉｓｔｒｉｂｕｔｉｏｎ）を生成し、その分布をｇ（ｘ）によって近似することによって（すなわち多項式近似を使用して）行う。
【００６４】
[0077]図１２は、忠実度が制御される、双予測における重み付けパラメータの変換プロセスを示している。図１２を参照すると、このプロセスは図１０におけるプロセスと同じであるが、相違点として、変換器１００１から出力される変換された重み付けパラメータのそれぞれとオフセットとを、可変長符号化器１００２に直接的には入力しない。代わりに、これらを関数に入力し、その出力を可変長符号化器１００２に入力する。より具体的には、変換された重み付けパラメータＢ＿ｗＱ０を関数ｇ０（ｘ）に入力し、ｘ０を生成する。更には、変換された重み付けパラメータＢ＿ｗＱ１を関数ｇ１（ｘ）に入力し、ｘ１を生成する（１２０２）。オフセットも関数ｇ０（ｘ）に入力し、ｘ２を生成する（１２０３）。
【００６５】
[0078]同様に、復号器１００３の出力（ｘ０，ｘ１，ｘ２）を関数ｇ０−１（ｘ）（１２０４）、ｇ１−１（ｘ）（１２０５）、ｇ０−１（ｘ）（１２０６）に入力する。これらの関数は、オフセットにおける変換された重み付けパラメータを生成する。その後、図１０に示した方法と同じ方法で、これらを処理する。
＜符号化器及び復号器の例＞
【００６６】
[0079]図６は、符号化器の一実施形態のブロック図である。一実施形態においては、符号化器は、最初に、入力されるビットストリームを矩形の配列（マクロブロックと称する）に分割する。次いで、符号化器は、各マクロブロックについて、フレーム内符号化を使用するかフレーム間符号化を使用するかを選択する。フレーム内符号化は、現在のビデオフレームに含まれている情報のみを使用して、圧縮結果（Ｉフレームと称する）を生成する。フレーム内符号化では、現在のフレームの前又は後ろに存在する一つ以上の別のフレームの情報を使用することができる。前のフレームからのデータのみを使用する圧縮結果をＰフレームと称するのに対し、現在のフレームの前後双方のフレームからのデータを使用する圧縮結果をＢフレームと称する。
【００６７】
[0080]以下、図６を参照する。まず、ビデオ６０１を符号化器に入力する。動き補償なしにフレームを符号化する場合、ビデオのフレームをＤＣＴ６０３に入力する。ＤＣＴ６０３は、２次元離散コサイン変換（ＤＣＴ）を実行してＤＣＴ係数を生成する。これらの係数を量子化器６０４によって量子化する。一実施形態においては、量子化器６０４によって実行される量子化は、スケーリング器によって重み付けされる。一実施形態においては、量子化器のスケーリング器パラメータＱＰは、１〜３１の値をとる。ＱＰ値は、ピクチャレベル及びマクロブロックレベルの双方において変更することができる。
【００６８】
[0081]その後、量子化された係数に、ＶＬＣ６０５において可変長符号化を行う。一実施形態においては、ＶＬＣ６０５は、ハフマン符号化又は算術符号化を使用することによってエントロピ符号化を実行する。
【００６９】
[0082]なお、一実施形態においては、ＶＬＣ６０５の前に再順序付けを実行することができ、この処理では、２次元配列の係数が１次元配列の係数に変換されるように、量子化されたＤＣＴ係数に対して、この技術分野において周知の方法においてジグザグ走査を行う。この後、ランレングス符号化を行うことができ、この処理では、０の係数が良好に表現されるように、各ブロックに対応する再順序付け後の量子化された係数の配列を符号化する。この場合、ゼロでない係数のそれぞれをトリプレット（最後、ラン、レベル）として符号化し、この場合、「最後」は、その係数がブロック内のゼロでない最後の係数であるかを示し、「ラン」は、先行するゼロの係数を伝え、「レベル」は、係数の符号及び大きさを示す。
【００７０】
[0083]フレームのコピーを、参照フレームとして使用するために、保存しておくことができる。これは、特に、Ｉフレーム又はＰフレームの場合である。この目的のために、量子化器６０４から出力される量子化された係数を、逆量子化器６０６によって逆量子化する。逆量子化された係数に、ＩＤＣＴ６０７を使用して逆ＤＣＴ変換を適用する。Ｐフレームの場合には、その結果としてのフレームデータを、動き補償（ＭＣ）ユニット６０９からの動き補償された予測に加算し、結果のフレームをループフィルタ６１２を使用してフィルタリングし、参照フレームとして使用できるようにフレームバッファ６１１に格納する。Ｉフレームの場合には、ＩＤＣＴ６０７から出力されるデータを、動き補償（ＭＣ）ユニット６０９からの動き補償された予測に加算せずに、ループフィルタ６１２を使用してフィルタリングし、フレームバッファ６１１に格納する。
【００７１】
[0084]Ｐフレームの場合、前のＩフレーム又はＰフレーム（この技術分野においては一般に参照フレームと称する）とのフレーム間予測（ｉｎｔｅｒｐｒｅｄｉｃｔｉｏｎ）を用いて、Ｐフレームを符号化する。この場合、フレーム間予測は、動き推定（ＭＥ）ブロック６１０及び動き補償ユニット６０９によって実行する。この場合、動き推定ユニット６１０は、フレームストア６１１からの参照フレームと、入力されるビデオ６０１とを使用して、現在のフレーム内の現在のマクロブロックに最良に一致する参照フレーム内の領域の位置を探索する。上述したように、このステップでは、変位を求めるのみならず、重み付けパラメータ（ＷＰ）及びオフセットも求める。現在のマクロブロックと、参照フレーム内の補償領域との間の変位と、重み付けパラメータ及びオフセットとを、動きベクトルと称する。この動き推定ユニット６１０の動きベクトルは動き補償ユニット６０９に送られる。動き補償ユニット６０９は、減算器６０２を使用して現在のマクロブロックから予測を減算し、残差マクロブロックを生成する。次いで、この残差マクロブロックを、ＤＣＴ６０３と、量子化器６０４と、ＶＬＣ６０５とを使用して、上述したように符号化する。
【００７２】
[0085]動き推定ユニット６１０は、重み付けパラメータを可変長復号用のＶＬＣ６０５に出力する。ＶＬＣ６０５の出力は、ビットストリーム６２０である。
【００７３】
[0086]図７は、復号器の一実施形態のブロック図である。以下、図７を参照する。まず、可変長復号器７０２がビットストリーム７０１を受け取り、可変長復号を実行する。可変長復号の出力は逆量子化器７０３に送られ、逆量子化器７０３が、量子化器６０４によって実行される量子化の逆演算である逆量子化演算を実行する。次いで、逆量子化器７０３の出力に含まれる係数をＩＤＣＴ７０４が逆ＤＣＴ変換し、画像データを生成する。Ｉフレームの場合、ＩＤＣＴ７０４の出力をループフィルタ７２１によって単純にフィルタリングし、フレームバッファ７２２に格納し、最終的に出力７６０として出力する。Ｐフレームの場合には、ＩＤＣＴ７０４から出力される画像データを、加算器７０５を使用して、動き補償ユニット７１０からの予測に加算する。動き補償ユニット７１０は、可変長復号器７２２からの出力（上述した重み付けパラメータを含んでいる）と、フレームバッファ７２２からの参照フレームとを使用する。加算器７０５から出力される結果の画像データを、ループフィルタ７２１を使用してフィルタリングし、フレームバッファ７２２に格納し、最終的に出力７６０の一部として出力する。
【００７４】
[0087]ここまで説明したように、本発明の実施形態では、明度変動及び／又はクロスフェードが存在する場合に、双予測区画の重み付けパラメータをより良好に表現して、符号化効率を高める（すなわち、あるビットレートにおけるピーク信号対雑音比（ＰＳＮＲ）が高まる）ことができる。
＜コンピュータシステムの例＞
【００７５】
[0088]図１３は、本明細書に説明した一つ以上のオペレーションを実行することのできる例示的なコンピュータシステムのブロック図である。以下、図１３を参照する。コンピュータシステム１３００は、例示的なクライアントコンピュータシステム又はサーバコンピュータシステムを備えることができる。コンピュータシステム１３００は、情報を伝えるための通信メカニズム又はバス１３１１と、バス１３１１に結合されて情報を処理するプロセッサ１３１２と、を備えている。プロセッサ１３１２はマイクロプロセッサを含んでいるが、マイクロプロセッサ（例：ＰｅｎｔｉｕｍTM、ＰｏｗｅｒＰＣTM、ＡｌｐｈａTM）に限定されない。
【００７６】
[0089]システム１３００は、バス１３１１に結合されたＲＡＭ（ランダムアクセスメモリ）又はその他の動的記憶装置１３０４（メインメモリと称する）を、情報と、プロセッサ１３１２によって実行される命令とを格納するために備えている。メインメモリ１３０４は、プロセッサ１３１２による命令の実行時に一時変数又はその他の中間情報を格納する目的にも使用することができる。
【００７７】
[0090]更に、コンピュータシステム１３００は、バス１３１１に結合されたＲＯＭ（読取り専用メモリ）及び／又はその他の静的記憶装置１３０６を、静的な情報と、プロセッサ１３１２への命令とを格納するために備えており、また、データ記憶装置１３０７（例：磁気ディスク又は光ディスクと、それに対応するディスクドライブ）を備えている。データ記憶装置１３０７は、バス１３１１に結合されており、情報及び命令を格納する。
【００７８】
[0091]更に、コンピュータシステム１３００には、コンピュータの使用者に情報を表示するために、バス１３１１に結合されたディスプレイ装置１３２１（例：ＣＲＴ（陰極線管）、液晶ディスプレイ（ＬＣＤ））を結合することができる。英数字キー及びその他のキーを含んでいる英数字入力装置１３２２も、情報及びコマンド選択をプロセッサ１３１２に伝えるために、バス１３１１に結合することができる。更なるユーザ入力装置は、バス１３１１に結合されたカーソル制御装置１３２３（例：マウス、トラックボール、トラックパッド、スタイラス、カーソル方向キー）であり、当該カーソル制御装置は、方向情報及びコマンド選択をプロセッサ１３１２に伝え、ディスプレイ１３２１上のカーソルの動きを制御する。
【００７９】
[0092]バス１３１１に結合することのできる別の装置は、ハードコピー装置１３２４であり、当該ハードコピー装置は、媒体（例：紙、フィルム、又は類似するタイプの媒体）上に情報を記録するために使用することができる。バス１３１１に結合することのできる別の装置は、電話又はハンドヘルド型パームデバイス（ｈａｎｄｈｅｌｄ  ｐａｌｍ  ｄｅｖｉｃｅ）と通信するための有線／無線通信機能１３２５である。
【００８０】
[0093]なお、本発明においては、システム１３００及び関連するハードウェアのコンポーネントの一部又は全てを使用することができる。しかしながら、コンピュータシステムの別の構成では、これらのコンポーネントの一部又は全てを含めることができることを理解されたい。
【００８１】
[0094]この技術分野における当業者には、上記の説明を読み終えた後、本発明の数多くの変更及び修正が明らかになるであろうが、説明を目的として図示及び記載した実施形態はいずれも、本発明を制限することを意図したものではないことを理解されたい。従って、様々な実施形態の細部を示したが、それらは、本発明の本質的な特徴のみを記載している特許請求の範囲を制限することを意図したものではない。
【図１Ａ】
2011091840.tif 000029
【図１Ｂ】
2011091840.tif 000030
【図２】
2011091840.tif 000031
【図３】
2011091840.tif 000032
【図４】
2011091840.tif 000033
【図５】
2011091840.tif 000034
【図６】
2011091840.tif 000035
【図７】
2011091840.tif 000036
【図８】
2011091840.tif 000037
【図９】
2011091840.tif 000038
【図１０】
2011091840.tif 000039
【図１１】
2011091840.tif 000040
【図１２】
2011091840.tif 000041
【図１３】
2011091840.tif 000042
【手続補正書】
【提出日】平成23年1月4日(2011.1.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
二つの参照ピクチャから、双予測動き補償により、現在のピクチャ内の符号化対象区画の二つの予測区画に対する二つの動きベクトルを求めるステップと、
前記二つの動きベクトルを符号化するステップと、
を備え、
前記符号化するステップにおいて、前記二つの動きベクトルに対応する二つの差分動きベクトルが、該二つの差分動きベクトルのうち一方の差分動きベクトルの垂直成分及び水平成分が共通の親ノードを有し、該二つの差分動きベクトルのうち他方の差分動きベクトルの垂直成分及び水平成分が共通の親ノードを有するツリー構造を用いたゼロツリー符号化により符号化される、
符号化方法。
【請求項２】
複数仮説区画の重み付けパラメータを生成するステップと、
前記重み付けパラメータを変換するステップと、
変換された重み付けパラメータを符号化するステップと、
を含む符号化方法。
【外国語明細書】
2011091840000001.pdf