1又は複数の実施形態又は実装は、添付の図面を参照して説明される。特定の構成及び配置が議論されるが、これは単に説明目的で行われることが理解されるべきである。関連分野の当業者は、本説明の精神及び範囲から逸脱することなく、他の構成及び配置が用いられても良いことを認識する。関連分野の当業者には、本願明細書に記載される技術及び/又は配置が本願明細書に記載される以外の種々の他のシステム及びアプリケーション内で用いられても良いことが明らかである。
以下の説明は例えばシステムオンチップ(SoC)アーキテクチャのようなアーキテクチャで明示され得る種々の実装を説明するが、本願明細書に記載の技術及び/又は配置の実装は、特定のアーキテクチャ及び/又はコンピューティングシステムに限定されず、同様の目的で任意のアーキテクチャ及び/又はコンピューティングシステムにより実装されても良い。例えば、例えば複数の集積回路(IC)チップ及び/又はパッケージを用いる種々のアーキテクチャ、及び/又はセットトップボックス、スマートフォン等のような種々のコンピューティング装置及び/又は消費者電子機器(CE)装置は、本願明細書に記載の技術及び/又は配置を実装しても良い。さらに、以下の説明は、システムコンポーネントの論理実装、種類、及び相互関係、論理区分/統合の選択、等のような多くの特定の詳細事項を説明するが、請求される主題は、このような特定の詳細事項を有しないで実施できる。他の例では、例えば制御構造及び完全なソフトウェア命令シーケンスのような特定の素材は、本願明細書に開示の素材を不明確にすることを回避するために詳細に示されない。
本願明細書に開示の素材は、ハードウェア、ファームウェア、ソフトウェア又はそれらの如何なる組み合わせで実装されてもよい。本願明細書に開示の素材は、1又は複数のプロセッサにより読み取られ実行されてもよい機械可読媒体に格納された命令として実施されてもよい。機械可読媒体は、機械(例えば、コンピューティング装置)により読み取り可能な形式で情報を格納又は送信する任意の媒体及び/又はメカニズムも包含しうる。例えば、機械可読媒体は、ROM(read only memory)、RAM(random access memory)、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリ装置、電気的、光学的、音響的又は他の形式の伝搬される信号(例えば、搬送波、赤外線信号、デジタル信号、等)、等を包含しうる。
本願明細書において「一実装」、「実装」、「例示的な実装」等への参照は、記載された実装が特定の機能、構造又は特徴を含むこと、しかし各実施形態が特定の機能、構造又は特徴を必ずしも含まなくてもよいことを意味する。さらに、このような記載は、必ずしも同一の実装を参照しない。さらに、特定の機能、構造又は特徴がある実施形態に関連して記載されるとき、本願明細書に明示的に記載されているか否かに拘わらず、このような機能、構造又は特徴を他の実装と組み合わせて実施することは、当業者の知識の範囲内である。
システム、装置、品物、及び方法は、次世代ビデオ符号化の予測及び符号化のためのコンテンツ適応型パーティショニングに関連して以下に記載される。
上述のように、良好なディスプレイが利用可能になったことにより増え続けるビデオの解像度及び高ビデオ品質の期待に伴い、早期のMPEG標準及びより最近のH.264/AVC標準のような既存のビデオ符号化標準を用いる対応する必要ビットレート/帯域幅は、比較的高くなっている。実際に、H.264/AVCはより高い解像度のビデオアプリケーションを展開するために十分高い圧縮を提供しないとされていたので、新標準(HEVC)の開発が必須であると思われた。
H.264/AVC符号化標準は、過去のMPEG標準に渡り改良を示しながらも、依然として限定的である。例えば、現行のHEVC標準は以下の制限を有する。1).(1)可能な予測パーティション及び符号化パーティションについての選択が非常に限られている。(2)可能な複数参照、及び予測生成が非常に限られている。(3)変換ブロックサイズ、及び利用可能な実際の変換が非常に限られている。(4)符号化アーティファクトを低減するメカニズム(デブロッキングのみ)が非常に限られている。(5)オーバヘッドデータ(モード、動きベクトル等)のためのエントロピー符号化技術が効率的ではない。H.264のような従来の標準の前述の制限は、これらの制限を解決するために反復的アプローチを用いるHEVCでの現行の作業により認識されている。
以下に詳細に議論するように、本開示は、NGV(Next Generation Video)コーデックプロジェクトの文脈で展開され、装置に実装するのに十分に実用的でありながら、達成可能な圧縮効率を最大化する高機能ビデオコーデックを設計する一般的問題を解決する。H.264のような従来の標準の前述の制限は、本開示により説明されるNGVビデオ符号化システムにより用いられるアプローチとは対照的に、これらの制限を解決するために反復的アプローチを用いるHEVCでの現行の作業により認識されている。
NGVビデオ符号化は、より高い圧縮を達成するためにビデオ符号化処理に重要コンテンツに基づく適応を組み込むので、標準に基づくアプローチと異なる。比較すると、標準に基づくビデオ符号化アプローチは、通常、レガシアプローチの適応及び微調整により、より高い利益を捻出する傾向がある。例えば、全ての標準に基づくアプローチは、利益を達成するために、予測差を低減する主要手段として動き補償されたインターフレーム符号化の適応及び更なる調整に大きく依存する。他方で、NGVは、動きに起因するフレーム間差分を活用することに加えて、標準的なビデオシーンの中に自然に存在する他の種類のフレーム間差分(利得、ブラー、整合性(registration))も活用する。
本願明細書で用いられるとき、用語「符号器」は、エンコーダ及び/又はデコーダを表し得る。同様に、本願明細書で用いられるとき、用語「符号化」は、エンコーダによるビデオエンコードの実行、及び/又はデコーダによるビデオデコードの実行を表し得る。例えば、ビデオエンコーダ及びビデオデコーダは、両方とも、ビデオデータを符号化できる符号器の例である。さらに、本願明細書で用いられるとき、用語「コーデック」は、例えばエンコーダ及び/又はデコーダを実装し得るソフトウェア、ファームウェア、及び/又はハードウェアの任意の組合せのような、任意のプロセス、プログラム又は動作セットを表し得る。さらに、本願明細書で用いられるとき、表現「ビデオデータ」は、ビデオ符号化に関連する任意の種類のデータ、例えばビデオフレーム、画像データ、エンコードされたビットストリームデータ、等を表し得る。
図1Aは、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオエンコーダ100の説明図である。図示のように、エンコーダ100は、入力ビデオ101を受信しても良い。入力ビデオ101は、例えばビデオシーケンスの入力フレームのような、エンコードのための任意の適切な入力ビデオを有しても良い。図示のように、入力ビデオ101は、コンテンツ事前分析モジュール102により受信されても良い。コンテンツ事前分析モジュール102は、ビデオ符号化効率及び速度性能を向上するための様々な種類のパラメータを決定するために、入力ビデオ101のビデオフレームの内容の分析を実行するよう構成されても良い。例えば、コンテンツ事前分析モジュール102は、水平及び垂直勾配情報(例えば、Rs、Cs)、変化、ピクチャ当たりの空間複雑度、ピクチャ当たりの時間複雑度、シーン変化検出、動き範囲推定、利得検出、予測距離推定、オブジェクト数推定、領域境界検出、空間複雑度マップ計算、焦点推定、フィルム粒状推定、等を決定しても良い。コンテンツ事前分析モジュール102により生成されたパラメータは、エンコーダ100により(例えば、エンコード制御部103により)用いられ、及び/又は量子化されてデコーダへ伝達されても良い。図示のように、ビデオフレーム及び/又は他のデータは、コンテンツ事前分析モジュール102から適応型ピクチャ編成モジュール104へ送信されても良い。適応型ピクチャ編成モジュール104は、各ビデオフレームのピクチャ種類(例えば、I−、P−、又はF/B−ピクチャ)を決定し、必要に応じてビデオフレームを並べ替えても良い。幾つかの例では、適応型ピクチャ編成モジュール104は、フレーム部分を生成するよう構成されるフレーム部分生成器を有しても良い。幾つかの例では、コンテンツ事前分析モジュール102及び適応型ピクチャ編成モジュール104は、一緒に、エンコーダ100の事前分析サブシステムと考えられても良い。
図示のように、ビデオフレーム及び/又は他のデータは、適応型ピクチャ編成モジュール104から予測パーティション生成モジュール105へ送信されても良い。幾つかの例では、予測パーティション生成モジュール105は、フレーム又はピクチャをタイル又はスーパーフラグメント又は類似のものに分割しても良い。幾つかの例では、(例えば、モジュール104と105の間の)追加モジュールは、フレーム又はピクチャのタイル又はスーパーフラグメントへの分割を提供されても良い。予測パーティション生成モジュール105は、各タイル又はスーパーフラグメントを可能な予測パーティショニング又はパーティションに分割しても良い。幾つかの例では、可能な予測パーティショニングは、例えばkd木パーティショニング技術、bi木パーティショニング技術、又は類似のもののようなパーティショニング技術を用いて決定されても良く、一方で、個々のビデオフレームのピクチャ種類(例えば、I−、P−、又はF/B−ピクチャ)、パーティショニングされるフレーム部分の特性、又は類似のものに基づき決定されても良い。幾つかの例では、決定された可能な予測パーティショニングは、予測(例えば、インター又はイントラ予測)のためのパーティションであっても良く、予測パーティション又は予測ブロック等として記載され得る。
幾つかの例では、選択される予測パーティショニング(例えば、予測パーティション)は、可能な予測パーティショニングから決定されても良い。例えば、選択される予測パーティショニングは、可能な予測パーティショニング毎に、多参照予測又はイントラ予測に基づく特性及び動きを用いた予測を決定すること、及び予測パラメータを決定することに基づいても良い。可能な予測パーティショニング毎に、可能な予測誤差は、元のピクセルと予測ピクセルとの差分を取ることにより決定されても良く、選択された予測パーティショニングは、最小予測誤差を有する可能な予測パーティショニングであっても良い。他の例では、選択される予測パーティショニングは、パーティショニングを符号化するビット数に基づく重みスコア及び予測パーティショニングに関連する予測誤差を含むレート歪み最適化に基づき決定されても良い。
図示のように、選択される予測パーティショニングの元のピクセル(例えば、現在フレームの予測パーティション)は、差分器106において、予測パーティション(例えば、1又は複数の参照フレーム及びインター又はイントラ予測データのような他の予測データに基づく現在フレームの予測パーティションの予測)との差分を取られても良い。予測パーティションの決定は、以下に詳述され、図1Aに示すようにデコードループを含んでも良い。差分操作からの残差又は残差データ(例えば、パーティション予測誤差データ)は、符号化パーティション生成モジュール107へ送信されても良い。幾つかの例では、任意のピクチャ種類(I−、F/B−、又はP−ピクチャ)における予測パーティションのイントラ予測の場合のように、符号化パーティション生成モジュール107は、スイッチ107a及び107bを介して迂回されても良い。このような例では、単一レベルのパーティショニングのみが実行されても良い。このようなパーティショニングは、予測パーティショニング(上述した)又は符号化パーティショニング又はそれらの両者として記載されても良い。種々の例では、このようなパーティショニングは、予測パーティション生成モジュール105(上述した)により実行されても良い。或いは、本願明細書で更に議論されるように、このようなパーティショニングは、符号化パーティション生成モジュール107により実装されるkd木イントラ予測/符号化パーティショナモジュール又はbi木イントラ予測/符号化パーティショナモジュールにより実行されても良い。
幾つかの例では、パーティション予測誤差データは、場合によっては、エンコードを保証するために十分でなくても良い。パーティション予測誤差データを符号化することが望ましく及びパーティション予測誤差データがインター予測等に関連する他の例では、符号化パーティション生成モジュール107は、予測パーティションの符号化パーティションを決定しても良い。幾つかの例では、パーティションは符号化パーティショニングを有しないで(例えば、スイッチ107a及び107bを介して利用可能な迂回経路により示されるように)エンコードされ得るので、符号化パーティション生成モジュール107は、必要なくても良い。符号化パーティショニングを有し又は有しないで、パーティション予測誤差データ(後に、どちらの場合にも符号化パーティションとして記載され得る)は、残差又は残差データがエンコードを必要とする場合に、適応変換モジュール108へ送信されても良い。幾つかの例では、予測パーティション生成モジュール105及び符号化パーティション生成モジュール107は、一緒に、エンコーダ100のパーティショナサブシステムと考えられる。種々の例では、符号化パーティション生成モジュール107は、パーティション予測誤差データ、元のピクセルデータ、残差データ、又はウェーブレットデータに作用しても良い。
符号化パーティション生成モジュール107は、例えば、bi木及び/又はkd木パーティショニング技術等を用いてパーティション予測誤差データの可能な符号化パーティショニング(例えば、符号化パーティション)を生成しても良い。幾つかの例では、可能な符号化パーティションは、適応型変換モジュール108により種々のブロックサイズで適応型又は固定変換を用いて変換されても良い。或いは、選択された符号化パーティショニング及び選択された変換(例えば、適応型又は固定)は、レート歪み最適化又は他の基準に基づき決定されても良い。幾つかの例では、選択された符号化パーティショニング及び/又は選択された変換は、符号化パーティションサイズ等に基づき、所定の選択方法に基づき決定されても良い。
例えば、適応型変換モジュール108は、小サイズブロックから中サイズブロックの局所的最適変換符号化を可能にするためにパラメータ変換を実行するための第1の部分又はコンポーネントと、パラメータ変換又は本願明細書で更に議論されるような他の構成を含む種々の変換から離散コサイン変換(discrete cosine transform:DCT)又はピクチャに基づく変換のような固定変換を用いて全体的な安定した小オーバーヘッド変換符号化を実行するための第2の部分又はコンポーネントと、を有しても良い。幾つかの例では、本願明細書に更に議論されるように、局所的最適変換符号化では、パラメータHaar変換(Parametric Haar Transform:PHT)が実行されても良い。幾つかの例では、変換は、約4x4ピクセル及び64x64ピクセルの間の方形サイズの2Dブロックに対して実行されても良い。実際のサイズは、変換データがルマ又はクロマ、インター又はイントラであるか、使用される決定された変換がPHT又はDCT等であるか、のような多数の要因に依存する。
図示のように、結果として生じる変換係数は、適応型量子化モジュール109へ送信されても良い。適応型量子化モジュール109は、結果として生じる変換係数を量子化しても良い。さらに、パラメータ変換に関連する任意のデータは、必要に応じて、適応型量子化モジュール109(量子化が望ましい場合)又は適応型エントロピーエンコーダモジュール110へ送信されても良い。図1Aに示すように、量子化された係数は、スキャンされ、適応型エントロピーエンコーダモジュール110へ送信されても良い。適応型エントロピーエンコーダモジュール110は、量子化された係数をエントロピーエンコードし、それらを出力ビットストリーム111に含めても良い。幾つかの例では、適応型変換モジュール108及び適応型量子化モジュール109は、一緒に、エンコーダ100の変換エンコーダサブシステムとして考えられる。
図1Aに示すように、エンコーダ100は、ローカルデコードループを有する。ローカルデコードループは、適応型逆量子化モジュール112において開始しても良い。適応型逆量子化モジュール112は、適応型量子化モジュール109の反対の動作を実行するよう構成されても良い。したがって、逆スキャンが実行され、変換係数を決定するために量子化された係数は逆スケーリングされる。例えば、このような適応型量子化動作は、不可逆であっても良い。図示のように、変換係数は、適応型逆変換モジュール113へ送信されても良い。適応型逆変換モジュール113は、適応型変換モジュール108により実行されたような逆変換を実行して、例えば、符号化パーティションに関連する残差又は残差値又はパーティション予測誤差データ(又は議論したような元のデータ又はウェーブレットデータ)を生成しても良い。幾つかの例では、適応型逆量子化モジュール112及び適応型逆変換モジュール113は、一緒に、エンコーダ100の変換デコーダサブシステムとして考えられる。
図示のように、パーティション予測誤差データ(等)は、任意の符号化パーティションアセンブラ114へ送信されても良い。符号化パーティションアセンブラ114は、必要に応じて、符号化パーティションをデコードされた予測パーティションに組み立て(図示のように、幾つかの例では、符号化パーティションアセンブラ114は、スイッチ114a及び114bを介してスキップされ、デコードされた予測パーティションが適合型逆変換モジュール113において生成されるようにしても良い)、予測誤差データの予測パーティション又はデコードされた残差予測パーティション等を生成しても良い。
図示のように、デコードされた残差予測パーティションは、加算器115において予測されたパーティション(例えば、予測ピクセルデータ)に加算されて、再構成済み予測パーティションを生成しても良い。再構成済み予測パーティションは、予測パーティションアセンブラ116へ送信されても良い。予測パーティションアセンブラ116は、再構成済み予測パーティションを組み立てて、再構成済みタイル又はスーパーフラグメントを生成しても良い。幾つかの例では、符号化パーティションアセンブラモジュール114及び予測パーティションアセンブラモジュール116は、一緒に、エンコーダ100のアップパーティショナサブシステムと考えられる。
再構成済みタイル又はスーパーフラグメントは、ブロッキネス(blockiness)分析及びデブロックフィルタリングモジュール117へ送信されても良い。ブロッキネス分析及びデブロックフィルタリングモジュール117は、再構成済みタイル又はスーパーフラグメント(又はタイル若しくはスーパーフラグメントの予測パーティション)をデブロッキング及びディザリングしても良い。生成されたデブロック及びディザフィルタパラメータは、例えば、現在フィルタ動作のために用いられても良く、及び/又はデコーダによる使用のために出力ビットストリーム111の中に符号化されても良い。ブロッキネス分析及びデブロックフィルタリングモジュール117の出力は、品質分析及び品質復元フィルタリングモジュール118へ送信されても良い。品質分析及び品質復元フィルタリングモジュール118は、(例えば、QR分解のための)QRフィルタリングパラメータを決定し、決定したパラメータをフィルタリングのために使用しても良い。QRフィルタリングパラメータは、デコーダによる使用のために出力ビットストリーム111の中に符号化されても良い。図示のように、品質分析及び品質復元フィルタリングモジュール118の出力は、デコード済みピクチャバッファ119へ送信されても良い。幾つかの例では、品質分析及び品質復元フィルタリングモジュール118の出力は、他のフレームを符号化するための予測に用いられ得る最終再構成済みフレームであっても良い(例えば、最終再構成済みフレームは、参照フレーム等であっても良い)。幾つかの例では、ブロッキネス分析及びデブロックフィルタリングモジュール117及び品質分析及び品質復元フィルタリングモジュール118は、一緒に、エンコーダ100のフィルタリングサブシステムと考えられる。
エンコーダ100では、予測動作は、インター及び/又はイントラ予測を含み得る。図1Aに示すように、インター予測は、モーフィング分析及びモーフィング済みピクチャ生成モジュール120、合成分析及び生成モジュール121、及び特性及び動きフィルタリング予測モジュール123を有する1又は複数のモジュールにより実行されても良い。モーフィング分析及びモーフィング済みピクチャ生成モジュール120は、現在ピクチャを分析して、符号化され得る1又は複数の参照フレームに対する、利得の変化、支配的な動きの変化、整合性の変化、及びブラーの変化についてのパラメータを決定しても良い。決定されたモーフィングパラメータは、量子化/逆量子化され、現在フレームの効率的動き(及び特性)補償予測のために動きベクトルを計算する動き推定モジュール122により使用され得るモーフィング参照フレームを生成するために(例えば、モーフィング分析及びモーフィング済みピクチャ生成モジュール120により)使用されても良い。合成分析及び生成モジュール121は、超解像度(super resolution:SR)ピクチャ及び投影補間(projected interpolation:PI)ピクチャ等における効率的動き補償予測のための動きベクトルを決定する動きについて、これらのピクチャを生成しても良い。
動き推定モジュール122は、現在フレームと一緒に、モーフィング参照フレーム及び/又は超解像度(SR)ピクチャ及び投影補間(PI)ピクチャに基づき、動きベクトルデータを生成しても良い。幾つかの例では、動き推定モジュール122は、インター予測モジュールと考えられても良い。例えば、動きベクトルデータは、インター予測に用いられても良い。インター予測が適用される場合、特性及び動き補償フィルタリング予測モジュール123は、議論されるようにローカルデコードの部分として動き補償を適用しても良い。
イントラ予測は、イントラ方向予測分析及び予測生成モジュール124により実行されても良い。イントラ方向予測分析及び予測生成モジュール124は、空間方向予測を実行するよう構成されても良く、デコードされた近隣パーティションを用いても良い。幾つかの例では、方向の決定及び予測の生成の両方は、イントラ方向予測分析及び予測生成モジュール124により実行されても良い。幾つかの例では、イントラ方向予測分析及び予測生成モジュール124は、イントラ予測モジュールと考えられる。
図1Aに示すように、予測モード及び参照種類分析モジュール125は、タイル(又はスーパーフラグメント)の予測パーティション毎に、「スキップ」、「自動」、「インター」、「スプリット」、「マルチ」、「イントラ」の中から予測モードの選択を可能にしても良い。これらの全ては、P−及びF/Bピクチャに適用できる。予測モードに加えて、「インター」又は「マルチ」モード、並びにP−及びF/B−ピクチャかに依存して異なり得る参照種類の選択も可能にする。予測モード及び参照種類分析モジュール125の出力における予測信号は、予測分析及び予測統合フィルタリングモジュール126によりフィルタリングされても良い。予測分析及び予測統合フィルタリングモジュール126は、フィルタリングに使用するパラメータ(例えば、フィルタリング係数、周波数、オーバーヘッド)を決定しても良く、フィルタリングを実行しても良い。幾つかの例では、予測信号のフィルタリングは、異なるモード(例えば、イントラ、インター、マルチ、スプリット、スキップ、及び自動)を表す異なる種類の信号を統合しても良い。幾つかの例では、イントラ予測信号は、全ての他の種類のインター予測信号と異なっても良い。したがって、正しいフィルタリングは、通常、符号化効率を向上できる。幾つかの例では、フィルタリングパラメータは、デコーダによる使用のために出力ビットストリーム111の中に符号化されても良い。フィルタ済み予測信号は、先に議論した符号化のための予測差分信号(例えば、パーティション予測誤差)を決定し得る、上述の差分器106に第2の入力(例えば、予測パーティション)を供給しても良い。さらに、同じフィルタ済み予測信号は、上述の加算器115に第2の入力を供給しても良い。上述のように、出力ビットストリーム111は、ビデオの提示のためのデコーダによる使用のために効率的にエンコードされたビットストリームを提供しても良い。
図1Bは、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオエンコーダ100bの説明図である。図1Bは、図1Aに示したものと類似のエンコーダを示し、簡単のために同様の要素は繰り返されない。図1Bに示すように、エンコーダ100bは、モーフィング分析及びモーフィング済みピクチャ生成モジュール120bと、合成分析及び生成モジュール121bと、を有しても良い。この例示的な構成では、モーフィング分析及びモーフィング済みピクチャ生成モジュール120b及び合成分析及び生成モジュール121bは、適応型ピクチャ編成器104からの出力を受信しても良い。モーフィング分析及びモーフィング済みピクチャ生成モジュール120b及び合成分析及び生成モジュール121bの動作は、ローカルデコードループの中で生じないという点において、モーフィング分析及びモーフィング済みピクチャ生成モジュール120b及び合成分析及び生成モジュール121bは、「ループの外」と考えられる。逆に、モーフィング分析及びモーフィング済みピクチャ生成モジュール120及び合成分析及び生成モジュール121の動作は、ローカルデコードループの中で生じるという点において、モーフィング分析及びモーフィング済みピクチャ生成モジュール120及び合成分析及び生成モジュール121は、「ループの中」と考えられる。
図1Aに戻ると、エンコーダ100は、図1Bのエンコーダ100bと僅かに異なる。図示の例の1つの特徴は、モーフィング分析及びモーフィング済みピクチャ生成モジュール120の特定の位置、及び合成分析及び合成ピクチャ生成モジュール121の位置である。図1Aでは、これらの動作は、予測ループの中に示され、モーフィングパラメータ生成又は合成パラメータ生成のために必要な分析は、図1Bに示すような元のフレームにではなく、デコードされたピクチャに対して実行されても良い。したがってモーフィング及び合成パラメータ生成構造は良好な結果を提供するが、分析はデコードされたピクチャに基づき、元のフレームに対して行うことができないので、幾らかの遅延を犠牲にする。
図2は、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオデコーダ200の説明図である。図示のように、デコーダ200は、入力ビットストリーム201を受信しても良い。幾つかの例では、入力ビットストリーム201は、エンコーダ100により及び/又は本願明細書で議論するエンコード技術によりエンコードされても良い。図示のように、入力ビットストリーム201は、適応型エントロピーデコーダモジュール202により受信されても良い。適応型エントロピーデコーダモジュール202は、様々な種類のエンコード済みデータ(例えば、オーバーヘッド、動きベクトル、変換係数、等)をデコードしても良い。幾つかの例では、適応型エントロピーデコーダ202は、可変長デコード技術を用いても良い。幾つかの例では、適応型エントロピーデコーダ202は、上述の適応型エントロピーエンコーダ110の逆の動作を実行しても良い。
デコード済みデータは、適応型逆量子化モジュール203へ送信されても良い。適応型逆量子化モジュール203は、量子化係数を逆スキャンし逆スケーリングして、変換係数を決定するよう構成されても良い。例えば、このような適応型量子化動作は、不可逆であっても良い。幾つかの例では、適応型逆量子化モジュール203は、適応型量子化モジュール109の反対の動作(例えば、適応型逆量子化モジュール112と実質的に同じ動作)を実行するよう構成されても良い。図示のように、変換係数(及び、幾つかの例では、パラメータ変換で使用する変換データ)は、適応型逆変換モジュール204へ送信されても良い。適応型逆変換モジュール204は、変換係数に対して逆変換を実行して、符号化パーティションに関連する残差又は残差値又はパーティション予測誤差データ(又は元のデータ又はウェーブレットデータ)を生成しても良い。幾つかの例では、適応型逆変換モジュール204は、適応型変換モジュール108の反対の動作(例えば、適応型逆変換モジュール113と実質的に同じ動作)を実行するよう構成されても良い。幾つかの例では、適応型逆変換モジュール204は、例えばデコード済み近隣パーティションのような他の前のデコード済みデータに基づき、逆変換を実行しても良い。幾つかの例では、適応型逆量子化モジュール203及び適応型逆変換モジュール204は、一緒に、デコーダ200の変換デコーダサブシステムとして考えられる。
図示のように、残差又は残差値又はパーティション予測誤差データは、符号化パーティションアセンブラ205へ送信されても良い。符号化パーティションアセンブラ205は、必要に応じて、符号化パーティションをデコード済み予測パーティションにアセンブルしても良い(図示のように、幾つかの例では、符号化パーティションアセンブラ205は、スイッチ205a及び205bを介してスキップされ、符号化予測パーティションが適応型逆変換モジュール204において生成されるようにしても良い)。予測誤差データのデコード済み予測パーティション(例えば、予測パーティション残差)は、再構成済み予測パーティションを生成するために、加算器206において予測パーティション(例えば、予測ピクセルデータ)に加算されても良い。再構成済み予測パーティションは、予測パーティションアセンブラ207へ送信されても良い。予測パーティションアセンブラ207は、再構成済み予測パーティションをアセンブルして、再構成済みタイル又はスーパーフラグメントを生成しても良い。幾つかの例では、符号化パーティションアセンブラモジュール205及び予測パーティションアセンブラモジュール207は、一緒に、デコーダ200のアップパーティショナサブシステムと考えられる。
再構成済みタイル又はスーパーフラグメントは、デブロックフィルタリングモジュール208へ送信されても良い。デブロックフィルタリングモジュール208は、再構成済みタイル又はスーパーフラグメント(又はタイル若しくはスーパーフラグメントの予測パーティション)をデブロッキング及びディザリングしても良い。生成されるデブロック及びディザリングフィルタパラメータは、例えば、入力ビットストリーム201から決定されても良い。デブロックフィルタリングモジュール208の出力は、品質復元フィルタリングモジュール209へ送信されても良い。品質復元フィルタリングモジュール209は、例えば入力ビットストリーム201から決定され得るQRパラメータに基づき品質フィルタリングを適用しても良い。図2に示すように、品質分析及び品質復元フィルタリングモジュール209の出力は、デコード済みピクチャバッファ210へ送信されても良い。幾つかの例では、品質復元フィルタリングモジュール209の出力は、他のフレームを符号化するための予測に用いられ得る最終再構成済みフレームであっても良い(例えば、最終再構成済みフレームは、参照フレーム等であっても良い)。幾つかの例では、デブロックフィルタリングモジュール208及び品質復元フィルタリングモジュール209は、一緒に、デコーダ200のフィルタリングサブシステムと考えられる。
議論したように、予測動作による補償は、インター及び/又はイントラ予測補償を含んでも良い。図示のように、インター予測補償は、モーフィング済みピクチャ生成モジュール211、合成ピクチャ生成モジュール212、及び特性及び動き補償済みフィルタリング予測モジュール213を含む1又は複数のモジュールにより実行されても良い。モーフィング済みピクチャ生成モジュール211は、(例えば、入力ビットストリーム201から決定される)逆量子化済みモーフィングパラメータを用いて、モーフィング済み参照フレームを生成しても良い。合成ピクチャ生成モジュール212は、入力ビットストリーム201から決定されたパラメータに基づき、超解像度(SR)ピクチャ及び投影補間(PI)ピクチャ等を生成しても良い。インター予測が適用される場合、特性及び動き補償済みフィルタリング予測モジュール213は、入力ビットストリーム201の中で受信したフレーム及び動きベクトルデータ等に基づき動き補償を適用しても良い。
イントラ予測補償は、イントラ方向予測生成モジュール214により実行されても良い。イントラ方向予測生成モジュール214は、空間方向予測を実行するよう構成されても良く、入力ビットストリーム201の中のイントラ予測データに従ってデコードされた近隣パーティションを用いても良い。
図2に示すように、予測モード選択モジュール215は、入力ビットストリーム201の中のモード選択データに基づき、全ての予測方向がP−及びF/B−ピクチャに適用し得る1つのタイルの各予測方向について、「スキップ」、「自動」、「インター」、「マルチ」、及び「イントラ」の中から予測モード選択を決定しても良い。予測モードに加えて、「インター」又は「マルチ」モード、並びにP−及びF/B−ピクチャかに依存して異なり得る参照種類の選択も可能にする。予測モード選択モジュール215の出力における予測信号は、予測統合フィルタリングモジュール216によりフィルタリングされても良い。予測統合フィルタリングモジュール216は、入力ビットストリーム201により決定されたパラメータ(例えば、フィルタリング係数、周波数、オーバーヘッド)に基づきフィルタリングを実行しても良い。幾つかの例では、予測信号のフィルタリングは、異なるモード(例えば、イントラ、インター、マルチ、スキップ、及び自動)を表す異なる種類の信号を統合しても良い。幾つかの例では、イントラ予測信号は、全ての他の種類のインター予測信号と異なっても良い。したがって、正しいフィルタリングは、通常、符号化効率を向上できる。フィルタ済み予測信号は、上述のように、第2の入力(例えば、予測パーティション)を差分器206に供給しても良い。
上述のように、品質復元フィルタリングモジュール209の出力は、最終再構成済みフレームであっても良い。最終再構成済みフレームは、適応型ピクチャ再編成器217へ送信されても良い。適応型ピクチャ再編成器217は、必要に応じて、入力ビットストリーム201の中の並べ替えパラメータに基づきフレームを並べ替え又は再編成しても良い。並べ替えられたフレームは、コンテンツ事後復元モジュール218へ送信されても良い。コンテンツ事後復元モジュール218は、デコード済みビデオの知覚的品質の更なる改善を実行するよう構成される任意的モジュールであっても良い。改善処理は、入力ビットストリーム201の中の品質改善パラメータに応答して実行されても良く、或いは、独立型動作として実行されても良い。幾つかの例では、コンテンツ事後復元モジュール218は、(例えば、デブロックフィルタリングモジュール208に関して議論したデブロッキング動作の後でも)例えばフィルム粒状ノイズの推定、残差ブロッキネス低減のような品質を向上するためにパラメータを適用しても良い。図示のように、デコーダ200は、ディスプレイ装置(図示しない)による表示のために構成されても良い表示ビデオ219を供給しても良い。
上述のように、幾つかの例では、エンコーダ100及び/又はデコーダ200は、次世代ビデオ符号化の予測及び符号化のためのコンテンツ適応型パーティショニングに関連する技術を実施しても良い。幾つかの例では、予測のためのコンテンツ適応型パーティショニングは、エンコーダ100の予測パーティション生成モジュール105により実行されても良い。幾つかの例では、符号化のためのコンテンツ適応型パーティショニングは、エンコーダ100の符号化パーティション生成モジュール107により実行されても良い。幾つかの例では、インター予測等の予測のためのコンテンツ適応型パーティショニングは、予測パーティション生成モジュール105により実行されても良い。並びに、インター予測等の符号化のためのコンテンツ適応型パーティショニングは、エンコーダ100の符号化パーティション生成モジュール107により実行されても良い。幾つかの例では、予測/符号化のためのコンテンツ適応型パーティショニング(例えば、1レイヤのみのパーティショニング)は、エンコーダ100の予測パーティション生成モジュール105又は符号化パーティション生成モジュール107により実行されても良い。さらに、幾つかの例では、エンコードされた予測パーティショニング及び/又は符号化パーティショニングに基づき、エンコーダ100の符号化パーティションアセンブラモジュール114及び/又はデコーダ200の符号化パーティションアセンブラモジュール205は、符号化パーティションをアセンブルして予測パーティションを形成しても良い。また、幾つかの例では、エンコーダ100の予測パーティションアセンブラ116及び/又はデコーダ200の予測パーティションアセンブラ207は、再編成済み予測パーティションをアセンブルして、タイル、スーパーフラグメントを形成しても良い。タイル、スーパーフラグメントは、フレーム若しくはピクチャを生成するためにアセンブルされても良い。上述のように、種々の予測パーティション、符号化パーティション、又はタイル若しくはスーパーフラグメントは、本願明細書で議論されるように、インター予測、イントラ予測、他の符号化効率向上、又は画像若しくはビデオ向上のために用いられても良い。
図1及び2は特定のエンコード及びデコードモジュールを示すが、図示しない種々の他の符号化モジュール又はコンポーネントも本開示に従って利用できる。さらに、本開示は、図1及び2に示した特定のコンポーネントに及び/又は種々のコンポーネントが配置される方法に限定されない。本願明細書に記載のシステムの種々のコンポーネントは、ソフトウェア、ファームウェア及び/又はハードウェア、及び/又はそれらの任意の組合せで実装されても良い。例えば、エンコーダ100及び/又はデコーダ200の種々のコンポーネントは、少なくとも部分的に、例えば携帯電話機のようなコンピューティングシステムに見られるコンピューティングSoC(System-on-a-Chip)のハードウェアにより設けられても良い。
さらに、エンコーダ100は例えばビデオコンテンツサーバシステムを含むコンテンツプロバイダシステムに関連付けられ及び/又はそれにより設けられること、出力ビットストリーム111は例えば図1及び2に示されない通信機、アンテナ、ネットワークシステム、等のような種々の通信コンポーネント及び/又はシステムによりデコーダ200のようなデコーダへ送信され又は伝達されても良いことが分かる。また、デコーダ200は、エンコーダ100から離れており且つ図1及び2に示されない通信機、アンテナ、ネットワークシステム等のような種々の通信コンポーネント及び/又はシステムを介して入力ビットストリームを受信するコンピューティング装置(例えば、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、コンバーチブルラップトップ、携帯電話機、等)のようなクライアントシステムに関連付けられても良いことが分かる。したがって、種々の実装において、エンコーダ100及びデコーダサブシステム200は、一緒に又は互いに独立して実装されても良い。
図3は、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオエンコーダ300の説明図である。ビデオエンコーダ300が図1Aのビデオエンコーダ100と類似している限り、簡単のために同様の要素の議論は繰り返されない。図3は、ビデオエンコーダ300の動作に関連する例示的な制御信号を示す。ここで、以下の略語は、関連情報を表し得る。
scnchg:シーン変化情報
Spcpx:空間複雑性情報
tpcpx:時間複雑性情報
pdist:時間予測距離情報
pap:事前分析パラメータ(scnchg、spcpx、tpcpx、pdistを除く全ての他の事前分析パラメータの代替物)
ptyp:ピクチャ種類情報
pgst:ピクチャグループ構造情報
pptncand.:予測パーティショニング候補
cptncand.:符号化パーティショニング候補
prp:前処理
xmtyp:変換種類情報
xmdir:変換方向情報
xmmod:変換モード
ethp:8分の1(1/8)pel動き予測
pptn:予測パーティショニング
cptn:符号化パーティショニング
mot&cod cost:動き及び符号化コスト
qs:量子化情報セット(量子化パラメータ(Qp)、量子行列(QM)選択を含む)
mv:動きベクトル
mop:モーフィングパラメータ
syp:合成パラメータ
ddi:デブロック及びディザ情報
qri:品質復元フィルタリングインデックス/情報
api:適応型精密フィルタリングインデックス/情報
fii:統合フィルタリングインデックス/情報
mod:モード情報
reftyp:参照種類情報
idir:イントラ予測方向
これらの制御信号は図3のエンコーダの特定の例示的な機能モジュールに関連して示されるが、他の実装は、エンコーダ300の機能モジュール間の制御信号の異なる配信を有しても良い。本開示はこれに関して限定されず、種々の例において、本願明細書における制御信号の実装は、図示の特定の例示的な制御信号の一部のみ、追加制御信号、及び/又は図示と異なる配置の取り組みを有しても良い。
図4は、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオデコーダ400の説明図である。ビデオデコーダ400が図2のビデオデコーダ200と類似している限り、簡単のために同様の要素の議論は繰り返されない。図4は、ビデオデコーダ400の動作に関連する例示的な制御信号を示す。ここで、示される略語は、図3に関して上述したのと同様の情報を表し得る。
これらの制御信号は図4のデコーダ400の特定の例示的な機能モジュールに関連して示されるが、他の実装は、デコーダ400の機能モジュール間の制御信号の異なる配信を有しても良い。本開示はこれに関して限定されず、種々の例において、本願明細書における制御信号の実装は、図示の特定の例示的な制御信号の一部のみ、追加制御信号、及び/又は図示と異なる配置の取り組みを有しても良い。
図5Aは、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオエンコーダ500aの説明図である。図5Aは、図1A及び1Bに示したものと類似のエンコーダを示し、簡単のために同様の要素は繰り返されない。図5Aに示すように、エンコーダ500aは、事前分析サブシステム510a、パーティショナサブシステム520a、予測エンコードサブシステム530a、変換エンコーダサブシステム540a、フィルタリングエンコードサブシステム550a、エントロピーエンコーダシステム560a、変換デコーダサブシステム570a、及び/又は逆パーティショナサブシステム580a、を有しても良い。事前分析サブシステム510aは、コンテンツ事前分析モジュール102及び/又は適応型ピクチャ編成モジュール104を有しても良い。パーティショナサブシステム520aは、予測パーティション生成モジュール105、及び/又は符号化パーティション生成器107を有しても良い。予測エンコードサブシステム530aは、動き推定モジュール122、特性及び動き補償済みフィルタリング予測モジュール123、及び/又はイントラ方向予測分析及び予測生成モジュール124を有しても良い。変換エンコーダサブシステム540aは、適応型変換モジュール108、及び/又は適応型量子化モジュール109を有しても良い。フィルタリングエンコードサブシステム550aは、ブロッキネス分析及びデブロックフィルタリングモジュール122、品質分析及び品質復元フィルタリングモジュール118、動き推定モジュール122、特性及び動き補償済みフィルタリング予測モジュール123、及び/又は予測分析及び予測統合フィルタリングモジュール126を有しても良い。エントロピー符号化サブシステム560aは、適応型エントロピーエンコーダモジュール110を有しても良い。変換デコーダサブシステム570aは、適応型逆量子化モジュール112、及び/又は適応型逆変換モジュール113を有しても良い。逆パーティショナサブシステム580aは、符号化パーティションアセンブラ114、及び/又は予測パーティションアセンブラ116を有しても良い。
エンコーダ500aのパーティショナサブシステム520aは、2つのパーティショニングサブシステムを有しても良い。つまり、予測のために分析及びパーティショニングを実行し得る予測パーティション生成モジュール105、及び符号化のために分析及びパーティショニングを実行し得る符号化パーティション生成モジュール107である。別のパーティショニング方法は、ピクチャを領域又はスライスにセグメント化し得る適応型ピクチャ編成器104を有しても良い。これも、任意で、このパーティショナの部分であると考えられる。
エンコーダ500aの予測エンコーダサブシステム530aは、動き推定器122、及び「インター」信号の分析及び予測を実行し得る特性及び動き補償済みフィルタリング予測器123、「イントラ」信号の分析及び予測を実行し得るイントラ方向予測分析及び予測生成モジュール124、を有しても良い。動き推定器122及び特徴及び動き補償済みフィルタリング予測器123は、先ず(利得、大局的動き、整合性のような)他の差異源を補償し、次に実際の動き補償をすることにより、予測可能性を増大させ得る。それらは、良好な予測を可能にし得る合成フレーム(超解像度、及び投影)を生成するためにデータモデル化の使用、次に該フレームにおける実際の動き補償の使用を可能にする。
エンコーダ500aの変換エンコーダサブシステム540aは、変換の種類及びサイズを選択するために分析を実行しても良く、主な2種類のコンポーネントを有しても良い。第1の種類のコンポーネントは、符号化のような小乃至中サイズブロックの局所最適変換符号化を可能にするためにパラメータ変換の使用を可能にするが、これは幾らかのオーバーヘッドを必要とし得る。第2の種類のコンポーネントは、DCTのような汎用/固定変換、又はパラメータ変換を含む少数の変換の選択からピクチャに基づく変換を用いて全体的に安定した低オーバーヘッド符号化を可能にする。局所的適応型変換符号化では、PHT(Parametric Haar Transform)が用いられても良い。変換は、4x4及び64x64の間の方形サイズの2Dブロックに対して実行されても良い。ここで、実際のサイズは、変換されるデータがルマかクロマか、インターかイントラか、及び使用される変換がPHTかDCTか、のような多数の要因に依存し得る。結果として生じる変換係数は、量子化され、スキャンされ、及びエントロピー符号化されても良い。
エンコーダ500aのエントロピーエンコーダサブシステム560aは、それぞれ特定種類のデータ(様々な種類のオーバーヘッド、動きベクトル、又は変換係数)を効率的に符号化することを目標として、多数の効率が良く複雑性の少ないコンポーネントを有しても良い。このサブシステムのコンポーネントは、汎用クラスの複雑性の少ない可変長符号化技術に属するが、効率的な符号化のために、各コンポーネントは最高効率のために特注に従って(custom)最適化されても良い。例えば、特注に従うソリューションは、「符号化済み/非符号化済み」データの符号化のために、別のソリューションは「モード及び参照種類」データのために、更に別のソリューションは「動きベクトル」データのために、更に別のソリューションは「予測及び符号化パーティション」データのために設計されても良い。最後に、エントロピー符号化されるべきデータの大部分は「変換係数」データなので、特定ブロックサイズの効率的な処理のための複数のアプローチは、複数の表の間で適用され得るアルゴリズムと共に、用いられても良い。
エンコーダ500aのフィルタリングエンコーダサブシステム550aは、パラメータの分析と、該パラメータに基づく再構成済みピクチャの複数のフィルタリングとを実行しても良く、複数のサブシステムを有しても良い。例えば、第1のサブシステムであるブロッキネス分析及びデブロックフィルタリングモジュール117は、潜在的なブロック符号化アーティファクトを低減又はマスクするために、デブロック及びディザしても良い。第2の例示的なサブシステムである品質分析及び品質復元フィルタリングモジュール118は、任意のビデオ符号化における量子化動作に起因するアーティファクトを低減するために、汎用品質復元を実行しても良い。第3の例示的なサブシステムは、動き推定器122及び特性及び動き補償済みフィルタリング予測モジュール123を含み、コンテンツの動き特性(動き速度/ブラーの程度)に適応するフィルタを用いることにより動き補償から生じる結果を向上し得る。第4の例示的なサブシステムである予測統合分析及びフィルタ生成モジュール126は、予測信号の適応型フィルタリングを可能にし(これは、多くの場合イントラ予測からの、予測における不要なアーティファクトを低減し得る)、それにより符号化される必要のある予測誤差を低減する。
エンコーダ500aのエンコード制御モジュール103は、所与のリソース及び所望のエンコード速度の制約下で、全体的なビデオ品質に関与する。例えば、いかなるショートカットも用いない完全なRDO(Rate Distortion Optimization)に基づく符号化では、ソフトウェアエンコードのエンコード速度は、単純に利用可能な計算リソース(プロセッサの速度、プロセッサの数、ハイパースレッド、DDR3メモリ、等)の結果であり得る。このような場合には、エンコード制御モジュール103は、実際のエンコードにより、予測パーティション及び符号化パーティションの1つ1つの組合せを入力されても良く、ビットレートは、各々の場合について再構成済み誤差と共に計算されても良く、ラグランジュ最適化式に基づき、予測及び符号化パーティションの最適セットが符号化されている各フレームの各タイル毎に送信されても良い。完全なRDOに基づくモードは、結果として最適な圧縮効率をもたらし、最も遅いエンコードモードであっても良い。コンテンツ事前分析モジュール102からのコンテンツ分析パラメータを用いることにより、及びそれらを用いてRDOを単純化する(全ての可能な場合を試さない)或いは完全なRDOを通じて特定の割合のブロックのみを渡すことにより、品質対速度のトレードオフは、より高速なエンコードを可能にし得る。ここまでに、可変ビットレート(variable bitrate:VBR)に基づくエンコーダ動作を説明した。エンコード制御モジュール103は、固定ビットレート(constant bitrate:CBR)制御された符号化の場合に呼び出すことができるレート制御部を有しても良い。
最後に、エンコーダ500aの事前分析サブシステム510aは、ビデオ符号化効率及び速度性能を向上するために有用な様々な種類のパラメータを計算するためにコンテンツの分析を実行しても良い。例えば、事前分析サブシステム510aは、水平及び垂直勾配情報(Rs、Cs)、変化、ピクチャ当たりの空間複雑度、ピクチャ当たりの時間複雑度、シーン変化検出、動き範囲推定、利得検出、予測距離推定、オブジェクト数推定、領域境界検出、空間複雑度マップ計算、焦点推定、フィルム粒状推定、等を計算しても良い。事前分析サブシステム510aにより生成されたパラメータは、エンコーダにより消費されるか、又は量子化されデコーダ200へ伝達されても良い。
サブシステム510a乃至580aは図5Aのエンコーダ500aの特定の例示的な機能モジュールに関連して示されるが、本願明細書におけるエンコーダ500aの他の実装は、サブシステム510a乃至580aの間のエンコーダ500aの機能モジュールの異なる分配を有しても良い。本開示はこれに関して限定されず、種々の例において、本願明細書における例示的なサブシステム510a乃至580aの実装は、図示の特定の例示的なエンコーダ500aの機能モジュールの一部のみ、追加機能モジュール、及び/又は図示と異なる配置の取り組みを有しても良い。
図5Bは、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオデコーダ500bの説明図である。図5Bは、図2に示したものと類似のデコーダを示し、簡単のために同様の要素は繰り返されない。図5Bに示すように、デコーダ500bは、予測デコーダサブシステム530b、フィルタリングデコーダサブシステム550b、エントロピーデコーダサブシステム560b、変換デコーダサブシステム570b、逆パーティショナ2サブシステム580b、逆パーティショナ1サブシステム551b、フィルタリングデコーダサブシステム550b、及び/又は事後復元サブシステム590bを有しても良い。予測デコーダサブシステム530bは、特性及び動き補償済みフィルタリング予測モジュール213及び/又はイントラ方向予測生成モジュール214を有しても良い。フィルタリングデコーダサブシステム550bは、デブロックフィルタリングモジュール208、品質復元フィルタリングモジュール209、特性及び動き補償済みフィルタリング予測モジュール213、及び/又は予測統合フィルタリングモジュール216を有しても良い。エントロピーデコーダサブシステム560bは、適応型エントロピーデコーダモジュール202を有しても良い。変換デコーダサブシステム570bは、適応型逆量子化モジュール203、及び/又は適応型逆変換モジュール204を有しても良い。逆パーティショナ2サブシステム580bは、符号化パーティションアセンブラ205を有しても良い。逆パーティショナ1サブシステム551bは、予測パーティションアセンブラ207を有しても良い。事後復元サブシステム790は、コンテンツ事後復元モジュール218、及び/又は適応型ピクチャ再編成器217を有しても良い。
デコーダ500bのエントロピーデコードサブシステム560bは、エンコーダ500aのエントロピーエンコーダサブシステム560aの逆の動作を実行しても良い。つまり、エントロピーデコードサブシステム560bは、可変長デコードとして漠然と参照されるクラスの技術を用いて、エントロピーエンコーダサブシステム560aによりエンコードされた種々のデータ(オーバーヘッドの種類、動きベクトル、変換係数)をデコードしても良い。具体的には、デコードされるべき様々な種類のデータは、「符号化済み/非符号化済み」データ、「モード及び参照種類」データ、「動きベクトル」データ、「予測及び符号化パーティション」データ、及び「変換係数」データを有しても良い。
デコーダ500bの変換デコーダサブシステム570bは、エンコーダ500aの変換エンコーダサブシステム540aの動作の逆の動作を実行しても良い。変換デコーダサブシステム570bは、2種類のコンポーネントを有しても良い。第1の種類の例示的なコンポーネントは、小乃至中ブロックサイズについてパラメータ逆PHT変換の使用をサポートしても良い。一方で、他の種類の例示的なコンポーネントは、全てのブロックサイズについて逆DCT変換をサポートしても良い。あるブロックに用いられるPHT変換は、近隣ブロックのデコード済みデータの分析に依存しても良い。出力ビットストリーム111及び/又は入力ビットストリーム201は、PHT変換のためのパーティション/ブロックサイズ、並びにどの方向の逆変換されるべき2DブロックにPHTが用いられるか(他の方向はDCTを用いる)に関する情報を伝達しても良い。純粋にDCTにより符号化されたブロックでは、パーティション/ブロックサイズ情報は、出力ビットストリーム111及び/又は入力ビットストリーム201から読み出され、適切なサイズの逆DCTを適用するために用いられても良い。
デコーダ500bの逆パーティショナサブシステム580bは、エンコーダ500aのパーティショナサブシステム520aの動作の逆の動作を実行しても良く、2つの逆パーティショニングサブシステム、つまり符号化済みデータの逆パーティショニングを実行し得る符号化パーティションアセンブラモジュール205、及び予測のための逆パーティショニングを実行し得る予測パーティションアセンブラモジュール207を有しても良い。さらに、任意的な適応型ピクチャ編成モジュール104がエンコーダ500aにおいて領域セグメント化又はスライスについて用いられる場合、適応型ピクチャ再編成モジュール217は、デコーダにおいて必要であっても良い。
デコーダ500bの予測デコーダサブシステム530bは、「インター」信号の予測を実行し得る特性及び動き補償済みフィルタリング予測モジュール213と、「イントラ」信号の予測を実行し得るイントラ方向予測生成モジュール214と、を有しても良い。特性及び動き補償済みフィルタリング予測モジュール213は、先ず(利得、大局的動き、整合性のような)他の差異源又は合成フレームの生成(超解像度、及び投影)を補償し、次に実際の動き補償をすることにより、予測可能性を増大させ得る。
デコーダ500bのフィルタリングデコーダサブシステム550bは、エンコーダ500aにより送信されたパラメータに基づき再構成済みピクチャの複数のフィルタリングを実行しても良く、及び幾つかのサブシステムを有しても良い。第1の例示的なサブシステムであるデブロックフィルタリングモジュール208は、潜在的な符号化アーティファクトを低減又はマスクするために、デブロック及びディザしても良い。第2の例示的なサブシステムである品質分析及び品質復元フィルタリングモジュール209は、任意のビデオ符号化における量子化動作に起因するアーティファクトを低減するために、汎用品質復元を実行しても良い。第3の例示的なサブシステムである特性及び動き補償済みフィルタリング予測モジュール213は、コンテンツの動き特性(動き速度/ブラーの程度)に適応し得るフィルタを用いることにより動き補償から生じる結果を向上し得る。第4の例示的なサブシステムである予測統合フィルタリングモジュール216は、予測信号の適応型フィルタリングを可能にし(これは、多くの場合イントラ予測からの、予測における不要なアーティファクトを低減し得る)、それにより符号化される必要のある予測誤差を低減する。
デコーダ500bの事後復元サブシステム590bは、デコード済みビデオの知覚品質の更なる向上を実行し得る任意的なブロックである。この処理は、エンコーダ100により送信された品質向上パラメータに応答して行われるか、或いは、事後復元サブシステム590bにおいて単独で決定され得る。事後復元サブシステム590bにおいて品質を向上するために用いられ得るエンコーダ100において計算された特定のパラメータに関して、(デブロッキング後であっても)エンコーダ100におけるフィルム粒状ノイズ及び残差ブロッキネスの推定であっても良い。フィルム粒状ノイズに関して、パラメータが計算され出力ビットストリーム111及び/又は入力ビットストリーム210によりデコーダ200へ送信できる場合、これらのパラメータは、フィルム粒状ノイズを合成するために用いられても良い。同様に、エンコーダ100における任意の残差ブロッキングアーティファクトについて、それらが測定でき、出力ビットストリーム111及び/又はビットストリーム201により送信される場合、事後復元サブシステム590bは、これらのパラメータをデコードしても良く、それらを用いて表示する前に任意的に追加デブロッキングを実行しても良い。さらに、エンコーダ100は、事後復元サブシステム590bにおける品質復元で有用であるシーン変化、空間複雑性、時間複雑性、動き範囲、及び予測距離情報へのアクセスを有しても良い。
サブシステム530b乃至590bは図5Bのデコーダ500bの特定の例示的な機能モジュールに関連して示されるが、本願明細書におけるデコーダ500bの他の実装は、サブシステム530b乃至590bの間のデコーダ500bの機能モジュールの異なる分配を有しても良い。本開示はこれに関して限定されず、種々の例において、本願明細書における例示的なサブシステム530b乃至590bの実装は、図示の特定の例示的なデコーダ500bの機能モジュールの一部のみ、追加機能モジュール、及び/又は図示と異なる配置の取り組みを有しても良い。
図6は、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオエンコーダ600の説明図である。図6は、図1A、1B及び5に示したものと類似のエンコーダを示し、簡単のために同様の要素は繰り返されない。図6に示すように、エンコーダ600は、事前分析サブシステム610、パーティショナ1サブシステム619、パーティショナ2サブシステム621、変換エンコーダサブシステム640、逆パーティショナ1サブシステム651、フィルタリング1エンコーダサブシステム652、フィルタリング2エンコーダサブシステム653、予測1及びフィルタリング3エンコーダサブシステム654、予測2エンコーダサブシステム655、フィルタリング4エンコーダサブシステム656、エントロピーエンコーダサブシステム660、変換デコーダサブシステム670、及び/又は逆パーティショナ2サブシステム680、を有しても良い。
事前分析サブシステム610は、コンテンツ事前分析モジュール102及び/又は適応型ピクチャ編成モジュール104を有しても良い。パーティショナ1サブシステム619は、予測パーティション生成モジュール105を有しても良い。パーティショナ2サブシステム621は、符号化パーティション生成器107を有しても良い。変換エンコーダサブシステム640は、適応型変換モジュール108、及び/又は適応型量子化モジュール109を有しても良い。逆パーティショナ1サブシステム651は、予測パーティションアセンブラモジュール116を有しても良い。フィルタリング1エンコーダサブシステム652は、ブロッキネス分析及びデブロックフィルタリングモジュール117を有しても良い。フィルタリング2エンコーダサブシステム653は、品質分析及び品質復元フィルタリングモジュール118を有しても良い。予測1及びフィルタリング3エンコーダサブシステム654は、動き推定モジュール122、及び/又は特性及び動き補償済みフィルタリング予測モジュール123を有しても良い。予測2エンコーダサブシステム655は、イントラ方向予測分析及び予測生成モジュール124を有しても良い。フィルタリング4エンコーダサブシステム656は、予測分析及び予測統合フィルタリングモジュール126を有しても良い。エントロピーエンコーダサブシステム660は、適応型エントロピーエンコーダモジュール110を有しても良い。変換デコーダサブシステム670は、適応型逆量子化モジュール112、及び/又は適応型逆変換モジュール113を有しても良い。逆パーティショナ2サブシステム680は、符号化パーティションアセンブラモジュール114を有しても良い。
エンコーダ600により示すように、圧縮されるべきビデオは、コンテンツ事前分析モジュール102に及び次に適応型ピクチャ編成器104に(一緒に事前分析サブシステム610として参照される)入力されても良い。コンテンツ事前分析モジュール102は、符号化されているシーンの分析を実行し、自身の出力で、シーン変化(scnchg)、時間複雑性(tpcpx)、空間複雑性(spcpx)、時間予測距離(pdist)、及びその他に関する情報を提供しても良い。さらに、コンテンツ事前分析モジュール102の出力における元のビデオフレームは、適応型ピクチャ編成器104に入力されても良い。適応型ピクチャ編成器104は、ピクチャグループ構造(pgst)、したがってグループ内の各ピクチャのピクチャ種類(ptyp)、並びに必要に応じてエンコード順に並び替えられたピクチャを示す制御信号を出力しても良い。参考までに、本開示のエンコードは、3つのピクチャ種類、つまりI−(イントラ)、P−(予測)、及びF−(functional、機能)ピクチャを用いても良い。Fピクチャは、因果関係を示さず(noncausal)、エンコーダにおけるエンコード(及びデコーダにおける表示)のためにフレームの並べ替えを必要とする。
エンコーダ600内の次の2つのブロックは、予測及び符号化パーティショニング(一緒に、図5Aのパーティショナサブシステム520aとして参照される)を実行しても良い。本開示の符号化では、符号化されるべきフレームは、タイルと呼ばれる処理ユニットに分割されても良い。本開示における符号化は、2つのタイルサイズ、つまり32x32及び64x64をサポートできる。64x64サイズのタイルは、標準定義、並びにI−、P−及びF−ピクチャ種類の符号化、全てのサイズのI−及びF−ピクチャの符号化のためのさらに大きなサイズのビデオで用いられても良い。一方、32x32サイズのタイルは、低解像度シーケンスのPピクチャのために用いられても良い。
符号化されているピクチャがI−ピクチャである場合、どのタイルも、予測パーティション生成モジュール105で、(最小サイズに達するまで)一度に1次元の空間を分割できるkd木に基づくパーティションに更に分割され、更なる分割を有しない、二等分に分割、空間の1/4と3/4の2つの部分に分割、又は空間の3/4と1/4の2つの部分に分割されても良い。したがって、最大サイズとして64x64を用いる(及び4x4の最小サイズを許容する)I−ピクチャでは、他の制約が課されない場合、タイルの非常に多数のパーティショニングが生成され得る。例えば、64x64タイルに課され得る制約は、各次元で空間を二分するために、カットの第1の対が既に予め決定されることである。これは、64x64で開始し、32x32サイズのサブタイルに分割し、次に各32x32をkd木パーティショニングにより更にパーティショニングすることを意味する。他の制約も、組合せ数を低減するために可能である。I−ピクチャタイルのこれらのパーティションは、各タイルパーティショニングが空間予測(方位角予測又は他の種類の予測)及び予測差分の符号化のために用いられ得るので、予測パーティションとして参照されても良い。同様に、P−ピクチャタイルも、この予測方法でパーティションされても良い。Pピクチャの場合の警告(caveat)は、低解像度では、P−ピクチャパーティションは32x32タイルで開始し、kd木に基づくパーティションは用いられず、むしろもっと単純なbi木パーティショニングが用いられても良いことである。bi木パーティショニングは、一度に1次元において空間の2個のみの等しい部分に分割し、2つの次元の間で交互にする。さらに、P−ピクチャパーティションは、空間予測ではなく、主に動き(1又は複数の参照を有する)を用いて予測されても良いが、幾つかのサブパーティションは、例えば覆われていない背景を取り扱うためにイントラ空間予測を用いても良い。標準定義からより大きなピクチャサイズまで、P−ピクチャは64x64タイルサイズのみから開始しても良い。最後に、Fピクチャも、主に動き(1又は複数のパーティションを有する)を用いる予測パーティションを生成するために64x64タイルサイズのbi木パーティショニングを用いても良いが、幾つかのサブパーティションは(イントラ符号化のために)空間予測を用いても良い。本開示の符号化では、予測を生成するために単に動きベクトルを用いるより、インター予測の生成のために遙かに多くが存在し得る。P−及びF−ピクチャ符号化では、各サブパーティションの予測は、予測モード(スキップ、自動、インター、及びイントラ)を含むことにより識別されても良い。予測パーティション生成器105の出力は、文字どおり1つのタイルの数百の可能なパーティショニング(事実上課される制限に依存する)であっても良い。これらのパーティショニングは、1,...,mとインデックス付けされても良く、最適な可能な予測パーティショニングを選択するためにエンコード制御部103に提供されても良い。
パーティションされた元のブロックは、エンコードする価値のある残差信号が存在するかどうかを決定するために、予測ブロックとの差分を取られる(予測ブロックの生成の詳細は後述する)。したがって、予測は特定のサブパーティションについて十分なので、必ずしも1つのタイルの全てのサブパーティションが(変換符号化を用いて)符号化される必要はない。
予測のみにより補償できないパーティションは、変換符号化のために更に小さなパーティションへのサブパーティショニングを必要とし得る。P−及びF−ピクチャでは、符号化のためのこのサブパーティショニングは、更なる分割を必要とする予測差分パーティションの符号化のためにbi木パーティショニングを用い得る符号化パーティション生成器107を用いて達成されても良い。他のものは、動き補償により単純に符号化されても良い。P−又はF−ピクチャでは、幾つかの例(非常に単純なコンテンツ及び/又は大きな量子化ステップサイズ)でのみ、符号化パーティションは、タイル全体のサイズに等しくても良い。このサイズは、これらの場合に予測パーティションにより用いられるのと同じサイズであっても良い。したがって、幾つかのP−及びF−ピクチャタイルは、符号化パーティショニングを含まず、1つの符号化パーティショニング又は複数の符号化パーティショニングを含んでも良い。これらのパーティショニングは、1,...,nとインデックス付けされても良く、所与の選択肢から予測及び符号化パーティショニングの最適な可能な組合せを選択するためにエンコード制御部103に提供されても良い。I−ピクチャタイルに関して、予測符号化、及びそれに続くそれ自体更なる符号化パーティショニングを有しない実際の変換符号化のみがあっても良い。言い換えると、符号化パーティショニングは、スキップされても良い。
次の2つのブロック(適応型変換モジュール108、及び適応型量子化モジュール108)、及び量子化適応を実行し得るエンコード制御部103の部分は、図5Aで集合的にエンコーダサブシステム540として参照され、以下に記載される。
(I−ピクチャのための予測パーティション、及びP−及びF−ピクチャのための符号化パーティションの後に)パーティションは、長方形ブロックに対して順方向ハイブリッドPHT変換又は順方向DCT変換を実行し得る適応型変換モジュール108で変換符号化を経験する。HPHT変換では、小乃至中ブロックサイズがサポートされ、一方、DCT変換では多数のブロックサイズがサポートされ得る。パーティション/ブロックサイズの選択、並びに利用される変換(HPHT対DCT)は、RDO分析の結果に依存しても良い。HPHT変換では、特定のオーバーヘッドが、DCTが適用される方向、つまり水平又は垂直を識別するために必要である。一方で、PHTは、直交方向に、モードと共に適用されても良い(少なくともイントラ符号化では、モードはデコード済みピクセル又は予測差分ピクセルに基づいても良い)。特定のブロックを変換するために用いられる実際のPHT変換基準は、デコード済み近隣ピクセルに依存し得るので、コンテンツ適応型であって良い。エンコーダ100及びデコーダ200の両方が同じ基底行列の計算を必要とし得るので、選択すべき限られた数の(エンコーダ100及びデコーダ200の両方に)知られている良好な変換を可能にすることにより、計算の複雑性は低く保たれる。適応型量子化モジュール109に関し、適応型量子化モジュール109は、コンテンツの分析を実行して、局所的適応型量子化パラメータを見出しても良い。局所的適応型量子化パラメータは、次に、効率的に符号化されビットストリームに含まれても良いマルチレベルマップにより表されても良い。計算された量子化セット(qs、及び係数ブロックに適用される行列)は、係数のスケーリングを実行するために、適応型量子化モジュール109により用いられても良い。
デコーダへ送信される必要のある種々の信号及びデータアイテム、つまり、pgst、ptyp、prp、pptn、cptn、modes、reftype、ethp、xmtyp、xmdir、xmmod、idir、mv、qs、mop、syp、ddi、qri、api、fii、量子(quant)係数、及びその他は、次に、集合的にエントロピーエンコーダサブシステム660として参照される異なるエントロピー符号器を含み得る適応型エントロピーエンコーダ110によりエントロピーエンコードされても良い。
エンコーダ600は、ローカルデコードループを有しても良い。RDOがどのように動作するかに依存して、1つのタイルの数百以上のパーティショニングの必ずしも全部が、完全に符号化される必要はない(ビット数を調べることで十分である場合が多い)。しかしながら、タイルの最適なパーティショニングが決定された後に、この場合に確実に、完全符号化が必要であっても良い。デコードループの中の最初の2つのユニットは、適応型逆量子化モジュール122、及び適応型逆変換モジュール113(集合的に、変換デコーダサブシステム670として参照される)であり得る。適応型逆量子化モジュール112の動作は、適応型量子化モジュール109の反対であり、基本的にスケーリングされた変換係数を逆スケーリングし得る(不可逆処理)。さらに、適応型逆変換モジュール113は、逆量子化済み変換係数ブロックを逆変換して、再構成済み予測差分ピクセルのブロックを生成しても良い。P−及びF−ピクチャでは、デコード済み差分ブロックは、正しい順序で符号化パーティションアセンブラ114により再アセンブルされても良い。I−ピクチャタイルパーティショニングでは、符号化パーティション再アセンブル処理は、スキップされても良い。次に、ローカルデコードループにおいて、予測信号(インター又はイントラ)は、加算器115を用いてデコード済みパーティションに追加されても良く、加算器115の出力における再構成済みパーティションは、予測パーティションアセンブラ116によりアセンブされても良い。
次のステップセットは、フィルタリング、並びにフィルタリングと予測生成の混合を有しても良い。具体的には、再構成済みパーティションは、ブロッキネス分析及びデブロックフィルタリングモジュール117によりデブロック及びディザされても良く、分析のためのパラメータddiは、フィルタリング動作のために用いられても良く、符号化されてビットストリームによりデコーダへ送信されても良い。デブロックされた再構成(recon)出力は、次に、QRフィルタリングパラメータを計算しそれらをフィルタリングのために使用し得る品質分析及び品質復元フィルタリングモジュール118に渡されても良い。これらのパラメータも、符号化され、ビットストリームによりデコーダへ送信されても良い。QRフィルタされた出力は、将来のフレームを符号化するための予測として用いることができる最終再構成済みフレームであっても良い。
図5Aの予測エンコーダサブシステム530bとして示す予測処理は、インター予測及びイントラ予測のための2つの主要なサブシステムを有し得る。本開示は、ローカルバッファ/予測ピクチャを生成するために、幾つかの種類のモーフィングを用いることができる。これは、動き補償された予測の前に、利得、支配的な動き、整合性、及び/又はブラーの補償を可能にし、並びに、動き補償された予測が高利得をもたらすことができる幾つかの種類の合成フレーム(特に、超解像度(Super Resolution:SR)ピクチャ、PI(Projected Interpolation)ピクチャ)を可能にする。モーフィング分析及びモーフィング済みピクチャ生成モジュール120は、符号化されるべき参照フレームに対する、利得の変化、支配的な動きの変化、整合性の変化、及びブラーの変化についてのパラメータを計算することにより、現在ピクチャの分析のタスクを実行しても良い。計算されたmopパラメータは、量子化され/逆量子化されて、現在フレームの効率的な動き(及び特性)補償された予測の動きベクトルを計算する動き推定器により用いられ得るモーフィング済み参照フレームを生成するために用いられても良い。同様に、合成分析及び合成ピクチャ生成121は、これらのフレームにおける効率的な動き補償された予測の動きベクトルを計算する動き推定器により使用される動きのSRピクチャ及びPIピクチャを生成する分析のタスクを実行しても良い。
留意すべき1つの興味深い点は、予測1及びフィルタリング3エンコーダサブシステム654がフィルタリングと予測を結びつけることができる点である。このフィルタリングパラメータapiは、符号化され、ビットストリームによりデコーダへ送信されても良い。留意すべきもう1つの点は、予測2エンコーダサブシステム655が、空間方向予測を参照し、デコード済みの近隣パーティションを用いること、並びに、ここで方向の分析と方向の実際の生成の両方が行われるので、ここではイントラ方向予測分析及び予測生成モジュール124として表されることである。
予測モード及び参照種類分析器125は、タイルの各パーティション毎に、「スキップ(skip)」、「自動(auto)」、「インター(inter)」、「マルチ(multi)」、「イントラ(intra)」の中からの予測モードの選択を可能にし、それらの全てはP−及びF−ピクチャに適用する。これを以下の表1に示す。予測モードに加えて、「インター」又は「マルチ」モード並びにP−及びF−ピクチャに依存して異なり得る参照種類の選択も可能にする。参照種類の詳細なリストをP−ピクチャについて表2(a)及び2(b)に、F−ピクチャについて表3(a)、3(b)、3(c)及び3(d)に示す。
以下に示す表1乃至3(d)は、コードブックエントリの一例を示す。エントリの完全なコードブックは、全ての可能なエントリ及びその符号化の完全な又は実質的に完全なリストを提供し得る。幾つかの例では、コードブックは、上述の制約を考慮に入れても良い。幾つかの例では、予測モード及び/又は参照種類のコードブックエントリに関連するデータは、本願明細書で議論するようにデコーダでの使用のためにビットストリーム内にエンコードされても良い。
[表1]P−及びF−ピクチャのパーティションの予測モード
[表2(a)]P−ピクチャにおける「インター」モードを有するタイルのパーティションの参照種類
[表2(b)]P−ピクチャにおける「インター」モードを有するタイルのパーティションの参照種類
[表3(a)]F−ピクチャにおける「インター」モードを有するタイルのパーティションの参照種類
[表3(b)]F−ピクチャにおける「マルチ」モード及びDir0を有するタイルのパーティションの参照種類
[表3(c)]F−ピクチャにおける「マルチ」モード及びDir1を有するタイルのパーティションの参照種類
[表3(d)]F−ピクチャにおける「マルチ」モード及びDir2を有するタイルのパーティションの参照種類
予測モード及び参照種類分析器125の出力における予測信号は、予測統合分析及びフィルタ生成モジュール126(フィルタリング4エンコーダサブシステム656)によりフィルタリングされても良い。予測統合分析及びフィルタ生成モジュール126は、先ずこのフィルタリングに使用するパラメータ(フィルタリング係数、周波数、オーバーヘッド)を決定し、次にこのフィルタリングを実際に実行し得る。予測信号のフィルタリングの目的は、異なるモード、つまり、イントラ、インター、マルチ、スキップ、及び自動を表す異なる種類の信号を統合することである。標準的に、イントラ予測信号は、全ての他の種類のインター信号とは非常に異なって見えるので、適正なフィルタリングは、符号化効率に大きな貢献をもたらし得る。フィルタリングパラメータfiiは、デコーダによる使用のためにビットストリーム内にエンコードされても良い。フィルタリング済み予測は、前述の符号化のための予測差分信号を計算する差分器への第2の入力を形成する。また、同じフィルタリング済み予測信号は、加算器115への第2の入力を形成する。加算器115の第1の入力は、量子化済み/逆量子化済みデコード済み差分信号であっても良い。
最後に、適応型エントロピーエンコーダ660は、様々な種類の制御データ/信号、パラメータ、モード及び参照種類、動きベクトル、並びに変換係数をエンコードするために用いられても良い。これは、一般的なクラスの、適応型可変長符号器(variable length coder:vlc)と呼ばれる複雑さの少ないエントロピー符号器に基づく。エントロピー符号化されるべきデータは、幾つか(本開示の幾つかの態様では7個)のカテゴリに分けられても良く、各カテゴリ毎に、一般的なvlc符号器から開始して、専用符号器が開発されても良い。
サブシステム610乃至680は図6のエンコーダ600の特定の例示的な機能モジュールに関連して示されるが、本願明細書におけるエンコーダ600の他の実装は、サブシステム610乃至680の間のエンコーダ600の機能モジュールの異なる分配を有しても良い。本開示はこれに関して限定されず、種々の例において、本願明細書における例示的なサブシステム610乃至680の実装は、図示の特定の例示的なエンコーダ600の機能モジュールの一部のみ、追加機能モジュール、及び/又は図示と異なる配置の取り組みを有しても良い。
図7は、本開示の少なくとも幾つかの実装により配置される例示的な次世代ビデオデコーダ700の説明図である。図7は、図2に示したものと類似のデコーダを示し、簡単のために同様の要素は繰り返されない。図7に示すように、デコーダ700は、エントロピーデコーダサブシステム760、変換デコーダサブシステム770、逆パーティショナ2サブシステム780、逆パーティショナ1サブシステム751、フィルタリング1デコーダサブシステム752、フィルタリング2デコーダサブシステム753、予測1及びフィルタリング3デコーダサブシステム754、予測2デコーダサブシステム755、フィルタリング4デコーダサブシステム756、及び/又は事後復元サブシステム790を有しても良い。エントロピーデコーダサブシステム760は、適応型エントロピーデコーダモジュール202を有しても良い。変換デコーダサブシステム770は、適応型逆量子化モジュール203、及び/又は適応型逆変換モジュール204を有しても良い。逆パーティショナ2サブシステム780は、符号化パーティションアセンブラ205を有しても良い。逆パーティショナ1サブシステム751は、予測パーティションアセンブラ207を有しても良い。フィルタリング1デコーダサブシステム752は、デブロックフィルタリングモジュール208を有しても良い。フィルタリング2デコーダサブシステム753は、品質復元フィルタリングモジュール209を有しても良い。予測1及びフィルタリング3デコーダサブシステム754は、特性及び動き補償されたフィルタリング予測モジュール213を有しても良い。予測2デコーダサブシステム755は、イントラ方向予測生成モジュール214を有しても良い。フィルタリング4デコーダサブシステム756は、予測統合フィルタリングモジュール216を有しても良い。事後復元サブシステム790は、コンテンツ事後復元モジュール218、及び/又は適応型ピクチャ再編成器217を有しても良い。
このデコーダ700の全体的な動作は、前述のエンコーダ600におけるローカルデコードループと同様であっても良いが、留意すべきことに、デコーダにおける動き補償デコードループは、パラメータがビットストリーム201によりデコーダ700へ実際に送信できるので、パラメータを決定するために分析を要するコンポーネントを必要としない。デコードされるべきビットストリームは、ヘッダ、制御信号及びエンコード済みデータをデコードする適応型エントロピーデコーダモジュール202に入力されても良い。例えば、適応型エントロピーデコーダモジュール202は、ptyp、pgst、prp、pptn、cptn、ethp、mop、syp、mod、reftyp、idir、qs、xmtyp、xmdir、xmmod、ddi、qri、api、fii、mv、及びオーバーヘッドに貢献する量子化済み変換係数、並びにデコーダ全体を通じて使用のために分配され得る制御信号及びデータをデコードする。量子化済み変換係数は、次に、デコード済みピクセル差分の方形パーティションを生成するために、適応型逆量子化モジュール203により逆量子化されても良い。デコード済みピクセル差分の方形パーティションは、使用される符号化パーティショニング毎にアセンブルされ、予測を加算されて再構成済み(recon)符号化済みパーティションの生成をもたらし得る。再構成済み(recon)符号化済みパーティションは、動きパーティショニングにより更に解体されて、再構成済みタイル及びフレームを生成する。再構成済みタイル及びフレームは、デブロックフィルタリングモジュール208において、デコード済みddiパラメータを用いてデブロッキング及びディサリングされ、その後に品質復元フィルタリングモジュール209において、デコード済みqriパラメータを用いて品質復元フィルタリングされる。これは、最終再構成済み(recon)フレームを生成する処理である。最終再構成済み(recon)フレームは、デコード済みmopパラメータを適用することにより生成されたモーフィング済みピクチャ/ローカルバッファを用いて、デコード済みピクチャバッファ210に保存されても良い。同様に合成済みピクチャバッファは、デコード済みピクチャバッファ210にデコード済みsypパラメータを適用することにより生成され得る。モーフィング済みローカルバッファ、及び合成済みフレームは、apiパラメータに基づく適応型精密(adaptive precision:AP)フィルタリングを用い及びデコード済みethp信号に依存して1/4又は1/8pel予測を続ける動き補償された予測のために用いられても良い。実際に、modに依存する特性及び動きAPフィルタ1/4及び1/8pel補償済み予測子(Char & Motion AP Filt 1/4&1/8pel Compensated Predictor)は、「インター」、「マルチ」、「スキップ」又は「自動」パーティションを生成する。一方で、イントラ方向予測生成モジュール214は、「イントラ」パーティションを生成し、予測モード選択モジュール215は、通過すべき正しいモードのパーティションを可能にし得る。次のステップは、加算器206への第2の入力において必要に応じて予測をフィルタ及び出力するために、予測統合フィルタリングモジュール216の選択的な使用を含む。
品質復元フィルタリングモジュール209の出力における再構成(recon)フレームは、ptyp及びpgstの制御パラメータに応答して、適応型ピクチャ再編成器217により(Fフレームは順序が狂っているので)並べ替えられても良い。さらに、適応型ピクチャ再編成器217の出力は、エンコーダにより送信されたprpパラメータにより制御され得るコンテンツ事後復元器218において任意の処理を行われても良い。特にこの処理は、デブロッキング及びフィルム粒状性追加を含む。
サブシステム751乃至790は図7のデコーダ700の特定の例示的な機能モジュールに関連して示されるが、本願明細書におけるデコーダ700の他の実装は、サブシステム751乃至790の間のデコーダ700の機能モジュールの異なる分配を有しても良い。本開示はこれに関して限定されず、種々の例において、本願明細書における例示的なサブシステム751乃至790の実装は、図示の特定の例示的なデコーダ700の機能モジュールの一部のみ、追加機能モジュール、及び/又は図示と異なる配置の取り組みを有しても良い。
図8は、本開示の少なくとも幾つかの実装に従って配置された予測パーティショニングのための例示的なタイル又はスーパーフラグメントを有する例示的なビデオフレーム810を示す。ビデオフレーム810は、任意の適切なビデオ画像、フレーム、ピクチャ、又は符号化のためのデータ等を有しても良い。図示の例では、ビデオフレーム810は、説明を目的として、「Flower」テストシーケンスからのビデオフレームを有する。上述のように、ビデオフレーム810は、フレーム部分(例えば、タイル又はスーパーフラグメント)にセグメント化されても良い。フレーム部分は、次に、以下に詳述するように、パーティショニングされても良い。ビデオフレーム810は、任意の適切な技術又は複数の技術を用いてフレーム部分に分割されても良い。幾つかの例では、ビデオフレーム810は、タイル820−1乃至820−30がパーティショニングのためのビデオフレーム部分になるように、タイル境界330によりタイル820−1乃至820−30に分割されても良い(図8では、提示の明確性のために必ずしも全てのタイルがラベル付けされない)。ビデオフレーム810は、任意の数のタイル820を含んでも良く、タイル820は任意のサイズであっても良い。幾つかの例では、タイル820は64x64ピクセルであっても良い。さらに、タイル820は任意の形を有しても良い。様々な例において、タイル820は正方形又は長方形であっても良い。また、図示のように、タイル820はフレーム810内の異なる形及びサイズであっても良い。例えば、タイル820−3は正方形で64x64ピクセルであっても良く、タイル820−12は長方形で32x64ピクセルであっても良く、タイル820−30は正方形で32x32ピクセルであっても良い、等である。
他の例では、パーティショニングのためのビデオフレーム部分は、スーパーフラグメントであっても良い。例えば、スーパーフラグメントを決定するために、ビデオフレーム810は、1又は複数の領域レイヤにセグメント化されても良い。セグメント化は、任意の精度(例えば、ピクセル解像度)で実行され、ビットコストの観点で効率制約に基づき任意の解像度に量子化されても良い。例えば、セグメント化は、4pel、8pel、又は16pel精度(例えば、4ピクセル、8ピクセル、又は16ピクセルの精度)等で実行されても良い。図10を参照すると、ビデオフレームの領域レイヤへのセグメント化が示される。
図10は、本開示の少なくとも幾つかの実装により配置される例示的な領域レイヤセグメント化を示す。図10に示すように、ビデオフレーム810は、1又は複数の領域レイヤにセグメント化されても良い。図10の図示の例では、ビデオフレーム810は、2つの領域レイヤ、つまり領域レイヤ1010及び領域レイヤ1020にセグメント化されても良い。図10では、領域レイヤ1010は、マークされていないビデオフレームセグメントを有し、領域レイヤ1020は点がマークされたビデオフレームセグメントを有する。例えば、領域レイヤ1010は、ビデオフレーム810の背景部分を表しても良く、領域レイヤ1020は、ビデオフレーム810の前景部分を表しても良い。幾つかの例では、領域レイヤは、シーンの前景、背景、及び中景(又は複数の中景)等を表しても良い。幾つかの例では、ビデオフレーム810は、単一の領域レイヤを有しても良い。幾つかの例では、ビデオフレーム810は、3、4、5又はそれより多くの領域レイヤを有しても良い。幾つかの例では、ビデオフレーム810のセグメント化は、予測パーティション生成モジュール105により実行されても良い(図1を参照)。幾つかの例では、ビデオフレーム810のセグメント化は、適応型ピクチャ編成器104と予測パーティション生成器105との間に挿入される別のモジュール(例えば、タイル又はスーパーフラグメント生成モジュール)により実行されても良い。幾つかの例では、ビデオフレーム810のセグメント化は、適応型ピクチャ編成モジュール104(又は、例えば、適応型ピクチャ編成モジュール104のタイル又はスーパーフラグメント生成モジュール)により実行されても良い。セグメント化は、任意の適切な技術又は複数の技術を用いて実行されても良い。幾つかの例では、セグメント化は、シンボル−ラン(symbol-run)符号化技術を有しても良い。
さらに、領域境界(例えば、領域レイヤ1010と領域レイヤ1020の間の境界、等)は、エンコーダ100及び/又はデコーダ200において使用するために符号化されても良い。領域境界符号化は、任意の適切な技術又は複数の技術を用いて実行されても良い。幾つかの例では、領域境界符号化は、シンボル−ラン(symbol-run)符号化技術を有しても良い。幾つかの例では、領域境界符号化は、タイルグリッド上で領域境界を近似するコードブックを生成することを有しても良い。例えば、タイルグリッド(図8のタイル820に対応しても良く、対応しなくても良い)は、32x32又は64x64ピクセル等のサイズを有する等間隔のタイルグリッドであっても良い。
図8に戻ると、領域レイヤ1010及び領域レイヤ1020は、ビデオフレーム810の像をぼかすことにより領域レイヤ1020が示されるように、及びビデオフレーム810の像をぼかさないことにより領域レイヤ1010が示されるように、示される。さらに、上述のように、ビデオフレームは、タイル820−1乃至820−30に分割されても良い。幾つかの例では、パーティショニングのためのフレーム部分は、図9に示すように、タイルの個々の領域レイヤ部分を含むスーパーフラグメントを有しても良い。
図9は、本開示の少なくとも幾つかの実装に従って配置された、例示的なビデオフレーム810の1行のタイル820−13乃至820−18の例示的なスーパーフラグメント901乃至911を示す。図示のように、スーパーフラグメント901乃至911は、領域レイヤ内のタイルの部分を有しても良い。例えば、スーパーフラグメント901は、領域レイヤ1010の中のタイル820−13の部分を有しても良く、スーパーフラグメント902は、領域レイヤ1020の中のタイル820−13の部分を有しても良く、スーパーフラグメント903は、領域レイヤ1010の中のタイル820−14の部分を有しても良い、等である。図示のように、スーパーフラグメントは、(記載のセグメント化動作の精度によってのみ制限される)実質的に任意の形及びサイズを有しても良い。例えば、スーパーフラグメント903、910及び911は、それぞれタイル820−14、820−17及び820−18の全体であっても良く、これらのスーパーフラグメントはそれら個々のタイルと同じ形であっても良い。さらに、スーパーフラグメント901及び904乃至909は、種々の可能な形を示すが、多くの他の形も可能である。さらに、スーパーフラグメント904は、スーパーフラグメントが連続的である必要がないことを示す。
図11A及び11Bは、本開示の少なくとも幾つかの実装に従って配置された、領域レイヤ1120、1130、1140にセグメント化された、及びタイル1150a乃至1150dに従ってスーパーフラグメント1161乃至1169にパーティショニングされた、例示的なビデオフレーム1110を示す。図11Aに示すように、及び以上に議論したように、ビデオフレーム1110(提示の明確性のためにビデオフレームの一部が示される)は、以上に議論したように、例えばパーティション生成モジュール105又は適応型ピクチャ編成モジュール104によるシンボル−ラン符号化のような任意の適切な技術を用いて領域レイヤ1120、1130、1140にセグメント化されても良い。幾つかの例では、領域レイヤ1120、1130、1140は、シーンの前景、背景、及び中景等を表しても良い。図11Bに示すように、領域レイヤ112、1130、1140は、上述のようにビデオフレーム1110に対して定められ得るタイル1150a乃至1150d(例えば、ビデオフレーム1110は、タイル1150a乃至1150dに分割されても良い)にオーバレイされ又はそれと結合されて、スーパーフラグメント1161乃至1169を定め、スーパーフラグメント1161乃至1169の各々が領域レイヤの中の又はその範囲内の部分を有するようにしても良い。
例えば、スーパーフラグメント1161は領域レイヤ1120の中の又はその範囲内のタイル1150aの部分を有しても良く、スーパーフラグメント1162は領域レイヤ1130の中の又はその範囲内のタイル1150aの部分を有しても良く、スーパーフラグメント1163は領域レイヤ1120の中の又はその範囲内のタイル1150bの部分を有しても良く(例えば、タイル1150bの全部)、スーパーフラグメント1164は領域レイヤ1130の中の又はその範囲内のタイル1150cの部分を有しても良く、スーパーフラグメント1165は領域レイヤ1120の中の又はその範囲内のタイル1150cの部分を有しても良く、スーパーフラグメント1166は領域レイヤ1140の中の又はその範囲内のタイル1150cの部分を有しても良く、スーパーフラグメント1167は領域レイヤ1130の中の又はその範囲内のタイル1150dの部分を有しても良く、スーパーフラグメント1168は領域レイヤ1120の中の又はその範囲内のタイル1150dの部分を有しても良く、スーパーフラグメント1169は領域レイヤ1140の中の又はその範囲内のタイル1150dの部分を有しても良い。留意すべきことに、図11Bでは、スーパーフラグメント境界は、領域レイヤ境界を表す実線とタイル境界を表す破線との両方により定められる。
上述のように、フレーム部分は、ビデオフレームをタイルに分割することにより又はスーパーフラグメントを定めることにより、定められても良い。幾つかの例では、タイルの使用は単純さの利点を提供でき、一方で、スーパーフラグメントは、より複雑であり得るが、拡張インター若しくはイントラ予測又は画像拡張の利点を提供できる。いずれの場合にも、フレーム部分は、本願明細書で議論するようにパーティショニングされても良い。
以下に詳述するように、ビデオフレーム810のタイル又はスーパーフラグメントへのセグメント化は、予測パーティション生成モジュール105(又は、例えば、予測パーティション生成モジュールのタイル又はスーパーフラグメント生成モジュール)、適応型ピクチャ編成器104と精密パーティション生成器105との間に挿入された別のモジュール(例えば、タイル又はスーパーフラグメント生成モジュール)により、又は適応型ピクチャ編成モジュール104(又は、例えば、適応型ピクチャ編成モジュール104のタイル又はスーパーフラグメント生成モジュール)により、実行されても良い。
図12A及び12Bは、本開示の少なくとも幾つかの実装に従って配置された、例示的なエンコーダサブシステム1200及び1210の説明図である。幾つかの例では、エンコーダサブシステム1200又は1210は、図1に示すようにエンコーダ100により実装されても良い。図12Aに示すように、エンコーダサブシステム1200は、上述のように、精密パーティション生成モジュール105を有しても良い。図示のように、幾つかの例では、精密パーティション生成モジュール105は、本願明細書で議論するようなタイル又はスーパーフラグメントを生成し得るタイル又はスーパーフラグメント生成モジュール1201を有しても良い。
図12Bに示すように、エンコーダサブシステム1210は、適応型ピクチャ編成器104(幾つかの実装では、エンコーダサブシステム1210の一部と考えられなくても良い)と精密パーティション生成器105との間に実装される別個のタイル又はスーパーフラグメント生成モジュール1201を有しても良い。他の例では、別個のタイル又はスーパーフラグメント生成モジュール1201は、適応型ピクチャ編成器104により実装されても良く、適応型ピクチャ編成器104はエンコーダサブシステムの一部と考えられても良い。
上述のように、幾つかの例では、スーパーフラグメントは符号化されても良い。幾つかの例では、スーパーフラグメントは、近隣ブロックが同じ領域に属する可能性が高いとき、1次元(1D)スキャンに沿って近隣ブロック間の相関を利用し得るシンボル−ラン符号化により符号化されても良い。他の例では、フレーム部分境界を、32x32ピクセル又は64x64ピクセル等の等間隔の又は実質的に等間隔のタイルグリッド上で近似するために、コードブックが用いられても良い。このような例では、各タイルを通る主要な境界は、コードブックから利用可能な最も近いパターンで近似されても良く、該パターンに対応するコードは、デコーダによる使用のためにビットストリームに含まれても良い。幾つかの例では、このような境界の提示は、ビットコストを最小化するために、不可逆であっても良い。
種々の実装において、フレーム部分(例えば、タイル又はスーパーフラグメント)は、予測パーティション生成モジュール105により生成され、又はそれへ送信されても良い。予測パーティション生成モジュール105は、bi木パーティション生成モジュール1202及びkd木パーティション生成モジュール1203を有しても良い。図示のように、フレーム部分は、スイッチ1204、1205の動作に依存して、bi木パーティション生成モジュール1202又はkd木パーティション生成モジュール1203に入力されても良い。幾つかの例では、スイッチ1204、1205は、フレーム部分のフレームのピクチャ種類に基づき動作しても良い。例えば、フレームがI−ピクチャである場合、受信したフレーム部分は、スイッチ1204、1205によりkd木パーティション生成モジュール1203に入力されても良い。例えば、フレームがP−又はF/B−ピクチャである場合、受信したフレーム部分は、スイッチ1204、1205によりbi木パーティション生成モジュール1202に入力されても良い。他の例では、スイッチ1204、1205は、受信したフレーム部分の特性に基づき動作しても良い。例えば、期待される量のフレーム部分のイントラブロックが閾より大きい場合、フレーム部分はkd木パーティション生成モジュール1203に入力されても良く、期待される量のフレーム部分のイントラブロックが閾より小さい場合、フレーム部分はbi木パーティション生成モジュール1202に入力されても良い。種類の例において、閾は、予め定められても良く、又は発見的に決定される等しても良い。
図示のように、(スイッチ1205により制御される)予測パーティション生成モジュール105の出力は、差分器106に入力されても良い。差分器106では、図1に関して上述したように処理が続いて、差分器106への第2の入力は、予測統合分析及び予測統合フィルタリングモジュール126の出力であり、差分器106の出力(例えば、予測誤差データパーティション又は残差等)は、本願明細書に議論されるように、スイッチ107a、107bにより制御されるように、符号化パーティション生成器107に任意で入力されるようにしても良い。幾つかの例では、F/B−ピクチャ又はP−ピクチャにおけるインター予測で、予測誤差データパーティションは、(例えば、bi木パーティショニング技術による)符号化パーティションへの更なるパーティショニングのために、符号化パーティション生成モジュール107へ送信されても良い。幾つかの例では、I−ピクチャにおけるイントラ予測で、予測誤差データパーティション(又は元のピクセルデータ)は、符号化パーティション生成モジュール107をバイパスして、(例えば、適応型変換モジュール108による)変換符号化の前に更なるパーティショニングが実行されないようにしても良い。このような例では、フレーム部分(例えば、タイル又はスーパーフラグメント)は、1回のみパーティショニングされても良く、このようなパーティションは、文脈に依存して、予測パーティション又は符号化パーティション又はそれらの両者として記載されても良い。例えば、予測パーティション生成器から出力されるとき、このようなパーティションは、(それらは予測のために使用されるので)予測パーティションと考えられる。一方で、適応型変換モジュール108では、このようなパ―ティションは、(このようなパ―ティションは変換符号化されているので)符号化パーティションと考えられる。
図13は、本開示の少なくとも幾つかの実装により配置される例示的なデコーダサブシステム1300の説明図である。幾つかの例では、デコーダサブシステム1300は、図2に示すようにデコーダ200により実装されても良い。図13に示すように、デコーダサブシステム1300は、符号化パーティションアセンブラモジュール205を有しても良い。符号化パーティションアセンブラモジュール205は、スイッチ205a、205bにより制御されるように、適応型逆変換モジュール204(図示しない、図2を参照)からの入力を任意で受信しても良い。符号化パーティションアセンブラモジュール205の出力又はバイパスされたデータ(例えば、予測誤差データパーティション)は、加算器206への入力として供給されても良い。上述のように、幾つかの例では、予測誤差データパーティションは、(例えば、I−ピクチャのイントラ予測において)更なるパーティショニングを有しないで変換エンコードされても良く、符号化パーティションアセンブラモジュール205はバイパスされても良い。幾つかの例では、予測誤差データパーティションは、変換符号化のために符号化パーティションに更にパーティショニングされても良く、符号化パーティションアセンブラモジュール205は、このような符号化パーティションを予測誤差データパーティションにアセンブルしても良い。
加算器206への第2の入力(例えば、デコード済み予測パーティション)は、図2に関して上述したように、予測統合フィルタリングモジュール216の出力から供給されても良い。図示のように、デコーダサブシステム1300は、予測パーティションアセンブラモジュール207を更に有しても良い。予測パーティションアセンブラモジュール207は、bi木パーティションアセンブラモジュール1301と、kd木パーティションアセンブラモジュール1302と、を有しても良い。加算器206の出力(例えば、再構成済み予測パーティション)は、スイッチ1304、1305の制御に基づき、bi木パーティションアセンブラモジュール1301又はkd木パーティションアセンブラモジュール1302に入力されても良い。例えば、(例えば、エンコーダにおいて実行されるパーティショニングの種類に応じて、)bi木パーティションは、フレーム部分へのアセンブルのために、bi木パーティションアセンブラモジュール1301に入力されても良く、kd木パーティションは、フレーム部分へのアセンブルのためにkd木パーティションアセンブラモジュール1302に入力されても良い。
図示のように、幾つかの例では、予測パーティションアセンブラモジュール207は、タイル又はスーパーフラグメントアセンブラモジュール1303を有しても良い。タイル又はスーパーフラグメントアセンブラモジュール1303は、アセンブル済みフレーム部分(例えば、タイル又はスーパーフラグメント)をビデオフレームにアセンブルするよう構成されても良い。パーティションアセンブラモジュール207の出力ビデオフレームは、本願明細書で議論する更なる処理のために、デブロックフィルタリングモジュール208(図示しない、図2を参照)に入力されても良い。他の例では、タイル又はスーパーフラグメントアセンブラモジュール1303は、予測パーティションアセンブラモジュール207とデブロックフィルタリングモジュール208(図2を参照)との間に別個に実装されても良い。
図14は、本開示の少なくとも幾つかの実装により配置される変更された予測参照ピクチャ1400の説明図である。図示のように、品質分析及び品質復元フィルタリングの出力は、他のフレームを符号化するための予測に用いられ得る最終再構成済みフレームであっても良い(例えば、最終再構成済みフレームは、参照フレーム等であっても良い)。
NGV符号器(例えば、エンコーダ100及び/又はデコーダ200)の提案の実装は、モーフィング済み予測参照1428乃至1438(MR0乃至3)及び/又は合成済み予測参照1412及び1440乃至1446(S0乃至S3、MR4乃至7)の組合せを用いたP−ピクチャ符号化を実施しても良い。NGV符号化は、I−ピクチャ、P−ピクチャ、及びF/B−ピクチャとして参照される3つのピクチャ種類の使用を有する。図示の例では、符号化されるべき現在ピクチャ(P−ピクチャ)は、時間t=4において示される。符号化中、NGV符号器(例えば、エンコーダ100及び/又はデコーダ200)の提案の実装は、4個の前のデコード済み参照R0 1412、R1 1414、R2 1416、及びR3 1418を用いても良い。単にこれらの参照を予測のために直接使用し得る他のソリューションと異なり、NGV符号器(例えば、エンコーダ100及び/又はデコーダ200)の提案の実装は、このような前のデコード済み参照から変更された(モーフィング済み又は合成済み)参照を生成し、次に、このように生成した変更済み(モーフィング済み又は合成済み)参照に基づき、動き補償された符号化を用いても良い。
以下に詳述するように、幾つかの例では、NGV符号器(例えば、エンコーダ100及び/又はデコーダ200)の提案の実装は、多数のコンポーネント、及び効率的なビデオ符号化アルゴリズムでこれらのコンポーネントにより生成される結合予測を組み込んでも良い。例えば、NGV符号器の提案の実装は、以下の特徴の1又は複数を有しても良い。1.1)利得補償(例えば、シーンにおける利得/輝度の変化の明示的補償)、2)ブラー補償、例えば、シーンにおけるブラー/鮮明さの変化の明示的補償、3)支配的/グローバル動き補償(例えば、シーンにおける支配的動きの明示的補償)、4)整合性補償(例えば、シーンにおける整合性不一致の明示的補償)、5)超解像度(例えば、シーンにおける解像度精度の変化の明示的モデル)、6)投影(例えば、シーンにおける動き軌跡の変化の明示的モデル)、等、及び/又はこれらの組合せ。
図示の例では、インター予測が適用される場合、特性及び動きフィルタリング予測モジュールは、ローカルデコードループの部分として、現在ピクチャ1410(例えば、図中でP−pic(curr)とラベル付けされる)に動き補償を適用しても良い。幾つかの例では、このような動き補償は、少なくとも部分的に将来フレーム(図示しない)及び/又は過去フレームR0 1412(例えば、図中でR0としてラベル付けされる)、過去フレームR1 1414(例えば、図中でR1としてラベル付けされる)、過去フレームR2 1416(例えば、図中でR2としてラベル付けされる)、及び/又は過去フレームR3 1418(例えば、図中でR3としてラベル付けされる)に基づいても良い。
例えば、幾つかの実装では、予測動作は、インター及び/又はイントラ予測を含み得る。インター予測は、モーフィング分析及び生成モジュール及び/又は合成分析及び生成モジュールを含む1又は複数のモジュールにより実行されても良い。このようなモーフィング分析及び生成モジュールは、1又は複数の参照フレームで符号化されるべき該1又は複数の参照フレームに対するブラー変化1420(例えば、図中、Blur parとしてラベル付けされる)、利得変化1422(例えば、図中、Gain parとしてラベル付けされる)、整合性変化1424(例えば、図中、Reg parとしてラベル付けされる)、及び支配的動き変化1426(例えば、図中、Dom parとしてラベル付けされる)等に関するパラメータを決定するために現在ピクチャを分析しても良い。
決定されたモーフィングパラメータ1420、1422、1424、及び/又は1426は、モーフィング済み参照フレームを生成するために用いられても良い。このような生成されたモーフィング済み参照フレームは、格納されても良く、現在フレームの効率的な動き(及び特性)補償された予測の動きベクトルを計算するために用いられても良い。図示の例では、決定されたモーフィングパラメータ1420、1422、1424、及び/又は1426は、ブラー補償済みモーフィング済み参照フレーム1428(例えば、図中、MR3bと付される)、利得補償済みモーフィング済み参照フレーム1430(例えば、図中、MR2gと付される)、利得補償済みモーフィング済み参照フレーム1432(例えば、図中、MR1gと付される)、整合性補償済みモーフィング済み参照フレーム1434(例えば、図中、MR1rと付される)、支配的動き補償済みモーフィング済み参照フレーム1436(例えば、図中、MR0dと付される)、及び/又は整合性補償済みモーフィング済み参照フレーム1438(例えば、図中、MR0rと付される)等、又はこれらの組合せのような、モーフィング済み参照フレームを生成するために用いられても良い。
同様に、合成分析及び生成モジュールは、超解像度(SR)ピクチャ1440(例えば、図中、S0(過去フレームR0 1412と等しい)、S1、S2、S3と付される)、及び投影補間(PI)ピクチャ1442(例えば、図中、PEと付される)等を、これらのフレームにおける効率的な動き補償された予測の動きベクトルを決定するために、生成しても良い。このような生成された合成済み参照フレームは、格納されても良く、現在フレームの効率的な動き(及び特性)補償された予測の動きベクトルを計算するために用いられても良い。
追加又は代替で、決定されたモーフィングパラメータ1420、1422、1424、及び/又は1426は、生成された合成参照フレーム超解像度(SR)ピクチャ1440及び/又は投影補間(PI)ピクチャ1442をモーフィングするために用いられても良い。例えば、合成分析及び生成モジュールは、モーフィング済み整合性補償済み超解像度(SR)ピクチャ1444(例えば、図中、MR4r、MR5r、及びMR6rと付される)、及び/又はモーフィング済み整合性補償済み投影補間(PI)ピクチャ1446(例えば、図中、MR7rと付される)等を、決定された整合性モーフィングパラメータ1424から生成しても良い。このような生成されたモーフィング及び合成済み参照フレームは、格納されても良く、現在フレームの効率的な動き(及び特性)補償された予測の動きベクトルを計算するために用いられても良い。
幾つかの実装では、(例えば、利得、ブラー、支配的動き、整合性、解像度精度、動き軌跡、等、又はこれらの組合せのような)特性セットの変化は、明示的に計算されても良い。このような特性セットは、局所的動きに加えて計算されても良い。幾つかの例では、前の及び次のピクチャ/スライスは、適切ならば利用されても良い。しかしながら、他の例では、このような特性セットは、前のピクチャ/スライスからのより良い予測を行っても良い。さらに、(例えば、複数の過去の又は複数の過去及び将来のピクチャ/スライスからの)任意の推定手順において誤差が存在するので、(例えば、利得、ブラー、支配的動き、整合性、解像度精度、動き軌跡、等、又はこれらの組合せのような)特性セットに関連する変更された参照フレームが最適な推定を生じるよう選択されても良い。したがって、(例えば、利得、ブラー、支配的動き、整合性、解像度精度、動き軌跡、等、又はこれらの組合せのような)特性セットに関連する変更された参照フレームを利用する提案のアプローチは、これらの特性の差分を明示的に補償しても良い。提案の実装は、予測信号をどのように向上するかという問題を解決できる。これは、また、ビデオ符号化における高度な圧縮効率を達成できる。
例えば、圧縮されるべきビデオの解像度及び高ビデオ品質への期待が増大するのに伴い、H.264のような既存のビデオ符号化標準を用いる又はH265/HEVCのような進化しつつある標準でさえ、符号化のために必要な対応するビットレート/帯域幅、は比較的高い。前述の標準は、不十分な圧縮/品質の問題を自動的に解決するために広範な形式の従来のアプローチを用いるが、その結果は限定的である場合が多い。
提案の実装は、フレーム間予測を向上することにより、ビデオ圧縮効率を向上し、また、符号化される必要のあるフレーム間予測差分(誤差信号)を低減する。符号化されるべきフレーム間予測差分の量が少ないほど、符号化に必要なビットの量も少なく、符号化済み予測差分信号を格納し又は送信するために要するビットが少なくなるので、圧縮効率を効果的に向上する。動き予測のみに限定する代わりに、提案のNGVコーデックは、動き補償に加えて又は代えて、コンテンツの特性の変化を明示的に補償するアプローチを利用することにより、(例えば、利得、ブラー、支配的動き、整合性、解像度精度、動き軌跡、等、又はこれらの組合せのような)コンテンツの変化する特性に非常に適応できる。したがって、問題の根本原因を明確に解決することにより、NGVコーデックは、標準に基づくコーデックの制限の主要な原因を解決でき、それにより、より高い圧縮効率を達成する。
このフレーム間予測出力の変化は、ビデオコンテンツの変化の広範囲の理由を補償するために、提案のNGVコーデックの能力により達成され得る。標準的なビデオシーンは、多くの局所的及び全体的変化(本願明細書では特性と称される)によりフレーム毎に変化する。局所的な動きに加えて、提案の実装により解決され得る、現在のソリューションにより十分に解決されない多くの他の特性が存在する。
提案の実装は、局所的動きに加えて、(例えば、利得、ブラー、支配的動き、整合性、解像度精度、動き軌跡、等、又はこれらの組合せのような)特性セットの変化を明示的に計算しても良く、したがって、局所的動き予測のみを用いて前の及び次のピクチャ/スライスからより、前のピクチャ/スライスからより良い予測を行い得る。さらに、任意の推定手順において誤差が存在し得るので、複数の過去の又は複数の過去及び将来のピクチャ/スライスから、NGV符号器は、種々の特性の差分を明示的に補償することにより、最善をもたらすフレームを選択しても良い。
特に、NGV符号器の提案の実装は、次の特徴を有しても良い。i)シーンにおける利得/輝度変化の明示的補償、ii)シーンにおけるブラー/鮮明さ変化の明示的補償、iii)シーンにおける支配的動きの明示的補償、iv)シーンにおける整合性不一致の明示的補償、v)シーンにおける解像度精度変化の明示的モデル、及び/又は、vi)シーンにおける動き軌跡変化の明示的モデル、である。
以下に示す表4、5は、コードブックエントリの一例を示す。エントリの完全なコードブックは、全ての可能なエントリ及びその符号化の完全な又は実質的に完全なリストを提供し得る。幾つかの例では、コードブックは、上述の制約を考慮に入れても良い。幾つかの例では、予測モード及び/又は参照種類のコードブックエントリに関連するデータは、本願明細書で議論するようにデコーダでの使用のためにビットストリーム内にエンコードされても良い。
動作中、NGV符号器(例えば、エンコーダ100及び/又はデコーダ200)の提案の実装は、予測モード及び/又は参照種類データがシンボルーラン符号化又はコードブック等を用いて定められるように、動作しても良い。予測モード及び/又は参照種類データは、種々の例において、変換係数を生成するために、コンテンツ適応型又は離散変換を用いて変換エンコードされても良い。また、上述のように、パーティションに関連するデータ(例えば、変換係数、又は量子化済み変換係数)、オーバヘッドデータ(例えば、変換種類、適応変換方向、及び/又は変換モードの本願明細書で議論するような指示子)、及び/又はパーティションを定めるデータ、等は、(例えば、エントロピーエンコーダにより)ビットストリームにエンコードされても良い。ビットストリームは、デコーダに伝達されても良い。デコーダは、表示用にビデオフレームをデコードするために、エンコード済みビットストリームを用いても良い。(マクロブロック若しくはタイルの範囲内のブロック毎に、又はタイル若しくは予測単位の範囲内のパーティション毎に、又はスーパーフラグメント若しくは領域の範囲内のフラグメント、のような)局所的な単位で、最適モードは、例えばレート歪み最適化(Rate Distortion Optimization:RDO)に基づき、又はビデオの事前分析に基づき、選択されても良く、モード及び必要な参照の識別子は、デコーダによる使用のためにビットストリームの中にエンコードされても良い。
動作中、NGV符号器(例えば、エンコーダ100及び/又はデコーダ200)の提案の実装は、デコード済み過去及び/又は将来ピクチャ/スライスに対する通常の局所的動き補償に加えて、上述のコンポーネントのうちの1又は複数を用いても良い。したがって、実装は、例えば利得補償のための、又は他の特性補償された参照フレーム生成のための、専用ソリューションを要求するものではない。
図15は、本開示の少なくとも幾つかの実装に従って配置される、特性及び動き補償された予測を実行する別の例示的なエンコーダサブシステム530の説明図である。図示のように、エンコーダ1500のエンコーダ予測サブシステム530は、デコード済みピクチャバッファ119、モーフィング分析及びモーフィング済みピクチャ生成モジュール120、合成分析及び生成モジュール121、動き推定モジュール122、及び/又は特性及び動き補償済みフィルタリング予測モジュール123、を有しても良い。
図示のように、品質分析及び品質復元フィルタリングの出力は、デコード済みピクチャバッファ119へ送信されても良い。幾つかの例では、品質分析及び品質復元フィルタリングモジュールの出力は、他のフレームを符号化するための予測に用いられ得る最終再構成済みフレームであっても良い(例えば、最終再構成済みフレームは、参照フレーム等であっても良い)。エンコーダ1500では、予測動作は、インター及び/又はイントラ予測を含み得る。図15に示すように、インター予測は、モーフィング分析及びモーフィング済みピクチャ生成モジュール120、合成分析及び生成モジュール121、及び/又は特性及び動き補償済みフィルタリング予測モジュール123を有する1又は複数のモジュールにより実行されても良い。
モーフィング分析及びモーフィング済みピクチャ生成モジュール120は、モーフィング種類分析器(morphing types analyzer:MTA)及びモーフィング済みピクチャ分析器(morphed pictures generator:MPG)1599、並びにモーフィング済み予測参照(morphed prediction reference:MPR)ピクチャバッファ520を有しても良い。モーフィング種類分析器(MTA)及びモーフィング済みピクチャ分析器(MPG)1599は、1又は複数の種類の変更済み予測参照ピクチャを分析し及び/又は生成するよう構成されても良い。
例えば、モーフィング種類分析(MTA)及びモーフィング済みピクチャ分析器(MPG)1599は、利得推定及び補償済み予測生成器1505、ブラー推定及び補償済み予測生成器1510、支配的動き推定及び補償済み予測生成器1515、整合性推定及び補償済み予測生成器1520、等、及び/又はこれらの組合せを有しても良い。利得推定器及び補償済み予測生成器1505は、利得変化を解決するために適応されるモーフィング済み予測参照ピクチャを分析し及び/又は生成するよう構成されても良い。ブラー推定器及び補償済み予測生成器1510は、ブラー変化を解決するために適応されるモーフィング済み予測参照ピクチャを分析し及び/又は生成するよう構成されても良い。支配的動き推定器及び補償済み予測生成器1515は、支配的動き変化を解決するために適応されるモーフィング済み予測参照ピクチャを分析し及び/又は生成するよう構成されても良い。整合性推定及び補償済み予測生成器1520は、整合性変化を解決するために適応されるモーフィング済み予測参照ピクチャを分析し及び/又は生成するよう構成されても良い。
モーフィング種類分析器(MTA)及びモーフィング済みピクチャ分析器(MPG)1599は、このように生成されたモーフィング済み参照フレームを、モーフィング済み予測参照(MPR)ピクチャバッファ520に格納しても良い。例えば、モーフィング済み予測参照(MPR)ピクチャバッファ1598は、利得補償済み(Gain Compensated:GC)ピクチャバッファ1525、ブラー補償済み(:Blur CompensatedBC)ピクチャバッファ1530、支配的動き補償済み(Dominant Motion Compensated:DC)ピクチャバッファ1535、整合性補償済み(Registration Compensated:RC)ピクチャバッファ1540、等、及び/又はこれらの組合せを有しても良い。利得補償済み(GC)ピクチャバッファ1525は、利得変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。ブラー補償済み(BC)ピクチャバッファ1530は、ブラー変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。支配的動き補償済み(DC)ピクチャバッファ1535は、支配的動き変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。整合性補償済み(RC)ピクチャバッファ1540は、整合性変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。
合成分析及び生成モジュール121は、合成種類分析器(synthesis types analyzer:STA)及び合成済みピクチャ生成器(synthesized pictures generator:SPG)1597、並びに合成済み予測参照(synthesized prediction reference:SPR)ピクチャバッファ540を有しても良い。合成種類分析器(STA)及び合成済みピクチャ分析器(SPG)1597は、1又は複数の種類の合成済み予測参照ピクチャを分析し及び/又は生成するよう構成されても良い。例えば、合成種類分析器(STA)及び合成済みピクチャ生成器(SPG)1597は、超解像度フィルタセレクタ及び予測生成器1545、投影軌跡分析器及び予測生成器1550、等、及び/又はこれらの組合せを有しても良い。超解像度フィルタセレクタ及び予測生成器1545は、合成済み予測参照ピクチャの超解像度(SR)種類を分析し及び/又は生成するよう構成されても良い。投影軌跡分析器及び予測生成器1550は、合成済み予測参照ピクチャの投影補間(PI)を分析し及び/又は生成するよう構成されても良い。
合成種類分析器(STA)及び合成済みピクチャ生成器(SPG)1597は、超解像度(SR)ピクチャ及び投影補間(PI)ピクチャ等を、これらのフレームにおける効率的な動き補償された予測のために生成しても良い。このように生成された合成済み参照フレームは、合成済み予測参照(SPR)ピクチャバッファ1596に格納されても良く、現在フレームの効率的な動き(及び特性)補償された予測の動きベクトルを計算するために、動き推定モジュール122により用いられても良い。
例えば、合成済み予測参照(SPR)ピクチャバッファ1596は、超解像度(SR)ピクチャバッファ1555、投影補間(PI)ピクチャバッファ1560、等、及び/又はこれらの組合せを有しても良い。超解像度(SR)ピクチャバッファ1555は、超解像度(SR)ピクチャのために生成される合成済み参照フレームを格納するよう構成されても良い。投影補間(PI)ピクチャバッファ1560は、投影補間(PI)ピクチャのために生成される合成済み参照フレームを格納するよう構成されても良い。
動き推定モジュール122は、現在フレームと一緒に、モーフィング参照フレーム及び/又は超解像度(SR)ピクチャ及び投影補間(PI)ピクチャに基づき、動きベクトルデータを生成しても良い。幾つかの例では、動き推定モジュール122は、インター予測モジュールと考えられても良い。例えば、動きベクトルデータは、インター予測に用いられても良い。インター予測が適用される場合、特性及び動き補償フィルタリング予測モジュール123は、議論されるように局所デコードの部分として動き補償を適用しても良い。
図16は、本開示の少なくとも幾つかの実装に従って配置される、特性及び動き補償された予測を実行する別の例示的なデコーダサブシステム1601の説明図である。図示のように、デコーダ予測サブシステム1601は、デコード済みピクチャバッファ210、モーフィング済みピクチャ生成モジュール211、合成済みピクチャ生成モジュール212、及び/又は特性及び動き補償済みフィルタリング予測モジュール213を有しても良い。
図示のように、品質復元フィルタリングモジュールの出力は、デコード済みピクチャバッファ210へ送信されても良い。幾つかの例では、品質復元フィルタリングモジュールの出力は、他のフレームを符号化するための予測に用いられ得る最終再構成済みフレームであっても良い(例えば、最終再構成済みフレームは、参照フレーム等であっても良い)。議論したように、予測動作による補償は、インター及び/又はイントラ予測補償を含んでも良い。図示のように、インター予測補償は、モーフィング済みピクチャ生成モジュール211、合成済みピクチャ生成モジュール212、及び/又は特性及び動き補償済みフィルタリング予測モジュール213を含む1又は複数のモジュールにより実行されても良い。
モーフィング済みピクチャ生成モジュ―ル211は、モーフィング済みピクチャ生成器(MPG)1699、並びにモーフィング済み予測参照(MPR)ピクチャバッファ1698を有しても良い。モーフィング済みピクチャ生成器(MPG)1699は、(例えば、入力ビットストリームから決定される)逆量子化済みモーフィングパラメータを用いて、モーフィング済み参照フレームを生成しても良い。例えば、モーフィング済みピクチャ生成器(MPG)1699は、利得補償済み予測生成器1605、ブラー補償済み予測生成器1610、支配的動き補償済み予測生成器1615、整合性補償済み予測生成器1620、等、及び/又はこれらの組合せを有しても良い。利得補償済み予測生成器1605は、利得変化を解決するために適応されるモーフィング済み予測参照ピクチャを生成するよう構成されても良い。ブラー補償済み予測生成器1610は、ブラー変化を解決するために適応されるモーフィング済み予測参照ピクチャを生成するよう構成されても良い。支配的動き補償済み予測生成器1615は、支配的動き変化を解決するために適応されるモーフィング済み予測参照ピクチャを生成するよう構成されても良い。整合性補償済み予測生成器1620は、整合性変化を解決するために適応されるモーフィング済み予測参照ピクチャを生成するよう構成されても良い。
モーフィング済みピクチャ生成器(MPG)1699は、このように生成されたモーフィング済み参照フレームを、モーフィング済み予測参照(MPR)ピクチャバッファ1698に格納しても良い。例えば、モーフィング済み予測参照(MPR)ピクチャバッファ1698は、利得補償済み(Gain Compensated:GC)ピクチャバッファ1625、ブラー補償済み(:Blur CompensatedBC)ピクチャバッファ1630、支配的動き補償済み(Dominant Motion Compensated:DC)ピクチャバッファ1635、整合性補償済み(Registration Compensated:RC)ピクチャバッファ1640、等、及び/又はこれらの組合せを有しても良い。利得補償済み(GC)ピクチャバッファ1625は、利得変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成される。ブラー補償済み(BC)ピクチャバッファ1630は、ブラー変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。支配的動き補償済み(DC)ピクチャバッファ1635は、支配的動き変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。整合性補償済み(RC)ピクチャバッファ1640は、整合性変化を解決するために適応されるモーフィング済み参照フレームを格納するよう構成されても良い。
合成済みピクチャ生成モジュール212は、合成済みピクチャ生成器(SPG)1697、並びに合成済み予測参照(SPR)ピクチャバッファ1696を有しても良い。合成済みピクチャ生成器(SPG)1697は、超解像度(SR)ピクチャ及び投影補間(PI)ピクチャなどのような1又は複数の種類の合成済み予測参照ピクチャを、入力ビットストリーム201から決定されるパラメータに基づき生成するよう構成されても良い。このように生成された合成済み参照フレームは、合成済み予測参照(SPR)ピクチャバッファ1696に格納されても良く、特性及び動き補償済みフィルタリング予測モジュール213により用いられても良い。例えば、合成済みピクチャ生成器(SPG)1697は、超解像度ピクチャ生成器1645、投影軌跡ピクチャ生成器1650、等、及び/又はこれらの組合せを有しても良い。超解像度ピクチャ生成器1645は、合成済み予測参照ピクチャの超解像度(SR)種類を生成するよう構成されても良い。投影軌跡ピクチャ生成器1650は、合成済み予測参照ピクチャの投影補間(PI)種類を生成するよう構成されても良い。
合成済みピクチャ生成器(SPG)1697は、超解像度(SR)ピクチャ及び投影補間(PI)ピクチャ等を、これらのフレームにおける効率的な動き補償された予測のために生成しても良い。このように生成された合成済み参照フレームは、合成済み予測参照(SPR)ピクチャバッファ1696に格納されても良く、現在フレームの効率的な動き(及び特性)補償された予測のために、特性及び動き補償済みフィルタリング予測モジュール213により用いられても良い。
例えば、合成済み予測参照(SPR)ピクチャバッファ1696は、超解像度(SR)ピクチャバッファ1655、投影補間(PI)ピクチャバッファ1660、等、及び/又はこれらの組合せを有しても良い。超解像度(SR)ピクチャバッファ1655は、超解像度(SR)ピクチャのために生成される合成済み参照フレームを格納するよう構成されても良い。投影補間(PI)ピクチャバッファ1660は、投影補間(PI)ピクチャのために生成される合成済み参照フレームを格納するよう構成されても良い。
インター予測が適用される場合、特性及び動き補償済みフィルタリング予測モジュール213は、現在フレームと一緒に、モーフィング済み参照フレーム及び/又は超解像度(SR)ピクチャ及び投影補間(PI)ピクチャに基づき、動き補償を適用しても良い。
図17は、本開示の少なくとも幾つかの実装に従って配置される例示的なエンコーダサブシステム1700の説明図である。図示のように、エンコーダサブシステム1700は、符号化パーティション生成モジュール107、エンコード制御モジュール103、適応型変換モジュール108、適応型量子化モジュール109、及び/又は適応型エントロピーエンコーダモジュール110を有しても良い。提示の明確さのために図17に示さないが、ビデオデータは、差分器106、予測パーティション生成モジュール105、等から符号化パーティション生成モジュール107に入力されても良い。符号化パーティション生成モジュール107により受信されたビデオデータは、例えば、予測誤差データパーティション、予測パーティション、タイル若しくはスーパーフラグメント、元のピクセルデータ、ウェーブレットデータ、残差データ、又は本願明細書で議論される任意の他のビデオデータのような任意の適切なビデオデータであっても良い。ビデオデータは、例えば、ルマデータ又はクロマデータを提供し又は表しても良い。図示のように、例示的なエンコーダサブシステム1700では、ビデオデータは、符号化パーティション生成モジュール107により受信されても良い。
図示のように、符号化パーティション生成モジュール107は、kd木イントラ予測/符号化パーティショナモジュール1701と、bi木符号化パーティショナモジュール1702と、を有しても良い。スイッチ1703の制御下で、受信されたビデオデータは、kd木イントラ予測/符号化パーティショナモジュール1701又はbi木符号化パーティショナモジュール1702へ送信されても良い。例えば、スイッチ1703は、ビデオデータのピクチャ種類及び/又はビデオデータに関連する予測種類に基づき、ビデオデータをルーティングしても良い。例えば、ピクチャ種類がF/B−ピクチャ又はP−ピクチャであり、及び予測種類がインター予測等であるとき、ビデオデータは、予測誤差データパーティション(例えば、予測パーティションの誤差データ又は残差)を有しても良く、スイッチ1703は、符号化パーティションへのパーティショニングのために、ビデオデータをbi木符号化パーティショナモジュール1702にルーティングしても良い。例えば、ピクチャ種類がF/B−ピクチャ又はP−ピクチャであり、及び予測種類がイントラ予測であるとき、ビデオデータは、タイル又はスーパーフラグメントビデオを有しても良く、スイッチ1703は、(1レベルのみのパーティショニングが実行できるので)予測パーティション又は符号化パーティションとしてラベル付けされ得るパーティションへのパーティショニングのために、ビデオデータをbi木符号化パーティショナモジュール1702へルーティングしても良い。上述のように、このような例では、パーティショニングは、bi木符号化パーティショナモジュール1702又は予測パーティション生成モジュール105により実行されても良い。例えば、ピクチャ種類がI−ピクチャであるとき(例えば、イントラ予測を用いて全体が符号化され得る)、ビデオデータは、タイル又はスーパーフラグメントを有しても良く、スイッチ1703は、(1レベルのみのパーティショニングが実行できるので)予測パーティション又は符号化パーティションとしてラベル付けされ得るパーティションへのパーティショニングのために、ビデオデータをkd木符号化パーティショナモジュール1701へルーティングしても良い。上述のように、このような例では、パーティショニングは、kd木符号化パーティショナモジュール1701又は予測パーティション生成モジュール105により実行されても良い。
bi木符号化パーティショナモジュール1702と共に図示されるが、幾つかの例では、符号化パーティション生成モジュール107は、kd木パーティショニング技術を用いて予測パーティションをパーティショニングし得るモジュール1701の代わりに、kd木符号化パーティショナモジュールを実装しても良い。同様に、kd木イントラ予測/符号化パーティショナモジュール1701と共に図示されるが、幾つかの例では、符号化パーティション生成モジュール107は、bi木パーティショニング技術を用いて予測パーティションをパーティショニングし得るモジュール1702の代わりに、bi木符号化パーティショナモジュールを実装しても良い。
上述のように、幾つかの例では、I−ピクチャイントラ符号化におけるように、1レイヤのみのパーティショニングが適用されても良く、予測パーティショニング又は符号化パーティショニングとしてラベル付けされても良い。したがって、幾つかの例では、符号化パーティション生成器107は、I−ピクチャタイル又はスーパーフラグメント又はフレームを、kd木イントラ予測/符号化パーティショナモジュール1701によるkd木パーティショニング技術を用いたパーティショニングのために受信しても良い。他の例では、I−ピクチャは、予測パーティション生成器105により予めパーティショニングされていても良く、更なるパーティショニングが必要なくても良い。このような例では、kd木イントラ予測/符号化パーティショナモジュール1701は、バイパスされても良い。いずれの例でも、I−ピクチャパーティション(予測パーティション又は符号化パーティションとしてラベル付けされる)は、適応型変換モジュール108へ送信されても良い。
上述のように、幾つかの例では、P−又はF/B−ピクチャイントラ符号化で、1レイヤのみのパーティショニングが適用されても良く、予測パーティショニング又は符号化パーティショニングとしてラベル付けされても良い。したがって、幾つかの例では、符号化パーティション生成器107は、P−又はF/B−ピクチャタイル又はスーパーフラグメント又はフレームを、bi木符号化パーティショナモジュール1702によるbi木パーティショニング技術を用いるパーティショニングのために受信しても良い(このような例では、bi木符号化パーティショナモジュール1701は、bi木予測/符号化パーティショナモジュールと考えられる)。他の例では、P−又はF/B−ピクチャは、予測パーティション生成器105により予めパーティショニングされていても良く、更なるパーティショニングが必要なくても良い。このような例では、bi木符号化パーティショナモジュール1702は、バイパスされても良い。いずれの例でも、P−又はF/B−ピクチャパーティション(予測パーティション又は符号化パーティションとしてラベル付けされる)は、適応型変換モジュール108へ送信されても良い。
幾つかの例では、各イントラ予測パーティション毎に、予測方向(例えば、9又は31個の予測方向のうちの1つ)は、イントラ予測パーティションに関連付けられて、過去のデコード済みの因果関係を示す領域、前の近隣タイル及び/又は現在フレームの同じタイル内の近隣パーティションを用いて、イントラ予測が各予測パーティション毎に行えるようにしても良い。
bi木符号化パーティショナモジュール1702は、図19に関して本願明細書で更に議論するように、bi木パーティショニング技術を用いて、ビデオデータを複数のパーティションにパーティショニングしても良い。bi木符号化パーティショナモジュール1702は、水平方向及び垂直方向のパーティションへの交互の分割を可能にする柔軟なパーティショニングを提供できる。このような技術は、水平又は垂直方向又は両方向の切断を可能にし、それにより、複数の柔軟なパーティションを可能にする。kd木イントラ予測/符号化パーティショナモジュール1701は、図20に関して本願明細書で更に議論するように、kd木パーティショニング技術を用いて、ビデオデータを複数のパーティションにパーティショニングしても良い。例えば、kd木イントラ予測/符号化パーティショナモジュール1701は、パーティションの中間点で及びパーティションに沿って1/4及び3/4の地点での両方で、水平方向及び垂直方向のパーティションへの交互の分割を可能にする、パーティショニングの更に大きな柔軟性を提供できる。このような増大は、オーバーヘッド及び計算の増大を引き起こし、例えばI−ピクチャについて正しいとされる。図示のように、パーティション又はサブパーティション(例えば、予測のために予め定められたパーティションの符号化パーティション)は、符号化パーティション生成モジュール107から適応型変換モジュール108へ送信されても良い。
先ず、(例えば、I−ピクチャについて)kd木パーティションを例に取ると、パーティション(例えば、予測又は符号化)は、kd木イントラ予測/符号化パーティショナモジュール1701又は予測パーティション生成モジュール105から、適応型変換モジュール108へ送信されても良い。例えば、タイル又はスーパーフラグメントは、パーティショニング(例えば、予測のためのパーティション)を生成するために、kd木パーティショニング技術を用いてパーティショニングされても良い。イントラ予測は、予測誤差データパーティションを生成するために元のピクセルデータとの差分を取られ得る予測パーティションを生成するために、予測のためのパーティションについて実行されても良い。上述のように、選択されたパーティショニングは、レート歪み最適化等に基づき決定されても良い。選択されたパーティショニングに関連付けられた予測誤差データパーティション(及び/又は予測パーティション)は、適応型変換モジュール108へ送信されても良い。上述のように、このような予測パーティションは、代替で、単一レベルのみのパーティショニングが実行できるので、符号化パーティションとしてラベル付けされても良い。
図示のように、適応型変換モジュール108は、コンテンツ適応型変換モジュール1704と、固定変換モジュール1705と、を有しても良く、これらはスイッチ1706、1707の動作に基づき選択的に動作しても良い。例えば、コンテンツ適応型変換は、近隣ビデオデータ(例えば、近隣ブロック、パーティション、等)のデコードから決定され得るコンテンツ依存基底関数による変換、又は、上述のように、エンコーダから(例えば、ビットストリームにより)デコーダへデコードのために送信されなければならない関連変換データによる変換を有しても良く、固定変換は、固定基底関数を有し及び変換係数のみがデコードのために送信されなければならない固定変換を有しても良い。
幾つかの例では、コンテンツ適応型変換モジュール1704は、例えば、パラメータ変換、パラメータHaar変換、ハイブリッドパラメータHaar変換(例えば、一方向のパラメータHaar変換及び直交方向の離散変換)、パラメータスラント変換、ハイブリッドパラメータスラント変換、等のような適応型変換を適用しても良い。幾つかの例では、適応型変換モジュール1704は、閉形式ハイブリッドパラメータ変換又は閉形式ハイブリッドパラメータHaar変換を適用しても良い。図示のように、幾つかの例では、コンテンツ適応型変換モジュール1704は、小乃至中の大きさのパーティションに適用されても良い。例えば、小乃至中の大きさのパーティションは、16ピクセル以下の高さを有し16ピクセル以下の幅を有するパーティション又はブロックを有しても良い。例えば、小乃至中の大きさのパーティション又はブロックは、4x4ピクセル、4x8ピクセル、8x4ピクセル、8x8ピクセル、4x16ピクセル、16x4ピクセル、8x16ピクセル、16x8ピクセル、16x16ピクセル、等の大きさを有するパーティションを有しても良い。
幾つかの例では、固定変換モジュール1705は、例えば、離散コサイン変換、離散コサイン変換近似、等のような離散変換を適用しても良い。図示のように、幾つかの例では、固定変換モジュール1705は、中乃至大の大きさのパーティションに適用されても良い。例えば、中乃至大の大きさのパーティション又はブロックは、16ピクセル以上の高さを有し16ピクセル以上の幅を有するパーティションを有しても良い。例えば、中乃至大の大きさのパーティション又はブロックは、16x16ピクセル、16x32ピクセル、32x16ピクセル、32x32ピクセル、32x64ピクセル、64x32ピクセル、64x64ピクセル、等を含む(正方形及び長方形パーティションを含む)少なくとも16ピクセルの各辺を有する多様なパーティションを有しても良い。幾つかの例では、固定変換モジュール1705は、高精度整数近似を用いて離散コサイン変換を適用しても良い。上述のように、幾つかの例では、コンテンツ適応型変換モジュール1704に供給されるパーティションと、固定変換モジュール1705に供給されるパーティションとの間で重複が存在しても良い。このような例では、コンテンツ適応型変換モジュール1704及び固定変換モジュール1705の両方に供給されるパーティションは、どの変換を使用するかを決定するために評価されても良い。他の例では、重複が存在しなくても良い。例えば、小乃至中の大きさのパーティション又はブロックは、16ピクセル未満の幅及び16ピクセル未満の高さ等を有するパーティション又はブロックを有しても良く、中乃至大の大きさのピクセルは、16ピクセルより大きい幅及び16ピクセルより大きい高さ等を有するパーティションを有しても良い。他の例では、モジュールである中の大きさのブロックが変換処理のためにいつ送信されるかを決定するために、発見的方法が用いられても良い。
上述のように、スイッチ1706、1707は、kd木パーティション(例えば、I−ピクチャのパーティション)の変換モジュールを選択するよう動作し得る。幾つかの例では、スイッチ1706、1707及び/又は符号化パーティション生成器107は、エンコード制御部103のレート歪み最適化セレクタモジュール1796の制御下で動作しても良い。レート歪み最適化セレクタモジュール1796は、例えば、適応型変換モジュール108のコンテンツ適応型変換(小乃至中の大きさのブロック)1704、1708に小乃至中のパーティションを、及び適応型変換モジュール108の固定変換(中乃至大のブロック)1705、1709に中乃至大のパーティションを供給することに基づき、所与のパーティションについて、更に何個のパーティション(例えば、分割)及び関連変換サイズが最適エンコードを生じるかのような最適な選択を決定しても良い。例えば、幾らかのオーバーヘッド(例えば、追加のエンコード済みビット)は、適応型基底関数を構築する等のためにデコーダにより必要とされ得る変換データのように適応型変換に関連付けられても良い。しかしながら、このようなオーバーヘッドは、例えば、変換種類(例えば、xmtyp;例えばパーティションの変換が適応型か離散型か)、変換方向(例えば、xmdir;ハイブリッド変換においてパラメータ変換が水平か垂直かを記述する)、及び/又は変換モード(例えば、xmmode;予測差分信号又は元の信号の使用のモード選択の間でイントラ符号化信号のためにのみ用いられる)指示子のセットのような基本情報を適応型変換モジュール108へ送信することにより低減できる。量子化/レート制御部1797は、変化する帯域幅制限に応答して、エンコード処理の不可逆性を変化させる量子化パラメータを調整するよう構成されても良い。
次にbi木パーティションの例を考えると、符号化パーティション(例えば、F/B−及び−ピクチャの符号化パーティション)は、適応型変換モジュール108へ送信されても良い。適応型変換モジュール108は、図示のように、スイッチ1710、1711の動作に基づき選択的に作動され得るコンテンツ適応型変換モジュール1708及び固定変換モジュール1709を有しても良い。コンテンツ適応型変換モジュール1708、固定変換モジュール1709、及びスイッチ1710、1711は、コンテンツ適応型変換モジュール1704、固定変換モジュール1705、及びスイッチ1706、1707と同様に動作しても良く、これらの動作は簡潔さのために繰り返されない。図示のように、コンテンツ適応型変換モジュール108は、スイッチ1712も有しても良い。スイッチ1712は、上述のように、種々のビデオデータ(例えば、I−ピクチャ又はF/B−及びP−ピクチャに関連するビデオデータパーティション)のための適正経路を選択するために、スイッチ1703と連動して作動されても良い。
図17のエンコーダサブシステム1700では、幾つかの例では、ハイブリッドパラメータHaar変換のように、コンテンツ適応型変換は、2の冪乗を有するパーティションについてのみ実行されても良い。このような例では、利用可能な変換に適応するために、パーティションが2の冪乗だけであるよう、kd木イントラ予測/符号化パーティショナモジュール1701により制約が課されても良い。幾つかの例では、小乃至中のパーティションが2の冪乗の大きさに保たれない場合、固定変換(例えば、離散コサイン変換等)は、追加シグナリングオーバヘッドを必要とせずに、このようなパーティションのために使用できる。
図18は、本開示の少なくとも幾つかの実装に従って配置される例示的なエンコーダサブシステム1800の説明図である。図示のように、エンコーダサブシステム1800は、符号化パーティション生成モジュール107、エンコード制御モジュール103、適応型変換モジュール108、適応型量子化モジュール109、及び/又は適応型エントロピーエンコーダモジュール110を有しても良い。提示の明確さのために図18に示さないが、ビデオデータは、差分器106、予測パーティション生成モジュール105、等から符号化パーティション生成モジュール107に入力されても良い。符号化パーティション生成モジュール107により受信されたビデオデータは、例えば、予測誤差データパーティション、予測パーティション、タイル若しくはスーパーフラグメント、元のピクセルデータ、ウェーブレットデータ、残差データ、又は本願明細書で議論される任意の他のビデオデータのような任意の適切なビデオデータであっても良い。ビデオデータは、例えば、ルマデータ又はクロマデータを提供し又は表しても良い。図示のように、例示的なエンコーダサブシステム1700では、ビデオデータは、符号化パーティション生成モジュール107により受信されても良い。
図示のように、符号化パーティション生成モジュール107は、スイッチ1801の制御下で作動される、図17に関して上述したようなkd木イントラ予測/符号化パーティショナモジュール1701及びbi木符号化パーティショナモジュール1702を有しても良い。スイッチ1801の制御下で、受信されたビデオデータは、kd木イントラ予測/符号化パーティショナモジュール1701又はbi木符号化パーティショナモジュール1702へ送信されても良い。例えば、スイッチ1801は、ビデオデータのピクチャ種類及び/又はビデオデータに関連する予測種類に基づき、ビデオデータをルーティングしても良い。例えば、ピクチャ種類がF/B−ピクチャ又はP−ピクチャであり、及び予測種類がインター予測等であるとき、ビデオデータは、予測誤差データパーティション(例えば、予測パーティションの誤差データ又は残差)を有しても良く、スイッチ1801は、符号化パーティションへのパーティショニングのために、ビデオデータをbi木符号化パーティショナモジュール1702にルーティングしても良い。例えば、ピクチャ種類がF/B−ピクチャ又はP−ピクチャであり、及び予測種類がイントラ予測であるとき、ビデオデータは、タイル又はスーパーフラグメントビデオを有しても良く、スイッチ1801は、(1レベルのみのパーティショニングが実行できるので)予測パーティション又は符号化パーティションとしてラベル付けされ得るパーティションへのパーティショニングのために、ビデオデータをbi木符号化パーティショナモジュール1702へルーティングしても良い。上述のように、このような例では、パーティショニングは、bi木符号化パーティショナモジュール1702又は予測パーティション生成モジュール105により実行されても良い。例えば、ピクチャ種類がI−ピクチャであるとき(例えば、イントラ予測を用いて全体が符号化され得る)、ビデオデータは、タイル又はスーパーフラグメントを有しても良く、スイッチ1703は、(1レベルのみのパーティショニングが実行できるので)予測パーティション又は符号化パーティションとしてラベル付けされ得るパーティションへのパーティショニングのために、ビデオデータをkd木符号化パーティショナモジュール1701へルーティングしても良い。上述のように、このような例では、パーティショニングは、kd木符号化パーティショナモジュール1701又は予測パーティション生成モジュール105により実行されても良い。
上述のように、bi木符号化パーティショナモジュール1702と共に図示されるが、幾つかの例では、符号化パーティション生成モジュール107は、kd木パーティショニング技術を用いて予測パーティションをパーティショニングし得るモジュール1701の代わりに、kd木符号化パーティショナモジュールを実装しても良い。同様に、kd木イントラ予測/符号化パーティショナモジュール1701と共に図示されるが、幾つかの例では、符号化パーティション生成モジュール107は、bi木パーティショニング技術を用いて予測パーティションをパーティショニングし得るモジュール1702の代わりに、bi木符号化パーティショナモジュールを実装しても良い。
上述のように、幾つかの例では、I−ピクチャイントラ符号化におけるように、1レイヤのみのパーティショニングが適用されても良く、予測パーティショニング又は符号化パーティショニングとしてラベル付けされても良い。したがって、幾つかの例では、符号化パーティション生成器107は、I−ピクチャタイル又はスーパーフラグメント又はフレームを、kd木イントラ予測/符号化パーティショナモジュール1701によるkd木パーティショニング技術を用いたパーティショニングのために受信しても良い。他の例では、I−ピクチャは、予測パーティション生成器105により予めパーティショニングされていても良く、更なるパーティショニングが必要なくても良い。このような例では、kd木イントラ予測/符号化パーティショナモジュール1701は、バイパスされても良い。いずれの例でも、I−ピクチャパーティション(予測パーティション又は符号化パーティションとしてラベル付けされる)は、適応型変換モジュール108へ送信されても良い。
上述のように、幾つかの例では、P−又はF/B−ピクチャイントラ符号化で、1レイヤのみのパーティショニングが適用されても良く、予測パーティショニング又は符号化パーティショニングとしてラベル付けされても良い。したがって、幾つかの例では、符号化パーティション生成器107は、P−又はF/B−ピクチャタイル又はスーパーフラグメント又はフレームを、bi木符号化パーティショナモジュール1702によるbi木パーティショニング技術を用いるパーティショニングのために受信しても良い(このような例では、bi木符号化パーティショナモジュール1701は、bi木予測/符号化パーティショナモジュールと考えられる)。他の例では、P−又はF/B−ピクチャは、予測パーティション生成器105により予めパーティショニングされていても良く、更なるパーティショニングが必要なくても良い。このような例では、bi木符号化パーティショナモジュール1702は、バイパスされても良い。いずれの例でも、P−又はF/B−ピクチャパーティション(予測パーティション又は符号化パーティションとしてラベル付けされる)は、適応型変換モジュール108へ送信されても良い。
bi木符号化パーティショナモジュール1702は、図19に関して本願明細書で更に議論するように、bi木パーティショニング技術を用いて、ビデオデータを複数のパーティションにパーティショニングしても良い。kd木イントラ予測/符号化パーティショナモジュール1701は、図20に関して本願明細書で更に議論するように、kd木パーティショニング技術を用いて、ビデオデータを複数のパーティションにパーティショニングしても良い。本願明細書に上述のように、bi木符号化パーティショナモジュール1702は、bi木パーティショニング技術を用いて(例えば)予測誤差データパーティションを複数の符号化パーティションにパーティショニングしても良く、kd木イントラ予測/符号化パーティショナモジュール1701は、kd木パーティショニング技術を用いてビデオデータ(例えば、I−ピクチャタイル又はスーパーフラグメント)を複数のパーティションにパーティショニングしても良い。図18に示すように、符号化パーティション、又はI−ピクチャの例では(ラベル付けされたように)符号化パーティション若しくは予測パーティションは、符号化パーティション生成モジュール107から適応型変換モジュール108へ送信されても良い。
先ずkd木パーティションを例にとると、(例えば、I−ピクチャの)パーティションは、適応型変換モジュール108のコンテンツ適応型変換モジュール1802及び固定変換モジュール1803へ送信されても良い。例えば、タイル又はスーパーフラグメントは、パーティショニング(例えば、予測のためのパーティション)を生成するために、kd木パーティショニング技術を用いてパーティショニングされても良い。イントラ予測は、予測誤差データパーティションを生成するために元のピクセルデータとの差分を取られ得る予測パーティションを生成するために、予測のためのパーティションについて実行されても良い。上述のように、選択されたパーティショニングは、レート歪み最適化等に基づき決定されても良い。選択されたパーティショニングに関連付けられた予測誤差データパーティション(及び/又は予測パーティション)は、適応型変換モジュール108へ送信されても良い。上述のように、このような予測パーティションは、代替で、単一レベルのみのパーティショニングが実行できるので、符号化パーティションとしてラベル付けされても良い。
図示のように、適応型変換モジュール108は、コンテンツ適応型変換モジュール1802及び固定変換モジュール1803を有しても良い。例えば、コンテンツ適応型変換は、近隣ビデオデータ(例えば、近隣ブロック、パーティション、等)のデコードから決定され得るコンテンツ依存基底関数による変換、又は、上述のように、エンコーダから(例えば、ビットストリームにより)デコーダへデコードのために送信されなければならない関連変換データによる変換を有しても良く、固定変換は、固定基底関数を有し及び変換係数のみがデコードのために送信されなければならない変換を有しても良い。
幾つかの例では、コンテンツ適応型変換モジュール1802は、例えば、パラメータ変換、パラメータHaar変換、ハイブリッドパラメータHaar変換(例えば、一方向のパラメータHaar変換及び直交方向の離散変換)、パラメータスラント変換、ハイブリッドパラメータスラント変換、等のような適応型変換を適用しても良い。幾つかの例では、適応型変換モジュール1802は、閉形式ハイブリッドパラメータ変換又は閉形式ハイブリッドパラメータHaar変換を適用しても良い。図示のように、幾つかの例では、コンテンツ適応型変換モジュール1802は、小乃至中の大きさのパーティション又はブロックに適用されても良い。例えば、小乃至中の大きさのパーティション又はブロックは、16ピクセル以下の高さを有し16ピクセル以下の幅を有するパーティション又はブロックを有しても良い。例えば、小乃至中の大きさのパーティション又はブロックは、4x4ピクセル、4x8ピクセル、8x4ピクセル、8x8ピクセル、4x16ピクセル、16x4ピクセル、8x16ピクセル、16x8ピクセル、16x16ピクセル、等の大きさを有するパーティション又はブロックを有しても良い。
幾つかの例では、固定変換モジュール1803は、例えば、離散コサイン変換、離散コサイン変換近似、等のような離散変換を適用しても良い。図示のように、幾つかの例では、固定変換モジュール1803は、中乃至大の大きさのパーティションに適用されても良い。例えば、中乃至大の大きさのパーティション又はブロックは、16ピクセル以上の高さを有し16ピクセル以上の幅を有するパーティション又はブロックを有しても良い。例えば、中乃至大の大きさのパーティション又はブロックは、16x16ピクセル、16x32ピクセル、32x16ピクセル、32x32ピクセル、32x64ピクセル、64x32ピクセル、64x64ピクセル、等を含む(正方形及び長方形パーティションを含む)少なくとも16ピクセルの各辺を有する多様なパーティション又はブロックを有しても良い。幾つかの例では、固定変換モジュール1803は、高精度整数近似を用いて離散コサイン変換を適用しても良い。
次にbi木パーティションの例を考えると、符号化パーティション(例えば、F/B−及びP−ピクチャの符号化パーティション)は、適応型変換モジュール108の適応型変換モジュール1804及び離散変換モジュール1805へ送信されても良い。適応型変換モジュール1804及び離散変換モジュール1805は、適応型変換モジュール1802及び離散変換モジュール1804と同様に動作しても良く、これらの動作は簡潔さのために繰り返されない。図示のように、適応型変換モジュール108は、種々のビデオデータのために適正経路を選択するために、スイッチ1801と連動して作動し得るスイッチ1806も有しても良い。
コンテンツ適応型変換モジュール1802及び固定変換モジュール1803の両方に、又はコンテンツ適応型変換モジュール1804及び離散変換モジュール1805の両方に供給されるパーティション(例えば、小乃至中の大きさのパーティション)では、レート歪み最適化セレクタモジュール1796によるトレードオフ分析に基づき、どの変換モジュールの結果を使用するかについて決定されても良い。中乃至大の大きさのパーティションでは、依然として固定変換がこのようなパーティションに適用され得るので、エンコーダサブシステム1700に関する性能変化は実質的に存在しない。エンコーダサブシステム1800は、小乃至中の大きさのパーティションに関して、追加計算及び決定オーバーヘッドの犠牲を払って、符号化効率/ビット節約の観点から、最適決定を行う能力を提供できる。このようなオーバーヘッドは、変換種類(例えば、xmtyp;例えばパーティションの変換が適応型か離散型か)、変換方向(例えば、xmdir;ハイブリッド変換においてパラメータ変換が水平か垂直かを記述する)、及び/又は変換モード(例えば、xmmode;予測差分信号又は元の信号の使用のモード選択の間でイントラ符号化信号のためにのみ用いられる)指示子のセットとしてエンコードされても良い。図18に示すように、このような指示子又はフラグ又はデータ等は、出力ビットストリーム111のようなビットストリーム内にエンコードするために適応型エントロピーエンコーダモジュール110に供給されても良い。
図17〜18に関して上述したように、種々のパーティション(例えば、インター予測のためのF/B−又はP−ピクチャの符号化パーティション、又はイントラ予測のためのI−、F/B−若しくはP−ピクチャの予測/符号化パーティション)は、変換符号化されても良い。このような例では、パーティションに関連付けられたデータ(例えば、パーティションの大きさ又は位置を記述するデータ)も、出力ビットストリーム111等のようなビットストリームにより供給されても良い。
さらに、上述のように、小、中、及び大のパーティションの概念は、種々の状況(例えば、ピクチャ種類、及び/又はルマ若しくはクロマ)で議論されている。次の表は、幾つかの実装における例示的なブロックサイズ及び関連する変換種類を示す。
例えば、表6は、ルマの(例えばkd木パーティションの)イントラ符号化のための(例えばI−ピクチャの)ハイブリッドパラメータHaar変換のようなコンテンツ適応型変換のための例示的なパーティション又はブロック(例えば、小乃至中の大きさの予測/符号化パーティション)サイズを示す。
[表6]ルマのイントラ予測のコンテンツ適応型変換のための例示的なパーティション
例えば、表7は、クロマの(例えばkd木パーティションの)イントラ符号化のための(例えばI−ピクチャの)ハイブリッドパラメータHaar変換のようなコンテンツ適応型変換のための例示的なパーティション(例えば、小乃至中の大きさの予測/符号化パーティション)を示す。
[表7]クロマのイントラ予測のコンテンツ適応型変換のための例示的なパーティション
例えば、表8は、ルマの(例えばbi木パーティションの)インター符号化のための(例えばF/B及びP−ピクチャの)ハイブリッドパラメータHaar変換のようなコンテンツ適応型変換のための例示的なパーティション(例えば、小乃至中の大きさの予測/符号化パーティション)を示す。
[表8]ルマのインター予測のコンテンツ適応型変換のための例示的なパーティション
例えば、表9は、クロマの(例えばbi木パーティションの)インター符号化のための(例えばF/B及びP−ピクチャの)ハイブリッドパラメータHaar変換のようなコンテンツ適応型変換のための例示的なパーティション(例えば、小乃至中の大きさの予測/符号化パーティション)を示す。
[表9]クロマのインター予測のコンテンツ適応型変換のための例示的なパーティション
例えば、イントラ符号化のための(例えば、kd木パーティションを用いるI−ピクチャの)及びインター符号化のための(例えば、bi木パーティションを用いるF/B及びP−ピクチャの)離散コサイン変換のような固定変換では(例えば、全ての符号化パーティション)、4x4から64x64までの4を因数に持つ大きさの全ての組合せは、適切な変換を有し得る。同様に、固定変換又はルマでは、2x2から32x32までの2を因数に持つ大きさの全ての組合せは、適切な変換を有し得る。
図19は、本開示の少なくとも幾つかの実装に従って配置されたbi木パーティショニング技術を用いるフレーム部分1900の例示的なパーティショニングを示す。図示のように、幾つかの例では、フレーム部分1900は、正方形を有しても良い。上述のように、種々の例において、フレーム部分1900は、任意の適切な形を有しても良い。さらに、フレーム部分1900は、本願明細書で議論したようなタイル又はスーパーフラグメント等を有しても良い。さらに、幾つかの例では、フレーム部分1900はそれ自体が1つのパーティションであっても良く、したがって、図示のパーティションがサブパーティションと考えられる。このような例は、本願明細書で以下に更に議論するように、符号化(例えば、変換符号化)のためにサブパーティション生成モジュール107によりパーティションが更にパーティショニングされるとき、起こり得る。
図19に示すように、bi木パーティショニングは、パーティショニングの行程を有しても良い。フレーム部分1900から開始すると、パーティション1はフレーム部分1900自体として定められる。パーティション1は、2個のパーティション2、3に垂直方向にパーティショニングされても良い。各パーティション2、3は、今度は垂直方向に、パーティション4、5(例えば、パーティション3のパーティション)及びパーティション6、7(例えば、パーティション2のパーティション)に更にパーティショニングされても良い。図19の(上から)2番目の行は、パーティション3のパーティション8、9への更なる垂直方向のパーティショニングを、パーティション2のパーティション10、11への更なる垂直方向のパーティショニングを示す。図19の(上から)3番目の行は、パーティション1からパーティション12、13を生成するための、(例えば、(上から)1番目の行の垂直方向のパーティショニングの代わりに)水平方向のパーティショニングを示す。図19の(上から)3番目の行は、パーティション14、15(例えば、パーティション13のパーティション)及びパーティション16、17(例えば、パーティション12からのパーティション)を生成するための、パーティション12、13の更なる垂直方向のパーティショニングも示す。4番目又は一番下の行は、パーティション18、19を生成するためのパーティション12の、及びパーティション20、21を生成するためのパーティション13の、更なる垂直方向のパーティショニングを示す。図示のように、bi木パーティショニングは、最小パーティションサイズが達成されるまで、各パーティションを2個の等しいパーティションに再分割又はパーティショニングするために、1回に1次元で(例えば、水平方向又は垂直方向に)、再帰的に用いられても良い。bi木パーティショニングは、フレーム部分を種々の数の組合せにパーティショニングしても良く、パーティションの円滑な行程を提供し得る。
図20は、本開示の少なくとも幾つかの実装に従って配置されたkd木パーティショニング技術を用いるフレーム部分2000の例示的なパーティショニングを示す。図示のように、幾つかの例では、フレーム部分2000は、正方形を有しても良い。上述のように、種々の例において、フレーム部分2000は、任意の適切な形を有しても良い。さらに、フレーム部分2000は、本願明細書で議論したようなタイル又はスーパーフラグメント等を有しても良い。
図20に示すように、kd木パーティショニングは、パーティショニングの行程を有しても良い。さらに、図示のように、kd木パーティショニングは、bi木パーティショニングのスーパーセットであっても良く、(図20の上から開始して)図20の行1−4が図19の行1−4と一致し得る。幾つかの例では、図20に示したkd木パーティショニングの行程は、フレーム部分2000を4個の長方形パーティションに特定の次元で(例えば、垂直又は水平に)繰り返し分割しても良い。フレーム部分2000から開始すると、パーティション1はフレーム部分2000自体として定められる。パーティション1は、2個のパーティション2、3に垂直方向にパーティショニングされても良い。各パーティション2、3は、今度は垂直方向に、パーティション4、5(例えば、パーティション3のパーティション)及びパーティション6、7(例えば、パーティション2のパーティション)に更にパーティショニングされても良い。図20の(上から)2番目の行は、パーティション3のパーティション8、9への更なる垂直方向のパーティショニングを、パーティション2のパーティション10、11への更なる垂直方向のパーティショニングを示す。図20の(上から)3番目の行は、パーティション1からパーティション12、13を生成するための、(例えば、(上から)1番目の行の垂直方向のパーティショニングの代わりに)水平方向のパーティショニングを示す。図20の(上から)3番目の行は、パーティション14、15(例えば、パーティション13のパーティション)及びパーティション16、17(例えば、パーティション12のパーティション)を生成するための、パーティション12、13の更なる垂直方向のパーティショニングも示す。(上から)4番目の行は、パーティション18、19を生成するためのパーティション12の、及びパーティション20、21を生成するためのパーティション13の、更なる水平方向のパーティショニングを示す。
上述のように、4番目の行を通じて、kd木パーティショニングはbi木パーティショニングと実質的に一致する。図20の(上から)5番目の行に示すように、フレーム部分2000は、パーティション22、23を生成するために、1/4及び3/4の大きさのパーティションにパーティショニングされても良い。さらに、パーティション23は、パーティション24、25を生成するために垂直方向に半分にパーティショニングされても良く、パーティション22は、パーティション26、27を形成するために垂直方向に半分にパーティショニングされても良い。図20の6番目又は一番下の行に示すように、フレーム部分2000は、パーティション28、29を生成するために、1/4及び3/4の大きさのパーティションにパーティショニングされても良い。さらに、パーティション28は、パーティション30、31を生成するために水平方向に半分にパーティショニングされても良く、パーティション29は、パーティション32、33を形成するために水平方向に半分にパーティショニングされても良い。このようなパーティショニング行程は、最小パーティションが達成されるまで、各パーティションを2個の等しい部分に(二分する)及び2個の等しくない部分に(例えば、1:3の比で)再分割するために、次元を変更しながら(例えば、水平及び垂直に)再帰的に繰り返されても良い。kd木パーティショニングは、パーティション及びサブパーティション(等)の中点においてだけでなく、各軸(access)上で更に正確に、フレーム部分を種々の数の組合せにパーティショニングしても良い。図示の例では、4分の1の精度(accuracy)が用いられる。他の例では、3分の1、5分の1、等の任意の精度が用いられても良い。
図19及び20に関して上述したように、フレーム部分は、様々なパーティションにパーティショニングされても良い。パーティションは、それぞれ、インデックス値によりインデックス付けされ、エンコード制御部103(図1を参照)へ送信されても良い。インデックス付けされ送信されたパーティションは、例えば何百個ものパーティションを有しても良い。1又は複数のパーティションは、図1に関して上述したように、予測及び/又は符号化(例えば、変換符号化;幾つかの例では、符号化のためのパーティションは、サブパーティションに更にパーティショニングされても良い)のために用いられても良い。例えば、I−ピクチャは、イントラ予測を用いて全体が予測されても良く、P−ピクチャは、インター及びイントラ予測を用いても良いが、インター予測は、P−ピクチャの予測の主要な供給源であっても良く、F/B−ピクチャは、インター及びイントラ予測の両方を用いても良い。例えば、エンコード制御部103は、インター予測及びイントラ予測動作で使用するためのパーティションを選択しても良い。インター及び/又はイントラ予測に関連するデータ及び利用されたパーティションを定めるデータは、例えば、以下に詳述するように、ビットストリーム内にエンコードされても良い。
幾つかの例では、広範なパーティショニングオプションは、制限又は制約されても良い。このような制約は、bi木又はkd木パーティショニングの例に適用されても良い。例えば、フレーム部分(例えば、タイル又はスーパーフラグメント)のパーティショニングは、第1の次元(例えば、水平又は垂直)のフレーム部分を二分するとき第1のパーティションを予め定めること、及び第2の次元(例えば、第1の二分と反対)の少なくとも1つのフレーム部分を二分するとき第2の部分を予め定めることを有しても良い。更なるパーティションは、このような初期の制限されたパーティショニングの後にのみ行うことができ、例えば、初期フレーム部分に基づく他の任意のパーティションはもはや利用可能ではない。このような制約は、64x64ピクセルフレーム部分から開始し、32x32の大きさのサブ部分にフレーム部分を分割し、次に、各サブ部分をkd木又はbi木パーティショニングによりパーティショニングしても良く、これはパーティションの数を制限しても良い。
予測パーティション及び/又は符号化パーティションは、エンコーダ及び/又はデコーダによる使用のために定められても良い(例えば、それらの形及び/又は位置が定められても良い)。幾つかの例では、フレーム部分の個々の予測パーティション又は予測パーティションの符号化パーティションは、ピクセルブロックに基づくシンボル−ラン符号化を用いて定められても良い。他の例では、フレーム部分の個々の予測パーティション又は予測パーティションの符号化パーティションは、コードブックを用いて定められても良い。表10は、タイル又はスーパーフラグメントのパ―ティションを定める際に使用するための32x32ピクセルのフラグメントサイズを有する例示的なエントリのbi木パーティショニングコードブックを示す。表10で、大きなXは非終端パーティションを表す。
[表10]bi木パーティショニングコードブックエントリの例
表11は、タイル又はスーパーフラグメントのパーティションを定める際に使用するための32x32ピクセルのフラグメントサイズを有する例示的なエントリのkd木パーティショニングコードブックを示す。
[表11]kd木パーティショニングコードブックエントリの例
表10及び11は、例示的なコードブックエントリのみを示す。エントリの完全なコードブックは、全ての可能なエントリ及びその符号化の完全な又は実質的に完全なリストを提供し得る。幾つかの例では、コードブックは、上述の制約を考慮に入れても良い。幾つかの例では、パーティション(又はサブパーティション)のコードブックエントリに関連するデータは、本願明細書で議論するようにデコーダでの使用のためにビットストリーム内にエンコードされても良い。
上述のように、フレーム部分(例えば、タイル又はスーパーフラグメント)は、予測パーティションを生成するために、選択されたパーティショニング技術(例えば、bi木パーティショニング又はkd木パーティショニング)に基づき、パーティショニングされても良い。予測パーティションは、インター予測技術及び/又はイントラ予測技術に基づくエンコードのために用いられても良い。エンコーダにより実装されるローカルデコードループは、予測パーティションを生成しても良い。予測パーティションは、予測誤差データパーティション又は残差(例えば、予測パーティションと元のピクセルデータとの間の差分)を生成するために用いられても良い。幾つかの例では、予測パーティションは符号化され、したがって、それらは実質的に同義で予測パーティション又は符号化パーティションとして記載され得る。このような例は、例えば、I−ピクチャにおけるイントラ予測の文脈で(又はP−及びF/B−ピクチャの文脈の幾つかの実装で)生じ得る。他の例では(例えば、P−及びF/Bピクチャでは)、予測誤差データパーティションは、それらがエンコードされる必要があるか否かを決定するために評価されても良く、エンコードされる必要がある場合、関連するパーティションは、符号化のために符号化パーティションに更にパーティショニングされても良い。さらに、予測パーティション及び/又は符号化パーティションは、シンボル−ラン符号化又はコードブック等を用いて特徴付けられ又は定められても良い。上述のように、記載した予測パーティション及び/又は符号化パーティション等に関連付けられたデータは、(例えば、エントロピーエンコーダにより)ビットストリーム内にエンコードされても良い。ビットストリームは、デコーダに伝達されても良い。デコーダは、表示用にビデオフレームをデコードするために、エンコード済みビットストリームを用いても良い。
図21は、本開示の少なくとも幾つかの実装に従って配置される例示的なエンコーダフィルタリングサブシステム2100の説明図である。図示のように、フィルタリングサブシステム2100は、再構成ブロッキネス分析及びデブロッキングフィルタ生成器2117、再構成品質分析及びLFフィルタリング生成器2118、動き推定、動き補償分析及び動き補償済みAMフィルタ予測及び参照ピクチャ格納2123、イントラ予測器2124、予測モード分析及びモードセレクタ2125、及び/又は予測効率分析及び拡張予測フィルタリング生成器2130、を有しても良い。
図示の実装では、再構成ブロッキネス分析及びデブロッキングフィルタ生成器2117は、符号化中に生成されたブロッキングの分析、どのようにデブロッキングが適用されるかを制御するためのdbiパラメータの決定が可能であっても良い。
図示の実装では、再構成品質分析及びLFフィルタリング生成器2118は、ループフィルタリングの分析及び実行、lfiパラメータ(例えば、フィルタ係数、フィルタインデックス、フィルタブロックマップ、等)の決定が可能であっても良い。
図示の実装では、動き推定、動き補償分析及び動き補償済みAMフィルタ予測及び参照ピクチャ格納2123は、動き補償済み予測の向上、amiパラメータの決定が可能であっても良い。
図示の実装では、イントラ予測器2124は、イントラ予測の実行が可能であっても良い。
図示の実装では、予測モード分析及びモードセレクタ2125は、ブロック毎に種々の動き予測モードと利用可能なイントラ予測モードとの間の選択、及び予測参照の選択が可能であっても良い。
図示の実装では、予測効率分析及び拡張予測フィルタリング生成器2130は、フィルタリング済みバージョン及び非フィルタリング済みバージョンの両方が予測モード分析及びモードセレクタ2125に供給され得るように、予測信号の任意的なフィルタリングが可能であっても良い、及びepiパラメータの決定が可能であっても良い。
図22は、本開示の少なくとも幾つかの実装により配置される例示的なデコーダサブシステム2200の説明図である。図示のように、デコーダサブシステム2200は、再構成デブロッキングフィルタリング生成器2217、再構成LFフィルタリング生成器2218、動き補償済みAMフィルタリング予測及び参照ピクチャ格納2223、イントラ予測器2224、予測モードセレクタ2225、及び/又は予測EPフィルタ生成器2230を有しても良い。
図示の実装では、再構成デブロッキングフィルタ生成器2217は、デブロッキングが可能であっても良い。再構成デブロッキングフィルタ生成器2217の動作は、例えば図1のエンコーダ100から受信されるdbiパラメータにより制御されても良い。
図示の実装では、再構成LFフィルタリング生成器2218は、ループフィルタリングの実行が可能であっても良い。再構成LFフィルタリング生成器2218の動作は、例えば図1のエンコーダ100から受信されるlfiパラメータにより制御されても良い。
図示の実装では、動き補償済みAMフィルタリング予測及び参照ピクチャ格納2223は、AMフィルタリングが可能であっても良い。動き補償済みAMフィルタリング予測及び参照ピクチャ格納2223の動作は、例えば図1のエンコーダ100から受信されるamiパラメータにより制御されても良い。
図示の実装では、イントラ予測器2224は、イントラ予測の実行が可能であっても良い。
図示の実装では、予測モードセレクタ2225は、例えば入力ビットストリーム201の中のモード選択データに基づき、全ての予測方向がP−及びF/B−ピクチャに適用し得る1つのタイルの各予測方向について、「スキップ」、「自動」、「インター」、「マルチ」、及び「イントラ」の中からの予測モード選択の決定が可能であっても良い。予測モードに加えて、予測モードセレクタ2225は、「インター」又は「マルチ」モード、並びにP−及びF/B−ピクチャかに依存して異なり得る参照種類の選択も可能にする。
図23は、本開示の少なくとも幾つかの実装に従って配置された例示的なエンコーダフィルタサブシステム2300の説明図である。図示のように、エンコーダサブシステム2300は、再構成ブロッキネス分析及びDDフィルタ生成器2317、再構成品質分析及びQRフィルタ生成器2318、動き推定、動き補償分析及び特性及び動き補償済みAPフィルタ予測及びモーフィング済み/合成済み参照ピクチャ格納2323、イントラ予測器2324、予測モード分析及びモードセレクタ2325、予測効率分析及びEIフィルタリング生成器2330、及び/又は予測統合分析及びFIフィルタ生成器2335を有しても良い。
図示の実装では、再構成ブロッキネス分析及びDDフィルタ生成器2317は、符号化中に生成されたブロッキングの分析、どのようにデブロッキングが適用されるかを制御するためのddiパラメータの決定が可能である。再構成ブロッキネス分析及びDDフィルタ生成器2317は、動き補償及び変換符号化のために種々のブロックサイズを用い得るエンコード済みビデオからブロッキネスを除去するために、一度に4個のピクセルに作用しても良い。再構成ブロッキネス分析及びDDフィルタ生成器2317は、統計(PSNR)メトリックを低減することなく、ブロッキネスの出現を更に低減できるディザリング動作も用いても良い。
図示の実装では、再構成品質分析及びQRフィルタ生成器2318は、品質復元フィルタリングの実行、ビットストリームを介してデコーダへ送信され得るqriパラメータの出力、が可能であっても良い。再構成品質分析及びQRフィルタ生成器2318は、非対称、点対称、又は9x9正方形又は9x9若しくは11x9係数のサブセットである形状のハイブリッド(部分的に対象であり部分的に非対称である)であっても良いウィーナーフィルタを用いても良い。再構成品質分析及びQRフィルタ生成器2318は、コードブック検索の使用により、フィルタリングオーバヘッドを最小化できる。したがって、(予測後の)計算した係数は、エンコードされ、デコーダへ送信でき、或いは、履歴フィルタ又はコードブックフィルタへのインデックスがデコーダへ送信されても良い。再構成品質分析及びQRフィルタ生成器2318は、補正項を送信することにより、コードブックからのフィルタ係数を補正しても良く、コードブックはエンコード行程の間に更新されても良い。ルマ及びクロマ信号の両方は、フィルタリングされても良く、異なる形状及びフィルタサイズを用いても良い。
図示の実装では、動き推定、動き補償分析及び特性及び動き補償済みAPフィルタ予測及びモーフィング/合成済み参照ピクチャ格納2323は、適応型精密フィルタリングの実行、及びビットストリームによりデコーダへ送信され得るapiパラメータの出力が可能であっても良い。動き推定、動き補償分析及び特性及び動き補償済みAPフィルタ予測及びモーフィング/合成済み参照ピクチャ格納2323は、16、1/4pel位置の各々について明示的に計算されたフィルタを用い得るウィーナーフィルタを用いても良い。動き推定、動き補償分析及び特性及び動き補償済みAPフィルタ予測及びモーフィング/合成済み参照ピクチャ格納2323は、組み合わせ(mix and match)アプローチを用い、コードブックの中の一連の利用可能なフィルタを用いてフィルタリングの組合せを生成して、対応するフィルタにより低速な動きから高速な動き(ぼやけたコンテンツ)までのように異なる種類のコンテンツを可能にしても良い。動き推定、動き補償分析及び特性及び動き補償済みAPフィルタ予測及びモーフィング/合成済み参照ピクチャ格納2323は、複数のフィルタから、特定の1/4pel位置を組み合わせることから新しいフィルタの組合せを生成しても良い。
図示の実装では、イントラ予測器2324は、イントラ予測の実行が可能であっても良い。
図示の実装では、予測モード分析及びモードセレクタ2325は、ブロック毎に種々の動き予測モードと利用可能なイントラ予測モードとの間の選択、及び予測参照の選択が可能であっても良い。
図示の実装では、予測効率分析及びEIフィルタリング生成器2330は、フィルタリング済み予測信号、及びビットストリームによりデコーダへ送信され得るeiiフィルタパラメータの出力が可能であっても良い。
図示の実装では、予測統合分析及びFIフィルタ生成器2335は、予測モード分析及びモードセレクタ2325からの出力の受信、及びフィルタリングが予測信号をどれ位向上し、それにより符号化される実際の信号中の予測誤差を低減するかを決定するために、予測済みピクチャ(領域、又は1又は複数のスライス)の分析の実行が可能であっても良い。1つのフィルタ又は複数のフィルタが(1又は複数のブロック種類について)用いられるかを含む、フィルタリング情報は、実際のフィルタ係数、履歴へのインデックス又はコードブックに基づく予測、並びに関連する係数予測差分と一緒に、fii情報として送信されても良い。予測統合分析及びFIフィルタ生成器2335は、非対称、点対称、又は9x9正方形又は9x9若しくは11x9係数のサブセットである形状のハイブリッド(部分的に対象であり部分的に非対称である)であっても良いウィーナーフィルタを用いても良い。予測統合分析及びFIフィルタ生成器2335は、コードブック検索の使用により、フィルタリングオーバヘッドを最小化できる。したがって、(予測後の)計算した係数は、エンコードされ、デコーダへ送信でき、或いは、履歴フィルタ又はコードブックフィルタへのインデックスがデコーダへ送信されても良い。予測統合分析及びFIフィルタ生成器2335は、補正項を送信することにより、コードブックからのフィルタ係数を補正しても良く、コードブックはエンコード行程の間に更新されても良い。ルマ及びクロマ信号の両方は、フィルタリングされても良く、異なる形状及びフィルタサイズを用いても良い。
図24は、本開示の少なくとも幾つかの実装により配置される例示的なデコーダサブシステム2400の説明図である。図示のように、デコーダサブシステム2400は、再構成DDフィルタ生成器2417、再構成QRフィルタ生成器2418、特性及び動き補償済みAPフィルタ予測及びモーフィング済み/参照ピクチャ格納2423、イントラ予測器2424、予測モードセレクタ2425、予測EIフィルタリング生成器2430、及び/又は予測FIフィルタ生成器2435を有しても良い。
図示の実装では、再構成DDフィルタ生成器2417は、ビットストリームからデコーダにおいてデコードされるddiパラメータにより導かれる、再構成済み信号のデブロッキング及びデディザリングが可能であっても良い。
図示の実装では、再構成QRフィルタ生成器2418は、ビットストリームからデコードされるqriフィルタリングパラメータにより導かれる、QRフィルタリングの実行が可能であっても良い。
図示の実装では、特性及び動き補償済みAPフィルタ予測及びモーフィング済み/合成済み参照ピクチャ格納2423は、ビットストリームからデコードされるapiフィルタリングパラメータにより導かれる、適応型精密フィルタリングの実行が可能であっても良い。
図示の実装では、イントラ予測器2424は、イントラ予測の実行が可能であっても良い。
図示の実装では、予測モードセレクタ2425は、ブロック毎に種々の動き予測モードと利用可能なイントラ予測モードとの間の選択、及び予測参照の選択が可能であっても良い。
図示の実装では、予測EIフィルタリング生成器2430は、エンコーダによりビットストリーム内で送信された予測モード情報に基づき、予測モード分析及びモードセレクタ2425による選択についてフィルタリング済み予測の生成が可能であっても良い。予測効率分析及びEIフィルタリング生成器2430は、局所的にブロック適応型であり及びビットストリームによりデコーダへ伝達されたモード情報に応答し得るフィルタリングを実行しても良い。
図示の実装では、予測FIフィルタ生成器2435は、予測モードセレクタ2425から出力を受信することにより統合向上フィルタリングの実行が、及びfii情報からの誘導で、実際のフィルタリングの実行が可能であっても良い。
図25は、本開示の少なくとも幾つかの実装に従って配置される例示的なエントロピーエンコーダモジュール110の説明図である。図示のように、エントロピーエンコーダモジュール110は、ヘッダ、パラメータ及びマップデータエンコーダモジュール2501、ピクチャパーティション、予測パーティション及び符号化パーティションエンコーダモジュール2502、符号化モード及び参照種類エンコーダモジュール2503、符号化済み/非符号化済みデータエンコーダモジュール2504、変換係数エンコーダモジュール2505、動きベクトル及び差動きベクトルエンコーダモジュール2506、イントラ予測及び方向データエンコーダモジュール2507、及び/又はビットストリームアセンブラモジュール2508、を有しても良い。本願明細書における議論では、モジュール2501乃至2507の各々は、簡潔さのために、エンコーダモジュール2501、エンコーダモジュール2504、等に短縮され得る。
図示のように、エンコーダモジュール2501乃至2507は、ビデオデータ2511乃至2517(例えば、オーバヘッドデータ2511、パーティショニングデータ2512、モード及び参照種類データ2513、符号化済み/非符号化済みデータ2514、変換データ2515、動きデータ2516、及び/又はイントラ予測データ2517)をそれぞれ適応型エントロピーモジュール110を介して受信しても良い。幾つかの例では、受信したビデオデータ2511乃至2517は、本願明細書で議論するように、エンコーダ100の種々のモジュールから受信され得る。図示のように、エンコーダモジュール2501乃至2507は、受信したビデオデータ2511乃至2517を圧縮して、圧縮済みビデオデータ2521乃至2527を生成しても良い。圧縮済みビデオデータ2521乃至2527は、ビットストリームアセンブラ2508に供給されても良い。ビットストリームアセンブラ2508は、圧縮済みビデオデータ2521乃至2527を組み立てて、出力ビットストリーム111を生成しても良い。
幾つかの例では、エンコーダモジュール2501乃至2507は、それぞれ、受信したビデオデータ2511乃至2517に関連するデータ種類を効率的にエンコードする1又は複数の専門コンポーネントを有しても良い。幾つかの例では、1又は複数のエンコーダモジュール2501乃至2507は、受信したビデオデータ2511乃至2517のパラメータ、複数のパラメータ若しくは特性、又は他のシステム情報に基づき、受信したビデオデータ2511乃至2517を前処理し及び/又はエントロピー符号化技術を選択しても良い。
例えば、エンコーダモジュール2501は、ヘッダデータ(例えば、シーケンス及び/又はピクチャレベルビットストリームヘッダ)、モーフィングパラメータ、合成パラメータ、又はグローバルマップデータ(例えば、パーティション毎に用いられるべき量子化器を示すピクチャの量子化器マップ)を含むビデオデータ2511を受信しても良い。幾つかの例では、エンコーダモジュール2501は、適応型シンボル−ラン可変長符号化技術、適応型プロキシ可変長符号化技術、又はビデオデータ2511の可変長符号化テーブル若しくは複数のテーブル圧縮を実施しても良い。幾つかの例では、エンコーダモジュール2501は、どの技術が最大圧縮効率(例えば、圧縮済みビデオデータ2521のための最も少ないビット)を提供するかを決定しても良い。したがって、パーティショニングデータ2511に関連するパラメータは、各符号化技術などに必要なビット数であっても良い。エンコーダモジュール2511は、パーティショニングデータ2511をエントロピーエンコードして圧縮済みビデオデータ2521を生成しても良く、圧縮済みビデオデータ2521は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。
上述のように、幾つかの例では、ビデオデータ(例えば、ビデオデータ2511乃至2517のうちの任意のもの)に関連付けられたパラメータは、最小達成可能ビット数、最大効率エンコード技術、等であっても良い。他の例では、ビデオデータに関連付けられたパラメータは、予め定められた又は予め決定されたパラメータであっても良い。したがって、エンコード技術は予め決定される。幾つかの例では、ビデオデータに関連付けられたパラメータは、ビデオデータの特性に基づいても良い。したがって、決定されたエンコード技術は、本願明細書で更に議論するように、受信したビデオデータに適応できる。
図示のように、幾つかの例では、エンコーダモジュール2502は、ビデオデータ2512を受信しても良い。ビデオデータ2512は、ピクチャスライス又は領域データ、イントラ予測パーティションデータ、及び/又はインター予測パーティション及び符号化パーティションデータを有しても良い。幾つかの例では、エンコーダモジュール2502は、イントラ予測パーティションデータ及び/又はインター予測パーティションデータに関連付けられたパラメータ(例えば、最小達成可能ビット数、最大効率符号化技術、所定のパラメータ、ビデオデータ2512の特性、等)に基づくビデオデータ2512のイントラ予測パーティションデータ及び/又はインター予測パーティションデータ部分の圧縮のために、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術を実装しても良く、エンコーダモジュール2512は、適応型コードブック可変長符号化を実施して、圧縮済みビデオデータ2522を生成しても良い。圧縮済みビデオデータ2522は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。幾つかの例では、イントラ予測パーティションデータ及び/又はインター予測パーティションデータは、タイルのパーティションへのパーティショニング、パーティションのサブパーティションへのパーティショニング、等を示すデータを有しても良い。幾つかの例では、パーティション及び/又はサブパーティションは、予測パーティション及び/又はサブパーティションを有しても良い。幾つかの例では、パーティション及び/又はサブパーティションは、符号化パーティション及び/又はサブパーティションを有しても良い。
更に図示のように、幾つかの例では、エンコーダモジュール2503は、各予測パーティション毎にモード(例えば、イントラ、分割、スキップ、自動、インター、又はマルチ)データ及び/又は参照データを有し得るビデオデータ2513を受信しても良い。例えば、モード分割情報は、パーティションが更に分割されるか否かを示し得る。パーティションが更に分割される場合、モードデータは、分割が水平分割(例えば、hor)又は垂直分割(例えば、vert)かを示す方向情報を更に有しても良い。幾つかの例では、エンコーダモジュール2503は、データに関連付けられたパラメータ(例えば、最小達成可能ビット数、最大効率エンコード技術、所定のパラメータ、ビデオデータ2513の付属部分の特性、等)に基づく、分割/非分割パーティション情報データの個別符号化、分割/非分割分離情報データの個別符号化、又は予測参照情報データのための、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術を実装しても良く、エンコーダモジュール2503は、モード及び分離情報の共同符号化のために適応型可変長符号化を実施して、圧縮済みビデオデータ2523を生成しても良い。圧縮済みビデオデータ2523は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。
さらに、幾つかの例では、エンコーダモジュール2504は、符号化済み/非符号化済みデータを有し得るビデオデータ2514を受信しても良い。例えば、パーティション(又はサブパーティション)は、非ゼロ変換係数を有する場合に符号化されても良く、パーティション(又はサブパーティション)は、全部ゼロの変換係数を有する場合に符号化されても良い。幾つかの例では、符号化済み/非符号化済みデータは、イントラ又はスキップモードを有するパーティションでは必要なくても良い。幾つかの例では、符号化済み/非符号化済みデータは、自動、インター又はマルチモードを有するパーティションでは必要なくても良い。幾つかの例では、エンコーダモジュール2504は、符号化済み/非符号化済みデータに関連するパラメータ(例えば、最小達成可能ビット数、最大効率エンコード技術、所定のパラメータ、ビデオデータ2514の特性、等)に基づく、符号化済み/非符号化済みデータのための、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術を実施し、圧縮済みビデオデータ2524を生成しても良い。圧縮済みビデオデータ2524は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。
幾つかの例では、エンコーダモジュール2505は、変換係数データを有し得るビデオデータ2515を受信しても良い。例えば、符号化される(例えば、1又は複数の非ゼロ変換係数を有する)ブロック又はパーティション又はサブパーティションでは、変換係数データは、エントロピーエンコ―ディングのために受信されても良い。エンコーダモジュール2505は、1つの次元において2の大きさのブロック又はパーティション又はサブパーティションを有するブロック又はパーティション又はサブパーティション(例えば、2xK個のパーティション又は2xKの大きさのパーティション)のための適応型ベクトル可変長符号化を実施しても良い。さらに、エンコーダモジュール2505は、大きさ4x4のブロック又はパーティション又はサブパーティションのための適応型1次元可変長符号化、及び全ての他の大きさ(例えば、4x8、8x4、8x8、16x16、32x32、64x64、等)のブロック又はパーティション又はサブパーティションのための適応型2次元可変長符号化を実施しても良い。生成された圧縮済みビデオデータ2525は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。
例えば、変換係数データは、適応型変換モジュール108により実施されるピクセルデータの長方形(又は正方形、等)パーティションの又はピクセル差分値の長方形(又は正方形、等)の順方向変換に由来しても良い。その後、適応型量子化モジュール109により、結果として生じた係数の量子化が続く。幾つかの例では、変換係数データは、エンコーダモジュール2505により該変換係数データを1次元周波数順序付けパーティションに変換するためにスキャンされても良い。このような変換は、任意のパーティションサイズ(例えば、24以上又は32以上のパーティションサイズ)、異なるデータ種類(例えば、イントラ又はインターパーティションの離散コサイン変換係数、又はハイブリッドパラメータHaar変換係数、等)、及び/又は異なる量子化器セット特性(例えば、量子化器パラメータ及び/又はマトリックスの種々の組合せ)に非常に適応できる。さらに、ブロック又はパーティション又はサブパーティションは、異なるピクチャ種類、つまりI−ピクチャ(例えば、イントラ補償のみ)、P−ピクチャ(例えば、予測)又はF−ピクチャ(例えば、機能的)に属しても良く、及び/又は異なる種類の信号又はデータ(例えば、ルマ又はクロマ等)を表しても良く、異なる量子化器設定により量子化されても良い。
さらに、幾つかの例では、エンコーダモジュール2506は、動きベクトルデータを有し得るビデオデータ2516を受信しても良い。動きベクトル予測は、ビデオデータ2516に基づき実行されて、1又は複数の予測済み動きベクトルを生成しても良い。予測済み動きベクトルは、異なる動きベクトルを生成するために、ビデオデータ2516の元の動きデータと差分を取られても良い。幾つかの例では、エンコーダモジュール2516は、異なる動きベクトルの適応型分類可変長符号化を実施して、圧縮済みビデオデータ2526を生成しても良い。圧縮済みビデオデータ2526は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。
さらに、幾つかの例では、エンコーダモジュール2507は、イントラ予測種類又はイントラ予測方向データを有し得るビデオデータ2517を受信しても良い。例えば、上述のように、イントラ符号化は、空間予測を生成するために同じフレーム内の近隣の過去のデコード済みパーティションを用い得る予測を用いても良い。このような例では、過去のデコード済みパーティション又は複数のパーティションを示す予測子が存在しても良い。例えば、予測子は、dc、勾配(slope)、方向(directional)、BTPC、特徴一致、等を有しても良い。さらに、幾つかの例では、方向予測子は、異なるパーティションサイズに適応できる。例えば、方向予測子の指定は、因果関係を示す近隣のデコード済みパーティションを用いた符号化のための角度予測ピクセルパーティションを決定する技術、及び/又は空間予測方向をエントロピー符号化する技術の提供を含み得る。幾つかの例では、これらの技術は、エンコーダモジュール2507により実行されても良い。幾つかの例では、エンコーダモジュール2507は、イントラ予測種類又はイントラ予測方向データに関連するパラメータ(例えば、最小達成可能ビット数、最大効率エンコード技術、所定のパラメータ、ビデオデータ2517の特性、等)に基づく、イントラ予測種類又はイントラ予測方向データのための、適応型可変長符号化技術又は算術符号化技術を実施し、圧縮済みビデオデータ2527を生成しても良い。圧縮済みビデオデータ2527は、図示のように、ビットストリームアセンブラ2508へ送信されても良い。
図25に示すように、適応型エントロピーエンコーダ110は、ビットストリームアセンブラ2508を有しても良い。幾つかの例では、エンコーダモジュール2501乃至2507の一部又は全部は、異なる時点において、エントロピー符号化された圧縮済みビデオデータ2521乃至2527を提供しても良い。さらに、幾つかの例では、圧縮済みビデオデータ2521乃至2527のうちの1又は複数は、ピクチャに基づくもの、領域若しくはスライスに基づくもの、タイルに基づくもの、予測パーティションに基づくもの、符号化パーティションに基づくもの、又はこれらの任意の組合せであっても良い。幾つかの例では、ビットストリームアセンブラは、圧縮済みビデオデータ2521乃至2527を(場合によっては異なる方法で)多重化して、例えば、出力ビットストリーム111のような有効ビットストリームを生成しても良い。例えば、有効ビットストリームは、NGVビットストリームシンタックス仕様に従い得る有効次世代ビデオ(NGV)符号化済みビットストリームであっても良い。幾つかの例では、出力ビットストリーム111は、ビデオのみのビットストリームであっても良い。幾つかの例では、出力ビットストリーム111は、非符号化済み又は符号化済みオーディオと多重化されて(例えば、トランスポート又はメディアファイルフォーマット)、多重化済みオーディオビジュアルストリームを生成しても良い。いずれにしても、ビットストリームは、本願明細書で議論するように、ローカルデコード、記憶、又は送信に用いられ得る。
図26は、本開示の少なくとも幾つかの実装に従って配置される例示的なエントロピーデコーダモジュール202の説明図である。図示のように、エントロピーデコーダモジュール202は、ヘッダ、パラメータ及びマップデータデコーダモジュール2601、ピクチャパーティション、予測パーティション及び符号化パーティションデコーダモジュール2602、符号化モード及び参照種類デコーダモジュール2603、符号化済み/非符号化済みデータデコーダモジュール2604、変換係数デコーダモジュール2605、動きベクトル及び差動きベクトルデコーダモジュール2606、イントラ予測及び方向データデコーダモジュール2607、及び/又はビットストリーム逆アセンブラモジュール2608、を有しても良い。本願明細書における議論では、モジュール2601乃至2607の各々は、簡潔さのために、デコーダモジュール2601、デコーダモジュール2605、等に短縮され得る。
図示のように、ビットストリーム逆アセンブラ2608は、入力ビットストリーム201を受信しても良い。幾つかの例では、入力ビットストリーム201は、NGVビットストリームシンタックス仕様に従い得る例えば有効次世代ビデオ(NGV)符号化済みビットストリームのような有効ビットストリームであっても良い。幾つかの例では、入力ビットストリーム201は、ビデオのみのビットストリームであっても良い。幾つかの例では、入力ビットストリーム201は、本願明細書で議論するような多重化済みオーディオビジュアルストリームであっても良い。ビットストリーム逆アセンブラモジュール2608は、図示のように、圧縮済みビデオデータ2611乃至2617を決定するために、入力ビットストリーム201を逆アセンブルしても良い。例えば、ビットストリーム逆アセンブラモジュール2608は、所定のシンタックス又は仕様を用いて、デコーダモジュール2601による解凍のために、データ種類により入力ビットストリーム201を構成要素である圧縮済みビデオデータ2611乃至2617に分割しても良い。幾つかの例では、ビットストリーム逆アセンブラモジュール2608は、ビットストリームアセンブラモジュール2508に対する逆の動作を実行しても良い。
図26に示すように、デコーダモジュール2601乃至2607は、それぞれ圧縮済みビデオデータ2611乃至2617を受信し、ビデオデータ2621乃至2627を生成しても良い。ビデオデータ2621乃至2627は、本願明細書で議論する更なるデコードのために、デコーダ200の種々のコンポーネントへ送信されても良い。デコーダ200は、それにより、ディスプレイ装置(図示しない)によりユーザに提示するために、ビデオフレームを生成しても良い。幾つかの例では、デコーダモジュール2601乃至2607は、それぞれ、エンコーダモジュール2501乃至2507に対して逆の動作を実行しても良い。幾つかの例では、エンコーダモジュール2601乃至2607は、それぞれ、圧縮済みビデオデータ2611乃至2617に関連するデータ種類を効率的にエントロピーエンコードする1又は複数の専門コンポーネントを有しても良い。
例えば、デコーダモジュール2601は、圧縮済みヘッダデータ(例えば、シーケンス及び/又はピクチャレベルビットストリームヘッダ)、モーフィングパラメータ、合成パラメータ、又はグローバルマップデータ(例えば、パーティション毎に用いられるべき量子化器を示すピクチャの量子化器マップ)を含み得る圧縮済みビデオデータ2611を受信しても良い。幾つかの例では、デコーダモジュール2611は、適応型シンボル−ラン可変長符号化技術、適応型プロキシ可変長符号化技術、又は圧縮済みビデオデータ2611の可変長符号化テーブル若しくは複数のテーブル解凍を実施しても良い。幾つかの例では、デコーダモジュール2601は、ビットストリーム201により提供されるパラメータ又は指示子に基づき、実施すべき符号化技術を決定しても良い。
図示のように、幾つかの例では、デコーダモジュール2602は、圧縮済みビデオデータ2612を受信しても良い。圧縮済みビデオデータ2612は、圧縮済みピクチャスライス又は領域データ、イントラ予測パーティションデータ、及び/又はインター予測パーティション及び符号化パーティションデータを有しても良い。幾つかの例では、デコーダモジュール2602は、圧縮済みビデオデータ2612のイントラ予測パーティションデータ及び/又はインター予測パーティションデータ部分の解凍のために、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術を実施しても良く、デコーダモジュール2602は、圧縮済みビデオデータ2612のスライス又は領域データ部分の解凍のために、適応型コードブック可変長符号化を実施して、ビデオデータ2622を生成しても良い。幾つかの例では、イントラ予測パーティションデータ及び/又はインター予測パーティションデータは、タイルのパーティションへのパーティショニング、パーティションのサブパーティションへのパーティショニング、等を示すデータを有しても良い。幾つかの例では、パーティション及び/又はサブパーティションは、予測パーティション及び/又はサブパーティションを有しても良い。幾つかの例では、パーティション及び/又はサブパーティションは、符号化パーティション及び/又はサブパーティションを有しても良い。幾つかの例では、デコーダモジュール2602は、ビットストリーム201により供給されるパラメータ又は指示子に基づく圧縮済みビデオデータ2612のイントラ予測パーティションデータ及び/又はインター予測パーティションデータ部分の解凍のために実施すべき符号化技術を決定しても良い。
さらに、幾つかの例では、デコーダモジュール2603は、各予測パーティション毎に圧縮済みモード(例えば、イントラ、分割、スキップ、自動、インター、又はマルチ)データ及び/又は参照データを有し得る圧縮済みビデオデータ2613を受信しても良い。例えば、モード分割情報は、パーティションが更に分割されるか否かを示し得る。パーティションが更に分割される場合、モードデータは、分割が水平分割(例えば、hor)又は垂直分割(例えば、vert)かを示す方向情報を更に有しても良い。幾つかの例では、デコーダモジュール2603は、分離/非分離パーティション情報データの個別符号化、分離/非分離分離情報データの個別符号化、又は予測参照情報データの解凍のために、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術を実施しても良く、デコーダモジュール2603は、モード及び分離情報の共同符号化の解凍のために適応型可変長符号化を実施して、ビデオデータ2623を生成しても良い。幾つかの例では、デコーダモジュール2603は、ビットストリーム201により供給されるパラメータ又は指示子に基づき、分離/非分離パーティション情報データの個別符号化、分離/非分離分離情報データの個別符号化、又は予測参照情報データの解凍のために実施すべき符号化技術を決定しても良い。
さらに、幾つかの例では、デコーダモジュール2604は、符号化済み/非符号化済みデータを有し得る圧縮済みビデオデータ2614を受信しても良い。例えば、パーティション(又はサブパーティション)は、非ゼロ変換係数を有する場合に符号化されても良く、パーティション(又はサブパーティション)は、全部ゼロの変換係数を有する場合に符号化されても良い。幾つかの例では、符号化済み/非符号化済みデータは、イントラ又はスキップモードを有するパーティションでは必要なくても良い。幾つかの例では、符号化済み/非符号化済みデータは、自動、インター又はマルチモードを有するパーティションでは必要なくても良い。幾つかの例では、デコーダモジュール2604は、符号化済み/非符号化済みデータの解凍のために、適応型シンボル−ラン可変長符号化技術、又は適応型プロキシ可変長符号化技術を実施して、ビデオデータ2624を生成しても良い。幾つかの例では、デコーダモジュール2604は、ビットストリーム201により供給されるパラメータに基づき、解凍のために実施すべき符号化技術を決定しても良い。
図示のように、幾つかの例では、デコーダモジュール2605は、変換係数データを有し得る圧縮済みビデオデータ2615を受信しても良い。例えば、符号化される(例えば、1又は複数の非ゼロ変換係数を有する)ブロック又はパーティション又はサブパーティションでは、圧縮済みビデオデータ2615は、変換係数データを有しても良い。幾つかの例では、デコーダモジュール2605は、1つの次元において2の大きさのブロック又はパーティション又はサブパーティションを有するブロック又はパーティション又はサブパーティション(例えば、2xK個のパーティション又は2xKの大きさのパーティション)の解凍のための適応型ベクトル可変長符号化を実施しても良い。さらに、デコーダモジュール2605は、大きさ4x4のブロック又はパーティション又はサブパーティションの解凍のための適応型1次元可変長符号化、及び全ての他の大きさ(例えば、4x8、8x4、8x8、16x16、32x32、64x64、等)のブロック又はパーティション又はサブパーティションの解凍のための適応型2次元可変長符号化を実施しても良い。生成されたビデオデータ2625は、図示のように、デコーダ200の他のモジュールへ送信されても良い。
さらに、幾つかの例では、デコーダモジュール2606は、動きベクトルデータを有し得る圧縮済みビデオデータ2616を受信しても良い。幾つかの例では、圧縮済みビデオデータ2616は、予測済み差動きベクトルを生成するために、適応型分類可変長符号化美術を用いて解凍されても良い。予測済み差動きベクトルは、再構成済み動きベクトルを生成するために、動きベクトル予測に加算されても良い。動きベクトル予測は、例えばエンコーダモジュール2506により実施される技術の逆、及び/又は動きベクトルを用いて、近隣ブロック又はパーティションの前にデコードされた動きベクトルに基づき生成されても良い。再構成済み動きベクトルは、図示のように、ビデオデータ2626によりデコーダ200の他のモジュールへ送信されても良い。
さらに、幾つかの例では、デコーダモジュール2607は、イントラ予測種類又はイントラ予測方向データを有し得る圧縮済みビデオデータ2617を受信しても良い。例えば、上述のように、イントラ符号化は、空間予測を生成するために同じフレーム内の近隣の過去のデコード済みパーティションを用い得る予測を用いても良い。このような例では、過去のデコード済みパーティション又は複数のパーティションを示す予測子が存在しても良い。例えば、予測子は、dc、slope、directional、BTPC、特徴一致、等を有しても良い。さらに、幾つかの例では、方向予測子は、異なるパーティションサイズに適応できる。例えば、方向予測子の指定は、因果関係を示す近隣のデコード済みパーティションを用いた符号化のための角度予測ピクセルパーティションを決定する技術、及び/又は空間予測方向をエントロピー符号化する技術の提供を含み得る。幾つかの例では、デコーダモジュール2617は、イントラ予測種類又はイントラ予測方向データの解凍のために適応型可変長符号化技術又は算術符号化技術を実施して、ビデオデータ2627を生成しても良い。幾つかの例では、デコーダモジュール2607は、ビットストリーム201により供給されるパラメータに基づき、解凍のために実施すべき符号化技術を決定しても良い。
上述のように、種々のエントロピー符号化技術は、様々なデータ種類に対して実施されて、ビデオデータの可逆圧縮のためにエントロピーエンコーダにおいて圧縮済みビデオデータを生成し、圧縮済みビデオデータの解凍のためにエントロピーデコーダにおいて複製ビデオデータを生成しても良い。
幾つかの例では、適応型シンボル−ラン可変長符号化技術が実施されても良い。例えば、エンコーダ及びデコーダモジュール2501、2601、2502、2602、2503、2603、及び/又は2504、2604は、ビデオデータの一部若しくは全部又は受信した圧縮済みビデオデータに対して適応型シンボル−ラン可変長符号化技術を実装しても良い。
幾つかの例では、適応型シンボル−ラン可変長符号化技術は、連続するスキップされるブロックの数を決定できるようにする、ビデオ符号化におけるフレーム内の非スキップブロック間のアドレスの相対的差分の符号化を含んでも良い。例えば、符号化済み/非符号化済みデータの文脈では、エンコーダ及びデコーダモジュール2504、404によりエンコード及びデコードされるとき、符号化済み/非符号化済み(例えば、スキップされる)ブロックを伝達するために各ブロックについて1ビット(例えば、ビットマップ)を送信する代わりに、エンコーダモジュール2504は、例えば、一連のスキップされるブロックをエンコードしても良い。このような実装では、一連のスキップされるブロックが長いほど、より効率的にデータが圧縮できる。
さらに、幾つかの種類の適応は、本願明細書に記載のように、適応型シンボル−ラン可変長符号化技術に追加されても良い。複数のテーブルの使用を可能にする適応、元のビットマップデータ、反転ビットマップ、差分ビットマップ、又は勾配予測ビットマップにこの種の符号化の実行の使用を可能にする適応、等である。例えば、適応型シンボル−ラン可変長符号化技術が用いられ、実質的に任意の種類のイベント(例えば、シンボル/ランの組合せ)をエントロピーエンコードしても良い。さらに、シンボル/ランイベントは、複数レベル(例えば、0、1、2、3、等)又はバイナリ(例えば、0、1)イベントを符号化するために用いられても良い。複数レベルイベントがエンコードされる例では、適応型シンボル−ラン可変長符号化技術は、連続して何回も適用されて、複数レベルマップを多数のバイナリサブマップに分解しても良い。ここで、各前のサブマップは、次のレベルのサブマップから除外される、等である。
幾つかの例では、適応型プロキシ可変長符号化技術が実施されても良い。例えば、エンコーダ及びデコーダモジュール2501、401、2502、402、2503、403、及び/又は2504、404は、ビデオデータの一部若しくは全部又は受信した圧縮済みビデオデータに対して適応型プロキシ可変長符号化技術を実装しても良い。
幾つかの例では、適応型プロキシ可変長符号化技術は、可変長符号(例えば、ビットシーケンスのパターン)を有するビットの元の固定長1Dブロック(例えば、グループ)の置き換えを有しても良い。したがって、置換後、結果として生じるビットストリームはサイズが小さくなる。幾つかの例では、デコーダにおいて処理は繰り返されて(又は逆処理されて)、元の所望のビットストリームを生じる。幾つかの例では、置き換えられた元のビットブロックは、固定の小さなサイズ(例えば、2ビットのグループ、3ビットのグループ、又は4ビットのグループ、等)であっても良い。幾つかの例では、置換符号は、実際は小さなサイズであり可変長であっても良い。幾つかの例では、本願明細書で議論される適応型プロキシ可変長符号化は、短いVLC(例えば、可変長符号)として特徴付けられても良い。さらに、本願明細書に記載の適応型プロキシ可変長符号化技術は、複数の置換オプションを提供することにより、コンテンツ適応型であり得る。幾つかの例では、2ビットの1次元ブロック/グループは、1〜3ビット長符号で置き換えられても良い。幾つかの例では、符号を有する3ビットの1次元ブロック/グループ(又はブロック/グループの集合)は、1〜5ビット長符号で置き換えられても良い。幾つかの例では、適応型プロキシ可変長符号化技術は、ビットストリーム内の統計的冗長性を活かしても良い。幾つかの例では、適応型プロキシ可変長符号化技術は、約1〜1.3の圧縮利得を提供しても良い。幾つかの例では、適応型プロキシ可変長符号化技術は、短いビットシーケンスへの適用に適するという利点を提供しても良い。
幾つかの例では、適応型シンボルブロック(block-of-symbols)可変長符号化技術が実施されても良い。例えば、エンコーダ及びデコーダモジュール305、405は、ビデオデータの一部若しくは全部又は受信した圧縮ビデオデータに対して適応型シンボルブロック可変長符号化技術を実施しても良い。
幾つかの例では、適応型シンボルブロック可変長符号化技術は2つのサブ符号化技術を有しても良い。例えば、適応型シンボルブロック可変長符号化技術は、適応型ベクトル可変長符号化技術及び適応型1D/2D(1次元/2次元)可変長符号化技術を有しても良い。幾つかの例では、適応型シンボルブロック可変長符号化技術は、本願明細書で議論するように変換係数のブロックのような、密接に関連するシンボルのブロックをエンコードするために用いられても良い。
幾つかの例では、適応型シンボルブロック可変長符号化技術の適応型ベクトル可変長符号化技術は、共同の単一コードワードを用いてシンボルの比較的小さい2Dブロック又はパーティションをエンコードし、シンボルのブロックの符号化がVLC(可変長符号化)コ―ドブックを生じるようにしても良い。幾つかの例では、ブロック又はパーティションのサイズが大きいほど、コードブックのサイズが大きい。幾つかの例では、適応型ベクトル可変長符号化技術は、1次元において2のサイズを有するブロック又はパーティション(例えば、2xK又はKx2ブロック又はパーティション)に適用されても良い。適応型ベクトル可変長符号化技術をこのようなサイズのブロック又はパーティションに適用することにより、有利なことにVLCコードブックのサイズが制限できる。
幾つかの例では、適応型シンボルブロック可変長符号化技術の適応型1D可変長符号化技術は、4x4変換係数ブロック又はパーティションサイズの符号化のために使用され、基本的にはCAVLC符号器と同じである。この符号器は、4x4の符号化のために主に用いられる。幾つかの例では、適応型1D可変長符号化技術は、符号化されている係数のコンテキストに基づき用いられる多数の異なるVLCテーブルを有するコンテンツ適応型可変長符号化技術により実施されても良い。例えば、符号化されている係数のコンテキストに基づき、エンコード及び/又はデコーダモジュール305、405は、VLCテーブルを切り替えても良い。
幾つかの例では、適応型シンボルブロック可変長符号化技術の適応型2D可変長符号化技術は、多数の異なるVLCテーブルの間でコンテキストに基づき切り替えるために、シンボルのブロックの2次元特性を利用しても良い。幾つかの例では、適応型2D可変長符号化技術は、CA2DVLC(コンテンツ適応型2D可変長)符号器として特徴付けられても良い。幾つかの例では、適応型2D可変長符号化技術は、2xK、Kx2ブロック及び4x4ブロックに加えて全ての残りの変換係数ブロック又はパーティションサイズ(例えば、4x8、8x4、8x8、16x16、32x32、64x64、等)をエンコードするために用いられても良い。
図27は、本開示の少なくとも幾つかの実装に従って配置される例示的な処理2700のフロー図である。処理2700は、1又は複数の動作2702、2704、2706、2708、2710、2712、2714、2716、2718、2720及び/又は2722により示されるような1又は複数の動作、関数又は作用を有し得る。処理2700は、次世代ビデオ符号化処理の少なくとも一部を形成し得る。非限定的例によると、処理2700は、図1のエンコーダシステム及び/又は本願明細書に記載の任意の他のエンコーダサブシステムにより行われるとき、次世代ビデオエンコード処理の少なくとも一部を形成し得る。
処理2700は、動作2702で開始し、「ビデオシーケンスの入力ビデオフレームを受信する」。ここで、ビデオシーケンスの入力ビデオフレームは、例えばエンコーダ100により受信されても良い。
処理2700は、続いて、動作2704で「ピクチャ種類を各ビデオフレームに関連付ける」。ここで、ピクチャ種類は、例えばコンテンツ事前分析モジュール102により、ピクチャグループの中の各ビデオフレームに関連付けられても良い。例えば、ピクチャ種類は、F/B−ピクチャ、P−ピクチャ、又はI−ピクチャ、等であっても良い。幾つかの例では、ビデオシーケンスはピクチャグループを有しても良く、本願明細書に記載の処理(例えば、動作2703乃至2711)は、ピクチャグループの1つのフレーム又はピクチャに対して実行されても良く、ピクチャグループの全てのフレーム又はピクチャに対して繰り返されても良く、次にビデオシーケンスの中の全てのピクチャグループに対して繰り返されても良い。
処理2700は、続いて、動作2706で「ピクチャをタイル及び/又はスーパーフラグメント及び可能な予測パーティショニングに分割する」。ここで、ピクチャは、例えば予測パーティション生成器105により、タイル又はスーパーフラグメント又は可能な予測パーティションに分割されても良い。
処理2700は、続いて、動作2708で「モーフィング済み又は合成済み予測参照を生成するための変更(例えば、モーフィング又は合成)特性パラメータを決定し、予測を実行する」。ここで、変更(例えば、モーフィング又は合成)特性パラメータ及び予測が実行されても良い。例えば、モーフィング済み又は合成済み予測参照を生成するための変更(例えば、モーフィング又は合成)特性パラメータが生成され、予測が実行されても良い。
上述のように、幾つかの例では、インター予測が実行されても良い。幾つかの例では、最大4個のデコード済み過去及び/又は将来ピクチャ及び幾つかのモーフィング/合成予測は、膨大な数の参照種類(例えば、参照ピクチャ)を生成するために用いられても良い。「インター」モードの例では、最大9個の参照種類がP−ピクチャでサポートされ、最大10個の参照種類がF/Bピクチャのためにサポートされ得る。さらに、「マルチ」モードは、1個の参照ピクチャの代わりに2個の参照ピクチャが用いられる一種のインター予測モードを提供でき、P−及びF/B−ピクチャは、それぞれ3個及び最大8個の参照種類を可能にする参照種類を可能にし得る。例えば、予測は、モーフィング技術又は合成技術のうちの少なくとも1つを用いて生成される前のデコード済みフレームに基づいても良い。このような例では、ビットストリーム(動作2712に関して後述する)は、予測パーティションに関連するフレーム参照、モーフィングパラメータ、又は合成パラメータを含み得る。
処理2700は、続いて、動作2710で「可能な予測パーティショニングについて、可能な予測誤差を決定する」。ここで、可能な予測パーティショニング毎に、可能な予測誤差が決定されても良い。例えば、予測パーティショニング(及び関連する予測パーティション、予測、及び予測パラメータ)毎に、予測誤差が決定されても良い。例えば、可能な予測誤差の決定は、元のピクセル(例えば、予測パーティションの元のピクセルデータ)と予測ピクセルとの差分を取ることを有しても良い。幾つかの例では、関連する予測パラメータは、ソートされても良い。上述のように、幾つかの例では、予測誤差データパーティションは、モーフィング技術又は合成技術のうちの少なくとも1つを用いて生成された前のデコード済みフレームに少なくとも部分的に基づき生成された予測誤差データを有しても良い。
処理2700は、続いて、動作2712で「予測パーティショニング及び予測種類を選択し、パラメータを保存する」。ここで、予測パーティショニング及び予測種類が選択され、関連するパラメータが保存されても良い。幾つかの例では、最小予測誤差を有する可能な予測パーティショニングが選択されても良い。幾つかの例では、可能な予測パーティショニングは、レート歪み最適化(RDO)に基づき選択されても良い。
処理2700は、続いて、動作2714で「可能な符号化パーティショニングに対して変換を実行する」。ここで、種々のブロックサイズによる固定又はコンテンツ適応型変換が、パーティション予測誤差データの種々の可能な符号化パーティショニングに対して実行されても良い。例えば、パーティション予測誤差データは、複数の符号化パーティションを生成するためにパーティショニングされても良い。例えば、パーティション予測誤差データは、本願明細書で議論のような符号化パーティション生成モジュール107のbi木符号化パーティショナモジュール又はdk木符号化パーティショナモジュールによりパーティショニングされても良い。幾つかの例では、F/B−又はP−ピクチャに関連するパーティション予測誤差データは、bi木符号化パーティショナモジュールによりパーティショニングされても良い。幾つかの例では、I−ピクチャに関連するビデオデータ(例えば、幾つかの例ではタイル又はスーパーフラグメント)は、kd木符号化パーティショナモジュールによりパーティショニングされても良い。幾つかの例では、符号化パーティショナモジュールは、スイッチ又は複数のスイッチにより選ばれ又は選択されても良い。例えば、パーティションは、符号化パーティション生成モジュール107により生成されても良い。
処理2700は、続いて、動作2716で「最適符号化パーティショニング、変換ブロックサイズ、及び実際の変換を決定する」。ここで、最適符号化パーティショニング、変換ブロックサイズ、及び実際の変換が決定されても良い。例えば、(例えば、種々の符号化パーティションを有する)種々の符号化パーティショニングは、(上述のように、符号化パーティションが変換ブロックサイズと一致しないとき、符号化パーティションの変換ブロックへの更なる分割を含み得る)選択される符号化パーティショニングを決定するために、RDO又は別の基礎に基づき評価されても良い。例えば、実際の変換(又は選択された変換)は、本願明細書に記載のように符号化パーティション又はブロックサイズに対して実行される任意のコンテンツ適応型変換又は固定変換を有しても良い。
処理2700は、続いて、動作2718で「変換係数を量子化しスキャンする」。ここで、符号化パーティション(及び/又は変換ブロック)に関連する変換係数は、エントロピー符号化に備えて量子化されスキャンされても良い。
処理2700は、続いて、動作2720で「ピクセルデータを再構成し、ピクチャにアセンブルし、参照ピクチャバッファに保存する」。ここで、ピクセルデータは、再構成され、ピクチャにアセンブルされ、参照ピクチャバッファに保存されても良い。例えば、ローカルデコードループ(符号化パーティションの逆スキャン、逆変換及びアセンブルを含む)の後に、予測誤差データパーティションが生成されても良い。予測誤差データパーティションは、再構成済み予測パーティションを生成するために、予測パーティションに追加されても良い。再構成済み予測パーティションは、タイル又はスーパーフラグメントにアセンブルされても良い。アセンブル済みタイル又はスーパーフラグメントは、任意的にデブロックフィルタリング及び/又は品質復元フィルタリングにより処理され、ピクチャを生成するためにアセンブルされても良い。ピクチャは、他の(例えば、後続の)ピクチャの予測のために参照ピクチャとして、デコード済みピクチャバッファ119に保存されても良い。
処理2700は、続いて、動作2722で「符号化パーティション指示子、ブロックサイズデータ、変換種類データ、量子化(Qp)、及び量子化済み変換係数、動きベクトル及び参照種類データ、特性パラメータ(例えばmop、syp)を決定するために、エントロピーエンコード済みビットストリームをデコードする」。ここで、データは、エントロピーエンコードされても良い。例えば、エントロピーエンコード済みデータは、符号化パーティション指示子、ブロックサイズデータ、変換種類データ、量子化(Qp)、量子化済み変換係数、動きベクトル、及び参照種類データ、特性パラメータ(例えば、mop、syp)、等、及び/又はこれらの組合せを有しても良い。追加又は代替で、エントロピーエンコード済みデータは、予測パーティショニング、予測パラメータ、選択された符号化パーティショニング、選択された特性データ、動きベクトルデータ、量子化済み変換係数、フィルタパラメータ、(モード選択データのような)選択データ、及び指示子を有しても良い。
動作2702乃至2722は、本願明細書で議論するエンコーダシステムにより用いることができるビデオエンコード及びビットストリーム送信技術を提供できる。
図28は、本開示の少なくとも幾つかの実装により配置される例示的なビットストリーム2800を示す。幾つかの例では、ビットストリーム2800は、図1に示したような出力ビットストリーム111及び/又は図2に示したような入力ビットストリーム201に対応しても良い。提示の明確さのために図28に図示しないが、幾つかの例では、ビットストリーム2800は、ヘッダ部分及びデータ部分を有しても良い。種々の例において、ビットストリーム2800は、本願明細書で議論するようなビデオフレームのエンコードに関連するデータ、指示子、インデックス値、モード選択データ等を有しても良い。
上述のように、ビットストリーム2800は、例えばエンコーダ100のようなエンコーダにより生成され及び/又はデコード済みビデオフレームがディスプレイ装置により提示できるようにデコードのためのデコーダ200により受信されても良い。
図29は、本開示の少なくとも幾つかの実装に従って配置される例示的な処理2900のフロー図である。処理2900は、1又は複数の動作2902、2904、2906、2908、2209、2910、2912、及び/又は2914により示されるような1又は複数の動作、関数又は作用を有し得る。処理2900は、次世代ビデオ符号化処理の少なくとも一部を形成し得る。非限定的例によると、処理2900は、図2のデコーダシステム200及び/又は本願明細書に記載の任意の他のエンコーダサブシステムにより行われるとき、次世代ビデオデコード処理の少なくとも一部を形成し得る。
処理2900は、動作2902で開始し、「エンコード済みビットストリームを受信する」。ここで、ビットストリームは、受信されても良い。例えば、本願明細書で議論したようにエンコードされたビットストリームは、ビデオデコーダにおいて受信されても良い。幾つかの例では、ビットストリーム2800は、デコーダ200により受信されても良い。
処理2900は、続いて、動作2904で「符号化パーティション指示子、ブロックサイズデータ、変換種類データ、量子化(Qp)、及び量子化済み変換係数、動きベクトル及び参照種類データ、特性パラメータ(例えばmop、syp)を決定するために、エントロピーエンコード済みビットストリームをデコードする」。ここで、ビットストリームは、符号化パーティション指示子、ブロックサイズデータ、変換種類データ、量子化(Qp)、量子化済み変換計数、動きベクトル及び参照種類データ、特性パラメータ(例えばmop、syp)等、及び/又はこれらの組合せを決定するためにデコードされても良い。追加又は代替で、エントロピーエンコード済みデータは、予測パーティショニング、予測パラメータ、選択された符号化パーティショニング、選択された特性データ、動きベクトルデータ、量子化済み変換係数、フィルタパラメータ、(モード選択データのような)選択データ、及び指示子を有しても良い。
処理2900は、続いて、動作2906で「量子化済み係数に量子化(Qp)を適用して、逆量子化済み変換係数を生成する」。ここで、量子化(Qp)は、逆量子化済み変換係数を生成するために、量子化済み変換係数に適用されても良い。例えば、動作2906は、適応型逆量子化モジュール203により適用されても良い。
処理2900は、続いて、動作2908で「符号化(又はイントラ予測済み)パーティションにおいて係数のデコード済みブロックの各々について、変換種類及びブロックサイズデータに基づき逆変換を実行して、デコード済み予測誤差パーティションを生成する」。ここで、デコード済み予測誤差パーティションを生成するために、符号化(又はイントラ予測)パーティションにおいて変換係数の各デコードブロック毎に、変換種類及びブロックサイズデータに基づく逆変換が実行されても良い。幾つかの例では、逆変換は、逆固定変換を有しても良い。幾つかの例では、逆変換は、逆コンテンツ適応型変換を有しても良い。このような例では、逆コンテンツ適応型変換の実行は、本願明細書で議論するように、デコード済みビデオデータの近隣ブロックに基づき逆コンテンツ適応型変換に関連する基底関数を決定することを有しても良い。本願明細書で議論するようなエンコードに用いられる任意の順方向変換は、関連する逆変換を用いるデコードのために使用されても良い。幾つかの例では、逆変換は、適応型逆変換モジュール204により実行されても良い。幾つかの例では、デコード済み予測誤差パーティションの生成は、符号化パーティションアセンブラ205により符号化パーティションをアセンブルすることを有しても良い。
処理2900は、続いて、動作2090で「デコード済み変更特性(例えば、mop、syp)を用いて、予測のための変更済み参照を生成し、動きベクトル及び参照情報、予測済みパーティション情報、及び変更済み参照を用いて、予測済みパーティションを生成する」。ここで、予測のための変更済み参照が生成されても良く、予測済みパーティションも生成されても良い。例えば、予測のための変更済み参照はデコード済みモーフィング特性(例えば、mop、syp)に少なくとも部分的に基づき生成されても良く、予測済みパーティションは動きベクトル及び参照情報、予測済みパーティション情報、及び変更済み参照に少なくとも部分的に基づき生成されても良い。
処理2900は、続いて、動作2910で「予測パーティションをデコード済み予測誤差データパーティションに追加して、再構成済みパーティションを生成する」。ここで、予測パーティションは、再構成済み予測パーティションを生成するために、デコード済み予測誤差データパーティションに加算されても良い。例えば、デコード済み予測誤差データパーティションは、加算器206により関連する予測パーティションに加算されても良い。
処理2900は、続いて、動作2912で「再構成済みパーティションをアセンブルして、タイル又はスーパーフラグメントを生成する」。ここで、再構成済み予測パーティションは、タイル又はスーパーフラグメントを生成するためにアセンブルされても良い。例えば、再構成済み予測パーティションは、予測パーティションアセンブラモジュール207によりタイル又はスーパーフラグメントを生成するためにアセンブルされても良い。
処理2900は、続いて、動作2914で「ピクチャのタイル又はスーパーフラグメントをアセンブルして、完全なデコード済みピクチャを生成する」。ここで、ピクチャのタイル又はスーパーフラグメントは、完全なデコード済みピクチャを生成するためにアセンブルされても良い。例えば、任意的なデブロックフィルタリング及び/又は品質復元フィルタリングの後に、タイル又はスーパーフラグメントは、完全なデコード済みピクチャを生成するためにアセンブルされても良い。完全なデコード済みピクチャは、デコード済みピクチャバッファ210により格納され、及び/又は適応型ピクチャ再編成モジュール217及びコンテンツ事後復元モジュール218による処理の後にディスプレイ装置により提示するために送信されても良い。
本願明細書に記載のシステムの種々のコンポーネントは、ソフトウェア、ファームウェア及び/又はハードウェア、及び/又はそれらの任意の組合せで実装されても良い。例えば、種々のコンポーネントは、少なくとも部分的に、例えばスマートフォンのようなコンピューティングシステムに見られるコンピューティングSoC(System-on-a-Chip)のハードウェアにより設けられても良い。当業者は、本願明細書に記載のシステムが対応する図に示されない追加コンポーネントを有しても良いことを理解できる。例えば、本願明細書で議論したシステムは、ビットストリームマルチプレクサ又はデマルチプレクサモジュールのような及び明確さの目的で図示されない追加コンポーネントを有しても良い。
本願明細書の例示的な処理の実施は説明した順序で示された全ての動作の実行を有しても良いが、本開示はこれに関して限定されず、様々な例において、本願明細書における例示的な処理の実施は、示した動作の一部のみの及び/又は図示と異なる順序での実行を有しても良い。
処理2700、2900及び本願明細書で議論した他の処理に関連する幾らかの追加及び/又は代替の詳細事項は、本願明細書で議論した実装の1又は複数の例において、特に以下の図23に関して図示され得る。
図30A、30B、30Cは、本開示の少なくとも幾つかの実装に従って配置された、例示的なビデオ符号化システム13000及び動作中のビデオ符号化処理3000の説明図を提供する。図示の実装では、処理3000は、作用3001乃至3076のうちの1又は複数により図示されるような1又は複数の動作、関数又は作用を有しても良い。非限定的な例によると、処理3000は、図31に関して以下に詳述されるように、図1のエンコーダ100及び図2のデコーダ200を含む例示的なビデオ符号化システム1300、及び/又は本願明細書に記載の他のエンコーダ及びデコーダシステム及びサブシステムに関して本願明細書に記載される。様々な例において、処理3000は、エンコーダ及びデコーダの両方を含むシステムにより、又はエンコーダ(及び任意的にデコーダ)を用いる1つのシステムとデコーダ(及び任意的にエンコーダ)を用いるもう1つのシステムとを有する別個のシステムにより、行われても良い。留意すべきことに、上述のように、エンコーダは、エンコーダシステムの一部としてローカルデコーダを用いるローカルデコードループを有しても良い。
図示の実装では、ビデオ符号化システム13000は、論理回路3050等、及び/又はそれらの組合せを有しても良い。例えば、論理回路3050は、図1のエンコーダシステム100及び/又は図2のデコーダシステム200を有しても良く、本願明細書に記載の任意のエンコーダシステム及びサブシステム及び/又はデコーダシステム及びサブシステムに関して議論したような任意のモジュールを有しても良い。ビデオ符号化システム13000は、図30A〜Cに示すように、特定のモジュールに関連する1つの特定のブロック又は作用セットを有し得るが、これらのブロック又は作用は、ここで図示する特定のモジュールとは異なるモジュールに関連付けられても良い。処理3000は図示のようにエンコード及びデコードを対象としているが、記載の概念及び/又は動作は、エンコード及び/又はデコードに別個に、及びより一般的にはビデオ符号化に、適用されても良い。
処理3000は、動作3001で開始し、「ビデオシーケンスの入力ビデオフレームを受信する」。ここで、ビデオシーケンスの入力ビデオフレームは、例えばエンコーダ100により受信されても良い。
処理3000は、続いて、動作3002で「ピクチャ種類をピクチャグループの中の各ビデオフレームに関連付ける」。ここで、ピクチャ種類は、例えばコンテンツ事前分析モジュール102により、ピクチャグループの中の各ビデオフレームに関連付けられても良い。例えば、ピクチャ種類は、F/B−ピクチャ、P−ピクチャ、又はI−ピクチャ、等であっても良い。幾つかの例では、ビデオシーケンスはピクチャグループを有しても良く、本願明細書に記載の処理(例えば、動作3003乃至3011)は、ピクチャグループの1つのフレーム又はピクチャに対して実行されても良く、ピクチャグループの全てのフレーム又はピクチャに対して繰り返されても良く、次にビデオシーケンスの中の全てのピクチャグループに対して繰り返されても良い。
処理3000は、続いて、動作3003で「ピクチャをタイル及び/又はスーパーフラグメント及び可能な予測パーティショニングに分割する」。ここで、ピクチャは、例えば予測パーティション生成器105により、タイル又はスーパーフラグメント又は可能な予測パーティションに分割されても良い。
処理3000は、続いて、動作3004で「各可能な予測パーティショニングについて、予測を実行し、予測パラメータを決定する」。ここで、各可能な予測パーティショニング毎に、予測が実行されても良く、予測パラメータが決定されても良い。例えば、一連の可能な予測パーティショニング(それぞれ、種々の予測パーティションを有する)が生成されても良く、関連する予測及び予測パラメータが決定されても良い。例えば、予測は、特性及び動きに基づく複数参照予測又はイントラ予測を用いる予測を有しても良い。
上述のように、幾つかの例では、インター予測が実行されても良い。幾つかの例では、最大4個のデコード済み過去及び/又は将来ピクチャ及び幾つかのモーフィング/合成予測は、膨大な数の参照種類(例えば、参照ピクチャ)を生成するために用いられても良い。「インター」モードの例では、最大9個の参照種類がP−ピクチャでサポートされ、最大10個の参照種類がF/Bピクチャのためにサポートされ得る。さらに、「マルチ」モードは、1個の参照ピクチャの代わりに2個の参照ピクチャが用いられる一種のインター予測モードを提供でき、P−及びF/B−ピクチャは、それぞれ3個及び最大8個の参照種類を可能にする参照種類を可能にし得る。例えば、予測は、モーフィング技術又は合成技術のうちの少なくとも1つを用いて生成される前のデコード済みフレームに基づいても良い。このような例では、ビットストリーム(動作3012に関して後述する)は、予測パーティションに関連するフレーム参照、モーフィングパラメータ、又は合成パラメータを含み得る。
処理3000は、続いて、動作3005で「各可能な予測パーティショニングについて、可能な予測誤差を決定する」。ここで、可能な予測パーティショニング毎に、可能な予測誤差が決定されても良い。例えば、予測パーティショニング(及び関連する予測パーティション、予測、及び予測パラメータ)毎に、予測誤差が決定されても良い。例えば、可能な予測誤差の決定は、元のピクセル(例えば、予測パーティションの元のピクセルデータ)と予測ピクセルとの差分を取ることを有しても良い。幾つかの例では、関連する予測パラメータは、ソートされても良い。上述のように、幾つかの例では、予測誤差データパーティションは、モーフィング技術又は合成技術のうちの少なくとも1つを用いて生成された前のデコード済みフレームに少なくとも部分的に基づき生成された予測誤差データを有しても良い。
処理3000は、続いて、動作3006で「予測パーティショニング及び予測種類を選択し、パラメータを保存する」。ここで、予測パーティショニング及び予測種類が選択され、関連するパラメータが保存されても良い。幾つかの例では、最小予測誤差を有する可能な予測パーティショニングが選択されても良い。幾つかの例では、可能な予測パーティショニングは、レート歪み最適化(RDO)に基づき選択されても良い。
処理3000は、続いて、動作3007で「パーティション予測誤差データの種々の可能な符号化パーティショニングに対して、種々のブロックサイズにより固定又はコンテンツ適応型変換を実行する」。ここで、種々のブロックサイズによる固定又はコンテンツ適応型変換が、パーティション予測誤差データの種々の可能な符号化パーティショニングに対して実行されても良い。例えば、パーティション予測誤差データは、複数の符号化パーティションを生成するためにパーティショニングされても良い。例えば、パーティション予測誤差データは、本願明細書で議論のような符号化パーティション生成モジュール107のbi木符号化パーティショナモジュール又はdk木符号化パーティショナモジュールによりパーティショニングされても良い。幾つかの例では、F/B−又はP−ピクチャに関連するパーティション予測誤差データは、bi木符号化パーティショナモジュールによりパーティショニングされても良い。幾つかの例では、I−ピクチャに関連するビデオデータ(例えば、幾つかの例ではタイル又はスーパーフラグメント)は、kd木符号化パーティショナモジュールによりパーティショニングされても良い。幾つかの例では、符号化パーティショナモジュールは、スイッチ又は複数のスイッチにより選ばれ又は選択されても良い。例えば、パーティションは、符号化パーティション生成モジュール107により生成されても良い。
処理3000は、続いて、動作3008で「最適符号化パーティショニング、変換ブロックサイズ、及び実際の変換を決定する」。ここで、最適符号化パーティショニング、変換ブロックサイズ、及び実際の変換が決定されても良い。例えば、(例えば、種々の符号化パーティションを有する)種々の符号化パーティショニングは、(上述のように、符号化パーティションが変換ブロックサイズと一致しないとき、符号化パーティションの変換ブロックへの更なる分割を含み得る)選択される符号化パーティショニングを決定するために、RDO又は別の基礎に基づき評価されても良い。例えば、実際の変換(又は選択された変換)は、本願明細書に記載のように符号化パーティション又はブロックサイズに対して実行される任意のコンテンツ適応型変換又は固定変換を有しても良い。
処理3000は、続いて、動作3009で「変換係数を量子化しスキャンする」。ここで、符号化パーティション(及び/又は変換ブロック)に関連する変換係数は、エントロピー符号化に備えて量子化されスキャンされても良い。
処理3000は、続いて、動作3011で「各タイル又はスーパーフラグメントに関連するデータをエントロピーエンコードする」。ここで、各タイル又はスーパーフラグメントに関連するデータは、エントロピーエンコードされても良い。例えば、各ビデオシーケンスの各ピクチャグループの各ピクチャの各タイル又はスーパーフラグメントに関連するデータは、エントロピーエンコードされても良い。エントロピーエンコード済みデータは、予測パーティショニング、予測パラメータ、選択された符号化パーティショニング、選択された特性データ、動きベクトルデータ、量子化済み変換係数、フィルタパラメータ、(モード選択データのような)選択データ、及び指示子を有しても良い。
処理3000は、続いて、動作3012で「ビットストリームを生成する」。ここで、ビットストリームは、エントロピーエンコード済みデータに基づき生成されても良い。上述のように、幾つかの例では、ビットストリームは、予測パーティションに関連するフレーム又はピクチャ参照、モーフィングパラメータ、又は合成パラメータを有しても良い。
処理3000は、続いて、動作3013で「ビットストリームを送信する」。ここで、ビットストリームは、送信されても良い。例えば、ビデオ符号化システム13000は、出力ビットストリーム111、ビットストリーム2100、等をアンテナ3102(図31を参照のこと)により送信しても良い。
処理3000は、続いて、動作3020で「ピクセルデータを再構成し、ピクチャにアセンブルし、参照ピクチャバッファに保存する」。ここで、ピクセルデータは、再構成され、ピクチャにアセンブルされ、参照ピクチャバッファに保存されても良い。例えば、ローカルデコードループ(符号化パーティションの逆スキャン、逆変換及びアセンブルを含む)の後に、予測誤差データパーティションが生成されても良い。予測誤差データパーティションは、再構成済み予測パーティションを生成するために、予測パーティションに追加されても良い。再構成済み予測パーティションは、タイル又はスーパーフラグメントにアセンブルされても良い。アセンブル済みタイル又はスーパーフラグメントは、任意的にデブロックフィルタリング及び/又は品質復元フィルタリングにより処理され、ピクチャを生成するためにアセンブルされても良い。ピクチャは、他の(例えば、後続の)ピクチャの予測のために参照ピクチャとして、デコード済みピクチャバッファ119に保存されても良い。
処理3000は、続いて、動作3022で「デコード済み予測参照ピクチャを生成する」。ここで、デコード済み予測参照ピクチャは、デコードされても良い。例えば、デコード済み(又は最終デコード済み)タイル又はスーパーフラグメントは、デコード済みビデオピクチャを生成するためにアセンブルされても良く、デコード済みビデオピクチャは、将来の予測で使用するために参照ピクチャバッファ(例えば、デコード済みピクチャバッファ119)に保存されても良い。
処理3000は、続いて、動作3023で「変更特性パラメータを生成する」。ここで、変更済み特性パラメータが生成されても良い。例えば、第2の変更済み予測参照ピクチャ及び該第2の変更済み予測参照ピクチャに関連する第2の変更特性パラメータは、第2のデコード済み予測参照ピクチャに少なくとも部分的に基づき生成されても良い。ここで、第2の変更済み参照ピクチャは、第1の変更済み参照ピクチャと異なる種類であっても良い。
処理3000は、続いて、動作3024で「変更済み予測参照ピクチャを生成する」。ここで、変更済み予測参照ピクチャは、例えば、生成された第1の変更済み予測参照ピクチャ及び該第1の変更済み予測参照ピクチャに関連する第1の変更特性パラメータであっても良く、第1のデコード済み予測参照ピクチャに少なくとも部分的に基づき生成されても良い。
処理3000は、続いて、動作3025で「動きデータを生成する」。ここで、動き推定データが生成されても良い。例えば、現在ピクチャの予測パーティションに関連する動きデータは、第1の変更済み予測参照ピクチャ又は第2の変更済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき生成されても良い。
処理3000は、続いて、動作3026で「動き補償を実行する」。ここで、動き補償が実行されても良い。例えば、動き補償は、予測パーティションの予測パーティションデータを生成するために、第1の変更済み予測参照ピクチャ又は第2の変更済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき実行されても良い。処理3000は、この情報を動作3059にフィードバックしても良い。動作3059では、各デコード済み予測誤差パーティション(例えば、ゼロ予測誤差パーティションを含む)は、再構成済み予測パーティションを生成するために、対応する予測パーティションに加算されても良い。
動作3001乃至3026は、本願明細書で議論するエンコーダシステムにより用いることができるビデオエンコード及びビットストリーム送信技術を提供できる。以下の動作、動作3054乃至3076は、本願明細書で議論するようなデコーダにより用いられ得るビデオデコード及びビデオディスプレイ技術を提供できる。
処理3000は、続いて、動作3054で「ビットストリームを受信する」。ここで、ビットストリームは、受信されても良い。例えば、入力ビットストリーム、ビットストリーム2100、等は、デコーダ200により受信されても良い。幾つかの例では、ビットストリームは、上述のような符号化パーティション、1又は複数の指示子、及び/又は符号化パーティションを定めるデータに関連するデータを有しても良い。幾つかの例では、ビットストリームは、予測パーティショニング、予測パラメータ、選択された符号化パーティショニング、選択された特性データ、動きベクトルデータ、量子化済み変換係数、フィルタパラメータ、(モード選択データのような)選択データ、及び指示子を有しても良い。
処理3000は、続いて、動作3055で「ビットストリームをデコードする」。ここで、受信したビットストリームは、例えば、適応型エントロピーデコーダモジュール202によりデコードされても良い。例えば、受信したビットストリームは、予測パーティショニング、予測パラメータ、選択された符号化パーティショニング、選択された特性データ、動きベクトルデータ、量子化済み変換係数、フィルタパラメータ、(モード選択データのような)選択データ、及び指示子を決定するために、エントロピーデコードされても良い。
処理3000は、続いて、動作3056で「各符号化パーティションの各ブロックに対して逆スキャン及び逆量子化を実行する」。ここで、逆スキャン及び逆量子化は、処理中の予測パーティションの各符号化パーティションの各ブロックに対して実行されても良い。例えば、逆スキャン及び逆量子化は、適応型逆量子化モジュール203により実行されても良い。
処理3000は、続いて、動作3057で「変換係数をデコードしてデコード済み予測誤差データパーティションを決定するために、固定又はコンテンツ適応型逆変換を実行する」。ここで、固定又はコンテンツ適応型逆変換は、変換係数をデコードしてデコード済み予測誤差データパーティションを決定するために実行されても良い。例えば、逆変換は、ハイブリッドパラメータHaar逆変換のような逆コンテンツ適応型変換を有し、ハイブリッドパラメータHaar逆変換がパラメータ変換方向の方向のパラメータHaar逆変換及びパラメータ変換方向と直交する方向の離散コサイン逆変換を有するようにしても良い。幾つかの例では、固定逆変換は、離散コサイン逆変換又は離散コサイン逆変換近似を有しても良い。例えば、固定又はコンテンツ適応型変換は、適応型逆変換モジュール204により実行されても良い。上述のように、コンテンツ適応型逆変換は、例えばデコード済み近隣パーティション又はブロックのような他の前のデコード済みデータに基づいても良い。幾つかの例では、デコード済み予測誤差データパーティションの生成は、符号化パーティションアセンブラモジュール205によりデコード済み符号化パーティションをアセンブルすることを有しても良い。
処理3000は、続いて、動作3058で「各予測パーティション毎に予測ピクセルデータを生成する」。ここで、予測ピクセルデータは、各予測パーティション毎に生成されても良い。例えば、予測ピクセルデータは、(例えば、特性及び動きに基づき)選択された(又はイントラ、又は他の種類)予測種類及び関連する予測パラメータを用いて生成されても良い。
処理3000は、続いて、動作3059で「各デコード済み予測誤差パーティションに対応する予測パーティションを追加して、再構成済み予測パーティションを生成する」。ここで、各デコード済み予測誤差パーティション(例えば、ゼロ予測誤差パーティションを含む)は、再構成済み予測パーティションを生成するために、対応する予測パーティションに加算されても良い。例えば、予測パーティションは、図2に示すデコードループにより生成され、加算器206によりデコード済み予測誤差パーティションに加算されても良い。
処理3000は、続いて、動作3060で「再構成済み予測パーティションをアセンブルして、デコード済みタイル又はスーパーフラグメントを生成する」。ここで、再構成済み予測パーティションは、デコード済みタイル又はスーパーフラグメントを生成するためにアセンブルされても良い。例えば、予測パーティションは、予測パーティションアセンブラモジュール207によりデコード済みタイル又はスーパーフラグメントを生成するためにアセンブルされても良い。
処理3000は、続いて、動作3061で「デブロックフィルタリング及び/又はQRフィルタリングを適用して、最終デコード済みタイル又はスーパーフラグメントを生成する」。ここで、任意的なデブロックフィルタリング及び/又は品質復元フィルタリングは、最終デコード済みタイル又はスーパーフラグメントを生成するために、デコード済みタイル又はスーパーフラグメントに適用されても良い。例えば、任意的なデブロックフィルタリングは、デブロックフィルタリングモジュール208により適用されても良く、及び/又は任意的な品質復元フィルタリングは、品質復元フィルタリングモジュール209により適用されても良い。
処理3000は、続いて、動作3062で「デコード済みタイル又はスーパーフラグメントをアセンブルして、デコード済みビデオピクチャを生成し、参照ピクチャバッファに保存する」。ここで、デコード済み(又は最終デコード済み)タイル又はスーパーフラグメントは、デコード済みビデオピクチャを生成するためにアセンブルされても良く、デコード済みビデオピクチャは、将来の予測で使用するために参照ピクチャバッファ(例えば、デコード済みピクチャバッファ210)に保存されても良い。
処理3000は、続いて、動作3063で「ディスプレイ装置による提示のために、デコード済みビデオフレームを送信する」。ここで、デコード済みビデオフレームは、ディスプレイ装置による提示のために送信されても良い。例えば、デコード済みビデオピクチャは、適応型ピクチャ再編成器217及びコンテンツ事後復元モジュール218により更に処理され、ユーザへの提示のために、ディスプレイビデオ219のビデオフレームとしてディスプレイ装置へ送信されても良い。例えば、ビデオフレームは、提示のために(図24に示すように)ディスプレイ装置2405へ送信されても良い。
処理3000は、続いて、動作3072で「デコード済み予測参照ピクチャを生成する」。ここで、デコード済み予測参照ピクチャは、デコードされても良い。例えば、デコード済み符号化パーティションは、デコード済み予測誤差データパーティションを生成するためにアセンブルされても良く、デコード済みビデオピクチャ(例えば、第3のデコード済み予測参照ピクチャ及び第4のデコード済み予測参照ピクチャが生成されても良い)は、将来の予測で使用するために参照ピクチャバッファに保存されても良い。
処理3000は、続いて、動作3074で「変更済み予測参照ピクチャを生成する」。ここで、変更済み予測参照ピクチャが生成されても良く、例えば、第3の変更済み予測参照ピクチャの少なくとも一部は、第3の変更特性パラメータに少なくとも部分的に基づき生成されても良い。同様に、第4の変更済み予測参照ピクチャの少なくとも一部は、関連する第2の変更特性パラメータの少なくとも部分的に基づき生成されても良い。
処理3000は、続いて、動作3075で「動きデータを生成する」。ここで、動き推定データが生成されても良い。例えば、現在ピクチャの予測パーティションに関連する動きデータは、第3の変更済み予測参照ピクチャ又は第3の変更済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき生成されても良い。
処理3000は、続いて、動作3076で「動き補償を実行する」。ここで、動き補償が実行されても良い。例えば、動き補償は、予測パーティションの予測パーティションデータを生成するために、第3の変更済み予測参照ピクチャ又は第4の変更済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき実行されても良い。処理3000は、この情報を動作3059にフィードバックしても良い。動作3059では、各デコード済み予測誤差パーティション(例えば、ゼロ予測誤差パーティションを含む)は、再構成済み予測パーティションを生成するために、対応する予測パーティションに加算されても良い。
処理3000は、本願明細書で議論するような符号器システムのうちの任意のものにより実施されても良い。さらに、処理3000は、予測誤差データパーティション、元のデータパーティション、又はウェーブレットデータ等のようなビデオデータの任意の数のインスタンスに対して直列に又は並列に繰り返されても良い(例えば、動作3001で、処理3000は、記載の予測誤差データパーティションと同様に処理するために元のデータ又はウェーブレットデータを受信しても良い)。
動作中、処理3000は、コンピュータにより実施されるビデオ符号化方法として動作しても良く、第1の種類の第1のビデオフレーム及び第2の種類の第2のビデオフレームを第1の複数のタイル又はスーパーフラグメント及び第2の複数のタイル又はスーパーフラグメントにセグメント化するステップを有する。第1の複数のタイル又はスーパーフラグメントは、第1のパーティショニング技術を用いてパーティショニングされても良く、第2の複数のタイル又はスーパーフラグメントは、第2のパーティショニング技術を用いてパーティショニングされても良い。ここで、第1及び第2のパーティショニング技術は異なる。選択された予測パーティショニング及び関連する複数の予測パーティションは、第2のビデオフレームについて決定されても良い。第1の再構成済みタイル又はスーパーフラグメントが生成されても良い。デブロックフィルタリングパラメータ及び第1の最終再構成済みタイル又はスーパーフラグメントは、第1の再構成済みタイル又はスーパーフラグメント及びデブロックフィルタリングパラメータに少なくとも部分的に基づき生成されても良い。第1の最終再構成済みタイル又はスーパーフラグメント及び第2の最終再構成済みタイル又はスーパーフラグメントは、第1のデコード済み予測参照ピクチャを生成するためにアセンブルされても良い。モーフィング特性パラメータ及びモーフィング済み予測参照ピクチャは、モーフィング特性パラメータ及び第1のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。合成特性パラメータ及び合成済み予測参照ピクチャは、合成特性パラメータ及び第1のデコード済み参照ピクチャ又は第2のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。モード及び参照種類は、複数の予測パーティションの各々について決定されても良い。複数の予測パーティションに関連する動きデータは、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき生成されても良い。動き補償は、複数の予測パーティションについて複数の予測済みパーティションを生成するために、動きデータと、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの少なくとも1つとに基づき、実行されても良い。複数の予測済みパーティションは、対応する複数の予測誤差データパーティションを生成するために、対応する元のピクセルデータとの差分を取られても良い。複数の予測誤差データパーティションの予測誤差データパーティションの部分集合は、エンコードされる必要があると決定される。予測誤差データパーティションの部分集合の個々の予測誤差データパーティションは、選択された符号化パーティショニング及び関連する複数の符号化パーティションにパーティショニングされても良い。変換係数を生成するために、コンテンツ適応型変換は1又は複数の第1の符号化パーティションに対して実行されても良く、固定変換は複数の符号化パーティショニングのうちの1又は複数の第2の符号化パーティションに対して実行されても良い。変換係数は、量子化済み変換係数を生成するために量子化されても良い。第1及び第2の種類に関連付けられたフレームデータ、モード及び参照種類に関連付けられたモードデータ、選択された予測パーティショニングに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワード、選択された符号化パ―ティショニングに関連付けられた符号化パーティショニング指示子又は符号化パーティショニングコードワード、動きデータ、量子化済み変換係数、モーフィング特性パラメータ、合成特性パラメータ、及びデブロックフィルタリングパラメータは、ビットストリームにエントロピーエンコードされても良い。
別の例では、コンピュータにより実施されるビデオ符号化方法は、デブロックフィルタリング又はデブロック及びディザフィルタリングパラメータ、及びインループフィルタリング又は品質復元フィルタリングパラメータを生成するステップと、デブロックフィルタリング又はデブロック及びディザフィルタリングパラメータと、インループフィルタリング又は品質復元フィルタリングパラメータと、第2の再構成済みタイル又はスーパーフラグメントとに少なくとも部分的に基づき、第2の最終再構成済みタイル又はスーパーフラグメントを生成するステップと、を更に有しても良い。第1のデコード済み予測参照ピクチャは、ピクチャバッファに格納されても良い。ここで、動き補償を実行するステップは、適応型動きフィルタリングパラメータ又は適応型精密フィルタリングパラメータを生成するステップと、適応型動きフィルタリングパラメータ又は適応型精密フィルタリングパラメータを用いて適応型動き又は適応型精密フィルタリングに少なくとも部分的に基づき動き補償を実行するステップと、を有しても良い。拡張予測パラメータ及び拡張予測パーティションは、予測済みパーティション及び拡張予測パラメータに基づき生成されても良い。拡張予測済みパーティション又は予測済みパーティションを予測パーティションのための選択された予測済みパーティションとして用いるか否かが決定されても良い。選択された予測済みパーティションが拡張予測パラメータをビットストリームにエントロピーエンコードする拡張予測済みパーティションを有するとき、統合フィルタリング又は統合向上フィルタリングを選択された予測済みパーティションに適用するか否かが決定されても良い。統合フィルタリング又は統合向上フィルタリングが選択された予測済みパーティションに適用されるとき、選択された予測済みパーティション及び第2の選択された予測済みパーティションは、アセンブル済みピクチャの少なくとも一部を生成するためにアセンブルされても良い。統合フィルタリング又は統合向上フィルタリングが選択された予測済みパーティションに適用されるとき、統合フィルタリング又は統合向上フィルタリングパラメータが生成されても良く、アセンブル済みピクチャの一部は、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータに少なくとも部分的に基づき、統合フィルタリング又は統合向上フィルタリングされても良い。統合フィルタリング又は統合向上フィルタリングが選択された予測済みパーティションに適用されるとき、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータは、ビットストリームにエントロピーエンコードされても良い。選択されたコンテンツ適応型及び固定変換に関連するデータ、デブロックフィルタリング又はデブロック及びディザフィルタリングパラメータ、及びインループフィルタリング又は品質復元フィルタリングパラメータは、ビットストリームにエントロピーエンコードされても良い。ここで、エントロピーエンコードは、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術のうちの少なくとも1つを有しても良く、予測パーティショニング指示子又は予測パーティショニングコードワードをエントロピーエンコードするステップは、モーフィング特性パラメータ又は合成特性パラメータをエントロピーエンコードするステップと異なるエントロピーエンコード技術を有しても良い。ビットストリームは送信されても良い。
同様に、ビットストリームは受信されても良い。ビットストリームは、第1の種類及び第2の種類に関連付けられたフレームデータ、モード及び参照種類に関連付けられたモードデータ、選択された予測パーティショニングに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワード、選択された符号化パーティショニングに関連付けられた符号化パーティショニング指示子又は符号化パーティショニングコードワード、動きデータ、量子化済み変換係数、モーフィング特性パラメータ、合成特性パラメータ、デブロックフィルタリングパラメータ、合成特性パラメータ、デブロックフィルタリングパラメータ、拡張予測パラメータ、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータ、選択されたコンテンツ適応型及び固定変換に関連するデータ、インループフィルタリング又は品質復元フィルタリングパラメータを決定するためにエントロピーデコードされても良い。ここで、エントロピーデコードするステップは、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術のうちの少なくとも1つを有しても良く、予測パーティショニング指示子又は予測パーティショニングコードワードをエントロピーデコードするステップは、量子化済み変換係数をエントロピーデコードするステップと異なるエントロピーデコード技術を有しても良い。
幾つかの実装では、逆量子化は、デコード済み変換係数を生成するために、量子化済み変換係数に少なくとも部分的に基づき実行されても良い。逆変換は、複数のデコード済み符号化パーティションを生成するために、デコード済み変換係数及び変換指示子に少なくとも部分的に基づき実行されても良い。ここで、逆変換は、逆固定変換、逆離散コサイン変換、逆離散コサイン変換近似、逆適応型変換、又は逆ハイブリッドパラメータHaar変換の内の少なくとも1つを有しても良い。複数のデコード済み符号化パーティションは、デコード済み予測誤差データパーティションを生成するためにアセンブルされても良い。第1のデコード済みタイル又はスーパーフラグメントのうちの少なくとも1つは生成されても良い。デコーダデブロックフィルタリング、又はデコーダデブロック及びディザフィルタリング、及びデコーダインループ又はデコーダ品質復元フィルタリングは、第1の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、デブロックフィルタリングパラメータ、又はデブロック及びディザフィルタリングパラメータ、及びインループフィルタリングパラメータ又は品質復元フィルタリングパラメータに少なくとも部分的に基づき、第1のデコード済みタイル又はスーパーフラグメントに適用されても良い。第1の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第2の最終デコード済み再構成済みタイル又はスーパーフラグメントは、デコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。デコード済み再構成済みビデオフレームは、デコーダピクチャバッファに格納されても良い。デコーダモーフィング済み予測参照ピクチャは、モーフィング特性パラメータに少なくとも部分的に基づき生成されても良い。デコーダ合成済み予測参照ピクチャは、合成特性パラメータに少なくとも部分的に基づき生成されても良い。
幾つかの実装では、デコーダ動き補償は、デコード済み予測済みパーティションを生成するために、デコーダモーフィング済み予測参照ピクチャ又はデコーダ合成済み予測参照ピクチャに少なくとも部分的に基づき実行されても良い。ここで、デコーダ動き補償は、適応型動きフィルタリングパラメータ又は適応型精密フィルタリングパラメータに少なくとも部分的に基づくデコーダ適応型動きフィルタリング又はデコーダ適応型精密フィルタリングを有しても良い。拡張デコード済み予測済みパーティションは、拡張予測パラメータ及びデコード済み予測済みパーティションに少なくとも部分的に基づき生成されても良い。デコード済み拡張予測済みパーティション又はデコード済み予測済みパーティションを選択されたデコード済み予測済みパーティションとして用いるかが決定されても良い。デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングを選択されたデコード済み予測済みパーティションに適用するかが決定されても良い。デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングが選択されたデコード済み予測済みパーティションに適用されるとき、選択されたデコード済み予測済みパーティション及び第2の選択されたデコード済み予測済みパーティションは、デコード済みアセンブル済みピクチャの少なくとも一部を生成するためにアセンブルされても良い。デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングが選択されたデコード済み予測済みパーティションに適用されるとき、デコード済みアセンブル済みピクチャの一部は、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータに少なくとも部分的に基づき、デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングされても良い。選択されたデコード済み予測済みパーティションは、第1のデコード済み再構成済みパーティションを生成するために、デコード済み予測誤差データパーティションに加算されても良い。第1のデコード済み再構成済みパーティション及び第2のデコード済み再構成済みパーティションは、第3の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、結合されても良い。第3の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第4の最終デコード済み再構成済みタイル又はスーパーフラグメントは、第2のデコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。第2のデコード済み再構成済みビデオフレームは、ディスプレイ装置による提示のために、送信されても良い。第1のビデオフレームを第1の複数のスーパーフラグメントにセグメント化するステップは、第1のビデオフレームを第3の複数のタイルに分割するステップと、第1のビデオフレームを2以上の領域レイヤにセグメント化するステップと、を有しても良い。ここで、第1の複数のスーパーフラグメントのうちの少なくとも1つのスーパーフラグメントは、第2の複数のタイルのうちの個々のタイル内の2以上の領域レイヤのうちの個々の領域レイヤを有する。
幾つかの実装では、第1のパーティショニング技術は、kd木パーティショニング技術を有しても良く、第2のパーティショニング技術は、bi木パーティショニング技術を有しても良い。第2のビデオフレームについての選択された予測パーティショニング及び関連する複数の予測パーティションの決定は、第2のパーティショニング技術に基づき、第2のビデオを複数の可能な予測パーティショニングにパーティショニングするステップと、複数の可能な予測パーティショニングの各々について予測を実行し、複数の可能な予測パーティショニングの各々について可能な予測誤差を決定するステップと、予測及び可能な予測誤差に基づきレート歪み最適化を実行するステップであって、選択された予測パーティショニング及び関連する複数の予測パーティションを決定する、ステップと、選択された予測パーティショニング及び複数の予測パーティションに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワードを生成するステップと、を有しても良い。予測誤差データパーティションの部分集合のうちの個々の予測誤差データパーティションをパーティショニングするステップは、bi木パーティショニングするステップを有しても良い。予測誤差データパーティションの部分集合の個々の予測誤差データパーティションを選択された符号化パーティショニング及び関連する複数の符号化パーティションにパーティショニングするステップは、予測誤差データパーティションの部分集合の個々の予測誤差データパーティションを複数の可能な符号化パーティショニングにパーティショニングするステップと、複数の可能な符号化パーティショニングの各々の1又は複数の第1の符号化パーティションに対してコンテンツ適応型変換を、及び複数の可能な符号化パーティショニングの各々の1又は複数の第2の符号化パーティションに対して固定変換を実行するステップであって、第1の符号化パーティションは小乃至中の大きさのパーティションを有し、第2の符号化パーティションは中乃至大の大きさのパーティションを有し、固定変換は、離散コサイン変換又は離散コサイン変換近似のうちの少なくとも1つを有し、コンテンツ適応型変換は、ハイブリッドパラメータHaar変換を有し、ハイブリッドパラメータHaar変換は、第1の方向のパラメータHaar変換及び第2の方向の離散コサイン変換を有する、ステップと、及び/又は選択された符号化パ―ティショニング及び関連する複数の符号化パーティション及び関連する選択されたコンテンツ適応型及び固定変換を決定するために、複数の可能な符号化パーティショニングのコンテンツ適応型変換及び固定変換に基づき、第2のレート歪み最適化を実行するステップであって、符号化パーティションは関連する変換係数を有する、ステップと、を有しても良い。
幾つかの実装では、第1のビデオフレームはI−ピクチャであり、第2のビデオフレームはB/F−ピクチャ又はP−ピクチャのうちの少なくとも1つである。第1のビデオフレームが第1の種類であるか、第2のビデオフレームが第2の種類であるかの決定は、第3のレート歪み最適化を有しても良い。モードは、イントラモード、インターモード、マルチモード、スキップモード、又は自動モードのうちの少なくとも1つを有しても良い。参照種類は、モーフ―ング済み予測参照ピクチャ、合成済み予測参照ピクチャ、第1のデコード済み予測参照ピクチャ、又は第2のデコード済み予測参照ピクチャのうちの少なくとも1つを有しても良く、第1のデコード済み予測参照ピクチャは、過去のデコード済み予測参照ピクチャ又は将来のデコード済み予測参照ピクチャを有する。モード及び参照種類の決定は、第4のレート歪み最適化を有しても良い。
幾つかの実装では、モーフィング済み予測参照ピクチャは、利得変更済み予測参照ピクチャ、ブラー変更済み予測参照ピクチャ、支配的動き変更済み予測参照ピクチャ、又は整合性変更済み予測参照ピクチャのうちの少なくとも1つを有しても良い。ここで、合成済み予測参照ピクチャは、超解像度予測参照ピクチャ又は投影軌跡予測参照ピクチャのうちの少なくとも1つを有する。モーフィング特性パラメータの生成は、第2のビデオフレーム及び前のデコード済み予測参照ピクチャに少なくとも部分的に基づきモーフィング特性パラメータを生成するステップ、又は第2のビデオフレーム及び第3の元のビデオフレームに少なくとも部分的に基づきモーフィング特性パラメータを生成するステップのうちの少なくとも1つを有しても良く、動きデータは動きベクトルを有しても良い。
本願明細書の例示的な処理の実施は説明した順序で示された全ての動作の実行を有しても良いが、本開示はこれに関して限定されず、様々な例において、本願明細書における例示的な処理の実施は、示した動作の一部のみの及び/又は図示と異なる順序での実行を有しても良い。
本願明細書に記載のシステムの種々のコンポーネントは、ソフトウェア、ファームウェア及び/又はハードウェア、及び/又はそれらの任意の組合せで実装されても良い。例えば、システム1400の種々のコンポーネントは、少なくとも部分的に、例えばスマートフォンのようなコンピューティングシステムに見られるコンピューティングSoC(System-on-a-Chip)のハードウェアにより設けられても良い。当業者は、本願明細書に記載のシステムが対応する図に示されない追加コンポーネントを有しても良いことを理解できる。例えば、本願明細書で議論したシステムは、ビットストリームマルチプレクサ又はデマルチプレクサモジュールのような及び明確さの目的で図示されない追加コンポーネントを有しても良い。
さらに、本願明細書で議論した動作のうちの任意の1又は複数のものは、1又は複数のコンピュータプログラムにより提供される命令に応答して行われても良い。このようなプログラムは、例えばプロセッサにより実行されると本願明細書に記載の機能を提供する命令を提供する信号を運ぶ媒体を含み得る。コンピュータプログラムは、任意の形式の1又は複数の機械可読媒体で提供されても良い。したがって、例えば、1又は複数のプロセッサコアを有するプロセッサは、1又は複数の機械可読媒体によりプロセッサに伝達されるプログラムコード及び/又は命令又は命令セットに応答して、本願明細書の例示的な処理の動作のうちの1又は複数を実行しても良い。通常、機械可読媒体は、本願明細書に記載の装置及び/又はシステムのうちの任意のものに本願明細書で議論したようなビデオシステムの少なくとも部分を実装させるプログラムコード及び/又は命令又は命令セットの形式でソフトウェアを伝達し得る。
本願明細書に記載の任意の実装で用いられるとき、用語「モジュール」は、本願明細書に記載の機能を提供するよう構成されるソフトウェアロジック、ファームウェアロジック、及び/又はハードウェアロジックの任意の組合せを表す。ソフトウェアは、ソフトウェアパッケージ、コード、及び/又は命令セット若しくは命令として具現化されても良い。「ハードウェア」は、本願明細書に記載の任意の実装で用いられるとき、例えば、単独で又は任意の組合せで、ハードウェア回路、プログラマブル回路、状態機械回路、及び/又はプログラマブル回路により実行される命令を格納するファームウェアを有し得る。モジュールは、集合的又は個々に、大規模システム、例えば集積回路(IC)、システムオンチップ(SoC)、等の部分を形成する回路として具現化されても良い。例えば、モジュールは、本願明細書で議論した符号化システムのソフトウェア、ファームウェア、又はハードウェアによる実装のために論理回路に組み込まれても良い。
図31は、本開示の少なくとも幾つかの実装に従って配置される例示的なビデオ符号化システム3100の説明図である。図示の実装では、ビデオ符号化システム3100は、撮像装置3101、ビデオエンコーダ100及び/又は処理ユニット3120の論理回路3150により実装されるビデオエンコーダ、アンテナ3120、1又は複数のプロセッサ3103、1又は複数のメモリ記憶3104、及び/又はディスプレイ装置3105を有しても良い。
図示のように、撮像装置3101、アンテナ3120、処理ユニット3120、論理回路3150、ビデオエンコーダ100、ビデオデコーダ200、プロセッサ3103、メモリ記憶3104、及び/又はディスプレイ装置3105は、互いに通信可能であっても良い。上述のように、ビデオエンコーダ100及びビデオデコーダ200の両方を備えて図示されるが、ビデオ符号化システム3100は、様々な例においてビデオエンコーダ100のみ又はビデオデコーダ200のみを有しても良い。
図示のように、幾つかの例では、ビデオ符号化システム3100は、アンテナ3120を有しても良い。アンテナ3120は、例えば、ビデオデータのエンコード済みビットストリームを送信又は受信するよう構成されても良い。さらに、幾つかの例では、ビデオ符号化システム3100は、ディスプレイ装置3105を有しても良い。ディスプレイ装置3105は、ビデオデータを提示するよう構成されても良い。図示のように、幾つかの例では、論理回路3150は、処理ユニット3120により実装されても良い。処理ユニット3120は、特定用途向け集積回路(ASIC)論理、グラフィックプロセッサ、汎用プロセッサ、等を有しても良い。ビデオ符号化システム3100は任意的なプロセッサ3103を有しても良く、プロセッサ3103も、同様に、特定用途向け集積回路(ASIC)論理、グラフィックプロセッサ、汎用プロセッサ、等を有しても良い。幾つかの例では、論理回路3150は、ハードウェア又はビデオ符号化専用ハードウェア等により実装されても良く、プロセッサ3103は、汎用ソフトウェア又はオペレーティングシステムなどにより実装されても良い。さらに、メモリ記憶3104は、揮発性メモリ(例えば、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)、等)又は不揮発性メモリ(例えば、フラッシュメモリ等)、等のような任意の種類のメモリであっても良い。非限定的な例では、メモリ記憶3104は、キャッシュメモリにより実装されても良い。幾つかの例では、論理回路3150は、(例えば、画像バッファの実装のために)メモリ記憶3104にアクセスしても良い。他の例では、論理回路3150及び/又は処理ユニット3120は、画像バッファ等の実装のためにメモリ記憶(例えば、キャッシュ等)を有しても良い。
幾つかの例では、論理回路により実装されるビデオエンコーダ100は、(例えば、処理ユニット3120又はメモリ記憶3104により)画像バッファ及び(例えば、処理ユニット3120により)グラフィック処理ユニットを有しても良い。グラフィック処理ユニットは、画像バッファに通信可能に結合されても良い。グラフィック処理ユニットは、図1に関して議論したような種々のモジュール及び/又は本願明細書に記載の任意の他のエンコーダシステム又はサブシステムを具現化するために論理回路3150により実装されるようなビデオエンコーダ100を有しても良い。例えば、グラフィック処理ユニットは、予測パーティション生成論理回路、適応型ピクチャ編成論理回路、インター予測論理回路、動き補償生成論理回路、差分論理回路、サブパーティション生成論理回路、適応型変換論理回路、適応型エントロピーエンコーダ論理回路、等を有しても良い。論理回路は、本願明細書で議論したような種々の動作を実行するよう構成されても良い。
別の例では、ビデオエンコーダ100は、画像バッファと、画像バッファに通信可能に結合されるグラフィック処理ユニットと、を有しても良い。グラフィック処理ユニットは、第1の種類の第1のビデオフレーム及び第2の種類の第2のビデオフレームを第1の複数のタイル又はスーパーフラグメント及び第2の複数のタイル又はスーパーフラグメントにセグメント化するよう構成されても良い。グラフィック処理ユニットは、第1の複数のタイル又はスーパーフラグメントを第1のパーティショニング技術を用いて、第2の複数のタイル又はスーパーフラグメントを第2のパーティショニング技術を用いて、パーティショニングするよう構成されても良い。ここで、第1及び第2のパーティショニング技術は異なる。第2のビデオフレームの選択された予測パーティショニング及び関連する複数の予測パーティションが決定されても良い。第1の再構成済みタイル又はスーパーフラグメントが生成されても良い。デブロックフィルタリングパラメータ及び第1の最終再構成済みタイル又はスーパーフラグメントは、第1の再構成済みタイル又はスーパーフラグメント及びデブロックフィルタリングパラメータに少なくとも部分的に基づき生成されても良い。第1の最終再構成済みタイル又はスーパーフラグメント及び第2の最終再構成済みタイル又はスーパーフラグメントは、第1のデコード済み予測参照ピクチャを生成するためにアセンブルされても良い。モーフィング特性パラメータ及びモーフィング済み予測参照ピクチャは、モーフィング特性パラメータ及び第1のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。合成特性パラメータ及び合成済み予測参照ピクチャは、合成特性パラメータ及び第1のデコード済み参照ピクチャ又は第2のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。モード及び参照種類は、複数の予測パーティションの各々について決定されても良い。複数の予測パーティションに関連する動きデータは、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき生成されても良い。動き補償は、複数の予測パーティションについて複数の予測済みパーティションを生成するために、動きデータと、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの少なくとも1つとに基づき、実行されても良い。対応する複数の予測誤差データパーティションを生成するために、複数の予測済みパーティションと対応する元のピクセルデータとの差分が取られても良い。複数の予測誤差データパーティションの予測誤差データパーティションの部分集合はエンコードされる必要があるか、決定されても良い。エンコードされる必要のある予測誤差データパーティションの部分集合について、予測誤差データパーティションの部分集合の個々の予測誤差データパーティションは、選択された符号化パーティショニング及び関連する複数の符号化パーティションにパーティショニングされても良く、変換係数を生成するために、コンテンツ適応型変換は1又は複数の第1の符号化パーティションに対して、及び固定変換は複数の符号化パーティションのうちの1又は複数の第2の符号化パーティションに対して実行されても良く、変換係数は、量子化済み変換係数を生成するために量子化されても良い。第1及び第2の種類に関連付けられたフレームデータ、モード及び参照種類に関連付けられたモードデータ、選択された予測パーティショニングに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワード、選択された符号化パ―ティショニングに関連付けられた符号化パーティショニング指示子又は符号化パーティショニングコードワード、動きデータ、量子化済み変換係数、モーフィング特性パラメータ、合成特性パラメータ、及びデブロックフィルタリングパラメータは、全て、ビットストリームにエントロピーエンコードされても良い。
幾つかの例では、ビデオ符号化システム3100のアンテナ3120は、ビデオデータのエンコード済みビットストリームを受信するよう構成されても良い。ビデオ符号化システム3100は、アンテナ3120に結合されエンコード済みビットストリームをデコードするよう構成されるビデオデコーダ200も有しても良い。
更なる例では、デコーダシステム200は、エンコード済みビットストリームをデコードするよう構成されるビデオデコーダを有しても良い。ビデオデコーダは、量子化済み変換係数、選択されたコンテンツ適応型及び固定変換に関連するデータ、符号化パーティショニング指示子又は符号化パーティショニングコードワード、デブロックフィルタリングパラメータ、モーフィング特性パラメータ、合成特性パラメータ、動きデータ、予測パーティショニング指示子又は予測パーティショニングコードワードを決定するために、エンコード済みビットストリームをエントロピーデコードするよう構成されても良い。逆量子化は、デコード済み変換係数を生成するために、量子化済み変換係数に少なくとも部分的に基づき実行されても良い。逆変換は、複数のデコード済み符号化パーティションを生成するために、デコード済み変換係数と、選択されたコンテンツ適応型及び固定変換に関連するデータと、に少なくとも部分的に基づいても良い。複数のデコード済み符号化パーティションは、デコード済み予測誤差データパーティションを生成するために、符号化パーティショニング指示子又は符号化パーティショニングコードワードに少なくとも部分的に基づきアセンブルされても良い。第1のデコード済みタイル又はスーパーフラグメントのうちの少なくとも1つは生成されても良い。デブロックフィルタリングは、第1の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、デブロックフィルタリングパラメータに少なくとも部分的に基づき、第1のデコード済みタイル又はスーパーフラグメントに適用されても良い。第1の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第2の最終デコード済み再構成済みタイル又はスーパーフラグメントは、デコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。モーフィング済み予測参照ピクチャは、モーフィング特性パラメータ及びデコード済み再構成済みビデオフレームに少なくとも部分的に基づき生成されても良い。合成済み予測参照ピクチャは、合成特性パラメータと、再構成済みビデオフレーム又は第1の再構成済みビデオフレームのうちの少なくとも1つと、に少なくとも部分的に基づき生成されても良い。動き補償は、デコード済み予測済みパーティションを生成するために、デコーダモーフィング済み予測参照ピクチャ又はデコーダ合成済み予測参照ピクチャ及び動きデータに少なくとも部分的に基づき実行されても良い。デコード済み予測済みパーティションは、第1のデコード済み再構成済みパーティションを生成するために、デコード済み予測誤差データパーティションに加算されても良い。第1のデコード済み再構成済みパーティション及び第2のデコード済み再構成済みパーティションは、第3の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、予測パーティショニング指示子又は予測パーティショニングコードワードに少なくとも部分的に基づき結合されても良い。第3の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第4の最終デコード済み再構成済みタイル又はスーパーフラグメントは、第2のデコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。第2のデコード済み再構成済みビデオフレームは、ディスプレイ装置による提示のために、送信されても良い。
実施形態において、本願明細書に記載の特徴は、1又は複数のコンピュータプログラムにより提供される命令に応答して実行されても良い。このようなプログラムは、例えばプロセッサにより実行されると本願明細書に記載の機能を提供し得る命令を提供する信号を運ぶ媒体を含み得る。コンピュータプログラムは、任意の形式の1又は複数の機械可読媒体で提供されても良い。したがって、例えば、1又は複数のプロセッサコアを有するプロセッサは、1又は複数の機械可読媒体によりプロセッサに伝達されるプログラムコード及び/又は命令又は命令セットに応答して、本願明細書に記載の1又は複数の特徴を実行しても良い。通常、機械可読媒体は、本願明細書に記載の装置及び/又はシステムのうちの任意のものに本願明細書に記載の特徴の少なくとも部分を実装させるプログラムコード及び/又は命令又は命令セットの形式でソフトウェアを伝達し得る。
図32は、本開示の少なくとも幾つかの実装に従って配置される例示的なシステム3200の説明図である。様々な実施形態において、システム3200はメディアシステムであっても良いが、システム3200はこの環境に限定されない。例えば、システム3200は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、PDA(personal digital assistant)、携帯電話機、携帯電話機/PDAの組合せ、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレット、又はスマートテレビ)、MID(mobile internet device)、メッセージング装置、データ通信装置、カメラ(例えば、ポイントアンドシュートカメラ、スーパーズームカメラ、デジタル一眼レフ(digital single-lens reflex:DSLR)カメラ)等に組み込まれても良い。
種々の実装において、システム3200は、ディスプレイ3220に結合されるプラットフォーム3202を有する。プラットフォーム3202は、コンテンツサービス装置3230若しくはコンテンツ配信装置3240のようなコンテンツ装置、又は他の類似のコンテンツソースからコンテンツを受信しても良い。1又は複数のナビゲーション機能を有するナビゲーション制御部3250は、例えばプラットフォーム3202及び/又はディスプレイ3220と相互作用するために用いられても良い。これらのコンポーネントの各々は、以下に詳細に説明される。
種々の実装では、プラットフォーム3202は、チップセット3205、プロセッサ3210、メモリ3212、アンテナ3213、記憶装置3214、グラフィックサブシステム3215、アプリケーション3216及び/又は無線機3218の任意の組合せを有しても良い。チップセット3205は、プロセッサ3210、メモリ3212、記憶装置3214、グラフィックサブシステム3215、アプリケーション3216及び/又は無線機3218の間の相互通信を提供しても良い。例えば、チップセット3205は、記憶装置3214との相互通信を提供可能な記憶装置アダプタ(図示しない)を有しても良い。
プロセッサ3210は、CISC(Complex Instruction Set Computer)又はRISC(Reduced Instruction Set Computer)プロセッサ、x86命令セット互換プロセッサ、マルチコア、又は任意の他のマイクロプロセッサ又はCPU(central processing unit)として実施されても良い。種々の実施形態において、プロセッサ3210は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサ、等であっても良い。
メモリ3212は、RAM(Random Access Memory)、DRAM(Dynamic Random Access Memory)、又はSRAM(Static RAM)のような揮発性メモリ装置として実施されても良いが、これらに限定されない。
記憶装置3214は、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内蔵記憶装置、外付け記憶装置、フラッシュメモリ、バッテリバックアップSDRAM(synchronous DRAM)、及び/又はネットワークアクセス可能な記憶装置のような不揮発性メモリ装置として実施されても良いが、これらに限定されない。種々の実施形態では、記憶装置3214は、例えば複数のハードドライブが含まれるとき重要なデジタルメディアのために記憶性能拡張保護を増大させる技術を有しても良い。
グラフィックサブシステム3215は、表示のために静止画像又はビデオのような画像の処理を実行しても良い。グラフィックサブシステム3215は、例えばGPU(graphics processing unit)又はVPU(visual processing unit)であっても良い。アナログ又はデジタルインタフェースは、グラフィックサブシステム3215及びディスプレイ3220に通信可能に結合するために用いられても良い。例えば、インタフェースは、HDMI(登録商標)(High-Definition Multimedia Interface)、DisplayPort、無線HDMI、及び/又は無線HD準拠技術のうちの任意のものであっても良い。グラフィックサブシステム3215は、プロセッサ3210又はチップセット3205に統合されても良い。幾つかの実装では、グラフィックサブシステム3215は、チップセット3205に通信可能に結合されるスタンドアロン型装置であっても良い。
本願明細書に記載されるグラフィック及び/又はビデオ処理技術は、種々のハードウェアアーキテクチャで実施されても良い。例えば、グラフィック及び/又はビデオ機能は、チップセットに統合されても良い。代替で、別個のグラフィック及び/又はビデオプロセッサが用いられても良い。更に別の実装として、グラフィック及び/又はビデオ機能は、マルチコアプロセッサを含む汎用プロセッサにより提供されても良い。更なる実施形態では、機能は、消費者電子機器内に実装されても良い。
無線機3218は、種々の適切な無線通信技術を用いて信号を送信及び受信可能な1又は複数の無線機を有しても良い。このような技術は、1又は複数の無線ネットワークに渡る通信に関与し得る。例示的な無線ネットワークは、WLAN(wireless local area network)、WPAN(wireless personal area network)、WMAN(wireless metropolitan area network)、セルラネットワーク、及び衛星ネットワークを含む(が、これらに限定されない)。このようなネットワークに渡る通信では、無線機3218は、任意のバージョンの1又は複数の適用規格に従って動作しても良い。
種々の実装では、ディスプレイ3220は、任意のテレビジョン型モニタ又はディスプレイを有しても良い。ディスプレイ3220は、例えば、コンピュータディスプレイスクリーン、タッチスクリーンディスプレイ、ビデオモニタ、テレビ型装置、及び/又はテレビを有しても良い。ディスプレイ3220は、デジタル及び/又はアナログであっても良い。種々の実装において、ディスプレイ3220は、ホログラフィックディスプレイであっても良い。また、ディスプレイ3220は、視覚投影を受け得る透過面であっても良い。このような投影は、種々の形式の情報、画像及び/又はオブジェクトを伝達し得る。例えば、このような投影は、MAR(mobile augmented reality)アプリケーションのための視覚的オーバレイであっても良い。1又は複数のソフトウェアアプリケーション3216の制御下で、プラットフォーム3202は、ユーザーインターフェース3222をディスプレイ3220に表示しても良い。
種々の実装において、コンテンツサービス装置3230は、任意の全国的、国際的、及び/又は独立型サービスによりホストされても良く、したがって例えばインターネットを介してプラットフォーム3202にアクセス可能であっても良い。コンテンツサービス装置3230は、プラットフォーム3202に及び/又はディスプレイ3220に結合されても良い。プラットフォーム3202に及び/又はコンテンツサービス装置3230は、ネットワーク3260へ及びそれからメディア情報を通信(例えば、送信及び/又は受信)するために、ネットワーク3260に結合されても良い。コンテンツ配信装置3240も、プラットフォーム3202に及び/又はディスプレイ3220に結合されても良い。
種々の実装において、コンテンツサービス装置3230は、ケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話機、インターネット可能装置、又はデジタル情報及び/又はコンテンツを配信可能な機器、及びネットワーク3260を介して又は直接にコンテンツプロバイダとプラットフォーム3202及び/又はディスプレイ3220との間でコンテンツを単方向若しくは双方向通信可能な任意の他の類似の装置を有しても良い。コンテンツは、単方向若しくは双方向に、システム3200内のコンポーネントのうちの任意の1つ及びネットワーク3260を介してコンテンツプロバイダへ及びそれから通信されても良い。コンテンツの例は、例えば、ビデオ、音楽、医用及びゲーム情報、等を含む任意のメディア情報を有しても良い。
コンテンツサービス装置3230は、メディア情報、デジタル情報、及び/又は他のコンテンツを含むケーブルテレビ番組のようなコンテンツを受信しても良い。コンテンツプロバイダの例は、任意のケーブル又は衛星テレビ又は無線機又はインターネットコンテンツプロバイダを含み得る。提供される例は、本開示に従う実装のいかなる限定も意味しない。
種々の実装では、プラットフォーム3202は、1又は複数のナビゲーション機能を有するナビゲーション制御部3250から制御信号を受信しても良い。制御部3250のナビゲーション機能は、例えばユーザーインターフェース3222と相互作用するために用いられても良い。種々の実施形態において、ナビゲーション制御部3250は、ユーザに空間的(例えば、連続する多次元)データをコンピュータに入力させるコンピュータハードウェアコンポーネント(特に、ヒューマンインタフェース装置)であっても良いポインティングデバイスであっても良い。GUI(graphical user interface)、テレビ、及びモニタのような多くのシステムは、ユーザに、身体的ジェスチャを用いてコンピュータ又はテレビを制御させ及びそれらにデータを提供させる。
制御部3250のナビゲーション機能の動きは、ディスプレイ(例えば、ディスプレイ3220)上で、ディスプレイに表示されるポインタ、カーソル、フォーカス、リング又は他の視覚的指示子の動きにより複製されても良い。例えば、ソフトウェアアプリケーション3216の制御下で、ナビゲーション制御部3250に配置されたナビゲーション機能は、例えばユーザーインターフェース3222上に表示される仮想ナビゲーション機能にマッピングされても良い。種々の実施形態において、制御部3250は、別個のコンポーネントではなく、プラットフォーム3202及び/又はディスプレイ3220に統合されても良い。しかしながら、本開示は、本願明細書に示された又は記載された要素又は環境に限定されない。
種々の実装では、ドライバ(図示しない)は、例えば、有効にされると、初期ブートアップ後のボタンのタッチで、テレビのように即座に、ユーザがプラットフォーム3202をオン及びオフにできるようにする技術を有しても良い。プログラムロジックは、プラットフォーム3202に、プラットフォームが「オフ」にされるときでも、コンテンツをメディアアダプタ又は他のコンテンツサービス装置3230又はコンテンツ配信装置3240へストリーミングさせても良い。さらに、チップセット3205は、例えば5.1サラウンドサウンド音声及び/又は高品位7.1サラウンドサウンド音声をサポートするハードウェア及び/又はソフトウェアを有しても良い。ドライバは、統合グラフィックプラットフォームのグラフィックドライバを有しても良い。種々の実施形態において、グラフィックドライバは、PCI(peripheral component interconnect)Expressグラフィックカードを有しても良い。
種々の実装では、システム3200内に示したコンポーネントのうちの任意の1又は複数は統合されても良い。例えば、プラットフォーム3202及びコンテンツサービス装置3230が統合されても良く、プラットフォーム3202及びコンテンツ配信装置3240が統合されても良く、又はプラットフォーム3202、コンテンツサービス装置3230及びコンテンツ配信装置3240が統合されても良い。種々の実施形態において、プラットフォーム3202及びディスプレイ3220は、統合ユニットであっても良い。例えば、ディスプレイ3220及びコンテンツサービス装置3230が統合されても良く、又はディスプレイ3220及びコンテンツ配信装置3240が統合されても良い。これらの例は、本開示を限定するものではない。
種々の実施形態において、システム3200は、無線システム、有線システム又は両者の組合せとして実装されても良い。無線システムとして実施されるとき、システム3200は、1又は複数のアンテナ、送信機、受信機、通信機、増幅器、フィルタ、制御ロジック、等のような無線共有媒体を介して通信するのに適するコンポーネント及びインタフェースを有しても良い。無線共有媒体の例は、RFスペクトル等のような無線スペクトルの部分を含んでも良い。有線システムとして実施されるとき、システム3200は、入力/出力(I/O)アダプタ、対応する有線通信媒体でI/Oアダプタに接続するための物理コネクタ、NIC(network interface card)、ディスク制御部、ビデオ制御部、音声制御部、等のような、有線通信媒体を介して通信するのに適するコンポーネント及びインタフェースを有しても良い。有線通信媒体の例は、ワイヤ、ケーブル、金属線、プリント回路基板(PCB)、バックプレーン、スイッチ構造、半導体物質、ツイストペアワイヤ、同軸ケーブル、光ファイバ等を含んでも良い。
プラットフォーム3202は、情報を通信するために1又は複数の論理又は物理チャネルを確立しても良い。情報は、媒体情報及び制御情報を有しても良い。媒体情報は、ユーザに意味のあるデータ提示コンテンツを表し得る。コンテンツの例は、例えば、音声会話、ビデオ会議、ストリーミングビデオ、電子メール(email)メッセージ、音声メールメッセージ、英数字シンボル、グラフィック、画像、ビデオ、テキスト等からのデータを含み得る。ビデオ会議からのデータは、例えば、会話情報、無音期間、背景雑音、快適雑音、トーン等であっても良い。制御情報は、自動システム向けのコマンド、命令又は制御ワードを表す任意のデータを表しても良い。例えば、制御情報は、システムを通じて媒体情報を転送し、又は所定の方法で媒体情報を処理するようノードに指示するために用いられても良い。しかしながら、実施形態は、図32に示された又は記載された要素又は環境に限定されない。
上述のように、システム3200は、変化する物理的様式又は形状因子で実施されても良い。図33は、システム3300が実施され得る小型装置3300の実装を示す。種々の実施形態において、例えば、装置3300は、無線機能を有するモバイルコンピューティング装置として実施されても良い。モバイルコンピューティング装置は、例えば、処理システム及び1又は複数のバッテリのようなモバイル電源若しくは供給を有する任意の装置を表しても良い。
上述のように、例えば、モバイルコンピューティング装置の例は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、PDA(personal digital assistant)、携帯電話機、携帯電話機/PDAの組合せ、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレット、又はスマートテレビ)、MID(mobile internet device)、メッセージング装置、データ通信装置、カメラ(例えば、ポイントアンドシュートカメラ、スーパーズームカメラ、デジタル一眼レフ(digital single-lens reflex:DSLR)カメラ)等を有しても良い。
モバイルコンピューティング装置の例は、腕時計型コンピュータ、指輪型コンピュータ、リングコンピュータ、眼鏡型コンピュータ、ベルトクリップ型コンピュータ、腕章型コンピュータ、靴型コンピュータ、衣類型コンピュータ、及び他の装着可能コンピュータのような、人により装着されるよう配置されるコンピュータも含み得る。種々の実施形態では、例えば、モバイルコンピューティング装置は、コンピュータアプリケーション及び音声通信及び/又はデータ通信を実行可能なスマートフォンとして実施されても良い。幾つかの実施形態は、例としてスマートフォンとして実施されるモバイルコンピューティング装置と共に記載され得るが、他の実施形態も他の無線モバイルコンピューティング装置を持ち手実施できることが理解される。実施形態は、この文脈に限定されない。
図33に示すように、装置3300は、筐体3302、ディスプレイ3304、ユーザーインターフェース3310を含み得る入力/出力(I/O)装置3306、アンテナ3308を有しても良い。装置3300は、ナビゲーション機能3312を有しても良い。ディスプレイ3304は、モバイルコンピューティング装置に適切な情報を表示する任意の適切なディスプレイを有しても良い。I/O装置3306は、モバイルコンピューティング装置に情報を入力する任意の適切なI/O装置を有しても良い。I/O装置3306の例は、英数字キーボード、数字キーパッド、タッチパッド、入力キー、ボタン、スイッチ、ロッカースイッチ、マイクロフォン、スピーカ、音声認識装置及びソフトウェア、等を有しても良い。情報は、マイクロフォン(図示しない)により装置3300に入力されても良い。このような情報は、音声認識装置(図示しない)によりデジタル化されても良い。実施形態は、この文脈に限定されない。
種々の実施形態は、ハードウェア要素、ソフトウェア要素、又は両者の組み合わせを用いて実施されても良い。ハードウェア要素の例は、プロセッサ、マイクロプロセッサ、回路、回路要素(例えば、トランジスタ、抵抗器、キャパシタ、インダクタ等)、集積回路、ASIC(application specific integrated circuit)、PLD(programmable logic device)、DSP(digital signal processor)、FPGA(field programmable gate array)、メモリユニット、論理ゲート、レジスタ、半導体装置、チップ、マイクロチップ、チップセット等を有しても良い。ソフトウェアの例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシジャ、ソフトウェアインタフェース、API(application program interface)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、又はそれらの任意の組合せを含んでも良い。実施形態がハードウェア要素及び/又はソフトウェア要素を用いて実装されるかの決定は、所望の計算レート、パワーレベル、熱耐性、処理周期バジェット、入力データレート、出力データレート、メモリ資源、データバス速度、及び他の設計若しくは性能制約のような任意の数の要因に従って変化し得る。
少なくとも1つの実施形態の1又は複数の態様は、プロセッサ内の種々のロジックを表し、機械により読み込まれると本願明細書に記載の技術を実行するために該機械にロジックを組み立てさせる、機械可読媒体に格納された典型的な命令により実施されても良い。「IPコア」として知られるこのような表現は、有形の、機械可読媒体に格納され、実際にロジック又はプロセッサを作成する製造機械にロードするために種々の顧客若しくは製造設備に供給されても良い。
本願明細書に説明された特定の特徴は種々の実装を参照して記載されたが、この記載は、限定的意味として考えられることを意図しない。ここで、本開示の関連分野の当業者に明らかな本願明細書に記載の実装の種々の変更は、他の実装と同様に、本開示の精神及び範囲の範囲内にあると考えられる。
以下の例は、更なる実施形態に関連する。
一例では、コンピュータにより実施されるビデオ符号化方法は、第1の種類の第1のビデオフレーム及び第2の種類の第2のビデオフレームを第1の複数のタイル又はスーパーフラグメント及び第2の複数のタイル又はスーパーフラグメントにセグメント化することを含む。第1の複数のタイル又はスーパーフラグメントは、第1のパーティショニング技術を用いてパーティショニングされても良く、第2の複数のタイル又はスーパーフラグメントは、第2のパーティショニング技術を用いてパーティショニングされても良い。ここで、第1及び第2のパーティショニング技術は異なる。選択された予測パーティショニング及び関連する複数の予測パーティションは、第2のビデオフレームについて決定されても良い。第1の再構成済みタイル又はスーパーフラグメントが生成されても良い。デブロックフィルタリングパラメータ及び第1の最終再構成済みタイル又はスーパーフラグメントは、第1の再構成済みタイル又はスーパーフラグメント及びデブロックフィルタリングパラメータに少なくとも部分的に基づき生成されても良い。第1の最終再構成済みタイル又はスーパーフラグメント及び第2の最終再構成済みタイル又はスーパーフラグメントは、第1のデコード済み予測参照ピクチャを生成するためにアセンブルされても良い。モーフィング特性パラメータ及びモーフィング済み予測参照ピクチャは、モーフィング特性パラメータ及び第1のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。合成特性パラメータ及び合成済み予測参照ピクチャは、合成特性パラメータ及び第1のデコード済み参照ピクチャ又は第2のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。モード及び参照種類は、複数の予測パーティションの各々について決定されても良い。複数の予測パーティションに関連する動きデータは、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき生成されても良い。動き補償は、複数の予測パーティションについて複数の予測済みパーティションを生成するために、動きデータと、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの少なくとも1つとに基づき、実行されても良い。複数の予測済みパーティションは、対応する複数の予測誤差データパーティションを生成するために、対応する元のピクセルデータとの差分を取られても良い。複数の予測誤差データパーティションの予測誤差データパーティションの一部は、エンコードされる必要があると決定される。測誤差データパーティションの部分集合の個々の予測誤差データパーティションは、選択された符号化パーティショニング及び関連する複数の符号化パーティションにパーティショニングされても良い。コンテンツ適応型変換は、1又は複数の第1の符号化パーティションに対して実行されても良く、固定変換は、変換係数を生成するために、複数の符号化パーティショニングのうちの1又は複数の第2の符号化パーティションに対して実行されても良い。変換係数は、量子化済み変換係数を生成するために量子化されても良い。第1及び第2の種類に関連付けられたフレームデータ、モード及び参照種類に関連付けられたモードデータ、選択された予測パーティショニングに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワード、選択された符号化パ―ティショニングに関連付けられた符号化パーティショニング指示子又は符号化パーティショニングコードワード、動きデータ、量子化済み変換係数、モーフィング特性パラメータ、合成特性パラメータ、及びデブロックフィルタリングパラメータは、ビットストリームにエントロピーエンコードされても良い。
別の例では、コンピュータにより実施されるビデオ符号化方法は、デブロックフィルタリング又はデブロック及びディザフィルタリングパラメータ、及びインループフィルタリング又は品質復元フィルタリングパラメータを生成するステップと、デブロックフィルタリング又はデブロック及びディザフィルタリングパラメータと、インループフィルタリング又は品質復元フィルタリングパラメータと、第2の再構成済みタイル又はスーパーフラグメントとに少なくとも部分的に基づき、第2の最終再構成済みタイル又はスーパーフラグメントを生成するステップと、を更に有しても良い。第1のデコード済み予測参照ピクチャは、ピクチャバッファに格納されても良い。ここで、動き補償を実行するステップは、適応型動きフィルタリングパラメータ又は適応型精密フィルタリングパラメータを生成するステップと、適応型動きフィルタリングパラメータ又は適応型精密フィルタリングパラメータを用いて適応型動き又は適応型精密フィルタリングに少なくとも部分的に基づき動き補償を実行するステップと、を有しても良い。拡張予測パラメータ及び拡張予測パーティションは、予測パーティション及び拡張予測パラメータに基づき生成されても良い。拡張予測済みパーティション又は予測済みパーティションを予測パーティションのための選択された予測済みパーティションとして用いるか否かが決定されても良い。選択された予測済みパーティションが拡張予測パラメータをビットストリームにエントロピーエンコードする拡張予測済みパーティションを有するとき、統合フィルタリング又は統合向上フィルタリングを選択された予測済みパーティションに適用するか否かが決定されても良い。統合フィルタリング又は統合向上フィルタリングが選択された予測済みパーティションに適用されるとき、選択された予測済みパーティション及び第2の選択された予測済みパーティションは、アセンブル済みピクチャの少なくとも一部を生成するためにアセンブルされても良い。統合フィルタリング又は統合向上フィルタリングが選択された予測済みパーティションに適用されるとき、統合フィルタリング又は統合向上フィルタリングパラメータが生成されても良く、アセンブル済みピクチャの一部は、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータに少なくとも部分的に基づき、統合フィルタリング又は統合向上フィルタリングされても良い。統合フィルタリング又は統合向上フィルタリングが選択された予測済みパーティションに適用されるとき、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータは、ビットストリームにエントロピーエンコードされても良い。選択されたコンテンツ適応型及び固定変換に関連するデータ、デブロックフィルタリング又はデブロック及びディザフィルタリングパラメータ、及びインループフィルタリング又は品質復元フィルタリングパラメータは、ビットストリームにエントロピーエンコードされても良い。ここで、エントロピーエンコードは、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術のうちの少なくとも1つを有しても良く、予測パーティショニング指示子又は予測パーティショニングコードワードをエントロピーエンコードするステップは、モーフィング特性パラメータ又は合成特性パラメータをエントロピーエンコードするステップと異なるエントロピーエンコード技術を有しても良い。ビットストリームは送信されても良い。
同様に、ビットストリームは受信されても良い。ビットストリームは、第1の種類及び第2の種類に関連付けられたフレームデータ、モード及び参照種類に関連付けられたモードデータ、選択された予測パーティショニングに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワード、選択された符号化パーティショニングに関連付けられた符号化パーティショニング指示子又は符号化パーティショニングコードワード、動きデータ、量子化済み変換係数、モーフィング特性パラメータ、合成特性パラメータ、デブロックフィルタリングパラメータ、合成特性パラメータ、デブロックフィルタリングパラメータ、拡張予測パラメータ、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータ、選択されたコンテンツ適応型及び固定変換に関連するデータ、インループフィルタリング又は品質復元フィルタリングパラメータを決定するためにエントロピーデコードされても良い。ここで、エントロピーデコードするステップは、適応型シンボル−ラン可変長符号化技術又は適応型プロキシ可変長符号化技術のうちの少なくとも1つを有しても良く、予測パーティショニング指示子又は予測パーティショニングコードワードをエントロピーデコードするステップは、量子化済み変換係数をエントロピーデコードするステップと異なるエントロピーデコード技術を有しても良い。
幾つかの実装では、逆量子化は、デコード済み変換係数を生成するために、量子化済み変換係数に少なくとも部分的に基づき実行されても良い。逆変換は、複数のデコード済み符号化パーティションを生成するために、デコード済み変換係数及び変換指示子に少なくとも部分的に基づき実行されても良い。ここで、逆変換は、逆固定変換、逆離散コサイン変換、逆離散コサイン変換近似、逆適応型変換、又は逆ハイブリッドパラメータHaar変換の内の少なくとも1つを有しても良い。複数のデコード済み符号化パーティションは、デコード済み予測誤差データパーティションを生成するためにアセンブルされても良い。第1のデコード済みタイル又はスーパーフラグメントのうちの少なくとも1つは生成されても良い。デコーダデブロックフィルタリング、又はデコーダデブロック及びディザフィルタリング、及びデコーダインループ又はデコーダ品質復元フィルタリングは、第1の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、デブロックフィルタリングパラメータ、又はデブロック及びディザフィルタリングパラメータ、及びインループフィルタリングパラメータ又は品質復元フィルタリングパラメータに少なくとも部分的に基づき、第1のデコード済みタイル又はスーパーフラグメントに適用されても良い。第1の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第2の最終デコード済み再構成済みタイル又はスーパーフラグメントは、デコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。デコード済み再構成済みビデオフレームは、デコーダピクチャバッファに格納されても良い。デコーダモーフィング済み予測参照ピクチャは、モーフィング特性パラメータに少なくとも部分的に基づき生成されても良い。デコーダ合成済み予測参照ピクチャは、合成特性パラメータに少なくとも部分的に基づき生成されても良い。
幾つかの実装では、デコーダ動き補償は、デコード済み予測済みパーティションを生成するために、デコーダモーフィング済み予測参照ピクチャ又はデコーダ合成済み予測参照ピクチャに少なくとも部分的に基づき実行されても良い。ここで、デコーダ動き補償は、適応型動きフィルタリングパラメータ又は適応型精密フィルタリングパラメータに少なくとも部分的に基づくデコーダ適応型動きフィルタリング又はデコーダ適応型精密フィルタリングを有しても良い。拡張デコード済み予測済みパーティションは、拡張予測パラメータ及びデコード済み予測済みパーティションに少なくとも部分的に基づき生成されても良い。デコード済み拡張予測済みパーティション又はデコード済み予測済みパーティションを選択されたデコード済み予測済みパーティションとして用いるかが決定されても良い。デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングを選択されたデコード済み予測済みパーティションに適用するかが決定されても良い。デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングが選択されたデコード済み予測済みパーティションに適用されるとき、選択されたデコード済み予測済みパーティション及び第2の選択されたデコード済み予測済みパーティションは、デコード済みアセンブル済みピクチャの少なくとも一部を生成するためにアセンブルされても良い。デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングが選択されたデコード済み予測済みパーティションに適用されるとき、デコード済みアセンブル済みピクチャの一部は、統合フィルタリングパラメータ又は統合向上フィルタリングパラメータに少なくとも部分的に基づき、デコーダ統合フィルタリング又はデコーダ統合向上フィルタリングされても良い。選択されたデコード済み予測済みパーティションは、第1のデコード済み再構成済みパーティションを生成するために、デコード済み予測誤差データパーティションに加算されても良い。第1のデコード済み再構成済みパーティション及び第2のデコード済み再構成済みパーティションは、第3の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、結合されても良い。第3の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第4の最終デコード済み再構成済みタイル又はスーパーフラグメントは、第2のデコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。第2のデコード済み再構成済みビデオフレームは、ディスプレイ装置による提示のために、送信されても良い。第1のビデオフレームを第1の複数のスーパーフラグメントにセグメント化するステップは、第1のビデオフレームを第3の複数のタイルに分割するステップと、第1のビデオフレームを2以上の領域レイヤにセグメント化するステップと、を有しても良い。ここで、第1の複数のスーパーフラグメントのうちの少なくとも1つのスーパーフラグメントは、第2の複数のタイルのうちの個々のタイル内の2以上の領域レイヤのうちの個々の領域レイヤを有する。
幾つかの実装では、第1のパーティショニング技術は、kd木パーティショニング技術を有しても良く、第2のパーティショニング技術は、bi木パーティショニング技術を有しても良い。第2のビデオフレームについての選択された予測パーティショニング及び関連する複数の予測パーティションの決定は、第2のパーティショニング技術に基づき、第2のビデオを複数の可能な予測パーティショニングにパーティショニングするステップと、複数の可能な予測パーティショニングの各々について予測を実行し、複数の可能な予測パーティショニングの各々について可能な予測誤差を決定するステップと、予測及び可能な予測誤差に基づきレート歪み最適化を実行するステップであって、選択された予測パーティショニング及び関連する複数の予測パーティションを決定する、ステップと、選択された予測パーティショニング及び複数の予測パーティションに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワードを生成するステップと、を有しても良い。予測誤差データパーティションの部分集合のうちの個々の予測誤差データパーティションをパーティショニングするステップは、bi木パーティショニングするステップを有しても良い。予測誤差データパーティションの部分集合の個々の予測誤差データパーティションを選択された符号化パーティショニング及び関連する複数の符号化パーティションにパーティショニングするステップは、予測誤差データパーティションの部分集合の個々の予測誤差データパーティションを複数の可能な符号化パーティショニングにパーティショニングするステップと、複数の可能な符号化パーティショニングの各々の1又は複数の第1の符号化パーティションに対してコンテンツ適応型変換を、及び複数の可能な符号化パーティショニングの各々の1又は複数の第2の符号化パーティションに対して固定変換を実行するステップであって、第1の符号化パーティションは小乃至中の大きさのパーティションを有し、第2の符号化パーティションは中乃至大の大きさのパーティションを有し、固定変換は、離散コサイン変換又は離散コサイン変換近似のうちの少なくとも1つを有し、コンテンツ適応型変換は、ハイブリッドパラメータHaar変換を有し、ハイブリッドパラメータHaar変換は、第1の方向のパラメータHaar変換及び第2の方向の離散コサイン変換を有する、ステップと、及び/又は選択された符号化パ―ティショニング及び関連する複数の符号化パーティション及び関連する選択されたコンテンツ適応型及び固定変換を決定するために、複数の可能な符号化パーティショニングのコンテンツ適応型変換及び固定変換に基づき、第2のレート歪み最適化を実行するステップであって、符号化パーティションは関連する変換係数を有する、ステップと、を有しても良い。
幾つかの実装では、第1のビデオフレームはI−ピクチャであり、第2のビデオフレームはB/F−ピクチャ又はP−ピクチャのうちの少なくとも1つである。第1のビデオフレームが第1の種類であるか、第2のビデオフレームが第2の種類であるかの決定は、第3のレート歪み最適化を有しても良い。モードは、イントラモード、インターモード、マルチモード、スキップモード、又は自動モードのうちの少なくとも1つを有しても良い。参照種類は、モーフ―ング済み予測参照ピクチャ、合成済み予測参照ピクチャ、第1のデコード済み予測参照ピクチャ、又は第2のデコード済み予測参照ピクチャのうちの少なくとも1つを有しても良く、第1のデコード済み予測参照ピクチャは、過去のデコード済み予測参照ピクチャ又は将来のデコード済み予測参照ピクチャを有する。モード及び参照種類の決定は、第4のレート歪み最適化を有しても良い。
幾つかの実装では、モーフィング済み予測参照ピクチャは、利得変更済み予測参照ピクチャ、ブラー変更済み予測参照ピクチャ、支配的動き変更済み予測参照ピクチャ、又は整合性変更済み予測参照ピクチャのうちの少なくとも1つを有しても良い。ここで、合成済み予測参照ピクチャは、超解像度予測参照ピクチャ又は投影軌跡予測参照ピクチャのうちの少なくとも1つを有する。モーフィング特性パラメータの生成は、第2のビデオフレーム及び前のデコード済み予測参照ピクチャに少なくとも部分的に基づきモーフィング特性パラメータを生成するステップ、又は第2のビデオフレーム及び第3の元のビデオフレームに少なくとも部分的に基づきモーフィング特性パラメータを生成するステップのうちの少なくとも1つを有しても良く、動きデータは動きベクトルを有しても良い。
別の例では、ビデオエンコーダは、画像バッファと、画像バッファに通信可能に結合されるグラフィック処理ユニットと、を有しても良い。グラフィック処理ユニットは、第1の種類の第1のビデオフレーム及び第2の種類の第2のビデオフレームを第1の複数のタイル又はスーパーフラグメント及び第2の複数のタイル又はスーパーフラグメントにセグメント化するよう構成されても良い。グラフィック処理ユニットは、第1の複数のタイル又はスーパーフラグメントを第1のパーティショニング技術を用いて、第2の複数のタイル又はスーパーフラグメントを第2のパーティショニング技術を用いて、パーティショニングするよう構成されても良い。ここで、第1及び第2のパーティショニング技術は異なる。第2のビデオフレームの選択された予測パーティショニング及び関連する複数の予測パーティションが決定されても良い。第1の再構成済みタイル又はスーパーフラグメントが生成されても良い。デブロックフィルタリングパラメータ及び第1の最終再構成済みタイル又はスーパーフラグメントは、第1の再構成済みタイル又はスーパーフラグメント及びデブロックフィルタリングパラメータに少なくとも部分的に基づき生成されても良い。第1の最終再構成済みタイル又はスーパーフラグメント及び第2の最終再構成済みタイル又はスーパーフラグメントは、第1のデコード済み予測参照ピクチャを生成するためにアセンブルされても良い。モーフィング特性パラメータ及びモーフィング済み予測参照ピクチャは、モーフィング特性パラメータ及び第1のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。合成特性パラメータ及び合成済み予測参照ピクチャは、合成特性パラメータ及び第1のデコード済み参照ピクチャ又は第2のデコード済み参照ピクチャに少なくとも部分的に基づき生成されても良い。モード及び参照種類は、複数の予測パーティションの各々について決定されても良い。複数の予測パーティションに関連する動きデータは、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの1つに少なくとも部分的に基づき生成されても良い。動き補償は、複数の予測パーティションについて複数の予測済みパーティションを生成するために、動きデータと、モーフィング済み予測参照ピクチャ又は合成済み予測参照ピクチャのうちの少なくとも1つとに基づき、実行されても良い。対応する複数の予測誤差データパーティションを生成するために、複数の予測済みパーティションと対応する元のピクセルデータとの差分が取られても良い。複数の予測誤差データパーティションの予測誤差データパーティションの部分集合はエンコードされる必要があるか、決定されても良い。エンコードされる必要のある予測誤差データパーティションの部分集合について、予測誤差データパーティションの部分集合の個々の予測誤差データパーティションは、選択された符号化パーティショニング及び関連する複数の符号化パーティションにパーティショニングされても良く、変換係数を生成するために、コンテンツ適応型変換は1又は複数の第1の符号化パーティションに対して、及び固定変換は複数の符号化パーティションのうちの1又は複数の第2の符号化パーティションに対して実行されても良く、変換係数は、量子化済み変換係数を生成するために量子化されても良い。第1及び第2の種類に関連付けられたフレームデータ、モード及び参照種類に関連付けられたモードデータ、選択された予測パーティショニングに関連付けられた予測パーティショニング指示子又は予測パーティショニングコードワード、選択された符号化パ―ティショニングに関連付けられた符号化パーティショニング指示子又は符号化パーティショニングコードワード、動きデータ、量子化済み変換係数、モーフィング特性パラメータ、合成特性パラメータ、及びデブロックフィルタリングパラメータは、全て、ビットストリームにエントロピーエンコードされても良い。
更なる例では、デコーダシステムは、エンコード済みビットストリームをデコードするよう構成されるビデオデコーダを有しても良い。ビデオデコーダは、量子化済み変換係数、選択されたコンテンツ適応型及び固定変換に関連するデータ、符号化パーティショニング指示子又は符号化パーティショニングコードワード、デブロックフィルタリングパラメータ、モーフィング特性パラメータ、合成特性パラメータ、動きデータ、予測パーティショニング指示子又は予測パーティショニングコードワードを決定するために、エンコード済みビットストリームをエントロピーデコードするよう構成されても良い。逆量子化は、デコード済み変換係数を生成するために、量子化済み変換係数に少なくとも部分的に基づき実行されても良い。逆変換は、複数のデコード済み符号化パーティションを生成するために、デコード済み変換係数と、選択されたコンテンツ適応型及び固定変換に関連するデータと、に少なくとも部分的に基づいても良い。複数のデコード済み符号化パーティションは、デコード済み予測誤差データパーティションを生成するために、符号化パーティショニング指示子又は符号化パーティショニングコードワードに少なくとも部分的に基づきアセンブルされても良い。第1のデコード済みタイル又はスーパーフラグメントのうちの少なくとも1つは生成されても良い。デブロックフィルタリングは、第1の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、デブロックフィルタリングパラメータに少なくとも部分的に基づき、第1のデコード済みタイル又はスーパーフラグメントに適用されても良い。第1の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第2の最終デコード済み再構成済みタイル又はスーパーフラグメントは、デコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。モーフィング済み予測参照ピクチャは、モーフィング特性パラメータ及びデコード済み再構成済みビデオフレームに少なくとも部分的に基づき生成されても良い。合成済み予測参照ピクチャは、合成特性パラメータと、再構成済みビデオフレーム又は第1の再構成済みビデオフレームのうちの少なくとも1つと、に少なくとも部分的に基づき生成されても良い。動き補償は、デコード済み予測済みパーティションを生成するために、デコーダモーフィング済み予測参照ピクチャ又はデコーダ合成済み予測参照ピクチャ及び動きデータに少なくとも部分的に基づき実行されても良い。デコード済み予測済みパーティションは、第1のデコード済み再構成済みパーティションを生成するために、デコード済み予測誤差データパーティションに加算されても良い。第1のデコード済み再構成済みパーティション及び第2のデコード済み再構成済みパーティションは、第3の最終デコード済み再構成済みタイル又はスーパーフラグメントを生成するために、予測パーティショニング指示子又は予測パーティショニングコードワードに少なくとも部分的に基づき結合されても良い。第3の最終デコード済み再構成済みタイル又はスーパーフラグメント及び第4の最終デコード済み再構成済みタイル又はスーパーフラグメントは、第2のデコード済み再構成済みビデオフレームを生成するためにアセンブルされても良い。第2のデコード済み再構成済みビデオフレームは、ディスプレイ装置による提示のために、送信されても良い。
更なる例では、少なくとも1つの機械可読媒体は、コンピューティング装置で実行されるのに応答して、コンピューティング装置に上述の例のうちの任意の1つに従う方法を実行させる複数の命令を有しても良い。
更に別の例では、装置は、上述の例のうちの任意の1つに従う方法を実行する手段を有しても良い。
上述の例は、機能の特定の組合せを有しても良い。しかしながら、このような上述の例は、これに関して限定されず、種々の実装において、上述の例は、このような特徴の一部のみを取り入れ、このような特徴の異なる順序を取り入れ、このような特徴の異なる組合せを取り入れ、及び/又は明示的に列挙された特徴以外の追加特徴を取り入れても良い。例えば、例示的な方法に関して記載された全ての特徴は、例示的な装置、例示的なシステム、及び/又は例示的な物品に対して実施されても良く、逆も同様である。
[関連出願]
本願は、米国仮出願番号第61/725,576号、2012年11月13日出願、名称「CONTENT ADAPTIVE VIDEO CODER」、並びに米国仮出願番号第61/758,314号、2013年1月30日出願、名称「NEXT GENERATION VIDEO CODING」の優先権を主張する。