(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-07-12
(54)【発明の名称】コーディングされた映像における量子化情報の信号通知
(51)【国際特許分類】
H04N 19/70 20140101AFI20230705BHJP
【FI】
H04N19/70
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022577200
(86)(22)【出願日】2021-06-22
(85)【翻訳文提出日】2023-01-25
(86)【国際出願番号】 CN2021101390
(87)【国際公開番号】W WO2021259223
(87)【国際公開日】2021-12-30
(31)【優先権主張番号】PCT/CN2020/097390
(32)【優先日】2020-06-22
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(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)【発明者】
【氏名】ジャン リー
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA04
5C159MA05
5C159MC11
5C159ME01
5C159PP04
5C159RB09
5C159RC11
5C159RC40
5C159UA02
5C159UA05
(57)【要約】
映像符号化方法および装置、映像復号方法および装置の例について説明する。例示的な映像処理方法は、規則に従って、映像の現在のピクチャと映像のビットストリームとの変換を行うことを含む。この規則は、現在のピクチャが、リカバリピクチャ順序カウント(POC)値が0である漸次的復号更新(GDR)ピクチャであることに呼応して、現在のピクチャがリカバリポイントピクチャであることを規定する。リカバリPOCカウントは、復号されたピクチャのリカバリポイントを出力順に規定する。
【選択図】
図7
【特許請求の範囲】
【請求項1】
現在の映像ブロックを含む映像と前記映像のビットストリームとの変換を行うこと、を含む映像データの処理方法であって、
前記現在の映像ブロックの前記変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の特性が、規則に従って1つ以上の他の構文要素に依存する、映像データの処理方法。
【請求項2】
前記特性は前記第1の構文要素の値を含み、前記規則は前記第1の構文要素の前記値が、前記QPテーブルを記述するために使用する開始輝度および彩度QPを規定する第2の構文要素の値に基づくことを規定する、請求項1に記載の方法。
【請求項3】
前記QPテーブルは、QPテーブルの数におけるi番目のQPテーブルであることを特徴とする請求項2に記載の方法。
【請求項4】
前記第1の構文要素の前記値は、(K-前記第2の構文要素の前記値)に等しく、Kは正の整数である、請求項2に記載の方法。
【請求項5】
前記第2の構文要素はsps_qp_table_start_minus26[i]で表され、その値に26を加えることによりi番目のQPテーブルを記述するために使用する開始輝度および彩度QPを規定する、請求項3または4に記載の方法。
【請求項6】
前記第1の構文要素の前記値は、(36-sps_qp_table_start_minus26[i])に等しい、請求項5に記載の方法。
【請求項7】
Kが(最大許容QP値-1)に等しい、請求項3から請求項6のいずれかに記載の方法。
【請求項8】
前記特性は、前記第1の構文要素が明示的に示されているかどうかを含む、請求項1に記載の方法。
【請求項9】
前記特性は、前記第1の構文要素の推論値を含む、請求項1に記載の方法。
【請求項10】
前記特性は、前記第1の構文要素が取り得る値の範囲を含む、請求項1に記載の方法。
【請求項11】
前記規則は、前記第1の構文要素と開始輝度および彩度QPとの値の合計が、最大許容QP値より小さいことを規定する、請求項10に記載の方法。
【請求項12】
映像と前記映像のビットストリームとの変換を行うこと、を含む映像データの処理方法であって、
前記ビットストリームは、入力量子化パラメータ(QP)値および出力QP値が-QpBdOffset~Kの範囲にあることを規定する規則に準拠し、QpBdOffsetは、輝度および彩度量子化パラメータの範囲オフセットの値を規定し、Kは最大許容QP値に関連付けられる、映像データの処理方法。
【請求項13】
Kは(前記最大許容QP値-1)に等しい、請求項12に記載の方法。
【請求項14】
前記最大許容QP値は63に等しい、請求項7、請求項11または請求項13に記載の方法。
【請求項15】
前記変換は、前記映像を前記ビットストリームに符号化することを含む、請求項1から請求項10のいずれかに記載の方法。
【請求項16】
前記変換は、前記ビットストリームから前記映像を復号することを含む、請求項1から請求項10のいずれかに記載の方法。
【請求項17】
映像のビットストリームを記憶するための方法であって、
前記映像の現在の映像ブロックから前記映像のビットストリームを生成することと、
前記生成されたビットストリームを記憶することと、を含み、
前記現在の映像ブロックの変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定するの第1の構文要素の特性が、規則に従って1つ以上の他の構文要素に依存する、映像のビットストリームを記憶するための方法。
【請求項18】
映像のビットストリームを記憶するための方法であって
前記映像から前記映像のビットストリームを生成することと、
前記生成されたビットストリームを記憶することと、を含み、
前記ビットストリームは、入力量子化パラメータ(QP)値と出力量子化パラメータ(QP)値が-QpBdOffset~Kの範囲にあることを規定する規則に準拠し、QpBdOffsetは、輝度および彩度の量子化パラメータ範囲オフセットの値を規定し、Kは最大許容QP値と関連付けられる、映像のビットストリームを記憶するための方法。
【請求項19】
請求項1から請求項18の1項以上に記載の方法を実装するように構成されるプロセッサを備える、映像復号装置。
【請求項20】
請求項1から請求項18の1項以上に記載の方法を実装するように構成されるプロセッサを備える、映像符号化装置。
【請求項21】
コンピュータコードが記憶されたコンピュータプログラム製品であって、前記コードは、プロセッサにより実行されると、前記プロセッサに、請求項1から請求項18のいずれかに記載の方法を実装させるコンピュータプログラム製品。
【請求項22】
映像処理装置により行われる方法で生成される映像のビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、
前記映像の現在の映像ブロックから前記映像のビットストリームを生成することと、
前記生成されたビットストリームを記憶することと、を含み、
前記現在の映像ブロックの前記変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の特性が、規則に従って1つ以上の他の構文要素に依存する、非一時的なコンピュータ可読記録媒体。
【請求項23】
映像処理装置により行われる方法で生成される映像のビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、
前記映像から前記映像のビットストリームを生成することと、
前記生成されたビットストリームを記憶することと、を含み、
前記ビットストリームは、入力量子化パラメータ(QP)値と出力量子化パラメータ(QP)値が-QpBdOffset~Kの範囲にあることを規定する規則に準拠し、QpBdOffsetは、輝度および彩度の量子化パラメータ範囲オフセットの値を指定し、Kは、最大許容QP値と関連付けられる、非一時的なコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
パリ条約に基づく適用可能な特許法および/または規則に基づいて、本願は、2020年6月22日出願の国際特許出願第PCT/CN2020/097390号の優先権および利益を適時に主張することを目的とする。法に基づくすべての目的のために、上記出願の開示全体は、本明細書の開示の一部として参照により援用される。
【0002】
この特許明細書は、画像および映像コーディングおよび復号に関する。
【背景技術】
【0003】
デジタル映像は、インターネットおよび他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信および表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
【発明の概要】
【0004】
本明細書は、映像符号化または復号を行うために、映像エンコーダおよびデコーダによって使用され得る技術を開示する。
【0005】
1つの例示的な態様において、映像データを処理する方法が開示される。この方法は、規則に従って、映像の現在のピクチャと映像のビットストリームとの変換を行うことを含む。この規則は、現在のピクチャが、リカバリピクチャ順序カウント(POC)が0である漸次的復号更新(GDR)ピクチャであることに呼応して、現在のピクチャがリカバリポイントピクチャであることを規定する。リカバリPOCカウントは、復号されたピクチャのリカバリポイントを出力順に規定する。
【0006】
別の例示的な態様において、映像データを処理する方法が開示される。この方法は、規則に従って映像とこの映像のビットストリームとの変換を行うことを含む。この規則は、一般的制約情報(GCI)構文構造の構文要素が、瞬時復号更新(IDR)ピクチャおよび混合ネットワーク抽象化レイヤ(NAL)ユニットタイプの使用に関連付けられた参照ピクチャリストを示すことを規定するものである。
【0007】
別の例示的な態様において、映像データを処理する方法が開示される。この方法は、現在の映像ブロックを含む映像とこの映像のビットストリームとの変換を行うことを含む。現在の映像ブロックの変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の特性が、規則に従って1つ以上の他の構文要素に依存する。
【0008】
別の例示的な態様において、映像データを処理する方法が開示される。この方法は、映像と映像のビットストリームとの変換を行うことを含む。このビットストリームは、入力量子化パラメータ(QP)値および出力QP値が-QpBdOffset~Kの範囲にあることを規定する規則に準拠し、QpBdOffsetは、輝度および彩度量子化パラメータの範囲オフセットの値を規定し、Kは最大許容QP値に関連付けられる。
【0009】
別の例示的な態様において、映像処理方法が開示される。この方法は、映像とこの映像のコーディングされた表現との変換を行うことを含み、このコーディングされた表現は、フォーマット規則に準拠し、このフォーマット規則は、対応する映像セグメントに対する参照ピクチャの再サンプリングの適用可能性を示す構文フィールドの使用を規定する。
【0010】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、映像とこの映像のコーディングされた表現との変換を行うことを含み、このコーディングされた表現は、フォーマット規則に準拠し、このフォーマット規則は、アクセスユニット区切り文字に対応する第2の構文要素の値に基づいて、ピクチャヘッダまたはスライスヘッダにおける第1の構文要素の値を制約することを規定する。
【0011】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、映像とこの映像のコーディングされた表現との変換を行うことを含み、このコーディングされた表現はフォーマット規則に準拠し、フォーマット規則は、一般的制約情報フィールドに1つ以上の構文要素が含まれるかどうか、およびどのように含まれるかを規定する。
【0012】
さらに別の例示的な態様において、映像エンコーダ装置が開示される。映像エンコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0013】
さらに別の例示的な態様において、映像デコーダ装置が開示される。映像デコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0014】
さらに別の例示的な態様では、コードが記憶されたコンピュータ可読媒体が開示される。このコードは、本明細書に記載の方法の1つをプロセッサが実行可能なコードの形式で実施する。
【0015】
これらの、およびその他の特徴は、本明細書全体にわたって説明されている。
【図面の簡単な説明】
【0016】
【
図1】本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。
【
図2】映像処理に使用されるハードウェアプラットフォームの例を示すブロック図である。
【
図3】例示の映像処理方法を示すフローチャートである。
【
図4】例示的な映像コーディングシステムを示すブロック図である。
【
図5】本開示のいくつかの実施形態によるエンコーダを示すブロック図である。
【
図6】本発明のいくつかの実施形態によるデコーダを示すブロック図である。
【
図7】本技術の1つ以上の実施形態による映像データ処理の方法を表すフローチャートである。
【
図8】本技術の1つ以上の実施形態による映像データ処理の別の方法を表すフローチャートである。
【
図9】本技術の1つ以上の実施形態による映像データ処理の別の方法を表すフローチャートである。
【
図10】本技術の1つ以上の実施形態による映像データ処理のさらに別の方法を表すフローチャートである。
【発明を実施するための形態】
【0017】
本明細書では、理解を容易にするために章の見出しを使用しており、その技術および各章に記載された実施形態の適用可能性をその章のみに限定するものではない。さらに、H.266という用語は、ある説明において、理解を容易にするためだけに用いられ、開示される技術の範囲を限定するために用いられたものではない。このように、本明細書で説明される技術は、他の映像コーデックプロトコルおよび設計にも適用可能である。
【0018】
1. 概要
本開示は、映像コーディング技術に関する。具体的には、参照ピクチャ再サンプリング(RPR)フラグ変数の導出、アクセス制限区切り文字(AUD)と構文要素との関係、映像コーディングにおける他のNALユニットでの一般的制約情報(GCI)の信号通知についてである。この考えは、個々にまたは様々な組み合わせで、多レイヤ映像コーディング、例えば、現在開発されているVVC(Versatile Video Coding)をサポートする任意の映像コーディング規格または非標準映像コーデックに適用されてもよい。
【0019】
2. 略語
APS Adaptation Parameter Set(適応パラメータセット)
AU Access Unit(アクセスユニット)
AUD Access Unit Delimiter(アクセスユニット区切り文字)
AVC Advanced Video Coding(高度映像コーディング)
CLVS Coded Layer Video Sequence(コーディングされたレイヤ映像シーケンス)
CPB Coded Picture Buffer(コーディングされたピクチャバッファ)
CRA Clean Random Access(クリーンランダムアクセス)
CTU Coding Tree Unit(コーディングツリーユニット)
CVS Coded Video Sequence(コーディングされた映像シーケンス)
DPB Decoded Picture Buffer(復号されたピクチャバッファ)
DPS Decoding Parameter Set(復号パラメータセット)
EOB End Of Bitstream(ビットストリーム終端)
EOS End Of Sequence(シーケンス終端)
GCI General Constraints Information(一般的制約情報)
GDR Gradual Decoding Refresh(漸次的復号更新)
HEVC High Efficiency Video Coding(高効率映像コーディング)
HRD Hypothetical Reference Decoder(仮想参照デコーダ)
IDR Instantaneous Decoding Refresh(瞬時復号更新)
IRAP Intra Random Access Point(イントラランダムアクセスポイント)
JEM Joint Exploration Model(共同探索モデル)
MCTS Motion-Constrained Tile Sets(動き制約タイルセット)
NAL Network Abstraction Layer(ネットワーク抽象化レイヤ)
OLS Output Layer Set(出力レイヤセット)
PH Picture Header(ピクチャヘッダ)
POC Picture Order Count(ピクチャ順序カウント)
PPS Picture Parameter Set(ピクチャパラメータセット)
PTL Profile,Tier and Level(プロファイル、ティアおよびレベル)
PU Picture Unit(ピクチャユニット)
RRP Reference Picture Resampling(参照ピクチャ再サンプリング)
RBSP Raw Byte Sequence Payload(生バイトシーケンスペイロード)
SE Syntax Element(構文要素)
SEI Supplemental Enhancement Information(補足強化情報)
SH Slice Header(スライスヘッダ)
SPS Sequence Parameter Set(シーケンスパラメータセット)
SVC Scalable Video Coding(スケーラブル映像コーディング)
VCL Video Coding Layer(映像コーディングレイヤ)
VPS Video Parameter Set(映像パラメータセット)
VTM VVC Test Model(VVC試験モデル)
VUI Video Usability Information(映像ユーザビリティ情報)
VVC Versatile Video Coding(汎用映像コーディング)
【0020】
3. 映像コーディングの導入
映像符号化規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4Visualを作り、両団体はH.262/MPEG-2VideoとH.264/MPEG-4AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像コーディング規格は、時間的予測と変換コーディングが利用されるハイブリッド映像コーディング構造に基づく。HEVCを超えた将来の映像コーディング技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Model)と呼ばれる参照ソフトウェアに組み込まれてきた。JVETは四半期に1回開催され、新しいコーディング規格はHEVCに比べて50%のビットレート低減を目指している。2018年4月のJVET会議において、新しい映像コーディング規格を「VVC(Versatile Video Coding)」と正式に命名し、その時、第1版のVVCテストモデル(VTM)をリリースした。VVCの標準化に寄与する努力が続けられているので、すべてのJVET会議において、VVC標準に新しいコーディング技術が採用されている。毎回の会議の後、VVC作業草案およびテストモデルVTMを更新する。VVCプロジェクトは、現在、2020年7月の会合における技術完成(FDIS)を目指している。
【0021】
3.1 シーケンス内のピクチャ解像度の変更
AVCおよびHEVCにおいて、ピクチャの空間的解像度は、新しいSPSを使用する新しいシーケンスがIRAPピクチャで始まらない限り、変更することができない。VVCは、常にイントラコーディング化されたIRAPピクチャを符号化せずに、ある位置のシーケンス内でピクチャの解像度を変更することを可能にする。この特徴は、参照ピクチャが復号されている現在のピクチャと異なる解像度を有する場合、インター予測に使用される参照ピクチャを再サンプリングすることが必要であるため、時として参照ピクチャ再サンプリング(RPR)と称せられる。
【0022】
スケーリング比は、1/2(参照ピクチャから現在のピクチャへのダウンサンプリングの2倍)以上8(8倍のアップサンプリング)以下に制限される。参照ピクチャと現在のピクチャとの間の様々なスケーリング比に対処するために、周波数カットオフが異なる3つの再サンプリングフィルタセットを規定する。3つの組の再サンプリングフィルタは、それぞれ、1/2~1/1.75、1/1.75~1/1.25、および1/1.25~8の範囲のスケーリング比に適用される。各組の再サンプリングフィルタは、動き補償補間フィルタの場合と同様に、輝度に対して16個のフェーズを有し、彩度に対して32個のフェーズを有する。実際には、通常のMC補間プロセスは、1/1.25~8の範囲のスケーリング比を有する再サンプリングプロセスの特殊な場合である。水平および垂直スケーリング比は、ピクチャの幅および高さ、並びに参照ピクチャおよび現在のピクチャに対して規定された左、右、上および下のスケーリングオフセットに基づいて導出される。
【0023】
HEVCとは異なる、この特徴をサポートするためのVVC設計の他の態様は、i)SPSの代わりにPPSにおいてピクチャ解像度および対応する適合性ウィンドウを信号通知すること、SPSにおいて最大ピクチャ解像度を信号通知すること、ii)単レイヤビットストリームの場合、各ピクチャ記憶装置(1つの復号されたピクチャを記憶するためのDPBにおける1つのスロット)は、最大ピクチャ解像度を有する復号されたピクチャを記憶するために必要なバッファサイズを占めることを含む。
【0024】
3.2. 全般およびVVCにおけるスケーラブル映像コーディング(SVC)
SVC(Scalable Video Coding、時には、映像コーディングにおけるスケーラビリティとも呼ばれる)は、BL(Base Layer:基本レイヤ)(時には、RL(Reference Layer:参照レイヤ)と呼ばれる)および1または複数のEL(Enhancement Layer:スケーラブルエンハンスメントレイヤ)が使用される映像コーディングを参照する。SVCにおいて、ベースレイヤは、基本品質レベルの映像データを担持することができる。1つ以上のエンハンスメントレイヤは、例えば、より高い空間的、時間的、および/または信号対雑音(SNR)レベルをサポートするように、追加の映像データを担持することができる。エンハンスメントレイヤは、前の符号化されたレイヤに対して定義されてもよい。例えば、下層がBLとして機能し、上層がELとして機能することができる。中間レイヤは、ELまたはRLのいずれか、またはその両方として機能することができる。例えば、中間レイヤ(例えば、最下レイヤでも最上レイヤでもないレイヤ)は、中間レイヤの下のレイヤ、例えば、ベースレイヤまたは任意の介在する増強レイヤのためのELであってもよく、同時に、中間レイヤの上の1つ以上の増強レイヤのためのRLとしての役割を果たす。同様に、HEVC規格のマルチビューまたは3D拡張では、複数のビューが存在してもよく、1つのビューの情報を利用して別のビューの情報をコーディング(例えば、符号化または復号)することができる(例えば、動き推定、動きベクトル予測および/または他の冗長性)。
【0025】
SVCにおいて、エンコーダまたはデコーダで使用されるパラメータは、それらを利用することができるコーディングレベル(例えば、映像レベル、シーケンスレベル、ピクチャレベル、スライスレベル等)に基づいてパラメータセットにグループ分けされる。例えば、ビットストリームの異なるレイヤの1つ以上のコーディングされた映像シーケンスにより利用できるパラメータが、映像パラメータセット(VPS)に含まれてもよく、コーディングされた映像シーケンスの1つ以上のピクチャにより利用されるパラメータが、シーケンスパラメータセット(SPS)に含まれてもよい。同様に、1つのピクチャの1つ以上のスライスで利用されるパラメータは、ピクチャパラメータセット(PPS)に含まれてもよく、1つのスライスに固有の他のパラメータは、スライスヘッダに含まれてもよい。同様に、特定のレイヤが所与の時間にどのパラメータセットを使用しているかの指示は、様々なコーディングレベルで提供されてもよい。
【0026】
VVCにおけるRPR(Reference Picture Resampling)のサポートのおかげで、空間的スケーラビリティサポートに必要なアップサンプリングはRPRアップサンプリングフィルタを使用するだけでよいので、追加の信号処理レベルのコーディングツールを必要とせずに、複数のレイヤ、例えば、VVCにおけるSDおよびHD解像度の2つのレイヤを含むビットストリームをサポートするように設計することができる。それにもかかわらず、スケーラビリティサポートのためには、高レベルの構文変更(スケーラビリティをサポートしない場合と比較して)が必要である。スケーラビリティサポートは、VVCバージョン1に規定されている。AVCおよびHEVCの拡張を含む、任意の以前の映像コーディング規格におけるスケーラビリティサポートとは異なり、VVCのスケーラビリティの設計は、単レイヤデコーダの設計にできるだけ適したものにされてきた。多レイヤビットストリームに対する復号能力は、ビットストリームに1つのレイヤしかなかったかの如く規定される。例えば、DPBサイズのような復号能力は、復号されるビットストリームのレイヤの数に依存しないようで規定される。基本的に、単レイヤビットストリームのために設計されたデコーダは、多レイヤビットストリームを復号することができるようにするために、多くの変更を必要としない。AVCおよびHEVCの多レイヤ拡張の設計と比較して、HLSの態様は、ある程度の柔軟性を犠牲にして大幅に簡略化されてきた。例えば、IRAP AUは、CVSに存在するレイヤの各々にピクチャを含むことが必要である。
【0027】
3.3 パラメータセット
AVC、HEVC、VVCはパラメータ集合を規定する。パラメータセットのタイプは、SPS、PPS、APS、VPS等である。SPS、PPSは、AVC、HEVC、VVCのすべてでサポートされている。VPSは、HEVCから導入されたものであり、HEVCおよびVVCの両方に含まれる。APSは、AVCまたはHEVCに含まれていなかったが、最近のVVC草案のテキストに含まれている。
【0028】
SPSは、シーケンスレベルのヘッダ情報を担持するように設計され、PPSは、頻繁に変化しないピクチャレベルのヘッダ情報を担持するように設計された。SPSおよびPPSを用いると、シーケンスまたはピクチャごとに頻繁に変化する情報を繰り返す必要がないので、この情報の冗長な信号通知を回避することができる。さらに、SPSおよびPPSを使用することは、重要なヘッダ情報の帯域外伝送を有効化し、それにより、冗長な伝送の必要性を回避するだけでなく、誤り耐性を改善する。
【0029】
VPSは、多レイヤのビットストリームのすべてのレイヤに共通であるシーケンスレベルのヘッダ情報を担持するために導入された。
【0030】
APSは、コーディングするためのかなりのビットを必要とし、複数のピクチャによって共有され、そして、シーケンスにおいて非常に多くの異なる変形例が存在し得る、そのようなピクチャレベルまたはスライスレベルの情報を担持するために導入された。
【0031】
3.4. RPR関連構文要素および変数フラグの意味論
RPRに関連する構文要素の意味および変数フラグの導出は、最近のVVC草案のテキストにおいて以下のようである。
7.4.3.3 シーケンスパラメータセットRBSP意味論
...
1に等しいsps_ref_pic_resampling_enabled_flagは、参照ピクチャの再サンプリングが有効化され、SPSを参照する現在のピクチャが、現在のピクチャとは異なる以下の7つのパラメータのうちの1つ以上を有する参照ピクチャリストのアクティブエントリの参照ピクチャを参照するスライスを有していてもよいことを規定する。1)pps_pic_width_in_luma_samples,2)pps_pic_height_in_luma_samples,3)pps_scaling_win_left_offset,4)pps_scaling_win_right_offset,5)pps_scaling_win_top_offset,6)pps_scaling_win_bottom_offset,および7)sps_num_subpics_minus1。sps_ref_pic_resampling_enabled_flagが0に等しいことは、参照ピクチャの再サンプリングが無効化され、SPSを参照する現在のピクチャが、現在のピクチャとは異なる上記の7つのパラメータのうちの1つ以上を有する参照ピクチャリストのアクティブエントリの参照ピクチャを参照するスライスを有していなくてもよいことを規定する。
注3-sps_ref_pic_resampling_enabled_flagが1に等しい場合、現在のピクチャについて、現在のピクチャとは異なる上記の7つのパラメータの1つ以上を有する参照ピクチャは、現在のピクチャを含むレイヤと同じレイヤに属してもよいし、異なるレイヤに属してもよい。
sps_res_change_in_clvs_allowed_flagが1に等しいことは、SPSを参照するCLVS内でピクチャの空間的解像度が変化する可能性があることを規定する。
sps_res_change_in_clvs_allowed_flagが0に等しいことは、SPSを参照するいかなるCLVS内でもピクチャの空間的解像度が変化しない可能性があることを規定する。存在しない場合、sps_res_change_in_clvs_allowed_flagの値は0に等しいと推論される。
...
8.3.2 参照ピクチャリスト構築のための復号処理
...
fRefWidthは、参照ピクチャRefPicList[i][j]のCurrPicScalWinWidthLに等しく設定される。
fRefHeightは、参照ピクチャRefPicList[i][j]のCurrPicScalWinHeightLに等しく設定される。
refPicWidth、refPicHeight、refScalingWinLeftOffset、refScalingWinRightOffset、refScalingWinTopOffset、refScalingWinBottomOffsetはpps_pic_width_in_luma_samplesの値と等しく設定され、pps_pic_height_in_luma_samples、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offset、それぞれ参照ピクチャRefPicList[i][j]の値に等しく設定される。
fRefNumSubpicsは、参照ピクチャRefPicList[i][j]のsps_num_subpics_minus1に等しく設定される。
RefPicScale[i][j][0]=((fRefWidth<<14)+(CurrPicScalWinWidthL>>1))/
CurrPicScalWinWidthL
RefPicScale[i][j][1]=((fRefHeight<<14)+(CurrPicScalWinHeightL>>1))/
CurrPicScalWinHeightL
RprConstraintsActiveFlag[i][j]=(pps_pic_width_in_luma_samples!=refPicWidth||
pps_pic_height_in_luma_samples!=refPicHeight||
pps_scaling_win_left_offset!=refScalingWinLeftOffset||
pps_scaling_win_right_offset!=refScalingWinRightOffset||
pps_scaling_win_top_offset!=refScalingWinTopOffset||
pps_scaling_win_bottom_offset!=refScalingWinBottomOffset||
sps_num_subpics_minus1!=fRefNumSubpics)
...
【0032】
3.5 アクセスユニット区切り文字(AUD)
最近のVVC草案テキストにおける、AUDの構文および意味論は、以下の通りである。
【表1】
AU区切り文字を使用して、AU区切り文字の先頭、AUがIRAPであるかGDR AUであるか、およびAU区切り文字NALユニットを含むAU内のコーディングされたピクチャに存在するスライスの種類を表す。ビットストリームが単レイヤの場合、AU区切り文字に関連付けられた規範的な復号処理は存在しない。
aud_irap_or_gdr_au_flagが1に等しいことは、AU区切り文字を含むAUがIRAPまたはGDR AUであることを規定する。aud_irap_or_gdr_au_flagか0に等しいことは、AU区切り文字を含むAUがIRAPまたはGDR AUでないことを規定する。
aud_pic_typeは、AU区切り文字NALユニットを含むAUにおけるコーディングされたピクチャのすべてのスライスのsh_slice_type値が、所与のaud_pic_type値について、表7にリストされるセットのメンバーであることを示す。本明細書のこのバージョンに準拠するビットストリームにおいて、aud_pic_typeの値は0、1、または2に等しいものとする。aud_pic_typeの他の値は、ITU-T|ISO/IECで将来使用されるよう、確保されている。本明細書バージョンに準拠するデコーダは、aud_pic_typeの確保された値を無視しなければならない。
表7-aud_pic_typeの解釈
【表2】
【0033】
3.6. GCI(一般的制約情報)
最近のVVC草案テキストにおいて、一般的なプロファイル、ティア、レベル構文、および意味論は、以下の通りである。
7.3.3 プロファイル、ティアおよびレベル構文
7.3.3.1 一般的なプロファイル、ティア、レベル構文
【表3】
7.3.3.2 一般的制約情報構文
【表4】
【表5】
【0034】
3.7. GCIフィールドの条件付き信号通知
いくつかの実施例において、GCI構文構造は変更されている。GCI構文構造において、GCI拡張長指標(gci_num_reserved_bytes)を最後から最初(gci_num_constraint_bytes)に移動させることにより、GCIフィールドのスキップ信号通知を可能にする。gci_num_reserved_bytesの値は、0または9に等しいものとする。
【0035】
太字のイタリック体において、追加または修正された部分には下線を付し、削除された部分は、[[]]を以下に使用して示す。
【表6】
【0036】
3.8. 輝度-彩度QPマッピングテーブル
7.3.2.3 シーケンスパラメータセットRBSP構文
【表7】
sps_qp_table_start_minus26[i]+26は、i番目の彩度QPマッピングテーブルを説明するために使用される開始輝度および彩度QPを規定する。sps_qp_table_start_minus26[i]の値は、-26-QpBdOffset~36の範囲内にあるものとする。存在しない場合、sps_qp_table_start_minus26[i]の値は0に等しいと推論される。
sps_num_points_in_qp_table_minus1[i]+1は、i番目の彩度QPマッピングテーブルを説明するために使用されるポイントの数を規定する。sps_num_points_in_qp_table_minus1[i]の値は、0~63+QpBdOffsetの範囲内にあるものとする。存在しない場合、sps_num_points_in_qp_table_minus1[0]の値は0に等しいと推論される。
sps_delta_qp_in_val_minus1[i][j]は、i番目の彩度QPマッピングテーブルのj番目のピボットポイントの入力座標を導出するために使用するデルタ値を規定する。存在しない場合、sps_delta_qp_in_val_minus1[0][j]の値は0に等しいと推論される。
sps_delta_qp_diff_val[i][j]は、i番目の彩度QPマッピングテーブルのj番目のピボットポイントの出力座標を導出するために使用するデルタ値を規定する。
i=0..numQpTables-1のi番目の彩度QPマッピングテーブルChromaQpTable[i]は、以下のように導出される。
qpInVal[i][0]=sps_qp_table_start_minus26[i]+26
qpOutVal[i][0]=qpInVal[i][0]
for(j=0;j<=sps_num_points_in_qp_table_minus1[i];j++){
qpInVal[i][j+1]=qpInVal[i][j]+sps_delta_qp_in_val_minus1[i][j]+1
qpOutVal[i][j+1]=qpOutVal[i][j]+
(sps_delta_qp_in_val_minus1[i][j]^sps_delta_qp_diff_val[i][j])
}
ChromaQpTable[i][qpInVal[i][0]]=qpOutVal[i][0]
for(k=qpInVal[i][0]-1;k>=-QpBdOffset;k--)
ChromaQpTable[i][k]=Clip3(-QpBdOffset,63,ChromaQpTable[i][k+1]-1) (63)
for(j=0;j<=sps_num_points_in_qp_table_minus1[i];j++){
sh=(sps_delta_qp_in_val_minus1[i][j]+1)>>1
for(k=qpInVal[i][j]+1,m=1;k<=qpInval[i][j+1];k++,m++)
ChromaQpTable[i][k]=ChromaQpTable[i][qpInVal[i][j]]+
((qpOutVal[i][j+1]-qpOutVal[i][j])*m+sh)/(sps_delta_qp_in_val_minus1[i][j]+1)
}
for(k=qpInVal[i][sps_num_points_in_qp_table_minus1[i]+1]+1;k<=63;k++)
ChromaQpTable[i][k]=Clip3(-QpBdOffset,63,ChromaQpTable[i][k-1]+1)
sps_same_qp_table_for_chroma_flagが1に等しい場合、ChromaQpTable[1][k]およびChromaQpTable[2][k]は、-QpBdOffset~63までの範囲内にあるkについて、ChromaQpTable[0][k]に等しく設定される。
qpInVal[i][j]、qpOutVal[i][j]の値は、-QpBdOffset~63の範囲内にあり、iが0~numQpTables-1の範囲内にあり、jが0~sps_num_points_in_qp_table_minus1[i]+1の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
【0037】
4. 開示される技術的解決策によって対処する技術的問題
RPR、AU区切り文字およびGCIのための既存の設計は、以下の問題を有する。
【0038】
(1)sps_ref_pic_resampling_enabled_flagの意味論のためのsps_num_subpics_minus1およびフラグ変数RprConstraintsActiveFlag[i][j]の導出は、必要以上に制限されない。参照ピクチャが異なる数のサブピクチャを有する一方、現在のピクチャのすべてのサブピクチャがsps_subpic_treated_as_pic_flag[]は0に等しいとき、現在のピクチャに対してRprConstraintsActiveFlag[i][j]が1に等しい場合に無効になるすべてのツールの使用を無効化するというものであった。
【0039】
(2)現在、AU区切り文字(別名、AUD)構文構造において、AUに対して、IRAP/GDR AUであるかどうかとAUのピクチャタイプを示す2つの構文要素(例えば、aud_irap_or_gdr_au_flag、aud_pic_type)が信号通知される。AUD SEは、復号処理の他の部分では使用されない。しかし、PHにおいて、類似した意図をaud_irap_or_gdr_au_flagとして表すSE(例えば、ph_gdr_or_irap_pic_flag)が存在する。AUDが存在する場合、PH SEの値はAUD SEの値によって制約を受ける可能性があると主張する。また、SHには、sh_slice_typeというSEがあるが、これもaud_pic_typeの値で制約をかけることができる。
【0040】
(3)最近のVVC草案本文およびいくつかの実施形態において、GCI信号通知のための設計は、GCIフィールドと拡張バイトとの間にバイトアラインメントを有する。その結果、潜在的な将来の拡大において、新しいGCIフィールドを追加する必要がある場合、それらのフィールドは、現在のバイトアライメントビットの後に追加され、その後、別のバイトアライメントを追加する必要がある。
【0041】
(4)いくつかの実施形態において、GCI信号通知のための設計は、8ビットの構文要素を用いて、GCIフィールドのためのバイト数、バイトアラインメントビット数、および拡張バイト数を規定する。しかし、VVCバージョン1の場合、構文要素の値は0または9に等しいことが必要であり、即ち、(VVCバージョン1のすべてのGCIフィールドに必要なビット数によって)0または0より大きい特定の整数値であることが必要である。潜在的な将来の拡張において、特定の新しいGCIフィールドが追加された後、その8ビット構文要素の値は、0に等しいか、または9より大きい別の特定の値である必要があり、例えば、新しいGCIフィールドに9ビットから16ビットを超えるビットが必要である場合、11である。これは、任意のバージョンのVVCにおいて、8ビット構文要素の値が0に等しいか、または特定のゼロより大きい整数値になることを意味する。そのため、8ビットの値を信号通知する必要はなく、1ビットのフラグを信号通知するだけで十分であり、このフラグの値に従って値を導出する。
【0042】
(5)相互関連構文要素がPHにおいて信号通知されたかどうかと、空でないRPL0がPHにおいて信号通知されたかどうかとの関係が十分に確立されていないことが主張される。例えば、PHにおいて参照ピクチャリスト(RPL)が送信され、リスト0が空である場合、ph_inter_slice_allowed_flagの値を0に等しくなるように制約してもよい。および、その逆も同じである。
【0043】
(6)リカバリPOC距離がゼロであるGDRピクチャの場合、GDRピクチャ自体がリカバリポイントピクチャであると主張される。そして、これは仕様で考慮/表現されるべきである。
【0044】
(7)混合NALユニットタイプおよびビットストリームの抽出およびマージを考慮して、単一のGCIフラグは、sps_idr_rpl_present_flagおよびpps_mixed_nalu_types_in_pic_flagを共に制約するように信号通知してもよい。
【0045】
5. 実施形態の一覧
上述した問題点および上記以外の問題点を解決するために、以下のような方法が開示されている。本発明は、一般的な概念を説明するための例と見なされるべきであり、狭い意味で解釈されるべきではない。さらに、本発明は、個々に適用されてもよいし、任意に組み合わせて適用されてもよい。
1) 第1の問題を解決するために、RprConstraintsActiveFlag[i][j]の導出をsps_num_subpics_minus1を含まないように変更し、現在のピクチャと参照ピクチャRefPicList[i][j]に対してsps_num_subpics_minus1の値が異なる場合、そして、現在のピクチャのsps_subpic_treated_as_pic_flag[k]は、0からsps_num_subpics_minus1までの範囲内にある少なくとも1つのkの値に対して1に等しくなる場合、RprConstraintsActiveFlag[i][j]が1に等しいときに使用できないすべてのツール、例えばPROFは、エンコーダによってオフにする必要があり、そうでない場合、sps_subpic_treated_as_pic_flag[k]が1に等しい抽出されたサブピクチャが正しく復号可能とならないため、ビットストリームは非整合ビットストリームとなってしまうということを明確にするための注記が追加される。
a. 一例において、さらに、sps_ref_pic_resampling_enabled_flagの意味論は、sps_num_subpics_minus1を含まないように変更される。
b. 上記の説明は、インターレイヤ予測が許可される場合にのみ適用されるべきである。
2) 第1の問題を解決するために、RprConstraintsActiveFlagの導出は、サブピクチャをピクチャとして扱うかどうかにさらに依存する。
a. 一例において、RprConstraintsActiveFlag[i][j]の導出は、現在のピクチャに対して、kが0からsps_num_subpics_minus1までの範囲内にある、sps_subpic_treated_as_pic_flag[k]の値のうち少なくとも1つに依存してもよいように変更される。
b. 一例において、RprConstraintsActiveFlag[i][j]の導出は、現在のピクチャに対して、kが0からsps_num_subpics_minus1までの範囲内にあるsps_subpic_treated_as_pic_flag[k]のうち少なくとも1つが1に等しいかどうかに依存してもよいように変更される。
c. あるいは、さらに、現在のピクチャとその参照ピクチャとの間のサブピクチャの数が異なり、現在のピクチャがピクチャとして扱われるサブピクチャを有さない(例えば、sps_subpic_treated_as_pic_flagの値がすべて偽である)場合、RPRを依然として有効化してもよい。
i. あるいは、さらに、他の条件(例えば、スケーリングウィンドウのサイズ/オフセット)に従って、RprConstraintsActiveFlag[i][j]を設定してもよい。
d. あるいは、さらに、現在のピクチャとその参照ピクチャとの間のサブピクチャの数が異なり、現在のピクチャがピクチャとして扱われる少なくとも1つのサブピクチャを有する(例えば、sps_subpic_treated_as_pic_flagが真である)場合、他の構文要素の値(例えば、スケーリングウィンドウ)に関わらず、RPRは常に有効化される。
i. あるいは、さらに、上記の場合、RprConstraintsActiveFlag[i][j]を真に設定する。
e. あるいは、さらに、RprConstraintsActiveFlag[i][j]が真である場合、複数のツール(例えば、PROF/BDOF/DMVR)をそれに応じて無効化してもよい。
i.抽出した後にRprConstraintsActiveFlag[i][j]が真に等しい場合、複数のツール(例えば、PROF/BDOF/DMVR)をそれに応じて無効化してもよい。
f. あるいは、適合ビットストリームは、ピクチャとして扱われ、かつ、現在のピクチャとその参照ピクチャとの間のサブピクチャの数が異なる現在のピクチャのサブピクチャに対して、RprConstraintsActiveFlag[i][j]のチェックに依存するコーディングツール(例えば、PROF/BDOF/DMVR)を無効化してもよいことを満たすものとする。
g. あるいは、コーディングツール(例えば、PROF/BDOF/DMVR)のための復号処理を呼び出すかどうかは、現在のピクチャにおける現在のサブピクチャをピクチャとして扱うかどうか、および現在のピクチャとその参照ピクチャとの間のサブピクチャの数に依存してもよい。
i. 一例において、現在のピクチャにおける現在のサブピクチャをピクチャとして扱い、現在のピクチャとその参照ピクチャとの間のサブピクチャの数が異なる場合、SPS有効化フラグに関わらず、これらのコーディングツールを無効化する。
3) 第1の問題を解決するために、RprConstraintsActiveFlag[i][j]の導出は、現在のピクチャと参照ピクチャが同じレイヤに属するかどうか、および/またはレイヤ間予測が許可されるかどうかに依存してもよいように変更される。
4) 第2の問題を解決するために、AUD SEによるPH/SH SEの値の制約に関して、以下のアプローチの1つ以上が開示される。
a. 一例において、存在する場合、AUD構文要素の値に基づいて、SPS/PPS/APS/PH/SH構文要素の値を制約する。
b. 一例において、構文要素の値を制約することであって、それが、存在する場合に、GDR/IRAP AUであるかどうか(例えば、AUD構文要素aud_irap_or_gdr_au_flagの値)に基づいて、GDR/IRAPピクチャであるかどうか(例えば、PH構文要素ph_gdr_or_irap_pic_flag)を規定する。
c. 例えば、AUD構文要素が、AU区切り文字を含むAUがIRAPまたはGDR AUではないことを規定した場合(例えば、aud_irap_or_gdr_au_flagが0に等しい)、関連付けられたPH構文要素ph_gdr_or_irap_pic_flagの値は、ピクチャがIRAPまたはGDRピクチャであることを規定する一定の値(例えば、1)に等しくないものとし、例えば、以下の制約を追加してもよい。
i. aud_irap_or_gdr_au_flagが存在し、かつ、0に等しい(IRAPまたはGDRでない)場合、ph_gdr_or_irap_pic_flagの値は、1に等しくないものとする(IRAPまたはGDR)。
ii. あるいは、aud_irap_or_gdr_au_flagが0に等しい(IRAPまたはGDRでない)場合、ph_gdr_or_irap_pic_flagの値は、1に等しくないものとする(IRAPまたはGDR)。
iii. あるいは、aud_irap_or_gdr_au_flagが存在し、0に等しい(IRAPまたはGDRでない)場合、ph_gdr_or_irap_pic_flagの値は、0に等しいものとする(IRAPまたはGDRであってもなくてもよい)。
iv. あるいは、aud_irap_or_gdr_au_flagが0に等しい(IRAPまたはGDRでもそうでない)場合、ph_gdr_or_irap_pic_flagの値は、0に等しいものとする(IRAPまたはGDRであってもなくてもよい)。
d. 一例において、存在する場合、AUD構文要素(例えば、aud_pic_type)の値に基づいて、スライスタイプを規定する構文要素(例えば、SH構文要素sh_slice_type)の値を制約する。
i. 例えば、AUD構文要素が、AUに存在し得るsh_slice_type値がイントラ(I)スライスである(例えば、aud_pic_typeが0に等しい)ことを規定する場合、関連付けられたSH構文要素sh_slice_typeの値は、予測(P)/双方向予測(B)スライスを規定する一定の値(例えば、0/1)に等しくてはならず、例えば、以下の制約を追加してもよい。
1. aud_pic_typeが存在し、かつ0に等しい場合(Iスライス)、sh_slice_typeの値は2(Iスライス)に等しいものとする。
2. 代替的に、aud_pic_typeが0に等しい場合(Iスライス)、sh_slice_typeの値は2(Iスライス)に等しいものとする。
3. 代替的に、aud_pic_typeが存在し、かつ0に等しい場合(Iスライス)、sh_slice_typeの値は0(Bスライス)または1(Pスライス)に等しくないものとする。
4. 代替的に、aud_pic_typeが0に等しい場合(Iスライス)、sh_slice_typeの値は0(Bスライス)または1(Pスライス)に等しくないものとする。
e. 例えば、AUD構文要素が、AUに存在し得るsh_slice_type値がPまたはIスライスである(例えば、aud_pic_typeが1に等しい)ことを規定する場合、関連付けられたSH構文要素sh_slice_typeの値は、Bスライスを規定する一定の値(例えば、0)に等しくてはならず、例えば、以下の制約を追加してもよい。
i. aud_pic_typeが存在し、かつ1に等しい場合(P、Iスライスが存在してもよい)、sh_slice_typeの値は1(Pスライス)または2(Iスライス)に等しいものとする。
ii. 代替的に、aud_pic_typeが1に等しい場合(P、Iスライスが存在してもよい)、sh_slice_typeの値は1(Pスライス)または2(Iスライス)に等しいものとする。
iii. 代替的に、aud_pic_typeが存在し、かつ1に等しい場合(P、Iスライスが存在してもよい)、sh_slice_typeの値は0(Bスライス)に等しくないものとする。
iv. 代替的に、aud_pic_typeが1に等しい場合(P、Iスライスが存在してもよい)、sh_slice_typeの値は0(Bスライス)に等しくないものとする。
f. 一例において、AUD構文構造およびPH/SH構文構造における関連する構文要素の指標値は、整列されてもよい。
i. 例えば、0に等しいaud_pic_typeは、AU内に存在してもよいsh_slice_typeの値は、B、PまたはIスライスであることを示す。
ii. 例えば、1に等しいaud_pic_typeは、AU内に存在してもよいsh_slice_typeの値は、PまたはIスライスであることを示す。
iii. 例えば、2に等しいaud_pic_typeは、AU内に存在してもよいsh_slice_typeの値は、Iスライスであることを示す。
iv. 代替的に、0に等しいsh_slice_typeは、スライスのコーディングタイプがIスライスであることを示す。
v. 代替的に、1に等しいsh_slice_typeは、スライスのコーディングタイプがPスライスであることを示す。
vi. 代替的に、2に等しいsh_slice_typeは、スライスのコーディングタイプがBスライスであることを示す。
g. 一例において、AUD構文構造およびPH/SH構文構造における関連する構文要素の名前は、整列されてもよい。
i. 例えば、aud_irap_or_gdr_au_flagをaud_gdr_or_irap_au_flagに名称を変更することができる。
ii. 代替的に、ph_gdr_or_irap_pic_flagをph_irap_or_gdr_pic_flagに名称を変更してもよい。
h. 一例において、ピクチャがIRAPまたはGDRピクチャであるかどうかを規定する構文要素の値(例えば、0または1に等しいph_gdr_or_irap_pic_flag、および/または0または1に等しいph_gdr_pic_flag、および/または0または1に等しいph_irap_pic_flagという名称のPH SE)は、ビットストリームが単レイヤビットストリームであるかどうか、およびピクチャがIRAPまたはGDR AUに属するかどうかに基づいて制約されてもよい。
i. 例えば、ビットストリームが単レイヤビットストリームである場合(例えば、VPS構文要素vps_max_layers_minus1が0に等しい、および/またはSPS構文要素sps_video_parameter_set_idが0に等しい)、かつAUD構文要素が、AU区切り文字を含むAUがIRAPまたはGDR AUでないことを規定する場合(例えば、aud_irap_or_gdr_au_flagが0に等しい)、以下の制約を追加してもよい。
1. 関連するPH構文要素ph_gdr_or_irap_pic_flagの値は、ピクチャがIRAPまたはGDRピクチャであることを規定する一定の値(例えば、1)に等しくないものとする。
2. 関連するPH構文要素ph_gdr_pic_flagの値は、ピクチャがGDRピクチャであることを規定する一定の値(例えば、1)に等しくないものとする。
3. ある値(例えば1)に等しいph_irap_pic_flagおよびph_irap_pic_flagという名称のPH SEがあり、このピクチャがIRAPピクチャであることを規定しているとした場合、上記条件下で、関連するPH構文要素ph_gdr_irap_flagの値は1に等しくないものとする。
ii. 例えば、ビットストリームが単レイヤビットストリームである場合(例えば、VPS構文要素vps_max_layers_minus1が0に等しい、および/またはSPS構文要素sps_video_parameter_set_idが0に等しい)、かつAUD構文要素が、AU区切り文字を含むAUがIRAPまたはGDR AUであることを規定する場合(例えば、aud_irap_or_gdr_au_flagが1に等しい)、以下の制約を追加してもよい。
1. ある値(例えば1)に等しいph_irap_pic_flagおよびph_irap_pic_flagという名称のPH SEがあり、このピクチャがIRAPピクチャであることを規定しているとした場合、上記条件下で、ph_gdr_pic_flagまたはph_irap_flagのいずれかが1であるものとする。
iii. 例えば、vps_max_layers_minus1(またはsps_video_parameter_set_id)が0(単一レイヤ)であり、aud_irap_or_gdr_au_flagが存在し、かつ0に等しい(IRAPまたはGDR AUではない)場合には、以下のように制約される。
1. ph_gdr_or_irap_pic_flagの値は1に等しくないものとする(IRAPまたはGDRピクチャ)。
a. 代替的に、ph_gdr_or_irap_pic_flagの値は0に等しいものとする(ピクチャはIRAPピクチャであってもなくてもよく、確実にGDRピクチャではない)。
2. さらに、代替的に、ph_gdr_pic_flagの値は1に等しくないものとする(GDRピクチャ)。
a. 代替的に、ph_gdr_pic_flagの値は0と等しいものとする(このピクチャは確実にGDRピクチャではない)。
3. 代替的に、ph_irap_pic_flag(名称がある場合)の値は1に等しくないものとする(確実にIRAPピクチャ)。
a. 代替的に、ph_irap_pic_flag(名称がある場合)の値は0に等しいものとする(ピクチャは確実にIRAPピクチャではない)。
5) 第3の問題を解決するために、GCI構文構造におけるGCI構文要素を信号通知するかどうかは、信号通知された/導出された制約/予約バイト数(例えば、JVET-S0092-v1におけるgci_num_constraint_bytes)が0に等しくないかまたは0より大きいかに依存してもよい。
a. 一例において、JVET-S0092-v1におけるGCI構文は、以下のように変更される。(1)条件「if(gci_num_constraint_bytes>8)」が「if(gci_num_constraint_bytes>0)」となるように変更される、(2)バイトアライメント、すなわち構文要素gci_alignment_zero_bitとその条件「while(!byte_aligned()」)が削除される、および(3)予約バイト(すなわち、gci_reserved_byte[i])の信号通知は、条件「if(gci_num_constraint_bytes>0)」下の合計ビット数がgci_num_constraint_bytes*8に等しいようなやり方で、予約ビット(すなわち、gci_reserved_byte[i])の信号通知となるように変更される。
b. あるいは、さらに、制約/予約バイトの数(例えば、JVET-S0092におけるgci_num_constraint_bytes)は、GCI構文要素/プロファイル/タイル/標準情報のバージョンに依存してもよい所与の値に制限されてもよい。
i. あるいは、さらに、他のun-zero値をCeil(Log2(numGciBits))に設定する。ここで、変数numGciBitsは、gci_reserved_bit[i]構文要素を除き、条件「if(gci_num_constraint_bytes>0)」下のすべての構文要素に対するビット数に等しくなるように導出される。
6) 第4の問題を解決するために、GCI構文要素/またはGCI構文構造の存在を示すためのフラグを使用してもよく、GCI構文要素が存在する場合、0個または1つまたは複数個の予約ビットをさらに信号通知してもよい。
a. 一例において、JVET-S0092-v1におけるGCI構文は、以下のように変更される。(1)8-bit gci_num_constraint_bytesが1ビットフラグ、例えばgci_present_flagに置き換えられる、(2)条件「if(gci_num_constraint_bytes>8)」が「if(gci_present_flag)」となるように変更される、(3)バイトアライメント、すなわち構文要素gci_alignment_zero_bitとその条件「while(!byte_aligned()」)が削除される、および(4)予約バイト(すなわち、gci_reserved_byte[i])の信号通知は、条件「if(gci_present_flag)」下の合計ビット数がgciNumConstraintBytes*8に等しく、gciNumConstraintBytesがgci_present_flagの値に従って導出されるようなやり方で、予約ビット(すなわち、gci_reserved_bit[i])の信号通知となるように変更される。
b. あるいは、さらに、制約/予約バイトの数(例えば、JVET-S0092におけるgci_num_constraint_bytes)(例えば信号通知された、または導出された)は、GCI構文要素/プロファイル/タイル/標準情報のバージョンに依存してもよい。
i. あるいは、さらに、他のun-zero値をCeil(Log2(numGciBits))に設定する。ここで、変数numGciBitsは、gci_reserved_bit[i]構文要素を除き、条件「if(gci_present_flag>0)」下のすべての構文要素に対するビット数に等しくなるように導出される。
c. あるいは、さらに、フラグがGCI構文要素が存在しないことを示す場合、7ビットの予約ビットをさらに信号通知してもよい。
i. 一例において、7ビットの予約ビットは7つのゼロビットである。
d. あるいは、さらに、GCI構文構造を、general_sub_profile_idcの後に、またはptl_sublayer_level_present_flag[i]の後に、またはPTL構文構造におけるwhileループ(例えばバイトアライメント)のすぐ前に移動する。
i. あるいは、さらに、フラグがGCI構文要素が存在することを示す場合、GCI構文構造(例えば、general_constraint_info())がさらに信号通知される。
ii. あるいは、さらに、フラグがGCI構文要素が存在しないことを示す場合、GCI構文構造(例えば、general_constraint_info())が通知されず、GCI構文要素の値がデフォルト値に設定される。
適応型色変換(ACT)関連
7) 予測モード情報に基づいて、ACT使用の信号通知(例えば、ACTオン/オフ制御フラグ)をスキップしてもよい。
a. 一例において、ACTオン/オフフラグの指示を信号通知するかどうかは、現在のブロックの予測モードが非イントラ(例えば、MODE_INTRAではない)および/または非インター(例えば、MODE_INTERではない)および/または非IBC(例えば、MODE_IBCではない)であるかどうかに依存してもよい。
b. 一例において、すべてのイントラ(例えば、MODE_INTRA)およびインター(例えば、MODE_INTER)およびIBC(例えば、MODE_IBC)モードが映像ユニットに適用されない場合、ACT使用の信号通知(例えば、ACTオン/オフ制御フラグ)をスキップしてもよい。
i. 代替的に、さらに、ACTの使用は、存在しない/信号通知されていない場合、偽であると推論される。
c. 一例において、ACTが1つのブロックに使用される場合、そのブロックに対してXモードを使用しないものとする。
i. 例えば、Xはパレットでもよい。
ii. 例えば、Xは、MODE_INTRA、MODE_INTER、およびMODE_IBCとは異なるモードであってもよい。
iii. あるいは、さらに、上記条件下で、Xモードの使用が偽であると推論される。
その他
8) 第5の課題を解決するために、以下のアプローチのうちの1つ以上が開示される。
a. 一例において、ピクチャにおいてインタースライスが許可され(例えば、ph_inter_slice_allowed_flagが真に等しい)、かつSHの代わりにPHにおいてRPLが信号通知される場合、参照ピクチャリスト0(例えば、RefPicList[0])は空ではない、即ち、少なくとも1つのエントリを含むものとする。
i. 例えば、ビットストリーム制約は、pps_rpl_info_in_ph_flagが1に等しく、ph_inter_slice_allowed_flagが1に等しい場合、num_ref_entries[0][RplsIdx[0]]の値は0より大きいものとすると、規定されてもよい。
ii. さらに、リスト0における参照エントリの数(例えば、num_ref_entries[0][RplsIdx[0])を信号通知するかどうか、および/またはどのようにして信号通知するか、および/または推論するかは、ピクチャにおいてインタースライスを許可するかどうかに依存してもよい。
1. 一例において、ピクチャにおいてインタースライスが許可され(例えば、ph_inter_slice_allowed_flagが真に等しい)、かつPHにおいてRPLが信号通知される(例えば、pps_rpl_info_in_ph_flagが真に等しい)場合、参照ピクチャリスト0マイナス1の入力数を代わりに信号通知してもよい。
2. 一例において、ピクチャにおいてインタースライスが許可されない(例えば、ph_inter_slice_allowed_flagが偽に等しい)場合、PHにおいてRPLが信号通知され(例えば、pps_rpl_info_in_ph_flagが真に等しい)、参照ピクチャリストXの入力数(Xは0または1)は、それ以上信号通知されない。
b. 一例において、SHの代わりにRPLがPHにおいて信号通知され、かつ参照ピクチャリスト0(例えば、RefPicList[0])が空である(即ち、0個のエントリを含む)場合、1つのピクチャにおいてIスライスのみを許可するものとする。
i. 例えば、ビットストリームの制約は、pps_rpl_info_in_ph_flagが1に等しく、num_ref_entries[0][RplsIdx[0]]の値が0に等しい場合、ph_inter_slice_allowed_flagの値は0に等しいものとすることを規定してもよい。
ii. さらに、インター許可されたフラグ(例えば、ph_inter_slice_allowed_flag)および/またはイントラ許可されたフラグ(例えば、ph_intra_slice_allowed_flag)の指示を信号通知するかどうか、および/またはどのように信号通知するかは、参照ピクチャリスト0の中の入力数に依存してもよい。
1. 一例において、pps_rpl_info_in_ph_flagが1に等しく、num_ref_entries[0][RplsIdx[0]]の値が0に等しい場合、インタースライスが許可されるかどうか(例えば、ph_inter_slice_allowed_flag)の指示は、これ以上信号通知されなくてもよい。
a. 代替的に、さらに、この表示が偽であると推論される。
b. 代替的に、イントラスライスが許可されるかどうかの別の指示(例えば、ph_intra_slice_allowed_flag)は、もはや信号通知されなくてもよい。
c. 一例において、スライスタイプおよび/またはスライスタイプの推論をどのように信号通知するかどうか、および/または信号通知するかどうかは、参照ピクチャリスト0および/または1の入力数に依存してもよい。
i. 一例において、参照ピクチャリスト0(例えば、RefPicList[0])が空である(即ち、0個のエントリを含む)場合、スライスタイプの指示はもはや信号通知されない。
1. あるいは、さらに、SHの代わりにPHにおいてRPLが信号通知され、かつ参照ピクチャリスト0(例えば、RefPicList[0])が空である(即ち、0個のエントリを含む)場合、スライスタイプの指示はもはや信号通知されない。
2. 代替的に、さらに、上記の場合、スライスタイプをIスライスと推論する。
ii. 一例において、参照ピクチャリスト0(例えば、RefPicList[0])が空である(即ち、0個のエントリを含む)場合、スライスタイプは、Iスライスに等しいものとする。
iii. 一例において、参照ピクチャリスト1(例えば、RefPicList[1])が空である(即ち、0個のエントリを含む)場合、スライスタイプは、Bスライスに等しくないものとする。
iv. 一例において、参照ピクチャリスト1(例えば、RefPicList[1])が空である(即ち、0個のエントリを含む)場合、スライスタイプは、IまたはPスライスに等しいものとする。
d. 一例において、PHにおいてRPLが信号通知される場合、このRPLはピクチャにおけるすべてのスライスに使用されるので、ピクチャ全体がI個のスライスのみを含む場合にのみ、リスト0を空にすることができるものとする。あるいは、リスト0が空でない場合、このピクチャ内に少なくとも1つのBスライスまたはPスライスがなければならない。
9)第6の課題を解決するために、以下のアプローチのうちの1つ以上が開示される。
a. 一例において、リカバリポイントピクチャは、リカバリPOCカウントが0よりも大きい場合にのみ、関連付けられたGDRピクチャに復号順で従うものとする。
b. 一例において、リカバリポイントピクチャは、リカバリPOCカウントが0に等しい場合、GDRピクチャそのものである。
c. 一例において、リカバリピクチャは、復号順にリカバリポイントピクチャに先行してもよいし、しなくてもよい。
d. 一例において、リカバリPOCカウントが0に等しい場合、リカバリポイントピクチャはGDRピクチャそのものであり、リカバリピクチャを有しても有していなくてもよい。
e. 一例において、JVET-R2001-vAにおけるph_recovery_poc_cntの意味論は、以下のように変更されてもよい。太字のイタリック体において、既に追加または修正された最も関連する部分には下線を付し、削除された部分のうちのいくつかは、[[]]を使用して示す。
ph_recovery_poc_cntは、復号されたピクチャの出力順のリカバリポイントを規定する。
現在のピクチャがGDRピクチャである場合、変数recoveryPointPocValは、以下のように導出される。
recoveryPointPocVal=PicOrderCntVal+ph_recovery_poc_cnt
【化1】
10) 第7の課題を解決するために、以下のアプローチのうちの1つ以上が開示される。
a. 一例において、第1のGCI構文要素(例えば、no_idr_rpl_mixed_nalu_constraint_flagと呼ばれる)は、IDRピクチャとともに送信されるRPLおよび混合nalユニットタイプの使用の両方を制限するように信号通知されてもよい。
i. 例えば、no_idr_rpl_mixed_nalu_constraint_flagが1に等しい場合、IDRピクチャに対してRPLは信号通知されず、各ピクチャのVCL NALユニットはnal_unit_typeと同じ値を有するものとする。no_idr_rpl_mixed_nalu_constraint_flagが0に等しい場合、このような制約は課されない。
ii. 例えば、no_idr_rpl_mixed_nalu_constraint_flagが1に等しい場合、IDRピクチャのスライスヘッダに参照ピクチャリスト構文要素は存在しないものとし(例えば、sps_idr_rpl_present_flagは0に等しい)、pps_mixed_nalu_types_in_pic_flagが0に等しくなるものとする。no_idr_rpl_mixed_nalu_constraint_flagが0に等しい場合、このような制約は課されない。
iii. 例えば、第1のGCI構文要素が存在しない(例えば、GCI構文要素の存在を示すことがGCI構文要素が存在しないことを示す)場合、第1のGCI構文要素の値はXであると推測できる(例えば、Xは0または1である)。
11) QPテーブルにおける点の数を規定する構文要素の信号通知および/または範囲および/または推論は、他の構文要素に依存することが求められる。
a. num_points_in_qp_table_minus1[i]~(K-i番目の彩度QPマッピングテーブルを説明するために使用される開始輝度および/または彩度QP)の最大値を設定することが提案される。
i. 一例において、Kは、映像のための最大許容QP値に依存する。
1. 一例において、Kは、(最大許容QP値-1)に設定される。例えば、VVCにおいて62である。
ii. 一例において、最大値は、(62-(qp_table_start_minus26[i]+26)に設定され、sps_qp_table_start_minus26[i]プラス26は、i番目の彩度QPマッピングテーブルを説明するために使用される開始輝度および彩度QPを規定する。
b. あるいは、QPテーブルのポイント数(例えば、i番目のQPテーブルのnum_points_in_qp_table_minus1[i)とi番目の彩度QPマッピングテーブルを記述するために用いられる開始輝度QPおよび/または彩度QP(例えば、sps_qp_table_start_minus26[i]プラス26)の合計が最大許容QP値(例えば63)より小さくなるものとすることが要求されている。
12) qpInVal[i][j]値は、-QpBdOffset~62の範囲内にあり、iが0~numQpTables-1の範囲内にあり、jが0~sps_num_points_in_qp_table_minus1[i]+K(例えば、K=0または1)の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
13) qpOutVal[i][j]値は、-QpBdOffset~62の範囲内にあり、iが0~numQpTables-1の範囲内にあり、jが0~sps_num_points_in_qp_table_minus1[i]+K(例えば、K=0または1)の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
【0046】
6. 実施形態
以下は、本章の上記に要約されたいくつかの発明の態様のためのいくつかの例示的な実施形態であり、VVC仕様に適用できる。太字のイタリック体において、既に追加または修正された最も関連する部分には下線を付し、削除された部分のうちのいくつかは、[[]]を使用して示す。
【0047】
6.1. 実施形態1
本実施形態は、項目1および小項目に対するものである。
7.4.3.3 シーケンスパラメータセットRBSP意味論
...
【化2】
【化3】
sps_res_change_in_clvs_allowed_flagが1に等しいことは、SPSを参照し、CLVS内でピクチャの空間的解像度が変化してもよいことを規定する。sps_res_change_in_clvs_allowed_flagが0に等しいことは、SPSを参照し、あらゆるCLVS内でピクチャの空間解像度が変化しないことを規定する。存在しない場合、sps_res_change_in_clvs_allowed_flagの値は0に等しいと推論される。
...
8.3.2 参照ピクチャリスト構築のための復号処理
...
fRefWidthは、参照ピクチャRefPicList[i][j]のCurrPicScalWinWidthLに等しく設定される。
fRefHeightは、参照ピクチャRefPicList[i][j]のCurrPicScalWinHeightLに等しく設定される。
refPicWidth、refPicHeight、refScalingWinLeftOffset、refScalingWinRightOffset、refScalingWinTopOffset、およびrefScalingWinBottomOffsetは、それぞれ、参照ピクチャRefPicList[i][j]の、pps_pic_width_in_luma_samples,pps_pic_height_in_luma_samples,pps_scaling_win_left_offset,pps_scaling_win_right_offset,pps_scaling_win_top_offsetおよびpps_scaling_win_bottom_offsetの値に等しく設定される
[[fRefNumSubpicsは、参照ピクチャRefPicList[i][j]のsps_num_subpics_minus1に等しく設定される]]
RefPicScale[i][j][0]=((fRefWidth<<14)+(CurrPicScalWinWidthL>>1))/
CurrPicScalWinWidthL
RefPicScale[i][j][1]=((fRefHeight<<14)+(CurrPicScalWinHeightL>>1))/
CurrPicScalWinHeightL
RprConstraintsActiveFlag[i][j]=(pps_pic_width_in_luma_samples!=refPicWidth||
pps_pic_height_in_luma_samples!=refPicHeight||
pps_scaling_win_left_offset!=refScalingWinLeftOffset||
pps_scaling_win_right_offset!=refScalingWinRightOffset||
pps_scaling_win_top_offset!=refScalingWinTopOffset||
pps_scaling_win_bottom_offset!=refScalingWinBottomOffset[[||
sps_num_subpics_minus1!=fRefNumSubpics]])
...
【化4】
【0048】
6.2. 実施形態2
この実施形態は、項目2に対するものである。
8.3.2 参照ピクチャリスト構築のための復号処理
...
fRefWidthは、参照ピクチャRefPicList[i][j]のCurrPicScalWinWidthLに等しく設定される。
fRefHeightは、参照ピクチャRefPicList[i][j]のCurrPicScalWinHeightLに等しく設定される。
refPicWidth、refPicHeight、refScalingWinLeftOffset、refScalingWinRightOffset、refScalingWinTopOffset、refScalingWinBottomOffsetは、それぞれ、参照ピクチャRefPicList[i][j]の、pps_pic_width_in_luma_samples、pps_pic_height_in_luma_samples、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetの値に等しく設定される。
fRefNumSubpicsは、参照ピクチャRefPicList[i][j]のsps_num_subpics_minus1に等しく設定される。
RefPicScale[i][j][0]=((fRefWidth<<14)+(CurrPicScalWinWidthL>>1))/
CurrPicScalWinWidthL
RefPicScale[i][j][1]=((fRefHeight<<14)+(CurrPicScalWinHeightL>>1))/
CurrPicScalWinHeightL
RprConstraintsActiveFlag[i][j]=(pps_pic_width_in_luma_samples!=refPicWidth||
pps_pic_height_in_luma_samples!=refPicHeight||
pps_scaling_win_left_offset!=refScalingWinLeftOffset||
pps_scaling_win_right_offset!=refScalingWinRightOffset||
pps_scaling_win_top_offset!=refScalingWinTopOffset||
pps_scaling_win_bottom_offset!=refScalingWinBottomOffset||
【化5】
...
【0049】
6.3. 実施形態3
この実施形態は、項目3に対するものである。
8.3.2 参照ピクチャリスト構築のための復号処理
...
fRefWidthは、参照ピクチャRefPicList[i][j]のCurrPicScalWinWidthLに等しく設定される。
fRefHeightは、参照ピクチャRefPicList[i][j]のCurrPicScalWinHeightLに等しく設定される。
refPicWidth、refPicHeight、refScalingWinLeftOffset、refScalingWinRightOffset、refScalingWinTopOffset、refScalingWinBottomOffsetは、それぞれ、参照ピクチャRefPicList[i][j]の、pps_pic_width_in_luma_samples、pps_pic_height_in_luma_samples、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetの値に等しく設定される。
fRefNumSubpicsは、参照ピクチャRefPicList[i][j]のsps_num_subpics_minus1に等しく設定される。
【化6】
RefPicScale[i][j][0]=((fRefWidth<<14)+(CurrPicScalWinWidthL>>1))/
CurrPicScalWinWidthL
RefPicScale[i][j][1]=((fRefHeight<<14)+(CurrPicScalWinHeightL>>1))/
CurrPicScalWinHeightL
RprConstraintsActiveFlag[i][j]=(pps_pic_width_in_luma_samples!=refPicWidth||
pps_pic_height_in_luma_samples!=refPicHeight||
pps_scaling_win_left_offset!=refScalingWinLeftOffset||
pps_scaling_win_right_offset!=refScalingWinRightOffset||
pps_scaling_win_top_offset!=refScalingWinTopOffset||
pps_scaling_win_bottom_offset!=refScalingWinBottomOffset||
【化7】
...
【0050】
6.4. 実施形態4
この実施形態は、項目5に対するものである。PTL構文は以下のように変更される。
【表8】
GCI構文は以下のように変更される。
【表9】
gci_num_constraint_bytesは、この構文要素自体を除き、general_constraint_info()構文構造におけるすべての構文要素のバイト数を規定する。
変数numGciBitsは、gci_reserved_bit[i]構文要素を除き、条件「if(gci_num_constraint_bytes>0)」下のすべての構文要素に対するビット数に等しくなるように導出される。
gci_reserved_bit[i]構文要素の数は7以下とする。
あるいは、gci_num_constraint_bytesの値は、0またはCeil(Log2(numGciBits))に等しいものとする。
gci_reserved_bit[i]は、任意の値をとることができる。デコーダは、存在する場合、gci_reserved_bit[i]の値を無視する。
【0051】
6.5. 実施形態5
この実施形態は、項目6に対するものである。PTL構文は以下のように変更される。
【表10】
GCI構文は以下のように変更される。
【表11】
gci_present_flagが1に等しいことは、GCIフィールドが存在することを規定する。gci_present_flagが0に等しいことは、GCIフィールドが存在しないことを規定する。
変数numGciBitsは、gci_reserved_bit[i]構文要素を除き、条件「if(gci_present_flag)」下のすべての構文要素に対するビット数に等しくなるように導出される。
gci_present_flagが1に等しい場合、変数gciNumConstraintBytesは、Ceil(Log2(numGciBits))に等しく設定される。
注:gci_reserved_bit[i]構文要素の数は7以下である。
【0052】
6.6. 実施形態6
PTL構文は以下のように変更される。
【表12】
GCI構文は以下のように変更される。
【表13】
gci_present_flagが1に等しいことは、general_constraint_info()が存在することを規定する。gci_present_flagが0に等しいことは、general_constraint_info()が存在しないことを規定する。
変数numGciBitsは、gci_reserved_bit[i]構文要素を除くすべての構文要素のビット数に等しくなるように導出される。
変数gciNumConstraintBytesは、Ceil(Log2(numGciBits))に等しく設定される。
注:gci_reserved_bit[i]構文要素の数は7以下である。
【0053】
図1は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1900を示すブロック図である。様々な実装形態は、システム1900のコンポーネントの一部または全部を含んでもよい。システム1900は、映像コンテンツを受信するための入力1902を含んでもよい。映像コンテンツは、未加工または非圧縮フォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてもよく、または圧縮または符号化されたフォーマットで受信されてもよい。入力1902は、ネットワークインターフェース、周辺バスインターフェース、または記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、PON(Passive Optical Network)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェース等の無線インターフェースを含む。
【0054】
システム1900は、本明細書に記載される様々なコーディングまたは符号化方法を実装することができるコーディングコンポーネント1904を含んでもよい。コーディングコンポーネント1904は、入力1902からの映像の平均ビットレートをコーディングコンポーネント1904の出力に低減し、映像のコーディングされた表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像トランスコーディング技術と呼ばれることがある。コーディングコンポーネント1904の出力は、コンポーネント1906によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力1902において受信された、記憶されたまたは通信された映像のビットストリーム(またはコーディングされた)表現は、コンポーネント1908によって使用されて、表示インターフェース1910に送信される画素値または表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像展開と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作またはツールと呼ぶが、コーディングツールまたは動作は、エンコーダで使用され、コーディングの結果を逆にする対応する復号ツールまたは動作は、デコーダによって行われることが理解されよう。
【0055】
周辺バスインターフェースまたは表示インターフェースの例は、ユニバーサルシリアルバス(USB)またはハイビジョンマルチメディアインターフェース(HDMI(登録商標))またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、SATA(Serial Advanced Technology Attachment)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、またはデジタルデータ処理および/または映像表示を実施可能な他のデバイス等の様々な電子デバイスにおいて実施されてもよい。
【0056】
図2は、映像処理装置3600のブロック図である。装置3600は、本明細書に記載の方法の1つ以上を実装するために使用されてもよい。装置3600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等に実施されてもよい。装置3600は、1つ以上のプロセッサ3602と、1つ以上のメモリ3604と、映像処理ハードウェア3606と、を含んでもよい。1つまたは複数のプロセッサ3602は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数可)3604は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア3606は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。
【0057】
図4は、本開示の技術を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
【0058】
図4に示すように、映像コーディングシステム100は、送信元デバイス110と、送信先デバイス120と、を備えてもよい。送信元デバイス110は、映像符号化デバイスとも称され得る符号化された映像データを生成する。送信先デバイス120は、送信元デバイス110によって生成される符号化された映像データを復号してよく、映像復号デバイスと呼ばれ得る。
【0059】
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インターフェース116と、を備えてもよい。
【0060】
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインターフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1または複数のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データを符号化し、ビットストリームを生成する。ビットストリームは、映像データのコーディングされた表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインターフェース116は、変復調器(モデム)および/または送信機を含んでもよい。符号化された映像データは、ネットワーク130aを介して、I/Oインターフェース116を経由して送信先デバイス120に直接送信されてよい。符号化された映像データは、送信先デバイス120がアクセスするために、記録媒体/サーバ130bに記憶してもよい。
【0061】
送信先デバイス120は、I/Oインターフェース126、映像デコーダ124、および表示デバイス122を含んでもよい。
【0062】
I/Oインターフェース126は、受信機および/またはモデムを含んでもよい。I/Oインターフェース126は、送信元デバイス110または記憶媒体/サーバ130bから符号化された映像データを取得してもよい。映像デコーダ124は、符号化された映像データを復号してもよい。表示デバイス122は、復号された映像データをユーザに表示してもよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインターフェースで接続するように構成される送信先デバイス120の外部にあってもよい。
【0063】
映像エンコーダ114および映像デコーダ124は、高効率映像コーディング(HEVC)規格、汎用映像コーディング(VVC)規格、および他の現在のおよび/または更なる規格等の映像圧縮規格に従って動作してもよい。
【0064】
図5は、映像エンコーダ200の一例を示すブロック図であり、
図4に示されるシステム100における映像エンコーダ114であってもよい。
【0065】
映像エンコーダ200は、本開示の技術のいずれかまたは全部を行うように構成されてもよい。
図5の例において、映像エンコーダ200は、複数の機能コンポーネントを含む。本開示で説明される技術は、映像エンコーダ200の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0066】
映像エンコーダ200の機能性コンポーネントは、分割ユニット201と、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、およびイントラ予測ユニット206を含む予測ユニット202と、残差生成ユニット207と、変換ユニット208と、量子化ユニット209と、逆量子化ユニット210と、逆変換ユニット211と、再構成ユニット212と、バッファ213と、エントロピー符号化ユニット214と、を含んでもよい。
【0067】
他の例において、映像エンコーダ200は、より多くの、より少ない、または異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測を行ってよい。
【0068】
さらに、動き推定ユニット204および動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、
図5の例においては別個に表現されている。
【0069】
分割ユニット201は、ピクチャを1つ以上の映像ブロックに分割してもよい。映像エンコーダ200および映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
【0070】
モード選択ユニット203は、例えば、誤りの結果に基づいて、コーディングモード(イントラまたはインター)のうちの1つを選択し、得られたイントラまたはインターコーディングされたブロックを残差生成ユニット207に供給し、残差ブロックデータを生成して再構成ユニット212に供給し、符号化されたブロックを参照ピクチャとして使用するために再構成してもよい。いくつかの例において、モード選択ユニット203は、インター予測信号およびイントラ予測信号に基づいて予測を行うCIIP(Combination of Intra and Inter Prediction)モードを選択してもよい。モード選択ユニット203は、インター予測の場合、ブロックのために動きベクトルの解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択してもよい。
【0071】
現在の映像ブロックに対してインター予測を実行するために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームと現在の映像ブロックとを比較することにより、現在の映像ブロックのために動き情報を生成してもよい。動き補償ユニット205は、現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの動き情報および復号されたサンプルに基づいて、現在の映像ブロックに対する予測映像ブロックを判定してもよい。
【0072】
動き推定ユニット204および動き補償ユニット205は、例えば、現在の映像ブロックがIスライスであるか、Pスライスであるか、またはBスライスであるかによって、現在の映像ブロックに対して異なる動作を行ってもよい。
【0073】
いくつかの例において、動き推定ユニット204は、現在の映像ブロックに対して単一方向予測を行い、動き推定ユニット204は、現在の映像ブロックに対して、参照映像ブロック用のリスト0またはリスト1の参照ピクチャを検索してもよい。動き推定ユニット204は、参照映像ブロックと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルとを含む、リスト0またはリスト1における参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
【0074】
他の例において、動き推定ユニット204は、現在の映像ブロックに対して双方向予測してもよく、動き推定ユニット204は、リスト0における参照ピクチャの中から現在の映像ブロックを求めるための参照映像ブロックを検索してもよく、また、リスト1における参照ピクチャの中から現在の映像ブロックを求めるための別の参照映像ブロックを検索してもよい。動き推定ユニット204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定ユニット204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
【0075】
いくつかの例において、動き推定ユニット204は、デコーダの復号処理のために、動き情報のフルセットを出力してもよい。
【0076】
いくつかの例では、動き推定ユニット204は、現在の映像に対する動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定ユニット204は、現在の映像ブロックの動き情報が近隣の映像ブロックの動き情報に十分に類似していることを判定してもよい。
【0077】
一例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同じ動き情報を有することを映像デコーダ300に示す値を示してもよい。
【0078】
他の例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、動きベクトル差分(MVD;Motion Vector Difference)とを識別してもよい。動きベクトル差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、指定された映像ブロックの動きベクトルと動きベクトル差分とを使用して、現在の映像ブロックの動きベクトルを決定してもよい。
【0079】
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装され得る予測信号通知技法の2つの例は、AMVP(Advanced Motion Vector Prediction)およびマージモード信号通知を含む。
【0080】
イントラ予測ユニット206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測ユニット206が現在の映像ブロックについてイントラ予測を行う場合、イントラ予測ユニット206は、同じピクチャにおける他の映像ブロックの復号されたサンプルに基づいて、現在の映像ブロックのための予測データを生成してもよい。現在の映像ブロックに対する予測データは、予測された映像ブロックおよび様々な構文要素を含んでもよい。
【0081】
残差生成ユニット207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックに対する残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
【0082】
他の例において、例えば、スキップモードにおいて、現在の映像ブロックに対する残差データがなくてもよく、残差生成ユニット207は、減算動作を行わなくてもよい。
【0083】
変換ユニット208は、現在の映像ブロックに関連付けられた残差映像ブロックに1つ以上の変換を適用することによって、現在の映像ブロックに対する1つ以上の変換係数映像ブロックを生成してもよい。
【0084】
変換ユニット208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化ユニット209は、現在の映像ブロックに関連付けられた1つ以上の量子化パラメータ(QP:Quantization Parameter)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
【0085】
逆量子化ユニット210および逆変換ユニット211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成ユニット212は、予測ユニット202によって生成された1つ以上の予測映像ブロックから対応するサンプルに再構成された残差映像ブロックを追加して、バッファ213に格納するための現在のブロックに関連付けられた再構成された映像ブロックを生成してもよい。
【0086】
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング動作を行ってもよい。
【0087】
エントロピー符号化ユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピー符号化ユニット214がデータを受信すると、エントロピー符号化ユニット214は、1つ以上のエントロピー符号化動作を行い、エントロピー符号化されたデータを生成し、エントロピー符号化されたデータを含むビットストリームを出力してもよい。
【0088】
図6は、映像デコーダ300の一例を示すブロック図であり、映像デコーダ300は、
図4に示すシステム100における映像デコーダ114であってもよい。
【0089】
映像デコーダ300は、本開示の技術のいずれかまたは全てを行うように構成されてもよい。
図5の実施例において、映像デコーダ300は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像デコーダ300の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0090】
図6の実施形態において、映像デコーダ300は、エントロピー復号ユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、および再構成ユニット306、並びにバッファ307を含む。映像デコーダ300は、いくつかの例では、映像エンコーダ200(
図5)に関して説明した符号化パスとほぼ逆の復号パスを行ってもよい。
【0091】
エントロピー復号ユニット301は、符号化されたビットストリームを取り出す。符号化されたビットストリームは、エントロピーコーディングされた映像データ(例えば、映像データの符号化されたブロック)を含んでもよい。エントロピー復号ユニット301は、エントロピーコーディングされた映像データを復号し、エントロピー復号された映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVPおよびマージモードを行うことで、このような情報を判定してもよい。
【0092】
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を行う。構文要素には、サブピクセルの精度で使用される補間フィルタに対する識別子が含まれてもよい。
【0093】
動き補償ユニット302は、映像ブロックの符号化中に映像エンコーダ20によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数ピクセルのための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に従って映像エンコーダ200が使用する補間フィルタを決定し、補間フィルタを使用して予測ブロックを生成してもよい。
【0094】
動き補償ユニット302は、符号化された映像シーケンスのフレームおよび/またはスライスを符号化するために使用されるブロックのサイズを判定するための構文情報、符号化された映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのように符号化されるかを示すモード、各インター符号化されたブロックごとの1つ以上の参照フレーム(および参照フレームリスト)、および符号化された映像シーケンスを復号するための他の情報のうちのいくつかを使用してもよい。
【0095】
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピー復号ユニット301によって復号された量子化された映像ブロック係数を逆量子化(すなわち、逆量子化(de-quantizes))する。逆変換ユニット303は、逆変換を適用する。
【0096】
再構成ユニット306は、残差ブロックと、動き補償ユニット202またはイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、復号されたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、復号されたブロックをフィルタリングするためにデブロッキングフィルタを適用してもよい。復号された映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、表示デバイスに表示するために復号された映像を生成する。
【0097】
次に、いくつかの実施形態において好適な解決策を列挙する。
【0098】
以下の解決策は、前章(例えば、項目1~3)で論じた技術の例示的な実施形態を示す。
【0099】
1.(602)を実行することを含む、映像処理方法(例えば、
図3における方法600)。
【0100】
映像とこの映像のコーディングされた表現との変換を含み、このコーディングされた表現は、フォーマット規則に準拠し、このフォーマット規則は、対応する映像セグメントに対する参照ピクチャの再サンプリングの適用可能性を示す構文フィールドの使用を規定する。
【0101】
以下の解決策は、前章(例えば、項目1)で論じた技術の例示的な実施形態を示す。
【0102】
2.前記規則は、前記構文フィールドの値が、前記映像セグメントに対応するシーケンスパラメータセットに含まれるサブピクチャの値に依存せずに導出されることを規定する、解決策1に記載の方法。
【0103】
以下の解決策は、前章(例えば、項目2)で論じた技術の例示的な実施形態を示す。
【0104】
3.前記規則は、サブピクチャを変換のためのピクチャとして扱うかどうかに基づいて、前記構文フィールドの値を導出することを規定する、解決策1~2のいずれか1項に記載の方法。
【0105】
以下の解決策は、前章(例えば、項目3)で論じた技術の例示的な実施形態を示す。
【0106】
4.前記規則は、現在のピクチャと前記現在のピクチャの参照ピクチャが同じレイヤに属するかどうか、および/またはレイヤ間予測が許可されるかどうかに基づいて、前記構文フィールドの値を導出することを規定する、解決策1~3のいずれか1項に記載の方法。
【0107】
以下の解決策は、前章(例えば、項目4)で論じた技術の例示的な実施形態を示す。
【0108】
5.映像とこの映像のコーディングされた表現との変換を行うことを含み、このコーディングされた表現は、フォーマット規則に準拠し、このフォーマット規則は、アクセスユニット区切り文字に対応する第2の構文要素の値に基づいて、ピクチャヘッダまたはスライスヘッダにおける第1の構文要素の値を制約することを規定する、映像処理方法。
【0109】
以下の解決策は、前章(例えば、項目5~6)で論じた技術の例示的な実施形態を示す。
【0110】
6.映像とこの映像のコーディングされた表現との変換を行うことを含み、このコーディングされた表現はフォーマット規則に準拠し、フォーマット規則は、一般的制約情報フィールドに1つ以上の構文要素が含まれるかどうか、およびどのように含まれるかを規定する、映像処理方法。
【0111】
7.前記規則は、前記1つ以上の構文要素が前記コーディングされた表現に含まれるかどうかが、前記コーディングされた表現における第2のフィールドのバイト数に基づくことを規定する、解決策6に記載の方法。
【0112】
8.前記規則は、前記1つ以上の構文要素が前記一般的制約情報構文要素に含まれる場合、多数の予約ビットの存在を規定する、解決策6~7のいずれかに記載の方法。
【0113】
9. 前記変換を行うことは、前記映像を符号化して前記コーディングされた表現を生成することを含む、解決策1~8のいずれかに記載の方法。
【0114】
10. 変換を行うことは、コーディングされた表現を構文解析および復号して映像を生成することを含む、解決策1~8のいずれかに記載の方法。
【0115】
11. 解決策1~10の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像復号装置。
【0116】
12. 解決策1~10の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像符号化装置。
【0117】
13. コンピュータコードが記憶されたコンピュータプログラム製品であって、前記コードは、プロセッサにより実行されると、前記プロセッサに、解決策1~10のいずれかに記載の方法を実行させるコンピュータプログラム製品。
【0118】
14. 本明細書に記載の方法、装置またはシステム。
【0119】
図7は、本技術の1つ以上の実施形態による映像データ処理の方法700を表すフローチャートである。この方法700は、動作710において、規則に従って、映像の現在のピクチャと映像のビットストリームとの変換を行うことを含む。この規則は、現在のピクチャが、リカバリピクチャ順序カウント(POC)が0である漸次的復号更新(GDR)ピクチャであることに呼応して、現在のピクチャがリカバリポイントピクチャであることを規定する。リカバリPOCカウントは、復号されたピクチャのリカバリポイントを出力順に規定する。
【0120】
いくつかの実施形態において、前記規則は、現在のピクチャが0より大きいリカバリPOCカウントを有するGDRピクチャであることに呼応して、復号順で現在のGDRピクチャに後続し、リカバリPOCカウントが0である別のピクチャがリカバリポイントピクチャであることをさらに規定する。いくつかの実施形態において、前記リカバリポイントピクチャは復号順で現在のGDRピクチャに先行しない。いくつかの実施形態において、0より大きいリカバリPOCカウントを有する現在のGDRピクチャに関連付けられたピクチャは、現在のGDRピクチャのリカバリピクチャと呼ばれる。
【0121】
図8は、本技術の1つ以上の実施形態による映像データ処理の方法800を表すフローチャートである。方法800は、動作810において、規則に従って映像と映像のビットストリームとの変換を行うことを含む。この規則は、一般的制約情報(GCI)構文構造の構文要素が、瞬時復号更新(IDR)ピクチャおよび混合ネットワーク抽象化レイヤ(NAL)ユニットタイプの使用に関連付けられた参照ピクチャリストを示すことを規定するものである。
【0122】
いくつかの実施形態において、構文要素が1に等しい場合、IDRピクチャに対して参照ピクチャリストが示されず、IDRピクチャの映像コーディングレイヤ、VCL、NALユニットが同じ値を有するという制限を規定する。いくつかの実施形態において、構文要素が0に等しいことは、制限が課せられないことを規定する。いくつかの実施形態において、構文要素が1に等しいことは、IDRピクチャのスライスヘッダに参照ピクチャリストの構文要素が含まれないという制限を規定し、かつ、混合NALユニットタイプの使用が無効化されていることを規定する構文フラグを規定する。いくつかの実施形態において、構文要素が0に等しいことは、制限が課せられないことを規定する。
【0123】
いくつかの実施形態において、構文要素がGCI構文構造に存在しないことに呼応して、構文要素の値はXであると推測され、Xは0または1である。
【0124】
図9は、本技術の1つ以上の実施形態による映像データ処理の方法900を表すフローチャートである。方法900は、動作910において、現在の映像ブロックを含む映像とこの映像のビットストリームとの変換を行うことを含む。現在の映像ブロックの変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の特性が、規則に従って1つ以上の他の構文要素に依存する。
【0125】
いくつかの実施形態において、前記特性は前記第1の構文要素の値を含み、前記規則は前記第1の構文要素の値が前記QPテーブルを記述するために使用する開始輝度および彩度QPを規定する第2の構文要素の値に基づくことを規定する。いくつかの実施形態において、前記QPテーブルは多数のQPテーブルにおけるi番目のQPテーブルである。いくつかの実施形態において、第1の構文要素の値は(K-第2の構文要素の値)に等しく、Kは正の整数である。いくつかの実施形態において、前記第2の構文はsps_qp_table_start_minus26[i]で表され、その値に26を加えることによりi番目のQPテーブルを説明するために使用する開始輝度および彩度QPを規定する。いくつかの実施形態において、第1の構文要素の値は(36-sps_qp_table_start_minus26[i])に等しい。いくつかの実施形態において、Kは(最大許容QP値-1)に等しい。
【0126】
いくつかの実施形態において、この特性は、第1の構文要素が明示的に示されているかどうかを含む。いくつかの実施形態において、前記特性は前記第1の構文要素の推論値を含む。いくつかの実施形態において、前記特性は、前記第1の構文要素がとるように許可される値の範囲を含む。いくつかの実施形態において、前記規則は、第1構文と開始輝度および彩度QPとの合計が最大許容QP値より小さいことを規定する。
【0127】
図10は、本技術の1つ以上の実施形態による映像データ処理の方法1000を表すフローチャートである。方法1000は、動作1010において、映像と映像のビットストリームとの変換を行うことを含む。このビットストリームは、入力量子化パラメータ(QP)値および出力QP値が-QpBdOffset~Kの範囲にあることを規定する規則に準拠する。QpBdOffsetは、輝度および彩度量子化パラメータの範囲オフセットの値を規定し、Kは最大許容QP値に関連付けられる。
【0128】
いくつかの実施形態において、Kは(最大許容QP値-1)に等しい。いくつかの実施形態において、最大許容QP値は63に等しい。
【0129】
いくつかの実施形態において、変換は、映像をビットストリームに符号化することを含む。いくつかの実施形態において、変換は、ビットストリームから映像を復号することを含む。
【0130】
開示された、およびその他の解決策、例、実施形態、モジュールと、本明細書に記載される機能動作の実装形態は、本明細書に開示された構造およびその構造的均等物を含めて、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェアで実施してもよく、またはそれらの1つ以上の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1または複数のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1または複数のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1または複数の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブル処理装置、コンピュータ、または複数の処理装置、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1または複数の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報を符号化するために生成される。
【0131】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1または複数のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1または複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。コンピュータプログラムを、1つのコンピュータで実行するように展開することができ、あるいは、1つのサイトに位置する、または複数のサイトにわたって分散され通信ネットワークによって相互接続される複数のコンピュータで実行するように展開することができる。
【0132】
本明細書に記載された処理およびロジックフローは、入力データに対して動作し、出力を生成することによって機能を行うための1つ以上のコンピュータプログラムを実行する1つ以上のプログラム可能な処理装置によって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
【0133】
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用および専用目的マイクロプロセッサの両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つ以上のメモリデバイスとである。一般的に、コンピュータは、データを記憶するための1または複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュメモリデバイス、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。プロセッサおよびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
【0134】
本特許明細書は多くの特徴を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
【0135】
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている実施形態における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
【0136】
いくつかの実装形態および実施例のみが記載されており、この特許明細書に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
【手続補正書】
【提出日】2023-01-25
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
映像データの処理方法であって、現在の映像ブロックを含む映像と前記映像のビットストリームとの間で変換を行うことを含み、
前記現在の映像ブロックの前記変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の値の範囲は、規則に従う第2の構文要素を含む1つ以上の他の構文要素に依存し、
前記規則は、前記第1の構文要素の値の範囲が、前記QPテーブルを記述するために使用される開始輝度及び彩度QPを特定する前記第2の構文要素の値に基づくことを規定する、方法。
【請求項2】
前記QPテーブルは、i番目の彩度QPマッピングテーブルである、
請求項1に記載の方法。
【請求項3】
前記第1の構文要素の最大許容値は、(K-前記第2の構文要素の値)に等しく、Kは正の整数である、
請求項2に記載の方法。
【請求項4】
前記第2の構文要素は、sps_qp_table_start_minus26[i]として表現され、この値プラス26は、前記i番目の彩度QPマッピングテーブルを記述するために使用される前記開始輝度及び彩度QPを規定する、
請求項3に記載の方法。
【請求項5】
前記第1の構文要素の最大許容値は、(36-sps_qp_table_start_minus26[i])に等しい、
請求項4に記載の方法。
【請求項6】
前記現在の映像ブロックは、前記映像の現在のピクチャに含まれ、
前記規則は、前記現在のピクチャがリカバリピクチャ順序カウント(POC)のカウントが0の漸次的復号更新(GDR)ピクチャであることに応じて、前記現在のピクチャがリカバリポイントピクチャであるということを規定し、
前記リカバリPOCのカウントは、出力順序における復号されたピクチャのリカバリポイントを規定する、
請求項1から5のいずれか1項に記載の方法。
【請求項7】
前記変換は、前記映像を前記ビットストリームに符号化することを含む、
請求項1から6のいずれか1項に記載の方法。
【請求項8】
前記変換は、前記ビットストリームから前記映像を復号することを含む、
請求項1から6のいずれか1項に記載の方法。
【請求項9】
プロセッサと、命令を有する非一時的なメモリとを含む、映像データを処理するための装置であって、前記プロセッサによる実行時に前記命令が前記プロセッサに、現在の映像ブロックを含む映像と前記映像のビットストリームとの間で変換を行わせ、
前記現在の映像ブロックの前記変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の値の範囲は、規則に従う第2の構文要素を含む1つ以上の他の構文要素に依存し、
前記規則は、前記第1の構文要素の値の範囲が、前記QPテーブルを記述するために使用される開始輝度及び彩度QPを特定する前記第2の構文要素の値に基づくことを規定する、装置。
【請求項10】
プロセッサに実行させる命令を記録した非一時的なコンピュータ可読記憶媒体であって、前記命令は前記プロセッサに、現在の映像ブロックを含む映像と前記映像のビットストリームとの間で変換を行わせ、
前記現在の映像ブロックの前記変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の値の範囲は、規則に従う第2の構文要素を含む1つ以上の他の構文要素に依存し、
前記規則は、前記第1の構文要素の値の範囲が、前記QPテーブルを記述するために使用される開始輝度及び彩度QPを特定する前記第2の構文要素の値に基づくことを規定する、非一時的なコンピュータ可読記憶媒体。
【請求項11】
映像処理装置によって実行される方法によって生成される映像のビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、現在の映像ブロックを含む前記映像のビットストリームを生成することを含み、
前記現在の映像ブロックの前記変換に関連付けられた量子化パラメータ(QP)テーブルにおける点の数を規定する第1の構文要素の値の範囲は、規則に従う第2の構文要素を含む1つ以上の他の構文要素に依存し、
前記規則は、前記第1の構文要素の値の範囲が、前記QPテーブルを記述するために使用される開始輝度及び彩度QPを特定する前記第2の構文要素の値に基づくことを規定する、非一時的なコンピュータ可読記録媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
関連出願の相互参照
本願は、2020年6月22日出願の国際特許出願第PCT/CN2020/097390号の優先権および利益を主張する、2021年6月22日出願の国際特許出願PCT/CN2021/101390に基づく。前述のすべての特許出願は、その全体が参照により本明細書に組み込まれる。
【国際調査報告】