(57)【要約】      （修正有）【課題】適応ツリー選択を使用してバイナリ・セットの符号化及び復号を行う方法及び装置を提供する。【解決手段】符号化方法５００において機能ブロック５１０は予測モードを選択する。機能ブロック５１５は予測モードから取得された予測信号を生成し、制御をループ端ブロック５２０に受け渡す。ループ端ブロック５２０はバイナリ・セットについてエントロピー符号化のループを実行する。機能ブロック５２５は１つ以上の基準に基づいて最良のツリーを選択する。機能ブロック５３０は選択されたツリーのインデックスを符号化する。機能ブロック５３５は選択されたツリーを使用してバイナリ・セットを符号化し、制御をループ端ブロック５４０に受け渡す。【選択図】図５
2018067946.tif 000002
【特許請求の範囲】
【請求項１】
ピクチャ内のブロックのピクチャ・データを符号化するビデオ符号化器（１００）を有する装置であって、前記ビデオ符号化器は、複数のツリー構造からの選択を行って、前記ブロックの係数有意性を示すデータのバイナリ・セットを符号化する、前記装置。
【請求項２】
ビデオ符号化器において、ピクチャ内のブロックのピクチャ・データを符号化するステップを含む方法であって、前記符号化するステップは、前記ブロックの係数有意性を示すデータのバイナリ・セットを符号化するために複数のツリー構造からの選択を行うステップを含む（５２５）、前記方法。
【請求項３】
前記選択を行うステップは、前記複数のツリー構造から少なくとも１つのツリー構造を選択する（５２５）、請求項２に記載の方法。
【請求項４】
少なくとも１つの尺度に応じて前記少なくとも１つのツリー構造が選択され、前記少なくとも１つの尺度は、ビット・レート値およびレート歪み値のうちの少なくとも一方を含む（５２５）、請求項３に記載の方法。
【請求項５】
前記選択された少なくとも１つのツリー構造は、副情報として伝達される（５３０）、請求項３に記載の方法。
【請求項６】
前記選択を行うステップは、予測モード、変換、１つ以上の以前に復号されたブロックの復号されたデータ、およびブロックの他の復号されたデータのうちの少なくとも１つに応じて前記複数のツリー構造から選択する（７１０，７２０）、請求項２に記載の方法。
【請求項７】
前記データのバイナリ・セットは、複数のサブセットに分割され、かつ前記複数のサブセットは符号化され、前記複数のサブセットの前記符号化は、複数のサブツリー構造からの選択を行うことによってなされる（９００，９１０）、請求項２に記載の方法。
【請求項８】
前記複数のサブツリー構造のうちの少なくとも１つは、前記複数のサブツリーのうちの前記少なくとも１つにおける残りの下位ノードの零値または非零値を示す追加ノードを有する（９２５，９３０）、請求項７に記載の方法。
【請求項９】
前記複数のサブツリー構造のうちの少なくとも１つは、ターミナル・サブツリーであり、前記ターミナル・サブツリーの選択は、前記データのバイナリ・セットの全ての残りの部分が零であることを示す（９３０，９５０）、請求項８に記載の方法。
【請求項１０】
ピクチャ内のブロックのピクチャ・データを復号するビデオ復号器（２００）を有する装置であって、前記ビデオ復号器は、複数のツリー構造からの選択を行って、前記ブロックの係数有意性を示すデータのバイナリ・セットを復号する、前記装置。
【請求項１１】
ビデオ復号器において、ピクチャ内のブロックのピクチャ・データを復号するステップを含む方法であって、前記復号するステップは、前記ブロックの係数有意性を示すためのものであったデータのバイナリ・セットを復号するために前記複数のツリー構造からの選択を行うステップを含む（６２０）、前記方法。
【請求項１２】
前記選択を行うステップは、前記複数のツリー構造から少なくとも１つのツリー構造を選択する（６１５，６２０）、請求項１１に記載の方法。
【請求項１３】
少なくとも１つの尺度に応じて前記少なくとも１つのツリー構造が選択され、前記少なくとも１つの尺度は、ビット・レート値およびレート歪み値のうちの少なくとも一方を含む（６１５）、請求項１２に記載の方法。
【請求項１４】
前記選択された少なくとも１つのツリー構造は、副情報として伝達される（６１５）、請求項１２に記載の方法。
【請求項１５】
前記選択を行うステップは、予測モード、変換、１つ以上の前に復号されたブロックの復号されたデータ、およびブロックの他の復号されたデータのうちの少なくとも１つに応じて前記複数のツリー構造から選択する（８１０）、請求項１１に記載の方法。
【請求項１６】
符号化されたビデオ信号データを有する非一時的な記憶媒体であって、
ピクチャ内のブロックの係数有意性を示すデータのバイナリ・セットを含み、前記データのバイナリ・セットは、複数のツリー構造からの選択を行うことによって符号化される、前記記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２００９年７月２日付で出願された米国仮特許出願第６１／２２２，７２９号の利益を主張するものであり、その開示内容全体は本明細書に包含される。さらに、本出願に開示する主題は、「適応的なツリー選択を使用してバイナリ・セットのビデオ符号化および復号を行う方法および装置（ＭＥＴＨＯＤ  ＡＮＤ  ＡＰＰＡＲＡＴＵＳ  ＦＯＲ  ＶＩＤＥＯ  ＥＮＣＯＤＩＮＧ  ＡＮＤ  ＤＥＣＯＤＩＮＧ  ＢＩＮＡＲＹ  ＳＥＴＳ  ＵＳＩＮＧ  ＡＤＡＰＴＩＶＥ  ＴＲＥＥ  ＳＥＬＥＣＴＩＯＮ）」と題され、本願と出願人が同じであり、２００９年７月２日付で出願された米国仮特許出願第６１／２２２，７２９号の利益を同様に主張しており、その開示内容全体が本願明細書に包含される、本願と共に出願されている代理人整理番号ＰＵ１００１３１の通常の出願に関連している。
【０００２】
本発明の原理は、概ね、ビデオ符号化およびビデオ復号に関し、より具体的には、適応ツリー選択を使用してバイナリ・セットをビデオ符号化およびビデオ復号する方法および装置に関する。
【背景技術】
【０００３】
ブロックベースの離散変換は、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）、ＩＴＵ‐Ｔ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ，  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｅｃｔｏｒ）Ｈ．２６３勧告（以下、「Ｈ．２６３勧告」と称する）、ＩＳＯ／ＩＥＣ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｆｏｒ  Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ／Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｓｓｉｏｎ）  ＭＥＰＧ−１（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ−１）規格、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−２規格、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｐａｒｔ  １０  ＡＶＣ（Ｐａｒｔ  １０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）規格、ＩＴＵ‐Ｔ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ，  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｅｃｔｏｒ）Ｈ．２６４勧告（以下、「ＭＰＥＧ−４  ＡＶＣ規格」と称する）、さらに、その他のものを含む、多くの画像および映像（ビデオ）圧縮規格の基本的なコンポーネントであり、広い用途で使用されている。大抵の現代のビデオ符号化規格は、変換を用いて空間領域における残差の相関を効率的に減少させる。離散コサイン変換（ＤＣＴ：ｄｉｓｃｒｅｔｅ  ｃｏｓｉｎｅ  ｔｒａｎｓｆｏｒｍ）は、最も広く使用されているブロック変換である。
【０００４】
変換処理の後、変換係数が量子化される。その後、量子化された各係数は、これらのレベルとサインの情報を伝達するために、エントロピー符号化される。零係数（零とされる係数）の割合は非常に高いため、符号化処理を２つのステップに分割すると効率的である。第１のステップでは、非零係数（零でない係数）の位置が信号により伝達される。第２のステップでは、これらの係数のレベルおよびサインが信号により伝達される。
【０００５】
位置を符号化する効率的な方法は、ツリー構造の使用に関わる。ところが、各係数の位置を送信すると、依然としてコストが非常に高くなる。なぜならば、ビデオ・コンテンツ・データは、統計および特性が変化するものであり、変換係数の有意性もまた、係数の位置に依存して特性が変化するからである。しかしながら、従来のツリーベースの有意性の符号化は、各係数およびコンテンツ間でこのように変化する統計および特性を適切に考慮していない。
【発明の概要】
【０００６】
従来技術のこれらの欠点および短所、さらに、その他の欠点および短所は本発明の原理によって対処される。本発明の原理は、適応ツリー選択を使用してバイナリ・セットをビデオ符号化およびビデオ復号する方法および装置に関する。
【０００７】
本発明の原理の一態様によれば、装置が提供される。この装置は、ピクチャ内の少なくともブロックのピクチャ・データを符号化するビデオ符号化器を含む。ビデオ符号化器は、複数のツリーからの選択を行って、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化する。
【０００８】
本発明の原理の他の態様によれば、ビデオ符号化器における方法が提供される。この方法は、ピクチャ内の少なくともブロックのピクチャ・データを符号化するステップを含む。符号化するステップは、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化するために複数のツリーからの選択を行うステップを含む。
【０００９】
本発明の原理のさらに他の態様によれば、装置が提供される。この装置は、ピクチャ内の少なくともブロックのピクチャ・データを復号するビデオ復号器を含む。ビデオ復号器は、複数のツリー構造からの選択を行って、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化する。
【００１０】
本発明の原理のさらに他の態様によれば、ビデオ復号器における方法が提供される。この方法は、ピクチャ内の少なくともブロックのピクチャ・データを復号するステップを含む。復号するステップは、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化するために複数のツリーからの選択を行うステップを含む。
【００１１】
本発明の原理のさらに他の態様によれば、装置が提供される。この装置は、ピクチャ内の少なくともブロックのピクチャ・データを符号化するビデオ符号化器を含む。１つ以上のツリーを使用して、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化する。１つ以上のツリーの各々は、複数のノードを有する。１つ以上のツリーのうちの少なくとも１つにおいて、そのツリーのノードのうちの少なくとも１つは、１つ以上のパラメータに応じて変更される。
【００１２】
本発明の原理のさらに他の態様によれば、ビデオ符号化器における方法が提供される。この方法は、ピクチャ内の少なくともブロックのピクチャ・データを符号化するステップを含む。１つ以上のツリーを使用して、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化する。１つ以上のツリーの各々は、複数のノードを有する。１つ以上のツリーのうちの少なくとも１つにおいて、そのツリーのノードのうちの少なくとも１つは、１つ以上のパラメータに応じて変更される。
【００１３】
本発明の原理のさらに他の態様によれば、装置が提供される。この装置は、ピクチャ内の少なくともブロックのピクチャ・データを復号するビデオ復号器を含む。１つ以上のツリーを使用して、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを復号する。１つ以上のツリーの各々は、複数のノードを有する。１つ以上のツリーのうちの少なくとも１つにおいて、そのツリーのノードのうちの少なくとも１つは、１つ以上のパラメータに応じて変更される。
【００１４】
本発明の原理のさらに他の態様によれば、ビデオ復号器における方法が提供される。この方法は、ピクチャ内の少なくともブロックのピクチャ・データを復号するステップを含む。１つ以上のツリーを使用して、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを復号する。１つ以上のツリーの各々は、複数のノードを有する。１つ以上のツリーのうちの少なくとも１つにおいて、そのツリーのノードのうちの少なくとも１つは、１つ以上のパラメータに応じて変更される。
【００１５】
本発明の原理のこれらの態様、特徴、および利点、さらに、その他の態様、特徴、および利点は、添付の図面と併せて読まれるべき、以下の例示的な実施形態の詳細な説明によって明らかになるであろう。
【００１６】
本発明の原理は、以下の例示的な図面に従ってより良好に理解されるであろう。
【図面の簡単な説明】
【００１７】
【図１】本発明の原理の実施形態による、本発明の原理が適用される例示的なビデオ符号化器を示すブロック図である。
【図２】本発明の原理の実施形態による、本発明の原理が適用される例示的なビデオ復号器を示すブロック図である。
【図３】本発明の原理の実施形態による、本発明の原理が適用される例示的なツリー構造を示すダイアグラムである。
【図４】本発明の原理の実施形態による、本発明の原理が適用される例示的なバイナリ・ツリーを示すダイアグラムである。
【図５】本発明の原理の実施形態による、適応ツリー選択を用いて符号化を行う例示的な方法を示すフロー図である。
【図６】本発明の原理の実施形態による、適応ツリー選択を用いて復号を行う例示的な方法を示すフロー図である。
【図７】本発明の原理の実施形態による、ツリー・ノード変換を用いて符号化を行う例示的な方法を示すフロー図である。
【図８】本発明の原理の実施形態による、ツリー・ノード変換を用いて復号を行う例示的な方法を示すフロー図である。
【図９】本発明の原理の実施形態による、ツリー・ノード変換を用いて符号化を行う他の例示的な方法を示すフロー図である。
【図１０】本発明の原理の実施形態による、ツリー・ノード変換を用いて復号を行う他の例示的な方法を示すフロー図である。
【発明を実施するための形態】
【００１８】
本発明の原理は、適応ツリー選択を使用してバイナリ・セットをビデオ符号化およびビデオ復号する方法および装置に関する。
【００１９】
本説明は、本発明の原理を例示するものである。従って、本明細書において明示的に記載、または図示されていなくとも、当業者が本発明の原理を実施する様々な構成を企図することが可能であり、このような構成が本発明の趣旨および範囲の中に包含されることが理解できるであろう。
【００２０】
本明細書に記載された全ての例および条件付の文言は、本発明の原理を読者が理解するのを助けるための教示目的のものであり、発明者によって寄与された概念は、技術を発展させるものであり、このような具体的に記載された例や条件に限定されるように解釈されるべきではない。
【００２１】
また、本明細書における本発明の原理、態様、および、実施形態についての全ての記載、さらに、その特定の例は、構造的な均等物、機能的な均等物の双方を包含するように意図したものである。さらに、このような均等物は、現在公知の均等物だけでなく、将来において開発される均等物、即ち、構造に係らず、同一の機能を実行するように開発された全ての要素を包含するように意図されている。
【００２２】
従って、例えば当業者であれば、本明細書において示されたブロック図は、本発明の原理を実施する回路を例示する概念図であることが理解できよう。同様に、フローチャート、フロー図、状態遷移図、擬似コードなどは、いずれも様々な処理を表すことが理解できよう。これらの処理は、実質的にコンピュータによって読み取り可能なメディアにおいて表すことができ、コンピュータまたはプロセッサが明示的に図示されているかどうかにかかわらず、このようなコンピュータまたはプロセッサにより実行される。
【００２３】
各図面において示される様々な要素の機能は、専用のハードウエアの使用により提供されてもよく、適切なソフトウエアと関連付けてソフトウエアを実行することが可能なハードウエアの使用によって提供されてもよい。機能がプロセッサによって提供される場合にも、単一の専用プロセッサによって提供されてもよく、単一の共有プロセッサによって提供されてもよく、複数の別個のプロセッサによって提供されてもよく、プロセッサの中に共有されているものがあってもよい。さらに、用語「プロセッサ」または「コントローラ」を明示的に使用した場合であっても、ソフトウエアを実行することが可能なハードウエアのみを意味するように解釈されるべきではなく、限定するものではないが、ディジタル信号プロセッサ（ＤＳＰ）・ハードウエア、ソフトウエアを格納する読み出し専用メモリ（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、および不揮発性の記憶装置を黙示的に含むことがある。
【００２４】
また、従来のおよび／または慣習的な他のハードウエアを含むこともある。同様に、図面に示されたどのスイッチも概念的なものに過ぎない。これらの機能はプログラム・ロジックの動作を介して、専用のロジックを介して、プログラム制御と専用のロジックとのインタラクションを介して、または、手動でも実行されることがある。状況に応じて具体的に理解されるように、実施者により、特定の技術を選択可能である。
【００２５】
請求の範囲において、特定の機能を実施するための手段として表現されたいずれの要素も、この機能をどのような方法で実行するものも包含するように意図されている。例えばａ）機能を実行する回路要素を組み合わせたもの、または、ｂ）形態に関わらず、ソフトウエア、つまり、ファームウエア、マイクロコード等を含み、機能を実施するためにソフトウエアの実行に適した回路と組み合わせたものも包含する。このような請求の範囲によって定義される本発明の原理は、請求項に記載された様々な手段によって提供される機能が請求の範囲の要件として、組み合わせられ、まとめられている事実に基づいたものである。従って、このような機能を提供することが可能な手段はどのようなものであっても、本願において示されているものと均等であるとみなされる。
【００２６】
明細書において、本発明の原理の「一実施形態」、「実施形態」、または、この類の表現が言及されている場合、これは、実施形態に関して記載される特定の特徴事項、構造、特性などが本発明の原理の少なくとも１つの実施形態に含まれることを意味する。従って、明細書全体に渡って様々な箇所に存在する文言「一実施形態においては」、「実施形態においては」、または、この類の表現は、必ずしも、全てが同一の実施形態について言及するものではない。
【００２７】
「／（スラッシュ）」、「および／または」、さらに、「〜のうちの少なくとも一方（〜のうちの少なくとも１つ）」の使用は、例えば「Ａ／Ｂ」、「Ａおよび／またはＢ」、「ＡおよびＢのうちの少なくとも一方」の場合、１番目に列挙されたオプション（Ａ）のみの選択、２番目に列挙されたオプション（Ｂ）のみの選択、または、両方のオプション（ＡおよびＢ）の選択を包含するものと意図されている。別の例として、「Ａ、Ｂ、および／またはＣ」、さらに、「Ａ、Ｂ、およびＣのうちの少なくとも１つ」の場合、このような文言は、１番目に列挙されたオプション（Ａ）のみの選択、２番目に列挙されたオプション（Ｂ）のみの選択、３番目に列挙されたオプション（Ｃ）のみの選択、１番目および２番目に列挙されたオプション（ＡおよびＢ）のみの選択、１番目および３番目に列挙されたオプション（ＡおよびＣ）のみの選択、２番目および３番目に列挙されたオプション（ＢおよびＣ）のみの選択、または、全ての３つのオプション（Ａ、Ｂ、およびＣ）の選択を包含するものと意図されている。列挙された数の項目の分だけ、このことが拡張されることは、当該技術分野、さらに、関連する技術分野における通常の技術知識を有するものであれば容易に理解できるであろう。
【００２８】
また、本明細書において使用される単語「ピクチャ」および「イメージ」は代替的に使用され、静止画像または、ビデオ・シーケンスからのピクチャを意味する。公知であるように、ピクチャは、フレームやフィールドであり得る。
【００２９】
また、本明細書において使用される単語「信号伝達（ｓｉｇｎａｌ）」は、何かを対応する復号器に示すことを指している。例えば、符号化器は、ピクチャ内の１つ以上のブロックの係数有意性を示すデータのバイナリ・セットなどのデータを復号する際に使用する１つ以上のツリーまたはサブツリーを信号によって伝達することもあれば、さらに／または、１つ以上のツリーおよび／またはサブツリーの１つ以上のノードに対する変更を決定する際に使用する１つ以上のパラメータを信号によって伝達することもある。このようにして、同一のツリー、サブツリー、および／または変更を符号化器側と復号器側の双方において使用することができる。従って、例えば符号器は、ツリーおよび／またはサブツリーのセットを復号器に送信し、復号器が同一のツリーおよび／またはサブツリーを用いることができるようにしてもよく、復号器が既に他のものと共にツリーおよび／またはサブツリーを有する場合には、（データを送信することなく）信号伝達により、単純に、復号器に対し、ツリーおよび／またはサブツリーを知らせ、これを選択させるようにしてもよい。実際のツリーおよび／またはサブツリー、さらに／または、（ノードの変更に使用される）パラメータの送信を回避することによって、ビット節約を実現できる。信号伝達は、様々な方法で行えることが理解できよう。例えば１つ以上のシンタックス要素、フラグなどを用いて、対応する復号器に情報を信号伝達することができる。
【００３０】
図１を参照すると、本発明の原理が適用されるビデオ符号化器が参照符号１００によって全体的に示されている。
【００３１】
ビデオ符号化器１００は、結合器１８５の非反転入力部と信号通信する出力部を有するフレーム順序付けバッファ１１０を含む。結合器１８５の出力部は、変換器／量子化器１２５の第１の入力部と信号通信するように結合されている。変換器／量子化器１２５の出力部は、適応ツリー選択およびツリー・ノード変換を用いたエントロピー符号化器１４５の第１の入力部、および、逆変換器／逆量子化器１５０の第１の入力部と信号通信するように結合されている。適応ツリー選択およびツリー・ノード変換を用いたエントロピー符号化器１４５の出力部は、結合器１９０の第１の非反転入力部と信号通信するように結合されている。結合器１９０の出力部は、出力バッファ１３５の第１の入力部と信号通信するように結合されている。
【００３２】
符号化器コントローラ１０５の第１の出力部は、フレーム順序付けバッファ１１０の第２の入力部、逆変換器／逆量子化器１５０の第２の入力部、ピクチャ・タイプ決定モジュール１１５の入力部、マクロブロック・タイプ（ＭＢタイプ）決定モジュール１２０の第１の入力部、イントラ予測モジュール１６０の第２の入力部と、デブロッキング・フィルタ１６５の第２の入力部、動き補償器１７０の第１の入力部と、動き推定器１７５の第１の入力部、および、参照ピクチャ・バッファ１８０の第２の入力部と信号通信するように結合されている。
【００３３】
符号化器コントローラ１０５の第２の出力部は、補助拡張情報（ＳＥＩ）挿入器１３０の第１の入力部、変換器／量子化器１２５の第２の入力部、適応ツリー選択およびツリー・ノード変換を用いたエントロピー符号化器１４５の第２の入力部、出力バッファ１３５の第２の入力部、および、シーケンス・パラメータ・セット（Ｓｅｑｕｅｎｃｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ（ＳＰＳ））／ピクチャ・パラメータ・セット（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ（ＰＰＳ））挿入器１４０の入力部と信号通信するように結合されている。
【００３４】
ＳＥＩ挿入器１３０の出力部は、結合器１９０の第２の非反転入力部と信号通信するように結合されている。
【００３５】
ピクチャ・タイプ決定モジュール１１５の第１の出力部は、フレーム順序付けバッファ１１０の第３の入力部と信号通信するように結合されている。ピクチャ・タイプ決定モジュール１１５の第２の出力部は、マクロブロック・タイプ決定モジュール１２０の第２の入力部と信号通信するように結合されている。
【００３６】
シーケンス・パラメータ・セット（ＳＰＳ）／ピクチャ・パラメータ・セット（ＰＰＳ）挿入器１４０の出力部は、結合器１９０の第３の非反転入力部と信号通信するように結合されている。
【００３７】
逆変換器／逆量子化器１５０の出力部は、結合器１１９の第１の非反転入力部と信号通信するように結合されている。結合器１１９の出力部は、イントラ予測モジュール１６０の第１の入力部、および、デブロッキング・フィルタ１６５の第１の入力部と信号通信するように結合されている。デブロッキング・フィルタ１６５の出力部は、参照ピクチャ・バッファ１８０の第１の入力部と信号通信するように結合されている。参照ピクチャ・バッファ１８０の出力部は、動き推定器１７５の第２の入力部、および、動き補償器１７０の第３の入力部と信号通信するように結合されている。動き推定器１７５の第１の出力部は、動き補償器１７０の第２の入力部と信号通信するように結合されている。動き推定器１７５の第２の出力部は、適応ツリー選択およびツリー・ノード変換を用いたエントロピー符号化器１４５の第３の入力部と信号通信するように結合されている。
【００３８】
動き補償器１７０の出力部は、スイッチ１９７の第１の入力部と信号通信するように結合されている。イントラ予測モジュール１６０の出力部は、スイッチ１９７の第２の入力部と信号通信するように結合されている。マクロブロック・タイプ決定モジュール１２０の出力部は、スイッチ１９７の第３の入力部と信号通信するように結合されている。スイッチ１９７の第３の入力部は、スイッチの（制御入力、即ち、第３の入力と比較される）「データ」入力が、動き補償器１７０またはイントラ予測モジュール１６０によって供給されるかどうかを判定する。スイッチ１９７の出力部は、結合器１１９の第２の非反転入力部および結合器１８５の反転入力部と信号通信するように結合されている。
【００３９】
フレーム順序付けバッファ１１０の第１の入力部および符号化器コントローラ１０５の入力部は、符号化器１００の入力部として、入力ピクチャを受信するために利用可能である。さらに、補助拡張情報（ＳＥＩ）挿入器１３０の第２の入力部は、符号化器１００の入力部として、メタデータを受信するために利用可能である。出力バッファ１３５の出力部は、符号化器１００の出力部として、ビットストリームを出力するために利用可能である。
【００４０】
図２を参照すると、本発明の原理が適用される例示的なビデオ復号器が参照符号２００によって全体的に示されている。
【００４１】
ビデオ復号器２００は、適応ツリー選択およびツリー・ノード変換を用いたエントロピー復号器２４５の第１の入力部と信号通信するように結合された出力部を有する入力バッファ２１０を含んでいる。適応ツリー選択およびツリー・ノード変換を用いたエントロピー復号器２４５の第１の出力部は、逆変換器／逆量子化器２５０の第１の入力部と信号通信するように結合されている。逆変換器／逆量子化器２５０の出力部は、結合器２２５の第２の非反転入力部と信号通信するように結合されている。結合器２２５の出力部は、デブロッキング・フィルタ２６５の第２の入力部、および、イントラ予測モジュール２６０の第１の入力部と信号通信するように結合されている。デブロッキング・フィルタ２６５の第２の出力部は、参照ピクチャ・バッファ２８０の第１の入力部と信号通信するように結合されている。参照ピクチャ・バッファ２８０の出力部は、動き補償器２７０の第２の入力部と信号通信するように結合されている。
【００４２】
適応ツリー選択およびツリー・ノード変換を用いたエントロピー復号器２４５の第２の出力部は、動き補償器２７０の第３の入力部、デブロッキング・フィルタ２６５の第１の入力部、および、イントラ予測モジュール２６０の第３の入力部と信号通信するように結合されている。適応ツリー選択およびツリー・ノード変換を用いたエントロピー復号器２４５の第３の出力部は、復号器コントローラ２０５の入力部と信号通信するように結合されている。復号器コントローラ２０５の第１の出力部は、適応ツリー選択およびツリー・ノード変換を用いたエントロピー復号器２４５の第２の入力部と信号通信するように結合されている。復号器コントローラ２０５の第２の出力部は、逆変換器／逆量子化器２５０の第２の入力部と信号通信するように結合されている。復号器コントローラ２０５の第３の出力部は、デブロッキング・フィルタ２６５の第３の入力部と信号通信するように結合されている。復号器コントローラ２０５の第４の出力部は、イントラ予測モジュール２６０の第２の入力部、動き補償器２７０の第１の入力部、および、参照ピクチャ・バッファ２８０の第２の入力部と信号通信するように結合されている。
【００４３】
動き補償器２７０の出力部は、スイッチ２９７の第１の入力部と信号通信するように結合されている。イントラ予測モジュール２６０の出力部は、スイッチ２９７の第２の入力部と信号通信するように結合されている。スイッチ２９７の出力部は、結合器２２５の第１の非反転入力部と信号通信するように結合されている。
【００４４】
入力バッファ２１０の入力部は、復号器２００の入力部として、入力ビットストリームを受信するために利用可能である。デブロッキング・フィルタ２６５の第１の出力部は、復号器２００の出力部として、出力ピクチャを出力するために利用可能である。
【００４５】
上述したように、本発明の原理は、適応ツリー選択を使用して符号化および復号を行う方法および装置に関する。このような適応ツリー選択は、例えば、ピクチャ内の１つ以上のブロックのための係数有意性を示すデータのバイナリ・セットを符号化または復号するために使用することができる。
【００４６】
ＭＰＥＧ−４  ＡＶＣ規格においては、非零（零ではない）係数の各位置が有意性マップによって符号化される。ＭＰＥＧ−４  ＡＶＣにおける有意性マップは、以下のように機能する。ｃｏｄｅｄ＿ｂｌｏｃｋ＿ｆｌａｇ（符号化されたブロック・フラグ）が、ブロックが有意係数を有することを示す場合には、２値の（バイナリ値の）有意性マップが符号化される。スキャン順における各係数について、１ビット・シンボルのｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ（有意係数のフラグ）が送信される。ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇが１である場合、即ち、このスキャン位置に非零係数が存在する場合には、さらに１ビット・シンボルのｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ（最後の有意係数のフラグ）が送信される。このシンボルは、現在の有意係数がブロック内の最後のものであるか、または、他の有意係数が後に続いているかどうかを示す。なお、ブロックの最後のスキャン位置での各フラグ（ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ、ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ）が送信されることはない。最後のスキャン位置に到達し、有意性マップの符号化が１の値を有するｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇによって既に終了していない場合には、最後の係数が有意でなければならないことは明らかである。
【００４７】
有意性を示す別の方法は、「零ツリー（ｚｅｒｏ−ｔｒｅｅｓ）」に関する。画像圧縮のためのウェーブレット変換において、例を見出すことができる。有意性マップを伝達するためにツリー構造が使用される。図３を参照すると、本発明の原理が適用される例示的なツリー構造が参照符号３００によって全体的に示されている。小さな正方形の各々は、変換係数を意味する。ツリーのルートは、星を含む正方形によって表されている。子ノードは、近傍の係数である。さらに、矢印によって子ノードの関係が示されている。図示しているように、各親は、子として、４つの他の係数を有する。ツリー構造３００は、これらの関係、さらに、ツリー構造がどのようなものであるかを示す例にすぎず、全体のツリーまたはツリー内の親子関係を示すものではない。この場合、ツリーの各ノードは、係数に関連し、ツリーは、２次元（２−Ｄ）におけるウェーブレット変換係数間の空間関係を考慮して構成されている。そして、各ノードについて、０または１が送信される。０の値／シンボルは、ツリー内の特定のノードにおける係数、さらに、ツリー内のこの係数より下の全ての係数が零であることを意味する。このようにして、多数の零係数が１つのシンボルのみを用いて符号化される。多数の零が存在する場合には、これによって良好な圧縮率を得ることができる。本開示内容および出願明細書においては、用語「ツリー」は、用語「ツリー構造」と同じ意味で使用され、用語「サブツリー」は、用語「サブツリー構造」と同じ意味で使用されることが理解できるであろう。
【００４８】
多くのアルゴリズムは、いわゆる零ツリーのコンセプトに従っていた。その一変形例が、いわゆるバイナリ・ツリー符号化であり、これは、単純であるが、効率的なツリーのタイプである。この場合、ツリーの各リーフは変換係数に関連することがあるが、ツリーの内部ノードは、いずれの係数にも関連しない。そこで、符号化は、従前のケースよりも類似するものである、即ち、ノードの下の全ての係数が零（０）である場合には、０は、その状況を示すことができるため、そのノードよりも下に進み、各係数の有意性／零の値を明示的に示す必要はない。図４を参照すると、本発明の原理が適用される例示的なバイナリ・ツリーが参照符号４００によって全体的に示されている。バイナリ・ツリー４００は、ノード１〜１３を含む。ノード１は、ルート・ノードである。ノード２，３，６，９および１１は、内部ノードである。ノード４，５，７，８，１０，１２および１３は、リーフ・ノードである。
【００４９】
有意である確率は、これらの方法が適切に考慮しない多くの要因に依存する。各係数の有意性の間には、空間相関が存在する。また、低周波数側の係数の統計プロパティは、高周波数側の係数の統計プロパティとは異なる。さらに、各残差ブロックの有意性マップ間の違いは、非常に大きいことがある。従って、１つのデータ構造および符号化処理を使用するのでは、このような多様性の全てを捉えるのには十分ではない。
【００５０】
従って、従来技術の少なくとも上述した欠陥を考慮して、本発明の原理の少なくとも一実施形態において、有意性マップの多様性により良好に適応するための幾つかのツリーおよびサブツリーの使用を提案する。同時に利用可能な幾つかのツリーおよびサブツリーを有すること、さらに、これらのツリーからの選択によって所与のバイナリ・セットを符号化することにより、符号化効率を向上させることができる。例えば、一実施形態においては、サブツリーの各々を符号化するための最終的なビット・レートは、選択の基礎となる適切な尺度である。一実施形態においては、各有意性マップについて、これを符号化するための最良のツリーまたはサブツリーの組み合わせを選択することを提案する。また、一実施形態においては、リーフの各値間の統計プロパティおよび相関を利用する、変換、グループ化、サインのフリッピング（反転）、および他の処理の使用を提案する。一実施形態においては、ツリー、サブツリー、または、ツリーやサブツリーの部分におけるこれらの処理の使用を提案する。また、一実施形態においては、バイナリ・セットの潜在的な相互依存性をさらに利用するために、バイナリ演算子を通じて各リーフを前処理することを提案する。
【００５１】
また、サブツリーのセットを用いること、さらに、これらのうちから適応的な選択を行って、零／非零係数の位置を符号化する際の効率性を向上させることを提案する。さらに、ツリーの各ノード／リーフに対し、これらの間の相互依存性をより良好に利用するために、処理／変換を実行し、これらの当初の意味を変更することを提案する。
【００５２】
（変換された係数の有意性マップのような）バイナリ・セットを符号化するための零ツリー構造においては、各リーフには、このセットの中の要素のバイナリ値が与えられる。従って、各リーフの値とバイナリ・セットの各要素との間には一対一の関係がある。残差係数の有意性マップは、バイナリ・セットを形成する。
【００５３】
各内部ノードの値は、この内部ノードより下の各ノードの値を求めることによって導くことができる。このようにして、各内部ノードの有意性／バイナリ値は、ルート・ノードへの各リーフ（ノード）から導出される。そして、ツリーは、ルート・ノードから開始する各ノードの値を信号により伝達することによって符号化される。ノードに「０」がマークされているときは、このノードの下の全てのノードは「０」であり、各ノードの値を具体的に信号により伝達する必要がないことを意味するため、圧縮が実現される。
【００５４】
有意である確率は、従来技術の方法が適切に考慮していない多数の要因に依存する。各係数の有意性の間には、空間相関が存在する。また、低周波数側の係数の統計プロパティは、高周波数側の係数の統計プロパティとは異なる。さらに、各残差ブロックの有意性マップ間の違いは、非常に大きいことがある。従って、１つのデータ構造および符号化処理を使用するのでは、このような多様性の全てを捉えるのには十分ではない。
【００５５】
一実施形態においては、幾つかのツリーおよびサブツリーの中からの選択を行うことによって、有意性マップのような、所与のバイナリ・セットを符号化することを提案する。さらに、変換、フリッピング・ビット、または、他の演算子を介して、幾つかのリーフにおけるツリー・リーフの値の意味を潜在的に変更することを提案する。この変更は、ツリー内の元々の値よりもよりコンパクトに「０」と「１」とで表現することにより、ツリーの符号化処理をより効率化することを目的とする。
【００５６】
以下、幾つかの実施の形態について記載する。もちろん、本発明の原理の趣旨および範囲を逸脱することなく、本明細書において提供される本発明の原理の開示内容を考慮して、本発明の原理のこれらの変更およびその他の変更を、本技術および関連する技術の当業者によって企図することができる。
【００５７】
一実施形態においては、各ツリーを用いてセットを符号化するコストが計算され、最小のコストを有するツリーが有意性マップを符号化するために使用される。コスト関数は、最終的なビット・レート、エントロピー、および／または、１つ以上の他のパラメータとすることができる。選択されたツリーは、例えば、フラグを用いて信号により伝達される。
【００５８】
一実施形態においては、幾つかのツリーを自由に使用することができ、選択されたツリーは、予測モードに依存するか、ブロックに使用される特定の変換に依存するか、さらに／または、他の復号されたデータに依存し、使用する正しい（即ち、選択された）ツリーを符号化器が明示的に信号により伝達する必要はない。
【００５９】
一実施形態においては、有意性マップは、幾つかの部分に分割される。各部分について、特定の部分を符号化するのにサブツリーのセットが使用される。各サブツリーのコストが計算され、最低のコストを有するものが有意性マップの該当部分の符号化のために選択される。各部分において、フラグは、選択されたサブツリーを示すことができる。さらに、サブツリーが符号化された際、マップの残りが符号化中である（即ち、有意な係数が残っている）か、または、符号化中でない（即ち、残りの係数が全て零である）か、が示されなければならない。この目的のため、一実施形態においては、フラグは、マップの残りの有意性を示すことができる。他の実施形態においては、これは、サブツリーの中の追加ノードを用いて示される。マップの残りが零である場合には、このノードは「０」であり、マップの残りが少なくとも１つの有意な係数を有する場合には、このノードは「１」である。このノード／リーフは、ツリーの残りと共に符号化され、明示的な信号伝達は不要である。この実施形態においては、サブツリーは、そのために、（即ち、その目的のために）、追加ノードを有することがある。例外として、マップの最後の部分を符号化するために充てられるサブツリーは、この追加ノードを必要としない。さらに、ツリーの中間部分を符号化するための幾つかのサブツリーはこのノードを有していないことがあり、このようなサブツリーが選択されていることは、マップの残りが零であることを黙示的に意味する。
【００６０】
一実施形態においては、ツリーおよびサブツリーのセットを使用して、有意性マップを符号化することができる。各サブツリーは、相異なるサイズを有することができる。サブツリーの異なる組み合わせのコストおよびツリー全体のコストが計算され、バイナリ・セットを符号化するために、最小のコストを有する組み合わせ、または、ツリーが選択される。
【００６１】
少なくとも一実施形態においては、適応ツリー選択を使用して符号化／復号を行う本願のアプローチに対する第２の部分は、ツリー内のノードまたは、ノードのサブセットを、これらの間の相関および依存関係をさらに利用するために、どのように組み合わせる／変更する／変換するかに関する。零であるバイナリ・セットの部分が（零でない部分よりも）大きい場合には、ツリーの符号化はより効率的であるため、零の量が大きくなる処理はどのようなものでも、符号化処理に役立つ。例えば、有意性マップの場合には、係数の近傍子が零である場合の方が、係数の近傍子が零でない場合よりも、係数が有意である可能性がより少ない。ツリーの特定の構造は、部分的にその事実を考慮するものであるが、全ての依存関係を完全に捉え、利用できるものではない。リーフに関して提案する一連の組み合わせおよび処理は、この問題を解決することを目的とする。
【００６２】
有意性マップの場合においては、ツリーの各ノードは、２次元（２−Ｄ）での近傍の係数にリンクされる。これは、二次元の有意性マップが一次元（１−Ｄ）でスキャンされ、次に、ツリー・ノードにマッピングされるからである。二次元ブロックの残差は、近傍の係数の間の依存関係を示しているため、対応するツリーもまた、近傍のノード／リーフ間の依存関係を示している。この理由により、ノードのバイナリ処理は、効率性の向上に役立つ。
【００６３】
一実施形態においては、バイナリ処理は、ツリーの各リーフにおけるデータを、データの１次元配列として考慮し、配列にバイナリ演算子／変換を適用することができる。
【００６４】
特定の実施形態においては、バイナリ・ウェーブレット変換、バイナリ離散フーリエ変換、および／または、他のバイナリ変換をデータに適用することができる。この場合には、配列の空間相関が低減され、ツリーのより効率的な符号化が実現される。
【００６５】
他の特定の実施形態においては、近傍の相関を以下のように減少させることができる。この場合には、連続した１および０（零）の文字列が一次元でスキャンされた有意性マップにおいて発生する。ツリーの第２のリーフから開始して、前のリーフから、リーフの値を反復的に減算することによって相関が減少される。この点の特定の実施形態は、論理ＸＯＲ演算を連続するリーフに適用することに関する。この場合、以下のバイナリ・セット１１１１０００００１１１１が、セット１０００１０００００１０００に変換される。この演算は、ツリー・リーフの一次元空間相関を利用する非零の数を減少させることが理解できるであろう。
【００６６】
他の特定の実施形態においては、ツリー・リーフ・ノードの意味をフリッピング（反転）させ、零ツリーの符号化が有意性ツリーの符号化となる。これは、バイナリ・ツリーが０（零）よりも１を多く含んでいる場合に役立つ。
【００６７】
他の実施の形態においては、ツリーが２つの意味を有することができる。即ち、一部のノードを或る方法で処理し、他のノードを別の方法で処理することができる。これは、本出願人がデュアル・ツリーと呼ぶものに関する特定の実施形態につながるものである。ツリーの第１の係数は、通常は非零であり（零ではなく）、残りの係数は、通常は零であることが知られている。そこで、デュアル・ツリーは、第１の係数の各リーフの値をフリッピング（反転）する一方で、残りのリーフの通常の有意性の意味を維持するであろう。これは、ツリーの両方の部分で、非零と零とを効果的に符号化するデュアル・ツリーである。
【００６８】
この提案に基づいて、さらに、ツリー・リーフ内には、（ビット値のフリッピングからビット値の非フリッピングに）意味が変化するポイントが存在する。このポイントは、適応的に変更し、ビットストリーム内において明示的に示すこともできれば、以前に再構築されたデータから導出することもできる。本出願人は、本実施形態を「適応型フリッピング・デュアル・バイナリ・ツリー（ａｄａｐｔｉｖｅ−ｆｌｉｐｐｉｎｇ  ｄｕａｌ  ｂｉｎａｒｙ  ｔｒｅｅ）」と呼ぶ。
【００６９】
ツリーまたは、ツリーの１つ以上の部分を前処理するための幾つかの方法において「デュアル」ツリーを拡張可能であることは明らかである。また、必要に応じて、幾つかの「意味変更ポイント」を適応させ、変更させることができる（即ち、ビットをフリッピングするだけでなく、潜在的にノードのどのような変換／変更も可能である）。
【００７０】
我々の提案の両方の部分は、本技術分野および関連する技術分野における当業者であれば容易に理解できるように、本明細書において提供された発明の原理の開示内容に鑑み、多くの方法で組み合わせることができる。例えば、幾らかのサブツリーを処理し、他のサブツリーを処理しないようにすることができる。
【００７１】
シンタックス
表１は、本発明の原理の実施形態による、バイナリ・セットを符号化するための適応ツリー選択のシーケンス・パラメータ・セットの例示的なシンタックスを示している。表２は、本発明の原理の実施形態による、ブロックのための有意性マップを符号化するために使用される特定のツリーを示すブロック・パラメータの例示的なシンタックスを示している。
【表１】
2018067946.tif 000003
【表２】
2018067946.tif 000004
【００７２】
表１および表２に示されたシンタックス要素のうちの少なくとも幾つかのセマンティックスは、以下の通りである。
【００７３】
ａｄａｐｔｉｖｅ＿ｔｒｅｅ＿ｓｅｌｅｃｔｉｏｎ＿ｆｌａｇ：  ａｄａｐｔｉｖｅ＿ｔｒｅｅ＿ｓｅｌｅｃｔｉｏｎ＿ｆｌａｇが０であることは、（バイナリ・セットとして符号化された）変換された残差係数の符号化に適応ツリー選択が行われないことを意味し、ａｄａｐｔｉｖｅ＿ｔｒｅｅ＿ｓｅｌｅｃｔｉｏｎ＿ｆｌａｇが１であることは、変換された残差係数の符号化に適応ツリー選択が行われることを意味する。
【００７４】
ｂｉｎａｒｙ＿ｔｒｅｅ＿ｉｎｄｅｘ：  ｂｉｎａｒｙ＿ｔｒｅｅ＿ｉｎｄｅｘは、現在の残差ブロックを符号化するために選択されているツリーを規定する。
【００７５】
図５を参照すると、適応ツリー選択を用いて符号化を行う例示的な方法が参照符号５００によって全体的に示されている。方法５００は、制御を機能ブロック５１０に受け渡す開始ブロック５０５を含む。機能ブロック５１０は、予測モード選択を実行し、制御を機能ブロック５１５に受け渡す。機能ブロック５１５は、（予測モードから取得された）予測を信号により伝達し、制御をループ端ブロック５２０に受け渡す。ループ端ブロック５２０は、バイナリ・セットについてエントロピー符号化のループを実行し、制御を機能ブロック５２５に受け渡す。機能ブロック５２５は、最良のツリーを選択（例えば、１つ以上の基準に基づいて最良のツリーを選択）し、制御を機能ブロック５３０に受け渡す。機能ブロック５３０は、選択されたツリーのインデックスを符号化し、制御を機能ブロック５３５に受け渡す。機能ブロック５３５は、選択されたツリーを使用してバイナリ・セットを符号化し、制御をループ端ブロック５４０に受け渡す。ループ端ブロック５４０は、ループを終了し、制御を終了ブロック５９９に受け渡す。
【００７６】
図６を参照すると、適応ツリー選択を用いて復号を行う例示的な方法が参照符号６００によって全体的に示されている。方法６００は、制御をループ端ブロック６１０に受け渡す開始ブロック６０５を含む。ループ端ブロック６１０は、バイナリ・セットをエントロピー復号するループを実行し、制御を機能ブロック６１５に受け渡す。機能ブロック６１５は、ツリー・インデックス・シンタックスをパース（ｐａｒｓｅ）し、符号化器によって使用されたツリーを取得し、制御を機能ブロック６２０に受け渡す。機能ブロック６２０は、復号されたツリーを使用してバイナリ・セットを復号し、制御をループ端ブロック６２５に受け渡す。ループ端ブロック６２５は、ループを終了し、制御を終了ブロック６９９に受け渡す。
【００７７】
図７を参照すると、ツリー・ノード変換を用いて符号化を行う例示的な方法が参照符号７００によって全体的に示されている。方法７００は、制御を機能ブロック７１０に受け渡す開始ブロック７０５を含む。機能ブロック７１０は、バイナリ・セットおよび予測モードを判定し、制御を機能ブロック７２０に受け渡す。機能ブロック７２０は、（機能ブロック７１０によって判定された）バイナリ・セットおよび予測モードに基づいて通常のツリー構築を実行し、制御を機能ブロック７３０に受け渡す。機能ブロック７３０は、ツリー・ノード変換を実行し、制御を機能ブロック７４０に受け渡す。機能ブロック７４０は、ツリーのエントロピー符号化を実行し、制御を機能ブロック７９９に受け渡す。
【００７８】
図８を参照すると、ツリー・ノード変換を使用して復号を行う例示的な方法が参照符号８００によって全体的に示されている。方法８００は、制御を開始ブロック８１０に受け渡す開始ブロック８０５を含む。機能ブロック８１０は、予測モードおよびバイナリ・セットによって使用する（特定の）ツリーを決定し、制御を機能ブロック８２０に受け渡す。機能ブロック８２０は、ツリーをエントロピー復号し、制御を機能ブロック８３０に受け渡す。機能ブロック８３０は、ツリー・ノードの逆変換を実行し、制御を機能ブロック８４０に受け渡す。機能ブロック８４０は、（逆変換の結果に基づいて）バイナリ・セットを出力し、制御を終了ブロック８９９に受け渡す。
【００７９】
図９を参照すると、ツリー・ノード変換を用いて符号化を行う他の方法が参照符号９００によって全体的に示されている。方法９００は、制御を機能ブロック９１０に受け渡す開始ブロック９０５を含む。機能ブロック９１０は、バイナリ・セットを（おそらくは異なるサイズの）幾つかのサブセットに分割し、制御をループ端ブロック９１５に受け渡す。ループ端ブロック９１５は、全てのバイナリ・サブセットについてループを開始し、制御をループ端ブロック９２０に受け渡す。ループ端ブロック９２０は、複数のツリーについてループを開始し、制御を機能ブロック９２５に受け渡す。機能ブロック９２５は、現在のサブセットに次のバイナリ・サブセットの有意性を加算し、制御を機能ブロック９３０に受け渡す。機能ブロック９３０は、ツリーをエントロピー符号化し、制御をループ端ブロック９３５に受け渡す。ループ端ブロック９３５は、複数のツリーについてのループを終了し、制御を機能ブロック９４０に受け渡す。機能ブロック９４０は、最良のパフォーマンスを有するツリーを選択し、制御を機能ブロック９４５に受け渡す。機能ブロック９４５は、選択したツリーをエントロピー符号化し、制御を決定ブロック９５０に受け渡す。決定ブロック９５０は、選択されたツリーがターミナル・サブツリーであるかどうかを判定する。選択されたツリーがターミナル・サブツリーである場合には、制御が終了ブロック９９９に受け渡される。そうでない場合には、制御がループ端ブロック９５５に受け渡される。ループ端ブロック９５５は、バイナリ・セットについてのループを終了し、制御を終了ブロック９９９に受け渡す。
【００８０】
図１０を参照すると、ツリー・ノード変換を用いて復号を行う他の例示的な方法が参照符号１０００によって全体的に示されている。方法１０００は、制御を機能ブロック１０１０に受け渡す開始ブロック１００５を含む。機能ブロック１０１０は、バイナリ・セットを（おそらくは異なるサイズの）幾つかのサブセットに分割し、制御をループ端ブロック１０２０に受け渡す。ループ端ブロック１０２０は、全てのバイナリ・サブセットについてループを開始し、制御を機能ブロック１０３０に受け渡す。機能ブロック１０３０は、選択されたツリーを復号し、ツリーをエントロピー復号し、制御を機能ブロック１０４０に受け渡す。機能ブロック１０４０は、現在のツリーが追加のリーフを有する場合には、次のバイナリ・サブセットの有意性を判定し、制御を決定ブロック１０５０に受け渡す。決定ブロック１０５０は、選択されたツリーがターミナル・サブツリーであるかどうか、または、次のバイナリ・サブセットが有意でないかどうかを判定する。選択されたツリーがターミナル・サブツリーであるか、または、次のバイナリ・サブセットが有意でない場合には、制御は終了ブロック１０９９に受け渡される。そうでない場合には、制御はループ端ブロック１０６０に受け渡される。ループ端ブロック１０６０は、全てのバイナリ・サブセットについてループを終了し、制御を終了ブロック１０９９に受け渡す。
【００８１】
本発明の多くの付随する利点／特徴の幾つかについて説明する。これらの幾つかは既に述べた通りのものである。例えば１つの利点／特徴は、ピクチャ内の少なくともブロックのピクチャ・データを符号化する符号化器を有する装置である。ビデオ符号化器は、複数のツリーからの選択を行って、少なくともこのブロックの係数有意性を示すデータのバイナリ・セットを符号化する。
【００８２】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、ビデオ符号化器が複数のツリーから１つ以上のツリーを選択する装置である。
【００８３】
さらに、別の利点／特徴は、ビデオ符号化器を有し、上述したように、ビデオ符号化器が複数のツリーから１つ以上のツリーを選択する装置であって、１つ以上の尺度に基づいて１つ以上のツリーが選択され、この１つ以上の尺度はビット・レート値およびレート歪み値のうちの少なくとも一方を含む装置である。
【００８４】
さらに、別の利点／特徴は、上述したようなビデオ符号化器を有し、ビデオ符号化器が複数のツリーから１つ以上のツリーを選択する装置であって、選択された１つ以上のツリーは副情報として示される装置である。
【００８５】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、ビデオ符号化器は、予測モード、変換、１つ以上の以前に復号されたブロックの復号されたデータ、およびブロックの他の復号されたデータのうちの少なくとも１つに従って複数のツリーから選択する装置である。
【００８６】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、データのバイナリ・セットが、このデータのバイナリ・セットを複数のサブセットに分割し、複数のサブセットを符号化することによって符号化され、ビデオ符号化器は、複数のツリーおよび複数のサブセットからの選択を行って複数のサブセットを符号化する装置である。
【００８７】
さらに、別の利点／特徴は、上述したようなビデオ符号化器を有し、データのバイナリ・セットがは、このデータのバイナリ・セットを複数のサブセットに分割し、複数のサブセットを符号化することによって符号化され、ビデオ符号化器は、複数のツリーおよび複数のサブセットからの選択を行って複数のサブセットを符号化する装置であって、複数のサブツリーのうちの少なくとも１つは、複数のサブツリーのうちの少なくとも１つにおける残りの下位ノードの零値または非零値を示す追加ノードを有する装置である。
【００８８】
さらに、別の利点／特徴は、上述したようなビデオ符号化器を有し、データのバイナリ・セットが、このデータのバイナリ・セットを複数のサブセットに分割し、複数のサブセットを符号化することによって符号化され、ビデオ符号化器は、複数のツリーおよび複数のサブセットからの選択を行って複数のサブセットを符号化する装置であって、複数のサブツリーのうちの少なくとも１つは、ターミナル・サブツリーであり、ターミナル・サブツリーの選択は、データのバイナリ・セットの全ての残りの部分が零であることを示す装置である。
【００８９】
さらに、別の利点／特徴は、上述したようなビデオ符号化器を有し、データのバイナリ・セットが、このデータのバイナリ・セットを複数のサブセットに分割し、複数のサブセットを符号化することによって符号化され、ビデオ符号化器は、複数のツリーおよび複数のサブセットからの選択を行って複数のサブセットを符号化する装置であって、複数のツリーの各々は複数のノードを含み、複数のツリーのうちの少なくとも一部が、ツリーに含まれている異なる数のノードに対応して異なるサイズを有する装置である。
【００９０】
さらに、別の利点／特徴は、ピクチャ内の少なくともブロックのピクチャ・データを符号化するビデオ符号化器を有する装置であって、１つ以上のツリーを使用して少なくとも１つのブロックの係数有意性を示すデータのバイナリ・セットを符号化し、１つ以上のツリーの各々は、複数のノードを有し、１つ以上のツリーのうちの少なくとも１つにおいて、そのツリーのノードのうちの少なくとも１つは、１つ以上のパラメータに応じて変更される装置である。
【００９１】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、複数のノードは、１つ以上のツリーの各々について、ルート・ノードと、少なくとも１つのリーフ・ノードとを含み、バイナリ変換が少なくとも１つのリーフ・ノードのうちの少なくとも１つに対して適用される装置である。
【００９２】
さらに、別の利点／特徴は、ビデオ符号化器を有し、上述したように、複数のノードは、１つ以上のツリーの各々について、ルート・ノードと、少なくとも１つのリーフ・ノードとを含み、バイナリ変換が少なくとも１つのリーフ・ノードのうちの少なくとも１つに対して適用される装置であって、バイナリ変換は、バイナリ・ウェーブレット変換またはバイナリ・フーリエ変換である装置である。
【００９３】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、ノードの少なくとも１つに減算を適用してノードの少なくとも１つを変更する装置である。
【００９４】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、複数のノードは、１つ以上のツリーの各々について、ルート・ノードと、２つ以上の連続するリーフ・ノードとを含み、変更されるノードのうちの少なくとも１つは、２つ以上の連続するリーフ・ノードを含み、排他的論理和演算（ｅｘｃｌｕｓｉｖｅ  ＯＲ  ｏｐｅｒａｔｉｏｎ）を２つ以上の連続するリーフのうちの少なくとも２つに適用して、少なくともこの２つ以上の連続するリーフ・ノードを変更する装置である。
【００９５】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、ノードの少なくとも１つにおけるビットは、値がフリッピングされてノードの少なくとも１つを変更する装置である。
【００９６】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、ノードのうちの少なくとも１つが変更されていることが、ノードの総数の一部分のみが変更されるように、１つ以上のツリーの内のノードの総数の一部分のみが変更されることを表す装置である。
【００９７】
さらに、別の利点／特徴は、ビデオ符号化器を有し、上述したように、ノードのうちの少なくとも１つが変更されていることが、ノードの総数の一部分のみが変更されるように、１つ以上のツリーの内のノードの総数の一部分のみが変更されることを表す装置であって、１つ以上のツリーのうちの１つ以上が１つ以上のパラメータに応じて変更され、変更が始められる特定のノードは、１つ以上のツリーのうちの１つ以上からの、少なくとも２つのツリーの間で変化する装置である。
【００９８】
さらに、別の利点／特徴は、上述したビデオ符号化器を有する装置であって、１つ以上のツリーのうちの１つ以上が１つ以上のパラメータに応じて変更され、各ツリーは、ノードのセットを含み、１つ以上のツリーのうちの１つ以上からの、少なくとも２つのツリー間の異なるノード・サブセットに異なる変更が適用される装置である。
【００９９】
さらに、別の利点／特徴は、ビデオ符号化器を有し、上述したように、１つ以上のツリーのうちの１つ以上が１つ以上のパラメータに応じて変更され、各ツリーは、ノードのセットを含み、１つ以上のツリーのうちの１つ以上からの、少なくとも２つのツリー間の異なるノード・サブセットに異なる変更が適用される装置であって、異なる変更が適用される異なるノードのサブセットが適応的に決定される装置である。
【０１００】
本発明の原理のこれらの特徴およびその他の特徴は、関連する分野において通常の知識を有するものであれば、本明細書中の開示内容に基づいて、容易に解明することができるであろう。本発明の原理の開示内容は、ハードウエア、ソフトウエア、ファームウエア、特定用途向けプロセッサ、または、これらを組み合わせたものの形態で実施できることが理解されよう。
【０１０１】
より好ましくは、本発明の原理の開示内容は、ハードウエアおよびソフトウエアを組み合わせて実施される。さらに、ソフトウエアは、プログラム・ストレージ・ユニットに上に現実的に実装されるアプリケーション・プログラムとして実施される。アプリケーション・プログラムは、適切なアーキテクチャからなるマシンにアップロードされ、このマシンによって実行されるようにしてもよい。好ましくは、このマシンは、１つ以上の中央処理装置（ＣＰＵ）、ランダム・アクセス・メモリ（ＲＡＭ）、入出力（Ｉ／Ｏ）インタフェースなどのハードウエアを有するコンピュータ・プラットフォーム上で実施される。また、コンピュータ・プラットフォームは、オペレーティング・システムおよびマイクロインストラクション・コードを含むようにしてもよい。本明細書中で開示される様々な処理および機能は、マイクロインストラクション・コードの一部を構成するものでもよいし、アプリケーション・プログラムの一部を構成するものであってもよいし、これらを組み合わせたものであってもよいし、ＣＰＵによって実行されるものであってもよい。さらに、追加的なデータ記憶装置やプリンタ等、コンピュータ・プラットフォームに様々な他の周辺機器を結合してもよい。
【０１０２】
添付図面に示すシステムの構成要素および方法のステップの幾つかは、好ましくは、ソフトウエアの形態によって実施されるため、システムの構成要素または処理機能ブロック間の実際の結合は、本発明の原理をプログラムする方法によって異なる場合があることが理解できるであろう。本明細書の開示する内容に基づいて、関連する技術における通常の技術知識を有するものであれば、本発明の原理の実施形態または構成、さらに、類似した実施形態または構成を企図できるであろう。
【０１０３】
添付図面を参照して本明細書中で例示的な実施形態について説明したが、本発明はこれらの実施形態に厳格に限定されるものではなく、関連技術に関して通常の技術を有する者であれば、本発明の原理の範囲または趣旨を逸脱することなく、様々な変更、改変を施すことが可能であることが理解できよう。このような変更、改変は、全て、添付の請求の範囲に記載されたような本発明の原理の範囲に含まれるように意図されている。
【図１】
2018067946.tif 000005
【図２】
2018067946.tif 000006
【図３】
2018067946.tif 000007
【図４】
2018067946.tif 000008
【図５】
2018067946.tif 000009
【図６】
2018067946.tif 000010
【図７】
2018067946.tif 000011
【図８】
2018067946.tif 000012
【図９】
2018067946.tif 000013
【図１０】
2018067946.tif 000014
【手続補正書】
【提出日】平成29年12月14日(2017.12.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオ復号器において、ピクチャ内のブロックのピクチャ・データを復号するステップを含む方法。
【外国語明細書】
2018067946000001.pdf