IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイジン バイトダンス ネットワーク テクノロジー カンパニー リミテッドの特許一覧 ▶ バイトダンス インコーポレイテッドの特許一覧

特表2023-501191クロス成分映像コーディングにおける線形パラメータの導出
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-01-18
(54)【発明の名称】クロス成分映像コーディングにおける線形パラメータの導出
(51)【国際特許分類】
   H04N 19/11 20140101AFI20230111BHJP
   H04N 19/157 20140101ALI20230111BHJP
   H04N 19/176 20140101ALI20230111BHJP
   H04N 19/186 20140101ALI20230111BHJP
   H04N 19/593 20140101ALI20230111BHJP
【FI】
H04N19/11
H04N19/157
H04N19/176
H04N19/186
H04N19/593
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022525115
(86)(22)【出願日】2020-11-02
(85)【翻訳文提出日】2022-05-23
(86)【国際出願番号】 CN2020125796
(87)【国際公開番号】W WO2021083376
(87)【国際公開日】2021-05-06
(31)【優先権主張番号】PCT/CN2019/115034
(32)【優先日】2019-11-01
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.HDMI
(71)【出願人】
【識別番号】520476341
【氏名又は名称】北京字節跳動網絡技術有限公司
【氏名又は名称原語表記】Beijing Bytedance Network Technology Co., Ltd.
【住所又は居所原語表記】Room B-0035, 2/F, No.3 Building, No.30, Shixing Road, Shijingshan District Beijing 100041 China
(71)【出願人】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】ワン ヤン
(72)【発明者】
【氏名】ジャン リー
(72)【発明者】
【氏名】ジャン カイ
(72)【発明者】
【氏名】リウ ホンビン
(72)【発明者】
【氏名】ワン ユエ
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA04
5C159PP16
5C159PP25
5C159TA31
5C159TB08
5C159TC26
5C159TC27
5C159TC33
5C159TC42
5C159UA02
5C159UA05
(57)【要約】
映像処理方法は、映像のクロマブロックと映像のビットストリーム表現との間の変換のために、ダウンサンプリングフィルタを使用して、クロマブロックの並置した輝度ブロックの、正の整数であるN個の上側近傍ラインから生成されるダウンサンプリングした輝度サンプルを使用することによって、クロス成分線形モデルのパラメータを導出することと、クロス成分線形モデルを使用して生成される予測クロマブロックを使用して、変換を行うこととを含む。
【選択図】図11
【特許請求の範囲】
【請求項1】
映像のクロマブロックと前記映像のビットストリーム表現との間の変換のために、ダウンサンプリングフィルタを使用して、前記クロマブロックの並置した輝度ブロックの、正の整数であるN個の上側近傍ラインから生成されるダウンサンプリングした輝度サンプルを使用することによって、クロス成分線形モデルのパラメータを導出することと、
前記クロス成分線形モデルを使用して生成される予測クロマブロックを使用して前記変換を行うことと、を含む、
映像処理方法。
【請求項2】
前記クロマブロックが最上のコーディングツリーユニットの境界にないために、前記N個の上側近傍ラインは、前記並置した輝度ブロックの最も近い上側のラインに対応する、
請求項1に記載の方法。
【請求項3】
前記ダウンサンプリングフィルタは、前記並置した輝度ブロックの左側近傍ラインから生成される他のダウンサンプリングした輝度サンプルを生成するためにも適用される、
請求項1~2のうちいずれかに記載の方法。
【請求項4】
別のダウンサンプリングフィルタは、前記並置した輝度ブロックの左側近傍ラインから生成される他のダウンサンプリングした輝度サンプルを生成するために適用される、
請求項1~2のうちいずれかに記載の方法。
【請求項5】
前記ダウンサンプリングフィルタは、[1、2、1]のフィルタ係数を有する、
請求項1~4のうちいずれかに記載の方法。
【請求項6】
ダウンサンプリングされた輝度サンプルpDsY[x]は、式pDsY[x]=(pY[2*x-1][-1]+2*pY[2*x][-1]+pY[2*x+1][-1]+2)>>2を満たし、pY[2*x][-1],pY[2*x-1][-1]およびpY[2*x+1][-1]は、最も近い上側の近傍ラインからの輝度サンプルであり、xは整数である、
請求項1~5のうちいずれかに記載の方法。
【請求項7】
前記ダウンサンプリングフィルタは、前記コーディングツリーユニットの最上の境界に対する前記クロマブロックの位置に依存しない、
請求項1~6のうちいずれかに記載の方法。
【請求項8】
前記方法は、前記映像の4:2:2カラーフォーマットに起因して選択的に適用される、
請求項1~6のうちいずれかに記載の方法。
【請求項9】
前記クロマブロックが最上のコーディングツリーユニットの境界にないために、前記N個の上側近傍ラインは、前記並置した輝度ブロックの最も近い上側のラインを含むが、2番目に近い上側のラインを排除する、
請求項1に記載の方法。
【請求項10】
Nは1より大きい、
請求項1に記載の方法。
【請求項11】
前記N個の上側近傍ラインは、前記最も近い上側のラインおよび2番目に近い上側のラインを含む、
請求項10に記載の方法。
【請求項12】
前記ダウンサンプリングフィルタは、前記映像のカラーフォーマットに依存する、
請求項1に記載の方法。
【請求項13】
前記ダウンサンプリングフィルタは、6タップフィルタである、
請求項1~12のうちいずれかに記載の方法。
【請求項14】
前記ダウンサンプリングフィルタは、5タップフィルタである、
請求項1~12のうちいずれかに記載の方法。
【請求項15】
前記変換は、前記映像を前記ビットストリーム表現に符号化することを含む、
請求項1~14のうちいずれかに記載の方法。
【請求項16】
前記変換は、前記映像を前記ビットストリーム表現から復号することを含む、
請求項1~14のうちいずれかに記載の方法。
【請求項17】
請求項1~16のうちいずれか1項以上に記載の方法を実装するように構成された処理装置を備える、
映像処理装置。
【請求項18】
実行されると、処理装置に、請求項1から16のうちいずれか1つ以上に記載の方法を実装させるプログラムコードを格納する、
コンピュータ可読媒体。
【請求項19】
上述した方法のいずれかに従って生成されたビットストリーム表現を記憶する、
コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
パリ条約に基づく適用可能な特許法および/または規則に基づいて、本願は、2019年11月1日出願の国際特許出願第PCT/CN2019/115034号の優先権および利益を適時に主張することを目的とする。法に基づくすべての目的のために、上記出願の開示全体は、本願の開示の一部として参照により援用される。
【0002】
本願は、映像および画像の符号化および復号技術に関する。
【背景技術】
【0003】
デジタル映像は、インターネット及び他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信及び表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
【発明の概要】
【0004】
開示された技術は、クロス成分線形モデル予測を使用して符号化または復号を行うために、映像または画像のデコーダまたはエンコーダの実施形態によって使用されてもよい。
【0005】
1つの例示的な態様において、映像を処理する方法が開示される。この方法は、映像のクロマブロックと映像のビットストリーム表現との間の変換のために、ダウンサンプリングフィルタを使用して、クロマブロックの並置した輝度ブロックの、正の整数であるN個の上側近傍ラインから生成されるダウンサンプリングした輝度サンプルを使用することによって、クロス成分線形モデルのパラメータを導出することと、クロス成分線形モデルを使用して生成される予測クロマブロックを使用して、前記変換を行うことと、を含む。
【0006】
別の例示的な態様において、映像を処理する方法が開示される。この方法は、映像のコンポーネントの映像領域と映像のビットストリーム表現との間の変換のために、変換スキップモードを使用してコーディングした映像ブロックに対する最大許容ブロックサイズを決定することと、前記決定に基づいて前記変換を行うことと、を含む。
【0007】
別の例示的な態様において、映像を処理する方法が開示される。この方法は、第1の規則と第2の規則に従って、映像ブロックを含む映像と前記映像のビットストリーム表現との間の変換を行うことを含み、前記映像ブロックの第1の部分のコーディングに変換スキップコーディングツールを使用し、前記映像ブロックの第2の部分のコーディングに変換コーディングツールを使用し、前記第1の規則は、前記映像ブロックの前記第1の部分のための最大許容ブロックサイズを規定し、前記第2の規則は、前記映像ブロックの前記第2の部分のための最大許容ブロックサイズを規定し、前記映像ブロックの前記第1の部分に対する前記最大許容ブロックサイズは、前記映像ブロックの前記第2の部分に対する前記最大許容ブロックサイズとは異なる。
【0008】
別の例示的な態様において、映像を処理する方法が開示される。この方法は、1つ以上のブロックを含む映像と映像のビットストリーム表現との間の変換を行うことを含み、ビットストリーム表現は、変換スキップツールの使用を示す構文要素がビットストリーム表現に含まれるかどうかが、変換スキップツールを使用してコーディングされるクロマブロックの最大許容サイズに依存すると規定するフォーマット規則に準拠する。
【0009】
別の例示的な態様において、映像を処理する方法が開示される。この方法は、第1のクロマ成分の1つ以上の第1の映像ブロックおよび第2のクロマ成分の1つ以上の第2の映像ブロックと、映像のビットストリーム表現とを含む映像との間の変換を行うことを含み、前記ビットストリーム表現は、1つ以上の第1のクロマブロックおよび1つ以上の第2のクロマブロックをコーディングするための変換スキップツールの可用性を一緒に示す構文要素を使用することを規定するフォーマット規則に準拠する。
【0010】
別の例示的な態様において、上述された方法は、処理装置を含む映像エンコーダによって実装されてもよい。
【0011】
さらに別の例示的な態様において、これらの方法は、処理装置実行可能命令の形式で実施されてもよく、コンピュータ可読プログラム媒体に記憶されてもよい。
【0012】
これらの、および他の態様は、本明細書でさらに説明される。
【図面の簡単な説明】
【0013】
図1A】ピクチャにおける4:2:2の輝度およびクロマサンプルの名目上の垂直および水平の位置を示す。
図1B】映像エンコーダの例を示す。
図2】67個のイントラ予測モードの例を示す。
図3】水平方向および垂直方向の横断走査の例を示す。
図4】α、βの導出に使用したサンプルの位置の例を示す。
図5】1つの4×8個のサンプルブロックを2つの独立して復号可能な領域に分割する例を示す。
図6】垂直方向予測モジュールを有する4×Nのブロックに対してスループットを最大にするように、画素の行を処理する例示的な順序を示す。
図7】低周波数非可分変換(LFNST)処理の例を示す。
図8】4:2:2映像のためのCCLMパラメータの導出に使用される、近傍のクロマサンプルおよびダウンサンプリングして並置した近傍の輝度サンプルの例を示す。
図9】映像処理装置の例を示す。
図10】例示的な映像エンコーダのブロック図を示す。
図11】開示される技術のいくつかの実装形態に基づく、映像処理方法の例を示すフローチャートである。
図12】映像処理システムの例を示すブロック図である。
図13】例示的な映像コーディングシステムを示すブロック図である。
図14】開示された技術のいくつかの実施形態によるエンコーダを示すブロック図である。
図15】開示された技術のいくつかの実施形態によるデコーダを示すブロック図である。
図16A】開示される技術のいくつかの実装形態に基づくビデオ処理の例を示すフローチャートである。
図16B】開示される技術のいくつかの実装形態に基づくビデオ処理の例を示すフローチャートである。
【発明を実施するための形態】
【0014】
本明細書は、伸張または復号されたデジタル映像または画像の品質を向上させるために、画像または映像ビットストリームのデコーダによって使用できる様々な技術を提供する。簡潔にするために、本明細書では、用語「映像」は、一連のピクチャ(従来から映像と呼ばれる)および個々の画像の両方を含むように使用される。さらに、映像エンコーダは、さらなる符号化に使用される復号されたフレームを再構成するために、符号化の処理中にこれらの技術を実装してもよい。
【0015】
本明細書では、理解を容易にするために章の見出しを使用しており、1つの章に開示された実施形態をその章にのみ限定するものではない。このように、ある章の実施形態は、他の章の実施形態と組み合わせることができる。
【0016】
1.発明の概要
本発明は、映像コーディング技術に関する。具体的には、本発明は、画像/映像コーディングにおけるクロス成分線形モデル予測および他のコーディングツールに関する。HEVCのような既存の映像コーディング規格に適用してもよいし、規格(Versatile Video Coding)を確定させるために適用してもよい。本発明は、将来の映像コーディング規格または映像コーデックにも適用可能である。
【0017】
2.映像コーディングの導入
映像コーディング規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 VideoとH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像コーディング規格は、時間予測と変換コーディングが利用されるハイブリッド映像コーディング構造に基づく。HEVCを超えた将来の映像コーディング技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Mode)と呼ばれる参照ソフトウェアに組み込まれてきた。2018年4月には、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG11(MPEG)の間にJoint Video Expert Team(JVET)が発足し、HEVCと比較して50%のビットレート削減を目標にVVC規格の策定に取り組んでいる。
【0018】
2.1.色空間及びクロマサブサンプリング
色空間は、カラーモデル(又はカラーシステム)としても知られ、色の範囲を数字のタプル(tuple)として簡単に記述する抽象的な数学モデルであり、典型的には3又は4つの値又は色成分(例えばRGB)である。基本的には、色空間は座標系とサブ空間とを合成したものである。
【0019】
映像圧縮の場合、最も頻繁に使用される色空間は、YCbCr及びRGBである。
【0020】
YCbCr、Y’CbCr、またはY Pb/Cb Pr/Crは、YCBCRまたはY’CBCRとも呼ばれ、映像およびデジタル写真システムのカラー画像パイプラインの一部として使用される色空間のファミリーである。Y’は輝度成分であり、CBおよびCRは青色差および赤色差クロマ成分である。Y’(素数を有する)はYとは区別され、Yは輝度であり、ガンマ補正されたRGB原色に基づいて光強度が非線形に符号化されることを意味する。
【0021】
クロマサブサンプリングは、人間の視覚システムが、輝度よりも色差の方が知覚が低いことを利用して、輝度情報よりもクロマ情報の方が解像度が低くなるように実装して画像を符号化する方法である。
【0022】
2.1.1. 4:4:4
3つのY’CbCr成分の各々は、同じサンプルレートを有し、従って、クロマサブサンプリングは存在しない。この方式は、ハイエンドフィルムスキャナ及び映画のポストプロダクションに用いられることがある。
【0023】
2.1.2. 4:2:2
2つのクロマ成分は、輝度のサンプルレートの半分でサンプリングされ、水平クロマ解像度は半分にされ、垂直クロマ解像度は変化しない。これにより、視覚的にほとんどまたは全く差がなく、非圧縮の映像信号の帯域幅を1/3に低減することができる。4:2:2カラーフォーマットの名目上の垂直および水平の位置の例が、例えば、VVC作業草案の図1Aに示されている。
【0024】
2.1.3. 4:2:0
4:2:0では、水平サンプリングは4:1:1に比べて2倍になるが、このスキームではCb及びCrチャネルを各1行おきのラインでのみサンプリングするので、垂直解像度は半分になる。従って、データレートは同じである。Cb及びCrはそれぞれ水平及び垂直方向の両方に2倍ずつサブサンプリングされる。異なる水平及び垂直位置を有する4:2:0スキームの3つの変形がある。
● MPEG-2において、CbおよびCrは水平方向に共座している。Cb、Crは垂直方向の画素間に位置する(格子間に位置する)。
● JPEG/JFIFにおいて、H.261、およびMPEG-1、Cb、およびCrは、交互の輝度サンプルの中間の格子間に位置する。
● 4:2:0 DVにおいて、CbおよびCrは、水平方向に共座している。垂直方向には、それらは交互に共座している。
【0025】
【表1】
【0026】
2.2.典型的な映像コーデックのコーディングフロー
図1Bは、3つのインループフィルタリングブロック、すなわち非ブロック化フィルタ(DF)、サンプル適応オフセット(SAO)およびALFを含むVVCのエンコーダブロック図の例を示す。DF(予め定義されたフィルタを使用する)とは異なり、SAOおよびALFは、現在のピクチャのオリジナルサンプルを利用し、それぞれ、オフセットを追加することにより、および、有限インパルス応答(FIR)フィルタを適用することにより、オフセットおよびフィルタ係数を信号通知するコーディングされた側情報を用いて、元のサンプルと再構成サンプルとの間の平均二乗誤差を低減する。ALFは、各ピクチャの最後の処理ステージに位置し、前のステージで生成されたアーチファクトを捕捉し、修正しようとするツールと見なすことができる。
【0027】
2.3.67個のイントラ予測モードを有するイントラモードコーディング
自然映像に表される任意のエッジ方向をキャプチャするために、指向性イントラモードの数は、HEVCで使用されるように、33から65に拡張される。追加の指向性モードは、図2において赤い点線の矢印で示され、平面モードとDCモードは同じままである。これらのより密度の高い指向性イントラ予測モードは、すべてのブロックサイズ、および輝度およびクロマイントラ予測の両方に適用される。
【0028】
従来のアンギュラ・イントラ予測方向は、図2に示すように、時計回り方向に45度から-135度まで規定される。VTMにおいて、いくつかの従来の角度イントラ予測モードは、非正方形のブロックのために、広角イントラ予測モードに適応的に置き換えられる。置換されたモードは、元の方法を使用して信号通知され、構文解析後、広角モードのインデックスに再マッピングされる。イントラ予測モードの総数は変化せず、すなわち、67であり、イントラモードのコーディングは変化しない。
【0029】
前記HEVCにおいて、すべてのイントラコーディングされたブロックは正方形の形状を有し、その辺の各々の長さは2の累乗である。このように、DCモードを使用してイントラ予測子を生成するのに、除算演算を必要としない。VVCにおいて、ブロックは長方形であってもよく、一般的な場合、ブロックごとに除算演算を使用することが必要である。DC予測のための除算演算を回避するために、長辺のみを使用して非正方形のブロックの平均を計算する。
図2は、67個のイントラ予測モードの例を示す。
【0030】
2.4.インター予測
インター予測CUごとに、動きベクトル、参照ピクチャインデックス、および参照ピクチャリスト使用インデックスで構成される動きパラメータ、並びにVVCの新しいコーディング特徴に必要な追加情報が、インター予測サンプル生成に使用される。動きパラメータは、明示的または暗示的に信号通知されてもよい。CUがスキップモードでコーディングされる場合、CUは1つのPUに関連付けられ、有意な残差係数、コーディング動きベクトルデルタまたは参照ピクチャインデックスを有さない。マージモードが指定され、これにより、空間的および時間的候補、並びにVVCに導入された追加のスケジュールを含む、現在のCUのための動きパラメータを近傍のCUから取得する。マージモードは、スキップモードのためだけでなく、任意のインター予測されたCUに適用することができる。マージモードの代替案は、動きパラメータを明確に送信することであり、動きベクトル、各参照ピクチャリストおよび参照ピクチャリスト使用フラグに対応する参照ピクチャインデックス、並びに他の必要な情報が、CUごとに明確に信号通知される。
【0031】
2.5.イントラブロックコピー(IBC)
イントラブロックコピー(IBC)は、SCCのHEVC拡張に採用されているツールである。これにより、スクリーンコンテンツ材料のコーディング効率が有意に向上することが知られている。IBCモードはブロックレベルコーディングモードとして実装されるので、エンコーダにおいてブロックマッチング(BM)を行い、各CUごとに最適なブロックベクトル(又は動きベクトル)を見出す。ここで、ブロックベクトルは、現在のブロックから、現在のピクチャの内部で既に再構成された参照ブロックへの変位を示すために使用される。IBCコーディングされたCUの輝度ブロックベクトルは、整数精度である。クロマブロックベクトルは、整数精度にも丸められる。AMVRと組み合わせた場合、IBCモードは、1画素と4画素の動きベクトル精度を切り替えることができる。IBCコーディングされたCUは、イントラ予測モード又はインター予測モード以外の第3の予測モードとして扱われる。IBCモードは、幅および高さの両方が64輝度サンプル以下のCUに適用可能である。
【0032】
エンコーダ側では、IBCのためにハッシュに基づく動き推定を行う。エンコーダは、16個の輝度サンプル以下の幅または高さを有するブロックに対してRDチェックを行う。非マージモードの場合、まず、ハッシュに基づく検索を使用してブロックベクトル検索を行う。ハッシュ検索が有効な候補を返さないなら、局所検索に基づくブロックマッチングを行う。
【0033】
ハッシュに基づく検索において、現在のブロックと参照ブロックとのハッシュキーマッチング(32ビットCRC)を、許容されるすべてのブロックサイズに拡大する。現在のピクチャにおけるすべての位置のためのハッシュキーの計算は、4×4個のサブブロックに基づく。現在のブロックのサイズがより大きい場合、すべての4×4サブブロックのすべてのハッシュキーが対応する参照位置のハッシュキーに合致する場合に、ハッシュキーは参照ブロックのそれに合致すると決定される。複数の参照ブロックのハッシュキーが現在のブロックのハッシュキーに合致すると分かったなら、合致した各参照ブロックのブロックベクトルコストを計算し、最小限のコストを有するものを選択する。
ブロックマッチング検索において、検索範囲は前のCTUおよび現在のCTUの両方をカバーするように設定される。
CUレベルにおいて、IBCモードはフラグで信号通知され、IBC AMVPモードまたはIBCスキップ/マージモードとして以下のように信号通知され得る。
【0034】
-IBCスキップ/マージモード:マージ候補インデックスを使用して、近傍の候補IBCコーディングされたブロックからのリストにおいて、どのブロックベクトルを使用して現在のブロックを予測するかを示す。マージリストは、空間候補、HMVP候補、およびペアワイズ候補からなる。
【0035】
- IBC AMVPモード:ブロックベクトル差を動きベクトル差と同様にコーディングする。ブロックベクトル予測方法は、2つの候補を予測子として使用し、1つは左の近傍からのものであり、1つは上の近傍のものである(IBCコーディングされている場合)。いずれかの近傍が利用可能でない場合、デフォルトのブロックベクトルが予測子として使用される。ブロックベクトル予測子インデックスを示すように、フラグが信号通知される。
【0036】
2.6.パレットモード
パレットモード信号通知の場合、パレットモードはコーディングユニットに対する予測モードとしてコーディングされ、すなわち、コーディングユニットに対する予測モードは、MODE_INTRA,MODE_INTER,MODE_IBC,MODE_PLTであってもよい。パレットモードが利用される場合、CUにおける画素値は、代表的な色値の小集合によって表される。前記集合をパレットと呼ぶ。パレットの色に近い値を有する画素の場合、パレットインデックスが信号通知される。パレットの外側の値を有する画素に対して、この画素はエスケープシンボルで表され、量子化された画素値は直接信号通知される。
【0037】
パレット符号化ブロックを復号するために、デコーダは、パレットの色およびインデックスを復号する必要がある。パレットの色はパレットテーブルで記述され、パレットテーブルコーディングツールで符号化される。現在のCUにエスケープシンボルが存在するかどうかを示すべく、CUごとにエスケープフラグが信号通知される。エスケープシンボルが存在する場合、パレットテーブルを1つだけ増やし、最後のインデックスをエスケープモードに割り当てる。CUにおけるすべての画素のパレットインデックスは、パレットインデックスマップを形成し、パレットインデックスマップコーディングツールによって符号化される。
【0038】
パレットテーブルをコーディングするために、パレット予測子が維持される。予測子は、各スライスの最初に初期化され、ここで予測子は0にリセットされる。パレット予測子のエントリごとに、再利用フラグが通知され、現在のパレットの一部であるかどうかが示される。再利用フラグは、ゼロのランレングスコーディングを使用して送信される。この後、新しいパレットエントリの数は、次数0の指数ゴロムコードを使用して通知される。最後に、新しいパレットエントリのコンポーネント値が通知される。現在のCUを符号化した後、現在のパレットを使用してパレット予測子を更新し、許容される最大サイズに達する(パレットスタッフィング)まで、現在のパレットにおいて再使用されていない前のパレット予測子からのエントリを新しいパレット予測子の末端に追加する。
【0039】
パレットインデックスマップをコーディングするために、インデックスは、図3に示すように、横方向および縦方向の横断走査を使用してコーディングされる。palette_transpose_flagを使用して、ビットストリームにおける走査順序を明確に信号通知する。
【0040】
図3は、水平方向および垂直方向の横断走査の例を示す。
【0041】
パレットインデックスは、2つのメインパレットサンプルモード、すなわち‘INDEX’および‘COPY_ABOVE’を使用してコーディングされる。このモードは、水平走査が使用される場合に最上行を除いたフラグを使用し、垂直走査が使用される場合に第1の列を除いたフラグを使用し、または前のモードが「COPY_ABOVE」であった場合のフラグを使用して信号通知される。「COPY_ABOVE」モードでは、上の行のサンプルのパレットインデックスをコピーする。「INDEX」モードにおいて、パレットインデックスは明確に信号通知される。「INDEX」モードおよび「COPY_ABOVE」モードの両方について、同じモードを使用してコーディングされる画素の数を指定する実行値が信号通知される。
【0042】
インデックスマップの符号化順序は、以下の通りである。まず、CUのためのインデックス値の数が信号通知される。これに続いて、トランケーテッドバイナリコーディング(truncated binary coding)を使用して、CU全体の実際のインデックス値を信号通知する。バイパスモードでは、インデックスの数およびインデックス値の両方がコーディングされる。これにより、インデックス関連バイパスビンがグループ化される。次に、パレットモード(INDEXまたはCOPY_ABOVE)および実行がインターリーブ方式で信号通知される。最後に、CU全体のためのエスケープサンプルに対応する成分エスケープ値をグループ化し、バイパスモードでコーディングする。インデックス値を信号通知した後、追加の構文要素last_run_type_flagを信号通知する。この構文要素は、インデックスの数と連動して、ブロックにおける最後の実行に対応する実行値を信号通知する必要をなくす。
【0043】
VTMにおいて、輝度およびクロマのためのコーディングユニットの分割を分離するIスライスのためにデュアルツリーが有効化される。そこで、本提案では、輝度(Y成分)とクロマ(Cb、Cr成分)とに対して別々にパレットが適用される。デュアルツリーが無効になっている場合、HEVCパレットと同様に、Y,Cb,Cr成分に対してパレットが共同で適用される。
【0044】
2.7.クロス成分線形モデル予測
VVCにおいてクロス成分線形モデル(CCLM)予測モードが使用され、この場合、線形モデルを使用することによって、同じCUの再構成された輝度サンプルに基づいて、次のようにクロマサンプルを予測する。
pred(i,j)=α・rec’(i,j)+β (2-1)
【0045】
ここで、pred(i,j)は、1つのCUにおける予測クロマサンプルを表し、rec(i,j)は、同じCUのダウンサンプリングされ再構成された輝度サンプルを表す。
【0046】
図4は、左上のサンプルの位置及びLMモードに関与する現在地のサンプルを例示する。
【0047】
図4は、α、βの導出に使用したサンプルの位置の例を示す。
【0048】
上側テンプレートおよび左側テンプレートを使用して、LMモードにおいて線形モデル係数を一緒に計算できる他に、LM_AおよびLM_Lモードと呼ばれる他の2つのLMモードにおいても代替して使用できる。LM_Aモードにおいて、上側テンプレートのみを使用して線形モデル係数を算出する。より多くのサンプルを得るために、上側テンプレートを(W+H)に拡張する。LM_Lモードにおいて、左側のテンプレートのみを使用して線形モデル係数を計算する。より多くのサンプルを得るために、左側のテンプレートを(H+W)に拡張する。非正方形ブロックの場合、上側テンプレートをW+Wに拡張し、左テンプレートをH+Hに拡張する。
【0049】
CCLMパラメータ(αおよびβ)は、せいぜい4つの近傍のクロマサンプルおよびそれらに対応するダウンサンプリングした輝度サンプルを用いて導出される。現在のクロマブロック寸法をW×Hとすると、W’およびH’は以下のように設定される。
- LMモードが適用される場合、W’=W,H’=H;
- LM-Aモードが適用される場合、W’=W+H;
- LM-Lモードが適用される場合、H’=H+W;
【0050】
上側近傍位置はS[0,-1]…S[W’-1,-1]と表され、左側近傍位置はS[-1,0]…S[-1,H’-1]と表される。次に、4つのサンプルを以下のように選択する。
- LMモードが適用される場合、および上側および左側近傍サンプルの両方が利用可能である場合には、S[W’/4,-1],S[3W’/4,-1],S[-1,H’/4],S[-1,3H’/4];
- LM-Aモードが適用されるか、または上側近傍サンプルのみが利用可能である場合、S[W’/8,-1],S[3W’/8,-1],S[5W’/8,-1],S[7W’/8,-1];
- LM-Lモードが適用されるか、または左側近傍サンプルのみが利用可能である場合、S[-1,H’/8],S[-1,3H’/8],S[-1,5H’/8],S[-1,7H’/8];
【0051】
【化1】
【0052】
最終的に、線形模型パラメータα及びβは、以下の式に従って求められる。
【0053】
【数1】
【0054】
【化2】
【0055】
これは、計算の複雑性を低減すると共に、必要な表を記憶するために必要なメモリサイズを低減する利点を有する。
【0056】
4:2:0映像シーケンスのクロマサンプル位置をマッチングするために、2つのタイプのダウンサンプリングフィルタを輝度サンプルに適用して、水平方向および垂直方向の両方向に2:1のダウンサンプリング比を達成する。ダウンサンプリングフィルタの選択は、SPSレベルフラグによって規定される。2つのダウンスマッピングフィルタは、それぞれ「タイプ0」および「タイプ2」のコンテンツに対応する。
【0057】
【数2】
【0058】
なお、上側基準ラインがCTU境界にある場合、ダウンサンプリングされた輝度サンプルを生成するために、1つの輝度線(イントラ予測における一般的な線バッファ)のみが使用される。
【0059】
このパラメータ計算は、復号処理の一部として行われ、エンコーダ検索動作として行われるだけではない。その結果、α値およびβ値をデコーダに伝達するための構文は使用されない。
【0060】
クロマイントラモードコーディングの場合、クロマイントラモードコーディングのために合計8つのイントラモードが許可される。これらのモードには、5つの伝統的なイントラモードと6つの構成要素共通の線形モデルモードが含まれる(LM、LM_AおよびLM_L)。クロマモード信号通知および導出処理を表2-2に示す。クロマモードコーディングは、対応する輝度ブロックのイントラ予測モードに直接依存する。Iスライスにおいて、輝度成分とクロマ成分に対するブロック分割構造の分離が有効化されているため、1つのクロマブロックは複数の輝度ブロックに対応してもよい。よって、クロマDMモードの場合、現在のクロマブロックの中心位置を含む、対応する輝度ブロックのイントラ予測モードは直接継承される。
【0061】
【表2】
【0062】
2.8.ブロック差分パルスコード変調コーディング(BDPCM)
JVET-M0057において、BDPCMが提案されている。現在の画素を予測するために左(A)(または上(B))の画素を使用する水平(または垂直)予測モジュールの形状により、ブロックを最もスループット効率よく処理する方法は、1つの列(またはライン)のすべての画素を並列に処理し、これらの列(またはライン)を順次処理することである。スループットを向上させるために、我々は、以下の処理を導入する。すなわち、このブロックにおいて選択された予測子が垂直である場合、幅4のブロックを水平フロンティアで二分割し、このブロックにおいて選択された予測子が水平である場合、高さ4のブロックを垂直フロンティアで二分割する。
【0063】
1つのブロックを分割する場合、1つの領域からのサンプルに対して別の領域からの画素を使用して予測を計算することはできず、このような状況が発生した場合、予測画素を予測方向の参照画素に置き換える。これについては、垂直方向に予測された4×8個のブロック内の現在の画素Xの異なる位置について、図5に示されている。
【0064】
図5は、1つの4×8個のサンプルブロックを2つの独立して復号可能な領域に分割する例を示す。
【0065】
この特性のおかげで、図6に示すように、4×4ブロックを2サイクルで処理することができ、4×8または8×4ブロックを4サイクルで処理してもよい。
【0066】
図6は、垂直方向予測モジュールを有する4×Nのブロックに対してスループットを最大にするように、画素の行を処理する例示的な順序を示す。
【0067】
表2-3に、ブロックのサイズに依存して、ブロックを処理するのに必要なサイクル数をまとめる。なお、両寸法がともに8以上である任意のブロックに対して、1サイクル当たり8画素以上の処理ができるということは自明である。
【0068】
【表3】
【0069】
2.9.量子化残差ドメインBDPCM
JVET-N0413において、量子化残差ドメインBDPCM(以下、RBDPCMと称する)が提案される。イントラ予測は、イントラ予測と同様に、予測方向(水平または垂直予測)にサンプルコピーすることで、ブロック全体で予測する。残差を量子化し、量子化された残差とその予測子(水平または垂直)量子化値との間のデルタをコーディングする。
【0070】
【化3】
【0071】
水平予測の場合、類似した規則が適用され、残差量子化サンプルは、以下の式によって得られる。
【0072】
【数3】
【0073】
【化4】
【0074】
【化5】
【0075】
水平方向の場合、
【0076】
【数4】
【0077】
【化6】
【0078】
このスキームの主な利点は、逆方向のDPCMを、係数の構文解析中にオンザフライで行うことができ、係数の構文解析中に予測子を追加するだけで済むこと、または、構文解析後に行うことができることである。
【0079】
量子化された残差ドメインBDPCMにおいては、常に変換スキップが使用される。
【0080】
2.10.VVCにおける複数の変換セット(MTS)
VTMにおいて、サイズが64×64までの大きなブロックサイズの変換が有効化され、これは、主に高解像度映像、例えば、1080pおよび4Kシーケンスに有用である。サイズ(幅または高さ、または幅と高さの両方)が64である変換ブロックに対して、高周波数変換係数をゼロにし、低周波数係数のみを保持する。例えば、M×N変換ブロックの場合、ブロック幅をM、ブロック高さをNとすると、Mが64である場合、左32列の変換係数のみが保持される。同様に、Nが64である場合、変換係数の上位32行のみが保持される。大きなブロックに対して変換スキップモードを使用する場合、値をゼロ化することなくブロック全体を使用する。VTMはまた、SPSにおける設定可能な最大変換サイズをサポートし、そのため、エンコーダは、特定の実装の必要性に基づいて、最大16長、32長、または64長の変換サイズを選択する柔軟性を有する。
【0081】
HEVCで使用されてきたDCT-IIに加え、インターコーディングされたブロックおよびイントラコーディングされたブロックの両方の残差コーディングのために、複数の変換選択(MTS)スキームが使用される。これは、DCT8/DST7から選択された複数の変換を使用する。新しく導入された変換行列は、DST-VIIおよびDCT-VIIIである。選択されたDST/DCTの基本関数を以下の表2-4に示す。
【0082】
【表4】
【0083】
変換行列の直交性を維持するために、変換行列はHEVCにおける変換行列よりも正確に量子化される。変換係数の中間値を16ビットの範囲内に維持するために、水平変換後および垂直変換後、すべての係数は10ビットを有することになる。
【0084】
MTSスキームを制御するために、SPSレベルにおいて、イントラおよびインターに対してそれぞれ別個の有効化フラグを規定する。SPSにおいてMTSが有効化されると、MTSが適用されているかどうかを示すように、CUレベルフラグが信号通知される。ここで、MTSは輝度に対してのみ適用される。MTS CUレベルフラグは、以下の条件が満たされる場合に信号通知される。
- 幅および高さが共に32以下
- CBF フラグが1である
【0085】
MTS CUフラグがゼロである場合、DCT2が両方向に適用される。しかしながら、MTS CUフラグが1である場合、2つの他のフラグが追加的に信号通知され、それぞれ水平方向および垂直方向の変換タイプを示す。表2-5に示すように、マッピングテーブルを変換し、信号通知する。イントラモードおよびブロック形状の依存性を除去することで、ISPおよび暗示的MTSのための統一した変換選択を使用する。現在のブロックがISPモードである場合、または現在のブロックがイントラブロックであり、イントラおよびインターの明示的MTSが共にオンである場合、水平および垂直変換コアの両方にDST7のみが使用される。行列精度を変換する場合、8ビットのプライマリ変換コアを使用する。そのため、HEVCで使用されるすべての変換コアは、4ポイントDCT-2及びDST-7、8ポイント、16ポイント及び32ポイントDCT-2などを含め、同じに保たれる。また、64ポイントDCT-2、4ポイントDCT-8、8ポイント、16ポイント、32ポイントDST-7及びDCT-8などの他の変換コアは、8ビットのプライマリ変換コアを使用する。
【0086】
【表5】
【0087】
大きなサイズのDST-7およびDCT-8の複雑性を低減するために、サイズ(幅または高さ、または幅と高さの両方)が32であるDST-7およびDCT-8ブロックに対して、高周波数変換係数をゼロ化する。16×16個の低周波数領域内の係数のみが保持される。
【0088】
HEVCにおけるように、ブロックの残差は、変換スキップモードでコーディングしてもよい。構文コーディングの冗長性を回避するために、CUレベルMTS_CU_flagがゼロでない場合、変換スキップフラグは信号通知されない。変換スキップのブロックサイズの制限は、JEM4におけるMTSの場合と同じであり、ブロックの幅および高さが両方とも32以下である場合、変換スキップがCUに適用可能であることを示す。なお、現在のCUのためにLFNSTまたはMIPがアクティブ化されるとき、暗示的MTS変換がDCT2に設定される。また、MTSがインターコーディングされたブロックに対して有効化される場合、暗示的MTSは依然として有効化され得る。
【0089】
2.11.低周波数非可分変換(LFNST)
VVCにおいて、図7に示すように、順方向プライマリ変換と量子化との間(エンコーダ側)、および逆量子化と逆方向プライマリ変換(デコーダ側)との間に、縮小セカンダリ変換として知られるLFNST(低周波数非可分変換)が適用される。LFNSTにおいて、ブロックサイズに従って、4×4非可分変換または8×8非可分変換を適用する。例えば、4×4のLFNSTは、小さなブロック(即ち、min(幅、高さ)<8)に適用され、8×8のLFNSTは、より大きなブロック(即ち、min(幅、高さ)>4)に適用される。
【0090】
図7は、低周波数非可分変換(LFNST)処理の例を示す。
【0091】
【化7】
【0092】
【化8】
【0093】
【化9】
【0094】
2.11.1.縮小非可分変換
【0095】
【化10】
【0096】
【化11】
RTのための逆変換行列は、その順方向変換の転置である。8×8のLFNSTの場合、4倍の縮小率を適用し、従来の8×8の非可分変換行列サイズである64×64の直接行列を16×48の直接行列に縮小する。すなわち、デコーダ側において、48×16逆RST行列を使用して、8×8の左上の領域にコア(一次)変換係数を生成する。同じ変換セット構成を有する16×64個の行列の代わりに16×48個の行列を適用する時、各々の行列は、右下4×4ブロックを除く左上8×8ブロックの3つの4×4ブロックから48個の入力データを取り込む。寸法を縮小することによって、すべてのLFNST行列を記憶するためのメモリ使用量を10KBから妥当な性能低下をもたらす8KBに縮小する。複雑性を低減するために、LFNSTは、第1の係数サブグループの外側のすべての係数が非有意な場合にのみ適用可能であるように制限される。従って、LFNSTが適用される場合、すべての1次のみの変換係数はゼロでなければならない。これにより、前回の有意位置に信号通知したLFNSTインデックスの調整を可能にし、従って、現在のLFNST設計における余分な係数スキャンを回避するもので、このことは、特定の位置においてだけ有意係数をチェックするために必要とされる。LFNSTを(1画素当たりの乗算に関して)取り扱う最悪のケースは、4×4および8×8ブロックに対する非可分変換を、それぞれ8×16および8×48変換に限定する。そのような場合、LFNSTが適用されるとき、前回の有意走査位置は、16未満の他のサイズの場合、8未満でなければならない。4×N、N×4、およびN>8の形状を有するブロックに対して、提案された制限は、LFNSTが1回だけ適用されることと、左上の4×4領域のみに適用されることを意味する。LFNSTが適用される場合、すべての1次のみの係数がゼロであるため、このような場合は、プライマリ変換に必要な演算の数が低減される。エンコーダの観点から見ると、LFNST変換を試験する時には、係数の量子化は非常に簡単になる。最初の16個の係数に対して(スキャン順に)、ひずみ率が最適化された量子化を最大限に実行しなければならず、残りの係数は強制的にゼロになるようにする。
【0097】
2.11.2.LFNST(低周波数非可分変換)変換選択
全体で4個の変換セットがあり、1つの変換セット当たり2つの非可分変換行列(カーネル)がLFNSTにおいて使用される。表2-6に示すように、イントラ予測モードから変換セットへのマッピングは、予め規定される。現在のブロック(81<=predModeIntra<=83)に3つのCCLMモード(INTRA_LT_CCLM、INTRA_T_CCLM、またはINTRA_L_CCLM)のうちの1つを使用する場合、現在のクロマブロックに対して変換集合0を選択する。各変換セットに対して、選択された非可分セカンダリ変換候補は、明示的に信号通知されたLFNSTインデックスによってさらに規定される。このインデックスは、変換係数の後、イントラCUごとに1回、ビットストリームで信号通知される。
【0098】
【表6】
【0099】
2.11.3.LFNSTインデックスの信号通知および他のツールとの相互作用
LFNSTは、第1の係数サブグループの外側のすべての係数が非有意である場合にのみ適用可能であるように制限されるため、LFNSTインデックスのコーディングは、最後の有意係数の位置に依存する。また、LFNSTインデックスはコンテキストコーディングされるが、イントラ予測モードに依存せず、第1のビンのみがコンテキストコーディングされる。さらに、LFNSTは、イントラスライスおよびインタースライスの両方において、且つ輝度およびクロマの両方に対して適用される。デュアルツリーが有効化される場合、輝度およびクロマのためのLFNSTインデックスは、別個に信号通知される。インタースライス(デュアルツリーが無効化される)の場合、単一のLFNSTインデックスが信号通知され、輝度およびクロマの両方に使用される。
【0100】
ISPモードが選択された場合、すべての実行可能な分割ブロックにRSTが適用されたとしても、性能の向上は限界であったため、LFNSTは無効化され、RSTインデックスは信号通知されない。さらに、ISP予測された残差のためにRSTを無効化することにより、符号化の複雑性を低減してもよい。MIPモードが選択されているとき、LFNSTも無効化され、インデックスは信号通知されない。
【0101】
既存の最大変換サイズ制限(64×64)のために、64×64より大きいCUが暗示的に分割される(TUタイリング)ことを考慮すると、LFNSTインデックス検索は、特定の数の復号パイプラインステージのために、データバッファリングを4倍に増加させ得る。従って、LFNSTが許容される最大サイズは、64×64に制限される。なお、LFNSTは、DCT2のみで有効化される。
【0102】
2.12.クロマの変換スキップ
VVCにおいて、クロマ変換スキップ(TS)が導入される。その動機は、transform_skip_flagおよびmts_idxをresidual_coding部分に再配置することによって、輝度とクロマとの間のTSおよびMTS信号通知を統一することである。クロマTSのために1つのコンテキストモデルが追加される。mts_idxについては、コンテキストモデルもバイナリゼーションも変更されない。さらに、クロマTSを使用する場合にも、TS残差コーディングが適用される。
【0103】
意味論
【0104】
【化12】
【0105】
2.13.クロマ用BDPCM
【0106】
【化13】
【0107】
【表7】
【0108】
【化14】
【0109】
どちらのブロックも通常ブロッキング・アーチファクトの原因となる変換ステージを使用しないので、非ブロック化フィルタは、2つのBlock-DPCMブロックの間の境界で非アクティブ化される。この非アクティブ化は、輝度およびクロマ成分に対して独立して行われる。
【0110】
3.開示される解決策が解決しようとする技術課題の例
CCLMおよびTSにおける線形パラメータを導出する現在の設計は、以下の問題を有する。
1.非4:4:4カラーフォーマットの場合、CCLMにおける線形パラメータの導出は、近傍のクロマサンプルおよびダウンサンプリングして並置した近傍の輝度サンプルを含む。図8に示すように、現在のVVCにおいて、最も近いラインがCTU境界にない場合、4:2:2映像用の現在のブロックより上側の第2のラインを使用して、ダウンサンプリングして並置した近傍の最上の輝度サンプルを導出する。しかしながら、4:2:2映像の場合、垂直解像度は変化しない。それゆえ、ダウンサンプリングして並置した近傍の最上の輝度サンプルと、近傍のクロマサンプルとの間には、位相シフトが存在する。
【0111】
図8は、4:2:2映像のためのCCLMパラメータの導出に使用される、近傍のクロマサンプルおよびダウンサンプリングして並置した近傍の輝度サンプルの例を示す。
2.現在のVVCにおいて、輝度変換スキップフラグの信号通知およびクロマ変換スキップフラグの信号通知のための条件チェックにおいて、同じ最大ブロックサイズが使用される。このような設計は、カラーフォーマットを考慮しておらず、望ましくない。
a.輝度BDPCMフラグの信号通知およびクロマBDPCMフラグの信号通知についても、同様の問題が存在し、同じ最大ブロックサイズは条件チェックに用いられる。
【0112】
4.実施形態および技術のリスト化
以下に列記されるものは、一般的な概念を説明するための例であると考えられるべきである。これら項目は狭い意味で解釈されるべきではない。さらに、これらの項目は、任意の方法で組み合わせることができる。
【0113】
本文書において、用語「CCLM」は、現在の色成分のサンプル/残差を予測するため、または現在の色成分におけるサンプルの再構成を導出するために、クロスカラー成分情報を利用するコーディングツールを表す。本発明は、VVCに記載されたCCLM技術に限定されない。
【0114】
【化15】
1.クロマブロックのためのCCLMパラメータを導出するとき、その並置した輝度ブロックの1つ以上の上側近傍ラインを使用して、そのダウンサンプリングして並置した近傍の最上の輝度サンプルを導出してもよい。
a.一例において、現在のクロマブロックが最上のCTU境界にない場合、上側の第2のラインの代わりに、並置した輝度ブロックの最も近い上側のラインを、ダウンサンプリングして並置した最上の輝度サンプルの導出に使用してもよい。
i.一例において、1つの同じダウンサンプリングフィルタは、ダウンサンプリングして並置した近傍の最上の輝度サンプルおよびダウンサンプリングして並置した近傍の左側輝度サンプルを導出するために使用してもよい。
1)例えば、[1 2 1]フィルタを使用してもよい。より具体的には、pDsY[x]=(pY[2*x-1][-1]+2*pY[2*x][-1]+pY[2*x+1][-1]+2)>>2であり、pY[2*x][-1],pY[2*x-1][-1],pY[2*x+1][-1]は、最も近い上側の近傍ラインからの輝度サンプルであり、pDstY[x]は、ダウンサンプリングして並置した最上の輝度サンプルである。
ii.一例において、異なるダウンサンプリングフィルタ(例えば、異なるフィルタタップ/異なるフィルタ係数)を、ダウンサンプリングして並置した近傍の最上の輝度サンプルおよびダウンサンプリングして並置した近傍の左側輝度サンプルを導出するために使用してもよい。
iii.一例において、1つの同じダウンサンプリングフィルタを、クロマブロックの位置に関わらず(例えば、クロマブロックは、最上のCTU境界にあってもなくてもよい)、ダウンサンプリングして並置した近傍の最上の輝度サンプルを導出するために使用してもよい。
iv.一例において、上記方法は、4:2:2フォーマットの画像/映像にのみ適用されてもよい。
b.一例において、現在のクロマブロックが最上のCTU境界にない場合、上側の第2のラインを除いて、並置した輝度ブロックの最も近い上側のラインを含む上側の近傍の輝度サンプルを、ダウンサンプリングして並置した最上の輝度サンプルの導出に使用してもよい。
c.一例において、ダウンサンプリングして並置した近傍の最上の輝度サンプルの導出は、複数のラインに位置したサンプルに依存してもよい。
i.一例において、それは、2つ目の最も近いラインと、並置した輝度ブロックの上側の最も近いラインとの両方に依存してもよい。
ii.一例において、ダウンサンプリングして並置した近傍の最上の輝度サンプルを、異なるカラーフォーマット(例えば、4:2:0および4:2:2)に対して1つの同じダウンサンプリングフィルタを使用して導出してもよい。
1)一例において、6タップフィルタ(例えば、[1 2 1; 1 2 1])を利用してもよい。
a)一例において、ダウンサンプリングして並置した近傍の最上の輝度サンプルは、pDsY[x]=(pY[2*x-1][-2]+2*pY[2*x][-2]+pY[2*x+1][-2]+pY[2*x-1][-1]+2*pY[2*x][-1]+pY[2*x+1][-1]+4)>>3として導出されてもよく、pYは、対応する輝度サンプルであり、pDstY[x]は、ダウンサンプリングして並置した近傍の最上の輝度サンプルを表す。
b)さらに、代替的に、上記方法は、sps_cclm_colocated_chroma_flagが0に等しい場合に適用されてもよい。
2)一例において、5タップフィルタ(例えば、[0 1 0; 1 4 1; 0 1 0])を利用してもよい。
a)一例において、ダウンサンプリングして並置した近傍の最上の輝度サンプルは、pDsY[x]=(pY[2*x][-2]+pY[2*x-1][-1]+4*pY[2*x][-1]+pY[2*x+1][-1]+pY[2*x][0]+4)>>3として導出されてもよく、pYは、対応する輝度サンプルであり、pDstY[x]は、ダウンサンプリングして並置した近傍の最上の輝度サンプルを表す。
b)さらに代替的に、上記方法は、sps_cclm_colocated_chroma_flagが1に等しい場合に適用されてもよい。
iii.一例において、上記方法は、4:2:2フォーマットの画像/映像にのみ適用されてもよい。
【化16】
2.変換スキップコーディングされたブロックの最大ブロックサイズは、色成分に依存してもよい。ここで、輝度およびクロマのための変換スキップコーディングされたブロックの最大ブロックサイズを、それぞれMaxTsSizeYおよびMaxTsSizeCとする。
a.一例において、輝度およびクロマ成分に対する最大ブロックサイズは異なってもよい。
b.一例において、2つのクロマ成分に対する最大ブロックサイズは異なってもよい。
c.一例において、輝度およびクロマ成分に対する、または各色成分に対する最大ブロックサイズは、別個に信号通知されてもよい。
i.一例において、MaxTsSizeC/MaxTsSizeYは、シーケンスレベル/ピクチャレベル/スライスレベル/タイルグループレベルで、例えば、シーケンスヘッダ/ピクチャヘッダ/SPS/VPS/DPS/PPS/APS/スライスヘッダ/タイルグループヘッダで信号通知されてもよい。
ii.一例において、MaxTsSizeYは、たとえば、変換スキップが有効化されるかされないか、または/BDPCMが有効化されるかされないかに従って、条件付きで信号通知されてもよい。
iii.一例において、MaxTsSizeCは、たとえば、カラーフォーマット/変換スキップが有効化されるかされないか/BDPCMが有効化されるかされないかに従って条件付きで信号通知されてもよい。
iv.代替的に、輝度成分とクロマ成分との間の最大ブロックサイズの予測コーディングを利用してもよい。
d.一例において、MaxTsSizeCは、MaxTsSizeYに依存してもよい。
i.一例において、MaxTsSizeCは、MaxTsSizeYに等しく設定されてもよい。
ii.一例において、MaxTsSizeCは、MaxTsSizeY/N(Nは整数)に等しく設定されてもよい。例えば、N=2である。
e.一例において、MaxTsSizeCは、クロマサブサンプリング比に従って設定されてもよい。
i.一例において、MaxTsSizeCは、MaxTsSizeY>>SubWidthCに等しく設定され、SubWidthCは、表2-1に定義されている。
ii.一例において、MaxTsSizeCは、MaxTsSizeY>>SubHeightCに等しく設定され、SubHeightCは、表2-1に定義されている。
iii.一例において、MaxTsSizeCは、MaxTsSizeY>>max(SubWidthC,SubHeightC)に等しく設定される。
iv.一例において、MaxTsSizeCは、MaxTsSizeY>>min(SubWidthC,SubHeightC)に等しく設定される。
【0115】
3.変換コーディングされたブロックのための最大許容ブロックサイズの幅および高さは、異なるように定義されてもよい。
a.一例において、最大許容ブロックサイズの幅および高さは、別個に信号通知されてもよい。
b.一例において、クロマ変換コーディングされたブロックに対する最大許容ブロックサイズの幅および高さは、それぞれMaxTsSizeWCおよびMaxTsSizeHCと表されてもよい。MaxTsSizeWCは、MaxTsSizeY>>SubWidthCに等しく設定されてもよく、MaxTsSizeHCは、MaxTsSizeY>>SubHeightCに等しく設定されてもよい。
i.一例において、MaxTsSizeYは、黒丸2で定義されているものである。
【化17】
a.一例において、クロマ変換スキップフラグは、以下の条件に従って条件付きで信号通知されてもよい。
i.一例において、条件は、tbWがMaxTsSizeC以下であり、tbHがMaxTsSizeC以下であり、tbWおよびtbHが現在のクロマブロックの幅および高さである。
1)一例において、MaxTsSizeCは、黒丸2~3のそれと同じように定義できる。
ii.一例において、条件は、tbWがMaxTsSizeWC以下であり、tbHがMaxTsSizeHC以下であり、tbWおよびtbHが現在のクロマブロックの幅および高さであり、MaxTsSizeWCおよびMaxTsSizeHCがそれぞれクロマ変換スキップコーディングされたブロックの最大許容ブロックサイズの幅および高さを表す。
1)一例において、MaxTsSizeWCおよび/またはMaxTsSizeHCは、黒丸3のそれと同じように定義できる。
【化18】
【0116】
5.2つのクロマ色成分のために2つのTSフラグをコーディングする代わりに、1つの構文を使用して2つのクロマ色成分のためのTSの使用を示すことが提案される。
【化19】
i.一例において、単一の構文要素の値は、バイナリ値である。
1)さらに代替的に、2つのクロマ成分ブロックは、単一の構文要素に従って、同じTSモードのオン/オフ制御を共有する。
a)一例において、単一の構文要素の値が0に等しいことは、TSが両方に対して無効化されていることを示す。
b)一例において、単一の構文要素の値が0に等しいことは、TSが両方に対して有効化されていることを示す。
2)代替的に、単一の構文要素の値がKに等しい(例えば、K=1)かどうかに基づいて、第2の構文要素をさらに信号通知することができる。
a)一例において、単一の構文要素の値が0に等しいことは、両方の構文要素に対してTSが無効化されていることを示し、単一の構文要素の値が0に等しいことは、2つのクロマ成分のうち少なくとも1つのクロマ成分に対してTSが有効化されていることを示す。
b)第2の構文要素を使用して、TSを2つのクロマ成分のうちのいずれか1つに適用するか、および/またはTSをその両方に適用するかを示してもよい。
ii.一例において、単一の構文要素の値は、非バイナリ値である。
1)一例において、単一の構文要素の値がK0に等しいことは、TSが両方に対して無効化されていることを示す。
2)一例において、単一の構文要素の値がK1に等しいことは、第1のクロマ色成分に対してTSが有効化されており、第2の色成分に対してTSが無効化されていることを示す。
3)一例において、単一の構文要素の値がK2に等しいことは、第1のクロマ色成分に対してTSが無効化されており、第2の色成分に対してTSが有効化されていることを示す。
4)一例において、単一の構文要素の値がK3に等しいことは、TSが両方に対して有効であることを示す。
5)一例において、単一の構文要素は、固定長、単項、切り捨てられた単項、k次のEG2値化法を使用してコーディングされてもよい。
iii.一例において、単一の構文要素および/または第2の構文要素は、コンテキストコーディングされてもよいし、またはバイパスコーディングされてもよい。
【0117】
【化20】
【0118】
6.上記開示された方法を適用するかどうかおよび/またはどのように適用するかは、例えば、シーケンスヘッダ/ピクチャヘッダ/SPS/VPS/DPS/PPS/APS/スライスヘッダ/タイルグループヘッダにおいて、シーケンスレベル/ピクチャレベル/スライスレベル/タイルグループレベルで信号通知してもよい。
【0119】
7.上述した開示された方法を適用するかどうか、および/またはどのように適用するかは、カラーフォーマット、シングル/デュアルツリー分割等のコーディングされた情報に依存してもよい。
【0120】
5.実施形態
この章は、例示的な実施形態およびこれらの実施形態を説明するように現在のVVC規格を修正する方法を示す。VVC仕様の変更は、太字およびイタリック文字で強調されている。削除されたテキストには二重括弧で囲んだ印が付けられている(例えば、[[a]]は文字「a」の削除を意味する)。
【0121】
5.1.実施形態1
JVET-P2001-v9で規定される作業草案は、次のように変更することができる。
【0122】
【化21】

