(57)【特許請求の範囲】
【請求項１】
画像部分を符号化ユニットに分割するための装置であって、動作中、
前記画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に前記所定のサイズ未満のサイズを有する境界部分とに下位分割すること、
前記境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、前記最も深い符号化ユニットが、前記第1の方向の方がより小さい、区分けすること
を行う処理回路を含み、
前記処理回路が、
N個の最も浅いレベルにおいて4分木分割によって前記境界部分を区分けすることであって、Nが、ゼロ以上であり、区分けの階層レベルの数よりも小さい整数である、区分けすること、および
残りの区分けの階層レベルにおいて2分木分割によって前記境界部分を区分けすることを行うように構成される、装置。
【請求項２】
前記処理回路が、少なくとも最も深い区分けのレベルで2分木分割によって前記境界部分を区分けするように構成される請求項1に記載の装置。
【請求項３】
前記処理回路が、4分木分割によっても前記境界部分を区分けするように構成される請求項1または2に記載の装置。
【請求項４】
前記処理回路が、動作中、前記最も深いレベルの符号化ユニットが完全に前記境界部分の中に留まるまで前記境界部分を区分けする請求項1から3のいずれか一項に記載の装置。
【請求項５】
前記処理回路が、動作中、前記境界部分を水平方向および垂直方向に2分木分割によって区分けする請求項1から4のいずれか一項に記載の装置。
【請求項６】
画像部分を符号化ユニットに分割するための装置であって、動作中、
前記画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に前記所定のサイズ未満のサイズを有する境界部分とに下位分割すること、
前記境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、前記最も深い符号化ユニットが、前記第1の方向の方がより小さい、区分けすること
を行う処理回路を含み、
前記処理回路が、動作中、各階層レベルにおいて、前記境界部分の角の部分を4分木分割によって区分けする、装置。
【請求項７】
画像部分を符号化ユニットに分割するための装置であって、動作中、
前記画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に前記所定のサイズ未満のサイズを有する境界部分とに下位分割すること、
前記境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、前記最も深い符号化ユニットが、前記第1の方向の方がより小さい、区分けすること
を行う処理回路を含み、
前記処理回路が、すべての区分けのレベルにおいて2分木分割によって境界部分を区分けするように構成される、装置。
【請求項８】
ビデオシーケンスの画像を符号化するための装置であって、
請求項1から7のいずれか一項に記載の、画像部分を符号化ユニットに分割するための前記装置と、
前記符号化ユニットを符号化するように構成された画像符号化ユニットと、
前記符号化された符号化ユニット、および前記符号化ツリーユニットがどのように区分けされるかを示す区分け情報を含むビットストリームを生成するように構成されたビットストリーム形成ユニットとを含む、装置。
【請求項９】
最も深いレベルを別として区分けのレベルのいずれに関してもレート-歪み最適化によって前記境界部分を階層的に区分けすることを決定するように構成されたレート-歪み最適化ユニットをさらに含む請求項8に記載の装置。
【請求項１０】
ビデオシーケンスの画像を復号するための装置であって、
請求項1から7のいずれか一項に記載の復号される画像部分の符号化ユニットへの分割を決定するための前記装置と、
前記符号化された符号化ユニット、および前記符号化ツリーユニットがどのように区分けされるかを示し、前記画像部分の前記決定された分割に基づく区分け情報を含むビットストリームを解析するためのビットストリームパーサと、
前記符号化された符号化ユニットを復号するための画像復号ユニットとを含む、装置。
【請求項１１】
前記境界部分の符号化ユニットへの前記分割が、予め定義された分割であり、前記区分け情報が、前記境界部分の分割に関連しない請求項8から10のいずれか一項に記載の装置。
【請求項１２】
ビデオシーケンスの画像を符号化するための装置であって、
画像部分を符号化ユニットに分割するための装置であって、動作中、
前記画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に前記所定のサイズ未満のサイズを有する境界部分とに下位分割すること、
前記境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、前記最も深い符号化ユニットが、前記第1の方向の方がより小さい、区分けすること
を行う処理回路を含む、画像部分を符号化ユニットに分割するための前記装置と、
前記符号化ユニットを符号化するように構成された画像符号化ユニットと、
前記符号化された符号化ユニット、および前記符号化ツリーユニットがどのように区分けされるかを示す区分け情報を含むビットストリームを生成するように構成されたビットストリーム形成ユニットとを含み、
前記処理回路が、N個の最も浅いレベルにおいて4分木分割によって境界部分を区分けすることであって、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、区分けすることと、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けすることとを行うように構成され、
前記区分け情報が、Nを含むか、またはNが、処理される前記画像を復号するために適用される予測の種類に基づいて導出される、装置。
【請求項１３】
ビデオシーケンスの画像を復号するための装置であって、
画像部分を符号化ユニットに分割するための装置であって、動作中、
前記画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に前記所定のサイズ未満のサイズを有する境界部分とに下位分割すること、
前記境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、前記最も深い符号化ユニットが、前記第1の方向の方がより小さい、区分けすること
を行う処理回路を含む、画像部分を符号化ユニットに分割するための装置と、
前記符号化された符号化ユニット、および前記符号化ツリーユニットがどのように区分けされるかを示し、前記画像部分の前記決定された分割に基づく区分け情報を含むビットストリームを解析するためのビットストリームパーサと、
前記符号化された符号化ユニットを復号するための画像復号ユニットとを含み、
前記処理回路が、N個の最も浅いレベルにおいて4分木分割によって境界部分を区分けすることであって、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、区分けすることと、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けすることとを行うように構成され、
前記区分け情報が、Nを含むか、またはNが、処理される前記画像を復号するために適用される予測の種類に基づいて導出される、装置。
【請求項１４】
画像部分を符号化ユニットに分割するための方法であって、
前記画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に前記所定のサイズ未満のサイズを有する境界部分とに下位分割するステップ、
前記境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けするステップであって、前記最も深い符号化ユニットが、前記第1の方向の方がより小さい、ステップを含み、
前記境界部分の区分けするステップが、
N個の最も浅いレベルにおいて4分木分割によって前記境界部分を区分けするステップであって、Nが、ゼロ以上であり、区分けの階層レベルの数よりも小さい整数である、ステップと
残りの区分けの階層レベルにおいて2分木分割によって前記境界部分を区分けするステップと
を含む、方法。
【請求項１５】
ビデオシーケンスの画像を符号化するための方法であって、
請求項14に記載の画像部分を符号化ユニットに分割するステップと、
前記符号化ユニットを符号化するステップと、
前記符号化された符号化ユニット、および前記符号化ツリーユニットがどのように区分けされるかを示す区分け情報を含むビットストリームを生成するステップとを含む、方法。
【請求項１６】
ビデオシーケンスの画像を復号するための方法であって、
請求項14に記載の復号される画像部分の符号化ユニットへの分割を決定するステップと、
前記符号化された符号化ユニット、および前記符号化ツリーユニットがどのように区分けされるかを示し、前記画像部分の前記決定された分割に基づく区分け情報を含むビットストリームを解析するステップと、
前記符号化された符号化ユニットを復号するステップとを含む、方法。
【請求項１７】
プロセッサによって実行されるときに前記プロセッサに請求項14から16のいずれか一項に記載の方法を実行させる命令を記憶するコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像および/またはビデオ符号化および復号に関し、詳細には、画像を符号化ユニットに分割することに関する。
【背景技術】
【０００２】
現在のブロックに基づくハイブリッドビデオコーデックは、予測符号化を採用している。ビデオシーケンスのピクチャは、ピクセルのブロックに下位分割され、次いで、これらのブロックが、符号化される。ブロックをピクセル毎に符号化する代わりに、ブロック全体が、ブロックの空間的または時間的に近い既に符号化されたピクセルを使用して予測される。エンコーダは、ブロックとそのブロックの予測との間の差のみをさらに処理する。さらなる処理は、概して、変換領域におけるブロックピクセルの係数への変換を含む。次いで、ビットストリームを形成するために、係数が(たとえば、量子化の手段によって)さらに圧縮され、(たとえば、エントロピー符号化によって)さらにコンパクトにされてもよい。ビットストリームは、デコーダが符号化されたビデオを復号することを可能にする任意のシグナリング情報をさらに含みうる。たとえば、シグナリングは、入力ピクチャのサイズ、フレームレート、量子化ステップインジケーション、ピクチャのブロックに適用される予測などのエンコーダ設定に関する設定を含んでもよい。
【０００３】
ブロックとそのブロックの予測との間の差は、ブロックの残差として知られる。より詳細には、ブロックの各ピクセルは、そのピクセルの強度レベルとそのピクセルの予測された強度レベルとの間の差である残差を有する。ピクセルの強度レベルは、ピクセル値またはピクセルの値と呼ばれる。ブロックのすべてのピクセルの残差は、集合的にブロックの残差と呼ばれる。言い換えると、ブロックは、ブロックのすべてのピクセルの残差からなる組または行列である残差を有する。次いで、残差は、変換され、量子化され、シグナリング情報と一緒に符号化される。符号化は、算術符号化またはその他のエントロピー符号化の種類を含む様々な形態の固定および可変長符号化を含んでもよい。
【０００４】
ブロックに基づくハイブリッドビデオ符号化においては、各ピクチャが、サンプルのブロックへと区分けされ、ピクチャ内の複数のブロックが、独立して復号されうるエンティティとしてスライスを形成するために集約される。予測および/または変換が適用されるブロックは、符号化ユニット(CU)または符号化ブロック(CB)と呼ばれる。符号化ユニットは、異なるサイズを有してもよい。
【０００５】
たとえば、高効率ビデオ符号化(H.265としても知られるHEVC)においては、ビデオフレームが、符号化ツリーユニット(符号化ツリーブロック、CTBとも呼ばれるCTU)に下位分割される。CTBは、同じサイズ、たとえば、64 x 64サンプルの、共通部分を持たない正方形ブロックである。各CTBは、ブロックを区分けする4分木構造、符号化ツリーの根として働く。CTBは、符号化ツリー構造にそって符号化ブロックにさらに下位分割されうる。符号化ブロックに関して、予測の種類が決定される。符号化ブロックは、変換および量子化が適用されるより小さな変換ブロックへとさらに分割されてもよい。
【０００６】
HEVCにおける区分けに関する詳細は、V. Szeら(編)、High Efficiency Video Coding (HEVC): Algorithms and Architectures、Springer、2014年、Chapter 3.2に見つけられうる。
【０００７】
さらに、国際公開第2016/090568号は、4分木に加えて2分木構造を使用してユニットを複数のより小さなユニットに区分けするための2分木構造を示す。したがって、まず、根ユニットが、4分木構造に区分けされ、次いで、4分木の葉ノードが、2分木構造によってさらに区分けされる。
【発明の概要】
【課題を解決するための手段】
【０００８】
HEVC規格において、スライスまたはピクチャの境界にあるCTUおよびCUは、葉ノードの右下のサンプルがスライスまたはピクチャの境界の中に入るまで4分木の区分けを使用して強制的に分割される。強制的な4分木の区分けは、分割ルールが決まっている(予め定義されている)限り、ビットストリーム内でシグナリングされなくてもよい。強制的な区分けの目的は、CTUのそれぞれの水平方向および/または垂直方向のサイズの整数倍でない水平方向および/または垂直方向のサイズを有するピクチャおよびスライスをエンコーダおよびデコーダが処理することを可能にすることである。
【０００９】
HEVCおよび国際公開第2016/090568号において、強制的な区分けプロセスは、現在のCU全体がスライスまたはピクチャの境界の中に入るまで、フレームの境界にあるCTUおよびCUをレート-歪み(RC)最適化なしに4分木の手法によって階層的に分割する。これらの強制的な区分けは、ビットストリーム内でシグナリングされる必要はない。しかし、非常に小さな符号化ユニットに分割することは、小さな符号化ユニットの別のさらなる処理(符号化、復号)に関連してさらなる複雑さおよびシグナリング要件を導入してもよい。
【００１０】
本開示によれば、強制的な区分けが、少なくとも最も深い区分けの階層レベルにおいて、または少なくとも符号化ユニットが完全には境界部分の中に残らない、最も深い区分けの階層レベル以外の区分けのレベルにおいて2分木分割を適用する。
【００１１】
そのような分割は、最も深い階層レベルにおいてより少ない数の符号化ユニットをもたらすのでより高い効率を提供する。
【００１２】
発明の態様によれば、画像部分を符号化ユニットに分割するための装置であって、動作中、画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に所定のサイズ未満のサイズを有する境界部分とに下位分割すること、ならびに境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、最も深い符号化ユニットが、第1の方向の方がより小さい、区分けすることを行う処理回路を含む、装置が提供される。
【００１３】
この手法の利点は、ピクチャの境界上の余りにも多すぎる小さなCUを避けることであり、これは、境界部分のより効率的な符号化をまたもたらすことができる。
【００１４】
例によれば、処理回路は、少なくとも最も深い区分けのレベルで2分木分割によって境界部分を区分けするように構成される。
【００１５】
2分木の区分けに加えて、または2分木の区分けの代替として、処理回路は、4分木分割によっても境界部分を区分けするように構成されうる。
【００１６】
一例によれば、処理回路は、動作中、N個の最も浅いレベルにおいて4分木分割によって境界部分を区分けすることであって、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、区分けすることと、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けすることとを行う。
【００１７】
この手法は、構成のより高い柔軟性を提供し、多数の小さな正方形の境界のCUを避けることによって境界が効率的に符号化されることをさらに保証する。
【００１８】
1つの実装において、処理回路は、動作中、最も深いレベルの符号化ユニットが完全に境界部分の中に留まるまで境界部分を区分けする。
【００１９】
1つの実装において、処理回路は、動作中、境界部分を水平方向および垂直方向に2分木分割によって区分けする。
【００２０】
追加的にまたは代替的に、処理回路は、動作中、各階層レベルにおいて、境界部分の角の部分を4分木分割によって区分けする。
【００２１】
境界部分のCTUのために4分木分割と2分木分割とを混合する代替として、処理回路は、すべての区分けのレベルにおいて境界部分を2分木分割によって区分けするように構成されうる。
【００２２】
発明の態様によれば、ビデオシーケンスの画像を符号化するための装置が、提供され、装置は、上述の例および実装のいずれかによる画像部分を符号化ユニットに分割するための装置と、符号化ユニットを符号化するように構成された画像符号化ユニットと、符号化された符号化ユニット、および符号化ツリーユニットがどのように区分けされるかを示す区分け情報を含むビットストリームを生成するように構成されたビットストリーム形成ユニットとを含む。
【００２３】
たとえば、エンコーダは、最も深いレベルを別として区分けのレベルのいずれに関してもレート-歪み最適化によって境界部分を階層的に区分けすることを決定するように構成されたレート-歪み最適化ユニットをさらに含む。
【００２４】
本発明の別の態様は、ビデオシーケンスの画像を復号するための装置であって、上述の例および実装のいずれかに係る復号される画像部分の符号化ユニットへの分割を決定するための装置と、符号化された符号化ユニット、および符号化ツリーユニットがどのように区分けされるかを示し、画像部分の決定された分割に基づく区分け情報を含むビットストリームを解析するためのビットストリームパーサと、符号化された符号化ユニットを復号するための画像復号ユニットとを含む、装置を含む。
【００２５】
例示的な実装によれば、境界部分の符号化ユニットへの分割は、予め定義された分割であり、区分け情報は、境界部分の分割に関連しない。
【００２６】
復号するための装置および/または符号化するための装置の処理回路は、N個の最も浅いレベルにおいて4分木分割によって境界部分を区分けすることであって、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、区分けすることと、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けすることとを行うように構成されてもよい。さらに、例示的な実装においては、区分け情報が、Nを含むか、またはNが、処理される画像を符号化するために適用される予測の種類に基づいて導出される。Nは、水平方向かまたは垂直方向かのどちらかに所定のサイズ未満のサイズを有する境界部分のサイズに基づいて導出されうる。
【００２７】
本発明の態様によれば、画像部分を符号化ユニットに分割するための方法であって、画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に所定のサイズ未満のサイズを有する境界部分とに下位分割するステップと、境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けするステップであって、最も深い符号化ユニットが、第1の方向の方がより小さい、ステップとを含む、方法が、提供される。
【００２８】
例示的な一実施形態において、境界部分の区分けは、最も浅い区分けのレベルである現在の区分けのレベルから開始するステップと、現在の区分けのレベルの境界の符号化ユニットが完全に境界部分の中に収まるまで、境界部分を現在の区分けのレベルの符号化ユニットに順に分割するステップと、現在の区分けのレベルの符号化ユニットが境界部分に収まらないと直ちに、区分けのレベルを上げ、前記符号化ユニットをさらに区分けするステップであって、4分木の区分けが、N個の最も浅い区分けのレベルのために使用され、2分木の区分けが、その他の場合に使用され、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、ステップとをさらに含む。
【００２９】
本発明の別の態様によれば、ビデオシーケンスの画像を符号化するための方法であって、上に明記された方法のいずれかに係る画像部分を符号化ユニットに分割するステップと、符号化ユニットを符号化するステップと、符号化された符号化ユニット、および符号化ツリーユニットがどのように区分けされるかを示す区分け情報を含むビットストリームを生成するステップとを含む、方法が、提供される。
【００３０】
本発明の別の態様によれば、ビデオシーケンスの画像を復号するための方法であって、上に明記された方法のいずれかに係る復号される画像部分の符号化ユニットへの分割を決定するステップと、符号化された符号化ユニット、および符号化ツリーユニットがどのように区分けされるかを示し、画像部分の決定された分割に基づく区分け情報を含むビットストリームを解析するステップと、符号化された符号化ユニットを復号するステップとを含む、方法。
【００３１】
例によれば、区分けするステップは、少なくとも最も深い区分けのレベルで2分木分割によって境界部分を区分けする。
【００３２】
2分木の区分けに加えて、または2分木の区分けの代替として、区分けするステップは、4分木分割によっても境界部分を区分けしてもよい。
【００３３】
一例によれば、区分けするステップは、N個の最も浅いレベルにおいて4分木分割によって境界部分を区分けすることであって、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、区分けすることと、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けすることとを行う。
【００３４】
1つの実装において、区分けするステップは、最も深いレベルの符号化ユニットが完全に境界部分の中に留まるまで境界部分を区分けする。
【００３５】
1つの実装において、処理回路は、動作中、境界部分を水平方向および垂直方向に2分木分割によって区分けする。
【００３６】
追加的にまたは代替的に、処理するステップは、各階層レベルにおいて、境界部分の角の部分を4分木分割によって区分けする。
【００３７】
境界部分のCTUのために4分木分割と2分木分割とを混合する代替として、区分けするステップは、すべての区分けのレベルにおいて境界部分を2分木分割によって区分けしてもよい。
【００３８】
本発明の別の態様によれば、プロセッサによって実行されるときにプロセッサに上の態様および例のいずれかに係る方法を実行させる命令を記憶するコンピュータ可読媒体が、提供される。
【００３９】
以下で、例示的な実施形態が、添付の図および図面を参照してより詳細に説明される。
【図面の簡単な説明】
【００４０】
【図１】ビデオエンコーダの例示的な構造を示すブロック図である。
【図２】ビデオデコーダの例示的な構造を示すブロック図である。
【図３】HEVCによって採用される4分木の区分けの例を示す概略図である。
【図４】4分木/2分木の区分けの例を示す概略図である。
【図５】境界部分の強制的な4分木分割を示す概略図である。
【図６】エンコーダまたはデコーダの分割ユニットとして動作してもよい装置の例を示すブロック図である。
【図７】境界部分の分割を示す概略図である。
【図８】垂直方向の境界の強制的な2分木分割の例を示す概略図である。
【図９】垂直方向の境界、水平方向の境界、および組み合わされた境界上の区分けの例を示す概略図である。
【図１０】例示的な区分けのシンタックスの判断を示す流れ図である。
【発明を実施するための形態】
【００４１】
本発明は、さらなる処理のための画像のより小さなユニットへの分割に関する。そのような分割は、静止画像またはビデオ画像の符号化および復号において有利に使用されてもよい。以下で、本開示に係る分割を実施することができる例示的なビデオコーダおよびデコーダが、説明される。
【００４２】
図1は、ビデオストリームのフレームまたはピクチャの入力ブロックを受け取るための入力と、符号化されたビデオビットストリームを提供するための出力とを含むエンコーダ100を示す。本開示における用語「フレーム」は、ピクチャの同義語として使用される。しかし、本開示はインターレースが適用される場合のフィールドにも適用可能であることが、留意される。概して、ピクチャは、m掛けるnピクセルを含む。これらは、画像サンプルに対応し、1つ以上の色成分をそれぞれ含んでもよい。簡潔にするために、以下の説明は、輝度のサンプルを意味するピクセルに言及する。しかし、本開示の分割手法はクロミナンスまたはRGBなどの色空間の成分などを含む任意の色成分に適用されうることが、留意される。一方、ただ1つの成分に関して分割を実行し、決定された分割をさらなる(またはすべての)残りの成分に適用することが、有益であってもよい。
【００４３】
エンコーダ100は、ビデオストリームに区分け、予測、変換、量子化、およびエントロピー符号化を適用するように構成される。
【００４４】
分割ユニット110において、入力ビデオフレームが、符号化の前にさらに分割される。符号化されるブロックは、必ずしも同じサイズではない。1つのピクチャは、異なるサイズのブロックを含んでもよく、ビデオシーケンスの異なるピクチャのブロックラスタも、異なってもよい。特に、各ビデオ画像(ピクチャ)は、最初に、同じ決まったサイズのCTUに下位分割される。CTUサイズは、たとえば規格で決まっており、予め定義されてもよい。HEVCにおいては、64 x 64のサイズが使用される。しかし、本開示は、規格化された決まったサイズに限定されない。エンコーダにおいて設定され、ビットストリーム内でシグナリングパラメータとして提供されてもよいCTUサイズを提供することが、有利であってもよい。たとえば、異なるCTUサイズは、それぞれの異なるピクチャサイズおよび/またはコンテンツの種類のために有益であってもよい。CTUサイズは、任意のシグナリングレベルでシグナリングされてもよく、たとえば、それは、ビデオシーケンス全体にもしくはその一部(つまり、複数のピクチャ)に共通であるか、またはピクチャ毎に個別的であってもよい。それに対応して、CTUサイズは、たとえば、現在のコーデック(H.264/AVC、H.265/HEVC)から知られるピクチャパラメータセット、PPS内で、またはシーケンスパラメータセット、SPS内で、またはビデオパラメータセット、VPS内で、または同様のパラメータセット内で、シグナリングされてもよい。代替的に、CTUサイズは、スライスヘッダ内でまたは任意のその他のレベルで指定されてもよい。CTUサイズは、64 x 64と異なる値を取ってもよい。CTUサイズは、たとえば、128 x 128サンプルの大きさであってもよい。概して、4分木の2分木による階層的な分割を実行するために、2のべき乗である、つまり、nが2より大きい整数であるものとして2^nのフォーマットであるCTUサイズを提供することが、有益であってもよい。
【００４５】
V. Szeら(編)、High Efficiency Video Coding (HEVC): Algorithms and Architectures、Springer、2014年からのCTUへのピクチャの区分けおよびCUへのCTUの区分けが、図3に示される。区分けは、様々な局所的な特徴に適合するために4分木構造に従う。左側に、図3は、右側の4分木構造に従って階層的に分割されたCTUを示す。特に、符号化ツリーは、CTUのCUへの下位分割を規定するシンタックスを定義する。CTUと同様に、CUは、サンプルの正方形ブロックおよびこれらのサンプルブロックに関連するシンタックスからなる。したがって、区分けは、階層の深さ1の4つの(4分木の)CUに下位分割されてもよいが下位分割されなくてもよいCTU(階層の深さ0)から始まって階層的に実行される。図3において、CTUは、さらに分割されず、したがって、4分木の葉を形成する第1の階層の深さ(レベル)のCU 8および16と、階層の深さ2のCU(深さ2 CU)にさらに分割される2つのさらなるCUとに分割される。特に、左上の深さ1 CUは、4分木の葉を形成する深さ2 CU 1、2、7と、すべて葉である深さ3 CU 3、4、5、および6にさらに分割される別のCUとにさらに下位分割される。同様に、左下の深さ1 CUは、4分木の葉でもある深さ2 CU 13、14、および15と、すべて葉であり、したがって、さらに分割されないレベル3 CU 9、10、11、および12にさらに分割される残りのCUとにさらに分割される。
【００４６】
HEVCの4分木分割に関する例示的なシンタックスが、下の表1に示される。
【００４７】
【表１】
0006977138.tif 000002
【００４８】
特に、CTUレベルで、完全なCTUがCUを形成するかどうかまたはCTUが正方形サンプルブロックに対応する4つの等しいサイズのブロックに分割されるかどうかを示すsplit_cu_flagと名付けられたフラグが、ビットストリームに含められる。CTUが分割される場合、結果として得られるブロックの各々に関して、ブロックがCUを表すかどうかまたはブロックが4つの等しいサイズのブロックにさらに分割されるかどうか指定する別のsplit_cu_flagが、送信される。この階層的な下位分割が、結果として得られるブロックのいずれもさらに下位分割されなくなるまで続けられる。CUの最小サイズが、シーケンスパラメータセット内でシグナリングされ、その最小サイズは、8 x 8ルマサンプル以上、CTUのサイズ以下の範囲であることが可能である。最小CUサイズが階層的な下位分割プロセスにおいて到達されるとき、対応するブロックに関して分割フラグは送信されず、その代わりに、これらのブロックはさらに分割されないと推測される。典型的なHEVCエンコーダの設定においては、8 x 8サンプルから64 x 64サンプルまでの範囲のCUが使用されうるように、サポートされるCUサイズの最大範囲が利用される。CTUの中のCUは、深さ優先順で符号化される。この符号化の順序は、z-スキャンとも呼ばれる。これは、スライスの上または左の境界にあるCUを除いて、各CUに関して、CUの上およびCUの左のすべてのサンプルが既に符号化されており、したがって、対応するサンプルがイントラ予測のために使用されることが可能であり、関連する符号化パラメータが現在のCUの符号化パラメータを予測するために使用されることが可能であることを保証する。
【００４９】
言い換えると、split_cu_flag[ x0 ][ y0 ]は、符号化ユニットが半分の水平方向および垂直方向のサイズを有する符号化ユニットに分割されるかどうかを指定する。配列インデックスx0、y0は、ピクチャの左上のルマサンプルに対する考慮される符号化ブロックの左上のルマサンプルの位置( x0, y0 )を指定する。split_cu_flag[ x0 ][ y0 ]が存在しないとき、デコーダにおいて以下が適用される。
- log2CbSize (符号化ブロックサイズを指定するパラメータ)がMinCbLog2SizeY (最小の構成可能な符号化ユニットサイズを指定するパラメータ)よりも大きい場合、split_cu_flag[ x0 ][ y0 ]の値は、1に等しいと推測される。
-  そうでない場合(log2CbSizeがMinCbLog2SizeYに等しい)、split_cu_flag[ x0 ][ y0 ]の値は、0に等しいと推測される。
【００５０】
配列CtDepth[ x ][ y ]は、位置( x, y )をカバーするルマ符号化ブロックに関する符号化ツリーの深さを指定する。split_cu_flag[ x0 ][ y0 ]が0に等しいとき、CtDepth[ x ][ y ]は、x = x0..x0 + nCbS  -  1およびy = y0..y0 + nCbS  -  1に関してcqtDepthに等しいと推測される。
【００５１】
図4は、混合された4分木および2分木の区分けを示す。4分木の区分けは、実線によって示され、一方、2分木の区分けは、破線によって示される。2分木によってさらに分割される符号化ユニットを表すノードのラベル1または0は、それぞれ2分分割が垂直方向または水平方向に適用されるかどうかを示す。
【００５２】
ルマサンプルにおけるビデオピクチャの水平方向および垂直方向のサイズは、シーケンスパラメータセット内で送信される、ルマサンプルにおける最小CUサイズの整数倍でなければならないが、CTUサイズの整数倍である必要はない。ビデオピクチャの水平方向または垂直方向のサイズがCTUサイズの整数倍を表さない場合、結果として得られるブロックの境界がピクチャの境界と一致するまで境界のCTUが分割されると推測される。この強制的な分割に関して、分割フラグは送信されないが、結果として得られるブロックは上述の4分木のシンタックスを使用してさらに分割されうる。ピクチャ領域の外にあるCUは、符号化されない。
【００５３】
この分割が、図5に示される。特に、図5は、フレームの境界を示し、フレームの境界の上の56ライン(128サンプルの長さ)がスライスまたは画像の境界部分である。フレームの境界の下のCTUの部分は、別のスライスに属してもよく、またはたとえばフレームの境界がピクチャの下の境界である場合にはまったく存在しなくてもよい。見られうるように、強制的な4分木分割は、128 x 56サンプルに適用される。
【００５４】
彩度CTBの下位分割は、HEVCにおいては、それぞれのルマCTBの下位分割と常に揃えられる。本開示は、彩度成分を同じ方法で扱ってもよいがそれに限定されないことが留意される。異なる色成分の独立した分割も、あってもよい。
【００５５】
分割ユニット110において画像分割を実行した後、符号化されたビデオビットストリームを出力として生成するために、変換、量子化、およびエントロピー符号化が、変換ユニット130、量子化ユニット140、およびエントロピー符号化ユニット150によってそれぞれ実行される。
【００５６】
ビデオストリームは、複数のフレームを含んでもよい。たとえば、ビデオストリームの第1のフレームのブロックが、イントラ予測ユニット190によってイントラ符号化される。イントラフレームが、そのフレームからの情報のみを使用して符号化され、したがって、イントラフレームは、その他のフレームとは独立して復号されうる。よって、イントラフレームは、たとえばランダムアクセスのためにビットストリームのエントリポイントを提供することができる。ビデオストリームのその他のフレームのブロックは、インター予測ユニット195によってインター符号化されてもよく、インター符号化されたフレームの各ブロックは、別のフレーム(参照フレーム)、たとえば、前に符号化されたフレームのブロックから予測される。モード選択ユニット180は、フレームのブロックがイントラ予測されるべきであるのかまたはインター予測されるべきであるのか、つまり、そのブロックがイントラ予測ユニット190によって処理されるのかまたはインター予測ユニット195によって処理されるのかを選択するように構成される。また、モード選択ユニット180は、インター予測のイントラのパラメータを制御する。画像情報のリフレッシュを可能にするために、インター符号化されたフレームは、インター符号化されたブロックだけでなく、1つ以上のイントラ符号化されたブロックも含んでもよい。対照的に、イントラフレームは、イントラ符号化されたブロックのみを含み、インター符号化されたブロックを含まない。イントラフレームは、復号のためのエントリポイント、つまり、デコーダが前のフレームからの情報を使用することなく復号を開始することができる点を提供するためにビデオシーケンスに(たとえば、規則的に、つまり、特定の数のインターフレームの後に毎回)挿入されてもよい。
【００５７】
イントラ予測ユニット190は、ブロック予測ユニットである。空間的または時間的予測を実行するために、符号化されたブロックは、逆量子化ユニット145および逆変換ユニット135によってさらに処理されてもよい。リコンストラクタ125によるブロック再構築後に、ループフィルタリングユニット160が、復号された画像の品質をさらに改善するために適用されてもよい。リコンストラクタ125は、再構築されたブロックを得るために予測因子に復号された残差を加える。次いで、フィルタリングされたブロックは、次いでフレームバッファ170に記憶される参照フレームを形成する。エンコーダ側のそのような復号ループ(デコーダ)は、デコーダ側で再構築される参照ピクチャと同じである参照フレームを生成するという利点を提供する。したがって、エンコーダおよびデコーダ側は、対応する方法で動作する。本明細書における用語「再構築」は、復号された残差ブロックを予測ブロックに加えることによって再構築されたブロックを得ることを指す。
【００５８】
インター予測ユニット195は、インター符号化される現在のフレームまたはピクチャのブロック、およびフレームバッファ170からの1つ以上の参照フレームまたはピクチャを入力として受け取る。動き推定および動き補償が、インター予測ユニット195によって実行される。動き推定は、たとえば、コスト関数に基づいて動きベクトルおよび参照フレームを得るために使用される。次いで、動き補償は、現在のフレームへの参照フレームの参照ブロックの平行移動によって、つまり、動きベクトルによって現在のフレームの現在のブロックを記述する。インター予測ユニット195は、予測ブロックがコスト関数を最小化するように1つ以上の参照フレーム内の1組の候補ブロック(すなわち、候補予測因子)の中から現在のブロックに関する予測ブロック(すなわち、予測因子)を選択する。言い換えると、コスト関数が最小である候補ブロックが、現在のブロックに関する予測ブロックとして使用される。
【００５９】
たとえば、コスト関数は、現在のブロックと候補ブロックとの間の差の尺度、つまり、候補ブロックに対する現在のブロックの残差の尺度であってもよい。たとえば、コスト関数は、現在のブロックのすべてのピクセル(サンプル)と候補参照ピクチャ内の候補ブロックのすべてのピクセルとの間の絶対値差分和(SAD)であってもよい。しかし、概して、平均2乗誤差(MSE)または構造類似性測定基準(SSIM)などの任意の類似性測定基準が、採用されてもよい。
【００６０】
しかし、コスト関数はまた、そのようなインターブロックを符号化するために必要なビットの数および/またはそのような符号化の結果として生じる歪みであってもよい。したがって、レート-歪み最適化手順が、動きベクトルの選択、ならびに/または概してブロックに関してインター予測を使用すべきかもしくはイントラ予測を使用すべきかおよびどの設定で使用すべきかなどの符号化パラメータを決めるために使用されてもよい。
【００６１】
イントラ予測ユニット190は、イントラ符号化される現在のフレームまたはピクチャのブロック、および現在のフレームの既に再構築された領域からの1つ以上の参照サンプルを入力として受け取る。次いで、イントラ予測は、現在のフレームの参照サンプルの関数によって現在のフレームの現在のブロックのピクセルを記述する。イントラ予測ユニット190は、現在のブロックに関する予測ブロックを出力し、前記予測ブロックは、有利なことに、符号化される現在のブロックとその予測ブロックとの間の差を最小化し、つまり、前記予測ブロックは、残差ブロックを最小化する。残差ブロックの最小化は、たとえば、レート-歪み最適化手順に基づくことが可能である。特に、予測ブロックは、参照サンプルの方向補間として得られる。方向は、レート-歪み最適化によっておよび/またはインター予測に関連して上記で述べられた類似性の尺度を計算することによって決定されてもよい。
【００６２】
次いで、現在のブロックとその予測との間の差、すなわち、残差ブロックが、変換ユニット130によって変換される。変換係数が、量子化ユニット140によって量子化され、エントロピー符号化ユニット150によってエントロピー符号化される。そのように生成された符号化されたビデオビットストリームは、イントラ符号化されたブロックおよびインター符号化されたブロックならびに(モードインジケーション、動きベクトルのインジケーション、および/またはイントラ予測方向などの)対応するシグナリングを含む。変換ユニット130は、離散フーリエ変換(DFT)または離散コサイン変換(DCT)などの線形変換を適用してもよい。空間周波数領域へのそのような変換は、結果として得られる係数が概してより低い周波数により高い値を有するという利点をもたらす。したがって、(ジグザグなどの)効果的な係数のスキャンおよび量子化の後、値の結果として得られるシーケンスは、概して、ゼロの連続の始めおよび終わりにいくらかのより大きな値を有する。これは、さらに効率的な符号化を可能にする。量子化ユニット140は、係数値の解像度を下げることによって不可逆圧縮を実行する。次いで、エントロピー符号化ユニット150は、係数値に2進コードワードを割り当てる。コードワードは、符号化されたビットストリームと呼ばれるビットストリームに書き込まれる。エントロピーコーダはまた、上記で示された分割フラグのシンタックスによる符号化を含んでもよいシグナリング情報(図1に示さず)を符号化する。
【００６３】
図2は、ビデオデコーダ200の例を示す。ビデオデコーダ200は、特に、参照ピクチャバッファ270と、ブロック予測ユニットであるイントラ予測ユニット290とを含む。参照ピクチャバッファ270は、符号化されたビデオビットストリームの符号化されたビデオビットストリームから再構築された少なくとも1つの参照フレームを記憶するように構成される。イントラ予測ユニット290は、復号されるブロックの推定である予測ブロックを生成するように構成される。イントラ予測ユニット290は、参照ピクチャバッファ270から取得される参照サンプルに基づいてこの予測を生成するように構成される。
【００６４】
デコーダ200は、ビデオエンコーダ100によって生成された符号化されたビデオビットストリームを復号するように構成されるが、デコーダ200とエンコーダ100との両方が、符号化される/復号されるそれぞれのブロックに関して同一の予測を生成することが好ましい。参照ピクチャバッファ270およびイントラ予測ユニット290の特徴は、図1の参照ピクチャバッファ170およびイントラ予測ユニット190の特徴と同様である。
【００６５】
ビデオデコーダ200は、たとえば、ビデオコーダ100の逆量子化ユニット140、逆変換ユニット150、およびループフィルタリングユニット160にそれぞれ対応する逆量子化ユニット240、逆変換ユニット230、およびループフィルタリングユニット260のような、ビデオエンコーダ100にも存在するさらなるユニットを含む。
【００６６】
ビットストリーム解析、エントロピー復号、および分割ユニット250は、量子化された残差変換係数およびシグナリング情報を得るために、受け取られた符号化されたビデオビットストリームを解析し、復号するように構成される。量子化された残差変換係数が、残差ブロックを生成するために逆量子化ユニット240および逆変換ユニット230に供給される。残差ブロックは、リコンストラクタ225において予測ブロックに加えられ、結果として得られる和が、復号されたビデオブロックを得るためにループフィルタリングユニット260に供給される。復号されたビデオのフレームは、参照ピクチャバッファ270に記憶され、インター予測のための参照フレームとして働くことができる。ビットストリームから解析され、復号されたシグナリング情報は、概して、フレームの区分けに関連する制御情報を含んでもよい。画像をさらに正しく解析し、復号するために、制御情報は、後に続く復号されたデータをそれぞれの符号化ユニットに正しく割り当てるために符号化ユニットへの画像の分割を復元するために使用される。
【００６７】
概して、図1および図2のイントラ予測ユニット190および290は、符号化される必要があるまたは復号される必要があるブロックに関する予測信号を生成するために、既に符号化された領域からの参照サンプルを使用することができる。
【００６８】
ビットストリーム解析、エントロピー復号、および分割ユニット250は、その入力として、符号化されたビットストリームを受け取る。まず、ビットストリームは、解析されてもよく、つまり、シグナリングパラメータおよび残差が、ビットストリームから抽出される。ビットストリームのシンタックスおよびセマンティックは、エンコーダおよびデコーダが相互運用可能なようにして働いてもよいように規格によって定義されてもよい。
【００６９】
本開示は、ブロックに基づくハイブリッドビデオ符号化における境界の強制的な区分けの新しい手法を提示する。特に、境界の強制的な区分けは、少なくとも部分的に、2分木(BT)構造を使用することによって実行される。発明者らの所見によれば、ほとんどの境界ブロックは同じ予測モードを使用してもよいので、フレームの境界のCTUに関する強制的な4分木(QT)の区分けは、常に必要であるとは限らない。強制的なQTの区分けの代わりに、一実施形態においては、下の境界部分のための強制的な水平方向のBTおよび/または右の境界部分のための強制的な垂直方向のBTが、導入される(左から右および上から下のCTUの処理順で上および下の隣接部分は既に再構築されていると仮定する)。
【００７０】
特に、図6に示されるように、実施形態によれば、動作中に画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に所定のサイズ未満のサイズを有する境界部分とに下位分割する処理回路を含む、画像部分を符号化ユニットに分割する(610)ための(上述のユニット110、250に実装されてもよい)装置600。さらに、処理回路は、動作中、境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットに階層的に区分けし(630)、最も深い符号化ユニットは、第1の方向の方がより小さい。
【００７１】
フレームの分割610によって得られたCTUは、さらに階層的に区分けされてもよい(620)。この区分けは、たとえば、図3および図4に示され、上記でそれらの図を参照して説明されたように任意の方法で実行されてもよい。
【００７２】
図6は、装置600の回路の内部構造を示す。この回路は、CTUへのフレームのそれぞれの分割、CTUの区分け、および境界部分の区分けのための機能ユニット610、620、および630を有する任意の種類のハードウェアおよびソフトウェアであってもよい。これらのユニットは、たとえば、単一のプロセッサに実装されてもよい。しかし、発明は、そのような適用例に限定されず、これらのユニットは、別々のハードウェアパーツによっても実装されてもよい。
【００７３】
境界部分は、垂直方向の境界にのみ(垂直方向のピクチャのサイズが垂直方向のCTUサイズの整数倍でない場合)か、または水平方向の境界にのみ(水平方向のピクチャのサイズが水平方向のCTUサイズの整数倍でない場合)か、または垂直方向の境界と水平方向の境界との両方に(水平方向および垂直方向のピクチャのサイズがそれぞれの水平方向のおよび垂直方向のCTUサイズの整数倍でない場合)あってもよい。
【００７４】
符号化される通常のピクチャは、CTUの倍数であるサイズを有する。図7は、下のピクチャの境界700および(塗りつぶされた)対応する境界部分710の例を視覚化する。部分750は、垂直方向および水平方向にCTUの整数倍のサイズを有する画像の残りの部分を示す。特に、CTUの垂直方向のサイズは、770Vと表記され、一方、CTUの水平方向のサイズは、770Hと表記される。図7に見られうるように、この例の境界部分は、水平方向にCTUサイズ770Hの整数倍である。しかし、垂直方向に、境界部分710は、垂直方向のピクチャサイズを垂直方向のCTUサイズ770Vによって割った余りのサイズを有する。部分720は、仮想的なものに過ぎず、境界部分の高さとCTUサイズとの間の差を示す。この実装において、CTUは正方形であり、したがって、サイズ770Hおよび770Vは同じであることが留意される。しかし、本開示はそれに限定されず、CTUの垂直方向のサイズおよび水平方向のサイズは異なってもよい。
【００７５】
境界部分を符号化する(およびそれに対応して復号する)ために、図7の境界部分710は、不完全なCTUに、つまり、CTUの水平方向のサイズ770Hと、CTUサイズよりも小さい垂直方向のサイズ770Vとを有する部分に分割される。これらの不完全なCTUは、図8に示されるようにさらに強制的に区分けされる。
【００７６】
図8は、境界部分が水平方向の境界にあり、したがって、分割が垂直方向に行われる例を示す。特に、図7の左側には、CTUの幅(この例においては、その幅は128サンプルである)に対応するが、CTUの高さよりも低い高さ(56サンプルのみ)に対応する境界部分が、示されている。垂直方向の境界は、2分木分割によって強制的に区分けされる。特に、64サンプルを有する深さ1ユニットは56サンプルの高い境界部分に合わないので、56サンプルの長さに合う最も大きなユニットサイズはサイズ32サンプルの深さ2ユニットである。残り24サンプルは、サイズ16サンプルの深さ3ユニットおよび(深さ4 CUのサイズに対応する)8サンプルの残りの部分にさらに分割され、残りの部分は、ピクチャの境界まで達し、したがって、さらなる分割は必要ない。この例において、分割は、水平方向の境界に適用されない。まとめると、1つの方向にCTUのサイズ有し、別の方向により小さいサイズを有する境界部分のユニットが、2分木分割によって、つまり、境界部分のユニットを、1つがより小さなサイズに合う次に浅いCUのサイズを有し、残りの部分が最も深いCUがフレームの境界に達するまでさらに分割される2つの部分に階層的に分割することによって区分けされる。128 x 56の大きさのCTUの部分のこの区分けは、ここでは、128 x 32、128 x 16、および128 x 8のそれぞれのサイズを有する3つの境界部分の符号化ユニットをもたらす。
【００７７】
まとめると、1つの実装によれば、処理回路は、2分木分割によってすべての区分けのレベルで境界部分を区分けするように構成される。
【００７８】
図8の右側には、最初に、階層の深さ1(CTサイズに対応する階層の深さ0)において4分木の区分けが適用され、結果として、サイズ64 x 56の2つのCUを生じ、それらの2つのCUが、64 x 32、64 x 16、および64 x 8の大きさのCUのそれぞれのペアにさらに2分木分割される区分けの例が示される。
【００７９】
図8の例は、下の境界の区分けを示す。しかし、本開示は、右の境界などの任意のその他の境界の分割に等しく適用可能である。CTUへのピクチャの下位分割が左から右および上から下に実行される場合、次いで、境界部分は、ピクチャの下および/または右側にある。しかし、区分けはまた、下から上および右から左に行われてもよく、その場合、上および左の境界が、分割される必要があり、これは、図8を参照して説明されたのと同じ方法で可能である。同様に、上の例は、不完全なCTUの上から始まるそのようなCTUの区分けを示す。しかし、概して、ピクチャ(フレーム)の境界から上に向かって不完全なCTUを分割することも、可能である。
【００８０】
図8の右側に示されるように、不完全なCTU分割は、混合されたQTおよびBT分割であってもよい。処理回路は、少なくとも最も深い区分けのレベルで2分木分割によって境界部分を区分けするように構成されてもよい。これは、フレームの境界に重なるより大きな境界が最も小さなユニットに分割される必要がないという利点をもたらす。フレームの境界の多すぎ、小さすぎるCUは、より一層の符号化の複雑さおよびより大きなビットストリームをもたらす可能性がある。この実施形態においては、最も深いCUが片方の側が他方の側よりも大きい(つまり、2分木の区分けの結果得られる)限り、残りの深さの階層が、任意の方法で決定されてもよく、予め定義された方法で強制されなくてもよいことが留意される。むしろ、区分けは、RD最適化によって行われ、デコーダが同じ区分けを復元することを可能にする対応する制御情報をともなってもよい。区分けはまた、部分的に強制され、RD最適化のために部分的に利用可能であってもよい。
【００８１】
言い換えると、処理回路は、4分木分割によっても境界部分を区分けするように構成されうる。したがって、規格によって定義されたまたはビットストリームに含まれる制御情報によって構成可能な、それぞれの深さのために予め定義された強制的なQTまたはBTの区分けがあってもよい。
【００８２】
たとえば、強制的なBTの区分けは、特定の数の強制的なQTのレベルの後にのみ行われる。これは、処理回路がN個の最も浅いレベルにおいて4分木分割によって境界部分を区分けするように構成され、Nは、ゼロ以上であり、区分けの階層レベルの数よりも小さい整数であることにおいて達成されてもよい。処理回路は、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けするようにさらに構成される。図8を参照するとき、左側には、実行されるQT分割がない。
【００８３】
したがって、ビットストリーム内の制御情報は、QTが適用されるか否かと、適用される場合はいくつのレベルがQT分割されるかを指定するQT/BTインジケータを含んでもよい。それに対応して、そのようなQT/BTインジケータは、(図8において左側に示されたように)QT分割が適用されない場合の値0およびNに対応する値などの複数の値を取ってもよい。そのようなシグナリングは、QTの区分けが適用されるか、BTの区分けが適用されるか、または区分けが適用されないのかに関わらず、各レベルにおける各CUに関するシグナリングよりも短い。しかし、本開示は、任意の種類のシグナリングを使用してもよい。
【００８４】
代替的に、または制御シグナリングと組み合わせて、強制的なQTのレベルは、時間IDまたはスライスの種類によって適応的に選択されうる。この手法は、明示的なシグナリングが必要とされない(またはより少ない量の明示的なシグナリングが必要とされる)という利点をもたらす。さらに、強制的な区分けは、少なくとも予測の種類に関連して適応的に設定されてもよい。
【００８５】
HEVCは、階層的な時間的予測の構造(インター予測されるフレーム間の依存関係)の中のレベルを示す時間識別子(ID)を規定する。スライスの種類は、たとえば、イントラ予測されるスライス、1つの参照ピクチャに基づく予測のみを適用するインター予測されるスライス、双方向の予測を適用するインター予測されるスライスなどであることが可能である。
【００８６】
たとえば、時間識別子が(1ピクチャを意味する)0である場合、またはスライスの種類がイントラ予測されるスライスである場合、区分けは、より高い時間ID(インター予測されるピクチャ)に関してまたはP/Bスライス(インター予測されるスライス)に関してよりも正確である必要がある。
【００８７】
上記パラメータ、時間IDまたはスライスの種類は、例示的なであるに過ぎない。概して、さらなるおよび/または異なる符号化パラメータが、適用されうる。さらに、スライスの種類の代わりに、隣接するCTU内のCUの予測モードが、CTU(不完全な境界のCTU)に基づいて境界部分の区分けを決定するために使用されてもよい。
【００８８】
一方、区分けをシグナリングすることは、全体的な符号化効率が高められるように適切な分割を選択するより高い自由度を提供してもよい。たとえば、区分けは、コスト関数を最適化することによって(たとえば、RD最適化によって)調整され、強制的なQTのいくつのレベルがデコーダのために使用されるかを示す(つまり、上述のようにQTがそもそも使用されるのかどうかをシグナリングするかまたはNをシグナリングする)ためにビットストリーム内でシグナリングされうる。
【００８９】
代替的に、境界の(不完全な)CTUは、最初に、最後から2番目の階層レベル(深さ)までまたはシグナリングされた階層レベルMまでRD最適化によって区分けされる。次いで、フレームの境界にある残りの最も深いレベルのブロックが、強制的なBTの区分けまたは強制的なQTおよび強制的なBTの区分けの組み合わせを使用する。
【００９０】
図9は、少なくとも部分的に強制的な境界の区分けの3つの例を示す。
【００９１】
CTU/CUが下の境界にあるときは、水平方向の強制的なBTの区分けが、(垂直方向の境界を分割することによって)繰り返しRD最適化なしにおよび区分けフラグのシグナリングなしに使用されてもよい。強制的な水平方向のBTの区分けは、葉ノードの右下のサンプルがスライス/ピクチャの下の境界の中にあるときに終了される。強制的な水平方向のBTの区分けの後、境界のCTUからの強制的に区分けされたCUが、エンコーダにおいてRDコストに基づいてさらに分割される可能性があり、さらなる分割フラグが、エンコーダからデコーダにシグナリングされてもよい。図9の(a)の部分は、強制的な水平方向のBT(すなわち、垂直方向の境界の分割)によって区分けされた128 x 56サンプルの下の境界の例を示す。
【００９２】
同様に、右の境界にあるCTU/CUに関して、垂直方向の強制的なBTの区分けが、恐らくは、葉ノードの右下のサンプルがスライス/ピクチャの右の境界の中に入るまで繰り返しRDコストのチェックなしにおよび分割フラグのシグナリングなしに使用される。(水平方向の境界の)強制的な垂直方向のBTの区分けの後、境界のCTUからの強制的に区分けされたCUが、エンコーダにおいてRD最適化によってさらに分割される可能性があり、さらなる分割フラグが、エンコーダからデコーダにシグナリングされる。図8の(b)の部分は、強制的な水平方向のBTによって区分けされた56 x 128サンプルの長さの右の境界の例を示す。
【００９３】
別の例によれば、右下の角の境界にあるCTU/CUに関しては、まず、強制的な階層的なQTの区分けが、繰り返しいかなるシグナリングもなしに使用される。現在のCUの右下のサンプルが下または右の境界にあるとき、さらなる強制的な水平方向のまたは垂直方向のBTの区分けが、葉ノードの右下のサンプルがスライス/ピクチャの境界の中に入るまで繰り返し行われる。そうではなく、現在のCUの右下のサンプルがさらに角の境界にあるとき、さらなる強制的なQTの区分けが、葉ノードの右下のサンプルがスライス/ピクチャのフレームの中に入るまで使用される。境界のCTUから分割によって得られた強制的に区分けされたCUが、エンコーダにおいてRD最適化によってさらに分割される可能性があり、さらなる分割フラグが、エンコーダからデコーダにシグナリングされてもよい。図9の(c)の部分は、強制的なQTおよびBTによって区分けされた56 x 56サンプルの右下の角の境界の例を示す。
【００９４】
特に、図9の(c)の部分には、56 x 56サンプルの不完全な角の境界のCTUが、示される。QT分割後の64 x 64サンプルの第1の深さのレベルは、境界部分の中にない。QT後の第2の深さのレベルの32 x 32サンプルは、境界部分の中にあるが、さらに分割される水平方向の角の部分(32 x 24サンプルの左下のCU)、垂直方向の角の部分(24 x 32サンプルの右上のCU)、および別の角の部分(24 x 24サンプルの右下のCU)を残す。
【００９５】
この例において、水平方向の境界のCUおよび垂直方向の境界のCUは、最も深いレベルのユニットがピクチャ/スライスの境界に沿ったより長い側を有するようにさらに2分木分割される。角の部分は、上記でより高いレベルの角の部分に関して説明されたのと同じ方法で、つまり、4分木分割によってさらに分割されてもよい。
【００９６】
言い換えると、処理回路は、動作中、境界部分を水平方向および垂直方向に2分木分割によって区分けしてもよい。これは、境界部分が両方のピクチャ/スライスの境界、垂直方向の境界および水平方向の境界に沿って延び、角の部分を含む場合に特に当てはまる。
【００９７】
角の場合に関して、処理回路は、動作中、各階層レベルにおいて、境界部分の角の部分を4分木分割によって区分けする。たとえば、図9の(c)の部分では、両側が56サンプルのサイズを有する角、角の境界のCU 960に関して、4つのレベルの強制的なQTが必要とされる(左上のCUが56 x 56の角を含む4つの64 x 64のCUをもたらす128 x 128のCTUのQT分割、右下のCUが24 x 24の角を含む4つの32 x 32のCUをもたらす64 x 64のCUの左上のQT分割、4つの16 x 16のCUをもたらす32 x 32のCU右下のQT分割であって、それらの16 x 16のCUの右下が8 x 8の角を含む、QT分割、および右下の16 x 16の不完全なCUの4つの8 x 8のCU、すなわち、左上の区画がピクチャの中にある一方、その他の区画がピクチャの中にない最小サイズの区画へのQT分割の最後のステップ)。
【００９８】
一方、下の境界のCU 950に関しては、強制的なQTの2つのレベルと、その後の2つのレベルの強制的なBTとが、必要とされる(128 x 128のCTUのQT分割、64 x 64のCUの左上のQT分割、32 x 24の境界部分を含む32 x 32のCUの下の境界上の2つの32 x 16のCUへの2分分割、および下の32 x 16のCUを上のCUのみがピクチャの境界の中にある2つの32 x 8のCUにBT分割する最後のステップ)。
【００９９】
角のCU 960に関して、設定されたQTのレベルNは、考慮に入れられず、角のCUは、すべての階層レベルでQTによって強制的に分割される。特に、角の場合、葉ノード(不完全なCU、つまり、部分的に境界部分の中にある)の右下のサンプルが右の境界と下の境界の両方の外にある場合、この現在の不完全なCUは、bCornerとして認識される(図10、ステップ1050、「Yes」)。bCornerが現在のCUに当てはまる場合、現在のCUは、強制的なQTを使用してさらに分割される。区分けは、分割の結果得られる葉ノードが完全に境界部分の中にあるとき、または角の部分が下または右の境界の場合に当たる(bBottom、bRight、つまり、現在のCUの右下の境界が境界部分、すなわち、ピクチャまたはスライスの下のまたは右の境界のどちらかのみの外にある)場合、終了する。
【０１００】
この例においては、N=0または1または2である場合、CU 960が常に強制的なQTを必要とし、CU 950がどうしても最初の2つのレベルにおいてQTによって分割されるので、強制的なQT分割方式は同じである。これは、深さ0のCU(CTU)、深さ1のCU(64 x 64サンプル)がやはり角のCUであるためである。64 x 64のCUの分割の後にのみ、深さ2に、1つがまったく境界のCUではなく(左上)、2つが下の境界のCUおよび右の境界のCUであり、1つだけが角のCUである4つのCUがある。
【０１０１】
N=3である場合、もう1回強制的なQTが必要とされ、次いで、左下の32 x 32のCUがBT分割される代わりにさらにQT分割されるように、強制的な分割方式がCU 950に関して変更される。CU 960の分割は、同じままである。
【０１０２】
本開示によれば、強制的なQTと強制的なBTとの組み合わせが、上記で既に簡潔に検討されたように使用されてもよい。特に、境界上のいくらかの複雑なテクスチャまたは動きに関して、詳細な区分けが、画像品質のために有益であってもよい。したがって、QTおよびBTによる組み合わされた強制的な区分けも、提供される。特に、強制的なQTと強制的なBTとの1つの組み合わせの実装において、強制的なBTの区分けは、特定の数Nの強制的なQTのレベルの後にのみ適用される。その他の設定の下で、BTの区分けの後にQTの区分けが許される場合、強制的なQTの区分けは、強制的なBTの後に行われる可能性がある。
【０１０３】
強制的なBTおよび強制的なQTの組み合わされた実装においては、強制的なQTのレベルの数を定義するいくつかの方法がある。予め定義された強制的なQTのレベルが使用される場合、まず、すべての境界のCTUが、同じQTBT構造によって強制的に区分けされ、さらなる区分けが、RD最適化に基づいて行われる可能性がある。図8の右側は、不完全な128 x 128のCTUにおける128 x 56サンプルの下の境界の1つのレベルのQTおよび3つのレベルのBTの区分けの例を示す。
【０１０４】
強制的なQTのレベルは、時間IDまたはスライスの種類などのエンコーダパラメータによって適応的に選択されうる。特定のスライスの種類およびより低い時間IDは、より詳細な区分けを必要としてもよい。さらに、強制的なQTのレベルは、レート-歪み最適化によって調整され、強制的なQTのいくつのレベルが使用されるかを示すためにビットストリーム内でシグナリングされてもよい。CTUレベルのレベルの数のシグナリングが、強制的なQTのいくつのレベルがCTUのために使用されたかを示すために使用されうる。加えて、スライスヘッダ内のレベルの数のシグナリングが、強制的なQTのいくつのレベルが現在のスライスのために使用されたかを示すために使用されうる。SPS内のレベルの数のシグナリングが、強制的なQTのいくつのレベルが符号化されたビデオシーケンスのために使用されたかを示すために使用されうる。PPS内のレベルの数のシグナリングが、強制的なQTのいくつのレベルが符号化されたピクチャのために使用されたかを示すために使用されうる。
【０１０５】
強制的なQTのレベルの数は、任意のその他の手法に基づいて決定されてもよい。たとえば、スライス/フレーム/境界領域内の元のサンプルのエントロピーが、使用されてもよい。エントロピーは、項p_i * log2(p_i)をiに関して総和することによって計算され、p_iは、特定の領域内のサンプルの強度値Iの確率である。記号「*」は、乗算を意味し、「log2」は、底を2とする対数を意味する。エントロピーが高いほど、構造がスライス/フレーム/境界領域の中に存在する見込みが大きく、したがって、より小さなCUが適切であってもよい。しかし、これらは例に過ぎず、原理的に、本発明は強制的なQTのレベルの数が決定されるいかなる特定の方法にも限定されない。エッジの存在の分散などの任意のその他の尺度が、使用されてもよい。
【０１０６】
処理回路は、動作中、最も深いレベルの符号化ユニットが境界部分の中に留まるまで境界部分を区分けする。
【０１０７】
本開示によれば、画像部分を符号化ユニットに分割するための方法が提供される。方法は、画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に所定のサイズ未満のサイズを有する境界部分とに下位分割するステップを含む。次いで、それぞれの水平方向および垂直方向に異なるサイズを有する最も深い符号化ユニットを含む符号化ユニットへの境界部分の階層的な区分けが、実行され、最も深い符号化ユニットは、第1の方向の方がより小さい。
【０１０８】
1つの実装において、境界部分の区分けは、最も浅い区分けのレベルである現在の区分けのレベルから開始するステップ、現在の区分けのレベルの符号化ユニットが境界部分に達しない限り、境界部分を現在の区分けのレベルの符号化ユニットに順に分割するステップと、現在の区分けのレベルの符号化ユニットが境界部分に収まらないと直ちに、区分けのレベルを上げ、前記符号化ユニットをさらに区分けするステップであって、4分木の区分けが、N個の最も浅い区分けのレベルのために使用され、2分木の区分けが、その他の場合に使用される、ステップをさらに含む。
【０１０９】
逐次的な分割は、分割が最も深いレベルまで最も浅いレベルから実行されることを意味する。特に、強制的な分割は、境界にある符号化ユニット(境界のCU)に関してそれぞれの階層レベルにおいて実行され、つまり、そのようなCUは、ピクチャ/スライスの境界の中の(境界部分の中の)サンプルと、ピクチャ/スライスの境界の外にある部分とを含む。ここで、用語CUは、区分けの結果として得られるサイズを有するが、しかし、それがそのサイズによって与えられるよりも少ないサンプルを含む、つまり、部分的にそれが区分けされるピクチャ/スライスの外にあるために不完全であるCUを指す。
【０１１０】
したがって、境界部分全体が分割されるように、大雑把に最も大きなCUから最も小さなCUまで境界部分を区分けするために、強制的な分割が実行される。上記で既に検討されたように、強制的な分割のために区分け情報は必要なく、区分け情報は予め定義されうる。強制されるいくつかのQTのレベルがある場合は、Nがシグナリングされるかまたは予め定義されてもよい。予め定義されたNは、エンコーダおよびデコーダが両方とも、たとえば、規格によって定義されてもよいそのようなNの知識を有することを意味する。
【０１１１】
しかし、強制的な分割を実行した後、強制的に分割された境界部分のCUが、さらに区分けされてもよい。これは、レート-歪み最適化に基づいて実行され、したがって、ビットストリーム内でさらにシグナリングされてもよい。特に、最小CUサイズよりも大きい、境界部分の中のCUに関して、そのようなCUがさらに区分けされるか否かおよびそのようなCUがどのようにしてさらに区分けされるのかを示す1つの分割フラグまたは複数の分割フラグが、シグナリングされてもよい。
【０１１２】
ビットストリームに含められる区分け情報は、QT分割フラグおよび/またはBT分割フラグを含んでもよいことが留意される。QTおよびBT分割はまた、2種類の分割のうちのどちらが使用されるかがシグナリングされるかまたは導出可能である限り混合されてもよい。デコーダ側では、強制的な分割の後、次いで、qt_split_cu_flagおよびbt_split_cu_flagなどの復号された区分け情報に基づいてさらなる分割が行われる。図10は、境界の区分け、ならびに特に、強制的なBTおよび強制的なQTと強制的なBTとの1つの組み合わせの実装の詳細な例示的実装を示す。図において採用される変数は、以下の意味を有する。
- bBottomは、現在のCTUまたはCUの右下のサンプルが下の境界の外にあるかどうかを示す。
- bRightは、現在のCTUまたはCUの右下のサンプルが右の境界の外にあるかどうかを示す。
- bCornerは、現在のCTUまたはCUの右下のサンプルが右下の角の境界の外にあるかどうかを示す。
- FQT_LVは、強制的なBTが行われる前の強制的なQTのレベルを示す(上述のNに対応する)。
- uiDepthは、現在区分けされている階層レベルを示す。
【０１１３】
上述のように、強制的なQTのレベルは、予め定義され、スライスの種類/時間IDなどのエンコーダパラメータに基づいてまたはRDコストに基づいて適応的に選択されうる。
【０１１４】
特に、ステップ1010において、境界部分のCTU(レベル0)の区分けが始まる。ステップ1020においてCTUが下または右の境界(ただし角の境界ではない)上のCTUである場合、およびuiDepthがFQT_LV-1以下である場合、CTUは、強制的なBTによってステップ1040において分割される。それ以外の場合、強制的なQTの区分けのステップ1060が適用される。分割は、境界部分のCUをさらに分割することによって継続する。たとえば、図8(b)の例において、CTU(レベル1)のFQT_LVは、1に等しい。ステップ1030においてuiDepth=0はFQT_LV-1=0に等しいので、不完全なCTUは、ステップ1060においてQTによって強制的に分割され、さらに分割される必要がある2つのCU(左上および右上)をもたらす。これらのCUの各々は、さらに繰り返し区分けされる。左上のCU(レベル1)は、まだ不完全であり、したがって、境界部分のCUである。ステップ1020における下の境界のCUとして、ステップ1030においてuiDepth=1がFQT_LV-1=0よりも大きいので、強制的なBTが、左上のCUにステップ1040において適用される。右上のCUは、同じようにして区分けされる。ステップ1040では、境界部分の(不完全な)CU(64 x 24)が、BTによってレベル2においてさらに分割される。レベル3の残りの64 x 8 CUは、ピクチャの境界に達し、したがって、ステップ1020および1050において「No」の結果となる。最小の区画としてのサイズ8の区画は、ステップ1070においてさらに分割されず、それどころか、ステップ1080において「yes」の結果となり、ステップ1090において区分けを停止させる結果となる。第2の64 x 24のCUは、同じようにして分割される。
【０１１５】
一方、図9の(c)の部分の56 x 56のCTUは、角のCTUである。ステップ1020(レベル0)において、CTUは、ステップ1050に移り、ステップ1060において角のCUとしてQTによって区分けされる。レベル1において、左上の56 x 56のCUは、同じようにして扱われ、3つの境界のCU(左下、右上、および角)をもたらす。FQT_LV=0、つまり、bBottomおよびbRightのCUに関して強制的なQT分割がないと仮定するとき、左下および右上のCUは、(ステップ1020において「yes」およびステップ1030において「no」となった後)ステップ1040において強制的なBTによって分割される。角の24 x 24のCU(レベル2)は、ステップ1020からステップ1050へと移り、ステップ1060においてQTによって区分けされ、サイズ16 x 8、8 x 8、および8 x 16を有する3つの境界のCUを再び生じ、それら3つの境界のCUは、さらに分割される必要はなく、「no」のステップ1020、「no」のステップ1050、ステップ1070を亘って、停止条件1080および終了1090へ移る。停止条件は、たとえば、この例においては8に等しい最小サイズであってもよい。
【０１１６】
以下で、表2は、普通の(境界でない)CUに関するQT分割フラグをシグナリングすることを可能にする例示的なシンタックスを示す。加えて、BT分割フラグが、境界部分のCU以外のCUに関してシグナリングされてもよい。coding_quadtreeのシンタックスは、反復的であり、つまり、区分けは、階層的である。区分けは、以下の条件が真である場合に実行される。
x0 + cuWidth <= pic_width_in_luma_samples
および
y0 + cuHeight <= pic_height_in_luma_samples
【０１１７】
言い換えると、現在のCU(つまり、分割によって現在処理されているCU)の右下の角がピクチャの中にある限り、CTU/CUは、4分木または2分木によって分割される。このシンタックスは、例示的であるに過ぎずないことと、本開示は、QTのみ、またはBTのみ、または完全にピクチャ/スライスの中にあるCTUのための選択可能なさらなる区分けの種類を使用するなどのその他の場合にも適用されてもよいこととが留意される。シンタックスにおいて採用される値cuMinBTSiz、cuMaxBTSize、およびcuMaxBTDepthは、予め定義された値である。
【０１１８】
上の条件の中で、x0およびy0は、現在のCUの左上の角のサンプルの位置を指定し、cuWidthおよびcuHeightは、水平方向および垂直方向のCUサイズを指定し、パラメータpic_width_in_luma_samplesおよびpic_width_in_luma_samplesは、水平方向および垂直方向のピクチャサイズを指定する。この例においては、ピクチャ全体が区分けされることが留意される。しかし、同じ手法が、スライス、タイル、または境界を有する任意のその他のピクチャの部分などの独立して復号されうるピクチャの部分に適用可能である。
【０１１９】
HEVC規格と同様に、qt_split_cu_flag[x0][y0]が存在しないとき(境界の場合)、以下が(エンコーダおよびデコーダにおいて)適用される。
- cuWidth (現在のレベルのCUの幅)がMinQTSize(最小QTサイズ、ここでは8)よりも大きく、cuHeight(現在のレベルのCUの高さ)がMinQTSizeよりも大きい場合、qt_split_cu_flag[x0][y0]の値は、1に等しいと推測される。言い換えると、境界は、強制的に分割される。
-  そうでない場合(log2CbSizeがMinCbLog2SizeYに等しい)、qt_split_cu_flag[x0][y0]の値は、0に等しいと推測される。言い換えると、現在のCUが最小の許されるサイズMinCbLog2SizeYを有する場合、デコーダは、CUがそれ以上分割されないと想定する。
【０１２０】
これは、上の表1の場合と同様である。
【０１２１】
【表２Ａ】
0006977138.tif 000003
【表２Ｂ】
0006977138.tif 000004
【０１２２】
見られうるように、bt_split_cu_flagが、シグナリングされてもよい。このフラグは、CTUのBT分割が境界にないCTU/CUのために構成されるときに(条件if(! (bBBoundary || bRBoundary))参照)シグナリングされる。境界の場合、強制的な分割は、フラグの値が導出されるので追加的なフラグを必要としない。特に、bt_split_cu_flag[x0][y0]が存在しない場合(境界の場合)、以下が適用される。
- bBBoundary (現在のCU/CTUが下の境界にあることを意味する)が真であり、同時に、cuWidthがMinBTSizeよりも大きいかまたはcuHeightがMinBTSizeよりも大きい(現在のCU/CTUが最小サイズを持たず、したがって、原理的にさらに分割されうる)場合、bt_split_cu_flag[x0][y0]の値は、1に等しいと推測される(さらなる2分分割、つまり、分割されたCUの長い方の側が下、すなわち、水平方向の境界と平行である/重なる結果となる2分木分割が実行されることを意味する)。
- bRBoudary(現在のCU/CTUが右の境界にあることを意味する)が真であり、一方、cuWidthがMinBTSizeよりも大きいかまたはcuHeightがMinBTSizeよりも大きく、bt_split_cu_flag[x0][y0]の値が、2に等しいと推測される(さらなる2分分割、つまり、分割されたCUの長い方の側が右、すなわち、垂直方向の境界と平行である/重なる結果となる2分木分割が実行されることを意味する)。
-  それ以外の場合、bt_split_cu_flag[x0][y0]の値は、0に等しいと推測され、さらなる2分分割が実行されないことを意味する。
【０１２３】
境界にあることは、現在のCUと境界との間に現在の区分けの階層レベル以下のCUがない、言い換えると、現在のCUが現在の階層レベルにおいて境界部分に属する(bBBoundaryが真であるかまたはbRBoundaryが真であることに対応する)ことを意味する。現在のCUが境界のCUではない場合に、QTが強制されず(cqtDepth > FQT_LV-1)、BTフラグがビットストリームに含まれる場合、BT分割が使用される。
【０１２４】
JEMの実装に関する例示的な値は、値4を有するインターフレームのためのcuMinBTSize、128であるインターフレームのためのcuMAXBTSize、および3であるcuMAXBTDepthである。しかし、本開示は、これらのサイズに限定されず、選択された任意の値に適用可能である。
【０１２５】
上のシンタックスは例示的であるに過ぎないことと、上のシンタックスが強制的なQT分割レベルの数を示す変数FQT_LVの知識を仮定することとが留意される。FQT_LVの値がゼロである場合、次いで、強制的なQTのレベルがなく、強制的な境界の分割全体が、2分木分割によって実行される。シンタックスおよびセマンティックスは、本開示を逸脱することなく異なるように実装されてもよい。
【０１２６】
JEMソフトウェア(JEM5および6)に基づく別のソリューションは、下のセマンティックを規定することでありうる。qt_split_cu_flag[x0][y0]が存在しないとき(境界の場合)、qt_split_cu_flag[x0][y0]の値は、角のCUの場合のさらなるQT分割または強制的なQT(cqtDepth <= FQT_LV-1である場合)を意味する1に等しいと推測される。
【０１２７】
bt_split_cu_flag[x0][y0]が存在しない場合(境界の場合)、以下が適用される。
- bBBoundaryが真である場合、bt_split_cu_flag[x0][y0]の値が1に等しいと推測され、下の境界のCUが垂直方向に2分分割によって、つまり、2つの水平方向のCU(すなわち、垂直方向よりも水平方向の方が長いCU)を形成するために分割されることを意味する。
- bRBoundaryが真である場合、bt_split_cu_flag[x0][y0]の値が2に等しいと推測され、右の境界のCUが水平方向に2分分割によって、つまり、2つの垂直方向のCU(すなわち、水平方向よりも垂直方向の方が長いCU)を形成するために分割されることを意味する。
【０１２８】
上の例は、BT分割が適用される前の強制的なQTのレベルの数を定義するパラメータを用いる強制的な分割を示す。セマンティックルールは、分割フラグが存在しない場合に、つまり、境界において適合される分割を定義する。しかし、本開示は、そのような手法に限定されない。
【０１２９】
代替的に、まず、境界の(不完全な)CTUが、RD最適化によって区分けされることが可能であり、次いで、フレームの境界にある残りのブロックは、強制的なBTの区分けまたは強制的なQTおよび強制的なBTの区分けの組み合わせを使用することが可能である。RB最適化による区分けは、分割フラグが対応するCUに関してビットストリーム内でシグナリングされることを示唆する。RDによる区分けは、BTとQTとの間の選択が各CUに関してシグナリングされなくてもよいように、QTであると規定される(つまり、規格でもしくはピクチャのシーケンスもしくはピクチャに共通のシグナリングによって)か、またはBTであると規定されてもよい。一方、分割フラグは、所与のCUが分割されるか否かを示すのみでなく、そのCUがQTによって分割されるのかまたはBTによって分割されるのかも示すように拡張されてもよい。
【０１３０】
デコーダ側で、強制的な区分けは、境界のCTU/CUに対して行われる。強制的なBTの区分けに関して、強制的な水平方向のBT(水平方向の区画を形成するための垂直方向の分割)は、葉ノードの右下のサンプルがスライス/ピクチャの下の境界の中に入るまで下の境界にあるCTU/CUに対して使用される。強制的な垂直方向のBTは、葉ノードの右下のサンプルがスライス/ピクチャの右の境界の中に入るまで右の境界にあるCTU/CUに対して使用される。右下の角のCTU/CUは、葉ノードの右下のサンプルがスライス/ピクチャの境界の中に入るかまたは葉ノードが右/下の境界の場合に当たるまで強制的なQTを使用して区分けされる。シンタックスを参照して上記で既に説明されたように、さらなる区分けが、定義された強制的なQTの区分けのレベルの数があるかどうかに応じてQTまたはBT分割フラグであってもよい復号された分割フラグに基づいて行われる。シンタックスの要素は、エンコーダによって生成され、上記で説明されたようにデコーダによって処理される。
【０１３１】
強制的なQTと強制的なBTとの組み合わせに関して、(パラメータFQT_LVに対応する)境界のCTUのための強制的なQTのレベルの数は、時間ID/スライスの種類に基づいて適応的に選択されるか、またはビットストリームから復号されてもよい。復号された強制QTレベルは、スライスヘッダ、SPS、またはPPSから抽出されうる。境界のCTU/CUは、強制的なQTの区分けの後にのみ強制的なBTの区分けをされる。葉ノードの右下のサンプルが境界の中にあるとき、強制的な分割は終了される。さらに区分けが、復号された分割フラグに基づいて行われる。
【０１３２】
言い換えると、第1の実装によれば、デコーダにおいて、CTUがスライス/ピクチャの境界にある場合、2分木分割が、2分木の区分けのインジケータ(フラグ)および/または2分木の区分けの種類のインジケータ(BTが実行されるべきかまたはQTが実行されるべきかのインジケーション)なしに実行される。2分区分けは、葉ノードが右下のサンプルがスライス/ピクチャの境界の中にある(つまり、ピクチャの境界を越えていない)とき、終了される。
【０１３３】
したがって、強制的なQTの境界の区分けの代わりに、境界のCTUのための強制的なBTが導入される。下の境界のための強制的な水平方向のBTおよび右の境界のための強制的な垂直方向のBTが、実施される。右下の角の境界に関しては、(最小サイズが達せられたので)現在のCUがもはや強制的に区分けされる必要がないか、または現在のCUが下のもしくは右の境界に来るまで、強制的なQTが使用される。
【０１３４】
本開示の別の実装においては、強制的なQTおよび強制的なBTの区分けの組み合わせも可能である。したがって、強制的なBTの区分けは、特定の数の強制的なQTのレベルの後にのみ行われる。強制的なQTおよび強制的なBTの区分けの組み合わせに関しては、強制的なQTのレベルが、時間IDまたはスライスの種類によって適応的に選択されうる。代替的に、強制的なQTのレベルは、コストによって調整され、強制的なQTのいくつのレベルがデコーダのために使用されるかを示すためにビットストリームに含められうる。
【０１３５】
最初に、境界のCTUが、RD最適化によって区分けされ、フレームの境界にある残りのブロック(つまり、部分的にピクチャの中にあり、部分的にピクチャの外にある不完全なCU)のみが、上述のように、提案された強制的なBTの区分けまたは強制的なQTおよび強制的なBTの区分けの組み合わせを使用することができるとき、より一層の柔軟性が実現される。
【０１３６】
ここまでに説明された区分けは、静止画像またはビデオ符号化において採用されうる。特に、区分けは、図1および図2において分割ユニット110および分割ユニット250にそれぞれ示されるエンコーダおよびデコーダにおいて採用されうる。
【０１３７】
したがって、本開示は、ビデオシーケンスの画像を符号化するための装置であって、上述の例のいずれかに係る画像部分を符号化ユニットに分割するための装置(分割ユニット)110と、符号化ユニットを符号化するように構成された画像符号化ユニット120〜145、160〜195と、符号化された符号化ユニット、および符号化ツリーユニットがどのように区分けされるかを示す区分け情報を含むビットストリームを生成するように構成されたビットストリーム形成ユニット150とを含む、装置も提供する。
【０１３８】
エンコーダは、最も深いレベルを別として区分けのレベルのいずれに関してもレート-歪み最適化によって境界部分を階層的に区分けすることを決定するように構成されたレート-歪み最適化ユニット(図1に示さず)をさらに含んでもよい。RD最適化ユニットは、区分けに関連して異なるエンコーダの設定を使用して符号化を実行し、最小のコスト関数をもたらす設定を選択してもよい。コスト関数は、予測と符号化される元のブロックとの間の所与の歪みのレベルまたは類似性などのための最小のレートであってもよい。
【０１３９】
さらに、ビデオシーケンスの画像を復号するための装置であって、上述のように復号される画像部分の符号化ユニットへの分割を決定するための装置250と、符号化された符号化ユニット、および符号化ツリーユニットがどのように区分けされるかを示し、画像部分の決定された分割に基づく区分け情報を含むビットストリームを解析するためのビットストリームパーサ250と、符号化された符号化ユニットを復号するための画像復号ユニット225〜240、260〜295とを含む、装置が、提供される。
【０１４０】
分割および解析は、一緒に繰り返し実行されることが留意され、解析は、現在のCUに関するビットストリームから必要な制御情報を分離することを含み、分割は、解析された情報および/またはセマンティックの知識を使用してCUの位置、サイズ、およびデータを導出する。特に、パーサは、分割フラグを送ってもよく、それに基づいて、スプリッタは、現在のCUをさらに分割するかまたはそのCUのサイズを維持するかのどちらかを行う。分割フラグに応じて、また、パーサは、さらなる深さのCUに関する分割情報をさらに解析するか、もしくは同じ深さのその他のCUに関する分割情報を解析するかのどちらかを行うか、またはCUに関する復号されるデータを解析する。さらに、スプリッタは、強制的な区分けのルールに従って、たとえさらなるビットストリームのシグナリングがなくても、上述のように境界部分を区分けするように構成される。
【０１４１】
言い換えると、エンコーダおよび/またはデコーダは、両方とも、境界部分の符号化ユニットへの分割を予め定義された分割として採用してもよい。次いで、ビットストリーム内の区分け情報は、境界部分の分割にまったく関連しない。これは、ピクチャの種類/時間ID/スライスの種類などのその他のエンコーダの設定に基づいて分割を導出することをさらに含む可能性がある予め定義された方法で境界が分割されるときに当てはまる。
【０１４２】
代替的に、エンコーダおよび/またはデコーダは、N個の最も浅いレベルにおいて4分木分割によって境界部分を区分けすることであって、Nが、ゼロ以上、区分けの階層レベルの数未満の整数である、区分けすることと、残りの区分けの階層レベルにおいて2分木分割によって境界部分を区分けすることとを行うようにさらに構成されることが可能であり、区分け情報は、Nのインジケーションを含む。区分け情報は、境界部分のCTU/CUが分割されるべきか否かおよび/またはどの種類の分割で分割されるべきかを示すための分割フラグをさらに含んでもよい(2分木もしくは4分木および/またはその他の選択肢を含んでもよい)。分割フラグは、すべての区画(CU)に関して、またはそれらの階層レベルにおいて境界にない区画に関してのみシグナリングされてもよい。
【０１４３】
エンコーダおよび/またはデコーダは、チップにまたはソフトウェアによって実装され(組み込まれ)てもよい。しかし、エンコーダおよび/またはデコーダはまた、複数のハードウェアおよびソフトウェア構成要素に実装されてもよい。
【０１４４】
上記では、主に、2種類の分割、4分木分割および2分木分割が検討された。しかし、本開示によって提供されるコストに基づくまたは予め定義された境界の強制的な区分けの手法は、強制的なQTまたは強制的なBTのみでなくその他の強制的な区分けの構造にも好適である。
【０１４５】
上記では、主に、境界部分の強制的な分割における最も深いCUが長方形であり正方形ではないCU、つまり、片方の側が他方の側よりも長いCUである場合が、説明された。
【０１４６】
しかし、概して、境界部分は、少なくとも、境界の符号化ユニットが完全には境界部分の中に残らない区分けのレベルのうちの1つにおいて2分木分割によって区分けされてもよい。言い換えると、本開示によれば、画像部分を符号化ユニットに分割するための装置は、動作中に、画像部分を、整数個の、所定のサイズを有する符号化ツリーユニットと、水平方向または垂直方向のどちらかである少なくとも第1の方向に所定のサイズ未満のサイズを有する境界部分とに下位分割すること、ならびに境界部分を、それぞれの水平方向および垂直方向に異なるサイズを有する符号化ユニットを含む符号化ユニットに階層的に区分けすることであって、符号化ユニットが、部分的に境界部分の中にあり、部分的に画像部分の外にある、区分けすることを行う処理回路を含んでもよい。特に、2分木分割が、任意の境界のCUのために使用されてもよい。
【０１４７】
図7に示された境界部分は、いくつかのCTUを含むことが留意される。上の例示的な実施形態および実装は、1つのCTUの区分けに関して説明された。これは、たとえ境界部分の中の(不完全な)CTUのうちの1つのみが上述のように区分けされるとしても、それが有利であり、符号化効率および/または複雑さの点でより良い結果につながりうるからである。しかし、境界部分の2つ以上のCTUが、上述のように区分けされてもよい。区分けは、1CTUずつ順に実行されてもよい。一部の実装においては、異なるCTUに関して並列に区分けを実行することが有益であってもよい。並列処理は、エンコーダ/デコーダによってそれぞれ採用される場合、符号化/復号遅延を削減してもよい。
【０１４８】
言い換えると、上述の区分けを境界部分のすべてのCTUに適用することが有利であってもよい。一方、本開示は、それに限定されず、区分けは、1つ以上の境界のCTUに適用されてもよい。残りのCTUは、任意のその他の区分け、たとえば、QTのみなどによって分割されてもよい。
【０１４９】
区分けするための対応する方法も、提供される。そのような区分けを採用する対応する符号化および復号装置および方法が、さらに提供される。
【０１５０】
本開示は、装置に実装されてもよい。そのような装置は、ソフトウェアとハードウェアとの組み合わせであってもよい。たとえば、イントラ予測およびデブロッキングフィルタが、汎用プロセッサ、またはデジタル信号プロセッサ(DSP)、またはフィールドプログラマブルゲートアレイ(FPGA)などのチップによって実行されてもよい。しかし、本発明は、プログラミング可能なハードウェア上の実装に限定されない。それは、特定用途向け集積回路(ASIC)に、または上述のハードウェア構成要素の組み合わせによって実装されてもよい。
【０１５１】
イントラ予測およびデブロッキングフィルタの判定はまた、コンピュータによって実行されるときに上述のように方法のステップを実行する、コンピュータ可読媒体に記憶されたプログラム命令によって実装されてもよい。コンピュータ可読媒体は、たとえば、DVD、CD、USB(フラッシュ)ドライブ、ハードディスク、ネットワークを介して利用可能なサーバストレージなどの、プログラムが記憶される任意の媒体であることが可能である。
【０１５２】
エンコーダおよび/またはデコーダは、テレビ受像機、セットトップボックス、PC、タブレット、スマートフォンなどを含む様々なデバイスに実装されてもよい。エンコーダおよび/またはデコーダは、ソフトウェア、方法のステップを実装するアプリであってもよい。
【０１５３】
まとめると、本開示は、画像または画像スライスの区分けに関する。特に、画像または画像スライスは、垂直方向および水平方向の両方に整数個の符号化ツリーユニットに分割される。次いで、最も深い区分けのレベルが2分区分けの結果であり、つまり、片方の側が他方の側よりも長い符号化ユニットを含むように、残りの境界部分が少なくとも部分的に強制的に分割される。より長い側は、画像もしくは画像スライスの境界と平行であるかまたは画像もしくは画像スライスの境界と重なる。
【符号の説明】
【０１５４】
100  エンコーダ
110  分割ユニット
120  画像符号化ユニット
125  リコンストラクタ
130  変換ユニット
135  逆変換ユニット
140  量子化ユニット
145  逆量子化ユニット
150  エントロピー符号化ユニット
160  ループフィルタリングユニット
170  フレームバッファ
180  モード選択ユニット
190  イントラ予測ユニット
195  インター予測ユニット
200  ビデオデコーダ
225  リコンストラクタ
230  逆変換ユニット
240  逆量子化ユニット
250  ビットストリーム解析、エントロピー復号、および分割ユニット
260  ループフィルタリングユニット
270  参照ピクチャバッファ
290  イントラ予測ユニット
295  画像復号ユニット
600  装置
610  機能ユニット
620  機能ユニット
630  機能ユニット
700  下のピクチャの境界
710  境界部分
720  部分
770V CTUの垂直方向のサイズ
770H CTUの水平方向のサイズ
950  下の境界のCU
960  角の境界のCU
【図１】
0006977138.tif 000005
【図２】
0006977138.tif 000006
【図３】
0006977138.tif 000007
【図４】
0006977138.tif 000008
【図５】
0006977138.tif 000009
【図６】
0006977138.tif 000010
【図７】
0006977138.tif 000011
【図８】
0006977138.tif 000012
【図９（ａ）】
0006977138.tif 000013
【図９（ｂ）】
0006977138.tif 000014
【図９（ｃ）】
0006977138.tif 000015
【図１０】
0006977138.tif 000016