(57)【要約】  映像エンコーダ又はデコーダは、イントラコード化を使用して、可変ブロック形状で映像の一部分を処理する。一般態様の下では、イントラ予測方向は、ブロック形状又はアスペクト比に適応させる。説明される一般態様は、いくつかの従来の角度イントラ予測モードを非正方形ブロックに対する広角度イントラ予測モードに適応的に置き換える。任意のブロックに対する角度方向の総数は、以前の映像コード化規格と同じままでも、低減又は拡大してもよい。同じ数の予測方向を維持するため、ターゲットブロックの短い方の長方形エッジに沿った方向は除去されるが、長方形ターゲットブロックの長い方のエッジに沿った追加方向と置き換えられる。広角度を有する方向の場合、参照サンプルスムージングが実行される。信号伝達は、予測モード及び方向に関して対応するデコーダに通知するために提供することができる。
2021523588.tif 000002
【特許請求の範囲】
【請求項１】
長方形ブロックのブロック形状に基づく方向に沿って並ぶ近隣のブロックの少なくとも１つのサンプルに基づいて、前記長方形ブロックに属する映像サンプルを予測することと、
前記予測された映像サンプルに基づいてイントラ予測を使用して前記長方形ブロックを符号化することと、
を含む、方法。
【請求項２】
映像ブロックを符号化するための装置であって、
メモリと、
プロセッサと
を含む、装置であって、前記プロセッサが、
長方形ブロックのブロック形状に基づく方向に沿って並ぶ近隣のブロックの少なくとも１つのサンプルに基づいて、前記長方形ブロックに属する映像サンプルを予測することと、
前記予測された映像サンプルに基づいてイントラ予測を使用して前記長方形ブロックを符号化することと、
を行うように構成される、装置。
【請求項３】
長方形ブロックのブロック形状に基づく方向に沿って並ぶ近隣の再構築されたブロックの少なくとも１つのサンプルに基づいて、前記長方形ブロックに属する映像サンプルを予測することと、
前記予測された映像サンプルに基づいてイントラ予測を使用して前記長方形ブロックを復号することと
を含む、方法。
【請求項４】
映像ブロックを復号するための装置であって、
メモリと、
プロセッサと
を含む、装置であって、前記プロセッサが、
長方形ブロックのブロック形状に基づく方向に沿って並ぶ近隣の再構築されたブロックの少なくとも１つのサンプルに基づいて、前記長方形ブロックに属する映像サンプルを予測することと、
前記予測された映像サンプルに基づいてイントラ予測を使用して前記長方形ブロックを復号することと、
を行うように構成される、装置。
【請求項５】
前記長方形ブロックの長い方のエッジに沿って近隣のブロックのさらなる多くの予測サンプルが存在する、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項６】
前記長方形ブロックの長い方の辺に沿って方向が追加され、前記長方形ブロックの短い方の辺に沿って方向が除去される、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項７】
予測モードが、フラグを使用して信号伝達される、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項８】
予測モードが、前記モードが最確モードリストに属するかどうかに基づいて異なる方法で信号伝達される、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項９】
インデックスが、前記近隣のブロックの予測モードを前記長方形ブロックの予測モードにマッピングするために使用される、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項１０】
レート歪み最適化が、予測を見出すために実行される、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項１１】
前記長方形ブロックの長い方の辺に沿って予測方向が追加され、前記長方形ブロックの短い方の辺に沿って予測方向が追加される、請求項１若しくは３に記載の方法又は請求項２若しくは４に記載の装置。
【請求項１２】
請求項４〜１１のいずれか一項に記載の装置と、
（ｉ）信号を受信するように構成されたアンテナであって、前記信号が映像ブロックを含む、アンテナ、（ｉｉ）前記映像ブロックを含む周波数の帯域に前記受信信号を制限するように構成されたバンドリミッタ、（ｉｉｉ）出力を表示するように構成されたディスプレイの少なくとも１つと
を含む、デバイス。
【請求項１３】
プロセッサを使用してプレイバックするための、請求項１及び５〜１１のいずれか一項に記載の方法に従って又は請求項２及び５〜１２のいずれか一項に記載の装置によって生成されたデータコンテンツを含む非一時的なコンピュータ可読媒体。
【請求項１４】
プロセッサを使用してプレイバックするための、請求項１及び５〜１１のいずれか一項に記載の方法に従って又は請求項２及び５〜１２のいずれか一項に記載の装置によって生成された映像データを含む信号。
【請求項１５】
命令を含むコンピュータプログラム製品であって、プログラムがコンピュータによって実行されると、前記命令が、請求項１又は３及び５〜１１のいずれか一項に記載の方法を前記コンピュータに実行させる、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本態様は、映像圧縮並びに映像符号化及び復号に関する。
【背景技術】
【０００２】
発明の背景
ＨＥＶＣ（高効率映像コード化、ＩＳＯ／ＩＥＣ２３００８−２、ＩＴＵ−Ｔ  Ｈ．２６５）映像圧縮規格では、映像の連続ピクチャ間に存在する冗長性を利用するために動き補償時間予測が採用される。
【０００３】
その達成のため、動きベクトルは、各予測単位（ＰＵ）と関連付けられる。各コード化木単位（ＣＴＵ）は、圧縮領域のコード化木によって表される。これは、ＣＴＵの四分木分割であり、各葉は、コード化単位（ＣＵ）と呼ばれる。
【０００４】
次いで、各ＣＵには、いくつかのイントラ又はインター予測パラメータ（予測情報）が与えられる。その達成のため、各ＣＵは、１つ又は複数の予測単位（ＰＵ）に空間的に分割され、各ＰＵには、いくつかの予測情報が割り当てられる。イントラ又はインターコード化モードは、ＣＵレベルで割り当てられる。
【０００５】
共同探査モデル（ＪＥＭ：Joint Exploration Model）として知られている新しい映像圧縮規格に対する共同映像探査チーム（ＪＶＥＴ：Joint Video Exploration Team）提案では、高圧縮性能のため、四分木二分木（ＱＴＢＴ）ブロック分割構造を受け入れることが提案されている。二分木（ＢＴ）のブロックは、中央で水平又は垂直に分割することによって、２つの等しいサイズのサブブロックに分割することができる。結果的に、ブロックが常に高さと幅が等しい正方形であるＱＴのブロックとは異なり、ＢＴブロックは、幅と高さが異なる長方形であり得る。ＨＥＶＣでは、角度イントラ予測方向は、４５度から１８０度の角度にわたる−１３５度まで定義されており、それらの方向はＪＥＭでも維持され、それにより、ターゲットブロック形状とは無関係に角度方向が定義付けられた。
【発明の概要】
【０００６】
発明の概要
先行技術の欠点や不利な点は、本明細書で説明される一般態様によって対処され、それらの一般態様は、符号化及び復号におけるブロック形状適応イントラ予測方向を対象とする。
【０００７】
第１の態様によれば、方法が提供される。方法は、長方形ブロックのブロック形状に基づく方向に沿って並ぶ近隣のブロックの少なくとも１つのサンプルに基づいて、長方形ブロックに属する映像サンプルを予測するステップと、予測された映像サンプルに基づいてイントラ予測を使用して長方形ブロックを符号化するステップとを含む。
【０００８】
別の態様によれば、第２の方法が提供される。方法は、長方形ブロックのブロック形状に基づく方向に沿って並ぶ近隣の再構築されたブロックの少なくとも１つのサンプルに基づいて、長方形ブロックに属する映像サンプルを予測するステップと、予測された映像サンプルに基づいてイントラ予測を使用して長方形ブロックを復号するステップとを含む。
【０００９】
別の態様によれば、装置が提供される。装置は、メモリと、プロセッサとを含む。プロセッサは、前述の方法のいずれかを実行することによって、映像ブロックを符号化するか又はビットストリームを復号するように構成することができる。
【００１０】
少なくとも１つの実施形態の別の一般態様によれば、復号の実施形態のいずれかによる装置と、（ｉ）信号を受信するように構成されたアンテナであって、信号が映像ブロックを含む、アンテナ、（ｉｉ）映像ブロックを含む周波数の帯域に受信信号を制限するように構成されたバンドリミッタ、（ｉｉｉ）出力を表示するように構成されたディスプレイの少なくとも１つとを含むデバイスが提供される。
【００１１】
少なくとも１つの実施形態の別の一般態様によれば、説明される符号化の実施形態又は変形形態のいずれかに従って生成されたデータコンテンツを含む非一時的なコンピュータ可読媒体が提供される。
【００１２】
少なくとも１つの実施形態の別の一般態様によれば、説明される符号化の実施形態又は変形形態のいずれかに従って生成された映像データを含む信号が提供される。
【００１３】
少なくとも１つの実施形態の別の一般態様によれば、説明される符号化の実施形態又は変形形態のいずれかに従って生成されたデータコンテンツを含むようにビットストリームがフォーマットされる。
【００１４】
少なくとも１つの実施形態の別の一般態様によれば、命令を含むコンピュータプログラム製品であって、プログラムがコンピュータによって実行されると、命令が、説明される復号の実施形態又は変形形態のいずれかをコンピュータに実行させる、コンピュータプログラム製品が提供される。
【００１５】
一般態様のこれらの及び他の態様、特徴及び利点は、添付の図面と関連付けて読み進めるべきである例示的な実施形態の以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【００１６】
図面の簡単な説明
【図１】その上及び左の参照アレイを有する正方形ターゲットブロックを示す。
【図２】それらの上及び左の参照アレイを有する長方形ターゲットブロック（左側は横長のブロック、右側は縦長のブロック）を示す。
【図３】それらの上及び左の参照アレイを有する長方形ターゲットブロック（左側は横長のブロック、右側は縦長のブロック）を示す。
【図４】長方形ブロックの属性を示す。
【図５】長方形ブロックに対する予測方向の定義を示す。
【図６】上の参照アレイが２Ｗ＋１の長さを有し、左の参照アレイが２Ｈ＋１の長さを有することを示す。
【図７】同じブロック形状又はアスペクト比を有するブロックが同じ予測方向延いては同じmodeShiftを有することを示す。
【図８】−１３５度を超える垂直方向に対する角度パラメータＡの導出の例を示す。
【図９ａ】異なる方向と関連付けられたdirIndex（dir#として示される）を示す。
【図９ｂ】低減された予測方向の例を示す。
【図１０】実施形態１のルマブロックに対するエンコーダ及びデコーダフローグラフを示す。
【図１１】実施形態２のルマブロックに対するエンコーダ及びデコーダフローグラフを示す。
【図１２】本実施形態を適用することができる一般的な符号化の実施形態を示す。
【図１３】本実施形態を適用することができる一般的な復号の実施形態を示す。
【図１４】様々な態様及び例示的な実施形態が実装される例示的な通信チャネルのブロック図を示す。
【図１５】一般的に説明される態様の下での符号化のための方法の一実施形態を示す。
【図１６】一般的に説明される態様の下での復号のための方法の一実施形態を示す。
【図１７】一般的に説明される態様の下での符号化又は復号のための装置の一実施形態を示す。
【発明を実施するための形態】
【００１７】
詳細な説明
共同探査モデル（ＪＥＭ：Joint Exploration Model）として知られている新しい映像圧縮規格に対する共同映像探査チーム（ＪＶＥＴ：Joint Video Exploration Team）提案では、高圧縮性能のため、四分木二分木（ＱＴＢＴ）ブロック分割構造を受け入れることが提案されている。二分木（ＢＴ）のブロックは、中央で水平又は垂直に分割することによって、２つの等しいサイズのサブブロックに分割することができる。結果的に、ブロックが常に高さと幅が等しい正方形である四分木（ＱＴ）のブロックとは異なり、ＢＴブロックは、幅と高さが異なる長方形であり得る。ＨＥＶＣでは、角度イントラ予測方向は、４５度から１８０度の角度にわたる−１３５度まで定義されており、それらの方向はＪＥＭでも維持され、それにより、ターゲットブロック形状とは無関係に角度方向が定義付けられた。しかし、コード化木単位（ＣＴＵ）をＣＵに分割するアイデアはオブジェクト又はオブジェクトの一部を捕捉することであり、より高い圧縮効率に対して、ブロックの形状はオブジェクトの方向性と関連付けられるため、ブロック形状に従って、定義された予測方向を適応させることは有意義である。この文脈では、説明される一般態様は、長方形ターゲットブロックに対してイントラ予測方向を再定義することを提案する。
【００１８】
本明細書で説明される一般態様は、ＱＴＢＴ構造を用いてイントラ予測を改善することによって、従来の映像の圧縮性能を改善することを目的とする。本明細書で説明される一般態様は、ＣＵの形状に従ってイントラ予測方向を適応させることを提案する。ＣＵの形状が正方形である場合は、ＪＥＭで既に定義されている方向は変わらないままである。そうでなければ、ＣＵの形状に従って探索方向が修正される。しかし、任意のＣＵに対する角度方向の総数は変わらないままである。予測方向をブロック形状に適応させる目的は、現在定義されている予測方向（ブロック形状とは無関係な方向）の集合にわたって予測精度を改善することである。
【００１９】
その上、ターゲットＣＵに対する予測方向の総数は変わらないままであるため、ＭＰＭ（最確モード）集合を使用する予測モードの符号化及び復号は変わらないままである。しかし、異なる形状を有するＣＵは定義された異なる方向集合を有するため、近隣のブロックの予測モードは、ターゲットブロックの予測モードにマッピングされる。マッピングは、モードの再インデックス付けでしかなく、実際の予測方向は変わらない。
【００２０】
ＨＥＶＣ（高効率映像コード化、Ｈ．２６５）では、映像シーケンスのフレームの符号化は、四分木（ＱＴ）ブロック分割構造に基づく。フレームは、正方形コード化木単位（ＣＴＵ）に分割され、ＣＴＵはすべて、レート歪み（ＲＤ）基準に基づいて、複数のコード化単位（ＣＵ）への四分木に基づく分割が行われる。各ＣＵは、イントラ予測される（すなわち、因果関係を示す近隣のＣＵから空間的に予測される）か又はインター予測される（すなわち、既に復号済みの参照フレームから時間的に予測される）。Ｉスライスでは、すべてのＣＵがイントラ予測されるのに対して、Ｐ及びＢスライスでは、イントラ予測されても、インター予測されてもよい。イントラ予測の場合、ＨＥＶＣは、３５個の予測モードを定義し、１つの平面モード（モード０としてインデックス付けされる）、１つのＤＣモード（モード１としてインデックス付けされる）及び３３個の角度モード（モード２〜３４としてインデックス付けされる）を含む。角度モードは、時計回りの方向に４５度〜−１３５度の範囲を有する予測方向と関連付けられる。ＨＥＶＣは四分木（ＱＴ）ブロック分割構造をサポートするため、すべての予測単位（ＰＵ）は、正方形である。従って、４５度〜−１３５度の予測角度の定義は、ＰＵ（予測単位）形状の視点から正当化される。Ｎ×Ｎの画素サイズのターゲット予測単位の場合、上の参照アレイ及び左の参照アレイは、各々が２Ｎ＋１個のサンプルサイズであり、そのサイズは、すべてのターゲット画素に対する前述の角度範囲をカバーするために必要とされるものである。ＰＵの高さと幅の長さは等しいものであることを考慮すると、２つの参照アレイの長さが等しいことは道理にかなっている。
【００２１】
次世代の映像コード化規格の場合、共同探査モデル（ＪＥＭ）としてのＪＶＥＴの試みにより、平面及びとＤＣモードに加えて、６５個の角度イントラ予測モードを使用することが提案される。しかし、予測方向は、同じ角度範囲（すなわち、時計回りの方向に４５度〜−１３５度の範囲）にわたって定義される。Ｗ×Ｈの画素サイズのターゲットブロックの場合、上の参照アレイ及び左の参照アレイは、各々が（Ｗ＋Ｈ＋１）個の画素サイズであり、そのサイズは、すべてのターゲット画素に対する前述の角度範囲をカバーするために必要とされるものである。ＪＥＭにおけるこの角度の定義は、他の任意の特別な理由のためにというよりも、簡単にすることを目的として行われた。しかし、そうすることで、いくつかの非効率性が導入された。
【００２２】
ＪＥＭでは、より高い圧縮性能のため、四分木構造のみの代わりに、四分木二分木（ＱＴＢＴ）ブロック分割構造を使用することが提案されている。常に正方形であるＱＴブロックとは異なり、ＢＴブロックは、水平又は垂直二分割により、幅と高さが異なる長方形であり得る。現在のＪＥＭコードでは、長方形ブロックのアスペクト比は、２：１から８：１まで様々であり得る。従って、異なる角度予測モードのアイデアは、異なるオブジェクト方向性を捕捉することであり、ＣＴＵをＣＵに分割するアイデアは、そのような方向性を有するオブジェクト又はオブジェクトの一部を捕捉することである。従って、ターゲットブロックの形状は、ブロックのオブジェクトの方向性に構造的に関連する。ブロックの形状が長方形である場合は、ある予測方向の方が他の予測方向より起こる可能性が高くなり得る。従って、予測方向の定義は、ターゲットブロック形状とは無関係である（ＪＥＭに当てはまる）というものであってはならない。
【００２３】
正方形ブロックの事例では、構造対称性が存在する。正方形ブロックは、図１に見られるように、高さと幅の両方に沿って対称であるのみならず、２つの参照アレイに対しても対称的に配置される。
【００２４】
図１は、その上及び左の参照アレイを有する正方形ターゲットブロックを示す。ターゲットブロックは、２つの参照アレイに対して対称的に配置される。予測方向は、時計回りの方向に４５度〜−１３５度の範囲で定義され、モード２は、４５度の角度に相当し、モード６６は、−１３５度の角度に相当する。
【００２５】
長方形ブロックの事例では、現在定義されている方向に関してそうはならない。ブロックが横長（すなわち、Ｗ＞Ｈ）である場合、ブロックは、上の参照アレイにさらに近づいて配置され、非対称的である。同様に、ブロックが縦長（すなわち、Ｗ＜Ｈ）である場合、ブロックは、左の参照アレイにさらに近づいて配置され、非対称的である。この非対称性は、図２に示されている。
【００２６】
図２は、それらの上及び左の参照アレイを有する長方形ターゲットブロック（左側は横長のブロック、右側は縦長のブロック）を示す。ターゲットブロックは、２つの参照アレイに対して非対称的に配置される。
【００２７】
この非対称性の結果、定義された角度が原因で、いくつかの予測モードに対して、さらに遠くの参照アレイからターゲット画素が予測されるのに対して、さらに近くの参照アレイが除外されることになる。これは、図３に示されている。
【００２８】
図３は、それらの上及び左の参照アレイを有する長方形ターゲットブロック（左側は横長のブロック、右側は縦長のブロック）を示す。左側では、ターゲット画素Ａは、水平予測方向において左の参照アレイ上に予測因子サンプルＬを有する。上の参照アレイ上のサンプルＴの方が近いが、垂直予測方向（ＴがＡに対する予測因子サンプルとなり得る）は、ＪＥＭでは認められていない。右の図は、縦長のブロックのターゲット画素に対する類似した事例を示す。
【００２９】
ブロックが横長又は縦長になるほど（すなわち、長い方の辺と短い方の辺との比率が高くなるほど）、この非対称性は、より顕著になる。予測の不正確性のため、実際のテスト結果に見られるように、そのような予測モードの可能性は低くなる。
【００３０】
現在定義されている方向の非効率性に対する別の議論は、水平方向と垂直方向において予測方向の数が等しいことである。ＪＥＭでは、対角線モード（モード３４）を除外すると、水平方向と垂直方向の両方に３２個のモードがある。正方形のＣＵの場合、高さと幅は等しく、水平方向と垂直方向の両方に沿って同じ数の予測モードを有することは道理にかなっている。ブロックが、一方が他方より長い長方形である場合、単純に長い方の辺において構造上の方向性の数がより高い可能性があることを理由に、長い方の辺の予測方向の数の方が高いはずである。横長のブロックの場合、垂直モード数と水平モード数との比率は、幅と高さの比率ほどであるはずである。同様に、縦長のブロックの場合、水平モード数と垂直モード数との比率は、高さと幅の比率ほどであるはずである。関連する考慮すべき点は、参照アレイの長さである。正方形のＣＵの場合、高さと幅は等しく、参照アレイが同じ長さを有することは道理にかなっている。しかし、長方形ブロックの場合、直観的に、高さより幅の方が大きい場合は、上の参照アレイの方が左の参照アレイより多くのサンプルを有するはずである。
【００３１】
同様に、幅より高さの方が大きいブロックの場合は、左の参照アレイの方が上の参照アレイより多くのサンプルを有するはずである。この直観は、横長の（縦長の）長方形ブロックが水平（垂直）方向に沿ってより多くのサンプル又は情報を有するという事実に基づく。同様に、縦長の長方形ブロックは、垂直方向に沿ってより多くのサンプル又は情報を有する。従って、４５度〜−１３５度の範囲の現在定義されている方向（水平方向と垂直方向において等しい数の予測モード及び等しい長さの参照アレイをもたらす）は、長方形ブロックに対してやや非効率的である。
【００３２】
上記の問題を解決し、長方形ブロックの予測効率を高めるため、以下では、様々なブロック形状に対する角度予測モードを定義してインデックスを付けるための組織的な方法が提示される。次いで、次のセクションでは、このモード定義をサポートするための予測モードコード化における提案される変更を提示する。
【００３３】
ＪＥＭでは、ＢＴ（二分木）ターゲットブロックは、それらの幅及び高さの長さに応じて異なる形状を有し得る。ブロック形状に依存するモードを定義するため、以下では、一般的な方法が提示される。この方法では、任意のブロックに対する予測モードの数は、ＪＥＭと同じままであるが、予測方向は、異なる形状のブロックに対して異なり得る。それに、正方形ブロックは、等しい高さ及び幅を有する単なる特別な事例であり、この事例では何も変わらない。言い換えれば、正方形ターゲットブロックの場合、予測モード及び関連予測方向は変わらないままである。
【００３４】
長方形は、図４に示されるように、その幅Ｗ及び高さＨによって定義される。図に示されるように、Ａ、Ｂ、Ｃ、Ｄがその４つの頂点を示す場合は、ＡＣはその主対角線であり、ＢＤはその副対角線である。正方形は、Ｗ＝Ｈである特別な長方形である。図４は、長方形ブロックの属性を示す。
【００３５】
幅Ｗ及び高さＨの任意のターゲットブロックに対し、図５に示されるように、副対角線に沿って、モード２は、頂点Ｄから頂点Ｂへ向かう方向と関連付けられ、モード６６は、頂点Ｂから頂点Ｄへ向かう方向と関連付けられる。対角線モードは、主対角線に沿って、頂点Ａから頂点Ｃへ向かう方向と関連付けられる。モード２から対角線モードまでのすべてのモードは、左モードと呼ばれる。同様に、対角線モードからモード６６までのすべてのモード（対角線モードを含む）は、上モードと呼ばれる。左モードは、水平方向と関連付けられる。同様に、上モードは、垂直方向と関連付けられる。水平モード又は純粋な水平モードは、ゼロ度の角度に相当する左モードである。垂直モード又は純粋な垂直モードは、−９０度の角度に相当する上モードである。
【００３６】
図５は、長方形ブロックに対する予測方向の定義を示す。モード２は、頂点Ｄから頂点Ｂへ向かう副対角線に沿ったものである。モード６６は、モード２の反対方向に沿ったものである。対角線モードは、頂点Ａから頂点Ｃへ向かう主対角線に沿ったものである。
【００３７】
図６は、上の参照アレイが２Ｗ＋１の長さを有し、左の参照アレイが２Ｈ＋１の長さを有することを示す。幅Ｗ及び高さＨは、図６の白ブロックの寸法である。
【００３８】
これらの予測方向をサポートするため、２Ｗ＋１の長さを有する上の参照及び２Ｈ＋１の長さを有する左の参照は、図６に示されるように定義される。正方形ブロックの事例では、図は、図１のものと同一であり、Ｗ＝Ｈ＝Ｎである。
【００３９】
横長のブロックの場合、上の参照の長さは、左の参照アレイの長さより大きいことに留意されたい。従って、左モードと比べて、上モードの数も大きい。同様に、縦長のブロックの場合、その逆が当てはまる。その事例では、左の参照の長さは、上の参照アレイの長さより大きい。
【００４０】
その上、ブロックの場所は参照アレイに対して対称である。ターゲットブロックが正方形である場合、完全な対称性が存在し、予測方向及び参照アレイの長さは、図１のように、ＪＥＭ定義と正確にマッチする。
【００４１】
上記の定義の美点は、ブロック形状との予測方向の適応性である。ここでは、モード２及び６６は、４５度の角度及び−１３５度の角度に沿った方向に相当するようには定義されず、むしろ、副対角線に沿った方向に相当するように定義されることに留意されたい。横長のブロックの事例では、４５度を含むその近辺のいくつかの方向は除去されるが、−１３５度の角度を超える真逆の方向では等しい数の方向が追加される。同様に、縦長のブロックの事例では、−１３５度を含むその近辺のいくつかの方向は除去されるが、４５度の角度を超える真逆の方向では等しい数の方向が追加される。４５度の角度からのモード２のオフセットを「modeShift」と呼ぶことにし、「modeShift」は、除去されたモードの数（モード２と４５度の角度との間）又は言い換えれば追加されたモードの数（−１３５度の角度とモード６６との間）として定義される。横長のブロックは正のmodeShiftを有するのに対して、縦長のブロックは負のmodeShiftを有する。正方形ブロックの場合、modeShiftは０に等しい。
【００４２】
ブロックのmodeShiftは、正方形ブロックの開始モードに対するその開始モード（モード２である）のオフセットを表す。明確には、modeShiftは、ブロックの形状の関数である。行うべき重要な観察は、ブロックのmodeShiftがその幅及び高さの絶対値に依存せず、むしろ、それらの比率に依存することである。これは、図７に示されている。長方形ＡＢＣＤ（幅Ｗ１及び高さＨ１）と長方形ＥＦＧＨ（幅Ｗ２及び高さＨ２）は、同じ予測方向（従って、同じmodeShift）を有する。三角形の類似性を使用することにより、Ｗ１／Ｗ２＝Ｈ１／Ｈ２であることが分かる。従って、Ｗ１／Ｈ１＝Ｗ２／Ｈ２である。従って、同じ比率の幅と高さ（又は逆も同様）を有するブロックは、水平方向と垂直方向の両方において同じ予測モードを有する。
【００４３】
図７は、同じアスペクト比（幅と高さの比率）を有するブロックが同じ予測方向延いては同じmodeShiftを有することを示す。
【００４４】
モード番号（２〜６６）は、予測方向に対する単なるインデックス又はラベルである。対応する方向は、ＨＥＶＣ及びＪＥＭにおいて、角度パラメータＡによって指定される。ＪＥＭにおける異なる予測モードに対するＡの値は、表１に示されている。
【００４５】
４５度又は−１３５度の角度を超えて導入される方向に対する角度パラメータは、反対方向の角度パラメータから容易に導出することができる。図８を考慮すると、ターゲット画素は、−１３５度の角度を超える予測方向に沿って垂直方向に予測される。ブロックの幅及び高さをＷ及びＨで示すものとする。ターゲット画素の座標を（ｘ，ｙ）と示し、式中、０≦ｘ＜Ｗ及び０≦ｙ＜Ｈである。ターゲットサンプルからの上の参照アレイ上の予測因子サンプルの水平変位は、Δｘによって与えられる。予測方向が左の参照アレイと交差するように拡張されれば、ターゲットサンプルからの交点の垂直変位は、Δｙとして与えられる。
【００４６】
図８は、−１３５度を超える垂直方向に対する角度パラメータＡの導出の例である。Δｘは、（ｘ，ｙ）のターゲット画素に対する予測因子の水平変位である。予測が反対方向である（水平方向である）とすれば、予測因子は、垂直変位Δｙを有することになる。
【００４７】
三角形の類似性を使用することにより、
【数１】
2021523588.tif 000003
が得られる。
【００４８】
【表１】
2021523588.tif 000004
【００４９】
【表２】
2021523588.tif 000005
【００５０】
ＪＥＭで使用されるように、ここでは、計算において、最も近い２つのサンプルの間の距離は（１／３２）サンプル解像度を使用すると（１＜＜５）であるという事実を使用した。これを簡素化することにより、
ΔｘΔｙ＝（（１＋ｘ）（１＋ｙ）＜＜１０）
が得られる。
【００５１】
予測角度は、Δｙ＝（１＋ｘ）Ａを有する水平方向とは逆であり、Ａは、水平方向に対する角度パラメータの値を示す。上記の方程式に代入すると、
【数２】
2021523588.tif 000006
が得られる。
【００５２】
従って、垂直方向に対する角度パラメータは、
【数３】
2021523588.tif 000007
として得られ、式中、Ａは、反対方向の角度パラメータである。Ａは整数値しか有さないため、上記の式は、小数値のＡｎをもたらし得る。従って、値を四捨五入して最も近い整数にすると、
【数４】
2021523588.tif 000008
が得られる。
【００５３】
４５度の角度を超える水平方向について考慮した場合は、同じ式が得られることになる。
【００５４】
その事例では、Ａは、反対の垂直方向の角度パラメータを示すことになる。ＢＴブロックの形状に関係なく、ブロックが長方形である場合は、新しく導入される方向は、除去される方向とは真逆である（四捨五入の範囲内）ことに留意されたい。従って、除去される方向のＡパラメータは、新しく導入される反対方向のＡパラメータを演算するために使用することができる。除去される方向と新しく導入される方向は両方とも、常に正（正の水平方向又は正の垂直方向）である。従って、それらは、正のＡパラメータ値を有する。表２は、上記で演算されるようなＪＥＭにおける正のＡ値及び対応するＡｎの値をリストする。
【００５５】
表２からの値を使用することにより、以下では、異なる横長のブロック形状に対する角度パラメータが得られる。縦長のブロックに対する角度パラメータは、類似した方法で導出することができるが、ここでは示さない。表を指定する前に、留意すべき点が２つある。第１に、上記の表に見られるように、ＪＥＭは、離散的な角度方向に対する角度を指定する。従って、開始及び終了方向は、副対角線と正確にはマッチしない可能性がある。同様に、一方向は、対角線方向と正確にはマッチしない可能性がある。この事例では、ＪＥＭにおける指定方向を変更することなく、提案される方法は、この目的のために最も近い方向を取り入れる。第２に、ＪＥＭでは、ＢＴブロックに対し、大きい方の辺と小さい方の辺との長さの比率は、１、２、４、８の値のみを有し得る。比率が１に等しい際は、それは正方形ブロックであり、この事例では、方向は変わらないままである。従って、以下では、Ｗ／Ｈ（幅／高さ）が２、４、８のみに等しいモード番号に対するブロックのＡ値が提示される。Ｗ／Ｈ値が増加するにつれて、水平方向の数は減少し、垂直方向の数は増加する。従って、Ｗ／Ｈ＝４に対し、Ｗ／Ｈ＝２からの垂直方向を再利用し、Ｗ／Ｈ＝８に対し、Ｗ／Ｈ＝４からの垂直方向を再利用する。これらは、表では太字体で示されている。慣習により、垂直方向に対角線モードが含まれる。ＪＥＭ又は任意の規格の今後の変更において認められる可能性がある１６や３２などのより高いＷ／Ｈ比率の場合も同様の手法を取れることに留意されたい。
【００５６】
事例１：Ｗ／Ｈ＝２
modeShift＝６
水平方向（左モード）の数＝２０
垂直方向（上モード）の数＝２＊６＋３３＝４５
【００５７】
表３では、モード２２〜２７に相当する方向は、ＪＥＭで既に定義されており、水平方向であることに留意されたい。ここでは対角線方向はモード２２に相当するため、ここではそれらの方向は、垂直方向にグループ分けされている。ブロックの上端に沿った変位の観点から、Ａパラメータ値を再計算する必要があった。
【００５８】
事例２：Ｗ／Ｈ＝４
modeShift：１０
水平方向（左モード）の数＝１２
垂直方向（上モード）の数＝２＊４＋４５＝５３
【００５９】
【表３】
2021523588.tif 000009
【００６０】
【表４】
2021523588.tif 000010
【００６１】
表４では、モード１４〜１７に相当する方向は、ＪＥＭで既に定義されており、水平方向であることに留意されたい。ここでは対角線方向はモード１４に相当するため、ここではそれらの方向は、垂直方向にグループ分けされている。
【００６２】
事例３：Ｗ／Ｈ＝８
modeShift：１２
水平方向（左モード）の数＝８
垂直方向（上モード）の数＝２＊２＋５３＝５７
【００６３】
表５では、モード１０、１１に相当する方向は、ＪＥＭで既に定義されており、水平方向であることに留意されたい。ここでは対角線方向はモード１０に相当するため、ここではそれらの方向は、垂直方向にグループ分けされている。
【００６４】
表に見られるように、モードインデックスは、ブロック形状に関係なく、２〜６６の間で常に変化する。しかし、異なるブロックの場合、同じモードインデックスは、異なる予測方向に相当し得る。従って、それらを区別するため、ここでは、以下の通り定義されるdirIndexと呼ばれるパラメータを導入することが提案される。
dirIndex＝modeIndex＋modeShift−２………（１）
【００６５】
dirIndexは、１つの予測方向にのみ相当し、その逆も同様である。表６は、異なるターゲットブロック形状に対するdirIndexの範囲をmodeShift値と共に示す。
【００６６】
図９ａは、方向インデックスで（dir#として）指定された予測方向を示す。１８０度より大きい角度に広がる合計で８９個の想定される予測方向がある。方向の総数は６５より大きいが、任意の所定のターゲットブロックの場合、予測のために６５個の隣接する方向のみがチェックされる。これらの６５個の方向は、線に沿って１８０度に広がる。垂直又は水平方向においてより多くの又はより少ない数の方向をチェックするため、方向は、ターゲットブロックサイズと適応させる。
【００６７】
予測方向のＪＥＭ定義では、たった１つの方向対（dir#0とdir#64）しか存在せず、それらの方向は、互いに真逆である。ここでは、真逆の様々な方向対が存在することに留意されたい。
【００６８】
【表５】
2021523588.tif 000011
【００６９】
【表６】
2021523588.tif 000012
【００７０】
インデックスが０以下又は６４以上の任意の方向の場合、反対方向は、想定されるすべての方向の集合に含まれる。しかし、任意の所定のターゲットブロックの場合、モード２とモード６６に相当する方向のみが反対方向である。dirIndexが０以下の方向は、４５度の角度を超える正の水平方向に相当し、正のＡ値を有する。同様に、dirIndexが６４以上の方向は、−１３５度の角度を超える正の垂直方向に相当し、正のＡ値を有する。
【００７１】
図９ａは、異なる方向と関連付けられたdirIndex（dir#として示される）を示す。正方形ブロックの場合、dirIndexは、４５度から−１３５度までで定義される６５個の方向に相当する０から６４まで様々である。横長のブロックの場合、形状に応じて、dirIndexは、いくつかの垂直方向に対して６４より大きい。同様に、縦長のブロックの場合、形状に応じて、dirIndexは、いくつかの水平方向に対して０より小さい。
【００７２】
また、方向の数は、制限することも、上記で提示される数を超えて拡大することもできる。図９ｂの３３個のＨＥＶＣ方向の仮定の事例を考慮し、対角線モードに最も近い２つのモードに演算を制限する。この事例では、ブロック幅がその高さより大きい場合は、モード２及びモード３は、水平モードから除去されることになる。それに加えて、モード３及びモード４は、従来のモードを使用するか又は新しく作成されたモード３５及びモード３６による反転した広角度方向を使用するかを示す追加のフラグを有することになり、新しい垂直モードは、新しい予測方向を説明する。
【００７３】
角度パラメータＡの上記の定義では、ブロック形状に従って対角線方向が変更されている。しかし、これは、必須要件ではない。対角線モードの変更は、いくつかの負の水平方向を負の垂直方向に変換するだけであり、その逆も同様である。変換により、新しい角度パラメータＡｎを有する広角度として新しい方向が作られる。角度パラメータＡｎの導出には四捨五入を伴うため、これらの角度は、変換前のオリジナルの負の方向と関連付けられたオリジナルの角度と同一ではない可能性がある。しかし、それらは非常に近くなる。従って、対角線モードの変更は、本質的には、それほど大きな性能向上にはつながらない。重要なのは、正の方向（横長のブロックの場合は正の垂直方向、縦長のブロックの場合は正の水平方向）における広角度であり、それは、いくつかの既存の正の方向（横長のブロックの場合は正の水平方向、縦長のブロックの場合は正の垂直方向）を置き換えるために追加される。従って、すべての実用的な目的のため、オリジナルの対角線方向は、そのままにしておくことができる。表３、表４及び表５では、この変換により、関与するモードは、垂直側から水平側に移動され、それらのＡ値は、古いＡ値に置き換えられる。これは、すべての表において、水平モードの最後の列が２９に等しいＡ値を有し、垂直モードの第１列が−３２に等しいＡ値を有することを意味する。また、対角線モードを変えないでおくことは、横長のブロックの場合は−１３５度を超えるところにのみ及び縦長のブロックの場合は４５度を超えるところにのみ新しい広角度方向を追加するという目標とも一致する。様々なＷ／Ｈ比率の表は、以下の表３−ｂ、表４−ｂ及び表５−ｂに提示されている。
【００７４】
【表７】
2021523588.tif 000013
【００７５】
【表８】
2021523588.tif 000014
【００７６】
【表９】
2021523588.tif 000015
【００７７】
新しい予測方向をサポートするため、参照アレイの長さを調整する必要がある。先に述べたように、提案される予測方法を用いると、上の参照アレイの長さは２＊Ｗ＋１であり、左の参照アレイの長さは２＊Ｈ＋１であり、式中、Ｗ及びＨは、ターゲットブロックの幅及び高さを示す。しかし、異なるブロック形状に対して定義された方向はブロック形状と正確にはマッチしないため、さらに数個のサンプル分だけ短い方の参照アレイを拡張する必要がある。長い方の参照アレイサイズは、その側での定義された方向をサポートするのに十分である。これは以下で説明される。
【００７８】
Ｗ＞Ｈの第１の事例を考慮する。表３、表４及び表５を参照すると、モードインデックス２に対応する角度パラメータＡは（（Ｈ＊３２）／Ｗ）＋１に等しいことが指摘されている。従って、Ｗ／Ｈが２、４、８に等しい場合は、角度パラメータＡは、１７、９、５にそれぞれ等しい。所定の値のＡに対し、任意の行に沿ったＷ個のサンプルに対する予測をサポートするための参照アレイの部分は、（Ａ＊Ｗ＋３１）＞＞５に等しい。上記の角度と共に、これをターゲットブロックの最後の行に適用すると、左の参照アレイ上に１＋Ｈ＋（（Ａ＊Ｗ＋３１）＞＞５）個の参照サンプルを有する必要がある。従って、左の参照アレイにおいて必要な拡張は、
Ｈ＿Ｅｘｔ＝１＋Ｈ＋（（Ａ＊Ｗ＋３１）＞＞５）−（１＋２＊Ｈ）＝（（Ａ＊Ｗ＋３１）＞＞５）−Ｈ
として得られる。
モード２に対応するＡの値を代入すると、上記の式は、以下の通り簡素化することができる。
Ｈ＿Ｅｘｔ＝（Ｗ＋３１）＞＞５
異なるブロックサイズに対するＨ＿Ｅｘｔの値は、以下で得られる。ここでは、ＪＥＭで使用されるように、１２８個の最大ブロックサイズが想定される。また、（Ｗ／Ｈ）の最大値が８に等しいことも想定される。
【００７９】
【表１０】
2021523588.tif 000016
【００８０】
Ｈ＞Ｗの場合、上の参照は、さらに数個のサンプル分だけ拡張する必要がある。サンプルの数は、類似した方法で推測することができる。
Ｗ＿Ｅｘｔ＝１＋Ｗ＋（（Ａ＊Ｈ＋３１）＞＞５）−（１＋２＊Ｗ）＝（（Ａ＊Ｈ＋３１）＞＞５）−Ｗ
角度パラメータＡの対称性のため、Ａの値は、ここでは、Ｗ＞Ｈの事例のものと同一である。モードインデックス６６に対応する角度パラメータは、（（Ｗ＊３２）／Ｈ＋１に等しくなる。この値を使用すると、上記の式は、以下の通り簡素化することができる。
Ｗ＿Ｅｘｔ＝（Ｈ＋３１）＞＞５
異なるブロックサイズに対するＷ＿Ｅｘｔの値は、以下で得られる。ここでは、ＪＥＭで使用されるように、１２８個の最大ブロックサイズが想定される。また、（Ｈ／Ｗ）の最大値が８に等しいことも想定される。
【００８１】
【表１１】
2021523588.tif 000017
【００８２】
Ｈ＿Ｅｘｔ及びＷ＿Ｅｘｔの拡張値は、より高い幅と高さの比率又は高さと幅の比率に対して同じ方法で計算することができる。
【００８３】
上記の拡張は、短い方の参照アレイにおいて必要な追加のサンプルの最小数である。しかし、実装形態の利点を得るため、最低限必要な参照サンプルにさらなる数を加えて、すべての予測角度をサポートすることが好ましい場合がある。以下では、いくつかの変形形態を提供する。
【００８４】
一変形形態では、上又は左の参照アレイのサンプルの数は、２＊ｍａｘ（Ｗ，Ｈ）＋１に等しく、Ｗ≧Ｈの場合は、ｍａｘ（Ｗ，Ｈ）＝Ｗであり、それ以外は、ｍａｘ（Ｗ，Ｈ）＝Ｈである。
【００８５】
別の変形形態では、上の参照アレイのサンプルの数は、Ｗ＋ｍａｘ（Ｗ，Ｈ）＋１であり、左の参照アレイのサンプルの数は、Ｈ＋ｍａｘ（Ｗ，Ｈ）＋１に等しい。
【００８６】
長い方の参照アレイのサンプルの数は十分条件だが必ずしも必要条件ではない。いくつかの事例では、いかなる予測モードに対しても使用されないいくつかの冗長サンプル長い方の参照アレイがある。従って、長い方の辺の参照サンプルの数を低減することが可能である。別の変形形態では、Ｗ＞Ｈの場合は、左の参照上のサンプル数は（２＊Ｈ＋１＋ｄ＿ｈ）に等しく、上の参照アレイ上のサンプルの数は（２＊Ｗ＋１−ｄ＿ｈ）に等しく、パラメータｄは、ブロックサイズに依存する。例えば、Ｗ＝８及びＨ＝４の場合は、ｄ＿ｈ＝０であり、それ以外は、ｄ＿ｈ＝Ｈ＿ｅｘｔである。Ｈ＞Ｗの場合は、左の参照上のサンプル数は（２＊Ｈ＋１−ｄ＿ｗ）に等しく、上の参照アレイ上のサンプルの数は（２＊Ｗ＋１＋ｄ＿ｗ）に等しく、パラメータｄ＿ｗは、ブロックサイズに依存する。例えば、Ｈ＝８及びＷ＝４の場合は、ｄ＿ｗ＝０であり、それ以外は、ｄ＿ｗ＝Ｗ＿ｅｘｔである。この変形形態は、両方の参照アレイ上のサンプルの総数（左上のサンプルの重複なしで）は約２＊Ｗ＋２＊Ｈ＋１のままであり、それは正方形ターゲットブロックに対する参照サンプルの総数に等しいという利点を有する。
【００８７】
ハードウェア又はシステム制約によって広角度の数が特定の最大値に限定される事例では、追加のサンプルの必要数は、モードインデックス２に対応する角度パラメータ（Ｗ＞Ｈの場合）又はモードインデックス６６に対応する角度パラメータ（Ｈ＞Ｗの場合）を使用する上記で与えられる方法と同じ方法で正確に計算することができる。「CE3-related: Wide angle intra prediction for non-square blocks, JVET-K0500, Ljubljana, SI, 10−18 July 2018」では、広角度の最大数は１０であり、それは、Ｗ／Ｈ＝４又はＨ／Ｗ＝４に相当する。より高い値のＷ／Ｈ（又はＨ／Ｗ）の場合、広角度の最大数は依然として１０であり、それらはＷ／Ｈ＝４（又はＨ／Ｗ＝４）に対するものと全く同じである。この制限により、拡張として短い方の参照辺において必要な追加の参照サンプルの総数は、単に４つのサンプルにとどまらない。例えば、４×３２ブロックの場合、追加のサンプルの数は、１の代わりに、５に等しい。同様に、ＪＥＭのランダムアクセス構成（Ｗ／Ｈ＝１６、３２をそれぞれ有する）で認められている４×６４及び４×１２８のサイズのブロック、追加のサンプルの数はそれぞれ、２及び４の代わりに、１４及び３２である。この事例では、以下の変形形態が提案される。
【００８８】
別の変形形態では、参照アレイの長さは、以下の通り計算することができる。
leftRefLength = (H << 1);
topRefLength = (W << 1);
If W > H 
leftRefLength += 4 if W/H <= 4;
else
leftRefLength += (W >> 2).
Else if H > W
topRefLength += 4 if H/W <= 4;
else
topRefLength += (H >> 2).
【００８９】
別の変形形態では、参照アレイの長さは、サンプルの総数が約１＋２＊Ｗ＋２＊Ｈとなるように計算することができる。
leftRefLength = (H << 1);
topRefLength = (W << 1);
If W > H 
Ext = 4 if W/H <= 4 
= (W >> 2) otherwise.
leftRefLength += Ext
topRefLength -= ((Ext >> 3) << 3).
Else if H > W
Ext = 4 if H/W <= 4 
= (H >> 2) otherwise.
topRefLength += Ext;
leftRefLength -= ((Ext >> 3) << 3).
【００９０】
上記の変形形態では、最大で６４×１２８又は１２８×６４の想定されるすべてのブロックサイズを考慮するために、４つの画素の拡張が使用されることに留意されたい。システム又はハードウェア制約によって最大ブロックサイズが制限される場合は、１又は２などのより小さい値を使用することができる。以下の変形形態は、短い方の参照辺において必要なサンプルの正確な最小数を使用する。
【００９１】
擬似コードにおける演算は整数演算であり、例えば、Ｗ／Ｈは１、２、４、８、１６、３２…のみ（すなわち、小数ではない）に等しいことに留意されたい。一変形形態では、参照アレイの長さは、以下の通り計算することができる。
leftRefLength = (H << 1);
topRefLength = (W << 1);
If W > H 
leftRefLength += (max(9,A) * W + 31) >> 5) - H;
where A = (32 * H)/W + 1.
Else if H > W
topRefLength += (max(9,A) * H + 31) >> 5) - W;
where A = (32 * W)/H + 1
【００９２】
上記の変形形態では、長い方の参照アレイの長さは変わっていない。別の変形形態では、参照アレイの長さは、以下の通り計算することができる。
leftRefLength = (H << 1);
topRefLength = (W << 1);
If W > H 
Ext = (max(9,A) * W + 31) >> 5) − H,
where A = (32 * H)/W + 1.
leftRefLength += Ext;
topRefLength -= ((Ext >> 1) << 1).
Else if H > W
Ext = (max(9,A) * H + 31) >> 5) − W,
where A = (32 * W)/H + 1.
topRefLength += Ext;
leftRefLength -= ((Ext >> 1) << 1).
【００９３】
広角度の最大数が上記のように制限される際は、Ｈ＿Ｅｘｔ（Ｗ＞Ｈの場合）又はＷ＿Ｅｘｔ（Ｈ＞Ｗの場合）は、以下の通り簡素化された形式で表現することができる。
If W > H, H_Ext = max(0,((W>>2) - H)) + ((W + 31) >> 5);
Else, if H >W, W_Ext = max(0,((H>>2) - W)) + ((H + 31) >> 5)
それらは、以下のように同等に表現することができる。
If W > H, H_Ext = ((W>>blockShapeRatio) - H) + ((W + 31) >> 5);
else, if H >W, W_Ext = ((H>>blockShapeRatio) - W)) + ((H + 31) >> 5)
where, blockShapeRatio = min(2, abs(log2(W)-log2(H))).
【００９４】
これらの簡素化された式を使用することにより、上記で与えられる２つの変形形態は、以下のように同等に表現することができる。一変形形態では、短い方の参照アレイのみが拡張される場合は、
leftRefLength = (H << 1);
topRefLength = (W << 1);
If W > H 
leftRefLength += ((W>>blockShapeRatio) - H) + ((W + 31) >> 5
Else if H > W
topRefLength += ((H>>blockShapeRatio) - W)) + ((H + 31) >> 5)
【００９５】
他の変形形態では、参照サンプルの総数が約１＋２＊Ｗ＋２＊Ｈとなるように、長い方の参照の長さも変更される。
leftRefLength = (H << 1);
topRefLength = (W << 1);
If W > H 
Ext = ((W>>blockShapeRatio) - H) + ((W + 31) >> 5)
leftRefLength += Ext;
topRefLength -= ((Ext >> 1) << 1).
Else if H > W
Ext = ((H>>blockShapeRatio) - W)) + ((H + 31) >> 5)
topRefLength += Ext;
leftRefLength -= ((Ext >> 1) << 1).
【００９６】
輝度に対する予測モードを符号化するため、最確モード（ＭＰＭ）の概念がＪＶＥＴにおいて維持される。因果関係を示す近隣のブロックの予測モード（利用可能であり、イントラ予測される場合）、平面及びＤＣ予測モード並びにいくつかの固定角度モード（垂直真下、水平真横、モード２、モード６６、モード３４など）を使用することにより、６つのモードのＭＰＭ集合が構築される。残りの予測モードは、１６個のモードの選択された集合及び４５個の残りのモードの集合に分割される。ターゲットブロックの予測モードがＭＰＭ集合に属する場合は、予測モードは、メンバーＭＰＭのインデックスで符号化される。ターゲットブロックの予測モードが選択された集合に属する場合は、予測モードは、４ビットで符号化される。そうでなければ、予測モードは、切り捨てバイナリコードで符号化される。
【００９７】
長方形ＢＴブロックに対する予測方向の提案される修正は、ＪＥＭと同じコード化スキームを維持するが、いくつかの変更を伴う。ターゲットブロックの因果関係を示す近隣のブロックは、異なる形状を有し得る。従って、それらのブロックは、異なる予測方向範囲を有し得る。その上、それらのブロックは、異なる予測方向と関連付けられたとしても、同じ予測モードを有し得る。これにより、ＭＰＭ集合の構築における問題が生じる。従って、第１のステップでは、近隣のブロックの予測モードが予測方向インデックス（dirIndex）を通じてターゲットブロックの予測モードにマッピングされる。
【００９８】
第２に、所定のターゲットブロックの場合、dirIndexは、６５個の隣接方向並びに平面及びＤＣモードしか有することができない。近隣のブロックの予測モードが０（平面）又は１（ＤＣ）である場合は、マッピングは行われず、ＭＰＭ集合への含有に対してモードがチェックされる。モードが１より大きい場合は、モードは、対応する方向インデックスにマッピングされる。方向インデックスがターゲットブロックに対する６５個の方向の範囲に属する場合は、ターゲットブロックに対する対応するモード数が、ＭＰＭ集合への含有に対してチェックされる。そうでなければ、反対方向に対応するモードが、ＭＰＭ集合への含有に対してチェックされる。方向がターゲットブロックの方向集合に属さない場合は、対応する広角度方向が集合に属さなければならないことに留意されたい。
【００９９】
方向へのモードのマッピングは、方程式１を使用して行われる。次いで、方向を考慮して、ターゲットブロックのモードへのマッピングは、以下の方程式を使用して行われる。
modeIndex＝dirIndex−modeShift＋２………（２）
この場合、ターゲットブロックのmodeShiftが使用される。方程式１からのdirIndexを使用すると、
modeIndexTB＝modeIndexNB＋modeShiftNB−modeShiftTB………（３）
が得られ、この場合、ＴＢ及びＮＢの添字はそれぞれ、ターゲットブロック及び近隣のブロックを示すために使用される。結果として得られたmodeIndexTBが０より小さいか又は６６より大きい場合は、それは、近隣のブロックのモードと関連付けられた方向がターゲットブロックに対する予測方向の集合に属さないことを含意する。この事例では、関連付けられた広角度方向が使用される。modeIndexTB＜０の場合は、それに６７を加えるか、又は、modeIndexTB＞６６の場合は、そこから６５を減じる。結果として得られたモードは、関連付けられた広角度方向と関連付けられる。
【０１００】
上記のマッピングを明確化するための２つの例は、以下に示されている。
【０１０１】
例１：ターゲットブロックは、Ｗ＝８及びＨ＝８を有する。その左の近隣のブロックは、Ｗ＝８及びＨ＝４並びに予測モードｍ＝２を有する。
【０１０２】
Ｗ／Ｈ＝２であるため、左の近隣のブロックに対するmodeShiftは６である。ターゲットブロックは正方形であり、そのmodeShiftは０である。従って、新しいmodeIndexは、ｍ＝２＋６−０＝８として得られる。
【０１０３】
例２：ターゲットブロックは、Ｗ＝４及びＨ＝３２を有する。その左の近隣のブロックは、Ｗ＝１６及びＨ＝４並びに予測モードｍ＝８を有する。
【０１０４】
Ｗ／Ｈ＝１６／４＝４であるため、左の近隣のブロックに対するmodeShiftは１０である。ターゲットブロックの場合は、Ｗ／Ｈ＝４／３２＝１／８である。そのmodeShiftは−１２であり、方向インデックスは−１２〜５２の範囲である。従って、新しいmodeIndexは、ｍ＝８＋１０−（−１２）＝３０として得られる。
【０１０５】
モード符号化プロセスの残りは変わらないままである。ＭＰＭ集合の６つのモードは別として、残りのモードは、１６個のモードの選択された集合及び４５個の残りのモードからなる集合に分割される。
【０１０６】
ターゲットブロックが正方形であっても、すべてが正方形であるとは限らない近隣のブロックの予測モードを有するＭＰＭ集合を構築するためにマッピングが必要であることに留意されたい。
【０１０７】
ＭＰＭの数が変化しても、近隣のブロックの予測モードがターゲットブロックの予測モード集合にマッピングされる限り、採用される予測モード符号化アルゴリズムは変わらないままであることに留意すべきである。
【０１０８】
クロマＣＵの場合もまた、少なくとも１つの実施形態は、ルマ及びクロマ成分木が別々である事例（すなわち、Ｉスライス）において直接モードを得るために、予測モードの同じリマッピングを行う。配列された近隣のルマＣＵの予測モードは、ターゲットクロマブロックのモードにリマッピングすることができる。
【０１０９】
イントラモードコード化に対するモードマッピングを避ける代替の方法は、オリジナルのモード及びそれらの関連付けられた方向を維持することである。この方法は、新しい方向に新しいモードインデックスを与えることによって行われ、この新しい方向は、広角度方向（すなわち、−１３５度又は４５度を超える方向）と呼ぶことができる。従って、例えば、モード６６を超える広角度方向には、６７、６８などのモードインデックスが与えられる。同様に、モード２を超える広角度方向には、−１、−２などのモードインデックスが与えられる（モード０及び１は既に平面及びＤＣモードと関連付けられているため）。これは、先に提供したdirIndexと同様であり、modeShiftを必要としない。この事例では、以下の通り、dirIndexとmodeIndexとの間に１対１のマッピングがある。
dirIndex≧０の場合は、modeIndex＝dirIndex＋２
dirIndex＜０の場合は、modeIndex＝dirIndex
【０１１０】
異なるブロック形状に対するmodeIndexの範囲の値は、表７に示されている。表から分かるように、所定のブロック形状値の場合、modeIndexの最大値は７８であり、最小値は−１２である。ここでは、ハードウェア又はシステム制約によって最大方向の数が特定の値に限定される場合は、modeIndex値の範囲を相応に決定できることに留意すべきである。例えば、「CE3-related: Wide angle intra prediction for non-square blocks, JVET-K0500, Ljubljana, SI, 10-18 July 2018」で提案されるように、−１３５度を超えるか又は４５度を超える追加方向の数が１０に限定される場合は、Ｗ／Ｈ＝８及び１／８の事例に対するdirIndex及びmodeIndexの範囲はそれぞれ、Ｗ／Ｈ＝４及びＷ／Ｈ＝１／４のものと同一である。
【０１１１】
【表１２】
2021523588.tif 000018
【０１１２】
dirIndexとmodeIndexは１対１の対応を有するため、ここでは、modeIndexのみを使用して作業することができる。
【０１１３】
追加される広角度方向は、除去されるいくつかのオリジナルの方向に対応するため、それらのmodeIndex値の間にも１対１の対応が存在する。一般的に言えば、ブロックのオリジナルのmodeIndex及び広角度のmodeIndexをそれぞれorigMode及びwaModeで示すものとする。０（平面モード）及び１（ＤＣモード）のmodeIndex値は角度モードに対応しないため、ここではそれらについて考慮しない。waModeの値は、以下の通り、origMode値から得られる。
If W > H and origMode < 2 + modeShift,
waMode = origMode + 65
Else, if H > W, and origMode > 66 - modeShift,
waMode = origMode - 67
else
waMode = origMode
【０１１４】
角度パラメータＡ（ＪＥＭコードのintraPredAngle）とmodeShiftは関連するため、上記のマッピングは、以下のように同等に行うことができる。
If W > H and intraPredAngle > ( ( 32 * H / W ) + 1 ) and origMode < 34
waMode = origMode + 65
Else, if H >W and intraPredAngle > ( ( 32 * W / H ) + 1 ) and origMode > 34
waMode = origMode - 67
else
waMode = origMode
【０１１５】
上記の広角度マッピングは、除去されたすべてのモードが反対方向に近いモードに置き換えられることを確認する。例えば、Ｗ／Ｈ＞１の横長のブロックの場合、モード２は、モード６７に置き換えられる。モード６７は、モード２の反対方向（モード６６である）に最も近い広角度方向である。除去されないそれらのモードは、マッピングの後も同じmodeIndex値のままである。
【０１１６】
「CE3-related: Wide angle intra prediction for non-square blocks, JVET-K0500, Ljubljana, SI, 10-18 July 2018」のように広角度の数が１０に限定される際は、マッピングは、以下の通り得ることができる。
If W > H and origMode < 2 + min(10, modeShift),
waMode = origMode + 65
Else, if H > W and origMode > 66 - min(10, modeShift),
waMode = origMode - 67
else
waMode = origMode
或いはそれと同等に、
If W > H and intraPredAngle > max (9, (( 32 * H / W ) + 1 )) and origMode < 34
waMode = origMode + 65
Else, if H > W, and intraPredAngle > max(9, ( ( 32 * W / H ) + 1 )) and origMode > 34
waMode = origMode - 67
else
waMode = origMode
のように得ることができる。
【０１１７】
また、これは、以下のように同等に得ることができる。
blockShapeRatio = min(2, abs(log2(W) - log2(H)));
If W > H, and origMode < 2 + ((blockShapeRatio << 2) + 2)
waMode = origMode + 65
else if H > W and origMode < 66 - ((blockShapeRatio << 2) + 2) 
waMode = origMode - 67
else
waMode = origMode
【０１１８】
また、上記のマッピングは、６５個のオリジナルの角度モードに対し、上記の広角度マッピングの後に６５個の一意の角度モードが存在することも確認する。これは、一意のマッピングのみならず、除去される方向の集合と追加される広角度方向の集合との間において可能な様々な他のマッピングも存在することに留意されたい。しかし、上記のマッピングは、追加される広角度モードが、除去されるモードの反対方向に近くなるようにする。
【０１１９】
上記の方法は、以前に説明されるように、イントラモードコード化の間に近隣のブロックのモードインデックスのマッピングを避ける上で間接的に役立つ。広角度モードインデックスへのオリジナルのモードインデックスのマッピングは、予測ステップでのみ行われる。エンコーダ側では、予測ステップに続くイントラモードコード化は、広角度モードインデックスの代わりに、オリジナルのモードインデックスを使用する。同様に、デコーダ側では、予測ステップに先行するイントラモード復号は、オリジナルのモードインデックスを使用するが、予測ステップにおいて広角度モードインデックスへのマッピングが行われる。
【０１２０】
本技法は、幅と高さの比率が［１／８，８］の範囲である長方形ブロック形状について考慮している。しかし、より大きな範囲の幅と高さの比率まで非常に簡単に原理を拡張できることに留意すべきである。表８は、より高い値のブロック形状比率に対するmodeIndex値を含む。この事例では、−１３５度又は４５度を超える１４個の広角度方向がある。ここでは、追加される広角度方向の数はさらに増加し、それは、より大きな谷のＷ／Ｈ又は（Ｈ／Ｗ）に相当する。しかし、先に提供したようなorigModeからwaModeへのマッピングは依然として当てはまる。
【０１２１】
【表１３】
2021523588.tif 000019
【０１２２】
提案される方向定義に基づいて、想定される実装形態のオプションとしていくつかの実施形態が提示される。これらは、例えば、ＪＥＭで実装することができる。
【０１２３】
実施形態１と呼ばれる第１の例示的な実施形態では、ターゲットブロックに対する角度予測方向が広角度方向を含むように修正される。ターゲットブロックが正方形である場合は、予測方向に変更はない。所定の予測モードの場合、エンコーダ及びデコーダは、既存の方法で予測を実行する。他方では、ターゲットブロックが長方形である場合は、先に提供したように、最初に、ターゲットブロック形状に対応するmodeShift値を使用して、角度予測モードが広角度モードにマッピングされる。エンコーダ及びデコーダは、広角度モードに対応する方向に沿って予測を実行する。広角度モードへのマッピングは、予測段階でのみ起こる。エンコーダ側のイントラモードコード化及びデコーダ側のイントラモード復号は変わらないままである。エンコーダは、ＲＤ（レート歪み）最適化を用いて最良の予測モード探索を通常の方法で実行し、オリジナルのモードインデックスからなるＭＰＭ集合を使用してオリジナルのモードインデックス値を符号化する。同様に、デコーダは、オリジナルのモードインデックスからなるＭＰＭ集合を使用してオリジナルのモードインデックス値を復号する。
【０１２４】
実施形態２と呼ばれる第２の例示的な実施形態では、ターゲットブロックに対する角度予測方向が先に提示されたように修正される。ターゲットブロックが正方形である場合は、予測方向に変更はない。それ以外は、ターゲットブロックが長方形である場合は、予測モードは、ブロックのアスペクト比に応じて定義された方向と関連付けられる。エンコーダは、モード２〜６６に対して関連付けられた予測方向がブロック形状に依存すること以外は通常の方法で、ＲＤ（レート歪み）最適化を用いて最良の予測モード探索を実行する。
【０１２５】
ルマターゲットブロックの場合、エンコーダは、以前のセクションで説明されるように、ＭＰＭ集合を使用して予測モードを符号化し、ＭＰＭ集合は、近隣のブロックの予測モードのマッピングによって構築される。クロマターゲットブロックの場合、エンコーダは、配列された近隣のルマブロックの予測モードをマッピングすることによって、直接モードを導出する。このマッピングは、ルマ成分とクロマ成分が同じコード化木構造を有するインターコード化スライスのブロックには不要である。
【０１２６】
デコーダは、ルマターゲットブロックの場合は、ＭＰＭ集合を用いて予測モードを復号し、ＭＰＭ集合は、エンコーダが実行する方法と同じ方法で構築される。クロマターゲットブロックの場合は、デコーダは、配列された近隣のルマブロックの予測モードをマッピングした後に、エンコーダが実行する方法と全く同じ方法で直接モードを導出する。デコーダは、モード２〜６６に対して関連付けられた予測方向がブロック形状に依存すること以外は通常の方法で、ターゲットブロックに対する予測を構築する。
【０１２７】
図１０は、実施形態１のルマブロックに対するエンコーダ及びデコーダフロー図を示す。
【０１２８】
実施形態３では、予測方向に関する限り、実施形態２が拡大される。いかなるターゲットブロックに対しても、予測方向は、ＪＥＭで定義された方向の集合（すなわち、時計回りの方向に４５度〜−１３５度の６５個の方向）と、ターゲットブロック形状に依存するこの提案において定義された方向の集合との和集合として定義される。任意のターゲットブロックに対する定義された方向の集合は、ＪＥＭ方向の部分集合と、いくつかの新しく導入される方向の部分集合からなるため、２つの集合の和集合は、６５個のＪＥＭ方向の集合にブロック形状に依存する新しく導入される方向の集合を加えたものからなる。新しく導入される方向は、ＪＥＭ方向集合の正の方向のいくつか（提案において除去されているもの）の反対である。これらの反対方向の対を区別するため、modeFlagと呼ばれる１ビットのフラグが使用され、その数は、ブロック形状に応じて異なる。ＪＥＭ方向が含まれるため、この実施形態は、ＪＥＭと同じモードインデックスを保持する。すなわち、モード２は４５度の角度に相当し、モード６６は−１３５度の角度に相当する。また、反対方向も有するモード（モード２及びモード６６を除く）は、０に等しいそれらのmodeFlag値を有する。反対方向は、同じモード番号を使用するが、modeFlag値は１に等しくなる。すなわち、反対方向の対は、同じモード番号と関連付けられるが、０及び１のそれぞれに等しいmodeFlagと関連付けられる。
【０１２９】
予測モード符号化はＪＥＭと同じままである。しかし、反対方向を有するモード（モード２及びモード６６を除く）の場合は、modeFlagは、固定された、モードに依存する又は近隣のブロックに依存するコンテキストで符号化される。
【０１３０】
方向の集合は拡大された集合であるため、上及び左の参照アレイの長さも変化することに留意されたい。上の参照アレイの長さは、Ｈ＋Ｗ＋１又は２Ｗ＋１のいずれか大きい方である。同様に、左の参照アレイの長さは、Ｈ＋Ｗ＋１又は２Ｈ＋１のいずれか大きい方である。これは、横長のブロックの場合、上の参照アレイが２Ｗ＋１個のサンプルを有し、左の参照アレイがＨ＋Ｗ＋１個のサンプルを有することを意味する。同様に、縦長のブロックの場合、上の参照アレイはＨ＋Ｗ＋１個のサンプルを有し、左の参照アレイは２Ｈ＋１個のサンプルを有する。ブロックが正方形である場合は、上の参照アレイと左の参照アレイは両方とも、ＪＥＭと同様に、Ｈ＋Ｗ＋１（＝２Ｈ＋１＝２Ｗ＋１（Ｗ＝Ｈであるため））個のサンプルを有する。
【０１３１】
デコーダ側では、通常のＭＰＭに基づく方法を使用して予測モードが復号される。モードが反対方向を有する方向の集合に属する場合は、modeFlag値もまた復号される。予測モードが平面又はＤＣである場合は、デコーダは、ＪＥＭと同様に、予測を演算する。それ以外は、modeFlagが復号されていない場合、又は、復号済みであり、その値がゼロである場合は、デコーダは、ＪＥＭと同様に、対応する方向における予測を構築する。それ以外は、デコーダは、新しい角度パラメータＡを用いて、復号済みのモードと関連付けられたものとは反対の方向における予測を構築する。
【０１３２】
クロマターゲットブロックの場合、直接モードは、対応するルマブロックに対するmodeFlag値（モードが反対方向を有する場合）に関係なく、ＪＥＭと同じ方法で演算される。ターゲットブロックのアスペクト比に応じて、任意の直接モードが反対方向を有する場合は、エンコーダは、最良の予測モードを探索しながら、その探索の中に反対方向も含める。そのようなモードが最良のモードであると最終的に決定された場合は、最良の方向に応じて、１ビットのmodeFlagが符号化される。デコーダ側では、直接モードの導出、予測モードの復号及びmodeFlag（モードが反対方向を有する事例）は、エンコーダと全く同じである。
【０１３３】
ルマブロックに対するエンコーダ及びデコーダフローグラフは、図１１に示されている。
【０１３４】
実施形態４と呼ばれる第４の例示的な実施形態では、実施形態１〜３において説明される変更は、関連参照サンプルが利用可能な際にのみ適用される。例えば、横長のブロックの事例では、この発明は、−１３５°の後に方向を拡張する。しかし、現在のブロック形状とは無関係に、右上の近隣のブロックは利用可能ではない場合がある。その事例では、ターゲットブロックは、ＪＥＭと同様に（すなわち、時計回りの方向に４５度〜−１３５度に広がる６５個の角度方向を使用して）予測される。エンコーダとデコーダは両方とも、再構築された近隣のブロックの存在を容易に検出することができるため、対応する方法で、拡張方向を適用するかどうかを決定する。
【０１３５】
実施形態５である第５の実施形態では、実施形態１から実施形態４までと同様に、１つのスライスのすべてのターゲットブロックが予測され、スライスヘッダにおいて１ビットフラグを使用してデコーダに信号伝達される。
【０１３６】
実施形態６である第６の実施形態では、実施形態１から実施形態４までと同様に、１つのフレームのすべてのターゲットブロックが予測され、ピクチャパラメータ集合（ＰＰＳ）ヘッダにおいて１ビットフラグを使用してデコーダに信号伝達される。
【０１３７】
実施形態７である第７の実施形態では、実施形態１から実施形態４までと同様に、１つのシーケンスの任意のフレームのすべてのターゲットブロックが予測され、シーケンスパラメータ集合（ＳＰＳ）ヘッダにおいて１ビットフラグを使用してデコーダに信号伝達される。
【０１３８】
提案される実施形態の利点の１つは、提案される実施形態が長方形ブロックに対する予測方向をブロック形状に適応させることである。目的の１つは、複雑性を増すことなく、圧縮性能を改善することである。
【０１３９】
図１５は、エンコーダにおける適応ブロックサイズでのイントラ予測のための方法１５００の一実施形態を示す。方法は、開始ブロック１５０１から始まり、制御はブロック１５１０に進み、長方形ブロックのアスペクト比に基づく方向に沿って並ぶ近隣のブロックの少なくとも１つのサンプルに基づいて、長方形ブロックに属する映像サンプルを予測する。制御は、ブロック１５１０からブロック１５２０に進み、予測された映像サンプルに基づいてイントラ予測を使用して長方形ブロックを符号化する。
【０１４０】
図１６は、エンコーダにおける適応ブロックサイズでのイントラ予測のための方法１６００の一実施形態を示す。方法は、開始ブロック１６０１から始まり、制御はブロック１６１０に進み、長方形ブロックのアスペクト比に基づく方向に沿って並ぶ近隣の再構築されたブロックの少なくとも１つのサンプルに基づいて、長方形ブロックに属する映像サンプルを予測する。制御は、ブロック１６１０からブロック１６２０に進み、予測された映像サンプルに基づいてイントラ予測を使用して長方形ブロックを復号する。
【０１４１】
図１７は、適応ブロックサイズでのイントラ予測を使用して映像ブロックを符号化又は復号するための装置１７００の一実施形態を示す。装置は、プロセッサ１７１０を含み、プロセッサ１７１０は、１つ又は複数の入力及び出力ポートを有し、１つ又は複数の通信ポートを通じてメモリ１７２０に相互接続される。装置１７００は、図１５若しくは図１６の方法又は任意の変形形態の実行が可能である。
【０１４２】
この文書は、ツール、特徴、実施形態、モデル、手法などを含む、様々な態様について説明する。これらの態様の多くは、特異性を持って説明されており、少なくとも個々の特性を示すために、制限を意図すると思われるような方法で説明される場合が多い。しかし、これは、説明を明確にするためであり、それらの態様の応用又は範囲を制限するものではない。現に、異なる態様はすべて、さらなる態様を提供するために、組み合わせたり交換したりすることができる。その上、態様は、先の出願において説明されている態様と組み合わせたり交換したりすることもできる。
【０１４３】
この文書において説明及び企図される態様は、多くの異なる形態で実装することができる。図１２、１３及び１４はいくつかの実施形態を提供しているが、他の実施形態も企図され、図１２、１３及び１４における論考は実装形態の広さを制限するものではない。少なくとも１つの態様は、一般に、映像符号化及び復号に関連し、少なくとも１つの他の態様は、一般に、生成又は符号化されたビットストリームを送信することに関連する。これらの及び他の態様は、方法として、装置として、説明される方法のいずれかに従って映像データを符号化若しくは復号するための命令が格納されたコンピュータ可読記憶媒体として、及び／又は、説明される方法のいずれかに従って生成されたビットストリームが格納されたコンピュータ可読記憶媒体として実装することができる。
【０１４４】
本出願では、「再構築された」及び「復号された」という用語は、交換可能に使用することができ、「画素」及び「サンプル」という用語は、交換可能に使用することができ、「画像」、「ピクチャ」及び「フレーム」という用語は、交換可能に使用することができる。通常、一概には言えないが、「再構築された」という用語は、エンコーダ側で使用され、「復号された」という用語は、デコーダ側で使用される。
【０１４５】
上記では様々な方法が説明されており、方法の各々は、説明される方法を達成するための１つ又は複数のステップ又は行動を含む。方法の正しい動作のためにステップ又は行動の特定の順番が必要でない限り、特定のステップ及び／又は行動の順番及び／又は使用を修正することも、組み合わせることもできる。
【０１４６】
この文書において説明される様々な方法及び他の態様は、例えば、図１２の動き補償１７０及び動き推定１７５並びに図１３の動き推定２７５などのモジュールを修正するために使用することができる。その上、本態様は、ＪＶＥＴ又はＨＥＶＣに限定されず、例えば、先在するか又は今後開発されるかにかかわらず、他の規格及び勧告並びにそのような規格及び勧告の拡張版（ＪＶＥＴ及びＨＥＶＣを含む）に適用することができる。別段の指示がない限り又は技術的に除外されない限り、この文書において説明される態様は、個別に使用することも、組み合わせて使用することもできる。
【０１４７】
本文書には様々な数値が示されている。具体的な値は、例示を目的とするものであり、説明される態様は、これらの具体的な値に限定されない。
【０１４８】
図１２は、例示的なエンコーダ１００を示す。このエンコーダ１００の変形形態が企図されるが、以下では、エンコーダ１００は、期待される変形形態をすべて説明することなく明確にする目的で説明される。
【０１４９】
符号化される前、映像シーケンスは、符号化前の処理（１０１）を行うことができ、例えば、入力カラーピクチャに色変換を適用すること（例えば、ＲＧＢ  ４：４：４からＹＣｂＣｒ  ４：２：０への変換）又は圧縮に対する回復力がより早い信号分布を得るために入力ピクチャ成分のリマッピングを実行すること（例えば、色成分のうちの１つのヒストグラム平坦化を使用する）ができる。メタデータは、前処理と関連付け、ビットストリームに載せることができる。
【０１５０】
例示的なエンコーダ１００では、ピクチャは、以下で説明されるようなエンコーダ要素によって符号化される。符号化予定のピクチャは、分割され（１０２）、単位（例えば、ＣＵ）で処理される。各単位は、例えば、イントラ又はインターモードを使用して符号化される。単位がイントラモードで符号化される際、イントラ予測（１６０）が実行される。インターモードでは、動き推定（１７５）及び補償（１７０）が実行される。エンコーダは、単位の符号化に対してイントラモードとインターモードのどちらを使用するかを決定し（１０５）、例えば、予測モードフラグによって、イントラ／インター決定を示す。予測残差は、例えば、オリジナルの画像ブロックから予測ブロックを減じること（１１０）によって計算される。
【０１５１】
次いで、予測残差は、変換（１２５）及び量子化（１３０）が行われる。量子化済みの変換係数並びに動きベクトル及び他の構文要素は、ビットストリームを出力するためにエントロピーコード化される（１４５）。エンコーダは、変換をスキップして、非変換残差信号に量子化を直接適用することができる。エンコーダは、変換と量子化の両方を回避することができる（すなわち、残差は、変換又は量子化プロセスを適用することなく直接コード化される）。
【０１５２】
エンコーダは、さらなる予測のための参照を提供するために、符号化済みのブロックを復号する。量子化済みの変換係数は、予測残差を復号するために、非量子化（１４０）及び逆変換（１５０）が行われる。復号済みの予測残差と予測ブロックを組み合わせること（１５５）で、画像ブロックが再構築される。インループフィルタ（１６５）は、例えば、符号化アーチファクトを低減するために非ブロック化／ＳＡＯ（サンプル適応オフセット）フィルタリングを実行するため、再構築されたピクチャに適用される。フィルタリング済みの画像は、参照ピクチャバッファ（１８０）に格納される。
【０１５３】
図１３は、例示的な映像デコーダ２００のブロック図を示す。例示的なデコーダ２００では、ビットストリームは、以下で説明されるようなデコーダ要素によって復号される。映像デコーダ２００は、一般に、図１２で説明されるような符号化パスとは逆の復号パスを実行する。エンコーダ１００もまた、一般に、映像データの符号化の一部として映像復号を実行する。
【０１５４】
具体的には、デコーダの入力は、映像ビットストリームを含み、映像ビットストリームは、映像エンコーダ１００によって生成することができる。ビットストリームは、最初に、変換係数、動きベクトル及び他のコード化情報を得るために、エントロピー復号（２３０）が行われる。ピクチャ分割情報は、ピクチャがどのように分割されるかを示す。従って、デコーダは、復号済みのピクチャ分割情報に従って、ピクチャを分割すること（２３５）ができる。変換係数は、予測残差を復号するために、非量子化（２４０）及び逆変換（２５０）が行われる。復号済みの予測残差と予測ブロックを組み合わせること（２５５）で、画像ブロックが再構築される。予測ブロックは、イントラ予測（２６０）又は動き補償予測（すなわち、インター予測）（２７５）から得ること（２７０）ができる。インループフィルタ（２６５）は、再構築された画像に適用される。フィルタリング済みの画像は、参照ピクチャバッファ（２８０）に格納される。
【０１５５】
復号済みのピクチャは、復号後の処理（２８５）をさらに行うことができ、例えば、逆色変換（例えば、ＹＣｂＣｒ  ４：２：０からＲＧＢ  ４：４：４への変換）又は符号化前の処理（１０１）において実行されるリマッピングプロセスの逆を実行する逆リマッピングを行うことができる。復号後の処理は、メタデータを使用することができ、メタデータは、符号化前の処理において導出され、ビットストリームで信号伝達される。
【０１５６】
図１４は、様々な態様及び実施形態が実装されるシステムの例のブロック図を示す。システム１０００は、以下で説明される様々なコンポーネントを含むデバイスとして具体化することができ、この文書において説明される態様のうちの１つ又は複数を実行するように構成される。そのようなデバイスの例は、これらに限定されないが、パーソナルコンピュータ、ラップトップコンピュータ、スマートフォン、タブレットコンピュータ、デジタルマルチメディアセットトップボックス、デジタルテレビレシーバ、パーソナル映像記録システム、接続された家庭用器具及びサーバなどの様々な電子デバイスを含む。システム１０００の要素は、単独で又は組み合わせて、単一の集積回路、複数のＩＣ及び／又は離散コンポーネントにおいて具体化することができる。例えば、少なくとも１つの実施形態では、システム１０００の処理及びエンコーダ／デコーダ要素は、複数のＩＣ及び／又は離散コンポーネントにわたって分配される。様々な実施形態では、システム１０００は、例えば、通信バスを介して或いは専用入力及び／又は出力ポートを通じて、他のシステム又は他の電子デバイスに通信可能に結合される。様々な実施形態では、システム１０００は、この文書において説明される態様のうちの１つ又は複数を実装するように構成される。
【０１５７】
システム１０００は、例えば、この文書において説明される様々な態様を実装するためにその中にロードされた命令を実行するように構成された少なくとも１つのプロセッサ１０１０を含む。プロセッサ１０１０は、当技術分野で知られているような埋め込みメモリ、入力出力インタフェース及び様々な他の回路を含み得る。システム１０００は、少なくとも１つのメモリ１０２０（例えば、揮発性メモリデバイス及び／又は不揮発性メモリデバイス）を含む。システム１０００は、不揮発性メモリ及び／又は揮発性メモリを含み得る記憶装置１０４０を含み、これらに限定されないが、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ、磁気ディスクドライブ及び／又は光ディスクドライブを含む。記憶装置１０４０は、非限定的な例として、内部記憶装置、取り付けられた記憶装置及び／又はネットワークアクセス可能記憶装置を含み得る。
【０１５８】
システム１０００は、例えば、符号化済みの映像又は復号済みの映像を提供するためにデータを処理するように構成されたエンコーダ／デコーダモジュール１０３０を含み、エンコーダ／デコーダモジュール１０３０は、それ自体のプロセッサ及びメモリを含み得る。エンコーダ／デコーダモジュール１０３０は、符号化及び／又は復号機能を実行するためにデバイスに含めることができるモジュールを表す。知られているように、デバイスは、符号化及び復号モジュールの一方又は両方を含み得る。それに加えて、エンコーダ／デコーダモジュール１０３０は、当業者に知られているように、システム１０００の別個の要素として実装することも、ハードウェアとソフトウェアの組合せとしてプロセッサ１０１０内に組み込むこともできる。
【０１５９】
この文書において説明される様々な態様を実行するためにプロセッサ１０１０又はエンコーダ／デコーダ１０３０にロードされる予定のプログラムコードは、記憶装置１０４０に格納し、その後、プロセッサ１０１０による実行のためにメモリ１０２０にロードすることができる。様々な実施形態によれば、プロセッサ１０１０、メモリ１０２０、記憶装置１０４０及びエンコーダ／デコーダモジュール１０３０のうちの１つ又は複数は、この文書において説明されるプロセスの実行の間、様々なアイテムのうちの１つ又は複数を格納することができる。そのような格納されるアイテムは、これらに限定されないが、入力映像、復号済みの映像又は復号済みの映像の一部分、ビットストリーム、行列、変数、並びに、方程式、公式、演算及び演算論理の処理からの中間又は最終結果を含み得る。
【０１６０】
いくつかの実施形態では、命令を格納するため及び符号化又は復号の間に必要なものを処理するためのワーキングメモリを提供するため、プロセッサ１０１０及び／又はエンコーダ／デコーダモジュール１０３０の内部のメモリが使用される。しかし、他の実施形態では、これらの機能のうちの１つ又は複数に対して、処理デバイス（例えば、処理デバイスは、プロセッサ１０１０又はエンコーダ／デコーダモジュール１０３０であり得る）の外部のメモリが使用される。外部のメモリは、メモリ１０２０及び／又は記憶装置１０４０であり得、例えば、動的揮発性メモリ及び／又は不揮発性フラッシュメモリであり得る。いくつかの実施形態では、外部の不揮発性フラッシュメモリは、テレビのオペレーティングシステムを格納するために使用される。少なくとも１つの実施形態では、ＲＡＭなどの外部の高速動的揮発性メモリは、ＭＰＥＧ−２、ＨＥＶＣ又はＶＶＣ（多目的映像コード化）に対するものなどの映像コード化及び復号動作のためのワーキングメモリとして使用される。
【０１６１】
システム１０００の要素への入力は、ブロック１１３０に示されるような様々な入力デバイスを通じて提供することができる。そのような入力デバイスは、これらに限定されないが、（ｉ）例えば放送局によって無線で送信されたＲＦ信号を受信するＲＦ部分、（ｉｉ）複合入力端末、（ｉｉｉ）ＵＳＢ入力端末及び／又は（ｉｖ）HDMI(登録商標）入力端末を含む。
【０１６２】
様々な実施形態では、ブロック１１３０の入力デバイスは、当技術分野で知られているようなそれぞれの関連入力処理要素を有する。例えば、ＲＦ部分は、（ｉ）所望の周波数を選択すること（信号を選択すること又は周波数の帯域に信号を帯域制限することとも呼ばれる）、（ｉｉ）選択された信号をダウンコンバートすること、（ｉｉｉ）信号周波数帯域を選択するために（例えば）、周波数のより狭い帯域に再び帯域制限すること（ある実施形態では、チャネルとも呼ぶことができる）、（ｉｖ）ダウンコンバート済みの且つ帯域制限済みの信号を復調すること、（ｖ）誤り訂正を実行すること、及び、（ｖｉ）データパケットの所望のストリームを選択するために逆多重化することに適した要素と関連付けることができる。様々な実施形態のＲＦ部分は、これらの機能を実行するための１つ又は複数の要素を含み、例えば、周波数セレクタ、信号セレクタ、バンドリミッタ、チャネルセレクタ、フィルタ、ダウンコンバータ、復調器、誤り訂正器及びデマルチプレクサが挙げられる。ＲＦ部分は、チューナを含み得、チューナは、例えば、より低い周波数（例えば、中間周波数若しくはベースバンド近くの周波数）又はベースバンドへの受信信号のダウンコンバートを含む、これらの様々な機能を実行する。セットトップボックスの一実施形態では、ＲＦ部分及びその関連入力処理要素は、有線（例えば、ケーブル）媒体上で送信されたＲＦ信号を受信し、次いで、所望の周波数帯域を得るために、フィルタリングを行い、ダウンコンバートを行い、再びフィルタリングを行うことによって周波数選択を実行する。様々な実施形態は、上記で説明される（及び他の）要素の順番を再構成すること、これらの要素のいくつかを取り除くこと及び／又は同様の若しくは異なる機能を実行する他の要素を追加することを行う。要素を追加することは、既存の要素の間に要素を挿入すること（例えば、増幅器及びアナログ／デジタル変換器を挿入すること）を含み得る。様々な実施形態では、ＲＦ部分はアンテナを含む。
【０１６３】
それに加えて、ＵＳＢ及び／又はHDMI（登録商標）端末は、ＵＳＢ及び／又はHDMI（登録商標）接続を通じてシステム１０００を他の電子デバイスに接続するためのそれぞれのインタフェースプロセッサを含み得る。入力処理の様々な態様（例えば、リードソロモン誤り訂正）は、例えば、別個の入力処理ＩＣ内又はプロセッサ１０１０内で実装できることを理解されたい。同様に、ＵＳＢ又はHDMI（登録商標）インタフェース処理の態様は、別個のインタフェースＩＣ内又はプロセッサ１０１０内で実装することができる。復調済みの、誤り訂正済みの及び逆多重化済みのストリームは、出力デバイス上で提示するためのデータストリームを処理するために、様々な処理要素（例えば、メモリと連動するプロセッサ１０１０及びエンコーダ／デコーダ１０３０並びに記憶素子を含む）に提供することができる。
【０１６４】
システム１０００の様々な要素は、統合筐体内に提供することができる。統合筐体内では、様々な要素を相互接続することができ、当技術分野で知られている内部バス（例えば、Ｉ２Ｃバス、配線及びプリント基板を含む）などの適切な接続配列１１４０を使用して、様々な要素間でデータを送信することができる。
【０１６５】
システム１０００は、通信チャネル１０６０を介して他のデバイスとの通信を可能にする通信インタフェース１０５０を含む。通信インタフェース１０５０は、これらに限定されないが、通信チャネル１０６０上でデータを送信及び受信するように構成されたトランシーバを含み得る。通信インタフェース１０５０は、これらに限定されないが、モデム又はネットワークカードを含み得、通信チャネル１０６０は、例えば、有線及び／又は無線媒体内で実装することができる。
【０１６６】
データは、様々な実施形態では、ＩＥＥＥ８０２．１１などの無線ネットワークを使用して、システム１０００にストリーミングされる。これらの実施形態の無線信号は、Wi-Fi通信などの無線通信用に適応させた通信チャネル１０６０及び通信インタフェース１０５０上で受信される。これらの実施形態の通信チャネル１０６０は、典型的には、アプリケーションのストリーミング及び他のオーバーザトップ通信を可能にするためのインターネットを含む外部のネットワークへのアクセスを提供するアクセスポイント又はルータに接続される。他の実施形態は、入力ブロック１１３０のHDMI（登録商標）接続上でデータを伝達するセットトップボックスを使用して、ストリーミングされたデータをシステム１０００に提供する。さらなる他の実施形態は、入力ブロック１１３０のＲＦ接続を使用して、ストリーミングされたデータをシステム１０００に提供する。
【０１６７】
システム１０００は、ディスプレイ１１００、スピーカ１１１０及び他の周辺デバイス１１２０を含む様々な出力デバイスに出力信号を提供することができる。他の周辺デバイス１１２０は、実施形態の様々な例では、スタンドアロンＤＶＲ、ディスクプレーヤ、ステレオシステム、照明システム、及び、システム１０００の出力に基づいて機能を提供する他のデバイスのうちの１つ又は複数を含む。様々な実施形態では、制御信号は、AV.Link、ＣＥＣ、又は、ユーザ介入の有無にかかわらずデバイス間制御を可能にする他の通信プロトコルなどの信号伝達を使用して、システム１０００とディスプレイ１１００、スピーカ１１１０又は他の周辺デバイス１１２０との間で伝達される。出力デバイスは、専用接続を介して、それぞれのインタフェース１０７０、１０８０及び１０９０を通じて、システム１０００に通信可能に結合することができる。或いは、出力デバイスは、通信チャネル１０６０を使用して、通信インタフェース１０５０を介して、システム１０００に接続することができる。ディスプレイ１１００及びスピーカ１１１０は、電子デバイス（例えば、テレビ）のシステム１０００の他のコンポーネントと共に単一のユニットに統合することができる。様々な実施形態では、ディスプレイインタフェース１０７０は、例えば、タイミングコントローラ（Ｔ  Ｃｏｎ）チップなどのディスプレイドライバを含む。
【０１６８】
例えば、入力１１３０のＲＦ部分が別個のセットトップボックスの一部である場合は、ディスプレイ１１００及びスピーカ１１１０は、他のコンポーネントのうちの１つ又は複数から選択的に分離することができる。ディスプレイ１１００及びスピーカ１１１０が外部のコンポーネントである様々な実施形態では、出力信号は、専用出力接続（例えば、HDMI（登録商標）ポート、ＵＳＢポート又はＣＯＭＰ出力を含む）を介して提供することができる。
【０１６９】
例示的な実施形態は、プロセッサ１０１０によって実装されるコンピュータソフトウェアによって、ハードウェアによって又はハードウェアとソフトウェアの組合せによって実行することができる。非限定的な例として、例示的な実施形態は、１つ又は複数の集積回路によって実装することができる。メモリ１０２０は、技術環境に適切ないかなるタイプのものでもあり得、非限定的な例として、光メモリデバイス、磁気メモリデバイス、半導体ベースのメモリデバイス、固定メモリ及び取り外し可能メモリなど、任意の適切なデータ格納技術を使用して実装することができる。プロセッサ１０１０は、技術環境に適切ないかなるタイプのものでもあり得、非限定的な例として、マイクロプロセッサ、汎用コンピュータ、専用コンピュータ及びマルチコアアーキテクチャに基づくプロセッサのうちの１つ又は複数を包含し得る。
【０１７０】
本明細書で説明される実装形態及び態様は、例えば、方法若しくはプロセス、装置、ソフトウェアプログラム、データストリーム、又は、信号で実装することができる。実装の単一の形態の文脈においてのみ論じられる（例えば、方法としてのみ論じられる）場合であっても、論じられる特徴の実装形態は、他の形態（例えば、装置又はプログラム）でも実装することができる。装置は、例えば、適切なハードウェア、ソフトウェア及びファームウェアで実装することができる。方法は、例えば、コンピュータ、マイクロプロセッサ、集積回路又はプログラマブル論理デバイスを含む、例えば、一般に処理デバイスを指す装置（例えば、プロセッサなど）で実装することができる。また、プロセッサは、例えば、コンピュータ、携帯電話、ポータブル／携帯情報端末（「ＰＤＡ」）、及び、エンドユーザ間の情報の通信を容易にする他のデバイスなどの通信デバイスも含む。
【０１７１】
「一実施形態」、「実施形態」、「一実装形態」又は「実装形態」及びその他の変形形態への言及は、実施形態と関係して説明される特定の特徴、構造、特性などが少なくとも１つの実施形態に含まれることを意味する。従って、この文書全体を通じて様々な場所に現れる「一実施形態では」、「実施形態では」、「一実装形態では」又は「実装形態では」という記載及び他の任意の変形形態の出現は、必ずしもすべてが同じ実施形態を指すとは限らない。
【０１７２】
それに加えて、この文書は、様々な情報片を「決定すること」について言及し得る。情報を決定することは、例えば、情報を推定すること、情報を計算すること、情報を予測すること、又は、メモリから情報を回収することのうちの１つ又は複数を含み得る。
【０１７３】
さらに、この文書は、様々な情報片に「アクセスすること」について言及し得る。情報にアクセスすることは、例えば、情報を受信すること、情報を回収すること（例えば、メモリから）、情報を格納すること、情報を処理すること、情報を送信すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、又は、情報を推定することのうちの１つ又は複数を含み得る。
【０１７４】
それに加えて、この文書は、様々な情報片を「受信すること」について言及し得る。受信することは、「アクセスすること」と同様に、幅広い用語であることを意図する。情報を受信することは、例えば、情報にアクセスすること又は情報を回収すること（例えば、メモリから）のうちの１つ又は複数を含み得る。さらに、「受信すること」は、典型的には、例えば、情報を格納すること、情報を処理すること、情報を送信すること、情報を移動すること、情報をコピーすること、情報を消去すること、情報を計算すること、情報を決定すること、情報を予測すること、又は、情報を推定することなど、動作の間にいろいろな方法で関与する。
【０１７５】
当業者には明らかであるように、実装形態は、例えば、格納又は送信することができる、情報を伝えるようにフォーマットされた様々な信号を生成することができる。情報は、例えば、方法を実行するための命令、又は、説明される実装形態のうちの１つによって生成されたデータを含み得る。例えば、信号は、説明される実施形態のビットストリームを伝えるようにフォーマットすることができる。そのような信号は、例えば、電磁波として（例えば、スペクトルの高周波部分を使用して）又はベースバンド信号としてフォーマットすることができる。フォーマットすることは、例えば、データストリームを符号化し、符号化済みのデータストリームで搬送波を変調することを含み得る。信号が伝える情報は、例えば、アナログ又はデジタル情報であり得る。信号は、知られているように、様々な異なる有線又は無線リンク上で送信することができる。信号は、プロセッサ可読媒体上に格納することができる。
【０１７６】
先行説明では多くの実施形態について説明した。これらの実施形態は、様々な異なる請求項カテゴリ及びタイプにわたって、以下のオプションの特徴を単独で又は組合せで含む。
−  符号化及び復号においてイントラ予測の間に−１３５度及び４５度を超える予測方向を使用する
−  同じ方向総数を維持するために、水平又は垂直方向に予測方向を拡張する一方で、反対方向のいくつかの方向を除去する
−  −１３５度を超える方向と４５度を超える方向の両方の数を拡大する
−  短い方の参照アレイの長さは、ブロック幅と高さの両方に基づく
−  短い方の参照アレイの長さは、ブロックの対応する辺の長さの２倍に１を加えて、拡張を少し加えたものである
−  角度パラメータ値は２の累乗ではないため、拡張が必要である
−  小さい方の辺におけるこの拡張を補償するため、ブロックの長い方の辺の参照アレイサイズを適切に低減することができ、その結果、広角度予測に必要な参照サンプルの総数は、通常のイントラ予測に必要な数とほぼ同じままである
−  参照アレイの長さは、符号化予定の又は復号予定のブロックの高さと幅の両方に基づいて決定される
−  エンコーダからデコーダ（予測方向が使用されているもの）に信号伝達する
−  予測方向の部分集合を使用する
−  ブロックは、長方形のＣＵである
−  他のブロックは、近隣のブロックである
−  角度予測モードは、ターゲットブロック形状に対応する値によって広角度モードにマッピングされる
−  広角度モードへの角度モードのマッピングは１対１である
−  ブロックに対して使用される広角度方向の数は、ターゲットブロック形状に依存する
−  イントラ予測は、広角度モードに基づく
−  説明される構文要素又はその変形形態のうちの１つ又は複数を含むビットストリーム又は信号
−  信号伝達の際、デコーダがエンコーダによって実行されるものとは逆の方法でビットストリームを処理できるようにするための構文要素を挿入する
−  説明される構文要素又はその変形形態のうちの１つ又は複数を含むビットストリーム又は信号を作成及び／又は送信する及び／又は受信及び／又は復号する
−  説明される実施形態のいずれかを実行するテレビ、セットトップボックス、携帯電話、タブレット又は他の電子デバイス
−  説明される実施形態のいずれかを実行し、結果として得られた画像を表示する（例えば、モニタ、スクリーン又は他のタイプのディスプレイを使用して）テレビ、セットトップボックス、携帯電話、タブレット又は他の電子デバイス
−  符号化済みの画像を含む信号を受信するためにチャネルをチューニングし（例えば、チューナを使用して）、説明される実施形態のいずれかを実行するテレビ、セットトップボックス、携帯電話、タブレット又は他の電子デバイス
−  符号化済みの画像を含む信号を受信し（例えば、アンテナを使用して）、説明される実施形態のいずれかを実行するテレビ、セットトップボックス、携帯電話、タブレット又は他の電子デバイス
−  この開示全体を通じて、様々な他の一般化された及び特殊化された特徴もサポートされ、企図される。
【図１】
2021523588.tif 000020
【図２】
2021523588.tif 000021
【図３】
2021523588.tif 000022
【図４】
2021523588.tif 000023
【図５】
2021523588.tif 000024
【図６】
2021523588.tif 000025
【図７】
2021523588.tif 000026
【図８】
2021523588.tif 000027
【図９ａ】
2021523588.tif 000028
【図９ｂ】
2021523588.tif 000029
【図１０】
2021523588.tif 000030
【図１１】
2021523588.tif 000031
【図１２】
2021523588.tif 000032
【図１３】
2021523588.tif 000033
【図１４】
2021523588.tif 000034
【図１５】
2021523588.tif 000035
【図１６】
2021523588.tif 000036
【図１７】
2021523588.tif 000037
【国際調査報告】
2021523588.tif 000038
2021523588.tif 000039