(57)【要約】      （修正有）【課題】複数のパーティションを有するマクロブロックのインター／イントラ混在符号化用のビデオ符号器とそれに対応する方法を提供する。【解決手段】ビデオ符号器には、基準画像重み付け付与装置と、この基準画像重み付け付与装置に接続されており、インター符号化されたパーティションとイントラ符号化されたパーティションの各々に対応する重み付け係数を割り当てる基準画像重み付け係数ユニットとが含まれている。一部のパーティションについて、マクロブロックを符号化する上記対応する方法には、少なくとも１つパーティションをインター符号化するステップ（４２６）と別の少なくとも１つのパーティションをイントラ符号化するステップ（４２８）とが含まれる。【選択図】図４
2010136411.tif 000002
【特許請求の範囲】
【請求項１】
複数のパーティションを有するマクロブロックのインター／イントラ混在符号化用のビデオ符号器であって、
基準画像重み付け付与装置と、
前記基準画像重み付け付与装置と信号通信可能に接続されており、インター／イントラ混在符号化されたパーティションの各々に対応する重み付け係数を割り当てる基準画像重み付け係数ユニットと、
を含む、前記マクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項２】
前記基準画像重み付け付与装置と信号通信可能に接続されており、動き補償されインター符号化されたパーティションと動き補償されイントラ符号化されたパーティションの少なくともそれぞれ各１つを供給する動き補償ユニットを含む、請求項１記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項３】
前記基準画像重み付け係数ユニットと前記動き補償ユニットとに信号通信可能に接続されており、動き補償されインター符号化されるパーティションと動き補償されイントラ符号化されるパーティションの少なくともそれぞれ各１つを記憶する基準画像記憶部を含む、請求項２記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項４】
前記基準画像重み付け付与装置が、前記基準画像重み付け係数ユニットにより選択された重み付け係数を、前記動き補償されインター符号化されたパーティションと前記動き補償されイントラ符号化されたパーティションのうちの少なくとも１つに適用する、請求項２記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項５】
双方向予測画像予測子を使用できるビデオ符号器であって、前記動き補償されインター符号化されたパーティションと前記動き補償されイントラ符号化されたパーティションのうちの少なくとも１つの重み付けられたものから、第１と第２の予測子を生成する予測手段を含む、請求項４記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項６】
マクロブロックの少なくとも１つのパーティションをインター符号化するインター符号化手段と、
前記マクロブロックの別の少なくとも１つのパーティションをイントラ符号化するイントラ符号化手段と、
を含む、請求項１記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項７】
前記マクロブロックが、共同ビデオ・チーム（ＪＶＴ）規格に適合するビデオ・データから成る、請求項６記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項８】
前記マクロブロックが、非イントラ・マクロブロック・タイプから成る、請求項６記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項９】
前記イントラ符号化手段が、ゼロの重み付け係数に対応する基準画像インデックスを供給するインデックス供給手段を含む、請求項６記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項１０】
非予測イントラ符号化されるパーティションについて、ゼロ差分動きベクトルを符号化する非予測イントラ符号化手段を含む、請求項６記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項１１】
前記複数のパーティションのうちの前記インター符号化された少なくとも１つが、非ゼロ値の重み付け係数に対応する基準画像インデックスを有する、請求項６記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項１２】
各符号化方法についてのコスト測定値に応答して、パーティションのインター符号化と非予測イントラ符号化のどちらにするかを決める決定手段を含む、請求項１１記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項１３】
基準画像リオーダリング・コマンドを用いて、複数の基準画像インデックスを特定の１つの基準画像記憶部に対応付ける基準画像リオーダリング手段と、
ゼロの重みを前記複数の基準画像インデックスの１つに割り当て、非ゼロの重みを他の少なくとも１つの基準画像インデックスに割り当てる重み付け手段と、
を含む、請求項６記載のマクロブロックのインター／イントラ混在符号化用のビデオ符号器。
【請求項１４】
少なくとも１つのパーティションを有するマクロブロックの非予測イントラ符号化用のビデオ符号器であって、
基準画像重み付け付与装置と、
前記基準画像重み付け付与装置と信号通信可能に接続されており、少なくとも１つの非予測イントラ符号化されたパーティションに対応する重み付け係数を割り当てる基準画像重み付け係数ユニットと、
を含む、前記マクロブロックの非予測イントラ符号化用のビデオ符号器。
【請求項１５】
ゼロの重み付け係数に対応する基準画像インデックスを供給することにより、少なくとも１つのパーティションを非予測イントラ符号化する非予測イントラ符号化手段を含む、請求項１４記載のマクロブロックの非予測イントラ符号化用のビデオ符号器。
【請求項１６】
前記非予測イントラ符号化が、ＪＶＴ規格の主要プロファイルと拡張プロファイルの少なくとも１つから提供される重み付け予測ツールにより、ゼロの重み付け係数を用いて、重み付け予測符号化モード内で行われる、請求項１５記載のマクロブロックの非予測イントラ符号化用のビデオ符号器。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、米国仮特許出願第６０／４３８，４２７号（代理人整理番号ＰＵ０３００１０）（出願日は２００３年１月７日、発明の名称は「マクロブロック・パーティションのインター／イントラ混在ビデオ符号化（ＭＩＸＥＤ  ＩＮＴＥＲ／ＩＮＴＲＡ  ＶＩＤＥＯ  ＣＯＤＩＮＧ  ＯＦ  ＭＡＣＲＯＢＬＯＣＫ  ＰＡＲＴＩＴＩＯＮＳ）」）の優先権を主張する。
【０００２】
本発明は、ビデオ符号器（ｅｎｃｏｄｅｒ：エンコーダ、符号化器）に向けられたものであり、詳しくは、インターブロック／イントラブロック混在ビデオ符号化を行うための装置と方法に関するものである。
【背景技術】
【０００３】
ビデオ・データは、一般に、ビット・ストリームの形態で処理されて転送される。一般的なビデオ圧縮符号器は、符号化すべき画像またはマクロブロックの基準画像予測を形成して、その予測と現在の画像との差分を符号化することにより、圧縮効率を上げている。予測と現在の画像との相関関係が密接であればある程、その画像を圧縮するのに要するビット数は少なくて済み、その結果、処理効率が改善する。従って、最良の実行可能な基準画像予測（ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅ  ｐｒｅｄｉｃｔｉｏｎ）を形成することが望ましい。
【０００４】
各種ビデオ圧縮規格では、通常、インターブロック（「インター（ｉｎｔｅｒ）：画面間」）符号化とイントラブロック（「イントラ（ｉｎｔｒａ）：画面内」）符号化とが使用される。一般に、符号器は、符号化効率と主観的品位（ｓｕｂｊｅｃｔｉｖｅ  ｑｕａｌｉｔｙ）の観点に基づいて、各マクロブロックについて、インター（画面間）符号化とイントラ（画面内）符号化の決定を行う。例えば、ある１６×１６マクロブロックの一部のパーティション（例えば、１６×８、８×１６、或いは、８×８のサブブロック）は、イントラ符号化により、より効率良く符号化でき、同一マクロブロックのその他のパーティション（ｐａｒｔｉｔｉｏｎ：区画）は、インター符号化により、より効率良く符号化できる。
【０００５】
従って、各々のマクロブロックは、イントラ（画面内符号化）として、即ち、空間的相関のみを用いて、符号化されるか、或いは、インター（画面間符号化）として、即ち、前に符号化されたフレームに対する時間的相関を用いて、符号化される。インター符号化は、一般に、前のフレームから十分に予測できるマクロブロックについて、用いられ、イントラ符号化は、一般に、前のフレームからでは十分に予測できないマクロブロックについて、或いは、空間的動きが少ないマクロブロックについて、用いられる。
【０００６】
Ｈ．２６４／ＭＰＥＧ  ＡＶＣとしても知られるＪＶＴビデオ圧縮規格では、３階層構造のマクロブロック・パーティションが用いられる。インター符号化１６×１６ピクセル・マクロブロックは、１６×８、８×１６、或いは、８×８のサイズのマクロブロック・パーティションに細分化できる。８×８のマクロブロック・パーティションは、サブマクロブロックとしても知られている。更に、サブマクロブロックは、８×４、４×８、および、４×４のサイズのサブマクロブロック・パーティションに細分化できる。符号器は、圧縮効率と主観的品位とが最大限になるように、個々のマクロブロックの特性に基づいて、そのマクロブロックを各パーティションおよび各サブマクロブロック・パーティションに分割するやり方を選択できる。
【０００７】
複数の基準画像がインター予測用に使用でき、その際、基準画像インデックスが、その複数の基準画像のうちのどの基準画像が使用されているかを示すように符号化される。Ｐピクチャ（或いはＰスライス）では、単一方向予測のみが使用され、許容基準画像がリスト０内で管理される。Ｂピクチャ（或いはＢスライス）では、基準画像の２つのリストが、リスト０とリスト１として、管理される。Ｂピクチャ（或いはＢスライス）では、リスト０とリスト１の何れか一方を使用する単一方向予測が可能であり、また、リスト０とリスト１の両方を使用する双方向予測が可能である。双方向予測が行われる場合、リスト０とリスト１の予測子（ｐｒｅｄｉｃｔｏｒ：プレディクタ）が平均化されて、最終予測子（ｆｉｎａｌ  ｐｒｅｄｉｃｔｏｒ：ファイナル・プレディクタ）が形成される。
【０００８】
マクロブロック・パーティションの各々は、個別の基準画像インデックス、予測タイプ（例えば、リスト０、リスト１、双方向予測）、および、個別の動きベクトルを持つことができる。サブマクロブロック・パーティションの各々は、個別の動きベクトルを持つことができるが、同一サブマクロブロック内の全てのサブマクロブロック・パーティションは、同じ基準画像インデックスと同じ予測タイプを使用する。
【０００９】
インター符号化マクロブロックの一部のパーティションについて、イントラ予測を使用することが提案されたことがある。しかし、その複雑性に問題があり、最終的に、そのような柔軟性は許されず、現行の各種規格では、個々のマクロブロック・パーティションについて、イントラ符号化モードは許されていない。同一マクロブロック内でインター符号化パーティションとイントラ符号化パーティションの両方をサポートする際に増大する複雑性の一部は、ＪＶＴ規格に使用されるイントラ空間方向予測（ｉｎｔｒａ  ｓｐａｔｉａｌ  ｄｉｒｅｃｔｉｏｎａｌ  ｐｒｅｄｉｃｔｉｏｎ）に起因する。同一マクロブロック内でインター／イントラ混在符号化が許されないと、符号化効率、および、特に、主観的品位が損なわれることがある。ある映像内の一部のブロックによっては、イントラ符号化の方がインター符号化より効率的なことがある。
【００１０】
ＪＶＴ規格の主要プロファイル（Ｍａｉｎ  ｐｒｏｆｉｌｅ：メイン・プロファイル）と拡張プロファイル（Ｅｘｔｅｎｄｅｄ  ｐｒｏｆｉｌｅ）では、重み付け予測用ツールが提供されている。重み付け予測を行う場合、重み付け係数とオフセットが、インター予測に適用される。単一方向予測では、重み付け予測子は、次のように、形成される。
【数１】
2010136411.tif 000003
また、双方向予測では、重み付け予測子は、次のように、形成される。
【数２】
2010136411.tif 000004
ここで、Ｗ０とＯ０は、それぞれ、リスト０の基準画像の重み付け係数とオフセット、Ｗ１とＯ１は、それぞれ、リスト１の基準画像の重み付け係数とオフセット、ＬＷＤはログ重み分母丸め係数（ＬＷＤ：Ｌｏｇ  Ｗｅｉｇｈｔ  Ｄｅｎｏｍｉｎａｔｏｒ−ｒｏｕｎｄｉｎｇ  ｆａｃｔｏｒ）、ＳａｍｐｌｅＰ０とＳａｍｐｌｅＰ１は、それぞれ、リスト０とリスト１の最初の予測子、ＳａｍｐｌｅＰは重み付け予測子である。重み付け係数とオフセットは、任意に、スライス・ヘッダ内に符号化され、個々の基準画像インデックスと対応付けられる。
【００１１】
ＪＶＴ規格での関連構文要素（ｓｙｎｔａｘ  ｅｌｅｍｅｎｔ：シンタックス・エレメント）は、luma_log_weight_denom、chroma_log_weight_denom、luma_weight_l0、chroma_weight_l0、luma_offset_l0、chroma_offset_l0、luma_weight_l1、chroma_weight_l1、luma_offset_l1、および、chroma_offset_l1である。
【００１２】
更に、基準画像のリオーダリング（ｒｅｏｒｄｅｒｉｎｇ）を用いて、複数の基準画像インデックスを特定の１つの基準画像記憶部に対応付けることができ、これにより、同一の基準画像記憶部から予測する際に、複数の重み付け係数を使用できる。
【００１３】
共同ビデオ・チーム（Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ）（ＪＶＴ）ビデオ圧縮規格は、１６×１６ピクセル・マクロブロックを、それよりサイズが小さいマクロブロック・パーティションに分割して、インター符号化する処理を明確にサポートしているが、マクロブロックの一部のパーティションをインター符号化し、且つ、同一マクロブロックのその他のパーティションをイントラ符号化する処理はサポートしていない。
【発明の概要】
【００１４】
(発明の概要)
このような従来技術の問題や欠点は、重み付け予測を用いてマクロブロックのインター／イントラ混在符号化を行う装置と方法により、解消される。
【００１５】
複数のパーティションを有するマクロブロックのインター／イントラ混在符号化用のビデオ符号器とそれに対応する方法を提供する。このビデオ符号器には、基準画像重み付け付与装置（ａｐｐｌｉｃａｔｏｒ：アプリケータ）と、この基準画像重み付け付与装置に接続されており、インター符号化されたパーティションとイントラ符号化されたパーティションの各々に対応する重み付け係数を割り当てる基準画像重み付け係数ユニットとが含まれている。また、一部のパーティションについて、マクロブロックを符号化する上記対応する方法には、少なくとも１つのパーティションをインター符号化するステップと別の少なくとも１つのパーティションをイントラ符号化するステップとが含まれる。
【００１６】
本発明の実施例は、重み付け予測の使用により、ＪＶＴ圧縮規格に従って、インター／イントラ混在符号化を行うことができる。本発明の原理に従えば、同一マクロブロック内の各パーティションのインター／イントラ混在符号化を行うことができ、その結果、主観的ビデオ品位と共に符号化効率が改善できる。
【００１７】
本発明の形態、特徴、および、利点は、添付図面を参照し、以下に説明する各実施例から、明確に理解できる筈である。
【図面の簡単な説明】
【００１８】
【図１】図１は、標準的なビデオ符号器のブロック図である。
【図２】図２は、基準画像重み付け機能を有するビデオ符号器のブロック図である。
【図３】図３は、動き推定機能と重み付け予測機能とを統合したビデオ符号器のブロック図である。
【図４】図４は、本発明の原理に従って、マクロブロックを符号化する方法の流れ図である。
【発明を実施するための形態】
【００１９】
前述したように、共同ビデオ・チーム（Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ）（ＪＶＴ）ビデオ圧縮規格は、１６×１６ピクセル・マクロブロックを、それよりサイズが小さいマクロブロック・パーティションに分割して、インター符号化する処理をサポートしているが、マクロブロックの一部のパーティションをインター符号化し、且つ、同一マクロブロックのその他のパーティションをイントラ符号化する処理はサポートしていない。本発明の各実施形態では、重み付け予測を使用するＪＶＴ圧縮規格を用いて、インター／イントラ混在符号化を実施できる。
【００２０】
本明細書は、本発明の各原理と様々な実施形態を例示するものである。従って、当業者であれば、ここに明確に説明または図示されていなが、本発明の各原理を実施した、本発明の精神から逸脱しない、本発明の範囲内に在る様々な構成を考案できる筈である。
【００２１】
ここに記載する全ての例と条件付き用語は、本発明の各原理の理解と、本発明の発明者が寄与する構想の理解とを容易にして当該技術を発展させる為の開示を目的とするものであり、本発明は、ここで具体的に記載する各例や各条件に限定されるものではない。
【００２２】
更に、本明細書に於ける、本発明の各具体例についての記載のみならず、本発明の各原理、各特徴、および、各実施形態についての記載の全ては、本発明の構造的等価物と機能的等価物の両方を包含するものである。そのような等価物には、現在既知の等価物と将来開発される等価物、即ち、構造の如何に拘わらず、同等の機能を果たすように開発された任意の要素が含まれる。
【００２３】
例えば、当業者であれば、本明細書添付図面の各ブロック図が、本発明の各原理を実施する回路例の概念的な図であることを理解できる筈である。同様に、任意のフローチャート、流れ図、状態遷移図、および、擬似コード等が、実質的にコンピュータ読み取り可能な媒体に表されてコンピュータ或いはプロセッサにより実行され得る種々の処理を表していることを、コンピュータ或いはプロセッサが明示されているか否かに拘わらず、理解できる筈である。
【００２４】
各図に示す種々の構成要素の機能は、適切なソフトウェアの使用、ソフトウェアを実行できるハードウェアの使用、および、専用ハードウェアの使用により得られるように構成できる。また、各機能は、プロセッサにより得られる場合、１つの専用プロセッサ、１つの共用プロセッサ、或いは、複数の個別プロセッサにより得られるように構成でき、その複数の個別プロセッサの一部は共用プロセッサとしてもよい。更に、「プロセッサ（ｐｒｏｃｅｓｓｏｒ）」或いは「コントローラ（ｃｏｎｔｒｏｌｌｅｒ）」なる用語の明示的な使用は、ソフトウェアを実行できるハードウェアのみを排他的に意味するものではなく、また、暗示的ではあるが、限定的ではなく、例えば、ディジタル信号プロセッサ（ＤＳＰ）ハードウェア、ソフトウェア記憶用リード・オンリ・メモリー（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、および、不揮発性記憶装置が含まれている。
【００２５】
その他の通常のハードウェア、および／または、特定用途向けハードウェアも含まれてもよい。同様に、図示の各スイッチは、単に概念的なものである。それらの機能は、プログラム論理動作により、専用論理により、プログラム制御と専用論理の相互作用により、或いは、手動で、実行することができ、その際、状況に応じて、実施者が特定の技術を選択できる。
【００２６】
本願の特許請求の範囲の各請求項に於いて、規定した機能を果たす手段として表現する各構成要素は、全て、その機能を果たす任意の手段を包含するものであり、例えば、ａ）その機能を果たす各回路素子の組み合わせ、或いは、ｂ）任意の形態のソフトウェア、即ち、その機能を果たす当該ソフトウェアを実行する適切な回路と共に組み合わされるファームウェア、マイクロコード等を含む任意の形態のソフトウェアが含まれる。各請求項により定義される発明は、そこに記載された種々の手段により得られる各機能が組み合わされて、各請求項に記載された態様で、効果を呈する。本出願人は、それらの機能が得られる各手段を、本明細書に記載する各手段と等価であると考える。
【００２７】
図１には、標準的なビデオ符号器の概略が参照番号１００で示されている。符号器１００の入力が、加算接合部（ｓｕｍｍｉｎｇ  ｊｕｎｃｔｉｏｎ）１１０の非反転入力と信号通信可能に接続されている。加算接合部１１０の出力が、ブロック変換器（ｂｌｏｃｋ  ｔｒａｎｆｏｒｍｅｒ）１２０と信号通信可能に接続されている。変換器１２０は、量子化器（ｑｕａｎｔｉｚｅｒ）１３０と信号通信可能に接続されている。量子化器１３０の出力は、可変長符号器（ＶＬＣ：Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｅｒ）１４０と信号通信可能に接続されている。ＶＬＣ１４０の出力は、符号器１００の外部使用出力である。
【００２８】
また、量子化器１３０の出力は、逆量子化器（ｉｎｖｅｒｓｅ  ｑｕａｎｔｉｚｅｒ）１５０と信号通信可能に接続されている。逆量子化器１５０は、逆ブロック変換器（ｉｎｖｅｒｓｅ  ｂｌｏｃｋ  ｔｒａｎｓｆｏｒｍｅｒ）１６０と信号通信可能に接続されている。更に、逆ブロック変換器１６０は、基準画像記憶部（ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅ  ｓｔｏｒｅ）１７０と信号通信可能に接続されている。この基準画像記憶部１７０の第１の出力が、動き推定器（ｍｏｔｉｏｎ  ｅｓｔｉｍａｔｏｒ）１８０の第１の入力と信号通信可能に接続されている。また、符号器１００の入力は、動き推定器１８０の第２の入力と信号通信可能に接続されている。動き推定器１８０の出力が、動き補償器１９０の第１の入力と信号通信可能に接続されている。基準画像記憶部１７０の第２の出力が、動き補償器１９０の第２の入力と信号通信可能に接続されている。動き補償器（ｍｏｔｉｏｎ  ｃｏｍｐｅｎｓａｔｏｒ）１９０の出力が、加算接合部１１０の反転入力と信号通信可能に接続されている。
【００２９】
図２には、基準画像重み付け機能を有するビデオ符号器の概略が、参照番号２００で示されている。符号器２００の入力が、加算接合部２１０の非反転入力と信号通信可能に接続されている。加算接合部２１０の出力が、ブロック変換器２２０と信号通信可能に接続されている。変換器２２０は、量子化器２３０と信号通信可能に接続されている。量子化器２３０の出力は、可変長符号器（ＶＬＣ）２４０と信号通信可能に接続されている。ＶＬＣ２４０の出力は、符号器２００の外部使用出力である。
【００３０】
また、量子化器２３０の出力は、逆量子化器２５０と信号通信可能に接続されている。逆量子化器２５０は、逆ブロック変換器２６０と信号通信可能に接続されている。更に、逆ブロック変換器２６０は、基準画像記憶部２７０と信号通信可能に接続されている。この基準画像記憶部２７０の第１の出力が、基準画像重み付け係数割り当て器（ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅ  ｗｅｉｇｈｔｉｎｇ  ｆａｃｔｏｒ  ａｓｓｉｇｎｏｒ）２７２の第１の入力と信号通信可能に接続されている。また、符号器２００の入力は、基準画像重み付け係数割り当て器２７２の第２の入力と信号通信可能に接続されている。基準画像重み付け係数割り当て器２７２の、重み付け係数を示す信号を供給する出力が、動き推定器２８０の第１の入力と信号通信可能に接続されている。基準画像記憶部２７０の第２の出力が、動き推定器２８０の第２の入力と信号通信可能に接続されている。
【００３１】
また、符号器２００の入力は、動き推定器２８０の第３の入力と信号通信可能に接続されている。動き推定器２８０の、動きベクトルを示す信号を供給する出力が、動き補償器２９０の第１の入力と信号通信可能に接続されている。基準画像記憶部２７０の第３の出力が、動き補償器２９０の第２の入力と信号通信可能に接続されている。動き補償器２９０の、動き補償された基準画像を示す信号を供給する出力が、乗算器２９２の第１の入力と信号通信可能に接続されている。基準画像重み付け係数割り当て器２７２の、重み付け係数を示す信号を供給する出力が、乗算器２９２の第２の入力と信号通信可能に接続されている。乗算器２９２の出力が、加算接合部２１０の反転入力と信号通信可能に接続されている。
【００３２】
例えば、譲受人が本出願と同一である米国特許出願第１０／４１０，４８１号（代理人整理番号ＰＵ０２０３４０）（出願日は２００３年４月９日、発明の名称は「ビデオ復号化に於ける基準画像の適応重み付け（ＡＤＡＰＴＩＶＥ  ＷＥＩＧＨＴＩＮＧ  ＯＦ  ＲＥＦＥＲＥＮＣＥ  ＰＩＣＴＵＲＥＳ  ＩＮ  ＶＩＤＥＯ  ＤＥＣＯＤＩＮＧ」）と、同じく譲受人が本願と同一である米国特許出願第１０／４１０，４５６号（代理人整理番号ＰＵ０２０４７７）（出願日は同じく２００３年４月９日、発明の名称は「ビデオ符号化に於ける基準画像の適応重み付け（ＡＤＡＰＴＩＶＥ  ＷＥＩＧＨＴＩＮＧ  ＯＦ  ＲＥＦＥＲＥＮＣＥ  ＰＩＣＴＵＲＥＳ  ＩＮ  ＶＩＤＥＯ  ＥＮＣＯＤＩＮＧ」）とには、個々の重み付け係数を各基準画像インデックスと対応付けて、一組の重み付け係数を画像毎に、或いは、スライス毎に１回送信する装置および方法が開示されている。
【００３３】
図３には、動き推定と重み付け予測とが統合された機能を有するビデオ符号器の概略が参照番号３００で示されている。符号器３００の入力が、加算接合部３１０の非反転入力と信号通信可能に接続されている。加算接合部３１０の出力が、ブロック変換器３２０と信号通信可能に接続されている。変換器３２０は、量子化器３３０と信号通信可能に接続されている。量子化器３３０の出力は、可変長符号器（ＶＬＣ）３４０と信号通信可能に接続されている。ＶＬＣ３４０の出力は、符号器３００の外部使用出力である。
【００３４】
また、量子化器３３０の出力は、逆量子化器３５０と信号通信可能に接続されている。逆量子化器３５０は、逆ブロック変換器３６０と信号通信可能に接続されている。更に、逆ブロック変換器３６０は、基準画像記憶部３７０と信号通信可能に接続されている。この基準画像記憶部３７０の第１の出力が、基準画像重み付け係数選択器３７２の第１の入力と信号通信可能に接続されている。また、符号器３００の入力は、基準画像重み付け係数選択器３７２の第２の入力と信号通信可能に接続されており、現在の画像がこの選択器３７２に供給される。この選択器３７２の、重み付け係数を示す信号を供給する出力が、乗算器３７４の第１の入力と信号通信可能に接続されている。乗算器３７４の第２の入力が、基準画像記憶部３７０の基準画像出力（第２の出力）と信号通信可能に接続されている。尚、当業者には明らかであるように、素子３７４は、単に、乗算器として示されているが、乗算器ではなく、その他のタイプの重み付け係数付与装置として構成してもよい。
【００３５】
乗算器３７４の出力が、重み付け基準画像記憶部３７６と信号通信可能に接続されている。重み付け基準画像記憶部３７６の出力が、動き推定器３８０の第１の入力と信号通信可能に接続されており、これに重み付け基準画像を供給する。更に、動き推定器３８０の出力が、第１の動き補償器３８２と信号通信可能に接続されており、これに動きベクトルを供給する。動き推定器３８０の出力は、また、第２の動き補償器３９０の第１の入力と信号通信可能に接続されている。重み付け基準画像記憶部３７６の第２の出力が、第１の動き補償器３８２の第２の入力と信号通信可能に接続されている。
【００３６】
第１の動き補償器３８２の、重み付けされ動き補償された基準画像を示す信号を供給する出力が、絶対差分発生器（ＡＢＳＤＩＦＦ：ＡＢＳｏｌｕｔｅ  ＤＩＦＦｅｒｅｎｃｅｇｅｎｅｒａｔｏｒ）３８４の第１の入力と信号通信可能に接続されている。また、符号器３００の、現在の画像を供給する入力は、絶対差分発生器３８４の第２の入力と信号通信可能に接続されている。絶対差分発生器３８４の出力が、基準画像重み付け係数選択器３７２の第３の入力と信号通信可能に接続されている。
【００３７】
基準画像記憶部３７０の第３の出力が、第２の動き補償器３９０の第２の入力と信号通信可能に接続されている。第２の動き補償器３９０の、動き補償された基準画像を示す信号を供給する出力が、乗算器３９２の第１の入力と信号通信可能に接続されている。基準画像重み付け係数選択器３７２の、重み付け係数を示す信号を供給する出力が、乗算器３９２の第２の入力と信号通信可能に接続されている。乗算器３９２の出力が、加算接合部３１０の反転入力と信号通信可能に接続されている。
【００３８】
例えば、譲受人が本出願と同一である米国特許出願第１０／４１０，４７９号（代理人整理番号ＰＵ０２０３３９）（出願日は２００３年４月９日、発明の名称は「重み付け予測を用いた動き推定（ＭＯＴＩＯＮ  ＥＳＴＩＭＡＴＩＯＮ  ＷＩＴＨ  ＷＥＩＧＨＴＩＮＧ  ＰＲＥＤＩＣＴＩＯＮ）」）には、重み付け係数サーチを動き推定サーチと組み合わせる装置および方法が開示されているが、動き推定と共に重み付け係数を特定する場合は、基準画像の重み付け無しで動き推定のみを行う場合に比べ、演算数が多くなる。
【００３９】
図４には、マクロブロックを符号化する方法についての概略的な流れ図４００が示されている。開始ブロック４１０が、機能ブロック４１２に制御権を渡し、機能ブロック４１２は、最良のインター・マクロブロック分割を特定し、各パーティションについてのコストＣＰＩＮＴＥＲを計算し、マクロブロック全体についてのコストＣＩＮＴＥＲを計算する。ブロック４１２は機能ブロック４１４に制御権を渡し、機能ブロック４１４は最良のイントラ予測方向を特定し、マクロブロック全体についてのコストＣＩＮＴＲＡを計算する。ブロック４１４は、判定ブロック４１６に制御権を渡し、判定ブロック４１６は、ＣＩＮＴＥＲがＣＩＮＴＲＡより小さいか否かを判定する。
【００４０】
ＣＩＮＴＥＲがＣＩＮＴＲＡより小さくない場合、制御権が機能ブロック４１８に渡され、機能ブロック４１８は、マクロブロック全体をイントラ符号化し、制御権を終了ブロック４３４に渡す。他方、ＣＩＮＴＥＲがＣＩＮＴＲＡより小さい場合、制御権が機能ブロック４２０に渡され、機能ブロック４２０は、マクロブロックについてインター符号化を用いて、マクロブロックの最初の（ｉ＝０）パーティションを選択する。ブロック４２０は、制御権を機能ブロック４２２に渡し、機能ブロック４２２は、現在のパーティションについてのコストＣＰＩＮＴＲＡｉを計算する。このコストＣＰＩＮＴＲＡｉは、ゼロ重み付け係数を用いたイントラとして符号化される。次に、ブロック４２２は、制御権を判定ブロック４２４に渡し、判定ブロック４２４は、ＣＰＩＮＴＥＲｉがＣＰＩＮＴＲＡｉより小さいか否かを判定する。
【００４１】
ＣＰＩＮＴＥＲｉがＣＰＩＮＴＲＡｉより小さい場合、制御権が機能ブロック４２６に渡され、機能ブロック４２６は、現在のパーティションｉをインター符号化し、制御権を判定ブロック４３０に渡す。他方、ＣＰＩＮＴＥＲｉがＣＰＩＮＴＲＡｉより小さくない場合、制御権が機能ブロック４２８に渡され、機能ブロック４２８は、ゼロ重み付け係数を用いてパーティションｉを非予測的にイントラ符号化し、制御権を判定ブロック４３０に渡す。
【００４２】
次に、判定ブロック４３０は、現在のパーティションｉがマクロブロック内の最後のパーティションであるか否か判定する。現在のパーティションｉがマクロブロック内の最後のパーティションでない場合、制御権が機能ブロック４３２に渡され、機能ブロック４３２は、現在のパーティションｉをインクリメントし、制御権を機能ブロック４２２に戻す。他方、現在のパーティションｉがマクロブロック内の最後のパーティションである場合、制御権が終了ブロック４３４に渡される。
【００４３】
このようにして、本発明の動作では、同一マクロブロック内の各パーティションのインター／イントラ混在符号化が、ＪＶＴ圧縮規格を用いて、実施できる。マクロブロック・パーティションのイントラ符号化は、ＪＶＴ規格の主要プロファイルおよび拡張プロファイルに於ける重み付け予測ツールにより、ゼロの重み付け係数を用いて実施される。このタイプのイントラ符号化は、非予測イントラ符号化と呼ばれ、マクロブロック全体がイントラ符号化される際に用いられる空間方向イントラ符号化と区別される。ある程度の非予測イントラ符号化パーティションを含むマクロブロックは、それでもなお、インター符号化マクロブロックと見做される。
【００４４】
ゼロの重み付け係数は、特定の基準画像インデックスと対応付けられて、スライス・ヘッダ内に符号化される。符号器は、基準画像リオーダリングを用いて、複数の基準画像インデックスを特定の１つの基準画像記憶部に対応付けることにより、ゼロ重み付け係数と非ゼロ重み付け係数の両方を特定の１つの基準画像記憶部に対応付けることができる。或いは、符号器は、基準画像リオーダリングを使用せずに、デフォルトの基準画像オーダリング（ｏｒｄｅｒｉｎｇ）の使用を選択してもよく、また、ゼロ重み付け係数のみを特定の１つの基準画像記憶部に対応付けることを選択してもよい。ゼロ重み付け係数のみが所定の基準画像記憶部に対応付けられる場合、ゼロ重み付け係数はインター予測については使用できない。従って、符号器は、この基準画像記憶部がインター予測についてあまり頻繁に選択されないと判定されると、それを選択する。この用途としては、長期間に亘る基準画像をゼロ重み付け係数と対応付けることができる。
【００４５】
ゼロの重み付け係数を用いた単一方向予測の場合、インター予測を計算するための重み付け予測の式である
【数３】
2010136411.tif 000005
【００４６】
オフセット値Ｏ０は、ゼロ、１２８、或いは、その他の任意の所望の値に設定できる。ＭＰＥＧ―１とＭＰＥＧ―２では、イントラ符号化について、効率の良いオフセット値は１２８である。
【００４７】
あるマクロブロック・パーティションの全ピクセルについて、ゼロのサンプル予測またはＯ０のサンプル予測が使用された場合、そのマクロブロック・パーティションは効率良くイントラ符号化されるが、空間的方向予測は行われない。この場合、パーティションは非予測イントラ符号化される、という。
【００４８】
Ｂピクチャ（或いはＢスライス）に於いて、マクロブロック・パーティションについての非予測イントラ符号化は、リスト０の予測のみを選択するか、或いは、リスト１の予測とゼロ重み付け係数に対応する基準画像インデックスとを選択することにより、実施できる。或いは、リスト０についての特定のインデックスとリスト１についての別のインデックスとについて、ゼロ重み付け係数をスライス・ヘッダで送り、双方向予測を使用することができる。また、双方向予測を用いて、適切なゼロ重み付け係数に対応する、リスト０およびリスト１についての基準画像インデックスにより、符号化することにより、そのマクロブロック・パーティションについて、非予測イントラ符号化を実施できる。
【００４９】
本発明の推奨実施例では、ＪＶＴビデオ符号器が、画像のマクロブロックを符号化する。所定のマクロブロックの符号化の際、符号器は、どのようにマクロブロックをパーティションおよびサブマクロブロック・パーティションに分割するかを決定することに加えて、各マクロブロック・パーティションを非予測イントラとして符号化した方が有利か、或いは、インターとして符号化した方が有利か（例えば、リスト０、リスト１、直接、或いは、双方向予測）を決定する。非予測イントラとして符号化すべきマクロブロック・パーティションについて、ゼロ重み付け係数に対応する基準画像インデックスを用いて、そのパーティションについてのｍｂ＿ｔｙｐｅに於いて、インター符号化モード（例えば、リスト０、リスト１、直接、或いは、双方向予測）が使用される。一般に、８×８サブマクロブロック・パーティションについて許されているように、非予測イントラ符号化パーティションが、更に、サブマクロブロック・パーティションに分割されることはない。その理由は、サブマクロブロック・パーティションへの分割を示す為に更にビットが必要になり、利点が無いためである。非予測イントラ符号化パーティションについての差分動きベクトルは、ゼロに設定する。その理由は、符号化すべきビットの数が最少で済み、動きベクトルの全ての取り得る値により、同じ復号化ピクセルが得られる為である。
【００５０】
この方法を用いて、マクロブロックのパーティションの全部ではなくその一部について、イントラ符号化を効率良く実施でき、これはＪＶＴ圧縮規格にも適合している。非予測イントラ符号化パーティションについては、イントラ空間的方向予測は、行われない。
【００５１】
図４の流れ図４００には、本発明に従って、マクロブロックを符号化する方法の例が示されている。マクロブロックのインター符号化についての、マクロブロックのマクロブロック・パーティションおよびサブマクロブロック・パーティションへの最良の分割は、レート歪み最適化（ｒａｔｅ−ｄｉｓｔｏｒｔｉｏｎ  ｏｐｔｉｍｉｚａｔｉｏｎ）を用いて、決定され、各パーティションについてのコスト測定値ＣＰＩＮＴＥＲｉ、および、マクロブロック全体についてのコスト測定値ＣＩＮＴＥＲが、計算される。パーティションの符号化についてのコストには、基準画像インデックス、動きベクトル、および、予測残差の符号化のコストが含まれる。次に、マクロブロックのイントラ符号化についての最良のイントラ空間的予測方向が決定され、マクロブロック全体のイントラ符号化についてのコスト測定値ＣＩＮＴＲＡが計算される。次に、ＣＩＮＴＥＲがＣＩＮＴＲＡより小さくない場合、空間的方向予測を用いて、マクロブロック全体がイントラとして符号化される。それ以外の場合、マクロブロックは、インター・マクロブロックとして、符号化される。
【００５２】
次に、インター・マクロブロックの各パーティションが、インターとして、或いは、非予測イントラとして符号化すべきであると見做される。ゼロ重み付け予測を用いてパーティションをイントラ符号化するコストＣＰＩＮＴＲＡｉが、基準画像インデックスおよび残差の符号化のコストと、ゼロ値の差分の動きベクトルのコストとを考慮して、計算される。
【００５３】
パーティションｉについて、ＣＰＩＮＴＥＲｉがＣＰＩＮＴＲＡｉより小さい場合、パーティションｉは、通常通り、インター符号化され、必要に応答して、更に、サブマクロブロック・パーティションに分割される。それ以外の場合、そのパーティションは、ゼロ重み付け係数に対応する基準画像インデックスを選択することにより、非予測イントラ符号化される。
【００５４】
本発明の各特徴と各利点は、当業者であれば、ここに開示した事項に基づいて、容易に把握できる筈である。また、本発明の各原理が、種々の形態のハードウェア、ソフトウェア、ファームウェア、特定用途プロセッサ、或いは、これらの任意の組み合わせにより実施できることを理解できる筈である。
【００５５】
最も好ましくは、本発明の各原理がハードウェアとソフトウェアの組み合わせにより実施されることである。更に、そのソフトウェアは、プログラム記憶装置に具体的に組み込まれるアプリケーション・プログラムとして、実施されるのが望ましい。そのアプリケーション・プログラムは、任意の適切なアーキテクチャから成るマシンにアップロードされて、そのマシンにより実行されるようにしてもよい。そのマシンは、例えば、１つ以上の中央処理装置（ＣＰＵ）、ランダム・アクセス・メモリ（ＲＡＭ）、入出力（Ｉ／Ｏ）インタフェースのようなハードウェアを持つコンピュータ・プラットホームで実施するのが望ましい。そのコンピュータ・プラットホームには、オペレーティング・システムとマイクロ命令コードとが含まれてもよい。ここに記載した種々の処理と機能は、マイクロ命令の一部、或いは、アプリケーション・プログラムの一部、或いは、それらの任意の組み合わせであってもよく、ＣＰＵにより実行されてもよい。更に、例えば増設データ記憶装置や印刷装置のような様々なその他の周辺装置をコンピュータ・プラットホームに接続してもよい。
【００５６】
尚、添付図面に示された各システム構成部分と各方法の一部は、ソフトウェアの形態で実施するのが望ましいので、各システム構成部分相互間の実際の接続、或いは、各処理機能ブロック相互間の実際の接続は、本発明がプログラムされる態様に従って、異なることもある。ここに開示した事項から、当業者であれば、ここに示した本発明の各実施例または各構成例に類似した実施例または構成例を考案できる筈である。
【００５７】
添付図面を参照して各実施例をここに説明したが、本発明は、これらの具体的な実施例に限定されるものではない。また、当業者であれば、本発明の範囲或いは精神から逸脱することなく、様々な変更および変更を行うことができるであろう。そのような変更および変更は、全て、本願の特許請求の範囲の各請求項に記載された本発明の範囲内に含まれる。
【図１】
2010136411.tif 000006
【図２】
2010136411.tif 000007
【図３】
2010136411.tif 000008
【図４】
2010136411.tif 000009