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

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

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

特表2023-526372映像コーディングにおけるスケーリングウィンドウ
<>
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図1
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図2
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図3
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図4
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図5
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図6
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図7
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図8
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図9
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図10
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図11
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図12
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図13
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図14
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図15
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図16
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図17
  • 特表-映像コーディングにおけるスケーリングウィンドウ 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-06-21
(54)【発明の名称】映像コーディングにおけるスケーリングウィンドウ
(51)【国際特許分類】
   H04N 19/70 20140101AFI20230614BHJP
   H04N 19/85 20140101ALI20230614BHJP
   H04N 19/597 20140101ALI20230614BHJP
【FI】
H04N19/70
H04N19/85
H04N19/597
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022570205
(86)(22)【出願日】2021-05-21
(85)【翻訳文提出日】2022-12-14
(86)【国際出願番号】 CN2021095012
(87)【国際公開番号】W WO2021233403
(87)【国際公開日】2021-11-25
(31)【優先権主張番号】PCT/CN2020/091533
(32)【優先日】2020-05-21
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】520476341
【氏名又は名称】北京字節跳動網絡技術有限公司
【氏名又は名称原語表記】Beijing Bytedance Network Technology Co., Ltd.
【住所又は居所原語表記】Room B-0035, 2/F, No.3 Building, No.30, Shixing Road, Shijingshan District Beijing 100041 China
(71)【出願人】
【識別番号】520477474
【氏名又は名称】バイトダンス インコーポレイテッド
【氏名又は名称原語表記】BYTEDANCE INC.
【住所又は居所原語表記】12655 West Jefferson Boulevard, Sixth Floor, Suite No. 137 Los Angeles, California 90066 United States of America
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】ワン イェクイ
(72)【発明者】
【氏名】ドン ジピン
(72)【発明者】
【氏名】ジャン カイ
(72)【発明者】
【氏名】ジャン リー
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159LA02
5C159MA04
5C159MA05
5C159MA21
5C159MC11
5C159ME01
5C159PP03
5C159PP04
5C159RC11
5C159TA12
5C159TB06
5C159TB08
5C159TC26
5C159UA02
5C159UA05
(57)【要約】
映像符号化、映像復号、および映像トランスコーディングを含む、映像処理のための技術が説明される。ある例示的な方法は、規則に従って、映像ピクチャを含む映像と映像のビットストリームとの変換を行うことを含み、この規則は、構文要素が映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、この規則は、構文要素に対する許容可能な値の範囲が、映像ピクチャの第2の幅の2倍以上および映像ピクチャの第2の高さの2倍以上の値を含むことを規定する。
【選択図】図13
【特許請求の範囲】
【請求項1】
規則に従って、映像ピクチャを含む映像と映像のビットストリームとの変換を行うこと、を含み、
前記規則は、構文要素が前記映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、
前記規則は、前記構文要素に対する許容可能な値の範囲が、前記映像ピクチャの第2の幅の2倍以上および前記映像ピクチャの第2の高さの2倍以上の値を含むことを規定する、
映像処理方法。
【請求項2】
前記構文要素の前記値は、スケーリング比計算のために前記映像ピクチャのサイズに適用されるオフセットを特定する、
請求項1に記載の方法。
【請求項3】
前記構文要素は、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetを含む、
請求項1に記載の方法。
【請求項4】
前記規則は、SubWidthC*(pps_scaling_win_left_offset+pps_scaling_win_right_offset))の値が、-pps_pic_width_in_luma_samples*M以上かつpps_pic_width_in_luma_samples未満であることを特定し、ここで、CurrPicScalWidthLは前記スケーリングウィンドウの前記第1の幅であり、pps_pic_width_in_luma_samplesは前記映像ピクチャの前記第2の幅であり、SubWidthCは映像ブロックの幅であり、前記映像ブロックを含む前記映像ピクチャの彩度フォーマットに従った表から得られ、CurrPicScalWinWidthL=pps_pic_width_in_luma_samples-SubWidthC*(pps_scaling_win_right_offset+pps_scaling_win_left_offset)であることを規定する、
請求項1~3のいずれか1項に記載の方法。
【請求項5】
Mは、16、8、32、または64に等しい、
請求項4に記載の方法。
【請求項6】
前記規則は、SubHeightC*(pps_scaling_win_top_offset+pps_scaling_win_bottom_offset)の値が、-pps_pic_height_in_luma_samples*N以上かつpps_pic_height_in_luma_samples未満であることを特定し、ここで、CurrPicScalHeightLは前記スケーリングウィンドウの前記第1の高さであり、pps_pic_height_in_luma_samplesは前記映像ピクチャの前記第2の高さであり、SubHeightCは映像ブロックの高さであり、前記映像ブロックを含む前記映像ピクチャの彩度フォーマットに従った表から得られ、CurrPicScalWinHeightL=pps_pic_height_in_luma_samples-SubHeightC*(pps_scaling_win_bottom_offset+pps_scaling_win_top_offset)であることを規定する、
請求項1~3のいずれか1項に記載の方法。
【請求項7】
Nは、16、8、32または64に等しい、
請求項6に記載の方法。
【請求項8】
MおよびNは、前記映像ピクチャのサブピクチャのレイアウトに依存する、
請求項4~7のいずれか1項に記載の方法。
【請求項9】
Mは、Ceil(pps_pic_width_in_luma_samples÷minSubpicWidth)に等しく、minSubpicWidthは、ピクチャパラメータセットを参照する前記ピクチャにおけるすべてのサブピクチャの最小サブピクチャ幅であり、pps_pic_width_in_luma_samplesは、前記映像ピクチャの前記第2の幅であり、Ceil()関数は、2番目に大きい整数までの数を丸める、
請求項8に記載の方法。
【請求項10】
Nは、Ceil(pps_pic_height_in_luma_samples÷minSubpicHeight)に等しく、minSubpicHeightは、ピクチャパラメータセットを参照する前記映像ピクチャにおけるすべてのサブピクチャの最小サブピクチャ高さであり、pps_pic_height_in_luma_samplesは、前記映像ピクチャの前記第2の高さであり、Ceil()関数は、2番目に大きい整数までの数を丸める、
請求項8に記載の方法。
【請求項11】
映像の映像ピクチャとこの映像のビットストリームとの変換のために、規則に従って、(1)前記映像の参照映像ピクチャの第1のスケーリングウィンドウの第1の幅または第1の高さと、(2)現在の映像ピクチャの第2のスケーリングウィンドウの第2の幅または第2の高さとを制約するかどうか、またはどのように制約するかを決定することと、
この決定することに基づいて前記変換を行うことと、を含む、
映像処理方法。
【請求項12】
前記規則は、前記参照映像ピクチャおよび前記現在の映像ピクチャが異なる映像レイヤにあることに応じて、前記第1のスケーリングウィンドウの前記第1の幅または前記第1の高さおよび前記第2のスケーリングウィンドウの第2の幅または第2の高さに制約がないことを規定する、
請求項11に記載の方法。
【請求項13】
前記規則は、
CurrPicScalWinWidthL*MがrefPicScalWinWidthL以上であり、
CurrPicScalWinHeightL*MがrefPicScalWinHeightL以上であり、
CurrPicScalWinWidthLがrefPicScalWinWidthL*N以下であり、
CurrPicScalWinHeightLがrefPicScalWinHeightL*N以下であり、
CurrPicScalWinWidthL*sps_pic_width_max_in_luma_samplesが、refPicScalWinWidthL*(pps_pic_width_in_luma_samples-Max(K0,MinCbSizeY))以上であり、
CurrPicScalWinHeightL*sps_pic_height_max_in_luma_samplesが、refPicScalWinHeightL*(pps_pic_height_in_luma_samples-Max(K1,MinCbSizeY))以上であることを規定し、
CurrPicScalWinWidthLおよびCurrPicScalWinHeightLは、それぞれ、前記現在の映像ピクチャの前記第2のスケーリングウィンドウの前記第2の幅および前記第2の高さであり、
refPicScalWinWidthLおよびCrefPicScalWinHeightLは、それぞれ、前記参照映像ピクチャの前記第1のスケーリングウィンドウの前記第1の幅および前記第1の高さであり、
sps_pic_width_max_in_luma_samplesは、シーケンスパラメータセットを参照する各映像ピクチャの輝度サンプルの部における最大幅であり、
pps_pic_width_in_luma_samplesは、ピクチャパラメータセットを参照する各映像ピクチャの幅である、
請求項11に記載の方法。
【請求項14】
前記規則は、前記参照映像ピクチャおよび前記現在の映像ピクチャが同じ映像レイヤにあることに応じて、M=M1、N=N1であることを規定し、
前記規則は、前記参照映像ピクチャおよび前記現在の映像ピクチャが異なる映像レイヤにあることに応じて、M=M2、N=N2であることを規定し、ここで、M1はM2以下であり、N1はN2以上である、
請求項13に記載の方法。
【請求項15】
K0またはK1は、整数値である、
請求項13に記載の方法。
【請求項16】
K0またはK1は、それぞれ、最小許容映像ピクチャ幅または最小許容映像ピクチャ高さである、
請求項13に記載の方法。
【請求項17】
K0またはK1は、8である、
請求項13に記載の方法。
【請求項18】
1つ以上の映像スライスを含む映像ピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含む映像処理方法であって、
前記ビットストリームは、前記ピクチャのスケーリングウィンドウの幅および高さによって、前記映像ピクチャの映像スライスに対して、i番目の参照ピクチャリストにおけるj番目の参照映像ピクチャのリサンプリングを有効化するかどうかを規定する変数の値を決定することを規定する規則に準拠し、
iおよびjは整数である、
映像処理方法。
【請求項19】
前記変数はRprConstraintsActive[i][j]であり、
前記規則は、RprConstraintsActive[i][j]=(CurrPicScalWinWidthL!=fRefWidth||CurrPicScalWinHeightL!=fRefHeight)であり、fRefWidthおよびfRefHeightは、それぞれj番目の参照映像ピクチャのCurrPicScalWindthLおよびCurrPicWinHeightLの値であることを規定する、
請求項18に記載の方法。
【請求項20】
前記規則は、前記変数の値が、前記j番目の参照映像ピクチャが属する第1の映像レイヤおよび現在の映像ピクチャが属する第2の映像レイヤに基づくことを規定する、
請求項18に記載の方法。
【請求項21】
前記規則は、前記変数の前記値が、前記j番目の参照映像ピクチャの前記第1の映像レイヤと前記現在の映像ピクチャの前記第2の映像レイヤが同じ映像レイヤであるかどうかに基づくことを規定する、
請求項20に記載の方法。
【請求項22】
前記変換を行うことは、前記映像を前記ビットストリームに符号化することを含む、
請求項1~21のいずれか1項に記載の方法。
【請求項23】
前記変換を行うことは、前記映像から前記ビットストリームを生成することを含み、
前記方法は、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、
請求項1から21のいずれか1項に記載の映像処理方法。
【請求項24】
前記変換を行うことは、前記ビットストリームから前記映像を復号することを含む、
請求項1から21のいずれか1項に記載の映像処理方法。
【請求項25】
請求項1から24の1項以上に記載の方法を実装するように構成される処理装置を備える、
映像復号装置。
【請求項26】
請求項1から24の1項以上に記載の方法を実装するように構成される処理装置を備える、
映像符号化装置。
【請求項27】
コンピュータ命令が記憶されたコンピュータプログラム製品であって、
前記命令は処理装置により実行されると、前記処理装置に、請求項1から24のいずれかに記載の映像処理方法を実装させる、
コンピュータプログラム製品。
【請求項28】
請求項1から24のいずれか1項に記載の映像処理方法に従って生成されるビットストリームを記憶する、
非一時的なコンピュータ可読記憶媒体。
【請求項29】
非一時的なコンピュータ可読記憶媒体であって、
請求項1から24のいずれか1項に記載の方法を処理装置に実装させる命令を記憶する、
非一時的なコンピュータ可読記憶媒体。
【請求項30】
ビットストリーム生成方法であって、
請求項1から24のいずれか1項に記載の映像処理方法に従って映像のビットストリームを生成することと、
前記ビットストリームをコンピュータ可読プログラム媒体に記憶することと、を含む、
方法。
【請求項31】
本明細書に記載の開示された方法またはシステムに従って生成された方法、装置またはビットストリーム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
パリ条約に基づく適用可能な特許法および/または規則に基づいて、本願は、2020年5月21日出願の国際特許出願第PCT/CN2020/091533号の優先権および利益を適時に主張することを目的とする。法に基づくすべての目的のために、上記出願の開示全体は、本明細書の開示の一部として参照により援用される。
【0002】
この特許明細書は、画像および映像コーディングおよび復号に関する。
【背景技術】
【0003】
デジタル映像は、インターネットおよび他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信および表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
【発明の概要】
【0004】
本願は、コーディングされた表現の復号に有用な制御情報を使用して、映像のコーディングされた表現を処理するために、映像エンコーダおよびデコーダにより使用され得る技術を開示する。
【0005】
1つの例示的な態様において、映像処理方法が開示される。この方法は、規則に従って、映像ピクチャを含む映像と映像のビットストリームとの変換を行うことを含み、この規則は、構文要素が映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、この規則は、構文要素に対する許容可能な値の範囲が、映像ピクチャの第2の幅の2倍以上および映像ピクチャの第2の高さの2倍以上の値を含むことを規定する。
【0006】
別の例示的な態様において、映像処理方法が開示される。この方法は、映像の映像ピクチャとこの映像のビットストリームとの変換のために、規則に従って、(1)この映像の参照映像ピクチャの第1のスケーリングウィンドウの第1の幅または第1の高さと、(2)現在の映像ピクチャの第2のスケーリングウィンドウの第2の幅または第2の高さとを制約するかどうか、またはどのように制約するかを決定することと、この決定に従ってこの変換を行うことと、を含む。
【0007】
別の例示的な態様において、映像処理方法が開示される。この方法は、1つ以上の映像スライスを含む映像ピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、映像ピクチャのスケーリングウィンドウの幅および高さによって、この映像ピクチャの映像スライスに対して、i番目の参照ピクチャリストにおけるj番目の参照映像ピクチャのリサンプリングを有効化するかどうかを規定する変数の値を決定することを規定する規則に準拠し、iおよびjは整数である。
【0008】
別の例示的な態様において、映像処理方法が開示される。この方法は、フォーマット規則に従って、1つ以上の映像ピクチャを有する映像とこの映像のビットストリームとの変換を行うことを含み、このフォーマット規則は、構文要素がシーケンスパラメータセットに含まれていることを規定し、かつ構文要素は参照ピクチャに対してリサンプリングを有効化するかどうか、およびコーディングされたレイヤ映像シーケンスにおける現在の映像ピクチャの1つ以上のスライスが参照ピクチャリストにおけるアクティブエントリ内の参照ピクチャを参照させることができるかどうかを示し、この参照ピクチャは、現在の映像ピクチャとは異なる6つのパラメータ、1)映像ピクチャの幅、2)映像ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、および6)スケーリングウィンドウの下側オフセットのうちのいずれか1つ以上を有する。
【0009】
別の例示的な態様において、映像処理方法が開示される。この方法は、フォーマット規則に従って、1つ以上の映像ピクチャを有する映像とこの映像のビットストリームとの変換を行うことを含み、このフォーマット規則は、構文要素がシーケンスパラメータセットに含まれていることを規定し、このフォーマット規則は、この構文要素の値が、(1)このシーケンスパラメータセットを参照する現在の映像レイヤが独立した映像レイヤでないかどうか、および(2)この現在の映像レイヤに関連付けられた1つ以上の参照映像レイヤの情報に基づいており、映像レイヤは、この映像レイヤが1つ以上の他の映像レイヤに依存していない場合、独立した映像レイヤであり、この映像レイヤが1つ以上の他の映像レイヤに依存している場合には、独立した映像レイヤでないことを規定する。
【0010】
別の例示的な態様において、映像処理方法が開示される。この方法は、フォーマット規則に従って、1つ以上の映像ピクチャを有する映像とこの映像のビットストリームとの変換を行うことを含み、このフォーマット規則は、1つ以上の映像ピクチャが参照するシーケンスパラメータセットにおいて構文要素を示すことを規定し、この構文要素は、この1つ以上の映像ピクチャと同じレイヤにある1つ以上の参照ピクチャに対して参照ピクチャのリサンプリングを有効化するかどうかを示す。
【0011】
別の例示的な態様において、映像処理方法が開示される。この方法は、1つ以上の映像ピクチャを含む映像とこの映像のコーディングされた表現との変換を行うことを含み、前記コーディングされた表現は、フォーマット規則に準拠しており、このフォーマット規則は、スケーリングウィンドウに関連するコーディングされた表現に含まれる1つ以上の構文要素が、このスケーリングウィンドウの高さまたは幅が対応する映像ピクチャの高さまたは幅以上であることを示す値を有することを許可されることを規定する。
【0012】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上の映像レイヤ内に1つ以上の映像ピクチャを含む映像と映像のコーディングされた表現との変換を行うことを含み、コーディングされた表現はフォーマット規則に準拠し、フォーマット規則は、スケーリングウィンドウに関連するコーディングされた表現に含まれる1つ以上の構文要素の許可値が制約規則によって制約されることを規定し、制約規則は、現在のピクチャの第1のレイヤと現在のピクチャの参照ピクチャの第2のレイヤとの関係に依存する。
【0013】
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像と映像のコーディングされた表現との変換を行うことを含み、前記コーディングされた表現は、フォーマット規則に準拠しており、このフォーマット規則は、構文要素がパラメータセットにおけるコーディングされた表現に含まれることを規定し、この構文要素は、非独立映像レイヤのために参照ピクチャリサンプリングを有効化するかどうかを示し、この構文要素の値は、この非独立映像レイヤの参照レイヤの関数である。
【0014】
さらに別の例示的な態様において、映像エンコーダ装置が開示される。この映像エンコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0015】
さらに別の例示的な態様において、映像デコーダ装置が開示される。この映像デコーダは、上述した方法を実装するように構成されたプロセッサを備える。
【0016】
さらに別の例示的な態様では、コードが記憶されたコンピュータ可読媒体が開示される。このコードは、本明細書に記載の方法の1つをプロセッサが実行可能なコードの形式で実施する。
【0017】
これらのおよび他の特徴は、本明細書全体にわたって説明される。
【図面の簡単な説明】
【0018】
図1】ピクチャのラスタスキャンスライス分割の例を示し、ピクチャは、12個のタイルと3個のラスタスキャンスライスとに分割される。
図2】ピクチャの矩形スライス分割の例を示し、ピクチャは、24個のタイル(6個のタイル列および4個のタイル行)と9個の矩形スライスとに分割される。
図3】タイルおよび矩形のスライスに分割されたピクチャの例を示し、ピクチャは、4つのタイル(2つのタイルの列および2つのタイルの行)と4つの矩形スライスとに分割される。
図4】15個のタイル、24個のスライス、および24個のサブピクチャに分割されたピクチャを示す。
図5】典型的なサブピクチャに基づくビューポートに依存する360映像コーディング方式を示す。
図6】サブピクチャおよび空間的スケーラビリティに基づく改良されたビューポート依存型360映像コーディング方式を示す。
図7】映像処理システムの例を示すブロック図である。
図8】映像処理装置のブロック図である。
図9】映像処理方法の一例を示すフローチャートである。
図10】本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。
図11】本発明のいくつかの実施形態によるエンコーダを示すブロック図である。
図12】本発明のいくつかの実施形態によるデコーダを示すブロック図である。
図13】映像処理の方法の例を示すフローチャートである。
図14】映像処理の方法の例を示すフローチャートである。
図15】映像処理の方法の例を示すフローチャートである。
図16】映像処理の方法の例を示すフローチャートである。
図17】映像処理の方法の例を示すフローチャートである。
図18】映像処理の方法の例を示すフローチャートである。
【発明を実施するための形態】
【0019】
本明細書では、理解を容易にするために章の見出しを使用しており、その技術および各章に記載された実施形態の適用可能性をその章のみに限定するものではない。さらに、H.266という用語は、ある説明において、理解を容易にするためだけに用いられ、開示される技術の範囲を限定するために用いられたものではない。このように、本明細書で説明される技術は、他の映像コーデックプロトコルおよび設計にも適用可能である。
【0020】
1.導入
本特許明細書は、映像コーディング技術に関する。具体的には、レイヤのコーディングされた映像シーケンス内でのスケーリングウィンドウオフセットの値の範囲の特定と、参照ピクチャリサンプリング(RPR)の制御および解像度の変更の信号通知とを含めた、映像コーディングにおけるRPRの改善されたサポートに関する。この考えは、個々にまたは様々な組み合わせで、マルチレイヤ映像コーディング、例えば、現在開発されているVVC(Versatile Video Coding)をサポートする任意の映像コーディング標準または非標準映像コーデックに適用されてもよい。
【0021】
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(生バイトシーケンスペイロード)
SE Syntax Element(構文要素)
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(汎用映像コーディング)
【0022】
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)を目指している。
【0023】
3.1 HEVCにおけるピクチャ分割スキーム
HEVCには、正規のスライス、依存性のあるスライス、タイル、WPP(Wavefront Parallel Processing)という4つの異なる画像分割スキームがあり、これらを適用することで、最大転送部(MTU)サイズのマッチング、並列処理、エンドツーエンドの遅延の低減が可能になる。
【0024】
正規のスライスは、H.264/AVCと同様である。各正規のスライスは、それ自体のNALユニットにカプセル化され、スライス境界にわたるインピクチャ予測(イントラサンプル予測、動き情報予測、コーディングモード予測)およびエントロピーコーディング依存性は無効化される。このように、正規のスライスは、同じピクチャ内の他の正規のスライスとは独立して再構成することができる(しかし、ループフィルタリング動作のために依然として相互依存性が残っている場合がある)。
【0025】
正規のスライスは、並列化に使用できる唯一のツールであり、H.264/AVCでもほぼ同じ形式で使用できる。並列化に基づく正規のスライスは、プロセッサ間通信またはコア間通信をあまり必要としない(予測コーディングされたピクチャを復号するとき、動き補償に対するプロセッサ間またはコア間データ共有を除いて、通常、インピクチャ予測のためにプロセッサ間またはコア間データ共有よりもはるかに重い)。しかしながら、同じ理由で、正規のスライスを使用すると、スライスヘッダのビットコストおよびスライス境界にわたる予測が欠如していることに起因して、コーディングのオーバーヘッドが大きくなる可能性がある。さらに、レギュラースライスは(後述の他のツールとは対照的に)、レギュラースライスのインピクチャの独立性および各正規のスライスがそれ自体のNALユニットにカプセル化されることに起因して、MTUサイズ要件に適応するようにビットストリームを分割するための鍵となるメカニズムとしても機能する。多くの場合、並列化の目標およびMTUサイズマッチングの目標は、画像におけるスライスレイアウトに矛盾する要求を課す。このような状況を実現したことにより、以下のような並列化ツールが開発された。
【0026】
従属スライスは、ショートスライスヘッダを有し、インピクチャ予測を一切中断することなく、ツリーブロック境界でビットストリームを区分することを可能にする。基本的に、従属スライスは、正規のスライスを複数のNAL部に断片化し、正規のスライス全体のエンコーディングが完了する前に正規のスライスの一部を送出することを可能にすることによって、エンドツーエンド遅延を低減する。
【0027】
WPPにおいて、ピクチャは、単一行のコーディングツリーブロック(CTB)に分割される。エントロピー復号および予測は、他の分割におけるCTBからのデータを使用することが許可される。CTB行のパラレル復号によってパラレル処理が可能であり、CTB行の復号の開始が2つのCTBだけ遅延され、それによって、対象のCTBが復号される前に、対象のCTBの上および右のCTBに関するデータが確実に利用可能になる。この互い違いのスタート(グラフで表される場合、波面のように見える)を使用することで、ピクチャがCTB行を含む数までのプロセッサ/コアを用いてパラレル化することが可能である。ピクチャ内の隣接するツリーブロック行間のインピクチャ予測が許可されるので、インピクチャ予測を可能にするために必要なプロセッサ間/コア間通信は十分となり得る。WPP分割は、適用されない場合と比較して、追加のNAL部の生成をもたらさず、従って、WPPは、MTUサイズマッチングに対するツールではない。しかし、MTUサイズのマッチングが必要な場合、一定のコーディングオーバーヘッドを伴って、WPPで正規のスライスを使用することができる。
【0028】
タイルは、ピクチャをタイルの列および行に分割する水平および垂直境界を規定する。タイルの列は、ピクチャの上からそのピクチャの下へと延びている。同様に、タイル行は、ピクチャの左からそのピクチャの右に延びている。ピクチャにおけるタイルの数は、単にタイル列の数にタイル行の数を乗算することで得ることができる。
【0029】
CTBのスキャン順序は、タイル内でローカルになるように(タイルのCTBラスタスキャンの順に)変更され、その後、ピクチャのタイルラスタスキャンの順で、次のタイルの左上のCTBを復号する。正規のスライスと同様に、タイルは、インピクチャ予測依存性およびエントロピー復号依存性を損なう。しかしながら、これらは、個々のNAL部(この点でWPPと同じ)に含まれる必要がなく、従って、タイルは、MTUサイズマッチングに使用できない。各タイルは、1つのプロセッサ/コアによって処理されてもよく、処理部間のインピクチャ予測に必要なプロセッサ間/コア間通信では、隣接するタイルの復号は、スライスが2つ以上のタイルにまたがっている場合の共有スライスヘッダの伝達と、再構築されたサンプルおよびメタデータのループフィルタリングに関連する共有とに限定される。スライスに2つ以上のタイルまたはWPPセグメントが含まれる場合、該スライスにおける第1のもの以外のタイルまたはWPPセグメントごとのエントリポイントバイトオフセットが、スライスヘッダにおいて信号通知される。
【0030】
説明を簡単にするために、HEVCにおいては、4つの異なるピクチャ分割方式の適用に関する制限が規定されている。所与のコーディングされた映像シーケンスは、HEVCに指定されたプロファイルのほとんどについて、タイルおよび波面の両方を含むことができない。各スライスおよびタイルについて、以下の条件のいずれかまたは両方を満たさなければならない。1)スライスにおけるすべてのコーディングされたツリーブロックは、同じタイルに属し、2)タイルにおけるすべてのコーディングされたツリーブロックは、同じスライスに属する。最後に、波面セグメントはちょうど1つのCTB行を含み、WPPが使用されている際に、スライスがCTB行内で始まる場合、それは同じCTB行で終わらなければならない。
【0031】
最近のHEVCの修正は、JCT-VCの出力文書であるJCTVC-AC1005、J.ボイス、A.ラマスブラモニアン、R.スクピン、G.J.スリバン、A.トゥラピス、Y.-K.ワン(著者),”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メッセージを特定する。
【0032】
時間的MCTS SEIメッセージは、ビットストリーム中にMCTSが存在することを示し、MCTSに信号通知する。MCTSごとに、動きベクトルは、MCTS内部のフルサンプル位置と、補間のためにMCTS内部のフルサンプル位置のみを必要とするフラクショナルサンプル位置とを指すように制限され、かつ、MCTS外部のブロックから導出された時間動きベクトル予測に対する動きベクトル候補の使用は許可されない。このように、各MCTSは、MCTSに含まれていないタイルが存在せず、独立して復号されてもよい。
【0033】
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を含む)が異なる値となる必要があるためである。
【0034】
3.2.VVCにおけるピクチャの分割
VVCにおいて、ピクチャは、1つ以上のタイル行および1つ以上のタイル列に分割される。タイルは、ピクチャの矩形領域を覆うCTUのシーケンスである。タイルにおけるCTUは、そのタイル内でラスタスキャン順にスキャンされる。
【0035】
スライスは、ピクチャのタイル内において、整数個の完全なタイルまたは整数個の連続した完全なCTU行を含む。
【0036】
スライスの2つのモード、即ちラスタスキャンスライスモードおよび矩形スライスモードに対応している。ラスタスキャンスライスモードにおいて、スライスは、ピクチャのタイルラスタスキャンにおける完全なタイルのシーケンスを含む。矩形スライスモードにおいて、スライスは、ピクチャの矩形領域を集合的に形成する複数の完全なタイルか、ピクチャの矩形領域を集合的に形成する1つのタイルの複数の連続した完全なCTU行かのどちらかを含む。矩形スライス内のタイルを、そのスライスに対応する矩形領域内で、タイルラスタスキャンの順にスキャンする。
【0037】
サブピクチャは、ピクチャの矩形領域を集合的に覆う1つ以上のスライスを含む。
【0038】
図1は、ピクチャのラスタスキャンスライス分割の例を示し、ピクチャは、12個のタイルと3個のラスタスキャンスライスとに分割される。
【0039】
図2は、ピクチャの矩形スライス分割の例を示し、ピクチャは、24個のタイル(6個のタイル列および4個のタイル行)と9個の矩形スライスとに分割される。
【0040】
図3は、タイルおよび矩形のスライスに分割されたピクチャの例を示し、ピクチャは、4つのタイル(2つのタイルの列および2つのタイルの行)と4つの矩形スライスとに分割される。
【0041】
図4は、ピクチャをサブピクチャで分割する例を示し、ピクチャは、18個のタイルに分割され、左側の12個が、4×4のCTUの1つのスライスをそれぞれ含み、右側の6個のタイルが、2×2のCTUの垂直方向に積み重ねられたスライスをそれぞれ含み、全体で24個のスライスおよび24個の異なる寸法のサブピクチャとなる(各スライスは、サブピクチャである)。
【0042】
3.3.シーケンス内のピクチャ解像度の変更
AVCおよびHEVCにおいて、ピクチャの空間的解像度は、新しいSPSを使用する新しいシーケンスがIRAPピクチャで始まらない限り、変更することができない。VVCは、常にイントラコーディングされるIRAPピクチャを符号化せずに、ある位置のシーケンス内でピクチャの解像度を変更することを可能にする。この特徴は、参照ピクチャが復号されている現在のピクチャと異なる解像度を有する場合、インター予測に使用される参照ピクチャをリサンプリングすることが必要であるため、参照ピクチャリサンプリング(RPR)と称する。
【0043】
スケーリング比は、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の範囲のスケーリング比を有するリサンプリング処理の特殊な場合である。水平および垂直スケーリング比は、ピクチャの幅および高さ、並びに参照ピクチャおよび現在のピクチャに対して規定された左側、右側、上側および下側のスケーリングオフセットに基づいて導出される。
【0044】
HEVCとは異なる、この特徴をサポートするためのVVC設計の他の態様は、i)SPSの代わりにPPSにおいてピクチャ解像度および対応する適合性ウィンドウを信号通知する一方、SPSにおいて最大ピクチャ解像度を信号通知すること、ii)単レイヤビットストリームの場合、各ピクチャ記憶(1つの復号されたピクチャを記憶するためのDPBにおけるスロット)は、最大ピクチャ解像度を有する復号されたピクチャを記憶するために必要なバッファサイズを占めることを含む。
【0045】
3.4.全般およびVVCにおけるスケーラブル映像コーディング(SVC)
スケーラブル映像コーディング(SVC、時には、映像コーディングにおけるスケーラビリティとも呼ばれる)は、ベースレイヤ(BL)(時には、参照レイヤ(RL)と呼ばれる)映像コーディングと呼ばれることもあり、1つ以上のスケーラブル拡張レイヤ(EL)が使用される。SVCにおいて、ベースレイヤは、基本品質レベルの映像データを伝送することができる。1つ以上の拡張レイヤは、例えば、より高い空間的、時間的、および/または信号対雑音(SNR)レベルをサポートするように、追加の映像データを伝送することができる。拡張レイヤは、前の、符号化されたレイヤに対して定義されてもよい。例えば、下層がBLとして機能し、上層がELとして機能することができる。中間レイヤは、ELまたはRLのいずれか、またはその両方として機能することができる。例えば、中間レイヤ(例えば、最下レイヤでも最上レイヤでもないレイヤ)は、中間レイヤの下のレイヤ、例えば、ベースレイヤまたは任意の介在する拡張レイヤに対するELであってもよく、同時に、中間レイヤの上の1つ以上の拡張レイヤに対するRLとしての役割を果たす。同様に、HEVC規格のマルチビューまたは3D拡張では、複数のビューが存在してもよく、1つのビューの情報を利用して別のビューの情報をコーディング(例えば、符号化または復号)することができる(例えば、動き推定、動きベクトル予測および/または他の冗長性)。
【0046】
SVCにおいて、エンコーダまたはデコーダで使用されるパラメータは、それらを利用することができるコーディングレベル(例えば、映像レベル、シーケンスレベル、ピクチャレベル、スライスレベル等)に基づいてパラメータセットにグループ分けされる。例えば、ビットストリームにおける異なるレイヤの1つ以上のコーディングされた映像シーケンスによって利用できるパラメータは、映像パラメータセット(VPS)に含まれてもよく、コーディングされた映像シーケンスにおける1つ以上のピクチャによって利用されるパラメータは、シーケンスパラメータセット(SPS)に含まれてもよい。同様に、ピクチャの1つ以上のスライスで利用されるパラメータは、ピクチャパラメータセット(PPS)に含まれてもよく、スライスに固有の他のパラメータは、スライスヘッダに含まれてもよい。同様に、特定のレイヤが所与の時間にどのパラメータセット(複数可)を使用しているかの指示は、様々なコーディングレベルで提供されてもよい。
【0047】
VVCにおける参照ピクチャリサンプリング(RPR)のサポートにより、空間的スケーラビリティサポートに必要なアップサンプリングはRPRアップサンプリングフィルタを使用するだけでよいので、追加の信号処理レベルのコーディングツールを必要とせずに、複数のレイヤ、例えば、VVCにおけるSDおよびHD解像度の2つのレイヤを含むビットストリームをサポートするように設計することができる。それにもかかわらず、スケーラビリティサポートのためには、高レベルの構文変更(スケーラビリティをサポートしない場合と比較して)が必要である。スケーラビリティサポートは、VVCバージョン1に規定されている。AVCおよびHEVCの拡張を含む、任意の以前の映像コーディング規格におけるスケーラビリティサポートとは異なり、VVCのスケーラビリティの設計は、単層デコーダの設計にできるだけ適したものにされてきた。多層ビットストリームの復号能力は、ビットストリームに1つのレイヤしかなかったかの如く規定される。例えば、DPBサイズのような復号能力は、復号されるビットストリームのレイヤの数に依存しないようで規定される。基本的に、単層ビットストリームのために設計されたデコーダは、多層ビットストリームを復号することができるようにするために、多くの変更を必要としない。AVCおよびHEVCの多層拡張の設計と比較して、HLSの態様は、ある程度の柔軟性を犠牲にして大幅に簡略化されてきた。例えば、IRAP AUは、CVSに存在する各レイヤの画像を含むことが必要である。
【0048】
3.5.サブピクチャに基づくビューポート依存の360°映像ストリーミング
360°映像のストリーミング、すなわち、全方向性映像のストリーミングにおいて、任意の特定の瞬間に、全方向性映像球体全体のサブセット(すなわち、現在のビューポート)のみがユーザにレンダリングされ、一方、ユーザは、自分の頭をいつでも回して視線の向きを変更し、その結果、現在のビューポートを変更することができる。クライアント側が現在のビューポートでカバーされていない領域を少なくともある程度低品質に表現し、かつユーザにレンダリングする準備ができていることが望ましいが、ユーザが突然その視線方向を球面上の任意の場所に変えた場合に備えて、現在ユーザにレンダリングされている現在のビューポートに対してのみ、全方向性映像の高品質表現が必要となる。全方位映像全体の高品質表現を適切な粒度でサブピクチャに分割することにより、このような最適化が有効化される。VVCを使用して、2つの表現は、互いに独立した2つのレイヤとして符号化され得る。
【0049】
図5は、典型的なサブピクチャに基づくビューポートに依存する360°映像コーディング方式を示す。
【0050】
典型的なサブピクチャに基づくビューポートに依存する360°の映像配信方式が図5に示されており、ここでは、フル映像のより高い解像度の表現がサブピクチャからなり、一方、フル映像のより低い解像度の表現は、サブピクチャを使用せず、より高い解像度の表現よりも頻度の低いランダムアクセスポイントでコーディングできる。クライアントは低解像度のフル映像を受信し、より高い解像度の映像については、現在のビューポートをカバーするサブピクチャのみを受信して復号する。
【0051】
また、最近のVVC草案の仕様は、図6に示すように、改善された360°映像コーディング方式をサポートする。図5に示されたアプローチと比較した唯一の相違は、図6に示されたアプローチに対してレイヤ間予測(ILP)が適用されることである。
【0052】
図6は、サブピクチャおよび空間的スケーラビリティに基づく改良されたビューポート依存型360°映像コーディング方式を示す。
【0053】
3.6.パラメータセット
AVC、HEVC、VVCはパラメータ集合を規定する。パラメータセットのタイプは、SPS、PPS、APS、VPS等である。SPSおよびPPSは、AVC、HEVC、VVCのすべてでサポートされている。VPSは、HEVCから導入されたものであり、HEVCおよびVVCの両方に含まれる。APSは、AVCまたはHEVCに含まれていなかったが、最近のVVC草案のテキストに含まれている。
【0054】
SPSは、シーケンスレベルのヘッダ情報を伝送するように設計され、PPSは、頻繁に変化しないピクチャレベルのヘッダ情報を伝送するように設計された。SPSおよびPPSを用いると、シーケンスまたはピクチャごとに頻繁に変化する情報を繰り返す必要がないので、この情報の冗長な信号通知を回避することができる。さらに、SPSおよびPPSを使用することは、重要なヘッダ情報の帯域外伝送を有効化し、それにより、冗長な伝送の必要性を回避するだけでなく、誤り耐性を改善する。
【0055】
VPSは、マルチレイヤのビットストリームのすべてのレイヤに共通するシーケンスレベルのヘッダ情報を伝送するために導入された。
【0056】
APSは、コーディングするためにかなりのビットを必要とし、複数のピクチャによって共有され得る、このようなピクチャレベルまたはスライスレベルの情報を伝送するために導入された。そして、シーケンスにおいて、非常に多くの異なる変形例が存在し得る。
【0057】
4.開示される技術的解決策によって解決される技術課題
最近のVVCテキスト(JVET-R2001-vA/v10)における既存の設計は、以下の問題を有する。
【0058】
1) 最近のVVCテキストにおいて、変数CurrPicScalWinWidthLおよびCurrPicScalWinHeightLは、以下のように導出される。
CurrPicScalWinWidthL=pps_pic_width_in_luma_samples-
SubWidthC*(pps_scaling_win_right_offset+pps_scaling_win_left_offset) (79)
CurrPicScalWinHeightL=pps_pic_height_in_luma_samples-
SubHeightC*(pps_scaling_win_bottom_offset+pps_scaling_win_top_offset) (80)
【0059】
そして、スケーリングウィンドウオフセット構文要素の値の範囲は、以下のように規定される。
【0060】
SubWidthC*(Abs(pps_scaling_win_left_offset)+Abs(pps_scaling_win_right_offset))の値は、pps_pic_width_in_luma_samplesより小さいとし、
SubHeightC*(Abs(pps_scaling_win_top_offset)+Abs(pps_scaling_win_bottom_offset))の値は、pps_pic_height_in_luma_samplesより小さいものとする。
【0061】
その結果、スケーリングウィンドウ幅CurrPicScalWinWidthLの値は、常にピクチャ幅の2倍、即ち、pps_pic_width_in_luma_samples*2未満であり、スケーリングウィンドウ高さCurrPicScalWinHeightLは、常にピクチャ高さの2倍、即ち、pps_pic_height_in_luma_samples*2未満である。
【0062】
しかしながら、このようなスケーリングウィンドウの幅および高さの値の範囲は、制限的すぎる。
【0063】
例えば、図6に示されるような改良された360°映像コーディング方式の場合、各ELピクチャ(360°×180°の全球を含む)を12×8=96個のサブピクチャに分割し、ユーザのビューポートを120°×90°とすると、すなわち、各ELピクチャの約4×4個のサブピクチャをデコーダが受信し、復号してユーザに提供する。デコーダに送信するビットストリームを生成するためのサブビットストリーム抽出(即ち、図6の下部のように)において、BLピクチャのPPS(スケーリングウィンドウオフセットパラメータを含む)は不変のままであり、ELピクチャのPPSは書き換えられる。元のビットストリーム(サブビットストリーム抽出前、図6の上部のように)において、ELピクチャのスケーリングウィンドウオフセットがすべて0に等しいとすると、元のビットストリームにおけるELピクチャのCurrPicScalWinWidthLおよびCurrPicScalWinHeightLの値は、それぞれピクチャの幅および高さと同じになる。しかし、デコーダが受信したビットストリーム(サブビットストリーム抽出後、図6の下段のように)において、ELピクチャに対するCurrPicScalWinWidthLおよびCurrPicScalWinHeightLの値は、それぞれ、ピクチャ幅の3倍、pps_pic_width_in_luma_samples*3、およびピクチャ高さの2倍、pps_pic_height_in_luma_samples*2と等しくなる必要がある。
【0064】
しかしながら、これは、スケーリングウィンドウオフセット構文要素の既存の値の範囲に違反することになる。
【0065】
2) 最近のVVCテキストにおいて、現在のスライスに対する参照ピクチャリストiにおけるj番目のエントリの参照ピクチャに対してRPRがオンであるかどうかを規定する変数RprConstraintsActive[i][j]は、以下のように導出される。
【0066】
RprConstraintsActive[i][j]=(pps_pic_width_in_luma_samples!=refPicWidth||pps_pic_height_in_luma_samples!=refPicHeight||pps_scaling_win_left_offset!=refScalingWinLeftOffset||pps_scaling_win_right_offset!=refScalingWinRightOffset||pps_scaling_win_top_offset!=refScalingWinTopOffset||pps_scaling_win_bottom_offset!=refScalingWinBottomOffset)
【0067】
基本的に、現在のピクチャの6つのパラメータ、1)ピクチャの幅、2)ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、6)スケーリングウィンドウの下側オフセットのうちの1つが参照ピクチャと異なる限り、この変数の値は1に等しく、RPRはオンである。
【0068】
しかし、これは、元のビットストリームにおいて(図6の上部のように)、ELピクチャとBLの空間的解像度が同じであるとしても、図6に示されるような改善された360°映像コーディング方式のELピクチャに対して、一部のコーディングツール、例えば、DMVR、BDOF、PROを使用することを許可しない。
【0069】
3) sps_ref_pic_resampling_enabled_flagの意味論は、以下のとおりである。
【0070】
1に等しいsps_ref_pic_resampling_enabled_flagは、参照ピクチャのリサンプリングが有効化され、CLVSにおけるピクチャの1つ以上のスライスが、参照ピクチャリストのアクティブエントリにおける異なる空間的解像度の参照ピクチャを参照し得ることを規定する。sps_ref_pic_resampling_enabled_flagが0に等しい場合は、参照ピクチャのリサンプリングが無効化され、CLVSにおけるピクチャのどのスライスも、参照ピクチャリストのアクティブエントリにおいて異なる空間的解像度を有する参照ピクチャを参照することはない。
【0071】
しかしながら、RPRが依存しているかどうかは、現在のピクチャの6つのパラメータ、1)ピクチャの幅、2)ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、6)スケーリングウィンドウの下側オフセットの全てが同じであるかどうかに依存し、ピクチャの幅および高さだけに依存しない。
【0072】
したがって、意味論は、RPRがオンであるかオフであるかを決定する方法と整合性がない。
【0073】
4) sps_ref_pic_resampling_enabled_flagの値は、SPSに関連するあるレイヤが独立したレイヤでないかどうか、およびそのレイヤの参照レイヤの情報に基づいているかどうかに基づいて規定される必要がある場合もある。
【0074】
5) 現在のピクチャと同じレイヤにおける参照ピクチャからのRPLを有効化または無効化するための信号通知の制御が欠けている。
【0075】
5.実施形態および解決策の一覧
上記課題を解決するために、以下に要約される方法が開示されている。本発明は、一般的な概念を説明するための例と見なされるべきであり、狭義に解釈されるべきではない。さらに、本発明は、個々に適用されてもよいし、任意に組み合わせて適用されてもよい。
【0076】
1) 問題1を解決するために、スケーリングウィンドウを示すSEの値の範囲(例えば、pps_scaling_win_left_offset,pps_scaling_win_right_offset,pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offset)は、それぞれ、スケーリングウィンドウの幅および高さは、ピクチャ幅の2倍以上であり、ピクチャ高さの2倍以上となるように規定されている。
a.一例において、SubWidthC*(pps_scaling_win_left_offset+pps_scaling_win_right_offset))の値は、-pps_pic_width_in_luma_samples*Mより以上であり、pps_pic_width_in_luma_samplesより小さいとし、SubHeightC*(pps_scaling_win_top_offset+pps_scaling_win_bottom_offset)の値は、-pps_pic_height_in_luma_samples*N以上であり、pps_pic_height_in_luma_samplesより小さく、MおよびNは、2以上の正の整数値とすると規定されている。
i.いくつかの例では、MおよびNは、同じであり、16、8、32、または64に等しい。
ii.他の例では、MおよびNは、サブピクチャのレイアウトに依存するように規定される。
a)一例において、Mは、Ceil(pps_pic_width_in_luma_samples÷minSubpicWidth)に等しく、ここで、minSubpicWidthは、PPSを参照するピクチャにおけるすべてのサブピクチャの最小サブピクチャ幅であり、Nは、Ceil(pps_pic_height_in_luma_samples÷minSubpicHeight)と等しく、minSubpicHeightは、PPSを参照するピクチャにおけるすべてのサブピクチャの最小サブピクチャの高さである。
【0077】
2) 参照ピクチャのスケーリングウィンドウの幅/高さおよび現在のピクチャのスケーリングウィンドウを制約するかどうか、および/またはどのように制約するかは、参照ピクチャと現在のピクチャとが同じレイヤにあるかどうか(例えば、同じレイヤIDを有するかどうか)に依存してもよい。
a.一例において、参照ピクチャと現在のピクチャとが異なるレイヤにある場合、参照ピクチャのスケーリングウィンドウの幅/高さおよび現在のピクチャのスケーリングウィンドウに対して制約はない。
b.以下のすべての条件を満たすべきであることが、ビットストリーム適合性の要件とする。
- CurrPicScalWinWidthL*MがrefPicScalWinWidthL以上である。
- CurrPicScalWinHeightL*MがrefPicScalWinHeightL以上である。
- CurrPicScalWinWidthLがrefPicScalWinWidthL*N以下である。
- CurrPicScalWinHeightLがrefPicScalWinHeightL*N以下である。
- CurrPicScalWinWidthL*sps_pic_width_max_in_luma_samplesがrefPicScalWinWidthL*(pps_pic_width_in_luma_samples-Max(K0,MinCbSizeY))以上である。
- CurrPicScalWinHeightL*sps_pic_height_max_in_luma_samplesがrefPicScalWinHeightL*(pps_pic_height_in_luma_samples-Max(K1,MinCbSizeY))以上である。
【0078】
ここで、CurrPicScalWinWidthLおよびCurrPicScalWinHeightLは、それぞれ、現在のピクチャのスケーリングウィンドウの幅および高さを表し、refPicScalWinWidthLおよびrefPicScalWinHeightLは、参照ピクチャのスケーリングウィンドウの幅および高さを表す。
【0079】
参照ピクチャと現在のピクチャが同じレイヤにある場合、M=M1であり、N=N1であるとする。参照ピクチャと現在のピクチャとが異なるレイヤにある場合、M=M2、N=N2である。
i.一例において、M1≦M2である。
ii.一例において、N1≧N2である。
iii.一例において、K0/K1は整数値である。
iv.一例において、K0/K1は、最小許容ピクチャ幅/高さであり、例えば、8である。
【0080】
3) 問題2を解決するために、現在のスライスに対する参照ピクチャリストiにおけるj番目のエントリの参照ピクチャのためにRPRがオンであるかどうかを規定する、変数RprConstraintsActive[i][j]の導出は、スケーリングウィンドウの幅および高さにのみ依存するように規定されてもよい。
a.一例において、変数RprConstraintsActive[i][j]は、以下のように導出される。
RprConstraintsActive[i][j]=(CurrPicScalWinWidthL!=fRefWidth||CurrPicScalWinHeightL!=fRefHeight)
【0081】
ここで、fRefWidthおよびfRefHeightは、それぞれ、参照ピクチャのCurrPicScalWinWidthLおよびCurrPicScalWinHeightLの値である。
b.一例において、変数RprConstraintsActive[i][j]の導出は、参照ピクチャおよび現在のピクチャのレイヤ情報に依存してもよい。
i.一例において、現在のスライスに対する参照ピクチャリストiにおけるj番目のエントリの参照ピクチャに対してRPRがオンであるかどうかを規定する、変数RprConstraintsActive[i][j]の導出は、参照ピクチャおよび現在のピクチャが同じレイヤにあるかどうか(例えば、同じレイヤidを有するかどうか)に依存して異なって規定されてもよい。
【0082】
4) 問題3を解決するために、sps_ref_pic_resampling_enabled_flagの意味論は、次のように変更してもよい。
【0083】
1に等しいsps_ref_pic_resampling_enabled_flagは、参照ピクチャのリサンプリングが有効化され、CLVSにおける1つ以上のピクチャスライスが、現在のピクチャとは異なる6つのパラメータ、1)ピクチャの幅、2)ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、6)スケーリングウィンドウの下側オフセットのうちの1つ以上を有する参照ピクチャリストのアクティブエントリにおける参照ピクチャを参照してもよい。
sps_ref_pic_resampling_enabled_flagが0に等しい場合、参照ピクチャのリサンプリングが無効化され、CLVSにおけるピクチャスライスは、現在のピクチャとは異なる上記の6つのパラメータのうちの1つ以上を有する参照ピクチャリストのアクティブエントリにおける参照ピクチャを参照しないことを規定する。
【0084】
5)問題4を解決するために、sps_ref_pic_resampling_enabled_flagの値は、SPSに関連するレイヤが独立したレイヤでないかどうか、およびそのレイヤの参照レイヤの情報に基づいているかどうかに基づいて規定される。
a.一例において、SPSのnuh_layer_idに等しいnuh_layer_idのレイヤが独立したレイヤでなく、現在のレイヤの少なくとも1つの参照レイヤが現在のレイヤとは異なる空間分解能を有する場合、sps_ref_pic_resampling_enabled_flagの値は1に等しいものとすることが制約される。
b.一例において、SPSを参照する少なくとも1つのレイヤが独立したレイヤでなく、このようなレイヤの少なくとも1つの参照レイヤが現在のレイヤとは異なる空間分解能を有する場合、sps_ref_pic_resampling_enabled_flagの値は1に等しいものとすることが制約される。
c.一例において、SPSを参照する少なくとも1つのピクチャcurrPicの少なくとも1つのスライスが、ピクチャcurrPicのそれとは異なる6つのパラメータ、1)ピクチャの幅、2)ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、6)スケーリングウィンドウの下側オフセットのうちの1つ以上を有する参照ピクチャリストのILRPエントリにおける参照ピクチャを参照する場合、sps_ref_pic_resampling_enabled_flagの値は1に等しいものとすることが制約される。
【0085】
6) 問題5を解決するため、フラグsps_res_change_in_clvs_allowed_flagをsps_intra_layer_rpr_enabled_flagに改称し、意味論を以下のように変更する。
【0086】
1に等しいsps_intra_layer_rpr_enabled_flagは、CLVSにおいて、現在のピクチャと同じレイヤの参照ピクチャからのインター予測のために参照ピクチャのリサンプリングを有効化することを規定する。すなわち、CLVSにおけるピクチャのスライスは、現在のピクチャと同じnuh_layer_id値を有し、現在のピクチャとは異なる以下の6つのパラメータのうちの1つ以上を有する、参照ピクチャリストのアクティブエントリにおける、参照ピクチャを参照してもよい、1)ピクチャの幅、2)ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、6)スケーリングウィンドウの下側オフセット。sps_intra_layer_rpr_enabled_flagが0に等しいことは、現在のピクチャと同じレイヤの参照ピクチャからの参照ピクチャのリサンプリングが無効化され、CLVSにおけるピクチャのスライスは、現在のピクチャと同じnuh_layer_id値を有し、かつ現在のピクチャとは異なる上記の6つのパラメータのうちの1つ以上を有する参照ピクチャリストのアクティブエントリにおける、参照ピクチャを参照しないことを規定する。
a.あるいは、sps_intra_layer_rpr_enabled_flagが1に等しい場合、現在のピクチャと同じレイヤの参照ピクチャからのインター予測に対するCLVSにおけるピクチャに対して参照ピクチャのリサンプリングを有効化し、かつ参照ピクチャが1に等しいRprConstraintsActive[i][j]に関連付けられ、これは、現在のスライスに対する参照ピクチャリストiにおけるj番目のエントリであり、現在のピクチャと同じnul_layer_id値を有している。
b.一例において、sps_intra_layer_rpr_enabled_flagとsps_res_change_in_clvs_allowed_flag(JVET-R2001の意味論)は順次信号通知されてもよい。
i.sps_res_change_in_clvs_allowed_flagは、sps_intra_layer_rpr_enabled_flagの後に信号通知されてもよい。
ii.sps_res_change_in_clvs_allowed_flagは、sps_intra_layer_rpr_enabled_flagが0の場合には信号通知されず、0になると推論される。
【0087】
6.実施形態
【0088】
【化1】
【0089】
6.1 第1の実施形態
本実施形態は、1、1.a、1.a.i、および4項に対するものである。
【0090】
7.4.3.3 シーケンスパラメータセットRBSP意味論
...
【0091】
【化2】
【0092】
【化3】
【0093】
1に等しいsps_res_change_in_clvs_allowed_flagは、SPSを参照し、CLVS内でピクチャの空間解像度が変化する可能性があることを規定する。0に等しいsps_res_change_in_clvs_allowed_flagは、SPSを参照し、CLVS内でピクチャの空間解像度が変化しない可能性があることを規定する。存在しない場合、sps_res_change_in_clvs_allowed_flagの値は0に等しいと推論される。
...
【0094】
7.4.3.4 ピクチャーパラメータセットRBSP意味論
...
1に等しいpps_scaling_window_explicit_signalling_flagが1は、スケーリングウィンドウオフセットパラメータがPPSに存在することを規定する。pps_scaling_window_explicit_signalling_flagが0に等しい場合、スケーリングウィンドウオフセットパラメータがPPSに存在しないことを規定する。sps_ref_pic_resampling_enabled_flagが0に等しい場合、pps_scaling_window_explicit_signalling_flagの値は0に等しいものとする。
【0095】
pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetは、スケーリング比の計算に対するピクチャサイズに適用されるオフセットを規定する。存在しない場合、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、pps_scaling_win_bottom_offsetの値は、それぞれpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offsetおよびpps_conf_win_bottom_offsetと等しいと推論される。
【0096】
【化4】
【0097】
変数CurrPicScalWinWidthLおよびCurrPicScalWinHeightLは、以下のように導出される。
CurrPicScalWinWidthL=pps_pic_width_in_luma_samples-
SubWidthC*(pps_scaling_win_right_offset+pps_scaling_win_left_offset) (79)
CurrPicScalWinHeightL=pps_pic_height_in_luma_samples-
SubHeightC*(pps_scaling_win_bottom_offset+pps_scaling_win_top_offset) (80)
【0098】
refPicScalWinWidthLおよびrefPicScalWinHeightLを、それぞれこのPPSを参照する現在のピクチャの参照ピクチャのCurrPicScalWinWidthLおよびrefPicScalWinHeightLとする。ビットストリーム適合性の要件は、以下のすべての条件を満たすものとする。
- CurrPicScalWinWidthL*2がrefPicScalWinWidthL以上である。
- CurrPicScalWinHeightL*2がrefPicScalWinHeightL以上である。
- CurrPicScalWinWidthLがrefPicScalWinWidthL*8以下である。
- CurrPicScalWinHeightLがrefPicScalWinHeightL*8以下である。
- CurrPicScalWinWidthL*sps_pic_width_max_in_luma_samplesがrefPicScalWinWidthL*(pps_pic_width_in_luma_samples-Max(8,MinCbSizeY))以上である。
- CurrPicScalWinHeightL*sps_pic_height_max_in_luma_samplesがrefPicScalWinHeightL*(pps_pic_height_in_luma_samples-Max(8,MinCbSizeY))以上である。
...
【0099】
図7は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1900を示すブロック図である。様々な実装形態は、システム1900のコンポーネントの一部または全部を含んでもよい。システム1900は、映像コンテンツを受信するための入力部1902を含んでもよい。映像コンテンツは、未加工または非圧縮フォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてもよく、または圧縮または符号化されたフォーマットで受信されてもよい。入力部1902は、ネットワークインタフェース、周辺バスインタフェース、または記憶インタフェースを表してもよい。ネットワークインタフェースの例は、イーサネット(登録商標)、PON(Passive Optical Network)等の有線インタフェース、およびWi-Fi(登録商標)またはセルラーインタフェース等の無線インタフェースを含む。
【0100】
システム1900は、本明細書に記載される様々なコーディングまたはエンコーディング方法を実装することができるコーディングコンポーネント1904を含んでもよい。コーディングコンポーネント1904は、入力1902からコーディングコンポーネント1904の出力への映像の平均ビットレートを低減し、映像のコーディングされた表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像トランスコーディング技術と呼ばれることがある。コーディングコンポーネント1904の出力は、コンポーネント1906によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力1902において受信された、記憶されたまたは通信された映像のビットストリーム(またはコーディングされた)表現は、コンポーネント1908によって使用されて、表示インタフェース1910に送信される画素値または表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像展開と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作またはツールと呼ぶが、コーディングツールまたは動作は、エンコーダで使用され、コーディングの結果を逆にする対応する復号ツールまたは動作は、デコーダによって行われることが理解されよう。
【0101】
周辺バスインタフェースまたは表示インタフェースの例は、USB(Universal Serial BUs)またはHDMI(High Definition Multimedia Interface;登録商標)またはディスプレイポート等を含んでもよい。ストレージインタフェースの例は、SATA(Serial Advanced Technology Attachment)、PCI、IDEインタフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、またはデジタルデータ処理および/または映像表示を実施可能な他のデバイス等の様々な電子デバイスにおいて実施されてもよい。
【0102】
図8は、映像処理装置3600のブロック図である。装置3600は、本明細書に記載の方法の1つ以上を実装するために使用されてもよい。装置3600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等に実施されてもよい。装置3600は、1つ以上の処理装置3602と、1つ以上のメモリ3604と、映像処理ハードウェア3606と、を含んでもよい。1つまたは複数の処理装置3602は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数可)3604は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア3606は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。
【0103】
図10は、本開示の技法を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
【0104】
図10に示すように、映像コーディングシステム100は、送信元装置110と、送信先装置120と、を備えてもよい。送信元デバイス110は、符号化された映像データを生成するものであり、映像符号化機器とも呼ばれ得る。送信先デバイス120は、送信元デバイス110によって生成された符号化された映像データを復号してよく、映像復号デバイスとも呼ばれ得る。
【0105】
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インタフェース116と、を備えてもよい。
【0106】
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインタフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1つ以上のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データを符号化し、ビットストリームを生成する。ビットストリームは、映像データのコーディングされた表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディングされた表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインタフェース116は、変復調器(モデム)および/または送信機を含んでもよい。符号化された映像データは、ネットワーク130aを介して、I/Oインタフェース116を介して送信先デバイス120に直接送信されてよい。符号化された映像データは、送信先デバイス120がアクセスするために、記録媒体/サーバ130bに記憶してもよい。
【0107】
送信先デバイス120は、I/Oインタフェース126、映像デコーダ124、および表示デバイス122を含んでもよい。
【0108】
I/Oインタフェース126は、受信機および/またはモデムを含んでもよい。I/Oインタフェース126は、送信元デバイス110または記憶媒体/サーバ130bから符号化された映像データを取得してもよい。映像デコーダ124は、符号化された映像データを復号してもよい。表示デバイス122は、復号された映像データをユーザに表示してもよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインタフェースで接続するように構成される送信先デバイス120の外部にあってもよい。
【0109】
映像エンコーダ114および映像デコーダ124は、高効率映像コーディング(HEVC)規格、汎用映像コーディング(VVVM)規格、および他の現在のおよび/またはさらなる規格等の映像圧縮規格に従って動作してもよい。
【0110】
図11は、映像エンコーダ200の一例を示すブロック図であり、この映像エンコーダ200は、図10に示されるシステム100における映像エンコーダ114であってもよい。
【0111】
映像エンコーダ200は、本開示の技術のいずれかまたは全部を行うように構成されてもよい。図11の例において、映像エンコーダ200は、複数の機能コンポーネントを備える。本開示で説明される技法は、映像エンコーダ200の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0112】
映像エンコーダ200の機能性コンポーネントは、分割部201、プレディケーション部202を含んでもよく、予測部202は、モード選択部203、動き推定部204、動き補償部205、およびイントラ予測部206、残差生成部207、変換部208、量子化部209、逆量子化部210、逆変換部211、再構成部212、バッファ213、およびエントロピー符号化部214を含んでもよい。
【0113】
他の例において、映像エンコーダ200は、さらに多くの、さらに少ない、または異なる機能コンポーネントを含んでもよい。一例において、予測部202は、イントラブロックコピー(IBC)部を含んでもよい。IBC部は、少なくとも1つの参照ピクチャが現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測を行うことができる。
【0114】
さらに、動き推定部204および動き補償部205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、図11の例においては別々に表されている。
【0115】
分割部201は、ピクチャを1つ以上の映像ブロックに分割してもよい。映像エンコーダ200および映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
【0116】
モード選択部203は、例えば、誤りの結果に基づいて、イントラまたはインターによるコーディングモードのうちの1つを選択し、得られたイントラまたはインターコーディングされたブロックを残差生成部207に供給し、残差ブロックデータを生成して再構成部212に供給し、符号化されたブロックを参照ピクチャとして使用するために再構成してもよい。いくつかの例において、モード選択部203は、インター予測信号およびイントラ予測信号に基づいて予測を行うCIIP(Combination of Intra and Inter Prediction)モードを選択してもよい。モード選択部203は、インター予測の場合、ブロックのために動きベクトルの解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択してもよい。
【0117】
現在の映像ブロックに対してインター予測を実行するために、動き推定部204は、バッファ213からの1つ以上の参照フレームと現在の映像ブロックとを比較することにより、現在の映像ブロックのために動き情報を生成してもよい。動き補償部205は、現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの動き情報および復号されたサンプルに基づいて、現在の映像ブロックに対する予測映像ブロックを判定してもよい。
【0118】
動き推定部204および動き補償部205は、現在の映像ブロックがIスライスであるか、Pスライスであるか、またはBスライスであるかによって、例えば、現在の映像ブロックに対して異なる動作を行ってもよい。
【0119】
いくつかの例において、動き推定部204は、現在の映像ブロックに対して単一方向予測を行い、動き推定部204は、現在の映像ブロックに対して、参照映像ブロック用のリスト0またはリスト1の参照ピクチャを検索してもよい。そして、動き推定部204は、参照映像ブロックを含むリスト0またはリスト1における参照ピクチャを示す参照インデックスと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルと、を生成する。動き推定部204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償部205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
【0120】
他の例において、動き推定部204は、現在の映像ブロックを双方向予測してもよく、動き推定部204は、リスト0における参照ピクチャの中から現在の映像ブロックを求めるための参照映像ブロックを検索してもよく、また、リスト1における参照ピクチャの中から現在の映像ブロックを求めるための別の参照映像ブロックを検索してもよい。そして、動き推定部204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定部204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償部205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
【0121】
いくつかの例において、動き推定部204は、デコーダの復号処理のために、動き情報のフルセットを出力してもよい。
【0122】
いくつかの例では、動き推定部204は、現在の映像に対する動き情報のフルセットを出力しなくてもよい。むしろ、動き推定部204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定部204は、現在の映像ブロックの動き情報が近隣の映像ブロックの動き情報に十分に類似していることを判定してもよい。
【0123】
一例において、動き推定部204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同じ動き情報を有することを映像デコーダ300に示す値を示してもよい。
【0124】
他の例において、動き推定部204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、動きベクトル差分(MVD;Motion Vector Difference)とを識別してもよい。動きベクトル差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、示された映像ブロックの動きベクトルおよび動きベクトル差を使用して、現在の映像ブロックの動きベクトルを決定してもよい。
【0125】
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装されてよい予測信号通知技術の2つの例は、AMVP(Advanced Motion Vector Prediction)およびマージモード信号通知を含む。
【0126】
イントラ予測部206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測部206が現在の映像ブロックをイントラ予測する場合、イントラ予測部206は、同じピクチャにおける他の映像ブロックの復号されたサンプルに基づいて、現在の映像ブロックに対する予測データを生成してもよい。現在の映像ブロックに対する予測データは、予測された映像ブロックおよび様々な構文要素を含んでもよい。
【0127】
残差生成部207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックに対する残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
【0128】
他の例において、例えば、スキップモードにおいて、現在の映像ブロックに対する残差データがなくてもよく、残差生成部207は、減算動作を行わなくてもよい。
【0129】
変換処理部208は、現在の映像ブロックに関連付けられた残差映像ブロックに1つ以上の変換を適用することによって、現在の映像ブロックに対する1つ以上の変換係数映像ブロックを生成してもよい。
【0130】
変換処理部208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化部209は、現在の映像ブロックに関連付けられた1つ以上の量子化パラメータ(QP:Quantization Parameter)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
【0131】
逆量子化部210および逆変換部211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成部212は、予測部202によって生成された1つ以上の予測映像ブロックから対応するサンプルに再構成された残差映像ブロックを追加して、バッファ213に格納するための現在のブロックに関連付けられた再構成された映像ブロックを生成してもよい。
【0132】
再構成部212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング動作が行われてもよい。
【0133】
エントロピー符号化部214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピー符号化部214がデータを受信すると、エントロピー符号化部214は、1つ以上のエントロピー符号化動作を行い、エントロピー符号化されたデータを生成し、エントロピー符号化されたデータを含むビットストリームを出力してもよい。
【0134】
図12は、映像デコーダ300の一例を示すブロック図であり、この映像デコーダ300は、図10に示されるシステム100における映像デコーダ114であってもよい。
【0135】
映像デコーダ300は、本開示の技術のいずれかまたは全てを行うように構成されてもよい。図12の実施例において、映像デコーダ300は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像デコーダ300の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
【0136】
図12の例において、映像デコーダ300は、エントロピー復号部301、動き補償部302、イントラ予測部303、逆量子化部304、逆変換部305、および再構成部306、並びにバッファ307を備える。映像デコーダ300は、いくつかの例では、映像エンコーダ200(図11)に関して説明した符号化パスとほぼ逆の復号パスを行ってもよい。
【0137】
エントロピー復号部301は、符号化されたビットストリームを取り出す。符号化されたビットストリームは、エントロピー符号化された映像データ(例えば、映像データの符号化されたブロック)を含んでもよい。エントロピー復号部301は、エントロピー符号化された映像データを復号し、エントロピー復号された映像データから、動き補償部302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償部302は、例えば、AMVPおよびマージモードを行うことで、このような情報を判定してもよい。
【0138】
動き補償部302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を行う。構文要素には、サブピクセルの精度で使用される補間フィルタに対する識別子が含まれてもよい。
【0139】
動き補償部302は、映像ブロックの符号化中に映像エンコーダ200によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数画素に対する補間値を計算してもよい。動き補償部302は、受信した構文情報に基づいて、映像エンコーダ200が使用する補間フィルタを決定し、補間フィルタを使用して予測ブロックを生成してもよい。
【0140】
動き補償部302は、符号化された映像シーケンスのフレームおよび/またはスライスを符号化するために使用されるブロックのサイズを判定するための構文情報、符号化された映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのように符号化されるかを示すモード、各インター符号化されたブロックに対する1つ以上の参照フレーム(および参照フレームリスト)、および符号化された映像シーケンスをデコードするための他の情報のうちのいくつかを使用してもよい。
【0141】
イントラ予測部303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接ブロックから予測ブロックを形成してもよい。逆量子化部303は、ビットストリームに提供され、エントロピー復号部301によって復号された量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆変換部303は、逆変換を適用する。
【0142】
再構成部306は、残差ブロックと、動き補償部202またはイントラ予測部303によって生成された対応する予測ブロックとを合計し、復号されたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、復号されたブロックをフィルタリングするためにデブロッキングフィルタもまた適用してもよい。復号された映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、表示デバイスに表示するために復号された映像を生成する。
【0143】
次に、いくつかの実施形態において好適な解決策を列挙する。
【0144】
以下の解決策は、前章(例えば、項目1)で論じた技術の例示的な実施形態を示す。
【0145】
1.1つ以上の映像ピクチャを含む映像と映像のコーディングされた表現との変換を行うこと(902)を含み、前記コーディングされた表現は、フォーマット規則に準拠しており、このフォーマット規則は、スケーリングウィンドウに関連するコーディングされた表現に含まれる1つ以上の構文要素が、このスケーリングウィンドウの高さまたは幅が対応する映像ピクチャの高さまたは幅以上であることを示す値を有することを許可されることを規定する、映像処理方法(例えば、図9に示す方法900)。
【0146】
以下の解決策は、前章(例えば、項目2)で論じた技術の例示的な実施形態を示す。
【0147】
2.1つ以上の映像レイヤに1つ以上の映像ピクチャを含む映像と映像のコーディングされた表現との変換を行うことを含み、コーディングされた表現はフォーマット規則に準拠し、フォーマット規則は、スケーリングウィンドウに関連するコーディングされた表現に含まれる1つ以上の構文要素の許可値が制約規則によって制約されることを規定し、この制約規則は、現在のピクチャの第1のレイヤと現在のピクチャの参照ピクチャの第2のレイヤとの間の関係に依存する、映像処理方法。
【0148】
3.前記制約規則は、関係は第1のレイヤが第2のレイヤと同じである場合、すべての値を許可するように規定する、解決策2に記載の方法。
【0149】
以下の解決策は、前章(例えば、項目3)で論じた技術の例示的な実施形態を示す。
【0150】
4.1つ以上の映像スライスを含む1つ以上の映像ピクチャを含む映像と映像のコーディングされた表現との変換を行うことを含み、このコーディングされた表現は、フォーマット規則に準拠する、映像処理方法。
【0151】
フォーマット規則は、映像スライスの参照ピクチャリストiにおけるj番目のエントリに対して参照ピクチャのリサンプリングを有効化するかどうかを示す構文フィールドがコーディングされた表現に含まれることを規定する。
【0152】
以下の解決策は、前章(例えば、項目5)で論じた技術の例示的な実施形態を示す。
【0153】
5.1つ以上の映像ピクチャを含む1つ以上の映像レイヤを含む映像と映像のコーディングされた表現との変換を行うことを含み、前記コーディングされた表現は、フォーマット規則に準拠しており、このフォーマット規則は、構文要素がパラメータセットにおけるコーディングされた表現に含まれることを規定し、この構文要素は、非独立映像レイヤに対して参照ピクチャリサンプリングを有効化するかどうかを示し、この構文要素の値が、この非独立映像レイヤの参照レイヤの関数である、映像処理方法。
【0154】
6.変換は、映像をコーディングされた表現に符号化することを含む、解決策1から5のいずれか1つに記載の方法。
【0155】
7.変換は、映像の画素値を生成するためにコーディングされた表現を復号することを含む、解決策1から5のいずれか1つに記載の方法。
【0156】
8.解決策1から7の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像復号装置。
【0157】
9.解決策1から7の1つまたは複数に記載の方法を実装するように構成されたプロセッサを備える、映像符号化装置。
【0158】
10.コンピュータコードが記憶されたコンピュータプログラム製品であって、コードは、処理装置により実行されると、処理装置に、解決策1~7のいずれかに記載の方法を実装させるコンピュータプログラム製品。
【0159】
11.本明細書に記載の方法、装置またはシステム。
【0160】
本明細書に記載の解決策において、エンコーダは、フォーマット規則に従ってコーディングされた表現を生成することで、フォーマット規則に準拠することができる。本明細書に記載の解決策において、デコーダは、フォーマット規則に従って、構文要素の有無を知りつつ、コーディングされた表現における構文要素を構文解析することで、復号された映像を生成するために、このフォーマット規則を使用してもよい。
【0161】
図13は、例示的な映像処理の方法(1300)のフローチャートである。動作1302は、規則に従って、映像ピクチャを含む映像と映像のビットストリームとの変換を行うことを含み、この規則は、構文要素が映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、この規則は、構文要素に対する許容可能な値の範囲が、映像ピクチャの第2の幅の2倍以上および映像ピクチャの第2の高さの2倍以上の値を含むことを規定する。
【0162】
方法1300のいくつかの実施形態において、構文要素の値は、スケーリング比の計算のために映像ピクチャのサイズに適用されるオフセットを特定する。方法1300のいくつかの実施形態において、構文要素は、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetを含む。
【0163】
方法1300のいくつかの実施形態において、この規則は、SubWidthC*(pps_scaling_win_left_offset+pps_scaling_win_right_offset))の値が、-pps_pic_width_in_luma_samples*M以上かつpps_pic_width_in_luma_samples未満であることを特定し、ここで、CurrPicScalWidthLはスケーリングウィンドウの第1の幅であり、pps_pic_width_in_luma_samplesは映像ピクチャの第2の幅であり、SubWidthCは映像ブロックの幅であり、映像ブロックを含む映像ピクチャの彩度フォーマットに従った表から得られ、CurrPicScalWinWidthL=pps_pic_width_in_luma_samples-SubWidthC*(pps_scaling_win_right_offset+pps_scaling_win_left_offset)であることを規定する。方法1300のいくつかの実施形態において、Mは16、8、32、または64に等しい。
【0164】
方法1300のいくつかの実施形態において、この規則は、SubHeightC*(pps_scaling_win_top_offset+pps_scaling_win_bottom_offset)の値が、-pps_pic_height_in_luma_samples*N以上かつpps_pic_height_in_luma_samples未満であることを特定し、ここで、CurrPicScalHeightLはスケーリングウィンドウの第1の高さであり、pps_pic_height_in_luma_samplesは映像ピクチャの第2の高さであり、SubHeightCは映像ブロックの高さであり、映像ブロックを含む映像ピクチャの彩度フォーマットに従った表から得られ、CurrPicScalWinHeightL=pps_pic_height_in_luma_samples-SubHeightC*(pps_scaling_win_bottom_offset+pps_scaling_win_top_offset)であることを規定する。方法1300のいくつかの実施形態において、Nは16、8、32、または64に等しい。方法1300のいくつかの実施形態において、MおよびNは、映像ピクチャのサブピクチャのレイアウトに依存する。方法1300のいくつかの実施形態において、Mは、Ceil(pps_pic_width_in_luma_samples÷minSubpicWidth)に等しく、minSubpicWidthは、ピクチャパラメータセットを参照するピクチャにおけるすべてのサブピクチャの最小サブピクチャ幅であり、pps_pic_width_in_luma_samplesは、映像ピクチャの第2の幅であり、Ceil()関数は、2番目に大きい整数までの数を丸める。
【0165】
方法1300のいくつかの実施形態において、Nは、Ceil(pps_pic_height_in_luma_samples÷minSubpicHeight)に等しく、minSubpicHeightは、ピクチャパラメータセットを参照する映像ピクチャにおけるすべてのサブピクチャの最小サブピクチャ高さであり、pps_pic_height_in_luma_samplesは、映像ピクチャの第2の高さであり、Ceil()関数は、2番目に大きい整数までの数を丸める。
【0166】
図14は、映像処理の方法1400の一例を示すフローチャートである。動作1402は、映像の映像ピクチャとこの映像のビットストリームとの変換のために、規則に従って、(1)この映像の参照映像ピクチャの第1のスケーリングウィンドウの第1の幅または第1の高さと、(2)現在の映像ピクチャの第2のスケーリングウィンドウの第2の幅または第2の高さとを制約するかどうか、またはどのように制約するかを決定すること、を含む。動作1404は、判定に従って変換を行うこと、を含む。
【0167】
方法1400のいくつかの実施形態において、この規則は、参照映像ピクチャおよび現在の映像ピクチャが異なる映像レイヤにあることに応じて、第1のスケーリングウィンドウの第1の幅または第1の高さおよび第2のスケーリングウィンドウの第2の幅または第2の高さに制約がないことを規定する。方法1400のいくつかの実施形態において、この規則は、CurrPicScalWinWidthL*Mが、refPicScalWinWidthL以上、CurrPicScalWinHeightL*Mが、refPicScalWinHeightL以上、CurrPicScalWinWidthLが、refPicScalWinWidthL*N以下、CurrPicScalWinHeightLが、refPicScalWinHeightL*N以下、CurrPicScalWinWidthL*sps_pic_width_max_in_luma_samplesが、refPicScalWinWidthL*(pps_pic_width_in_luma_samples-Max(K0,MinCbSizeY))以上、CurrPicScalWinHeightL*sps_pic_height_max_in_luma_samplesが、refPicScalWinHeightL*(pps_pic_height_in_luma_samples-Max(K1,MinCbSizeY))以上であることを規定し、CurrPicScalWinWidthLおよびCurrPicScalWinHeightLは、それぞれ、現在の映像の第2のスケーリングウィンドウの第2の幅および第2の高さであり、refPicScalWinWidthLおよびCrefPicScalWinHeightLは、それぞれ、現在の映像の第1のスケーリングウィンドウの第1の幅および第1の高さであり、sps_pic_width_max_in_luma_samplesは、シーケンスパラメータセットを参照する各映像ピクチャの輝度サンプルの部における最大幅であり、pps_pic_width_in_luma_samplesは、ピクチャパラメータセットを参照する各映像ピクチャの幅である。
【0168】
方法1400のいくつかの実施形態において、この規則は、参照映像ピクチャおよび現在の映像ピクチャが同じ映像レイヤにあることに応じて、M=M1、N=N1であることを規定し、この規則は、参照映像ピクチャおよび現在の映像ピクチャが異なる映像レイヤにあることに応じて、M=M2、N=N2であることを規定し、ここで、M1はM2以下であり、N1はN2以上である。方法1400のいくつかの実施形態において、K0またはK1は整数値である。方法1400のいくつかの実施形態において、K0またはK1は、それぞれ、最小許容映像ピクチャ幅または最小許容映像ピクチャ高さである。方法1400のいくつかの実施形態において、K0またはK1は8である。
【0169】
図15は、映像処理の方法1500の一例を示すフローチャートである。動作1502は、1つ以上の映像スライスを含む映像ピクチャを含む映像とこの映像のビットストリームとの変換を行うことを含み、このビットストリームは、映像ピクチャのスケーリングウィンドウの幅および高さによって、この映像ピクチャの映像スライスに対して、i番目の参照ピクチャリストにおけるj番目の参照映像ピクチャのリサンプリングを有効化するかどうかを規定する変数の値を決定することを規定する規則に準拠し、iおよびjは整数である。
【0170】
方法1500のいくつかの実施形態において、変数はRprConstraintsActive[i][j]であり、規則は、RprConstraintsActive[i][j]=(CurrPicScalWinWidthL!=fRefWidth||CurrPicScalWinHeightL!=fRefHeight)であり、fRefWidthおよびfRefHeightは、それぞれj番目の参照映像ピクチャのCurrPicScalWindthLおよびCurrPicWinHeightLの値であることを規定する。方法1500のいくつかの実施形態において、この規則は、この変数の値が、このj番目の参照映像ピクチャが属する第1の映像レイヤおよび現在の映像ピクチャが属する第2の映像レイヤに基づくことを規定する。方法1500のいくつかの実施形態において、この規則は、変数の値が、j番目の参照映像ピクチャの第1の映像レイヤと現在の映像ピクチャの第2の映像レイヤとが同じ映像レイヤであるかどうかに基づくことを規定する。
【0171】
図16は、映像処理の方法1600の一例を示すフローチャートである。動作1602は、フォーマット規則に従って、1つ以上の映像ピクチャを有する映像とこの映像のビットストリームとの変換を行うことを含み、このフォーマット規則は、構文要素がシーケンスパラメータセットに含まれていることを規定し、かつ構文要素は参照ピクチャに対してリサンプリングを有効化するかどうか、およびコーディングされたレイヤ映像シーケンスにおける映像ピクチャの1つ以上の現在のスライスが参照ピクチャリストにおけるアクティブエントリの参照ピクチャを参照することを許されるかどうかを示し、この参照ピクチャは、現在の映像ピクチャとは異なる6つのパラメータ、1)映像ピクチャの幅、2)映像ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、および6)スケーリングウィンドウの下側オフセットのうちのいずれか1つ以上を有する。
【0172】
方法1600のいくつかの実施形態において、値が1である構文要素は、参照ピクチャのリサンプリングが有効化されること、およびコーディングされたレイヤ映像シーケンスにおける現在の映像ピクチャの1つ以上のスライスが、参照ピクチャリストにおけるアクティブエントリの参照ピクチャを参照することを許されることを示す。方法1600のいくつかの実施形態において、値が0である構文要素は、参照ピクチャのリサンプリングが無効化されていること、およびコーディングされたレイヤ映像シーケンスにおける現在の映像ピクチャのスライスは、参照ピクチャリストのアクティブエントリにおける参照ピクチャを参照することを許可されないことを示す。
【0173】
図17は、映像処理の方法1700の一例を示すフローチャートである。動作1702は、フォーマット規則に従って、1つ以上の映像ピクチャを有する映像とこの映像のビットストリームとの変換を行うことを含み、このフォーマット規則は、構文要素がシーケンスパラメータセットに含まれていることを規定し、このフォーマット規則は、この構文要素の値が、(1)このシーケンスパラメータセットを参照する現在の映像レイヤが独立した映像レイヤでないかどうか、および(2)この現在の映像レイヤに関連付けられた1つ以上の参照映像レイヤの情報に基づいており、映像レイヤは、この映像レイヤが1つ以上の他の映像レイヤに依存していない場合、独立した映像レイヤであり、この映像レイヤが1つ以上の他の映像レイヤに依存している場合には、独立した映像レイヤでないことを規定する。
【0174】
方法1700のいくつかの実施形態において、このフォーマット規則は、(1)シーケンスパラメータセットと同じnuh_layer_idを持つ現在の映像レイヤは、これが1つ以上の他の映像レイヤに依存するような独立した映像レイヤではなく、(2)現在の映像レイヤの少なくとも1つの参照映像レイヤが現在の映像レイヤと異なる空間的解像度を持つことに応じて、構文要素の値が1であることを規定する。方法1700のいくつかの実施形態において、少なくとも1つのスライスは、シーケンスパラメータセットを参照する少なくとも1つの映像ピクチャに含まれ、フォーマット規則は、少なくとも1つのスライスが、少なくとも1つの映像ピクチャのものとは異なる以下の6つのパラメータ、
1)ピクチャの幅、2)ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、6)スケーリングウィンドウの下側オフセット。
のいずれか1つ以上を有する参照ピクチャリストのレイヤ間参照ピクチャエントリ内の参照ピクチャを参照することに応じて、構文要素の値が1であることを規定する。
【0175】
図18は、映像処理の方法1800の一例を示すフローチャートである。動作1802は、フォーマット規則に従って、1つ以上の映像ピクチャを有する映像とこの映像のビットストリームとの変換を行うことを含み、このフォーマット規則は、1つ以上の映像ピクチャが参照するシーケンスパラメータセットにおいて構文要素を示すことを規定し、この構文要素は、この1つ以上の映像ピクチャと同じレイヤにある1つ以上の参照ピクチャに対して参照ピクチャのリサンプリングを有効化するかどうかを示す。
【0176】
方法1800のいくつかの実施形態において、フォーマット規則は、構文要素の値が1であることを規定し、この構文要素の値は、(a)1つ以上の映像ピクチャと同じレイヤにある1つ以上の参照ピクチャに対して参照ピクチャのリサンプリングを有効化すること、および(b)コーディングされたレイヤ映像シーケンスにおける1つ以上の映像ピクチャのスライスが、参照ピクチャリストのアクティブエントリにおける参照ピクチャを参照しており、参照ピクチャリストは、(1)1つ以上の映像ピクチャの現在の映像ピクチャと同じnuh_layer_id値を有し、(2)現在の映像ピクチャとは異なる、6つのパラメータ、1)映像ピクチャの幅、2)映像ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、および6)スケーリングウィンドウの下側オフセットのうちのいずれか1つ以上を有する。
【0177】
方法1800のいくつかの実施形態において、フォーマット規則は、構文要素の値が0であることを規定し、この構文要素の値は、(a)1つ以上の映像ピクチャと同じレイヤにある1つ以上の参照ピクチャのために参照ピクチャのリサンプリングが無効化されていること、および(b)コーディングされたレイヤ映像シーケンスにおけるいかなる映像ピクチャのスライスも、参照ピクチャリストのアクティブエントリにおける参照ピクチャを参照せず、参照ピクチャリストは、(1)1つ以上の映像ピクチャの現在の映像ピクチャと同じnuh_layer_id値を有し、(2)現在の映像ピクチャとは異なる、6つのパラメータ、1)映像ピクチャの幅、2)映像ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、および6)スケーリングウィンドウの下側オフセットのうちのいずれか1つ以上を有する。方法1800のいくつかの実施形態において、フォーマット規則は、構文要素の値が1であることを規定し、このことは、1つ以上の映像ピクチャと同じレイヤにある参照ピクチャに対して参照ピクチャのリサンプリングを有効化することを示し、参照ピクチャは、1に等しいRprConstraintsActive[i][j]に関連付けられ、かつ、参照ピクチャは現在のスライスに対する参照ピクチャリストiにおけるj番目のエントリであり、かつ、参照ピクチャリストiにおけるj番目のエントリは、この1つ以上の映像ピクチャの現在の映像ピクチャのそれと同じnuh_layer_id値を有することを示す。
【0178】
方法1800のいくつかの実施形態において、フォーマット規則は、シーケンスパラメータセットを参照し、コーディングされたレイヤ映像シーケンス内でピクチャの空間的解像度が変化するかどうかを示す第2の構文要素の前に、構文要素がビットストリームに含まれることを規定する。方法1800のいくつかの実施形態において、このフォーマット規則は、シーケンスパラメータセットを参照し、コーディングされたレイヤ映像シーケンスにおいて画像の空間的解像度が変化するかどうかを示す第2の構文要素をビットストリームが除外することを規定し、このフォーマット規則は、第2の構文要素の第2の値が0であると推測されることを規定し、このフォーマット規則は、この構文要素の値が0に等しいことに応じて、このビットストリームが第2の構文要素を除外することを規定する。
【0179】
方法1300~1800のいくつかの実施形態において、変換を実行することは、映像をビットストリームに符号化することを含む。方法1300~1800のいくつかの実施形態において、変換を実行することは、映像からビットストリームを生成することを含み、方法は、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む。方法1300~1800のいくつかの実施形態において、変換を実行することは、ビットストリームから映像を復号することを含む。いくつかの実施形態において、映像復号装置は、方法1300~1800の1つ以上の実施形態に記載の方法を実装するように構成された処理装置を備える。いくつかの実施形態において、映像コーディング装置は、方法1300~1800の1つ以上の実施形態に記載の方法を実装するように構成された処理装置を備える。いくつかの実施形態において、コンピュータ命令が記憶されたコンピュータプログラム製品は、命令は処理装置により実行されると、方法1300~1800の実施形態に記載の方法を処理装置に実装させる。いくつかの実施形態において、非一時的なコンピュータ可読記憶媒体が、方法1300~1800の実施形態の方法に従って生成されたビットストリームを記憶する。いくつかの実施形態において、処理装置に方法1300~1800の記載された実施形態の方法を実装させる命令を記憶する非一時的なコンピュータ可読記憶媒体。いくつかの実施形態において、ビットストリーム生成方法は、方法1300~1800の実施形態に記載の方法に従って映像のビットストリームを生成することと、このビットストリームをコンピュータ可読プログラム媒体に記憶することと、を含む。いくつかの実施形態において、本願明細書に開示される方法またはシステムに従って、方法、装置、生成されたビットストリームを提供する。
【0180】
本明細書では、「映像処理」という用語は、映像符号化、映像復号、映像圧縮、または映像展開を指してよい。例えば、映像圧縮アルゴリズムは、映像の画素表現から対応するビットストリーム表現への変換、またはその逆の変換中に適用されてもよい。現在の映像ブロックのビットストリーム表現は、例えば、構文によって規定されるように、ビットストリーム内の同じ場所または異なる場所に拡散されるビットに対応していてもよい。例えば、マクロブロックは、変換およびコーディングされた誤り残差値の観点から、かつビットストリームにおけるヘッダおよび他のフィールドにおけるビットを使用して符号化されてもよい。さらに、変換中、デコーダは、上記解決策で説明されているように、判定に基づいて、いくつかのフィールドが存在しても存在しなくてもよいという知識を持って、ビットストリームを構文解析してもよい。同様に、エンコーダは、特定の構文フィールドが含まれるべきであるか、または含まれないべきであるかを判定し、構文フィールドをコーディングされた表現に含めるか、またはコーディングされた表現から除外することによって、それに応じてコーディングされた表現を生成してもよい。
【0181】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを有効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが有効化される場合、エンコーダは、映像ブロックを処理する際にツールまたはモードを使用するまたは実装するが、ツールまたはモードの使用に基づいて、結果として得られるビットストリームを必ずしも修正しなくてもよい。すなわち、映像のブロックから映像のビットストリーム表現への変換は、決定または判定に基づいて映像処理ツールまたはモードが有効化される場合に、映像処理ツールまたはモードを使用する。別の例において、映像処理ツールまたはモードが有効化される場合、デコーダは、ビットストリームが映像処理ツールまたはモードに基づいて修正されたことを知って、ビットストリームを処理する。すなわち、決定または判定に基づいて有効化された映像処理ツールまたはモードを使用して、映像のビットストリーム表現から映像のブロックへの変換を行う。
【0182】
開示される技術のいくつかの実施形態は、映像処理ツールまたはモードを無効化するように決定または判定することを含む。一例において、映像処理ツールまたはモードが無効にされた場合、エンコーダは、映像のブロックを映像のビットストリーム表現に変換する際に、このツールまたはモードを使用しない。別の例において、映像処理ツールまたはモードが無効にされた場合、デコーダは、決定または判定に基づいて無効化された映像処理ツールまたはモードを使用してビットストリームが修正されていないことを知って、ビットストリームを処理する。
【0183】
開示された、およびその他の解決策、例、実施形態、モジュールと、本明細書に記載される機能動作の実装形態は、本明細書に開示された構造およびその構造的均等物を含めて、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、もしくはハードウェアで実施してもよく、またはそれらの1つ以上の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置による実行用の、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす組成物、またはこれらの1つ以上の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサ、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1つ以上の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報をエンコードするために生成される。
【0184】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他の部として含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つ以上のスクリプト)に記憶されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。コンピュータプログラムを、1つのコンピュータで実行するように展開することができ、あるいは、1つのサイトに位置する、または複数のサイトにわたって分散され通信ネットワークによって相互接続される複数のコンピュータで実行するように展開することができる。
【0185】
本明細書に記載された処理およびロジックフローは、入力データに対して動作し、出力を生成することによって機能を行うための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(Field Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
【0186】
コンピュータプログラムの実行に適した処理装置(プロセッサ)は、例えば、汎用および専用マイクロ処理装置の両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上の処理装置を含む。一般的に、プロセッサは、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つ以上の記憶装置とである。一般的に、コンピュータは、データを記憶するための1つ以上の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュ記憶装置、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体記憶装置を含む。プロセッサおよびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
【0187】
本特許明細書は多くの特徴を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許明細書において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
【0188】
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、この特許明細書に記載されている例における様々なシステムのモジュールの分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
【0189】
いくつかの実装形態および実施例のみが記載されており、この特許明細書に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
【手続補正書】
【提出日】2022-12-14
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
映像処理方法であって、
規則に沿って、映像ピクチャを含む映像と前記映像のビットストリームとの変換を実行すること、を有し、
前記規則は、第1の構文要素が前記映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、
前記規則は、前記第1の構文要素によって示される前記第1の幅および前記第1の高さの許容可能な値の範囲が、前記映像ピクチャの第2の幅の2倍以上および前記映像ピクチャの第2の高さの2倍以上の値となることを許容することを規定する、
方法。
【請求項2】
前記第1の構文要素の前記値は、スケーリング比計算のために前記映像ピクチャのサイズに適用されるオフセットを規定する、
請求項1に記載の方法。
【請求項3】
前記第1の構文要素は、pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset、およびpps_scaling_win_bottom_offsetを含む、
請求項1または2に記載の方法。
【請求項4】
前記規則は、SubWidthC*(pps_scaling_win_left_offset+pps_scaling_win_right_offset))の値が、-pps_pic_width_in_luma_samples*M以上かつpps_pic_width_in_luma_samples未満であることを規定し、
CurrPicScalWidthLは、前記スケーリングウィンドウの前記第1の幅であり、
pps_pic_width_in_luma_samplesは、前記映像ピクチャの前記第2の幅であり、
SubWidthCは前記映像ピクチャの彩度幅サンプリング変数であり、前記映像ピクチャの彩度フォーマットに従った表から得られ、
CurrPicScalWinWidthL=pps_pic_width_in_luma_samples-SubWidthC*(pps_scaling_win_right_offset+pps_scaling_win_left_offset)であり、
Mは、2以上の正の整数である、
請求項3に記載の方法。
【請求項5】
前記規則は、SubHeightC*(pps_scaling_win_top_offset+pps_scaling_win_bottom_offset))の値が、-pps_pic_height_in_luma_samples*N以上かつpps_pic_height_in_luma_samples未満であることを規定し、
CurrPicScalHeightLは、前記スケーリングウィンドウの前記第1の高さであり、
pps_pic_height_in_luma_samplesは、前記映像ピクチャの前記第2の高さであり、
SubHeightCは前記映像ピクチャの彩度高さサンプリング変数であり、前記映像ピクチャの彩度フォーマットに従った表から得られ、
CurrPicScalWinHeightL=pps_pic_height_in_luma_samples-SubHeightC*(pps_scaling_height_bottom_offset+pps_scaling_win_top_offset)であり、
Nは、2以上の正の整数である、
請求項4に記載の方法。
【請求項6】
Nは、Mと等しい、
請求項5に記載の方法。
【請求項7】
前記規則は、前記映像ピクチャが参照するシーケンスパラメータセットに第2の構文要素が含まれることを規定し、
前記第2の構文要素は、参照ピクチャリサンプリングを有効化するかどうか、および前記映像ピクチャの1以上のスライスが参照ピクチャリストの有効エントリ内の参照ピクチャを参照することを許可されているかどうかを示し、
前記参照ピクチャは、前記映像ピクチャのパラメータとは異なる複数のパラメータのうち任意の1以上のパラメータを有し、前記複数のパラメータは、(1)映像ピクチャの幅、2)映像ピクチャの高さ、3)スケーリングウィンドウの左側オフセット、4)スケーリングウィンドウの右側オフセット、5)スケーリングウィンドウの上側オフセット、および6)スケーリングウィンドウの下側オフセットであり、これらのパラメータは前記第1の構文要素によって規定される、
請求項1から6のうちいずれか一項に記載の方法。
【請求項8】
1の値を有する前記第2の構文要素は、前記参照ピクチャリサンプリングを有効化すること、および前記映像ピクチャが前記参照ピクチャリストの有効エントリ内の前記参照ピクチャを参照する1以上のスライスを有することを許可されていること、を規定する、
請求項7に記載の方法。
【請求項9】
0の値を有する前記第2の構文要素は、前記参照ピクチャリサンプリングを無効化すること、および前記映像ピクチャが前記参照ピクチャリストの有効エントリ内の前記参照ピクチャを参照する1以上のスライスを有することを許可されていないこと、を規定する、
請求項7または8に記載の方法。
【請求項10】
前記変換を実行することは、前記映像を前記ビットストリームに符号化することを含む、
請求項1から9のうちいずれか一項に記載の方法。
【請求項11】
前記変換を実行することは、前記映像を前記ビットストリームから復号することを含む、
請求項1から9のうちいずれか一項に記載の方法。
【請求項12】
プロセッサと、命令を有する非一時的メモリと、を備える映像データの処理装置であって、前記命令が前記プロセッサによって実行されると、前記プロセッサに、
規則に沿って、映像ピクチャを含む映像と前記映像のビットストリームとの変換を実行させ、
前記規則は、第1の構文要素が前記映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、
前記規則は、前記第1の構文要素によって示される前記第1の幅および前記第1の高さの許容可能な値の範囲が、前記映像ピクチャの第2の幅の2倍以上および前記映像ピクチャの第2の高さの2倍以上の値を含むことを規定する、
装置。
【請求項13】
命令を記憶する非一時的なコンピュータ可読記憶媒体であって、この命令は、プロセッサに、
規則に沿って、映像ピクチャを含む映像と前記映像のビットストリームとの変換を実行させ、
前記規則は、第1の構文要素が前記映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、
前記規則は、前記第1の構文要素によって示される前記第1の幅および前記第1の高さの許容可能な値の範囲が、前記映像ピクチャの第2の幅の2倍以上および前記映像ピクチャの第2の高さの2倍以上の値を含むことを規定する、
非一時的なコンピュータ可読記憶媒体。
【請求項14】
映像処理装置により実行される方法によって生成される映像のビットストリームを記憶する非一時的なコンピュータ可読記録媒体であって、前記方法は、
規則に沿って、映像ピクチャを含む映像と前記映像のビットストリームとの変換を実行させ、
前記規則は、第1の構文要素が前記映像ピクチャに対するスケーリングウィンドウの第1の幅および第1の高さを示すことを規定し、
前記規則は、前記第1の構文要素によって示される前記第1の幅および前記第1の高さの許容可能な値の範囲が、前記映像ピクチャの第2の幅の2倍以上および前記映像ピクチャの第2の高さの2倍以上の値を含むことを規定する、
非一時的なコンピュータ可読記録媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
関連出願の相互参照
願は、2020年5月21日出願の国際特許出願第PCT/CN2020/091533号の優先権および利益を主張する2021年5月21日出願の国際特許出願第PCT/CN2021/095012号に基づく。上記出願の開示全体は、本明細書の開示として参照によりここに援用される。
【国際調査報告】