3.x=0..nTbW-1,y=0..nTbH-1としたときの、ダウンサンプリングして並置した輝度サンプルpDsY[x][y]は、以下のように導出される。
- SubWidthCとSubHeightCの両方が1に等しい場合、以下が適用される。
- x=1..nTbW-1、y=1..nTbH-1としたときのpDsY[x][y]は、次のように導出される。
pDstY[x][y]=pY[x][y] (8-159)
- そうでない場合、以下が適用される。
- 1次元フィルタ係数アレイF1、F2、および2次元フィルタ係数アレイF3、F4は、以下のように規定される。
F1[i]=1,with i=0..1 (8-160)
F2[0]=1,F2[1]=2,F2[2]=1 (8-161)
F3[i][j]=F4[i][j]=0,with i=0..2,j=0..2 (8-162)
- SubWidthCとSubHeightCの両方が2に等しい場合、以下が適用される。
F1[0]=1,F1[1]=1 (8-163)
F3[0][1]=1,F3[1][1]=4,F3[2][1]=1,F3[1][0]=1,F3[1][2]=1 (8-164)
F4[0][1]=1,F4[1][1]=2,F4[2][1]=1 (8-165)
F4[0][2]=1,F4[1][2]=2,F4[2][2]=1 (8-166)
- そうでない場合、以下が適用される。
F1[0]=2,F1[1]=0 (8-167)
F3[1][1]=8 (8-168)
F4[0][1]=2,F4[1][1]=4,F4[2][1]=2, (8-169)
【0123】

