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

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

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

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-01
(45)【発行日】2024-07-09
(54)【発明の名称】サブレイヤ数制限
(51)【国際特許分類】
   H04N 19/70 20140101AFI20240702BHJP
   H04N 19/30 20140101ALI20240702BHJP
【FI】
H04N19/70
H04N19/30
【請求項の数】 18
(21)【出願番号】P 2022570210
(86)(22)【出願日】2021-05-21
(65)【公表番号】
(43)【公表日】2023-06-23
(86)【国際出願番号】 CN2021095124
(87)【国際公開番号】W WO2021233417
(87)【国際公開日】2021-11-25
【審査請求日】2023-01-16
(31)【優先権主張番号】PCT/CN2020/091758
(32)【優先日】2020-05-22
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】520476341
【氏名又は名称】北京字節跳動網絡技術有限公司
【氏名又は名称原語表記】Beijing Bytedance Network Technology Co., Ltd.
【住所又は居所原語表記】Room B-0035, 2/F, No.3 Building, No.30, Shixing Road, Shijingshan District Beijing 100041 China
(73)【特許権者】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】ワン イェクイ
(72)【発明者】
【氏名】ドン ジピン
【審査官】岩井 健二
(56)【参考文献】
【文献】国際公開第2021/235412(WO,A1)
【文献】国際公開第2021/195514(WO,A1)
【文献】Byeongdoo Choi, Stephan Wenger, and Shan Liu,AHG8/AHG9: On signaling max number of sublayers,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-R0125,18th Meeting: by teleconference,2020年04月,pp.1-2
【文献】Biao Wang, et al.,Semantic bug fixes for syntax elements in VPS and SPS,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-R0158-v1,18th Meeting: by teleconference,2020年04月,pp.1-3
【文献】Dongcheol Kim, et al.,AHG9: On vps_max_sublayers_minus1,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-R0199-v1,18th Meeting: by teleconference,2020年04月,pp.1-3
【文献】Jiancong Luo, Jie Chen, and Yan Ye,AHG9: SPS sublayer syntax cleanup,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 1,JVET-R0222,18th Meeting: by teleconference,2020年04月,pp.1-3
【文献】Ye-Kui Wang, Li Zhang, Zhipin Deng, and Kai Zhang1,AHG9/AHG8/AHG12: On parameter sets and picture header,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11,JVET-S0049-v1,19th Meeting: by teleconference,2020年05月,pp.1-6
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 - 19/98
(57)【特許請求の範囲】
【請求項1】
第1の規則に従って、映像と、前記映像のビットストリームとの間で変換を行うこと、を含む映像処理方法であって、
前記第1の規則は、映像パラメータセットの識別子を示すシーケンスパラメータセット(SPS)の第1のフィールドの値が0に等しいことに呼応して、前記映像パラメータセットによって規定されるレイヤで許容されるサブレイヤの第1の最大数を示す前記映像パラメータセットの第2のフィールドが、前記SPSの第3のフィールドに等しいと解釈されることを規定し、前記第3のフィールドは、前記SPSを参照する各コーディングされたレイヤ映像シーケンスで許容されるサブレイヤの第2の最大数を示す、
映像処理方法。
【請求項2】
前記第1の規則は、前記第1のフィールドの前記値が0に等しいことに呼応して、前記第3のフィールドの前記値が0~6の範囲内にあることをさらに規定する、
請求項1に記載の方法。
【請求項3】
前記第1のフィールドの前記値が0より大きい場合、前記シーケンスパラメータセットは、映像パラメータセットレベルにおける前記映像パラメータセットの識別子を参照する、
請求項1または2に記載の方法。
【請求項4】
前記第1の規則は、前記第1のフィールドの前記値が0より大きいことに呼応して、前記第3のフィールドの前記値が、0~前記第2のフィールドの値までの範囲内にあることをさらに規定する、
請求項1に記載の方法。
【請求項5】
前記第2のフィールドの前記値は、前記第1の最大数から1を減算したものに等しい、
請求項1~4のいずれか1項に記載の方法。
【請求項6】
前記第3のフィールドの前記値は、前記第2の最大数から1を減算したものに等しい、
請求項1~5のいずれか1項に記載の方法。
【請求項7】
前記変換は、第2の規則に従って行なわれ、
前記第2の規則は、前記第1のフィールドの前記値が0に等しいことに呼応して、前記映像パラメータセットによって規定される出力レイヤセットの総数、および、第1の出力レイヤセットにおけるレイヤ数が1に等しいことを規定する、
請求項1~6のいずれか1項に記載の方法。
【請求項8】
前記第2の規則は、前記映像パラメータセットのレイヤ識別子を、コーディングされた映像シーケンスにおけるレイヤのNAL(ネットワーク抽象化レイヤ)ユニットヘッダ識別子(nuh_layer_id)に等しく設定することをさらに規定する、
請求項7に記載の方法。
【請求項9】
前記変換は、第3の規則に従って行なわれ、
前記第3の規則は、レイヤ内のピクチャが、対応するピクチャに対してピクチャ分割が有効化されているかどうかを示す構文要素の異なる値を有するピクチャパラメータセットを参照することを許可されることを規定する、
請求項1~8のいずれか1項に記載の方法。
【請求項10】
第1の値に等しい前記構文要素は、前記ピクチャパラメータセットを参照する各ピクチャに対してピクチャ分割が適用されないことを規定し、第2の値に等しい前記構文要素は、対応するピクチャパラメータセットを参照する各ピクチャを2つ以上のタイル又はスライスに分割することを許されることを規定する、
請求項9に記載の方法。
【請求項11】
前記変換は、第4の規則に従って行なわれ、
前記第4の規則は、ピクチャのタイルにわたるループフィルタリングが有効化されているかどうかを示す構文要素が、前記ピクチャによって参照されるピクチャパラメータセットに存在しないことに呼応し、前記構文要素は、特定の値を有すると推論されることを規定する、
請求項1~10のいずれか1項に記載の方法。
【請求項12】
前記特定の値が0である、
請求項11に記載の方法。
【請求項13】
前記構文要素が0に等しい場合、前記ピクチャパラメータセットを参照するピクチャについて、前記ピクチャの前記タイルにわたるインループフィルタリング動作が無効化されることを規定する、
請求項12に記載の方法。
【請求項14】
前記変換は、前記映像を前記ビットストリームに符号化することを含む、
請求項1~13のいずれか1項に記載の方法。
【請求項15】
前記変換は、前記映像を前記ビットストリームから復号することを含む、
請求項1~13のいずれか1項に記載の方法。
【請求項16】
処理装置と、命令を備える非一時的メモリとを含む映像データを処理するための装置であって、前記命令は、前記処理装置によって実行され、前記処理装置に、
第1の規則に従って、映像と、前記映像のビットストリームとの間で変換を行なわせ、
前記第1の規則は、映像パラメータセットの識別子を示すシーケンスパラメータセット(SPS)の第1のフィールドの値が0に等しいことに呼応して、前記映像パラメータセットによって規定されるレイヤで許容されるサブレイヤの第1の最大数を示す前記映像パラメータセットの第2のフィールドが前記SPSの第3のフィールドに等しいと解釈されることを規定し、前記第3のフィールドは、前記SPSを参照する各コーディングされたレイヤ映像シーケンスで許容されるサブレイヤの第2の最大数を示す、
映像データを処理するための装置。
【請求項17】
命令を記憶している非一時的なコンピュータ可読記憶媒体であって、前記命令は、処理装置に、
第1の規則に従って、映像と、前記映像のビットストリームとの間で変換を行なわせ、
前記第1の規則は、映像パラメータセットの識別子を示すシーケンスパラメータセット(SPS)の第1のフィールドの値が0に等しいことに呼応して、前記映像パラメータセットによって規定されるレイヤで許容されるサブレイヤの第1の最大数を示す前記映像パラメータセットの第2のフィールドが前記SPSの第3のフィールドに等しいと解釈されることを規定し、前記第3のフィールドは、前記SPSを参照する各コーディングされたレイヤ映像シーケンスで許容されるサブレイヤの第2の最大数を示す、
非一時的なコンピュータ可読記憶媒体。
【請求項18】
像のビットストリームを記憶する方法であって、
前記方法は、第1の規則に従って、前記映像のビットストリームを生成し、
非一時的なコンピュータ可読記録媒体に前記ビットストリームを記憶することを含み、
前記第1の規則は、映像パラメータセットの識別子を示すシーケンスパラメータセット(SPS)の第1のフィールドの値が0に等しいことに呼応して、前記映像パラメータセットによって規定されるレイヤで許容されるサブレイヤの第1の最大数を示す前記映像パラメータセットの第2のフィールドが前記SPSの第3のフィールドに等しいと解釈されることを規定し、前記第3のフィールドは、前記SPSを参照する各コーディングされたレイヤ映像シーケンスで許容されるサブレイヤの第2の最大数を示す、
方法
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
願は、2020年5月22日出願の国際特許出願第PCT/CN2020/091758号の優先権および利益を主張する、2021年5月21日出願の国際特許出願第PCT/CN2021/095124号に基づく。前述の特許出願はすべて、参照によりその全体が本明細書に組み込まれる。
【0002】
この特許明細書は、画像および映像コーディングおよび復号に関する。
【背景技術】
【0003】
デジタル映像は、インターネットおよび他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信および表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
【発明の概要】
【0004】
本明細書は、映像符号化または復号を行うために、映像エンコーダおよびデコーダによって使用され得る技術を開示する。
【0005】
1つの例示的な態様において、映像処理方法が開示される。この方法は、1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、このビットストリームは、映像レイヤによって参照される映像パラメータセットの識別子を示す構文要素と、このビットストリームのフィールドとの間の関係を規定するフォーマット規則に準拠する。
【0006】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、1つ以上の映像ピクチャを備える1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、映像レイヤ内のピクチャが、対応するピクチャに対してピクチャ分割が有効にされているかどうかを示す構文要素の異なる値を有するピクチャパラメータセットを参照することを許可されることを規定する。
【0007】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、1つ以上のタイルを備える1つ以上の映像ピクチャを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、ピクチャのタイルにわたるループフィルタリングが有効にされているかどうかを示す構文要素が、ピクチャが参照するピクチャパラメータセットに存在しないことに呼応し、この構文要素が特定の値を有すると推論されることを規定する。
【0008】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上のタイルおよび/または1つ以上のスライスを含む1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、このビットストリームは、i)ピクチャパラメータセットを参照するピクチャごとの矩形スライスモードの使用を示し、第1の値を有する第1の構文要素と、ピクチャパラメータセットを参照する各ピクチャにおける矩形スライスの数を示す第2の構文要素とに関連付けられた第1の条件、または、ii)各ピクチャの単一のスライスのみを示す第3の構文要素に関連付けられた第2の条件が満たされることに呼応して、
ピクチャパラメータセットにおける1つ以上のフラグの値を規定するフォーマット規則に準拠する。
【0009】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上の映像ピクチャを備える1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、このビットストリームは、一般レイヤインデックスを有する映像レイヤにおけるレイヤ間予測の使用を示す第1の構文要素が、ピクチャにおけるインターコーディングされたサブパーティションの適用可能性を示す第2の構文要素の値を制御することを規定するフォーマット規則に準拠する。
【0010】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、規則に従って、1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、この規則は、映像レイヤによって参照されるシーケンスパラメータセット(SPS)の第1のフィールドの値に呼応して、ビットストリームにおいて許容されるサブレイヤの最大数を示すSPSによって参照される映像パラメータセットの第2のフィールドが、SPSの第3のフィールドに等しいと解釈されることを規定し、第3フィールドは映像レイヤにおいて許容されるサブレイヤの最大数を示す。
【0011】
さらに別の例示的な態様において、映像エンコーダ装置が開示される。この映像エンコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0012】
さらに別の例示的な態様において、映像デコーダ装置が開示される。この映像デコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0013】
さらに別の例示的な態様において、コードが記憶されたコンピュータ可読媒体が開示される。このコードは、本明細書に記載の方法の1つをプロセッサが実行可能なコードの形式で実施する。
【0014】
これらのおよび他の特徴は、本文書全体にわたって説明される。
【図面の簡単な説明】
【0015】
図1】本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。
図2】映像処理に使用されるハードウェアプラットフォームの例を示すブロック図である。
図3】映像処理方法の一例を示すフローチャートである。
図4】例示的な映像コーディングするシステムを示すブロック図である。
図5】本開示のいくつかの実施形態によるエンコーダを示すブロック図である。
図6】本開示のいくつかの実施形態によるデコーダを示すブロック図である。
図7】12個のタイルと3つのラスタスキャンスライスに分割された、18×12個の輝度CTUを有する画像を示す。
図8】24個のタイルと9個の矩形スライスに分割された、18×12個の輝度CTUを有する画像を示す。
図9】4つのタイルと4つの矩形スライスに区分された画像を示す。
図10】15個のタイル、24個のスライス、および24個のサブピクチャに分割されたピクチャを示す。
図11】典型的なサブピクチャに基づくビューポートに依存する360°映像コーディング方式を示す。
図12】サブピクチャおよび空間的スケーラビリティに基づく改良されたビューポート依存型360°映像コーディング方式を示す。
図13A】開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
図13B】開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
図13C】開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
図13D】開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
図13E】開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
図14】開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
【発明を実施するための形態】
【0016】
本明細書では、理解を容易にするために章の見出しを使用しており、その技術および各章に記載された実施形態の適用可能性をその章のみに限定するものではない。さらに、H.266という用語は、ある説明において、理解を容易にするためだけに用いられ、開示される技術の範囲を限定するために用いられたものではない。このように、本明細書で説明される技術は、他の映像コーデックプロトコルおよび設計にも適用可能である。
【0017】
1. 導入
本願は、映像処理技術に関する。具体的には、映像パラメータセット(VPS)、ピクチャパラメータセット(PPS)、およびピクチャヘッダ(PH)の設計について、いくつかの改良がなされている。この考えは、個々にまたは様々な組み合わせで、マルチレイヤ映像コーディング、例えば、現在開発されているVVC(Versatile Video Coding)をサポートする任意の映像コーディング規約または非標準映像コーデックに適用されてもよい。
【0018】
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(コーディングされた映像シーケンス)
DCI Decoding Capability Information(復号能力情報)
DPB Decoded Picture Buffer(復号ピクチャバッファ)
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(瞬時復号更新)
ILP Inter-Layer Prediction(インタレイヤ予測)
ILRP Inter-Layer Reference Picture(インタレイヤ参照ピクチャ)
JEM Joint Exploration Model(共同探索モデル)
LTRP Long-Term Reference Picture(長期参照ピクチャ)
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(ピクチャユニット)
RAP Random Access Point(ランダムアクセスポイント)
RBSP Raw Byte Sequence Payload(生バイトシーケンスペイロード)
SEI Supplemental Enhancement Information(補足強化情報)
SPS Sequence Parameter Set(シーケンスパラメータセット)
STRP Short-Term Reference Picture(短期参照ピクチャ)
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(汎用映像コーディング)
【0019】
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)を目指している。
【0020】
3.1 HEVCにおけるピクチャ分割スキーム
HEVCには、正規のスライス、依存性のあるスライス、タイル、WPP(Wavefront Parallel Processing)という4つの異なる画像分割スキームがあり、これらを適用することで、最大転送ユニット(MTU)サイズのマッチング、並列処理、エンドツーエンドの遅延の低減が可能になる。
【0021】
正規のスライスは、H.264/AVCと同様である。各正規のスライスは、それ自体のNALユニットにカプセル化され、スライス境界にわたるインピクチャ予測(イントラサンプル予測、動き情報予測、コーディングモード予測)およびエントロピーコーディング依存性は無効化される。このように、1つの正規のライスを、同じピクチャ内の他の正規のスライスとは独立して再構成することができる(しかし、ループフィルタリング動作のために依然として相互依存性がある場合がある)。
【0022】
正規のスライスは、並列化に使用できる唯一のツールであり、H.264/AVCでもほぼ同じ形式で使用できる。正規のスライスに基づく並列化は、プロセッサ間通信またはコア間通信をあまり必要としない(予測コーディングされたピクチャを復号するとき、動き補償のためのプロセッサ間またはコア間データ共有を除いて、通常、インピクチャ予測のためにプロセッサ間またはコア間データ共有よりもはるかに重い)。しかしながら、同じ理由で、正規のスライスを使用すると、スライスヘッダのビットコストおよびスライス境界にわたる予測が欠如していることに起因して、コーディングのオーバーヘッドが大きくなる可能性がある。さらに、レギュラースライスは(後述の他のツールとは対照的に)、レギュラースライスのインピクチャの独立性および各レギュラースライスがそれ自体のNALユニットにカプセル化されることに起因して、MTUサイズ要件に適応するようにビットストリームを分割するための鍵となるメカニズムとしても機能する。多くの場合、並列化の目標およびMTUサイズマッチングの目標は、画像におけるスライスレイアウトに矛盾する要求を課す。このような状況を実現したことにより、以下のような並列化ツールが開発された。
【0023】
従属スライスは、ショートスライスヘッダを有し、ピクチャ内予測を一切中断することなく、ツリーブロック境界でビットストリームを区分することを可能にする。基本的に、従属スライスは、正規のスライスを複数のNALユニットに断片化し、正規のスライス全体のエンコーディングが完了する前に正規のスライスの一部を送出することを可能にすることによって、エンドツーエンド遅延を低減する。
【0024】
WPPにおいて、ピクチャは、単一行のコーディングツリーブロック(CTB)に分割される。エントロピー復号および予測は、他の分割におけるCTBからのデータを使用することを許可される。CTB行の並列復号によって並列処理が可能であり、1つのCTB行の復号の開始が2つのCTBだけ遅延され、それによって、対象のCTBが復号される前に、対象のCTBの上および右のCTBに関するデータが確実に利用可能になる。この互い違いのスタート(グラフで表される場合、波面のように見える)を使用することで、ピクチャがCTB行を含む数までのプロセッサ/コアを用いて並列化することが可能である。1つのインピクチャの近傍のツリーブロック行間のインピクチャ予測が許可されるので、インピクチャ予測を可能にするために必要なプロセッサ間/コア間通信は十分となり得る。WPP分割は、適用されない場合と比較して、追加のNALユニットの生成をもたらさず、従って、WPPは、MTUサイズマッチングのためのツールではない。しかし、MTUサイズのマッチングが必要な場合、一定のコーディングするオーバーヘッドを伴って、WPPで正規のスライスを使用することができる。
【0025】
タイルは、ピクチャをタイルの列および行に分割する水平および垂直境界を規定する。タイルの列は、ピクチャの上から下へと延びている。同様に、タイル行は、ピクチャの左から右に延びる。ピクチャにおけるタイルの数は、単にタイル列の数にタイル行の数を乗算することで得ることができる。
【0026】
CTBのスキャン順序は、タイル内でローカルになるように(タイルのCTBラスタスキャンの順に)変更され、その後、ピクチャのタイルラスタスキャンの順で、次のタイルの左上のCTBを復号する。正規のスライスと同様に、タイルは、インピクチャ予測依存性およびエントロピー復号依存性を損なう。しかしながら、これらは、個々のNALユニット(この点でWPPと同じ)に含まれる必要がなく、従って、タイルは、MTUサイズマッチングに使用できない。各タイルは、1つのプロセッサ/コアによって処理されてもよく、処理ユニット間のインピクチャ予測に必要なプロセッサ間/コア間通信では、近傍タイルの復号は、スライスが2つ以上のタイルにまたがっている場合、共有スライスヘッダの伝達と、再構築されたサンプルおよびメタデータのループフィルタリングに関連する共有とに限定される。1つのスライスに2つ以上のタイルまたはWPPセグメントが含まれる場合、該スライスにおける第1のもの以外の各タイルまたはWPPセグメントのエントリポイントバイトオフセットが、スライスヘッダにおいて信号通知される。
【0027】
説明を簡単にするために、HEVCにおいては、4つの異なるピクチャ分割方式の適用に関する制限が規定されている。所与のコーディングされた映像シーケンスは、HEVCに指定されたプロファイルのほとんどについて、タイルおよび波面の両方を含むことができない。各スライスおよびタイルについて、以下の条件のいずれかまたは両方を満たさなければならない。1)1つのスライスにおけるすべてのコーディングされたツリーブロックは、同じタイルに属し、2)1つのタイルにおけるすべてのコーディングされたツリーブロックは、同じスライスに属する。最後に、1つの波面セグメントはちょうど1つのCTB行を含み、WPPが使用されている時に、1つのスライスが1つのCTB行内で始まる場合、同じCTB行で終わらなければならない。
【0028】
最近のHEVCの修正は、JCT-VCの出力文書であるJCTVC-AC1005、J.ボイス、A.ラマスブラモニアン、R.スクピン、G.J.スリヴァン、A.トゥラピス、Y.-K.ワング(editors),”HEVC追加の捕捉強化情報(Draft4),”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メッセージを特定する。
【0029】
時間的MCTS SEIメッセージは、ビットストリーム中にMCTSが存在することを示し、MCTSに信号送信する。各MCTSにおいて、動きベクトルは、MCTS内部のフルサンプル位置と、補間のためにMCTS内部のフルサンプル位置のみを必要とするフラクショナルサンプル位置とを指すように制限され、かつ、MCTS外部のブロックから導出された時間動きベクトル予測のための動きベクトル候補の使用は許可されない。このように、各MCTSは、MCTSに含まれていないタイルが存在せず、独立して復号されてもよい。
【0030】
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を含む)が異なる値となる必要があるためである。
【0031】
3.2. VVCにおけるピクチャの分割
VVCにおいて、1つのピクチャは、1または複数のタイル行および1または複数のタイル列に分割される。1つのタイルは、1つのピクチャの1つの矩形領域を覆う1つのCTUのシーケンスである。1つのタイルにおけるCTUは、そのタイル内でラスタスキャン順にスキャンされる。
【0032】
1つのスライスは、1つのピクチャのタイル内において、整数個の完全なタイルまたは整数個の連続した完全なCTU行を含む。
【0033】
スライスの2つのモード、即ちラスタスキャンスライスモードおよび矩形スライスモードに対応している。ラスタスキャンスライスモードにおいて、1つのスライスは、1つのピクチャのタイルラスタスキャンにおける1つの完全なタイルのシーケンスを含む。矩形スライスモードにおいて、1つのスライスは、ピクチャの矩形領域を集合的に形成する複数の完全なタイル、またはピクチャの矩形領域を集合的に形成する1つのタイルの複数の連続した完全なCTU行のいずれかを含む。矩形スライス内のタイルを、そのスライスに対応する矩形領域内で、タイルラスタスキャンの順にスキャンする。
【0034】
1つのサブピクチャは、1つのピクチャの矩形領域を集合的に広がる1つ以上のスライスを含む。
【0035】
図7は、ピクチャのラスタスキャンスライス分割の例を示し、ピクチャは、12個のタイルと3個のラスタスキャンスライスとに分割される。
【0036】
図8は、ピクチャの矩形スライス分割の例を示し、ピクチャは、24個のタイル(6個のタイル列および4個のタイル行)と9個の矩形スライスとに分割される。
【0037】
図9は、タイルおよび矩形のスライスに分割されたピクチャの例を示し、このピクチャは、4つのタイル(2つのタイル列および2つのタイル行)と4つの矩形スライスとに分割される。
【0038】
図10は、1つのピクチャをサブピクチャで分割する例を示し、1つのピクチャは、18個のタイルに分割され、左側の12個が、4×4のCTUの1つのスライスをそれぞれ含み、右側の6個のタイルが、2×2のCTUの垂直方向に積み重ねられたスライスをそれぞれ含み、全体で24個のスライスおよび24個の異なる寸法のサブピクチャとなる(各スライスは、1つのサブピクチャ)。
【0039】
3.3 シーケンス内のピクチャ解像度の変更
AVCおよびHEVCにおいて、ピクチャの空間的解像度は、新しいSPSを使用する新しいシーケンスがIRAPピクチャで始まらない限り、変更することができない。VVCは、常にイントラコーディングされたIRAPピクチャを符号化せずに、ある位置のシーケンス内でピクチャの解像度を変更することを可能にする。この特徴は、参照ピクチャがデコードされている現在のピクチャと異なる解像度を有する場合、インター予測に使用される参照ピクチャをリサンプリングすることが必要であるため、参照ピクチャリサンプリング(RPR)と称する。
【0040】
スケーリング比は、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の範囲のスケーリング比を有する再サンプリングプロセスの特殊な場合である。水平および垂直スケーリング比は、ピクチャの幅および高さ、並びに参照ピクチャおよび現在のピクチャに対して規定された左、右、上および下のスケーリングオフセットに基づいて導出される。
【0041】
HEVCとは異なる、この特徴をサポートするためのVVC設計の他の態様は、i)SPSの代わりにPPSにおいてピクチャ解像度および対応する適合性ウィンドウを信号通知すること、SPSにおいて最大ピクチャ解像度を信号通知すること、ii)単レイヤビットストリームの場合、各ピクチャ記憶装置(1つの復号ピクチャを記憶するためのDPBにおける1つのスロット)は、最大ピクチャ解像度を有する復号ピクチャを記憶するために必要なバッファサイズを占めることを含む。
【0042】
3.4 全般および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つのビューの情報を利用して別のビューの情報をコーディング(例えば、符号化または復号化)することができる(例えば、動き推定、動きベクトル予測および/または他の冗長性)。
【0043】
SVCにおいて、エンコーダまたはデコーダで使用されるパラメータは、それらを利用することができるコーディングレベル(例えば、映像レベル、シーケンスレベル、ピクチャレベル、スライスレベル等)に基づいてパラメータセットにグループ分けされる。例えば、ビットストリームにおける異なるレイヤのコーディング映像シーケンスによって利用できるパラメータは、映像パラメータセット(VPS)に含まれてもよく、コーディング映像シーケンスにおける1つ以上のピクチャによって利用されるパラメータは、シーケンスパラメータセット(SPS)に含まれてもよい。同様に、1つのピクチャの1つ以上のスライスで利用されるパラメータは、ピクチャパラメータセット(PPS)に含まれてもよく、1つのスライスに固有の他のパラメータは、スライスヘッダに含まれてもよい。同様に、特定のレイヤが所与の時間にどのパラメータセットを使用しているかの指示は、様々なコーディングレベルで提供されてもよい。
【0044】
VVCにおけるRPR(Reference Picture Resampling)のサポートのおかげで、空間的スケーラビリティサポートに必要なアップサンプリングはRPRアップサンプリングフィルタを使用するだけでよいので、追加の信号処理レベルのコーディングツールを必要とせずに、複数のレイヤ、例えば、VVCにおけるSDおよびHD解像度の2つのレイヤを含むビットストリームをサポートするように設計することができる。それにもかかわらず、スケーラビリティサポートのためには、高レベルの構文変更(スケーラビリティをサポートしない場合と比較して)が必要である。スケーラビリティサポートは、VVCバージョン1に規定されている。AVCおよびHEVCの拡張を含む、任意の以前の映像コーディング規格におけるスケーラビリティサポートとは異なり、VVCのスケーラビリティの設計は、単層デコーダの設計にできるだけ適したものにされてきた。多層ビットストリームの復号能力は、ビットストリームに1つのレイヤしかなかったかの如く規定される。例えば、DPBサイズのような復号能力は、復号されるビットストリームのレイヤの数に依存しないようで規定される。基本的に、単層ビットストリームのために設計されたデコーダは、多層ビットストリームを復号することができるようにするために、多くの変更を必要としない。AVCおよびHEVCの多層拡張の設計と比較して、HLSの態様は、ある程度の柔軟性を犠牲にして大幅に簡略化されてきた。例えば、IRAP AUは、CVSに存在する各レイヤの画像を含むことが必要である。
【0045】
3.5 パラメータセット
AVC、HEVC、VVCはパラメータ集合を規定する。パラメータセットのタイプは、SPS、PPS、APS、VPS等である。SPS、PPSは、AVC、HEVC、VVCのすべてでサポートされている。VPSは、HEVCから導入されたものであり、HEVCおよびVVCの両方に含まれる。APSは、AVCまたはHEVCに含まれていなかったが、最近のVVC草案のテキストに含まれている。
【0046】
SPSは、シーケンスレベルのヘッダ情報を伝送するように設計され、PPSは、頻繁に変化しないピクチャレベルのヘッダ情報を伝送するように設計された。SPSおよびPPSを用いると、シーケンスまたはピクチャごとに頻繁に変化する情報を繰り返す必要がないので、この情報の冗長な信号通知を回避することができる。さらに、SPSおよびPPSを使用することは、重要なヘッダ情報の帯域外伝送を有効化し、それにより、冗長な伝送の必要性を回避するだけでなく、誤り耐性を改善する。
【0047】
VPSは、マルチレイヤのビットストリームのすべてのレイヤに共通であるシーケンスレベルのヘッダ情報を担持するために導入された。
【0048】
APSは、コーディングするためのかなりのビットを必要とし、複数のピクチャによって共有され、そして、シーケンスにおいて非常に多くの異なる変形例が存在し得る、そのようなピクチャレベルまたはスライスレベルの情報を担持するために導入された。
【0049】
4. 開示される技術的解決策によって解決される技術課題
最近のVVCテキスト(JVET-R2001-vA/v10)におけるVPS、PPS、PHの既存の設計は、以下の問題を有する。
【0050】
1) sps_video_parameter_set_idが0に等しい場合、レイヤは1つしかなく、VPSは参照されない。ただし、変数TotalNumOlss、NumLayersInOls[0]、および、LayerIdInOls[0][0]の値は使用されるが、定義されない。
【0051】
2) sps_video_parameter_set_idが0に等しい場合、vps_max_sublayers_minus1の値は6に等しいと推論される。しかしながら、その場合、sps_max_sublayers_minus1に等しいと推論する方が理にかなっており、これによりsps_video_parameter_set_idが0に等しい場合、vps_max_sublayers_minus1をより最適に使用可能となる。
【0052】
3) 最新のVVCテキストにおいて、pps_no_pic_partition_flagの値は、CLVS内のコーディングされたピクチャによって参照されるすべてのPPSについて同じであることが必要である。pps_no_pic_partition_flagが1に等しい場合、PPSを参照する各ピクチャは、タイル、スライス、および、サブピクチャをそれぞれ1つだけ有する。しかし、エンコーダは、CLVSのいくつかのピクチャに対してただ1つのタイル、または、スライスのみを有し、同じCLVSの他のピクチャにおいて複数のタイル、または、スライスを有することが許可されるべきである。それゆえ、この制約を取り除くのがより合理的であろう。
【0053】
4) 最近のVVCテキストにおいて、pps_loop_filter_across_tiles_enabled_flagの値は、存在しない場合、1に等しいと推論される。これは、sps_loop_filter_across_subpic_enabled_pic_flag[i]、および、pps_loop_filter_across_slices_enabled_flagの推論と比較して、奇妙である。pps_loop_filter_across_tiles_enabled_flagは、pps_no_pic_partition_flagが1に等しい、または、NumTilesInPicが1に等しい場合、存在しない。これらの2つの条件のいずれか一方の下で、ピクチャ毎に1つのタイルのみが存在するので、タイル境界はピクチャ境界であり、かつ、ピクチャ境界にわたるループフィルタリングはない。したがって、pps_loop_filter_across_tiles_enabled_flagの値は、存在しない場合、0に等しいと推論されることが、より合理的である。
【0054】
5) pps_rect_slice_flagが1に等しく、かつ、pps_num_slices_in_pic_minus1が0に等しい場合、PPSを参照する各ピクチャに1つのスライスのみが存在する。この場合、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_in_ph_flag、pps_wp_info_in_ph_flag、および、pps_qp_delta_info_in_ph_flagのいずれかが存在する場合、その値が0に等しいことを必要とすることは合理的であり、以下の利点がある。
a. pps_no_pic_partition_flagが1に等しい場合、値が0になる推論の成立に関して、より整合させる。
b. pps_rpl_info_in_ph_flag、または、pps_wp_info_in_ph_flagの場合、より最適な構文にする。
c. pps_alf_info_in_ph_flagの場合、1つのサブピクチャをそれぞれ含む個々のVVCビットストリームへの符号化前に分割された異なるサブピクチャを独立並列符号化して、その後、各ピクチャが複数のサブピクチャを含む1つのVVCビットストリームにマージする利用事例に、ALFの使用を可能とする。そのような利用事例の場合、そのような個々のビットストリームは、ピクチャ毎に1つのスライス/サブピクチャを含むが、PHはSH内に存在しないので、マージする時に、ピクチャごとのPHおよびSHを書き換える必要がない。
【0055】
6) ピクチャについてvps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が0に等しい場合、そのピクチャを含むレイヤは、独立レイヤではなく、少なくとも1つの参照レイヤを有している。このようなピクチャの場合、それがIRAPピクチャであっても、レイヤ間予測はもちろん許可されるべきである。したがって、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が0に等しい場合、PH構文要素ph_inter_slice_allowed_flagの値は1に等しいことを必要とするのは合理的である。
【0056】
5. 技術的解決策および実施形態の例
上記課題を解決するために、以下に示す方法が開示されている。これらの項目は、一般的な概念を説明するための例であり、狭義に解釈されるべきではない。さらに、これらの項目は、個々に適用されてもよく、または任意の方法で組み合わされてもよい。
【0057】
1) 問題1を解決するために、sps_video_parameter_set_idが0に等しい場合、TotalNumOlss、および、NumLayersInOls[0]の値をともに1に等しく設定し、LayerIdInOls[0][0]の値をCVSにおけるレイヤのnuh_layer_idに等しく設定する。
【0058】
2) 問題2を解決するために、sps_video_parameter_set_idが0に等しい場合、vps_max_sublayers_minus1の値はsps_max_sublayers_minus1に等しいと推論する。
a. あるいは、さらに、sps_max_sublayers_minus1の値は、0~6の範囲内にあり、かつ、vps_max_sublayers_minus1より大きくならないことを規定する。
【0059】
3) 課題3を解決するために、1つのCLVS内のコーディングされたピクチャが参照する異なるPPSについて、pps_no_pic_partition_flagの値が異なるものとなることを許容する。
【0060】
4) 問題4を解決するために、pps_loop_filter_across_tiles_enabled_flagの値は、存在しない場合、0に等しいと推論する。
【0061】
5) 問題5を解決するために、pps_rect_slice_flagが1に等しく、かつ、pps_num_slices_in_pic_minus1が0に等しい場合、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_in_ph_flag、pps_wp_info_in_ph_flag、および、pps_qp_delta_info_in_ph_flagは、全て0に等しいことを必要とする。
a. あるいは、pps_rect_slice_flagが1に等しく、かつ、pps_num_slices_in_pic_minus1が0に等しい場合、または、one_slice_per_pic_constraint_flagが1に等しい場合、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_in_ph_flag、pps_wp_info_in_ph_flag、および、pps_qp_delta_info_in_ph_flagは全て0に等しいことを必要とする。
b. あるいは、one_slice_per_pic_constraint_flagが1に等しい場合は、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_in_ph_flag、pps_wp_info_in_ph_flag、およびpps_qp_delta_info_in_ph_flagは全て0に等しいことを必要とする。
c. あるいは、pps_rect_slice_flagが1に等しく、かつ、pps_num_slices_in_pic_minus1が0に等しい場合、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_in_ph_flag、pps_wp_info_in_ph_flag、および、pps_qp_delta_info_in_ph_flagは全てスキップされ、0に等しいと推論される。
d. あるいは、pps_rect_slice_flagが1に等しく、かつ、pps_num_slices_in_pic_minus1が0に等しい場合、または、one_slice_per_pic_constraint_flagが1に等しい場合、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_in_ph_flag、pps_wp_info_in_ph_flag、および、pps_qp_delta_info_in_ph_flagは全てスキップされ、0に等しいと推論される。
e. あるいは、one_slice_per_pic_constraint_flagが1に等しい場合は、6つのPPSフラグpps_alf_info_in_ph_flag、pps_rpl_info_in_ph_flag、pps_dbf_info_in_ph_flag、pps_sao_info_ph_flag、pps_wp_info_in_ph_flag、および、pps_qp_delta_info_in_ph_flagは全てスキップされ、0に等しいと推論される。
【0062】
6) 問題6を解決するために、if(vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]])についてph_inter_slice_allowed_flagを条件付けし、存在しない場合、値が1と推論する。
a. あるいは、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が0に等しい場合、ph_inter_slice_allowed_flagの値を、0に等しいものと制約する。
【0063】
6. 実施形態
【0064】
【化1】
【0065】
6.1. 第1の実施形態
本実施形態は1、2、2a、3、4、5および6a項に対するものである。
7.4.3.3 シーケンスパラメータセットRBSP意味論
...
【0066】
【化2】
【0067】
【化3】
【0068】
vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しい場合、特別のnuh_layer_idの値、nuhLayerIdを有するCLVSが参照するSPSのnuh_layer_idは、nuhLayerIdと等しいものとする。
sps_video_parameter_set_idの値は、1つのCVS内のCLVSによって参照されるすべてのSPSにおいて同じであるものとする。
【0069】
【化4】
【0070】
7.4.3.4 ピクチャーパラメータセットRBSP意味論
【0071】
【化5】
【0072】
[[1つのCLVS内のコーディングされたピクチャによって参照されるすべてのPPSについて、pps_no_pic_partition_flagの値が同じであるものとすることが、ビットストリーム適合性の要件である。]]
sps_num_subpics_minus1が0より大きい、または、pps_mixed_nalu_types_in_pic_flagが1に等しい場合、pps_no_pic_partition_flagの値は、0に等しいものとする。
【0073】
【化6】
【0074】
【化7】
【0075】
【化8】
【0076】
【化9】
【0077】
【化10】
【0078】
【化11】
【0079】
【化12】
【0080】
7.4.3.7 ピクチャヘッダ構造意味論
【0081】
【化13】
【0082】
ph_gdr_or_irap_pic_flagが1に等しく、かつ、ph_gdr_pic_flagが0(すなわち、ピクチャがIRAPピクチャ)に等しく、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しい場合、ph_inter_slice_allowed_flagの値は、0に等しいものとする。
【0083】
【化14】
【0084】
注2-PH NALユニットを変更することなく、サブピクチャに基づくビットストリームのマージを実行するように意図されたビットストリームの場合、エンコーダは、ph_inter_slice_allowed_flagおよびph_intra_slice_allowed_flagの両方の値を1に等しく設定することが予想される。
...
【0085】
図1は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1900を示すブロック図である。様々な実装形態は、システム1900のモジュールの一部または全部を含んでもよい。システム1900は、映像コンテンツを受信するための入力ユニット1902を含んでもよい。映像コンテンツは、未加工または非圧縮フォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてもよく、または圧縮または符号化フォーマットで受信されてもよい。入力ユニット1902は、ネットワークインタフェース、周辺バスインタフェース、または記憶インタフェースを表してもよい。ネットワークインタフェースの例は、イーサネット(登録商標)、PON(Passive Optical Network)等の有線インタフェース、およびWi-Fi(登録商標)またはセルラーインタフェース等の無線インタフェースを含む。
【0086】
システム1900は、本明細書に記載される様々なコーディングまたはエンコーディング方法を実装することができるコーディングコンポーネント1904を含んでもよい。コーディングコンポーネント1904は、入力1902からの映像の平均ビットレートをコーディングコンポーネント1904の出力に低減し、映像のコーディング表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像トランスコーディング技術と呼ばれることがある。コーディングコンポーネント1904の出力は、コンポーネント1906によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力1902において受信された、記憶されたまたは通信された映像のビットストリーム(またはコーディングされた)表現は、コンポーネント1908によって使用されて、表示インタフェース1910に送信される画素値または表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像展開と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作またはツールと呼ぶが、コーディングツールまたは動作は、エンコーダおよびそれに対応する、コーディングの結果を逆にするデコーデイングツールまたは動作が、デコーダによって行われることが理解されよう。
【0087】
周辺バスインタフェースまたは表示インタフェースの例は、ユニバーサルシリアルバス(USB)またはハイビジョンマルチメディアインタフェース(HDMI(登録商標))またはディスプレイポート等を含んでもよい。ストレージインタフェースの例は、SATA(Serial Advanced Technology Attachment)、PCI、IDEインタフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、またはデジタルデータ処理および/または映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
【0088】
図2は、映像処理装置3600のブロック図である。装置3600は、本明細書に記載の方法の1つ以上を実装するために使用されてもよい。装置3600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等に実施されてもよい。装置3600は、1つ以上の処理装置3602と、1つ以上のメモリ3604と、映像処理ハードウェア3606と、を含んでもよい。1つまたは複数の処理装置3602は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数可)3604は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア3606は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。
【0089】
図4は、本開示の技術を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
【0090】
図4に示すように、映像コーディングシステム100は、送信元デバイス110と、送信先デバイス120と、を備えてもよい。送信元デバイス110は、符号化映像データを生成するものであり、映像符号化機器とも称され得る。送信先デバイス120は、送信元デバイス110によって生成された、符号化された映像データを復号してよく、映像復号デバイスと呼ばれ得る。
【0091】
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インタフェース116と、を備えてもよい。
【0092】
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインタフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1または複数のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データを符号化し、ビットストリームを生成する。ビットストリームは、映像データのコーディング表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディング表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインタフェース116は、変復調器(モデム)および/または送信機を含んでもよい。符号化された映像データは、ネットワーク130aを介して、I/Oインタフェース116を介して送信先デバイス120に直接送信されてよい。符号化された映像データは、送信先デバイス120がアクセスするために、記録媒体/サーバ130bに記憶してもよい。
【0093】
送信先デバイス120は、I/Oインタフェース126、映像デコーダ124、および表示デバイス122を含んでもよい。
【0094】
I/Oインタフェース126は、受信機および/またはモデムを含んでもよい。I/Oインタフェース126は、送信元デバイス110または記憶媒体/サーバ130bから符号化された映像データを取得してもよい。映像デコーダ124は、符号化された映像データを復号してもよい。表示デバイス122は、復号された映像データをユーザに表示してもよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインタフェースで接続するように構成される送信先デバイス120の外部にあってもよい。
【0095】
映像エンコーダ114および映像デコーダ124は、高効率映像コーディング(HEVC)規格、汎用映像コーディング(VVVM)規格、および他の現在のおよび/またはさらなる規格等の映像圧縮規格に従って動作してもよい。
【0096】
図5は、映像エンコーダ200の一例を示すブロック図であり、図4に示されるシステム100における映像エンコーダ114であってもよい。
【0097】
映像エンコーダ200は、本開示の技術のいずれかまたは全部を行うように構成されてもよい。図5の実施形態において、映像エンコーダ200は、複数の機能性モジュールを含む。本開示で説明される技法は、映像エンコーダ200の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0098】
映像エンコーダ200の機能コンポーネントは、分割ユニット201、予測ユニット202、残差生成ユニット207、変換ユニット208、量子化ユニット209、逆量子化ユニット210、逆変換ユニット211、再構成ユニット212、バッファ213、およびエントロピー符号化ユニット214を含んでもよく、予測ユニット202は、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、およびイントラ予測ユニット206を含む。
【0099】
他の例において、映像エンコーダ200は、より多くの、より少ない、または異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、IBC(Intra Block Copy)ユニットを含んでもよい。IBCユニットは、少なくとも1つの参照ピクチャが、現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測を実行してもよい。
【0100】
さらに、動き推定ユニット204および動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、図5の例においては別個に表現されている。
【0101】
分割ユニット201は、ピクチャを1または複数の映像ブロックに分割してもよい。映像エンコーダ200および映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
【0102】
モード選択ユニット203は、例えば、誤りの結果に基づいて、イントラまたはインターのコーディングモードのうちの1つを選択し、得られたイントラまたはインターコーディングされたブロックを、残差ブロックデータを生成するために残差生成ユニット207に供給し、符号化されたブロックを参照ピクチャとして使用するために再構成するために再構成ユニット212に供給してもよい。いくつかの例において、モード選択ユニット203は、インター予測信号およびイントラ予測信号に基づいて予測を行うCIIP(Combination of Intra and Inter Prediction)モードを選択してもよい。モード選択ユニット203は、インター予測の場合、ブロックのために動きベクトルの解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択してもよい。
【0103】
現在の映像ブロックに対してインター予測を行うために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームと現在の映像ブロックとを比較することにより、現在の映像ブロックに対する動き情報を生成してもよい。動き補償ユニット205は、動き情報および現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの復号化されたサンプルに基づいて、現在の映像ブロックに対する予測映像ブロックを決定してもよい。
【0104】
動き推定ユニット204および動き補償ユニット205は、現在の映像ブロックがIスライスであるか、Pスライスであるか、またはBスライスであるかに基づいて、例えば、現在の映像ブロックに対して異なる動作を行ってもよい。
【0105】
いくつかの例において、動き推定ユニット204は、現在の映像ブロックに対して単方向予測を実行し、動き推定ユニット204は、現在の映像ブロックに対する参照映像ブロックのために、リスト0またはリスト1の参照ピクチャを検索してもよい。そして、動き推定ユニット204は、参照映像ブロックを含むリスト0またはリスト1における参照ピクチャを示す参照インデックスと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルと、を生成する。動き推定ユニット204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
【0106】
他の例において、動き推定ユニット204は、現在の映像ブロックを双方向予測してもよく、動き推定ユニット204は、現在の映像ブロックに対する参照映像ブロックについて、リスト0から参照ピクチャを検索してもよく、また、現在の映像ブロックに対する別の参照映像ブロックについて、リスト1における参照ピクチャも検索してもよい。そして、動き推定ユニット204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定ユニット204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
【0107】
いくつかの例において、動き推定ユニット204は、デコーダの復号処理のために、動き情報のフルセットを出力してもよい。
【0108】
いくつかの例では、動き推定ユニット204は、現在の映像のための動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定ユニット204は、現在の映像ブロックの動き情報が近傍の映像ブロックの動き情報に十分に類似していることを判定してもよい。
【0109】
一例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同一の動き情報を有することを映像デコーダ300に示す値を示してもよい。
【0110】
他の例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、MVD(Motion Vector Difference)とを識別してもよい。動きベクトル差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、指定された映像ブロックの動きベクトルと動きベクトル差分とを使用して、現在の映像ブロックの動きベクトルを決定してもよい。
【0111】
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装され得る予測信号通知技法の2つの例は、AMVP(Advanced Motion Vector Prediction)およびマージモード信号通知を含む。
【0112】
イントラ予測ユニット206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測ユニット206が現在の映像ブロックをイントラ予測する場合、イントラ予測ユニット206は、同じピクチャにおける他の映像ブロックの復号されたサンプルに基づいて、現在の映像ブロックのための予測データを生成してもよい。現在の映像ブロックのための予測データは、予測された映像ブロックおよび様々な構文要素を含んでもよい。
【0113】
残差生成ユニット207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックに対する残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
【0114】
他の例において、例えば、スキップモードにおいて、現在の映像ブロックに対する残差データがなくてもよく、残差生成ユニット207は、減算動作を行わなくてもよい。
【0115】
変換処理ユニット208は、現在の映像ブロックに関連付けられた残差映像ブロックに1または複数の変換を適用することによって、現在の映像ブロックのための1または複数の変換係数映像ブロックを生成してもよい。
【0116】
変換処理ユニット208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化ユニット209は、現在の映像ブロックに関連付けられた1または複数の量子化パラメータ(QP:Quantization Parameter)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
【0117】
逆量子化ユニット210および逆変換ユニット211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成ユニット212は、予測ユニット202によって生成された1または複数の予測映像ブロックに対応するサンプルに再構成された残差映像ブロックを追加して、バッファ213に格納するための現在のブロックに関連付けられた再構成された映像ブロックを生成してもよい。
【0118】
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング動作が行われてもよい。
【0119】
エントロピー符号化ユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピー符号化ユニット214がデータを受信した場合、エントロピー符号化ユニット214は、1または複数のエントロピー符号化動作を行い、エントロピー符号化されたデータを生成し、エントロピー符号化されたデータを含むビットストリームを出力してもよい。
【0120】
図6は、映像デコーダ300の一例を示すブロック図であり、映像デコーダ300は、図4に示すシステム100における映像デコーダ114であってもよい。
【0121】
映像デコーダ300は、本開示の技術のいずれかまたは全てを行うように構成されてもよい。図5の実施例において、映像デコーダ300は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像デコーダ300の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0122】
図6の実施形態において、映像デコーダ300は、エントロピー復号ユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、および再構成ユニット306、並びにバッファ307を含む。映像デコーダ300は、いくつかの例では、映像エンコーダ200(図5)に関して説明したエンコーディングパスとほぼ逆のデコーディングパスを行ってもよい。
【0123】
エントロピー復号ユニット301は、符号化されたビットストリームを取り出す。符号化されたビットストリームは、エントロピー符号化された映像データ(例えば、映像データの符号化されたブロック)を含んでもよい。エントロピー復号ユニット301は、エントロピーコーディングされた映像データを復号し、エントロピー復号された映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVPおよびマージモードを行うことで、このような情報を決定してもよい。
【0124】
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を行う。構文要素には、サブピクセルの精度で使用される補間フィルタのための識別子が含まれてもよい。
【0125】
動き補償ユニット302は、映像ブロックのエンコーディング中に映像エンコーダ20によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数ピクセルのための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に基づいて、映像エンコーダ200により使用される補間フィルタを決定し、予測ブロックを生成に補間フィルタを使用してしてもよい。
【0126】
動き補償ユニット302は、エンコードされた映像シーケンスのフレームおよび/またはスライスをエンコードするために使用されるブロックのサイズを判定するための構文情報、エンコードされた映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのようにエンコードされるかを示すモード、各インターエンコードされたブロックに対する1つ以上の参照フレーム(および参照フレームリスト)、およびエンコードされた映像シーケンスをデコードするための他の情報のうちいくつかを使用してもよい。
【0127】
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピー復号ユニット301によって復号された量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆変換ユニット303は、逆変換を適用する。
【0128】
再構成ユニット306は、残差ブロックと、動き補償ユニット202またはイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、復号されたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、復号されたブロックをフィルタリングするためにデブロッキングフィルタを適用してもよい。復号された映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、表示デバイスに表示するために復号された映像を生成する。
【0129】
解決策のリストは、開示される技術のいくつかの実施例を説明する。
【0130】
第1の解決策のセットを次に提供する。以下の解決策は、前章(例えば、項目1、2)で論じた技術の例示的な実施形態を示す。
【0131】
1.映像処理方法(例えば、図3の方法600)であって、1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像と、この映像のコーディングされた表現との間で変換を行うこと(602)を含み、このコーディングされた表現は、映像パラメータセットの識別子を示す第1の構文要素と、コーディングされた表現の第2構文要素との間の関係を規定するフォーマット規則に準拠する。
【0132】
2.前記第2の構文要素は、前記コーディングされた表現における出力レイヤセットの数を示す、解決策1に記載の方法。
【0133】
3.前記第2の構文要素は、前記コーディングされた表現における出力レイヤセットの総数を示す、解決策1~2のいずれか1つに記載の方法。
【0134】
4.前記第2構文要素は、所定の映像パラメータセットを参照する前記映像のサブレイヤの最大数を示し、前記フォーマット規則は、前記第2の構文要素がシーケンスパラメータセットを参照する前記映像のサブレイヤの総数に等しい値を有することを規定する、解決策1~3のいずれか1つに記載の方法。
【0135】
以下の解決策は、前章(例えば、項目3~4)で論じた技術の例示的な実施形態を示す。
【0136】
5.1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像と、前記映像のコーディングされた表現との間で変換を行うことを含み、前記コーディングされた表現は、前記コーディングされた表現において複数のピクチャパラメータセット(PPS)の使用を許可するフォーマット規則に準拠し、前記フォーマット規則は、前記コーディングされた表現において前記PPSが、他のPPSとは独立して参照ピクチャのためにピクチャ分割を許可するかどうかをさらに規定することを許可する、映像処理方法。
【0137】
以下の解決策は、前章(例えば、項目5)で論じた技術の例示的な実施形態を示す。
【0138】
6.1つ以上のタイルおよび/または1つ以上のスライスを有する1つ以上の映像ピクチャを備える1つ以上の映像レイヤを含む映像と、この映像のコーディングされた表現との間で変換を行うことを含み、前記コーディングされた表現は、スライスのタイルがラスタスキャン順にあるかどうかを示す第1の構文要素が第2の構文要素の値を制御することを規定するフォーマット規則に準拠する、映像処理方法。
【0139】
7.前記第2の構文要素は、ピクチャパラメータセットに含まれる1つまたは複数のフラグを含む、解決策6に記載の方法。
【0140】
8.前記1つ以上のフラグは、適応ループフィルタの存在を示すフラグと、参照ピクチャリストを示すフラグと、サンプル適応オフセット操作を示すフラグと、量子化パラメータ差分フィールドを示すフラグと、を含む、解決策7に記載の方法。
【0141】
9.変換は、コーディングされた表現を構文解析し、復号して映像を生成することを含む、解決策1~8のいずれかに記載の方法。
【0142】
10.変換は、コーディングされた表現を生成するために映像を符号化することを含む、解決策1~8のいずれか1つに記載の方法。
【0143】
11.解決策1~10の1つ以上に記載の方法を実行するように構成された処理装置を備える、映像復号装置。
【0144】
12.解決策1~10の1つ以上に記載の方法を実行するように構成された処理装置を備える、映像符号化装置。
【0145】
第2の解決策のセットは、前章(例えば、項目1、および3~6)で論じた技術の例示的な実施形態を示す。
【0146】
1.映像処理方法(例えば、図13Aに示す方法1300)であって、1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像とこの映像のビットストリームとの間で変換を行うこと(1302)を含み、このビットストリームは、映像レイヤによって参照される映像パラメータセットの識別子を示す構文要素と、ビットストリームのフィールドとの間の関係を規定するフォーマット規則に準拠する。
【0147】
2.前記フィールドは、対応する構文要素であるか、または前記ビットストリームにおける出力レイヤセットの総数を示す変数である、解決策1に記載の方法。
【0148】
3.前記フィールドは、前記映像パラメータセットによって規定される出力レイヤセットの総数を示す変数である、解決策1に記載の方法。
【0149】
4.前記フィールドは、前記ビットストリームに設定された第1の出力レイヤにおけるレイヤの数を示す、対応する構文要素または変数である、解決策1に記載の方法。
【0150】
5.前記フォーマット規則は、前記構文要素が第1の値を有する場合、前記フィールドの値を、前記第1の値とは異なる第2の値に等しく設定することを規定する、解決策1~4のいずれか1つに記載の方法。
【0151】
6.第1の値は0であり、前記第2の値は1である、解決策5に記載の方法。
【0152】
7.前記フォーマット規則は、前記構文要素の値が前記識別子が0であることを示す場合、出力レイヤセットの前記総数と前記ビットストリームにおいて設定された第1の出力レイヤにおけるレイヤの前記数とが1に等しいことを規定する、解決策2~4のいずれか1つに記載の方法。
【0153】
8.前記フィールドは、第1の出力レイヤセットにおける第1のレイヤのレイヤ識別子を示す構文要素または変数であり、前記フォーマット規則は、コーディングされた映像シーケンスのレイヤのNAL(ネットワーク抽象レイヤ)ユニットヘッダ識別子(nuh_layer_id)に前記フィールドを等しく設定することを規定する、解決策1に記載の方法。
【0154】
9.前記フィールドは、所定の映像パラメータセットを参照する前記映像のサブレイヤの最大数を示し、前記フォーマット規則は、前記フィールドを、シーケンスパラメータセットを参照する前記映像のサブレイヤの総数に等しく設定することを規定する、解決策1に記載の方法。
【0155】
10.映像処理方法(例えば、図13Bに示す方法1310)であって、規則に従って、1つ以上の映像ピクチャを備える1つ以上の映像レイヤを含む映像と、前記映像のビットストリームとの間で変換を行うこと(1312)を含み、この規則は、映像レイヤ内のピクチャが、対応するピクチャに対してピクチャ分割が有効にされているかどうかを示す構文要素の異なる値を有するピクチャパラメータセットを参照することを許可されることを規定する、映像処理方法。
【0156】
11.第1の値に等しい前記構文要素は、前記ピクチャパラメータセットを参照する各ピクチャに対してピクチャ分割を適用しないことを規定する、解決策10に記載の方法。
【0157】
12.第2の値に等しい前記構文要素は、対応するピクチャパラメータセットを参照する各ピクチャが、2つ以上のタイルまたはスライスに分割されることを許容することを規定する、解決策10に記載の方法。
【0158】
13.映像処理方法(例えば、図13Cに示す方法1320)であって、規則に従って、1つ以上のタイルを備える1つ以上の映像ピクチャを含む映像と、この映像のビットストリームとの間で変換を行うこと(1322)を含み、この規則は、ピクチャのタイルにわたるループフィルタリングが有効にされているかどうかを示す構文要素が、ピクチャが参照するピクチャパラメータセットに存在しないことに呼応し、この構文要素が特定の値を有すると推論されることを規定する。
【0159】
14.特定の値が0である、解決策13に記載の方法。
【0160】
15.前記構文要素が0に等しい場合、前記ピクチャパラメータセットを参照するピクチャについて、前記ピクチャの前記タイルにわたる前記ループ内フィルタリング動作が無効にされることを規定する、解決策13または14に記載の方法。
【0161】
16.映像処理方法(例えば、図13Dに示す方法1330)であって、1つ以上のタイルおよび/または1つ以上のスライスを有する1つ以上の映像ピクチャを備える1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うこと(1332)を含み、このビットストリームは、i)ピクチャパラメータセットを参照するピクチャごとの矩形スライスモードの使用を示し、第1の値を有する第1の構文要素と、ピクチャパラメータセットを参照する各ピクチャにおける矩形スライスの数を示す第2の構文要素に関連付けられた第1の条件、または、ii)各ピクチャの単一のスライスのみを示す第3の構文要素に関連付けられた第2の条件が満たされることに呼応して、ピクチャパラメータセットにおける1つ以上のフラグの値を規定するフォーマット規則に準拠する、映像処理方法。
【0162】
17.前記1つ以上のフラグは、ピクチャヘッダ構文構造における適応ループフィルタ情報の存在を示す第1のフラグ、前記ピクチャヘッダ構文構造における参照ピクチャリスト情報の存在を示す第2のフラグ、前記ピクチャヘッダ構文構造におけるデブロッキングフィルタ情報の存在を示す第3のフラグ、前記ピクチャヘッダ構文構造におけるサンプル適応オフセットフィルタ情報の存在を示す第4のフラグ、前記ピクチャヘッダ構文構造における重み付けされた予測情報の存在を示す第5のフラグ、および、前記ピクチャヘッダ構文構造における量子化パラメータデルタ情報差の存在を示す第6のフラグを含む、解決策16に記載の方法。
【0163】
18.第1の構文要素が1に等しく、第2の構文要素が0に等しい場合に、第1の条件を満たす、解決策16に記載の方法。
【0164】
19.1に等しい第1の構文要素が、前記ピクチャパラメータセットを参照し、各ピクチャごとに前記矩形スライスモードが使用されていることを規定する、解決策16または17に記載の方法。
【0165】
20.0に等しい第2の構文要素が、前記ピクチャパラメータセットを参照している各ピクチャに対してピクチャ分割を適用しないことを規定する、解決策16または17に記載の方法。
【0166】
21.第3の構文要素が1に等しい場合、第2の条件を満たす、解決策16に記載の方法。
【0167】
22.1に等しい第3の構文要素が、各ピクチャが1つのスライスを含むことを規定する、解決策16に記載の方法。
【0168】
23.フォーマット規則は、第1の条件または第2の条件を満たす場合、1つまたは複数のフラグがすべて0に等しい必要があることを規定する、解決策16に記載の方法。
【0169】
24.フォーマット規則は、前記第1の条件または第2の条件を満たす場合、前記フラグをすべてスキップし、かつ0に等しいと推論することを規定する、解決策16に記載の方法。
【0170】
25.映像処理方法(例えば、図13Eに示す方法1340)であって、1つ以上の映像ピクチャを備える1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うこと(1342)を含み、このビットストリームは、一般レイヤインデックスを有する映像レイヤにおけるレイヤ間予測の使用を示す第1の構文要素が、ピクチャにおけるインターコーディングされたサブパーティションの適用可能性を示す第2の構文要素の値を制御することを規定するフォーマット規則に準拠する、映像処理方法。
【0171】
26.前記フォーマット規則は、前記第1の構文要素が0に等しい場合、前記第2の構文要素の値が1に等しいことを必要とする、解決策25に記載の方法。
【0172】
27.前記フォーマット規則は、前記第1の構文要素が存在しない場合、前記第2の構文要素の値が1に等しいことを規定する、解決策26に記載の方法。
【0173】
28.前記第2の構文要素が1に等しいことは、スライスタイプが0または1に等しいピクチャに、1つ以上のコーディングされたスライスが存在する可能性を規定する、解決策25~27のいずれか1つに記載の方法。
【0174】
29.前記映像レイヤの前記一般レイヤインデックスは、NAL(ネットワーク抽象化レイヤ)ユニットヘッダ識別子に等しい、解決策25~28のいずれか1つに記載の方法。
【0175】
30.変換は、映像をビットストリームにエンコーディングすることを含む、解決策1~29のいずれかに記載の方法。
【0176】
31.変換は、ビットストリームから映像をデコーディングすることを含む、解決策1~29のいずれかに記載の方法。
【0177】
32.変換は、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、解決策1~29のいずれかに記載の方法。
【0178】
33.解決策1~32のいずれか1つ以上に記載の方法を実装するように構成された処理装置を備える映像処理装置。
【0179】
34.解決策1~32のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
【0180】
35.実行されると、解決策1~32いずれか1つ以上に記載の方法を処理装置に実装させるプログラムコードを記憶したコンピュータ可読媒体。
【0181】
36.上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
【0182】
37.解決策1~32の1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
【0183】
第3の解決策のセットは、前章(例えば、項目2)で論じた技術の例示的な実施形態を示す。
【0184】
1.映像処理方法(例えば、図14に示す方法1400)であって、規則に従って、1つ以上の映像レイヤを含む映像と、この映像のビットストリームとの間で変換を行うこと(1402)を含み、この規則は、映像レイヤによって参照されるシーケンスパラメータセット(SPS)の第1のフィールドの値に呼応して、ビットストリームにおいて許容されるサブレイヤの最大数を示すSPSによって参照される映像パラメータセットの第2のフィールドが、SPSの第3のフィールドに等しいと解釈されることを規定し、第3フィールドは、映像レイヤにおいて許容されるサブレイヤの最大数を示す、映像処理方法。
【0185】
2.前記第1のフィールドは、前記映像パラメータセットの識別子である、解決策1に記載の方法。
【0186】
3.前記第1のフィールドの値が0に等しい、解決策1または解決策2に記載の方法。
【0187】
4.前記規則は、第1のフィールドの値に基づいて、第3のフィールドの値が0から6の範囲内にあることをさらに規定する、解決策または解決策2に記載の方法。
【0188】
5.前記値を有する前記第1のフィールドは、前記シーケンスパラメータセットがいずれの映像シーケンスパラメータセットも参照しないことを示す、解決策3または4に記載の方法。
【0189】
6.前記規則は、前記第1のフィールドが0より大きいことに呼応して、前記第3のフィールドの前記値が、0~前記第2のフィールドの値の範囲内にあることをさらに規定する、解決策1または2に記載の方法。
【0190】
7.前記規則は、前記第1のフィールドの値に呼応して、前記第3のフィールドの値が0~6の範囲内にあるが、前記第2のフィールドの値よりも大きくないことを規定する、解決策1または2に記載の方法。
【0191】
8.変換は、映像をビットストリームにエンコーディングすることを含む、解決策1~7のいずれかに記載の方法。
【0192】
9.変換は、ビットストリームから映像をデコーディングすることを含む、解決策1~7のいずれかに記載の方法。
【0193】
10.変換は、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、解決策1~7のいずれかに記載の方法。
【0194】
11.解決策1~10のいずれか1つ以上に記載の方法を実装するように構成された処理装置を備える映像処理装置。
【0195】
12.解決策1~10のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
【0196】
13.実行されると、解決策1~10のいずれか1つ以上に記載の方法を処理装置に実装させるプログラムコードを記憶するコンピュータ可読媒体。
【0197】
14.上述した方法のいずれかに従って生成されたビットストリームを記憶する、コンピュータ可読媒体。
【0198】
15.解決策1~10の1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
【0199】
本明細書に記載された開示された、およびその他の解決策、実施例、実施形態、モジュール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1または複数の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1または複数のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1または複数のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1または複数の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサ、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1または複数の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報をエンコードするために生成される。
【0200】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1または複数のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1または複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。コンピュータプログラムを、1つのコンピュータで実行するように展開することができ、あるいは、1つのサイトに位置する、または複数のサイトにわたって分散され通信ネットワークによって相互接続される複数のコンピュータで実行するように展開することができる。
【0201】
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を行うための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
【0202】
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用および専用マイクロプロセッサの両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つ以上の記憶装置とである。一般的に、コンピュータは、データを記憶するための1または複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。プロセッサおよびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
【0203】
本特許明細書は多くの特徴を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1または複数の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
【0204】
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている実施形態における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
【0205】
いくつかの実装形態および実施例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13A
図13B
図13C
図13D
図13E
図14