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

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

▶ ホアウェイ・テクノロジーズ・カンパニー・リミテッドの特許一覧

特開2024-19510ビデオエンコーダ、ビデオデコーダ、および対応する方法
<>
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図1
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図2
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図3
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図4
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図5
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図6
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図7
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図8
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図9
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図10
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図11
  • 特開-ビデオエンコーダ、ビデオデコーダ、および対応する方法 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024019510
(43)【公開日】2024-02-09
(54)【発明の名称】ビデオエンコーダ、ビデオデコーダ、および対応する方法
(51)【国際特許分類】
   H04N 19/70 20140101AFI20240202BHJP
   H04N 19/85 20140101ALI20240202BHJP
【FI】
H04N19/70
H04N19/85
【審査請求】有
【請求項の数】24
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023209280
(22)【出願日】2023-12-12
(62)【分割の表示】P 2021540003の分割
【原出願日】2020-01-09
(31)【優先権主張番号】62/790,207
(32)【優先日】2019-01-09
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133569
【弁理士】
【氏名又は名称】野村 進
(72)【発明者】
【氏名】イェ-クイ・ワン
(72)【発明者】
【氏名】フヌ・ヘンドリー
(57)【要約】
【課題】ビデオコーディング機構が開示される。
【解決手段】機構は、各サブピクチャがピクチャの右の境界と一致しない右の境界を含むとき、各サブピクチャがコーディングツリーユニット(CTU)サイズの整数倍であるサブピクチャを含むような、ピクチャから区分された1つ以上のサブピクチャを備えるビットストリームを受信することを含む。1つ以上のサブピクチャを取得するために、ビットストリームが解析される。ビデオシーケンスを作成するために、1つ以上のサブピクチャが復号される。ビデオシーケンスが表示のために転送される。
【選択図】図8
【特許請求の範囲】
【請求項1】
デコーダにおいて実施される方法であって、
前記デコーダの受信機によって、第1のサブピクチャがピクチャの右の境界と一致する
右の境界を含むとき、前記第1のサブピクチャが不完全なコーディングツリーユニット(CT
U)を含むサブピクチャ幅を備えるような、前記ピクチャから区分された1つ以上のサブピ
クチャを備えるビットストリームを受信するステップと、
前記デコーダのプロセッサによって、前記ビットストリームを解析して前記1つ以上の
サブピクチャを取得するステップと、
前記プロセッサによって、前記1つ以上のサブピクチャを復号してビデオシーケンスを
作成するステップと、
前記プロセッサによって、前記ビデオシーケンスを表示のために転送するステップとを
備える、方法。
【請求項2】
第2のサブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記
第2のサブピクチャが整数個の完全なCTUを含むサブピクチャ高さを備える、請求項1に記
載の方法。
【請求項3】
第3のサブピクチャが前記ピクチャの右の境界と一致しない右の境界を含むとき、前記
第3のサブピクチャが整数個の完全なCTUを含むサブピクチャ幅を備える、請求項1または2
に記載の方法。
【請求項4】
第4のサブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記
第4のサブピクチャが不完全なCTUを含むサブピクチャ高さを備える、請求項1から3のいず
れか一項に記載の方法。
【請求項5】
デコーダにおいて実施される方法であって、
前記デコーダの受信機によって、各サブピクチャがピクチャの右の境界と一致しない右
の境界を含むとき、前記各サブピクチャがコーディングツリーユニット(CTU)サイズの整
数倍であるサブピクチャ幅を含むような、前記ピクチャから区分された1つ以上のサブピ
クチャを備えるビットストリームを受信するステップと、
前記デコーダのプロセッサによって、前記ビットストリームを解析して前記1つ以上の
サブピクチャを取得するステップと、
前記プロセッサによって、前記1つ以上のサブピクチャを復号してビデオシーケンスを
作成するステップと、
前記プロセッサによって、前記ビデオシーケンスを表示のために転送するステップとを
備える、方法。
【請求項6】
各サブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記各サ
ブピクチャが前記CTUサイズの整数倍であるサブピクチャ高さを含む、請求項5に記載の方
法。
【請求項7】
前記各サブピクチャが前記ピクチャの前記右の境界と一致する右の境界を含むとき、前
記サブピクチャのうちの少なくとも1つが前記CTUサイズの整数倍ではないサブピクチャ幅
を含む、請求項5または6に記載の方法。
【請求項8】
前記各サブピクチャが前記ピクチャの前記下の境界と一致する下の境界を含むとき、前
記サブピクチャのうちの少なくとも1つが前記CTUサイズの整数倍ではないサブピクチャ高
さを含む、請求項5から7のいずれか一項に記載の方法。
【請求項9】
前記ピクチャが前記CTUサイズの整数倍ではないピクチャ幅を含む、請求項5から8のい
ずれか一項に記載の方法。
【請求項10】
前記ピクチャが前記CTUサイズの整数倍ではないピクチャ高さを含む、請求項5から9の
いずれか一項に記載の方法。
【請求項11】
前記CTUサイズがルマサンプルの単位で測定される、請求項5から10のいずれか一項に記
載の方法。
【請求項12】
エンコーダにおいて実施される方法であって、
前記エンコーダのプロセッサによって、各サブピクチャがピクチャの右の境界と一致し
ない右の境界を含むとき、前記各サブピクチャがコーディングツリーユニット(CTU)サイ
ズの整数倍であるサブピクチャ幅を含むように、前記ピクチャを複数のサブピクチャへと
区分するステップと、
前記プロセッサによって、前記サブピクチャのうちの1つ以上をビットストリームへと
符号化するステップと、
前記エンコーダのメモリに、デコーダへの通信のために前記ビットストリームを記憶す
るステップとを備える、方法。
【請求項13】
各サブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記各サ
ブピクチャが前記CTUサイズの整数倍であるサブピクチャ高さを含む、請求項12に記載の
方法。
【請求項14】
各サブピクチャが前記ピクチャの前記右の境界と一致する右の境界を含むとき、前記サ
ブピクチャのうちの少なくとも1つが前記CTUサイズの整数倍ではないサブピクチャ幅を含
む、請求項12または13に記載の方法。
【請求項15】
前記各サブピクチャが前記ピクチャの前記下の境界と一致する下の境界を含むとき、前
記サブピクチャのうちの少なくとも1つが前記CTUサイズの整数倍ではないサブピクチャ高
さを含む、請求項12から14のいずれか一項に記載の方法。
【請求項16】
前記ピクチャが前記CTUサイズの整数倍ではないピクチャ幅を含む、請求項12から15の
いずれか一項に記載の方法。
【請求項17】
前記ピクチャが前記CTUサイズの整数倍ではないピクチャ高さを含む、請求項12から16
のいずれか一項に記載の方法。
【請求項18】
前記CTUサイズがルマサンプルの単位で測定される、請求項12から17のいずれか一項に
記載の方法。
【請求項19】
プロセッサと、メモリと、前記プロセッサに結合された受信機と、前記プロセッサに結
合された送信機とを備え、前記プロセッサ、メモリ、受信機、および送信機が、請求項1
から18のいずれか一項に記載の方法を実行するように構成される、ビデオコーディングデ
バイス。
【請求項20】
ビデオコーディングデバイスが使用するためのコンピュータプログラム製品を備える非
一時的コンピュータ可読媒体であって、前記コンピュータプログラム製品が、プロセッサ
によって実行されると前記ビデオコーディングデバイスに請求項1から18のいずれか一項
に記載の方法を実行させる、前記非一時的コンピュータ可読媒体に記憶されるコンピュー
タ実行可能命令を備える、非一時的コンピュータ可読媒体。
【請求項21】
各サブピクチャがピクチャの右の境界と一致しない右の境界を含むとき、前記各サブピ
クチャがコーディングツリーユニット(CTU)サイズの整数倍であるサブピクチャ幅を含む
ような、前記ピクチャから区分された1つ以上のサブピクチャを備えるビットストリーム
を受信するための受信手段と、
前記ビットストリームを解析して前記1つ以上のサブピクチャを取得するための解析手
段と、
前記1つ以上のサブピクチャを復号してビデオシーケンスを作成するための復号手段と

