(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023182663
(43)【公開日】2023-12-26
(54)【発明の名称】パレットモードの使用の指示の条件依存符号化
(51)【国際特許分類】
H04N 19/70 20140101AFI20231219BHJP
H04N 19/157 20140101ALI20231219BHJP
【FI】
H04N19/70
H04N19/157
【審査請求】有
【請求項の数】22
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023166048
(22)【出願日】2023-09-27
(62)【分割の表示】P 2022503887の分割
【原出願日】2020-02-24
(31)【優先権主張番号】PCT/CN2019/096933
(32)【優先日】2019-07-20
(33)【優先権主張国・地域又は機関】CN
(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)【発明者】
【氏名】リウ ホンビン
(72)【発明者】
【氏名】ワン ユエ
(57)【要約】 (修正有)
【課題】パレットモード符号化のための条件依存符号化を行うデバイス、システムおよび方法を提供する。
【解決手段】映像処理装置が実行する方法は、映像のブロックと映像のビットストリーム表現との間で変換を行うことを含む。ビットストリーム表現は、パレットモードの使用の第1の指示とイントラブロックコピー(IBC)モードの使用の第2の指示とを互いに依存して信号通知することを規定するフォーマット規則に従って、処理される。
【選択図】
図27
【特許請求の範囲】
【請求項1】
映像処理方法であって、
映像のブロックと前記映像のビットストリーム表現との間の変換を行うことを含み、
前記ビットストリーム表現は、パレットモードの使用の第1の指示とイントラブロック
コピー(IBC)モードの使用の第2の指示とを互いに依存して信号通知することを規定
するフォーマット規則に従って、処理される、
方法。
【請求項2】
前記フォーマット規則は、前記ブロックの予測モードがIBCモードでない第1の予測
モードと等しい場合に、前記ビットストリーム表現において前記第1の指示が信号通知さ
れることを規定する、
請求項1に記載の方法。
【請求項3】
前記フォーマット規則は、前記ブロックの予測モードがパレットモードでない第1の予
測モードと等しい場合に、前記ビットストリーム表現において前記第2の指示が信号通知
されることを規定する、
請求項1または2に記載の方法。
【請求項4】
前記第1の予測モードは、イントラモードである、
請求項2又は3に記載の方法。
【請求項5】
映像処理方法であって、
映像のブロックと前記映像のビットストリーム表現との間の変換のために、前記ブロッ
クの寸法に基づいて、前記ビットストリーム表現におけるパレットモードの使用の指示の
存在を判定するステップと
前記判定に基づいて、前記変換を行うこと、
を含む方法。
【請求項6】
映像処理方法であって、
映像のブロックと前記映像のビットストリーム表現との間の変換のために、前記ブロッ
クの寸法に基づいて、前記ビットストリーム表現におけるイントラブロックコピー(IB
C)モードの使用の指示の存在を判定すること、
前記判定に基づいて、前記変換を行うことと、
を含む方法。
【請求項7】
前記ブロックの寸法は、前記ブロックにおけるサンプルの数、前記ブロックの幅、又は
前記ブロックの高さのうちの少なくとも1つを含む、
請求項5又は6に記載の方法。
【請求項8】
前記ブロックの幅が閾値以下である場合に、前記ビットストリーム表現で前記指示を信
号通知する、
請求項7に記載の方法。
【請求項9】
前記ブロックの高さが閾値以下である場合に、前記ビットストリーム表現で前記指示を
出す、
請求項7に記載の方法。
【請求項10】
前記閾値は64である、
請求項8又は9に記載の方法。
【請求項11】
前記ブロックの幅及び高さが閾値より大きい場合、前記ビットストリーム表現で前記指
示を信号通知する、
請求項7に記載の方法。
【請求項12】
前記閾値は4である、
請求項11に記載の方法。
【請求項13】
前記ブロックにおけるサンプルの数が閾値より大きい場合、前記ビットストリーム表現
で前記指示を信号通知する、
請求項7に記載の方法。
【請求項14】
前記閾値は16である、
請求項13に記載の方法。
【請求項15】
前記ブロックの幅がブロックの高さに等しい場合、前記ビットストリーム表現で前記指
示を信号通知する、
請求項7に記載の方法。
【請求項16】
(1)前記ブロックの幅が第1の閾値より大きい場合、(2)前記ブロックの高さが第
2の閾値より大きい場合、又は(3)前記ブロックにおけるサンプルの数が第3の閾値以
下である場合、前記ビットストリーム表現に前記指示が存在しない、
請求項7から14のいずれか1つ以上に記載の方法。
【請求項17】
前記第1の閾値及び前記第2の閾値は64である、
請求項16に記載の方法。
【請求項18】
前記第3の閾値は16である、
請求項16に記載の方法。
【請求項19】
前記判定は、前記ブロックに関連する特性に更に基づく、
請求項5又は6に記載の方法。
【請求項20】
前記特性は、前記ブロックの予測モードを含む、
請求項19に記載の方法。
【請求項21】
前記特性は、前記ブロックの量子化パラメータを含む、
請求項19に記載の方法。
【請求項22】
前記特性は、前記ブロックの近傍ブロックのパレットフラグを含む、
請求項19に記載の方法。
【請求項23】
前記特性は、前記ブロックの近傍ブロックのIBCフラグを含む、
請求項19に記載の方法。
【請求項24】
前記特性は、前記ブロックのカラーフォーマットの指示を含む、
請求項19に記載の方法。
【請求項25】
前記特性は、前記ブロックの符号化ツリー構造を含む、
請求項19に記載の方法。
【請求項26】
前記特性は、前記ブロックのスライスグループタイプ、タイルグループタイプ、又はピ
クチャタイプを含む、
請求項19に記載の方法。
【請求項27】
前記変換は、前記ビットストリーム表現から前記現在のブロックを生成する、
請求項1~26のいずれか1項以上に記載の方法。
【請求項28】
前記変換は、前記現在のブロックから前記ビットストリーム表現を生成する、
請求項1~26のいずれか1項以上に記載の方法。
【請求項29】
請求項1~28のいずれか1項以上に記載の方法を実装するように構成された処理装置
を備える、
映像処理装置。
【請求項30】
コードが記憶されたコンピュータ可読媒体であって、
前記コードが実行されると、処理装置に、請求項1~28のいずれか1項以上に記載の
方法を実装させる、
コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
パリ条約に基づく適用可能な特許法および/または規則に基づいて、本願は、2019
年2月24日出願の国際特許出願PCT/CN2019/075994号、2019年3
月8日出願の国際特許出願PCT/CN2019/077454号、2019年4月9日
出願の国際特許出願PCT/CN2019/081863号、2019年7月20日出願
の国際特許出願PCT/CN2019/096933号、2019年7月23日出願の国
際特許出願PCT/CN2019/097288号、2019年7月29日出願の国際特
許出願PCT/CN2019/098204号の優先権および利益を適時に主張すること
を目的とする。米国法に基づくすべての目的のために、上記出願の開示全体は、本明細書
の開示の一部として参照により援用される。
【0002】
本明細書は、映像および画像符号化技術に関する。
【背景技術】
【0003】
デジタル映像は、インターネット及び他のデジタル通信ネットワークにおいて最大の帯
域幅の使用量を占めている。映像の受信及び表示が可能な接続されたユーザ機器の数が増
加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される
。
【発明の概要】
【0004】
開示された技術は、パレットモード符号化が使用される映像または画像デコーダまたは
エンコーダの実施形態によって使用してもよい。
【0005】
1つの例示的な態様において、映像処理の方法が開示される。この方法は、映像の映像
領域のブロックと映像のビットストリーム表現との間で変換を行うことを含む。このビッ
トストリーム表現は、このブロックのためにパレットモードの使用の第1の指示が信号通
知されるかどうかを規定する第1のフォーマット規則と、このブロックのために予測モー
ドの使用の第2の指示に関連するこの第1の指示の位置を規定する第2のフォーマット規
則とに従って処理される。
【0006】
別の例示的な態様において、映像処理の方法が開示される。この方法は、映像における
映像領域のブロックと映像のビットストリーム表現との間での変換のために、このブロッ
クの少なくとも1つのパレットモードを含む1つ以上の許容予測モードに基づいて、予測
モードを判定することを含む。予測モードに従って、パレットモードの使用の指示を判定
する。この方法は、また、1つ以上の許容予測モードに基づいてこの変換を行うことを含
む。
【0007】
別の例示的な態様において、映像処理の方法が開示される。この方法は、映像のブロッ
クと映像のビットストリーム表現との間で変換を行うことを含む。ビットストリーム表現
は、パレットモードの使用の第1の指示とイントラブロックコピー(IBC)モードの使
用の第2の指示とを互いに依存して信号通知することを規定するフォーマット規則に従っ
て処理される。
【0008】
別の例示的な態様において、映像処理の方法が開示される。この方法は、映像のブロッ
クとこの映像のビットストリーム表現との間での変換のために、このブロック寸法に基づ
いて、このビットストリーム表現におけるパレットモードの使用の指示の存在を判定する
ことと、この判定に基づいてこの変換を行うことと、を含む。
【0009】
別の例示的な態様において、映像処理の方法が開示される。この方法は、映像のブロッ
クとこの映像のビットストリーム表現との間での変換のために、このビットストリーム表
現におけるイントラブロックコピー(IBC)モードの使用の指示の存在を、このブロッ
クの寸法に基づいて判定することと、この判定に基づいてこの変換を行うこととを含む。
【0010】
別の例示的な態様において、映像処理の方法が開示される。この方法は、映像のブロッ
クとこの映像のビットストリーム表現との間での変換のために、このブロックを含む映像
領域の第2の指示に基づいて、このブロックに対してパレットモードが許可されているか
どうかを判定することと、この判定に基づいてこの変換を行うこととを含む。
【0011】
別の例示的な態様において、映像処理の方法が開示される。この方法は、映像のブロッ
クとこの映像のビットストリーム表現との間での変換のために、このブロックを含む映像
領域の第2の指示に基づいて、このブロックに対してイントラブロックコピー(IBC)
モードが許可されているかどうかを判定することと、この判定に基づいてこの変換を行う
こととを含む。
【0012】
別の例示的な態様において、映像処理の方法が開示される。この方法は、パレットモー
ドを使用して、予測モードとは別個に符号化されたパレットモードの変換ユニット、符号
化ブロック、または領域を処理することを判定することと、このパレットモードを使用し
て、この変換ユニット、符号化ブロック、または領域に対してさらに処理を行うことを含
む。
【0013】
別の例示的な態様において、映像処理の方法が開示される。この方法は、現在の映像ブ
ロックに対して、パレットモードの1つのパレットエントリに関連付けられたサンプルが
、現在の映像ブロックに関連付けられた第2のビット深度とは異なる第1のビット深度を
有することを判定することと、この少なくとも1つのパレットエントリに基づいて、現在
の映像ブロックのさらなる処理を行うこととを含む。
【0014】
別の例示的な態様において、映像処理の別の方法が開示される。この方法は、映像のピ
クチャの現在の映像ブロックと、この映像のビットストリーム表現との間での変換を行う
ことであって、ビットストリーム表現において、イントラブロックコピーモードがこの変
換において使用されるか否かに関する情報が信号通知される、またはこの現在の映像ブロ
ックの符号化条件に基づいて導出される、変換を行うことを含み、このイントラブロック
コピーモードは、このピクチャにおける別の映像ブロックからこの現在の映像ブロックを
符号化することを含む。
【0015】
さらに別の例示的な態様において、映像処理の別の方法が開示される。この方法は、映
像のピクチャの現在の映像ブロックを変換する間に非ブロック化フィルタを適用するか否
かを判定することを含み、ここで、現在の映像ブロックは、現在の映像ブロックの全画素
より小さい代表的なサンプル値を使用して現在の映像ブロックを表すパレットモード符号
化を使用して符号化され、非ブロック化フィルタを適用すると判定した場合に非ブロック
化フィルタが適用されるように変換を行うことを含む。
【0016】
さらに別の例示的な態様において、映像処理の別の方法が開示される。この方法は、あ
る映像のピクチャの現在の映像ブロックとこの映像のビットストリーム表現との間での変
換中に使用するために、量子化または逆量子化処理を判定することを含み、ここで、現在
の映像ブロックは、現在の映像ブロックの合計画素よりも少ない代表的なサンプル値を使
用して現在の映像ブロックを表すパレットモード符号化を使用して符号化され、この量子
化または逆量子化処理の判定に基づいてこの変換を行うことを含む。
【0017】
さらに別の例示的な態様において、映像処理の別の方法が開示される。この方法は、複
数の映像ブロックを含む映像の現在の映像ブロックとこの映像のビットストリーム表現と
の間での変換のために、現在の映像ブロックがパレット符号化ブロックであることを判定
することと、この判定に基づいて、現在の映像ブロックをイントラ符号化されたブロック
であると考えることで、最大確率モードのリスト構築処理を行うことと、このリスト構築
処理の結果に基づいてこの変換を行うことと、を含み、このパレット符号化ブロックは、
パレットまたは表現サンプル値を使用して符号化または復号化される。
【0018】
さらに別の例示的な態様において、映像処理の別の方法が開示される。
【0019】
さらに別の例示的な態様において、映像処理の別の方法が開示される。この方法は、複
数の映像ブロックを含む映像の現在の映像ブロックとこの映像のビットストリーム表現と
の間での変換のために、現在の映像ブロックがパレット符号化ブロックであることを判定
することと、この判定に基づいて、現在の映像ブロックを非イントラ符号化されたブロッ
クであると考えることで、最大確率モードのリスト構築処理を実行し、このリスト構築処
理の結果に基づいてこの変換を行うことと、を含み、このパレット符号化ブロックは、パ
レットまたは表現サンプル値を使用して符号化または復号化される。
【0020】
さらに別の例示的な態様において、映像処理の別の方法が開示される。この方法は、複
数の映像ブロックを含む映像の現在の映像ブロックとこの映像のビットストリーム表現と
の間での変換のために、現在の映像ブロックがパレット符号化ブロックであることを判定
することと、この判定に基づいて、現在の映像ブロックを利用不可能なブロックであると
考えることで、リスト構築処理を行うことと、このリスト構築処理の結果に基づいてこの
変換を行うことと、を含み、このパレット符号化ブロックは、パレットまたは表現サンプ
ル値を使用して符号化または復号化される。
【0021】
さらに別の例示的な態様において、映像処理の別の方法が開示される。この方法は、現
在の映像ブロックと現在の映像ブロックのビットストリーム表現との間での変換中に、こ
の現在の映像ブロックがパレット符号化ブロックであることを判定することと、現在の映
像ブロックがパレット符号化ブロックであることに基づいて、この変換に使用されるコン
テキスト符号化ビンの範囲を判定することと、このコンテキスト符号化ビンの範囲に基づ
いてこの変換を行うこととを含む。
【0022】
さらに別の例示的な態様において、上述された方法は、処理装置を含む映像エンコーダ
によって実装されてもよい。
【0023】
さらに別の例示的な態様において、これらの方法は、処理装置実行可能命令の形式で実
施されてもよく、コンピュータ可読プログラム媒体に記憶されてもよい。
【0024】
これらの、および他の態様は、本明細書でさらに説明される。
【図面の簡単な説明】
【0025】
【
図2】パレットモードで符号化されたブロックの例を示す。
【
図3】パレットエントリを信号通知するためにパレット予測子を使用する例を示す。
【
図4】水平方向および垂直方向の横断走査の例を示す。
【
図7】映像エンコーダの実装形態の例を示すブロック図である。
【
図8】映像処理方法の例を示すフローチャートである。
【
図9】フィルタのオン/オフ決定および強/弱フィルタの選択に関与する画素の例を示す。
【
図12】67個のイントラモード予測方向の例を示す。
【
図14】ALFフィルタの形状の例を示す(クロマ:5×5菱形、輝度:7×7菱形)。
【
図15】(a)は垂直方向勾配のサブサンプリングされたラプラシアン計算の例を示す。(b)は水平勾配のためのサブサンプリングされたラプラシアン計算の例を示す。(c)は対角勾配のためのサブサンプリングされたラプラシアン計算の例を示す。(d)は対角勾配のためのサブサンプリングされたラプラシアン計算の例を示す。
【
図16】仮想境界における修正された区分の例を示す。
【
図17】仮想境界における輝度要素のための修正されたALFフィルタリングの例を示す。
【
図18】EOにおける画素分類の4つの1-D3画素パターンの例を示す。
【
図19】4つのバンドをグループ化してその開始バンド位置で表現することの例を示す。
【
図20】CIIP重み導出に用いられる左上近傍のブロックの例を示す。
【
図21】クロマスケーリングアーキテクチャを用いた輝度マッピングの例を示す。
【
図23】4×4ブロックのための走査順序の別の例を示す。
【
図24】開示された技術を実装することができる例示的な映像処理システムを示すブロック図である。
【
図25】本技術にしたがった映像処理方法を示すフローチャートである。
【
図26】本技術にしたがった別の映像処理方法を示す別のフローチャートである。
【
図27】本技術にしたがった別の映像処理方法を示す別のフローチャートである。
【
図28】本技術にしたがった別の映像処理方法を示す別のフローチャートである。
【
図29】本技術にしたがった別の映像処理方法を示す別のフローチャートである。
【
図30】本技術にしたがった別の映像処理方法を示す別のフローチャートである。
【
図31】本技術にしたがったさらに別の映像処理方法を示す別のフローチャートである。
【発明を実施するための形態】
【0026】
本明細書は、伸張または復号化されたデジタル映像または画像の品質を向上させるため
に、画像または映像ビットストリームのデコーダによって使用できる様々な技術を提供す
る。簡潔にするために、本明細書では、用語「映像」は、一連のピクチャ(従来から映像
と呼ばれる)および個々の画像の両方を含むように使用される。さらに、映像エンコーダ
は、さらなる符号化に使用される復号化されたフレームを再構成するために、符号化の処
理中にこれらの技術を実装してもよい。
【0027】
本明細書では、理解を容易にするために章の見出しを使用しており、1つの章に開示さ
れた実施形態をその章にのみ限定するものではない。このように、ある章の実施形態は、
他の章の実施形態と組み合わせることができる。
【0028】
1.発明の概要
【0029】
本明細書は、映像符号化技術に関する。具体的には、本発明は、映像符号化において基
本色に基づく表現を用いるパレット符号化に関する。HEVCのような既存の映像符号化
規格に適用してもよいし、規格(Versatile Video Coding)を確
定させるために適用してもよい。本発明は、将来の映像符号化規格または映像コーデック
にも適用可能である。
【0030】
2.初期の協議
【0031】
映像符号化規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発
展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-
1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 Vide
oと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 Exp
loration Model)と呼ばれる参照ソフトウェアに組み込まれてきた。20
18年4月には、VCEG(Q6/16)とISO/IEC JTC1 SC29/WG
11(MPEG)の間にJoint Video Expert Team(JVET)
が発足し、HEVCと比較して50%のビットレート削減を目標にVVC規格の策定に取
り組んでいる。
【0032】
図7は映像エンコーダの実装形態の例のブロック図である。
図7は、エンコーダの実装
が、映像エンコーダが映像復号化機能も実行する(次の映像データの符号化に使用するた
めに映像データの圧縮表現を再構成する)フィードバック経路を組み込んでいることを示
す。
【0033】
2.1 イントラブロックコピー
【0034】
イントラブロックコピー(IBC)、別名、現在のピクチャの参照は、HEVCスクリ
ーンコンテンツ符号化拡張機能(HEVC-SCC)と現在のVVCテストモデル(VT
M-4.0)に採用されている。IBCは、動き補償の概念をインターフレーム符号化か
らイントラフレーム符号化に拡張する。
図1に示すように、現在のブロックは、IBCが
適用される場合、同じピクチャ内の1つの参照ブロックによって予測される。現在のブロ
ックを符号化または復号化する前に、参照ブロックにおけるサンプルは既に再構成されて
いなければならない。IBCは、カメラでキャプチャされたほとんどのシーケンスに対し
てそれほど効率的ではないが、スクリーンコンテンツに対しては、有意な符号化利得を示
す。その理由は、スクリーンコンテンツピクチャにおいて、アイコン、文字等の繰り返し
パターンが多いためである。IBCは、これらの繰り返しパターン間の冗長性を有効に除
去することができる。HEVC-SCCにおいて、インター符号化ユニット(CU)は、
現在のピクチャをその参照ピクチャとして選択する場合、IBCを適用することができる
。この場合、MVをブロックベクトル(BV)と改称し、BVは常に整数画素精度を有す
る。メインプロファイルHEVCに適合するように、現在のピクチャは、復号化ピクチャ
バッファ(DPB)における「長期」参照ピクチャとしてマークされる。なお、同様に、
複数のビュー/3D映像符号化規格において、ビュー間の参照ピクチャも「長期」参照ピ
クチャとしてマークされる。
【0035】
BVがその参照ブロックを見つけた後、この参照ブロックをコピーすることで予測を生
成することができる。残差は、元の信号から参照画素を減算することによって得ることが
できる。そして、他の符号化モードと同様に、変換および量子化を適用することができる
。
【0036】
しかしながら、参照ブロックがピクチャの外にある場合、または現在のブロックと重複
する場合、または再構成された領域の外にある場合、或いは何らかの制約によって制限さ
れた有効領域の外にある場合、画素値の一部または全部は規定されない。基本的に、この
ような問題に対処するために2つの解決策がある。1つは、このような状況、例えばビッ
トストリーム適合性を許可しないことである。もう1つは、これらの未定義の画素値にパ
ディングを適用することである。以下のサブセッションでは、解決策を詳細に説明する。
【0037】
2.2 HEVCスクリーンコンテンツ符号化拡張機能におけるIBC
【0038】
HEVCのスクリーンコンテンツ符号化拡張機能において、1つのブロックが現在のピ
クチャを参照として使用する場合、以下の仕様のテキストに示すように、参照ブロック全
体が利用可能な再構成された領域内にあることを保証すべきである。
【0039】
【0040】
このように、参照ブロックが現在のブロックと重複するケース、または参照ブロックが
ピクチャの外にあるケースは発生しない。参照ブロックまたは予測ブロックを埋める必要
がない。
【0041】
2.3 VVC試験モデルにおけるIBC
【0042】
現在のVVC試験モデル、例えば、VTM-4.0設計において、参照ブロック全体は
現在の符号化ツリーユニット(CTU)を有するべきであり、現在のブロックと重複しな
い。よって、参照または予測ブロックをパディングする必要がない。IBCフラグは、現
在のCUの予測モードとして符号化される。このように、各CUに対して、MODE_I
NTRA、MODE_INTER、およびMODE_IBCという全部で3つの予測モー
ドが存在する。
【0043】
2.3.1 IBCマージモード
【0044】
IBCマージモードにおいて、IBCマージ候補リストにおけるエントリを指すインデ
ックスをビットストリームから構文解析する。このIBCマージリストの構築は、以下の
ステップのシーケンスに従ってまとめることができる。
【0045】
ステップ1:空間的候補の導出
【0046】
ステップ2:HMVP候補の挿入
【0047】
ステップ3:対の平均候補の挿入
【0048】
空間的マージ候補の導出において、図面に示す位置にある候補の中から、最大4つのマ
ージ候補が選択されている。導出の順序はA1、B1、B0、A0、B2である。位置A
1、B1、B0、A0のいずれかのPUが利用可能でない場合(例えば、別のスライスま
たはタイルに属しているため)、またはIBCモードで符号化されていない場合にのみ、
位置B2が考慮される。位置A1の候補を加えた後、残りの候補を挿入すると、冗長性チ
ェックを受け、それにより、同じ動き情報を有する候補を確実にリストから排除でき、符
号化効率を向上させることができる。計算の複雑性を低減するために、前述の冗長性チェ
ックにおいて、考えられる候補対のすべてを考慮することはしない。代わりに、図面に示
された矢印でリンクされた対のみを考慮し、冗長性チェックに使用される対応する候補が
同じ動き情報を有していない場合にのみ、その候補をリストに加える。
【0049】
空間的候補を挿入した後、IBCマージリストサイズが依然として最大IBCマージリ
ストサイズより小さい場合、HMVPテーブルからのIBC候補を挿入することができる
。HMVP候補の挿入にあたり、冗長性チェックを行う。
【0050】
最後に、対の平均候補をIBCマージリストに挿入する。
【0051】
マージ候補によって特定される参照ブロックがピクチャの外にある場合、または現在の
ブロックと重複する場合、または再構成された領域の外にある場合、或いは何らかの制約
によって制限された有効領域の外にある場合、マージ候補は無効なマージ候補と呼ばれる
。
【0052】
なお、IBCマージリストに無効なマージ候補を挿入してもよい。
【0053】
2.3.2 IBC AMVPモード
【0054】
IBC AMVPモードでは、IBC AMVPリストにおけるエントリを指すAMV
Pインデックスが、ビットストリームから構文解析される。このIBC AMVPリスト
の構築は、以下のステップのシーケンスに従ってまとめることができる。
【0055】
ステップ1:空間的候補の導出
【0056】
利用可能な候補が見つかるまで、A0,A1をチェックする。
【0057】
利用可能な候補が見つかるまで、B0、B1、B2をチェックする。
【0058】
ステップ2:HMVP候補の挿入
【0059】
ステップ3:ゼロ候補の挿入
【0060】
空間的候補を挿入した後、IBC AMVPリストサイズが依然として最大IBC A
MVPリストサイズより小さい場合、HMVPテーブルからのIBC候補を挿入すること
ができる。
【0061】
最後に、IBC AMVPリストにゼロ候補を挿入する。
【0062】
2.4 パレットモード
【0063】
パレットモードの背景にある基本的な考えは、CUにおけるサンプルを代表的な色値の
小さな集合で表現することである。この集合をパレットと呼ぶ。また、エスケープシンボ
ルの後に(場合によっては量子化された)要素値を信号通知することによって、パレット
の外側にあるサンプルを示すこともできる。これを
図2に示す。
【0064】
2.5 HEVCスクリーンコンテンツ符号化拡張機能におけるパレットモード(HE
VC-SCC)
【0065】
HEVC-SCCにおけるパレットモードでは、パレットおよびインデックスマップを
符号化するために予測方式が用いられる。
【0066】
2.5.1 パレットエントリの符号化
【0067】
パレットエントリを符号化するために、パレット予測子が維持される。SPSにおいて
、パレットの最大サイズおよびパレット予測子が信号通知される。HEVC-SCCにお
いて、palette_predictor_initializer_present
_flagがPPSに導入される。このフラグが1である場合、ビットストリームにおい
て、パレット予測子を初期化するためのエントリが信号通知される。パレット予測子は、
各CTU行、各スライス、および各タイルの始めに初期化される。palette_pr
edictor_initializer_present_flagの値によって、p
alette_predictorを0にリセットするか、またはPPSに信号通知され
たパレット予測子の初期化エントリを使用してパレット予測子を初期化する。HEVC-
SCCでは、PPSレベルでパレット予測子の初期化を明確に無効にするために、サイズ
0のパレット予測子初期化モジュールを有効化した。
【0068】
パレット予測子におけるエントリごとに、それが現在のパレットの一部であるかどうか
を示すように、再利用フラグが信号通知される。これを
図3に示す。再利用フラグは、ゼ
ロのランレングス符号化を使用して送信される。この後、新しいパレットエントリの数は
、次数0の指数ゴロムコードを使用して信号通知される。最後に、新しいパレットエント
リのための要素値が信号通知される。
【0069】
2.5.2 パレットインデックスの符号化
【0070】
パレットインデックスは、
図4に示すように、水平方向および垂直方向の横断走査を使
用して符号化される。palette_transpose_flagを使用して、ビッ
トストリームにおける走査順序を明確に信号通知する。以下のサブセクションでは、走査
が水平であると仮定する。
【0071】
パレットインデックスは、「INDEX」および「COPY_ABOVE」の2つのメ
インパレットサンプルモードを使用して符号化される。前述のように、エスケープシンボ
ルも「INDEX」モードとして信号送信され、最大パレットサイズに等しいインデック
スが割り当てられる。このモードは、最上行を除くフラグを使用して、または前回のモー
ドが「COPY_ABOVE」であった場合に信号通知される。「COPY_ABOVE
」モードでは、上の行のサンプルのパレットインデックスをコピーする。「INDEX」
モードにおいて、パレットインデックスは明確に信号通知される。「INDEX」モード
と「COPY_ABOVE」モードの両方の場合、同じモードを使用して符号化される後
続のサンプルの数を規定する実行値を信号通知する。エスケープシンボルが「INDEX
」または「COPY_ABOVE」モードにおける実行の一部である場合、エスケープシ
ンボルごとにエスケープ要素値が信号通知される。パレットインデックスの符号化を
図5
に示す。
【0072】
この構文順序は、以下のようにして実行される。まず、CUのためのインデックス値の
数が信号通知される。これに続いて、トランケーテッドバイナリ符号化(truncat
ed binary coding)を使用して、CU全体の実際のインデックス値を信
号通知する。バイパスモードでは、インデックスの数およびインデックス値の両方が符号
化される。これにより、インデックス関連バイパスビンがグループ化される。次に、パレ
ットサンプルモード(必要な場合)および実行は、インターリーブ方式で信号通知される
。最後に、CU全体のためのエスケープサンプルに対応する要素エスケープ値をグループ
化し、バイパスモードで符号化する。
【0073】
インデックス値を信号通知した後、追加の構文要素last_run_type_fl
agを信号通知する。この構文要素は、インデックスの数と連動して、ブロックにおける
最後の実行に対応する実行値を信号通知する必要をなくす。
【0074】
HEVC-SCCでは、パレットモードは、4:2:2、4:2:0、およびモノクロ
のクロマフォーマットに対しても有効になる。パレットエントリおよびパレットインデッ
クスの信号通知は、すべてのクロマフォーマットに対してほぼ同じである。非モノクロフ
ォーマットの場合、各パレットエントリは、3つの要素からなる。モノクロフォーマット
の場合、各パレットエントリは単一の要素からなる。サブサンプリングされたクロマ方向
の場合、クロマサンプルは、2で割り切れる輝度サンプル指数に関連付けられる。CUの
パレットインデックスを再構成した後、1つのサンプルに単一の要素しか関連付けられて
いない場合、パレットエントリの第1の要素のみが使用される。信号通知における唯一の
違いは、エスケープ要素値である。エスケープサンプルごとに、信号通知されるエスケー
プ要素値の数は、そのサンプルに関連付けられた要素の数によって異なってもよい。
【0075】
VVCにおいて、イントラスライスの符号化にデュアルツリー符号化構造が用いられる
ので、輝度要素および2つのクロマ要素は、異なるパレットおよびパレットインデックス
を有してもよい。また、2つのクロマ要素は、同じパレットおよびパレットインデックス
を共有する。
【0076】
2.6 VVCにおける非ブロック化スキーム
【0077】
なお、以下の説明において、pN
Mは、垂直エッジに対してM行目の左側のN番目のサ
ンプル、または水平エッジに対してM列目の上側のN番目のサンプルを表し、qN
Mは、
垂直エッジに対してM行目の右側のN番目のサンプル、または水平エッジに対して、M列
目の下側のN番目のサンプルを表す。pN
MおよびqN
Mの例を
図9に示す。
【0078】
なお、以下の説明において、pNは、垂直エッジに対して行の左側のN番目のサンプル
、または、水平エッジに対して列の上側のN番目のサンプルを表し、qNは、垂直エッジ
に対して行の右側のN番目のサンプル、又は水平エッジに対して、列の下側のN番目のサ
ンプルを表す。
【0079】
1つの単位として4行に対してフィルタのオン/オフの決定を行う。
図9は、フィルタ
のオン/オフ決定に関与する画素を示す。最初の4行のための2つの赤いボックスにおけ
る6つの画素は、4行のためのフィルタのオン/オフを判定するために用いられる。2番
目の4行のための2つの赤いボックス内の6つの画素は、第2の4行のためのフィルタの
オン/オフを判定するために用いられる。
【0080】
いくつかの実施形態において、まずピクチャの垂直エッジを選別する。そして、垂直エ
ッジフィルタリング処理で修正されたサンプルを入力として、ピクチャの水平エッジをフ
ィルタリングする。各CTUのCTBにおける垂直および水平エッジは、符号化ユニット
ごとに別個に処理される。符号化ユニットにおける符号化ブロックの垂直エッジは、符号
化ブロックの左側のエッジから始まり、符号化ブロックの右側に向かってそれらの幾何学
的順にエッジを通って進むようにフィルタリングされる。符号化ユニットにおける符号化
ブロックの水平エッジは、符号化ブロックの上側のエッジから始まり、符号化ブロックの
下側に向かってそれらの幾何学的順にエッジを通って進むようにフィルタリングされる。
【0081】
2.6.1 境界の決定
【0082】
8×8のブロック境界にフィルタリングを適用する。さらに、それは、(例えば、アフ
ィン動き予測、ATMVPを使用しているため)変換ブロックの境界または符号化サブブ
ロックの境界でなければならない。そのような境界でない場合、フィルタは無効にされる
。
【0083】
2.6.2 境界強度計算
【0084】
変換ブロックの境界/符号化サブブロックの境界について、それが8×8グリッドに位
置する場合、それをフィルタリングしてもよく、このエッジのためのbS[xDi][y
Dj]([xDi][yDj]は座標を表す)の設定は、以下のように定義される。
【0085】
- サンプルp0またはq0がイントラ予測モードで符号化された符号化ユニットの符
号化ブロックにある場合、bS[xDi][yDj]は、2に等しく設定される。
【0086】
- あるいは、ブロックエッジが変換ブロックエッジでもあり、サンプルp0またはq
0が、1つ以上の非ゼロ変換係数レベルを含む変換イントラブロックにある場合、bS[
xDi][yDj]は、1に等しく設定される。
【0087】
- あるいは、サンプルp0を含む符号化サブブロックの予測モードが、サンプルq0
を含む符号化サブブロックの予測モードと異なる場合、bS[xDi][yDj]は、1
に等しく設定される。
【0088】
- あるいは、以下の条件の1つ以上が真である場合、bS[xDi][yDj]を1
に等しく設定する。
【0089】
- サンプルp0を含む符号化サブブロックおよびサンプルq0を含む符号化サブブ
ロックは、いずれもIBC予測モードで符号化され、2つの符号化サブブロックの予測に
用いられる動きベクトルの水平または垂直要素の絶対差は、1/4輝度サンプル単位で4
以上である。
【0090】
- サンプルp0を含む符号化サブブロックの予測のために、サンプルq0を含む符
号化サブブロックの予測とは異なる参照ピクチャまたは異なる数の動きベクトルが使用さ
れる。
【0091】
注1 - 2つの符号化サブロックに使用される参照ピクチャが同じであるかまた
は異なるかは、予測を形成するのに参照ピクチャリスト0へのインデックスを使用するか
、または参照ピクチャリスト1へのインデックスを使用して形成するかに関わらず、且つ
参照ピクチャリスト内のインデックス位置が異なるかどうかに関わらず、どのピクチャが
参照されるかによってのみに基づいて判定される。
【0092】
注2 - (xSb,ySb)を含む左上のサンプルを有する符号化サブブロック
の予測に使用される動きベクトルの数は、PredFlagL0[xSb][ySb]+
PredFlagL1[xSb][ySb]に等しい。
【0093】
- 1つの動きベクトルは、サンプルp0を含む符号化サブブロックを予測するため
に使用され、1つの動きベクトルは、サンプルq0を含む符号化サブブロックを予測する
ために使用され、使用される動きベクトルの水平または垂直要素の絶対差は、1/4輝度
サンプル単位で4以上である。
【0094】
- 2つの動きベクトルおよび2つの異なる参照ピクチャを使用して、サンプルp0
を含む符号化サブブロックを予測し、同じ2つの参照ピクチャの2つの動きベクトルを使
用して、サンプルq0を含む符号化サブブロックを予測し、同じ参照ピクチャの2つの符
号化サブブロックの予測に使用される2つの動きベクトルの水平または垂直要素の絶対差
は、1/4輝度サンプル単位で4以上である。
【0095】
- 同じ参照ピクチャの2つの動きベクトルを使用して、サンプルp0を含む符号化
サブブロックを予測し、同じ参照ピクチャの2つの動きベクトルを使用して、サンプルq
0を含む符号化サブブロックを予測し、以下の条件の両方が成り立つ。
【0096】
- 2つの符号化サブブロックの予測に使用されるリスト0の動きベクトルの水平
または垂直要素の間の絶対差は、4分の1輝度サンプルにおいて4以上である、または2
つの符号化サブブロックの予測に使用されるリスト1の動きベクトルの水平または垂直要
素の間の絶対差は、1/4輝度サンプル単位で4以上である。
【0097】
- サンプルp0を含む符号化サブブロックの予測に使用されるリスト0動きベク
トルの水平または垂直要素と、サンプルq0を含む符号化サブブロックの予測に使用され
るリスト1動きベクトルとの間の絶対差は、1/4輝度サンプル単位で4以上であるか、
またはサンプルp0を含む符号化サブブロックの予測に使用されるリスト1動きベクトル
の水平または垂直要素と、サンプルq0を含む符号化サブブロックの予測に使用されるリ
スト0動きベクトルとの間の絶対差は、1/4輝度サンプル単位で4以上である。
【0098】
- あるいは、変数bS[xDi][yDj]を0に設定する。
【0099】
表2-1、表2-2にBSの計算規則をまとめる。
【0100】
【0101】
【0102】
2.6.3 輝度要素の非ブロック化決定
【0103】
非ブロック化決定処理は、このサブセクションで説明する。
【0104】
【0105】
条件1は、「大ブロック条件」である。この条件は、P側およびQ側のサンプルが、そ
れぞれ変数bSidePisLargeBlkおよびbSideQisLargeBlk
によって表現される大ブロックに属するかどうかを検出する。bSidePisLarg
eBlkおよびbSideQisLargeBlkは、以下のように定義される。
【0106】
bSidePisLargeBlk=((edge type is vertica
l and p0 belongs to CU with width>=32)||
(edge type is horizontal and p0 belongs
to CU with height>=32))? TRUE:FALSE
【0107】
bSideQisLargeBlk=((edge type is vertica
l and q0 belongs to CU with width>=32)||
(edge type is horizontal and q0 belongs
to CU with height>=32))?TRUE:FALSE
【0108】
bSidePisLargeBlkおよびbSideQisLargeBlkに基づい
て、条件1を以下のように定義する。
【0109】
【0110】
【0111】
- dp0,dp3,dq0,dq3をまずHEVCとして導出する。
- (p側が32以上である場合)
dp0=(dp0+Abs(p50-2*p40+p30)+1)>>1
dp3=(dp3+Abs(p53-2*p43+p33)+1)>>1
- (q側が32以上の場合)
dq0=(dq0+Abs(q50-2*q40+q30)+1)>>1
dq3=(dq3+Abs(q53-2*q43+q33)+1)>>1
【0112】
【0113】
条件1および条件2が有効である場合、いずれかのブロックがサブブロックを使用する
かどうかをさらにチェックする。
If(bSidePisLargeBlk)
If(mode block P==SUBBLOCKMODE)
Sp=5
他には
Sp=7
他には
Sp=3
If(bSideQisLargeBlk)
If(mode block Q==SUBBLOCKMODE)
Sq=5
他には
Sq=7
他には
Sq=3
【0114】
【0115】
【0116】
dpqはHEVCと同様に導出される。
sp3=Abs(p3-p0)、HEVCと同様に導出される。
if(p側が32以上である場合)
if(Sp==5)
sp3=(sp3+Abs(p5-p3)+1)>>1
他には
sp3=(sp3+Abs(p7-p3)+1)>>1
sq3=Abs(q0-q3)はHEVCと同様に導出される
if(q側が32以上である場合)
If(Sq==5)
sq3=(sq3+Abs(q5-q3)+1)>>1
他には
sq3=(sq3+Abs(q7-q3)+1)>>1
【0117】
HEVCと同様に、StrongFilterCondition=(dpqは(β>>2)以下であり、sp3+sq3は(3*β>>5)以下である、かつAbs(p0-q0)は(5*tC+1)>>1)以下である?TRUE:FALSE.
【0118】
2.6.4 輝度のためのより強い非ブロック化フィルタ(より大きいブロックのため
に設計される)
【0119】
バイリニアフィルタは、境界の両側のサンプルが1つの大ブロックに属する場合に用い
られる。1つの大ブロックに属する1つのサンプルは、垂直エッジの場合、幅≧32であ
り、水平エッジの場合、高さ≧32であるときとして定義される。
【0120】
バイリニアフィルタを以下に示す。
【0121】
次に、上述のHEVC非ブロック化において、ブロックの境界サンプルである、i=0
~Sp-1におけるpi、及び、j=0~Sq-1におけるqi(pi及びqiは、垂直
エッジをフィルタリングする行内のi番目のサンプル、または水平エッジをフィルタリン
グする列内のi番目のサンプル)を、以下のように線形補間によって置き換える。
【0122】
【0123】
ここで、tcPDiおよびtcPDj項は、章2.3.6に記載の位置依存クリッピン
グであり、gj,fi,Middles,t,PsおよびQsは、表2-3に示される。
【0124】
【0125】
2.6.5 クロマの非ブロック化制御
【0126】
クロマの強いフィルタは、ブロックの境界の両側に用いられる。ここで、クロマフィル
タは、クロマエッジの両側が8(クロマ位置)以上である場合に選択され、3つの条件付
きで、次の決定が満たされる。すなわち、1番目のものは、大ブロックと同様に、境界強
度を決定するためのものである。提案されたフィルタは、クロマサンプルドメインにおい
て、ブロックのエッジに直交するブロックの幅または高さが8以上である場合に適用でき
る。第2および第3のものは、基本的にはHEVC輝度の非ブロック化の決定と同じであ
り、それぞれオン/オフ決定および強いフィルタの決定となっている。
【0127】
第1の決定において、表2-2に示すように、クロマフィルタリングのために境界強度
(bS)が修正される。表2-2の条件を順次チェックする。条件が満たされている場合
、残りの優先順位の低い条件はスキップされる。
【0128】
大ブロックの境界が検出された場合、bSが2に等しいか、またはbSが1に等しいと
き、クロマ非ブロック化が行われる。
【0129】
第2および第3の条件は、基本的には、以下のように、HEVC輝度の強いフィルタの
決定と同様である。
【0130】
第2の条件において、その後、HEVC輝度非ブロック化と同様にdを導出する。
第2の条件は、dがβより小さい場合、TRUEとなる。
【0131】
第3の条件において、StrongFilterConditionは、以下のように
導出される。
dpqはHEVCと同様に導出される。
sp3=Abs(p3-p0)、HEVCと同様に導出される。
sq3=Abs(q0-q3)はHEVCと同様に導出される。
【0132】
HEVC設計におけるように、StrongFilterCondition=(dp
qは(β>>2)以下であり、sp3+sq3は(β>>3)以下である、かつAbs(p0-q0)は(5*tC+1)>>1)以下である。
【0133】
2.6.6 クロマ用の強い非ブロック化フィルタ
【0134】
以下のようなクロマ用の強い非ブロック化フィルタが定義される。
p2’=(3*p3+2*p2+p1+p0+q0+4)>>3
p1’=(2*p3+p2+2*p1+p0+q0+q1+4)>>3
p0’=(p3+p2+p1+2*p0+q0+q1+q2+4)>>3
【0135】
提案されたクロマフィルタは、4×4クロマサンプルグリッドに対して非ブロック化を
行う。
【0136】
2.6.7 位置依存クリッピング
【0137】
位置依存クリッピングtcPDは、境界で7個、5個、および3個のサンプルを修正す
る強く長いフィルタを含む輝度フィルタリング処理の出力サンプルに適用される。量子化
誤差分布を仮定して、より高い量子化ノイズを有すると予想されるサンプルに対して、ク
リッピング値を増加させることが提案され、よって、再構成されたサンプル値の真のサン
プル値からのより高い偏差を有することが予想される。
【0138】
非対称フィルタでフィルタリングされた各PまたはQ境界について、章2.3.3にお
ける意思決定処理の結果に基づいて、位置依存閾値テーブルが、副情報としてデコーダに
提供される2つのテーブル(即ち、Tc7およびTc3を以下にまとめる)から選択され
る。
Tc7={6,5,4,3,2,1,1};
Tc3={6,4,2};
tcPD=(Sp==3)?Tc3:Tc7;
tcQD=(Sq==3)?Tc3:Tc7;
【0139】
短い対称フィルタでフィルタリングされるPまたはQ境界に対しては、より小さい位置
依存閾値が適用される。
Tc3={3,2,1};
【0140】
閾値を定義した後、tcPおよびtcQクリッピング値に従って、フィルタリングされ
たp’iおよびq’iサンプル値をクリッピングする。
p’’i=Clip3(p’i+tcPi,p’i-tcPi,p’i);
q’’j=Clip3(q’j+tcQj,q’j-tcQj,q’j);
【0141】
ここで、p’i、q’iはフィルタリングされたサンプル値であり、p’’i、q’’
jはクリッピング後の出力サンプル値であり、tcPi、tcPiはVVC tcパラメ
ータ、tcPD、tcQDから導出されるクリッピング閾値である。関数Clip3は、
VVCに規定されているような、クリッピング関数である。
【0142】
2.6.8 サブブロックの非ブロック化調整
【0143】
両方のロングフィルタを使用する並列フレンドリな非ブロック化およびサブブロック非
ブロック化を可能にするために、ロングフィルタは、ロングフィルタのための輝度制御に
示すように、サブブロック非ブロック化(AFFINE、ATMVP、またはDMVR)
を使用する側でのサンプルの修正が、最大で5つまでに制限される。さらに、サブブロッ
クの非ブロック化は、CUまたは暗黙のTU境界に近い8×8グリッド上のサブブロック
境界の修正が、各側において最大2つまでのサンプルに制限されるように調整される。
【0144】
以下は、CU境界と整列されていないサブブロック境界に適用される。
If(mode block Q==SUBBLOCKMODE && edge !=
0){
if(!(implicitTU &&(edge==(64/4))))
if(edge==2||edge==(orthogonalLength-
2)||edge==(56/4)||edge==(72/4))
Sp=Sq=2;
他には
Sp=Sq=3;
他には
Sp=Sq=bSideQisLargeBlk ?5:3
}
【0145】
この場合、0に等しいエッジはCU境界に対応し、2に等しいかまたは直交長さ-2に
等しいエッジは、CU境界からのサブブロックの境界8サンプルに対応する。ここで、T
Uの暗黙的分割が使用される場合、暗黙的TUは真である。
【0146】
2.6.9 輝度/クロマ用の4CTU/2CTU行バッファへの制限
【0147】
水平エッジがCTU境界と整列している場合、水平エッジのフィルタリングは、輝度の
場合、Sp=3、クロマの場合、Sp=1、Sq=1に制限する。
【0148】
2.7 VVCにおけるイントラモード符号化
【0149】
自然映像に表される任意のエッジ方向をキャプチャするために、VTM5における指向
性イントラモードの数は、HEVCで使用されるように、33から65に拡張される。H
EVCにない新しい指向性モードは、
図12に赤い点線の矢印で示されており、平面モー
ドと直流モードは同じままである。これらのより密度の高い指向性イントラ予測モードは
、すべてのブロックサイズ、および輝度および彩度イントラ予測の両方に適用される。
【0150】
VTM5において、いくつかの従来の角度イントラ予測モードは、非正方形のブロック
のために、広角イントラ予測モードに適応的に置き換えられる。広角イントラ予測につい
ては、章3.3.1.2を参照されたい。
【0151】
HEVCにおいて、すべてのイントラ符号化されたブロックは正方形の形状を有し、そ
の辺の各々の長さは2の累乗である。このように、DCモードを使用してイントラ予測子
を生成するのに、除算演算を必要としない。VTM5において、ブロックは長方形であっ
てもよく、一般的な場合、ブロックごとに除算演算を使用することが必要である。DC予
測のための除算演算を回避するために、長辺のみを使用して非正方形のブロックの平均を
計算する。
【0152】
最大確率モード(MPM)リスト生成の複雑性を低く維持するために、2つの利用可能
な近傍のイントラモードを考慮することによって、6個のMPMを有するイントラモード
符号化方法が使用される。MPMリストを構築するために、以下の3つの態様を考える。
i. デフォルトのイントラモード
ii. 近傍イントラモード
iii. 導出イントラモード
【0153】
MRL符号化ツールおよびISP符号化ツールの適用の有無にかかわらず、イントラブ
ロックに対して統一された6-MPMリストが使用される。MPMリストは、左上の近傍
のブロックのイントラモードに基づいて構成される。ここで、左側のブロックのモードを
Leftとし、上記ブロックのモードをAboveとすると、統合MPMリストは、以下
のように構成される(左側および上側のブロックを
図13で示す。
- 近傍のブロックが利用可能でない場合、そのイントラモードはデフォルトでPla
narに設定される。
- モードLeftおよびAboveの両方が非角度モードである場合、次のようにな
る。
○ MPM list→{Planar,DC,V,H,V-4,V+4}
- モードLeftおよびAboveの一方が角度モードであり、他方が非角度モード
である場合、次のようになる。
○ MaxモードをLeftかつAbove でより大きいモードに設定する
。
○ MPM list→{Planar,Max,DC,Max-1,Max+1,
Max-2}
- LeftとAboveが共に角度があり、かつそれらが異なる場合、以下のように
なる。
○ MaxモードをLeftかつAbove でより大きいモードに設定する
。
○ LeftモードとAboveモードとの差が2~62の範囲内にある場合
■ MPM list→{Planar,Left,Above,DC,Max-
1,Max+1}
○ あるいは、
■ MPM list→{Planar,Left,Above,DC,Max-
2,Max+2}
- LeftとAboveが両方ともに角度があり、かつ同じである場合、以下のよう
になる。
○ MPM list→{Planar,Left,Left-1,Left+1,
DC,Left-2}
【0154】
また、mpmインデックスコード名の第1のビンは、CABACコンテキスト符号化さ
れる。現在のイントラブロックがMRL対応であるか、ISP対応であるか、または通常
のイントラブロックであるかに対応して、合計3つのコンテキストが使用される。
【0155】
6つのMPMリストの生成処理中、プルーニングを使用して重複したモードを除去し、
唯一のモードをMPMリストに含めることができるようにする。61個の非MPMモード
のエントロピー符号化のために、トランケーテッドバイナリコード(TBC)が使用され
る。
【0156】
クロマイントラモード符号化の場合、クロマイントラモード符号化の場合、合計8つの
イントラモードが許可される。これらのモードには、5つの伝統的なイントラモードと3
つの構成要素共通の線形モデルモードが含まれる(CCLM、LM_AおよびLM_L)
。クロマモード信号通知および導出処理を表2-4に示す。クロマモード符号化は、対応
する輝度ブロックのイントラ予測モードに直接依存する。Iスライスにおいて、輝度要素
とクロマ要素に対するブロック分割構造の分離が有効化されているため、1つのクロマブ
ロックは複数の輝度ブロックに対応してもよい。よって、クロマDMモードの場合、現在
のクロマブロックの中心位置を含む、対応する輝度ブロックのイントラ予測モードは直接
継承される。
【0157】
【0158】
2.8 量子化残差ブロック差動パルスコード変調(QR-BDPCM)
【0159】
JVET-M0413において、量子化された残差ブロック差動パルスコード変調(Q
R-BDPCM)が、スクリーンコンテンツを効率的に符号化するために提案されている
。
【0160】
QR-BDPCMで使用される予測方向は、垂直予測モードおよび水平予測モードであ
り得る。イントラ予測は、イントラ予測と同様に、予測方向(水平または垂直予測)にサ
ンプルコピーすることで、ブロック全体で予測する。残差を量子化し、量子化された残差
とその予測子(水平または垂直)量子化値との間のデルタを符号化する。これは、以下の
ように説明することができる。サイズM(行)×N(列)のブロックについて、ri,j
,0≦i≦M-1、0≦j≦N-1を、上または左ブロックの境界サンプルからのフィル
タリングされていないサンプルを使用して、水平方向(予測ブロックに対して左隣の画素
値を1ラインずつコピーする)または垂直方向(予測ブロックにおける各ラインに上隣の
ラインをコピーする)にイントラ予測を行った後の予測残差とする。Q(ri,j)、0
≦i≦M-1、0≦j≦N-1は、残差ri,jの量子化バージョンを表し、この場合、
残差は、元のブロックと予測ブロック値との間の差である。次に、ブロックDPCMが量
子化された残差サンプルに適用され、その結果、要素ri,j~を有する修正されたM×N個の配列R~が得られる。垂直BDPCMが信号通知されると、以下のようになる。
【0161】
【0162】
水平予測の場合、類似した規則が適用され、残差量子化サンプルは、以下の式によって
得られる。
【0163】
【0164】
残差量子化サンプルr~
i,jはデコーダに送られる。
【0165】
デコーダ側では、上記の計算を逆にして、Q(ri,j)、0≦i≦M-1、0≦j≦
N-1を生成する。垂直予測の場合、以下である。
【0166】
【0167】
水平方向の場合、以下である。
【0168】
【0169】
逆量子化された残差Q-1(Q(ri,j))をイントラブロック予測値に加算し、再
構成されたサンプル値を生成する。
【0170】
このスキームの主な利点は、逆方向のDPCMを、係数の構文解析中にオンザフライで
行うことができ、係数の構文解析中に予測子を追加するだけで済むこと、または、構文解
析後に行うことができることである。
【0171】
2.9 適応ループフィルタ
【0172】
VTM5において、ブロックに基づくフィルタ適応を伴う適応ループフィルタ(ALF
)が適用される。輝度要素は、局所勾配の方向および働きに基づいて、4×4ブロックご
とに25個のフィルタのうち1つを選択する。
【0173】
2.9.1 フィルタ形状
【0174】
VTM5において、2つの菱形フィルタ形状(
図14に示す)が使用される。輝度要素
には7×7菱形を適用し、クロマ要素には5×5菱形を適用する。
【0175】
2.9.2 ブロック区分
【0176】
輝度要素の場合、各4×4ブロックを25個のクラスのうちの1つに分類する。分類イ
ンデックスCは、その方向性DおよびアクティビティA^の量子化値に基づいて、以下の
ように導出される。
【0177】
【0178】
DおよびA^を計算するために、まず、1-Dラプラシアンを使用して、水平、垂直お
よび2つの対角線方向の勾配を計算する。
【0179】
【0180】
この場合、iおよびjは、4×4イントラブロックの左上のサンプルの座標を表し、R
(i,j)は、座標(i,j)において再構成されたサンプルを示す。
【0181】
ブロック区分の複雑性を低減するために、サブサンプリングされた1-Dラプラシアン
計算が適用される。
図15(a)~(d)に示すように、すべての方向の勾配計算に同じ
サブサンプリング位置を用いる。
【0182】
そして、水平方向および垂直方向の勾配のD最大値およびD最小値を以下のように設定
する。
【0183】
【0184】
2つの対角線方向の勾配の最大値および最小値は、以下のように設定される。
【0185】
【0186】
指向性Dの値を導出するために、これらの値を互いに且つ2つの閾値t1およびt2と
比較する。
【0187】
【0188】
アクティビティ値Aは、以下のように計算される。
【0189】
【0190】
Aをさらに0~4の範囲に量子化し、量子化された値をA^とする。
【0191】
ピクチャにおけるクロマ要素に対して、分類方法は適用されず、即ち、単一のALF係
数のセットが各クロマ要素に対して適用される。
【0192】
2.9.3 フィルタ係数およびクリッピング値の幾何学的変換
【0193】
各4×4輝度ブロックをフィルタリングする前に、そのブロックに対して計算された勾
配値に基づいて、フィルタ係数f(k,l)および対応するフィルタクリッピング値c(
k,l)に対して、回転または対角線および垂直方向の反転等の幾何学的変換を施す。こ
れは、これらの変換をフィルタ支持領域内のサンプルに適用することに等しい。その考え
は、ALFが適用される異なるブロックを、それらの方向性を揃えることによって、より
類似させることである。
【0194】
対角線、垂直方向の反転および回転を含む3つの幾何学的変換を紹介する。
Diagonal:fD(k,l)=f(l,k),cD(k,l)=c(l,k),
(2-9-9)
Vertical flip:fV(k,l)=f(k,K-l-1),cV(k,l)
=c(k,K-l-1) (2-9-10)
Rotation:fR(k,l)=f(K-l-1,k),cR(k,l)=c(K-
l-1,k) (2-9-11)
【0195】
この場合、Kはフィルタのサイズであり、0≦k,l≦K-1が係数座標であり、位置
(0,0)は左上隅にあり、位置(K-1,K-1)は右下隅にある。この変換は、その
ブロックに対して計算された勾配値に基づいて、フィルタ係数f(k,l)およびクリッ
ピング値c(k,l)に適用される。変換と4方向の4つの勾配との関係を以下の表にま
とめる。
【0196】
【0197】
2.9.4 フィルタパラメータ信号通知
【0198】
VTM5において、ALFフィルタパラメータは、適応パラメータセット(APS)に
おいて信号通知される。1つのAPSにおいて、最大25組の輝度フィルタ係数およびク
リッピング値インデックス、並びに最大1組のクロマフィルタ係数およびクリッピング値
インデックスを信号通知することができる。ビットオーバーヘッドを低減するために、異
なる分類のフィルタ係数をマージすることができる。スライスヘッダにおいて、現在のス
ライスに使用されるAPSのインデックスが信号通知される。
【0199】
APSから復号化されたクリッピング値インデックスは、クリッピング値の輝度テーブ
ル(Luma table)およびクリッピング値のクロマテーブル(Chroma t
able)を使用してクリッピング値を判定することができるようになる。これらのクリ
ッピング値は、内部ビット深度に依存する。具体的には、クリッピング値の輝度テーブル
およびクロマテーブルは、以下の式によって得られる。
【0200】
【0201】
ここで、Bは内部ビット深度に等しく、NはVTM5.0における許容されるクリッピ
ング値の数である4に等しい。
【0202】
フィルタリング処理はCTBレベルで制御されてもよい。ALFが輝度CTBに適用さ
れるかどうかを示すために、常に1つのフラグが信号通知される。1つの輝度CTBは、
16個の固定フィルタセットのうち1つのフィルタセットを選択し、複数のAPSから1
つのフィルタセットを選択することができる。どのフィルタセットが適用されるかを示す
ように、輝度CTBのためにフィルタセットインデックスが信号通知される。エンコーダ
およびデコーダの両方において、16個の固定フィルタセットを予め規定し、ハードコー
ドする。
【0203】
フィルタ係数は、128に等しいノルムで量子化される。乗算の複雑性を抑えるために
、非中心位置の係数値が-27~27-1の範囲内に含まれるように、ビットストリーム
適合性が適用される。中心位置係数はビットストリームにおいて信号通知されず、128
に等しいと見なされる。
【0204】
2.9.5 フィルタリング処理
【0205】
デコーダ側において、CTBのためにALFが有効化されると、CU内の各サンプルR
(i,j)がフィルタリングされ、その結果、以下に示すように、サンプル値R’(i,
j)が得られる。
【0206】
【0207】
ここで、f(k,l)は復号化されたフィルタ係数を表し、K(x,y)はクリッピン
グ関数であり、c(k,l)は復号化されたクリッピングパラメータを表す。変数kおよ
びlは、-L/2とL/2との間で変化し、ここで、Lはフィルタ長を表す。クリッピン
グ関数K(x,y)=min(y,max(-y,x))であり、これは関数Clip3
(-y,y,x)に対応する。
【0208】
2.9.6 行バッファ削減のための仮想境界フィルタリング処理
【0209】
VTM5において、ALFの行バッファ要件を低減するために、水平CTU境界付近の
サンプルに対して修正されたブロック区分およびフィルタリングが用いられる。そのため
に、
図16に示すように、水平方向CTU境界を「N」個のサンプルで移動させることに
よって、仮想境界を行として定義し、Nは、輝度要素に対しては4に等しく、クロマ要素
に対しては2に等しい。
【0210】
図2-11に示すように、輝度要素に対して修正されたブロック区分を適用する。仮想
境界より上の4×4ブロックの1Dラプラシアン勾配計算のために、仮想境界より上のサ
ンプルのみを使用する。同様に、仮想境界より下の4×4ブロックの1Dラプラシアン勾
配計算のために、仮想境界より下のサンプルのみを使用する。従って、1Dラプラシアン
勾配計算に使用されるサンプルの低減された数を考慮に入れることで、アクティビティ値
Aの量子化を拡大縮小する。
【0211】
フィルタリング処理のために、仮想境界における対称パディング演算が、輝度要素およ
びクロマ要素の両方に使用される。
図17に示すように、フィルタリングされる試料が仮
想境界の下に位置する場合、仮想境界の上に位置する近傍のサンプルにパディングを行う
。一方、他方の側の対応するサンプルもまた、対称的にパディングされる。
【0212】
2.10 サンプル適応オフセット(Sample Adaptive Offset
:SAO)
【0213】
エンコーダがCTBごとに規定したオフセットを使用して、非ブロック化フィルタ後の
再構成された信号にサンプル適応オフセット(SAO)を適用する。HMエンコーダは、
まず、現在のスライスに対してSAO処理を行うか否かを決定する。スライスにSAOを
適用した場合、各CTBは、表2-6に示すように、5つのSAOタイプの1つに分類さ
れる。SAOの概念は、画素をカテゴリに分類し、各カテゴリの画素にオフセットを加え
ることで歪みを低減することである。SAO演算は、SAOタイプ1-4における画素分
類のためにエッジ特性を使用するエッジオフセット(EO)と、SAOタイプ5における
画素分類のために画素強度を使用するバンドオフセット(BO)とを含む。適用可能なC
TBは、それぞれ、sao_merge_left_flag、sao_merge_u
p_flag、SAOタイプ、および4つのオフセットを含むSAOパラメータを有する
。sao_merge_left_flagが1に等しい場合、現在のCTBは、SAO
タイプおよびCTBのオフセットを左に再利用する。sao_merge_up_fla
gが1に等しい場合、現在のCTBは、SAOタイプおよび上記CTBのオフセットを再
利用する。
【0214】
【0215】
2.10.1 各SAOタイプの動作
【0216】
図18に示すように、エッジオフセットは、4つの1-D3画素パターンを使用して、
エッジの方向情報を考慮して現在の画素pを分類する。左から右へ、0°、90°、13
5°、および45°がある。
【0217】
表2-7に従って、各CTBを5つのカテゴリに分類する。
【0218】
【0219】
バンドオフセット(Band Offset、BO)は、画素値の上位5ビットをバン
ドインデックスとして使用し、1つのCTB領域におけるすべての画素を32個の均一な
バンドに分類する。換言すると、画素強度範囲は、ゼロから最大強度値までの32個の等
分したセグメントに分割される(例えば、8ビット画素の場合、255)。
図19に示す
ように、隣り合う4つのバンドをまとめ、それぞれのグループをその最も左側の位置で示
す。エンコーダは、各帯域のオフセットを補償することで、すべての位置を探索し、歪み
が最大に低減されたグループを得る。
【0220】
2.11 統合されたインター予測およびイントラ予測(CIIP)
【0221】
VTM5において、CUがマージモードで符号化される場合、CUが少なくとも64個
の輝度サンプルを含む(すなわち、CU幅×CU高さが64以上である)場合、およびC
U幅およびCU高さの両方が128個の輝度サンプル未満である場合、現在のCUにイン
ター/イントラ予測(CIIP)複合モードが適用されるかどうかを示すために、追加の
フラグが信号通知される。その名称が示すように、CIIP予測は、インター予測信号と
イントラ予測信号とを合成する。通常のマージモードに適用されるのと同じインター予測
処理を使用して、CIIPモードP
interにおけるインター予測信号を導出し、平面
モードによる通常のイントラ予測処理の後、イントラ予測信号P
intraを導出する。
そして、重み付け平均を使用してイントラ予測信号とインター予測信号とを合成し、この
場合、左上の近傍のブロック(
図20に示す)の符号化モードによって、重み値を以下の
ように算出する。
【0222】
- 上隣が利用可能であり、イントラ符号化されている場合、isIntraTopを
1に設定し、あるいは、isIntraTopを0に設定する。
- 左隣が利用可能であり、イントラ符号化されている場合、isIntraLeft
を1に設定し、あるいは、isIntraLeftを0に設定する。
-(isIntraLeft+isIntraLeft)が2に等しい場合、wtは3
に設定される。
- あるいは、(isIntraLeft+isIntraLeft)が1に等しい場
合、wtは2に設定される。
- あるいは、wtを1に設定する。
【0223】
CIIP予測は、以下のように形成される。
PCIIP=((4-wt)*Pinter+wt*Pintra+2)>>2
(3-1)
【0224】
2.12 クロマスケーリングを伴う輝度マッピング(LMCS)
【0225】
VTM5において、ループフィルタの前に新しい処理ブロックとして、クロマスケーリ
ングによる輝度マッピング(LMCS)と呼ばれる符号化ツールが追加される。LMCS
は、2つの主な要素を有する。1) 適応型区分線形モデルに基づく輝度要素のインルー
プマッピング、および、2)クロマ要素のために、輝度依存クロマ残差スケーリングを適
用する。
図21は、デコーダの観点から見たLMCSアーキテクチャを示す。
図21中の
薄い青色の影が付けられたブロックは、マッピングされたドメインにおいて処理が適用さ
れる場所を示し、これらは、逆量子化、逆変換、輝度イントラ予測、および輝度予測と輝
度残差との加算を含む。
図21中の影が付けられていないブロックは、元の(即ち、マッ
ピングされていない)ドメインにおいて処理が適用される場所を示し、これらは、非ブロ
ック化、ALF、SAO等のループフィルタ、動き補償予測、クロマイントラ予測、クロ
マ残差とともにクロマ予測を加算し、復号化されたピクチャを参照ピクチャとして記憶す
ることを含む。
図21における淡黄色の陰影付きブロックは、輝度信号の前方および後方
マッピング並びに輝度依存性クロマスケーリング処理を含む、新しいLMCS機能ブロッ
クである。VVCにおける他のほとんどのツールと同様に、LMCSは、SPSフラグを
使用して、シーケンスレベルで有効/無効にすることができる。
【0226】
3. 実施形態が解決しようとする課題の例
【0227】
1つのパレットフラグは、通常、そのエントロピー符号化において異なる制限および分
散を有することができる、現在のCUにおいてパレットモードが採用されているかどうか
を示すために用いられる。しかしながら、前の映像符号化規格において、どのようにして
パレットフラグをより良好に符号化するかについては、まだ十分に検討されていない。
【0228】
パレットサンプルは、ポストループフィルタ処理によって処理される場合、視覚的アー
チファクトを有する可能性がある。
【0229】
非正方形のブロックの場合、パレットの走査順序を改善することができる。
【0230】
4. 実施形態の例
【0231】
以下の詳細な発明は、一般的な概念を説明するための例であると考えられるべきである
。これらの発明は狭い意味で解釈されるべきではない。さらに、これらの発明は、任意の
方法で組み合わせることができる。
【0232】
1. 変換ユニット/予測ユニット/符号化ブロック/領域のためのパレットモードの使
用の指示は、予測モードとは別個に符号化されてもよい。
a. 一例において、予測モードは、パレットの使用の指示の前に符号化されてもよい
。
i. 代替的に、さらに、パレットの使用の指示は、予測モードに基づいて条件付き
で信号通知されてもよい。
1. 一例において、予測モードがイントラブロックコピーモードである場合(す
なわち、MODE_IBC)、パレットモードの使用の指示の信号通知はスキップされて
もよい。代替的に、さらに、現在の予測モードがMODE_IBCである場合、パレット
の使用の指示が偽であると推測されてもよい。
2. 一例において、予測モードがインターモード(すなわち、MODE_INT
ER)である場合、パレットモードの使用の指示の信号通知はスキップされてもよい。代
替的に、さらに、現在の予測モードがMODE_INTERである場合、パレットモード
の使用の指示が偽であると推測されてもよい。
3. 一例において、予測モードがイントラモード(すなわち、MODE_INT
RA)である場合、パレットモードの使用の指示の信号通知はスキップされてもよい。代
替的に、さらに、現在の予測モードがMODE_INTRAである場合、パレットモード
の使用の指示が偽であると推測されてもよい。
4. 一例において、予測モードがスキップモードである(すなわち、スキップフ
ラグが1に等しい)場合、パレットモードの使用の指示の信号通知はスキップされてもよ
い。代替的に、さらに、現在のCUにおいてスキップモードが採用されている場合、パレ
ットモードの使用の指示が偽であると推測されてもよい。
5. 一例において、予測モードがイントラモード(例えば、MODE_INTR
A)である場合、パレットモードの使用の指示が信号通知されてもよい。代替的に、さら
に、予測モードがインターモードまたはイントラブロックコピーモードである場合、パレ
ットモードの使用の指示の信号通知はスキップされてもよい。
a) 代替的に、さらに、予測モードがイントラモードであり、パルス符号変調
(PCM)モードでない場合、パレットモードの使用の指示を信号通知されてもよい。
b) 代替的に、さらに、予測モードがイントラモードである場合、パレットモ
ードの使用の指示は、PCMモードの使用の指示の前に信号通知されてもよい。一例にお
いて、パレットモードが適用される場合、PCMモードの使用の信号通知はスキップされ
てもよい。
c) 代替的に、さらに、予測モードがインターモードまたはイントラブロック
コピーモードである場合、パレットモードの使用の指示の信号通知はスキップされてもよ
い。
6. 一例において、予測モードがインターモード(例えば、MODE_INTE
R)である場合、パレットモードの使用の指示が信号通知されてもよい。
a) 代替的に、予測モードがイントラモードである場合、パレットモードの使
用の指示の信号通知はスキップされてもよい。
7. 一例において、予測モードがイントラブロックコピーモードである場合、パ
レットモードの使用の指示が信号通知されてもよい。代替的に、さらに、予測モードがイ
ンターモードまたはイントラモードである場合、パレットモードの使用の指示の信号通知
をスキップしてもよい。
ii. 代替的に、さらに、ピクチャ/スライス/タイルグループのタイプに基づい
て、パレットモードの使用の指示を条件付きで信号通知されてもよい。
b. 一例において、予測モードは、パレットモードの使用の指示の後に符号化されて
もよい。
c. 一例において、予測モードがINTRAモードまたはINTER_MODEであ
る場合、パレットモードの使用の指示が信号通知されてもよい。
i. 一例において、パレットモードの使用の指示は、スキップフラグ、予測モード
、およびPCMモードのフラグの後に符号化されてもよい。
ii. 一例において、パレットモードの使用の指示は、スキップフラグ、予測モー
ドの後、PCMモードのフラグの前に符号化されてもよい。
iii. 一例において、現在のブロックがイントラモードで符号化される場合、パ
レットモードおよびIBCモードの指示がさらに信号通知されてもよい。
1. 一例において、1つのビットフラグは、パレットまたはIBCモードのいず
れが信号通知されるかどうかを示すように信号通知されてもよい。
2. 一例において、ビットフラグの信号通知は、ブロック寸法、1つのタイル/
タイルグループ/スライス/ピクチャ/シーケンスに対してIBCまたはパレットモード
が有効化されるかどうか等の特定の条件下でスキップされてもよい。
d. 一例において、予測モード(例えば、それがイントラモードであるかまたはイン
ターモードであるか)は、まず符号化され、続いて、それがパレットモードであるかどう
かの条件付き信号通知が行われる。
i. 一例において、予測モードがイントラモードである場合、それがパレットモー
ドであるかどうかを示すように、別のフラグをさらに信号通知されてもよい。
1. 一例において、1つの映像データユニット(例えば、シーケンス/ピクチャ
/タイルグループ/タイル)に対してパレットモードが有効化される場合、「別のフラグ
」が信号通知されてもよい。
2. 一例において、「別のフラグ」は、ブロック寸法の条件下で信号通知されて
もよい。
3. 代替的に、さらに、それがパレットモードでない場合、それがPCMモード
であるかどうかを示すように、1つのフラグをさらに信号通知されてもよい。
4. 一例において、「別のフラグ」は近傍のブロックの情報に従ってコンテキス
ト符号化されてもよい。代替的に、「別のフラグ」は、1つのコンテキストのみで符号化
されたコンテキストでもよい。代替的に、「別のフラグ」は、バイパス符号化されても、
すなわちコンテキストなしであってもよい。
ii. 代替的に、予測モードがインターモードである場合、IBCモードであるか
どうかを示すように、別のフラグをさらに信号通知されてもよい。
1. 一例において、1つの映像データユニット(例えば、シーケンス/ピクチャ
/タイルグループ/タイル)に対してIBCモードが有効化されるとき、「別のフラグ」
が信号通知されてもよい。
2. 一例において、「別のフラグ」は、ブロック寸法の条件下で信号通知されて
もよい。
【0233】
2. パレットモードを予測モードの追加候補として追加することが提案される。パレッ
トモードの使用の指示を予測モードとは別個に信号通知する必要がない。
a. 一例において、予測モードは、イントラスライス/Iピクチャ/イントラタイル
グループのためのイントラ、イントラブロックコピー、およびパレットモードを含んでも
よい。
b. 代替的に、予測モードは、イントラスライス/Iピクチャ/イントラタイルグル
ープのためのイントラ、パレットモードを含んでもよい。
c. 一例において、予測モードは、4×4ブロックのためのイントラ、イントラブロ
ックコピー、およびパレットモードを含んでもよい。
d. 一例において、予測モードは、スライス間/および/またはBピクチャ/タイル
グループのためのイントラ、インター、イントラブロックコピー、およびパレットモード
を含んでもよい。
e. 一例において、予測モードは、スライス間/Pおよび/またはBピクチャ/タイ
ルグループのためのイントラ、インター、イントラブロックコピーモードを含んでもよい
。
f. 代替的に、予測モードは、イントラ、インター、イントラブロックコピー、およ
びパレットモードのうちの少なくとも2つを含んでもよい。
g. 一例において、インターモードは、4×4ブロックの予測モードに含まれなくて
もよい。
h. 一例において、ブロックがスキップモードとして符号化されない場合(これはイ
ンターモードの特殊な場合である)、予測モードインデックスは、異なるビンを使用して
コンテキストベースで符号化されてもよい。いくつかの実施形態において、1つ以上のビ
ンの信号通知は、ブロック寸法(例えば、4×4)または予測モードが無効にされる(例
えば、IBCモードが無効にされ、対応するビンがスキップされる)等の条件によってス
キップされてもよい。
i. 一例において、4つのモードの2値化は、イントラ(1)、インター(00)
、IBC(010)、およびパレット(011)として定義される。ここで、3つのビン
が使用され、各ビットは1つのビン値に対応する。
ii. 一例において、4つのモードの2値化は、
図10に示すように、イントラ(
10)、インター(00)、IBC(01)、およびパレット(11)として定義される
。ここで、2つのビンが使用され、各ビットは1つのビン値に対応する。
iii. 一例において、現在のスライスがイントラスライスであり、SPSにおい
てIBCが有効化されていない場合、パレットおよびイントラモードの2値化は、パレッ
ト(1)およびイントラ(0)のように定義される。ここで、1つのビンが使用される。
iv. 一例において、現在のスライスがイントラスライスでなく、SPSにおいて
IBCが有効化されていない場合、パレット、インターおよびイントラモードの2値化は
、intra(1)、inter(00)、およびPalette(01)として定義さ
れる。ここで、2つのビンが使用され、各ビットは1つのビン値に対応する。
v. 一例において、現在のスライスがイントラスライスであり、SPSにおいてI
BCが有効化されている場合、パレットおよびイントラモードの2値化は、IBC(1)
、パレット(01)、イントラ(00)のように定義される。ここで、2つのビンが使用
され、各ビットは1つのビン値に対応する。
vi. 一例において、4つのモードの2値化は、インター(1)、イントラ(01
)、IBC(001)、およびパレット(000)として定義される。ここで、3つのビ
ンが使用され、各ビットは1つのビン値に対応する。
vii. 一例において、4つのモードの2値化は、イントラ(1)、インター(0
1)、IBC(001)、およびパレット(000)として定義される。ここで、3つの
ビンが使用され、各ビットは1つのビン値に対応する。
viii. 一例において、4つのモードの2値化は、
図11に示すように、インタ
ー(0)、イントラ(10)、IBC(111)、およびパレット(110)として定義
される。ここで、3つのビンが使用され、各ビットは1つのビン値に対応する。
【0234】
3. パレット/IBCモードの使用の指示の信号通知は、他のモードの情報に依存して
もよい。
a. 一例において、現在の予測モードがイントラモードであり、IBCモードでない
場合、パレットモードの使用の指示が信号通知されてもよい。
b. 一例において、現在の予測モードがイントラモードであり、パレットモードでな
い場合、IBCモードの使用の指示は、信号通知されてもよい。
【0235】
4. モード情報をどのように信号通知するかは、スライス/ピクチャ/タイルグループ
のタイプに依存してもよい。
a. 一例において、それがI-スライスイントラタイルグループである場合、それがIBCモードであるかどうかを示すように、1つのフラグを信号通知されてもよい。IBCモードでない場合、パレットモードであるかイントラモードであるかどうかを示すように、別のフラグをさらに信号通知されてもよい。
b. 一例において、それがI-スライス/イントラタイルグループである場合、それ
がイントラモードであるかどうかを示すように、1つのフラグを信号通知されてもよい。
イントラモードでない場合、パレットモードであるかIBCモードであるかどうかを示す
ように、別のフラグをさらに信号通知されてもよい。
【0236】
5. パレットモードの使用の指示は、以下の条件に基づいて信号通知および/または導
出されてもよい。
a. 現在のブロックのブロック寸法
i. 一例において、パレットモードの使用の指示は、幅*高さが閾値以下(例えば
、64*64)のブロックに対してのみ信号通知されてもよい。
ii. 一例において、パレットモードの使用の指示は、幅および高さの両方が閾値
(例えば、64)以上であるブロックに対してのみ信号通知されてもよい。
iii. 一例において、パレットモードの使用の指示は、以下のすべての条件が真
であるブロックに対してのみ信号通知されてもよい。
1.幅および/または高さが閾値、例えば16以上である。
2.幅および/または高さが閾値以下(例えば、32または64)
iv. 一例において、パレットモードの使用の指示は、幅が高さに等しいブロック
(即ち、正方形のブロック)に対してのみ信号通知されてもよい。
b. 現在のブロックの予測モード
c. 現在のブロックの量子化パラメータ
d. 近傍のブロックのパレットフラグ
e. 近傍のブロックのイントラブロックコピーフラグ
f. カラーフォーマットの指示(例えば、4:2:0、4:4:4)
g. 分離/二重符号化ツリー構造
h. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
【0237】
6. IBCモードの使用の指示は、以下の条件に基づいて信号通知および/または導出
されてもよい。
a. 現在のブロックのブロック寸法
i. 一例において、IBCモードの使用の指示は、幅または高さの両方が128よ
り小さいブロックに対してのみ信号通知されてもよい。
b. 現在のブロックの予測モード
c. 現在のブロックの量子化パラメータ
d. 近傍のブロックのパレットフラグ
e. 近傍のブロックのイントラブロックコピーフラグ
f. カラーフォーマットの指示(例えば、4:2:0、4:4:4)
g. 分離/二重符号化ツリー構造
h. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
【0238】
7. パレットモードは、非ブロック化決定処理においてイントラモード(例えば、MO
DE_INTRA)として取り扱われてもよい。
a. 一例において、p側またはq側のサンプルがパレットモードで符号化される場合
、境界強度は2に設定される。
b. 一例において、p側およびq側の両方のサンプルがパレットモードで符号化され
る場合、境界強度は2に設定される。
c. 代替的に、パレットモードは、非ブロック化決定処理においてインターモード(
例えば、MODE_INTER)として扱われてもよい。
【0239】
8. パレットモードは、非ブロック化決定処理において、別個のモード(例えば、MO
DE_PLT)として取り扱われてもよい。
a. 一例において、p側およびq側のサンプルがパレットモードで符号化される場合
、境界強度は0に設定される。
i. 代替的に、片側のサンプルがパレットモードで符号化される場合、境界強度は
0に設定される。
b. 一例において、p側のサンプルがIBCモードで符号化され、q側のサンプルが
パレットモードで符号化される場合、境界強度は1に設定され、逆もまた同様である。
c. 一例において、p側のサンプルがイントラモードで符号化され、q側のサンプル
がパレットモードで符号化される場合、境界強度は2に設定され、逆もまた同様である。
【0240】
9. パレットモードは、非ブロック化処理において変換スキップブロックとして扱われ
てもよい。
a. 代替的に、パレットモードは、非ブロック化処理において、BDPCMブロック
として扱われてもよい。
【0241】
10. スライス/タイルグループ/ピクチャレベルフラグに基づいて、1つのブロック
に対するパレットモードの使用の指示を信号通知および/または導出してもよい。
【化8】
b. 一例において、このフラグは、スライス/タイルグループ/ピクチャに対してパ
レットモードが有効化されているかどうかを示す。代替的に、さらに、このようなフラグ
が、パレットモードが無効であることを示す場合、1つのブロックについてのパレットモ
ードの使用の信号通知をスキップし、パレットモードが無効であると推測する。
【0242】
11. スライス/タイルグループ/ピクチャレベルフラグに基づいて、1つのブロック
に対するイントラブロックコピーモード(IBC)の使用の指示を信号通知および/また
は導出されてもよい。
【化9】
b. 一例において、このフラグは、スライス/タイルグループ/ピクチャに対してI
BCモードが有効化されているかどうかを示す。代替的に、さらに、このようなフラグが
、IBCモードが無効であることを示す場合、1つのブロックに対してIBCモードを使
用する信号通知をスキップし、IBCモードが無効であると推測する。
【0243】
12. 1つのパレットエントリに関連付けられたサンプルは、元の/再構成されたサン
プルの内部ビット深度および/またはビット深度とは異なるビット深度を有してもよい。
a. 一例において、1に関連付けられたサンプルがNに等しいビット深度を有し得る
ことを示すと、以下が適用されてもよい。
i. 一例において、Nは整数(例えば、8)であってもよい。
ii. 一例において、Nは、元の/再構成されたサンプルの内部ビット深度および
/またはビット深度よりも大きくてもよい。
iii. 一例において、Nは、元の/再構成されたサンプルの内部ビット深度およ
び/またはビット深度より小さくてもよい。
iv. 一例において、Nは、以下に依存してもよい。
1. 現在のブロックのブロック寸法
2. 現在のブロックの量子化パラメータ
3. カラーフォーマットの指示(例えば、4:2:0、4:4:4)
4. 分離/二重符号化ツリー構造
5. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
6. パレットエントリ
7. 予測パレットエントリ
8. 色要素のインデックス
b. 一例において、複数のパレットエントリに関連付けられたサンプルは、異なるビ
ット深度を有してもよい。
i. 一例において、C0、C1は、現在のパレットにおける2つのパレットエント
リであり、それぞれb0およびb1に等しいビット深度を有してもよい。b0はb1に等
しくなくてもよい。
1. 一例において、b0は、元の/再構成されたサンプルの内部ビット深度およ
び/またはビット深度よりも大きくても/小さくてもよく、且つ/またはb1は、元の/
再構成されたサンプルの内部ビット深度および/またはビット深度より大きくても/小さ
くてもよい。
c. 一例において、パレットモードにおいて、サンプルは、パレットエントリに関連
付けられたサンプルのシフトされた値に従って再構成されてもよい。
i. 一例において、サンプルは、パレットエントリにおけるサンプルをMビットだ
け左シフトすることによって再構成されてもよい。
ii. 一例において、再構成された値は、(C<<<M)+(1<(M-1))で
あり、この場合、Cはパレットエントリである。
iii. 一例において、サンプルは、パレットエントリにおけるサンプルをMビッ
ト右シフトすることによって再構成されてもよい。
iv. 一例において、再構成された値は、clip((C+(1<<(M-1))
)>>M,0,(1<<N)-1)であってもよく、この場合、Cはパレットエントリで
あり、Nは再構成のビット深度である。
v. 代替的に、さらに、一例において、Mは、パレットエントリに関連付けられた
サンプル間のビット深度の差と、再構成されたサンプル/元のサンプルの内部ビット深度
とに依存してもよい。
1. 一例において、Mは、内部ビット深度からパレットエントリにおけるサンプ
ルのビット深度を引いたものに等しくてもよい。
2. 一例において、Mは、パレットエントリにおけるサンプルのビット深度から
内部ビット深度を引いたものに等しくてもよい。
3. 一例において、Mは、元のサンプルのビット深度からパレットエントリにお
けるサンプルのビット深度を引いたものに等しくてもよい。
4. 一例において、Mは、パレットエントリにおけるサンプルのビット深度から
元のサンプルのビット深度を引いたものに等しくてもよい。
5. 一例において、Mは、再構成されたサンプルのビット深度からパレットエン
トリにおけるサンプルのビット深度を引いたものに等しくてもよい。
6. 一例において、Mは、パレットエントリにおけるサンプルのビット深度から
再構成されたサンプルのビット深度を引いたものに等しくてもよい。
vi. 一例において、Mは、整数(例えば、2)であってもよい。
vii. 代替的に、さらに、一例において、Mは、に依存してもよい。
1. 現在のブロックのブロック寸法
2. 現在のブロックの量子化パラメータ
3. カラーフォーマットの指示(例えば、4:2:0、4:4:4)
4. 分離/二重符号化ツリー構造
5. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
6. パレットエントリ
7. 予測パレットエントリ
8. ブロック/ピクチャ/スライス/タイルにおけるサンプル位置
9. 色要素のインデックス
viii. 一例において、パレットエントリにおけるサンプルに基づくルックアッ
プ動作は、サンプルの再構成中に使用してもよい。
1. 一例において、ルックアップテーブルにおける値は、LCUのSPS/VP
S/PPS/ピクチャヘッダ/スライスヘッダ/タイルグループヘッダ/LCU行/グル
ープにおいて信号通知されてもよい。
2. 一例において、ルックアップテーブルにおける値は、LCUのSPS/VP
S/PPS/ピクチャヘッダ/スライスヘッダ/タイルグループヘッダ/LCU行/グル
ープにおいて推測されてもよい。
【0244】
13. パレット符号化ブロックの信号通知された/導出された量子化パラメータ(QP
)は、クリップされるなど、エスケープ画素/サンプルの導出に使用される前に、最初に
修正されてもよい。
a. 一例において、パレット符号化ブロックに適用されるQP範囲は、変換スキップ
モードおよび/またはBDPCMモードと同様に扱われてもよい。
b. 一例において、パレット符号化ブロックに適用されるQPは、max(Qp,4
+T)に修正されてもよく、この場合、Tは、整数値であり、Qpは、このブロックのた
めの信号通知されたまたは導出された量子化パラメータである。
i. 一例において、Tは、予め規定された閾値であってもよい。
【化10】
【0245】
14. エスケープサンプル/シンボルをどのように符号化するかは、量子交換バイパス
が有効化されるかどうかにかかわらず、統一されてもよい。
a. 一例において、エスケープサンプルは、固定長で信号通知されてもよい。
b. 一例において、エスケープサンプルは、Nビットを使用して固定長で信号通知さ
れてもよい。
i. 一例において、Nは、整数(例えば、8または10)であってもよく、下記に
依存してもよい。
1. LCUのSPS/VPS/PPS/ピクチャヘッダ/スライスヘッダ/タイ
ルグループヘッダ/LCU行/グループにおいて信号通知されるメッセージ
2. 内部ビット深度
3. 入力ビット深度
4. 現在のブロックのブロック寸法
5. 現在のブロックの量子化パラメータ
6. カラーフォーマットの指示(例えば、4:2:0、4:4:4)
7. 分離/二重符号化ツリー構造
8. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
c. 一例において、1つのエスケープ画素/サンプルを信号通知するための符号長は
、内部ビット深度に依存してもよい。
i. 代替的に、1つのエスケープ画素/サンプルを信号通知するためのコード長は
、入力ビット深度に依存してもよい。
d. 一例において、1つのエスケープ画素/サンプルを信号通知するための符号長は
、量子化パラメータに依存してもよい。
i. 一例において、1つのエスケープ画素/サンプルを信号通知するためのコード
長は、f(Qp)でもよい。
1. 一例において、関数fは、(内部ビット深度-(Qp-4)/6)として定
義されてもよい。
【0246】
15. パレット符号化ブロックおよび非パレット符号化ブロックのための量子化および
/または逆量子化処理は、異なる方法で定義されてもよい。
a. 一例において、変換係数または残差のための量子化処理を使用する代わりに、右
ビットシフトを使用して、エスケープサンプルを量子化してもよい。
b. 一例において、変換係数または残差のための逆量子化処理を使用する代わりに、
左ビットシフトを使用して、エスケープサンプルを逆量子化してもよい。
c. エンコーダ側において、以下を適用してもよい。
i. 一例において、エスケープ画素/サンプル値は、f(p,Qp)として信号通
知されてもよく、この場合、pは、画素/サンプル値である。
ii. 一例において、関数fは、p>>(((Qp-4)/6)として定義されて
もよく、この場合、pは、画素/サンプル値であり、Qpは、量子化パラメータである。
iii. 一例において、エスケープ画素/サンプル値は、p>>Nとして信号通知
されてもよく、この場合、pは、画素/サンプル値である。
1. 一例において、Nは、整数(例えば、2)であってもよく、以下に依存して
もよい。
a) LCUのSPS/VPS/PPS/ピクチャヘッダ/スライスヘッダ/タ
イルグループヘッダ/LCU行/グループにおいて信号通知されるメッセージ
b) 内部ビット深度
c) 入力ビット深度
d) 現在のブロックのブロック寸法
e) 現在のブロックの量子化パラメータ
f) カラーフォーマットの指示(例えば、4:2:0、4:4:4)
g) 分離/二重符号化ツリー構造
h) スライス/タイルグループのタイプおよび/またはピクチャのタイプ
d. デコーダ側において、以下を適用してもよい。
i. 一例において、エスケープ画素/サンプル値は、f(bd,p,Qp)として
信号通知されてもよい。
1. 一例において、関数fは、clip(0,(1<<(bd-(Qp-4)/
6))-1,(p+(1<<(bd-1)))>>((Qp-4)/6))として定義さ
れてもよい。
ii. 一例において、エスケープ画素/サンプル値は、f(p,Qp)として再構
成されてもよく、この場合、pは、復号化されたエスケープ画素/サンプル値である。
1. 一例において、fは、p<((Qp-4)/6)として定義されてもよい。
iii. 一例において、エスケープ画素/サンプル値は、f(bd,p,Qp)と
して再構成されてもよく、この場合、pは、復号化されたエスケープ画素/サンプル値で
ある。
1. 一例において、関数clipは、clip(0,(1<<bd)-1,p<
<((Qp-4)/6))として定義されてもよい。
iv. 上記の例において、クリップ関数clip(a,i,b)は、(i<a?a
:(i>b?b:i))として定義されてもよい。
v. 上記の例において、クリップ関数clip(a,i,b)は、(i<=a?a
:(i>=b?b:i))として定義されてもよい。
vi. 上記例において、pは画素/サンプル値であり、bdは内部ビット深度また
は入力ビット深度であり、Qpは量子化パラメータである。
【0247】
16. パレット符号化ブロックは、最大確率モード(MPM)のリスト構築処理中、1
つのイントラブロック(例えば、MODE_INTRA)として扱われてもよい。
a. 一例において、MPMリストの構築中に近傍(隣接または非隣接)ブロックのイ
ントラモードをフェッチするとき、近傍のブロック(例えば、左および/または上)がパ
レットモードで符号化されている場合、それをデフォルトモードの従来のイントラ符号化
されたブロック(例えば、MODE_INTRA)として扱ってもよい。
i. 一例において、デフォルトモードは、DC/PLANAR/VER/HORモ
ードであってもよい。
ii. 一例において、デフォルトモードは、1つのイントラ予測モードであっても
よい。
iii. 一例において、デフォルトモードは、DPS/SPS/VPS/PPS/
APS/ピクチャヘッダ/スライスヘッダ/タイルグループヘッダ/最大符号化ユニット
(LCU)/符号化ユニット(CU)/LCU行/LCUグループ/TU/PUブロック
/映像符号化ユニットにおいて信号通知されてもよい。
【0248】
17. パレット符号化ブロックは、最大確率モード(MPM)のリスト構築処理中、非
イントラブロックとして扱われてもよい(例えば、MODE_PLTに等しい予測モード
を有するブロックとして扱われてもよい)。
a. 一例において、MPMリストの構築中に近傍のブロックのイントラモードをフェ
ッチするとき、1つの近傍のブロック(例えば、左および/または上)がパレットモード
で符号化されている場合、それは、インターモードで符号化されたものと同様にまたは類
似した方法で取り扱われてもよい。
b. 一例において、MPMリストの構築中に近傍のブロックのイントラモードをフェ
ッチするとき、1つの近傍のブロック(例えば、左および/または上)がパレットモード
で符号化されている場合、それをIBCモードで符号化されたものと同様にまたは類似し
た方法で取り扱われてもよい。
【0249】
18. DMモードで符号化されたクロマブロックに対応するパレットモードで符号化さ
れた輝度ブロックは、デフォルトのイントラ予測モードを有すると解釈されてもよい。
a. 一例において、パレットモードで符号化された対応する輝度ブロックは、クロマ
ブロックがDMモードで符号化される場合、イントラブロック(例えば、MODE_IN
TRA)またはパレットブロック(例えば、MODE_PLT)として扱われてもよい。
b. 一例において、デフォルト予測モードは、DC/PLANAR/VER/HOR
モードであってもよい。
c. 一例において、デフォルト予測モードは、1つのイントラ予測モードであっても
よい。
d. 一例において、デフォルト予測モードは、DPS/SPS/VPS/PPS/A
PS/ピクチャヘッダ/スライスヘッダ/タイルグループヘッダ/最大符号化ユニット(
LCU)/符号化ユニット(CU)/LCU行/LCUグループ/TU/PUブロック/
映像符号化ユニットにおいて信号通知されてもよい。
【0250】
19. パレット符号化ブロックは、履歴に基づく動きベクトル予測(HMVP)、マー
ジ(MERGE)および/または高度動きベクトル予測(AMVP)モードのリスト構築
中、利用不可能なブロックとして扱われてもよい。
a. 一例において、利用不可能なブロックは、動き情報を有さないブロックを意味し
てもよく、またはその動き情報を他のブロックの予測として使用することができない。
b. 一例において、パレットモードで符号化されたブロックは、HMVP、MERG
Eおよび/またはAMVPモードにおけるリスト構築の過程において、イントラブロック
(例えば、MODE_INTRA)またはパレットブロック(例えば、MODE_PLT
)として扱われてもよい。
i. 代替的に、一例において、HMVP、MERGEおよび/またはAMVPリス
トの構築中に近傍のブロックの動き情報をフェッチする場合、パレットモードで符号化さ
れた近傍のブロックを無効な参照インデックスを有するブロックとして扱われてもよい。
ii. 代替的に、一例において、HMVP、MERGEおよび/またはAMVPリ
ストの構築中に近傍のブロックの動き情報をフェッチする場合、パレットモードで符号化
された近傍のブロックを、参照インデックスが0であるインターブロックとして扱われて
もよい。
iii. 代替的に、一例において、HMVP、MERGEおよび/またはAMVP
モードのリスト構築中に、近傍のブロックの動き情報をフェッチする場合、パレットモー
ドで符号化された近傍のブロックを、動きベクトルがゼロのインターブロックとして扱っ
てもよい。
【0251】
20. パレットモードで符号化されたブロックをどのように処理するか(例えば、上述
した方法を適用するか否か、および/またはどのように適用するか)は、以下に基づいて
もよい。
a. 映像コンテンツ(例えば、スクリーンコンテンツまたは自然コンテンツ)
b. 一例において、デフォルトモードは、DPS/SPS/VPS/PPS/APS
/ピクチャヘッダ/スライスヘッダ/タイルグループヘッダ/最大符号化ユニット(LC
U)/符号化ユニット(CU)/LCU行/LCUグループ/TU/PUブロック/映像
符号化ユニットにおいて信号通知されてもよい。
c. CU/PU/TU/ブロック/映像符号化ユニットの位置
d. 現在のブロックおよび/またはその近傍のブロックのブロック寸法
e. 現在のブロックおよび/またはその近傍のブロックのブロック形状
f. カラーフォーマットの指示(例えば、4:2:0、4:4:4、RGB、YUV
等)
g. 符号化ツリー構造(例えば、デュアルツリーまたはシングルツリー)
h. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
i. 色要素(例えば、輝度要素および/またはクロマ要素にのみ適用されてもよい)
。
j. 時間層ID
k. 標準のプロファイル/レベル/層
【0252】
21. パレット符号化ブロックのためのコンテキスト符号化ビンは、ある範囲内に含ま
れるように制限されてもよい。
a. 一例において、カウンタは、コンテキスト符号化されたビンの数を記録するよう
に、1つのブロックに割り当てられる。カウンタが閾値を超える場合、コンテキスト符号
化を使用する代わりにバイパス符号化が適用される。
i. 代替的に、NumColorCompカウンタを割り当てて、各色要素に対し
てコンテキスト符号化されたビンの数を記録してもよい。NumColorCompは、
1つのブロックに符号化される色要素の数である(例えば、YUVフォーマットの1つの
CUの場合、NumColorCompは3に設定される)。
ii. 代替的に、カウンタをゼロに初期化してもよく、コンテキストで1つのビン
を符号化した後、カウンタを1だけ増加させる。
b. 代替的に、カウンタは、ゼロよりも大きいある値(例えば、W*H*K)で初期
化されてもよく、コンテキストで1つのビンを符号化した後、カウンタは、1だけ減算さ
れる。カウンタがT以下である場合、コンテキスト符号化を使用する代わりにバイパス符
号化が適用される。
i. 一例において、Tは、0または1に設定される。
ii. 一例において、Tは、復号化された情報または符号化パスの数等に従って設
定される。
c. 一例において、パレット符号化ブロックは、コンテキスト符号化ビンの観点から
、TS符号化ブロックまたは非TS符号化ブロックと比較して、同じまたは異なる閾値を
有してもよい。
i. 一例において、パレット符号化ブロックのためのコンテキスト符号化ビンの数
は、(W*H*T)に設定されてもよく、この場合、WおよびHは、それぞれ1つのブロ
ックの幅および高さであり、Tは整数である。一例において、Tは、TS符号化ブロック
に使用されるものと同じであるように設定され、例えば、1.75または2である。
ii. 一例において、パレット符号化ブロックのコンテキスト符号化ビンの数は、
(W*H*NumColorComp*T)に設定されてもよく、この場合、WおよびH
は、それぞれ1つのブロックの幅および高さであり、NumColorCompは、1つ
のブロックでコード化される色要素の数(例えば、YUVフォーマットの1つのCUであ
り、NumColorCompは3に設定される)であり、Tは、整数である。一例にお
いて、Tは、TS符号化ブロックに使用されるものと同じであるように設定され、例えば
、1.75または2である。
d. 一例において、パレット符号化ブロックの閾値は、コンテキスト符号化ビンの観
点から、TS符号化ブロックまたは非TS符号化ブロックよりも小さくてもよい。
e. 一例において、パレット符号化ブロックの閾値は、コンテキスト符号化ビン(c
ontext coded bin)の観点から、TS符号化ブロックまたは非TS符号
化ブロックよりも大きくてもよい。
【0253】
22. パレット符号化ブロックは、CIIPモードにおいて近傍のイントラブロックを
統計する過程において、非イントラブロックとして扱われる(例えば、MODE_PLT
に等しい予測モードを有するブロックとして扱われる)。
a. 一例において、CIIPモードにおいて近傍のイントラブロックを数える間に近
傍のブロックのイントラモードをフェッチするとき、1つの近傍のブロック(例えば、左
および/または上)がパレットモードで符号化されている場合、それはインターモードで
符号化されたものと同様にまたは類似した方法で取り扱われてもよい。
b. 一例において、CIIPモードにおいて近傍のイントラブロックを数える間に近
傍のブロックのイントラモードをフェッチするとき、1つの近傍のブロック(例えば、左
および/または上)がパレットモードで符号化されている場合、それはIBCモードで符
号化されたものと同様にまたは類似した方法で取り扱われてもよい。
c. 代替的に、パレット符号化ブロックは、CIIPモードにおいて近傍のイントラ
ブロックを統計する過程において、イントラブロックとして扱われてもよい。
【0254】
23. パレット符号化サンプルのための前置および/または後置フィルタリング処理を
スキップすることが提案される。
a. 一例において、パレット符号化サンプルはデブロックされなくてもよい。
b. 一例において、パレット符号化サンプルは、SAO処理においてオフセットを補
償されなくてもよい。
c. 一例において、パレット符号化サンプルは、ALF処理においてフィルタリング
されなくてもよい。
i. 一例において、ALF処理における分類は、パレット符号化サンプルをスキッ
プしてもよい。
d. 一例において、LMCSは、パレット符号化サンプルのために無効化されてもよ
い。
【0255】
24. パレットモードにおいて、より多くの走査順序を追加することが提案される。
a. 一例において、次のように定義される逆水平横断走査順序を使用してもよい。
i. 一例において、奇数行の走査方向は、左から右であってもよい。
ii. 一例において、偶数行の走査方向は、右から左であってもよい。
iii. 一例において、4×4ブロックの走査順序は、
図22に示すとおりであっ
てもよい。
b. 一例において、以下のように定義される逆垂直横断走査順序を使用してもよい。
i. 一例において、奇数行の走査方向は、上から下へ延びてもよい。
ii. 一例において、偶数行の走査方向は、下から上であってもよい。
iii. 一例において、4×4ブロックの走査順序は、
図23に示すとおりであっ
てもよい。
【0256】
25. 許容される走査順序の組み合わせは、ブロックの形状に依存してもよい。
a. 一例において、1つのブロックの幅と高さとの間の比が閾値よりも大きい場合、
水平トラバース走査順序および逆水平横断走査順序のみを適用してもよい。
i. 一例において、閾値は1に等しい。
ii. 一例において、閾値は4に等しい。
b. 一例において、1つのブロックの高さと幅との間の比が閾値よりも大きい場合、
垂直横断および逆垂直横断走査順序のみを適用してもよい。
i. 一例において、閾値は1に等しい。
ii. 一例において、閾値は4に等しい。
【0257】
26. QR-BDPCM処理において、1つのイントラ予測方向および/または1つの
走査方向のみを許可することが提案される。
a. 一例において、高さより大きい幅を有するブロックでは、垂直方向のみが許容さ
れる。
b. 一例において、幅が高さより小さいブロックでは、水平方向のみが許容される。
c. 一例において、QR-BDPCMの方向の指示は、非正方形ブロックについて推
測してもよい。
i. 一例において、さらに、QR-BDPCMの方向の指示は、幅が高さよりも大
きいブロックの場合、垂直方向に推測されてもよい。
ii. 一例において、さらに、QR-BDPCMの方向の指示は、幅が高さより小
さいブロックの場合、水平方向に推測されてもよい。
【0258】
27. ブレット24、25、および26における方法は、w*Th≧hまたはh*Th
≧wを有するブロックにのみ適用されてもよく、この場合、wおよびhは、それぞれブロ
ックの幅および高さであり、Thは閾値である。
a. 一例において、Thは整数(例えば、4または8)であり、以下に基づいてもよ
い。
i. 映像コンテンツ(例えば、スクリーンコンテンツまたは自然コンテンツ)
ii. 一例において、デフォルトモードは、DPS/SPS/VPS/PPS/A
PS/ピクチャヘッダ/スライスヘッダ/タイルグループヘッダ/最大符号化ユニット(
LCU)/符号化ユニット(CU)/LCU行/LCUグループ/TU/PUブロック/
映像符号化ユニットにおいて信号通知されてもよい。
iii. CU/PU/TU/ブロック/映像符号化ユニットの位置
iv. 現在のブロックおよび/またはその近傍のブロックのブロック寸法
v. 現在のブロックおよび/またはその近傍のブロックのブロック形状
vi. カラーフォーマットの指示(例えば、4:2:0、4:4:4、RGB、Y
UV等)
vii. 符号化ツリー構造(例えば、デュアルツリーまたはシングルツリー)
viii. スライス/タイルグループのタイプおよび/またはピクチャのタイプ
ix. 色要素(例えば、輝度要素および/またはクロマ要素にのみ適用されてもよ
い)。
x. 時間層ID
xi. 標準のプロファイル/レベル/層
【0259】
5. 追加の実施形態
【0260】
5.1 実施形態1
【0261】
この章は、映像のビットストリーム表現がベースラインビットストリーム構文と比較し
て変更され得る例示的な実施形態を示す。この変更は、太字のイタリック体のテキスト入
力項目を使用して強調表示されている。
【0262】
【0263】
【0264】
【0265】
【0266】
【0267】
【0268】
【0269】
【0270】
【0271】
【0272】
【0273】
【0274】
【0275】
【0276】
【0277】
【0278】
【0279】
【0280】
5.2 実施形態♯2
【0281】
本実施形態では、modeTypeについて説明する。新規に追加されたテキストは、
太字のイタリック体で示されている。
【0282】
【0283】
5.3 実施形態#3
【0284】
本実施形態では、符号化ユニットの構文について説明する。本実施形態において、pr
ed_mode_plt_flagは、pred_mode_ibc_flagの後に信
号通知される。新規に追加されたテキストは太字のイタリック体で表され、削除されたテ
キストには“[[]]”の印が付けられる。
【0285】
【0286】
5.4 実施形態#4
【0287】
本実施形態では、符号化ユニットの構文について説明する。本実施形態では、pred
_mode_ibc_flagの後にpred_mode_plt_flagが信号通知
され、現在の予測モードがMODE_INTRAの場合にのみpred_mode_pl
t_flagが信号通知される。新規に追加されたテキストは太字のイタリック体で表さ
れ、削除されたテキストには“[[]]”の印が付けられる。
【0288】
【0289】
5.5 実施形態#5
【0290】
本実施形態では、符号化ユニットの構文について説明する。本実施形態では、pred
_mode_ibc_flagは、pred_mode_plt_flagの後に信号通
知される。新規に追加されたテキストは太字のイタリック体で表され、削除されたテキス
トには“[[]]”の印が付けられる。
【0291】
【0292】
5.6 実施形態#6
【0293】
本実施形態では、符号化ユニットの構文について説明する。本実施形態では、pred
_mode_plt_flagの後にpred_mode_ibc_flagが信号通知
され、現在の予測モードがMODE_INTRAの場合にのみpred_mode_pl
t_flagが信号通知される。新規に追加されたテキストは太字のイタリック体で表さ
れ、削除されたテキストには“[[]]”の印が付けられる。
【0294】
【0295】
5.7 実施形態#7
【0296】
本実施形態では、符号化ユニットの構文について説明する。本実施形態では、予測モー
ドがMODE_INTRAであるとき、pred_mode_plt_flagおよびp
red_mode_ibc_flagが信号通知される。新規に追加されたテキストは太
字のイタリック体で表され、削除されたテキストには“[[]]”の印が付けられる。
【0297】
【0298】
5.8 実施形態#8
【0299】
本実施形態では、符号化ユニットの構文について説明する。本実施形態において、pr
ed_mode_plt_flagおよびpred_mode_ibc_flagは、予
測モードがMODE_INTRAでない場合に信号通知される。新規に追加されたテキス
トは太字のイタリック体で表され、削除されたテキストには“[[]]”の印が付けられ
る。
【0300】
【0301】
5.9 実施形態#9
【0302】
本実施形態では、符号化ユニットの構文について説明する。本実施形態において、予測
モードがMODE_INTERであるとき、pred_mode_plt_flagおよ
びpred_mode_ibc_flagが信号通知される。新規に追加されたテキスト
は太字のイタリック体で表され、削除されたテキストには“[[]]”の印が付けられる
。
【0303】
【0304】
5.10 実施形態#10
【0305】
本実施形態では、pred_mode_plt_flagの意味を説明する。新規に追
加されたテキストは、太字のイタリック体で示されている。
【0306】
【0307】
5.11 実施形態#11
【0308】
本実施形態では、pred_mode_plt_flagの意味を説明する。新規に追
加されたテキストは、太字のイタリック体で示されている。
【0309】
【0310】
5.12 実施形態#12
【0311】
本実施形態では、境界強度の導出について説明する。新規に追加されたテキストは、太
字のイタリック体で示されている。
【0312】
8.8.3.5 境界フィルタリング強度の導出処理
【0313】
この処理への入力は以下の通りである。
1つのピクチャサンプルアレイrecPicture、
現在のピクチャの左上のサンプルに対する現在の符号化ブロックの左上のサンプルを規定
する位置(xCb,yCb)、現在の符号化ブロックの幅を規定する変数nCbW、現在
の符号化ブロックの高さを規定する変数nCbH、垂直(EDGE_VER)エッジまた
は水平(EDGE_HOR)エッジのいずれをフィルタリングするかを規定する変数ed
geType、現在の符号化ブロックの色要素を規定する変数cIdx、2次元(nCb
W)x(nCbH)配列のedgeFlags。
【0314】
この処理の出力は、境界フィルタリング強度を規定する2次元(nCbW)×(nCb
H)アレイbSである。
...
【0315】
変数bS[xDi][yDj]は、次のように導出される。
cIdxが0に等しく、サンプルp0およびq0の両方が、intra_bdpcm_
flagが1に等しい符号化ブロックに含まれている場合、bS[xDi][yDj]は
、0に等しく設定される。
あるいは、サンプルp0またはq0が、イントラ予測モードで符号化された符号化ユニ
ットの符号化ブロックにある場合には、bS[xDi][yDj]は、2に等しく設定さ
れる。
あるいは、ブロックエッジも変換ブロックエッジであり、サンプルp0またはq0が、
ciip_flagが1に等しい符号化ブロックにある場合、bS[xDi][yDj]
は、2に等しく設定される。
あるいは、ブロックエッジが変換ブロックエッジでもあり、サンプルp0またはq0が
、1つ以上の非ゼロ変換係数レベルを含む変換イントラブロックにある場合、bS[xD
i][yDj]は、1に等しく設定される。
【0316】
【0317】
あるいは、サンプルp0を含む符号化サブブロックの予測モードが、サンプルq0を含
む符号化サブブロックの予測モードと異なる場合、bS[xDi][yDj]は、1に等
しく設定される。
あるいは、cIdxが0であり、且つ、以下の条件の1つ以上が真である場合、bS[
xDi][yDj]は、1に等しく設定される。
サンプルp0を含む符号化サブブロックおよびサンプルq0を含む符号化サブブロック
は、いずれもIBC予測モードで符号化され、2つの符号化サブブロックの予測に用いら
れる動きベクトルの水平または垂直要素の絶対差は、1/4輝度サンプル単位で4以上で
ある。
サンプルp0を含む符号化サブブロックの予測のために、サンプルq0を含む符号化サ
ブブロックの予測とは異なる参照ピクチャまたは異なる数の動きベクトルが使用される。
【0318】
注1 - 2つの符号化サブロックに使用される参照ピクチャが同じであるかまたは異
なるかは、予測を形成するのに参照ピクチャリスト0へのインデックスを使用するか、ま
たは参照ピクチャリスト1へのインデックスを使用して形成するかに関わらず、且つ参照
ピクチャリスト内のインデックス位置が異なるかどうかに関わらず、どのピクチャが参照
されるかによってのみに基づいて判定される。
【0319】
注2 - (xSb,ySb)を含む左上のサンプルを有する符号化サブブロックの予
測に使用される動きベクトルの数は、PredFlagL0[xSb][ySb]+Pr
edFlagL1[xSb][ySb]に等しい。
【0320】
1つの動きベクトルは、サンプルp0を含む符号化サブブロックを予測するために使用
され、1つの動きベクトルは、サンプルq0を含む符号化サブブロックを予測するために
使用され、使用される動きベクトルの水平または垂直要素の絶対差は、1/4輝度サンプ
ル単位で4以上である。2つの動きベクトルおよび2つの異なる参照ピクチャを使用して
、サンプルp0を含む符号化サブブロックを予測し、同じ2つの参照ピクチャの2つの動
きベクトルを使用して、サンプルq0を含む符号化サブブロックを予測し、同じ参照ピク
チャの2つの符号化サブブロックの予測に使用される2つの動きベクトルの水平または垂
直要素の絶対差は、1/4輝度サンプル単位で4以上である。
同じ参照ピクチャの2つの動きベクトルを使用して、サンプルp0を含む符号化サブブ
ロックを予測し、同じ参照ピクチャの2つの動きベクトルを使用して、サンプルq0を含
む符号化サブブロックを予測し、以下の条件の両方が成り立つ。
2つの符号化サブブロックの予測に使用されるリスト0の動きベクトルの水平または垂
直要素の間の絶対差は、1/4輝度サンプルにおいて4以上である、または2つの符号化
サブブロックの予測に使用されるリスト1の動きベクトルの水平または垂直要素の間の絶
対差は、4分の1輝度サンプル単位で4以上である。
サンプルp0を含む符号化サブブロックの予測に使用されるリスト0動きベクトルの水
平または垂直要素と、サンプルq0を含む符号化サブブロックの予測に使用されるリスト
1動きベクトルとの間の絶対差は、1/4輝度サンプル単位で4以上であるか、またはサ
ンプルp0を含む符号化サブブロックの予測に使用されるリスト1動きベクトルの水平ま
たは垂直要素と、サンプルq0を含む符号化サブブロックの予測に使用されるリスト0動
きベクトルとの間の絶対差は、1/4輝度サンプル単位で4以上である。
あるいは、変数bS[xDi][yDj]を0に設定する。
【0321】
5.13a 実施形態#13a
【0322】
本実施形態では、境界強度の導出について説明する。新規に追加されたテキストは、太
字のイタリック体で示されている。
【0323】
8.8.3.5 境界フィルタリング強度の導出処理
【0324】
この処理への入力は以下の通りである。
1つのピクチャサンプルアレイrecPicture、
現在のピクチャの左上のサンプルに対する現在の符号化ブロックの左上のサンプルを規定
する位置(xCb,yCb)現在の符号化ブロックの幅を規定する変数nCbW、現在の
符号化ブロックの高さを規定する変数nCbH、垂直(EDGE_VER)エッジまたは
水平(EDGE_HOR)エッジのいずれをフィルタリングするかを規定する変数edg
eType、- 現在の符号化ブロックの色要素を規定する変数cIdx、2次元(nC
bW)×(nCbH)配列のedgeFlags。
【0325】
この処理の出力は、境界フィルタリング強度を規定する2次元(nCbW)×(nCb
H)アレイbSである。
...
【0326】
変数bS[xDi][yDj]は、次のように導出される。
cIdxが0に等しく、サンプルp0およびq0の両方が、intra_bdpcm_
flagが1に等しい符号化ブロックに含まれている場合、bS[xDi][yDj]は
、0に等しく設定される。
あるいは、サンプルp0またはq0が、イントラ予測モードで符号化された符号化ユニ
ットの符号化ブロックにある場合には、bS[xDi][yDj]は、2に等しく設定さ
れる。
あるいは、ブロックエッジも変換ブロックエッジであり、サンプルp0またはq0が、
ciip_flagが1に等しい符号化ブロックにある場合、bS[xDi][yDj]
は、2に等しく設定される。
あるいは、ブロックエッジが変換ブロックエッジでもあり、サンプルp0またはq0が
、1つ以上の非ゼロ変換係数レベルを含む変換イントラブロックにある場合、bS[xD
i][yDj]は、1に等しく設定される。
【0327】
【0328】
あるいは、サンプルp0を含む符号化サブブロックの予測モードが、サンプルq0を含
む符号化サブブロックの予測モードと異なる場合、bS[xDi][yDj]は、1に等
しく設定される。
あるいは、cIdxが0であり、且つ、以下の条件の1つ以上が真である場合、bS[
xDi][yDj]は、1に等しく設定される。
サンプルp0を含む符号化サブブロックおよびサンプルq0を含む符号化サブブロック
は、いずれもIBC予測モードで符号化され、2つの符号化サブブロックの予測に用いら
れる動きベクトルの水平または垂直要素の絶対差は、1/4輝度サンプル単位で4以上で
ある。
サンプルp0を含む符号化サブブロックの予測のために、サンプルq0を含む符号化サ
ブブロックの予測とは異なる参照ピクチャまたは異なる数の動きベクトルが使用される。
【0329】
注1 - 2つの符号化サブロックに使用される参照ピクチャが同じであるかまたは異
なるかは、予測を形成するのに参照ピクチャリスト0へのインデックスを使用するか、ま
たは参照ピクチャリスト1へのインデックスを使用して形成するかに関わらず、且つ参照
ピクチャリスト内のインデックス位置が異なるかどうかに関わらず、どのピクチャが参照
されるかによってのみに基づいて判定される。
【0330】
注2 - (xSb,ySb)を含む左上のサンプルを有する符号化サブブロックの予
測に使用される動きベクトルの数は、PredFlagL0[xSb][ySb]+Pr
edFlagL1[xSb][ySb]に等しい。
【0331】
1つの動きベクトルは、サンプルp0を含む符号化サブブロックを予測するために使用
され、1つの動きベクトルは、サンプルq0を含む符号化サブブロックを予測するために
使用され、使用される動きベクトルの水平または垂直要素の絶対差は、1/4輝度サンプ
ル単位で4以上である。
2つの動きベクトルおよび2つの異なる参照ピクチャを使用して、サンプルp0を含む
符号化サブブロックを予測し、同じ2つの参照ピクチャの2つの動きベクトルを使用して
、サンプルq0を含む符号化サブブロックを予測し、同じ参照ピクチャの2つの符号化サ
ブブロックの予測に使用される2つの動きベクトルの水平または垂直要素の絶対差は、1
/4輝度サンプル単位で4以上である。
同じ参照ピクチャの2つの動きベクトルを使用して、サンプルp0を含む符号化サブブ
ロックを予測し、同じ参照ピクチャの2つの動きベクトルを使用して、サンプルq0を含
む符号化サブブロックを予測し、以下の条件の両方が成り立つ。
2つの符号化サブブロックの予測に使用されるリスト0の動きベクトルの水平または垂
直要素の間の絶対差は、1/4輝度サンプルにおいて4以上である、または2つの符号化
サブブロックの予測に使用されるリスト1の動きベクトルの水平または垂直要素の間の絶
対差は、4分の1輝度サンプル単位で4以上である。
サンプルp0を含む符号化サブブロックの予測に使用されるリスト0動きベクトルの水
平または垂直要素と、サンプルq0を含む符号化サブブロックの予測に使用されるリスト
1動きベクトルとの間の絶対差は、1/4輝度サンプル単位で4以上であるか、またはサ
ンプルp0を含む符号化サブブロックの予測に使用されるリスト1動きベクトルの水平ま
たは垂直要素と、サンプルq0を含む符号化サブブロックの予測に使用されるリスト0動
きベクトルとの間の絶対差は、1/4輝度サンプル単位で4以上である。
あるいは、変数bS[xDi][yDj]を0に設定する。
【0332】
5.13b 実施形態#13b
【0333】
本実施形態では、エスケープサンプルの符号化および再構成について説明する。新規に
追加されたテキストは太字のイタリック体で表され、削除されたテキストには「[[]]
」の印が付けられる。
【0334】
【0335】
【0336】
【0337】
[[The list levelScale[]は、k=0..5.]]でleve
lScale[k]={40,45,51,57,64,72}、として規定される。
以下が適用される
[[tmpVal=(PaletteEscapeVal[cIdx][xCb+xL
][yCb+yL]*levelScale[qP%6])<<(qP/6)+32)>
>6(8-77)
recSamples[x][y]=Clip3(0,(1<<bitDepth
)-1,tmpVal) (8-78)]
【0338】
【0339】
【0340】
【0341】
5.14 実施形態#14
【0342】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには「
[[]]」の印が付けられる。
【0343】
8.4.5.3 パレットモードの復号化処理
【0344】
この処理への入力は以下の通りである。
- 現在のピクチャの左上の輝度サンプルに対する現在のブロックの左上のサンプルを規
定する位置(xCb,yCb)、
- 変数startCompは、パレットテーブルの最初の色要素を規定し、- 現在の
ブロックの色要素を規定する変数cIdx、
- 現在のブロックの幅および高さをそれぞれ規定する2つの変数nCbWおよびnCb
H。
【0345】
この処理の出力は、配列recSamples[x][y]であり、x=0..nCb
W-1,y=0..nCbH-1は、ブロックの再構成サンプル値を規定する。
【0346】
cIdxの値に基づいて、変数nSubWidthおよびnSubHeightは、以
下のように導出される。
- cIdxが0に等しい場合、nSubWidthは1に設定され、nSubHeig
htは1に設定される。
- あるいは、nSubWidthをSubWidthCに設定し、nSubHeigh
tをSubHeightCに設定する。
【0347】
位置(xCb,yCb)にある再構成サンプル配列recSamplesの(nCbW
xnCbH)ブロックは、x=0..nCTbW-1およびy=0..nCbH-1であ
るrecSamples[x][y]で表され、0~nCbW-1の範囲の各xと0~n
CbH-1の範囲の各yに対するrecSamples[x][y]の値は、以下のよう
に導出される。
- 変数xLおよびyLは、以下のように導出される。
xL=palette_transpose_flag ? x*nSubHeigh
t:x*nSubWidth (8-234)
yL=palette_transpose_flag ? y*nSubWidth
:y*nSubHeight (8-235)
- 変数bIsEscapeSampleは、以下のように導出される。
- PaletteIndexMap[xCb+xL][yCb+yL]がMaxPa
letteIndexに等しく、palette_escape_val_presen
t_flagが1に等しい場合、bIsEscapeSampleは1 に設定される。
- あるいは、bIsEscapeSampleを0に設定する。
- bIsEscapeSampleが0に等しい場合、以下が適用される。
recSamples[x][y]=CurrentPaletteEntries[
cIdx][PaletteIndexMap[xCb+xL][yCb+yL]]
(8-236)
- あるいは、cu_transquant_bypass_flagが1に等しい場合
、以下が適用される。
recSamples[x][y]=PaletteEscapeVal[cIdx]
[xCb+xL][yCb+yL](8-237)
- あるいは、(bIsEscapeSampleが1に等しく、cu_transqu
ant_bypass_flagが0に等しい場合)、以下の順序付けられたステップが
適用される。
【0348】
1. 第8.7.1項で規定される量子化パラメータの導出処理は、現在のピクチャ
の左上サンプルに対する現在のブロックの左上サンプルを規定する位置(xCb,yCb
)を使用して呼び出される。
[Ed.(BB):QPは、イントラCU復号化処理の最初に既に導出されているの
で、この従属項内でそれらを再び導出する必要はない。これはHEVC v4 SCCに
あるように思われるが、このような冗長性は排除できる。ご確認のこと。]
【0349】
【0350】
3. 変数bitDepthは、以下のように導出される。
bitDepth=(cIdx==0)?BitDepthY:BitDepth
C
(8-241)
【0351】
4. list levelScale[]は、k=0..5の時、levelSc
ale[k]={40,45,51,57,64,72}として規定される
[Ed.(BB):非パレットCUの場合、levelScaleはrectNon
TsFlagに依存する。ここでも適用されますか?]
【0352】
5. 以下が適用される
tmpVal=(PaletteEscapeVal[cIdx][xCb+xL][
yCb+yL]*levelScale[qP%6])<<(qP/6)+32)>>6
(8-242)
recSamples[x][y]=Clip3(0,(1<<bitDepth
)-1,tmpVal)(8-243)
【0353】
以下の条件の1つが真であるとき、
- cIdx is equal to 0 and numComps is equ
al to 1;
- cIdxが3に等しい
変数PredictorPaletteSize[startComp]および配列Pr
edictorPaletteEntriesは、以下のように導出または修正される。
【0354】
for(i=0;i<CurrentPaletteSize[startComp]
;i++)
for(cIdx=startComp;cIdx<(startComp+num
Comps);cIdx++)
newPredictorPaletteEntries[cIdx][i]=C
urrentPaletteEntries[cIdx][i]
newPredictorPaletteSize=CurrentPaletteS
ize[startComp]
for(i=0;i<PredictorPaletteSize && newPr
edictorPaletteSize);i++)
if(!PalettePredictorEntryReuseFlags[i]
){
for(cIdx=startComp;cIdx<(startComp+nu
mComps);cIdx++)(8-244)
newPredictorPaletteEntries[cIdx][new
PredictorPaletteSize]=
PredictorPaletteEntries[cIdx][i]
newPredictorPaletteSize++
}
for(cIdx=startComp;cIdx<(startComp+numC
omps);cIdx++)
for(i=0;i<newPredictorPaletteSize;i++)
PredictorPaletteEntries[cIdx][i]=newP
redictorPaletteEntries[cIdx][i]
PredictorPaletteSize[startComp]=newPred
ictorPaletteSize
【0355】
PredictorPaletteSize[startComp]の値が0からPa
letteMaxPredictorSizeまでの範囲内にあることが、ビットストリ
ーム適合性の要件である。
【0356】
5.15 実施形態#15
【0357】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには「
[[]]」の印が付けられる。
【0358】
8.4.2 輝度イントラ予測モードのための導出処理
...
【0359】
- あるいは、(skip_intra_flag[xPb][yPb]およびDimF
lag[xPb][yPb]はいずれも0に等しい場合)、IntraPredMode
Y[xPb][yPb]は、以下の順序ステップによって導出される。
【0360】
1. 近傍位置(xNbA、yNbA)および(xNbB、yNbB)は、それぞれ、
(xPb-1,yPb) および(xPb,yPb-1)に等しく設定される。
【0361】
2. XをAまたはBのいずれかに置き換える場合、変数candIntraPred
ModeXは、以下のように導出される。
-6.4.1項で規定されるz走査順序のブロックの可用性導出処理は、入力として
位置(xCurr,yCurr)を(xPb,yPb)に等しく、近傍位置(xNbY,
yNbY)を(xNbX,yNbX)に等しく設定して呼び出され、その出力はavai
lableXに割り当てられる。
-候補イントラ予測モードcandIntraPredModeXは、以下のように
導出される。
-availableXがFALSEに等しい場合、candIntraPred
ModeXはINTRA_DCに等しく設定される。
[[-あるいは、CuPredMode[xNbX][yNbX]がMODE_
INTRAまたはpcm_flag[xNbX][yNbX]が1に等しい、またはca
ndIntraPredModeXがINTRA_DC,]に等しく設定される]
【0362】
【0363】
-あるいは、XがBに等しく、yPb_1が((yPb>CtbLog2Size
Y))CtbLog2SizeY)未満である場合、candIntraPredMod
eBはINTRA_DCに等しく設定される。
-あるいは、IntraPredModeY[xNbX][yNbX]が34より
大きい場合、candIntraPredModeXはINTRA_DCに等しく設定さ
れる。
...
【0364】
5.16 実施形態#16
【0365】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには“
[[]]”の印が付けられる。
【0366】
8.4.2 輝度イントラ予測モードのための導出処理
【0367】
この処理への入力は以下の通りである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度符号化ブロックの左上のサ
ンプルを規定する輝度位置(xCb,yCb)、
- 輝度サンプルにおける現在の符号化ブロックの幅を規定する変数cbWidth-
輝度サンプルにおける現在の符号化ブロックの高さを規定する変数cbHeight
【0368】
この処理において、輝度イントラ予測モードIntraPredModeY[xCb][
yCb]が導出される。
【0369】
【0370】
...
(x=xCb..xCb+cbWidth-1、y=yCb..yCb+cbHeig
ht-1の場合、変数IntraPredModeY[x][y])は、IntraPr
edModeY[xCb][yCb]と等しく設定される。
【0371】
5.17 実施形態#17
【0372】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには“
[[]]”の印が付けられる。
【0373】
8.4.3 輝度イントラ予測モードのための導出処理
【0374】
この処理への入力は以下の通りである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度符号化ブロックの左上のサ
ンプルを規定する輝度位置(xCb,yCb)、
- 輝度サンプルにおける現在の符号化ブロックの幅を規定する変数cbWidth、
- 輝度サンプルにおける現在の符号化ブロックの高さを規定する変数cbHeight
。
【0375】
この処理において、輝度イントラ予測モードIntraPredModeY[xCb]
[yCb]が導出される。
【0376】
2. XをAまたはBのいずれかに置き換える場合、変数candIntraPred
ModeXは、以下のように導出される。
- 6.4.X項[Ed.(BB):近傍ブロックの可用性導出処理tbd]で規定
されたブロックの可用性導出処理は、入力として、(xCb,yCb)に等しく設定され
た位置(xCurr,yCurr)と、(xNbX,yNbX)に等しく設定した近傍位
置(xNbY,yNbY)で呼び出され、出力をavailableXに割り当てる。
【0377】
【0378】
...
(x=xCb..xCb+cbWidth-1、y=yCb..yCb+cbHeig
ht-1の場合、変数IntraPredModeY[x][y])は、IntraPr
edModeY[xCb][yCb]と等しく設定される。
【0379】
5.18 実施形態#18
【0380】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには「
[[]]」の印が付けられる。
【0381】
8.4.3 輝度イントラ予測モードのための導出処理
【0382】
この処理への入力は以下の通りである。
- 現在のピクチャの左上の輝度サンプルに対する現在の輝度符号化ブロックの左上のサ
ンプルを規定する輝度位置(xCb,yCb)、
- 輝度サンプルにおける現在の符号化ブロックの幅を規定する変数cbWidth、
- 輝度サンプルにおける現在の符号化ブロックの高さを規定する変数cbHeight
。
【0383】
この処理において、輝度イントラ予測モードIntraPredModeY[xCb][
yCb]が導出される。
【0384】
【0385】
...
(x=xCb..xCb+cbWidth-1、y=yCb..yCb+cbHeig
ht-1の場合、変数IntraPredModeY[x][y])は、IntraPr
edModeY[xCb][yCb]と等しく設定される。
【0386】
5.19 実施形態#19
【0387】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには“
[[]]”の印が付けられる。
【0388】
【0389】
5.20 実施形態#20
【0390】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには「
[[]]」の印が付けられる。
【0391】
【0392】
5.21 実施形態#21
【0393】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには“
[[]]”の印が付けられる。
【0394】
【0395】
5.22 実施形態#22
【0396】
本実施形態では、符号化ユニットの構文について説明する。本実施形態において、pr
ed_mode_plt_flagは、pred_mode_ibc_flagの後に信
号通知される。新規に追加されたテキストは太字のイタリック体で表され、削除されたテ
キストには“[[]]”の印が付けられる。
【0397】
【0398】
5.23 実施形態#23
【0399】
新規に追加されたテキストは太字のイタリック体で表され、削除されたテキストには“
[[]]”の印が付けられる。
【0400】
【0401】
5.24 実施形態#24
【0402】
本実施形態では、符号化ユニットの構文について説明する。本実施形態において、pr
ed_mode_plt_flagは、pred_mode_ibc_flagの後に信
号通知される。新規に追加されたテキストは太字のイタリック体で表され、削除されたテ
キストには“[[]]”の印が付けられる。
【0403】
【0404】
5.25 実施形態#25
【0405】
本実施形態では、符号化ユニットの構文について説明する。本実施形態では、現在の予
測モードがMODE_PLTであるとき、パレット構文が信号通知される。新規に追加さ
れたテキストは太字のイタリック体で表され、削除されたテキストには“[]”の印が付
けられる。
【0406】
【0407】
5.26 実施形態#26
【0408】
本実施形態では、クロマイントラ予測モードの導出処理について説明する。新規に追加
されたテキストは、太字のイタリック体で示されている。
【0409】
クロマイントラ予測モードのための導出処理
【0410】
この処理への入力は以下の通りである。
- 現在のピクチャの左上の輝度サンプルに対する現在のクロマ符号化ブロックの左上の
サンプルを規定する輝度位置(xCb,yCb)、
- 輝度サンプルにおける現在の符号化ブロックの幅を規定する変数cbWidth、
- 輝度サンプルにおける現在の符号化ブロックの高さを規定する変数cbHeight
。
【0411】
この処理において、クロマイントラ予測モードIntraPredModeC[xCb
][yCb]が導出される。
【0412】
【0413】
5.27 実施形態#27
【0414】
本実施形態では、輝度サンプルのマッピング処理を行うピクチャ再構成処理について説
明する。新規に追加されたテキストは、太字のイタリック体で示されている。
【0415】
輝度サンプルのためのマッピング処理を伴うピクチャ再構成。
【0416】
この処理への入力は以下の通りである。
- 現在のピクチャの左上のサンプルに対する現在のブロックの左上のサンプルの位置(
xCurr,yCurr)、
- ブロック幅を規定する変数nCurrSw、
- ブロックの高さを規定する変数nCurrSh、
- 現在のブロックの輝度予測サンプルを規定するan(nCurrSw)×(nCur
rSh)array predSamples、
- 現在のブロックの輝度残差サンプルを規定するan(nCurrSw)×(nCur
rSh)array resSamples。
【0417】
この処理の出力は、再構成された輝度ピクチャサンプルアレイrecSamplesで
ある。
【0418】
【0419】
5.28 実施形態#28
【0420】
本実施形態では、第4章の実施例24に対応する走査順序を説明する。
【0421】
この処理には、ブロック幅blkWidthおよびブロック高さblkHeightが
入力される。
【0422】
この処理の出力は、アレイhReverScan[sPos][sComp]およびv
ReverScan[sPos][sComp]である。アレイhReverScanは
、水平方向の逆走査順序を表し、アレイvReverScanは、垂直方向の走査順序を
表す。配列インデックスsPosは、0から(blkWidth*blkHeight)
-1までの範囲の走査位置を規定する。配列インデックスsCompが0である場合、水
平要素が規定され、配列インデックスsCompが1である場合、垂直要素が規定される
。blkWidthおよびblkHeightの値に基づいて、配列hTravScan
anfd vTravScanは、以下のように導出される。
【0423】
i=0
for(y=0;y)blkHeight;y++)
{
if(y%2!=0){
for(x=0;x)blkWidth;x++){
hReverScan[i][0]=x
hReverScan[i][1]=y
i++
}
}
他には
{
for(x=blkWidth-1;x>=0;x--){
hReverScan[i][0]=x
hReverScan[i][1]=y
i++
}
}
}
i=0
for(x=0;x)blkWidth;x++)
{
if(x%2!=0)
{
for(y=0;y)blkHeight;y++){
vReverScan[i][0]=x
vReverScan[i][1]=y
i++
}
}
他には
{
for(y=blkHeight-1;y>=0;y--){
vReverScan[i][0]=x
vReverScan[i][1]=y
i++
}
}
}
【0424】
図6は、映像処理装置600のブロック図である。装置600は、本明細書に記載の方
法の1つ以上を実装するために使用してもよい。装置600は、スマートフォン、タブレ
ット、コンピュータ、IoT(モノのインターネット)受信機等により実施されてもよい
。装置600は、1つ以上の処理装置602と、1つ以上のメモリ604と、映像処理ハ
ードウェア606と、を含んでもよい。処理装置(単数または複数)602は、本明細書
に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(単数または複
数)604は、本明細書で説明される方法および技術を実装するために使用されるデータ
およびコードを記憶するために使用してもよい。映像処理ハードウェア606は、本明細
書に記載される技術をハードウェア回路にて実装するために使用してもよい。
【0425】
図8は、映像を処理する方法800のフローチャートである。この方法800は、パレ
ットモードを使用して、予測モードとは別個に符号化されたパレットモードの変換ユニッ
ト、符号化ブロック、又は領域を処理することを判定すること(805)と、このパレッ
トモードを使用して、この変換ユニット、符号化ブロック、又は領域に対してさらに処理
を行うこと(810)を含む。
【0426】
方法800を参照し、パレットモード符号化のいくつかの例およびその使用について、
本明細書の第4章に記載する。
【0427】
方法800を参照すると、映像ブロックは、パレットモード符号化に関するビットスト
リーム生成規則を使用することによってビット効率を達成し得る映像ビットストリームに
おいて符号化されてもよい。
【0428】
この方法は、パレットモードの使用を指示する前に、予測モードを符号化することを含
むことができる。
【0429】
この方法は、予測モードに基づいてパレットモードの使用を条件付きで信号通知するこ
とを含むことができる。
【0430】
この方法は、予測モードがイントラブロックコピーモードであり、パレットモードの使
用指示の信号通知をスキップすることを含むことができる。
【0431】
この方法は、現在の予測モードがイントラブロックコピーモードであることに基づいて
、パレットモードの使用指示が偽であると判定されることを含むことができる。
【0432】
この方法は、予測モードがインターモードであり、パレットモードの使用指示の信号通
知がスキップされることを含むことができる。
【0433】
この方法は、現在の予測モードがインターモードであることに基づいて、パレットモー
ドの使用指示が偽であると判定されることを含むことができる。
【0434】
この方法は、予測モードがイントラモードであり、パレットモードの使用指示の信号通
知がスキップされることを含むことができる。
【0435】
この方法は、現在の予測モードがイントラモードであることに基づいて、パレットモー
ドの使用指示が偽であると判定されることを含むことができる。
【0436】
この方法は、予測モードがイントラモードであり、パレットモードの使用指示の信号通
知がスキップされることを含むことができる。
【0437】
この方法は、予測モードがイントラブロックコピーモードであり、パレットモードの使
用指示の信号通知を行うことを含むことができる。
【0438】
この方法は、ピクチャ、スライス、またはタイルグループのタイプに基づいて、パレッ
トモードの使用指示を信号通知することを含むことができる。
【0439】
この方法は、パレットモードを予測モードの候補として追加することを含むことができ
る。
【0440】
この方法は、予測モードが、イントラモード、イントラブロックコピーモード、イント
ラスライス用パレットモードまたは、インタースライス、Iピクチャ、Pピクチャ、Bピ
クチャ、またはイントラタイルグループのうちの1つ以上を含むことができる。
【0441】
この方法は、予測モードが、イントラモード、インターモード、イントラブロックコピ
ーモード、またはパレットモードのうちの2つ以上を含むことを含むことができる。
【0442】
この方法は、パレットモードの使用が信号通知によって示されるか、または条件に基づ
いて導出されることを含むことができる。
【0443】
この方法は、現在のブロックのブロック寸法、現在のブロックの予測モード、現在のブ
ロックの量子化パラメータ(QP)、近傍のブロックのパレットフラグ、近傍のブロック
のイントラブロックコピーフラグ、カラーフォーマットの指示、別個のまたはデュアル符
号化ツリー構造、またはスライスタイプ、グループタイプまたはピクチャタイプのうちの
1つ以上を含むことができる。
【0444】
この方法は、スライスレベルフラグ、タイルグループレベルフラグ、またはピクチャレ
ベルフラグに基づいて、パレットモードの使用を信号通知または導出することを含むこと
ができる。
【0445】
この方法は、スライスレベルフラグ、タイルグループレベルフラグ、またはピクチャレ
ベルフラグに基づいて、イントラブロックコピーモードの使用の指示を信号通知または導
出することを含むことができる。
【0446】
前の章で開示した項目6~9を参照し、いくつかの実施形態において、以下の解決策を
用いることが好ましい。
【0447】
1つの解決策は、映像のピクチャの現在の映像ブロックと、この映像のビットストリー
ム表現との間での変換を行うことを含み、イントラブロックコピーモードがこの変換にお
いて使用されるか否かに関する情報が、ビットストリーム表現において信号通知される、
または、この現在の映像ブロックの符号化条件に基づいて導出され、ここで、このイント
ラブロックコピーモードは、このピクチャにおける別の映像ブロックからのこの現在の映
像ブロックを符号化することを含む、映像処理方法を含んでもよい。様々な実施形態にお
いて以下の特徴を実装することができる。
【0448】
- 符号化条件は、現在の映像ブロックのブロック寸法を含む。
【0449】
- 符号化条件は、現在の映像ブロックの予測モードまたは前記現在の映像ブロックの
変換に用いられる量子化パラメータを含む。
【0450】
前章で開示した項目13~15を参照し、いくつかの実施形態において、以下の解決策
を実装することが好ましい。
【0451】
1つの解決策は、映像のピクチャの現在の映像ブロックを変換する間に非ブロック化フ
ィルタを適用するか否かを判定することと、ここで、現在の映像ブロックは、現在の映像
ブロックの全画素より小さい代表的なサンプル値を使用して現在の映像ブロックを表すパ
レットモード符号化を使用して符号化され、非ブロック化フィルタを適用すると判定した
場合に非ブロック化フィルタが適用されるように変換を行うこととについての方法を含ん
でもよい。
【0452】
別の解決策は、ある映像のピクチャの現在の映像ブロックとこの映像のビットストリー
ム表現との間での変換中に使用するために、量子化または逆量子化処理を判定することと
、ここで、現在の映像ブロックは、現在の映像ブロックの合計画素よりも少ない代表的な
サンプル値を使用して現在の映像ブロックを表すパレットモード符号化を使用して符号化
され、この量子化または逆量子化処理の判定に基づいて、この変換を行うことと、を含む
映像処理方法を含んでもよい。追加の特徴は、以下を含んでもよい。
【0453】
- 現在の映像ブロックに対して判定された量子化または逆量子化処理は、パレット符
号化モードとは異なるように符号化された別の映像ブロックに適用される別の量子化また
は別の逆量子化処理とは異なる。
【0454】
- この変換は、現在の映像ブロックをビットストリーム表現に符号化することを含む
。
【0455】
- この変換は、ビットストリーム表現を復号化して映像の現在の映像ブロックを生成
することを含む。
【0456】
- この判定は、イントラ符号化された他の映像ブロックの変換に用いられる別の決定
処理と同じ決定処理を用いる。
【0457】
開示された技術は、向上した符号化ツリー構造を使用して圧縮効率を向上させるために
、映像エンコーダまたはデコーダにおいて実施され得ることが理解される。
【0458】
前の章の項目16~21を参照し、いくつかの解決策は以下の通りである。
【0459】
複数の映像ブロックを含む映像の現在の映像ブロックとこの映像のビットストリーム表
現との間での変換のために、現在の映像ブロックがパレット符号化ブロックであることを
判定することと、この判定に基づいて、現在の映像ブロックをイントラ符号化されたブロ
ックであると考えることで、最大確率モードのリスト構築処理を行うことと、このリスト
構築処理の結果に基づいてこの変換を行うことと、を含み、このパレット符号化ブロック
は、パレットまたは表現サンプル値を使用して符号化または復号化されることを含む、映
像処理方法。
【0460】
上記方法において、リスト構築処理は、近傍のパレット符号化ブロックをデフォルトモ
ードのイントラブロックとして扱う。
【0461】
複数の映像ブロックを含む映像の現在の映像ブロックとこの映像のビットストリーム表
現との間での変換のために、現在の映像ブロックがパレット符号化ブロックであることを
判定することと、この判定に基づいて、現在の映像ブロックを非イントラ符号化されたブ
ロックであると考えることで、最大確率モードのリスト構築処理を実行し、このリスト構
築処理の結果に基づいてこの変換を行うことと、を含み、このパレット符号化ブロックは
、パレットまたは表現サンプル値を使用して符号化または復号化される、映像処理方法。
【0462】
上記方法において、前記リスト構築処理は、近傍のパレット符号化ブロックのイントラ
モードをフェッチする場合、近傍のパレット符号化ブロックをインター符号化ブロックと
して扱う。
【0463】
複数の映像ブロックを含む映像の現在の映像ブロックとこの映像のビットストリーム表
現との間での変換のために、現在の映像ブロックがパレット符号化ブロックであることを
判定することと、この判定に基づいて、現在の映像ブロックを利用不可能なブロックであ
ると考えることで、リスト構築処理を行うことと、このリスト構築処理の結果に基づいて
この変換を行うことと、を含み、このパレット符号化ブロックは、パレットまたは表現サ
ンプル値を使用して符号化または復号化される、映像処理方法。
【0464】
上記方法において、前記リスト構築処理は、履歴に基づく動きベクトル予測である。
【0465】
上記方法において、前記リスト構築処理は、MERGEまたは高度動きベクトル予測モ
ードである。
【0466】
上記方法において、前記判定することは、前記映像のコンテンツに基づいて判定するこ
とをさらに含む。
【0467】
上記方法において、前記判定は、ビットストリーム表現におけるフィールドに対応する
。
【0468】
現在の映像ブロックと現在の映像ブロックのビットストリーム表現との間での変換中に
、この現在の映像ブロックがパレット符号化ブロックであることを判定することと、現在
の映像ブロックがパレット符号化ブロックであることに基づいて、この変換に使用される
コンテキスト符号化ビンの範囲を判定することと、このコンテキスト符号化ビンの範囲に
基づいてこの変換を行うこととを含む、映像処理方法。
【0469】
上記方法において、現在の映像ブロックのうち、範囲外にあるビンを、バイパス符号化
技術を使用して符号化するか、または変換中にバイパス復号化技術を使用して復号化する
。
【0470】
前記変換は、前記映像を前記ビットストリーム表現に符号化することを含む、上記記載
の方法。
【0471】
上記方法において、前記変換は、前記ビットストリーム表現を復号化して前記映像を生
成することを含む。
【0472】
図24は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム
2400を示すブロック図である。様々な実装形態は、システム2400のモジュールの
一部又は全部を含んでもよい。システム2400は、映像コンテンツを受信するための入
力ユニット2402を含んでもよい。映像コンテンツは、未加工又は非圧縮フォーマット
、例えば、8又は10ビットのマルチモジュール画素値で受信されてもよく、又は圧縮又
は符号化フォーマットで受信されてもよい。入力ユニット1902は、ネットワークイン
ターフェース、周辺バスインターフェース、又は記憶インターフェースを表してもよい。
ネットワークインターフェースの例は、イーサネット(登録商標)、パッシブ光ネットワ
ーク(PON)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラ
ーインターフェース等の無線インターフェースを含む。
【0473】
システム2400は、本明細書に記載される様々な符号化又は符号化方法を実装するこ
とができる符号化モジュール2404を含んでもよい。符号化モジュール2404は、入
力ユニット2402からの映像の平均ビットレートを符号化モジュール2404の出力に
低減し、映像の符号化表現を生成してもよい。従って、この符号化技術は、映像圧縮また
は映像コード変換技術と呼ばれることがある。符号化モジュール2404の出力は、モジ
ュール2406によって表されるように、記憶されてもよいし、接続された通信を介して
送信されてもよい。入力ユニット2402において受信された、記憶された又は通信され
た映像のビットストリーム(又は符号化)表現は、モジュール2408によって使用され
て、表示インターフェースユニット2410に送信される画素値又は表示可能な映像を生
成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理
は、映像伸張(映像展開)と呼ばれることがある。さらに、特定の映像処理動作を「符号
化」動作又はツールと呼ぶが、符号化ツール又は動作は、エンコーダ及びそれに対応する
、復号化の結果を逆にする復号化ツール又は動作が、デコーダによって行われることが理
解されよう。
【0474】
周辺バスインターフェースユニットまたは表示インターフェースユニットの例は、ユニ
バーサルシリアルバス(USB)または高精細マルチメディアインターフェース(HDM
I(登録商標))またはディスプレイポート等を含んでもよい。ストレージインターフェ
ースの例は、シリアルアドバンスドテクノロジーアタッチメント(SATA)、PCI、
IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソ
コン、スマートフォン、又はデジタルデータ処理及び/又は映像表示を実施可能な他のデ
バイス等の様々な電子デバイスに実施されてもよい。
【0475】
図25は、本技術にしたがった映像処理方法2500を示すフローチャートである。こ
の方法2500は、動作2510において、映像の映像領域のブロックと映像のビットス
トリーム表現との間で変換を行うことを含む。このビットストリーム表現は、このブロッ
クのためにパレットモードの使用の第1の指示が信号通知されるかどうかを規定する第1
のフォーマット規則と、このブロックのために予測モードの使用の第2の指示に関連する
この第1の指示の位置を規定する第2のフォーマット規則とに従って処理される。
【0476】
いくつかの実施形態において、映像領域は、映像の変換ユニット、符号化ユニット、予
測ユニット、または領域を含む。いくつかの実施形態において、予測モードの使用の第2
の指示は、ビットストリーム表現におけるパレットモードの使用の第1の指示の前に位置
決めされる。
【0477】
いくつかの実施形態において、パレットモードの使用の第1の指示は、予測モードの使
用の第2の指示に基づいて、ビットストリーム表現において条件付きで含まれる。いくつ
かの実施形態において、予測モードの使用の第2の指示がイントラブロックコピー(IB
C)予測モードを示す場合、ビットストリーム表現においてパレットモードの使用の第1
の指示をスキップする。いくつかの実施形態において、予測モードの使用の第2の指示が
インター予測モードを示す場合、ビットストリーム表現においてパレットモードの使用の
第1の指示をスキップする。いくつかの実施形態において、予測モードの使用の第2の指
示がイントラ予測モードを示す場合、ビットストリーム表現においてパレットモードの使
用の第1の指示をスキップする。いくつかの実施形態において、予測モードの使用の第2
の指示がスキップモードを示す場合、ビットストリーム表現においてパレットモードの使
用の第1の指示をスキップする。いくつかの実施形態において、ビットストリーム表現に
おけるパレットモードの使用の第1の指示をスキップすることは、パレットモードが使用
されていないことを示す。
【0478】
いくつかの実施形態において、パレットモードの使用の第1の指示は、予測モードの使
用の第2の指示がIBC予測モードを示す場合、ビットストリームにおいて符号化される
。いくつかの実施形態において、パレットモードの使用の第1の指示は、予測モードの使
用の第2の指示がイントラ予測モードを示す場合、ビットストリームにおいて符号化され
る。いくつかの実施形態において、予測モードは、パルス符号変調(PCM)モードでは
ない。いくつかの実施形態において、パレットモードの使用の第1の指示は、ビットスト
リーム表現におけるPCMモードの使用の指示の前に符号化される。いくつかの実施形態
において、ビットストリーム表現において、PCMモードの使用の指示をスキップする。
いくつかの実施形態において、IBCモードの指示はビットストリーム表現に符号化され
る。いくつかの実施形態において、イントラ予測モードが使用される場合、ビットストリ
ーム表現におけるフラグは、パレットモードまたはIBCモードがビットストリーム表現
において信号通知されるかどうかを示す。いくつかの実施形態において、フラグはブロッ
クの状態に基づいてスキップされ、この状態は、ブロック寸法、ブロックに関連付けられ
た領域に対してIBCモードが有効化されるかどうか、或いはブロックに関連づけられた
領域に対してパレットモードが有効化されるかどうかを含む。
【0479】
いくつかの実施形態において、パレットモードの使用の第1の指示は、予測モードの使
用の第2の指示がインター予測モードを示す場合、ビットストリームにおいて符号化され
る。いくつかの実施形態において、パレットモードの使用の第1の指示は、スキップモー
ドの指示、予測モードの指示、またはPCMモードの使用の指示のうちの少なくとも1つ
の後に符号化される。いくつかの実施形態において、パレットモードの使用の第1の指示
は、スキップモードまたは予測モードの指示の後に符号化され、PCMモードの使用の指
示の前に符号化される。
【0480】
いくつかの実施形態において、パレットモードの使用の第1の指示は、ビットストリー
ム表現における予測モードの使用の第2の指示の前に位置決めされる。いくつかの実施形
態において、パレットモードの使用の第1の指示は、予測モードの使用の第2の指示の後
に位置決めされ、予測モードの使用の第2の指示は、ビットストリーム表現におけるイン
トラ予測モードまたはインター予測モードを示す。いくつかの実施形態において、パレッ
トモードの使用の第1の指示は、ピクチャ、スライス、またはタイルグループタイプに基
づいて信号通知される。いくつかの実施形態において、パレットモードの使用の第1の指
示は、ブロックに対して前記パレットモードが有効化されることを示す第1のフラグを含
むことができる。いくつかの実施形態において、パレットモードの使用の第1の指示は、
パレットモードがシーケンスレベル、ピクチャレベル、タイルグループレベル、またはタ
イルレベルで有効であることを示す第1のフラグに基づいて、条件付きでビットストリー
ム表現に含まれる。いくつかの実施形態において、ブロックに対してパレットモードが無
効化されるとき、ブロックのPCMモードを示す別のフラグがビットストリーム表現に含
まれる。いくつかの実施形態において、第1のフラグは現在のブロックの1つ以上の近傍
ブロックの情報に基づいてコンテキスト符号化される。いくつかの実施形態において、第
1のフラグは現在のブロックの1つ以上の近傍ブロックからのコンテキスト情報なしに符
号化される。
【0481】
いくつかの実施形態において、予測モードの使用の第2の指示は、予測モードを示す第
2のフラグを含む。いくつかの実施形態において、ビットストリーム表現における第2の
フラグが、予測モードがインターモードであることを示す場合、ビットストリーム表現は
、イントラブロックコピーモードが有効化されるかどうかを示す第3のフラグをさらに含
む。いくつかの実施形態において、ビットストリーム表現における第2のフラグが、予測
モードがイントラモードであることを示す場合、ビットストリーム表現は、イントラブロ
ックコピーモードが有効化されるかどうかを示す第3のフラグをさらに含む。いくつかの
実施形態において、第3のフラグは、ブロック寸法に基づいてビットストリーム表現に条
件付きで含まれる。
【0482】
いくつかの実施形態において、ブロックは符号化ユニットであり、ビットストリーム表
現における第2のフラグは予測モードがイントラモードであることを示す。いくつかの実
施形態において、第1のフラグは、ブロック寸法に基づいてビットストリーム表現に条件
付きで含まれる。
【0483】
図26は、本技術にしたがった映像処理方法2600を示すフローチャートである。こ
の方法2600は、動作2610において、映像における映像領域のブロックと映像のビ
ットストリーム表現との間での変換のために、このブロックの少なくとも1つのパレット
モードを含む1つ以上の許容予測モードに基づいて、予測モードを判定することを含む。
予測モードに従って、パレットモードの使用の指示を判定する。方法2600は、動作2
620において、その判定に基づいて変換を行うことを含む。
【0484】
いくつかの実施形態において、1つ以上の許容予測モードは、イントラモードを含む。
いくつかの実施形態において、1つ以上の許容予測モードは1つのイントラブロックコピ
ー(IBC)モードを含む。いくつかの実施形態において、1つ以上の許容予測モードは
、インターモードを含む。
【0485】
いくつかの実施形態において、映像領域は、イントラスライス、イントラピクチャまた
はイントラタイルグループを含む。いくつかの実施形態において、1つ以上の許容予測モ
ードは、イントラモード、イントラブロックコピーモードおよびパレットモードを含む。
【0486】
いくつかの実施形態において、映像領域は、インタースライス、インターピクチャ、イ
ンタータイルグループ、Pスライス、Bスライス、PピクチャまたはBピクチャを含む。
いくつかの実施形態において、1つ以上の許容予測モードは、イントラモード、イントラ
ブロックコピーモード、パレットモードおよびインターモードを含む。
【0487】
いくつかの実施形態において、ブロック寸法は4×4であってもよい。いくつかの実施
形態において、1つ以上の許容予測モードは、ブロック寸法が4×4である場合、インタ
ーモードを除外する。
【0488】
いくつかの実施形態において、ビットストリーム表現は、ブロックがスキップモードで
符号化されていない場合、1つ以上の許容予測モードを表す少なくとも1つの予測モード
インデックスを含み、予測モードインデックスは、1つ以上のバイナリビンを使用して表
される。
【0489】
いくつかの実施形態において、予測モードインデックスは、3つのバイナリビンを使用
して表され、第1のビン値「1」は、イントラモードを示し、第1のビン値「0」および
第2のビン値「0」は、インターモードを示し、第1のビン値「0」、第2のビン値「1
」および第3のビン値「0」は、IBCモードを示し、第1のビン値「0」、第2の値「
1」および第3のビン値「1」は、パレットモードを示す。
【0490】
いくつかの実施形態において、予測モードインデックスは、2つのバイナリビンを使用
して表され、第1のビン値「1」および第2のビン値「0」は、イントラモードを示し、
第1のビン値「0」および第2のビン値「0」は、インターモードを示し、第1のビン値
「0」および第2のビン値「1」は、IBCモードを示し、第1のビン値「1」および第
2のビン値「1」は、パレットモードを示す。
【0491】
いくつかの実施形態において、予測モードインデックスは、映像の現在のスライスがイ
ントラスライスであり、IBCモードが無効である場合、1つのバイナリビンを使用して
表され、第1のビン値「0」はイントラモードを表し、第2のビン値「1」はパレットモ
ードを表す。
【0492】
いくつかの実施形態において、予測モードインデックスは、映像の現在のスライスがイ
ントラスライスでなく、IBCモードが無効である場合、2つのバイナリビンを使用して
表され、第1のビン値「1」はイントラモードを表し、第1のビン値「0」および第2の
ビン値「0」はインターモードを表し、第1のビン値「0」および第2のビン値「1」は
パレットモードを示す。いくつかの実施形態において、予測モードインデックスは、映像
の現在のスライスがイントラスライスであり、IBCモードが有効化される場合、2つの
バイナリビンを使用して表され、第1のビン値「1」はIBCモードを表し、第1のビン
値「0」および第2のビン値「1」はパレットモードを表し、第1のビン値「0」および
第2のビン値「0」はイントラモードを示す。いくつかの実施形態において、IBCモー
ドの使用指示は、ビットストリーム表現のシーケンスパラメータセット(SPS)におい
て信号通知される。
【0493】
いくつかの実施形態において、予測モードインデックスは、3つのバイナリビンを使用
して表され、ここで、第1のビン値「1」はインターモードを表し、第1のビン値「0」
および第2のビン値「1」はイントラモードを表し、第1のビン値「0」、第2のビン値
「0」および第3のビン値「1」はIBCモードを表し、第1のビン値「0」、第2のビ
ン値「0」および第3のビン値「0」はパレットモードを示す。
【0494】
いくつかの実施形態において、予測モードインデックスは、3つのバイナリビンを使用
して表され、ここで、第1のビン値「1」はイントラモードを表し、第1のビン値「0」
および第2のビン値「1」はインターモードを表し、第1のビン値「0」、第2のビン値
「0」および第3のビン値「1」はIBCモードを表し、第1のビン値「0」、第2のビ
ン値「0」および第3のビン値「0」はパレットモードを示す。
【0495】
いくつかの実施形態において、予測モードインデックスは、3つのバイナリビンを使用
して表され、ここで、第1のビン値「0」は、インターモードを示し、第1のビン値「1
」および第2のビン値「0」は、イントラモードを示し、第1のビン値「1」、第2のビ
ン値「1」および第3のビン値「1」は、IBCモードを示し、第1のビン値「1」、第
2のビン値「1」および第3のビン値「0」は、パレットモードを示す。
【0496】
いくつかの実施形態において、1つの条件が満たされた場合、1つ以上のバイナリビン
の信号通知はビットストリーム表現においてスキップされる。いくつかの実施形態におい
て、条件はブロック寸法を含む。いくつかの実施形態において、この条件は、無効にされ
ている予測モードを含み、ビットストリーム表現において、この予測モードに対応するバ
イナリビンをスキップする。
【0497】
図27は、本技術にしたがった映像処理方法2700を示すフローチャートである。こ
の方法2700は、動作2710において、映像のブロックと映像のビットストリーム表
現との間で変換を行うことを含む。ビットストリーム表現は、パレットモードの使用の第
1の指示とイントラブロックコピー(IBC)モードの使用の第2の指示とを互いに依存
して信号通知することを規定するフォーマット規則に従って処理される。
【0498】
いくつかの実施形態において、このフォーマット規則は、ブロックの予測モードがIB
Cモードでない第1の予測モードに等しい場合、第1の指示がビットストリーム表現で信
号通知されることを規定する。いくつかの実施形態において、このフォーマット規則は、
ブロックの予測モードがパレットモードでない第1の予測モードに等しい場合、第2の指
示がビットストリーム表現で信号通知されることを規定する。いくつかの実施形態におい
て、第1の予測モードはイントラモードである。
【0499】
図28は、本技術にしたがった映像処理方法2800を示すフローチャートである。こ
の方法2800は、動作2810において、映像のブロックとこの映像のビットストリー
ム表現との間での変換のために、このブロックの寸法に基づいて、このビットストリーム
表現におけるパレットモードの使用の指示の存在を判定することを含む。方法2800は
、動作2820において、その判定に基づいて変換を行うことを含む。
【0500】
図29は、本技術にしたがった映像処理方法2900を示すフローチャートである。こ
の方法2900は、動作2910において、映像のブロックとこの映像のビットストリー
ム表現との間での変換のために、このビットストリーム表現におけるイントラブロックコ
ピー(IBC)モードの使用の指示の存在を、このブロックの寸法に基づいて判定するこ
とを含む。方法2900は、動作2920において、その判定に基づいて変換を行うこと
を含む。いくつかの実施形態において、ブロック寸法は、ブロックにおけるサンプルの数
量、ブロックの幅またはブロックの高さのうち少なくとも1つを含むことができる。
【0501】
いくつかの実施形態において、ブロックの幅が閾値以下である場合、この指示はビット
ストリーム表現で信号通知される。いくつかの実施形態において、ブロックの高さが閾値
以下である場合、この指示はビットストリーム表現で信号通知される。いくつかの実施形
態において、閾値は64であってもよい。
【0502】
いくつかの実施形態において、ブロックの幅および高さが閾値よりも大きい場合、この
指示はビットストリーム表現で信号通知される。いくつかの実施形態において、閾値は4
であってもよい。いくつかの実施形態において、ブロックにおけるサンプルの数が閾値よ
りも大きい場合、この指示はビットストリーム表現で信号通知される。いくつかの実施形
態において、閾値は16であってもよい。いくつかの実施形態において、ブロックの幅が
ブロックの高さに等しい場合、この指示はビットストリーム表現で信号通知される。
【0503】
いくつかの実施形態において、(1)ブロックの幅が第1の閾値よりも大きい、(2)
ブロックの高さが第2の閾値よりも大きい、または(3)ブロックにおけるサンプルの数
が第3の閾値以下である場合、この指示はビットストリーム表現に含まれていない。いく
つかの実施形態において、第1の閾値および第2の閾値は64である。いくつかの実施形
態において、第3閾値は16であってもよい。
【0504】
いくつかの実施形態において、この判定は、このブロックに関連付けられた特徴にさら
に基づいて行われる。いくつかの実施形態において、特徴はブロックの予測モードを含む
。いくつかの実施形態において、特徴はブロックの量子化パラメータを含む。いくつかの
実施形態において、特徴はブロックの近傍のブロックのパレットフラグを含む。いくつか
の実施形態において、特徴はブロックの近傍のブロックのIBCフラグを含む。いくつか
の実施形態において、特徴はブロックのカラーフォーマットの指示を含む。いくつかの実
施形態において、特徴はブロックの符号化ツリー構造を含む。いくつかの実施形態におい
て、特徴はブロックのスライスグループタイプ、タイルグループタイプまたはピクチャタ
イプを含む。
【0505】
図30は、本技術にしたがった映像処理方法3000を示すフローチャートである。方
法3000は、動作3010において、映像のブロックとこの映像のビットストリーム表
現との間での変換のために、このブロックを含む映像領域の第2の指示に基づいて、この
ブロックに対してパレットモードが許可されているかどうかを判定することを含む。方法
3000は、また、動作3020において、その判定に基づいて変換を行うことを含む。
【0506】
いくつかの実施形態において、映像領域は、スライス、タイルグループまたはピクチャ
を含むことができる。いくつかの実施形態において、ビットストリーム表現は、第2の指
示がわずかな動きベクトル差が有効化されることを示す場合、パレットモードが許可され
るかどうかの明確な指示を除外する。いくつかの実施形態において、第2の指示は、ビッ
トストリーム表現に存在するフラグとして表される。いくつかの実施形態において、第2
の指示は映像領域に対してパレットモードが有効化されるかどうかを示す。いくつかの実
施形態において、ビットストリーム表現は、第2の指示が映像領域に対してパレットモー
ドが無効化されていることを示す場合、パレットモードが許可されているかどうかを明確
に示すことを含まない。いくつかの実施形態において、ビットストリーム表現がパレット
モードを許可するかどうかを明確に示すものを含まない場合、ブロックに対してパレット
モードは許可されない。
【0507】
図31は、本技術に従った映像処理の方法3100を示すフローチャートである。方法
3100は、動作3110において、映像のブロックとこの映像のビットストリーム表現
との間での変換のために、このブロックを含む映像領域の第2の指示に基づいて、このブ
ロックに対してイントラブロックコピー(IBC)モードが許可されているかどうかを判
定することを含む。方法3100は、また、動作3120において、その判定に基づいて
変換を行うことを含む。
【0508】
いくつかの実施形態において、映像領域は、スライス、タイルグループまたはピクチャ
を含むことができる。いくつかの実施形態において、ビットストリーム表現は、第2の指
示がわずかな動きベクトル差が有効化されることを示す場合、IBCモードが許可される
かどうかの明確な指示を除外する。いくつかの実施形態において、第2の指示は、ビット
ストリーム表現に存在するフラグとして表される。いくつかの実施形態において、第2の
指示は映像領域に対してIBCモードが有効化されるかどうかを示す。いくつかの実施形
態において、ビットストリーム表現は、第2の指示が映像領域に対してIBCモードが無
効化されていることを示す場合、IBCモードが許可されているかどうかを明確に示すこ
とを含まない。いくつかの実施形態において、ビットストリーム表現がIBCモードを許
可するかどうかを明確に示すものを含まない場合、ブロックに対してIBCモードは許可
されない。
【0509】
いくつかの実施形態において、変換はビットストリーム表現から現在のブロックを生成
する。いくつかの実施形態において、変換は現在のブロックからビットストリーム表現を
生成する。
【0510】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するよ
うに決定または判定することを含む。一例において、映像処理ツールまたはモードが有効
化される場合、エンコーダは、1つの映像ブロックを処理する際にこのツールまたはモー
ドを使用するまたは実装するが、このツールまたはモードの使用に基づいて、結果として
得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックか
ら映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールま
たはモードが有効化される場合に、この映像処理ツールまたはモードを使用する。別の例
において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリ
ームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリー
ムを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたは
モードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
【0511】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを無効化するよ
うに決定または判定することを含む。一例において、映像処理ツールまたはモードが無効
にされている場合、エンコーダは、映像のブロックを映像のビットストリーム表現に変換
する際に、このツールまたはモードを使用しない。別の例において、映像処理ツールまた
はモードが無効にされている場合、デコーダは、決定または判定に基づいて有効化された
映像処理ツールまたはモードを使用してビットストリームが修正されていないことを知っ
て、ビットストリームを処理する。
【0512】
本明細書に記載された開示された、およびその他の解決策、実施例、実施形態、モジュ
ール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物
を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しく
はハードウェアで実施されてもよく、またはそれらの1つ以上の組み合わせで実施しても
よい。開示された、およびその他の実施形態は、1つ以上のコンピュータプログラム製品
、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制
御するために、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1
つ以上のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可
読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質
の組成物、またはこれらの1つ以上の組み合わせであってもよい。「データ処理装置」と
いう用語は、例えば、プログラマブル処理装置、コンピュータ、または複数の処理装置、
若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および
機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境
を作るコード、例えば、処理装置ファームウェア、プロトコルスタック、データベース管
理システム、オペレーティングシステム、またはこれらの1つ以上の組み合わせを構成す
るコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成
した電気、光、または電磁信号であり、適切な受信装置に送信するための情報を符号化す
るために生成される。
【0513】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション
、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された
言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタ
ンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジ
ュール、要素、サブルーチン、または他のユニットとして含む任意の形式で展開すること
ができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対
応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの
一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に記録されて
いてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の
調整ファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を
格納するファイル)に記憶されていてもよい。1つのコンピュータプログラムを、1つの
サイトに位置する1つのコンピュータ、または複数のサイトに分散され通信ネットワーク
によって相互接続される複数のコンピュータで実行させるように展開することも可能であ
る。
【0514】
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生
成することによって機能を実行するための1つ以上のコンピュータプログラムを実行する
1つ以上のプログラマブル処理装置によって行うことができる。処理およびロジックフロ
ーはまた、特定用途のロジック回路、例えば、FPGA(フィールドプログラマブルゲー
トアレイ)またはASIC(特定用途向け集積回路)によって行うことができ、装置はま
た、特別目的のロジック回路として実装することができる。
【0515】
コンピュータプログラムの実行に適した処理装置は、例えば、汎用および専用マイクロ
処理装置の両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上の処理装置
を含む。一般的に、処理装置は、リードオンリーメモリまたはランダムアクセスメモリま
たはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を
実行するための処理装置と、命令およびデータを記憶するための1つ以上のメモリデバイ
スとである。一般的に、コンピュータは、データを記憶するための1つ以上の大容量記憶
デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこ
れらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するよ
うに動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイス
を有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコ
ンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを
含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば
内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROM
およびDVD-ROMディスク等の半導体記憶装置を含む。処理装置およびメモリは、特
定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み
込まれてもよい。
【0516】
本特許明細書は多くの詳細を含むが、これらは、任意の主題の範囲または特許請求の範
囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特
有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態の
コンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装しても
よい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態におい
て別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、
特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されてい
てもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わ
せから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサ
ブコンビネーションのバリエーションに向けられてもよい。
【0517】
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成
するために、このような動作が示された特定の順番でまたは連続した順番で行われること
、または示された全ての動作が行われることを必要とするものと理解されるべきではない
。また、本特許明細書に記載されている例における様々なシステムの構成要素の分離は、
全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
【0518】
いくつかの実装形態および例のみが記載されており、この特許文献に記載され図示され
ているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
【手続補正書】
【提出日】2023-10-25
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
映像データを処理する方法であって
映像の視覚メディアデータの第1の映像ブロックと前記映像のビットストリームとの第1の変換のために、第1の所定の条件に基づいて、前記ビットストリームにおいて第1の指示が信号通知されているか否かを判定することと、
少なくとも前記判定に基づいて、前記第1の変換を行うことと、を含み、
前記第1の所定の条件は、前記第1の映像ブロックの寸法に関連し、
前記第1の指示は、前記第1の映像ブロックに対して第1の予測モードを有効にするか否かを示し、
前記第1の予測モードにおいて、再構成されたサンプルは、代表的な色値のセットによって表され、前記代表的な色値のセットは、1)パレット予測子、2)エスケープサンプル、または3)ビットストリームに含まれるパレット情報のうちの少なくとも1つを含む、
方法。
【請求項2】
前記第1の映像ブロックの幅及び高さがそれぞれ前記第1の閾値以下である場合、前記ビットストリームにおいて前記第1の指示が信号通知される、
請求項1に記載の方法。
【請求項3】
前記第1の閾値は64である、
請求項1又は2に記載の方法。
【請求項4】
前記第1の映像ブロックの幅及び高さが第2の閾値より大きい場合、前記ビットストリームにおいて前記第1の指示が信号通知される、
請求項1~3のいずれか1項に記載の方法。
【請求項5】
前記第1の映像ブロックの幅と高さとの積が第3の閾値より大きい場合、前記ビットストリームにおいて前記第1の指示が信号通知される、
請求項1~3のいずれか1項に記載の方法。
【請求項6】
前記第1の映像ブロックの予測モードがMODE_INTRAである場合、前記ビットストリームにおいて前記第1の指示が信号通知される、
請求項1~5のいずれか1項に記載の方法。
【請求項7】
前記第1の所定の条件における前記第1の映像ブロックの寸法は、前記第1の映像ブロックのカラーフォーマットに関連する、
請求項1~6のいずれか1項に記載の方法。
【請求項8】
前記第1の変換のために、第2の所定の条件に基づいて、前記ビットストリームにおいて第2の指示が信号通知されているか否かを判定することと、
少なくとも前記判定に基づいて前記第1の変換を行うことと、を更に含み、
前記第2の所定の条件は、前記第1の映像ブロックの寸法と、モードタイプ、sps_ibc_enabled_flag、スライスタイプ、又はツリータイプと、のうちの少なくとも1つに関連し、
前記第2の指示は、前記第1の映像ブロックに対して第2の予測モードを有効にすることを示し、
前記第2の予測モードにおいて、前記第1の映像ブロックの予測サンプルは、前記第1の映像ブロックのブロックベクトルによって示される前記第1の映像ブロックを含む同じピクチャから導出される、
請求項1~7のいずれか1項に記載の方法。
【請求項9】
前記第1の映像ブロックの幅及び高さがそれぞれ64以下である場合、前記ビットストリームにおいて前記第2の指示が信号通知される、
請求項1~8のいずれか1項に記載の方法。
【請求項10】
前記第1の映像ブロックの前記ツリータイプがDUAL_TREE_CHROMAでなく、且つ、前記第1の映像ブロックの前記モードタイプがMODE_TYPE_INTERでない場合、前記ビットストリームにおいて前記第2の指示が信号通知される、
請求項1~8のいずれか1項に記載の方法。
【請求項11】
前記第2の指示は、前記第1の指示の後に信号通知される、
請求項1~8のいずれか1項に記載の方法。
【請求項12】
前記映像の第2の映像ブロックと前記映像のビットストリームとの第2の変換のために、前記第2の映像ブロックに対して前記第1の予測モードが有効化されると判定することと、
前記第2の映像ブロックのために、前記第2の映像ブロックに関連する量子化パラメータを決定することと、
前記量子化パラメータの修正値に基づいて前記エスケープサンプルを導出することと、
少なくとも前記量子化パラメータの前記修正値に基づいて、前記第2の変換を行うことと、を更に含む、
請求項1~11のいずれか一項に記載の方法。
【請求項13】
前記量子化パラメータの前記修正値は、Max(4+T,Qp)に等しく、Qpは前記量子化パラメータを示し、Tは非負整数値である、
請求項12に記載の方法。
【請求項14】
Tは、前記ビットストリームに含まれるシーケンスレベル構文要素に基づいて決定される、
請求項13に記載の方法。
【請求項15】
前記量子化パラメータの前記修正値は、クリップ関数に基づいて導出される、
請求項12~14のいずれか1項に記載の方法。
【請求項16】
前記量子化パラメータの前記修正値と、変換スキップモードで適用される前記量子化パラメータとが、同じ値の制限を有する、
請求項12~15のいずれか1項に記載の方法。
【請求項17】
前記量子化パラメータの前記修正値と、前記変換スキップモードで適用される前記量子化パラメータとが、同じ最小許容値を有する、
請求項16に記載の方法。
【請求項18】
前記第1の変換は、前記第1の映像ブロックを前記ビットストリームに符号化することを含む、
請求項1~17のいずれかに記載の方法。
【請求項19】
前記第1の変換は、前記ビットストリームから前記第1の映像ブロックを復号することを含む、
請求項1~17のいずれかに記載の方法。
【請求項20】
処理装置と、命令が記憶された非一時的メモリと、を備える映像データを処理する装置であって、
前記命令は、前記処理装置による実行時に、前記処理装置に、
映像の視覚メディアデータの第1の映像ブロックと前記映像のビットストリームとの第1の変換のために、第1の所定の条件に基づいて、前記ビットストリームにおいて第1の指示が信号通知されているか否かを判定することと、
少なくとも前記判定に基づいて、前記第1の変換を行うことと、を実行させ、
前記第1の所定の条件は、前記第1の映像ブロックの寸法に関連し、
前記第1の指示は、前記第1の映像ブロックに対して第1の予測モードを有効にするか否かを示し、
前記第1の予測モードにおいて、再構成されたサンプルは、代表的な色値のセットによって表され、前記代表的な色値のセットは、1)パレット予測子、2)エスケープサンプル、または3)ビットストリームに含まれるパレット情報のうちの少なくとも1つを含む、
装置。
【請求項21】
命令を記憶する非一時的なコンピュータ可読記憶媒体であって、
前記命令は、処理装置に、
映像の視覚メディアデータの第1の映像ブロックと前記映像のビットストリームとの第1の変換のために、第1の所定の条件に基づいて、前記ビットストリームにおいて第1の指示が信号通知されているか否かを判定することと、
少なくとも前記判定に基づいて、前記第1の変換を行うことと、を実行させ、
前記第1の所定の条件は、前記第1の映像ブロックの寸法に関連し、
前記第1の指示は、前記第1の映像ブロックに対して第1の予測モードを有効にするか否かを示し、
前記第1の予測モードにおいて、再構成されたサンプルは、代表的な色値のセットによって表され、前記代表的な色値のセットは、1)パレット予測子、2)エスケープサンプル、または3)ビットストリームに含まれるパレット情報のうちの少なくとも1つを含む、
非一時的なコンピュータ可読記憶媒体。
【請求項22】
映像処理装置によって実行される方法によって生成された映像のビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、
前記方法は、
前記映像の視覚メディアデータの第1の映像ブロックのために、第1の所定の条件に基づいて、前記ビットストリームにおいて第1の指示が信号通知されているか否かを判定することと、
前記判定に基づいて、前記ビットストリームを生成することと、を含み、
前記第1の所定の条件は、前記第1の映像ブロックの寸法に関連し、
前記第1の指示は、前記第1の映像ブロックに対して第1の予測モードを有効にするか否かを示し、
前記第1の予測モードにおいて、再構成されたサンプルは、代表的な色値のセットによって表され、前記代表的な色値のセットは、1)パレット予測子、2)エスケープサンプル、または3)ビットストリームに含まれるパレット情報のうちの少なくとも1つを含む、
非一時的なコンピュータ可読記録媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
関連出願の相互参照
本願は、日本特許出願2022-503887号の分割出願であり、この日本特許出願は、2020年2月24日出願の国際特許出願PCT/CN2020/076369号に基づくものであり、この国際特許出願は、2019年7月20日出願の国際特許出願PCT/CN2019/096933号の優先権および利益を主張する。上記出願の開示全体は、本明細書の開示の一部として参照により援用される。
【外国語明細書】