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

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

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

特許7407206クロスコンポーネントコーディングの適用条件
<>
  • 特許-クロスコンポーネントコーディングの適用条件 図1
  • 特許-クロスコンポーネントコーディングの適用条件 図2
  • 特許-クロスコンポーネントコーディングの適用条件 図3
  • 特許-クロスコンポーネントコーディングの適用条件 図4
  • 特許-クロスコンポーネントコーディングの適用条件 図5
  • 特許-クロスコンポーネントコーディングの適用条件 図6
  • 特許-クロスコンポーネントコーディングの適用条件 図7
  • 特許-クロスコンポーネントコーディングの適用条件 図8
  • 特許-クロスコンポーネントコーディングの適用条件 図9
  • 特許-クロスコンポーネントコーディングの適用条件 図10
  • 特許-クロスコンポーネントコーディングの適用条件 図11
  • 特許-クロスコンポーネントコーディングの適用条件 図12
  • 特許-クロスコンポーネントコーディングの適用条件 図13
  • 特許-クロスコンポーネントコーディングの適用条件 図14
  • 特許-クロスコンポーネントコーディングの適用条件 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-20
(45)【発行日】2023-12-28
(54)【発明の名称】クロスコンポーネントコーディングの適用条件
(51)【国際特許分類】
   H04N 19/593 20140101AFI20231221BHJP
   H04N 19/186 20140101ALI20231221BHJP
   H04N 19/119 20140101ALI20231221BHJP
   H04N 19/105 20140101ALI20231221BHJP
   H04N 19/157 20140101ALI20231221BHJP
   H04N 19/176 20140101ALI20231221BHJP
   H04N 19/70 20140101ALI20231221BHJP