5.numSampTが0よりも大きい場合、選択された近傍の最上のクロマサンプルpSelC[idx]は、idx=cntL..cntL+cntT-1とした場合のp[pickPosT[idx-cntL]][-1]に等しく設定され、ダウンサンプリングした近傍の最上の輝度サンプルpSelDsY[idx]は、idx=0..cntL+cntT-1として、以下のように規定される。

- そうでない場合(sps_cclm_colocated_chroma_flagが0に等しい場合)、以下が適用される。
- xが0よりも大きい場合、以下が適用される。
- bCTUboundaryがFALSEに等しい場合、以下が適用される。
【化22】
- そうでない場合(bCTUboundaryがTRUEに等しい場合)、以下が適用される。
pSelDsY[idx]=(F2[0]*pY[SubWidthC*x-1][-1]+
F2[1]*pY[SubWidthC*x][-1]+ (8-194)
F2[2]*pY[SubWidthC*x+1][-1]+2)>>2
- そうでない場合(xが0に等しい)、以下が適用される。
- availTLがTRUEに等しく、bCTUboundaryがFALSEに等しい場合、以下が適用される。
【化23】
- そうでない場合、availTLがTRUEに等しく、bCTUboundaryがTRUEに等しい場合、以下が適用される。
pSelDsY[idx]=(F2[0]*pY[-1][-1]+F2[1]* pY[0][-1]+
F2[2]*pY[1][-1]+2)>>2 (8-196)
- そうでない場合、availTLがFALSEに等しく、bCTUboundaryがFALSEに等しい場合、以下が適用される。
pSelDsY[idx]=(F1[1]*pY[0][-2]+F1[0]*pY[0][-1]+1)>>1 (8-197)
- そうでない場合(availTLがFALSEに等しく、bCTUboundaryがTRUEに等しい場合)、以下が適用される。
pSelDsY[idx]=pY[0][-1] (8-198)
【0124】
5.2.実施形態2
本実施形態において、最大許容変換スキップコーディングされたブロックサイズに従ったクロマ変換スキップフラグコーディングの例を示す。JVET-P2001-v9で規定される作業草案は、次のように変更することができる。
【0125】
【表8】
【0126】
5.3.実施形態3
本実施形態において、最大許容変換スキップコーディングされたブロックサイズに従ったクロマ変換スキップフラグコーディングの例を示す。JVET-P2001-v9で規定される作業草案は、次のように変更することができる。
【0127】
【表9】
【表10】
【0128】
図9は、映像処理装置900のブロック図である。装置900は、本明細書に記載の方法の1つ以上を実装するために使用してもよい。装置900は、スマートフォン、タブレット、コンピュータ、IoT(Internet of Things)受信機等により実施されてもよい。装置900は、1つ以上の処理装置902と、1つ以上のメモリ904と、映像処理ハードウェア906と、を含んでもよい。1つまたは複数の処理装置902は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数可)904は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア906は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい(例えば、前の項目に記載されているもの)。いくつかの実施形態において、ハードウェア906は、処理装置902、例えばグラフィック処理装置内に部分的にまたは全体が含まれてもよい。
【0129】
図10は、例示的な映像エンコーダのブロック図を示す。
【0130】
図11は、映像を処理する方法1100のフローチャートである。この方法1100は、映像のクロマブロックと映像のコーディングされた表現との間の変換について、ダウンサンプリングフィルタを使用して、同一位置に配置された輝度ブロックの、正の整数であるN個の上側近傍ラインから生成され、ダウンサンプリングされた、同一位置に配置された近傍の最上の輝度サンプルを使用することによって、クロス成分線形モデルのパラメータを導出すること(1102)と、クロス成分線形モデルを使用して生成された予測クロマブロックを使用して、前記変換を行うこと(1104)とを含む。
【0131】
図12は、開示された技術を実装することができる例示的な映像処理システムを示すブロック図である。
【0132】
図12は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1200を示すブロック図である。様々な実装形態は、システム1200のモジュールの一部又は全部を含んでもよい。システム1200は、映像コンテンツを受信するための入力ユニット1202を含んでもよい。映像コンテンツは、未加工又は非圧縮フォーマット、例えば、8又は10ビットのマルチコンポーネント画素値で受信されてもよく、又は圧縮又は符号化フォーマットで受信されてもよい。入力ユニット1202は、ネットワークインターフェース、周辺バスインターフェース、又は記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、パッシブ光ネットワーク(PON)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェース等の無線インターフェースを含む。
【0133】
システム1200は、本明細書に記載される様々なコーディング又は符号化方法を実装することができるコーディングコンポーネント1204を含んでもよい。コーディングコンポーネント1204は、入力ユニット1202からの映像の平均ビットレートをコーディングコンポーネント1204の出力に低減し、映像のコーディングされた表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像コード変換技術と呼ばれることがある。コーディングコンポーネント1204の出力は、コンポーネント1206によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力ユニット1202において受信された、記憶された又は通信された映像のビットストリーム(又はコーディングされた)表現は、コンポーネント1208によって使用されて、表示インターフェース1210に送信される画素値又は表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像伸張(映像展開)と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作又はツールと呼ぶが、コーディングツール又は動作はエンコーダで使用され、それに対応する、コーディングの結果を逆にする復号ツール又は動作は、デコーダによって実行されることが理解されよう。
【0134】
周辺バスインターフェースまたは表示インターフェースの例は、ユニバーサルシリアルバス(USB)または高精細マルチメディアインターフェース(HDMI)またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、シリアルアドバンスドテクノロジーアタッチメント(SATA)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、又はデジタルデータ処理及び/又は映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
【0135】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが有効化される場合、エンコーダは、1つの映像ブロックを処理する際にこのツールまたはモードを使用するまたは実装するが、このツールまたはモードの使用に基づいて、結果として得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックから映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールまたはモードが有効化される場合に、この映像処理ツールまたはモードを使用する。別の例において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
【0136】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを無効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが無効にされている場合、エンコーダは、映像のブロックを映像のビットストリーム表現に変換する際に、このツールまたはモードを使用しない。別の例において、映像処理ツールまたはモードが無効にされている場合、デコーダは、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用してビットストリームが修正されていないことを知って、ビットストリームを処理する。
【0137】
本明細書に開示された、およびその他の解決策、実施例、実施形態、モジュール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1つ以上の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1つ以上の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブル処理装置、コンピュータ、または複数の処理装置、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、処理装置ファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1つ以上の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報を符号化するために生成される。
【0138】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。1つのコンピュータプログラムを、1つのサイトに位置する1つのコンピュータ、または複数のサイトに分散され通信ネットワークによって相互接続される複数のコンピュータで実行させるように展開することも可能である。
【0139】
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を実行するための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブル処理装置によって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
【0140】
コンピュータプログラムの実行に適した処理装置は、例えば、汎用および専用マイクロ処理装置の両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上の処理装置を含む。一般的に、処理装置は、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するための処理装置と、命令およびデータを記憶するための1つ以上のメモリデバイスとである。一般的に、コンピュータは、データを記憶するための1つ以上の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。処理装置およびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
【0141】
図13は、本開示の技法を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
【0142】
図13に示すように、映像コーディングシステム100は、送信元デバイス110と、送信先デバイス120と、を備えてもよい。送信元デバイス110は、映像符号化機器とも称され得る符号化映像データを生成する。送信先デバイス120は、送信元デバイス110によって生成された、映像復号デバイスと呼ばれ得る符号化映像データを復号し得る。
【0143】
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インターフェース116と、を備えてもよい。
【0144】
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインターフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1つ以上のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データを符号化し、ビットストリームを生成する。ビットストリームは、映像データのコーディングされた表現を形成するビットシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインターフェース116は、変復調器(モデム)および/または送信機を含んでもよい。符号化された映像データは、ネットワーク130aを介して、I/Oインターフェース116を介して直接送信先デバイス120に送信されることができる。符号化された映像データは、送信先デバイス120がアクセスするために、記憶媒体/サーバ130bに記憶してもよい。
【0145】
送信先デバイス120は、I/Oインターフェース126、映像デコーダ124、および表示装置122を含んでもよい。
【0146】
I/Oインターフェース126は、受信機および/またはモデムを含んでもよい。I/Oインターフェース126は、送信元デバイス110または記憶媒体/サーバ130bから符号化映像データを取得してもよい。映像デコーダ124は、符号化された映像データを復号してもよい。表示装置122は、復号した映像データをユーザに表示してもよい。表示装置122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインターフェースするように構成される送信先デバイス120の外部にあってもよい。
【0147】
映像エンコーダ114および映像デコーダ124は、高効率映像コーディング(HEVC)規格、汎用映像コーディング(VVC)規格、および他の現在のおよび/または更なる規格等の映像圧縮規格に従って動作してもよい。
【0148】
図14は、映像エンコーダ200の一例を示すブロック図であり、この映像エンコーダ200は、図13に示されるシステム100における映像エンコーダ114であってもよい。
【0149】
映像エンコーダ200は、本開示の技術のいずれか又は全部を実行するように構成されてもよい。図14の実施例において、映像エンコーダ200は、複数の機能モジュールを備える。本開示で説明される技法は、映像エンコーダ200の様々なモジュール間で共有されてもよい。いくつかの例では、処理装置は、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0150】
映像エンコーダ200の機能モジュールは、分割ユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205及びイントラ予測ユニット206を含んでもよい予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆方向変換ユニット211と、再構成ユニット212と、バッファ213と、エントロピー符号化ユニット214とを含んでもよい。
【0151】
他の例において、映像エンコーダ200は、より多くの、より少ない、又は異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測(predication)を行うことができる。
【0152】
さらに、動き推定ユニット204及び動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、図14の例においては別々に表されている。
【0153】
分割ユニット201は、1つのピクチャを1つ以上の映像ブロックに分割することができる。映像エンコーダ200及び映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
【0154】
モード選択ユニット203は、例えば、エラー結果に基づいて、イントラ又はインターのいずれかのコーディングモードの1つを選択し、得られたイントラ又はインターコーディングされたブロックを、残差生成ユニット207に供給して残差ブロックデータを生成し、また再構成ユニット212に供給して参照ピクチャとして符号化ブロックを再構成してもよい。本発明の実施例において、モード選択ユニット203は、インター予測信号およびイントラ予測信号に基づいて予測を行うイントラおよびインター予測(CIIP)モードの組み合わせを選択してもよい。また、モード選択ユニット203は、インター予測の場合、ブロックのために動きベクトルの解像度(例えば、サブピクセル又は整数ピクセル精度)を選択してもよい。
【0155】
現在の映像ブロックに対してインター予測を実行するために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームと現在の映像ブロックとを比較することで、現在の映像ブロックのために動き情報を生成してもよい。動き補償ユニット205は、現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの動き情報及び復号サンプルに基づいて、現在の映像ブロックのために予測映像ブロックを判定してもよい。
【0156】
動き推定ユニット204及び動き補償ユニット205は、例えば、現在の映像ブロックがIスライスであるか、Pスライスであるか、又はBスライスであるかに基づいて、現在の映像ブロックに対して異なる演算を実行してもよい。
【0157】
いくつかの例において、動き推定ユニット204は、現在の映像ブロックに対して単方向予測を実行し、動き推定ユニット204は、現在の映像ブロックに対して、リスト0又はリスト1の参照ピクチャを検索して、参照映像ブロックを求めてもよい。そして、動き推定ユニット204は、参照映像ブロックと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルとを含む、リスト0またはリスト1における参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
【0158】
他の例において、動き推定ユニット204は、現在の映像ブロックを双方向予測してもよく、動き推定ユニット204は、リスト0における参照ピクチャの中から現在の映像ブロックのために参照映像ブロックを検索してもよく、また、リスト1における参照ピクチャの中から現在の映像ブロックのために別の参照映像ブロックを検索してもよい。そして、動き推定ユニット204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定ユニット204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
【0159】
いくつかの例において、動き推定ユニット204は、デコーダの復号処理のために、動き情報のフルセットを出力してもよい。
【0160】
いくつかの例では、動き推定ユニット204は、現在の映像のために動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定ユニット204は、現在の映像ブロックの動き情報が近傍の映像ブロックの動き情報に十分に類似していると判定してもよい。
【0161】
一例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同じ動き情報を有することを映像デコーダ300に示す値を示してもよい。
【0162】
別の例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、動きベクトル差(MVD)とを識別してもよい。動きベクトルの差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、指示された映像ブロックの動きベクトルと、動きベクトルの差分を用いて、現在の映像ブロックの動きベクトルを判定してもよい。
【0163】
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装され得る予測信号通知技法の2つの例は、高度動きベクトル予測(AMVP)およびマージモード信号通知を含む。
【0164】
イントラ予測ユニット206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測ユニット206が現在の映像ブロックをイントラ予測する場合、イントラ予測ユニット206は、同じピクチャにおける他の映像ブロックの復号されたサンプルに基づいて、現在の映像ブロックのための予測データを生成してもよい。現在の映像ブロックのための予測データは、予測された映像ブロック及び様々な構文要素を含んでもよい。
【0165】
残差生成ユニット207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックのために残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
【0166】
他の例において、例えば、スキップモードにおいて、現在の映像ブロックのための残差データがなくてもよく、残差生成ユニット207は、減算演算を実行しなくてもよい。
【0167】
変換処理ユニット208は、現在の映像ブロックに関連付けられた残差映像ブロックに1つ以上の変換を適用することによって、現在の映像ブロックのために1つ以上の変換係数映像ブロックを生成してもよい。
【0168】
変換処理ユニット208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化ユニット209は、現在の映像ブロックに関連付けられた1つ以上の量子化パラメータ(QP)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
【0169】
逆量子化ユニット210および逆方向変換ユニット211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成ユニット212は、予測ユニット202が生成した1つ以上の予測映像ブロックから対応するサンプルに再構成された残差映像ブロックを加え、現在のブロックに関連付けられた再構成映像ブロックを生成し、バッファ213に記憶することができる。
【0170】
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキング・アーチファクトを縮小するために、ループフィルタリング動作を行ってもよい。
【0171】
エントロピー符号化ユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピー符号化ユニット214は、データを受信すると、1つ以上のエントロピー符号化演算を行い、エントロピー符号化データを生成し、エントロピー符号化データを含むビットストリームを出力してもよい。
【0172】
図15は、映像デコーダ300の一例を示すブロック図であり、この映像デコーダ300は、図13に示されるシステム100における映像デコーダ114であってもよい。
【0173】
映像デコーダ300は、本開示の技術のいずれか又は全部を実行するように構成されてもよい。図15の実施例において、映像デコーダ300は、複数の機能モジュールを備える。本開示で説明される技法は、映像デコーダ300の様々なモジュール間で共有されてもよい。いくつかの例では、処理装置は、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0174】
図15の実施例において、映像デコーダ300は、エントロピー復号ユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆方向変換ユニット305、及び再構成ユニット306、並びにバッファ307を備える。映像デコーダ300は、いくつかの例では、映像エンコーダ200(例えば、図14)に関して説明した符号化パスとほぼ逆の復号パスを行ってもよい。
【0175】
エントロピー復号ユニット301は、符号化ビットストリームを取り出す。符号化ビットストリームは、エントロピーコーディングされた映像データ(例えば、映像データの符号化ブロック)を含んでもよい。エントロピー復号ユニット301は、エントロピーコーディングされた映像データを復号し、エントロピー復号された映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVP及びマージモードを実行することで、このような情報を判定してもよい。
【0176】
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を実行する。構文要素には、サブピクセルの精度で使用される補間フィルタのための識別子が含まれてもよい。
【0177】
動き補償ユニット302は、映像ブロックの符号化中に映像エンコーダ20によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数ピクセルのための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に基づいて、映像エンコーダ200が使用する補間フィルタを決定し、この補間フィルタを使用して予測ブロックを生成してもよい。
【0178】
動き補償ユニット302は、構文情報の一部を用いて、符号化された映像シーケンスのフレーム(複数可)および/またはスライス(複数可)を符号化するために使用されるブロックのサイズ、符号化された映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのように符号化されるかを示すモード、インター符号化ブロック間の各1つ以上の参照フレーム(および参照フレームリスト)、および符号化された映像シーケンスを復号するための他の情報を決定してもよい。
【0179】
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピー復号ユニット301によって復号された量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆方向変換ユニット303は、逆変換を適用する。
【0180】
再構成ユニット306は、残差ブロックと、動き補償ユニット202又はイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、復号されたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、復号されたブロックをフィルタリングするために非ブロック化フィルタを適用してもよい。復号された映像ブロックはバッファ307に記憶され、バッファ307は後続の動き補償のための参照ブロックを提供する。
【0181】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが有効化される場合、エンコーダは、1つの映像ブロックを処理する際にこのツールまたはモードを使用するまたは実装するが、このツールまたはモードの使用に基づいて、結果として得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックから映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールまたはモードが有効化される場合に、この映像処理ツールまたはモードを使用する。別の例において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
【0182】
本明細書では、「映像処理」という用語は、映像符号化、映像復号、映像圧縮、または映像展開を指すことができる。例えば、映像圧縮アルゴリズムは、映像の画素表現から対応するビットストリーム表現への変換、またはその逆の変換中に適用されてもよい。現在の映像ブロックのビットストリーム表現は、例えば、構文によって規定されるように、ビットストリーム内の同じ場所または異なる場所に拡散されるビットに対応していてもよい。例えば、1つのマクロブロックは、変換およびコーディングされた誤り残差値の観点から、且つビットストリームにおけるヘッダおよび他のフィールドにおけるビットを使用して符号化されてもよい。
【0183】
次に、いくつかの実施形態において好適な項目を列挙する。
【0184】
以下の項目は、前章に記載された技術の例示的な実施形態を示す。
【0185】
1.映像のクロマブロックと映像のコーディングされた表現との間の変換のために、ダウンサンプリングフィルタを使用して、並置した輝度ブロックの、正の整数であるN個の上側近傍ラインから生成されるダウンサンプリングして並置した近傍の最上の輝度サンプルを使用することによって、クロス成分線形モデルのパラメータを導出することと、クロス成分線形モデルを使用して生成される予測クロマブロックを使用して、前記変換を行うことと、を含む映像処理方法。
【0186】
2.クロマブロックが最上のコーディングツリーユニットの境界にないために、N個の上側近傍ラインは、並置した輝度ブロックの最も近い上側のラインに対応する、項目1に記載の方法。
【0187】
3.前記ダウンサンプリングフィルタは、ダウンサンプリングして並置した近傍の左側輝度サンプルを生成するためにも適用される、項目1~2のいずれかに記載の方法。
【0188】
4.前記ダウンサンプリングフィルタは、ダウンサンプリングして並置した近傍の左側輝度サンプルを生成するために使用される別のダウンサンプリングしフィルタとは異なる、項目1~2のいずれかに記載の方法。
【0189】
5.前記ダウンサンプリングフィルタは、前記コーディングツリーユニットの最上の境界に対する前記クロマブロックの位置に依存しない、項目1のいずれかに記載の方法。
【0190】
6.前記方法は、4:2:2のフォーマットを有する映像に起因して、選択的に適用される、項目1のいずれかに記載の方法。
【0191】
7.Nは1より大きい、項目1に記載の方法。
【0192】
8.前記N個の上側近傍ラインは、最も近い上側のラインおよび2番目に近い上側のラインを含む、項目7に記載の方法。
【0193】
9.前記ダウンサンプリングフィルタは、前記映像のカラーフォーマットに依存する、項目1に記載の方法。
【0194】
10.前記ダウンサンプリングフィルタは、6タップフィルタである、項目1~9のいずれかに記載の方法。
【0195】
11.前記ダウンサンプリングフィルタは、5タップフィルタである、項目1~9のいずれかに記載の方法。
【0196】
12.前記変換は、前記映像を前記コーディングされた表現に符号化することを含む、項目1~11のいずれかに記載の方法。
【0197】
13.前記変換は、前記映像の画素値を生成すべく前記コーディングされた表現を復号することを含む、項目1~11のいずれかに記載の方法。
【0198】
14.項目1~13の1項目以上に記載の方法を実装するように構成された処理装置を備える、映像復号装置。
【0199】
15.項目1~13の1項目以上に記載の方法を実装するように構成された処理装置を備える映像符号化装置。
【0200】
16.コンピュータコードが記憶されたコンピュータプログラム製品において、前記のコードが処理装置により実行されると、前記処理装置は、項目1~13のいずれかに記載の方法を実装する。
【0201】
17.本明細書に記載の方法、装置またはシステム。
【0202】
第2組の項目では、前章で開示された技術の特定の特徴及び態様を説明する(例えば、項目1)。
【0203】
1.映像のクロマブロックと映像のビットストリーム表現との間の変換のために、ダウンサンプリングフィルタを使用して、クロマブロックの並置した輝度ブロックの、正の整数であるN個の上側近傍ラインから生成されるダウンサンプリングした輝度サンプルを使用することによって、クロス成分線形モデルのパラメータを導出すること1602と、クロス成分線形モデルを使用して生成された予測クロマブロックを使用して、前記変換を行うこととを含む、映像処理方法。
【0204】
2.クロマブロックが最上のコーディングツリーユニットの境界にないために、N個の上側近傍ラインは、並置した輝度ブロックの最も近い上側のラインに対応する、項目1に記載の方法。
【0205】
3.前記ダウンサンプリングフィルタは、並置した輝度ブロックの左側近傍ラインから生成される他のダウンサンプリングした輝度サンプルに対しても適用される、項目1~2のいずれかに記載の方法。
【0206】
4.別のダウンサンプリングフィルタは、並置した輝度ブロックの左側近傍ラインから生成される他のダウンサンプリングした輝度サンプルの生成に適用される、項目1~2のいずれかに記載の方法。
【0207】
5.前記ダウンサンプリングフィルタは、[1、2、1]のフィルタ係数を有する、項目1~4のいずれかに記載の方法。
【0208】
6.ダウンサンプリングされた輝度サンプルpDsY[x]は、式pDsY[x]=(pY[2*x-1][-1]+2*pY[2*x][-1]+pY[2*x+1][-1]+2)>>2を満たし、pY[2*x][-1],pY[2*x-1][-1]およびpY[2*x+1][-1]は、最も近い上側の近傍ラインからの輝度サンプルであり、xは整数である、項目1~5のいずれかに記載の方法。
【0209】
7.前記ダウンサンプリングフィルタは、前記コーディングツリーユニットの最上の境界に対する前記クロマブロックの位置に依存しない、項目1~6のいずれかに記載の方法。
【0210】
8.前記方法は、前記映像の4:2:2カラーフォーマットに起因して選択的に適用される、項目1~6のいずれかに記載の方法。
【0211】
9.クロマブロックが最上のコーディングツリーユニットの境界にないために、N個の上側近傍ラインは、並置した輝度ブロックの最も近い上側のラインを含むが、2番目に近い上側のラインを排除する、項目1に記載の方法。
【0212】
10.Nは1より大きい、項目1に記載の方法。
【0213】
11.前記N個の上側近傍ラインは、最も近い上側のラインおよび2番目に近い上側のラインを含む、項目10に記載の方法。
【0214】
12.前記ダウンサンプリングフィルタは、前記映像のカラーフォーマットに依存する、項目1に記載の方法。
【0215】
13.前記ダウンサンプリングフィルタは、6タップフィルタである、項目1~12のいずれかに記載の方法。
【0216】
14.前記ダウンサンプリングフィルタは、5タップフィルタである、項目1~12のいずれかに記載の方法。
【0217】
15.前記変換は、前記映像を前記ビットストリーム表現に符号化することを含む、項目1~14のいずれかに記載の方法。
【0218】
16.前記変換は、前記ビットストリーム表現から前記映像を復号することを含む、項目1~14のいずれかに記載の方法。
【0219】
17.項目1から16のいずれか1つまたは複数に記載された方法を実施するように構成された処理装置を含む映像処理装置。
【0220】
18.実行されると、項目1から16までのいずれか1つ以上に記載された方法を処理装置に実施させるプログラムコードを格納したコンピュータ可読媒体。
【0221】
19.上述した方法のいずれかに従って生成されたビットストリーム表現を記憶するコンピュータ可読媒体。
【0222】
第3組の項目では、前章で開示された技術の特定の特徴及び態様を説明する(例えば項目2~7)。
【0223】
1.映像のコンポーネントの映像領域と映像のビットストリーム表現との間の変換のために、変換スキップモードを使用してコーディングされた映像ブロックに対する最大許容ブロックサイズを決定すること1612と、前記決定に基づいて前記変換を行うこと1614と、を含む、映像処理方法(例えば、図16Aに示す方法1610)。
【0224】
2.前記変換スキップモードは、符号化中に、非恒等変換を適用せずに前記映像ブロックの残差をコーディングすること、または復号中に、ビットストリーム表現においてコーディングされた残差に対して非恒等逆変換を適用せずに、復号された映像ブロックを決定することを含む、項目1に記載の方法。
【0225】
3.前記変換スキップモードは、ブロックレベルで差分パルス符号変調(DPCM)を使用するイントラコーディングツールに対応するBDPCM(ブロック差分パルス符号変調)を含む、項目1に記載の方法。
【0226】
4.前記最大許容ブロックサイズは、前記変換スキップされたブロックがクロマブロックであるかまたは輝度ブロックであるかに依存する、項目1に記載の方法。
【0227】
5.前記最大許容ブロックサイズは、前記変換スキップされたブロックのクロマ成分に依存する、項目1に記載の方法。
【0228】
6.輝度ブロックのための最大許容ブロックサイズ(MaxTsSizeY)とクロマブロックのための最大許容ブロックサイズ(MaxTsSizeC)とが、ビットストリーム表現において別個に信号通知される、項目1に記載の方法。
【0229】
7.前記MaxTsSizeCおよび/またはMaxTsSizeYは、シーケンスレベル、ピクチャレベル、スライスレベル、またはタイルグループレベルで信号通知される、項目6に記載の方法。
【0230】
8.前記MaxTsSizeYは、前記変換スキップモードの有効化状態に基づいて条件付きで信号通知される、項目6に記載の方法。
【0231】
9.前記MaxTsSizeYは、カラーフォーマットおよび/または前記変換スキップモードの有効化状態に基づいて条件付きで信号通知される、項目6に記載の方法。
【0232】
10.前記変換は、輝度成分の最大ブロックサイズとクロマ成分の最大ブロックサイズとの間の予測コーディングを利用することによって行われる、項目1に記載の方法。
【0233】
11.前記映像ブロックはクロマ映像ブロックであり、前記映像ブロックのための最大許容ブロックサイズ(MaxTsSizeC)は、輝度成分の別の映像ブロックのための最大許容ブロックサイズ(MaxTsSizeY)に依存する、項目1に記載の方法。
【0234】
12.MaxTsSizeCがMaxTsSizeYに等しく設定される、項目11に記載の方法。
【0235】
13.MaxTsSizeCがMaxTsSizeY/Nに等しく設定され、Nが整数である、項目11に記載の方法。
【0236】
14.前記映像ブロックはクロマ映像ブロックであり、前記映像ブロックのための最大許容ブロックサイズ(MaxTsSizeC)はクロマサブサンプリング比に従って設定される、項目1に記載の方法。
【0237】
15.MaxTsSizeCは、i)MaxTsSizeY>>SubWidthC,ii)MaxTsSizeY>>SubHeightC,iii)MaxTsSizeY>>max(SubWidthC,SubHeightC),iv)MaxTsSizeY>>min(SubWidthC,SubHeightC)に等しく設定され、MaxTsSiZeYは、輝度映像ブロックの最大ブロックサイズを示し、SubWidthCおよびSubHeightCは予め定義されている、項目14に記載の方法。
【0238】
16.第1の規則と第2の規則に従って、映像ブロックを含む映像と前記映像のビットストリーム表現との間の変換を行うことを含む、映像処理方法(例えば、図16Aに示す方法1610)。変換スキップコーディングツールを使用して前記映像ブロックの第1の部分をコーディングし、変換コーディングツールが前記映像ブロックの第2の部分をコーディングするために使用され、前記第1の規則は、前記映像ブロックの前記第1の部分のための最大許容ブロックサイズを規定し、前記第2の規則は、前記映像ブロックの前記第2の部分のための最大許容ブロックサイズを規定し、前記映像ブロックの前記第1の部分に対する前記最大許容ブロックサイズは、前記映像ブロックの前記第2の部分の前記最大許容ブロックサイズとは異なる。
【0239】
17.前記最大許容ブロックサイズは、対応するブロックの幅および高さに対応する、項目16に記載の方法。
【0240】
18.最大許容ブロックサイズの幅および高さを別個に信号伝達する、項目17に記載の方法。
【0241】
19.クロマブロックである映像ブロックの第2の部分について、幅(MaxTsSizeWC)はMaxTsSizeY>>SubWidthCに等しく設定され、高さ(MaxTsSizeHC)はMaxTsSizeY>>SubHeightCに等しく設定され、MaxTsSizeYは、輝度ブロックのための最大許容ブロックサイズを示す、項目17に記載の方法。
【0242】
20.1つ以上のクロマブロックを含む映像と、前記映像のビットストリーム表現との間の変換を行うことを含む、映像処理方法(例えば、図16Aに示す方法1610)。ビットストリーム表現は、変換スキップツールの使用を示す構文要素がビットストリーム表現に含まれるかどうかが、変換スキップツールを使用してコーディングされるクロマブロックの最大許容サイズに依存すると規定するフォーマット規則に準拠する。
【0243】
21.前記変換スキップツールは、変換をバイパスすること、または恒等変換を適用することを含む、項目20に記載の方法。
【0244】
22.tbWがMaxTsSizeC以下であり、tbHがMaxTsSizeC以下である場合、構文要素が信号通知され、ここで、tbWおよびtbHは、それぞれクロマブロックの幅および高さであり、MaxTsSizeCは、それぞれクロマブロックの最大許容サイズである、項目20に記載の方法。
【0245】
23.tbWがMaxTsSizeWC以下であり、tbHがMaxTsSizeHC以下である場合、構文要素が信号通知され、ここで、tbWおよびtbHは、それぞれクロマブロックの幅および高さであり、MaxTsSizeWCおよびMaxTsSizeHCは、それぞれクロマブロックの最大許容サイズの幅と高さを表す、項目20に記載の方法。
【0246】
24.前記変換スキップツールは、ブロックレベルで差分パルス符号変調(DPCM)モードを使用するイントラコーディングツールに対応するBDPCM(ブロック差分パルス符号変調)を含む、項目20に記載の方法。
【0247】
25.第1のクロマ成分の1つ以上の第1の映像ブロックおよび第2のクロマ成分の1つ以上の第2の映像ブロックとを含む映像と、前記映像のビットストリーム表現との間の変換を行うことを含む映像処理方法(例えば、図16Aに示す方法1610)。前記ビットストリーム表現は、1つ以上の第1のクロマブロックおよび1つ以上の第2のクロマブロックをコーディングするための変換スキップツールの可用性を一緒に示す構文要素を使用することを規定するフォーマット規則に準拠する。
【0248】
26.前記構文要素は、バイナリ値を有する、項目25に記載の方法。
【0249】
27.前記変換スキップツールは、前記構文要素に従って、前記1つ以上の第1の映像ブロックおよび前記1つ以上の第2の映像ブロックにおいて有効化または無効化される、項目25に記載の方法。
【0250】
28.前記フォーマット規則は、前記構文要素の値がKに等しいかどうかに基づいて、ビットストリーム表現に追加の構文要素を含むことをさらに規定し、Kは整数である、項目25に記載の方法。
【0251】
29.前記第2の構文要素は、1つ以上の第1の映像ブロックおよび1つ以上の第2の映像ブロックのうちのどのブロックに変換スキップツールを適用するかを示すために使用される、項目28に記載の方法。
【0252】
30.前記構文要素は、非バイナリ値を有する、項目25に記載の方法。
【0253】
31.前記構文要素は、固定長、単項、切り捨てられた単項、またはk次の指数ゴロム(EG)バイナリゼーション法でコーディングされる、項目30に記載の方法。
【0254】
32.前記前記構文要素は、コンテキストコーディングされるかまたはバイパスコーディングされる、項目25に記載の方法。
【0255】
33.前記方法を適用するかどうかおよび/またはどのように適用するかは、シーケンスレベル、ピクチャレベル、スライスレベル、またはタイルグループレベルで信号通知される、先行する項目のいずれか1つに記載の方法。
【0256】
34.先行する項目のいずれか1つに記載の方法であって、方法は、さらに、コーディングされた情報に基づく。
【0257】
35.前記変換は、前記映像を前記ビットストリーム表現に符号化することを含む、項目1~34のいずれかに記載の方法。
【0258】
36.前記変換は、前記ビットストリーム表現から前記映像を復号することを含む、項目1~34のいずれかに記載の方法。
【0259】
37.項目1から36のいずれか1つまたは複数に記載された方法を実装するように構成された処理装置を含む映像処理装置。
【0260】
38.実行されると、項目1から36までのいずれか1つ以上に記載された方法を処理装置に実施させるプログラムコードを格納したコンピュータ可読媒体。
【0261】
39.上述した方法のいずれかに従って生成されたコーディングされた表現またはビットストリーム表現を記憶する、コンピュータ可読媒体。
【0262】
本特許明細書は多くの詳細を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
【0263】
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている例における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
【0264】
いくつかの実装形態および例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
図1A
図1B
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16A
図16B
【手続補正書】
【提出日】2022-05-23
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
映像のクロマブロックと前記映像のビットストリームとの間の第1の変換のために、予測モデルを前記クロマブロックに適用することを決定することであって、予測モードにおいて、前記クロマブロックの並置された輝度ブロックの再構成された輝度サンプルに基づいて、前記クロマブロックの予測サンプルを導出する、決定することと、
前記クロマブロックの近傍のクロマサンプルおよび前記並置された輝度ブロックのダウンサンプリングされた近傍の最上の輝度サンプルに基づいて、前記予測モデルのパラメータを導出することと、
前記パラメータに基づいて、前記第1の変換を行うことと、を含む映像処理方法であって、
4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、前記ダウンサンプリングされた近傍の最上の輝度サンプルを、前記並置された輝度ブロックの最も近い上側近傍ラインに基づいて導出する、映像処理方法。
【請求項2】
4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、前記並置された輝度ブロックの第2の上側近傍ラインを、前記ダウンサンプリングされた近傍の最上の輝度サンプルを導出するために使用することから排除する、請求項1に記載の方法。
【請求項3】
4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、同じダウンサンプリングフィルタを使用して、前記クロマブロックが前記最上のコーディングツリーユニットの境界にあるか否かにかかわらず、前記ダウンサンプリングされた近傍の最上の輝度サンプルを導出する、請求項1に記載の方法。
【請求項4】
前記クロマブロックが前記最上のコーディングツリーユニットの境界にあることに呼応して、前記ダウンサンプリングされた近傍の最上の輝度サンプルを、前記並置された輝度ブロックの前記最も近い上側近傍ラインに基づいて導出する、請求項3に記載の方法。
【請求項5】
前記クロマブロックが前記最上のコーディングツリーユニットの境界にあるか、または前記クロマブロックが4:2:2のカラーフォーマットを有することに呼応して、pDsY[x]=(pY[2*x-1][-1]+2*pY[2*x][-1]+pY[2*x+1][-1]+2)>>2であり、
pDsY[x]は、ダウンサンプリングされた近傍の最上の輝度サンプルを示し、xは整数であり、
pY[2*x][-1],pY[2*x-1][-1]およびpY[2*x+1][-1]は、前記並置された前記最も近い上側の近傍ラインからの輝度サンプルを示す、請求項4に記載の方法。
【請求項6】
前記予測モデルの前記パラメータは、前記並置された輝度ブロックのダウンサンプリングされた近傍の左側輝度サンプルに基づいてさらに導出され、
前記ダウンサンプリングされた近傍の最上の輝度サンプルおよび前記ダウンサンプリングされた近傍の左側輝度サンプルは、4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、同じフィルタ係数を有するダウンサンプリングフィルタを使用して導出される、請求項1に記載の方法。
【請求項7】
前記同じフィルタ係数は[1 2 1]である、請求項6に記載の方法。
【請求項8】
クロマの並置されたフラグが0に等しく、前記クロマブロックは前記最上のコーディングツリーユニットの境界になく、かつ、前記クロマブロックは4:2:0のカラーフォーマットを有することに呼応して、
(pY[SubWidthC*x-1][-1]+pY[SubWidthC*x-1][-2]+2*pY[SubWidthC*x][-1]+2*pY[SubWidthC*x][-2]+pY[SubWidthC*x+1][-1]+pY[SubWidthC*x+1][-2]+4)>>3を使用してダウンサンプリングされた近傍の最上の輝度サンプルのうちの少なくとも1つを導出し、
pY[SubWidthC*x-1][-1]、pY[SubWidthC*x-1][-2]、pY[SubWidthC*x][-1]、pY[SubWidthC*x][-2]、pY[SubWidthC*x+1][-1]、およびpY[SubWidthC*x+1][-2]は、前記並置された輝度ブロックの近傍ラインからの輝度サンプルを示し、
xは、整数であり、SubWidthCは、4:2:0のカラーフォーマットを有する前記クロマブロックに呼応して2に等しい、請求項1に記載の方法。
【請求項9】
変換スキップモードに対して使用される最大のブロックサイズを規定する第1の構文要素が、前記ビットストリームにおけるシーケンスパラメータセットに含まれる、変換スキップが有効化されたフラグの値に基づいて、前記ビットストリームに条件付きで含まれる、請求項1に記載の方法。
【請求項10】
前記変換は、前記ビットストリームから前記映像を復号することを含む、請求項1に記載の方法。
【請求項11】
前記変換は、前記映像を前記ビットストリームに符号化することを含む、請求項1に記載の方法。
【請求項12】
処理装置と、命令を備えた非一時的メモリとを備える映像データ処理装置であって、前記命令は、前記処理装置によって実行されると、前記処理装置に、
映像のクロマブロックと前記映像のビットストリームとの間の第1の変換のために、予測モデルを前記クロマブロックに適用することを決定することであって、予測モードにおいて、前記クロマブロックの並置された輝度ブロックの再構成された輝度サンプルに基づいて、前記クロマブロックの予測サンプルを導出する、決定することと、
前記クロマブロックの近傍のクロマサンプルおよび前記並置された輝度ブロックのダウンサンプリングされた近傍の最上の輝度サンプルに基づいて、前記予測モデルのパラメータを導出することと、
前記パラメータに基づいて、前記第1の変換を行うことと、を行わせ、
4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、前記ダウンサンプリングされた近傍の最上の輝度サンプルを、前記並置された輝度ブロックの最も近い上側近傍ラインに基づいて導出する、映像データ処理装置。
【請求項13】
命令を記憶した非一時的なコンピュータ可読記憶媒体であって、前記命令は、処理装置に、
映像のクロマブロックと前記映像のビットストリームとの間の第1の変換のために、予測モデルを前記クロマブロックに適用することを決定することであって、予測モードにおいて、前記クロマブロックの並置された輝度ブロックの再構成された輝度サンプルに基づいて、前記クロマブロックの予測サンプルを導出する、決定することと、
前記クロマブロックの近傍のクロマサンプルおよび前記並置された輝度ブロックのダウンサンプリングされた近傍の最上の輝度サンプルに基づいて、前記予測モデルのパラメータを導出することと、
前記パラメータに基づいて、前記第1の変換を行うことと、を行わせ、
4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、前記ダウンサンプリングされた近傍の最上の輝度サンプルを、前記並置された輝度ブロックの最も近い上側近傍ラインに基づいて導出する、非一時的なコンピュータ可読記憶媒体。
【請求項14】
映像処理装置で行われる方法により生成される映像のビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、
映像のクロマブロックのために、予測モデルを前記クロマブロックに適用することを決定することであって、予測モードにおいて、前記クロマブロックの並置された輝度ブロックの再構成された輝度サンプルに基づいて、前記クロマブロックの予測サンプルを導出する、決定することと、
前記クロマブロックの近傍のクロマサンプルおよび前記並置された輝度ブロックのダウンサンプリングされた近傍の最上の輝度サンプルに基づいて、前記予測モデルのパラメータを導出することと、
前記パラメータに基づいて、前記ビットストリームを生成することと、を含み、
4:2:2のカラーフォーマットを有する前記クロマブロックに呼応して、前記ダウンサンプリングされた近傍の最上の輝度サンプルを、前記並置された輝度ブロックの最も近い上側近傍ラインに基づいて導出する、非一時的なコンピュータ可読記録媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
関連出願の相互参照
願は、2019年11月1日出願の国際特許出願第PCT/CN2019/115034号の優先権および利益を張する、2020年11月2日出願の国際特許出願第PCT/CN2020/125796号に基づく記出願の開示全体は、本願の開示の一部として参照により援用される。
【国際調査報告】