(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-16
(45)【発行日】2024-07-24
(54)【発明の名称】映像コーディングにおける同一位置に配置されたピクチャに対する制約
(51)【国際特許分類】
H04N 19/70 20140101AFI20240717BHJP
H04N 19/513 20140101ALI20240717BHJP
【FI】
H04N19/70
H04N19/513
(21)【出願番号】P 2022559409
(86)(22)【出願日】2021-03-30
(86)【国際出願番号】 US2021024795
(87)【国際公開番号】W WO2021202464
(87)【国際公開日】2021-10-07
【審査請求日】2022-11-02
(32)【優先日】2020-03-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】ワン イェクイ
(72)【発明者】
【氏名】ジャン リー
【審査官】松元 伸次
(56)【参考文献】
【文献】Benjamin Bross et al.,Versatile Video Coding (Draft 8),Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 17th Meeting: Brussels, BE, 7-17 January 2020,JVET-Q2001-vE,2020年03月12日,pp. 49,124,145-146,173,176-177,452-454
【文献】Wade Wan et al.,AHG8: RPR Scaling Window Issues,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 17th Meeting: Brussels, BE, 7-17 January 2020,JVET-Q0487,2020年01月04日,pp.1-4
【文献】Hendry et al.,[AHG9]: On signalling of TMVP enabled flag and collocated reference picture,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 17th Meeting: Brussels, BE, 7-17 January 2020,JVET-Q0207,2019年12月30日,p.1
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
現在のピクチャを含む映像と前記映像のビットストリームとの変換を行うこと、を含む映像処理方法であって、
前記ビットストリームはフォーマット規則に準拠し、
前記フォーマット規則は、
前記ビットストリームのビットストリーム適合性の要件を保証するために、フラグph_temporal_mvp_enabled_flagのセマンティックに制約が存在することを指定し、前記制約は、前記現在のピクチャと同じ空間解像度および同じスケーリングウィンドウオフセットを有する復号されたピクチャバッファ内に参照ピクチャが存在しないことにより、前記フラグph_temporal_mvp_enabled_flagの値が、時間的動きベクトル予測ツール
が前記現在のピクチャに対して無効
であることを示し、前記フラグph_temporal_mvp_enabled_flagは、ピクチャヘッダに含まれ、
参照ピクチャが前記現在のピクチャと同じ空間解像度を有するという制約が、スライスヘッダ内の同一位置に配置されたピクチャに関連する構文要素のセマンティックから削除される、映像処理方法。
【請求項2】
前記フラグ
ph_temporal_mvp_enabled_flagは
、前記時間的動きベクトル予測ツールが前記現在のピクチャに対して無効
であることを示すゼロに等しい、請求項1に記載の方法。
【請求項3】
前記フラグ
ph_temporal_mvp_enabled_flagは、前記
復号されたピクチャバッファにおける前記参照ピクチャが前記現在のピクチャにおけるすべてのスライスのうち1つ以上の参照ピクチャリストのアクティブエントリにない
ことにより、前記時間的動きベクトル予測ツールが前記現在のピクチャに対して無効
であることを示すゼロに等しい、請求項1又は2に記載の方法。
【請求項4】
前記フォーマット規則は、前記現在のピクチャのスライスに関連する
前記スライスヘッダが、前記現在のピクチャの同一位置に配置されたピクチャについての1つ以上の制約を含み、
前記1つ以上の制約は、参照ピクチャ再サンプリング処理が前記同一位置に配置されたピクチャに対して無効
であることを示す変数を規定する、請求項1~
3のいずれか1項に記載の方法。
【請求項5】
前記変数はRprConstraintsActiveFlagであり、ゼロの値を有する前記変数は、前記参照ピクチャ再サンプリング処理が前記同一位置に配置されたピクチャに対して無効
であることを示す、請求項
4に記載の方法。
【請求項6】
前記1つ以上の制約は、前記同一位置に配置されたピクチャのサブピクチャの数およびコーディングツリーユニット(CTU)サイズが前記現在のピクチャと同一であることをさらに規定する、請求項
4または
5に記載の方法。
【請求項7】
同一位置に配置されたピクチャは、前記時間的動きベクトル予測ツールにおいて使用される、請求項1~
6のいずれか1項に記載の方法。
【請求項8】
前記変換は、前記ビットストリームから前記映像をデコーディングすることを含む、請求項1~
7のいずれか1項に記載の方法。
【請求項9】
前記変換は、前記映像を前記ビットストリームにエンコーディングすることを含む、請求項1~
7のいずれか1項に記載の方法。
【請求項10】
処理装置と命令を備える非一時的メモリとを含む映像データを処理するための装置であって、前記命令は、処理装置による実行時に、処理装置に、
現在のピクチャを含む映像と前記映像のビットストリームとの変換を行うこと、を行わせ、
前記ビットストリームはフォーマット規則に準拠し、
前記フォーマット規則は、
前記ビットストリームのビットストリーム適合性の要件を保証するために、フラグph_temporal_mvp_enabled_flagのセマンティックに制約が存在することを指定し、前記制約は、現在のピクチャと同じ空間解像度および同じスケーリングウィンドウオフセットを有する復号されたピクチャバッファ内に参照ピクチャが存在しないことにより、前記フラグph_temporal_mvp_enabled_flagの値が、時間的動きベクトル予測ツール
が前記現在のピクチャに対して無効
であることを示し、前記フラグph_temporal_mvp_enabled_flagは、ピクチャヘッダに含まれ、
前記参照ピクチャが前記現在のピクチャと同じ空間解像度を有するという制約が、スライスヘッダ内の同一位置に配置されたピクチャに関連する構文要素のセマンティックから削除される、映像データを処理するための装置。
【請求項11】
命令を記憶する非一時的なコンピュータ可読記憶媒体であって、前記命令は、処理装置に、
現在のピクチャを含む映像と前記映像のビットストリームとの変換を行うこと、を行わせ、
前記ビットストリームはフォーマット規則に準拠し、
前記フォーマット規則は、
前記ビットストリームのビットストリーム適合性の要件を保証するために、フラグph_temporal_mvp_enabled_flagのセマンティックに制約が存在することを指定し、前記制約は、現在のピクチャと同じ空間解像度および同じスケーリングウィンドウオフセットを有する復号されたピクチャバッファ内に参照ピクチャが存在しないことにより、前記フラグph_temporal_mvp_enabled_flagの値が、時間的動きベクトル予測ツール
が前記現在のピクチャに対して無効
であることを示し、前記フラグph_temporal_mvp_enabled_flagは、ピクチャヘッダに含まれ、
前記参照ピクチャが前記現在のピクチャと同じ空間解像度を有するという制約が、スライスヘッダ内の同一位置に配置されたピクチャに関連する構文要素のセマンティックから削除される、非一時的なコンピュータ可読記憶媒体。
【請求項12】
映像のビットストリームを記憶する
方法であって
、
現在のピクチャを含む前記映像の前記ビットストリームを生成すること
と、
前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することと、を含み、
前記ビットストリームはフォーマット規則に準拠し、
前記フォーマット規則は、
前記ビットストリームのビットストリーム適合性の要件を保証するために、フラグph_temporal_mvp_enabled_flagのセマンティックに制約が存在することを指定し、前記制約は、現在のピクチャと同じ空間解像度および同じスケーリングウィンドウオフセットを有する復号されたピクチャバッファ内に参照ピクチャが存在しないことにより、前記フラグph_temporal_mvp_enabled_flagの値が、時間動きベクトル予測ツール
が前記現在のピクチャに対して無効
であることを示し、前記フラグph_temporal_mvp_enabled_flagは、ピクチャヘッダに含まれ、
前記参照ピクチャが前記現在のピクチャと同じ空間解像度を有するという制約が、スライスヘッダ内の同一位置に配置されたピクチャに関連する構文要素のセマンティックから削除される、方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2021年3月30日出願の国際出願番号第PCT/US2021/024795号に基づき、2020年3月30日出願の米国特許仮出願第63/002121号の優先権および利益を主張するものである。前述のすべての特許出願は、その全体が参照により本明細書に組み込まれる。
【0002】
この特許明細書は、画像および映像コーディングおよびデコーディングに関する。
【背景技術】
【0003】
デジタル映像は、インターネットおよび他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信および表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
【発明の概要】
【0004】
本明細書は、映像エンコーディングまたはデコーディングのために映像エンコーダおよびデコーダによって使用できる技術を開示し、同一位置に配置されたピクチャに対する制約を含む。
【0005】
1つの例示的な態様において、映像処理方法が開示される。この方法は、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、デコードされたピクチャバッファにおける参照ピクチャが現在のピクチャと同一の空間的解像度およびスケーリングウィンドウオフセットを有するかどうかに基づいて、この現在のピクチャに対して時間的動きベクトル予測ツールの使用を無効化するフラグを含むことを規定する。
【0006】
別の例示的な態様において、映像処理方法が開示される。この方法は、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、現在のピクチャが予測的にコーディングされたスライス(Pスライス)を含むかどうかに関わらず、この現在のピクチャの同一位置に配置されたピクチャをこの現在のピクチャに対する第1の参照ピクチャリストに含めることを許可することを規定する。
【0007】
さらに別の例示的な態様において、映像処理方法が開示される。この方法は、スライスを備える現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、現在のピクチャに関連付けられたピクチャヘッダに信号通知される参照ピクチャリスト情報と、同一位置に配置されたピクチャを含む参照ピクチャリストXとに基づいて、現在のピクチャの同一位置に配置されたピクチャの参照インデックスを導出することを規定し、Xはゼロまたは1に等しい整数である。
【0008】
さらに別の例示的な態様において、映像処理方法が開示される。この方法は、スライスを含む現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、このスライスに関連付けられたスライスヘッダが同一位置に配置されたピクチャに対する1つ以上の制約を含むことを規定するフォーマット規則に準拠し、1つ以上の制約は、この同一位置に配置されたピクチャに対して参照ピクチャ再サンプリング処理を無効にすることを示す変数を規定する。
【0009】
さらに別の例示的な態様において、映像処理方法が開示される。この方法は、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、フォーマット規則に準拠し、このフォーマット規則は、現在のピクチャに関連付けられたピクチャヘッダにおけるインデックスに対する制約として、インデックスはゼロ以上であり、現在のピクチャに適用可能なアクティブな参照インデックスの数より小さい必要があるように規定する。
【0010】
さらに別の例示的な態様において、映像処理方法が開示される。この方法は、規則に従って映像と映像のビットストリームとの変換を行うことを含み、この規則は、シーケンスパラメータセットを参照して、ピクチャに含まれるサブピクチャの数を示す第1の構文要素の前の位置に設定されたシーケンスパラメータにフラグが含まれていることを規定し、このフラグの特定の値は、このピクチャが正確に1つのスライスを含むことを示す。
【0011】
さらに別の例示的な態様において、映像処理方法が開示される。この方法は、規則に従って映像と映像のビットストリームとの変換を行うことを含み、この規則は、ピクチャパラメータセットを参照して、ピクチャに含まれるサブピクチャの数を示す第1の構文要素の前の位置に設定されたピクチャパラメータにフラグが含まれていることを規定し、このフラグの特定の値が、このピクチャが正確に1つのスライスを含むことを示す。
【0012】
さらに別の例示的な態様において、映像処理方法が開示される。この方法は、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、現在のピクチャに関連付けられたピクチャヘッダが、彩度スケーリング(LMCS)コーディングツールで輝度マッピングの3つのモード、(a)無効化、(b)すべてのスライスに対して使用、または(c)有効化、のうちの1つのモードのこのピクチャへの適用可能性を信号通知する構文要素を含むことを規定する。
【0013】
さらに別の例示的な態様において、映像エンコーダ装置が開示される。この映像エンコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0014】
さらに別の例示的な態様において、映像デコーダ装置が開示される。この映像デコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0015】
さらに別の例示的な態様では、コードが記憶されたコンピュータ可読媒体が開示される。このコードは、本明細書に記載の方法の1つをプロセッサが実行可能なコードの形式で実施する。
【0016】
これらのおよび他の特徴は、本文書全体にわたって説明される。
【図面の簡単な説明】
【0017】
【
図1】ピクチャを輝度コーディングツリーユニット(CTU)で分割する例を示す。
【
図2】輝度CTUを有するピクチャを分割する別の例を示す。
【
図5】開示された技術を実装することができる映像処理システムの一例を示すブロック図である。
【
図6】映像処理に使用されるハードウェアプラットフォームの例を示すブロック図である。
【
図7】本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。
【
図8】本発明のいくつかの実施形態によるエンコーダを示すブロック図である。
【
図9】本発明のいくつかの実施形態によるデコーダを示すブロック図である。
【
図10】映像処理の方法の例を示すフローチャートである。
【
図11】映像処理の方法の例を示すフローチャートである。
【
図12】映像処理の方法の例を示すフローチャートである。
【
図13】映像処理の方法の例を示すフローチャートである。
【
図14】映像処理の方法の例を示すフローチャートである。
【
図15】映像処理の方法の例を示すフローチャートである。
【
図16】映像処理の方法の例を示すフローチャートである。
【
図17】映像処理の方法の例を示すフローチャートである。
【発明を実施するための形態】
【0018】
本明細書では、理解を容易にするために章の見出しを使用しており、その技術および各章に記載された実施形態の適用可能性をその章のみに限定するものではない。さらに、H.266という用語は、ある説明において、理解を容易にするためだけに用いられ、開示される技術の範囲を限定するために用いられたものではない。このように、本明細書で説明される技術は、他の映像コーデックプロトコルおよび設計にも適用可能である。
【0019】
1. 導入
本明細書は、映像コーディング技術に関する。具体的には、サブピクチャ、タイル、およびスライスの信号通知に関する。この考えは、個々にまたは様々な組み合わせで、マルチレイヤ映像コーディング、例えば、現在開発されているVersatile Video Coding(VVC)をサポートする任意の映像コーディング標準または非標準映像コーデックに適用されてもよい。
【0020】
2. 略語
ALF Adaptive Loop Filter(適応ループフィルタ)
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(コーディングされた映像シーケンス)
DCI Decoding Capability Information(デコーディング能力情報)
DPB Decoded Picture Buffer(デコードされたピクチャバッファ)
DPS Decoding Parameter Set(デコーディングパラメータセット)
EOB End Of Bitstream(ビットストリーム終端)
EOS End Of Sequence(シーケンス終端)
GDR Gradual Decoding Refresh(漸次的デコーディングリフレッシュ)
HEVC High Efficiency Video Coding(高効率映像コーディング)
HRD Hypothetical Reference Decoder(仮想参照デコーダ)
IDR Instantaneous Decoding Refresh(瞬時デコーディングリフレッシュ)
JEM Joint Exploration Model(共同探索モデル)
LMCS Luma Mapping with Chroma Scaling(彩度スケーリングを伴う輝度マッピング)
MCTS Motion-Constrained Tile Sets(動き制約タイルセット)
NAL Network Abstraction Layer(ネットワーク抽象化レイヤ)
OLS Output Layer Set(出力レイヤセット)
PH Picture Header(ピクチャヘッダ)
PPS Picture Parameter Set(ピクチャパラメータセット)
PTL Profile, Tier and Level(プロファイル、ティアおよびレベル)
PU Picture Unit(ピクチャユニット)
RADL Random Access Decodable Leading (ランダムアクセスデコード可能リーディング) (ピクチャ)
RAP Random Access Point(ランダムアクセスポイント)
RASL Random Access Skipped Leading (ランダムアクセススキップリーディング) (ピクチャ)
RBSP Raw Byte Sequence Payload(生バイトシーケンスペイロード)
RPL Reference Picture List(参照ピクチャリスト)
SAO Sample Adaptive Offset(サンプル適応オフセット)
SEI Supplemental Enhancement Information(補足強化情報)
SPS Sequence Parameter Set(シーケンスパラメータセット)
STSA Step-wise Temporal Sublayer Access(ステップワイズ時間サブレイヤーアクセス)
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(汎用映像コーディング)
【0021】
3. 初期の協議
映像コーディング規約は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 VideoとH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像コーディング規約は、時間予測と変換コーディングが利用されるハイブリッド映像コーディング構造に基づく。HEVCを超えた将来の映像コーディング技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Model)と呼ばれる参照ソフトウェアに組み込まれてきた。JVETは四半期に1回開催され、新しいコーディング規約はHEVCに比べて50%のビットレート低減を目指している。2018年4月のJVET会議において、新しい映像コーディング規約を「VVC(Versatile Video Coding)」と正式に命名し、その時、第1版のVVCテストモデル(VTM)をリリースした。VVCの標準化に寄与する努力が続けられているので、すべてのJVET会議において、VVC標準に新しいコーディング技術が採用されている。毎回の会議の後、VVC作業草案およびテストモデルVTMを更新する。VVCプロジェクトは、現在、2020年7月の会合における技術完成(FDIS)を目指している。
【0022】
3.1. HEVCにおけるピクチャ分割スキーム
HEVCには、正規のスライス、依存性のあるスライス、タイル、WPP(Wavefront Parallel Processing)という4つの異なる画像分割スキームがあり、これらを適用することで、MTU(Maximum Transfer Unit)サイズのマッチング、並列処理、エンドツーエンドの遅延の低減が可能になる。
【0023】
正規のスライスは、H.264/AVCと同様である。各正規のスライスは、それ自体のNALユニットにカプセル化され、スライス境界にわたるインピクチャ予測(イントラサンプル予測、動き情報予測、コーディングモード予測)およびエントロピーコーディング依存性は無効化される。このように、1つの正規のスライスは、同じピクチャ内の他の正規のスライスとは独立して再構成することができる(しかし、ループフィルタリング動作のために依然として相互依存性が残っている場合がある)。
【0024】
正規のスライスは、並列化に使用できる唯一のツールであり、H.264/AVCでもほぼ同じ形式で使用できる。正規のスライスに基づく並列化は、プロセッサ間通信またはコア間通信をあまり必要としない(予測コーディングされたピクチャをデコーディングするとき、動き補償のためのプロセッサ間またはコア間データ共有を除いて、通常、インピクチャ予測のためにプロセッサ間またはコア間データ共有よりもはるかに重い)。しかしながら、同じ理由で、正規のスライスを使用すると、スライスヘッダのビットコストおよびスライス境界にわたる予測が欠如していることに起因して、コーディングのオーバーヘッドが大きくなる可能性がある。さらに、レギュラースライスは(後述の他のツールとは対照的に)、レギュラースライスのインピクチャの独立性および各レギュラースライスがそれ自体のNALユニットにカプセル化されることに起因して、MTUサイズ要件に適応するようにビットストリームを分割するための鍵となるメカニズムとしても機能する。多くの場合、並列化の目標およびMTUサイズマッチングの目標は、画像におけるスライスレイアウトに矛盾する要求を課す。このような状況を実現したことにより、以下のような並列化ツールが開発された。
【0025】
従属スライスは、ショートスライスヘッダを有し、インピクチャ予測を一切中断することなく、ツリーブロック境界でビットストリームを区分することを可能にする。基本的に、従属スライスは、正規のスライスを複数のNALユニットに断片化し、正規のスライス全体のエンコーディングが完了する前に正規のスライスの一部を送出することを可能にすることによって、エンドツーエンド遅延を低減する。
【0026】
WPPにおいて、ピクチャは、単一行のCTB(Coding Tree Block)に分割される。エントロピーデコーディングおよび予測は、他の分割におけるCTBからのデータを使用することを許可される。CTB行の並列デコーディングによって並列処理が可能であり、1つのCTB行のデコーディングの開始が2つのCTBだけ遅延され、それによって、対象のCTBがデコードされる前に、対象のCTBの上および右のCTBに関するデータが確実に利用可能になる。この互い違いのスタート(グラフで表される場合、波面のように見える)を使用することで、ピクチャがCTB行を含む数までのプロセッサ/コアを用いて並列化することが可能である。1つのインピクチャの近傍のツリーブロック行間のインピクチャ予測が許可されるので、インピクチャ予測を可能にするために必要なプロセッサ間/コア間通信は十分となり得る。WPP分割は、適用されない場合と比較して、追加のNALユニットの生成をもたらさず、従って、WPPは、MTUサイズマッチングのためのツールではない。しかし、MTUサイズのマッチングが必要な場合、一定のコーディングオーバーヘッドを伴って、WPPで正規のスライスを使用することができる。
【0027】
タイルは、ピクチャをタイルの列および行に分割する水平および垂直境界を規定する。タイルの列は、ピクチャの上から下へと延びている。同様に、タイル行は、ピクチャの左から右に延びる。ピクチャにおけるタイルの数は、単にタイル列の数にタイル行の数を乗算することで得ることができる。
【0028】
CTBのスキャン順序は、1つのタイル内でローカルになるように(タイルのCTBラスタスキャンの順に)変更され、その後、ピクチャのタイルラスタスキャンの順に従って、次のタイルの左上のCTBをデコーディングする。正規のスライスと同様に、タイルは、インピクチャ予測依存性およびエントロピーデコーディング依存性を損なう。しかしながら、これらは、個々のNALユニット(この点でWPPと同じ)に含まれる必要がなく、従って、タイルは、MTUサイズマッチングに使用できない。各タイルは、1つのプロセッサ/コアによって処理されてもよく、処理ユニット間のインピクチャ予測に必要なプロセッサ間/コア間通信では、近傍タイルのデコーディングは、スライスが2つ以上のタイルにまたがっている場合、共有スライスヘッダの伝達と、再構築されたサンプルおよびメタデータのループフィルタリングに関連する共有とに限定される。1つのスライスに2つ以上のタイルまたはWPPセグメントが含まれる場合、該スライスにおける最初の1つ以外の各タイルまたはWPPセグメントのエントリポイントバイトオフセットが、スライスヘッダにおいて信号通知される。
【0029】
説明を簡単にするために、HEVCにおいては、4つの異なるピクチャ分割方式の適用に関する制限が規定されている。所与のコーディングされた映像シーケンスは、HEVCに指定されたプロファイルのほとんどについて、タイルおよび波面の両方を含むことができない。各スライスおよびタイルについて、以下の条件のいずれかまたは両方を満たさなければならない。1)1つのスライスにおけるすべてのコーディングされたツリーブロックは、同じタイルに属し、2)1つのタイルにおけるすべてのコーディングされたツリーブロックは、同じスライスに属する。最後に、1つの波面セグメントはちょうど1つのCTB行を含み、WPPが使用されている際に、1つのスライスが1つのCTB行内で始まる場合、同じCTB行で終わらなければならない。
【0030】
最近のHEVCの修正は、JCT-VCの出力文書であるJCTVC-AC1005、J.Boyce,A.Ramasubramonian,R.Skupin,G.J.Sullivan、A.Tourapis、Y.-K.Wang(editors)、“HEVC Additional Supplemental Enhancement Information (Draft 4),”Oct.24,2017,下記で入手可能:http://phenix.int-evry.fr/jct/doc_end_user/documents/29_Macau/wg11/JCTVC-AC1005-v2.zip。この補正を含め、HEVCは、3つのMCTS関連SEIメッセージ、即ち、時間MCTS SEIメッセージ、MCTS抽出情報セットSEIメッセージ、およびMCTS抽出情報ネスティングSEIメッセージを特定する。
【0031】
時間MCTS SEIメッセージは、ビットストリーム中にMCTSが存在することを示し、MCTSに信号送信する。各MCTSにおいて、動きベクトルは、MCTS内部のフルサンプル位置と、補間のためにMCTS内部のフルサンプル位置のみを必要とするフラクショナルサンプル位置とを指すように制限され、かつ、MCTS外部のブロックから導出された時間動きベクトル予測のための動きベクトル候補の使用は許可されない。このように、各MCTSは、MCTSに含まれていないタイルが存在せず、独立してデコードされてもよい。
【0032】
MCTS抽出情報セットSEIメッセージは、MCTSサブビットストリーム抽出(SEIメッセージの意味の一部として指定される)において使用され得る補足情報を提供し、MCTSセットのための適合ビットストリームを生成する。この情報は、複数の抽出情報セットを含み、各抽出情報セットは、複数のMCTSセットを定義し、MCTSサブビットストリーム抽出処理において使用される代替VPS、SPS、およびPPSのRBSPバイトを含む。MCTSサブビットストリーム抽出プロセスによってサブビットストリームを抽出する場合、パラメータセット(VPS,SPS,PPS)を書き換えるかまたは置き換える必要があり、スライスヘッダを若干更新する必要があり、その理由は、スライスアドレスに関連する構文要素の1つまたは全て(first_slice_segment_in_pic_flagおよびslice_segment_addressを含む)が異なる値となる必要があるためである。
【0033】
3.2. VVCにおけるピクチャの分割
VVCにおいて、1つのピクチャは、1または複数のタイル行および1または複数のタイル列に分割される。1つのタイルは、1つのピクチャの1つの矩形領域を覆う1つのCTUのシーケンスである。1つのタイルにおけるCTUは、そのタイル内でラスタスキャン順にスキャンされる。
【0034】
1つのスライスは、1つのピクチャのタイル内において、整数個の完全なタイルまたは整数個の連続した完全なCTU行を含む。
【0035】
スライスの2つのモード、即ちラスタスキャンスライスモードおよび矩形スライスモードに対応している。ラスタスキャンスライスモードにおいて、1つのスライスは、1つのピクチャのタイルラスタスキャンにおける1つの完全なタイルのシーケンスを含む。矩形スライスモードにおいて、1つのスライスは、ピクチャの矩形領域を集合的に形成する複数の完全なタイル、またはピクチャの矩形領域を集合的に形成する1つのタイルの複数の連続した完全なCTU行のいずれかを含む。矩形スライス内のタイルを、そのスライスに対応する矩形領域内で、タイルラスタスキャンの順にスキャンする。
【0036】
1つのサブピクチャは、1つのピクチャの矩形領域を集合的に覆う1または複数のスライスを含む。
【0037】
図1は、ピクチャのラスタスキャンスライス分割の例を示し、ピクチャは、12個のタイルと3個のラスタスキャンスライスとに分割される。
【0038】
図2は、ピクチャの矩形スライス分割の例を示し、ピクチャは、24個のタイル(6個のタイル列および4個のタイル行)と9個の矩形スライスとに分割される。
【0039】
図3は、タイルおよび矩形のスライスに分割されたピクチャの例を示し、ピクチャは、4つのタイル(2つのタイルの列および2つのタイルの行)と4つの矩形スライスとに分割される。
【0040】
図4は、1つのピクチャをサブピクチャで分割する例を示し、1つのピクチャは、18個のタイルに分割され、左側の12個が、4×4のCTUの1つのスライスをそれぞれ含み、右側の6個のタイルが、2×2のCTUの垂直方向に積み重ねられたスライスをそれぞれ含み、全体で24個のスライスおよび24個の異なる寸法のサブピクチャとなる(各スライスは、1つのサブピクチャ)。
【0041】
3.3 シーケンス内のピクチャ解像度の変更
AVCおよびHEVCにおいて、ピクチャの空間的解像度は、新しいSPSを使用する新しいシーケンスがIRAPピクチャで始まらない限り、変更することができない。VVCは、常にイントラコーディングされるIRAPピクチャをエンコーディングせずに、ある位置のシーケンス内でピクチャの解像度を変更することを可能にする。この特徴は、参照ピクチャがデコードされている現在のピクチャと異なる解像度を有する場合、インター予測に使用される参照ピクチャをリサンプリングすることが必要であるため、参照ピクチャリサンプリング(RPR)と称する。
【0042】
スケーリング比は、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の範囲のスケーリング比を有する再サンプリング処理の特殊な場合である。水平および垂直スケーリング比は、ピクチャの幅および高さ、並びに参照ピクチャおよび現在のピクチャに対して指定された左、右、上および下のスケーリングオフセットに基づいて導出される。
【0043】
HEVCとは異なる、この特徴をサポートするためのVVC設計の他の態様は、i)SPSの代わりにPPSにおいてピクチャ解像度および対応する適合性ウィンドウを信号通知すること、SPSにおいて最大ピクチャ解像度を信号通知すること、ii)シングルレイヤビットストリームの場合、各ピクチャ記憶装置(デコードされたピクチャを記憶するためのDPBにおける1つのスロット)は、最大ピクチャ解像度を有するデコードされたピクチャを記憶するために必要なバッファサイズを占めることを含む。
【0044】
3.4 参照ピクチャ管理および参照ピクチャリスト(RPL)
参照ピクチャ管理は、インター予測を使用する任意の映像コーディング方式に必要なコア機能である。それは、デコードされたピクチャバッファ(DPB)への参照ピクチャの記憶域およびそこからの参照ピクチャの除去を管理するとともに参照ピクチャをRPL内の適切な順序に置く。
【0045】
HEVCの参照ピクチャ管理は、参照ピクチャのマーキングおよびデコードされたピクチャバッファ(DPB)からの除去、並びに参照ピクチャリスト構築(RPLC)を含め、AVCのものとは異なる。AVCにおいて、HEVCは、スライディングウィンドウに適応メモリ管理制御動作(MMCO)を加えたものに基づく参照ピクチャマーキング機構の代わりに、いわゆる参照ピクチャセット(RPS)に基づく参照ピクチャ管理およびマーキング機構を規定し、その結果、RPLCは、RPS機構に基づく。RPSは、ピクチャに関連付けられた参照ピクチャのセットで構成され、デコーディング順序において関連付けられたピクチャに先行する全ての参照ピクチャで構成され、デコーディング順序において関連付けられたピクチャまたは関連付けられたピクチャの後に続く任意のピクチャのインター予測に使用してもよい。参照ピクチャセットは、参照ピクチャの5つのリストで構成される。第1の3つのリストは、現在のピクチャのインター予測において使用してもよい、かつ現在のピクチャにデコーディング順において続く1つ以上のピクチャのインター予測において使用してもよい全ての参照ピクチャを含む。他の2つのリストは、現在のピクチャのインター予測において使用されないが、現在のピクチャにデコーディング順において続く1つ以上のピクチャのインター予測において使用してもよい全ての参照ピクチャからなる。RPSは、主に誤り耐性を改善するために、AVCにおけるような「インターコーディングされた」信号通知の代わりに、DPBステータスの「イントラコーディングされた」信号通知を提供する。HEVCにおけるRPLC処理は、各参照インデックスのRPSサブセットにインデックスを信号通知することによって、RPSに基づいており、この処理は、AVCにおけるRPLC処理よりも簡単である。
【0046】
VVCにおける参照ピクチャ管理は、AVCよりもHEVCに類似しているが、いくぶんシンプルで堅牢である。これらの標準におけるように、2つのRPL、リスト0およびリスト1が導出されるが、これらは、HEVCで使用される参照ピクチャセットの概念またはAVCで使用される自動スライディングウィンドウ処理に基づくものではなく、より直接的に信号通知される。参照ピクチャは、RPLのためにアクティブエントリおよび非アクティブエントリのいずれかとしてリストされ、アクティブエントリのみを、現在のピクチャのCTUのインター予測における参照インデックスとして使用してもよい。非アクティブエントリは、ビットストリームの後半に到着する他のピクチャを参照するために、DPBに保持されるべき他のピクチャを示す。
【0047】
3.5 パラメータセット
AVC、HEVC、VVCはパラメータセットを指定する。パラメータセットのタイプは、SPS、PPS、APS、VPS等である。SPS、PPSは、AVC、HEVC、VVCのすべてでサポートされている。VPSは、HEVCから導入されたものであり、HEVCおよびVVCの両方に含まれる。APSは、AVCまたはHEVCに含まれていなかったが、最近のVVC草案のテキストに含まれている。
【0048】
SPSは、シーケンスレベルのヘッダ情報を伝送するように設計され、PPSは、頻繁に変化しないピクチャレベルのヘッダ情報を担持するように設計された。SPSおよびPPSを用いると、シーケンスまたはピクチャごとに頻繁に変化する情報を繰り返す必要がないので、この情報の冗長な信号通知を回避することができる。さらに、SPSおよびPPSを使用することは、重要なヘッダ情報の帯域外伝送を有効化し、それにより、冗長な伝送の必要性を回避するだけでなく、誤り耐性を改善する。
【0049】
VPSは、マルチレイヤのビットストリームのすべてのレイヤに共通であるシーケンスレベルのヘッダ情報を担持するために導入された。
【0050】
APSは、コード化するためにかなりのビットを必要とし、複数のピクチャによって共有され得る、このようなピクチャレベルまたはスライスレベルの情報を担持するために導入された。そして、シーケンスにおいて、非常に多くの異なる変形例が存在し得る。
【0051】
3.6. VVCにおけるスライスヘッダおよびピクチャヘッダ
HEVCと同様に、VVCにおけるスライスヘッダは、特定のスライスに関する情報を伝達する。これは、スライスアドレス、スライスタイプ、スライスQP、ピクチャオーダカウント(POC)最下位ビット(LSB)、RPSおよびRPL情報、重み付け予測パラメータ、ループフィルタリングパラメータ、タイルのエントリオフセット、およびWPPなどを含む。
【0052】
VVCは、特定のピクチャのためのヘッダパラメータを含むピクチャヘッダ(PH)を導入した。各ピクチャは、1つのPHまたは1つのPHのみを有する必要がある。PHは、基本的に、PHが導入されなかったとした場合に、それぞれが1つのピクチャのすべてのスライスに対して同じ値を有するとき、スライスヘッダにあったであろうパラメータを伝える。これらは、IRAP/GDRピクチャ指示、インター/イントラスライス許可フラグ、POC LSB、およびオプションとしてPOC MSB、RPL、デブロッキング、SAO、ALF、QPデルタ、および重み付き予測、コーディングブロック分割情報、仮想境界、同一位置ピクチャ情報等に関する情報を含む。ピクチャのシーケンス全体における各ピクチャは1つのスライスのみを含むことが多い。このような場合、各ピクチャごとに少なくとも2つのNALユニットを有することを許可しないために、PH構文構造は、PH NALユニットまたはスライスヘッダのいずれかに含めることができる。
【0053】
VVCにおいて、時間的動きベクトル予測に使用される同一位置に配置されたピクチャの情報は、ピクチャヘッダまたはスライスヘッダのいずれかにおいて信号通知される。
【0054】
3.7. 彩度スケーリングを伴う輝度マッピング(LMCS)
他のインループフィルタ(すなわち、デブロッキング、SAO、およびALF)とは異なり、一般的には、空間的近傍のサンプルの情報を使用して現在のサンプルにフィルタリング処理を適用し、コーディングアーチファクトを低減する。これに対し、彩度スケーリング(LMCS)を用いた輝度マッピングは、コード名をダイナミックレンジ全体に再配布することで、エンコーディング前の入力信号を修正して圧縮効率を改善する。LMCSは、2つの主なコンポーネント、即ち、(a)適応区分的線形モデルに基づく輝度成分のインループマッピング、および(b)彩度成分のための輝度依存彩度残差スケーリング、を有する。輝度マッピングは、順方向マッピング関数FwdMapと、対応する逆方向マッピング関数InvMapを利用する。FwdMap関数は、16個の等しい区分を持つ区分的線形モデルを使用して信号通知される。InvMap関数は信号通知する必要はなく、代わりにFwdMap関数から派生する。APSにおいて、輝度マッピングモデルを信号通知する。コーディングされた映像シーケンスにおいて、最大4つのLMCS APSを使用できる。1つのピクチャに対してLMCSが有効化されると、輝度マッピングパラメータを搬送するAPSを識別するように、ピクチャヘッダにAPS IDが信号通知される。スライスに対してLMCSが有効化されるとき、InvMap関数をすべての再構成された輝度ブロックに適用し、サンプルを元のドメインに戻す。インターコーディングされたブロックの場合、追加のマッピング処理が必要であり、このマッピング処理は、FwdMap関数を適用して、通常の補償処理の後、元のドメインの輝度予測ブロックをマッピングされたドメインにマッピングする。彩度残差スケーリングは、輝度信号とそれに対応するクロマ信号間の相互作用を補正するように設計されている。輝度マッピングが有効化されるとき、輝度依存彩度残差スケーリングが有効化されるかどうかを示すために、追加のフラグが信号通知される。彩度残差スケーリング係数は、現在のCUの上側および/または左側の再構成された近傍の輝度サンプルの平均値に依存する。スケーリング係数が決定されると、エンコーディング段階において、イントラ予測残差およびインター予測残差の両方に順方向スケーリングを適用し、再構成された残差に逆方向スケーリングを適用する。
【0055】
4. 本願の解決策が解決しようとする技術的課題の例
最近のVVCテキスト(JVET-Q2001-vE/v15)における既存の設計は、以下の問題を有する。
【0056】
1) 同一位置に配置されたピクチャの信号通知は、それがリスト0からのものであるかまたはリスト1からのものであるかどうか、および参照インデックスを含む。現在、同一位置に配置されたピクチャの信号通知は、PHまたはSHのいずれかにおいて(しかし、両方ともではない)、RPL情報と一緒に行われる。
ph_temporal_mvp_enabled_flagおよびrpl_info_in_ph_flagがいずれも1に等しい場合、slice_collocated_from_l0_flagの値はph_collocated_from_l0_flagと等しくなると推測される。例えば、
【化1】
その結果、ph_temporal_mvp_enabled_flagおよびrpl_info_in_ph_flagが共に1に等しく、ph_collocated_from_l0_flagが0に等しい場合、slice_collocated_from_l0_flagの値は、ピクチャのPスライスに対するものも含め0に等しくなると推測される。しかしながら、Pスライスは、リスト0におけるエントリのみを参照するものとする。
【0057】
2) 以下にコピーされるph_temporal_mvp_enabled_flagの値に関する既存の制約は、実際には必要ではない。なぜなら、禁止されているものは、後に、SH制約(以下にもコピーされる)によって、同一位置に配置されたピクチャが同じ解像度および同じスケーリングウィンドウオフセットを有することを許可されないからである。
【化2】
【0058】
3) 同じ解像度で同じスケーリングウィンドウオフセットを有するように同一位置に配置されたピクチャに対するSH制約(上記にコピー)は、0値RprConstraintsActive[][]アスペクトが同じ解像度アスペクトおよび同じスケーリングウィンドウオフセットアスペクトの両方をカバーするため、ある程度の冗長性を有する。したがって、同じ解像度のアスペクトを除去することができる。
【0059】
4) PHを構文解析するとき、NumRefIdxActive[0]の値が既知である場合、ph_collocated_ref_idxに現在規定されている値の範囲は最適ではない。
【0060】
5) 最近のVVC草案テキストにおいて、CLVSにおける任意のピクチャについて、PH NALユニットの代わりにPH構文構造がSHに含まれている場合、CLVSにおける各ピクチャは、1つのスライスのみ有しており、CLVSにおける各ピクチャのPH構文構造は、PH NALユニットの代わりにSHに含まれている。この設計は、ピクチャが複数のスライスに分割されず、各ピクチャがただ1つのNALユニット(2つのNALユニットの代わりに、1つはPH用であり、1つはスライス用)で表現することができる主な使用の場合のために含まれていた。SPSにおいて、CLVSにおけるピクチャはそれぞれ1つのスライスのみを有することを規定するためのフラグを有することができる。しかし、このようなSPSフラグの値に基づいて、SPSにおけるいくつかの構文要素(例えば、sps_num_subpics_minus1、sps_independent_subpics_flag)の信号通知をスキップするメカニズムがない。
【0061】
6) 項目5と同様に、ピクチャが1つのスライスのみを有することを規定するように、PPSにフラグを有することが可能である。しかし、このようなPPSフラグの値に基づいて、PPS構文要素pps_num_subpics_minus1、rect_slice_flag、single_slice_per_subpic_flag、num_slices_in_pic_minus1、loop_filter_across_slices_enabled_flagのうちの1つ以上の信号通知をスキップするメカニズムがない。
【0062】
7) LMCS信号通知は非効率的である。ph_lmcs_enabled_flagが1に等しい場合、ほとんどの場合、ピクチャのすべてのスライスに対してLMCSが有効化される。しかし、現在のVVC設計において、1つのピクチャのすべてのスリックに対してLMCSが有効化される場合、ph_lmcs_enabled_flagが1に等しいだけでなく、各スライスに対して値1のslice_lmcs_enabled_flagを信号通知する必要がある。
a. ph_lmcs_enabled_flagの意味論は、ph_lmcs_enabled_flagが真である場合、スライスレベルLMCSフラグを信号通知する誘因と競合する。現在のVVCにおいて、ph_lmcs_enabled_flagがtrueであるとき、それは、すべてのスライスがLMCSを有効化にすることを意味する。したがって、スライスヘッダにおいて、LMCS有効化フラグをさらに信号送信する必要がない。
b. また、ピクチャヘッダがLMCSを有効化されていることを伝えると、一般的に、すべてのスライスについて、LMCSはすべて有効化される。スライスヘッダにおけるLCMSの制御は、主にコーナーケースを扱うためのものである。したがって、PH LMCSフラグが真であり、SH LMCSフラグが常に信号通知される場合、共通のユーザの場合に不必要なビットが信号通知される可能性がある。
c. さらに、ph_chroma_residual_scale_flagおよびslice_lmcs_enabled_flagの意味論において、ピクチャおよび/またはスライスの彩度残差スケーリングの有効化/無効化が明確に規定されていない。
【0063】
5. 例示的な技術および実施形態
上述した課題等を解決するために、以下に示す方法が開示されている。本発明は、一般的な概念を説明するための例と見なされるべきであり、狭い意味で解釈されるべきではない。さらに、本発明は、個々に適用されてもよいし、任意に組み合わせて適用されてもよい。
【0064】
1) 課題1を解決するために、以下の方法のうちの1つ以上を適用してもよい。
a. ピクチャがPスライスを含むかどうかに関わらず、同一位置に配置されたピクチャは、参照ピクチャリスト1からのものであることが許可されてもよい(かつ、参照ピクチャリスト0に存在しなくてもよい)。
【化3】
【化4】
【化5】
b. RPL情報がPHにおいて信号通知される(すなわち、rpl_info_in_ph_flagが1に等しい)場合、ph_collocated_from_l0_flagは0に等しく(すなわち、同一位置に配置されたピクチャは参照ピクチャリスト1に由来し)、スライスが同一位置に配置されたピクチャ参照インデックス(すなわち、slice_collocated_ref_idx)は、Min(ph_collocated_ref_idx、NumRefIdxActive[0]-1)に等しくなるように導出されてもよい。
i. あるいは、この場合、slice_collocated_ref_idxは、(ph_collocated_ref_idx<NumRefIdxActive[0])?ph_collocated_ref_idx:Nは、0~NumRefIdxActive[0]-1の範囲内にある変数であり、この範囲に含まれる。
1. 一例において、Nは0に設定される。
【0065】
2) 課題2を解決するために、ph_temporal_mvp_enabled_flagの値の制約を以下の注記に置き換えることが求められる。
【化6】
a. あるいは、同じスケーリングウィンドウオフセットのアスペクトを既存の制約に追加するだけである、すなわち、制約を以下のように変更することが求められる。
【化7】
【0066】
3) 課題3を解決するため、同一位置に配置されたピクチャが同じ解像度でかつ同じスケーリングウィンドウオフセットを有するようにするSH制約において、同じ解像度のアスペクトを除去する場合、0値RprConstraintsActive[][]アスペクトを維持するだけでよい。
【0067】
4) 課題4を解決するために、以下の一方または両方を適用する。
a. PHを構文解析し、ph_collocated_from_l0_flagが1に等しいときにNumRefIdxActive[0]の値が既知である場合、ph_collocated_ref_idxの値は、0~NumRefIdxActive[0]-1の範囲内にあるように制限されてもよい。
b. PHを構文解析し、ph_collocated_from_l0_flagが0に等しいときにNumRefIdxActive[1]の値が既知である場合、ph_collocated_ref_idxの値は、0~NumRefIdxActive[1]-1の範囲内にあるように制限されてもよい。
【0068】
5)課題5を解決するために、SPSフラグ、例えば、SPSのsps_one_slice_per_picture_flagを、構文要素sps_num_subpics_minus1、sps_one_slice_per_picture_flagの前の位置で信号通知してもよく、sps_one_slice_per_picture_flagが1に等しい場合は、SPSを参照する各ピクチャがスライス1つのみを含むことを規定する。
a. さらに、sps_one_slice_per_picture_flagが1に等しい場合、SPS構文要素sps_num_subpics_minus1およびsps_independent_subpics_flagのいずれかまたは両方の信号通知はスキップしてもよい。
i. さらに、sps_one_slice_per_picture_flagが1に等しい場合、sps_num_subpics_minus1およびsps_independent_subpics_flagのいずれかまたは両方の値は、それぞれ0および1に等しいと推測できる。
b. あるいは、さらに、sps_one_slice_per_picture_flagが1に等しいとき、SPS構文要素sps_num_subpics_minus1およびsps_independent_subpics_flagのいずれかまたは両方の値は、それぞれ0および1に等しくなるように制約される。
c. さらに、sps_one_slice_per_picture_flagが1に等しいとき、picture_header_in_slice_header_flagの値は1に等しいことが必要となる可能性がある。
d. あるいは、さらに、各ピクチャが1つのスライスのみを含むべきであるという制約が真である(例えば、1_slice_per_pic_constraint_flagが1に等しい)場合、SPSフラグが1に等しいことが必要である。
【0069】
6)課題6を解決するために、PPSフラグ、例えば、SPSのpps_one_slice_per_picture_flagを、構文要素pps_num_subpics_minus1、pps_one_slice_per_picture_flagの前の位置で信号通知してもよく、pps_one_slice_per_picture_flagが1に等しい場合は、PPSを参照する各ピクチャがスライス1つのみを含むことを規定する。
a. さらに、pps_one_slice_per_picture_flagが1に等しい場合、このようなPPSフラグの値に基づいて、PPS構文要素pps_num_subpics_minus1、rect_slice_flag、single_slice_per_subpic_flag、num_slices_in_pic_minus1、loop_filter_across_slices_enabled_flagのうちの1つ以上の信号通知をスキップしてもよい。
i. さらに、pps_one_slice_per_picture_flagが1に等しい場合、このようなPPSフラグの値に基づいて、pps_num_subpics_minus1、rect_slice_flag、single_slice_per_subpic_flag、num_slices_in_pic_minus1、loop_filter_across_slices_enabled_flagのうちの1つ以上の値をそれぞれ、0、1、1、1および1に等しいと推測できる。
b. あるいは、さらに、pps_one_slice_per_picture_flagが1に等しい場合、このようなPPSフラグの値に基づいて、pps_num_subpics_minus1、rect_slice_flag、single_slice_per_subpic_flag、num_slices_in_pic_minus1、loop_filter_across_slices_enabled_flagのうちの1つ以上の値をそれぞれ、0、1、1、1および1に等しくなるように制約される。
c. あるいは、さらに、各ピクチャが1つのスライスのみを含むべきであるという制約が真である(例えば、1_slice_per_pic_constraint_flagが1に等しい)場合、PPSフラグは1に等しいことが必要である。
【0070】
7) 課題7およびその副課題を解決するために、PHフラグph_lmcs_enabled_flagを、3つのモード、即ち、無効化(モード0)、全てのスライスに使用(モード1)、および有効化(モード2)を規定する2ビットのph_lmcs_mode_idcに置き換えてもよい。モード1において、1つのピクチャのすべてのスライスに対してLMCSが使用され、SHにおいてLMCS制御情報は必要とされない。
a. あるいは、さらに、LMCS SH制御フラグ(例えば、slice_lmcs_used_flag)の意味論を、LMCSが使用されているかどうかを示すように修正する。
あるいは、さらにph_chroma_residual_scale_flagの意味論の固定は、6.3章に記載されるように、ピクチャおよび/またはスライスの彩度残差スケーリングの有効化/無効化を正しく説明するために行われる。
【0071】
【0072】
6.1. 第一の実施形態
本実施形態は、上述した実施例2~4に対応する。
7.4.3.7 ピクチャヘッダ構造意味論
...
pic_output_flagは、附属書Cに規定されるように、デコードされたピクチャの出力および削除処理に影響を及ぼす。pic_output_flagが存在しない場合、1に等しいと推測される。
【化9】
...
ph_temporal_mvp_enabled_flagは、PHに関連するスライスのインター予測に時間動きベクトル予測モジュールを使用できるかを規定する。ph_temporal_mvp_enabled_flagが0に等しい場合、PHに関連付けられたスライスの構文要素は、時間的動きベクトル予測子がスライスのデコーディングに使用されないように制約されるものとする。そうでない場合(ph_temporal_mvp_enabled_flagが1に等しい場合)、PHに関連付けられたスライスのデコーディングに時間的動きベクトル予測子を使用してもよい。存在しない場合、ph_temporal_mvp_enabled_flagの値は0に等しいと推測される。[[DPBにおける参照ピクチャの空間的解像度が現在のピクチャと同じでない場合、ph_temporal_mvp_enabled_flagの値は0に等しいものとする。]]
【化10】
...
1に等しいph_collocated_from_I0_flagは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを規定する。0に等しいph_collocated_from_I0_flagは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト1から導出されることを規定する。
ph_collocated_ref_idxは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャの参照インデックスを規定する。
【化11】
【化12】
存在しない場合、ph_collocated_ref_idxの値は0に等しいと推測される。
...
7.4.8.1 一般スライスヘッダ意味論
...
slice_collocated_ref_idxは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャの参照インデックスを規定する。
slice_typeがPであるか、またはslice_typeがBに等しく、slice_collocated_from_l0_flagが1に等しい場合は、slice_collocated_ref_idxは、参照ピクチャリスト0のエントリを参照し、slice_collocated_ref_idxの数値は、0からNumRefIdxActive[0]-1の範囲内にあるものとする。
slice_typeがBに等しく、slice_collocated_from_l0_flagが0に等しい場合、slice_collocated_ref_idxの値は、参照ピクチャリスト1のエントリを参照し、slice_collocated_ref_idxは、0からNumRefIdxActive[1]-1の範囲内にあるものとする。
slice_collocated_ref_idxが存在しない場合、以下が適用される。
- rpl_info_in_ph_flagが1に等しい場合は、slice_collocated_ref_idxの値はph_collocated_ref_idxに等しいと推論される。
- そうでない場合(rpl_info_in_ph_flagが0に等しい)、slice_collocated_ref_idxの値は0に等しいと推論される。
slice_collocated_ref_idxが参照するピクチャは、コーディングされたピクチャのすべてのスライスで同じであるものとすることが、ビットストリーム適合性の要件である。
slice_collocated_ref_idxで参照される参照ピクチャのpic_width_in_luma_samplesとpic_height_in_luma_samplesの値が、それぞれ現在のピクチャのpic_width_in_luma_samplesとpic_height_in_luma_samplesと同じであるものとし、RprConstraintsActive[slice_collocated_from_l0_flag?0:1][slice_collocated_ref_idx]は0に等しいものとすることが、ビットストリーム適合性の要件である。
【化13】
...
【0073】
6.2. 第二の実施形態
【0074】
本実施形態は、上述した実施例5~6に対応する。
7.3.2.3 シーケンスパラメータセットRBSP構文
【表1】
7.4.3.3 シーケンスパラメータセットRBSP意味論
...
sps_log2_ctu_size_minus5+5は、各CTUの輝度コーディングツリーブロックのサイズを規定する。sps_log2_ctu_size_minus5の値は、0~2の範囲内である。sps_log2_CTU_size_minus5の値3は、ITU-T|ISO/IECが将来使用するために確保されている。
変数CtbLog2SizeYおよびCtbSizeYは、以下のように導出される。
CtbLog2SizeY=sps_log2_ctu_size_minus5+5 (43)
CtbSizeY=1<<CtbLog2SizeY (44)
【化14】
1に等しいsubpic_info_present_flagは、CLVSのためのサブピクチャ情報が存在し、CLVSの各ピクチャに1つ以上のサブピクチャが存在し得ることを規定する。0に等しいsubpic_info_present_flagは、CLVSのためのサブピクチャ情報が存在せず、CLVSの各ピクチャにはサブピクチャが1つだけ存在することを規定する。
res_change_in_clvs_allowed_flagが1に等しい場合は、subpic_info_present_flagの値は0に等しいものとする。
注3-ビットストリームがサブビットストリーム抽出処理の結果であり、サブビットストリーム抽出処理への入力ビットストリームのサブピクチャのサブセットのみを含む場合、SPSのRBSPにおいて、subpic_info_present_flagの値を1に設定することが必要となる場合がある。
sps_num_subpics_minus1+1は、CLVS内の各ピクチャのサブピクチャの数を規定する。sps_num_subpics_minus1の値は、0~Ceil(pic_width_max_in_luma_samples÷CtbSizeY)*Ceil(pic_height_max_in_luma_samples÷CtbSizeY)-1のの範囲内にあるものとする。存在しない場合、sps_num_subpics_minus1の値は0に等しいと推測される。
【化15】
...
7.3.2.4 ピクチャパラメータセットRBSP構文
【表2】
7.4.3.4 ピクチャパラメータセットRBSP意味論
...
【化16】
pic_width_in_luma_samplesは、PPSを参照してデコードされた各ピクチャの幅を輝度サンプルの単位で規定する。pic_width_in_luma_samplesは、0に等しくないものとし、Max(8,MinCbSizeY)の整数倍であるものとし、pic_width_max_in_luma_samples以下であるものとする。
res_change_in_clvs_allowed_flagが0に等しい場合、pic_width_in_luma_samplesの値はpic_width_max_in_luma_samplesと等しいものとする。
sps_ref_wraparound_enabled_flagが1に等しい場合、(CtbSizeY/MinCbSizeY+1)の値は、(pic_width_in_luma_samples/MinCbSizeY-1)の値以下であるとする。
...
【化17】
...
0に等しいrect_slice_flagは、各スライス内のタイルがラスタスキャン順に配列されており、かつスライス情報がPPSで信号通知されないことを規定する。1に等しいrect_slice_flagは、各スライス内のタイルがピクチャの矩形領域を覆い、かつスライス情報がPPSで信号通知されることを規定する。存在しない場合、rect_slice_flagは1に等しいと推測される。subpic_info_present_flagが1に等しいとき、rect_slice_flagの値は1に等しいものとする。
【化18】
num_slices_in_pic_minus1+1は、PPSを参照する各ピクチャの矩形スライスの数を規定する。num_slices_in_pic_minus1の値は、0からMaxSlicesPerPicture-1の範囲(両端含む)とし、MaxSlicesPerPictureは附属書Aで規定されるものとする。no_pic_partition_flagが1の場合、num_slices_in_pic_minus1の値は0に等しいと推定される。single_slice_per_subpic_flagが1に等しい場合、num_slices_in_pic_minus1の値はsps_num_subpics_minus1に等しいと推論される。
...
7.4.8.1 一般スライスヘッダ意味論
...
1に等しいpicture_header_in_slice_header_flagは、スライスヘッダにPH構文構造が存在することを規定する。0に等しいpicture_header_in_slice_header_flagは、PH構文構造が存在しないことを規定する。
CLVS内のすべてのコーディングされたスライスにおいて、picture_header_in_slice_header_flagの値が同じであるものとすることが、ビットストリーム適合性の要件である。
1つのコーディングされたスライスに対してpicture_header_in_slice_header_flagが1に等しい場合は、PH_NUTであるnal_unit_typeを有するVCL NALユニットがCLVSに存在しないものとすることが、ビットストリーム適合性の要件である。
picture_header_in_slice_header_flagが0に等しい場合、現在のピクチャにおけるすべてのコーディングされたスライスは、picture_header_in_slice_header_flagが0に等しいものとし、現在のPUはPH NALユニットを有するものとする。
【化19】
...
【0075】
6.3. 第三の実施形態
本実施形態は、上述した実施例7に対応する。
7.3.2.7 ピクチャヘッダ構造構文
【表3】
7.4.3.7 ピクチャヘッダ構造意味論
...
【化20】
【化21】
...
7.3.7.1 一般スライスセグメントヘッダ構文
【表4】
7.4.8.1 一般スライスヘッダ意味論
...
【化22】
...
【0076】
図5は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム500を示すブロック図である。様々な実装形態は、システム500のコンポーネントの一部又は全部を含んでもよい。システム500は、映像コンテンツを受信するための入力502を含んでもよい。映像コンテンツは、未加工又は非圧縮フォーマット、例えば、8又は10ビットのマルチコンポーネント画素値で受信されてもよく、又は圧縮又はエンコードされたフォーマットで受信されてもよい。入力502は、ネットワークインターフェース、周辺バスインターフェース、又は記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、PON(登録商標;Passive Optical Network)等の有線インターフェース、およびWi-Fi(登録商標)またはセルラーインターフェース等の無線インターフェースを含む。
【0077】
システム500は、本明細書に記載される様々なコーディング又はエンコーディング方法を実装することができるコーディングコンポーネント504を含んでもよい。コーディングコンポーネント504は、入力502からの映像の平均ビットレートをコーディングコンポーネント504の出力に低減し、映像のコーディング表現を生成してもよい。従って、コーディング技術は、映像圧縮または映像トランスコーディング技術と呼ばれることがある。コーディングコンポーネント504の出力は、コンポーネント506によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力502において受信された、記憶された又は通信された映像のビットストリーム(又はコーディングされた)表現は、コンポーネント508によって使用されて、表示インターフェース510に送信される画素値又は表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像展開と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作又はツールと呼ぶが、コーディングツール又は動作は、エンコーダおよびそれに対応する、コーディングの結果を逆にするデコーディングツール又は動作が、デコーダによって行われることが理解されよう。
【0078】
周辺バスインターフェースまたは表示インターフェースの例は、USB(登録商標;Universal Serial Bus)またはHDMI(登録商標;High Definition Multimedia Interface)またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、SATA(Serial Advanced Technology Attachment)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、又はデジタルデータ処理および/又は映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
【0079】
図6は、映像処理装置600のブロック図である。装置600は、本明細書に記載の方法の1つ以上を実装するために使用してもよい。装置600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等により実施されてもよい。装置600は、1つ以上のプロセッサ602と、1つ以上のメモリ604と、映像処理ハードウェア606と、を含んでもよい。プロセッサ(単数または複数)602は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(単数または複数)604は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア606は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。いくつかの実施形態において、ハードウェア606は、1つ以上のプロセッサ602、例えばグラフィックプロセッサ内に部分的にまたは全体が含まれてもよい。
【0080】
図7は、本開示の技法を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
【0081】
図7に示すように、映像コーディングシステム100は、送信元デバイス110と、送信先デバイス120と、を備えてもよい。送信元デバイス110は、エンコードされた映像データを生成するものであり、映像エンコーディングデバイスとも呼ばれ得る。送信先デバイス120は、送信元デバイス110によって生成されたエンコードされた映像データをデコードしてよく、映像デコーディングデバイスとも呼ばれ得る。
【0082】
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インターフェース116と、を含んでよい。
【0083】
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインターフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1または複数のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データをエンコードし、ビットストリームを生成する。ビットストリームは、映像データのコーディングされた表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインターフェース116は、変復調器(モデム)および/または送信機を含んでもよい。エンコードされた映像データは、ネットワーク130aを介して、I/Oインターフェース116を介して送信先デバイス120に直接送信されてよい。エンコードされた映像データは、送信先デバイス120がアクセスするために、記録媒体/サーバ130bに記憶してもよい。
【0084】
送信先デバイス120は、I/Oインターフェース126、映像デコーダ124、および表示デバイス122を含んでもよい。
【0085】
I/Oインターフェース126は、受信機および/またはモデムを含んでもよい。I/Oインターフェース126は、送信元デバイス110または記憶媒体/サーバ130bからエンコードされた映像データを取得してもよい。映像デコーダ124は、エンコードされた映像データをデコードしてもよい。表示装置122は、デコードされた映像データをユーザに表示してもよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインターフェースするように構成される送信先デバイス120の外部にあってもよい。
【0086】
映像エンコーダ114および映像デコーダ124は、HEVC(High Efficiency Video Coding)規格、VVM(Versatile Video Coding)規格、および他の現在のおよび/またはさらなる規格等の映像圧縮規格に従って動作してもよい。
【0087】
図8は、映像エンコーダ200の一例を示すブロック図であり、この映像エンコーダ114は、
図7に示されるシステム100における映像エンコーダ714であってもよい。
【0088】
映像エンコーダ200は、本開示の技術のいずれか又は全部を実行するように構成されてもよい。
図8の実施例において、映像エンコーダ200は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像エンコーダ200の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0089】
映像エンコーダ200の機能コンポーネントは、分割部201、予測部202を含んでもよく、予測部202は、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、およびイントラ予測ユニット206、残差生成ユニット207、変換ユニット208、量子化ユニット209、逆量子化ユニット210、逆変換ユニット211、再構成ユニット212、バッファ213、およびエントロピーエンコーディングユニット214を含んでもよい。
【0090】
他の例において、映像エンコーダ200は、より多くの、より少ない、又は異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、IBC(Intra Block Copy)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測を行うことができる。
【0091】
さらに、動き推定ユニット204および動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、
図8の例においては個別に表現されている。
【0092】
分割ユニット201は、1つのピクチャを1または複数の映像ブロックに分割してもよい。映像エンコーダ200および映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
【0093】
モード選択ユニット203は、例えば、誤りの結果に基づいて、イントラまたはインターコーディングモードのうちの1つを選択し、得られたイントラまたはインターコーディングされたブロックを残差生成ユニット207に供給し、残差ブロックデータを生成して再構成ユニット212に供給し、エンコードされたブロックを参照ピクチャとして使用するために再構成してもよい。いくつかの例において、モード選択ユニット203は、インター予測信号およびイントラ予測信号に基づいて予測を行うCIIP(Combination of Intra and Inter Prediction)モードを選択してもよい。また、モード選択ユニット203は、インター予測の場合、ブロックの動きベクトルの解像度(例えば、サブピクセルまたは整数画素精度)を選択してもよい。
【0094】
現在の映像ブロックに対してインター予測を行うために、動き推定ユニット204は、バッファ213からの1または複数の参照フレームと現在の映像ブロックとを比較することで、現在の映像ブロックのための動き情報を生成してもよい。動き補償ユニット205は、現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの動き情報およびデコードされたサンプルに基づいて、現在の映像ブロックのための予測映像ブロックを判定してもよい。
【0095】
動き推定ユニット204および動き補償ユニット205は、現在の映像ブロックがIスライスであるか、Pスライスであるか、またはBスライスであるかによって、例えば、現在の映像ブロックに対して異なる動作を行ってもよい。
【0096】
いくつかの例では、動き推定ユニット204は、現在の映像ブロックに対して単一方向予測を行い、動き推定ユニット204は、現在の映像ブロックに対して、参照映像ブロック用のリスト0またはリスト1の参照ピクチャを検索してもよい。そして、動き推定ユニット204は、参照映像ブロックと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルとを含む、リスト0またはリスト1における参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
【0097】
他の例において、動き推定ユニット204は、現在の映像ブロックを双方向予測してもよく、動き推定ユニット204は、リスト0における参照ピクチャの中から現在の映像ブロックを求めるための参照映像ブロックを検索してもよく、また、リスト1における参照ピクチャの中から現在の映像ブロックを求めるための別の参照映像ブロックを検索してもよい。そして、動き推定ユニット204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定ユニット204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
【0098】
いくつかの例では、動き推定ユニット204は、デコーダのデコーディング処理のために、動き情報のフルセットを出力してもよい。
【0099】
いくつかの例では、動き推定ユニット204は、現在の映像のための動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定ユニット204は、現在の映像ブロックの動き情報が近傍の映像ブロックの動き情報に十分に類似していることを判定してもよい。
【0100】
一例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同じ動き情報を有することを映像デコーダ300に示す値を示してもよい。
【0101】
別の例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、動きベクトル差分(MVD;Motion Vector Difference)とを識別してもよい。動きベクトル差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、示された映像ブロックの動きベクトルおよび動きベクトル差分を使用して、現在の映像ブロックの動きベクトルを決定してもよい。
【0102】
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装され得る予測信号通知技法の2つの例は、AMVP(Advanced Motion Vector Prediction)およびマージモード信号通知を含む。
【0103】
イントラ予測ユニット206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測ユニット206が現在の映像ブロックをイントラ予測する場合、イントラ予測ユニット206は、同じピクチャにおける他の映像ブロックのデコードされたサンプルに基づいて、現在の映像ブロックのための予測データを生成してもよい。現在の映像ブロックのための予測データは、予測された映像ブロックおよび様々な構文要素を含んでもよい。
【0104】
残差生成ユニット207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックのための残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
【0105】
他の例において、例えば、スキップモードにおいて、現在の映像ブロックのための残差データがなくてもよく、残差生成ユニット207は、減算動作を行わなくてもよい。
【0106】
変換処理ユニット208は、現在の映像ブロックに関連付けられた残差映像ブロックに1または複数の変換を適用することによって、現在の映像ブロックのための1または複数の変換係数映像ブロックを生成してもよい。
【0107】
変換処理ユニット208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化ユニット209は、現在の映像ブロックに関連付けられた1または複数の量子化パラメータ(QP:Quantization Parameter)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
【0108】
逆量子化ユニット210および逆変換ユニット211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成ユニット212は、予測ユニット202にて生成された1または複数の予測映像ブロックからの対応するサンプルに再構成された残差映像ブロックを加え、現在のブロックに関連付けられた再構成映像ブロックを生成し、バッファ213に記憶してもよい。
【0109】
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング動作が行われてもよい。
【0110】
エントロピーエンコーディングユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピーエンコーディングユニット214がデータを受信すると、エントロピーエンコーディングユニット214は、1または複数のエントロピーエンコーディング動作を行い、エントロピーエンコードされたデータを生成し、エントロピーエンコードされたデータを含むビットストリームを出力してもよい。
【0111】
図9は、映像デコーダ300の一例を示すブロック図であり、この映像デコーダ300は、
図7に示すシステム100における映像デコーダ114であってもよい。
【0112】
映像デコーダ300は、本開示の技術のいずれか又は全部を実行するように構成されてもよい。
図8の実施例において、映像デコーダ300は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像デコーダ300の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0113】
図9の実施例において、映像デコーダ300は、エントロピーデコーディングユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、および再構成ユニット306、並びにバッファ307を含む。映像デコーダ300は、いくつかの例では、映像エンコーダ200(
図8)に関して説明したエンコーディングパスとほぼ逆のデコーディングパスを行ってもよい。
【0114】
エントロピーデコーディングユニット301は、エンコードされたビットストリームを取り出す。エンコードされたビットストリームは、エントロピーコーディングされた映像データ(例えば、映像データのエンコードされたブロック)を含んでもよい。エントロピーデコーディングユニット301は、エントロピーコーディングされた映像データをデコードし、エントロピーデコードされた映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVPおよびマージモードを実行することで、このような情報を判定してもよい。
【0115】
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を実行する。サブピクセルの精度で使用される補間フィルタのための識別子が、構文要素に含まれてもよい。
【0116】
動き補償ユニット302は、映像ブロックのエンコーディング中に映像エンコーダ20によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数ピクセルのための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に基づいて、映像エンコーダ200が使用する補間フィルタを決定し、補間フィルタを使用して予測ブロックを生成してもよい。
【0117】
動き補償ユニット302は、エンコードされた映像シーケンスのフレームおよび/またはスライスをエンコードするために使用されるブロックのサイズを判定するための構文情報、エンコードされた映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのようにエンコードされるかを示すモード、各インターエンコードされたブロックに対する1または複数の参照フレーム(および参照フレームリスト)、およびエンコードされた映像シーケンスをデコードするための他の情報のいくつかを使用してもよい。
【0118】
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピーデコーディングユニット301によってデコードされる量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆変換ユニット303は、逆変換を適用する。
【0119】
再構成ユニット306は、残差ブロックと、動き補償ユニット202又はイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、デコードされたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、デコードされたブロックをフィルタリングするためにデブロッキングフィルタを適用してもよい。デコードされた映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、また表示デバイスに表示するためにデコードされた映像を生成する。
【0120】
図10~
図17は、上述した技術的解決策を実装することができる例示的な方法を示し、例えば、この実施形態は
図5~
図9に示す。
【0121】
図10は、映像処理の方法1000の一例を示すフローチャートを示す。方法1000は、動作1010において、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、デコードされたピクチャバッファにおける参照ピクチャが現在のピクチャと同一の空間的解像度およびスケーリングウィンドウオフセットを有するかどうかに基づいて、この現在のピクチャに対して時間的動きベクトル予測ツールの使用を無効化するフラグを含むことを規定するフォーマット規則に準拠する。
【0122】
図11は、映像処理の方法1100の一例を示すフローチャートを示す。方法1100は、動作1110において、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、現在のピクチャが予測コーディングされたスライス(Pスライス)を含むかどうかに関わらず、この現在のピクチャの同一位置に配置されたピクチャをこの現在のピクチャに対する第1の参照ピクチャリストに含めることを許可することを規定するフォーマット規則に準拠する。
【0123】
図12は、映像処理の方法1200の一例を示すフローチャートを示す。方法1200は、動作1210において、スライスを備える現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、現在のピクチャに関連付けられたピクチャヘッダに信号通知される参照ピクチャリスト情報と、同一位置に配置されたピクチャを含む参照ピクチャリストXとに基づいて、現在のピクチャの同一位置に配置されたピクチャの参照インデックスを導出することを規定し、Xはゼロまたは1に等しい整数である。
【0124】
図13は、映像処理の方法1300の一例を示すフローチャートを示す。この方法1300は、動作1310において、1つのスライスを含む現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、このスライスに関連付けられた1つのスライスヘッダが同一位置に配置されたピクチャに対する1つ以上の制約を含むことを規定するフォーマット規則に準拠し、1つ以上の制約は、この同一位置に配置されたピクチャに対して参照ピクチャ再サンプリング処理を無効にすることを示す変数を規定する。
【0125】
図14は、映像処理の方法1400の一例を示すフローチャートを示す。方法1400は、動作1410において、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、この現在のピクチャに関連付けられたピクチャヘッダにおけるインデックスに対する制約を、インデックスはゼロ以上であり、現在のピクチャに適用可能なアクティブな参照インデックスの数より小さい必要があるように規定するフォーマット規則に準拠する。
【0126】
図15は、映像処理の方法1500の一例を示すフローチャートを示す。この方法1500は、動作1510において、規則に従って映像と映像のビットストリームとの変換を行うことを含み、この規則は、シーケンスパラメータセットを参照して、ピクチャに含まれるサブピクチャの数を示す第1の構文要素の前の位置に設定されたシーケンスパラメータにフラグが含まれていることを規定し、このフラグの値の特定の値は、このピクチャが正確に1つのスライスを含むことを示す。
【0127】
図16は、映像処理の方法1600の一例を示すフローチャートを示す。この方法1600は、動作1610において、規則に従って映像と映像のビットストリームとの変換を行うことを含み、この規則は、ピクチャパラメータセットを参照して、ピクチャに含まれるサブピクチャの数を示す第1の構文要素の前の位置に設定されたピクチャパラメータにフラグが含まれていることを規定し、このフラグの値の特定の値は、このピクチャが正確に1つのスライスを含むことを示す。
【0128】
図17は、映像処理の方法1700の一例を示すフローチャートを示す。この方法1700は、動作1710において、現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、現在のピクチャに関連付けられたピクチャヘッダが、彩度スケーリング(LMCS)コーディングツールで輝度マッピングの3つのモード、(a)無効化、(b)すべてのスライスに対する使用、または(c)有効化、のうちの1つのモードのこのピクチャへの適用可能性を信号通知する構文要素を含むことを規定するフォーマット規則に準拠する。
【0129】
次に、いくつかの実施形態において好適な解決策を列挙する。
【0130】
A1.現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、デコードされたピクチャバッファにおける参照ピクチャが現在のピクチャと同一の空間的解像度およびスケーリングウィンドウオフセットを有するかどうかに基づいて、この現在のピクチャに対する時間的動きベクトル予測ツールの使用を無効化するフラグを含むことを規定する、映像処理方法。
【0131】
A2.デコードされたピクチャバッファにおける参照ピクチャは、現在のピクチャと同じ空間的解像度および同じスケーリングウィンドウオフセットを有しないために、フラグはゼロに等しい、解決策A1に記載の方法。
【0132】
A3.デコードされたピクチャバッファにおける参照ピクチャは、現在のピクチャにおけるすべてのスライスの1つ以上の参照ピクチャリストのアクティブエントリに存在しないために、フラグはゼロに等しい、解決策A1に記載の方法。
【0133】
A4.前記フラグが0であることは、現在のピクチャに対して時間的動きベクトル予測ツールが無効化されていることを示す、解決策A2またはA3に記載の方法。
【0134】
A5.前記フラグは、ピクチャヘッダに含まれる、解決策A1~A4のいずれかに記載の方法。
【0135】
A6.前記フラグがph_temporal_mvp_enabled_flagである、解決策A5に記載の方法。
【0136】
A7.現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、現在のピクチャが予測コーディングされたスライス(Pスライス)を含むかどうかに関わらず、この現在のピクチャの同一位置に配置されたピクチャをこの現在のピクチャに対する第1の参照ピクチャリストに含めることを許可することを規定する、映像処理方法。
【0137】
A8.前記フォーマット規則は、前記同一位置に配置されたピクチャが前記現在のピクチャに対する第2の参照ピクチャリストに存在しないことをさらに規定する、解決策A7に記載の方法。
【0138】
A9.第1の参照ピクチャリストがRefPicList[1]であり、第2の参照ピクチャリストがRefPicList[0]である、解決策A8に記載の方法。
【0139】
A10.スライスを備える現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、現在のピクチャに関連付けられたピクチャヘッダに信号通知される参照ピクチャリスト情報と、同一位置に配置されたピクチャを含む参照ピクチャリストXとに基づいて、現在のピクチャの同一位置に配置されたピクチャの参照インデックスを導出することを規定し、Xはゼロまたは1に等しい整数である、映像処理方法。
【0140】
A11.前記同一位置に配置されたピクチャの参照インデックスは、(a)前記ピクチャヘッダにおける同一位置に配置されたピクチャ参照インデックスと、(b)参照ピクチャリスト(1-X)におけるアクティブなエントリの数から1を減じた数との最小値として導出される、解決策A10に記載の方法。
【0141】
A12.前記同一位置に配置されたピクチャの参照インデックスは、(a)前記同一位置に配置されたピクチャ参照インデックスが、参照ピクチャリスト(1-X)におけるアクティブエントリの数未満である場合は、前記ピクチャヘッダにおける前記同一位置に配置されたピクチャとして、または(b)ゼロから参照ピクチャリスト(1-X)におけるアクティブエントリの数から1を減じた数の範囲にわたる所定の非負の整数(N)として導出する、解決策A10に記載の方法。
【0142】
A13.N=0である、解決策A12に記載の方法。
【0143】
A14.前記変換は、前記ビットストリームから前記映像をデコーディングすることを含む、解決策A1~A13のいずれかに記載の方法。
【0144】
A15.前記変換は、前記ビットストリームに前記映像をエンコーディングすることを含む、解決策A1~A13のいずれかに記載の方法。
【0145】
A16.映像を表すビットストリームをコンピュータ読み取り可能な記録媒体に記憶する方法であって、解決策A1~A13のいずれか1項以上に記載の方法に従って、前記映像からビットストリームを生成し、前記ビットストリームを前記コンピュータ読み取り可能な記録媒体に記憶させることを含む、方法。
【0146】
A17.解決策A1~A16のいずれか1つ以上に記載の方法を実装するように構成されたプロセッサを備える映像処理装置。
【0147】
A18.命令が記憶されたコンピュータ可読媒体であって、前記命令が実行されると、プロセッサに、解決策A1~A16に1つ以上記載の方法を実装させる、コンピュータ可読媒体。
【0148】
A19.解決策A1~A16のいずれか1つ以上により生成された前記ビットストリームを記憶するコンピュータ可読媒体。
【0149】
A20.解決策A1~A16のいずれか1つ以上に記載の方法を実装するように構成された、ビットストリームを記憶するための映像処理装置。
【0150】
次に、いくつかの実施形態において好適な別の解決策を列挙する。
【0151】
B1.スライスを含む現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、このスライスに関連付けられたスライスヘッダが同一位置に配置されたピクチャに対する1つ以上の制約を含むことを規定するフォーマット規則に準拠し、1つ以上の制約は、この同一位置に配置されたピクチャに対して参照ピクチャ再サンプリング処理を無効にすることを示す変数を規定する、映像処理方法。
【0152】
B2.前記変数はRprConstraintsActiveFlagであり、値がゼロである前記変数は、前記同一位置に配置されたピクチャのために前記参照ピクチャの再サンプリング処理が無効化されていることを示す、解決策B1に記載の方法。
【0153】
B3.前記1つ以上の制約は、同一位置に配置されたピクチャのサブピクチャの数およびコーディングツリーユニット(CTU)のサイズが現在のピクチャと同一であることをさらに規定する、解決策B1に記載の方法。
【0154】
B4.前記同一位置に配置されたピクチャは、現在のピクチャに対して有効化される時間的動きベクトル予測ツールにおいて使用される、解決策B1~B3のいずれかに記載の方法。
【0155】
B5.現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、フォーマット規則に準拠し、このフォーマット規則は、現在のピクチャに関連付けられたピクチャヘッダにおけるインデックスに対する制約を、インデックスはゼロ以上であり、現在のピクチャに適用可能なアクティブな参照インデックスの数より小さい必要があるように規定する、映像処理方法。
【0156】
B6.前記インデックスは、現在のピクチャの時間的動きベクトル予測に使用される同一位置に配置されたピクチャを示す、解決策B5に記載の方法。
【0157】
B7.前記アクティブな参照インデックスは、参照ピクチャリスト0の参照インデックスに対応する、解決策B5またはB6に記載の方法。
【0158】
B8.前記アクティブな参照インデックスは、参照ピクチャリスト1の参照インデックスに対応する、解決策B5またはB6に記載の方法。
【0159】
B9.規則に従って映像と映像のビットストリームとの変換を行うことを含み、この規則は、シーケンスパラメータセットを参照して、ピクチャに含まれるサブピクチャの数を示す第1の構文要素の前の位置に設定されたシーケンスパラメータにフラグが含まれていることを規定し、このフラグの特定の値が、このピクチャは正確に1つのスライスを含むことを示す、映像処理方法。
【0160】
B10.前記フラグはsps_one_slice_per_picture_flagであり、第1の構文要素はsps_num_subpics_minus1である、解決策B9に記載の方法。
【0161】
B11.前記フォーマット規則は、前記第1の構文要素または第2の構文要素を、前記フラグに含めることに起因して前記シーケンスパラメータセットから除外することをさらに規定する、解決策B9またはB10に記載の方法。
【0162】
B12.前記フォーマット規則は、前記第1の構文要素または第2の構文要素が、前記フラグを含めることに起因して特定の値を有すると推測されることをさらに規定する、解決策B9またはB10に記載の方法。
【0163】
B13.前記第2の構文要素は、sps_independent_subpics_flagである、解決策B11またはB12に記載の方法。
【0164】
B14.前記第2の構文要素は、picture_header_in_slice_header_flagである、解決策B12に記載の方法。
【0165】
B15.規則に従って映像と映像のビットストリームとの変換を行うことを含み、この規則は、ピクチャパラメータセットを参照して、ピクチャに含まれるサブピクチャの数を示す第1の構文要素の前の位置に設定されたピクチャパラメータにフラグが含まれていることを規定し、このフラグの特定の値が、このピクチャが正確に1つのスライスを含むことを示す、映像処理方法。
【0166】
B16.前記フラグは、pps_one_slice_per_picture_flagであり、第1の構文要素は、pps_num_subpics_minus1に等しい、解決策B15に記載の方法。
【0167】
B17.前記フォーマット規則は、前記第1の構文要素または第2の構文要素を、前記フラグを含めることに起因して前記ピクチャパラメータセットから除外することをさらに規定する、解決策B15またはB16に記載の方法。
【0168】
B18.前記フォーマット規則は、前記第1の構文要素または第2の構文要素が、前記フラグを含めることに起因して特定の値を有すると推測されることをさらに規定する、解決策B15またはB16に記載の方法。
【0169】
B19.第2の構文要素は、rect_slice_flag、num_slices_in_pic_minus1、loop_filter_across_slices_enabled_flag、またはsingle_slice_per_subpic_flagである、解決策B18の方法。
【0170】
B20.現在のピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームはフォーマット規則に準拠し、このフォーマット規則は、現在のピクチャに関連付けられたピクチャヘッダが、彩度スケーリング(LMCS)コーディングツールで輝度マッピングの3つのモード、(a)無効化、(b)すべてのスライスに対する使用、または(c)有効化、のうちの1つのモードのこのピクチャへの適用可能性を信号通知する構文要素を含むことを規定する、映像処理方法。
【0171】
B21.前記変換は、前記ビットストリームから前記映像をデコーディングすることを含む、解決策B1~B20のいずれかに記載の方法。
【0172】
B22.前記変換は、前記ビットストリームに前記映像をエンコーディングすることを含む、解決策B1~B20のいずれかに記載の方法。
【0173】
B23.映像を表すビットストリームをコンピュータ読み取り可能な記録媒体に記憶する方法であって、解決策B1~B20のいずれか1つ以上に記載の方法に従って、前記映像からビットストリームを生成し、前記ビットストリームを前記コンピュータ読み取り可能な記録媒体に記憶させることを含む、方法。
【0174】
B24.解決策B1~B23のいずれか1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像処理装置。
【0175】
B25.命令が記憶されたコンピュータ可読媒体であって、前記命令が実行されると、プロセッサに、解決策B1~B23に1つ以上記載の方法を実装させる、コンピュータ可読媒体。
【0176】
B26.解決策B1~B23のいずれか1つ以上により生成された前記ビットストリームを記憶するコンピュータ可読媒体。
【0177】
B27.解決策B1~B23のいずれか1つ以上に記載の方法を実装するように構成された、ビットストリームを記憶するための映像処理装置。
【0178】
次に、いくつかの実施形態において好適なさらに別の解決策を列挙する。
【0179】
P1.1つ以上のピクチャを備える複数の映像レイヤを含む映像とこの映像のコーディングされた表現との変換を行うことを含み、コーディングされた表現は、現在のピクチャに含まれる予測コード化されたスライス(Pスライス)のための第1の参照ピクチャリストまたは第2の参照ピクチャリストからの映像ピクチャの同一位置に配置されたピクチャの使用を定義するフォーマット規則に準拠する、映像処理方法。
【0180】
P2.前記フォーマット規則は、第1の参照ピクチャリストを使用し、かつ第2の参照ピクチャリストを条件付きで使用してPスライスをコーディングすることをさらに規定する、解決策P1に記載の方法。
【0181】
P3.1つ以上のピクチャを備える複数の映像レイヤを含む映像とこの映像のコーディングされた表現との変換を行うことを含み、コーディングされた表現は、デコードされたピクチャバッファにおける参照ピクチャは、現在のピクチャと同じ空間的解像度およびスケーリングウィンドウオフセットを有しないことに起因して、1つのレイヤの現在のピクチャに対する時間的動きベクトル予測ツールの使用を無効化するフラグが、コーディングされた表現に含まれることを規定するフォーマット規則に準拠する、映像処理方法。
【0182】
P4.1つ以上のピクチャを備える複数の映像レイヤを含む映像とこの映像のコーディングされた表現との変換を行うことを含み、コーディングされた表現は、インデックスが、現在のピクチャに適用可能なアクティブな参照インデックスの数の値よりも小さい必要があるように、現在のピクチャのピクチャヘッダにおけるインデックスに対する制約を規定するフォーマット規則に準拠する、映像処理方法。
【0183】
P5.1つ以上のピクチャを備える複数の映像レイヤを含む映像と前記映像のコーディングされた表現との変換を行うことを含み、前記コーディングされた表現は、シーケンスパラメータセットにフラグを含めることを規定するフォーマット規則に準拠し、フラグは、参照ピクチャに含まれるサブピクチャの数を示すフィールドの前の位置に含まれ、フラグの特定の値が、参照ピクチャが正確に1つのスライスを含むことを示す、映像処理方法。
【0184】
P6.前記フォーマット規則は、前記フラグを含めることに起因して、前記シーケンスパラメータセットから前記フィールドを削除することをさらに規定する、解決策P5に記載の方法。
【0185】
P7.前記フォーマット規則は、前記フラグを含めることに起因して、前記フィールドにおける特定の値を前記シーケンスパラメータセットから信号通知することをさらに規定する、解決策P5に記載の方法。
【0186】
P8.1つ以上のピクチャを含む複数の映像レイヤを含む映像と前記映像のコーディングされた表現との変換を行うことを含み、前記コーディングされた表現は、ピクチャパラメータセットにフラグを含めることを規定するフォーマット規則に準拠し、フラグは、参照ピクチャに含まれるサブピクチャの数を示すフィールドの前の位置に含まれ、フラグの特定の値が、参照ピクチャが正確に1つのスライスを含むことを示す、映像処理方法。
【0187】
P9.前記フォーマット規則は、前記フラグを含めることに起因して、前記ピクチャパラメータセットから前記フィールドを削除することをさらに規定する、解決策P8に記載の方法。
【0188】
P10.前記フォーマット規則は、前記フラグを含めることに起因して、前記フィールドにおける特定の値を前記ピクチャパラメータセットから信号通知することをさらに規定する、解決策P8記載の方法。
【0189】
P11.1つ以上のピクチャを含む複数の映像レイヤを含む映像と前記映像のコーディングされた表現との変換を行うことを含む映像処理方法であって、コーディングされた表現は、ピクチャのピクチャヘッダに1つの構文要素を含めることを規定するフォーマット規則に準拠し、この構文要素は、彩度スケーリング(LMCS)コーディングツールを用いた輝度マッピングの3つのモード、(a)無効化、(b)すべてのスライスに対する使用、または(c)有効化、のうちの1つのモードのこのピクチャへの適用可能性を信号通知する構文要素を含むことを規定する、映像処理方法。
【0190】
P12.変換は、映像をコーディングされた表現にエンコーディングすることを含む、P1~P11のいずれかに記載の方法。
【0191】
P13.変換は、映像の画素値を生成するためにコーディングされた表現をデコーディングすることを含む、P1~P11のいずれかに記載の方法。
【0192】
P14.解決策P1~P13の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像デコーディング装置。
【0193】
P15.解決策P1~P13の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像エンコーディング装置。
【0194】
P16.コンピュータコードが記憶されたコンピュータプログラム製品であって、コードは、プロセッサにより実行されると、プロセッサに、解決策P1~P13のいずれかに記載の方法を実装させるコンピュータプログラム製品。
【0195】
P17.本明細書に記載の方法、装置またはシステム。
【0196】
本明細書に記載された開示された、およびその他の解決策、実施例、実施形態、モジュール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1つ以上の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1または複数のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上にエンコードされたコンピュータプログラム命令の1または複数のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1または複数の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサ、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1または複数の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報を符号化するために生成される。
【0197】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1または複数のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1または複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。コンピュータプログラムを、1つのサイトに位置する1つのコンピュータ、または複数のサイトに分散され通信ネットワークによって相互接続される複数のコンピュータで実行させるように展開することも可能である。
【0198】
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を実行するための1または複数のコンピュータプログラムを実行する1または複数のプログラマブルプロセッサによって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
【0199】
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用および専用マイクロプロセッサの両方、並びに任意の種類のデジタルコンピュータの任意の1または複数のプロセッサを含む。一般的に、プロセッサは、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1または複数のメモリデバイスとである。一般的に、コンピュータは、データを記憶するための1または複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。プロセッサおよびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
【0200】
本特許明細書は多くの特徴を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1または複数の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
【0201】
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている例における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
【0202】
いくつかの実装形態および例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。