【FI】
H04N19/593
H04N19/186
H04N19/119
H04N19/105
H04N19/157
H04N19/176
H04N19/70
【請求項の数】 15
(21)【出願番号】P 2021564420
(86)(22)【出願日】2020-05-08
(65)【公表番号】
(43)【公表日】2022-07-06
(86)【国際出願番号】 CN2020089096
(87)【国際公開番号】W WO2020224629
(87)【国際公開日】2020-11-12
【審査請求日】2021-10-29
(31)【優先権主張番号】PCT/CN2019/085996
(32)【優先日】2019-05-08
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】520476341
【氏名又は名称】北京字節跳動網絡技術有限公司
【氏名又は名称原語表記】Beijing Bytedance Network Technology Co., Ltd.
【住所又は居所原語表記】Room B-0035, 2/F, No.3 Building, No.30, Shixing Road, Shijingshan District Beijing 100041 China
(73)【特許権者】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】デン,ジピン
(72)【発明者】
【氏名】ザン,リー
(72)【発明者】
【氏名】リュウ,ホンビン
(72)【発明者】
【氏名】ザン,カイ
(72)【発明者】
【氏名】シュイ,ジィジォン
【審査官】久保 光宏
(56)【参考文献】
【文献】国際公開第2020/220884(WO,A1)
【文献】特表2022-531280(JP,A)
【文献】国際公開第2019/069950(WO,A1)
【文献】国際公開第2018/061588(WO,A1)
【文献】国際公開第2019/054200(WO,A1)
【文献】特表2022-532277(JP,A)
【文献】Edouard Francois, et al.,"AHG16/non-CE3: Study of CCLM restrictions in case of separate luma/chroma tree",Document: JVET-N0390r1, [online],JVET-N0390 (version 5),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年03月23日,Pages 1-7,[令和4年11月10日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=6112> and <URL: https://jvet-experts.org/doc_end_user/documents/14_Geneva/wg11/JVET-N0390-v5.zip>.,(See document file "JVET-N0390r1.docx" in the zip file "JVET-N0390-v5.zip".)
【文献】Jianle Chen, et al.,"Algorithm description for Versatile Video Coding and Test Model 4 (VTM 4)",Document: JVET-M1002-v2, [online],JVET-M1002 (version 2),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,2019年03月19日,Pages 1-23,[令和4年11月10日検索], インターネット, <URL: https://jvet-experts.org/doc_end_user/current_document.php?id=5756> and <URL: https://jvet-experts.org/doc_end_user/documents/13_Marrakech/wg11/JVET-M1002-v2.zip>.,(See document file "JVET-M1002-v2.docx" in the zip file "JVET-M1002-v2.zip".)
【文献】Recommendation ITU-T H.265 (02/2018),[online], ITU-T,2018年02月13日,Pages 77-78,[令和4年5月2日検索], インターネット, <URL: https://www.itu.int/rec/T-REC-H.265-201802-S/en>.
(58)【調査した分野】(Int.Cl.,DB名)
H04N19/00-19/98
CSDB(日本国特許庁)
学術文献等データベース(日本国特許庁)
IEEEXplore(IEEE)
(57)【特許請求の範囲】
【請求項1】
ビデオデータを処理する方法であって、
ビデオのクロマブロックと前記ビデオのビットストリームとの間のコンバージョンのために、前記クロマブロックの対応するルマ領域の少なくとも1つのサンプルをカバーするルマビデオユニット及び対応するクロマ領域の少なくとも1つのサンプルをカバーするクロマビデオユニットのパーティション情報及びブロックの大きさに基づいて、前記クロマブロックに対するクロスコンポーネント線形モデルイントラ予測を有効にするか無効にするかを決定するステップであり、前記クロマブロックは、ルマ成分と少なくとも1つのクロマ成分とが別個のパーティションツリー構造を有するデュアルツリー構造内にある、ステップと、
前記クロスコンポーネント線形モデルイントラ予測が有効にされることに応答して、前記クロマブロックの近隣のクロマサンプルに少なくとも基づいてクロスコンポーネント線形モデルのパラメータを決定するステップと、
前記パラメータに基づいて前記クロマブロックの予測値を導出するために前記クロスコンポーネント線形モデルを適用するステップと、
カレントビデオブロックに対して前記クロスコンポーネント線形モデルイントラ予測が無効にされると決定すると、前記ビットストリームから、前記クロスコンポーネント線形モデルイントラ予測に関連するシンタックス要素を除外するステップと、
前記予測値に基づいて前記コンバージョンを実行するステップと、
を含み、
前記クロマビデオユニットの大きさが32×32であり、前記ルマビデオユニットの大きさが64×64であり、前記パーティション情報が、前記クロマビデオユニットが四分木分割動作でない水平分割動作で分割され、前記ルマビデオユニットが四分木分割動作でない垂直分割動作で分割されることを指定するとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、方法。
【請求項2】
前記クロマビデオユニットが水平三分割動作で分割され、前記ルマビデオユニットが垂直三分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項に記載の方法。
【請求項3】
前記クロマビデオユニットが水平三分割動作で分割され、前記ルマビデオユニットが垂直二分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項又はに記載の方法。
【請求項4】
前記クロマビデオユニットが水平二分割動作で分割され、前記ルマビデオユニットが垂直三分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項乃至のうちいずれか1項に記載の方法。
【請求項5】
前記クロマビデオユニットが水平二分割動作で分割され、前記ルマビデオユニットが垂直二分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項乃至のうちいずれか1項に記載の方法。
【請求項6】
前記ルマビデオユニットの大きさが64×64であり、前記パーティション情報が、前記クロマビデオユニットが四分木分割動作でない垂直分割動作で分割され、前記ルマビデオユニットが四分木分割動作でない水平分割動作で分割されることを指定するとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項1乃至のうちいずれか1項に記載の方法。
【請求項7】
前記クロマビデオユニットが垂直三分割動作で分割され、前記ルマビデオユニットが水平三分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項1乃至のうちいずれか1項に記載の方法。
【請求項8】
前記クロマビデオユニットが垂直三分割動作で分割され、前記ルマビデオユニットが水平二分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項1乃至のうちいずれか1項に記載の方法。
【請求項9】
前記クロマビデオユニットが垂直二分割動作で分割され、前記ルマビデオユニットが水平三分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項1乃至のうちいずれか1項に記載の方法。
【請求項10】
前記クロマビデオユニットが垂直二分割動作で分割され、前記ルマビデオユニットが水平二分割動作で分割されるとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、請求項1乃至のうちいずれか1項に記載の方法。
【請求項11】
前記コンバージョンは、前記クロマブロックを前記ビットストリームにエンコードすることを含む、請求項1乃至1のうちいずれか1項に記載の方法。
【請求項12】
前記コンバージョンは、前記ビットストリームから前記クロマブロックをデコードすることを含む、請求項1乃至1のうちいずれか1項に記載の方法。
【請求項13】
プロセッサと、命令を有する非一時的メモリとを含む、ビデオデータを処理する装置であって、前記命令は、前記プロセッサにより実行されると前記プロセッサに、
ビデオのクロマブロックと前記ビデオのビットストリームとの間のコンバージョンのために、前記クロマブロックの対応するルマ領域の少なくとも1つのサンプルをカバーするルマビデオユニット及び対応するクロマ領域の少なくとも1つのサンプルをカバーするクロマビデオユニットのパーティション情報及びブロックの大きさに基づいて、前記クロマブロックに対するクロスコンポーネント線形モデルイントラ予測を有効にするか無効にするかを決定、前記クロマブロックは、ルマ成分と少なくとも1つのクロマ成分とが別個のパーティションツリー構造を有するデュアルツリー構造内にあ
前記クロスコンポーネント線形モデルイントラ予測が有効にされることに応答して、前記クロマブロックの近隣のクロマサンプルに少なくとも基づいてクロスコンポーネント線形モデルのパラメータを決定
前記パラメータに基づいて前記クロマブロックの予測値を導出するために前記クロスコンポーネント線形モデルを適用
カレントビデオブロックに対して前記クロスコンポーネント線形モデルイントラ予測が無効にされると決定すると、前記ビットストリームから、前記クロスコンポーネント線形モデルイントラ予測に関連するシンタックス要素を除外し、
前記予測値に基づいて前記コンバージョンを実行す
ことをさせ、
前記クロマビデオユニットの大きさが32×32であり、前記ルマビデオユニットの大きさが64×64であり、前記パーティション情報が、前記クロマビデオユニットが四分木分割動作でない水平分割動作で分割され、前記ルマビデオユニットが四分木分割動作でない垂直分割動作で分割されることを指定するとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、装置。
【請求項14】
プロセッサに、
ビデオのクロマブロックと前記ビデオのビットストリームとの間のコンバージョンのために、前記クロマブロックの対応するルマ領域の少なくとも1つのサンプルをカバーするルマビデオユニット及び対応するクロマ領域の少なくとも1つのサンプルをカバーするクロマビデオユニットのパーティション情報及びブロックの大きさに基づいて、前記クロマブロックに対するクロスコンポーネント線形モデルイントラ予測を有効にするか無効にするかを決定、前記クロマブロックは、ルマ成分と少なくとも1つのクロマ成分とが別個のパーティションツリー構造を有するデュアルツリー構造内にあ
前記クロスコンポーネント線形モデルイントラ予測が有効にされることに応答して、前記クロマブロックの近隣のクロマサンプルに少なくとも基づいてクロスコンポーネント線形モデルのパラメータを決定
前記パラメータに基づいて前記クロマブロックの予測値を導出するために前記クロスコンポーネント線形モデルを適用
カレントビデオブロックに対して前記クロスコンポーネント線形モデルイントラ予測が無効にされると決定すると、前記ビットストリームから、前記クロスコンポーネント線形モデルイントラ予測に関連するシンタックス要素を除外し、
前記予測値に基づいて前記コンバージョンを実行す
ことをさせ、
前記クロマビデオユニットの大きさが32×32であり、前記ルマビデオユニットの大きさが64×64であり、前記パーティション情報が、前記クロマビデオユニットが四分木分割動作でない水平分割動作で分割され、前記ルマビデオユニットが四分木分割動作でない垂直分割動作で分割されることを指定するとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、命令を記憶する非一時的コンピュータ読取可能記憶媒体。
【請求項15】
ビデオのビットストリームを記憶する方法であって、
クロマブロックの対応するルマ領域の少なくとも1つのサンプルをカバーするルマビデオユニット及び対応するクロマ領域の少なくとも1つのサンプルをカバーするクロマビデオユニットのパーティション情報及びブロックの大きさに基づいて、前記クロマブロックに対するクロスコンポーネント線形モデルイントラ予測を有効にするか無効にするかを決定するステップであり、前記クロマブロックは、ルマ成分と少なくとも1つのクロマ成分とが別個のパーティションツリー構造を有するデュアルツリー構造内にある、ステップと、
前記クロスコンポーネント線形モデルイントラ予測が有効にされることに応答して、前記クロマブロックの近隣のクロマサンプルに少なくとも基づいてクロスコンポーネント線形モデルのパラメータを決定するステップと、
前記パラメータに基づいて前記クロマブロックの予測値を導出するために前記クロスコンポーネント線形モデルを適用するステップと、
前記予測値に基づいて前記ビットストリームを生成するステップと、
カレントビデオブロックに対して前記クロスコンポーネント線形モデルイントラ予測が無効にされると決定すると、前記ビットストリームから、前記クロスコンポーネント線形モデルイントラ予測に関連するシンタックス要素を除外するステップと、
前記ビットストリームを非一時的コンピュータ読取可能記録媒体に記憶するステップと、
を含み、
前記クロマビデオユニットの大きさが32×32であり、前記ルマビデオユニットの大きさが64×64であり、前記パーティション情報が、前記クロマビデオユニットが四分木分割動作でない水平分割動作で分割され、前記ルマビデオユニットが四分木分割動作でない垂直分割動作で分割されることを指定するとき、前記クロスコンポーネント線形モデルイントラ予測は無効にされる、方法。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、2019年5月8日に出願された国際特許出願第PCT/CN2019/085996号の優先権及び利益を主張する、2020年5月8日に出願された第PCT/CN2020/089096号に基づく。全ての前述の特許出願が、その全体を参照により本明細書に組み込まれる。
【0002】
[技術分野]
本特許文献は、ビデオコーディング/復号手法、デバイス、及びシステムに関する。
【背景技術】
【0003】
ビデオ圧縮の進歩にもかかわらず、デジタルビデオは、依然として、インターネット及び他のデジタル通信ネットワークにおける最大の帯域幅使用を占めている。ビデオを受信し表示することができる接続ユーザデバイスの数が増加すると、デジタルビデオ使用に対する帯域幅需要は増大し続けることが予想される。
【発明の概要】
【0004】
デジタルビデオコーディング/復号に関連するデバイス、システム、及び方法、具体的には、ビデオコーディング/復号におけるクロスコンポーネント線形モデル(cross-component linear model、CCLM)予測モードのための簡素化された線形モデル導出について記載する。記載される方法は、既存のビデオコーディング標準(例えば、高効率ビデオコーディング(High Efficiency Video Coding、HEVC))及び将来のビデオコーディング標準(例えば、汎用ビデオコーディング(Versatile Video Coding、VVC))又はコーデックの双方に適用され得る。
【0005】
代表的な一態様において、開示される技術は、ビジュアルメディア処理の方法を含む。この例示的な方法は、ビジュアルメディアデータの対応するルマブロックの近隣のルマブロックの利用可能性を決定したことに応答して、ビジュアルメディアデータのカレントビデオクロマブロックのための第1のパラメータを、第1のパラメータが固定値又はカレントビデオクロマブロックの近隣のルマサンプルの丸めベースの平均値として導出されるように導出するステップであり、対応するルマブロックは、カレントビデオクロマブロックに関連づけられた位置をカバーする、ステップと、第1のパラメータに基づいてクロマスケーリングファクタを決定するステップと、クロマスケーリングファクタに基づいてカレントビデオクロマブロックのクロマ残差スケーリングを実行するステップと、カレントビデオクロマブロックとカレントビデオクロマブロックのビットストリーム表現との間のコンバージョンにクロマスケーリングファクタを使用するステップと、を含む。
【0006】
代表的な一態様において、開示される技術は、ビジュアルメディア処理の方法を含む。この例示的な方法は、ビジュアルメディアデータのカレントビデオユニットに関連づけられた少なくとも1つのクロマブロックのためのクロマ残差スケーリングファクタを固定値に基づいて表すことを指定するルールを使用するステップであり、固定値は1つ以上の条件に少なくとも基づく、ステップと、カレントビデオユニットとカレントビデオユニットのビットストリーム表現との間のコンバージョンを実行するステップと、を含む。
【0007】
代表的な一態様において、開示される技術は、ビジュアルメディア処理の方法を含む。この例示的な方法は、ビジュアルメディアデータのカレントビデオブロックとカレントビデオブロックのビットストリーム表現との間のコンバージョンの間、カレントビデオブロックに関連づけられた大きさ及び/又はパーティション情報及び/又はコーディング構造タイプに少なくとも部分的に基づいて、カレントビデオブロックの色成分に対するクロスコンポーネント線形モデル(CCLM)の適用を選択的に有効又は無効にする決定を行うステップであり、CCLMにおいて、第1の色成分セットは、第2の色成分セットの線形結合に基づいて予測される、ステップを含む。
【0008】
さらに別の例示的な態様において、上述の方法は、プロセッサを含むビデオエンコーダ装置により実装され得る。
【0009】
さらに別の例示的な態様において、上述の方法は、プロセッサを含むビデオデコーダ装置により実装され得る。
【0010】
さらに別の例示的な態様において、これらの方法は、プロセッサ実行可能命令の形態で具現化され、コンピュータ読取可能プログラム媒体に記憶され得る。
【0011】
これら及び他の態様について本文献でさらに説明する。
【図面の簡単な説明】
【0012】
図1】HEVCにおけるangularイントラ予測モードの一例を示す。
図2】HEVCではない方向モードの一例を示す。
図3】CCLMモードに関連する一例を示す。
図4】クロマスケーリングアーキテクチャによるルママッピングの一例を示す。
図5】異なる色フォーマットにおけるルマブロック及びクロマブロックの一例を示す。
図6】同じ色フォーマットにおけるルマブロック及びクロマブロックの一例を示す。
図7】複数のフォーマットをカバーするコロケートルマブロックの一例を示す。
図8】より大きいルマブロック内のルマブロックの一例を示す。
図9】より大きいルマブロック内及び境界ボックス内のルマブロックの一例を示す。
図10】本文献に記載のビジュアルメディアデコード又はビジュアルメディアエンコード手法を実装するハードウェアプラットフォームの一例のブロック図である。
図11】開示される技術によるクロスコンポーネント予測のための線形モデル導出の一例示的な方法のフローチャートを示す。
図12】開示される技術を実施することができる一例示的なビデオ処理システムのブロック図である。
図13】ビジュアルメディア処理方法の一例のフローチャートである。
図14】ビジュアルメディア処理方法の一例のフローチャートである。
図15】ビジュアルメディア処理方法の一例のフローチャートである。
【発明を実施するための形態】
【0013】
2.1 HEVCに関する簡潔なレビュー
2.1.1 HEVC/H.265におけるイントラ予測
イントラ予測は、考慮されているカラーチャネルで事前に再構成されたサンプルを用いて、所与のTB(変換ブロック(transform block))のためのサンプルを生成することを伴う。イントラ予測モードは、ルマ(luma)チャネル及びクロマ(chroma)チャネルについて別個にシグナリングされ、クロマチャネルイントラ予測モードは、任意で、「DM_CHROMA」モードを介してルマチャネルイントラ予測モードに依存する。イントラ予測モードはPB(予測ブロック(prediction block))レベルでシグナリングされるが、イントラ予測プロセスは、CUの残差四分木階層(residual quad-tree hierarchy)に従ってTBレベルで適用され、それにより、1つのTBのコーディングがCU内の次のTBのコーディングへの影響を有することができ、したがって、参照値として使用されるサンプルへの距離を低減させる。
【0014】
HEVCは、35個のイントラ予測モード - DCモード、planarモード、及び33個の方向又は「angular」イントラ予測モードを含む。33個のangularイントラ予測モードが図1に示されている。
【0015】
クロマカラーチャネルに関連づけられたPBでは、イントラ予測モードは、planar、DC、水平、垂直、「DM_CHROMA」モード、又は時にはdiagonalモード「34」のいずれかとして指定される。
【0016】
クロマフォーマット4:2:2及び4:2:0では、クロマPBは2つ又は4つ(それぞれ)のルマPBと重なり得ることに留意する。この場合、DM_CHROMAのためのルマ方向は、これらのルマPBの左上から取得される。
【0017】
DM_CHROMAモードは、ルマカラーチャネルPBのイントラ予測モードがクロマカラーチャネルPBに適用されることを示す。これは比較的一般的であるため、intra_chroma_pred_modeの最確モードコーディング方式は、このモードが選択される方を好んでバイアスされる。
【0018】
2.2 汎用ビデオコーディング(VVC)アルゴリズムの説明
2.2.1 VVCコーディングアーキテクチャ
HEVCを越える将来のビデオコーディング技術を探求するため、2015年にVCEGとMPEGにより合同で合同ビデオ探求チーム(Joint Video Exploration Team、JVET)が設立された。JVET会議は四半期に1回同時開催されており、新しいコーディング標準はHEVCと比較して50%のビットレート低減を目指している。この新しいビデオコーディング標準は2018年4月のJVET会議で汎用ビデオコーディング(Versatile Video Coding、VVC)として正式に命名され、その当時にVVCテストモデル(VTM)の最初のバージョンがリリースされた。VVC標準化に寄与する継続的な努力が存在するため、JVET会議毎にVVC標準に対して新しいコーディング手法が採択されている。VVC作業原案及びテストモデルVTMは、次いで、毎会議後に更新される。VVCプロジェクトは現在、2020年7月の会議での技術的完成(FDIS)を狙っている。
【0019】
ほとんどの先行する標準と同様に、VVCは、インターピクチャ及びイントラピクチャ予測並びに変換コーディングをエントロピーコーディングと組み合わせたブロックベースのハイブリッドコーディングアーキテクチャを有する。ピクチャパーティション化構造は、入力ビデオをコーディングツリーユニット(coding tree units、CTU)と呼ばれるブロックに分ける。CTUは、ネストされたマルチタイプツリー構造を有する四分木を用いてコーディングユニット(coding units、CU)に分割され、リーフコーディングユニット(CU)は、同じ予測モード(例えば、イントラ又はインター)を共有する領域を定義する。本文献において、用語「ユニット」は、全ての色成分をカバーする画像の領域を定義する。用語「ブロック」は、特定の色成分(例えば、ルマ)をカバーする領域を定義するために用いられ、4:2:0などのクロマサンプリングフォーマットを考慮するとき空間的位置において異なり得る。
【0020】
2.2.2 VVCにおけるデュアル/セパレートツリーパーティション
ルマ成分とクロマ成分は、Iスライスに対して別個のパーティションツリーを有することができる。別個のツリーパーティション化は、CTUレベルではなく、64×64ブロックレベル下である。VTMソフトウェアでは、デュアルツリーのオンとオフを制御するためのSPSフラグがある。
【0021】
2.2.3 VVCにおけるイントラ予測
2.2.3.1 67個のイントラ予測モード
自然ビデオで提示される任意のエッジ方向を捕捉するために、VTM4における方向イントラモードの数は、HEVCで使用される33から、65に拡張される。HEVCにない新しい方向モードは、図2に赤い点線の矢印として示されており、planarモードとDCモードは同じままである。これらのより高密度の方向イントラ予測モードは、全てのブロックサイズに、並びにルマ及びクロマ双方のイントラ予測に適用される。
【0022】
2.2.3.2 クロスコンポーネント線形モデル予測(CCLM)
クロスコンポーネント冗長性を低減するために、クロスコンポーネント線形モデル(cross-component linear model、CCLM)予測モードがVTM4で使用され、これについて、クロマサンプルは、以下の線形モデルを使用することにより、同じCUの再構成されたルマサンプルに基づいて予測される。
【数1】
ここで、pred(i,j)は、CU内の予測クロマサンプルを表し、rec(i,j)は、同じCUのダウンサンプリングされた再構成ルマサンプルを表す。線形モデルパラメータα及びβは、2つのサンプルからのルマ値とクロマ値との間の関係から導出され、該2つのサンプルは、ダウンサンプリングされた近隣のルマサンプルのセット内で最小サンプル値を有する、及び最大サンプルを有するルマサンプルと、それらの対応するクロマサンプルである。線形モデルパラメータα及びβは、以下の式に従って得られる。
【数2】
【0023】
ここで、YとXは、最大ルマサンプル値を有するルマサンプルのルマ値とクロマ値を表す。また、XとYは、それぞれ、最小ルマサンプルを有するルマサンプルのルマ値とクロマ値を表す。図3は、左及び上のサンプルの位置とCCLMモードに関与するカレント(current)ブロックのサンプルの一例を示す。
【0024】
パラメータαを計算するための除算演算は、ルックアップテーブルで実装される。テーブルを記憶するために必要なメモリを低減するために、diff値(最大値と最小値との間の差)とパラメータαが指数表記により表現される。例えば、diffは、4ビットの有効部分と指数で近似される。結果として、1/diffの表は、次のように、仮数の16個の値について16個の要素に低減される。
【数3】
【0025】
これは、計算の複雑さと、必要なテーブルを記憶するのに必要なメモリサイズの双方を低減する利点を有する。
【0026】
上テンプレートと左テンプレートを使用して線形モデル係数を一緒に計算できるほかに、これらを代替的に、LM_Aモード及びLM_Lモードと呼ばれる他の2つのLMモードで使用することもできる。
【0027】
LM_Aモードでは、上テンプレートのみを使用して線形モデル係数を計算する。より多くのサンプルを得るために、上テンプレートは(W+H)に拡張される。LM_Lモードでは、左テンプレートのみを使用して線形モデル係数を計算する。より多くのサンプルを得るために、左テンプレートは(H+W)に拡張される。
【0028】
非正方形ブロックでは、上テンプレートはW+Wに拡張され、左テンプレートはH+Hに拡張される。
【0029】
4:2:0ビデオシーケンスのクロマサンプル位置にマッチングするために、2つのタイプのダウンサンプリングフィルタをルマサンプルに適用して、水平及び垂直双方の方向における2対1のダウンサンプリング比を達成する。ダウンサンプリングフィルタの選択は、SPSレベルフラグにより指定される。2つのダウンサンプリングフィルタは以下のとおりであり、これらはそれぞれ、「type-0」及び「type-2」のコンテンツに対応する。
【数4】
【0030】
上側参照ラインがCTU境界にあるとき、ダウンサンプリングされたルマサンプルを作成するために、1つのルマライン(イントラ予測における一般的なラインバッファ)のみが使用されることに留意する。
【0031】
このパラメータ計算は、デコーディング処理の一部として実行され、単にエンコーダ探索動作としてではない。結果として、αとβの値をデコーダに伝達するためにシンタックスは使用されない。
【0032】
クロマイントラモードコーディングでは、クロマイントラモードコーディングに対して合計8つのイントラモードが許可されている。これらのモードは、5つの従来のイントラモードと3つのクロスコンポーネント線形モデルモード(CCLM、LM_A、及びLM_L)を含む。クロマモードコーディングは、対応するルマブロックのイントラ予測モードに直接依存する。Iスライスでは、ルマ成分とクロマ成分に対する別個のブロックパーティション化構造が有効にされるため、1つのクロマブロックが複数のルマブロックに対応する場合がある。したがって、クロマDMモードでは、カレントクロマブロックの中心位置をカバーする対応するルマブロックのイントラ予測モードが直接継承される。
【0033】
2.2.3.2.1 対応する修正作業原案(JVET-N0271)
以下の仕様は、JVET-M1001の修正作業原案及びJVET-N0271の採択に基づく。採択されたJVET-N0220における修正を太字と下線で示す。
シンタックステーブル
【表1】
【0034】
セマンティクス
0に等しいsps_cclm_enabled_flagは、ルマ成分からクロマ成分へのクロスコンポーネント線形モデルイントラ予測が無効にされていることを指定する。1に等しいsps_cclm_enabled_flagは、ルマ成分からクロマ成分へのクロスコンポーネント線形モデルイントラ予測が有効にされていることを指定する。
復号処理
【表2】
【0035】
2.2.3.3 種々のイントラ予測の態様
VTM4は、HEVCとは異なる多くのイントラコーディングツールを含み、例えば、以下の特徴がボックツリー構造の上のVVCテストモデル3に含まれている。
・ ワイドアングルモード拡張を有する67個のイントラモード
・ ブロックサイズ及びモード依存の4タップ補間フィルタ
・ 位置依存イントラ予測組み合わせ(Position dependent intra prediction combination、PDPC)
・ クロスコンポーネント線形モデルイントラ予測
・ マルチ参照ラインイントラ予測
・ イントラサブパーティション
【0036】
2.2.4 VVCにおけるインター予測
2.2.4.1 組み合わせインター及びイントラ予測(Combined inter and intra prediction、CIIP)
VTM4では、CUがマージモードでコーディングされるとき、CUが少なくとも64個のルマサンプルを含む(すなわち、CU幅×CU高さが64以上である)場合、さらなるフラグをシグナリングして、組み合わせインター/イントラ予測(CIIP)モードがカレントCUに適用されるかを示す。
【0037】
CIIP予測を形成するために、イントラ予測モードが、2つのさらなるシンタックス要素から最初導出される。最大4つのとり得るイントラ予測モード、すなわち、DC、planar、水平、又は垂直を使用することができる。次いで、通常のイントラ及びインターデコーディング処理を用いて、インター予測及びイントラ予測信号が導出される。最後、CIIP予測を得るために、インター及びイントラ予測信号の加重平均が実行される。
【0038】
2.2.4.2 種々のインター予測の態様
VTM4は、HEVCとは異なる多くのインターコーディングツールを含み、例えば、以下の特徴がボックツリー構造の上のVVCテストモデル3に含まれている。
・ アフィン動きインター予測
・ サブブロックベースの時間的動きベクトル予測
・ 適応的動きベクトル分解能
・ 時間的動き予測のための8×8ブロックベースの動き圧縮
・ ルマ成分に対する8タップ補間フィルタとクロマ成分に対する4タップ補間フィルタを有する、高精度(1/16pel)動きベクトル記憶及び動き補償
・ 三角形パーティション(Triangular partitions)
・ 組み合わせイントラ及びインター予測
・ MVD付きマージ(Merge with MVD、MMVD)
・ 対称的MVDコーディング
・ 双方向オプティカルフロー
・ デコーダ側動きベクトル精緻化
・ 双予測加重平均(Bi-predictive weighted averaging)
【0039】
2.2.5 ループ内フィルタ
VTM4には、合計で3つのループ内フィルタがある。デブロッキングフィルタとSAO(HEVCにおける2つのループフィルタ)の他に、VTM4では適応ループフィルタ(adaptive loop filter、ALF)が適用される。VTM4におけるフィルタリングプロセスの順序は、デブロッキングフィルタ、SAO、及びALFである。
【0040】
VTM4において、SAO及びデブロッキングフィルタリング処理は、HEVCにおけるものとほぼ同じである。
【0041】
VTM4では、クロマスケーリング付きルママッピングと呼ばれる新しい処理が追加された(この処理は、以前は適応ループ内リシェーパとして知られていた)。この新しい処理は、デブロッキングの前に実行される。
【0042】
2.2.6 クロマスケーリング付きルママッピング(LMCS、別名、ループ内リシェーピング)
VTM4では、クロマスケーリング付きルママッピング(luma mapping with chroma scaling、LMCS)と呼ばれるコーディングツールが、ループフィルタの前に新しい処理ブロックとして追加されている。LMCSは、2つの主要なコンポーネントを有し、すなわち、1)適応区分線形モデルに基づくルマ成分のループ内マッピングと、2)クロマ成分では、ルマ依存のクロマ残差スケーリングが適用される。図4は、デコーダの視点からのLMCSアーキテクチャを示す。図4の水色の影付きブロックは、マッピングされたドメインでどこに処理が適用されるかを示し、これらには、逆量子化、逆変換、ルマイントラ予測、及びルマ予測のルマ残差との加算が含まれる。図4の影無しブロックは、元の(すなわち、マッピングされていない)ドメインでどこに処理が適用されるかを示し、これらには、デブロッキング、ALF、及びSAOなどのループフィルタ、動き補償された予測、クロマイントラ予測、クロマ予測のクロマ残差との加算、及び参照ピクチャとしてのデコードされたピクチャの記憶が含まれる。図4の淡黄の影付きブロックは、ルマ信号の順方向及び逆方向マッピング、並びにルマ依存のクロマスケーリング処理を含む、新しいLMCS機能ブロックである。VVCにおける大抵の他のツールと同様に、LMCSはSPSフラグを使用してシーケンスレベルで有効/無効にすることができる。
【0043】
2.2.6.1 区分線形モデルによるルママッピング
ルマ成分のループ内マッピングは、圧縮効率を改善するために、ダイナミックレンジにわたってコードワードを再分配することにより入力信号のダイナミックレンジを調整する。ルママッピングは、順方向マッピング関数FwdMapと、対応する逆方向マッピング関数InvMapを利用する。FwdMap関数は、16個の等しい部分(pieces)を有する区分線形モデル(piecewise linear model)を使用してシグナリングされる。InvMap関数はシグナリングされる必要はなく、代わりにFwdMap関数から導出される。
【0044】
ルママッピングモデルは、タイルグループレベルでシグナリングされる。プレゼンスフラグが最初シグナリングされる。ルママッピングモデルがカレントタイルグループに存在する場合、対応する区分線形モデルパラメータがシグナリングされる。区分線形モデルは、入力信号のダイナミックレンジを16等分にパーティション化し、各部分について、その線形マッピングパラメータは、その部分に割り当てられたコードワードの数を使用して表現される。10ビットの入力を一例にとる。16個の部分の各々は、デフォルトで64個のコードワードをそれに割り当てられる。シグナリングされたコードワード数を使用して、スケーリングファクタを計算し、それに応じてその部分のためのマッピング関数を調整する。タイルグループレベルでは、別のLMCSイネーブルフラグがシグナリングされて、図4に示すようなLMCS処理がカレントタイルグループに適用されるかを示す。
【0045】
FwdMap区分線形モデルの各i番目の部分、i=0...15は、2つの入力ピボット点InputPivot[]と2つの出力(マッピングされた)ピボット点MappedPivot[]により定義される。
【0046】
InputPivot[]とMappedPivot[]は(10ビットビデオを仮定して)次のように計算される。
1) OrgCW = 64
2) i = 0:16について、InputPivot[i] = i*OrgCW
3) i = 0:16について、MappedPivot[i]は次のように計算される:
MappedPivot[0]=0;
for(i=0; i<16; i++)
MappedPivot[i+1] = MappedPivot[i] + SignalledCW[i]
ここで、SignalledCW[i]は、i番目の部分に対するシグナリングされたコードワード数である。
【0047】
図4に示すように、インターコーディングブロックでは、マッピングされたドメインにおいて動き補償予測が実行される。言い換えると、動き補償された予測ブロックYpredがDPBの参照信号に基づいて計算された後、FwdMap関数が適用されて、元のドメインのルマ予測ブロックをマッピングされたドメインにマッピングし、Y’pred=FwdMap(Ypred)である。イントラコーディングブロックでは、マッピングされたドメインでイントラ予測が実行されるため、FwdMap関数は適用されない。再構成ブロックYが計算された後、InvMap関数が適用されて、マッピングされたドメインにおける再構成されたルマ値を元のドメインにおける再構成されたルマ値に逆にコンバートする(
【数5】
)。InvMap関数は、イントラコーディングルマブロック及びインターコーディングルマブロックの双方に適用される。
【0048】
ルママッピング処理(順方向及び/又は逆方向マッピング)は、ルックアップテーブル(LUT)を使用するか又はオンザフライ(on-the-fly)計算を使用するかのいずれかで実装することができる。LUTが使用される場合、FwdMapLUT及びInvMapLUTをタイルグループレベルでの使用のために予め計算及び予め記憶することができ、順方向及び逆方向のマッピングは、それぞれ、FwdMap(Ypred)=FwdMapLUT(Ypred)及びInvMap(Y)=InvMapLUT(Y)として簡単に実装することができる。あるいは、オンザフライ計算を用いてもよい。順方向マッピング関数FwdMapを一例にとる。ルマサンプルが属する部分を解決するために、サンプル値は6ビット(これは16等分に対応する)右シフトされる。次いで、その部分のための線形モデルパラメータが取り出され、オンザフライで適用されて、マッピングされたルマ値を計算する。iを部分インデックスとし、a1、a2をそれぞれInputPivot[i]、InputPivot[i+1]とし、b1、b2をそれぞれMappedPivot[i]、MappedPivot[i+1]とする。FwdMap関数は次のように評価される。
【数6】
【0049】
InvMap関数は、同様の方法でオンザフライで計算することができるが、例外は、サンプル値が属する部分を解決するとき単純な右ビットシフトの代わりに条件チェックが適用されることであり、なぜならば、マッピングされたドメインにおける部分が等しいサイズではないためである。
【0050】
2.2.6.2 ルマ依存のクロマ残差スケーリング
クロマ残差スケーリングは、ルマ信号とその対応するクロマ信号との間の相互作用を補償するように設計されている。クロマ残差スケーリングが有効にされているか否かも、タイルグループレベルでシグナリングされる。ルママッピングが有効にされている場合、及びデュアルツリーパーティション(セパレートクロマツリーとしても知られる)がカレントタイルグループに適用されない場合、さらなるフラグがシグナリングされて、ルマ依存のクロマ残差スケーリングが有効にされているか否かを示す。ルママッピングが使用されないとき、又はカレントタイルグループでデュアルツリーパーティションが使用されるとき、ルマ依存のクロマ残差スケーリングは無効にされる。さらに、ルマ依存のクロマ残差スケーリングは、そのエリアが4以下のクロマブロックでは常に無効にされる。
【0051】
クロマ残差スケーリングは、(イントラコーディングブロック及びインターコーディングブロックの双方について)対応するルマ予測ブロックの平均値に依存する。avgY’をルマ予測ブロックの平均として表す。CScaleInvの値は、次のステップで計算される。
1) InvMap関数に基づいて、avgY’が属する区分線形モデルのインデックスYIdxを見つける。
2) CScaleInv=cScaleInv[YIdx]であり、ここでcScaleInv[]は予め計算された16個の部分のLUTである。
カレントブロックがイントラ、CIIP、又はイントラブロックコピー(IBC、別名、カレントピクチャ参照又はCPR)モードとしてコーディングされる場合、avgY’はイントラ、CIIP、又はIBCの予測ルマ値の平均として計算され、そうでない場合、avgY’は順方向マッピングされたインター予測ルマ値(図4のYpred)の平均として計算される。サンプルベースで実行されるルママッピングとは異なり、CScaleInvはクロマブロック全体に対して定数値である。CScaleInvを用いて、クロマ残差スケーリングは次のように適用される。
【数7】
【0052】
2.2.6.3 JVET-M1001_v7の対応作業原案とJVET-N0220の採択
以下の仕様は、JVET-M1001の修正作業原案及びJVET-N0220の採択に基づく。採択されたJVET-N0220における修正を太字と下線で示す。
[シンタックステーブル]
【表3】
[セマンティクス]
【表4】
【0053】
3. 既存の実装の欠点
LMCS/CCLMの現在の設計は、以下の問題を有し得る。
1. LMCSコーディングツールでは、クロマ残差スケーリングファクタは、コロケート(collocated)ルマ予測ブロックの平均値により導出され、これは、LMCSクロマ残差スケーリングにおけるクロマサンプルの処理のための待ち時間を結果としてもたらす。
a) 単一/共有ツリーの場合、待ち時間は、(a)利用可能なルマブロック全体の全ての予測サンプルを待つこと、及び(b)(a)により得られた全てのルマ予測サンプルの平均をとることにより引き起こされる。
b)デュアル/セパレートツリーの場合、待ち時間は、Iスライスにおいてルマ及びクロマ成分の別個のブロックパーティション化構造が有効にされるため、さらに悪くなる。したがって、1つのクロマブロックが複数のルマブロックに対応し得、1つの4×4クロマブロックが64×64ルマブロックに対応し得る。ゆえに、最悪の場合、カレントの4×4クロマブロックのクロマ残差スケーリングファクタは、64×64ルマブロック全体の全ての予測サンプルが利用可能になるまで待つ必要があり得る。一言で言えば、デュアル/セパレートツリーにおける待ち時間の問題は、はるかに深刻である。
2. CCLMコーディングツールでは、イントラクロマ予測のためのCCLMモデル計算は、ルマブロックとクロマブロックの双方の左及び上の参照サンプルに依存する。また、クロマブロックのためのCCLM予測は、同じCUのコロケートルマ再構成サンプルに依存する。これは、デュアル/セパレートツリーにおける長い待ち時間を引き起こす。
・ デュアル/セパレートツリーの場合、1つの4×4クロマブロックは64×64ルマブロックに対応し得る。ゆえに、最悪の場合、カレントクロマブロックのCCLM処理は、対応する64×64ルマブロック全体が再構成されるまで待つ必要があり得る。この待ち時間の問題は、デュアル/セパレートツリーにおけるLMCSクロマスケーリングと同様である。
【0054】
4. 例示的な手法及び実施形態
上記問題に取り組むために、ルマ依存のクロマ残差スケーリング、CCLM、及び異なる色成分からの情報に依存する他のコーディングツールにおけるクロスコンポーネント依存性を除去/低減/制限するためのいくつかの方法を提案する。
【0055】
以下に記載される詳細な実施形態は、一般的な概念を説明するための一例として考慮されるべきである。これらの実施形態は狭義に解釈されるべきではない。さらに、これらの実施形態は、任意の方法で組み合わせることができる。
【0056】
以下に記載される箇条書きはLMCS/CCLMに明示的に言及しているが、この方法は、異なる色成分からの情報に依存する他のコーディングツールにも適用可能であり得ることに留意されたい。さらに、以下で言及される用語「ルマ(luma)」と「クロマ(chroma)」は、それぞれ、「第1の色成分」と「第2の色成分」、例えば、RGB色フォーマットにおける「G成分」と「B/R成分」などに置き換えられてもよい。
【0057】
以下の議論では、「コロケートサンプル/ブロック(collocated sample/block)」の定義は、VVC作業原案JVET-M1001におけるコロケートサンプル/ブロックの定義と一致する。より具体的には、4:2:0色フォーマットにおいて、クロマブロックの左上サンプルが位置(xTbC,yTbC)にあると仮定し、コロケートルマブロック位置の左上サンプル(xTbY、yTbY)は、(xTbY,yTbY)=(xTbC<<1,yTbC<<1)として導出される。図5に示すように、カレントクロマブロックの左上サンプルは、クロマピクチャの(x=16,y=16)に位置し、そのコロケートルマブロックの左上サンプルは、ルマピクチャにおけるコロケートルマブロックのブロックパーティションにかかわらず、ルマピクチャの(x=32,y=32)に位置する。別の例として、同じ色成分で言うと、図6に示すように、参照フレーム内のコロケートブロックの左上サンプルの位置は、カレントフレーム内のカレントブロックの左上サンプルの位置と同じであるべきであり、カレントブロックの左上サンプルがカレントフレーム内の(x,y)であると仮定し、カレントブロックのコロケートブロックの左上サンプルは参照フレーム内の同じ位置(x,y)を有する。
【0058】
以下の議論では、「対応するブロック」は、カレントブロックとは異なる位置を有し得る。例えば、カレントブロックとその参照フレーム内の対応するブロックとの間に動きシフトが存在し得る。図6に示されるように、カレントブロックがカレントフレーム内の(x,y)に位置し、それが動きベクトル(mv,mv)を有すると仮定し、カレントブロックの対応するブロックは、参照フレーム内の(x+mv,y+mv)に位置し得る。また、IBCコーディングブロックでは、コロケートルマブロック(ゼロベクトルで指し示される)及び対応するルマブロック(非ゼロBVで指し示される)は、カレントフレームの異なる場所に位置し得る。別の例では、ルマブロックのパーティションが(Iスライスのデュアルツリーパーティションにおいて)クロマブロックのパーティションと一致しないとき、カレントクロマブロックのコロケートルマブロックは、より大きいルマブロックに属し得、これは、コロケートルマブロックの左上サンプルをカバーする重なったルマコーディングブロックのパーティションサイズに依存する。図5に示すように、太線の矩形がブロックのパーティションを示すと仮定すると、64×64ルマブロックはBTにより最初分割され、次いで、64×64ルマブロックの右部分はTTによりさらに分割され、これは、それぞれ32×16、32×32、32×16に等しいサイズの3つのルマブロックを結果としてもたらす。ゆえに、カレントクロマブロックのコロケートルマブロックの左上サンプル(x=32,y=32)を見ると、それは、TTパーティションの中央の32×32ルマブロックに属する。この場合、コロケートルマブロックの左上サンプルをカバーする対応するルマブロックを、「対応するルマブロック」と呼ぶ。したがって、この例では、対応するルマブロックの左上サンプルは(x=32,y=16)に位置する。
【0059】
以下、DMVD(デコーダ側動きベクトル導出(decoder-side motion vector derivation))を使用して、BDOF(別名、BIO)、又は/及びDMVR(デコーダ側動きベクトル精緻化(decode-side motion vector refinement))、又は/及びFRUC(フレームレートアップコンバージョン(frame rate up-conversion))、又は/及びデコーダにおいて動きベクトル又は/及び予測サンプル値を精緻化する他の方法を表す。
【0060】
[LMCSとCCLMのモデル計算のクロマスケーリング待ち時間の除去]
1. インターコーディングブロックについて、参照フレーム内のカレントブロックの1つ又は複数の参照サンプルが、LMCSモードにおけるクロマ残差スケーリングファクタを導出するために使用され得ることが提案される。
a) 一例において、参照ルマサンプルは、クロマ残差スケーリングファクタを導出するために直接使用され得る。
i. あるいは、参照サンプルに補間が最初適用されてもよく、補間されたサンプルを使用してクロマ残差スケーリングファクタを導出してもよい。
ii. あるいは、異なる参照フレーム内の参照サンプルを利用して、クロマ残差スケーリングファクタ導出に使用される最終参照サンプルを導出してもよい。
1) 一例において、双予測コーディングブロックに対して、上記方法が適用されてもよい。
iii. 一例において、参照サンプルの強度が、クロマ残差スケーリングファクタを導出するために使用される前に、リシェーピングドメイン(reshaping domain)にコンバートされてもよい。
iv. 一例において、参照サンプルの線形結合が、クロマ残差スケーリングファクタを導出するために使用されてもよい。
1) 例えば、a×S+bを用いてクロマ残差スケーリングファクタを導出してもよく、ここで、Sは参照サンプルであり、a及びbはパラメータである。一例において、a及びbは、局所照度補償(Localized Illuminate Compensation、LIC)により導出されてもよい。
b) 一例において、参照フレーム内の参照ルマサンプルの位置は、カレントブロックの動きベクトルに依存し得る。
i. 一例において、参照サンプルは、参照ピクチャ内にあり、かつカレントルマブロックと同じ幅及び高さを有する参照ルマブロックに属する。参照ピクチャ内の参照ルマサンプルの位置は、カレントピクチャ内のその対応するルマサンプルの位置として、動きベクトルを加算して計算されてもよい。
ii. 一例において、参照ルマサンプルの位置は、カレントルマブロックの左上(又は中心、又は右下)サンプルの位置とカレントブロックの動きベクトルにより導出されてもよく、参照フレーム内の対応するルマサンプルと呼ばれる。
1) 一例において、整数動きベクトルを使用して、参照フレーム内の対応するルマサンプルを導出してもよい。一例において、1つのブロックに関連づけられた動きベクトルは、整数の動きベクトルを導出するために、ゼロに近づくように丸められるか又はゼロから離れるように丸められるかのいずれかを行われてもよい。
2) あるいは、分数動きベクトルを使用して、参照フレーム内の対応するルマサンプルを導出してもよく、それにより、分数参照サンプルを導出するために補間処理が必要とされ得る。
iii. あるいは、参照ルマサンプルの位置は、カレントルマブロックの左上(又は中心、又は右下)サンプルの位置により導出されてもよい。
iv. あるいは、参照フレーム内のいくつかの予め定義された位置における複数の対応するルマサンプルを選定して、クロマ残差スケーリングファクタを計算してもよい。
c) 一例において、複数の参照ルマサンプルの中央値又は平均値を使用して、クロマ残差スケーリングファクタを導出してもよい。
d) 一例において、予め定義された参照フレーム内の参照ルマサンプルを使用して、クロマ残差スケーリングファクタを導出してもよい。
i. 一例において、予め定義された参照フレームは、参照ピクチャリスト0の、0に等しい参照インデックスを有するフレームでもよい。
ii. あるいは、予め定義された参照フレームの参照インデックス及び/又は参照ピクチャリストは、シーケンス/ピクチャ/タイルグループ/スライス/タイル/CTU行/ビデオユニットレベルでシグナリングされてもよい。
iii. あるいは、複数の参照フレーム内の参照ルマサンプルが導出されてもよく、平均値又は加重平均値を利用してクロマ残差スケーリングファクタを得てもよい。
【0061】
2. LMCSモードにおいてルマサンプルからクロマ残差スケーリングファクタを導出するかどうか及び導出する方法が、カレントブロックが双予測を適用するかどうかに依存し得ることが提案される。
a) 一例において、クロマ残差スケーリングファクタは、各予測方向に対して個々に導出される。
【0062】
3. LMCSモードにおいてルマサンプルからクロマ残差スケーリングファクタを導出するかどうか及び導出する方法が、カレントブロックがサブブロックベースの予測を適用するかどうかに依存し得ることが提案される。
a) 一例において、サブブロックベースの予測はアフィン予測である。
b) 一例において、サブブロックベースの予測は代替時間動きベクトル予測(Alternative Temporal Motion Vector Prediction、ATMVP)である。
c) 一例において、クロマ残差スケーリングファクタは、各サブブロックに対して個々に導出される。
d) 一例において、クロマ残差スケーリングファクタは、それがサブブロックにより予測されるとしても、ブロック全体に対して導出される。
i. 一例において、箇条書き1に記載されるように、1つの選択されたサブブロック(例えば、左上サブブロック)の動きベクトルを使用して、カレントブロックの参照サンプルを識別してもよい。
【0063】
4. クロマ残差スケーリングファクタを導出するために使用されるルマ予測値が、最終ルマ予測値の代わりに中間ルマ予測値でもよいことが提案される。
a) 一例において、双方向オプティカルフロー(Bi-Directional Optical Flow)(BDOF、別名、BIO)の処理の前のルマ予測値を使用して、クロマ残差スケーリングファクタを導出してもよい。
b) 一例において、デコーダ側動きベクトル精緻化(DMVR)の処理の前のルマ予測値を使用して、クロマ残差スケーリングファクタを導出してもよい。
c) 一例において、LICの処理の前のルマ予測値を使用して、クロマ残差スケーリングファクタを導出してもよい。
d) 一例において、JVET-N0236で提案されている予測精緻化オプティカルフロー(Prediction Refinement Optical Flow、PROF)の処理の前のルマ予測値を使用して、クロマ残差スケーリングファクタを導出してもよい。
【0064】
5. 中間動きベクトルは、参照サンプルを識別するために使用され得る。
a) 一例において、BDOF又は/及びDMVR又は/及び他のDMVD方法の処理の前の動きベクトルを使用して、参照サンプルを識別してもよい。
b) 一例において、JVET-N0236で提案されている予測精緻化オプティカルフロー(PROF)の処理の前の動きベクトルを使用して、参照サンプルを識別してもよい。
【0065】
6. 上記方法は、カレントブロックがインターモードでコーディングされているとき適用可能であり得る。
【0066】
7. IBCコーディングブロックについて、カレントフレームの参照ブロック内の1つ又は複数の参照サンプルが、LMCSモードにおけるクロマ残差スケーリングファクタを導出するために使用され得ることが提案される。ブロックがIBCコーディングされるとき、用語「動きベクトル」は「ブロックベクトル」と呼ばれることもあり、参照ピクチャはカレントピクチャとして設定される。
a) 一例において、参照サンプルは、カレントピクチャ内にあり、かつカレントブロックと同じ幅及び高さを有する参照ブロックに属する。参照サンプルの位置は、その対応するサンプルの位置として、動きベクトルを加算して計算されてもよい。
b) 一例において、参照ルマサンプルの位置は、カレントルマブロックの左上(又は中心、又は右下)サンプルの位置により、動きベクトルを加算して導出されてもよい。
c) あるいは、参照ルマサンプルの位置は、カレントルマブロックの左上(又は中心、又は右下)サンプルの位置により、カレントブロックのブロックベクトルを加算して導出されてもよい。
d) あるいは、カレントルマブロックの参照領域内のいくつかの予め定義された位置における複数の対応するルマサンプルを選定して、クロマ残差スケーリングファクタを計算してもよい。
e) 一例において、複数の対応するルマサンプルは、クロマ残差スケーリングファクタを導出する関数を用いて計算されてもよい。
i. 例えば、複数の対応するルマサンプルの中央値又は平均値を計算して、クロマ残差スケーリングファクタを導出してもよい。
f) 一例において、参照サンプルの強度が、クロマ残差スケーリングファクタを導出するために使用される前に、リシェーピングドメインにコンバートされてもよい。
i. あるいは、参照サンプルの強度は、クロマ残差スケーリングファクタを導出するために使用される前に、元のドメインにコンバートされてもよい
【0067】
8. カレントフレーム内のカレントルマブロックの識別された位置に位置する1つ又は複数の予測/再構成サンプルが、LMCSモードにおいてカレントクロマブロックに対するクロマ残差スケーリングファクタを導出するために使用され得ることが提案される。
a) 一例において、カレントブロックがインターコーディングされる場合、カレントルマブロックの中心に位置するルマ予測(又は再構成)サンプルを選定して、クロマ残差スケーリングファクタを導出してもよい。
b) 一例において、第1のM×Nルマ予測(又は再構成)サンプルの平均値を選定して、クロマ残差スケーリングファクタを導出してもよく、ここで、M×Nは、コロケートルマブロックサイズの幅×高さより小さくてもよい。
【0068】
9. CCLMモデルを計算するために使用される手順の全部又は一部が、LMCSモードにおけるカレントクロマブロックのクロマ残差スケーリングファクタ導出に使用され得ることが提案される。
a) 一例において、CCLMモデルパラメータ導出プロセスにおけるコロケートルマブロックの近隣のルマサンプルの識別された位置に位置する参照サンプルを利用して、クロマ残差スケーリングファクタを導出してもよい。
i. 一例において、これらの参照サンプルを直接使用してもよい。
ii. あるいは、これらの参照サンプルにダウンサンプリングを適用してもよく、ダウンサンプリングされた参照サンプルを適用してもよい。
b) 一例において、CCLMモデル計算のために選択されたS個の参照サンプルのうちK個が、LMCSモードにおけるクロマ残差スケーリングファクタ導出に使用されてもよい。例えば、Kは1に等しく、Sは4に等しい。
c) 一例において、CCLMモードにおけるコロケートルマブロックの参照サンプルの平均/最小/最大値が、LMCSモードにおけるクロマ残差スケーリングファクタ導出に使用されてもよい。
【0069】
10. クロマ残差スケーリングファクタの導出のためにサンプルを選択する方法は、カレントブロックのコーディング情報に依存し得る。
a) コーディング情報は、QP、コーディングモード、POC、イントラ予測モード、動き情報などを含み得る。
b) 一例において、IBCコーディングブロック又は非IBCコーディングブロックでは、サンプルを選択する方法が異なり得る。
c) 一例において、サンプルを選択する方法は、参照ピクチャ情報、例えば、参照ピクチャとカレントピクチャとの間のPOC距離などに基づいて異なり得る。
【0070】
11. クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算が、コロケートルマブロックの左上サンプルをカバーする対応するルマブロックの近隣の(neighboring)サンプルに依存し得ることが提案される。本発明において、「コーディングブロック(coding block)」は、HEVC仕様又はVVC作業原案に規定されるCU/TU/PUなどのビデオコーディング領域を参照し得る。
a) 「対応するルマコーディングブロック」は、コロケートルマコーディングブロックの左上位置をカバーするコーディングブロックとして定義され得る。
i. 図5は、デュアルツリーの場合のイントラコーディングクロマブロックについて、クロマ成分のCTUパーティションがルマ成分のCTUパーティションと異なり得る一例を示す。最初、カレントクロマブロックのコロケートルマブロックの左上サンプルをカバーする「対応するルマコーディングブロック」が取り出される。次いで、「対応するルマコーディングブロック」のブロックサイズ情報を使用することにより、「対応するルマコーディングブロック」の左上サンプルを導出することができ、コロケートルマブロックの左上サンプルをカバーする「対応するルマコーディングブロック」の左上サンプルは(x=32,y=16)に位置する。
b) 一例において、コロケートルマコーディングブロックの左上サンプルをカバーする「対応するルマコーディングブロック」の位置を導出するために、ブロックサイズ/パーティション/位置/座標が必要とされ得る。
i. 一例において、ブロックサイズ及び/又はブロックパーティション及び/又はブロック座標は、ルマ成分などの特定の色成分の各ブロックについて記憶されてもよい。
ii. 一例において、「対応するルマコーディングブロック」とカレントブロックは、常に同じCTU又はCTU行内にあり得、したがって、ラインバッファ内にブロックサイズ/パーティション/位置/座標の記憶がなくてもよい。
c) 一例において、「対応するルマコーディングブロック」にない再構成サンプルを使用して、クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算を導出してもよい。
i. 一例において、「対応するルマコーディングブロック」に隣接した再構成サンプルを使用して、クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算を導出してもよい。
1) 一例において、「対応するルマコーディングブロック」の左近隣列及び/又は上近隣行に位置するN個のサンプルを使用して、クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算を導出してもよく、ここで、N=1....2W+2Hであり、W及びHは「対応するルマコーディングブロック」の幅及び高さである。
a) 「対応するルマコーディングブロック」の左上サンプルが(xCb,yCb)であると仮定し、一例において、上近隣ルマサンプルは(xCb+W/2,yCb-1)又は(xCb-1,yCb-1)に位置し得る。別の例では、左近隣ルマサンプルが(xCb+W-1,yCb-1)に位置し得る。
b) 一例において、近隣のサンプルの位置は固定されてもよく、かつ/あるいは予め定義されたチェック順序におけるものでもよい。
2) 一例において、N個の近隣のサンプルのうち1つが、クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算を導出するために選択される。N=3、及び3つの近隣のサンプル(xCb-1、yCb-H-1)、(xCb+W/2、yCb-1)、(xCb-1、yCb-1)のチェック順序を仮定し、チェックリスト内の最初の利用可能な近隣のサンプルを選択して、クロマ残差スケーリングファクタを導出してもよい。
3) 一例において、「対応するルマコーディングブロック」の左近隣列及び/又は上近隣行に位置するN個のサンプルの中央値又は平均値を使用して、クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算を導出してもよく、ここで、N=1....2W+2Hであり、W及びHは「対応するルマコーディングブロック」の幅及び高さである。
d) 一例において、クロマ残差スケーリングを実行するかどうかは、対応するルマブロックの「利用可能な」近隣のサンプルに依存し得る。
i. 一例において、近隣のサンプルの「利用可能性」は、カレントブロック/サブブロックのエンコーディングモード、又は/及び近隣のサンプルのエンコーディングモードに依存してもよい。
1) 一例において、インターモードでコーディングされたブロックについて、イントラモード又は/及びIBCモード又は/及びCIIPモード又は/及びLICモードでコーディングされた近隣のサンプルは、「利用不可能」とみなされ得る。
2) 一例において、インターモードでコーディングされたブロックについて、近隣のサンプルが拡散フィルタ又は/及びバイラテラルフィルタ又は/又はアダマール変換(Hadamard transform)フィルタを採用し、「利用不可能」とみなされ得る。
ii. 一例において、近隣のサンプルの「利用可能性」は、カレントピクチャ/タイル/タイルグループ/VPDU/スライスの幅及び/又は高さに依存し得る。
1) 一例において、近隣のブロックがカレントピクチャの外側に位置する場合、それは「利用不可能」として扱われる。
iii. 一例において、「利用可能な」近隣のサンプルがないとき、クロマ残差スケーリングは拒否されてもよい。
iv. 一例において、「利用可能な」近隣のサンプルの数がK(K>=1)より小さいとき、クロマ残差スケーリングは拒否されてもよい。
v. あるいは、利用不可能な近隣のサンプルは、デフォルトの固定値、又はパディング、又は置換によりフィルされてもよく、それにより、クロマ残差スケーリングは常に適用され得る。
1) 一例において、近隣のサンプルが利用できない場合、それは、1<<(bitDepth-1)でフィルされてもよく、ここで、bitDepthは、ルマ/クロマ成分のサンプルのビット深度を指定する。
2) あるいは、近隣のサンプルが利用できない場合、それは、左/右/上/下の近隣に位置する周囲のサンプルからのパディングによりフィルされてもよい。
3) あるいは、近隣のサンプルが利用できない場合、それは、予め定義されたチェック順序において最初の利用可能な隣接したサンプルにより置換されてもよい。
4) あるいは、近隣のサンプルが利用できない場合、それは、予め定義されたフィルタリング/マッピング値によりフィルされてもよい(例えば、1<<(bitDepth-1)のフィルタリング/マッピング値であり、ここで、bitDepthは、ルマ/クロマ成分のサンプルのビット深度を指定する)。
a) 一例において、フィルタリング/マッピング処理は、LMCSの順方向マッピングのLUTインデックス化であり得る。
e) 一例において、クロマ残差スケーリングを実行するかどうか及び実行する方法は、カレントブロックのコーディングモード、及び/又は近隣のブロックのコーディングモードに依存し得る。
i. 「カレントブロック」は、カレントクロマブロックを参照し得、あるいはそれは、コロケートルマブロック、又はコロケートクロマブロックの少なくとも1つのサンプルをカバーする対応するルマブロックを参照し得る。「近隣ブロック」(隣接(adjacent)又は非隣接(non-adjacent))は、カレントクロマブロックの近隣のクロマブロックを参照し得、あるいはそれらは、カレントルマブロックの近隣のルマブロックを参照し得る。
ii. 一例において、所与の位置をカバーする1つのルマ近隣ブロックのコーディングモードが利用されてもよく、例えば、カレントブロックの左上の座標に対して相対的に(-1,-1)などである。
iii. 一例において、複数の位置をカバーする複数の近隣のブロックのコーディングモードが利用されてもよく、例えば、カレントブロックの左上座標に対して相対的に(x,-1)(例えば、xは0...ブロックの幅から1引いた値)、及び/又はカレントブロックの左上座標に対して相対的に(-1,y)(例えば、yは-1...ブロックの高さから1引いた値)などである。
iv. 一例において、1つの近隣のブロックの再構成が、カレントのスライス/タイルグループ内のサンプルにアクセスすることを必要とする場合、例えば、それがX-コーディングされる場合、クロマ残差スケーリングは無効にされる。
1) 例えば、モードXはイントラモードでもよい。
2) 例えば、モードXはCIIPモードでもよい。
3) 例えば、モードXはIBCモードでもよい。
4) 一例において、カレントブロックがCIIPコーディングでなくインターコーディングされ、対応するルマブロックの近隣の近隣ブロックがモードXでコーディングされる場合、クロマ残差スケーリングは無効にされる。
v. 一例において、1つの近隣のブロックの再構成が、カレントのスライス/タイルグループ内のサンプルにアクセスすることを必要とする場合、例えば、それがX-コーディングされる場合、デフォルト値を使用して、クロマ残差スケーリングファクタを導出してもよい
1) 例えば、モードXはイントラモードでもよい。
2) 例えば、モードXはCIIPモードでもよい。
3) 例えば、モードXはIBCモードでもよい。
4) 一例において、カレントブロックがCIIPコーディングでなくインターコーディングされ、対応するルマブロックの近隣ブロックがモードXでコーディングされる場合、デフォルト値を使用してクロマ残差スケーリングファクタを導出してもよい。
5) 一例において、デフォルト値はルマ/クロマサンプルのビット深度に依存し得る。
6) 一例において、デフォルト値は、1<<(bitDepth-1)のフィルタリング/マッピング値に設定されてもよく、ここで、bitDepthは、ルマ/クロマ成分のサンプルのビット深度を指定する。一例において、フィルタリング/マッピング処理は、LMCSの順方向マッピングのLUTインデックス化であり得る。
f) 一例において、「対応するルマコーディングブロック」の近隣のフィルタ/マッピングされた再構成サンプルを使用して、クロマ残差スケーリングファクタ及び/又はCCLMのモデル計算を導出してもよい。
i. 一例において、フィルタリング/マッピング処理には、イントラブロックのための参照平滑化フィルタリング、バイラテラルフィルタなどのポストフィルタリング、アダマール変換ベースのフィルタ、リシェーパドメインの順方向マッピングなどを含んでもよい。
【0071】
12. カレントスライス/タイルグループにおける複数のクロマブロック(CU又はTUなど)に対してクロマ残差スケーリングファクタを導出するために、固定値が使用され得ることが提案される。
a) 一例において、N個のブロックに対するクロマ残差スケーリングファクタが、固定値により導出されてもよく、Nは、1...カレントスライス/タイルグループ内のクロマブロックの総数である。
b) 一例において、固定値を使用して、その値が属する区分線形モデルのインデックスを見つけてもよく、次いで、導出された区分インデックスからクロマ残差スケーリングファクタを計算してもよい。一例において、固定値はルマサンプルの内部ビット深度に依存し得る。
c) 一例において、固定値は、クロマ残差スケーリングファクタを表すために直接使用されてもよい。
d) 一例において、固定値及び/又は固定クロマ残差スケーリングファクタは、ピクチャ/スライス/タイルグループのタイプ(例えば、I又はP又はBスライス)及び/又はブロックのコーディングモード(例えば、イントラモード又はインターモード)に依存し得る。
e) 一例において、固定値は、異なるピクチャ/スライス/タイルグループ/タイルに対して異なり得る。
f) 一例において、固定クロマ残差スケーリングファクタが、LMCSにおけるクロマ残差をスケーリングするために直接使用されてもよい。
i. 一例において、固定クロマ残差スケーリングファクタは、DPS/SPS/PPS/VPS/APS/スライスヘッダ/タイルグループヘッダなどのビデオユニットでシグナリングされてもよい。
ii. 一例において、ピクチャ/スライス/タイルグループ/タイルの固定クロマ残差スケーリングファクタは、ピクチャ/スライス/タイルグループ/タイルにおけるルマサンプルリシェーピングのためのマッピング関数(例えば、区分線形関数)に依存し得る。
1) 一例において、固定クロマ残差スケーリングファクタは、JVET-M1001-v7で定義されている配列InvScaleCoeff[]及び/又は配列ScaleCoeff[]に依存し得る。
a) 例えば、ピクチャ/スライス/タイルグループ/タイルに対する固定クロマ残差スケーリングファクタにより依存される配列InvScaleCoeff[]及び/又は配列ScaleCoeff[]を使用して、ピクチャ/スライス/タイルグループ/タイル内のルマサンプルをリシェープしてもよい。
2) 一例において、固定クロマ残差スケーリングファクタは、ルマサンプルをリシェープするために使用される区分線形関数の全てのスケーリングファクタの中の最小/最大/中央/平均値により導出されてもよい。
a) 例えば、固定クロマ残差スケーリングファクタは、InvScaleCoeff[i]の最小/最大/中央/平均値により導出されてもよく、ここで、iは、最小インデックス(JVET-M1001-v7におけるlmcs_min_bin_idxなど)から最大インデックス(JVET-M1001-v7におけるLmcsMaxBinIdxなど)までである。
i. 例えば、固定クロマ残差スケーリングファクタは、InvascaleCoeff[i]の最小/最大/中央/平均値と等しく、ここでiは、最小インデックス(JVET-M1001-v7で定義されるlmcs_min_bin_idxなど)から最大インデックス(JVET-M1001-v7で定義されるLmcsMaxBinIdxなど)までである。
ii. あるいは、固定クロマ残差スケーリングファクタは、InvScaleCoeff[i]の最小/最大/中央/平均値により導出されてもよく、ここで、iは、最小インデックス(0など)から最大インデックス(15など)までであり、JVET-M1001-v7で定義されるlmcsCW[i]は、0に等しくない。
g) 一例において、固定値は、クロマスケーリングファクタを導出するための区分関数インデックスを表すために使用されてもよい。
i. 一例において、固定値は、DPS/SPS/PPS/VPS/APS/スライスヘッダ/タイルグループヘッダなどのビデオユニットでシグナリングされてもよい。
ii. 一例において、固定値はルマサンプル強度を表してもよく、これは、区分関数インデックスを識別するために使用され得、識別された区分関数インデックスはさらに、クロマスケーリングファクタを見つけるために使用される。一例において、固定値は0、又は(1<<lumaBitDepth)-1、又は1<<(lumaBitDepth-1)に等しくてもよく、ここで、lumaBitDepthはルマサンプルのビット深度を示す。
1) 一例において、固定値が区分関数の入力レンジ内である場合、区分関数が識別される。
2) 一例において、固定値が区分関数の出力レンジ内である場合、区分関数が識別される。
iii. 一例において、固定値は区分関数インデックスを表してもよく、これは、クロマスケーリングファクタを見つけるために使用され得る。
1) 一例において、固定値は、LMCS構築プロセスで使用される最小ビンインデックス(例えば、lmcs_min_bin_idx)に等しくてもよい。
2) 一例において、固定値は、LMCS構築プロセスで使用される最大ビンインデックス(例えば、LmcsMaxBinIdx)に等しくてもよい。
3) 一例において、固定値は、LMCS構築プロセスで使用される最大ビンインデックスと最小ビンインデックスの平均に等しくてもよい。
【0072】
[クロマ残差スケーリング及び/又はCCLMが適用されるか否かの制限]
13. クロマ残差スケーリング又はCCLMが適用されるか否かが、対応する及び/又はコロケートのルマブロックのパーティションに依存し得ることが提案される。
a) 一例において、クロスコンポーネント情報でツールを有効にするか又は無効にするかは、コロケートルマ(例えば、Y又はG成分)ブロック内のCU/PU/TUの数に依存し得る。
i. 一例において、コロケートルマ(例えば、Y又はG成分)ブロック内のCU/PU/TUの数が数値閾値を超えている場合、そのようなツールは無効にされてもよい。
ii. あるいは、クロスコンポーネント情報でツールを有効にするか又は無効にするかは、パーティションツリー深さに依存してもよい。
1) 一例において、コロケートルマブロック内のCUの最大(又は最小、又は平均、又は他のバリエーション)四分木深さが閾値を超えている場合、そのようなツールは無効にされてもよい。
2) 一例において、コロケートルマブロック内のCUの最大(又は最小、又は平均、又は他のバリエーション)BT及び/又はTT深さが閾値を超えている場合、そのようなツールは無効にされてもよい。
iii. あるいは、さらに、クロスコンポーネント情報でツールを有効にするか又は無効にするかは、クロマブロックのブロックの大きさ(dimension)に依存してもよい。
iv. あるいは、さらに、クロスコンポーネント情報でツールを有効にするか又は無効にするかは、コロケートルマが複数のVPDU/予め定義された領域サイズをまたぐ(cross)かどうかに依存してもよい。
v. 上記議論における閾値は、固定数でもよく、あるいはシグナリングされてもよく、あるいは標準のプロファイル/レベル/層に依存してもよい。
b) 一例において、カレントクロマブロックのコロケートルマブロックが複数のパーティション(例えば、図7における)により分けられる場合、クロマ残差スケーリング及び/又はCCLMは禁止されてもよい。
i. あるいは、カレントクロマブロックのコロケートルマブロックが分割されていない場合(例えば、1つのCU/TU/PU内)、クロマ残差スケーリング及び/又はCCLMは適用されてもよい。
c) 一例において、カレントクロマブロックのコロケートルマブロックがM個より多くのCU/PU/TUを含む場合、クロマ残差スケーリング及び/又はCCLMは禁止されてもよい。
i. 一例において、Mは1より大きい整数でもよい。
ii. 一例において、Mは、それがCCLMであるか又はクロマ残差スケーリング処理であるかに依存してもよい。
iii. Mは固定数でもよく、あるいはシグナリングされてもよく、あるいは標準プロファイル/レベル/層に依存してもよい。
d) コロケートルマブロック内の上述のCUは、コロケートルマブロック内の全てのCUであると解釈されてもよい。あるいは、コロケートルマブロック内のCUは、コロケートルマブロック内の部分的なCU、例えば、コロケートルマブロックの境界に沿ったCUであると解釈されてもよい。
e) コロケートルマブロック内の上述のCUは、サブCU又はサブブロックであると解釈されてもよい。
i. 例えば、サブCU又はサブブロックはATMVPで使用され得る。
ii. 例えば、サブCU又はサブブロックはアフィン予測で使用され得る。
iii. 例えば、サブCU又はサブブロックは、イントラサブパーション(Intra Sub-Partitions、ISP)モードで使用され得る。
f) 一例において、コロケートルマブロックの左上ルマサンプルをカバーするCU/PU/TUが予め定義されたルマブロックサイズより大きい場合、クロマ残差スケーリング及び/又はCCLMは禁止されてもよい。
i. 一例が図8に示され、コロケートルマブロックは32×32であるが、それは64×64に等しいサイズの対応するルマブロック内にあり、予め定義されたルマブロックサイズが32×64である場合、クロマ残差スケーリング及び/又はCCLMはこの場合禁止される。
ii. あるいは、カレントクロマブロックのコロケートされたものが分割されておらず、コロケートルマブロックの左上ルマサンプルをカバーする対応するルマブロックが、予め定義された境界ボックス(bounding box)内に完全に含まれている場合、カレントクロマブロックに対するクロマ残差スケーリング及び/又はCCLMを適用してもよい。境界ボックスは、図9に示すように、幅W及び高さHを有する、W×Hで示される矩形として定義され得、ここで、対応するルマブロックは幅32及び高さ64を有し、境界ボックスは幅40及び高さ70を有する。
1) 一例において、境界ボックスのサイズW×Hは、CTU幅及び/又は高さに従って、又はCU幅及び/又は高さに従って、又は任意の値に従って定義されてもよい。
g) 一例において、カレントクロマブロックのコロケートルマブロックが複数のパーティションにより分けられる場合、コロケートルマブロックの予め定義されたパーティション内の予測サンプル(又は、再構成サンプル)のみが、LMCSモードにおけるクロマ残差スケーリングファクタを導出するために使用される。
i. 一例において、コロケートルマブロックの第1のパーティション内の全ての予測サンプル(又は、再構成サンプル)の平均を使用して、LMCSモードにおけるクロマ残差スケーリングファクタを導出する。
ii. あるいは、コロケートルマブロックの第1のパーティションにおける左上の予測サンプル(又は、再構成サンプル)を使用して、LMCSモードにおけるクロマ残差スケーリングファクタを導出する。
iii. あるいは、コロケートルマブロックの第1のパーティションにおける中心の予測サンプル(又は、再構成サンプル)を使用して、LMCSモードにおけるクロマ残差スケーリングファクタを導出する。
h) CCLM及びLMCSなどのクロスコンポーネントツールを適用するかどうか及び適用する方法が、コロケートルマブロックの少なくとも1つのサンプルをカバーする1又は複数のルマCUのコーディングモードに依存し得ることが提案される。
i. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUがアフィンモードでコーディングされている場合、クロスコンポーネントツールは無効にされる。
ii. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUが双予測でコーディングされている場合、クロスコンポーネントツールは無効にされる。
iii. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUがBDOFでコーディングされている場合、クロスコンポーネントツールは無効にされる。
iv. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUがDMVRでコーディングされている場合、クロスコンポーネントツールは無効にされる。
v. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUが、JVET-N0217で提案されている行列アフィン予測モードでコーディングされている場合、クロスコンポーネントツールは無効にされる。
vi. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUがインターモードでコーディングされている場合、クロスコンポーネントツールは無効にされる。
vii. 例えば、コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCUがISPモードでコーディングされている場合、クロスコンポーネントツールは無効にされる。
viii. 一例において、「コロケートルマブロックの少なくとも1つのサンプルをカバーする1つ又は複数のルマCU」は、対応するルマブロックを参照し得る。
i) CCLM/LMCSが禁止されているとき、CCLM/LMCSの使用の指標のシグナリングはスキップされてもよい。
j) 本開示において、CCLMは、LMモード、LM-Tモード、及びLM-Lモードを含む、CCLMの任意のバリアントモードを参照し得る。
【0073】
14. CCLM及びLMCSなどのクロスコンポーネントツールを適用するかどうか及び適用する方法が、クロマブロックの一部に対して実行され得ることが提案される。
a) 一例において、CCLM及びLMCSなどのクロスコンポーネントツールを適用するかどうか及び適用する方法は、クロマサブブロックレベルにおけるものである。
i. 一例において、クロマサブブロックは、クロマCU内の2×2又は4×4ブロックとして定義される。
ii. 一例において、クロマサブブロックについて、カレントクロマCUの対応するルマコーディングブロックが、サブブロックの対応するブロックの全てのサンプルをカバーするとき、CCLMが適用されてもよい。
iii. 一例において、クロマサブブロックについて、対応するブロックの全てのサンプルが、カレントクロマCUの対応するルマコーディングブロックによりカバーされるわけではないとき、CCLMは適用されない。
iv. 一例において、CCLM又はLMCSのパラメータは、各クロマサブブロックに対して、そのサブブロックをクロマCUとして扱うものとして導出される。
v. 一例において、CCLM又はLMCSがクロマサブブロックに適用されるとき、コロケートブロックのサンプルが使用されてもよい。
【0074】
15. CCLMなどのクロスコンポーネントツールを適用するかどうか及び適用する方法が、ブロックの大きさ及び/又はパーティション情報及び/又はパーティション構造タイプ(例えば、デュアルツリー又は単一ツリー)に依存し得ることが提案される。
a) 一例において、CCLMは、クロマデュアルツリーパーティションに対して無効にされ得る。
b) 一例において、CCLMは、ブロックの大きさに依存して条件付きで無効にされ得る。
i. 一例において、カレントブロックの大きさがWB×HBであると仮定し、以下のCCLMは、WBと、HBと、2つの整数T1及びT2との間の関係に依存して無効にされてもよい。
1) 一例において、CCLMは、WB≧T1及びHB≧T2の場合、無効にされてもよい。例えば、T1=T2=8である。
2) 一例において、CCLMは、WB*HB>=T1の場合、無効にされてもよい。例えば、T1=64である。
3) 一例において、CCLMは、Min(WB,HB)>=T1の場合、無効にされてもよい。例えば、T1=8である。
4) 一例において、CCLMは、Max(WB,HB)>=T1の場合、無効にされてもよい。例えば、T1=8である。
5) 一例において、CCLMは、WB<=T1及びHB<=T2の場合、無効にされてもよい。例えば、T1=T2=16である。
6) 一例において、CCLMは、WB*HB<=T1の場合、無効にされてもよい。例えば、T1=4096である。
7) 一例において、CCLMは、Min(WB,HB)<=T1の場合、無効にされてもよい。例えば、T1=64である。
8) 一例において、CCLMは、Max(WB,HB)<=T1の場合、無効にされてもよい。例えば、T1=64である。
c) 一例において、CCLMは、ブロックの大きさ及び/又はパーティション情報により制限されてもよい。
i. 一例において、大きさWB×HBのクロマブロックについて、以下の条件のうち1つ又は複数が満たされる場合、CCLMは無効にされる。例えば、WB=HB=32である。以下の箇条書きにおいて、コロケートルマブロックの大きさは(sh×WB)×(sv×HB)であり得、ここで、shとsvはスケーリングファクタである。例えば、色フォーマットが4:2:0のとき、sh=sv=2である。
1) カレントクロマブロックは水平分割を伴うリーフノードにあり、コロケートルマブロックは垂直分割を伴うリーフノードにある。
a) 一例において、カレントクロマブロックはSPLIT_TT_HORモードで分割され、コロケートルマブロックはSPLIT_TT_VERモードで分割される。
b) 一例において、カレントクロマブロックはSPLIT_TT_HORモードで分割され、コロケートルマブロックはSPLIT_BT_VERモードで分割される。
c) 一例において、カレントクロマブロックはSPLIT_BT_HORモードで分割され、コロケートルマブロックはSPLIT_TT_VERモードで分割される。
d) 一例において、カレントクロマブロックはSPLIT_BT_HORモードで分割され、コロケートルマブロックはSPLIT_BT_VERモードで分割される。
2) カレントクロマブロックは垂直分割を伴うリーフノードにあり、コロケートルマブロックは水平分割を伴うリーフノードにある。
a) 一例において、カレントクロマブロックはSPLIT_TT_VERモードで分割され、コロケートルマブロックはSPLIT_TT_HORモードで分割される。
b) 一例において、カレントクロマブロックはSPLIT_TT_VERモードで分割され、コロケートルマブロックはSPLIT_BT_HORモードで分割される。
c) 一例において、カレントクロマブロックはSPLIT_BT_VERモードで分割され、コロケートルマブロックはSPLIT_TT_HORモードで分割される。
d) 一例において、カレントクロマブロックはSPLIT_BT_VERモードで分割され、コロケートルマブロックはSPLIT_BT_HORモードで分割される。
d) 一例において、CCLMがブロックに対して無効にされている場合、CCLMに関連するシンタックス要素は、ブロック内でシグナリングされなくてもよい。
i. あるいは、CCLMがブロックに対して無効にされている場合、CCLMに関連するシンタックス要素はシグナリングされ得るが、CCLMモードは、適合ビットストリーム内のブロックで使用されるべきではない。
ii. あるいは、CCLMがブロックに対して無効にされている場合、CCLMに関連するシンタックス要素はシグナリングされてもよい。CCLMモードがシグナリングされる場合、planar又はDCなどのデフォルトモードが適用され得る。
【0075】
[LMCSモードにおけるクロマ残差スケーリングの適用可能性]
16. ルマ依存クロマ残差スケーリングを適用できるかどうかが、JVET-M1001に規定されるタイルグループヘッダに加えて、他のシンタックスレベルでシグナリングされ得ることが提案される。
a) 例えば、chroma_residual_scale_flagが、シーケンスレベルで(例えば、SPS内で)、ピクチャレベルで(例えば、PPS又はピクチャヘッダ内で)、スライスレベルで(例えば、スライスヘッダ内で)、タイルレベルで、CTU行レベルで、CTUレベルで、CUレベルでシグナリングされてもよい。1に等しいchroma_residual_scale_flagは、シグナリングされたシンタックスレベル以下のCUに対してクロマ残差スケーリングを有効にされていることを指定する。0に等しいchroma_residual_scale_flagは、シグナリングされたシンタックスレベル以下に対してクロマ残差スケーリングが有効にされないことを指定する。chroma_residual_scale_flagが存在しないとき、それは0に等しいと推論される。
b) 一例において、クロマ残差スケーリングがパーティションノードレベルで制約されている場合、chroma_residual_scale_flagは、シグナリングされなくてもよく、パーティションノードによりカバーされるCUについて0であると推論され得る。一例において、パーティションノードはCTUでもよい(CTUは、4要素からなるツリーパーティションのルートノードとして扱われる)。
c) 一例において、32×32以下のクロマブロックサイズに対してクロマ残差スケーリングが制約されている場合、chroma_residual_scale_flagは、シグナリングされなくてもよく、32×32以下のクロマブロックサイズについて0であると推論され得る。
【0076】
[CCLMモードの適用可能性]
17. CCLMモードを適用できるかどうかが、JVET-M1001に規定されるspsレベルに加えて、他のシンタックスレベルでシグナリングされ得ることが提案される。
a) 例えば、それは、ピクチャレベルで(例えば、PPS又はピクチャヘッダ内で)、スライスレベルで(例えば、スライスヘッダ内で)、タイルグループレベルで(例えば、タイルグループヘッダ内で)、タイルレベルで、CTU行レベルで、CTUレベルで、CUレベルでシグナリングされてもよい。
b) 一例において、CCLMを適用できない場合、cclm_flagはシグナリングされなくてもよく、0であると推論され得る。
i. 一例において、8x8以下のクロマブロックサイズについてクロマ残差スケーリングが制約されている場合、cclm_flagはシグナリングされなくてもよく、8x8以下のクロマブロックサイズについて0であると推論され得る。
【0077】
[イントラモード及びインターモードのクロマ残差スケーリングファクタ導出の統合]
18. クロマ残差スケーリングファクタは、ルマブロックをエンコード/デコードした後に導出され得、続くコーディングブロックのために記憶及び使用され得る。
a) 一例において、ルマブロック内の特定の予測サンプル又は/及び中間予測サンプル又は/及び再構成サンプル又は/及びループフィルタリング前(例えば、デブロッキングフィルタ又は/及びSAOフィルタ又は/及びバイラテラルフィルタ又は/及びアダマール変換フィルタ又は/及びALFフィルタにより処理される前)の再構成サンプルが、クロマ残差スケーリングファクタの導出に使用され得る。
i. 例えば、ルマブロックの最下行又は/及び右列内の部分的サンプルを、クロマ残差スケーリングファクタの導出に使用してもよい。
b) 単一ツリーの場合、イントラモード又は/及びIBCモード又は/及びインターモードでコーディングされるブロックをエンコードするとき、近隣のブロックの導出されたクロマ残差スケーリングファクタが、カレントブロックのスケーリングファクタを導出するために使用され得る。
i. 一例において、特定の近隣のブロックが順番にチェックされてもよく、最初の利用可能なクロマ残差スケーリングファクタがカレントブロックに使用されてもよい。
ii. 一例において、特定の近隣のブロックが順番にチェックされてもよく、最初のK個の利用可能な近隣クロマ残差スケーリングファクタに基づいてスケーリングファクタを導出してもよい。
iii. 一例において、インターモード又は/及びCIIPモードでコーディングされるブロックについて、近隣のブロックがイントラモード又は/及びIBCモード又は/及びCIIPモードでコーディングされている場合、近隣のブロックのクロマ残差スケーリングファクタは「利用不可能」とみなされてもよい。
iv. 一例において、近隣のブロックは、左(又は、左上)→上(又は、右上)の順にチェックされ得る。
1) あるいは、近隣のブロックは、上(又は、右上)→左(又は、左上)の順にチェックされてもよい。
c) セパレートツリーの場合、クロマブロックをエンコードするとき、対応するルマブロックが最初識別され得る。次いで、その(例えば、対応するルマブロックの)近隣のブロックの導出されたクロマ残差スケーリングファクタが、カレントブロックのスケーリングファクタを導出するために使用され得る。
i. 一例において、特定の近隣のブロックが順番にチェックされてもよく、最初の利用可能なクロマ残差スケーリングファクタがカレントブロックに使用されてもよい。
ii. 一例において、特定の近隣のブロックが順番にチェックされてもよく、最初のK個の利用可能な近隣クロマ残差スケーリングファクタに基づいてスケーリングファクタを導出してもよい。
d) 近隣のブロックは予め定義された順序でチェックされてもよい。
i. 一例において、近隣のブロックは、左(又は、左上)→上(又は、右上)の順にチェックされ得る。
ii. 一例において、近隣のブロックは、上(又は、右上)→左(又は、左上)の順にチェックされ得る。
iii. 一例において、近隣のブロックは、左下→左→右上→上→左上の順にチェックされ得る。
iv. 一例において、近隣のブロックは、左→上→右上→左下→左上の順にチェックされ得る。
e) 一例において、クロマ残差スケーリングを適用するかどうかは、近隣のブロックの「利用可能性」に依存し得る。
i. 一例において、「利用可能な」近隣のブロックがないとき、クロマ残差スケーリングは拒否されてもよい。
ii. 一例において、「利用可能な」近隣のブロックの数がK(K>=1)より小さいとき、クロマ残差スケーリングは拒否されてもよい。
iii. あるいは、「利用可能な」近隣のブロックがないとき、クロマ残差スケーリングファクタはデフォルト値により導出されてもよい。
1) 一例において、デフォルト値1<<(BitDepth-1)を使用して、クロマ残差スケーリングファクタを導出してもよい。
f) 一例において、カレントクロマブロックのクロマ残差スケーリングファクタは、続くコーディングブロックのために記憶及び使用され得る。
g) 一例において、クロマ残差スケーリングファクタの記憶は、ラインバッファから除去され得る。
i. 一例において、カレントブロックと、アクセスされる近隣の(隣接又は非隣接の)ブロックとが異なる領域内にあるとき、そのクロマ残差スケーリングファクタは「利用不可能」とみなされ得、カレントブロックのクロマ残差スケーリングファクタの導出に使用されなくてもよい。
1) 領域は、スライス、タイル、タイルグループ、CTU行、又はCTUであり得る。
2) あるいは、そのクロマ残差スケーリングファクタは、そのような場合にはデフォルト値として考慮されてもよい。
3) あるいは、クロマ残差スケーリングは、そのような場合には適用できない。
h) 一例において、カレントクロマブロックのクロマ残差スケーリングファクタはオンザフライで更新されてもよく、続くブロックのスケーリングファクタ導出のために履歴テーブルに保存されてもよい。
i. 履歴テーブルは、FIFO(先入れ先出し)方式で更新され得る。
ii. クロマブロックをデコード/エンコードした後、クロマ残差スケーリングファクタを(例えば、ルマ値に従って)導出してもよく、FIFO履歴テーブルに記憶してもよい。
iii. 一例において、FIFO履歴テーブルは、最大で1つのエントリを含み得る。この場合、最新の復号ブロックの導出されたクロマ残差スケーリングファクタがカレントブロックに使用される。
iv. 一例において、履歴テーブルは、ピクチャ及び/又はスライス及び/又はタイルグループ及び/又はタイル及び/又はCTU行及び/又はCTUをエンコード/デコードする前にリフレッシュされる。
1) 一例において、履歴テーブルがリフレッシュされるとき、履歴テーブルにデフォルトのクロマ残差スケーリングファクタを入れてもよい。
2) 一例において、FIFO履歴テーブルがリフレッシュされるとき、履歴テーブルは空に設定される。
【0078】
5. 実施形態
5.1 実施形態#1
以下で論じられる例示的な実施形態は、セクション4の項目11の一例示的な方法に関する。
新たに追加された部分は下線と太字で示され、VVC作業原案から削除される部分は太字の大文字フォントで示される。この修正は、最新のVVC作業原案(JVET-M1007-v7)とJVET-N220-v3における新しい採択に基づく。
【表5】
【0079】
5.2 実施形態♯2
以下の実施形態は、本発明の説明の項目11における方法に関する。
新たに追加された部分は下線と太字で示され、VVC作業原案から削除される部分は太字の大文字フォントで示される。この修正は、最新のVVC作業原案(JVET-M1007-v7)とJVET-N220-v3における新しい採択に基づく。
実施形態#2と#1との差を、以下のとおり列挙する。
- 複数の近隣ルマサンプルをチェックして、クロマ残差スケーリングファクタを導出する。
- 近隣ルマサンプルが利用できないとき、又は、近隣ルマがINTRA/CIIP/IBCモードでコーディングされている一方でカレントがINTERモードでコーディングされているとき、#2はクロマ残差スケーリングファクタ導出にデフォルト値を使用する。
【表6】
【0080】
5.3 実施形態#3
以下の実施形態は、本発明の説明の項目12における方法に関する。
新たに追加された部分は太字の斜体で強調表示され、VVC作業原案から削除される部分は大文字の太字フォントで強調表示されている。この修正は、最新のVVC作業原案(JVET-M1007-v7)とJVET-N220-v3における新しい採択に基づく。
【表7】
【0081】
5.4 実施形態#4
以下の実施形態は、本発明の説明の項目12における方法に関する。
新たに追加された部分は太字の斜体で強調表示され、VVC作業原案から削除される部分は大文字の太字フォントで強調表示されている。この修正は、最新のVVC作業原案(JVET-M1007-v7)とJVET-N220-v3における新しい採択に基づく。
【表8】
【0082】
5.5 実施形態5
以下の実施形態は、本発明の説明の項目12における方法に関する。
新たに追加された部分は太字の斜体で強調表示され、VVC作業原案から削除される部分は大文字の太字フォントで強調表示されている。この修正は、最新のVVC作業原案(JVET-M1007-v7)とJVET-N220-v3における新しい採択に基づく。
【表9】
【0083】
6. 開示された技術の例示的な実装
図10は、ビデオ処理装置1000のブロック図である。装置1000は、本明細書に記載される方法の1つ以上を実施するために使用することができる。装置1000は、スマートフォン、タブレット、コンピュータ、モノのインターネット(Internet of Things、IoT)の受信機などにおいて具現化されてもよい。装置1000は、1つ以上のプロセッサ1002、1つ以上のメモリ1004、及びビデオ処理ハードウェア1006を含むことができる。プロセッサ1002は、本文献に記載される1つ以上の方法(これらに限定されないが、方法800及び900を含む)を実施するように構成され得る。メモリ(複数のメモリ)1004は、本明細書に記載される方法及び手法を実施するために使用されるデータ及びコードを記憶するために使用され得る。ビデオ処理ハードウェア1006は、本文献に記載されるいくつかの手法をハードウェア回路に実装するために使用され得る。
【0084】
いくつかの実施形態において、ビデオコーディング方法は、図10に関して説明したようなハードウェアプラットフォーム上に実装される装置を使用して実施されてもよい。
【0085】
図11は、開示された技術による、クロスコンポーネント予測のための線形モデル導出の一例示的な方法1100のフローチャートを示す。この方法1100は、ステップ1110において、カレントビデオブロックとカレントビデオブロックのビットストリーム表現との間のコンバージョン(conversion)を実行するステップを含み、このコンバージョンの間、1つ以上の参照フレームに含まれる第1の色成分値セットから、カレントビデオブロックの第2の色成分値セットが導出され、第1の色成分値セットは、ビデオコーディングステップの線形モデルにおいて使用可能である。
【0086】
いくつかの実施形態が、以下の箇条ベースのフォーマットを使用して説明され得る。
【0087】
1. ビデオ処理のための方法であって、
カレントビデオブロックと前記カレントビデオブロックのビットストリーム表現との間のコンバージョンを実行するステップであり、前記コンバージョンの間、前記カレントビデオブロックの第2の色成分値セットが、1つ以上の参照フレームに含まれる第1の色成分値セットから導出され、前記第1の色成分値セットは、ビデオコーディングステップの線形モデルにおいて使用可能である、ステップ
を含む方法。
【0088】
2. 前記第1の色成分値セットは、前記ビデオコーディングステップの前記線形モデルにおいて使用する前に補間される、箇条1に記載の方法。
【0089】
3. の前記第1の色成分値セットの線形結合が、前記線形モデルのパラメータとして使用可能である、箇条1乃至2のうちいずれか1つ以上に記載の方法。
【0090】
4. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットの位置は、前記カレントビデオブロックの動き情報に少なくとも部分的に基づいて選択される、箇条1に記載の方法。
【0091】
5. 前記1つ以上の参照フレーム内のルマ成分値の位置は、前記カレントビデオブロック内の対応するルマ成分値の位置と、前記カレントビデオブロックの前記動き情報とから計算される、箇条4に記載の方法。
【0092】
6. 前記対応するルマ成分値の位置は、前記カレントビデオブロック内の左上サンプル、中心サンプル、又は右下サンプルである、箇条5に記載の方法。
【0093】
7. 前記カレントビデオブロックの前記動き情報は、整数動きベクトル又は分数動きベクトルに対応する、箇条6に記載の方法。
【0094】
8. 前記分数動きベクトルは、前記1つ以上の参照フレームにおける分数ルマ成分値を用いて導出される、箇条7に記載の方法。
【0095】
9. 前記整数動きベクトルは、ゼロに近づくよう又はゼロから離れるように丸めることにより導出される、箇条7に記載の方法。
【0096】
10. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットの位置は、予め定義された位置である、箇条1に記載の方法。
【0097】
11. 前記第1の色成分値セットの中央値又は平均値が、前記カレントビデオブロックの前記第2の色成分値セットを導出するために使用される、箇条1乃至10のうちいずれか1つ以上に記載の方法。
【0098】
12. 前記1つ以上の参照フレームは予め定義された参照フレームである、箇条1乃至11のうちいずれか1つ以上に記載の方法。
【0099】
13. 前記予め定義された参照フレームは、参照ピクチャリストの参照インデックスを有するフレームを含む、箇条12に記載の方法。
【0100】
14. 前記参照インデックスはゼロであり、前記参照ピクチャリストはゼロである、箇条13に記載の方法。
【0101】
15. 前記参照インデックス及び/又は前記参照ピクチャリストは、以下、すなわち、シーケンス、ピクチャ、タイル、グループ、スライス、タイル、コーディングツリーユニット、又はビデオブロック、のうち1つ以上に関連づけられたビットストリーム表現においてシグナリングされる、箇条13に記載の方法。
【0102】
16. 前記カレントビデオブロックの前記第2の色成分値セットは、前記1つ以上の参照フレームに含まれる前記第1の色成分値セットの数学的平均又は加重平均から導出される、箇条1に記載の方法。
【0103】
17. 前記カレントビデオブロックの前記第2の色成分値セットは、前記カレントビデオブロックが双予測コーディングブロックであるかどうかに基づいて、前記1つ以上の参照フレームに含まれる前記第1の色成分値のセットから選択的に導出される、箇条1に記載の方法。
【0104】
18. 前記カレントビデオブロックの前記第2の色成分値セットは、前記第1の色成分値セットの各予測方向に対して個々に導出される、箇条17に記載の方法。
【0105】
19. 前記カレントビデオブロックの前記第2の色成分値セットは、前記カレントビデオブロックがサブブロックベースの予測に関連づけられるかどうかに基づいて、前記1つ以上の参照フレームに含まれる前記第1の色成分値セットから選択的に導出される、箇条1に記載の方法。
【0106】
20. 前記サブブロックベースの予測は、アフィン予測又は代替時間動きベクトル予測(ATMVP)に対応する、箇条1に記載の方法。
【0107】
21. 前記カレントビデオブロックの前記第2の色成分値セットは、個々のサブブロックに対して導出される、箇条19乃至20のうちいずれか1つ以上に記載の方法。
【0108】
22. 前記カレントビデオブロックの前記第2の色成分値セットは、前記サブブロックベースの予測にかかわらず、前記カレントビデオブロックの全体に対して導出される、箇条19乃至21のうちいずれか1つ以上に記載の方法。
【0109】
23. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットは、前記カレントビデオブロックのサブブロックの動きベクトルに少なくとも部分的に基づいて選択される、箇条19乃至22のうちいずれか1つ以上に記載の方法。
【0110】
24. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットは、中間色成分値である、箇条1乃至23のうちいずれか1つ以上に記載の方法。
【0111】
25. 前記ビデオコーディングステップは、別のビデオコーディングステップに先行する、箇条1乃至24のうちいずれか1つ以上に記載の方法。
【0112】
26. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットは、前記カレントビデオブロック又は前記カレントビデオブロックのサブブロックの中間動きベクトルに少なくとも部分的に基づいて選択され、前記中間動きベクトルは、前記別のビデオコーディングステップの前に計算される、箇条25に記載の方法。
【0113】
27. 前記別のビデオコーディングステップは、以下のステップ、すなわち、双方向オプティカルフロー(BDOF)ステップ、デコーダ側動きベクトル精緻化(DMVR)ステップ、予測精緻化オプティカルフロー(PROF)ステップ、のうち1つ又は組み合わせを含む、箇条24乃至26のうちいずれか1つ以上に記載の方法。
【0114】
28. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットは、対応するルマブロックに関連づけられたM×Nルマ成分値に対応する、箇条1乃至27のうちいずれか1つ以上に記載の方法。
【0115】
29. 前記対応するルマブロックは、前記カレントビデオブロックのコロケートルマブロックである、箇条28に記載の方法。
【0116】
30. MとNの積は、前記カレントビデオブロックの前記コロケートルマブロックのブロック幅とブロック高さの積より小さい、箇条29に記載の方法。
【0117】
31. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットは、前記コロケートルマブロックの近隣のルマサンプルの位置で識別される参照サンプルの少なくとも一部に対応する、箇条27乃至30のうちいずれか1つ以上に記載の方法。
【0118】
32. 前記第1の色成分値セットは、前記ビデオコーディングステップの前記線形モデルにおいて使用する前にダウンサンプリングされる、箇条1乃至31のうちいずれか1つ以上に記載の方法。
【0119】
33. 前記カレントビデオブロックの前記第2の色成分値セットは、前記カレントビデオブロックの以下の情報、すなわち、量子化パラメータ、コーディングモード、又はピクチャオーダカウント(POC)、のうち1つ以上に少なくとも部分的に基づいて選択される、箇条1に記載の方法。
【0120】
34. 前記近隣のルマサンプルの位置は、前記コロケートルマブロックの左上サンプルがカバーされるようなものである、箇条31に記載の方法。
【0121】
35. 前記1つ以上の参照フレームに含まれる前記第1の色成分値セットは、前記対応するルマブロックの外部の位置で識別される参照サンプルの少なくとも一部に対応する、箇条28に記載の方法。
【0122】
36. 前記カレントビデオブロックの前記第2の色成分値セットは、前記対応するルマブロックの近隣のサンプルの利用可能性に基づいて、前記1つ以上の参照フレームに含まれる前記第1の色成分値セットから選択的に導出される、箇条28に記載の方法。
【0123】
37. 前記対応するルマブロックの前記近隣のサンプルの利用可能性は、前記カレントビデオブロックのコーディングモードの使用、前記対応するルマブロックの前記近隣のサンプルのコーディングモードの使用、前記対応するルマブロックのコーディングモードの使用、1つ以上の近隣のビデオブロックのコーディングモードの使用、前記対応するルマブロックの前記近隣のサンプルに関連づけられたフィルタのタイプの使用、又は前記カレントビデオブロック又はそのサブブロックに対する前記対応するルマブロックの前記近隣のサンプルの位置、のうち1つ以上に基づく、箇条28に記載の方法。
【0124】
38. 前記対応するルマブロックの前記近隣のサンプルの利用可能性の欠如に応答して、利用不可能なサンプルを他のサンプルで置換、フィル、又はパディングするステップ、
をさらに含む箇条28に記載の方法。
【0125】
39. 前記対応するルマブロックの近隣のサンプルに平滑化フィルタを適用するステップ、
をさらに含む箇条28条に記載の方法。
【0126】
40. ビデオ処理のための方法であって、
カレントビデオブロックと前記カレントビデオブロックのビットストリーム表現との間のコンバージョンを実行するステップであり、前記コンバージョンの間、前記カレントビデオブロックの第2の色成分値セットは、1つ以上の参照フレームに含まれる第1の色成分値セットから導出され、前記第1の色成分値セットは、ビデオコーディングステップの線形モデルにおいて使用可能である、ステップと、
前記1つ以上の参照フレームに含まれる前記第1の色成分値セットが前記カレントビデオブロックのコロケートルマブロックであると決定したことに応答して、前記カレントビデオブロックの前記コロケートルマブロックに関連づけられた1つ以上の条件に基づいて、前記カレントビデオブロックの前記第2の色成分値セットの導出を選択的に有効又は無効にするステップと、
を含む方法。
【0127】
41. 前記カレントビデオブロックの前記コロケートルマブロックに関連づけられた前記1つ以上の条件は、前記コロケートルマブロックのパーティションサイズ、前記コロケートルマブロックのコーディングユニット数が閾値数値に達していること、前記コロケートルマブロックの左上ルマサンプルが閾値サイズに達していること、前記コロケートルマブロックのパーティションツリー深さ、対応するルマブロックが前記コロケートルマブロックの前記左上ルマサンプルをカバーしていること、前記コロケートルマブロック又は前記カレントビデオブロックの大きさ、又は対応するルマブロックが前記コロケートルマブロックの前記左上ルマサンプルをカバーし、さらに予め定義されたサイズの境界ボックス内に含まれることを含む、箇条40に記載の方法。
【0128】
42. 前記導出を選択的に有効又は無効にすることを示す情報は、前記ビットストリーム表現に含まれる、箇条40に記載の方法。
【0129】
43. 前記対応するルマブロックの近隣のサンプルの利用可能性は、予め定義された順序に従って前記近隣のサンプルをチェックすることに関連づけられる、箇条28に記載の方法。
【0130】
44. 前記コロケートルマブロック及び前記カレントビデオブロックは、同じコーディングツリーユニット、又はコーディングツリーユニットの同じ行に関連づけられる、箇条41に記載の方法。
【0131】
45. ビデオ処理のための方法であって、
カレントビデオブロックとカレントビデオブロックのビットストリーム表現との間のコンバージョンを実行するステップであり、前記コンバージョンの間、前記カレントビデオブロックの第2の色成分値セットが、1つ以上の参照フレームに含まれる第1の色成分値セットから導出され、前記第1の色成分値セットは、ビデオコーディングステップの線形モデルにおいて使用可能である、ステップと、
前記カレントビデオブロック又は前記カレントビデオブロックの近隣のビデオブロックの1つ以上の特性が満たされると決定したことに応答して、前記カレントビデオブロックの前記第2の色成分値セットの導出を選択的に有効又は無効にするステップと、
を含む方法。
【0132】
46. 前記カレントビデオブロック又は前記カレントビデオブロックの近隣のビデオブロックの前記1つ以上の特性は、前記カレントビデオブロックの空間位置に対する空間位置をカバーする近隣のルマブロックに対応する、箇条45に記載の方法。
【0133】
47. 前記カレントビデオブロック又は前記カレントビデオブロックの近隣のビデオブロックの前記1つ以上の特性は、前記カレントビデオブロックの空間位置に対する前記カレントビデオブロックの前記近隣のビデオブロックの空間位置に対応する、箇条45に記載の方法。
【0134】
48. 前記近隣のビデオブロックの再構成が前記カレントビデオブロックのコーディングモードに少なくとも部分的に基づくと決定したことに応答して、前記カレントビデオブロックの前記第2の色成分値セットの導出を無効にするステップ、
をさらに含む箇条45に記載の方法。
【0135】
49. 前記カレントビデオブロックがインターコーディングブロックであり、組み合わせインター及びイントラ予測のコーディングブロックでなく、前記カレントビデオブロックの対応するルマブロックの近隣のブロックがイントラコーディングブロック、組み合わせインター及びイントラ予測(CIIP)ブロック、又はイントラブロックコピー(IBC)コーディングブロックであると決定したことに応答して、前記カレントビデオブロックの前記第2の色成分値セットの導出を無効にするステップ、
をさらに含む箇条45に記載の方法。
【0136】
50. 前記カレントビデオブロックがインターコーディングブロックであり、組み合わせインター及びイントラ予測のコーディングブロックでなく、前記カレントビデオブロックの対応するルマブロックの近隣のブロックがイントラコーディングブロック、組み合わせインター及びイントラ予測(CIIP)ブロック、又はイントラブロックコピー(IBC)コーディングブロックであると決定したことに応答して、前記カレントビデオブロックの前記第2の色成分値セットの導出を有効にするステップであり、前記第1の色成分値セットは固定値である、ステップ、
をさらに含む箇条45条に記載の方法。
【0137】
51. 前記第1の色成分値セットは固定値である、箇条45に記載の方法。
【0138】
52. 前記固定値は、前記ビデオコーディングステップの前記線形モデルの区分インデックスに対応する、箇条51に記載の方法。
【0139】
53. 前記近隣のサンプルは、前記カレントビデオブロックに対して隣接又は非隣接であり得る、箇条1乃至52のうちいずれか1つ以上に記載の方法。
【0140】
54. 前記近隣のサンプルは、前記カレントビデオブロックの近隣のクロマブロックに関連づけられ、あるいは前記カレントビデオブロックの近隣のクロマブロックであり得る、箇条1乃至52のうちいずれか1つ以上に記載の方法。
【0141】
55. 前記カレントビデオブロックは、クロマブロック、前記コロケートルマブロック、又は前記コロケートクロマブロックの左上ルマサンプルをカバーする前記対応するルマブロックに対応する、箇条1乃至54のうちいずれか1つ以上に記載の方法。
【0142】
56. 前記カレントビデオブロックの前記第2の色成分値セットは、1つ以上の他のビデオブロックと関連して使用のために記憶される、箇条1乃至54のうちいずれか1つ以上に記載の方法。
【0143】
57. 前記線形モデルは、クロスコンポーネント線形モデル(CCLM)に対応し、前記ビデオコーディングステップは、クロマスケーリング付きルママッピング(LMCS)モードに対応する、箇条1乃至56のうちいずれか1つ以上に記載の方法。
【0144】
58. 前記カレントビデオブロックは、インターコーディングブロック、双予測コーディングブロック、組み合わせインター及びイントラ予測(CIIP)ブロック、又はイントラブロックコピー(IBC)コーディングブロックである、箇条1乃至57のうちいずれか1つ以上に記載の方法。
【0145】
59. 前記カレントビデオブロックの前記第2の色成分値セットは、前記ビットストリーム表現における他のビデオブロックに関連づけられた使用のために記憶される、箇条1乃至58のうちいずれか1つ以上に記載の方法。
【0146】
60. 前記カレントビデオブロックの前記第2の色成分値セットは、前記他のビデオブロックに含まれる近隣のビデオブロックによる選択的な利用可能性又は利用不可性(unavailability)のためのラインバッファに記憶され、前記カレントビデオブロック及び前記近隣のビデオブロックは、異なるスライス、タイル、タイルグループ、コーディングツリーユニット、又はコーディングツリーユニットの行に関連づけられる、箇条59に記載の方法。
【0147】
61. 前記カレントビデオブロックの前記第2の色成分値セットは、固定値である、箇条60に記載の方法。
【0148】
62. 前記カレントビデオブロックの前記第2の色成分値セットは、導出を防止される、箇条60に記載の方法。
【0149】
63. 前記カレントビデオブロックの前記第2の色成分値セットの導出は、防止される、箇条59に記載の方法。
【0150】
64. 前記カレントビデオブロックの前記第2の色成分値セットは、前記他のビデオブロックに含まれる近隣のビデオブロックによる選択的な利用可能性又は利用不可性のためにテーブルに記憶される、箇条59に記載の方法。
【0151】
65. 前記カレントビデオブロックの前記第2の色成分値セットは、動的に更新される、箇条64に記載の方法。
【0152】
66. 前記カレントビデオブロックの前記第2の色成分値セットは、前記他のビデオブロック内の前のビデオブロックと同じである、箇条65に記載の方法。
【0153】
67. 前記カレントビデオブロックの前記第2の色成分値セットは、先入れ先出し(FIFO)方式で動的に更新される、箇条64に記載の方法。
【0154】
68. 前記第1の色成分値セットは、ルマサンプル値に対応し、前記第2の色成分値セットは、クロマスケーリングファクタに対応する、箇条1乃至67のうちいずれか1つ以上に記載の方法。
【0155】
69. ビデオ処理のための方法であって、
少なくとも2つの成分ブロックを含むビデオブロックと前記ビデオブロックのビットストリーム表現との間のコンバージョンのためのクロスコンポーネントコーデックツールの適用可能性をルールに基づいて決定するステップと、
前記クロスコンポーネントコーデックツールを選択的に使用することにより前記コンバージョンを実行するステップと、
含む方法。
【0156】
70. 前記ルールは、前記カレントビデオブロックの大きさに基づく、箇条69に記載の方法。
【0157】
71. 前記ルールは、前記カレントビデオブロックのパーティション情報に基づく、箇条69乃至70に記載の方法。
【0158】
72. 前記ルールは、前記カレントビデオブロックのパーティションツリー構造に基づく、箇条69乃至71のうちいずれかに記載の方法。
【0159】
73. 前記パーティションツリー構造は、デュアルツリー又は単一ツリーのうちの1つである、箇条72に記載の方法。
【0160】
74. 前記ルールは、前記カレントビデオブロックが前記デュアルツリーパーティションツリー構造を有するクロマブロックであることに起因して、前記クロスコンポーネントコーデックツールを無効にすることを指定する、箇条72に記載の方法。
【0161】
75. 前記ルールは、前記ビットストリーム表現における前記クロスコンポーネントコーデックツールのシンタックス要素のシグナリングを省略することを指定する、箇条69乃至74のうちいずれかに記載の方法。
【0162】
箇条69乃至75に記載のさらなる例及び態様は、セクション4の項目15に記載されている。
【0163】
76. プロセッサと、命令を有する非一時的メモリと、を含むビデオシステムにおける装置であって、前記命令は前記プロセッサにより実行されると、前記プロセッサに箇条1乃至75のうちいずれか1つにおける方法を実施させる、装置。
【0164】
77. 非一時的コンピュータ読取可能媒体に記憶されたコンピュータプログラム製品であって、箇条1乃至75のうちいずれか1つにおける方法を実行するためのプログラムコードを含む、コンピュータプログラム製品。
【0165】
図12は、本明細書に開示される様々な手法が実装され得る一例示的なビデオ処理システム1200を示すブロック図である。様々な実装が、システム1200のコンポーネントの一部又は全部を含んでもよい。システム1200は、ビデオコンテンツを受信する入力1202を含み得る。ビデオコンテンツは、生の又は非圧縮のフォーマット、例えば、8又は10ビットのマルチ成分画素値で受け取ることができ、あるいは圧縮又はエンコードされたフォーマットでもよい。入力1202は、ネットワークインターフェース、周辺バスインターフェース、又はストレージインターフェースを表すことができる。ネットワークインターフェースの例には、イーサネット、受動光ネットワーク(passive optical network、PON)などの有線インターフェース、及びWi-Fi又はセルラーインターフェースなどの無線インターフェースが含まれる。
【0166】
システム1200は、本文献に記載される様々なコーディング又はエンコード方法を実施することができるコーディングコンポーネント1204を含み得る。コーディングコンポーネント1204は、入力1202からコーディングコンポーネント1204の出力へのビデオの平均ビットレートを低減して、ビデオのコーディング表現を生成することができる。したがって、このコーディング手法は、ビデオ圧縮又はビデオトランスコーディング手法と時に呼ばれる。コーディングコンポーネント1204の出力は、コンポーネント1206により表されるように、記憶されるか、又は接続された通信を介して送信されてもよい。入力1202で受信したビデオの、記憶され又は通信されたビットストリーム(又は、コーディングされた)表現は、画素値、又はディスプレイインターフェース1210に送られる表示可能なビデオを生成するために、コンポーネント1208により使用することができる。ビットストリーム表現からユーザが見ることができるビデオを生成するプロセスは、ビデオ解凍と時に呼ばれる。さらに、特定のビデオ処理動作は「コーディング」動作又はツールと呼ばれ、コーディングツール又は動作はエンコーダで使用され、コーディングの結果を逆にする対応する復号ツール又は動作はデコーダにより実行されることが理解されるであろう。
【0167】
周辺バスインターフェース又はディスプレイインターフェースの例には、ユニバーサルシリアルバス(USB)又は高精細マルチメディアインターフェース(high definition multimedia interface、HDMI(登録商標))又はDisplayportなどを含んでもよい。ストレージインターフェースの例には、SATA(シリアルアドバンストテクノロジーアタッチメント(serial advanced technology attachment))、PCI、IDEインターフェースなどが含まれる。本文献に記載される手法は、携帯電話、ラップトップ、スマートフォン、又はデジタルデータ処理及び/又はビデオ表示を実行することができる他のデバイスなどの様々な電子デバイスにおいて具現化することができる。
【0168】
図13は、ビジュアルメディア処理方法の一例のフローチャートである。このフローチャートのステップは、本文献のセクション4の例12g(ii)に関連して説明される。ステップ1302において、プロセスは、ビジュアルメディアデータの対応するルマブロックの近隣のルマブロックの利用可能性を決定したことに応答して、ビジュアルメディアデータのカレントビデオクロマブロックのための第1のパラメータを、第1のパラメータが固定値又はカレントビデオクロマブロックの近隣のルマサンプルの丸めベースの平均値として導出されるように、導出し、対応するルマブロックは、カレントビデオクロマブロックに関連づけられた位置をカバーする。ステップ1304において、プロセスは、第1のパラメータに基づいてクロマスケーリングファクタを決定する。ステップ1306において、プロセスは、クロマスケーリングファクタに基づいてカレントビデオクロマブロックのクロマ残差スケーリングを実行する。ステップ1308において、プロセスは、カレントビデオクロマブロックとビットストリームとの間のコンバージョンのためにクロマスケーリングファクタを使用する。
【0169】
図14は、ビジュアルメディア処理方法の一例のフローチャートである。このフローチャートのステップは、本文献のセクション4の例12dに関連して説明される。ステップ1402において、プロセスは、ビジュアルメディアデータのカレントビデオユニットに関連づけられた少なくとも1つのクロマブロックのためのクロマ残差スケーリングファクタを固定値に基づいて表すことを指定するルールを使用し、固定値は、1つ以上の条件に少なくとも基づく。ステップ1404において、プロセスは、カレントビデオユニットとカレントビデオユニットのビットストリーム表現との間のコンバージョンを実行する。
【0170】
図15は、ビジュアルメディア処理方法の一例のフローチャートである。このフローチャートのステップは、本文献のセクション4の例15に関連して説明される。ステップ1502において、ビジュアルメディアデータのカレントビデオブロックとカレントビデオブロックのビットストリーム表現との間のコンバージョンの間、プロセスは、カレントビデオブロックに関連づけられた大きさ及び/又はパーティション情報及び/又はコーディング構造タイプに少なくとも部分的に基づいて、カレントビデオブロックの色成分に対するクロスコンポーネント線形モデル(CCLM)の適用を選択的に有効又は無効にする決定を行い、CCLMにおいて、第1の色成分セットは、第2の色成分セットに基づいて予測される。
【0171】
次に、本文献のいくつかの実施形態を、箇条ベースのフォーマットで提示する。
【0172】
X1. ビジュアルメディア処理の方法であって、
ビジュアルメディアデータの対応するルマブロックの近隣のルマブロックの利用可能性を決定したことに応答して、前記ビジュアルメディアデータのカレントビデオクロマブロックのための第1のパラメータを、前記第1のパラメータが固定値又は前記カレントビデオクロマブロックの近隣のルマサンプルの丸めベースの平均値として導出されるように導出するステップであり、前記対応するルマブロックは、前記カレントビデオクロマブロックに関連づけられた位置をカバーする、ステップと、
前記第1のパラメータに基づいてクロマスケーリングファクタを決定するステップと、
前記クロマスケーリングファクタに基づいて前記カレントビデオクロマブロックのクロマ残差スケーリングを実行するステップと、
前記カレントビデオクロマブロックと前記カレントビデオクロマブロックのビットストリーム表現との間のコンバージョンに前記クロマスケーリングファクタを使用するステップと、
を含む方法。
【0173】
X2. 前記第1のパラメータに基づいてクロマスケーリングファクタを決定するステップは、
前記第1のパラメータを使用して区分線形関数のインデックスを識別するステップを含む、箇条X1に記載の方法。
【0174】
X3. 前記区分線形関数の前記インデックスを識別すると、前記カレントビデオクロマブロックの前記クロマ残差スケーリングに使用される前記クロマ残差ファクタを決定するステップ、
をさらに含む、箇条X2に記載の方法。
【0175】
X4. 前記クロマ残差スケーリングファクタは、前記ビットストリーム表現におけるフィールドとして含まれる、箇条X1に記載の方法。
【0176】
X5. 前記近隣のルマブロックのうち少なくとも1つが利用可能である場合、前記第1のパラメータは、前記カレントビデオクロマブロックの前記近隣のルマサンプルの前記丸めベースの平均値として導出される、箇条X1乃至X4のうちいずれか1つ以上に記載の方法。
【0177】
X6. 近隣のルマブロックが利用不可能である場合、前記第1のパラメータは前記固定値として導出される、箇条X1乃至X4のうちいずれか1つ以上に記載の方法。
【0178】
X7. 前記固定値はゼロである、箇条X1又はX6に記載の方法。
【0179】
X8. 前記固定値は、ルマ色成分及び/又はクロマ色成分のビット深度に基づく、箇条X1又はX6に記載の方法。
【0180】
X9. 前記固定値は、(1<<BitDepth)-1、又は1<<(BitDepth-1)であり、BitDepthは、前記ルマ色成分及び/又はクロマ色成分の前記ビット深度を示す、箇条X8に記載の方法。
【0181】
X10. 前記固定値は、前記区分線形関数における最大ビンインデックスである、箇条X6に記載の方法。
【0182】
X11. 前記固定値は、前記区分線形関数における最小ビンインデックスである、箇条X6に記載の方法。
【0183】
X12. 前記固定値は、適応区分線形関数における最小ビンインデックスと最大ビンインデックスの平均である、箇条X6に記載の方法。
【0184】
A1. ビジュアルメディア処理の方法であって、
ビジュアルメディアデータのカレントビデオユニットに関連づけられた少なくとも1つのクロマブロックのためのクロマ残差スケーリングファクタを固定値に基づいて表すことを指定するルールを使用するステップであり、前記固定値は1つ以上の条件に少なくとも基づく、ステップと、
前記カレントビデオユニットと前記カレントビデオユニットのビットストリーム表現との間のコンバージョンを実行するステップと、
を含む方法。
【0185】
A2. 前記1つ以上の条件は、
(1)ピクチャ/スライス/タイルグループ/タイル/サブピクチャ/コーディングツリーユニット(CTU)行/CTU/仮想パイプラインデータユニット(VPDU)のタイプ、
(2)ピクチャ/スライス/タイルグループ/タイル/サブピクチャ/CTU行/CTU/VPDUの幅及び/又は高さ、
(3)前記カレントビデオユニットのコーディングモード、又は
(4)前記カレントビデオユニットの近隣のサンプル
を含む、箇条A1に記載の方法。
【0186】
A3. 第1の固定値が、第1のタイプのピクチャ/スライス/タイルグループ/タイル/サブピクチャ/CTU行/CTU/VPDUに対して計算され、第2の固定値が、第2のタイプのピクチャ/スライス/タイルグループ/タイル/サブピクチャ/CTU行/CTU/VPDUに対して計算される、箇条A2に記載の方法。
【0187】
B1. ビジュアルメディア処理の方法であって、
ビジュアルメディアデータのカレントビデオブロックと前記カレントビデオブロックのビットストリーム表現との間のコンバージョンの間、前記カレントビデオブロックに関連づけられた大きさ及び/又はパーティション情報及び/又はコーディング構造タイプに少なくとも部分的に基づいて、前記カレントビデオブロックの色成分に対するクロスコンポーネント線形モデル(CCLM)の適用を選択的に有効又は無効にする決定を行うステップであり、前記CCLMにおいて、第1の色成分セットは、第2の色成分セットの線形結合に基づいて予測される、ステップ、
を含む方法。
【0188】
B2. 前記コーディング構造タイプは、単一ツリー又はデュアルツリーである、箇条B1に記載の方法。
【0189】
B3. 前記CCLMは、前記カレントビデオブロックがクロマブロックであること及び前記パーティション情報がデュアルツリーパーティションを指定することに基づいて無効にされる、箇条B1に記載の方法。
【0190】
B4. 前記CCLMは、前記カレントビデオブロックの大きさが少なくとも1つの閾値条件を満たさないことに基づいて無効にされる、箇条B1に記載の方法。
【0191】
B5. 前記少なくとも1つの閾値条件は、(i)前記カレントビデオブロックの幅及び/又は前記カレントビデオブロックの高さと、(ii)1つ以上の閾値パラメータと、の間の数学的関係に基づく、箇条B1に記載の方法。
【0192】
B6. 前記1つ以上の閾値パラメータは、8、16、64、又は4096の値を有する、箇条B1に記載の方法。
【0193】
B7. 前記カレントビデオブロックが水平分割を伴うリーフノードにあり、前記カレントビデオブロックに関連づけられたコロケートルマブロックが垂直分割を伴うリーフノードにあることを前記パーティション情報が指定するとき、前記CCLMは無効にされる、箇条B1に記載の方法。
【0194】
B8. 前記カレントビデオブロックが水平三分割(horizontal ternary split)を伴うクロマブロックであり、前記コロケートルマブロックが垂直三分割(vertical ternary split)を伴うとき、前記CCLMは無効にされる、箇条B7に記載の方法。
【0195】
B9. 前記カレントビデオブロックが水平二分割(horizontal binary split)を伴うクロマブロック分割であり、前記コロケートルマブロックが垂直三分割を伴うとき、前記CCLMは無効にされる、箇条B7に記載の方法。
【0196】
B10. 前記カレントビデオブロックが水平二分割を伴うクロマブロック分割であり、前記コロケートルマブロックが垂直三分割を伴うとき、前記CCLMは無効にされる、箇条B7に記載の方法。
【0197】
B11. 前記カレントビデオブロックが水平二分割を伴うクロマブロック分割であり、前記コロケートルマブロックが垂直二分割(vertical binary split)を伴うとき、前記CCLMは無効にされる、箇条B7に記載の方法。
【0198】
B12. 前記カレントビデオブロックが垂直分割を伴うリーフノードにあり、前記カレントビデオブロックに関連づけられたコロケートルマブロックが水平分割を伴うリーフノードにあることを前記パーティション情報が指定するとき、前記CCLMは無効にされる、箇条B1に記載の方法。
【0199】
B13. 前記カレントビデオブロックが垂直三分割を伴うクロマブロックであり、前記コロケートルマブロックが水平三分割を伴うとき、前記CCLMは無効にされる、箇条12に記載の方法。
【0200】
B14. 前記カレントビデオブロックが垂直三分割を伴うクロマブロックであり、前記コロケートルマブロックが水平二分割を伴うとき、前記CCLMは無効にされる、箇条B12に記載の方法。
【0201】
B15. 前記カレントビデオブロックが二垂直分割を伴うクロマブロックであり、前記コロケートルマブロックが水平三分割であるとき、前記CCLMは無効にされる、B12項の方法。
【0202】
B16. 前記カレントビデオブロックが垂直二分割を伴うクロマブロックであり、前記コロケートルマブロックが水平二分割を伴うとき、前記CCLMは無効にされる、箇条B11に記載の方法。
【0203】
B17. 前記カレントビデオブロックに対して前記CCLMが無効にされていると決定すると、前記ビットストリーム表現から、前記CCLMの適用を示すシンタックス要素を除外するステップ、
をさらに含む箇条B1乃至B16のうちいずれか1つ以上に記載の方法。
【0204】
B18. 前記カレントビデオブロックに対して前記CCLMが無効にされていると決定すると、前記ビットストリーム表現に、前記CCLMの適用を示すシンタックス要素を含めるステップであり、前記CCLMに関連づけられた1つ以上の予測モードの使用はスキップされる、ステップ、
をさらに含む箇条B1乃至B16のうちいずれか1つ以上に記載の方法。
【0205】
B19.前記カレントビデオブロックに対して前記CCLMが無効にされていると決定すると、前記ビットストリーム表現に、前記CCLMの適用を示すシンタックス要素を含めるステップであり、デフォルト予測モードが適用される、ステップ、
をさらに含む箇条B1乃至B16のうちいずれか1つ以上に記載の方法。
【0206】
B20. 前記デフォルト予測モードは、planarモード又はDCモードである、箇条B19に記載の方法。
【0207】
B21. 前記コンバージョンは、前記ビットストリーム表現をビデオブロックから生成することを含む、箇条X1乃至B20のうちいずれか1つ以上に記載の方法。
【0208】
B22. 前記コンバージョンは、前記ビットストリーム表現からビデオブロックの画素値を生成することを含む、箇条X1乃至B20のうちいずれか1つ以上に記載の方法。
【0209】
B23. 箇条X1乃至B20のうちいずれか1つ以上に記載の方法を実施するように構成されたプロセッサを含むビデオエンコーダ装置。
【0210】
B24. 箇条X1乃至B20のうちいずれか1つ以上に記載の方法を実施するように構成されたプロセッサを含むビデオデコーダ装置。
【0211】
B25. コードを記憶させたコンピュータ読取可能媒体であって、前記コードは、箇条X1乃至B20のうちいずれか1項以上に記載の方法を実施するプロセッサ実行可能命令を具現化している、コンピュータ読取可能媒体。
【0212】
本文献において、用語「ビデオ処理」又は「ビジュアルメディア処理」は、ビデオ符号化、ビデオ復号、ビデオ圧縮、又はビデオ解凍を参照し得る。例えば、ビデオ圧縮アルゴリズムはビデオの画素表現から対応するビットストリーム表現へのコンバージョンに適用することができ、あるいはその逆も同様である。カレントビデオブロックのビットストリーム表現は、例えば、シンタックスにより定義されるように、ビットストリーム内の異なる場所にコロケートされ又は拡散されるビットに対応し得る。例えば、マクロブロックは、変換及びコーディングされた誤差残差値の観点で、また、ビットストリーム内のヘッダ及び他のフィールド内のビットを使用して符号化され得る。さらに、コンバージョンの間、デコーダは、上記のソリューションに記載されるように、決定に基づいて、いくつかのフィールドが存在し得、又は存在し得ないという知識を用いてビットストリームをパースすることができる。同様に、エンコーダは、特定のシンタックスフィールドが含まれるべき、又は含まれるべきでないと決定し、それに応じて、シンタックスフィールドを含め、又はコーディング表現から除外することにより、コーディング表現を生成することができる。
【0213】
以上から、本明細書において説明の目的で本開示の技術の特定の実施形態を説明したが、本発明の範囲から逸脱することなく様々な修正がなされ得ることが理解されるであろう。したがって、本開示の技術は、別記の特許請求の範囲によるものを除き、限定されない。
【0214】
本特許文献に記載されている主題事項及び機能動作の実装は、本明細書に開示されている構造及びそれらの構造的等価物を含む、様々なシステム、デジタル電子回路で、又はコンピュータソフトウェア、ファームウェア、若しくはハードウェアにおいて、又はそれらの1つ以上の組み合わせにおいて実施することができる。本明細書に記載されている主題事項の実装は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置による実行のため、又はデータ処理装置の動作を制御するための、有形及び非一時的コンピュータ読取可能媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実施することができる。コンピュータ読取可能媒体は、マシン読取可能記憶デバイス、マシン読取可能記憶基板、メモリデバイス、マシン読取可能伝搬信号に影響を与える物質の組成、又はこれらの1つ以上の組み合わせとすることができる。用語「データ処理ユニット」又は「データ処理装置」は、例えばプログラマブルプロセッサ、コンピュータ、又は複数のプロセッサ若しくはコンピュータを含む、データを処理するための全ての装置、デバイス、及びマシンを包含する。装置は、ハードウェアに加えて、問題のコンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、又はこれらの1つ以上の組み合わせを構成するコードを含むことができる。
【0215】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られる)は、コンパイル型又は解釈型言語を含む任意の形式のプログラミング言語で書くことができ、それは、スタンドアロンプログラムとして、又はコンピューティング環境での使用に適したモジュール、コンポーネント、サブルーチン、又は他のユニットとしてを含む、任意の形態でデプロイすることができる。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応するものではない。プログラムは、他のプログラム又はデータを保持するファイルの一部分(例えば、マークアップ言語文書に記憶された1つ以上のスクリプト)に、問題のプログラム専用の単一のファイルに、又は複数の調整されたファイル(例えば、1つ以上のモジュール、サブプログラム、又はコードの一部分を記憶するファイル)に記憶することができる。コンピュータプログラムは、1つのコンピュータ上で、又は、1つのサイトに配置され若しくは複数のサイトにわたり分散されて通信ネットワークにより相互接続される複数のコンピュータ上で、実行されるようにデプロイすることができる。
【0216】
本明細書に記載されるプロセス及び論理フローは、入力データに対して動作し出力を生成することにより機能を実行するために、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサにより実行することができる。プロセス及び論理フローは、専用論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)により実行することもでき、装置もまた、これらとして実行することができる。
【0217】
コンピュータプログラムの実行に適したプロセッサには、例えば、汎用及び専用双方のマイクロプロセッサ、及び任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサが含まれる。一般に、プロセッサは、読取専用メモリ又はランダムアクセスメモリ又は双方から命令及びデータを受け取る。コンピュータの必須要素は、命令を実行するプロセッサと、命令及びデータを記憶する1つ以上のメモリデバイスである。一般に、コンピュータはまた、データを記憶する1つ以上の大容量記憶デバイス、例えば、磁気、磁気光ディスク、又は光ディスクを含み、あるいはこれらからデータを受け取り、又はこれらにデータを転送し、又は双方を行うために動作上結合される。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。コンピュータプログラム命令及びデータを記憶するのに適したコンピュータ読取可能媒体には、例として半導体メモリデバイス、例えば、EPROM、EEPROM、及びフラッシュメモリデバイスを含む、全ての形態の不揮発性メモリ、媒体、及びメモリデバイスが含まれる。プロセッサ及びメモリは、専用論理回路により補足し、又は専用論理回路に組み込むことができる。
【0218】
明細書は図面と共に、単に例示的とみなされることが意図され、例示的は一例を意味する。本明細書で用いられるとき、「又は」の使用は、文脈が別段明確に示さない限り、「及び/又は」を含むことが意図される。
【0219】
本特許文献は多くの詳細を含むが、これらは、いずれかの発明の範囲又は請求され得るものの範囲に対する限定とみなされるべきではなく、むしろ、特定の発明の特定の実施形態に特有であり得る特徴の説明とみなされるべきである。別個の実施形態の文脈において本特許文献に記載されている特定の特徴は、単一の実施形態で組み合わせて実施することもできる。逆に、単一の実施形態の文脈において記載されている様々な特徴は、複数の実施形態において別個に、又は任意の適切なサブコンビネーションで実施することもできる。さらに、特徴は、特定の組み合わせにおいて作用するものとして上述されていることがあり、そのようなものとして最初に請求されることがあるが、請求された組み合わせからの1つ以上の特徴を、いくつかの場合、組み合わせから切り出すことができ、請求される組み合わせは、サブコンビネーション、又はサブコンビネーションのバリエーションに向けられ得る。
【0220】
同様に、動作は図面において特定の順序で示されているが、これは、所望の結果を達成するために、そのような動作が図示される特定の順序で又は順番に実行されること、又は全ての例示された動作が実行されることを要求するものとして理解されるべきではない。さらに、本特許文献に記載されている実施形態における様々なシステムコンポーネントの分離は、全ての実施形態においてそのような分離を要求するものとして理解されるべきではない。
【0221】
少数の実装及び例のみが記載されており、本特許文献に記載及び例示されているものに基づいて他の実装、拡張、及びバリエーションがなされ得る。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15