前記ビデオシーケンスを表示のために転送するための転送手段とを備える、デコーダ。
【請求項22】
前記デコーダがさらに、請求項1から11のいずれか一項に記載の方法を実行するように
構成される、請求項17に記載のデコーダ。
【請求項23】
各サブピクチャがピクチャの右の境界と一致しない右の境界を含むとき、前記各サブピ
クチャがコーディングツリーユニット(CTU)サイズの整数倍であるサブピクチャ幅を含む
ように、前記ピクチャを複数のサブピクチャへと区分するための区分手段と、
前記サブピクチャのうちの1つ以上をビットストリームへと符号化するための符号化手
段と、
デコーダへの通信のために前記ビットストリームを記憶するための記憶手段とを備える
、エンコーダ。
【請求項24】
前記エンコーダがさらに、請求項12から18のいずれか一項に記載の方法を実行するよう
に構成される、請求項23に記載のエンコーダ。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、参照によって本明細書に組み込まれる、「Sub-Pictures in Video Coding」という表題の、Ye-Kui Wang他により2019年1月9日に出願された米国仮特許出願第62/790,207号の利益を主張する。
【0002】
本開示は一般にビデオコーディングに関し、詳細には、ビデオコーディングにおけるサ
ブピクチャ管理に関する。
【背景技術】
【0003】
比較的短いビデオでもそれを描写するために必要なビデオデータの量はかなり多いこと
があり、これは、帯域幅容量が限られている通信ネットワークを介してデータがストリー
ミングまたは別様に通信されることになるときに、困難さをもたらし得る。したがって、
ビデオデータは一般に、現代の遠隔通信ネットワークを介して通信される前に圧縮される
。メモリリソースは限られていることがあるので、ビデオがストレージデバイスに記憶さ
れるときには、ビデオのサイズも問題であってもよい。ビデオ圧縮デバイスはしばしば、
ソースにおけるソフトウェアおよび/またはハードウェアを使用して、送信または記憶の
前にビデオデータをコーディングし、それにより、デジタルビデオ画像を表現するために
必要とされるデータの量を減らす。圧縮されたデータは次いで、ビデオデータを復号する
ビデオ圧縮解除デバイスによってデスティネーションにおいて受信される。ネットワーク
リソースが限られていること、およびより高いビデオ品質に対する要求が高まり続けてい
ることにより、画像品質をほとんどまたはまったく犠牲にせずに圧縮比を改善する、改善
された圧縮および圧縮解除技法が望ましい。
【発明の概要】
【課題を解決するための手段】
【0004】
ある実施形態では、本開示は、デコーダにおいて実施される方法を含み、この方法は、
デコーダの受信機によって、第1のサブピクチャがピクチャの右の境界と一致する右の境
界を含むとき、第1のサブピクチャが不完全なコーディングツリーユニット(CTU)を含むサ
ブピクチャ幅を備えるような、ピクチャから区分された1つ以上のサブピクチャを備える
ビットストリームを受信するステップと、デコーダのプロセッサによって、ビットストリ
ームを解析して1つ以上のサブピクチャを取得するステップと、プロセッサによって、1つ
以上のサブピクチャを復号してビデオシーケンスを作成するステップと、プロセッサによ
って、表示のためにビデオシーケンスを転送するステップとを備える。一部のビデオシス
テムは、CTUサイズの倍数である高さおよび幅を含むようにサブピクチャを制限してもよ
い。しかしながら、ピクチャは、CTUサイズの倍数ではない高さおよび幅を含んでもよい
。したがって、サブピクチャサイズの制約は、多くのピクチャレイアウトとともにサブピ
クチャが正しく動作するのを妨げる。開示される例では、CTUサイズの倍数となるように
、サブピクチャ幅およびサブピクチャ高さが制約される。しかしながら、サブピクチャが
ピクチャの右の境界またはピクチャの下の境界にそれぞれ位置するとき、これらの制約は
取り除かれる。下と右のサブピクチャがCTUサイズの倍数ではない高さと幅とをそれぞれ
含むことを許容することによって、復号エラーを引き起こすことなく任意のピクチャとと
もにサブピクチャが使用されてもよい。これは、エンコーダとデコーダの機能の向上をも
たらす。さらに、向上した機能は、エンコーダがピクチャをより効率的にコーディングす
ることを可能にし、これは、ネットワークリソース、メモリリソース、および/またはエ
ンコーダとデコーダにおける処理リソースの使用を減らす。
【0005】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、第2のサブピ
クチャがピクチャの下の境界と一致しない下の境界を含むとき、第2のサブピクチャが整
数個の完全なCTUを含むサブピクチャ高さを備えることを規定する。
【0006】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、第3のサブピ
クチャがピクチャの右の境界と一致しない右の境界を含むとき、第3のサブピクチャが整
数個の完全なCTUを含むサブピクチャ幅を備えることを規定する。
【0007】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、第4のサブピ
クチャがピクチャの下の境界と一致する下の境界を含むとき、第4のサブピクチャが不完
全なCTUを含むサブピクチャ高さを備えることを規定する。
【0008】
ある実施形態では、本開示は、デコーダにおいて実施される方法を含み、この方法は、
デコーダの受信機によって、各サブピクチャがピクチャの右の境界と一致しない右の境界
を含むとき、各サブピクチャがコーディングツリーユニット(CTU)サイズの整数倍である
サブピクチャ幅を含むような、ピクチャから区分された1つ以上のサブピクチャを備える
ビットストリームを受信するステップと、デコーダのプロセッサによって、ビットストリ
ームを解析して1つ以上のサブピクチャを取得するステップと、プロセッサによって、1つ
以上のサブピクチャを復号してビデオシーケンスを作成するステップと、プロセッサによ
って、表示のためにビデオシーケンスを転送するステップとを備える。一部のビデオシス
テムは、CTUサイズの倍数である高さおよび幅を含むようにサブピクチャを制限してもよ
い。しかしながら、ピクチャは、CTUサイズの倍数ではない高さおよび幅を含んでもよい
。したがって、サブピクチャサイズの制約は、多くのピクチャレイアウトとともにサブピ
クチャが正しく動作するのを妨げる。開示される例では、CTUサイズの倍数となるように
、サブピクチャ幅およびサブピクチャ高さが制約される。しかしながら、サブピクチャが
ピクチャの右の境界またはピクチャの下の境界にそれぞれ位置するとき、これらの制約は
取り除かれる。下と右のサブピクチャがCTUサイズの倍数ではない高さと幅とをそれぞれ
含むことを許容することによって、復号エラーを引き起こすことなく任意のピクチャとと
もにサブピクチャが使用されてもよい。これは、エンコーダとデコーダの機能の向上をも
たらす。さらに、向上した機能は、エンコーダがピクチャをより効率的にコーディングす
ることを可能にし、これは、ネットワークリソース、メモリリソース、および/またはエ
ンコーダとデコーダにおける処理リソースの使用を減らす。
【0009】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、各サブピクチ
ャがピクチャの下の境界と一致しない下の境界を含むとき、各サブピクチャがCTUサイズ
の整数倍であるサブピクチャ高さを含むことを規定する。
【0010】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、各サブピクチ
ャがピクチャの右の境界と一致する右の境界を含むとき、サブピクチャのうちの少なくと
も1つがCTUサイズの整数倍ではないサブピクチャ幅を含むことを規定する。
【0011】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、各サブピクチ
ャがピクチャの下の境界と一致する下の境界を含むとき、サブピクチャのうちの少なくと
も1つがCTUサイズの整数倍ではないサブピクチャ高さを含むことを規定する。
【0012】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、ピクチャがCT
Uサイズの整数倍ではないピクチャ幅を含むことを規定する。
【0013】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、ピクチャがCT
Uサイズの整数倍ではないピクチャ高さを含むことを規定する。
【0014】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、CTUサイズが
ルマサンプルの単位で測定されることを規定する。
【0015】
ある実施形態では、本開示は、エンコーダにおいて実施される方法を含み、この方法は
、エンコーダのプロセッサによって、各サブピクチャがピクチャの右の境界と一致しない
右の境界を含むとき、各サブピクチャがCTUサイズの整数倍であるサブピクチャ幅を含む
ように、ピクチャを複数のサブピクチャへと区分するステップと、プロセッサによって、
サブピクチャのうちの1つ以上をビットストリームへと符号化するステップと、エンコー
ダのメモリに、デコーダへの通信のためにビットストリームを記憶するステップとを備え
る。一部のビデオシステムは、CTUサイズの倍数である高さおよび幅を含むようにサブピ
クチャを制限してもよい。しかしながら、ピクチャは、CTUサイズの倍数ではない高さお
よび幅を含んでもよい。したがって、サブピクチャサイズの制約は、多くのピクチャレイ
アウトとともにサブピクチャが正しく動作するのを妨げる。開示される例では、CTUサイ
ズの倍数となるように、サブピクチャ幅およびサブピクチャ高さが制約される。しかしな
がら、サブピクチャがピクチャの右の境界またはピクチャの下の境界にそれぞれ位置する
とき、これらの制約は取り除かれる。下と右のサブピクチャがCTUサイズの倍数ではない
高さと幅とをそれぞれ含むことを許容することによって、復号エラーを引き起こすことな
く任意のピクチャとともにサブピクチャが使用されてもよい。これは、エンコーダとデコ
ーダの機能の向上をもたらす。さらに、向上した機能は、エンコーダがピクチャをより効
率的にコーディングすることを可能にし、これは、ネットワークリソース、メモリリソー
ス、および/またはエンコーダとデコーダにおける処理リソースの使用を減らす。
【0016】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、各サブピクチ
ャがピクチャの下の境界と一致しない下の境界を含むとき、各サブピクチャがCTUサイズ
の整数倍であるサブピクチャ高さを含むことを規定する。
【0017】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、各サブピクチ
ャがピクチャの右の境界と一致する右の境界を含むとき、サブピクチャのうちの少なくと
も1つがCTUサイズの整数倍ではないサブピクチャ幅を含むことを規定する。
【0018】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、各サブピクチ
ャがピクチャの下の境界と一致する下の境界を含むとき、サブピクチャのうちの少なくと
も1つがCTUサイズの整数倍ではないサブピクチャ高さを含むことを規定する。
【0019】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、ピクチャがCT
Uサイズの整数倍ではないピクチャ幅を含むことを規定する。
【0020】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、ピクチャがCT
Uサイズの整数倍ではないピクチャ高さを含むことを規定する。
【0021】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、CTUサイズが
ルマサンプルの単位で測定されることを規定する。
【0022】
ある実施形態では、本開示は、プロセッサと、メモリと、プロセッサに結合された受信
機と、プロセッサに結合された送信機とを備える、ビデオコーディングデバイスを含み、
プロセッサ、メモリ、受信機、および送信機は、先行する態様のいずれかの方法を実行す
るように構成される。
【0023】
ある実施形態では、本開示は、ビデオコーディングデバイスにより使用するためのコン
ピュータプログラム製品を備える非一時的コンピュータ可読媒体を含み、コンピュータプ
ログラム製品は、プロセッサによって実行されるとビデオコーディングデバイスに先行す
る態様のいずれかの方法を実行させる非一時的コンピュータ可読媒体に記憶されたコンピ
ュータ実行可能命令を備える。
【0024】
ある実施形態では、本開示は、各サブピクチャがピクチャの右の境界と一致しない右の
境界を含むとき、各サブピクチャがCTUサイズの整数倍であるサブピクチャ幅を含むよう
な、ピクチャから区分された1つ以上のサブピクチャを備えるビットストリームを受信す
るための受信手段と、ビットストリームを解析して1つ以上のサブピクチャを取得するた
めの解析手段と、1つ以上のサブピクチャを復号してビデオシーケンスを作成するための
復号手段と、ビデオシーケンスを表示のために転送するための転送手段とを備える、デコ
ーダを含む。
【0025】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、デコーダが先
行する態様のいずれかの方法を実行するようにさらに構成されることを規定する。
【0026】
ある実施形態では、本開示は、各サブピクチャがピクチャの右の境界と一致しない右の
境界を含むとき、各サブピクチャがCTUサイズの整数倍であるサブピクチャ幅を含むよう
に、ピクチャを複数のサブピクチャへと区分するための区分手段と、サブピクチャのうち
の1つ以上をビットストリームへと符号化するための符号化手段と、デコーダへの通信の
ためにビットストリームを記憶するための記憶手段とを備える、エンコーダを含む。
【0027】
任意選択で、先行する態様のいずれにおいても、態様の別の実装形態は、エンコーダが
先行する態様のいずれかの方法を実行するようにさらに構成されることを規定する。
【0028】
明確にするために、前述の実施形態のいずれか1つが、本開示の範囲内で新しい実施形
態を作成するために、他の前述の実施形態の任意の1つ以上と組み合わせられてもよい。
【0029】
これらおよび他の特徴は、添付の図面および請求項と併せて、以下の詳細な説明からよ
り明確に理解されるであろう。
【0030】
本開示のより完全な理解のために、ここで、添付の図面および詳細な説明に関連して、
以下の簡単な説明への参照が行われ、同様の参照番号は同様の部分を表す。
【図面の簡単な説明】
【0031】
図1】ビデオ信号をコーディングする例示的な方法のフローチャートである。
図2】ビデオコーディングのための例示的な符号化および復号(コーデック)システムの概略図である。
図3】例示的なビデオエンコーダを示す概略図である。
図4】例示的なビデオデコーダを示す概略図である。
図5】例示的なビットストリームおよびそのビットストリームから抽出されるサブビットストリームを示す概略図である。
図6】サブピクチャへと区分される例示的なピクチャを示す概略図である。
図7】スライスをサブピクチャレイアウトに関連付けるための例示的な機構を示す概略図である。
図8】サブピクチャへと区分される別の例示的なピクチャを示す概略図である。
図9】例示的なビデオコーディングデバイスの概略図である。
図10】適応的なサイズ制約とともにサブピクチャのビットストリームを符号化する例示的な方法のフローチャートである。
図11】適応的なサイズ制約とともにサブピクチャのビットストリームを復号する例示的な方法のフローチャートである。
図12】適応的なサイズ制約とともにサブピクチャのビットストリームをシグナリングするための例示的なシステムの概略図である。
【発明を実施するための形態】
【0032】
1つ以上の実施形態の説明のための実装形態が以下で与えられるが、開示されるシステ
ムおよび/または方法は、現在知られているか、または存在しているかにかかわらず、任
意の数の技法を使用して実装されてもよいことを始めに理解されたい。本開示は、いかな
る場合でも、本明細書において例証され説明される例示的な設計および実装形態を含む、
以下で例証される説明のための実装形態、図、および技法に限定されるべきではなく、そ
れらの均等物の完全な範囲とともに添付の特許請求の範囲内で修正されてもよい。
【0033】
コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、コーディング
ユニット(CU)、コーディングビデオシーケンス(CVS)、ジョイントビデオエキスパーツチ
ーム(JVET)、動き制約タイルセット(MCTS)、最大伝送単位(MTU)、ネットワーク抽象化レ
イヤ(NAL)、ピクチャ順序カウント(POC)、ローバイトシーケンスペイロード(RBSP)、シー
ケンスパラメータセット(SPS)、バーサタイルビデオコーディング(VVC)、およびワーキン
グドラフト(WD)などの、様々な頭字語が本明細書において利用される。
【0034】
データの喪失を最小限にしながらビデオファイルのサイズを減らすために、多くのビデ
オ圧縮技法を利用することができる。たとえば、ビデオ圧縮技法は、空間(たとえば、イ
ントラピクチャ)予測および/または時間(たとえば、インターピクチャ)予測を実行して、
ビデオシーケンスにおけるデータ冗長性を低減または除去することを含むことができる。
ブロックベースのビデオコーディングのために、ビデオスライス(たとえば、ビデオピク
チャまたはビデオピクチャの一部)がビデオブロックへと区分されてもよく、これは、ツ
リーブロック、コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、
コーディングユニット(CU)、および/またはコーデイングノードとも呼ばれてもよい。ピ
クチャのイントラコーディングされた(I)スライスの中のビデオブロックは、同じピクチ
ャの中の近隣ブロックの中の参照サンプルに関する空間予測を使用してコーディングされ
る。ピクチャのインターコーディングされた単方向予測(P)または双方向予測(B)スライス
の中のビデオブロックは、同じピクチャの近隣ブロックの中の参照サンプルに関する空間
予測、または他の参照ピクチャの中の参照サンプルに関する時間予測を利用することによ
ってコーディングされてもよい。ピクチャはフレームおよび/または画像と呼ばれてもよ
く、参照ピクチャは参照フレームおよび/または参照画像と呼ばれてもよい。空間予測ま
たは時間予測は、画像ブロックを表す予測ブロックをもたらす。残差データは、元の画像
ブロックと予測ブロックとの間のピクセル差分を表す。したがって、インターコーディン
グされたブロックは、予測ブロックを形成する参照サンプルのブロックを指し示す動きベ
クトルと、コーディングされたブロックと予測ブロックとの間の差を示す残差データとに
従って符号化される。イントラコーディングされたブロックは、イントラコーディングモ
ードおよび残差データに従って符号化される。さらなる圧縮のために、残差データはピク
セル領域から変換領域に転送されてもよい。これらは、量子化されてもよい残差変換係数
をもたらす。量子化された変換係数は最初に、二次元アレイに配置されてもよい。量子化
された変換係数が、変換係数の一次元ベクトルを生み出すために走査されてもよい。エン
トロピーコーディングは、さらなる圧縮を達成するために適用されてもよい。そのような
ビデオ圧縮技法は、以下でより詳しく論じられる。
【0035】
符号化されたビデオが正しく復号されうることを確実にするために、対応するビデオコ
ーディング規格に従って、ビデオが符号化され復号される。ビデオコーディング規格は、
国際電気通信連合(ITU)標準化部門(ITU-T)H.261、国際標準化機構/国際電気標準会議(ISO
/IEC)モーションピクチャエキスパーツグループ(MPEG)-1 Part 2、ITU-T H.262またはISO
/IEC MPEG-2 Part 2、ITU-T H.263、ISO/IEC MPEG-4 Part 2、ITU-T H.264またはISO/IEC
MPEG-4 Part 10としても知られているアドバンストビデオコーディング(AVC)、およびIT
U-T H.265またはMPEG-H Part 2としても知られている高効率ビデオコーディング(HEVC)を
含む。AVCは、拡張可能なビデオコーディング(SVC)、マルチビュービデオコーディング(M
VC)およびマルチビュービデオコーディングプラスデプス(MVC+D)、ならびに三次元(3D)AV
C(3D-AVC)などの拡張を含む。HEVCは、拡張可能なHEVC(SHVC)、マルチビューHEVC(MV-HEV
C)、および3D HEVC(3D-HEVC)などの拡張を含む。ITU-TおよびISO/IECのジョイントビデオ
エキスパーツチーム(JVET)は、バーサタイルビデオコーディング(VVC)と呼ばれるビデオ
コーディング規格の開発を開始した。VVCはワーキングドラフト(WD)に含まれており、こ
れはJVET-L1001-v9を含む。
【0036】
ビデオ画像をコーディングするために、画像はまず区分され、区分はビットストリーム
へとコーディングされる。様々なピクチャ区分方式が利用可能である。たとえば、画像は
、普通のスライス、従属スライス、タイルへと、および/または、波面並列処理(WPP)に従
って区分されうる。簡潔にするために、ビデオコーディングのためにCTBのグループへと
スライスを区分するときに、普通のスライス、従属スライス、タイル、WPP、およびそれ
らの組み合わせが使用されうるように、HEVCはエンコーダを制約する。そのような区分は
、最大伝送単位(MTU)サイズの適合、並列処理、エンドツーエンド遅延の低減をサポート
するために適用されうる。MTUは、単一のパケットにおいて送信されうるデータの最大の
量を表記する。パケットペイロードがMTUを超える場合、そのペイロードは断片化と呼ば
れる処理を通じて2つのパケットに分割される。
【0037】
単にスライスとも呼ばれる普通のスライスは、ループフィルタリング操作によるある程
度の相互依存性にもかかわらず、同じピクチャ内の他の普通のスライスとは独立に再構築
されうる画像の区分された部分である。各々の普通のスライスは、送信のために固有のネ
ットワーク抽象化レイヤ(NAL)ユニットにカプセル化される。さらに、ピクチャ内予測(イ
ントラサンプル予測、動き情報予測、コーディングモード予測)およびスライス境界にま
たがるエントロピーコーディング依存性は、独立した再構築をサポートするために無効に
されてもよい。そのような独立した再構築は並列化をサポートする。たとえば、普通のス
ライスベースの並列化は、最小限のプロセッサ間通信またはコア間通信を利用する。しか
しながら、各々の普通のスライスは独立であるので、各スライスは別々のスライスヘッダ
と関連付けられる。普通のスライスの使用は、各スライスに対するスライスヘッダのビッ
トコストにより、およびスライス境界にまたがる予測の欠如により、かなりのコーディン
グオーバーヘッドを招き得る。さらに、普通のスライスは、MTUサイズの要件との適合を
サポートするために利用されてもよい。具体的には、普通のスライスは別個のNALユニッ
トにカプセル化されており独立にコーディングされうるので、各々の普通のスライスは、
複数のパケットへとスライスを壊すのを避けるために、MTU方式におけるMTUより小さくな
ければならない。したがって、並列化の目標およびMTUサイズの適合の目標は、ピクチャ
におけるスライスレイアウトに対して矛盾する要求を課すことがある。
【0038】
従属スライスは普通のスライスと似ているが、短縮されたスライスヘッダを有し、ピク
チャ内予測を壊すことなく画像ツリーブロック境界の区分を可能にする。したがって、従
属スライスは、普通のスライスが複数のNALユニットへと断片化されることを可能にし、
これは、普通のスライス全体の符号化が完了する前に普通のスライスの一部が送り出され
ることを可能にすることにより、エンドツーエンド遅延の低減をもたらす。
【0039】
タイルは、タイルの列と行を生み出す水平境界および垂直境界により生み出される画像
の区分された部分である。タイルはラスター走査順序(右から左および上から下)でコーデ
ィングされてもよい。CTBの走査順序はタイル内で局所的である。したがって、第1のタイ
ルのCTBは、次のタイルのCTBに進む前に、ラスター走査順序でコーディングされる。普通
のスライスと同様に、タイルは、ピクチャ内予測の依存性、ならびにエントロピー復号の
依存性を壊す。しかしながら、タイルは個々のNALユニットに含まれないことがあるので
、タイルはMTUサイズの適合のために使用されないことがある。各タイルを、1つのプロセ
ッサ/コアによって処理することができ、近隣のタイルを復号する処理ユニット間のピク
チャ内予測のために利用されるプロセッサ間/コア間通信は、共有されるスライスヘッダ
を搬送すること(隣接するタイルが同じスライスの中にあるとき)、および再構築されたサ
ンプルとメタデータのループフィルタリング関連の共有を実行することに限定されてもよ
い。1つより多くのタイルがスライスに含まれるとき、スライスの中の第1のエントリポイ
ントオフセット以外の各タイルに対するエントリポイントバイトオフセットが、スライス
ヘッダにおいてシグナリングされてもよい。各スライスおよびタイルに対して、1)スライ
スの中のすべてのコーディングされたツリーブロックが同じスライスに属する、および2)
タイルの中のすべてのコーディングされたブロックが同じスライスに属するという、条件
のうちの少なくとも1つが満たされるべきである。
【0040】
WPPでは、画像はCTBの単一の行へと区分される。エントロピー復号および予測機構は、
他の行におけるCTBからのデータを使用してもよい。並列処理は、CTB行の並列復号を通じ
て可能にされる。たとえば、現在の行は、先行する行と並列に復号されてもよい。しかし
ながら、現在の行の復号は、2つのCTBによる先行する行の復号プロセスより遅れる。この
遅延により、現在の行における現在のCTBの上にあるCTBおよび右上にあるCTBに関するデ
ータは、現在のCTBがコーディングされる前に利用可能になることが確実になる。この手
法は、グラフィカルに表現されると波面として現れる。このずらされた開始は、最大で、
画像が含むCTB行の数と同じ数のプロセッサ/コアを用いた、並列化を可能にする。ピクチ
ャ内の近隣のツリーブロック行間のピクチャ内予測が許容されるので、ピクチャ内予測を
可能にするためのプロセッサ間/コア間通信はかなり多くなりうる。WPPの区分はNALユニ
ットサイズを考慮する。したがって、WPPはMTUサイズの適合をサポートしない。しかしな
がら、要求に応じてMTUサイズの適合を実施するために、ある程度のコーディングオーバ
ーヘッドを伴って、WPPとともに普通のスライスが使用されうる。
【0041】
タイルは動き制約タイルセットも含んでもよい。動き制約タイルセット(MCTS)は、関連
する動きベクトルが、MCTSの内部の整数サンプル位置と、補間のためのMCTSの内部の整数
サンプル位置のみを必要とする分数サンプル位置とを指し示すように制約されるように設
計された、タイルセットである。さらに、MCTSの外部のブロックから導かれる時間動きベ
クトル予測に対する動きベクトル候補の使用は許容されない。このようにして、各MCTSは
、MCTSに含まれないタイルが存在することなく、独立に復号されてもよい。時間MCTS補足
強化情報(SEI)メッセージは、ビットストリームにおけるMCTSの存在を示し、MCTSをシグ
ナリングするために使用されてもよい。MCTS SEIメッセージは、MCTSセットに対する適合
するビットストリームを生成するために、MCTSサブビットストリーム抽出(SEIメッセージ
のセマンティクスの一部として規定される)において使用されうる補足情報を提供する。
情報はいくつかの抽出情報セットを含み、その各々が、MCTSセットの数を定義し、MCTSサ
ブビットストリーム抽出プロセスの間に使用されるべき置換ビデオパラメータセット(VPS
)、シーケンスパラメータセット(SPS)、およびピクチャパラメータセット(PPS)のローバ
イトシーケンスペイロード(RBSP)バイトを含む。MCTSサブビットストリーム抽出プロセス
に従ってサブビットストリームを抽出するとき、パラメータセット(VPS、SPS、およびPPS
)は、書き直され、または置き換えられてもよく、スライスヘッダは更新されてもよく、
それは、スライスアドレス関連のシンタックス要素(first_slice_segment_in_pic_flagお
よびslice_segment_addressを含む)のうちの1つまたはすべてが、抽出されたサブビット
ストリームにおいて異なる値を利用してもよいからである。
【0042】
ピクチャは1つ以上のサブピクチャにも区分されてもよい。サブピクチャは、0に等しい
tile_group_addressを有するタイルグループで開始する、タイルグループ/スライスの長
方形セットである。各サブピクチャは、別々のPPSを参照してもよいので、別個のタイル
区分を有してもよい。サブピクチャは、復号プロセスにおいてピクチャのように扱われて
もよい。現在のサブピクチャを復号するための参照サブピクチャは、復号ピクチャバッフ
ァにおいて参照ピクチャからの現在のサブピクチャと同じ位置にあるエリアを抽出するこ
とによって生成される。抽出されたエリアは、復号されたサブピクチャとして扱われる。
同じサイズのサブピクチャとピクチャ内の同じ位置との間で、インター予測が行われても
よい。スライスとしても知られているタイルグループは、ピクチャまたはサブピクチャの
中の関連するタイルのシーケンスである。ピクチャの中のサブピクチャの位置を決定する
ために、いくつかの項目が導出されうる。たとえば、各々の現在のサブピクチャは、ピク
チャ境界内に現在のサブピクチャを収めるのに十分大きいピクチャ内で、CTUラスター走
査順序で次の占有されていない位置に配置されてもよい。
【0043】
さらに、ピクチャ区分は、ピクチャレベルタイルおよびシーケンスレベルタイルに基づ
いてもよい。シーケンスレベルタイルは、MCTSの機能を含んでもよく、サブピクチャとし
て実装されてもよい。たとえば、ピクチャレベルタイルは、ピクチャの中の特定のタイル
列内および特定のタイル行内のコーディングツリーブロックの長方形領域として定義され
てもよい。シーケンスレベルタイルは、異なるフレームに含まれるコーディングツリーブ
ロックの長方形領域のセットとして定義されてもよく、各長方形領域はさらに1つ以上の
ピクチャレベルタイルを備え、コーディングツリーブロックの長方形領域のセットは類似
する長方形領域の任意の他のセットから独立に復号可能である。シーケンスレベルタイル
グループセット(STGPS)は、そのようなシーケンスレベルタイルのグループである。STGPS
は、NALユニットヘッダにおける関連する識別子(ID)とともに非ビデオコーディングレイ
ヤ(VCL)NALユニットにおいてシグナリングされてもよい。
【0044】
先行するサブピクチャベースの区分方式は、ある問題と関連付けられてもよい。たとえ
ば、サブピクチャが有効であるとき、サブピクチャ内でのタイリング(タイルへのサブピ
クチャの区分)が、並列処理をサポートするために使用されうる。並列処理が目的のサブ
ピクチャのタイル区分は、ピクチャごとに変化可能であり(たとえば、並列処理負荷のバ
ランスの目的で)、したがって、ピクチャレベルで(たとえば、PPSにおいて)管理されても
よい。しかしながら、サブピクチャ区分(サブピクチャへのピクチャの区分)は、関心領域
(ROI)およびサブピクチャベースのピクチャアクセスをサポートするために利用されても
よい。そのような場合、PPSにおけるサブピクチャまたはMCTSのシグナリングは効率的で
はない。
【0045】
別の例では、ピクチャの中の任意のサブピクチャが時間動き制約サブピクチャとしてコ
ーディングされるとき、ピクチャの中のすべてのサブピクチャが、時間動き制約サブピク
チャとしてコーディングされてもよい。そのようなピクチャ区分は限定的であってもよい
。たとえば、時間動き制約サブピクチャとしてサブピクチャをコーディングすることは、
追加の機能と引き換えにコーディング効率を低下させてもよい。しかしながら、関心領域
ベースの適用例では、通常はサブピクチャのうちの1つまたは数個だけが、時間動き制約
サブピクチャベースの機能を使用する。したがって、残りのサブピクチャは、実用上の利
益を何らもたらすことなく、コーディング効率の低下を被る。
【0046】
別の例では、サブピクチャのサイズを指定するためのシンタックス要素は、ルマCTUサ
イズの単位で指定されてもよい。したがって、サブピクチャの幅と高さの両方が、CtbSiz
eYの整数倍であるべきである。サブピクチャの幅と高さを指定するこの機構は、様々な問
題をもたらしてもよい。たとえば、サブピクチャ区分は、CtbSizeYの整数倍であるピクチ
ャ幅および/またはピクチャ高さを伴うピクチャにのみ適用可能である。これは、サブピ
クチャの区分を、CTbSizeYの整数倍ではない寸法を含むピクチャに対して利用不可能にす
る。ピクチャ寸法がCtbSizeYの整数倍ではないとき、サブピクチャ区分がピクチャの幅お
よび/または高さに適用されれば、最も右のサブピクチャおよび最も下のサブピクチャに
対するルマサンプル単位のサブピクチャ幅および/またはサブピクチャ高さの導出は不正
確になるであろう。一部のコーディングツールでは、そのような不正確な導出は誤った結
果をもたらす。
【0047】
別の例では、ピクチャにおけるサブピクチャの位置はシグナリングされなくてもよい。
代わりに、位置は以下のルールを使用して導出される。現在のサブピクチャは、ピクチャ
境界内にサブピクチャが収まるのに十分大きいピクチャ内で、CTUラスター走査順序で次
のそのような占有されていない位置に配置される。場合によっては、そのような方法でサ
ブピクチャ位置を導出することはエラーを引き起こすことがある。たとえば、サブピクチ
ャが送信において失われる場合、次いで、他のサブピクチャの位置が不正確に導出され、
復号されたサンプルが誤った位置に置かれる。サブピクチャが誤った順序で到着するとき
、同じ問題が当てはまる。
【0048】
別の例では、サブピクチャを復号することは、参照ピクチャにおいて同じ位置にあるサ
ブピクチャの抽出を必要としてもよい。これは、プロセッサおよびメモリリソースの使用
に関して、さらなる複雑さおよび結果として生じる負担を強いることがある。
【0049】
別の例では、サブピクチャが時間動き制約サブピクチャとして設計されるとき、サブピ
クチャ境界を走査するループフィルタが無効にされる。これは、タイル境界を走査するル
ープフィルタが有効にされるかどうかにかかわらず発生する。そのような制約は、厳しす
ぎることがあり、複数のサブピクチャを利用するビデオピクチャに対して視覚的なアーテ
ィファクトをもたらすことがある。
【0050】
別の例では、SPS、STGPS、PPS、およびタイルグループヘッダ間の関係は次の通りであ
る。STGPSはSPSを参照し、PPSはSTGPSを参照し、タイルグループヘッダ/スライスヘッダ
はPPSを参照する。しかしながら、STGPSおよびPPSは、PPSがSTGPSを参照するのではなく
、直交していなければならない。前述の構成は、同じピクチャのすべてのタイルグループ
が同じPPSを参照することも許容しないことがある。
【0051】
別の例では、各STGPSは、サブピクチャの4つの側に対するIDを含んでもよい。そのよう
なIDを使用して同じ境界を共有するサブピクチャを識別し、それらの相対的な空間関係が
定義されうる。しかしながら、場合によっては、そのような情報は、シーケンスレベルタ
イルグループセットに対する位置およびサイズ情報を導出するには十分ではないことがあ
る。他の場合には、位置およびサイズ情報をシグナリングすることは冗長であることがあ
る。
【0052】
別の例では、STGPS IDは、8ビットを使用してVCL NALユニットのNALユニットヘッダに
おいてシグナリングされてもよい。これはサブピクチャ抽出を助けてもよい。そのような
シグナリングは、NALユニットヘッダの長さを不必要に伸ばしてもよい。別の問題は、シ
ーケンスレベルタイルグループセットが重複を防ぐように制約されない限り、1つのタイ
ルグループが複数のシーケンスレベルタイルグループセットと関連付けられることがある
ということである。
【0053】
上述の問題のうちの1つ以上に対処するために、様々な機構が本明細書で開示される。
第1の例では、サブピクチャのレイアウト情報が、PPSではなくSPSに含まれる。サブピク
チャレイアウト情報は、サブピクチャ位置およびサブピクチャサイズを含む。サブピクチ
ャ位置は、サブピクチャの左上サンプルとピクチャの左上サンプルとの間のオフセットで
ある。サブピクチャサイズは、ルマサンプルで測定されるようなサブピクチャの高さと幅
である。上で述べられたように、タイルはピクチャごとに変化してもよいので、一部のシ
ステムはPPSにタイリング情報を含む。しかしながら、ROI適用およびサブピクチャベース
のアクセスをサポートするために、サブピクチャが使用されてもよい。これらの機能は、
ピクチャごとに変化しない。さらに、ビデオシーケンスは、単一のSPS(またはビデオセグ
メントごとに1つ)を含んでもよく、ピクチャごとに1つものPPSを含んでもよい。SPSにサ
ブピクチャのレイアウト情報を配置することは、レイアウトが各PPSに対して冗長にシグ
ナリングされるのではなくシーケンス/セグメントに対して1回しかシグナリングされない
ことを確実にする。したがって、SPSにおいてサブピクチャレイアウトをシグナリングす
ることは、コーディング効率を高めるので、ネットワークリソース、メモリリソース、お
よび/またはエンコーダとデコーダにおける処理リソースの使用を減らす。また、一部の
システムは、デコーダによって導かれるサブピクチャ情報を有する。サブピクチャ情報を
シグナリングすることは、パケットが失われる場合のエラーの確率を下げ、サブピクチャ
を抽出することに関して追加の機能をサポートする。したがって、SPSにおいてサブピク
チャレイアウトをシグナリングすることは、エンコーダおよび/またはデコーダの機能を
高める。
【0054】
第2の例では、サブピクチャの幅およびサブピクチャの高さは、CTUサイズの倍数に制約
される。しかしながら、これらの制約は、サブピクチャがピクチャの右の境界またはピク
チャの下の境界にそれぞれ配置されるとき、取り除かれる。上で述べられたように、一部
のビデオシステムは、CTUサイズの倍数である高さおよび幅を含むようにサブピクチャを
制限してもよい。これは、サブピクチャが多数のピクチャレイアウトとともに正しく動作
するのを妨げる。下と右のサブピクチャが、CTUサイズの倍数ではない高さと幅をそれぞ
れ含むのを可能にすることによって、サブピクチャは、復号エラーを引き起こすことなく
任意のピクチャとともに使用されてもよい。これは、エンコーダ機能とデコーダ機能の向
上をもたらす。さらに、向上した機能により、エンコーダはより効率的にピクチャをコー
ディングすることが可能になり、これは、エンコーダとデコーダにおけるネットワークリ
ソース、メモリリソース、および/または処理リソースの使用を減らす。
【0055】
第3の例では、サブピクチャは、間隙または重複なしでピクチャを包含するように制約
される。上で述べられたように、一部のビデオコーディングシステムは、サブピクチャが
間隙および重複を含むことを許容する。これは、タイルグループ/スライスが複数のサブ
ピクチャと関連付けられる可能性を生み出す。これがエンコーダにおいて許容される場合
、デコーダは、その復号方式が滅多に使用されないときであっても、そのようなコーディ
ング方式をサポートするように構築されなければならない。サブピクチャの間隙および重
複を許容しないことで、サブピクチャのサイズおよび位置を決定するときにデコーダが潜
在的な間隙および重複を考慮することが必要とされないので、デコーダの複雑さを下げる
ことができる。さらに、サブピクチャの間隙および重複を許容しないことで、ビデオシー
ケンスに対する符号化を選択するときにエンコーダが間隙と重複の事例を考慮するのを省
略できるので、エンコーダにおけるレート歪み最適化(RDO)プロセスの複雑さが低下する
。したがって、間隙および重複を回避することは、エンコーダとデコーダにおけるメモリ
リソースおよび/または処理リソースの使用を減らし得る。
【0056】
第4の例では、サブピクチャがいつ時間動き制約サブピクチャであるかを示すためのフ
ラグが、SPSにおいてシグナリングされうる。上で述べられたように、一部のシステムは
、時間動き制約サブピクチャとしてすべてのサブピクチャをまとめて設定しても、または
、時間動き制約サブピクチャの使用を完全に許容しなくてもよい。そのような時間動き制
約サブピクチャは、コーディング効率の低下という犠牲を伴って、独立抽出機能を提供す
る。しかしながら、関心領域ベースの適用例では、関心領域は独立抽出のためにコーディ
ングされるべきであるが、関心領域の外側の領域はそのような機能を必要としない。よっ
て、残りのサブピクチャは、現実的な利益を何ももたらすことなく、コーディング効率が
低下する。したがって、このフラグは、独立抽出が望まれないときにコーディング効率を
高めるために、独立抽出機能を提供する時間動き制約サブピクチャと非動き制約サブピク
チャとの混合を可能にする。したがって、このフラグは、機能の向上および/またはコー
ディング効率の向上を可能にし、これは、ネットワークリソース、メモリリソース、およ
び/またはエンコーダとデコーダにおける処理リソースの使用を減らす。
【0057】
第5の例では、サブピクチャIDの完全なセットは、SPSにおいてシグナリングされ、スラ
イスヘッダは、対応するスライスを含むサブピクチャを示すサブピクチャIDを含む。上で
述べられたように、一部のシステムは、他のサブピクチャに対する相対的なピクチャ位置
をシグナリングする。これは、サブピクチャが失われる場合、または別々に抽出される場
合に問題を引き起こす。各サブピクチャをIDで指定することによって、サブピクチャは、
他のサブピクチャを参照することなく位置決めされ、サイズ決定されうる。そして、これ
は誤り訂正ならびにサブピクチャの一部のみを抽出して他のサブピクチャの送信を避ける
ような、適用例をサポートする。すべてのサブピクチャIDの完全なリストが、関連するサ
イズ情報とともにSPSにおいて送信されうる。各スライスヘッダは、対応するスライスを
含むサブピクチャを示すサブピクチャIDを含んでもよい。このようにして、サブピクチャ
および対応するスライスは、他のサブピクチャを参照することなく抽出され位置決めされ
うる。よって、サブピクチャIDは、機能の向上および/またはコーディング効率の向上を
助け、これは、ネットワークリソース、メモリリソース、および/またはエンコーダとデ
コーダにおける処理リソースの使用を減らす。
【0058】
第6の例では、レベルが各サブピクチャに対してシグナリングされる。一部のビデオコ
ーディングシステムでは、レベルがピクチャに対してシグナリングされる。レベルは、ピ
クチャを復号するために必要とされるハードウェアリソースを示す。上で述べられたよう
に、場合によっては、異なるサブピクチャは異なる機能を有してもよいので、コーディン
グプロセスの間に異なるように扱われてもよい。したがって、ピクチャベースのレベルは
、一部のピクチャを復号することには有用ではないことがある。よって、本開示は、各サ
ブピクチャに対するレベルを含む。このようにして、各サブピクチャは、より複雑ではな
い機構に従ってコーディングされるサブピクチャに対して復号要件をあまりにも高く設定
することによってデコーダに不必要に負担をかけることなく、他のサブピクチャとは独立
にコーディングされうる。シグナリングされるサブピクチャレベル情報は、機能の向上お
よび/またはコーディング効率の向上を助け、これは、ネットワークリソース、メモリリ
ソース、および/またはエンコーダとデコーダにおける処理リソースの使用を減らす。
【0059】
図1は、ビデオ信号をコーディングすることの例示的な動作方法100のフローチャートで
ある。具体的には、ビデオ信号はエンコーダにおいて符号化される。符号化プロセスは、
ビデオファイルサイズを減らすための様々な機構を利用することによってビデオ信号を圧
縮する。より小さいファイルサイズは、圧縮されたビデオファイルがユーザへ送信される
ことを可能にしながら、関連する帯域幅オーバーヘッドを減らす。デコーダは次いで、圧
縮されたビデオファイルを復号して、エンドユーザへの表示のために元のビデオ信号を再
構築する。復号プロセスは一般に、デコーダがビデオ信号を安定して再構築することを可
能にするために、符号化プロセスを鏡写しにしたものである。
【0060】
ステップ101において、ビデオ信号がエンコーダに入力される。たとえば、ビデオ信号
は、メモリに記憶された圧縮されていないビデオファイルであってもよい。別の例として
、ビデオファイルは、ビデオカメラなどのビデオキャプチャデバイスによって捉えられ、
ビデオのライブストリーミングをサポートするために符号化されてもよい。ビデオファイ
ルは、オーディオ成分とビデオ成分の両方を含んでもよい。ビデオ成分は、順番に見られ
ると視覚的な動きの効果を与える一連の画像フレームを含む。フレームは、ルマ成分(ま
たはルマサンプル)と本明細書で呼ばれる光に関して表されるピクセル、およびクロマ成
分(またはカラーサンプル)と呼ばれる色に関して表現されるピクセルを含む。いくつかの
例では、フレームは、三次元視聴をサポートするために深度値も含んでもよい。
【0061】
ステップ103において、ビデオはブロックへと区分される。区分は、各フレームのピク
セルを、圧縮のために正方形および/または長方形のブロックへと再分割することを含む
。たとえば、高効率ビデオコーディング(HEVC)(H.265およびMPEG-H Part 2としても知ら
れている)では、フレームをまずコーディングツリーユニット(CTU)へと分割することがで
き、CTUはあらかじめ定められたサイズ(たとえば、64ピクセル対64ピクセル)のブロック
である。CTUはルマサンプルとクロマサンプルの両方を含む。コーディングツリーは、CTU
をブロックへと分割し、次いで、さらなる符号化をサポートする構成が達成されるまでブ
ロックを再帰的に再分割するために利用されてもよい。たとえば、フレームのルマ成分は
、個々のブロックが比較的一様な照明値を含むまで再分割されてもよい。さらに、フレー
ムのクロマ成分は、個々のブロックが比較的一様な色値を含むまで再分割されてもよい。
したがって、区分機構はビデオフレームの内容に依存して変化する。
【0062】
ステップ105において、ステップ103において区分された画像ブロックを圧縮するために
様々な圧縮機構が利用される。たとえば、インター予測および/またはイントラ予測が利
用されてもよい。インター予測は、共通のシーンにおける物体が連続するフレームに出現
する傾向にあるという事実を利用するように設計される。したがって、参照フレームの中
の物体を描写するブロックは、隣接フレームにおいて繰り返し記述される必要はない。具
体的には、テーブルなどの物体は、複数のフレームにわたって一定の位置にとどまっても
よい。したがって、テーブルは一度記述され、隣接フレームは参照フレームに戻って参照
することができる。複数のフレームにわたって物体を照合するために、パターン照合機構
が利用されてもよい。さらに、動いている物体は、たとえば物体の動きまたはカメラの動
きにより、複数のフレームにまたがって表現されることがある。特定の例として、ビデオ
は、複数のフレームにわたって画面上を動き回る自動車を示すことがある。動きベクトル
は、そのような動きを記述するために利用されてもよい。動きベクトルは、フレームにお
ける物体の座標から参照フレームにおける物体の座標までのオフセットを与える二次元ベ
クトルである。したがって、インター予測は、参照フレームの中の対応するブロックから
のオフセットを示す動きベクトルのセットとして、現在のフレームの中の画像ブロックを
符号化することができる。
【0063】
イントラ予測は共通のフレームの中のブロックを符号化する。イントラ予測は、ルマ成
分およびクロマ成分がフレームにおいて密集する傾向があるという事実を利用する。たと
えば、木の一部における緑色の斑点は、同様の緑色の斑点の隣に位置決めされる傾向があ
る。イントラ予測は、複数の指向性予測モード(たとえば、HEVCでは33個)、平面モード、
および直流(DC)モードを利用する。指向性モードは、現在のブロックが対応する方向にお
ける近隣ブロックのサンプルと類似する/同じであることを示す。平面モードは、行/列(
たとえば、平面)に沿った一連のブロックが行の端にある近隣ブロックに基づいて補間さ
れうることを示す。平面モードは、実質的に、値を変化させることにより比較的一定の勾
配を利用することによって、行/列にわたる光/色の滑らかな遷移を示す。DCモードは、境
界平滑化のために利用され、指向性予測モードの角度方向と関連付けられるすべての近隣
ブロックのサンプルと関連付けられる平均値とブロックが同様/同じであることを示す。
したがって、イントラ予測ブロックは、実際の値の代わりに様々な関係予測モード値とし
て画像ブロックを表すことができる。さらに、インター予測ブロックは、実際の値の代わ
りに動きベクトル値として画像ブロックを表すことができる。いずれの場合でも、予測ブ
ロックは、いくつかの場合、画像ブロックを厳密に表現しなくてもよい。あらゆる差分が
残差ブロックに蓄積される。ファイルをさらに圧縮するために、残差ブロックに変換が適
用されてもよい。
【0064】
ステップ107において、様々なフィルタリング技法が適用されてもよい。HEVCでは、フ
ィルタはループ内フィルタリング方式に従って適用される。上で論じられたブロックベー
スの予測は、デコーダにおけるブロック状画像の作成をもたらしてもよい。さらに、ブロ
ックベースの予測方式は、ブロックを符号化し、次いで、参照ブロックとして後で使用す
るために符号化されたブロックを再構築してもよい。ループ内フィルタリング方式は、ノ
イズ抑制フィルタ、デブロッキングフィルタ、適応ループフィルタ、およびサンプル適応
オフセット(SAO)フィルタをブロック/フレームに反復的に適用する。これらのフィルタは
、符号化されたファイルが正確に再構築されうるように、そのようなブロッキングアーテ
ィファクトを軽減する。さらに、これらのフィルタは再構築された参照ブロックにおける
アーティファクトを軽減するので、アーティファクトは、再構築された参照ブロックに基
づいて符号化される後続のブロックにおいて追加のアーティファクトを生み出す可能性が
より低くなる。
【0065】
ビデオ信号が区分され、圧縮され、フィルタリングされると、ステップ109において、
得られるデータがビットストリームにおいて符号化される。ビットストリームは、上で論
じられたデータ、ならびにデコーダにおける適切なビデオ信号の再構築をサポートするた
めに望まれるあらゆるシグナリングデータを含む。たとえば、そのようなデータは、区分
データ、予測データ、残差ブロック、およびコーディング命令をデコーダに提供する様々
なフラグを含んでもよい。ビットストリームは、要求に応じたデコーダへの送信のために
メモリに記憶されてもよい。ビットストリームはまた、複数のデコーダへのブロードキャ
ストおよび/またはマルチキャストであってもよい。ビットストリームの作成は反復的な
プロセスである。したがって、ステップ101、103、105、107、および109は、多数のフレ
ームおよびブロックにわたって連続的および/または同時に発生してもよい。図1に示され
る順序は、明確にするために、かつ議論を簡単にするために提示されており、ビデオコー
ディングプロセスを特定の順序に制限することは意図されていない。
【0066】
ステップ111において、デコーダが、ビットストリームを受信して復号プロセスを開始
する。具体的には、デコーダは、エントロピー復号方式を利用して、ビットストリームを
対応するシンタックスおよびビデオデータへと変換する。ステップ111において、デコー
ダが、ビットストリームからのシンタックスデータを利用して、フレームに対する区分を
決定する。この区分は、ステップ103におけるブロック区分の結果と一致しなければなら
ない。ステップ111において利用されるようなエントロピー符号化/復号がここで説明され
る。エンコーダは、入力画像における値の空間的な配置に基づいて、いくつかの可能な選
択肢からブロック区分方式を選択することなどの、圧縮プロセスの間に多くの選択を行う
。厳密な選択のシグナリングは、多数のビンを利用してもよい。本明細書では、ビンは、
変数として扱われる二進値(たとえば、状況に応じて変化してもよいビット値)である。エ
ントロピーコーディングは、特定の事例に対して明らかに実行可能ではないあらゆる選択
肢をエンコーダが廃棄することを可能にし、許容可能な選択肢のセットを残す。次いで、
各々の許容可能な選択肢が符号語を割り当てられる。符号語の長さは、許容可能な選択肢
の数に基づく(たとえば、2つの選択肢に対しては1つのビン、3つから4つの選択肢に対し
ては2つのビンなど)。エンコーダは次いで、選択された選択肢に対する符号語を符号化す
る。この方式は符号語のサイズを減らし、それは、すべての可能な選択肢の大きい可能性
のあるセットからの選択を一意に示すのではなく、許容可能な選択肢の小さいサブセット
からの選択を一意に示すのに望まれる程度の大きさに符号語がなるからである。デコーダ
は次いで、許容可能な選択肢のセットをエンコーダと同様の方式で決定することによって
、選択を復号する。許容可能な選択肢のセットを決定することによって、デコーダは、符
号語を読み取り、エンコーダによって行われる選択を決定することができる。
【0067】
ステップ113において、デコーダがブロック復号を実行する。具体的には、デコーダは
、逆変換を利用して残差ブロックを生成する。次いで、デコーダは、残差ブロックおよび
対応する予測ブロックを利用して、区分に従って画像ブロックを再構築する。予測ブロッ
クは、ステップ105においてエンコーダで生成されたようなイントラ予測ブロックとイン
ター予測ブロックの両方を含んでもよい。再構築された画像ブロックは次いで、ステップ
111において決定された区分データに従って、再構築されたビデオ信号のフレームへと位
置決めされる。ステップ113に対するシンタックスはまた、上で論じられたようにエント
ロピーコーディングを介してビットストリームにおいてシグナリングされてもよい。
【0068】
ステップ115において、エンコーダにおいて、ステップ107と同様の方式で、再構築され
たビデオ信号のフレームに対してフィルタリングが実行される。たとえば、ノイズ抑制フ
ィルタ、デブロッキングフィルタ、適応ループフィルタ、およびSAOフィルタが、ブロッ
キングアーティファクトを取り除くためにフレームに適用されてもよい。フレームがフィ
ルタリングされると、ビデオ信号は、エンドユーザによる視聴のために、ステップ117に
おいてディスプレイに出力されうる。
【0069】
図2は、ビデオコーディングのための例示的な符号化および復号(コーデック)システム2
00の概略図である。具体的には、コーデックシステム200は、動作方法100の実施をサポー
トするための機能を提供する。コーデックシステム200は、エンコーダとデコーダの両方
において利用されるコンポーネントを描写するために一般化されている。コーデックシス
テム200は、動作方法100においてステップ101および103に関して論じられるようなビデオ
信号を受信して区分し、これは区分されたビデオ信号201をもたらす。コーデックシステ
ム200は次いで、方法100のステップ105、107、および109に関して論じられたようなエン
コーダとして動作するとき、区分されたビデオ信号201をコーディングされたビットスト
リームへと圧縮する。デコーダとして動作するとき、コーデックシステム200は、動作方
法100のステップ111、113、115、および117に関して論じられたようなビットストリーム
から出力ビデオ信号を生成する。コーデックシステム200は、汎用コーダ制御コンポーネ
ント211、変換スケーリングおよび量子化コンポーネント213、イントラピクチャ推定コン
ポーネント215、イントラピクチャ予測コンポーネント217、動き補償コンポーネント219
、動き推定コンポーネント221、スケーリングおよび逆変換コンポーネント229、フィルタ
制御分析コンポーネント227、ループ内フィルタコンポーネント225、復号ピクチャバッフ
ァコンポーネント223、ならびにヘッダフォーマッティングおよびコンテキスト適応バイ
ナリ算術コーディング(CABAC)コンポーネント231を含む。そのようなコンポーネントは示
されるように結合される。図2では、黒い線は符号化/復号されるべきデータの動きを示し
、破線は他のコンポーネントの動作を制御する制御データの動きを示す。コーデックシス
テム200のコンポーネントは、すべてエンコーダの中に存在してもよい。デコーダは、コ
ーデックシステム200のコンポーネントのサブセットを含んでもよい。たとえば、デコー
ダは、イントラピクチャ予測コンポーネント217、動き補償コンポーネント219、スケーリ
ングおよび逆変換コンポーネント229、ループ内フィルタコンポーネント225、ならびに復
号ピクチャバッファコンポーネント223を含んでもよい。これらのコンポーネントがここ
で説明される。
【0070】
区分されたビデオ信号201は、コーディングツリーによってピクセルのブロックへと区
分された、キャプチャされたビデオシーケンスである。コーディングツリーは、様々な分
割モードを利用して、ピクセルのブロックをピクセルのより小さいブロックへと再分割す
る。これらのブロックは次いで、より小さいブロックへとさらに再分割されうる。ブロッ
クは、コーディングツリー上のノードと呼ばれてもよい。より大きい親ノードは、より小
さい子ノードへと分割される。ノードが再分割される回数は、ノード/コーディングツリ
ーの深度と呼ばれる。いくつかの場合、分割されたブロックはコーディングユニット(CU)
に含まれうる。たとえば、CUは、ルマブロック、赤差分クロマ(Cr)ブロック、および青差
分クロマ(Cb)ブロックを、CUに対する対応するシンタックス命令とともに含む、CTUの下
位部分でありうる。分割モードは、利用される分割モードに応じて形状が変化する2つ、3
つ、または4つの子ノードへとそれぞれノードを区分するために利用される、二分木(BT)
、三分木(TT)、および四分木(QT)を含んでもよい。区分されたビデオ信号201は、圧縮の
ために、汎用コーダ制御コンポーネント211、変換スケーリングおよび量子化コンポーネ
ント213、イントラピクチャ推定コンポーネント215、フィルタ制御分析コンポーネント22
7、ならびに動き推定コンポーネント221に転送される。
【0071】
汎用コーダ制御コンポーネント211は、適用例の制約に従って、ビデオシーケンスの画
像のビットストリームへのコーディングに関する決定を行うように構成される。たとえば
、汎用コーダ制御コンポーネント211は、ビットレート/ビットストリームサイズ対再構築
品質の最適化を管理する。そのような決定は、記憶空間/帯域幅の利用可能性および画像
解像度の要求に基づいて行われてもよい。汎用コーダ制御コンポーネント211はまた、バ
ッファのアンダーランおよびオーバーランの問題を軽減するために、送信速度を考慮して
バッファ利用率を管理する。これらの問題を管理するために、汎用コーダ制御コンポーネ
ント211は、他のコンポーネントによる区分、予測、およびフィルタリングを管理する。
たとえば、汎用コーダ制御コンポーネント211は、圧縮の複雑さを動的に上げて解像度を
向上させて帯域幅使用率を向上させ、または、圧縮の複雑さを下げて解像度および帯域幅
使用率を低下させてもよい。したがって、汎用コーダ制御コンポーネント211は、コーデ
ックシステム200の他のコンポーネントを制御して、ビデオ信号再構築の品質とビットレ
ートの問題のバランスをとる。汎用コーダ制御コンポーネント211は、制御データを作成
し、これは他のコンポーネントの動作を制御する。制御データは、ヘッダフォーマッティ
ングおよびCABACコンポーネント231にも転送されて、デコーダにおける復号のためのパラ
メータをシグナリングするためにビットストリームにおいて符号化される。
【0072】
区分されたビデオ信号201はまた、インター予測のために動き推定コンポーネント221お
よび動き補償コンポーネント219に送信される。区分されたビデオ信号201のフレームまた
はスライスは、複数のビデオブロックへと分割されてもよい。動き推定コンポーネント22
1および動き補償コンポーネント219は、1つ以上の参照フレームの中の1つ以上のブロック
に対して相対的な、受信されたビデオブロックのインター予測コーディングを実行して、
時間予測を行う。コーデックシステム200は、複数のコーディングパスを実行して、たと
えば、ビデオデータの各ブロックに対して適切なコーディングモードを選択してもよい。
【0073】
動き推定コンポーネント221および動き補償コンポーネント219は、高度に統合されても
よいが、概念上の目的で別々に示される。動き推定コンポーネント221によって実行され
る動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである
。動きベクトルは、たとえば、予測ブロックに対して相対的なコーディングされたオブジ
ェクトのずれを示してもよい。予測ブロックは、ピクセル差分に関して、コーディングさ
れるべきブロックによく一致することが見いだされるブロックである。予測ブロックは参
照ブロックとも呼ばれてもよい。そのようなピクセル差分は、絶対値差分和(SAD)、平方
差分和(SSD)、または他の差分尺度によって決定されてもよい。HEVCは、CTU、コーディン
グツリーブロック(CTB)、およびCUを含む、いくつかのコーディングされたオブジェクト
を利用する。たとえば、CTUをCTBへと分割することができ、次いで、CUに含めるためにCT
BをCBへと分割することができる。CUは、予測データを含む予測ユニット(PU)および/また
はCUのための変換された残差データを含む変換ユニット(TU)として符号化されることがで
きる。動き推定コンポーネント221は、レート歪み最適化プロセスの一部としてレート歪
み分析を使用することによって、動きベクトル、PU、およびTUを生成する。たとえば、動
き推定コンポーネント221は、現在のブロック/フレームのための複数の参照ブロック、複
数の動きベクトルなどを決定してもよく、最良のレート歪み特性を有する参照ブロック、
動きベクトルなどを選択してもよい。最良のレート歪み特性は、ビデオ再構築の品質(た
とえば、圧縮によるデータ喪失の量)とコーディング効率(たとえば、最終的な符号化のサ
イズ)のバランスをとる。
【0074】
いくつかの例では、コーデックシステム200は、復号ピクチャバッファコンポーネント2
23に記憶されている参照ピクチャのサブ整数ピクセル位置に対する値を計算してもよい。
たとえば、ビデオコーデックシステム200は、4分の1ピクセル位置、8分の1ピクセル位置
、または参照ピクチャの他の分数ピクセル位置の値を補間してもよい。したがって、動き
推定コンポーネント221は、整数ピクセル位置と分数ピクセル位置に対する動き探索を実
行して、分数ピクセル精度の動きベクトルを出力してもよい。動き推定コンポーネント22
1は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インター
コーディングされたスライスの中のビデオブロックのPUに対する動きベクトルを計算する
。動き推定コンポーネント221は、計算された動きベクトルを符号化のために動きデータ
としてヘッダフォーマッティングおよびCABACコンポーネント231に出力し、動きを動き補
償コンポーネント219に出力する。
【0075】
動き補償コンポーネント219によって実行される動き補償は、動き推定コンポーネント2
21によって決定される動きベクトルに基づいて予測ブロックをフェッチまたは生成するこ
とを伴ってもよい。再び、動き推定コンポーネント221および動き補償コンポーネント219
は、いくつかの例では機能的に統合されてもよい。現在のビデオブロックのPUに対する動
きベクトルを受信すると、動き補償コンポーネント219は、動きベクトルが指し示す予測
ブロックを位置特定してもよい。残差ビデオブロックは次いで、コーディングされている
現在のビデオブロックのピクセル値から予測ブロックのピクセル値を差し引き、ピクセル
差分値を形成することによって形成される。一般に、動き推定コンポーネント221は、ル
マ成分に対する動き推定を実行し、動き補償コンポーネント219は、クロマ成分とルマ成
分の両方に対して、ルマ成分に基づいて計算される動きベクトルを使用する。予測ブロッ
クおよび残差ブロックは、変換スケーリングおよび量子化コンポーネント213に転送され
る。
【0076】
区分されたビデオ信号201は、イントラピクチャ推定コンポーネント215およびイントラ
ピクチャ予測コンポーネント217にも送信される。動き推定コンポーネント221および動き
補償コンポーネント219のように、イントラピクチャ推定コンポーネント215およびイント
ラピクチャ予測コンポーネント217は高度に統合されてもよいが、概念上の目的で別々に
示されている。イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コ
ンポーネント217は、上で説明されたように、フレーム間で動き推定コンポーネント221と
動き補償コンポーネント219によって実行されるインター予測に対する代替として、現在
のフレームの中のブロックに対して現在のブロックをイントラ予測する。詳細には、イン
トラピクチャ推定コンポーネント215は、現在のブロックを符号化するために使用すべき
イントラ予測モードを決定する。いくつかの例では、イントラピクチャ推定コンポーネン
ト215は、複数の試験されるイントラ予測モードから、現在のブロックを符号化するため
の適切なイントラ予測モードを選択する。選択されたイントラ予測モードは次いで、符号
化のためにヘッダフォーマッティングおよびCABACコンポーネント231に転送される。
【0077】
たとえば、イントラピクチャ推定コンポーネント215は、様々な試験されたイントラ予
測モードに対するレート歪み分析を使用してレート歪み値を計算し、試験されたモードの
中で最良のレート歪み特性を有するイントラ予測モードを選択する。レート歪み分析は一
般に、符号化されたブロックと、符号化されたブロックを生み出すために符号化された元
の符号化されていないブロックとの間の歪み(またはエラー)の量、ならびに、符号化され
たブロックを生み出すために使用されるビットレート(たとえば、ビットの数)を決定する
。イントラピクチャ推定コンポーネント215は、どのイントラ予測モードがブロックに対
して最良のレート歪み値を示すかを決定するために、様々な符号化されたブロックに対す
る歪みおよびレートから比を計算する。加えて、イントラピクチャ推定コンポーネント21
5は、レート歪み最適化(RDO)に基づいて、深度モデリングモード(DMM)を使用して深度マ
ップの深度ブロックをコーディングするように構成されてもよい。
【0078】
イントラピクチャ予測コンポーネント217は、エンコーダ上で実装されるとき、イント
ラピクチャ推定コンポーネント215によって決定される選択されたイントラ予測モードに
基づいて予測ブロックから残差ブロックを生成し、または、デコーダ上で実装されるとき
、ビットストリームから残差ブロックを読み取ってもよい。残差ブロックは、行列として
表される、予測ブロックと元のブロックとの間の値の差分を含む。残差ブロックは次いで
、変換スケーリングおよび量子化コンポーネント213に転送される。イントラピクチャ推
定コンポーネント215およびイントラピクチャ予測コンポーネント217は、ルマ成分とクロ
マ成分の両方に対して動作してもよい。
【0079】
変換スケーリングおよび量子化コンポーネント213は、残差ブロックをさらに圧縮する
ように構成される。変換スケーリングおよび量子化コンポーネント213は、離散コサイン
変換(DCT)、離散サイン変換(DST)、または概念的に同様の変換などの変換を残差ブロック
に適用し、残差変換係数値を備えるビデオブロックを生み出す。ウェーブレット変換、整
数変換、サブバンド変換、または他のタイプの変換も使用されうる。変換は、残差情報を
ピクセル値領域から周波数領域などの変換領域に変換してもよい。変換スケーリングおよ
び量子化コンポーネント213はまた、たとえば周波数に基づいて、変換された残差情報を
スケーリングするように構成される。そのようなスケーリングは、異なる周波数情報が異
なる粒度で量子化されるように、スケール係数を残差情報に適用することを伴い、これは
、再構築されたビデオの最終的な視覚的品質に影響してもよい。変換スケーリングおよび
量子化コンポーネント213はまた、ビットレートをさらに低減するために変換係数を量子
化するように構成される。量子化プロセスは、係数の一部またはすべてと関連付けられる
ビット深度を低減してもよい。量子化の程度は、量子化パラメータを調整することによっ
て修正されてもよい。いくつかの例では、変換スケーリングおよび量子化コンポーネント
213は次いで、量子化された変換係数を含む行列の走査を実行してもよい。量子化された
変換係数は、ヘッダフォーマッティングおよびCABACコンポーネント231に転送されて、ビ
ットストリームにおいて符号化される。
【0080】
スケーリングおよび逆変換コンポーネント229は、動き推定をサポートするために、変
換スケーリングおよび量子化コンポーネント213の逆の動作を適用する。スケーリングお
よび逆変換コンポーネント229は、逆スケーリング、変換、および/または量子化を適用し
て、たとえば、別の現在のブロックに対する予測ブロックになってもよい参照ブロックと
して後で使用するために、ピクセル領域において残差ブロックを再構築する。動き推定コ
ンポーネント221および/または動き補償コンポーネント219は、後のブロック/フレームの
動き推定において使用するために残差ブロックを対応する予測ブロックに加算し戻すこと
によって参照ブロックを計算してもよい。スケーリング、量子化、および変換の間に生み
出されるアーティファクトを軽減するために、再構築された参照ブロックにフィルタが適
用される。そのようなアーティファクトは、そうされなければ、後続のブロックが予測さ
れるときに不正確な予測を引き起こし(およびさらなるアーティファクトを生み出し)うる
【0081】
フィルタ制御分析コンポーネント227およびループ内フィルタコンポーネント225は、フ
ィルタを残差ブロックおよび/または再構築された画像ブロックに適用する。たとえば、
スケーリングおよび逆変換コンポーネント229からの変換された残差ブロックは、元の画
像ブロックを再構築するために、イントラピクチャ予測コンポーネント217および/または
動き補償コンポーネント219からの対応する予測ブロックと組み合わせられてもよい。フ
ィルタは次いで、再構築された画像ブロックに適用されてもよい。いくつかの例では、フ
ィルタは代わりに、残差ブロックに適用されてもよい。図2の他のコンポーネントのよう
に、フィルタ制御分析コンポーネント227およびループ内フィルタコンポーネント225は高
度に統合され、一緒に実装されてもよいが、概念上の目的で別々に図示されている。再構
築された参照ブロックに適用されるフィルタは、特定の空間領域に適用され、そのような
フィルタがどのように適用されるかを調整するための複数のパラメータを含む。フィルタ
制御分析コンポーネント227は、そのようなフィルタがどこで適用されるべきかを決定す
るために再構築された参照ブロックを分析し、対応するパラメータを設定する。そのよう
なデータは、符号化のためにフィルタ制御データとしてヘッダフォーマッティングおよび
CABACコンポーネント231に転送される。ループ内フィルタコンポーネント225は、フィル
タ制御データに基づいてそのようなフィルタを適用する。フィルタは、デブロッキングフ
ィルタ、ノイズ抑制フィルタ、SAOフィルタ、および適応ループフィルタを含んでもよい
。そのようなフィルタは、例に応じて、空間/ピクセル領域で(たとえば、再構築されたピ
クセルブロック上で)、または周波数領域で適用されてもよい。
【0082】
エンコーダとして動作するとき、フィルタリングされた再構築された画像ブロック、残
差ブロック、および/または予測ブロックは、上で論じられたような動き推定において後
で使用するために、復号ピクチャバッファコンポーネント223に記憶される。デコーダと
して動作するとき、復号ピクチャバッファコンポーネント223は、出力ビデオ信号の一部
として、再構築されフィルタリングされたブロックを記憶してディスプレイに転送する。
復号ピクチャバッファコンポーネント223は、予測ブロック、残差ブロック、および/また
は再構築された画像ブロックを記憶することが可能な任意のメモリデバイスであってもよ
い。
【0083】
ヘッダフォーマッティングおよびCABACコンポーネント231は、コーデックシステム200
の様々なコンポーネントからデータを受信し、デコーダへの送信のためにそのようなデー
タをコーディングされたビットストリームへと符号化する。具体的には、ヘッダフォーマ
ッティングおよびCABACコンポーネント231は、一般的な制御データおよびフィルタ制御デ
ータなどの制御データを符号化するために、様々なヘッダを生成する。さらに、イントラ
予測および動きデータ、ならびに量子化された変換係数データの形態の残差データを含む
予測データが、すべてビットストリームにおいて符号化される。最終的なビットストリー
ムは、元の区分されたビデオ信号201を再構築するためにデコーダによって望まれるすべ
ての情報を含む。そのような情報は、イントラ予測モードインデックステーブル(符号語
マッピングテーブルとも呼ばれる)、様々なブロックに対する符号化コンテキストの定義
、最も確率の高いイントラ予測モードの指示、区分情報の指示なども含んでもよい。その
ようなデータは、エントロピーコーディングを利用することによって符号化されてもよい
。たとえば、情報は、コンテキスト適応可変長コーディング(CAVLC)、CABAC、シンタック
スベースコンテキスト適応バイナリ算術コーディング(SBAC)、確率間隔区分エントロピー
(PIPE)コーディング、または別のエントロピーコーディング技法を利用することによって
符号化されてもよい。エントロピーコーディングに続いて、コーディングされたビットス
トリームは、別のデバイス(たとえば、ビデオデコーダ)に送信されてもよく、または、よ
り後の送信もしくは取り出しのためにアーカイブされてもよい。
【0084】
図3は、例示的なビデオエンコーダ300を示すブロック図である。ビデオエンコーダ300
は、コーデックシステム200の符号化機能を実装するために、ならびに/または動作方法10
0のステップ101、103、105、107、および/もしくは109を実装するために利用されてもよ
い。エンコーダ300は、入力ビデオ信号を区分し、区分されたビデオ信号201と実質的に同
様である区分されたビデオ信号301をもたらす。区分されたビデオ信号301は次いで圧縮さ
れて、エンコーダ300のコンポーネントによりビットストリームへと符号化される。
【0085】
具体的には、区分されたビデオ信号301は、イントラ予測のためにイントラピクチャ予
測コンポーネント317に転送される。イントラピクチャ予測コンポーネント317は、イント
ラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217と実質
的に同様であってもよい。区分されたビデオ信号301はまた、復号ピクチャバッファコン
ポーネント323の中の参照ブロックに基づくインター予測のために動き補償コンポーネン
ト321に転送される。動き補償コンポーネント321は、動き推定コンポーネント221および
動き補償コンポーネント219と実質的に同様であってもよい。イントラピクチャ予測コン
ポーネント317および動き補償コンポーネント321からの予測ブロックおよび残差ブロック
は、残差ブロックの変換および量子化のために変換および量子化コンポーネント313に転
送される。変換および量子化コンポーネント313は、変換スケーリングおよび量子化コン
ポーネント213と実質的に同様であってもよい。変換され量子化された残差ブロックおよ
び対応する予測ブロックは(関連する制御データとともに)、ビットストリームへのコーデ
ィングのためにエントロピーコーディングコンポーネント331に転送される。エントロピ
ーコーディングコンポーネント331は、ヘッダフォーマッティングおよびCABACコンポーネ
ント231と実質的に同様であってもよい。
【0086】
変換され量子化された残差ブロックおよび/または対応する予測ブロックは、動き補償
コンポーネント321により使用される参照ブロックへの再構築のために、変換および量子
化コンポーネント313から逆変換および量子化コンポーネント329にも転送される。逆変換
および量子化コンポーネント329は、スケーリングおよび逆変換コンポーネント229と実質
的に同様であってもよい。ループ内フィルタコンポーネント325の中のループ内フィルタ
は、例に応じて、残差ブロックおよび/または再構築された参照ブロックにも適用される
。ループ内フィルタコンポーネント325は、フィルタ制御分析コンポーネント227およびル
ープ内フィルタコンポーネント225と実質的に同様であってもよい。ループ内フィルタコ
ンポーネント325は、ループ内フィルタコンポーネント225に関して論じられたような複数
のフィルタを含んでもよい。フィルタリングされたブロックは次いで、動き補償コンポー
ネント321により参照ブロックとして使用するために、復号ピクチャバッファコンポーネ
ント323に記憶される。復号ピクチャバッファコンポーネント323は、復号ピクチャバッフ
ァコンポーネント223と実質的に同様であってもよい。
【0087】
図4は、例示的なビデオデコーダ400を示すブロック図である。ビデオデコーダ400は、
コーデックシステム200の復号機能を実装するために、ならびに/または動作方法100のス
テップ111、113、115、および/もしくは117を実施するために利用されてもよい。デコー
ダ400は、たとえばエンコーダ300から、ビットストリームを受信し、エンドユーザに表示
するために、再構築された出力ビデオ信号をビットストリームに基づいて生成する。
【0088】
ビットストリームは、エントロピー復号コンポーネント433によって受信される。エン
トロピー復号コンポーネント433は、CAVLC、CABAC、SBAC、PIPEコーディング、または他
のエントロピーコーディング技法などのエントロピー復号方式を実装するように構成され
る。たとえば、エントロピー復号コンポーネント433は、ビットストリームにおいて符号
語として符号化される追加のデータを解釈するためのコンテキストを提供するために、ヘ
ッダ情報を利用してもよい。復号された情報は、一般的な制御データ、フィルタ制御デー
タ、区分情報、動き情報、予測データ、および残差ブロックからの量子化された変換係数
などの、ビデオ信号を復号するための任意の望まれる情報を含む。量子化された変換係数
は、残差ブロックへの再構築のために逆変換および量子化コンポーネント429に転送され
る。逆変換および量子化コンポーネント429は、逆変換および量子化コンポーネント329と
同様であってもよい。
【0089】
再構築された残差ブロックおよび/または予測ブロックは、イントラ予測動作に基づい
て、画像ブロックへの再構築のためにイントラピクチャ予測コンポーネント417に転送さ
れる。イントラピクチャ予測コンポーネント417は、イントラピクチャ推定コンポーネン
ト215およびイントラピクチャ予測コンポーネント217と同様であってもよい。具体的には
、イントラピクチャ予測コンポーネント417は、フレームの中で参照ブロックを位置特定
するために予測モードを利用し、残差ブロックを結果に適用してイントラ予測された画像
ブロックを再構築する。再構築されたイントラ予測された画像ブロックおよび/または残
差ブロックならびに対応するインター予測データは、ループ内フィルタコンポーネント42
5を介して復号ピクチャバッファコンポーネント423に転送され、これらは、復号ピクチャ
バッファコンポーネント223およびループ内フィルタコンポーネント225とそれぞれ実質的
に同様であってもよい。ループ内フィルタコンポーネント425は、再構築された画像ブロ
ック、残差ブロック、および/または予測ブロックをフィルタリングし、そのような情報
は復号ピクチャバッファコンポーネント423に記憶される。復号ピクチャバッファコンポ
ーネント423からの再構築された画像ブロックは、インター予測のために動き補償コンポ
ーネント421に転送される。動き補償コンポーネント421は、動き推定コンポーネント221
および/または動き補償コンポーネント219と実質的に同様であってもよい。具体的には、
動き補償コンポーネント421は、参照ブロックからの動きベクトルを利用して予測ブロッ
クを生成し、残差ブロックを結果に適用して画像ブロックを再構築する。得られる再構築
されたブロックはまた、ループ内フィルタコンポーネント425を介して復号ピクチャバッ
ファコンポーネント423に転送されてもよい。復号ピクチャバッファコンポーネント423は
、追加の再構築された画像ブロックを記憶し続け、これらは区分情報を介してフレームへ
と再構築されうる。そのようなフレームは、シーケンスにも配置されてもよい。シーケン
スは、再構築された出力ビデオ信号としてディスプレイに出力される。
【0090】
図5は、例示的なビットストリーム500およびビットストリーム500から抽出されるサブ
ビットストリーム501を示す概略図である。たとえば、ビットストリーム500は、コーデッ
クシステム200および/またはデコーダ400による復号のために、コーデックシステム200お
よび/またはエンコーダ300によって生成されうる。別の例として、ビットストリーム500
は、ステップ111におけるデコーダによる使用のために、方法100のステップ109において
エンコーダによって生成されてもよい。
【0091】
ビットストリーム500は、シーケンスパラメータセット(SPS)510、複数のピクチャパラ
メータセット(PPS)512、複数のスライスヘッダ514、画像データ520、および1つ以上のSEI
メッセージ515を含む。SPS510は、ビットストリーム500に含まれるビデオシーケンスの中
のすべてのピクチャに共通のシーケンスデータを含む。そのようなデータは、ピクチャサ
イズ、ビット深度、コーディングツールパラメータ、ビットレート制限などを含みうる。
PPS512は、1つ以上の対応するピクチャに固有のパラメータを含む。したがって、ビデオ
シーケンスの中の各ピクチャは、1つのPPS512を指してもよい。PPS512は、対応するピク
チャの中のタイルに対して利用可能なコーディングツール、量子化パラメータ、オフセッ
ト、ピクチャ固有のコーディングツールパラメータ(たとえば、フィルタコントロール)な
どを示しうる。スライスヘッダ514は、ピクチャの中の1つ以上の対応するスライス524に
固有のパラメータを含む。したがって、ビデオシーケンスの中の各スライス524は、スラ
イスヘッダ514を参照してもよい。スライスヘッダ514は、スライスタイプ情報、ピクチャ
順序カウント(POC)、参照ピクチャリスト、予測重み、タイルエントリポイント、デブロ
ッキングパラメータなどを含んでもよい。いくつかの例では、スライス524はタイルグル
ープと呼ばれてもよい。そのような場合、スライスヘッダ514は、タイルグループヘッダ
と呼ばれてもよい。SEIメッセージ515は、ブロック復号のために必要とされないメタデー
タを含む任意選択のメッセージであるが、ピクチャ出力のタイミング、表示設定、損失検
出、損失隠匿などを示すことなどの関連する目的で利用されうる。
【0092】
画像データ520は、インター予測および/またはイントラ予測に従って符号化されるビデ
オデータ、ならびに対応する変換され量子化される残差データを含む。そのような画像デ
ータ520は、符号化の前に画像を区分するために使用される区分に従って分類される。た
とえば、ビデオシーケンスはピクチャ521へと分割される。ピクチャ521はさらにサブピク
チャ522へと分割されてもよく、サブピクチャ522はスライス524へと分割される。スライ
ス524はさらに、タイルおよび/またはCTUへと分割されてもよい。CTUはさらに、コーディ
ングツリーに基づいてコーディングブロックへと分割される。コーディングブロックは次
いで、予測機構に従って符号化/復号されうる。たとえば、ピクチャ521は1つ以上のサブ
ピクチャ522を含みうる。サブピクチャ522は1つ以上のスライス524を含んでもよい。ピク
チャ521はPPS512を参照し、スライス524はスライスヘッダ514を参照する。サブピクチャ5
22は、ビデオシーケンス全体(セグメントとしても知られている)にわたって安定的に区分
されてもよいので、SPS510を参照してもよい。各スライス524は1つ以上のタイルを含んで
もよい。各スライス524、したがってピクチャ521およびサブピクチャ522は、複数のCTUも
含みうる。
【0093】
各ピクチャ521は、対応する瞬間のためのビデオシーケンスと関連付けられる視覚デー
タの完全なセットを含んでもよい。しかしながら、ある適用例では、場合によってはピク
チャ521の一部のみを表示することが望まれてもよい。たとえば、仮想現実(VR)システム
は、ピクチャ521のユーザにより選択された領域を表示してもよく、これは、ピクチャ521
において描写されるシーンにいるような感覚を生み出す。ユーザが見ることを望んでもよ
い領域は、ビットストリーム500が符号化されるときには知られていない。したがって、
ピクチャ521は、サブピクチャ522としてユーザが見る可能性があってもよい各々の可能性
のある領域を含んでもよく、これらの領域は、ユーザ入力に基づいて別々に復号されて表
示されうる。他の適用例では関心領域が別々に表示されてもよい。たとえば、ピクチャイ
ンピクチャ機能のあるテレビは、あるビデオシーケンスからの特定の領域、したがってサ
ブピクチャ522を、関連のないビデオシーケンスのピクチャ521の上に表示するのを望んで
もよい。さらに別の例では、遠隔会議システムは、現在話しているユーザの全体のピクチ
ャ521と、現在話していないユーザのサブピクチャ522とを表示してもよい。したがって、
サブピクチャ522は、ピクチャ521の定められた領域を含んでもよい。時間的に動きが制約
されるサブピクチャ522は、ピクチャ521の残りから別々に復号可能でありうる。具体的に
は、時間動き制約サブピクチャは、時間動き制約サブピクチャの外側のサンプルを参照せ
ずに符号化されるので、ピクチャ521の残りを参照せずに完全な復号を行うのに十分な情
報を含む。
【0094】
各スライス524は、左上の角にあるCTUおよび右下の角にあるCTUによって定義される長
方形であってもよい。いくつかの例では、スライス524は、左から右および上から下に進
むラスター走査順序で、一連のタイルおよび/またはCTUを含む。他の例では、スライス52
4は長方形スライスである。長方形スライスは、ラスター走査順序に従ってピクチャの幅
全体を走査しないことがある。代わりに、長方形スライスは、CTUおよび/またはタイル行
、ならびにCTUおよび/またはタイル列に関して定義される、ピクチャ521および/もしくは
サブピクチャ522の長方形領域ならびに/または正方形領域を含んでもよい。スライス524
は、デコーダによって個別に表示されうる最小単位である。したがって、ピクチャ521か
らのスライス524は、ピクチャ521の望まれる領域を別々に描写するために異なるサブピク
チャ522に割り当てられてもよい。
【0095】
デコーダは、ピクチャ521の1つ以上のサブピクチャ523を表示してもよい。サブピクチ
ャ523は、サブピクチャ522のユーザにより選択されたサブグループまたはあらかじめ定め
られたサブグループである。たとえば、ピクチャ521は9個のサブピクチャ522へと分割さ
れてもよいが、デコーダは、サブピクチャ522のグループから単一のサブピクチャ523のみ
を表示してもよい。サブピクチャ523はスライス525を含み、スライスはスライス524の選
択されたサブグループまたはあらかじめ定められたサブグループである。サブピクチャ52
3の別々の表示を可能にするために、サブビットストリーム501はビットストリーム500か
ら抽出されてもよい(529)。抽出529は、デコーダがサブビットストリーム501のみを受信
するように、エンコーダ側で行われてもよい。他の場合には、ビットストリーム500全体
がデコーダに送信され、デコーダが別々の復号のためにサブビットストリーム501を抽出
する(529)。サブビットストリーム501は、場合によってはビットストリームとも全般に呼
ばれてもよいことに留意されたい。サブビットストリーム501は、SPS510、PPS512、選択
されたサブピクチャ523、ならびに、スライスヘッダ514、およびサブピクチャ523および/
またはスライス525に関連のあるSEIメッセージ515を含む。
【0096】
本開示は、デコーダにおけるサブピクチャ523の選択および表示のためにサブピクチャ5
22の効率的なコーディングをサポートするための、様々なデータをシグナリングする。SP
S510は、サブピクチャサイズ531、サブピクチャ位置532、およびサブピクチャ522の完全
なセットに関するサブピクチャID533を含む。サブピクチャサイズ531は、対応するサブピ
クチャ522に対する、ルマサンプル単位のサブピクチャ高さおよびルマサンプル単位のサ
ブピクチャ幅を含む。サブピクチャ位置532は、対応するサブピクチャ522の左上サンプル
とピクチャ521の左上サンプルとの間のオフセット距離を含む。サブピクチャ位置532およ
びサブピクチャサイズ531は、対応するサブピクチャ522のレイアウトを定義する。サブピ
クチャID533は、対応するサブピクチャ522を一意に識別するデータを含む。サブピクチャ
ID533は、サブピクチャ522のラスター走査インデックスまたは他の定められた値であって
もよい。したがって、デコーダは、SPS510を読み取り、各サブピクチャ522のサイズ、位
置、およびIDを決定することができる。一部のビデオコーディングシステムでは、サブピ
クチャ522に関連するデータはPPS512に含まれることがあり、それは、サブピクチャ522が
ピクチャ521から区分されるからである。しかしながら、サブピクチャ522を作成するため
に使用される区分は、ROIベースの適用例、VR適用例などの、ビデオシーケンス/セグメン
ト全体での一貫したサブピクチャ522の区分に依存する適用例により使用されてもよい。
したがって、サブピクチャ522の区分は、一般にピクチャごとに変化しない。SPS510の中
にサブピクチャ522のレイアウト情報を置くことは、レイアウトが各PPS512(これは場合に
よっては各ピクチャ521に対してシグナリングされてもよい)に対して冗長にシグナリング
されるのではなく、シーケンス/セグメントに対して一度しかシグナリングされないこと
を確実にする。また、そのような情報を導くためにデコーダに依存するのではなく、サブ
ピクチャ522情報をシグナリングすることは、パケット喪失の場合にエラーの確率を下げ
、サブピクチャ523を抽出することに関して追加の機能をサポートする。したがって、SPS
510においてサブピクチャ522のレイアウトをシグナリングすることは、エンコーダおよび
/またはデコーダの機能を改善する。
【0097】
SPS510はまた、サブピクチャ522の完全なセットに関連する動き制約サブピクチャフラ
グ534を含む。動き制約サブピクチャフラグ534は、各サブピクチャ522が時間動き制約サ
ブピクチャであるかどうかを示す。したがって、デコーダは、動き制約サブピクチャフラ
グ534を読み取り、サブピクチャ522のいずれが他のサブピクチャ522を復号することなく
別々に抽出されて表示されうるかを決定することができる。このことは、選択されたサブ
ピクチャ522が時間動き制約サブピクチャとしてコーディングされることを可能にしなが
ら、他のサブピクチャ522がコーディング効率の向上のためにそのような制約なしでコー
ディングされることを可能にする。
【0098】
サブピクチャID533は、スライスヘッダ514にも含まれる。各スライスヘッダ514は、ス
ライス524の対応するセットに関連するデータを含む。したがって、スライスヘッダ514は
、スライスヘッダ514と関連付けられるスライス524に対応するサブピクチャID533のみを
含む。したがって、デコーダは、スライス524を受信し、スライスヘッダ514からサブピク
チャID533を取得し、どのサブピクチャ522がスライス524を含むかを決定することができ
る。デコーダはまた、SPS510の中の関連するデータと相関付けるために、スライスヘッダ
514からのサブピクチャID533を使用することができる。したがって、デコーダは、SPS510
および関連するスライスヘッダ514を読み取ることによって、サブピクチャ522/523および
スライス524/525をどのように位置決めするかを決定することができる。これは、一部の
サブピクチャ522が送信において失われても、またはコーディング効率を高めるために意
図的に省略されても、サブピクチャ523およびスライス525が復号されることを可能にする
【0099】
SEIメッセージ515はまた、サブピクチャレベル535を含んでもよい。サブピクチャレベ
ル535は、対応するサブピクチャ522を復号するために必要なハードウェアリソースを示す
。このようにして、各サブピクチャ522は、他のサブピクチャ522とは独立にコーディング
されうる。これは、各サブピクチャ522がデコーダにおいて正しい量のハードウェアリソ
ースを割り振られうることを確実にする。そのようなサブピクチャレベル535がなければ
、各サブピクチャ522は、最も複雑なサブピクチャ522を復号するのに十分なリソースを割
り振られる。したがって、サブピクチャレベル535は、サブピクチャ522が変化するハード
ウェアリソース要件と関連付けられる場合に、デコーダがハードウェアリソースを過剰に
割り振るのを防ぐ。
【0100】
図6は、サブピクチャ622へと区分される例示的なピクチャ600を示す概略図である。た
とえば、ピクチャ600は、たとえばコーデックシステム200、エンコーダ300、および/また
はデコーダ400によって、ビットストリーム500において符号化され、ビットストリーム50
0から復号されうる。さらに、ピクチャ600は、方法100に係る符号化および復号をサポー
トするように、サブビットストリーム501において区分され、および/または含まれうる。
【0101】
ピクチャ600は、ピクチャ521と実質的に同様であってもよい。さらに、ピクチャ600は
サブピクチャ622へと区分されてもよく、サブピクチャ622はサブピクチャ522と実質的に
同様である。サブピクチャ622は各々サブピクチャサイズ631を含み、サブピクチャサイズ
631はサブピクチャサイズ531としてビットストリーム500に含まれてもよい。サブピクチ
ャサイズ631は、サブピクチャ幅631aおよびサブピクチャ高さ631bを含む。サブピクチャ
幅631aは、ルマサンプルの単位の対応するサブピクチャ622の幅である。サブピクチャ高
さ631bは、ルマサンプルの単位の対応するサブピクチャ622の高さである。サブピクチャ6
22は各々サブピクチャID633を含み、サブピクチャID633はサブピクチャID633としてビッ
トストリーム500に含まれてもよい。サブピクチャID633は、各サブピクチャ622を一意に
識別する任意の値であってもよい。示される例では、サブピクチャID633はサブピクチャ6
22のインデックスである。サブピクチャ622は各々位置632を含み、位置632はサブピクチ
ャ位置532としてビットストリーム500に含まれてもよい。位置632は、対応するサブピク
チャ622の左上サンプルとピクチャ600の左上サンプル642との間のオフセットとして表さ
れる。
【0102】
また示されるように、一部のサブピクチャ622は時間動き制約サブピクチャ634であって
もよく、他のサブピクチャ622はそうではなくてもよい。示される例では、5というサブピ
クチャID633を有するサブピクチャ622は、時間動き制約サブピクチャ634である。これは
、5として識別されるサブピクチャ622が、いずれの他のサブピクチャ622も参照せずにコ
ーディングされ、したがって、他のサブピクチャ622からのデータを考慮することなく抽
出され別々に復号されうることを示す。どのサブピクチャ622が時間動き制約サブピクチ
ャ634であるかの指示は、ビットストリーム500において動き制約サブピクチャフラグ534
の中でシグナリングされうる。
【0103】
示されるように、サブピクチャ622は、間隙または重複なしでピクチャ600を包含するよ
うに制約されうる。間隙は、いずれのサブピクチャ622にも含まれないピクチャ600の領域
である。重複は、1つより多くのサブピクチャ622に含まれるピクチャ600の領域である。
図6に示される例では、サブピクチャ622は、間隙と重複の両方を防ぐようにピクチャ600
から区分される。間隙により、ピクチャ600のサンプルがサブピクチャ622の外側に残る。
重複により、関連するスライスが複数のサブピクチャ622に含まれる。したがって、間隙
および重複により、サンプルは、サブピクチャ622が異なるようにコーディングされると
き、異なる取り扱いによる影響を受けるようになってもよい。これがエンコーダにおいて
許容される場合、デコーダは、復号方式が滅多に使用されないときでも、そのようなコー
ディング方式をサポートしなければならない。サブピクチャ622の間隙および重複を許容
しないことで、サブピクチャサイズ631および位置632を決定するときにデコーダが潜在的
な間隙および重複を考慮することが必要とされないので、デコーダの複雑さを下げること
ができる。さらに、サブピクチャ622の間隙および重複を許容しないことは、エンコーダ
におけるRDOプロセスの複雑さを下げる。これは、ビデオシーケンスに対する符号化を選
択するときにエンコーダが間隙と重複の事例を考慮するのを省略できるからである。した
がって、間隙および重複を回避することは、エンコーダとデコーダにおけるメモリリソー
スおよび/または処理リソースの使用を減らしてもよい。
【0104】
図7は、スライス724をサブピクチャ722のレイアウトに関連付けるための例示的な機構7
00を示す概略図である。たとえば、機構700はピクチャ600に適用されてもよい。さらに、
機構700は、たとえばコーデックシステム200、エンコーダ300、および/またはデコーダ40
0によって、ビットストリーム500の中のデータに基づいて適用されうる。さらに、機構70
0は、方法100に係る符号化および復号をサポートするために利用されうる。
【0105】
機構700は、それぞれ、スライス524/525およびサブピクチャ522/523などの、サブピク
チャ722の中のスライス724に適用されうる。示される例では、サブピクチャ722は、第1の
スライス724a、第2のスライス724b、および第3のスライス724cを含む。スライス724の各
々のスライスヘッダは、サブピクチャ722のサブピクチャID733を含む。デコーダは、スラ
イスヘッダからのサブピクチャID733をSPSの中のサブピクチャID733と照合することがで
きる。デコーダは次いで、サブピクチャID733に基づいてSPSからサブピクチャ722の位置7
32およびサイズを決定することができる。位置732を使用して、サブピクチャ722は、ピク
チャの左上の角742にある左上サンプルに対して相対的に配置されうる。位置732に対する
相対的なサブピクチャ722の高さおよび幅を設定するために、サイズが使用されうる。次
いで、スライス724がサブピクチャ722に含まれうる。したがって、スライス724は、他の
サブピクチャを参照せずに、サブピクチャID733に基づいて正しいサブピクチャ722の中に
位置決めされうる。このことは、他の失われたサブピクチャがサブピクチャ722の復号を
変えないので、誤り訂正を助ける。このことはまた、サブピクチャ722のみを抽出する適
用例を助け、他のサブピクチャの送信を避ける。したがって、サブピクチャID733は、機
能の向上および/またはコーディング効率の向上を助け、これは、ネットワークリソース
、メモリリソース、および/またはエンコーダとデコーダにおける処理リソースの使用を
減らす。
【0106】
図8は、サブピクチャ822へと区分される別の例示的なピクチャ800を示す概略図である
。ピクチャ800は、ピクチャ600と実質的に同様であってもよい。加えて、ピクチャ800は
、たとえばコーデックシステム200、エンコーダ300、および/またはデコーダ400によって
、ビットストリーム500において符号化され、ビットストリーム500から復号されうる。さ
らに、ピクチャ800は、方法100および/または機構700に係る符号化および復号をサポート
するために、サブビットストリーム501において区分され、および/またはそれに含まれう
る。
【0107】
ピクチャ800はサブピクチャ822を含み、サブピクチャ822はサブピクチャ522、523、622
、および/または722と実質的に同様であってもよい。サブピクチャ822は複数のCTU825へ
と分割される。CTU825は、標準化されたビデオコーディングシステムにおける基本コーデ
ィング単位である。CTU825はコーディングツリーによってコーディングブロックへと再分
割され、コーディングブロックはインター予測またはイントラ予測に従ってコーディング
される。示されるように、一部のサブピクチャ822aは、CTU825のサイズの倍数であるサブ
ピクチャ幅およびサブピクチャ高さを含むように制約される。示される例では、サブピク
チャ822aは、6個のCTU825という高さと、5個のCTU825という幅とを有する。この制約は、
ピクチャの右の境界801に位置するサブピクチャ822bおよびピクチャの下の境界802に位置
するサブピクチャ822cに対しては取り除かれる。示される例では、サブピクチャ822bは、
5個と6個の間のCTU825という幅を有する。したがって、サブピクチャ822bは、5つの完全
なCTU825および1つの不完全なCTU825という幅を有する。しかしながら、ピクチャの下の
境界802に位置しないサブピクチャ822bはそれでも、CTU825のサイズの倍数であるサブピ
クチャ高さを維持するように制約される。示される例では、サブピクチャ822cは、6個と7
個の間のCTU825という高さを有する。したがって、サブピクチャ822cは、6つの完全なCTU
825および1つの不完全なCTU825という高さを有する。しかしながら、ピクチャの右の境界
801に位置しないサブピクチャ822cはそれでも、CTU825のサイズの倍数であるサブピクチ
ャ幅を維持するように制約される。ピクチャの右の境界801とピクチャの下の境界802はそ
れぞれ、ピクチャ右境界およびピクチャ下境界とも呼ばれてもよいことに留意されたい。
CTU825のサイズはユーザにより定められる値であることにも留意されたい。CTU825のサイ
ズは、最小のCTU825のサイズと最大のCTU825のサイズとの間の任意の値であってもよい。
たとえば、最小のCTU825のサイズは、高さが16ルマサンプルであり幅が16ルマサンプルで
あってもよい。さらに、最大のCTU825のサイズは、高さが128ルマサンプルであり幅が128
ルマサンプルであってもよい。
【0108】
上で述べられたように、一部のビデオシステムは、CTU825のサイズの倍数である高さお
よび幅を含むようにサブピクチャ822を制限してもよい。これは、サブピクチャ822が、多
数のピクチャレイアウト、たとえばCTU825のサイズの倍数ではない全体の幅または高さを
含むピクチャ800とともに正しく動作するのを妨げることがある。下のサブピクチャ822c
および右のサブピクチャ822bが、CTU825のサイズの倍数ではない高さと幅をそれぞれ含む
ことを許容することによって、サブピクチャ822は、復号エラーを引き起こすことなく任
意のピクチャ800とともに使用されてもよい。これは、エンコーダとデコーダの機能の向
上をもたらす。さらに、向上した機能により、エンコーダはピクチャをより効率的にコー
ディングすることが可能になり、これは、ネットワークリソース、メモリリソース、およ
び/またはエンコーダとデコーダにおける処理リソースの使用を減らす。
【0109】
本明細書において説明されるように、本開示は、ビデオコーディングにおけるサブピク
チャベースのピクチャ区分の設計を説明する。サブピクチャは、ピクチャのために使用さ
れるのと同様の復号プロセスを使用して独立に復号されうる、ピクチャ内の長方形エリア
である。本開示は、コーディングされたビデオシーケンスおよび/またはビットストリー
ムにおけるサブピクチャのシグナリング、ならびに、サブピクチャ抽出のためのプロセス
に関する。技法の説明は、ITU-TおよびISO/IECのJVETによるVVCに基づく。しかしながら
、技法は、他のビデオコーデック仕様にも適用される。以下は本明細書において説明され
る例示的な実施形態である。そのような実施形態は、個々に、または組み合わせで適用さ
れうる。
【0110】
コーディングビデオシーケンス(CVS)に存在してもよいサブピクチャに関する情報は、S
PSなどのシーケンスレベルパラメータセットにおいてシグナリングされてもよい。そのよ
うなシグナリングは、以下の情報を含んでもよい。CVSの各ピクチャに存在するサブピク
チャの数は、SPSにおいてシグナリングされてもよい。SPSまたはCVSの文脈では、すべて
のアクセスユニット(AU)に対する同じ位置にあるサブピクチャは、集合的にサブピクチャ
シーケンスと呼ばれてもよい。各サブピクチャの性質を記述する情報をさらに指定するた
めのループも、SPSに含まれてもよい。この情報は、サブピクチャ識別情報、サブピクチ
ャの位置(たとえば、サブピクチャの左上角ルマサンプルとピクチャの左上角ルマサンプ
ルとの間のオフセット距離)、およびサブピクチャのサイズを備えてもよい。加えて、SPS
は、各サブピクチャが動き制約サブピクチャ(MCTSの機能を含む)であるかどうかをシグナ
リングしてもよい。各サブピクチャに対するプロファイル、階層、およびレベル情報も、
デコーダにおいてシグナリングされ、または導出可能であってもよい。そのような情報は
、元のビットストリームからサブピクチャを抽出することによって作成されるビットスト
リームに対するプロファイル、階層、およびレベル情報を決定するために利用されてもよ
い。各サブピクチャのプロファイルおよび階層は、ビットストリーム全体のプロファイル
および階層と同じであるものとして導かれてもよい。各サブピクチャのレベルは明示的に
シグナリングされてもよい。そのようなシグナリングは、SPSに含まれるループに存在し
てもよい。シーケンスレベルの仮想参照デコーダ(HRD)パラメータは、各サブピクチャ(ま
たは等価的に、各サブピクチャシーケンス)に対するSPSのビデオ使用可能性情報(VUI)セ
クションにおいてシグナリングされてもよい。
【0111】
ピクチャが2つ以上のサブピクチャへと区分されないとき、サブピクチャの特性(たとえ
ば、位置、サイズなど)は、サブピクチャIDを除き、ビットストリームに存在しない/ビッ
トストリームにおいてシグナリングされないことがある。CVSの中のピクチャのサブピク
チャが抽出されるとき、新しいビットストリームの中の各アクセスユニットはサブピクチ
ャを含まないことがある。この場合、新しいビットストリームの中の各AUの中のピクチャ
は、複数のサブピクチャに区分されない。したがって、SPSにおいて位置およびサイズな
どのサブピクチャ特性をシグナリングする必要はなく、それは、そのような情報がピクチ
ャ性質から導出されうるからである。しかしながら、それでもサブピクチャ識別情報がシ
グナリングされてもよく、それは、IDが、抽出されたサブピクチャに含まれるVCL NALユ
ニット/タイルグループにより参照されてもよいからである。これにより、サブピクチャI
Dは、サブピクチャを抽出するときに同じままであることが可能になってもよい。
【0112】
ピクチャの中のサブピクチャの位置(xオフセットおよびyオフセット)は、ルマサンプル
の単位でシグナリングされうる。位置は、サブピクチャの左上角ルマサンプルとピクチャ
の左上角ルマサンプルとの間の距離を表す。代替的に、ピクチャの中のサブピクチャの位
置は、最小コーディングルマブロックサイズ(MinCbSizeY)の単位でシグナリングされうる
。代替的に、サブピクチャ位置オフセットの単位は、パラメータセットにおいてシンタッ
クス要素によって明示的に示されてもよい。単位は、CtbSizeY、MinCbSizeY、ルマサンプ
ル、または他の値であってもよい。
【0113】
サブピクチャのサイズ(サブピクチャ幅およびサブピクチャ高さ)は、ルマサンプルの単
位でシグナリングされうる。代替的に、サブピクチャのサイズは、最小コーディングルマ
ブロックサイズ(MinCbSizeY)の単位でシグナリングされうる。代替的に、サブピクチャサ
イズ値の単位は、パラメータセットにおいてシンタックス要素によって明示的に示されう
る。単位は、CtbSizeY、MinCbSizeY、ルマサンプル、または他の値であってもよい。サブ
ピクチャの右の境界がピクチャの右の境界と一致しないとき、サブピクチャの幅は、ルマ
CTUサイズ(CtbSizeY)の整数倍であることが必要とされてもよい。同様に、サブピクチャ
の下の境界がピクチャの下の境界と一致しないとき、サブピクチャの高さは、ルマCTUサ
イズ(CtbSizeY)の整数倍であることが必要とされてもよい。サブピクチャの幅がルマCTU
サイズの整数倍ではない場合、サブピクチャは、ピクチャの中の最も右の位置に位置する
ことが必要とされてもよい。同様に、サブピクチャの高さがルマCTUサイズの整数倍では
ない場合、サブピクチャは、ピクチャにおける最も下の位置に位置することが必要とされ
てもよい。いくつかの場合、サブピクチャの幅はルマCTUサイズの単位でシグナリングさ
れうるが、サブピクチャの幅はルマCTUサイズの整数倍ではない。この場合、ルマサンプ
ル単位の実際の幅が、サブピクチャのオフセット位置に基づいて導出されうる。サブピク
チャの幅をルマCTUサイズに基づいて導出することができ、ピクチャの高さをルマサンプ
ルに基づいて導出することができる。同様に、サブピクチャの高さはルマCTUサイズの単
位でシグナリングされてもよいが、サブピクチャの高さはルマCTUサイズの整数倍ではな
い。そのような場合、ルマサンプル単位の実際の高さは、サブピクチャのオフセット位置
に基づいて導出されうる。サブピクチャの高さをルマCTUサイズに基づいて導出すること
ができ、ピクチャの高さをルマサンプルに基づいて導出することができる。
【0114】
任意のサブピクチャに対して、サブピクチャIDは、サブピクチャインデックスと異なっ
てもよい。サブピクチャインデックスは、SPSの中のサブピクチャのループにおいてシグ
ナリングされるようなサブピクチャのインデックスであってもよい。サブピクチャIDは、
ピクチャのサブピクチャラスター走査順序における、サブピクチャのインデックスであっ
てもよい。各サブピクチャのサブピクチャIDの値がサブピクチャインデックスと同じであ
るとき、サブピクチャIDはシグナリングまたは導出されてもよい。各サブピクチャのサブ
ピクチャIDがサブピクチャインデックスと異なるとき、サブピクチャIDは明示的にシグナ
リングされる。サブピクチャIDのシグナリングのためのビットの数は、サブピクチャ特性
を含む同じパラメータセットにおいて(たとえば、SPSにおいて)シグナリングされてもよ
い。サブピクチャIDに対するいくつかの値が、ある目的のために確保されてもよい。たと
えば、タイルグループヘッダが、どのサブピクチャがタイルグループを含むかを指定する
ためのサブピクチャIDを含むとき、エミュレーション防止コードが偶然含まれるのを防ぐ
ためにタイルグループヘッダの最初の数ビットがすべて0ではないことを確実にするため
に、サブピクチャに対して値0は確保され、使用されないことがある。ピクチャのサブピ
クチャが間隙および重複なしでピクチャのエリア全体を包含しない任意選択の事例では、
値(たとえば、値1)が、任意のサブピクチャの一部ではないタイルグループに対して確保
されてもよい。代替的に、残りのエリアのサブピクチャIDが明示的にシグナリングされる
。サブピクチャIDをシグナリングするためのビットの数は、次のように制約されてもよい
。値の範囲は、サブピクチャIDの予備の値を含めて、ピクチャの中のすべてのサブピクチ
ャを一意に識別するのに十分でなければならない。たとえば、サブピクチャIDに対するビ
ットの最小の数は、Ceil(Log2(ピクチャの中のサブピクチャの数+予備のサブピクチャID
の数)の値でありうる。
【0115】
サブピクチャの連合が間隙および重複なしでピクチャ全体を包含しなければならないこ
とは、制約されてもよい。この制約が適用されるとき、各サブピクチャに対して、サブピ
クチャが動き制約サブピクチャであるかどうかを指定するためのフラグが存在してもよく
、これは、サブピクチャが抽出されうることを示す。代替的に、サブピクチャの連合は、
ピクチャ全体を包含しないことがあるが、重複が許容されないことがある。
【0116】
NALユニットビットの残りを解析することを抽出器に要求することなくサブピクチャ抽
出プロセスを助けるために、サブピクチャIDがNALユニットヘッダの直後に存在してもよ
い。VCL NALユニットに対して、サブピクチャIDは、タイルグループヘッダの最初のビッ
トに存在してもよい。非VCL NALユニットに対して、次のことが当てはまってもよい。SPS
では、サブピクチャIDは、NALユニットヘッダの直後に存在する必要はない。PPSでは、同
じピクチャのすべてのタイルグループが同じPPSを参照するように制約される場合、サブ
ピクチャIDは、そのNALユニットヘッダの直後に存在する必要はない。同じピクチャのタ
イルグループが異なるPPSを参照することが許容される場合、サブピクチャIDは、PPSの最
初のビット(たとえば、NALユニットヘッダの直後)に存在してもよい。この場合、1つのピ
クチャの任意のタイルグループが、同じPPSを共有することが許容されてもよい。代替的
に、同じピクチャのタイルグループが異なるPPSを参照することが許容され、同じピクチ
ャの異なるタイルグループが同じPPSを共有することも許容されるとき、サブピクチャID
はPPSシンタックスにおいて存在しないことがある。代替的に、同じピクチャのタイルグ
ループが異なるPPSを参照することが許容され、同じピクチャの異なるタイルグループも
同じPPSを共有することが許容されるとき、サブピクチャIDのリストがPPSシンタックスに
おいて存在してもよい。このリストは、PPSが適用されるサブピクチャを示す。他の非VCL
NALユニットに対して、非VCLユニット(たとえば、access unit delimiter、end of sequ
ence、end of bitstreamなど)がピクチャレベルまたはそれ以上に適用される場合、次い
で、サブピクチャIDは、NALユニットヘッダの直後に存在しなくてもよい。それ以外の場
合、サブピクチャIDはNALユニットヘッダの直後に存在してもよい。
【0117】
上記のSPSシグナリングを用いると、個々のサブピクチャ内のタイル区分は、PPSにおい
てシグナリングされてもよい。同じピクチャ内のタイルグループは、異なるPPSを参照す
ることが許容されてもよい。この場合、タイルグルーピングは、各サブピクチャ内のみで
あってもよい。タイルグルーピングの概念は、サブピクチャのタイルへの区分である。
【0118】
代替的に、個々のサブピクチャ内でのタイル区分を記述するためのパラメータセットが
定義される。そのようなパラメータセットは、サブピクチャパラメータセット(SPPS)と呼
ばれてもよい。SPPSはSPSを参照する。SPS IDを参照するシンタックス要素はSPPSに存在
する。SPPSはサブピクチャIDを含んでもよい。サブピクチャ抽出を目的に、サブピクチャ
IDを参照するシンタックス要素は、SPPSにおける第1のシンタックス要素である。SPPSは
タイル構造(たとえば、列の数、行の数、一律なタイルの離隔など)を含む。SPPSは、ルー
プフィルタが関連するサブピクチャ境界にまたがって有効であるかどうかを示すためのフ
ラグを含んでもよい。代替的に、各サブピクチャに対するサブピクチャ特性は、SPSでは
なくSPPSにおいてシグナリングされてもよい。個々のサブピクチャ内でのタイル区分はそ
れでも、PPSにおいてシグナリングされてもよい。同じピクチャ内のタイルグループは、
異なるPPSを参照することが許容される。SPPSが有効にされると、SPPSは復号順序で連続
するAUのシーケンスの間続く。しかしながら、SPPSは、CVSの最初ではないAUにおいて非
アクティブ化/アクティブ化されてもよい。何らかのAUにおける複数のサブピクチャを伴
う単層のビットストリームの復号プロセスの間の任意の瞬間において、複数のSPPSがアク
ティブであってもよい。SPPSは、AUの異なるサブピクチャによって共有されてもよい。代
替的に、SPPSおよびPPSは1つのパラメータセットへと統合されうる。そのような場合、同
じピクチャのすべてのタイルグループが同じPPSを参照することは必要とされないことが
ある。同じサブピクチャの中のすべてのタイルグループが、SPPSとPPSとの間の統合に起
因する同じパラメータセットを参照してもよいような、制約が適用されてもよい。
【0119】
サブピクチャIDをシグナリングするために使用されるビットの数は、NALユニットヘッ
ダにおいてシグナリングされてもよい。NALユニットヘッダにおいて存在するとき、その
ような情報は、NALユニットのペイロードの最初(たとえば、NALユニットヘッダの直後の
最初の数ビット)にあるサブピクチャID値を解析する際に、サブピクチャ抽出プロセスを
助けてもよい。そのようなシグナリングのために、NALユニットヘッダの中の予備のビッ
ト(たとえば、7個の予備のビット)の一部が、NALユニットヘッダの長さを増やすのを避け
るために使用されてもよい。そのようなシグナリングのビットの数は、sub-picture-ID-b
it-lenの値を包含してもよい。たとえば、VVC NALユニットヘッダの7個の予備のビットの
うちの4ビットが、この目的で使用されてもよい。
【0120】
サブピクチャを復号するとき、各コーディングツリーブロックの位置(たとえば、xCtb
およびyCtb)が、サブピクチャの中のルマサンプル位置ではなくピクチャの中の実際のル
マサンプル位置に調整されてもよい。こうすると、コーディングツリーブロックがサブピ
クチャではなくピクチャを参照して復号されるので、各参照ピクチャからの同じ位置にあ
るサブピクチャの抽出を避けることができる。コーディングツリーブロックの位置を調整
するために、変数SubpictureXOffsetおよびSubpictureYOffsetが、サブピクチャの位置(s
ubpic_x_offsetおよびsubpic_y_offset)に基づいて導出されうる。変数の値は、サブピク
チャの中の各コーディングツリーブロックの、ルマサンプル位置xおよびyの座標の値にそ
れぞれ加算されてもよい。
【0121】
サブピクチャ抽出プロセスは次のように定義されうる。プロセスへの入力は、抽出され
るべき標的サブピクチャである。これは、サブピクチャIDまたはサブピクチャ位置の形式
でありうる。入力がサブピクチャの位置であるとき、関連するサブピクチャIDが、SPSの
中のサブピクチャ情報を解析することによって解決されうる。非VCL NALユニットに対し
ては、次のことが当てはまる。ピクチャサイズおよびレベルに関するSPSの中のシンタッ
クス要素が、サブピクチャのサイズおよびレベル情報とともに更新されてもよい。以下の
非VCL NALユニット、すなわち、PPS、Access Unit Delimiter (AUD)、End of Sequence (
EOS)、End of Bitstream (EOB)、およびピクチャレベルまたはそれ以上に適用可能な任意
の他の非VCL NALユニットは、変更されないままである。標的サブピクチャIDに等しくな
いサブピクチャIDを伴う残りの非VCL NALユニットは、取り除かれてもよい。標的サブピ
クチャIDに等しくないサブピクチャIDを伴うVCL NALユニットも、取り除かれてもよい。
【0122】
SEIメッセージをネストするシーケンスレベルサブピクチャは、サブピクチャのセット
に対するAUレベルSEIメッセージまたはサブピクチャレベルSEIメッセージのネストのため
に使用されてもよい。これは、バッファリング期間、ピクチャタイミング、および非HRD
SEIメッセージを含んでもよい。SEIメッセージをネストするこのサブピクチャのシンタッ
クスおよびセマンティクスは、次の通りでありうる。無指向性メディアフォーマット(OMA
F)環境などにおけるシステム動作では、ビューポートを包含するサブピクチャシーケンス
のセットは、OMAFプレーヤによって要求され復号されてもよい。したがって、シーケンス
レベルSEIメッセージは、長方形ピクチャ領域を集合的に包含するサブピクチャシーケン
スのセットの情報を搬送するために使用される。この情報はシステムによって使用される
ことができ、この情報は、要求される復号能力ならびにサブピクチャシーケンスのセット
のビットレートを示すものである。この情報は、サブピクチャシーケンスのセットのみを
含むビットストリームのレベルを示す。この情報はまた、サブピクチャシーケンスのセッ
トのみを含むビットストリームのビットレートを示す。任意選択で、サブビットストリー
ム抽出プロセスは、サブピクチャシーケンスのセットに対して指定されてもよい。これを
行うことの利点は、サブピクチャシーケンスのセットのみを含むビットストリームも適合
したものになりうるということである。欠点は、異なるビューポートサイズの可能性を考
慮する際に、すでに多数である可能性のある個々のサブピクチャシーケンスに加えて、多
くのそのようなセットが存在しうるということである。
【0123】
ある例示的な実施形態では、開示される例の1つ以上は次のように実施されてもよい。
サブピクチャが、ピクチャ内の1つ以上のタイルグループの長方形領域として定義されて
もよい。許容される二分割プロセスは次のように定義されてもよい。このプロセスへの入
力は、二分割モードbtSplit、コーディングブロック幅cbWidth、コーディングブロック高
さcbHeight、ピクチャの左上ルマサンプルに対する相対的な考慮されるコーディングブロ
ックの左上ルマサンプルの位置(x0,y0)、マルチタイプ木深度mttDepth、オフセットを伴
う最大マルチタイプ木深度maxMttDepth、最大二分木サイズmaxBtSize、および区分インデ
ックスpartIdxである。このプロセスの出力は、変数allowBtSplitである。
【表1】
【0124】
変数parallelTtSplitおよびcbSizeは、上で規定されたように導出される。変数allowBt
Spitは次のように導出される。次の条件、すなわち、cbSizeがMinBtSizeY以下である、cb
WidthがmaxBtSizeより大きい、cbHeightがmaxBtSizeより大きい、およびmttDepthがmaxMt
tDepth以上であるという条件のうちの1つ以上が真である場合、allowBtSplitはFALSEに等
しく設定される。そうではなく、次の条件、すなわち、btSplitがSPLIT_BT_VERに等しい
、およびy0+cbHeightがSupPicBottomBorderInPicより大きいという条件のすべてが真であ
る場合、allowBtSplitはFALSEに等しく設定される。そうではなく、次の条件、すなわち
、btSplitがSPLIT_BT_HORに等しい、およびx0+cbWidthがSupPicRightBorderInPicより大
きい、およびy0+cbHeightがSubPicBottomBorderInPic以下であるという条件のすべてが真
である場合、allowBtSplitはFALSEに等しく設定される。そうではなく、次の条件、すな
わち、mttDepthが0より大きい、partIdxが1に等しい、およびMttSplitMode[x0][y0][mttD
epth-1]がparallelTtSplitに等しいという条件のすべてが真である場合、allowBtSplitは
FALSEに等しく設定される。そうではなく、次の条件、すなわち、btSplitがSPLIT_BT_VER
に等しい、cbWidthがMaxTbSizeY以下である、およびcbHeightがMaxTbSizeYより大きいと
いう条件のすべてが真である場合、allowBtSplitはFALSEに等しく設定される。そうでは
なく、次の条件、すなわち、btSplitがSPLIT_BT_HORに等しい、cbWidthがMaxTbSizeYより
大きい、およびcbHeightがMaxTbSizeY以下であるという条件のすべてが真である場合、al
lowBtSplitはFALSEに等しく設定される。それ以外の場合、allowBtSplitはTRUEに等しく
設定される。
【0125】
許容される三分割プロセスは、次のように定義されてもよい。このプロセスへの入力は
、三分割モードttSplit、コーディングブロック幅cbWidth、コーディングブロック高さcb
Height、ピクチャの左上ルマサンプルに対する相対的な考慮されるコーディングブロック
の左上ルマサンプルの位置(x0,y0)、マルチタイプ木深度mttDepth、オフセットを伴う最
大マルチタイプ木深度maxMttDepth、および最大二分木サイズmaxTtSizeである。このプロ
セスの出力は、変数allowTtSplitである。
【表2】
【0126】
変数cbSizeは上で規定されたように導出される。変数allowTtSplitは次のように導出さ
れる。次の条件、すなわち、cbSizeが2*MinTtSizeY以下である、cbWidthがMin(MaxTbSize
Y,maxTtSize)より大きい、cbHeightがMin(MaxTbSizeY,maxTtSize)より大きい、mttDepth
がmaxMttDepth以上である、x0+cbWidthがSupPicRightBoderInPicより大きい、およびy0+c
bHeightがSubPicBottomBorderInPicより大きいという条件のうちの1つ以上が真である場
合、allowTtSplitはFALSEに等しく設定される。それ以外の場合、allowTtSplitはTRUEに
等しく設定される。
【0127】
シーケンスパラメータセットRBSPのシンタックスおよびセマンティクスは次の通りであ
る。
【表3】
【0128】
pic_width_in_luma_samplesは、ルマサンプルの単位で各々の復号されたピクチャの幅
を指定する。pic_width_in_luma_samplesは、0に等しくないものとし、MinCbSizeYの整数
倍であるものとする。pic_height_in_luma_samplesは、ルマサンプルの単位で各々の復号
されたピクチャの高さを指定する。pic_height_in_luma_samplesは、0に等しくないもの
とし、MinCbSizeYの整数倍であるものとする。num_subpicture_minus1に1を足したものは
、コーディングされたピクチャにおいて区分されるサブピクチャの数を指定するは、コー
ディングされたビデオシーケンスに属する。subpic_id_len_minus1に1を足したものは、S
PSにおけるシンタックス要素subpic_id[i]、SPSを参照するSPPSの中のspps_subpic_id、
およびSPSを参照するタイルグループヘッダの中のtile_group_subpic_idを表すために使
用されるビットの数を指定する。subpic_id_len_minus1の値は、両端を含めてCeil(Log2(
num_subpic_minus1+2)から8の範囲にあるものとする。subpic_id[i]は、SPSを参照するピ
クチャのi番目のサブピクチャのサブピクチャIDを指定する。subpic_id[i]の長さは、sub
pic_id_len_minus1+1ビットである。subpic_id[i]の値は0より大きいものとする。subpic
_level_idc[i]は、i番目のサブピクチャの抽出に起因するCVSが指定されたリソース要件
に従うレベルを示す。ビットストリームは、指定されるもの以外のsubpic_level_idc[i]
の値を含まないものとする。subpic_level_idc[i]の他の値は確保される。存在しないと
き、subpic_level_idc[i]の値は、general_level_idcの値に等しいと推測される。
【0129】
subpic_x_offset[i]は、ピクチャの左上の角に対する相対的なi番目のサブピクチャの
左上の角の水平オフセットを指定する。存在しないとき、subpic_x_offset[i]の値は0に
等しいと推測される。サブピクチャxのオフセットの値は、SubpictureXOffset[i]=subpic
_x_offset[i]のように導出される。subpic_y_offset[i]は、ピクチャの左上の角に対する
相対的なi番目のサブピクチャの左上の角の垂直オフセットを指定する。存在しないとき
、subpic_y_offset[i]の値は、0に等しいと推測される。サブピクチャyのオフセットの値
は、SubpictureYOffset[i]=subpic_y_offset[i]のように導出される。subpic_width_in_l
uma_samples[i]は、このSPSがアクティブSPSであるi番目の復号されたサブピクチャの幅
を指定する。SubpictureXOffset[i]とsubpic_width_in_luma_samples[i]の合計がpic_wid
th_in_luma_samples未満であるとき、subpic_width_in_luma_samples[i]の値はCtbSizeY
の整数倍であるものとする。存在しないとき、subpic_width_in_luma_samples[i]の値は
、pic_width_in_luma_samplesの値に等しいと推測される。subpic_height_in_luma_sampl
es[i]は、このSPSがアクティブSPSであるi番目の復号されたサブピクチャの高さを指定す
る。SubpictureYOffset[i]とsubpic_height_in_luma_samples[i]の合計がpic_height_in_
luma_samples未満であるとき、subpic_height_in_luma_samples[i]の値はCtbSizeYの整数
倍であるものとする。存在しないとき、subpic_height_in_luma_samples[i]の値は、pic_
height_in_luma_samplesの値に等しいと推測される。
【0130】
サブピクチャの連合が重複および間隙なしでピクチャのエリア全体を包含すべきである
ということが、ビットストリーム適合の要件である。1に等しいsubpic_motion_constrain
ed_flag[i]は、i番目のサブピクチャが時間動き制約サブピクチャであることを指定する
。0に等しいsubpic_motion_constrained_flag[i]は、i番目のサブピクチャが時間動き制
約サブピクチャであってもなくてもよいことを指定する。存在しないとき、subpic_motio
n_constrained_flagの値は0に等しいと推測される。
【0131】
変数SubpicWidthInCtbsY、SubpicHeightInCtbsY、SubpicSizeInCtbsY、SubpicWidthInM
inCbsY、SubpicHeightInMinCbsY、SubpicSizeInMinCbsY、SubpicSizeInSamplesY、Subpic
WidthInSamplesC、およびSubpicHeightInSamplesCは、次のように導出される。
SubpicWidthInLumaSamples[i]=subpic_width_in_luma_samples[i]
SubpicHeightInLumaSamples[i]=subpic_height_in_luma_samples[i]
SubPicRightBorderInPic[i]=SubpictureXOffset[i]+PicWidthInLumaSamples[i]
SubPicBottomBorderInPic[i]=SubpictureYOffset[i]+PicHeightInLumaSamples[i]
SubpicWidthInCtbsY[i]=Ceil(SubpicWidthInLumaSamples[i]÷CtbSizeY)
SubpicHeightInCtbsY[i]=Ceil(SubpicHeightInLumaSamples[i]÷CtbSizeY)
SubpicSizeInCtbsY[i]=SubpicWidthInCtbsY[i]*SubpicHeightInCtbsY[i]
SubpicWidthInMinCbsY[i]=SubpicWidthInLumaSamples[i]/MinCbSizeY
SubpicHeightInMinCbsY[i]=SubpicHeightInLumaSamples[i]/MinCbSizeY
SubpicSizeInMinCbsY[i]=SubpicWidthInMinCbsY[i]*SubpicHeightInMinCbsY[i]
SubpicSizeInSamplesY[i]=SubpicWidthInLumaSamples[i]*SubpicHeightInLumaSamples[i]
SubpicWidthInSamplesC[i]=SubpicWidthInLumaSamples[i]/SubWidthC
SubpicHeightInSamplesC[i]=SubpicHeightInLumaSamples[i]/SubHeightC
【0132】
サブピクチャパラメータセットRBSPのシンタックスおよびセマンティクスは次の通りで
ある。
【表4】
【0133】
spps_subpic_idは、SPPSが属するサブピクチャを識別する。spps_subpic_idの長さは、
subpic_id_len_minus1+1ビットである。spps_subpic_parameter_set_idは、他のシンタッ
クス要素による参照のためにSPPSを識別する。spps_subpic_parameter_set_idの値は、両
端を含めて0から63の範囲にあるものとする。spps_seq_parameter_set_idは、アクティブ
SPSに対するsps_seq_parameter_set_idの値を指定する。spps_seq_parameter_set_idの値
は、両端を含めて0から15の範囲にあるものとする。1に等しいsingle_tile_in_subpic_fl
agは、SPPSを参照する各サブピクチャの中に1つのタイルしかないことを指定する。0に等
しいsingle_tile_in_subpic_flagは、SPPSを参照する各サブピクチャの中に1つより多く
のタイルがあることを指定する。num_tile_columns_minus1に1を足したものは、サブピク
チャを区分するタイル列の数を指定する。num_tile_columns_minus1は、両端を含めて0か
らPicWidthInCtbsY[spps_subpic_id]-1の範囲にあるものとする。存在しないとき、num_t
ile_columns_minus1の値は0に等しいと推測される。num_tile_rows_minus1に1を足したも
のは、サブピクチャを区分するタイル行の数を指定する。num_tile_rows_minus1は、両端
を含めて0からPicHeightInCtbsY[spps_subpic_id]-1の範囲にあるものとする。存在しな
いとき、num_tile_rows_minus1の値は0に等しいと推測される。変数NumTilesInPicは、(n
um_tile_columns_minus1+1)*(num_tile_rows_minus1+1)に等しく設定される。
【0134】
single_tile_in_subpic_flagが0に等しいとき、NumTilesInPicは0より大きいものとす
る。1に等しいuniform_tile_spacing_flagは、タイル列の境界と、同様にタイル行の境界
とが、サブピクチャ全体で一律に分布することを指定する。0に等しいuniform_tile_spac
ing_flagは、タイル列の境界と、同様にタイル行の境界とが、サブピクチャ全体で一律に
分布せず、シンタックス要素tile_column_width_minus1[i]およびtile_row_height_minus
1[i]を使用して明示的にシグナリングされることを指定する。存在しないとき、uniform_
tile_spacing_flagの値は1に等しいと推測される。tile_column_width_minus1[i]に1を足
したものは、CTBの単位でi番目のタイル列の幅を指定する。tile_row_height_minus1[i]
に1を足したものは、CTBの単位でi番目のタイル行の高さを指定する。
【0135】
以下の変数、すなわち、CTBの単位でi番目のタイル列の幅を指定する、両端を含めて0
からnum_tile_columns_minus1の範囲にわたるiに対するリストColWidth[i]、CTBの単位で
j番目のタイル行の高さを指定する、両端を含めて0からnum_tile_rows_minus1の範囲にわ
たるjに対するリストRowHeight[j]、CTBの単位でi番目のタイル列境界の位置を指定する
、両端を含めて0からnum_tile_columns_minus1+1の範囲にわたるiに対するリストColBd[i
]、CTBの単位でj番目のタイル行境界の位置を指定する、両端を含めて0からnum_tile_row
s_minus1+1の範囲にわたるjに対するリストRowBd[j]、ピクチャのCTBラスター走査におけ
るCTBアドレスからタイル走査におけるCTBアドレスへの変換を指定する、両端を含めて0
からPicSizeInCtbsY-1にわたるctbAddrRsに対するリストCtbAddrRsToTs[ctbAddrRs]、タ
イル走査におけるCTBアドレスからピクチャのCTBラスター走査におけるCTBアドレスへの
変換を指定する、両端を含めて0からPicSizeInCtbsY-1にわたるctbAddrTsに対するリスト
CtbAddrTsToRs[ctbAddrTs]、タイル走査におけるCTBアドレスからタイルIDへの変換を指
定する、両端を含めて0からPicSizeInCtbsY-1にわたるctbAddrTsに対するリストTileId[c
tbAddrTs]、タイルインデックスからタイルの中のCTUの数への変換を指定する、両端を含
めて0からPicSizeInCtbsY-1にわたるtileIdxに対するリストNumCtusInTile[tileIdx]、タ
イルIDからタイルの中の第1のCTBのタイル走査におけるCTBアドレスへの変換を指定する
、両端を含めて0からNumTilesInPic-1にわたるtileIdxに対するリストFirstCtbAddrTs[ti
leIdx]、ルマサンプルの単位でi番目のタイル列の幅を指定する、両端を含めて0からnum_
tile_columns_minus1の範囲にわたるiに対するリストColumnWidthInLumaSamples[i]、お
よび、ルマサンプルの単位でj番目のタイル行の高さを指定する、両端を含めて0からnum_
tile_rows_minus1の範囲にわたるjに対するリストRowHeightInLumaSamples[j]は、CTBラ
スターおよびタイル走査変換プロセスを呼び出すことによって導出される。両端を含めて
0からnum_tile_columns_minus1にわたるiに対するColumnWidthInLumaSamples[i]、および
両端を含めて0からnum_tile_rows_minus1にわたるjに対するRowHeightInLumaSamples[j]
の値はすべて、0より大きいものとする。
【0136】
1に等しいloop_filter_across_tiles_enabled_flagは、ループ内フィルタリング動作が
SPPSを参照するサブピクチャの中のタイル境界にまたがって実行されてもよいことを指定
する。0に等しいloop_filter_across_tiles_enabled_flagは、ループ内フィルタリング動
作がSPPSを参照するサブピクチャの中のタイル境界にまたがって実行されないことを指定
する。ループ内フィルタリング動作は、デブロッキングフィルタ、サンプル適応オフセッ
トフィルタ、および適応ループフィルタ動作を含む。存在しないとき、loop_filter_acro
ss_tiles_enabled_flagの値は1に等しいと推測される。1に等しいloop_filter_across_su
bpic_enabled_flagは、ループ内フィルタリング動作がSPPSを参照するサブピクチャの中
のサブピクチャ境界にまたがって実行されてもよいことを指定する。0に等しいloop_filt
er_across_subpic_enabled_flagは、ループ内フィルタリング動作がSPPSを参照するサブ
ピクチャの中のサブピクチャ境界にまたがって実行されないことを指定する。ループ内フ
ィルタリング動作は、デブロッキングフィルタ、サンプル適応オフセットフィルタ、およ
び適応ループフィルタ動作を含む。存在しないとき、loop_filter_across_subpic_enable
d_flagの値は、loop_filter_across_tiles_enabed_flagの値に等しいと推測される。
【0137】
一般的なタイルグループヘッダのシンタックスおよびセマンティクスは次の通りである

【表5】
【0138】
タイルグループヘッダシンタックス要素tile_group_pic_parameter_set_idおよびtile_
group_pic_order_cnt_lsbの値は、コーディングされたピクチャのすべてのタイルグルー
プヘッダにおいて同じであるものとする。タイルグループヘッダシンタックス要素tile_g
roup_subpic_idの値は、コーディングされたサブピクチャのすべてのタイルグループヘッ
ダにおいて同じであるものとする。tile_group_subpic_idは、タイルグループが属するサ
ブピクチャを識別する。tile_group_subpic_idの長さは、subpic_id_len_minus1+1ビット
である。tile_group_subpic_parameter_set_idは、使用中のSPPSに対するspps_subpic_pa
rameter_set_idの値を指定する。tile_group_spps_parameter_set_idの値は、両端を含め
て0から63の範囲にあるものとする。
【0139】
以下の変数が導出され、アクティブSPSから導出されたそれぞれの変数を上書きする。
PicWidthInLumaSamples=SubpicWidthInLumaSamples[tile_group_subpic_id]
PicHeightInLumaSamples=PicHeightInLumaSamples[tile_group_subpic_id]
SubPicRightBorderInPic=SubPicRightBorderInPic[tile_group_subpic_id]
SubPicBottomBorderInPic=SubPicBottomBorderInPic[tile_group_subpic_id]
PicWidthInCtbsY=SubPicWidthInCtbsY[tile_group_subpic_id]
PicHeightInCtbsY=SubPicHeightInCtbsY[tile_group_subpic_id]
PicSizeInCtbsY=SubPicSizeInCtbsY[tile_group_subpic_id]
PicWidthInMinCbsY=SubPicWidthInMinCbsY[tile_group_subpic_id]
PicHeightInMinCbsY=SubPicHeightInMinCbsY[tile_group_subpic_id]
PicSizeInMinCbsY=SubPicSizeInMinCbsY[tile_group_subpic_id]
PicSizeInSamplesY=SubPicSizeInSamplesY[tile_group_subpic_id]
PicWidthInSamplesC=SubPicWidthInSamplesC[tile_group_subpic_id]
PicHeightInSamplesC=SubPicHeightInSamplesC[tile_group_subpic_id]
【0140】
コーディングツリーユニットシンタックスは次の通りである。
【表6】
【表7】
【0141】
コーディング四分木のシンタックスおよびセマンティクスは次の通りである。
【表8A】
【表8B】
【0142】
qt_split_cu_flag[x0][y0]は、コーディングユニットが半分の水平サイズおよび垂直サ
イズを伴うコーディングユニットへと分割されるかどうかを指定する。アレイインデック
スx0、y0は、ピクチャの左上ルマサンプルに対する相対的な考慮されるコーディングブロ
ックの左上ルマサンプルの位置(x0,y0)を指定する。qt_split_cu_flag[x0][y0]が存在し
ないとき、以下のことが当てはまる。以下の条件のうちの1つ以上が真である場合、qt_sp
lit_cu_flag[x0][y0]の値は1に等しいと推測される。treeTypeがDUAL_TREE_CHROMAに等し
いか、またはそうでなければMaxBtSizeYより大きい場合、x0+(1<<log2CbSize)がSubPicRi
ghtBorderInPicより大きく、(1<<log2CbSize)がMaxBtSizeCより大きい。treeTypeがDUAL_
TREE_CHROMAに等しいか、またはそうでなければMaxBtSizeYより大きい場合、y0+(1<<log2
CbSize)がSubPicBottomBorderInPicより大きく、(1<<log2CbSize)がMaxBtSizeCより大き
い。
【0143】
それ以外の場合、以下の条件のすべてが真であれば、qt_split_cu_flag[x0][y0]の値は
1に等しいと推測される。treeTypeがDUAL_TREE_CHROMAに等しいか、またはそうでなけれ
ばMinQtSizeYより大きい場合、x0+(1<<log2CbSize)がSubPicRightBorderInPicより大きく
、y0+(1<<log2CbSize)がSubPicBottomBorderInPicより大きく、(1<<log2CbSize)がMinQtS
izeCより大きい。それ以外の場合、qt_split_cu_flag[x0][y0]の値は0に等しいと推測さ
れる。
【0144】
マルチタイプ木のシンタックスおよびセマンティクスは次の通りである。
【表9A】
【表9B】
【表9C】
【0145】
0に等しいmtt_split_cu_flagは、コーディングユニットが分割されないことを指定する
。1に等しいmtt_split_cu_flagは、シンタックス要素mtt_split_cu_binary_flagによって
示されるように、コーディングユニットが二分割を使用して2つのコーディングユニット
へと、または三分割を使用して3つのコーディングユニットへと分割されることを指定す
る。二分割または三分割は、シンタックス要素mtt_split_cu_vertical_flagによって示さ
れるように、垂直方向または水平方向のいずれかでありうる。mtt_split_cu_flagが存在
しないとき、mtt_split_cu_flagの値は次のように推測される。x0+cbWidthがSubPicRight
BorderInPicより大きい、およびy0+cbHeightがSubPicBottomBorderInPicより大きいとい
う条件のうちの1つ以上が真である場合、mtt_split_cu_flagの値は1に等しいと推測され
る。それ以外の場合、mtt_split_cu_flagの値は0に等しいと推測される。
【0146】
時間的なルマ動きベクトル予測のための導出プロセスは次の通りである。このプロセス
の出力は、1/16分数サンプル精度の動きベクトル予測mvLXCol、および利用可能性フラグa
vailableFlagLXColである。変数currCbは、ルマ位置(xCb,yCb)における現在のルマコーデ
ィングブロックを指定する。変数mvLXColおよびavailableFlagLXColは次のように導出さ
れる。tile_group_temporal_mvp_enabled_flagが0に等しい場合、または参照ピクチャが
現在のピクチャである場合、mvLXColの両方の成分が0に等しく設定され、availableFlagL
XColが0に等しく設定される。それ以外の場合(tile_group_temporal_mvp_enabled_flagが
1に等しく、参照ピクチャが現在のピクチャではない)、次の順序のステップが適用される
。右下の同じ位置にある動きベクトルは次のように導出される。
xColBr=xCb+cbWidth (8-355)
yColBr=yCb+cbHeight (8-356)
【0147】
yCb>>CtbLog2SizeYがyColBr>>CtbLog2SizeYに等しく、yColBrがSubPicBottomBorderInP
ic未満であり、xColBrがSubPicRightBorderInPic未満である場合、次のことが当てはまる
。変数colCbは、ColPicによって指定される同じ位置にあるピクチャの内部の((xColBr>>3
)<<3,(yColBr>>3)<<3)により与えられる修正された位置を包含する、ルマコーディングブ
ロックを指定する。ルマ位置(xColCb,yColCb)は、ColPicによって指定される同じ位置に
あるピクチャの左上ルマサンプルに対して相対的な、colCbによって指定される同じ位置
にあるルマコーディングブロックの左上サンプルに等しく設定される。同じ位置にある動
きベクトルの導出プロセスは、0に等しく設定されたcurrCb、colCb、(xColCb,yColCb)、r
efIdxLX、およびsbFlagを入力として用いて呼び出され、出力はmvLXColおよびavailableF
lagLXColに割り当てられる。それ以外の場合、mvLXColの両方の成分が0に等しく設定され
、availableFlagLXColが0に等しく設定される。
【0148】
時間的な三角統合候補のための導出プロセスは次の通りである。変数mvLXColC0、mvLXC
olC1、availableFlagLXColC0およびavailableFlagLXColC1は、次のように導出される。ti
le_group_temporal_mvp_enabled_flagが0に等しい場合、mvLXColC0とmvLXColC1の両方の
成分が0に等しく設定され、availableFlagLXColC0およびavailableFlagLXColC1は0に等し
く設定される。それ以外の場合(tile_group_temporal_mvp_enabled_flagが1に等しい)、
以下の順序のステップが適用される。右下の同じ位置にある動きベクトルmvLXColC0は次
のように導出される。
xColBr=xCb+cbWidth (8-392)
yColBr=yCb+cbHeight (8-393)
【0149】
yCb>>CtbLog2SizeYがyColBr>>CtbLog2SizeYに等しく、yColBrがSubPicBottomBorderInP
ic未満であり、xColBrがSubPicRightBorderInPic未満である場合、次のことが当てはまる
。変数colCbは、ColPicによって指定される同じ位置にあるピクチャの内部の((xColBr>>3
)<<3,(yColBr>>3)<<3)により与えられる修正された位置を包含する、ルマコーディングブ
ロックを指定する。ルマ位置(xColCb,yColCb)は、ColPicによって指定される同じ位置に
あるピクチャの左上ルマサンプルに対する、colCbによって指定される同じ位置にあるル
マコーディングブロックの左上サンプルに等しく設定される。同じ位置にある動きベクト
ルの導出プロセスは、0に等しく設定されたcurrCb、colCb、(xColCb,yColCb)、refIdxLXC
0、およびsbFlagを入力として用いて呼び出され、出力はmvLXColC0およびavailableFlagL
XColC0に割り当てられる。それ以外の場合、mvLXColC0の両方の成分が0に等しく設定され
、availableFlagLXColC0が0に等しく設定される。
【0150】
構築されたアフィン制御点動きベクトル統合候補の導出プロセスは、次の通りである。
Xを0および1として、第4の(同じ位置にある右下の)制御点動きベクトルcpMvLXCorner[3]
、参照インデックスrefIdxLXCorner[3]、予測リスト利用フラグpredFlagLXCorner[3]、お
よび利用可能性フラグavailableFlagCorner[3]が次のように導出される。Xを0または1と
して、時間統合候補に対する参照インデックスrefIdxLXCorner[3]が0に等しく設定される
。Xを0または1として、変数mvLXColおよびavailableFlagLXColが次のように導出される。
tile_group_temporal_mvp_enabled_flagが0に等しい場合、mvLXColの両方の成分が0に等
しく設定され、availableFlagLXColが0に等しく設定される。それ以外の場合(tile_group
_temporal_mvp_enabled_flagが1に等しい)、次のことが当てはまる。
xColBr=xCb+cbWidth (8-566)
yColBr=yCb+cbHeight (8-567)
【0151】
yCb>>CtbLog2SizeYがyColBr>>CtbLog2SizeYに等しく、yColBrがSubPicBottomBorderInP
ic未満であり、xColBrがSubPicRightBorderInPic未満である場合、次のことが当てはまる
。変数colCbは、ColPicによって指定される同じ位置にあるピクチャの内部の((xColBr>>3
)<<3,(yColBr>>3)<<3)により与えられる修正された位置を包含する、ルマコーディングブ
ロックを指定する。ルマ位置(xColCb,yColCb)は、ColPicによって指定される同じ位置に
あるピクチャの左上ルマサンプルに対する、colCbによって指定される同じ位置にあるル
マコーディングブロックの左上サンプルに等しく設定される。同じ位置にある動きベクト
ルの導出プロセスは、0に等しく設定されたcurrCb、colCb、(xColCb,yColCb)、refIdxLX
、およびsbFlagを入力として用いて呼び出され、出力はmvLXColおよびavailableFlagLXCo
lに割り当てられる。それ以外の場合、mvLXColの両方の成分が0に等しく設定され、avail
ableFlagLXColが0に等しく設定される。pic_width_in_luma_samplesのすべての出現を、P
icWidthInLumaSamplesで置き換える。pic_height_in_luma_samplesのすべての出現を、Pi
cHeightInLumaSamplesで置き換える。
【0152】
第2の例示的な実施形態では、シーケンスパラメータセットRBSPのシンタックスおよび
セマンティクスは次の通りである。
【表10】
【0153】
subpic_id_len_minus1に1を足したものは、SPSにおけるシンタックス要素subpic_id[i]
を表すために使用されるビットの数、SPSを参照するSPPSにおけるspps_subpic_id、およ
びSPSを参照するタイルグループヘッダにおけるtile_group_subpic_idを指定する。subpi
c_id_len_minus1の値は、両端を含めてCeil(Log2(num_subpic_minus1+3)から8の範囲にあ
るものとする。両端を含めて0からnum_subpic_minus1のiに対するsubpicture[i]の間で重
複がないことが、ビットストリーム適合の要件である。各サブピクチャは、時間動き制約
サブピクチャであってもよい。
【0154】
一般的なタイルグループヘッダのセマンティクスは次の通りである。tile_group_subpi
c_idは、タイルグループが属するサブピクチャを識別する。tile_group_subpic_idの長さ
は、subpic_id_len_minus1+1ビットである。1に等しいtile_group_subpic_idは、タイル
グループがいずれのサブピクチャにも属しないことを示す。
【0155】
第3の例示的な実施形態では、NALユニットヘッダのシンタックスとセマンティクスは次
の通りである。
【表11】
【0156】
nuh_subpicture_id_lenは、サブピクチャIDを指定するシンタックス要素を表すために
使用されるビットの数を指定する。nuh_subpicture_id_lenの値が0より大きいとき、nuh_
reserved_zero_4bitsの後の最初のnuh_subpicture_id_len番目のビットは、NALユニット
のペイロードが属するサブピクチャのIDを指定する。nuh_subpicture_id_lenが0より大き
いとき、nuh_subpicture_id_lenの値は、アクティブSPSにおいてsubpic_id_len_minus1の
値に等しいものとする。非VCL NALユニットに対するnuh_subpicture_id_lenの値は、次の
ように制約される。nal_unit_typeがSPS_NUTまたはPPS_NUTに等しい場合、nuh_subpictur
e_id_lenは0に等しいものとする。nuh_reserved_zero_3bitsは「000」に等しいものとす
る。デコーダは、nuh_reserved_zero_3bitsの値が「000」に等しくないNALユニットを無
視する(たとえば、ビットストリームから除去して廃棄する)ものとする。
【0157】
第4の例示的な実施形態では、サブピクチャネスティングシンタックスは次の通りであ
る。
【表12】
【0158】
1に等しいall_sub_pictures_flagは、ネストされたSEIメッセージがすべてのサブピク
チャに適用されることを示す。1に等しいall_sub_pictures_flagは、ネストされたSEIメ
ッセージが適用されるサブピクチャが後続のシンタックス要素によって明示的にシグナリ
ングされることを指定する。nesting_num_sub_pictures_minus1に1を足したものは、ネス
トされたSEIメッセージが適用されるサブピクチャの数を指定する。nesting_sub_picture
_id[i]は、ネストされたSEIメッセージが適用されるi番目のサブピクチャのサブピクチャ
IDを示す。nesting_sub_picture_id[i]シンタックス要素は、Ceil(Log2(nesting_num_sub
_pictures_minus1+1))ビットによって表される。sub_picture_nesting_zero_bitは0に等
しいものとする。
【0159】
図9は、例示的なビデオコーディングデバイス900の概略図である。ビデオコーディング
デバイス900は、本明細書で説明されるような開示される例/実施形態を実装するのに適し
ている。ビデオコーディングデバイス900は、ネットワークを介してデータアップストリ
ームおよび/またはダウンストリームを通信するための送信機および/または受信機を含む
、ダウンストリームポート920、アップストリームポート950、および/またはトランシー
バユニット(Tx/Rx)910を備える。ビデオコーディングデバイス900はまた、データを処理
するための論理ユニットおよび/または中央処理装置(CPU)を含むプロセッサ930と、デー
タを記憶するためのメモリ932とを含む。ビデオコーディングデバイス900はまた、電気コ
ンポーネント、光-電気(OE)コンポーネント、電気-光(EO)コンポーネント、ならびに/ま
たは、電気通信ネットワーク、光通信ネットワーク、もしくはワイヤレス通信ネットワー
クを介したデータの通信のためにアップストリームポート950および/もしくはダウンスト
リームポート920に結合されるワイヤレス通信コンポーネントを備えてもよい。ビデオコ
ーディングデバイス900はまた、ユーザとの間でデータを通信するための入力および/また
は出力(I/O)デバイス960を含んでもよい。I/Oデバイス960は、ビデオデータを表示するた
めのディスプレイ、オーディオデータを出力するためのスピーカーなどの出力デバイスを
含んでもよい。I/Oデバイス960はまた、キーボード、マウス、トラックボールなどの入力
デバイス、および/または、そのような出力デバイスと対話するための対応するインター
フェースを含んでもよい。
【0160】
プロセッサ930はハードウェアおよびソフトウェアによって実装される。プロセッサ930
は、1つ以上のCPUチップ、コア(たとえば、マルチコアプロセッサとして)、フィールドプ
ログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、およびデジタルシグナ
ルプロセッサ(DSP)として実装されてもよい。プロセッサ930は、ダウンストリームポート
920、Tx/Rx910、アップストリームポート950、およびメモリ932と通信している。プロセ
ッサ930はコーディングモジュール914を備える。コーディングモジュール914は、ビット
ストリーム500、ピクチャ600、および/またはピクチャ800を利用してもよい、方法100、1
000、1100、および/または機構700などの上で説明された開示された実施形態を実装する
。コーディングモジュール914は、本明細書において説明される任意の他の方法/機構も実
装してもよい。さらに、コーディングモジュール914は、コーデックシステム200、エンコ
ーダ300、および/またはデコーダ400を実装してもよい。たとえば、コーディングモジュ
ール914は、SPSにおいてサブピクチャの位置とサイズをシグナリングおよび/または取得
するために利用されてもよい。別の例では、コーディングモジュール914は、そのような
サブピクチャがピクチャの右の境界またはピクチャの下の境界にそれぞれ位置しない限り
、CTUサイズの倍数となるようにサブピクチャ幅およびサブピクチャ高さを制約してもよ
い。別の例では、コーディングモジュール914は、間隙または重複なしでピクチャを包含
するようにサブピクチャを制約してもよい。別の例では、コーディングモジュール914は
、一部のサブピクチャが時間動き制約サブピクチャであることと他のサブピクチャがそう
ではないこととを示すデータを、シグナリングおよび/または取得するために利用されて
もよい。別の例では、コーディングモジュール914は、SPSにおいてサブピクチャIDの完全
なセットをシグナリングし、対応するスライスを含むサブピクチャを示すためのサブピク
チャIDを各スライスヘッダに含めてもよい。別の例では、コーディングモジュール914は
、各サブピクチャのレベルをシグナリングしてもよい。したがって、コーディングモジュ
ール914は、ビデオコーディングデバイス900に、追加の機能を提供させ、ビデオデータを
区分してコーディングするときに処理オーバーヘッドを減らすために、および/またはコ
ーディング効率を高めるために、ある処理を回避させる。したがって、コーディングモジ
ュール914は、ビデオコーディングデバイス900の機能を改善し、ならびにビデオコーディ
ングの技術に特有の問題に対処する。さらに、コーディングモジュール914は、異なる状
態へのビデオコーディングデバイス900の変換を実施する。代替的に、コーディングモジ
ュール914は、メモリ932に記憶されプロセッサ930によって実行される命令として(たとえ
ば、非一時的媒体に記憶されるコンピュータプログラム製品として)実装されうる。
【0161】
メモリ932は、ディスク、テープドライブ、ソリッドステートドライブ、読み取り専用
メモリ(ROM)、ランダムアクセスメモリ(RAM)、フラッシュメモリ、三値連想メモリ(TCAM)
、スタティックランダムアクセスメモリ(SRAM)などの、1つ以上のメモリタイプを備える
。メモリ932は、実行のためにプログラムが選択されるときにそのようなプログラムを記
憶するために、およびプログラム実行の間に読み取られる命令とデータを記憶するために
、オーバーフローデータストレージデバイスとして使用されてもよい。
【0162】
図10は、適応的なサイズ制約とともに、サブピクチャ522、523、622、722、および/ま
たは822などのサブピクチャの、ビットストリーム500および/またはサブビットストリー
ム501などのビットストリームを符号化する例示的な方法1000のフローチャートである。
方法1000は、方法100を実行するとき、コーデックシステム200、エンコーダ300、および/
またはビデオコーディングデバイス900などのエンコーダによって利用されてもよい。
【0163】
方法1000は、エンコーダが複数のピクチャを含むビデオシーケンスを受信して、たとえ
ばユーザ入力に基づいてビデオシーケンスをビットストリームへと符号化すると決定する
と、開始してもよい。ビデオシーケンスは、符号化の前にさらなる区分のためにピクチャ
/画像/フレームへと区分される。ステップ1001において、ピクチャは、複数のサブピクチ
ャへと区分される。サブピクチャを区分するとき、適応的なサイズ制約が適用される。サ
ブピクチャは各々、サブピクチャ幅およびサブピクチャ高さを含む。現在のサブピクチャ
がピクチャの右の境界と一致しない右の境界を含むとき、現在のサブピクチャのサブピク
チャ幅は、CTUの整数倍となるように制約される(たとえば、822b以外のサブピクチャ822)
。したがって、サブピクチャのうちの少なくとも1つ(たとえば、サブピクチャ822b)は、
各サブピクチャがピクチャの右の境界と一致する右の境界を含むとき、CTUサイズの整数
倍ではないサブピクチャ幅を含んでもよい。さらに、現在のサブピクチャがピクチャの下
の境界と一致しない下の境界を含むとき、現在のサブピクチャのサブピクチャ高さは、CT
Uの整数倍であるように制約される(たとえば、822c以外のサブピクチャ822)。したがって
、サブピクチャ(たとえば、サブピクチャ822c)のうちの少なくとも1つは、各サブピクチ
ャがピクチャの下の境界と一致する下の境界を含むとき、CTUサイズの整数倍ではないサ
ブピクチャ高さを含んでもよい。この適応的なサイズ制約は、CTUサイズの整数倍ではな
いピクチャ幅および/またはCTUサイズの整数倍ではないピクチャ高さを含むピクチャから
サブピクチャが区分されることを可能にする。CTUサイズはルマサンプルの単位で測定さ
れてもよい。
【0164】
ステップ1003において、サブピクチャのうちの1つ以上がビットストリームへと符号化
される。ステップ1005において、ビットストリームがデコーダへの通信のために記憶され
る。ビットストリームは次いで、望まれるようにデコーダに送信されてもよい。いくつか
の例では、サブビットストリームは、符号化されたビットストリームから抽出されてもよ
い。そのような場合、送信されるビットストリームはサブビットストリームである。他の
例では、符号化されたビットストリームは、デコーダにおけるサブビットストリームの抽
出のために送信されてもよい。さらに他の例では、符号化されたビットストリームは、サ
ブビットストリームの抽出なしで復号され表示されてもよい。これらの例のいずれにおい
ても、適応的なサイズ制約は、CTUサイズの倍数ではない高さまたは幅を伴うピクチャか
らサブピクチャが区分されることを可能にするので、エンコーダの機能を高める。
【0165】
図11は、適応的なサイズ制約とともに、サブピクチャ522、523、622、722、および/ま
たは822などのサブピクチャの、ビットストリーム500および/またはサブビットストリー
ム501などのビットストリームを復号する例示的な方法1100のフローチャートである。方
法1100は、方法100を実行するとき、コーデックシステム200、デコーダ400、および/また
はビデオコーディングデバイス900などのデコーダによって利用されてもよい。たとえば
、方法1100は、方法1000の結果として作成されるビットストリームを復号するために適用
されてもよい。
【0166】
方法1100は、デコーダがサブピクチャを含むビットストリームの受信を開始すると開始
してもよい。ビットストリームは完全なビデオシーケンスを含んでもよく、または、ビッ
トストリームは別々の抽出のためにサブピクチャの縮小されたセットを含むサブビットス
トリームであってもよい。ステップ1101において、ビットストリームが受信される。ビッ
トストリームは、適応的なサイズ制約に従ってピクチャから区分された1つ以上のサブピ
クチャを備える。サブピクチャは各々、サブピクチャ幅およびサブピクチャ高さを含む。
現在のサブピクチャがピクチャの右の境界と一致しない右の境界を含むとき、現在のサブ
ピクチャのサブピクチャ幅はCTUの整数倍となるように制約される(たとえば、822b以外の
サブピクチャ822)。したがって、サブピクチャのうちの少なくとも1つ(たとえば、サブピ
クチャ822b)は、各サブピクチャがピクチャの右の境界と一致する右の境界を含むとき、C
TUサイズの整数倍ではないサブピクチャ幅を含んでもよい。さらに、現在のサブピクチャ
がピクチャの下の境界と一致しない下の境界を含むとき、現在のサブピクチャのサブピク
チャ高さは、CTUの整数倍であるように制約される(たとえば、822c以外のサブピクチャ82
2)。したがって、サブピクチャ(たとえば、サブピクチャ822c)のうちの少なくとも1つは
、各サブピクチャがピクチャの下の境界と一致する下の境界を含むとき、CTUサイズの整
数倍ではないサブピクチャ高さを含んでもよい。この適応的なサイズ制約は、CTUサイズ
の整数倍ではないピクチャ幅および/またはCTUサイズの整数倍ではないピクチャ高さを含
むピクチャからサブピクチャが区分されることを可能にする。CTUサイズはルマサンプル
の単位で測定されてもよい。
【0167】
ステップ1103において、1つ以上のサブピクチャを取得するために、ビットストリーム
が解析される。ステップ1105において、ビデオシーケンスを作成するために、1つ以上の
サブピクチャが復号される。ビデオシーケンスは次いで、表示のために転送されうる。し
たがって、適応的なサイズ制約は、CTUサイズの倍数ではない高さまたは幅を伴うピクチ
ャからサブピクチャが区分されることを可能にする。したがって、デコーダは、CTUサイ
ズの倍数ではない高さまたは幅を伴うピクチャ上で、別々のサブピクチャ抽出および/ま
たは表示などの、サブピクチャベースの機能を利用することができる。したがって、適応
的なサイズ制約の適用は、デコーダの機能を高める。
【0168】
図12は、適応的なサイズ制約とともに、サブピクチャ522、523、622、722、および/ま
たは822などのサブピクチャの、ビットストリーム500および/またはサブビットストリー
ム501などのビットストリームをシグナリングするための例示的なシステム1200の概略図
である。システム1200は、コーデックシステム200、エンコーダ300、デコーダ400、およ
び/またはビデオコーディングデバイス900などのエンコーダとデコーダによって実装され
てもよい。さらに、システム1200は、方法100、1000、および/または1100を実施するとき
に利用されてもよい。
【0169】
システム1200はビデオエンコーダ1202を含む。ビデオエンコーダ1202は、各サブピクチ
ャがピクチャの右の境界と一致しない右の境界を含むとき、各サブピクチャがCTUサイズ
の整数倍であるサブピクチャ幅を含むように、ピクチャを複数のサブピクチャへと区分す
るための区分モジュール1201を備える。ビデオエンコーダ1202はさらに、サブピクチャの
うちの1つ以上をビットストリームへと符号化するための符号化モジュール1203を備える
。ビデオエンコーダ1202はさらに、デコーダへの通信のためにビットストリームを記憶す
るための記憶モジュール1205を備える。ビデオエンコーダ1202はさらに、サブピクチャを
含むビットストリームをデコーダに送信するための送信モジュール1207を備える。ビデオ
エンコーダ1202はさらに、方法1000のステップのいずれをも実行するように構成されても
よい。
【0170】
システム1200はビデオデコーダ1210も含む。ビデオデコーダ1210は、各サブピクチャが
ピクチャの右の境界と一致しない右の境界を含むとき、各サブピクチャがコーディングツ
リーユニット(CTU)サイズの整数倍であるサブピクチャ幅を含むような、ピクチャから区
分された1つ以上のサブピクチャを備えるビットストリームを受信するための受信モジュ
ール1211を備える。ビデオデコーダ1210はさらに、ビットストリームを解析して1つ以上
のサブピクチャを取得するための解析モジュール1213を備える。ビデオデコーダ1210はさ
らに、1つ以上のサブピクチャを復号してビデオシーケンスを作成するための復号モジュ
ール1215を備える。ビデオデコーダ1210はさらに、表示のためにビデオシーケンスを転送
するための転送モジュール1217を備える。ビデオデコーダ1210はさらに、方法1100のステ
ップのいずれをも実行するように構成されてもよい。
【0171】
第1のコンポーネントと第2のコンポーネントとの間の線、配線、または別の媒体を除き
、介在するコンポーネントがないとき、第1のコンポーネントは第2のコンポーネントに直
接結合される。第1のコンポーネントと第2のコンポーネントとの間に線、配線、または別
の媒体以外の介在するコンポーネントがあるとき、第1のコンポーネントは第2のコンポー
ネントに間接的に結合される。「結合される」という用語およびその変形は、直接結合さ
れることと間接的に結合されることの両方を含む。「約」という用語の使用は、別段述べ
られない限り、その後にある数字の±10%を含む範囲を意味する。
【0172】
本明細書に記載される例示的な方法のステップは、必ずしも説明された順序で実行され
ることは必要とされず、そのような方法のステップの順序は単に例示的であると理解され
るべきであることも理解されたい。同様に、追加のステップがそのような方法に含まれて
もよく、本開示の様々な実施形態に適合する方法で、いくつかのステップが省略または結
合されてもよい。
【0173】
いくつかの実施形態が本開示において提供されたが、開示されたシステムおよび方法は
、本開示の趣旨または範囲から逸脱することなく、多くの他の特定の形式で具現化されて
もよいことが理解されてもよい。本実施例は、限定するためのものではなく説明のための
ものであると見なされるべきであり、意図は本明細書で与えられる詳細に限定されないも
のとする。たとえば、別のシステムでは様々な要素またはコンポーネントが結合もしくは
統合されてもよく、またはいくつかの特徴が省略され、もしくは実装されなくてもよい。
【0174】
加えて、様々な実施形態において個別のもの、または別々のものとして説明され図示さ
れる技法、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく
、他のシステム、コンポーネント、技法、もしくは方法と合成または統合されてもよい。
変化、置換、および変更の他の例が当業者により確認可能であり、本明細書で開示される
趣旨および範囲から逸脱することなく行われてもよい。
【符号の説明】
【0175】
200 コーデックシステム
201 区分されたビデオ信号
211 汎用コーダ制御コンポーネント
213 変換スケーリングおよび量子化コンポーネント
215 イントラピクチャ推定コンポーネント
217 イントラピクチャ予測コンポーネント
219 動き補償コンポーネント
221 動き推定コンポーネント
223 復号ピクチャバッファコンポーネント
225 ループ内フィルタコンポーネント
227 フィルタ制御分析コンポーネント
229 スケーリングおよび逆変換コンポーネント
231 ヘッダフォーマッティングおよびCABACコンポーネント
301 区分されたビデオ信号
313 変換および量子化コンポーネント
317 イントラピクチャ予測コンポーネント
321 動き補償コンポーネント
323 復号ピクチャバッファコンポーネント
325 ループ内フィルタコンポーネント
329 逆変換および量子化コンポーネント
331 エントロピーコーディングコンポーネント
417 イントラピクチャ予測コンポーネント
421 動き補償コンポーネント
423 復号ピクチャバッファコンポーネント
425 ループ内フィルタコンポーネント
429 逆変換および量子化コンポーネント
433 エントロピー復号コンポーネント
500 ビットストリーム
501 サブビットストリーム
510 SPS
512 PPS
514 スライスヘッダ
515 SEIメッセージ
520 画像データ
521 ピクチャ
522 サブピクチャ
523 サブピクチャ
524 スライス
525 スライス
531 サブピクチャサイズ
532 サブピクチャ位置
533 サブピクチャID
534 動き制約サブピクチャフラグ
535 サブピクチャレベル
600 ピクチャ
622 サブピクチャ
631 サブピクチャサイズ
631a サブピクチャ幅
631b サブピクチャ高さ
632 位置
633 サブピクチャID
634 時間動き制約サブピクチャ
642 左上サンプル
700 機構
722 サブピクチャ
724 スライス
733 サブピクチャID
742 左上の角
801 ピクチャの右の境界
802 ピクチャの下の境界
822 サブピクチャ
822b、822c サブピクチャ
825 CTU
900 ビデオコーディングデバイス
910 送信機/受信機
914 コーディングモジュール
920 ダウンストリームポート
930 プロセッサ
932 メモリ
950 アップストリームポート
960 I/Oデバイス
1200 システム
1201 区分モジュール
1202 ビデオエンコーダ
1203 符号化モジュール
1205 記憶モジュール
1207 送信モジュール
1210 ビデオデコーダ
1211 受信モジュール
1213 解析モジュール
1215 復号モジュール
1217 転送モジュール
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
【手続補正書】
【提出日】2023-12-28
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】削除
【補正の内容】
【手続補正3】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
ビットストリームを復号するための方法であって、
ピクチャから区分された1つ以上のサブピクチャのデータを備えるビットストリームを受信するステップであって、前記1つ以上のサブピクチャのうちの第1のサブピクチャが前記ピクチャの右の境界と一致する右の境界を含むとき、前記第1のサブピクチャがーディングツリーユニット(CTU)サイズの整数倍ではないサブピクチャ幅を備え、前記ビットストリームはシーケンスパラメータセット(SPS)を含み、前記SPSは前記ピクチャから区分された前記1つ以上のサブピクチャの各々のための、サブピクチャ識別子(ID)と、サブピクチャサイズと、サブピクチャ位置とを備える、ステップと、
前記SPSを読み取って、前記1つ以上のサブピクチャの各々のための、前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とを取得するステップと、
対応する前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とに基づいて、前記1つ以上のサブピクチャを復号るステップとを備える、方法。
【請求項2】
前記1つ以上のサブピクチャのうちの第2のサブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記第2のサブピクチャがCTUサイズの整数倍であるサブピクチャ高さを備える、請求項1に記載の方法。
【請求項3】
前記1つ以上のサブピクチャのうちの第3のサブピクチャが前記ピクチャのの境界と一致する下の境界を含むとき、前記第3のサブピクチャがCTUサイズの整数倍ではないサブピクチャ高さを備える、請求項1または2に記載の方法。
【請求項4】
前記SPSがnum_subpicture_minus1をさらに含み、前記num_subpicture_minus1に1を足したものは、前記ピクチャから区分された前記1つ以上のサブピクチャの数を指定する、請求項1から3のいずれか一項に記載の方法。
【請求項5】
前記サブピクチャサイズがCtbSizeYの単位でのサブピクチャ幅とサブピクチャ高さとを含む、請求項1から4のいずれか一項に記載の方法。
【請求項6】
デコーダによる復号のために、又は、記憶媒体による記憶のために使用されるデータ構造であって、前記データ構造はビットストリームを含み、前記ビットストリームが、
ピクチャから区分された1つ以上のサブピクチャのデータであって、前記1つ以上のサブピクチャのうちの第1のサブピクチャが前記ピクチャの右の境界と一致する右の境界を含むとき、前記第1のサブピクチャがコーディングツリーユニット(CTU)サイズの整数倍ではないサブピクチャ幅を備える、データと、
シーケンスパラメータセット(SPS)であって、前記ピクチャから区分された前記1つ以上のサブピクチャの各々のための、サブピクチャ識別子(ID)と、サブピクチャサイズと、サブピクチャ位置とを備えるSPSとを含み、
前記デコーダが、前記SPSを読み取って、前記1つ以上のサブピクチャの各々のための、前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とを取得し、
前記デコーダが、さらに、対応する前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とに基づいて、前記ビットストリームを復号して、前記1つ以上のサブピクチャを取得する、データ構造。
【請求項7】
前記1つ以上のサブピクチャのうちの第2のサブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記第2のサブピクチャがCTUサイズの整数倍であるサブピクチャ高さを含む、請求項6に記載のデータ構造
【請求項8】
前記1つ以上のサブピクチャのうちの第3のサブピクチャが前記ピクチャのの境界と一致するの境界を含むとき、前記第3のサブピクチャがCTUサイズの整数倍ではないサブピクチャ高さを含む、請求項6または7に記載のデータ構造
【請求項9】
前記SPSがnum_subpicture_minus1をさらに含み、前記num_subpicture_minus1に1を足したものは、前記ピクチャから区分された前記1つ以上のサブピクチャの数を指定する、請求項6から8のいずれか一項に記載のデータ構造
【請求項10】
前記サブピクチャサイズがCtbSizeYの単位でのサブピクチャ幅とサブピクチャ高さとを含む、請求項6から9のいずれか一項に記載のデータ構造
【請求項11】
ビットストリームを復号するためのデバイスであって、受信機とプロセッサとを含み、前記プロセッサがビットストリームを受信するように構成され、前記ビットストリームが、
ピクチャから区分された1つ以上のサブピクチャのデータであって、前記1つ以上のサブピクチャのうちの第1のサブピクチャが前記ピクチャの右の境界と一致する右の境界を含むとき、前記第1のサブピクチャがコーディングツリーユニット(CTU)サイズの整数倍ではないサブピクチャ幅を備える、データと、
シーケンスパラメータセット(SPS)であって、前記ピクチャから区分された前記1つ以上のサブピクチャの各々のための、サブピクチャ識別子(ID)と、サブピクチャサイズと、サブピクチャ位置とを備えるSPSとを含み、
前記プロセッサが、前記SPSを読み取って、前記1つ以上のサブピクチャの各々のための、前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とを取得し、
前記プロセッサが、さらに、対応する前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とに基づいて、前記ビットストリームを復号して、前記1つ以上のサブピクチャを取得する、デバイス。
【請求項12】
ビットストリームを記憶及び送信するためのデバイスであって、受信機とプロセッサと送信機と記憶媒体とを含み、前記受信機がビットストリームを受信するように構成され、前記記憶媒体が前記ビットストリームを記憶するように構成され、前記送信機が前記ビットストリームを送信するように構成され、前記ビットストリームが、
ピクチャから区分された1つ以上のサブピクチャのデータであって、前記1つ以上のサブピクチャのうちの第1のサブピクチャが前記ピクチャの右の境界と一致する右の境界を含むとき、前記第1のサブピクチャがコーディングツリーユニット(CTU)サイズの整数倍ではないサブピクチャ幅を備える、データと、
シーケンスパラメータセット(SPS)であって、前記ピクチャから区分された前記1つ以上のサブピクチャの各々のための、サブピクチャ識別子(ID)と、サブピクチャサイズと、サブピクチャ位置とを備えるSPSとを含み、
前記プロセッサが、前記SPSを読み取って、前記1つ以上のサブピクチャの各々のための、前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とを取得し、
前記プロセッサが、さらに、対応する前記サブピクチャIDと、前記サブピクチャサイズと、前記サブピクチャ位置とに基づいて、前記ビットストリームを復号して、前記1つ以上のサブピクチャを取得する、デバイス。
【請求項13】
ビットストリームのためのシステムであって、エンコーディングデバイスとデコーディングデバイスと1つ以上の記憶媒体とを含み、
前記エンコーディングデバイスがビデオ信号を取得し、前記ビデオ信号を符号化して1つ以上のビットストリームを取得するように構成され、前記ビットストリームの各々が、
ピクチャから区分された1つ以上のサブピクチャのデータであって、前記1つ以上のサブピクチャのうちの第1のサブピクチャが前記ピクチャの右の境界と一致する右の境界を含むとき、前記第1のサブピクチャがコーディングツリーユニット(CTU)サイズの整数倍ではないサブピクチャ幅を備える、データと、
シーケンスパラメータセット(SPS)であって、前記ピクチャから区分された前記1つ以上のサブピクチャの各々のための、サブピクチャ識別子(ID)と、サブピクチャサイズと、サブピクチャ位置とを備えるSPSとを含み、
前記1つ以上の記憶媒体が前記1つ以上のビットストリームを記憶するために使用され、
前記デコーディングデバイスが前記1つ以上のビットストリームを復号するために使用される、デバイス。
【請求項14】
ビットストリームを符号化するための方法であって、
ピクチャを1つ以上のサブピクチャへと区分するステップであって、前記1つ以上のサブピクチャのうちの第1のサブピクチャがピクチャの右の境界と一致する右の境界を含むとき、前記第1のサブピクチャがコーディングツリーユニット(CTU)サイズの整数倍ではないサブピクチャ幅を含む、テップと、
記サブピクチャのうちの1つ以上をビットストリームへと符号化するステップと
シーケンスパラメータセット(SPS)を前記ビットストリームへと符号化するステップであって、前記SPSは前記ピクチャから区分された前記1つ以上のサブピクチャの各々のための、サブピクチャ識別子(ID)と、サブピクチャサイズと、サブピクチャ位置とを含む、ステップとを備える、方法。
【請求項15】
モリに、デコーダへの通信のために前記ビットストリームを記憶するステップをさらに備える、請求項14に記載の方法。
【請求項16】
前記1つ以上のサブピクチャのうちの第2のサブピクチャが前記ピクチャの下の境界と一致しない下の境界を含むとき、前記第2のサブピクチャがCTUサイズの整数倍であるサブピクチャ高さを含む、請求項14または15に記載の方法。
【請求項17】
前記1つ以上のサブピクチャのうちの第3のサブピクチャが前記ピクチャのの境界と一致するの境界を含むとき、前記第3のサブピクチャがCTUサイズの整数倍ではないサブピクチャ高さを含む、請求項14から16のいずれか一項に記載の方法。
【請求項18】
num_subpicture_minus1を前記SPSへと符号化するステップをさらに含み、前記num_subpicture_minus1に1を足したものは、前記ピクチャから区分された前記1つ以上のサブピクチャの数を指定する、請求項14から17のいずれか一項に記載の方法。
【請求項19】
前記サブピクチャサイズがCtbSizeYの単位でのサブピクチャ幅とサブピクチャ高さとを含む、請求項14から18のいずれか一項に記載の方法。
【請求項20】
プロセッサと、メモリと、前記プロセッサに結合された受信機と、前記プロセッサに結合された送信機とを備え、前記プロセッサ、請求項14から19のいずれか一項に記載の方法を実行するように構成される、ビデオコーディングデバイス。
【請求項21】
ビデオコーディングデバイスが使用するためのコンピュータプログラム製品を備える非一時的コンピュータ可読媒体であって、前記コンピュータプログラム製品が、プロセッサによって実行されると前記ビデオコーディングデバイスに請求項1から5のいずれか一項に記載の方法を実行させる、前記非一時的コンピュータ可読媒体に記憶されるコンピュータ実行可能命令を備える、非一時的コンピュータ可読媒体。
【請求項22】
ビデオコーディングデバイスが使用するためのコンピュータプログラム製品を備える非一時的コンピュータ可読媒体であって、前記コンピュータプログラム製品が、プロセッサによって実行されると前記ビデオコーディングデバイスに請求項14から19のいずれか一項に記載の方法を実行させる、前記非一時的コンピュータ可読媒体に記憶されるコンピュータ実行可能命令を備える、非一時的コンピュータ可読媒体。
【請求項23】
コンピュータまたはプロセッサ上で実行されると、請求項1から5のいずれか一項に記載の方法を実行するためのプログラムコードを備える、コンピュータプログラム
【請求項24】
コンピュータまたはプロセッサ上で実行されると、請求項14から19のいずれか一項に記載の方法を実行するためのプログラムコードを備える、コンピュータプログラム。
【外国語明細書】