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

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

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

特開2024-75651マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート
<>
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図1
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図2
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図3
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図4
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図5
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図6
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図7
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図8
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図9
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図10
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図11
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図12
  • 特開-マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024075651
(43)【公開日】2024-06-04
(54)【発明の名称】マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したIRAPおよび非IRAPピクチャのサポート
(51)【国際特許分類】
   H04N 19/30 20140101AFI20240528BHJP
   H04N 19/70 20140101ALI20240528BHJP
【FI】
H04N19/30
H04N19/70
【審査請求】有
【請求項の数】11
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024040716
(22)【出願日】2024-03-15
(62)【分割の表示】P 2022518690の分割
【原出願日】2020-09-16
(31)【優先権主張番号】62/905,141
(32)【優先日】2019-09-24
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ワン、イエ-クイ
(57)【要約】      (修正有)
【課題】ビデオデコーダによって実装される復号の方法及び装置を提供する。
【解決手段】ビデオデコーダによって実装される復号の方法であって、ビデオデコーダによって、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)を含むビットストリームを受信する段階を含む。CVSS AUは、各レイヤについてのピクチャユニット(PU)を含み、各PUにおけるコーディング済みピクチャは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである。方法はまた、ビデオデコーダによって、ピクチャ順序カウント(POC)値に基づいて、レイヤの1つからコーディング済みピクチャを識別する段階と、ビデオデコーダによってコーディング済みピクチャを復号して復号済みピクチャを取得する段階を含む。
【選択図】なし
【特許請求の範囲】
【請求項1】
ビデオエンコーダによって実装される符号化の方法であって、
前記ビデオエンコーダによって、コーディング済みピクチャを含むピクチャユニット(PU)を、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)の各レイヤに挿入する段階であって、前記ビデオエンコーダは、各レイヤにおける前記コーディング済みピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約を受ける、段階と、
前記ビデオエンコーダによって、前記CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)をビットストリームに符号化する段階と、
前記ビデオエンコーダによって、ビデオデコーダへの通信のために前記ビットストリームを格納する段階と
を備える方法。
【請求項2】
前記CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャである、請求項1に記載の方法。
【請求項3】
前記CLVSSピクチャは、漸次復号リフレッシュ(GDR)ピクチャである、請求項1に記載の方法。
【請求項4】
前記CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される、請求項1から3のいずれか一項に記載の方法。
【請求項5】
符号化デバイスであって、
命令を含むメモリと、
前記メモリに結合されたプロセッサであって、
コーディング済みピクチャを含むピクチャユニット(PU)をコーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)の各レイヤに挿入することであって、前記符号化デバイスは、前記コーディング済みピクチャが各レイヤにおいてコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約される、こと、および、
前記CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)をビットストリームに符号化すること
を前記符号化デバイスに行わせるために前記命令を実装するよう構成される、プロセッサと、
前記プロセッサに結合された送信機であって、前記ビットストリームをビデオデコーダへ伝送するよう構成される、送信機と
を備える符号化デバイス。
【請求項6】
前記CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャまたは漸次復号リフレッシュ(GDR)ピクチャである、請求項5に記載の符号化デバイス。
【請求項7】
前記CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される、請求項5または6に記載の符号化デバイス。
【請求項8】
ビットストリームを受信するよう構成される受信機であって、前記ビットストリームは、請求項1から4のいずれか一項に記載の方法を実行することにより取得される、受信機と、
前記ビットストリームを記憶するよう構成されるメモリと、
前記受信機に結合された送信機であって、前記送信機は、前記ビットストリームをデコーダへ伝送するよう構成される、送信機と
を備えるコーディング装置。
【請求項9】
エンコーダと、
前記エンコーダと通信するデコーダとを備え、前記エンコーダは、請求項5から7のいずれか一項に記載の符号化デバイスを含む、
システム。
【請求項10】
少なくとも1つのハードウェアプロセッサにより実行されるときに、前記少なくとも1つのハードウェアプロセッサに、請求項1から4のいずれか一項に記載の方法を実行させる、オーディオコーディングのためのコンピュータ命令を記憶する非一時的コンピュータ可読記憶媒体。
【請求項11】
コンピュータに請求項1から4のいずれか一項に記載の方法を実行させるよう構成されている、記憶媒体上に格納されるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本特許出願は、Ye-Kui Wangによって2019年9月24日に出願された、「マルチレイヤビデオビットストリームにおけるアクセスユニット内の混在したRAPおよび非IRAPピクチャのサポート」と題する米国仮特許出願第62/905,141号の利益を主張する。
【0002】
一般的に、本開示は、ビデオコーディングにおけるマルチレイヤビデオビットストリームに関する。より具体的には、本開示は、イントラランダムアクセスポイント(IRAP)および非IRAPピクチャの両方を含むマルチレイヤビデオビットストリームのサポートに関する。
【背景技術】
【0003】
比較的短いビデオでさえも、その描画に必要とされるビデオデータの量は著しいものになる可能性があり、その結果、帯域幅容量の制限された通信ネットワークを介してデータをストリーミングするか、そうでなければ通信するときに困難が生じることがある。したがって、ビデオデータは概して、現代の遠隔通信ネットワークを介して通信される前に圧縮される。ビデオのサイズは、メモリリソースが限定的である場合があるので、ビデオが格納デバイス上に格納される場合にもまた問題となり得る。ビデオ圧縮デバイスは、多くの場合、ソースにおけるソフトウェアおよび/またはハードウェアを用いて、伝送または格納の前にビデオデータをコーディングし、これによりデジタルビデオイメージを表現するのに必要なデータの量を低下させる。次に、圧縮データは、デスティネーションにおいて、ビデオデータを復号するビデオ展開デバイスによって受信される。限られたネットワークリソースと高いビデオ品質への増加し続ける要求とによって、画質を全くかほとんど犠牲にすることなく圧縮比率を改善させる圧縮/展開技法の改善が望まれている。
【発明の概要】
【0004】
第1態様は、ビデオデコーダによって実装される復号の方法であって、ビデオデコーダによって、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)を含むビットストリームを受信する段階であって、CVSS AUは、各レイヤについてのピクチャユニット(PU)を含み、各PUにおけるコーディング済みピクチャは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである、段階と、ビデオデコーダによって、ピクチャ順序カウント(POC)値に基づいて、レイヤの1つからコーディング済みピクチャを識別する段階と、ビデオデコーダによってコーディング済みピクチャを復号して復号済みピクチャを取得する段階とを備える方法に関する。
【0005】
方法は、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0006】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャがイントラランダムアクセスポイント(IRAP)ピクチャであることを提供する。
【0007】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャが漸次復号リフレッシュ(GDR)ピクチャであることを提供する。
【0008】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャが、PUのピクチャパラメータセット(PPS)に配置される復旧前出力無しフラグに関連付けられることを提供し、復旧前出力無しフラグは1に等しい。
【0009】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CVSS AUの各レイヤが、ビデオパラメータセット(VPS)によって指定されることを提供する。
【0010】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CVSS AUは、コーディング済みビデオシーケンス(CVS)の最初のAUであることを提供する。
【0011】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、PUがレイヤアクセスユニットと称されることを提供する。
【0012】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CVSS AUの各レイヤがPUの1つを含むのでCVSS AUは完全AUと称されることを提供する。
【0013】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、コーディング済みピクチャを復号された状態で電子デバイスのディスプレイ上に表示することを提供する。
【0014】
第2態様は、ビデオエンコーダによって実装される符号化の方法であって、ビデオエンコーダによって、コーディング済みピクチャを含むピクチャユニット(PU)を、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)の各レイヤに挿入する段階であって、ビデオエンコーダは、コーディング済みピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約を受ける、段階と、ビデオエンコーダによって、CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)をビットストリームに符号化する段階と、ビデオエンコーダによって、ビデオデコーダへの通信のためにビットストリームを格納する段階とを備える方法に関する。
【0015】
方法は、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0016】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャがイントラランダムアクセスポイント(IRAP)ピクチャであることを提供する。
【0017】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャが漸次復号リフレッシュ(GDR)ピクチャであることを提供する。
【0018】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CVSS AUの各レイヤが、ビデオパラメータセット(VPS)によって指定されることを提供する。
【0019】
第3態様は、復号デバイスであって、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)を含むビットストリームを受信することを行うよう構成される受信機であって、CVSS AUは、各レイヤについてのピクチャユニット(PU)を含み、各PUにおけるコーディング済みピクチャは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである、受信機と、受信機に結合されたメモリであって、命令を記憶するメモリと、メモリに結合されたプロセッサであって、ピクチャ順序カウント(POC)値に基づいて、レイヤの1つからコーディング済みピクチャを識別すること、および、コーディング済みピクチャを復号して、復号されたピクチャを取得することを復号デバイスに行わせる命令を実行するよう構成されるプロセッサとを備える復号デバイスに関する。
【0020】
復号デバイスは、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0021】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャがイントラランダムアクセスポイント(IRAP)ピクチャであることを提供する。
【0022】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャが漸次復号リフレッシュ(GDR)ピクチャであることを提供する。
【0023】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CVSS AUの各レイヤが、ビデオパラメータセット(VPS)によって指定されることを提供する。
【0024】
第4態様は、符号化デバイスであって、命令を含むメモリと、メモリに結合されたプロセッサであって、コーディング済みピクチャを含むピクチャユニット(PU)をコーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)の各レイヤに挿入することであって、符号化デバイスは、コーディング済みピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約される、こと、および、CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)をビットストリームに符号化することを符号化デバイスに行わせるための命令を実装するよう構成される、プロセッサと、プロセッサに結合された送信機であって、ビデオビットストリームをビデオデコーダへ伝送するよう構成される、送信機とを備える符号化デバイスに関する。
【0025】
符号化デバイスは、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0026】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CLVSSピクチャがイントラランダムアクセスポイント(IRAP)ピクチャまたは漸次復号リフレッシュ(GDR)ピクチャであることを提供する。
【0027】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、CVSS AUの各レイヤが、ビデオパラメータセット(VPS)によって指定されることを提供する。
【0028】
第5態様はコーディング装置に関する。コーディング装置は、符号化するピクチャを受信するよう、または、復号するビットストリームを受信するよう構成される受信機と、受信機に結合された送信機であって、ビットストリームをデコーダへ送信する、または、復号されたイメージをディスプレイへ送信するよう構成される送信機と、受信機または送信機の少なくとも1に結合されたメモリであって、命令を格納するよう構成されるメモリと、メモリに結合されたプロセッサであって、メモリに格納された命令を実行し、本明細書に開示された方法のいずれかを実行するよう構成されるプロセッサとを備える。
【0029】
コーディング装置は、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0030】
任意選択で、上述の態様のいずれかにおいて、態様の別の実装は、復号済みピクチャを表示するよう構成されるディスプレイを提供する。
【0031】
第6態様はシステムに関する。システムは、エンコーダと、エンコーダと通信するデコーダとを備え、エンコーダまたはデコーダは、本明細書において開示される復号デバイス、符号化デバイス、またはコーディング装置を含む。
【0032】
システムは、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0033】
第7態様は、コーディングのための手段に関する。コーディングの手段は、符号化するピクチャを受信する、または、復号するビットストリームを受信するよう構成される受信手段と、受信手段に結合された送信手段であって、ビットストリームを復号手段へ送信するよう、または、復号済みイメージを表示手段へ送信するよう構成される送信手段と、受信手段または送信手段の少なくとも1つに結合された記憶手段であって、命令を格納するよう構成される記憶手段と、記憶手段に結合された処理手段であって、記憶手段に格納された命令を実行して、本明細書において開示される方法のいずれかを実行するよう構成される、処理手段とを備える。
【0034】
コーディングの手段は、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法を提供する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0035】
明確にすることを目的に、前述の実施形態のうちのいずれか1つは、本開示の範囲内の新たな実施形態を作成するために、その他の前述の実施形態のうちの任意の1または複数と組み合わされてよい。
【0036】
これらの特徴および他の特徴は、添付図面および特許請求の範囲と共に、以下の詳細な説明からより明確に理解されるであろう。
【図面の簡単な説明】
【0037】
本開示のより完全な理解のために、添付図面および詳細な説明と関連した以下の簡単な説明についてここで参照し、類似の参照番号は類似の部分を表す。
【0038】
図1】ビデオ信号をコーディングする例示的な方法のフローチャートである。
【0039】
図2】ビデオコーディングに関する例示的なコーディングおよび復号(コーデック)システムの概略図である。
【0040】
図3】例示的なビデオエンコーダを示す概略図である。
【0041】
図4】例示的なビデオデコーダを示す概略図である。
【0042】
図5】空間的スケーラビリティのマルチレイヤコーディングに関する例を示す。
【0043】
図6】復号順序および提示順序における、リーディングピクチャと相対的なIRAPピクチャとトレーリングピクチャとの間の関係の表現である。
【0044】
図7】漸次復号リフレッシュ(GDR)技法を実装するよう構成されるビデオビットストリームを示す。
【0045】
図8】GDRをサポートするためにエンコーダ制約を使用するときの望ましくない動き検索を示す概略図である。
【0046】
図9】ビデオビットストリームの実施形態を示す。
【0047】
図10】コーディング済みビデオビットストリームを復号する方法の実施形態である。
【0048】
図11】コーディング済みビデオビットストリームを符号化する方法の実施形態である。
【0049】
図12】ビデオコーディングデバイスの概略図である。
【0050】
図13】コーディングのための手段の実施形態の概略図である。
【発明を実施するための形態】
【0051】
1または複数の実施形態に係る例示的な実装態様が以下に提供されるが、開示されたシステムおよび/または方法は、現時点で知られているのかまたは存在しているのかに関係なく、任意の数の技法を使用して実装されてよいことを最初に理解されたい。本開示は、本明細書において図示され説明される例示的な設計例および実装形態を含む、以下に示される例示的な実装、図面、および技法に決して限定されるべきではなく、添付の特許請求の範囲と共に、その均等物の全範囲内で修正されてよい。
【0052】
以下に挙げる用語は、本明細書と反対の文脈で用いられない限り、以下のように定義される。具体的には、次の定義は、本開示に追加の明確性を提供するように意図される。しかしながら、用語は、異なる文脈においては異なるように説明されることがある。それに応じて、次の定義は、補足とみなされるべきであり、本明細書のそのような用語に関して提供された説明のいかなる他の定義を限定するようにもみなされるべきではない。
【0053】
ビットストリームとは、エンコーダとデコーダとの間で送信するために圧縮されたビデオデータを含むビットのシーケンスである。エンコーダとは、符号化処理を利用し、ビデオデータを圧縮してビットストリームにするように構成されたデバイスである。デコーダとは、復号処理を利用し、表示のためにビットストリームをビデオデータに再構築するように構成されたデバイスである。ピクチャとは、フレームもしくはそのフィールドを作るルマサンプルの配列および/またはクロマサンプルの配列である。説明を明確にするために、符号化または復号されているピクチャは、現ピクチャと称され得る。参照ピクチャは、インター予測および/またはインターレイヤ予測に従って参照により他のピクチャをコーディングするときに使用され得る参照サンプルを含むピクチャである。参照ピクチャリストとは、インター予測および/またはインターレイヤ予測に用いられる参照ピクチャのリストである。一部のビデオコーディングシステムでは2つの参照ピクチャリストを利用し、これらのリストは参照ピクチャリスト1および参照ピクチャリスト0として表され得る。参照ピクチャリスト構造とは、複数の参照ピクチャリストを含むアドレス指定可能なシンタックス構造である。インター予測とは、現ピクチャと異なる参照ピクチャ内の示されたサンプルを参照することにより現ピクチャのサンプルをコーディングする機構であり、参照ピクチャおよび現ピクチャは同一のレイヤにある。参照ピクチャリスト構造エントリは、参照ピクチャリストに関連付けられた参照ピクチャを示す参照ピクチャリスト構造におけるアドレス指定可能な場所である。スライスヘッダは、スライスにおいて表されるタイル内のすべてのビデオデータに関連するデータ要素を含む、コーディング済みスライスの一部である。シーケンスパラメータセット(SPS)は、ピクチャのシーケンスに関するデータを含むパラメータセットである。ピクチャパラメータセット(PPS)は、各ピクチャヘッダにおいて見られるシンタックス要素によって決定される、0またはより多くのコーディング済みピクチャ全体に適用するシンタックス要素を含むシンタックス構造である。
【0054】
ビデオパラメータセット(VPS)は、拡張レイヤの参照ピクチャセット構成についての復号依存性または情報を含む。VPSは、何のタイプのオペレーションポイントが提供されるか、オペレーションポイントのプロファイル、ティア、およびレベル、ならびに、セッションネゴシエーションおよびコンテンツ選択の基礎として使用され得るビットストリームのいくつかの他の高レベル特性などを含む、スケーラブルシーケンスの全体的な視点または表示を提供する。
【0055】
フラグは、2つの可能な値0および1のうち1つをとり得る変数または単一ビットのシンタックス要素である。アクセスユニット(AU)とは、復号ピクチャバッファ(DPB)から出力するために(例えば、ユーザに表示するために)、同じ表示時間(例えば、同じピクチャ順序カウント)と関連付けられた1または複数のコーディング済みピクチャのセットである。アクセスユニットデリミタ(AUD)は、AUの開始またはAU間の境界を示すために使用されるインジケータまたはデータ構造である。復号されたビデオシーケンスとは、ユーザへの表示に備えてデコーダにより再構築されたピクチャのシーケンスである。
【0056】
コーディング済みビデオシーケンス(CVS)は、復号順序で、コーディング済みビデオシーケンス開始(CVSS)AU、および、それに続く、CVSS AUである任意の後続のAUまで(ただしそれを含まない)のすべての後続のAUを含むCVSS AUでない0またはより多くのAUを含むアクセスユニット(AU)のシーケンスである。CVSS AUは、ビデオパラメータセット(VPS)によって指定される各レイヤについて予測ユニット(PU)があり、かつ、各PUにおけるコーディング済みピクチャが、コーディング済みレイヤビデオ開始シーケンス(CLVSS)ピクチャであるAUである。実施形態において、各ピクチャはAU内にある。PUは、指定された分類規則に従って互いに関連付けられたネットワーク抽象化レイヤ(NAL)ユニットのセットであり、復号の順序で連続し、厳密に1つのコーディング済みピクチャを含む。
【0057】
イントラランダムアクセスポイント(IRAP)ピクチャは、すべてのVCL NALユニットが、IDR_W_RADLからCRA_NUT(両端を含む)の範囲にある同じ値のnal_unit_typeを有するコーディング済みピクチャである。コーディング済みビデオシーケンスについての復号プロセスは、常にIRAPから開始する。IRAPピクチャは、ランダムアクセスポイント(RAP)を提供する。
【0058】
漸次復号リフレッシュ(GDR)ピクチャは、各VCL NALユニットがGDR_NUTに等しいnal_unit_typeを有するピクチャである。(GDR)ピクチャはまた、IRAPピクチャとみなされ得る。GDRピクチャは、CVS開始(CVSS)ピクチャと称される。
【0059】
ピクチャ順序カウント(POC)は、各ピクチャに関連付けられた変数であり、CLVSにおけるすべてのピクチャの中で関連付けられたピクチャを一意に識別し、関連付けられたピクチャがDPBから出力されるとき、DPBから出力される同一のCLVSにおける他のピクチャの出力順序位置に対する、出力順序における関連付けられたピクチャの位置を示す。
【0060】
以下の頭字語、すなわち、アクセスユニット(AU)、コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、コーディングユニット(CU)、コーディング済みレイヤビデオシーケンス(CLVS)、コーディング済みレイヤビデオシーケンス開始(CLVSS)、コーディング済みビデオシーケンス(CVS)、コーディング済みビデオシーケンス開始(CVSS)、ジョイントビデオエキスパートチーム(JVET)、動き拘束タイルセット(MCTS)、最大転送単位(MTU)、ネットワーク抽象化レイヤ(NAL)、出力レイヤセット(OLS)、ピクチャ順序カウント(POC)、ピクチャパラメータセット(PPS)、ランダムアクセスポイント(RAP)、ローバイトシーケンスペイロード(RBSP)、シーケンスパラメータセット(SPS)、ビデオパラメータセット(VPS)、多目的ビデオコーディング(VVC)およびワーキングドラフト(WD)が本明細書において使用される。
【0061】
図1は、ビデオ信号をコーディングする例示的な動作方法100のフローチャートである。具体的には、ビデオ信号はエンコーダにおいて符号化される。符号化処理は、ビデオファイルサイズを低減するように、様々な機構を利用することによってビデオ信号を圧縮する。より小さいファイルサイズは、関連付けられた帯域幅オーバヘッドを低減させながら、圧縮されたビデオファイルをユーザへ送信することを可能にする。デコーダは次に、エンドユーザへの表示のために元のビデオ信号を再構築するように、圧縮されたビデオファイルを復号する。復号処理は概して、デコーダがビデオ信号を整合性をもって再構築可能となるように、符号化処理のミラー動作を行う。
【0062】
段階101において、ビデオ信号がエンコーダに入力される。例えば、ビデオ信号は、メモリに格納された非圧縮ビデオファイルであってよい。別の例として、ビデオファイルは、ビデオカメラなどのビデオキャプチャデバイスによってキャプチャされ、ビデオのライブストリーミングをサポートするように符号化されてよい。ビデオファイルは、オーディオコンポーネントとビデオコンポーネントの両方を含んでよい。ビデオコンポーネントは、シーケンスで見られたときに、動きの視覚的印象を提示する、一連のイメージフレームを含む。フレームは、本明細書ではルマ成分(またはルマサンプル)と呼ばれる光と、クロマ成分(または色サンプル)と呼ばれる色の観点で表現される、画素を含む。いくつかの例において、フレームはまた、3次元ビューイングをサポートする深度値を含み得る。
【0063】
段階103において、ビデオはブロックにパーティショニングされる。パーティショニングは、圧縮のために、各フレームにおける画素を正方形および/または長方形のブロックに細分割することを含む。例えば、高効率ビデオコーディング(HEVC)(H.265およびMPEG-H Part2としてもまた知られる)において、フレームはまず、コーディングツリーユニット(CTU)に分割され得、それは、予め定義されたサイズ(例えば、64画素×64画素)のブロックである。CTUは、ルマサンプルとクロマサンプルの両方を含む。コーディングツリーは、CTUをブロックに分割するように利用され得、次に、更なる符号化をサポートする構成が実現されるまで、ブロックを再帰的に細分割してよい。例えば、フレームのルマ成分は、個々のブロックが比較的均質照明値を含むまで、細分割されてよい。更に、フレームのクロマ成分は、個々のブロックが比較的均質の色値を含むまで、細分割されてよい。それに応じて、パーティショニング機構は、ビデオフレームのコンテンツに依存して変わる。
【0064】
段階105において、様々な圧縮機構が、段階103においてパーティショニングされたイメージブロックを圧縮するように利用される。例えば、インター予測および/またはイントラ予測が利用されてよい。インター予測は、共通のシーンにおけるオブジェクトは連続するフレームにおいて現れる傾向がある、という事実を利用するように設計される。それに応じて、参照フレームにおけるオブジェクトを描画するブロックは、隣接フレームにおいて繰り返して表現される必要がない。具体的には、テーブルなどのオブジェクトは、複数のフレームにわたって一定の位置に残ることがある。したがって、テーブルが一度表現されると、隣接フレームは、参照フレームに戻って参照され得る。パターンマッチング機構が、複数のフレームにわたってオブジェクトをマッチさせるように利用され得る。更に、例えばオブジェクトの動きまたはカメラの動きに起因して、移動するオブジェクトは、複数のフレームにわたって表されることがある。特定の例として、ビデオが、複数のフレームにわたって画面を横切って移動する自動車を示してよい。動きベクトルは、そのような動きを表現するように利用され得る。動きベクトルは、フレームにおけるオブジェクトの座標から参照フレームにおけるオブジェクトの座標へのオフセットを提供する二次元ベクトルである。したがって、インター予測は、現フレームにおけるイメージブロックを、参照フレームにおける対応するブロックからのオフセットを示す動きベクトルのセットとして、符号化し得る。
【0065】
イントラ予測は、共通フレームにおいてブロックを符号化する。イントラ予測は、ルマおよびクロマ成分はフレームにおいてクラスタとなる傾向がある、という事実を利用する。例えば、ツリーの部分における緑のパッチは、緑の同様のパッチに隣接するように位置する傾向がある。イントラ予測は、複数の指向性予測モード(例えば、HEVCにおいては33)、平面モード、および直流(DC)モードを利用する。指向性モードは、現ブロックが、隣接ブロックのサンプルと、対応する方向において同様/同じであることを示す。平面モードは、行/列(例えば、平面)に沿った一連のブロックが、行の縁において隣接ブロックに基づいて補間され得ることを示す。平面モードは、実質的に、値を変更する際に比較的一定のスロープを利用することによって、行/列にわたる光/色の円滑な移行を示す。DCモードは、境界のスムージングに利用され、ブロックが、指向性予測モードの角度方向に関連付けられた全ての隣接ブロックのサンプルに関連付けられた平均値と、同様/同じであることを示す。それに応じて、イントラ予測ブロックは、実際の値の代わりに、様々な相関予測モード値としてイメージブロックを表し得る。更に、インター予測ブロックは、実際の値の代わりに動きベクトル値としてイメージブロックを表し得る。どちらの場合も、予測ブロックは、いくつかの場合において、イメージブロックを正確に表さないことがある。いかなる差異も、残差ブロックに格納される。更にファイルを圧縮するように、変換が、残差ブロックに適用され得る。
【0066】
段階107において、様々なフィルタリング技法が適用され得る。HEVCにおいて、フィルタはインループフィルタリングスキームに従って適用される。上記で論じられたブロックベースの予測は、デコーダにおいて、ブロックノイズのあるイメージを作成する結果となることがある。更に、ブロックベースの予測スキームは、ブロックを符号化し得、次に、参照ブロックとして後に使用するための符号化済みブロックを再構築し得る。インループフィルタリングスキームは、ノイズ抑制フィルタ、ブロック解除フィルタ、適応ループフィルタ、およびサンプル適応オフセット(SAO)フィルタを、ブロック/フレームに繰り返し適用する。これらのフィルタは、符号化されたファイルが正確に再構築され得るように、そのようなブロッキングアーチファクトを軽減する。更に、これらのフィルタは再構築された参照ブロックへのアーチファクトを軽減し、その結果、アーチファクトが、再構築された参照ブロックに基づいて符号化された後続のブロックにおいて追加のアーチファクトを作成する可能性が小さくなる。
【0067】
ビデオ信号がパーティショニング、圧縮、およびフィルタリングされると、得られるデータは、段階109でビットストリームにおいて符号化される。ビットストリームは、上記で論じられたデータのみならず、デコーダにおいて適切なビデオ信号再構築をサポートするように要望される任意のシグナリングデータを含む。例えば、そのようなデータは、デコーダにコーディング命令を提供する、パーティションデータ、予測データ、残差ブロック、および様々なフラグを含み得る。ビットストリームは、要求時にデコーダに向けての伝送のために、メモリに格納され得る。ビットストリームはまた、複数のデコーダに向けてブロードキャストおよび/またはマルチキャストされ得る。ビットストリームの作成は反復処理である。それに応じて、段階101、103、105、107および109は、継続的および/または同時に、多くのフレームおよびブロックにわたって発生し得る。図1に示された順序は明確性および説明の容易性のために存在するものであり、ビデオコーディングプロセスを特定の順序に限定することを意図するものではない。
【0068】
デコーダは、段階111でビットストリームを受信し復号処理を始める。具体的には、デコーダは、エントロピー復号スキームを利用して、ビットストリームを対応するシンタックスおよびビデオデータに変換する。段階111において、デコーダは、ビットストリームからのシンタックスデータを利用して、フレームに関するパーティションを決定する。パーティショニングは、段階103において、ブロックパーティショニングの結果とマッチすべきである。段階111において利用されるようなエントロピー符号化/復号が、ここで説明される。エンコーダは、圧縮処理の最中に、入力イメージにおける値の空間的位置に基づいて、いくつかの可能な選択肢から、ブロックパーティショニングスキームの選択などの多くの選択を行う。正確な選択のシグナリングは、多数のビン(bin)を利用し得る。本明細書で用いられるとき、ビンは、変数(例えば、コンテキストに依存して変わり得るビット値)として扱われる二進値である。エントロピーコーディングは、エンコーダが、特定の場合において実行可能でないことが明確な任意の選択肢を棄却し、許容可能な選択肢のセットを残すことを可能にする。各許容可能な選択肢は次に、コードワードを割り当てられる。コードワードの長さは、許容可能な選択肢(例えば、2つの選択肢に関して1つのビン、3から4つの選択肢に関して2つのビンなど)の数に基づく。エンコーダは次に、選択された選択肢に関するコードワードを符号化する。コードワードは、全ての可能な選択肢の大きい可能性のあるセットからの選択を一意に示すのとは対照的に、許容可能な選択肢の小さいサブセットからの選択を一意に示すように要望されるくらいの大きさなので、このスキームは、コードワードのサイズを低減する。デコーダは次に、エンコーダと同様の方式において許容可能な選択肢のセットを決定することによって、選択したものを復号する。許容可能な選択肢のセットを決定することにより、デコーダはコードワードを読み出し、エンコーダによって行われた選択を決定することができる。
【0069】
段階113において、デコーダはブロック復号を実行する。具体的には、デコーダは、逆変換を利用して残差ブロックを生成する。次に、デコーダは、残差ブロックおよび対応する予測ブロックを利用して、パーティショニングに従ってイメージブロックを再構築する。予測ブロックは、段階105においてエンコーダで生成されたようなイントラ予測ブロックおよびインター予測ブロックの両方を含み得る。再構築されたイメージブロックは次に、段階111において決定されたパーティショニングデータに従って再構築されたビデオ信号のフレームに位置決めされる。段階113に関するシンタックスはまた、上記で論じられたようなエントロピーコーディングを介して、ビットストリームにおいてシグナリングされ得る。
【0070】
段階115において、フィルタリングは、エンコーダにおいて段階107と同様の方式で、再構築されたビデオ信号のフレームに対して実行される。例えば、ノイズ抑制フィルタ、ブロック解除フィルタ、適応ループフィルタ、およびSAOフィルタが、ブロックアーチファクトを除去するようにフレームに適用され得る。フレームがフィルタリングされると、ビデオ信号は、エンドユーザが見るように、段階117においてディスプレイに出力され得る。
【0071】
図2は、ビデオコーディングに関する例示的なコーディングおよび復号(コーデック)システム200の概略図である。具体的には、コーデックシステム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を含み得る。これらのコンポーネントがここで説明される。
【0072】
パーティショニングされたビデオ信号201は、コーディングツリーによって画素のブロックにパーティショニングされた、キャプチャされたビデオシーケンスである。コーディングツリーは、画素のブロックを画素のより小さいブロックに細分割するように、様々なスプリットモードを利用する。これらのブロックは次に、より小さいブロックへと更に細分割され得る。ブロックは、コーディングツリー上のノードと呼ばれてよい。より大きい親ノードは、より小さい子ノードへと分割される。ノードが細分割される回数は、ノード/コーディングツリーの深度と呼ばれる。分割されたブロックは、いくつかの場合において、コーディングユニット(CU)に含まれ得る。例えば、CUは、CUに関して対応するシンタックス命令に従う、ルマブロック、赤色差クロマ(Cr)ブロック、および青色差クロマ(Cb)ブロックを含むCTUのサブ部分であり得る。スプリットモードは、ノードをそれぞれ2、3、または4の子ノードにパーティショニングするように利用される二分木(BT)、三分木(TT)、および四分木(QT)を含み得、それらは利用されるスプリットモードに依存して様々な形状をとる。パーティショニングされたビデオ信号201は、圧縮のために、汎用コーダ制御コンポーネント211、変換スケーリングおよび量子化コンポーネント213、イントラピクチャ推定コンポーネント215、フィルタ制御分析コンポーネント227、および動き推定コンポーネント221へ転送される。
【0073】
汎用コーダ制御コンポーネント211は、用途制約に従って、ビデオシーケンスのイメージをビットストリームにコーディングすることに関する決定を行うように構成される。例えば、汎用コーダ制御コンポーネント211は、再構築品質に対する、ビットレート/ビットストリームサイズの最適化を管理する。そのような決定は、格納空間/帯域幅有効性およびイメージ解像度要求に基づいて作成され得る。汎用コーダ制御コンポーネント211はまた、バッファアンダーランおよびオーバーラン問題を軽減するように、送信速度に鑑みバッファ利用を管理する。これらの問題を管理するように、汎用コーダ制御コンポーネント211は、パーティショニング、予測、および他のコンポーネントによるフィルタリングを管理する。例えば、汎用コーダ制御コンポーネント211は、解像度を増加させて帯域幅利用率を増加させるように圧縮複雑性を動的に増加させることがあり、または、解像度および帯域幅利用率を低下させるように圧縮複雑性を低下させることがある。したがって、汎用コーダ制御コンポーネント211は、ビデオ信号再構築品質とビットレート問題とのバランスをとるように、コーデックシステム200の他のコンポーネントを制御する。汎用コーダ制御コンポーネント211は制御データを作成し、それにより他のコンポーネントの動作を制御する。制御データはまた、デコーダにおける復号のためのパラメータをシグナリングするように、ビットストリームに符号化されるヘッダフォーマットおよびCABACコンポーネント231に転送される。
【0074】
パーティショニングされたビデオ信号201はまた、インター予測のために動き推定コンポーネント221および動き補償コンポーネント219に送信される。パーティショニングされたビデオ信号201のフレームまたはスライスは、複数のビデオブロックに分割され得る。動き推定コンポーネント221および動き補償コンポーネント219は、受信されたビデオブロックのインター予測コーディングを、1または複数の参照フレーム内の1または複数のブロックと比較することで実行し、時間的予測を提供する。コーデックシステム200は、複数のコーディングパスを実行して、例えば、ビデオデータの各ブロックに適切なコーディングモードを選択してよい。
【0075】
動き推定コンポーネント221および動き補償コンポーネント219は、高度に統合されてよいが、概念的目的で別々に示されている。動き推定コンポーネント221により実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成する処理である。動きベクトルは、例えば、予測ブロックと比較してコーディング済みオブジェクトの変位を示し得る。予測ブロックは、画素差分の観点から、コーディングされるブロックによくマッチするとわかったブロックである。予測ブロックはまた、参照ブロックと呼ばれ得る。そのような画素差分は、差分絶対値和(SAD)、差分二乗和(SSD)、または他の差分指標によって決定されてよい。HEVCは、CTU、コーディングツリーブロック(CTB)およびCUを含む、いくつかのコーディング済みオブジェクトを利用する。例えば、CTUはCTBに分割され得、それは次に、CUに含まれるためにCBに分割され得る。CUは、予測データを含む予測ユニット(PU)および/または、CUに関して変換された残差データを含む変換ユニット(TU)として符号化され得る。動き推定コンポーネント221は、レート歪み最適化プロセスの一部としてレート歪み解析を使用して、動きベクトル、PU、およびTUを生成する。例えば、動き推定コンポーネント221は、現ブロック/フレームに関する複数の参照ブロック、複数の動きベクトルなどを決定し得、最良のレート歪み特性を有する参照ブロック、動きベクトルなどを選択し得る。最良のレート歪み特性は、ビデオ再構築の品質(例えば、圧縮によるデータ損失の量)、およびコーディング効率(例えば、最終的な符号化のサイズ)の両方のバランスをとる。
【0076】
いくつかの例において、コーデックシステム200は、復号済みピクチャバッファコンポーネント223に格納された参照ピクチャのサブ整数画素位置の値を計算してよい。例えば、ビデオコーデックシステム200は、参照ピクチャの4分の1画素位置、8分の1画素位置、または他の端数画素位置の値を補間してよい。したがって、動き推定コンポーネント221は、フル画素位置および端数画素位置に対して動き検索を実行し、端数画素精度を有する動きベクトルを出力してよい。動き推定コンポーネント221は、インターコーディングスライス内のビデオブロックのPUに対する動きベクトルを、PUの位置と参照ピクチャの予測ブロックの位置とを比較することで計算する。動き推定コンポーネント221は、計算した動きベクトルを動きデータとしてヘッダフォーマットおよびCABACコンポーネント231に符号化のために出力し、また動きを動き補償コンポーネント219に出力する。
【0077】
動き補償コンポーネント219により実行される動き補償は、動き推定コンポーネント221により決定される動きベクトルに基づいて予測ブロックをフェッチするまたは生成することを必要とし得る。ここでも、動き推定コンポーネント221および動き補償コンポーネント219は、いくつかの例において機能的に統合されてよい。動き補償コンポーネント219は、現ビデオブロックのPUに対する動きベクトルを受信すると、動きベクトルが指す予測ブロックの位置を特定してよい。残差ビデオブロックは次に、コーディングされている現ビデオブロックの画素値から予測ブロックの画素値を減算することで形成され、画素差分値を形成する。一般的に、動き推定コンポーネント221は、ルマ成分に対して動き推定を実行し、動き補償コンポーネント219はルマ成分に基づいて計算された動きベクトルをクロマ成分およびルマ成分の両方に用いる。予測ブロックおよび残差ブロックは、変換スケーリングおよび量子化コンポーネント213に転送される。
【0078】
パーティショニングされたビデオ信号201はまた、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217に送信される。動き推定コンポーネント221および動き補償コンポーネント219と同様に、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217は高度に統合されてよいが、概念的目的で別々に示される。上記で説明されるように、フレーム間の動き推定コンポーネント221および動き補償コンポーネント219によって実行されるインター予測の代替手段として、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217は、現フレームにおけるブロックと比較して、現ブロックをイントラ予測する。特に、イントラピクチャ推定コンポーネント215は、現ブロックを符号化するように用いるイントラ予測モードを決定する。いくつかの例において、イントラピクチャ推定コンポーネント215は、複数のテストされたイントラ予測モードから、現ブロックを符号化するための適切なイントラ予測モードを選択する。選択されたイントラ予測モードは次に、符号化のために、ヘッダフォーマットおよびCABACコンポーネント231に転送される。
【0079】
例えば、イントラピクチャ推定コンポーネント215は、様々なテスト済みイントラ予測モードに関して、レート歪み解析を使用してレート歪み値を計算し、テスト済みモードの中で最良のレート歪み特性を有するイントラ予測モードを選択してよい。レート歪み解析は概して、符号化済みブロックと、符号化済みブロックを生み出すために符号化された元の符号化前のブロックとの間の歪み(またはエラー)の量、および符号化済みブロックを生成するのに用いられるビットレート(例えば、ビット数)を決定する。イントラピクチャ推定コンポーネント215は、様々な符号化されたブロックの歪みおよびレートから比を計算し、どのイントラ予測モードが該当ブロックに対して最良のレート歪み値を示すかを決定してよい。更に、イントラピクチャ推定コンポーネント215は、レート歪み最適化(RDO)に基づいて深度モデリングモード(DMM)を使用して、深度マップの深度ブロックをコーディングするように構成されてよい。
【0080】
イントラピクチャ予測コンポーネント217は、エンコーダ上で実装されるとき、イントラピクチャ推定コンポーネント215によって決定される選択されたイントラ予測モードに基づいて予測ブロックから残差ブロックを生成し、または、デコーダ上で実装されるとき、ビットストリームから残差ブロックを読み出し得る。残差ブロックは、行列として表される、予測ブロックと元のブロックの間の値の差異を含む。残差ブロックは次に、変換スケーリングおよび量子化コンポーネント213に転送される。イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217は、ルマおよびクロマ成分の両方において動作し得る。
【0081】
変換スケーリングおよび量子化コンポーネント213は、更に残差ブロックを圧縮するように構成される。変換スケーリングおよび量子化コンポーネント213は、離散余弦変換(DCT)、離散正弦変換(DST)または概念的に同様の変換などの変換を残差ブロックに適用して、残差変換係数値を含むビデオブロックを生み出す。ウェーブレット変換、整数変換、サブバンド変換、または他のタイプの変換も用いることができる。変換は、残差情報を画素値ドメインから周波数ドメイン等の変換ドメインに変換してよい。変換スケーリングおよび量子化コンポーネント213は、また、例えば周波数に基づいて、変換された残差情報をスケーリングするように構成される。そのようなスケーリングは、異なる周波数情報を異なる粒度で量子化するように、スケール因子を残差情報に適用することを含み、それは再構築済みビデオの最終視覚的品質に影響し得る。変換スケーリングおよび量子化コンポーネント213はまた、ビットレートを更に低減するために変換係数を量子化するように構成される。量子化プロセスは、いくつかの、または全ての係数に関連付けられたビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例において、変換スケーリングおよび量子化コンポーネント213は次に、量子化変換係数を含む行列のスキャンを実行し得る。量子化変換係数は、ビットストリームで符号化されるように、ヘッダフォーマットおよびCABACコンポーネント231に転送される。
【0082】
スケーリングおよび逆変換コンポーネント229は、動き推定をサポートするように、変換スケーリングおよび量子化コンポーネント213の逆動作を適用する。スケーリングおよび逆変換コンポーネント229は、例えば、別の現ブロックに関する予測ブロックとなり得る参照ブロックとして後に使用するために、画素ドメインにおける残差ブロックを再構築するように、逆スケーリング、変換、および/または量子化を適用する。動き推定コンポーネント221および/または動き補償コンポーネント219は、より後のブロック/フレームの動き推定を用いるように、残差ブロックを対応する予測ブロックに戻して加えることにより、参照ブロックを計算し得る。フィルタは、スケーリング、量子化、および変換の最中に作成したアーチファクトを軽減するように、再構築された参照ブロックに適用される。そうでない場合は、そのようなアーチファクトは、後続のブロックが予測されるとき、不正確な予測を生じさせる(および、追加のアーチファクトを作成させる)であろう。
【0083】
フィルタ制御分析コンポーネント227およびインループフィルタコンポーネント225は、残差ブロックおよび/または再構築されたイメージブロックにフィルタを適用する。例えば、スケーリングおよび逆変換コンポーネント229からの変換された残差ブロックは、元のイメージブロックを再構築するように、イントラピクチャ予測コンポーネント217および/または動き補償コンポーネント219からの対応する予測ブロックと組み合され得る。フィルタは次に、再構築されたイメージブロックに適用され得る。いくつかの例において、フィルタは、代わりに、残差ブロックに適用され得る。図2における他のコンポーネントと同様に、フィルタ制御分析コンポーネント227およびインループフィルタコンポーネント225は高度に統合され、一緒に実装されてよいが、概念的目的で別々に描画される。再構築された参照ブロックに適用されるフィルタは、特定の空間領域に適用され、そのようなフィルタがどのように適用されるかを調整するように、複数のパラメータを含む。フィルタ制御分析コンポーネント227は、そのようなフィルタがどこで適用されるべきか決定するように、再構築された参照ブロックを分析し、対応するパラメータを設定する。そのようなデータは、符号化のためにフィルタ制御データとしてヘッダフォーマットおよびCABACコンポーネント231に転送される。インループフィルタコンポーネント225は、フィルタ制御データに基づいて、そのようなフィルタを適用する。フィルタは、デブロッキングフィルタ、ノイズ抑制フィルタ、SAOフィルタ、および適応ループフィルタを含んでよい。そのようなフィルタは、例に依存して、空間/画素ドメインにおいて(例えば、再構築された画素ブロック上で)、または、周波数ドメインにおいて、適用されてよい。
【0084】
エンコーダとして動作するとき、フィルタリングされた再構築されたイメージブロック、残差ブロック、および/または予測ブロックは、上記で論じられる動き推定において後に使用するために、復号済みピクチャバッファコンポーネント223に格納される。デコーダとして動作するとき、復号済みピクチャバッファコンポーネント223は、再構築およびフィルタリングされたブロックを格納し、出力ビデオ信号の一部として、ディスプレイに向けて転送する。復号済みピクチャバッファコンポーネント223は、予測ブロック、残差ブロック、および/または再構築されたイメージブロックを格納できる任意のメモリデバイスでよい。
【0085】
ヘッダフォーマットおよびCABACコンポーネント231は、コーデックシステム200の様々なコンポーネントからデータを受信し、そのようなデータを、デコーダに向けて伝送するために、コーディング済みビットストリームへ符号化する。具体的には、ヘッダフォーマットおよびCABACコンポーネント231は、全体制御データおよびフィルタ制御データなどの制御データを符号化するように、様々なヘッダを生成する。更に、イントラ予測および動きデータを含む予測データ、ならびに、量子化変換係数データの形式の残差データは、全てビットストリームにおいて符号化される。最終ビットストリームは、元のパーティショニングされたビデオ信号201を再構築するためにデコーダによって要望される全ての情報を含む。そのような情報は、また、イントラ予測モードインデックステーブル(また、コードワードマッピングテーブルと呼ばれる)、様々なブロックに関する符号化コンテキストの定義、もっとも可能性が高いイントラ予測モードのインジケーション、パーティション情報のインジケーションなどを含んでよい。そのようなデータは、エントロピーコーディングを利用することによって符号化されてよい。例えば、情報は、コンテキスト適応可変長コーディング(CAVLC)、CABAC、シンタックスベースのコンテキスト適応バイナリ算術コーディング(SBAC)、確率区間パーティショニングエントロピー(PIPE)コーディング、または別のエントロピーコーディング技術を利用して符号化されてよい。エントロピーコーディングに続いて、コーディング済みビットストリームは、別のデバイス(例えば、ビデオデコーダ)に伝送されても、後の伝送または検索のためにアーカイブされてもよい。
【0086】
図3は、例示的なビデオエンコーダ300を示すブロック図である。ビデオエンコーダ300は、コーデックシステム200の符号化機能を実装するように、および/または、動作方法100の段階101、103、105、107および/または109を実装するように、利用され得る。エンコーダ300は入力されるビデオ信号をパーティショニングし、パーティショニングされたビデオ信号301をもたらし、それは、パーティショニングされたビデオ信号201と実質的に同様となる。パーティショニングされたビデオ信号301は次に、エンコーダ300のコンポーネントによって圧縮され、ビットストリームに符号化される。
【0087】
具体的には、パーティショニングされたビデオ信号301は、イントラ予測のために、イントラピクチャ予測コンポーネント317に転送される。イントラピクチャ予測コンポーネント317は、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217と実質的に同様であってよい。パーティショニングされたビデオ信号301はまた、復号済みピクチャバッファコンポーネント323における参照ブロックに基づいて、インター予測のために動き補償コンポーネント321に転送される。動き補償コンポーネント321は、動き推定コンポーネント221および動き補償コンポーネント219と実質的に同様であってよい。イントラピクチャ予測コンポーネント317および動き補償コンポーネント321からの予測ブロックおよび残差ブロックは、残差ブロックの変換および量子化のために、変換および量子化コンポーネント313に転送される。変換および量子化コンポーネント313は、変換スケーリングおよび量子化コンポーネント213と実質的に同様であってよい。変換および量子化された残差ブロック、および対応する予測ブロック(関連付けられた制御データと共に)は、ビットストリームにコーディングするために、エントロピーコーディングコンポーネント331に転送される。エントロピーコーディングコンポーネント331は、ヘッダフォーマットおよびCABACコンポーネント231と実質的に同様であってよい。
【0088】
変換および量子化された残差ブロック、および/または対応する予測ブロックはまた、動き補償コンポーネント321によって用いるための参照ブロックへの再構築のために、変換および量子化コンポーネント313から逆変換および量子化コンポーネント329に転送される。逆変換および量子化コンポーネント329は、スケーリングおよび逆変換コンポーネント229と実質的に同様であってよい。インループフィルタコンポーネント325におけるインループフィルタはまた、例に依存して、残差ブロックおよび/または再構築された参照ブロックに適用される。インループフィルタコンポーネント325は、フィルタ制御分析コンポーネント227およびインループフィルタコンポーネント225と実質的に同様であってよい。インループフィルタコンポーネント325は、インループフィルタコンポーネント225に関して説明されたような複数のフィルタを含んでよい。フィルタリングされたブロックは次に、動き補償コンポーネント321によって参照ブロックとして用いるために、復号済みピクチャバッファコンポーネント323に格納される。復号済みピクチャバッファコンポーネント323は、復号済みピクチャバッファコンポーネント223と実質的に同様であってよい。
【0089】
図4は、例示的なビデオデコーダ400を示すブロック図である。ビデオデコーダ400は、コーデックシステム200の復号機能を実装し、および/または、動作方法100の段階111、113、115および/または117を実装するように利用されてよい。デコーダ400は、例えばエンコーダ300からビットストリームを受信し、エンドユーザへの表示のために、ビットストリームに基づいて、再構築された出力ビデオ信号を生成する。
【0090】
ビットストリームは、エントロピー復号コンポーネント433によって受信される。エントロピー復号コンポーネント433は、CAVLC、CABAC、SBAC、PIPEコーディング、または他のエントロピーコーディング技術などの、エントロピー復号スキームを実装するように構成される。例えば、エントロピー復号コンポーネント433は、ビットストリーム内のコードワードとして符号化された追加のデータを解釈するために、ヘッダ情報を利用してコンテキストを提供してよい。復号された情報は、全体制御データ、フィルタ制御データ、パーティション情報、動きデータ、予測データ、および残差ブロックからの量子化変換係数などの、ビデオ信号を復号する任意の望ましい情報を含む。量子化変換係数は、残差ブロックに再構築されるように、逆変換および量子化コンポーネント429に転送される。逆変換および量子化コンポーネント429は、逆変換および量子化コンポーネント329と同様であってよい。
【0091】
再構築された残差ブロックおよび/または予測ブロックは、イントラ予測動作に基づくイメージブロックへの再構築のために、イントラピクチャ予測コンポーネント417に転送される。イントラピクチャ予測コンポーネント417は、イントラピクチャ推定コンポーネント215およびイントラピクチャ予測コンポーネント217と同様であってよい。具体的には、イントラピクチャ予測コンポーネント417は、予測モードを利用してフレームにおける参照ブロックを位置決めし、イントラ予測されたイメージブロックを再構築するように、結果に残差ブロックを適用する。再構築されたイントラ予測されたイメージブロックおよび/または残差ブロック、および対応するインター予測データは、復号済みピクチャバッファコンポーネント423に、インループフィルタコンポーネント425を介して転送され、それらは実質的に、復号済みピクチャバッファコンポーネント223およびインループフィルタコンポーネント225と、それぞれ同様であり得る。インループフィルタコンポーネント425は、再構築されたイメージブロック、残差ブロック、および/または予測ブロックをフィルタリングし、そのような情報は、復号済みピクチャバッファコンポーネント423に格納される。復号済みピクチャバッファコンポーネント423からの再構築されたイメージブロックは、インター予測のために、動き補償コンポーネント421に転送される。動き補償コンポーネント421は、動き推定コンポーネント221および/または動き補償コンポーネント219と実質的に同様であってよい。具体的には、動き補償コンポーネント421は、参照ブロックからの動きベクトルを利用して予測ブロックを生成し、イメージブロックを再構築するように、結果に残差ブロックを適用する。得られた再構築されたブロックはまた、インループフィルタコンポーネント425を介して、復号済みピクチャバッファコンポーネント423に転送され得る。復号済みピクチャバッファコンポーネント423は、追加の再構築されたイメージブロックを継続して格納し、それはパーティション情報を介してフレームに再構築され得る。そのようなフレームはまた、シーケンスに配置されてよい。シーケンスは、再構築された出力ビデオ信号として、ディスプレイに向けて出力される。
【0092】
以上を踏まえると、こうしたビデオ圧縮技法は、空間的(イントラピクチャ)予測および/または時間的(インターピクチャ)予測を実行し、ビデオシーケンスに固有の冗長性を減らすまたは除去する。ブロックベースのビデオコーディングについては、ビデオスライス(すなわち、ビデオピクチャまたはビデオピクチャの一部)は、ツリーブロック、コーディングツリーブロック(CTB)、コーディングツリーユニット(CTU)、コーディングユニット(CU)および/またはコーディングノードとも称され得るビデオブロックにパーティショニングされ得る。あるピクチャのイントラコーディングされた(I)スライス内のビデオブロックが、同じピクチャ内の隣接ブロックにおける参照サンプルに関する空間的予測を用いて符号化される。あるピクチャのインターコーディングされた(PまたはB)スライスに含まれるビデオブロックが、同じピクチャ内の隣接ブロックにおける参照サンプルに関する空間的予測、または他の参照ピクチャにおける参照サンプルに関する時間的予測を用いてよい。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【0093】
空間的予測または時間的予測が、コーディングされるブロックに対する予測ブロックをもたらす。残差データは、コーディングされる元のブロックと予測ブロックとの間の画素差分を表している。インターコーディング済みブロックが、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコーディング済みブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコーディング済みブロックが、イントラコーディングモードおよび残差データに従って符号化される。更なる圧縮のために、残差データは、画素ドメインから変換ドメインに変換され得、残差変換係数がもたらされ、これはその後に量子化されてよい。量子化された変換係数は、最初は2次元配列に配置されており、変換係数の1次元ベクトルを作り出すためにスキャンされてよく、更なる圧縮を実現するためにエントロピーコーディングが適用されてよい。
【0094】
イメージおよびビデオ圧縮は急成長を遂げており、様々なコーディング規格がもたらされている。そのようなビデオコーディング規格には、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、高度ビデオコーディング(AVC)(ITU‐T H.264またはISO/IEC MPEG-4 Part 10としても知られている)、および高効率ビデオコーディング(HEVC)(ITU‐T H.265またはMPEG-H Part 2としても知られている)が含まれる。AVCには、スケーラブルビデオコーディング(SVC)、多視点ビデオコーディング(MVC)および多視点ビデオコーディング+深度(MVC+D)、並びに3D AVC(3D-AVC)などの拡張が含まれる。HEVCには、スケーラブルHEVC(SHVC)、多視点HEVC(MV-HEVC)、および3D HEVC(3D-HEVC)などの拡張が含まれる。
【0095】
多目的ビデオコーディング(VVC)という名前の新たなビデオコーディング規格もあり、これは、ITU-TおよびISO/IECのジョイントビデオエキスパートチーム(JVET)によって開発中である。VVC規格は複数のワーキングドラフトを有するが、ここでは、特に1つのVVCのワーキングドラフト(WD)、すなわち、2019年3月27日の第13回JVET会合におけるB. Bross, J. ChenおよびS. Liuの「多目的ビデオコーディング(ドラフト5)」、JVET-N1001-v3(VVCドラフト5)が参照される。
【0096】
階層化ビデオコーディングはまた、スケーラブルビデオコーディングまたはスケーラビリティを有するビデオコーディングと称される。ビデオコーディングにおけるスケーラビリティは通常、マルチレイヤコーディング技法を使用することによってサポートされる。マルチレイヤビットストリームは、ベースレイヤ(BL)および1または複数の拡張レイヤ(EL)を含む。スケーラビリティの例は、空間的スケーラビリティ、品質/信号雑音比(SNR)スケーラビリティ、多視点スケーラビリティなどを含む。マルチレイヤコーディング技法を用いる場合、ピクチャまたはその一部を、(1)参照ピクチャを用いることなく(すなわち、イントラ予測を用いて)、(2)同じレイヤにある参照ピクチャを参照する(すなわち、インター予測を用いる)ことにより、または(3)他のレイヤにある参照ピクチャを参照する(すなわち、インターレイヤ予測を用いる)ことによりコーディングしてよい。現ピクチャのインターレイヤ予測に用いられる参照ピクチャは、インターレイヤ参照ピクチャ(ILRP)と呼ばれる。
【0097】
図5は、例えば、ブロック圧縮段階105、ブロック復号段階113、動き推定コンポーネント221、動き補償コンポーネント219、動き補償コンポーネント321および/または動き補償コンポーネント421において動きベクトル(MV)を決定するために実行されるレイヤベース予測500の例を示す概略図である。レイヤベース予測500は、単方向インター予測および/または双方向インター予測と互換性があるが、異なるレイヤのピクチャ間でも実行される。
【0098】
レイヤベース予測500が、異なるレイヤにおけるピクチャ511、513と、ピクチャ515、517との間に適用される。示される例において、ピクチャ511および513は、レイヤN+1 532の一部であり、ピクチャ515、516、517および518は、レイヤN531の一部である。レイヤN531および/またはレイヤN+1 532などのレイヤは、同様のサイズ、品質、解像度、信号雑音比、能力などの特性の同様の値にすべて関連付けられたピクチャのグループである。示される例において、レイヤN+1 532は、レイヤN531より大きいイメージサイズに関連付けられる。したがって、本例において、レイヤN+1 532におけるピクチャ511および513は、レイヤN531におけるピクチャ515、516、517および518より大きいピクチャサイズを有する(例えば、高さおよび幅がより大きく、したがって、サンプルがより多い)。しかしながら、そのようなピクチャは、他の特性によってレイヤN+1 532とレイヤN531との間で分けることができる。レイヤN+1 532およびレイヤN531という2つのレイヤだけが示されるが、ピクチャのセットは、関連付けられた特性に基づいて、任意の数のレイヤに分けることができる。レイヤN+1 532およびレイヤN531はまた、レイヤ識別子(ID)によって示され得る。レイヤIDは、ピクチャに関連付けられて、ピクチャが示されたレイヤの一部であることを示すデータの項目である。したがって、各ピクチャ511、513、および515-518は、対応するレイヤIDに関連付けられ、レイヤN+1 532またはレイヤN531のどちらが対応するピクチャを含むかを示し得る。
【0099】
異なるレイヤ531-532におけるピクチャ511、513、および515-518は、別の方式で表示されるよう構成される。したがって、異なるレイヤ531-532におけるピクチャ511、513、および515-518は、同一の時間識別子(ID)を共有でき、同一のAUに含まれることができる。本明細書で用いる場合、AUとは、DPBから出力するために、同じ表示時間と関連付けられた1または複数のコーディング済みピクチャのセットである。例えば、より小さいピクチャが望しい場合、デコーダは、現在の表示時間でピクチャ515を復号および表示し得、または、より大きいピクチャが望しい場合、デコーダは、現在の表示時間でピクチャ511を復号および表示し得る。したがって、上位レイヤN+1 532におけるピクチャ511および513は、下位レイヤN531における対応するピクチャ515および517と(ピクチャサイズに差があるにもかかわらず)実質的に同一のイメージデータを含む。具体的には、ピクチャ511は、ピクチャ515と実質的に同一のイメージデータを含み、ピクチャ513は、ピクチャ517と実質的に同一のイメージデータを含む、といったことになる。
【0100】
ピクチャ511。513および515-518は、同一のレイヤN531またはN+1 532における他のピクチャ511、513-518を参照してコーディングされ得る。同一のレイヤにおける別のピクチャを参照してピクチャをコーディングすることは、インター予測523をもたらす。これは、単方向インター予測および/または双方向インター予測と互換性がある。インター予測523は、実線矢印で描画される。例えば、ピクチャ516は、レイヤN+1 532におけるピクチャ515および/または517の1または2を参照として使用してインター予測523を利用することによってコーディングされ得る。ここで、1つのピクチャが単方向インター予測のために参照され、および/または、2つのピクチャが双方向インター予測のために参照される。ピクチャが、インター予測523を実行するときに同一のレイヤにある別のピクチャの参照として用いられるとき、そのピクチャは参照ピクチャと呼ばれることがある。例えば、ピクチャ511は、インター予測523に従ってピクチャ513をコーディングするために使用される参照ピクチャであり得る。インター予測523はまた、マルチレイヤコンテキストにおいてイントラレイヤ予測と称され得る。したがって、インター予測523は、現ピクチャとは異なる、参照ピクチャにおける示されたサンプルを参照することによって、現ピクチャのサンプルをコーディングする機構である。ここで、参照ピクチャおよび現ピクチャは同一のレイヤにある。
【0101】
ピクチャ511、513、および515-518はまた、異なるレイヤにおける他のピクチャ511、513、および515-518を参照することによってコーディングされ得る。このプロセスは、インターレイヤ予測521として知られ、破線矢印によって描画される。インターレイヤ予測521は、参照ピクチャ内の示されたサンプルを参照することにより現ピクチャのサンプルをコーディングする機構であり、ここで、現ピクチャおよび参照ピクチャは異なるレイヤにあり、したがって異なるレイヤIDを有する。例えば、下位レイヤN531におけるピクチャは、上位レイヤN+1 532における対応するピクチャをコーディングするために参照ピクチャとして使用され得る。具体的な例として、ピクチャ511は、インターレイヤ予測521に従ってピクチャ515を参照してコーディングされ得る。そのような場合において、ピクチャ515はインターレイヤ参照ピクチャとして使用される。インターレイヤ参照ピクチャは、インターレイヤ予測521に使用される参照ピクチャである。ほとんどの場合、インターレイヤ予測521には制約があり、ピクチャ511などの現ピクチャが、同一のAUに含まれ、かつ、ピクチャ515などの下位レイヤにあるインターレイヤ参照ピクチャのみを使用できるようになっている。複数の(例えば2より多い)レイヤが利用可能であるとき、インターレイヤ予測521は、現ピクチャより下位レベルにある複数のインターレイヤ参照ピクチャに基づいて現ピクチャを符号化/復号できる。
【0102】
ビデオエンコーダは、レイヤベース予測500を利用して、インター予測523およびインターレイヤ予測521の多くの異なる組み合わせおよび/または順序変更を介してピクチャ511、513、515-518を符号化できる。例えば、ピクチャ515は、イントラ予測に従ってコーディングされ得る。ピクチャ516-518はその後、ピクチャ515を参照ピクチャとして使用することによってインター予測523に従ってコーディングされ得る。更に、ピクチャ511は、ピクチャ515をインターレイヤ参照ピクチャとして使用することによってインターレイヤ予測521に従ってコーディングされ得る。ピクチャ513はその後、ピクチャ511を参照ピクチャとして使用することによってインター予測523に従ってコーディングされ得る。したがって、参照ピクチャは、異なるコーディング機構について、シングルレイヤ参照ピクチャおよびインターレイヤ参照ピクチャの両方として機能し得る。下位レイヤN531ピクチャに基づいて上位レイヤN+1 532ピクチャをコーディングすることによって、上位レイヤN+1 532は、インター予測523およびインターレイヤ予測521よりはるかに低いコーディング効率を有するイントラ予測を利用することを回避し得る。したがって、イントラ予測の低いコーディング効率は、最小/最低の品質のピクチャに限定され、したがって、最小量のビデオデータのコーディングに限定され得る。参照ピクチャおよび/またはインターレイヤ参照ピクチャとして使用されるピクチャは、参照ピクチャリスト構造に含まれる参照ピクチャリストのエントリにおいて示され得る。
【0103】
図5における各AU506は、1または複数のピクチャを含み得る。例えば、1つのAU506はピクチャ511および515を含み得る。別のAU506は、ピクチャ516のみを含み得る。実際、各AU506は、復号済みピクチャバッファ(DPB)から出力するための(例えばユーザに表示するための)同一の表示時間(例えば同一の時間ID)に関連付けられた1または複数のコーディング済みピクチャのセットである。各アクセスユニットデリミタ(AUD)508は、AU(例えばAU506)の開始またはAU間の境界を示すために使用されるインジケータまたはデータ構造である。
【0104】
実施形態において、すべてのレイヤにおいてピクチャを含むAU506は、完全AUと称される。完全AUの例は、ピクチャ511および515を含むAU506、または、ピクチャ513および517を含むAU506である。実施形態において、すべてのレイヤにおいてピクチャを含まないAU506は不完全AUと称される。不完全AUの例は、ピクチャ516を含むAU506、または、ピクチャ518を含むAU506である。CLVS540において完全AUおよび不完全AUの両方を使用することにより、異なるレイヤが異なるビットレートを有することが可能となる。例として、レイヤ532の2つのピクチャ511、513と対照的に、レイヤ531は、4つのピクチャ515-518を有する。したがって、レイヤ531は、レイヤ532より高いビットレートを有する。実際の適用において、異なる数のレイヤがCLVS540に含まれ得、異なるレイヤは、異なるビットレートをサポートするために、異なる数のピクチャを有し得る。
【0105】
実施形態において、コーディング済みレイヤビデオシーケンス(CLVS)540の開始または始まりにおけるAU506は、コーディング済みビデオシーケンス開始(CVSS)AUと称される。すなわち、CVS540における最初または第1のAU506はCVSS AUである。実施形態において、CVSS AUとして指定されたAU506の各レイヤ531、532におけるピクチャ511、515は、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである。すなわち、CVSS AUは、1つのレイヤ(例えばレイヤN531)におけるCLVSSピクチャ(例えばピクチャ515)、および、別のレイヤ(例えばレイヤN+1 532)における別のCLVSSピクチャ(例えばピクチャ511)を含む。CLVSSピクチャは例えば、イントラランダムアクセスポイント(IRAP)ピクチャ、漸次復号リフレッシュピクチャ、クリーンランダムアクセス(CRA)ピクチャ、即時デコーダリフレッシュ(IDR)ピクチャ、ブロークンリンクアクセス(BLA)ピクチャ、または別のタイプのランダムアクセスポイントピクチャである。
【0106】
実施形態において、AU506の一部(CVSS AUを除く)は、1つのレイヤ(例えばレイヤN531)においてIRAPピクチャ(例えばピクチャ517)を、別のレイヤ(例えばレイヤN+1 532)において非IRAPピクチャ(例えばピクチャ513)を含み得る。すなわち、同一のAUは、異なるレイヤにおいてIRAPおよび非IRAPピクチャの両方を含む。図5におけるAU506の1つは、1つのIRAPピクチャおよび1つの非IRAPピクチャを含むように示されているが、AUが2より多くのレイヤを含むとき、実際の適用では、異なる数のIRAPおよび非IRAPピクチャがAUに含まれ得る。IRAPピクチャは、以下で更に詳細に説明される。
【0107】
以前のH.26xビデオコーディングファミリでは、シングルレイヤコーディングのプロファイルとは別個のプロファイルにおけるスケーラビリティに対してサポートを提供している。スケーラブルビデオコーディング(SVC)は、空間的、時間的、および品質的スケーラビリティに対するサポートを提供するAVC/H.264のスケーラブル拡張である。SVCについては、フラグがELピクチャにおける各マクロブロック(MB)においてシグナリングされ、下位レイヤからの収集されたブロックを使用してEL MBが予測されるかどうかを示す。収集されたブロックからの予測は、テクスチャ、動きベクトル、および/またはコーディングモードを含み得る。SVCの実装は、それらの設計において、未修正のH.264/AVC実装を直接再使用できない。SVC ELマクロブロックシンタックスおよび復号プロセスは、H.264/AVCシンタックスおよび復号プロセスと異なる。
【0108】
スケーラブルHEVC(SHVC)は、空間及び品質的スケーラビリティに対してサポートを提供するHEVC/H.265規格の拡張であり、多視点HEVC(MV-HEVC)は、多視点スケーラビリティに対してサポートを提供するHEVC/H.265の拡張であり、3D HEVC(3D-HEVC)は、MV-HEVCより先進的で効率的な3次元(3D)ビデオコーディングに対してサポートを提供するHEVC/H.264の拡張である。時間的スケーラビリティは、シングルレイヤHEVCコーデックの不可欠な部分として含まれることに留意されたい。HEVCのマルチレイヤ拡張の設計には、インターレイヤ予測に用いられる復号されたピクチャが同じアクセスユニット(AU)からのみもたらされて長期参照ピクチャ(LTRP)として扱われ、また現レイヤにある他の時間参照ピクチャと共に参照ピクチャリスト内の参照インデックスを割り当てられるという考えが利用される。インターレイヤ予測(ILP)は、参照インデックスの値を設定して、参照ピクチャリスト内のインターレイヤ参照ピクチャを参照することにより、予測ユニット(PU)レベルで実現される。
【0109】
特に、参照ピクチャリサンプリング機能および空間的スケーラビリティ機能は両方とも、参照ピクチャまたはその一部のリサンプリングを必要とする。参照ピクチャリサンプリング(RPR)は、ピクチャレベルまたはコーディングブロックレベルのいずれかで実現され得る。しかしながら、RPRがコーディング機能と呼ばれる場合、これはシングルレイヤコーディングの機能である。そうであっても、コーデック設計の観点から、シングルレイヤコーディングのRPR機能およびマルチレイヤコーディングの空間的スケーラビリティ機能の両方に同じリサンプリングフィルタを用いることは可能である、またはむしろ好ましい。
【0110】
最新のVVCドラフトは階層化ビデオコーディングをサポートする。VVCビットストリームは複数のレイヤを含むことができる。レイヤは互いから完全に独立でき、すなわち、各レイヤは、インターレイヤ予測(ILP)を使用することなくコーディングされる。この場合、レイヤは、サイマルキャストレイヤとも称される。レイヤの一部はILPを使用してコーディングされることも可能である。VPSにおけるフラグは、レイヤがサイマルキャストレイヤであるかどうか、または、一部のレイヤがILPを使用するかどうかを示すために使用される。いくつかのレイヤがILPを使用するとき、レイヤ間のレイヤ依存性関係もVPSにおいてシグナリングされる。
【0111】
SHVCおよびMV-HEVCと異なり、最新のVVCドラフトはOLSを指定しない。OLSは、1または複数のレイヤが出力レイヤとして指定されるレイヤのセットである。出力レイヤは、出力される出力レイヤセットのレイヤである。
【0112】
最新のVVCドラフトでは、レイヤがサイマルキャストレイヤであるとき、1つのレイヤのみが復号および出力のために選択され得ることが指定される。最新のVVCドラフトでは、いくつかのレイヤがILPを使用するとき、ビットストリームにおけるレイヤのすべてが復号されるように指定されるが、特定のレイヤのみが出力レイヤとなるように指定される。出力レイヤは、1)最高レイヤのみ、2)すべてのレイヤ、または、3)最高のレイヤ+示された下位レイヤのセットであるように示され得る。
【0113】
図6は、復号順序608および提示順序610(すなわち出力順序)における、リーディングピクチャ604と相対的なイントラランダムアクセスポイント(IRAP)ピクチャ602と、トレーリングピクチャ606との間の関係の表現600である。実施形態において、IRAPピクチャ602は、クリーンランダムアクセス(CRA)ピクチャ、またはランダムアクセス復号可能(RADL)ピクチャを伴う即時デコーダリフレッシュ(IDR)ピクチャと呼ばれる。HEVCでは、IDRピクチャ、CRAピクチャ、およびブロークンリンクアクセス(BLA)ピクチャが全て、IRAPピクチャ602とみなされる。VVCについては、2018年10月の第12回JVET会合において、IDRピクチャおよびCRAピクチャを両方ともIRAPピクチャとして有することが合意された。実施形態では、ブロークンリンクアクセス(BLA)ピクチャおよび漸次デコーダリフレッシュ(GDR)ピクチャも、IRAPピクチャとみなされてよい。コーディング済みビデオシーケンスのための復号プロセスは常にIRAPから開始する。IRAPピクチャはランダムアクセスポイント(RAP)を提供する。
【0114】
図6に示されるように、リーディングピクチャ604(例えばピクチャ2および3)は、復号順序608においてIRAPピクチャ602に続くが、提示順序610においてIRAPピクチャ602に先行する。トレーリングピクチャ606は、復号順序608および提示順序610の両方においてIRAPピクチャ602に続く。2つのリーディングピクチャ604および1つのトレーリングピクチャ606が図6において描画されるが、当業者であれば、実際の適用において、より多くの、または、より少ないリーディングピクチャ604および/またはトレーリングピクチャ606が復号順序608および提示順序610において存在し得ることを理解する。
【0115】
図6のリーディングピクチャ604は、2つのタイプ、すなわち、ランダムアクセススキップリーディング(RASL)およびRADLに分割されている。復号がIRAPピクチャ602(例えば、ピクチャ1)で始まる場合、RADLピクチャ(例えば、ピクチャ3)を適切に復号することができる。しかしながら、RASLピクチャ(例えば、ピクチャ2)を適切に復号することはできない。したがって、RASLピクチャは破棄される。RADLピクチャとRASLピクチャとの間の違いを考慮して、IRAPピクチャ602と関連付けられるリーディングピクチャ604のタイプは、効率的且つ適切なコーディングのために、RADLまたはRASLのいずれかとして識別されなければならない。HEVCでは、RASLピクチャおよびRADLピクチャが存在する場合、同じIRAPピクチャ602と関連付けられたRASLピクチャおよびRADLピクチャについては、RASLピクチャが提示順序610においてRADLピクチャの先に来なければならないということが制約されている。
【0116】
IRAPピクチャ602は、以下に挙げる2つの重要な機能/利点を提供する。第一に、IRAPピクチャ602の存在は、当該ピクチャから復号プロセスが開始できることを示している。この機能により、IRAPピクチャ602が当該位置に存在する限り、復号プロセスはビットストリームの当該位置で開始され、必ずしもビットストリームの開始の部分ではないというランダムアクセス機能が可能になる。第二に、IRAPピクチャ602の存在で、復号プロセスがリフレッシュされ、IRAPピクチャ602で始まるコーディング済みピクチャ(RASLピクチャを除く)が前のピクチャを全く参照することなくコーディングされるようになる。したがって、IRAPピクチャ602がビットストリームに存在することで、結果として、IRAPピクチャ602の前にあるコーディング済みピクチャを復号する際に発生し得るあらゆるエラーが、IRAPピクチャ602および復号順序608でIRAPピクチャ602の後に来るピクチャに伝搬するのを阻止することになる。
【0117】
IRAPピクチャ602は重要な機能を提供するが、これは圧縮効率に対する代償を伴う。IRAPピクチャ602の存在は、ビットレートの急増を引き起こす。圧縮効率に対するこの代償は、2つの理由によるものである。第一に、IRAPピクチャ602がイントラ予測ピクチャのため、このピクチャ自体は、インター予測ピクチャである他のピクチャ(例えば、リーディングピクチャ604、トレーリングピクチャ606)と比較すると、表現するのに比較的多くのビットを必要とすることになる。第二に、IRAPピクチャ602の存在が時間的予測を中断するので(これは、デコーダが復号プロセスをリフレッシュし、このために復号プロセスのアクションのうちの1つが、復号ピクチャバッファ(DPB)にある前の参照ピクチャを除去するからである)、IRAPピクチャ602は、復号順序608でIRAPピクチャ602の後に来るピクチャのコーディング効率を低下させる(すなわち、表現するのにより多くのビットを必要とする)。こうしたピクチャには、インター予測コーディング用の参照ピクチャが少ないためである。
【0118】
IRAPピクチャ602とみなされるピクチャタイプの中で、HEVCのIDRピクチャは、他のピクチャタイプと比較すると、シグナリングおよび導出が異なる。その違いのいくつかは、以下の通りである。
【0119】
IDRピクチャのピクチャ順序カウント(POC)値のシグナリングおよび導出については、POCの最上位ビット(MSB)部分が前の重要なピクチャから導出されるのではなく、単に0と等しくなるように設定される。
【0120】
参照ピクチャ管理に必要なシグナリング情報については、IDRピクチャのスライスヘッダは、参照ピクチャ管理を支援するようにシグナリングされる必要がある情報を含まない。他のピクチャタイプ(すなわちCRA、トレーリング、時間的サブレイヤアクセス(TSA)など)については、下で説明される参照ピクチャセット(RPS)などの情報または他の形態の同様の情報(例えば、参照ピクチャリスト)が参照ピクチャマーキングプロセス(すなわち、参照に使用される、または参照に使用されない、復号済みピクチャバッファ(DPB)における参照ピクチャのステータスを決定するプロセス)に必要である。しかしながら、IDRピクチャについては、そのような情報をシグナリングする必要はない。IDRが存在することで、DPBにおける全ての参照ピクチャを復号プロセスが参照に使用されないとして単にマークしなければならないことを示しているからである。
【0121】
HEVCおよびVVCにおいて、IRAPピクチャおよびリーディングピクチャには、異なるNALユニットタイプ(NUT)が与えられ、その結果、それらはシステムレベルアプリケーションによって容易に識別され得る。例えば、ビデオスプライサは、特に、IRAPピクチャを非IRAPピクチャから識別し、リーディングピクチャをトレーリングピクチャから識別する(RASLピクチャおよびRADLピクチャを決定することを含む)ために、コーディング済みビットストリームにおけるシンタックス要素の過度な詳細を理解することなく、コーディング済みピクチャタイプを理解する必要がある。トレーリングピクチャは、IRAPピクチャに関連付けられ、かつ、出力順序においてIRAPピクチャに続くピクチャである。特定のIRAPピクチャに関連付けられたピクチャは、復号順序において特定のIRAPピクチャに続き、復号順序において任意の他のIRAPピクチャに先行する。このために、IRAPおよびリーディングピクチャに自身のNALユニットタイプを与えることは、そのような適用を助け得る。
【0122】
HEVCにおいて、すべてのピクチャには、PicOrderCntValとして示されるPOC値が割り当てられる。POCには3つの主な用途がある。すなわち、ピクチャを一意に識別すること、同一のCVSにおける他のピクチャに対する出力位置を示すこと、および、下位レベルのビデオコーディングレイヤ(VCL)復号プロセス内で動きベクトルスケーリングを実行することである。同一のCVSにおけるすべてのピクチャは固有のPOC値を有する。異なるCVSからのピクチャは、同一のPOC値を共有し得るが、ピクチャはなお一意に識別され得る。なぜなら、1つのCVSからのピクチャが別のCVSの任意のピクチャと混ざる可能性が無いからである。POC値のギャップはCVSにおいて許可される。すなわち、出力順序において連続する2つのピクチャ間のPOC値の差は、1より多く異なり得る(実際、連続するピクチャについてのPOC値が変動し得る量は任意に変動できる)。
【0123】
HEVCにおいて、ピクチャのPOC値は、スライスヘッダにおけるコードワードを使用してシグナリングされる。許可されるPOC値の範囲は、-231から231-1なので、スライスヘッダにおけるビットを節約するために、POC値の最下位ビット(POC LSB)のみがシグナリングされる。POC LSBに使用するためのビットの数は、4から16の間であり得、SPSにおいてシグナリングされる。残りのビットは、最上位POC値ビット(POC MSB)である。POC LSBのみがスライスヘッダにおいてシグナリングされるので、現ピクチャのPOC MSBは、prevTid0Picと呼ばれる前のピクチャから導出される。ピクチャが削除されるときでも同一の方式でPOC導出が機能するには、prevTid0Picが、RASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでない時間的レイヤ0の直前のピクチャに設定される。デコーダは、現ピクチャのPOC値をprevTid0PicピクチャのPOC値と比較することによってPOC MSB値を導出する。
【0124】
残念なことに既存のコーディング設計は欠点を有する。例えば、SHVCおよびMV-HEVCにおいて、混在したIRAPおよび非IRAPピクチャが同一のアクセスユニット(例えば図5におけるAU506におけるピクチャ511および515)内に含まれ得るが、設計は非常に複雑である。実際、この設計の一般的な復号プロセスは、最新のHEVC規格の条項F.8.1におけるテキストの複数のページを使用してSHVCおよびMV-HEVCにおいて指定される。テキストは、NoClrasOutputFlag、LayerInitializedFlag、LayerResetFlag、FirstPicInLayerDecodedFlag、NumPredictedLayers、IdPredictedLayer、IdDirectRefLayer、NumDirectRefLayers、NumActiveRefLayerPics、NumActiveRefLayerPics0、NumActiveRefLayerPics1などを含む多くのグローバルフラグ/変数/リストの使用を伴う。アクセスユニット内における混在したIRAPおよび非IRAPピクチャに対するサポートを提供するSHVCおよびMV-HEVCにおける多くの他の箇所も複雑である。これはPOC導出プロセスを含む。
【0125】
各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによってコーディングを簡略化する技法が本明細書において開示される。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0126】
図7は、漸次復号リフレッシュ(GDR)技法700を実装するよう構成されるビデオビットストリーム750を示す。本明細書において使用される場合、ビデオビットストリーム750は、コーディング済みビデオビットストリーム、ビットストリームとも称され得るか、または、その変形で称され得る。図7に示されるように、ビットストリーム750は、シーケンスパラメータセット(SPS)752、ピクチャパラメータセット(PPS)754、スライスヘッダ756、およびイメージデータ758を含む。
【0127】
SPS752には、ピクチャのシーケンス(SOP)に含まれる全ピクチャに共通のデータが含まれている。それに対して、PPS754は、ピクチャ全体に共通のデータを含む。スライスヘッダ756は、現スライスに関する情報、例えば、スライスタイプ、参照ピクチャのうちのどれが用いられるか、などといった情報を含む。SPS752およびPPS754は、パラメータセットと総称され得る。SPS752、PPS754、およびスライスヘッダ756は、ネットワーク抽象化レイヤ(NAL)ユニットのタイプである。NALユニットは、後に続くデータのタイプ(例えば、コーディングビデオデータ)のインジケーションを含むシンタックス構造である。NALユニットはビデオコーディングレイヤ(VCL)および非VCL NALユニットに分類される。VCL NALユニットは、ビデオピクチャにおけるサンプルの値を表すデータを含み、非VCL NALユニットは、パラメータセットなどの任意の関連付けられた追加情報(複数のVCL NALユニットに適用し得る重要データ)および補足拡張情報(復号されたビデオ信号の使用性を促進し得るが、ビデオピクチャにおけるサンプルの値を復号するのに必要でないタイミング情報および他の補足データ)を含む。当業者であれば、ビットストリーム750は、実際の適用において他のパラメータおよび情報を含み得ることを理解する。
【0128】
図7のイメージデータ758は、符号化または復号されているイメージまたはビデオに関連付けられたデータを含む。イメージデータ758は単に、ビットストリーム750に保持されるペイロードまたはデータと称され得る。実施形態において、イメージデータ758は、GDRピクチャ702、1または複数のトレーリングピクチャ704、および復旧ポイントピクチャ706を含むCVS708(またはCLVS)を含む。実施形態において、GDRピクチャ702は、CVS開始(CVSS)ピクチャと称される。CVS708は、ビデオビットストリーム750におけるすべてのコーディング済みレイヤビデオシーケンス(CLVS)についてのコーディング済みビデオシーケンスである。特に、ビデオビットストリーム750がシングルレイヤを含むとき、CVSおよびCLVSは同一である。CVSおよびCLVSは、ビデオビットストリーム750が複数のレイヤを含むときだけ異なる。実施形態において、トレーリングピクチャ704は、GDRピクチャの形態とみなされ得る。なぜなら、それらはGDR期間において復旧ポイントピクチャ706に先行するからである。
【0129】
実施形態において、GDRピクチャ702、トレーリングピクチャ704、および復旧ポイントピクチャ706は、CVS708におけるGDR期間を定義し得る。実施形態において、復号順序は、GDRピクチャ702で開始し、トレーリングピクチャ704に継続し、その後、復旧ピクチャ706に進む。
【0130】
CVS708は、GDRピクチャ702で開始し、次のGDRピクチャまで(ただしこれを含まない)の、または、ビットストリーム750の終了までのすべてのピクチャ(またはその一部)を含む一連のピクチャ(またはその一部)である。GDR期間は、GDRピクチャ702で開始する、復旧ポイントピクチャ706まで(これを含む)のすべてのピクチャを含む一連のピクチャである。CVS708のための復号プロセスは常にGDRピクチャ702で開始する。
【0131】
図7に示されるように、GDR技法700または原理は、GDRピクチャ702で開始し復旧ポイントピクチャ706で終了する一連のピクチャに対して機能する。GDRピクチャ702は、イントラ予測を使用してすべてコーディングされたブロック(すなわち、イントラ予測ブロック)を含むリフレッシュ/クリーン領域710、および、インター予測を使用してすべてコーディングされたブロック(すなわちインター予測ブロック)を含む未リフレッシュ/ダーティ領域712を含む。
【0132】
GDRピクチャ702に直接隣接するトレーリングピクチャ704は、イントラ予測を使用してコーディングされた第1部分710A、および、インター予測を使用してコーディングされた第2部分710Bを有するリフレッシュ/クリーン領域710を含む。第2部分710Bは、例えば、CVS708のGDR期間内の先行するピクチャのリフレッシュ/クリーン領域710を参照することによってコーディングされる。示されるように、トレーリングピクチャ704のリフレッシュ/クリーン領域710は、コーディングプロセスが一貫した方向(例えば、左から右)に動く、または進行するにつれて拡張し、これに対応して、未リフレッシュ/ダーティ領域712が縮小する。最終的に、リフレッシュ/クリーン領域710のみを含む復旧ポイントピクチャ706は、コーディングプロセスから取得される。特に、下で更に説明されるように、インター予測ブロックとしてコーディングされるリフレッシュ/クリーン領域710の第2部分710Bは、参照ピクチャにおけるリフレッシュ/クリーン領域710のみを指し得る。
【0133】
図7に示されるように、CVS708におけるGDRピクチャ702、トレーリングピクチャ704、および復旧ポイントピクチャ706のスライスは各々、それら自体のVCL NALユニット730内に含まれる。
【0134】
実施形態において、CVS708におけるGDRピクチャ702を含むVCL NALユニット730は、GDR NALユニットタイプ(GDR_NUT)を有する。すなわち、実施形態において、CVS708におけるGDRピクチャ702を含むVCL NALユニット730は、トレーリングピクチャ704および復旧ポイントピクチャ706に対する、それ自体の固有のNALユニットタイプを有する。実施形態において、GDR_NUTは、ビットストリーム750がGDRピクチャ702から開始することを許可し、ビットストリーム750はイントラランダムアクセスポイント(IRAP)ピクチャから開始する必要はない。GDRピクチャ702のVCL NALユニット730をGDR_NUTとして指定することにより、例えば、CVS708における最初のVCL NALユニット730がGDRピクチャ702を含むことをデコーダに示し得る。実施形態において、GDRピクチャ702はCVS708における最初のピクチャである。実施形態において、GDRピクチャ702は、GDR期間における最初のピクチャである。
【0135】
図8は、エンコーダ制約を使用してGDRをサポートするときの望ましくない動き検索800を示す概略図である。示されるように、動き検索800は、現ピクチャ802および参照ピクチャ804を描画する。現ピクチャ802および参照ピクチャ804は各々、イントラ予測でコーディングされたリフレッシュ領域806、インター予測でコーディングされたリフレッシュ領域808、および、未リフレッシュ領域810を含む。リフレッシュ領域806、リフレッシュ領域808、および未リフレッシュ領域810は、図7におけるリフレッシュ/クリーン領域710の第1部分710A、リフレッシュ/クリーン領域710の第2部分710B、および、未リフレッシュ/ダーティ領域712と同様である。
【0136】
動き検索800プロセス中に、エンコーダは、参照ブロック814のサンプルの一部がリフレッシュ領域806の外に位置する結果をもたらす任意の動きベクトル812を選択することについて制約または防止される。これは、現ピクチャ802における現ブロック816を予測するときに参照ブロック814が最良のレート歪みコスト基準を提供するときに生じる。したがって、図8は、GDRをサポートするためにエンコーダ制約を使用するときの動き検索800における非最適性の理由を示す。
【0137】
図9はビデオビットストリーム900の実施形態を示す。本明細書において使用される場合、ビデオビットストリーム900はまた、コーディング済みビデオビットストリーム、ビットストリームと、またはその変形で称され得る。図9に示されるように、ビットストリーム900は少なくとも1つのピクチャユニット(PU)901を含む。PU901は、レイヤアクセスユニットとも呼ばれ得る。PU901のうち3つが図9に示されるが、実際の適用において、異なる数のPU901がビットストリーム900に存在し得る。各PU901は、指定された分類規則に従って互いに関連付けられたNALユニットのセットであり、復号順序において連続し、厳密に1つのコーディング済みピクチャ(例えばピクチャ914)を含む。
【0138】
実施形態において、各PU901は、復号能力情報(DCI)902、ビデオパラメータセット(VPS)904、シーケンスパラメータセット(SPS)906、ピクチャパラメータセット(PPS)908、ピクチャヘッダ(PH)912、およびピクチャ914の1または複数を含む。DCI902、VPS904、SPS906、およびPPS908の各々はパラメータセットと総称され得る。実施形態において、図9に示されない他のパラメータセットも、スライスヘッダにおいて見られる0またはより多くのシンタックス要素によって決定される0またはより多くのスライスに適用するシンタックス要素を含むシンタックス構造である、例えば、適応パラメータセット(APS)などのビットストリーム900に含まれ得る。
【0139】
復号パラメータセット(DPS)またはデコーダパラメータセットとも称され得るDCI902は、ビットストリーム全体に適用するシンタックス要素を含むシンタックス構造である。DCI902は、セッションの存続期間になり得るビデオビットストリーム(例えばビットストリーム900)の存続期間にわたって一定のままであるパラメータを含む。DCI902は、セッション中にビデオシーケンスのスプライシングが発生した場合でも決して超過しないことが保証される最大複雑性相互運用性ポイントを決定するためにプロファイル、レベル、およびサブプロファイル情報を含み得る。それは更に任意選択で制約フラグを含む。これは、ビデオビットストリームが、それらのフラグの値によって示されるような特定の特徴の使用の制約を受けることを示す。これにより、ビットストリームは、特定のツールを使用しないようにラベリングされ得、中でも特に、デコーダ実装におけるリソース割り当てを可能にする。すべてのパラメータセットと同様に、最初に参照されるとき、DCI902が存在し、ビデオシーケンスにおける本当に第1のピクチャによって参照される。このことは、ビットストリームにおける第1NALユニットの中でそれが送信される必要があることを示唆する。複数のDCI902がビットストリームにあり得るが、その中のシンタックス要素の値は、参照されるときに、不整合となることができない。
【0140】
VPS904は、拡張レイヤの参照ピクチャセット構成についての復号依存性または情報を含む。VPS904は、何のタイプのオペレーションポイントが提供されるか、オペレーションポイントのプロファイル、ティア、およびレベル、ならびに、セッションネゴシエーションおよびコンテンツ選択のための基板として使用され得るビットストリームのいくつかの他の高レベル特性などを含む、スケーラブルシーケンスの全体的な視点または表示を提供する。
【0141】
SPS906は、ピクチャ(SOP)のシーケンスにおけるすべてのピクチャに共通するデータを含む。SPS906は、各ピクチャヘッダにおいて見られるシンタックス要素によって参照されるPPSにおいて見られるシンタックス要素のコンテンツによって決定される、0またはより多くのCLVS全体に適用するシンタックス要素を含むシンタックス構造である。対照的に、PPS908は、ピクチャ全体に共通するデータを含む。PPS908は、各ピクチャヘッダ(例えばPH912)において見られるシンタックス要素によって決定される0またはより多くのコーディングされたピクチャ全体に適用するシンタックス要素を含むシンタックス構造である。
【0142】
実施形態において、SPS906は、sps_poc_msb_cycle_flagとして指定されるPOC MSBフラグである第1フラグ930を含む。第1フラグ930が第1の値(例えば1)を有するとき、第1フラグ930は、ヘッダ(例えばピクチャヘッダ912)が、ph_poc_msb_cycle_present_flagとして指定される別のPOC MSBフラグである第2フラグ940を含むことを指定する。第1フラグ930が第2の値(例えば0)を有するとき、第1フラグ930は、ヘッダ(例えばピクチャヘッダ912)が第2フラグ940を含まないことを指定する。本明細書において使用される場合、第2フラグ940は、ph_poc_msb_cycle_present_flagシンタックス要素と称され得る。
【0143】
SPS908はまた、SPS906を参照するヘッダにPOC MSB値が含まれるときにPOC MSB値の長さ950のインジケータを含む。実施形態において、長さ950のインジケータは、sps_poc_msb_cycle_len_minus1として指定される。実施形態において、sps_poc_msb_cycle_len_minus1+1は、SPSを参照するヘッダにPOC MSB値が存在するときにPOC MSB値の長さをビットで指定する。実施形態において、インジケータの値は、ゼロ(0)から32-sps_log2_max_pic_order_cnt_lsb_minus4-5の範囲(両端を含む)である。sps_log2_max_pic_order_cnt_lsb_minus4は、ピクチャ順序カウントについての復号プロセスにおいて使用される変数MaxPicOrderCntLsb(例えば、最大ピクチャ順序カウントLSB)の値を、MaxPicOrderCntLsb=2(sps_log2_max_pic_order_cnt_lsb_minus4+4)のように指定する。ここで、sps_log2_max_pic_order_cnt_lsb_minus4の値は、0から12の範囲(両端を含む)とする。
【0144】
第2フラグ940は、POC MSB値960がヘッダに存在するかどうかを指定する。第2フラグ940が第1の値(例えば1)を有するとき、第2フラグ940は、POC MSB値960がヘッダ(例えばピクチャヘッダ912)に存在すると指定する。第2フラグ940が第2の値(例えば0)を有するとき、第2フラグ940は、POC MSB値960がヘッダに存在しないと指定する。実施形態において、POC MSB値960は、POC MSB値シンタックス要素、または、複数のPOC MSB値シンタックス要素と称され得る。
【0145】
POC MSB値960は、現ピクチャ(例えばピクチャ914)のPOC MSBサイクルの値を指定する。実施形態において、POC MSB値960は、ph_poc_msb_cycle_valとして指定される。したがって、POC MSB値960は、前のピクチャに基づいて導出される代わりに、ビットストリーム900において明示的にシグナリングされる。実施形態において、ビットストリームにおいてシグナリングされるPOC MSB値は、POC値を取得するために使用される。実施形態において、POC値は、POC MSB値およびPOC LSBを連結することによって決定される。これもビットストリーム900においてシグナリングされ得る。
【0146】
各コーディング済みピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数に関連付けられる。PicOrderCntValは、PicOrderCntVal=PicOrderCntMsb+ph_pic_order_cnt_lsbとして導出され、PicOrderCntMsbはPOC MSBであり、ph_pic_order_cnt_lsbはPOC LSBである。
【0147】
下でより十分に説明されるように、上記フラグの使用により、レイヤ間の非同期IRAPピクチャが可能となる。本明細書において説明されるPOC処理は、AU内のすべてのピクチャのPOC値が同一であることを確実にする。これを達成するべく、POC MSB値は、IRAPピクチャ、すなわち、IDR、CRA、およびGDRピクチャについて(導出される代わりに)シグナリングされる。これにより、SHVCおよびMV-HEVCにおける混在したPOCリセットおよびPOC MSBシグナリング機構と比較して、POC導出について著しく単純な設計が可能となる。
【0148】
DCI902、VPS904、SPS906、およびPPS908は、異なるタイプのネットワーク抽象化レイヤ(NAL)ユニットに含まれる。NALユニットは、後に続くデータのタイプ(例えば、コーディングビデオデータ)のインジケーションを含むシンタックス構造である。NALユニットは、ビデオコーディングレイヤ(VCL)および非VCL NALユニットに分類される。VCL NALユニットは、ビデオピクチャにおけるサンプルの値を表すデータを含み、非VCL NALユニットは、パラメータセットなどの任意の関連付けられた追加情報(複数のVCL NALユニットに適用し得る重要データ)および補足拡張情報(復号されたビデオ信号の使用性を促進し得るが、ビデオピクチャにおけるサンプルの値を復号するのに必要でないタイミング情報および他の補足データ)を含む。
【0149】
実施形態において、DCI902は、DCI NALユニットまたはDPS NALユニットとして指定される非VCL NALユニットに含まれる。すなわち、DCI NALユニットは、DCI NALユニットタイプ(NUT)を有し、DPS NALユニットは、DPS NUTを有する。実施形態において、VPS904は、VPS NALユニットとして指定される非VCL NALユニットに含まれる。したがって、VPS NALユニットはVPS NUTを有する。実施形態において、SPS906は、SPS NALユニットとして指定される非VCL NALユニットである。したがって、SPS NALユニットはSPS NUTを有する。実施形態において、PPS908は、PPS NALユニットとして指定される非VCL NALユニットに含まれる。したがって、PPS NALユニットはPPS NUTを有する。
【0150】
PH912は、コーディング済みピクチャ(例えば、ピクチャ914)のすべてのスライス(例えばスライス918)に適用するシンタックス要素を含むシンタックス構造である。実施形態において、PH912は、PH NALユニットとして指定される新しいタイプの非VCL NALユニットである。したがって、PH NALユニットは、PH NUT(例えば、PH_NUT)を有する。実施形態において、各PU901に含まれる唯一のPH912がある。すなわち、PU901は、単一または単独のPH912を含む。実施形態において、厳密に1つのPH NALユニットが、ビットストリーム900における各ピクチャ914について存在する。
【0151】
実施形態において、PH912に関連付けられたPH NALユニットは、時間IDおよびレイヤIDを有する。時間IDは、ビットストリーム(例えばビットストリーム900)における他のPH NALユニットと比較した、時間におけるPH NALユニットの位置を示す。レイヤIDは、PH NALユニットを含むレイヤ(例えば、レイヤ531またはレイヤ532)を示す。実施形態において、時間IDは、POCと同様であるが、異なる。POCは、各ピクチャを順番に一意に識別する。シングルレイヤビットストリームにおいて、時間IDおよびPOCは同一である。マルチレイヤビットストリーム(例えば図5を参照されたい)において、同一AUにおけるピクチャは、異なるPOCを有するが、同一の時間IDを有する。
【0152】
実施形態において、PH NALユニットは、関連付けられたピクチャ914の第1スライス918を含むVCL NALユニットに先行する。これにより、ピクチャヘッダIDがPH912においてシグナリングされスライスヘッダ920から参照されることを必要とすることなく、PH912と、PH912に関連付けられたピクチャ914のスライス918との間の関連付けを確立する。したがって、2つのPH912の間のすべてのVCL NALユニットが同一のピクチャ914に属すること、および、ピクチャ914が2つのPH912の間の第1PH912に関連付けられることが推論され得る。実施形態において、PH912に続く第1VCL NALユニットは、PH912に関連付けられたピクチャ914の第1スライス918を含む。
【0153】
実施形態において、PH NALユニットは、ピクチャレベルパラメータセット(例えばPPS)、または、PH NALユニットの時間IDおよびレイヤIDよりそれぞれ小さい時間IDおよびレイヤIDの両方を有する、DCI(すなわちDPS)、VPS、SPS、PPSなど、より上位レベルのパラメータセットに続く。したがって、それらのパラメータセットは、ピクチャまたはアクセスユニット内において繰り返されない。この順序により、PH912が即時に解決され得る。すなわち、ピクチャ全体に関連するパラメータを含むパラメータセットが、ビットストリームにおいて、PH NALユニットの前に位置付けられる。ピクチャの一部についてのパラメータを含むものはいずれも、PH NALユニットの後に位置付けられる。
【0154】
一代替形態において、PH NALユニットは、ピクチャレベルのパラメータセットおよびプレフィクス補足拡張情報(SEI)メッセージ、または、DCI(すなわちDPS)、VPS、SPS、PPS、APS、SEIメッセージなどの上位レベルパラメータセットに続く。
【0155】
実施形態において、PH912は、PH912に関連付けられたピクチャ914のピクチャタイプを指定するシンタックス要素(例えばフラグなど)を含み得る。ピクチャタイプは、以下のタイプ、すなわち、即時デコーダリフレッシュ(IDR)ピクチャ、クリーンランダムアクセス(CRA)ピクチャ、GDRピクチャ、非GDRピクチャでありイントラ予測スライス(Iスライス)のみを含む非IRAPピクチャ、非GDRピクチャであり単方向インター予測スライス(Pスライス)およびIスライスのみを含む非IRAPピクチャ、ならびに、非GDRピクチャであり双方向インター予測スライス(Bスライス)、Pスライス、およびIスライスのみを含む非IRAPピクチャを含み得るが、これらに限定されない。したがって、PH912における単一のフラグは、ピクチャ(例えばピクチャ914)におけるすべてのスライス(例えばスライス918)が例えば、GDRピクチャ(例えばGDRピクチャ702)のスライスであるかどうかを示すことができる。これはまた、すべてのスライスヘッダ(例えばスライスヘッダ920)ではなく、PH912において1回、GDRピクチャについての復旧ポイントピクチャ順序カウント(POC)のシグナリングをサポートする。
【0156】
実施形態において、1または複数のシンタックス要素は、PH912に関連付けられたピクチャ914のスライスヘッダ920ではなく、PH912においてシグナリングされる。これらのシンタックス要素は、ピクチャ914によって参照されるPPS ID、ピクチャ914が参照ピクチャかどうかを指定するフラグ、ピクチャ914の色平面、ピクチャ914のPOC最下位ビット(LSB)、ピクチャ914がGDRピクチャ(例えばGDRピクチャ702)である場合の復旧ポイントPOC、ピクチャ914の前のピクチャが出力されるかどうかを指定するフラグ、および、ピクチャ914が出力ピクチャであるかどうかを指定するフラグである。PPS IDは、ピクチャ914についての特定のPPSを識別する識別子である。ピクチャ914の色平面は、ピクチャ914についてのルマおよびクロマ成分(例えば、Y、Cb、Crなど)を含む。POC LSBは、POCを識別するビット(または複数のビット)である。POCは、各ピクチャ(例えばピクチャ914)に関連付けられた変数であり、CLVSにおけるすべてのピクチャの中で関連付けられたピクチャを一意に識別し、関連付けられたピクチャがDPBから出力されるとき、DPBから出力される同一のCLVSにおける他のピクチャの出力順序位置に対する、出力順序における関連付けられたピクチャの位置を示す。復旧ポイントPOCは、復旧ポイント、従って、復旧ポイントピクチャを識別するPOCである。
【0157】
これらのシンタックス要素をスライスヘッダ920からPH912に動かすことにより、各スライスヘッダ920においてシンタックス要素を繰り返す代わりに、ピクチャ914全体について1回、シンタックス要素がシグナリングされることを可能にする。これにより、冗長性が低減し、コーディング効率が増加する。
【0158】
ピクチャ914は、モノクロームフォーマットのルマサンプルの配列、または、4:2:0、4:2:2、および4:4:4カラーフォーマットのルマサンプルの配列およびクロマサンプルの2つの対応する配列である。実施形態において、各PU901に含まれる唯一のピクチャ914がある。したがって、各PU901において、1つのみのPH912、および、当該PH912に対応する1つのみのピクチャ914がある。すなわち、PU901は単一または単独のピクチャ914を含む。
【0159】
ピクチャ914は、フレームまたはフィールドのいずれかであり得る。しかしながら、1つのCVS916において、すべてのピクチャ914がフレームであるか、または、すべてのピクチャ914がフィールドであるかのいずれかである。CVS916は、ビデオビットストリーム900におけるすべてのコーディング済みレイヤビデオシーケンス(CLVS)についてのコーディング済みビデオシーケンスである。特に、CVS916およびCLVSは、ビデオビットストリーム900がシングルレイヤを含むとき、同一である。CVS916およびCLVSは、(例えば図5に示されるように)ビデオビットストリーム900が複数のレイヤを含むときのみ異なる。
【0160】
PU901はCLVSをまとめて含み得る。CLVSは、復号の順序で、コーディング済みレイヤビデオシーケンス開始(CLVSS)PU、および、それに続く、CLVSS PUである任意の後続のPU901まで(ただしそれを含まない)のすべての後続のPU901を含む、CLVSS PUでない0またはより多くのPU901から構成される、nuh_layer_idの同一の値を有するPU901のシーケンスである。CLVSS PUは、コーディング済みピクチャ(例えばピクチャ914)がCLVSSピクチャであるPU901である。CLVSSピクチャは、1に等しいNoOutputBeforeRecoveryFlagを有するIRAPピクチャ、または、1に等しいNoOutputBeforeRecoveryFlagを有するGDRピクチャ(例えばGDRピクチャ702)であるコーディング済みピクチャである。実施形態において、ピクチャのNoOutputBeforeRecoveryFlagは、PPS908またはPU901の別の部分に配置される。
【0161】
各ピクチャ914は1または複数のスライス918を含む。スライス918は、整数の完全タイル、または、ピクチャ(例えばピクチャ914)のタイル内における整数の連続する完全CTU行である。各スライス918は、単一のNALユニット(例えばVCL NALユニット)に排他的に含まれる。タイル(示されない)は、ピクチャ(例えばピクチャ914)における特定のタイル列および特定のタイル行におけるCTUの長方形領域である。CTU(示されない)は、ルマサンプルのCTB、3つのサンプル配列を有するピクチャのクロマサンプルの2つの対応するCTB、または、モノクロームピクチャ、もしくは、サンプルをコーディングするために使用された3つの別個の色平面およびシンタックス構造を使用してコーディングされたピクチャのサンプルのCTBである。CTB(示されない)は、CTBへのコンポーネントの分割がパーティショニングであるような、Nのある値についてのサンプルのN×Nブロックである。ブロック(示されない)は、サンプル(例えば画素)のM×N(M列×N行)配列であるか、または、変換係数のM×N配列ある。
【0162】
実施形態において、各スライス918はスライスヘッダ920を含む。スライスヘッダ920は、スライス918において表されるタイル内のすべてのタイルまたはCTU行に関連するデータ要素を含むコーディング済みスライス918の一部である。すなわち、スライスヘッダ920は、例えば、スライスタイプ、どの参照ピクチャが使用されるかなど、スライス918についての情報を含む。
【0163】
ピクチャ914およびそれらのスライス918は、符号化または復号されるイメージまたはビデオに関連付けられたデータを含む。したがって、ピクチャ914およびそれらのスライス918は単に、ビットストリーム900に保持されるペイロードまたはデータと称され得る。
【0164】
実施形態において、図5における各ピクチャ511、513、515-518は、図9において示されるピクチャ914と同一または同様の方式で、PU(例えばPU901)の一部であるか、またはそれに含まれる。したがって、図5における各AU506は、各レイヤにおいてPUを含む。しかしながら、説明を容易にするために、図9のPU901全体は図5に描画されない。むしろ、それらのPUからのピクチャ(例えばピクチャ511、513、515-518)のみが図5に示される。
【0165】
実施形態において、CVSS AUとして指定される、図5におけるCLVS540の第1または最初のAU506は、各レイヤ(例えばレイヤ531および532)についてのPU(例えばPU901)を含む。さらに、CVSS AUにおけるそれらのPUの各々におけるコーディング済みピクチャ(例えばピクチャ511、513)はCLVSSピクチャである。上で記載されたように、CLVSSピクチャは、IRAPピクチャ、GDRピクチャ、または別のランダムアクセスポイントピクチャであり得る。実施形態において、特定のピクチャ(例えばRASLピクチャ)が復号可能でないことがあり得るのでデコーダによって出力されないことを示すために、CLVSSピクチャは、1に等しく設定された復旧前出力無しフラグ(すなわち、NoOutputBeforeRecoveryフラグ)を有する。実際、そのようなピクチャは、ビットストリームに存在しないピクチャへの参照を含み得る。
【0166】
実施形態において、CVSS AUおよび/またはCLVS(例えばCLVS540)におけるレイヤの数は、VPS(例えば904)によって指定される。
【0167】
当業者であれば、実際の適用において、ビットストリーム900が、他のパラメータおよび情報を含み得ることを理解する。
【0168】
図10は、ビデオデコーダ(例えばビデオデコーダ400)によって実装される復号の方法1000の実施形態である。方法1000は、ビットストリームがビデオエンコーダ(例えばビデオエンコーダ300)から直接または間接的に受信された後に実行され得る。方法1000は、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによって復号プロセスを改善し、これにより、現在の規格と比べてコーディングを簡略化する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0169】
ブロック1002において、ビデオデコーダは、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)(例えば、CVSS AUとして指定されるAU506)を含むビットストリーム(例えばビットストリーム901)を受信する。実施形態において、CVSS AUは、各レイヤ(例えばレイヤ531およびレイヤ532)についてのピクチャユニット(PU)(例えばPU901)を含む。実施形態において、各PUにおけるコーディング済みピクチャ(例えばコーディング済みピクチャ511および515)は、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである。
【0170】
実施形態において、ビデオデコーダは、各PUにおけるコーディング済みピクチャがCLVSSピクチャであると予期する。しかしながら、デコーダが、この条件が真でないと判定した場合、デコーダは、エラーを検出するか、エラーをシグナリングするか、受信されたビットストリーム(またはその一部)の再送信を要求するか、または、いくつかの他の是正措置を講じて、適合するビットストリームが受信されることを確実にし得る。
【0171】
実施形態において、CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャである。実施形態において、CLVSSピクチャは、漸次復号リフレッシュ(GDR)ピクチャである。実施形態において、CLVSSピクチャは、1に等しい復旧前出力無しフラグを有する。
【0172】
実施形態において、CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される。すなわち、VPSは、いくつのレイヤがCLVSの各AUに含まれるかを示す。実施形態において、CVSS AUは、コーディング済みビデオシーケンス(CVS)の最初のAUである。
【0173】
実施形態において、PUはレイヤアクセスユニットと称される。実施形態において、CVSS AUは、CVSS AUの各レイヤがPUの1つを含むので、完全AUと称される。
【0174】
ブロック1004において、ビデオデコーダは、ピクチャ順序カウント(POC)値に基づいて、レイヤの1つからコーディング済みピクチャ(例えばピクチャ914)を識別する。ブロック1006において、ビデオデコーダは、コーディング済みピクチャを復号して復号済みピクチャを取得する。復号済みピクチャは、復号されると、電子デバイス(例えばスマートフォン、タブレット、ラップトップ、パーソナルコンピュータなど)のディスプレイまたは画面上でユーザに表示するためのイメージまたはビデオシーケンスを生成する、または作成するために使用され得る。
【0175】
図11は、ビデオエンコーダ(例えばビデオエンコーダ300)によって実装されるビデオビットストリームを符号化する方法1100の実施形態である。方法1100は、(例えばビデオからの)ピクチャがビデオビットストリームに符号化され、その後、ビデオデコーダ(例えばビデオデコーダ400)へ送信されるときに実行され得る。方法1100は、各コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)が完全AUであり、かつ、CVSS AUにおける各ピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約されるビットストリームを利用することによって符号化プロセスを改善し、これにより、現在の規格と比べてコーディングを簡略化する。これにより、ランダムアクセスポイント(RAP)が、すべてのコーディング済みビデオシーケンス(CVS)の開始において、マルチレイヤビットストリームの各レイヤについて提供されることを確実にする。したがって、ビデオコーディングにおけるコーダ/デコーダ(すなわち「コーデック」)は、現在のコーデックと比較して改善される。現実問題としては、ビデオコーディングプロセスの改善によって、ビデオが送信、受信、および/または視聴されるとき、より良いユーザエクスペリエンスがユーザに提供される。
【0176】
ブロック1102において、ビデオエンコーダは、コーディング済みピクチャ(例えばコーディング済みピクチャ511および515)を含むピクチャユニット(PU)(例えばPU901)をコーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)(例えば、CVSS AUとして指定されたAU506)の各レイヤ(例えばレイヤ531およびレイヤ532)に挿入する。実施形態において、コーディング済みピクチャは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである。実施形態において、コーディング済みピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように、ビデオエンコーダは制約される。すなわち、ビデオエンコーダは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるコーディング済みピクチャを有することを要求される。そのような制約または要件は、ビットストリームが、本明細書において示されるように修正された、例えばVVCまたはいくつかの他の規格に適合することを確実にする。しかしながら、エンコーダは、異なる規格または同じ規格の異なるバージョンで動作するときなど、そのように制約されない他のモードで動作することも可能であり得る。
【0177】
実施形態において、CLVSSピクチャはイントラランダムアクセスポイント(IRAP)ピクチャである。実施形態において、CLVSSピクチャは、漸次復号リフレッシュ(GDR)ピクチャである。実施形態において、CLVSSピクチャは、1に等しい復旧前出力無しフラグを有する。
【0178】
実施形態において、CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される。すなわち、VPSは、いくつのレイヤがCLVSの各AUに含まれるかを示す。実施形態において、CVSS AUは、コーディング済みビデオシーケンス(CVS)の最初のAUである。
【0179】
実施形態において、PUはレイヤアクセスユニットと称される。実施形態において、CVSS AUは、CVSS AUの各レイヤがPUの1つを含むので、完全AUと称される。
【0180】
ブロック1104において、ビデオエンコーダは、CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)(例えばCLVS540)をビットストリームに符号化する。ブロック1106において、ビデオエンコーダは、ビデオデコーダへの通信のためにビットストリームを格納する。ビデオビットストリームは、ビデオビットストリームがビデオデコーダへ送信されるまでメモリに格納され得る。符号化されたビデオビットストリームは、ビデオデコーダによって受信されると、電子デバイス(例えば、スマートフォン、タブレット、ラップトップ、パーソナルコンピュータなど)のディスプレイまたは画面上でユーザに表示するためのイメージまたはビデオシーケンスを生成または作成するために(例えば上で説明されたように)復号され得る。
【0181】
なお、本明細書において説明される解決手段はなお、レイヤ間の非同期IRAPピクチャを可能にする。しかしながら、簡潔にするために、最低レイヤにおいてIRAPピクチャを含むが他のレイヤにおいて非IRAPピクチャを含むAUから開始する復号プロセスは、規範的に指定されない。しかしながら、設計がレイヤ間の非同期IRAPピクチャを許可する限り、そのような許容の技術的利益はなお、実践において実装によって実現され得る。
【0182】
以下のシンタックスおよびセマンティックスは、本明細書において開示される実施形態を実装するために利用され得る。以下の説明は、最新VVCドラフト仕様である基本テキストに対するものである。
【0183】
実施形態において、(特定の値layerIdに等しいnuh_layer_idを有する特定のピクチャの)関連付けられたIRAPピクチャは、(存在する場合)layerIdに等しいnuh_layer_idを有する、復号順序における前のIRAPピクチャであり、その間にはlayerIdに等しいnuh_layer_idを有するGDRピクチャは無い。nuh_layer_idは、VCL NALユニットが属するレイヤの識別子、または、非VCL NALユニットが適用するレイヤの識別子を指定する。nuh_layer_idの値は、0から55(両端を含む)の範囲とする。nuh_layer_idの他の値は、ITU-T|ISO/IECによる将来の使用のために予約される。
【0184】
本明細書おいて使用される場合、PUはレイヤアクセスユニットとも称され得る。実施形態において、クリーンランダムアクセス(CRA)レイヤアクセスユニットは、コーディング済みピクチャがCRAピクチャであるレイヤアクセスユニットである。実施形態において、クリーンランダムアクセス(CRA)ピクチャは、各VCL NALユニットが、CRA_NUTに等しいnal_unit_typeを有するIRAPピクチャである。実施形態において、CRAピクチャは、その復号プロセスにおいてインター予測を使用せず、復号順序において、ビットストリームにおける第1ピクチャであり得るか、または、ビットストリームにおいて後に出現し得る。実施形態において、CRAピクチャは、関連付けられたRADLまたはRASLピクチャを有し得る。CRAピクチャが、1に等しいNoOutputBeforeRecoveryFlagを有するとき、関連付けられたRASLピクチャはデコーダによって出力されない。なぜなら、それらは、ビットストリームに存在しないピクチャへの参照を含み得るので、それらは復号可能でないことがあり得るからである。
【0185】
実施形態において、コーディング済みレイヤビデオシーケンス(CLVS)は、復号順序において、CLVSS PU、および、それに続く、CLVSS PUである任意の後続のPUまで(ただしそれを含まない)のすべての後続のPUを含む、CLVSS PUでない0またはより多くのPUから構成される、同一の値のnuh_layer_idを有するPUのシーケンスである。実施形態において、CLVSS PUは、IDR PU、CRA PU、またはGDR PUであり得る。NoOutputBeforeRecoveryFlagの値は、各IDR PU、ならびに、1に等しいHandleCraAsClvsStartFlagを有する各CRA PU、および、復号順序においてビットストリームのレイヤにおける第1PU、または、復号順序においてEOS NALユニットに続くビットストリームのレイヤにおける第1PUである各CRAまたはGDR PUについて、1に等しい。
【0186】
実施形態において、コーディング済みレイヤビデオシーケンス開始(CLVSS)レイヤアクセスユニットは、コーディング済みピクチャがCLVSSピクチャであるレイヤアクセスユニットである。コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャは、1に等しいNoIncorrectPicOutputFlagを有するIRAPピクチャ、または、1に等しいNoIncorrectPicOutputFlagを有するGDRピクチャであるコーディング済みピクチャである。
【0187】
実施形態において、コーディング済みビデオシーケンス(CVS)は、復号順序において、CVSSアクセスユニット、および、それに続く、CVSSアクセスユニットである任意の後続のアクセスユニットまで(ただしそれを含まない)のすべての後続のアクセスユニットを含む、CVSSアクセスユニットでない0またはより多くのアクセスユニットから構成されるアクセスユニットのシーケンスである。
【0188】
実施形態において、コーディング済みビデオシーケンス開始(CVSS)アクセスユニットは、CVSにおける各レイヤについてレイヤアクセスユニットがあり、かつ、各レイヤアクセスユニットにおけるコーディング済みピクチャがCLVSSピクチャであるアクセスユニットである。なお、これは、各CVSS AUが完全なAUであること、および、CVSS AUにおける各ピクチャがCLVSS ピクチャであることを要求する。実施形態において、漸次復号リフレッシュ(GDR)アクセスユニットは、各現在のレイヤアクセスユニットにおけるコーディング済みピクチャがGDRピクチャであるアクセスユニットである。実施形態において、漸次復号リフレッシュ(GDR)レイヤアクセスユニットは、コーディング済みピクチャがGDRピクチャであるレイヤアクセスユニットである。実施形態において、漸次復号リフレッシュ(GDR)ピクチャは、各VCL NALユニットがGDR_NUTに等しいnal_unit_typeを有するピクチャである。
【0189】
SPSシンタックスは以下の通りである。
【表1】
【0190】
実施形態において、上の太字のシンタックス要素はVPSに含まれ得る。
【0191】
スライスヘッダシンタックスは以下の通りである。
【表2】
【0192】
実施形態において、シンタックス条件部分「&& nal_unit_type >= IDR_W_RADL && nal_unit_type <= GDR_NUT」は削除され得る。すなわち、poc_msb_in_rap_pics_flagが1に等しいとき、任意の値のnal_unit_typeを有するスライスについてpoc_msb_valをシグナリングする。
【0193】
実施形態において、シンタックス要素poc_msb_valの存在を条件とするために、1つのピクチャレベルフラグを追加する。すなわち、エンコーダが、poc_msb_in_rap_pics_flagが1に等しいとき、IRAPまたはGDRピクチャの各スライスについて個別にpoc_msb_valをシグナリングするか、またはシグナリングしないかを決定することを可能にする。
【0194】
実施形態において、上の両方の代替形態を適用する。実施形態において、se(v)またはue(v)を使用してpoc_msb_valをシグナリングし、poc_msb_len_minus1シンタックス要素をSPSシンタックスから削除する。
【0195】
NALユニットヘッダセマンティックスが提供される。
【0196】
nuh_layer_idは、VCL NALユニットが属するレイヤの識別子、または、非VCL NALユニットが適用するレイヤの識別子を指定する。
【0197】
nuh_layer_idの値は、コーディング済みピクチャのすべてのVCL NALユニットについて同一とする。コーディング済みピクチャまたはレイヤアクセスユニットのnuh_layer_idの値は、コーディング済みピクチャまたはレイヤアクセスユニットのVCL NALユニットのnuh_layer_idの値である。
【0198】
nal_unit_typeは、NALユニットタイプ、すなわち、NALユニットに含まれるRBSPデータ構造のタイプを指定する。
【0199】
nal_unit_typeの値は、ピクチャのすべてのコーディング済みスライスNALユニットについて同一とする。ピクチャまたはレイヤアクセスユニットは、ピクチャまたはレイヤアクセスユニットのコーディング済みスライスNALユニットと同一のNALユニットタイプを有すると称される。なお、上の2つの段落は、AU内のVCL NALユニットが、異なるNALユニットタイプを有することを可能にし、これにより、AU内の混在するRAPおよび非RAPピクチャが可能となる。RAPピクチャは、IDR、CAR、またはGDRピクチャである。
【0200】
nal_unit_typeの値は、CVSSアクセスユニットのピクチャについて同一であるものとする。
【0201】
アクセスユニットの順序およびCVSとの関連付けが提供される。
【0202】
規格に適合するビットストリームは、1または複数のCVSを含む。CVSは、1または複数のアクセスユニットから構成される。CVSの第1アクセスユニットは、CVSSアクセスユニットである。ここで、各現在のレイヤアクセスユニットは、1に等しいNoIncorrectPicOutputFlagを有するIRAPレイヤアクセスユニット、または、1に等しいNoIncorrectPicOutputFlagを有するGDRレイヤアクセスユニットのいずれかである、CLVSSレイヤアクセスユニットである。各CVSSアクセスユニットは、CVSに存在するレイヤの各々におけるピクチャを有するものとする。ビットストリーム適合性の要件として、シーケンス終了NALユニットまたはビットストリーム終了NALユニットを含むアクセスユニットの後の次のアクセスユニットにおける各レイヤアクセスユニットは、存在するとき、IDRレイヤアクセスユニットもしくはCRAレイヤアクセスユニットであり得るIRAPレイヤアクセスユニット、またはGDRレイヤアクセスユニットであるものとする。
【0203】
SPSセマンティックスが提供される。
【0204】
log2_max_pic_order_cnt_lsb_minus4は、以下のようにピクチャ順序カウントのために復号プロセスにおいて使用される変数MaxPicOrderCntLsbの値を指定する。
【0205】
MaxPicOrderCntLsb=2(log2_max_pic_order_cnt_lsb_minus4+4)
【0206】
log2_max_pic_order_cnt_lsb_minus4の値は、0から12(両端を含む)の範囲とする。
【0207】
1に等しいpoc_msb_in_rap_pics_flagは、poc_msb_valシンタックス要素が、SPSを参照し、かつ、VCL NALユニットがIDR_W_RADLからGDR_NUT(両端を含む)の範囲のnal_unit_typeを有するピクチャについてシグナリングされることを指定する。0に等しいpoc_msb_in_rap_pics_flagは、poc_msb_valシンタックス要素が、SPSを参照するピクチャについてシグナリングされないことを指定する。
【0208】
poc_msb_len_minus1+1は、存在するとき、poc_msb_valシンタックス要素の長さをビットで指定する。poc_msb_len_minus1の値は、0から32-log2_max_pic_order_cnt_lsb_minus4-5(両端を含む)の範囲とする。
【0209】
スライスヘッダセマンティックスが提供される。
【0210】
slice_pic_order_cnt_lsbは、ピクチャ順序カウントモジュロMaxPicOrderCntLsbを現ピクチャについて指定する。slice_pic_order_cnt_lsbシンタックス要素の長さは、log2_max_pic_order_cnt_lsb_minus4+4ビットである。slice_pic_order_cnt_lsbの値は、0からMaxPicOrderCntLsb-1(両端を含む)の範囲とする。
【0211】
poc_msb_valは、現ピクチャのPOC MSB値を指定する。シンタックス要素poc_msb_valの長さはpoc_msb_len_minus1+1ビットである。
【0212】
コーディング済みピクチャの復号プロセスが提供される。
【0213】
PictureOutputFlagが以下のように設定される。
【0214】
以下の条件の1つが真である場合、PictureOutputFlagは0に等しいように設定される。
【0215】
現ピクチャはRASLピクチャであり、関連付けられたIRAPピクチャのNoIncorrectPicOutputFlagは1に等しい。
【0216】
gdr_enabled_flagは1に等しく、現ピクチャは、1に等しいNoIncorrectPicOutputFlagを有するGDRピクチャである。
【0217】
gdr_enabled_flagは1に等しく、現ピクチャは、1に等しいNoIncorrectPicOutputFlagを有するGDRピクチャに関連付けられ、現ピクチャのPicOrderCntValは、関連付けられたGDRピクチャのRpPicOrderCntValより小さい。
【0218】
現ピクチャは出力レイヤに属さない。
【0219】
そうでない場合、PictureOutputFlagはpic_output_flagに等しく設定される。
【0220】
ピクチャ順序カウントの復号プロセスが提供される。
【0221】
このプロセスの出力は、PicOrderCntVal、現ピクチャのピクチャ順序カウントである。
【0222】
各コーディング済みピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数に関連付けられる。
【0223】
poc_msb_valがピクチャについて存在せず、現ピクチャがCLVSSピクチャでないとき、変数prevPicOrderCntLsbおよびprevPicOrderCntMsbは以下のように導出される。
【0224】
prevTid0Picを、現ピクチャのnuh_layer_idに等しいnuh_layer_idおよび0に等しいTemporalIdを有し、かつ、RASLまたはRADLピクチャでない、復号順序における前のピクチャとする。
【0225】
変数prevPicOrderCntLsbは、prevTid0Picのslice_pic_order_cnt_lsbに等しく設定される。
【0226】
変数prevPicOrderCntMsbは、prevTid0PicのPicOrderCntMsbに等しく設定される。
【0227】
現ピクチャの変数PicOrderCntMsbは以下のように導出される。
【0228】
poc_msb_valがピクチャについて存在する場合、PicOrderCntMsbは、poc_msb_val×MaxPicOrderCntLsbに等しく設定される。
【0229】
そうでない場合(poc_msb_valがピクチャについて存在しない)、現ピクチャがCLVSSピクチャである場合、PicOrderCntMsbは0に等しく設定される。
【0230】
そうでない場合、PicOrderCntMsbは以下のように導出される。
if((slice_pic_order_cnt_lsb < prevPicOrderCntLsb) &&
((prevPicOrderCntLsb - slice_pic_order_cnt_lsb) >= (MaxPicOrderCntLsb / 2)))
PicOrderCntMsb = prevPicOrderCntMsb + MaxPicOrderCntLsb (8-1)
else if((slice_pic_order_cnt_lsb > prevPicOrderCntLsb) &&
((slice_pic_order_cnt_lsb - prevPicOrderCntLsb) > (MaxPicOrderCntLsb / 2)))
PicOrderCntMsb = prevPicOrderCntMsb - MaxPicOrderCntLsb
else
PicOrderCntMsb = prevPicOrderCntMsb
【0231】
PicOrderCntValは以下のように導出される。
【0232】
PicOrderCntVal = PicOrderCntMsb + slice_pic_order_cnt_lsb (8-2)
【0233】
なお、poc_msb_valが存在しないすべてのCLVSSピクチャは、slice_pic_order_cnt_lsbに等しいPicOrderCntValを有する。なぜなら、それらのピクチャについて、PicOrderCntMsbは0に等しく設定されるからである。
【0234】
PicOrderCntValの値は、-231から231-1(両端を含む)の範囲とする。
【0235】
1つのCVSにおいて、同一の値のnuh_layer_idを有する任意の2つのコーディング済みピクチャについてのPicOrderCntVal値は同一でないものとする。
【0236】
任意の特定のアクセスユニットにおけるすべてのピクチャは、同一の値のPicOrderCntValを有するものとする。
【0237】
関数PicOrderCnt(picX)は以下のように指定される。
【0238】
PicOrderCnt(picX) = ピクチャpicXのPicOrderCntVal (8-3)
【0239】
関数DiffPicOrderCnt( picA,picB)は以下のように指定される。
【0240】
DiffPicOrderCnt(picA,picB) = PicOrderCnt(picA) - PicOrderCnt(picB) (8-4)
【0241】
ビットストリームは、-215から215-1の範囲(両端を含む)にない復号プロセスにおいて使用されるDiffPicOrderCnt(picA,picB)の値をもたらすデータを含まないものとする。
【0242】
なお、Xを現ピクチャとし、YおよびZを同一のCVSにおける2つの他のピクチャとし、DiffPicOrderCnt(X,Y)およびDiffPicOrderCnt(X,Z)の両方が正または両方が負であるとき、YおよびZは、Xから同一の出力順序方向にあるとみなされる。
【0243】
【0244】
図12は、開示の実施形態による、ビデオコーディングデバイス1200(例えばビデオエンコーダ300またはビデオデコーダ400)の概略図である。ビデオコーディングデバイス1200は、本明細書において説明される開示された実施形態を実装するのに好適である。ビデオコーディングデバイス1200は、データを受信するための入口ポート1210および受信機ユニット(Rx)1220、データを処理するためのプロセッサ、論理ユニット、または、中央演算処理装置(CPU)1230、データを送信するための送信機ユニット(Tx)1240および出口ポート1250、ならびに、データを格納するためのメモリ1260を含む。ビデオコーディングデバイス1200はまた、光または電気信号の出口または入口のために、入口ポート1210、受信機ユニット1220、送信機ユニット1240、および出口ポート1250に結合される光/電気(OE)コンポーネントおよび電気/光(EO)コンポーネントを含み得る。
【0245】
プロセッサ1230はハードウェアおよびソフトウェアによって実装される。プロセッサ1230は、1または複数のCPUチップ、コア(例えば、マルチコアプロセッサとして)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、およびデジタル信号プロセッサ(DSP)として実装されてよい。プロセッサ1230は、入口ポート1210、受信機ユニット1220、送信機ユニット1240、出口ポート1250、およびメモリ1260と通信する。プロセッサ1230はコーディングモジュール1270を含む。コーディングモジュール1270は、上で説明された開示された実施形態を実装する。例えば、コーディングモジュール1270は、様々なコーデック機能を実装し、処理し、準備し、または提供する。したがって、コーディングモジュール1270を含めることにより、ビデオコーディングデバイス1200の機能の著しい改善を提供し、ビデオコーディングデバイス1200の異なる状態への変換をもたらす。代替的に、コーディングモジュール1270は、メモリ1260に格納された命令として実装され、プロセッサ1230によって実行される。
【0246】
ビデオコーディングデバイス1200はまた、ユーザとの間のデータ通信のために、入力および/または出力(I/O)デバイス1280を含み得る。I/Oデバイス1280は、ビデオデータを表示するためのディスプレイ、音声データを出力するためのスピーカなどの出力デバイスを含んでよい。I/Oデバイス1280はまた、キーボード、マウス、トラックボールなどの入力デバイス、および/またはそのような出力デバイスとインタラクトするための対応するインタフェースも含んでよい。
【0247】
メモリ1260は、1または複数のディスク、テープドライブ、及びソリッドステートドライブを含み、プログラムが実行のために選択されるときにそのようなプログラムを記憶するために、並びに、プログラム実行中に読み出される命令及びデータを記憶するために、オーバフローデータ記憶デバイスとして使用され得る。メモリ1260は、揮発性および/または不揮発性でよく、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、三値連想メモリ(TCAM)および/またはスタティックランダムアクセスメモリ(SRAM)でよい。
【0248】
図13は、コーディングの手段1300の実施形態の概略図である。実施形態において、コーディングの手段1300は、ビデオコーディングデバイス1302(例えば、ビデオエンコーダ300またはビデオデコーダ400)において実装される。ビデオコーディングデバイス1302は、受信手段1301を含む。受信手段1301は、符号化するピクチャを受信する、または、復号するビットストリームを受信するよう構成される。ビデオコーディングデバイス1302は、受信手段1301に結合された送信手段1307を含む。送信手段1307は、ビットストリームをデコーダへ送信する、または、復号されたイメージを表示手段(例えば、I/Oデバイス1280の1つ)へ送信するよう構成される。
【0249】
ビデオコーディングデバイス1302は記憶手段1303を含む。記憶手段1303は、受信手段1301または送信手段1307の少なくとも1つに結合される。記憶手段1303は、命令を格納するよう構成される。ビデオコーディングデバイス1302はまた、処理手段1305を含む。処理手段1305は、記憶手段1303に結合される。処理手段1305は、本明細書に開示される方法を実行するために、記憶手段1303に格納された命令を実行するよう構成される。
【0250】
本明細書に記載された例示的な方法の段階は、必ずしも説明された順序で実行される必要はないこともまた、理解されるべきであり、このような方法の段階の順序は、単なる例示的なものとして理解されるべきである。同様に、追加の段階がこのような方法に含まれてよく、特定の段階が、本開示の様々な実施形態において一貫した方法において、省略または組み合されてよい。
【0251】
複数の実施形態が本開示において提供されてきたが、開示されたシステム及び方法は、本開示の趣旨または範囲から逸脱することなく、多数の他の具体的形態で具現化されてよいことが理解されるべきである。本例は、例示的なものであって、限定的なものではないとみなされるべきであり、その意図は、本明細書において与えられた詳細に限定されるべきではない。例えば、様々な要素またはコンポーネントが、別のシステムに組み合わせられ、または、統合されてよく、または、特定の特徴が省略されても、実装されなくてもよい。
【0252】
更に、様々な実施形態に個別または別個に説明及び図示された技法、システム、サブシステム、及び方法が、本開示の範囲から逸脱することなく、他のシステム、モジュール、技法、または方法と組み合わされても統合されてもよい。互いに結合される、互いに直接結合される、または互いに通信するものとして示され説明された他の要素が、電気的であれ、機械的であれ、または別の方法であれ、何らかのインタフェース、デバイス、または中間コンポーネントを介して間接的に結合されても、通信してもよい。変更、置換、及び修正の他の例は、当業者によって確認可能であり、それらは本明細書において開示される主旨及び範囲から逸脱することなく成され得る。
[他の考えられる項目]
(項目1)
ビデオデコーダによって実装される復号の方法であって、
前記ビデオデコーダによって、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)を含むビットストリームを受信する段階であって、前記CVSS AUは、各レイヤについてのピクチャユニット(PU)を含み、各PUにおけるコーディング済みピクチャは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである、段階と、
前記ビデオデコーダによって、ピクチャ順序カウント(POC)値に基づいて、前記レイヤの1つから前記コーディング済みピクチャを識別する段階と、
前記ビデオデコーダによって、前記コーディング済みピクチャを復号して復号済みピクチャを取得する段階と
を備える方法。
(項目2)
前記CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャである、項目1に記載の方法。
(項目3)
前記CLVSSピクチャは、漸次復号リフレッシュ(GDR)ピクチャである、項目1に記載の方法。
(項目4)
前記CLVSSピクチャは、前記PUのピクチャパラメータセット(PPS)に配置された復旧前出力無しフラグに関連付けられ、前記復旧前出力無しフラグは1に等しい、項目1から3のいずれかに記載の方法。
(項目5)
前記CVSS AUの各レイヤはビデオパラメータセット(VPS)によって指定される、項目1から4のいずれかに記載の方法。
(項目6)
前記CVSS AUは、コーディング済みビデオシーケンス(CVS)の最初のAUである、項目1から5のいずれかに記載の方法。
(項目7)
前記PUは、レイヤアクセスユニットと称される、項目1から6のいずれかに記載の方法。
(項目8)
前記CVSS AUの各レイヤは前記PUの1つを含むので、前記CVSS AUは完全AUと称される、項目1から7のいずれかに記載の方法。
(項目9)
前記コーディング済みピクチャを復号された状態で電子デバイスのディスプレイ上に表示する段階を更に備える、項目1から8のいずれかに記載の方法。
(項目10)
前記ビデオデコーダによって、第2CVSS AUを含む第2ビデオビットストリームを受信する段階であって、前記第2CVSS AUは、各レイヤについてのピクチャユニット(PU)を含み、各PUにおけるコーディング済みピクチャはCLVSSピクチャでない、段階と、
前記受信に応答して、いくつかの他の訂正措置を講じて、前記第2ビデオビットストリームに対応する適合ビットストリームが、前記コーディング済みピクチャの復号前に受信されることを確実にする段階と
を更に備える、項目1から9のいずれかに記載の方法。
(項目11)
ビデオエンコーダによって実装される符号化の方法であって、
前記ビデオエンコーダによって、コーディング済みピクチャを含むピクチャユニット(PU)を、コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)の各レイヤに挿入する段階であって、前記ビデオエンコーダは、各レイヤにおける前記コーディング済みピクチャがコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約を受ける、段階と、
前記ビデオエンコーダによって、前記CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)をビットストリームに符号化する段階と、
前記ビデオエンコーダによって、ビデオデコーダへの通信のために前記ビットストリームを格納する段階と
を備える方法。
(項目12)
前記CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャである、項目11に記載の方法。
(項目13)
前記CLVSSピクチャは、漸次復号リフレッシュ(GDR)ピクチャである、項目11に記載の方法。
(項目14)
前記CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される、項目11から13のいずれかに記載の方法。
(項目15)
復号デバイスであって、
コーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)を含むビットストリームを受信することを行うよう構成される受信機であって、前記CVSS AUは、各レイヤについてのピクチャユニット(PU)を含み、各PUにおけるコーディング済みピクチャは、コーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャである、受信機と、
前記受信機に結合されたメモリであって、命令を記憶するメモリと、
前記メモリに結合されたプロセッサであって、
ピクチャ順序カウント(POC)値に基づいて、前記レイヤの1つから前記コーディング済みピクチャを識別すること、および、
前記コーディング済みピクチャを復号して、復号されたピクチャを取得すること
を前記復号デバイスに行わせるために前記命令を実行するよう構成されるプロセッサと
を備える復号デバイス。
(項目16)
前記CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャである、項目15に記載の復号デバイス。
(項目17)
前記CLVSSピクチャは、漸次復号リフレッシュ(GDR)ピクチャである、項目15に記載の復号デバイス。
(項目18)
前記CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される、項目15から17のいずれかに記載の復号デバイス。
(項目19)
符号化デバイスであって、
命令を含むメモリと、
前記メモリに結合されたプロセッサであって、
コーディング済みピクチャを含むピクチャユニット(PU)をコーディング済みビデオシーケンス開始(CVSS)アクセスユニット(AU)の各レイヤに挿入することであって、前記符号化デバイスは、前記コーディング済みピクチャが各レイヤにおいてコーディング済みレイヤビデオシーケンス開始(CLVSS)ピクチャであるように制約される、こと、および、
前記CVSS AUを含むコーディング済みレイヤビデオシーケンス(CLVS)をビットストリームに符号化すること
を前記符号化デバイスに行わせるために前記命令を実装するよう構成される、プロセッサと、
前記プロセッサに結合された送信機であって、前記ビデオビットストリームをビデオデコーダへ伝送するよう構成される、送信機と
を備える符号化デバイス。
(項目20)
前記CLVSSピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャまたは漸次復号リフレッシュ(GDR)ピクチャである、項目19に記載の符号化デバイス。
(項目21)
前記CVSS AUの各レイヤは、ビデオパラメータセット(VPS)によって指定される、項目19から20のいずれかに記載の符号化デバイス。
(項目22)
コーディング装置であって、
符号化するピクチャを受信する、または、復号するビットストリームを受信するよう構成される受信機と、
前記受信機に結合された送信機であって、前記ビットストリームをデコーダへ送信する、または、復号されたイメージをディスプレイへ送信するよう構成される送信機と、
前記受信機または前記送信機の少なくとも1つに結合されたメモリであって、命令を格納するよう構成されるメモリと、
前記メモリに結合されたプロセッサであって、前記メモリに格納された前記命令を実行して、項目1から10のいずれかまたは項目11から14のいずれかに記載の方法を実行するよう構成されるプロセッサと
を備えるコーディング装置。
(項目23)
復号されたピクチャを表示するよう構成されるディスプレイを更に備える、項目22に記載のコーディング装置。
(項目24)
システムであって、
エンコーダと、
前記エンコーダと通信するデコーダとを備え、
前記エンコーダまたは前記デコーダは、項目16から23のいずれかに記載の復号デバイス、符号化デバイス、または、コーディング装置を含む、
システム。
(項目25)
コーディングのための手段であって、
符号化するピクチャを受信する、または、復号するビットストリームを受信するよう構成される受信手段と、
前記受信手段に結合された送信手段であって、前記ビットストリームを復号手段へ送信するよう、または、復号されたイメージを表示手段へ送信するよう構成される送信手段と、
前記受信手段または前記送信手段の少なくとも1つに結合された記憶手段であって、命令を格納するよう構成される記憶手段と、
前記記憶手段に結合された処理手段であって、前記記憶手段に格納された前記命令を実行して、項目1から10のいずれか、および、項目11から14のいずれかに記載の方法を実行するよう構成される、処理手段と
を備える手段。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
【外国語明細書】