(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2018-524897(P2018-524897A)
(43)【公表日】2018年8月30日
(54)【発明の名称】ビデオの符号化・復号装置、方法、およびコンピュータプログラム
(51)【国際特許分類】
H04N 19/577 20140101AFI20180803BHJP
H04N 19/46 20140101ALI20180803BHJP
【FI】
H04N19/577
H04N19/46
【審査請求】有
【予備審査請求】未請求
【全頁数】62
(21)【出願番号】特願2017-565700(P2017-565700)
(86)(22)【出願日】2016年6月15日
(85)【翻訳文提出日】2018年2月6日
(86)【国際出願番号】FI2016050433
(87)【国際公開番号】WO2016203114
(87)【国際公開日】20161222
(31)【優先権主張番号】62/182,269
(32)【優先日】2015年6月19日
(33)【優先権主張国】US
(81)【指定国】
AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KN,KP,KR,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ,UA,UG,US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FIREWIRE
(71)【出願人】
【識別番号】315002955
【氏名又は名称】ノキア テクノロジーズ オーユー
(74)【代理人】
【識別番号】100127188
【弁理士】
【氏名又は名称】川守田 光紀
(72)【発明者】
【氏名】ライネマ ヤニ
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159LB05
5C159LC09
5C159MA04
5C159MA05
5C159MA14
5C159MA16
5C159MA17
5C159MA19
5C159MA31
5C159NN01
5C159PP03
5C159PP05
5C159PP06
5C159PP07
5C159PP13
5C159PP15
5C159PP16
5C159RC11
5C159UA02
5C159UA05
5C159UA16
(57)【要約】
好適な実施形態は、動き補償予測の方法を含む。この方法は、第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することとを含む。
【選択図】
図6
【特許請求の範囲】
【請求項1】
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
を含む、動き補償予測の方法。
【請求項2】
前記動き補償処理は、
・適用される予測の種類についてのサンプルレベルの決定を示すこと、
・L0およびL1の重みを示すための変調信号を符号化すること、
・L0およびL1で特定された異なる乖離の階級に対して目的の動作を示すために予測ブロックレベルについてシグナリングすること、
の内の1つまたは複数を含む、請求項1に記載の方法。
【請求項3】
サンプルの前記サブセットは、前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルを含む、請求項1または2に記載の方法。
【請求項4】
サンプルの前記サブセットは、L0とL1との最大の差分が予測ブロック内にある所定数のサンプルを含む、請求項1または2に記載の方法。
【請求項5】
前記特定することと決定することは、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、
をさらに含む、請求項1から4のいずれかに記載の方法。
【請求項6】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、
をさらに含む、請求項1から5のいずれかに記載の方法。
【請求項7】
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む、請求項6に記載の方法。
【請求項8】
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、
をさらに含む、請求項6または7に記載の方法。
【請求項9】
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することと、をさらに含む、請求項1から8のいずれかに記載の方法。
【請求項10】
少なくとも1つのプロセッサおよび少なくとも1つのメモリを備える装置であって、前記少なくとも1つのメモリにはコードが格納され、該コードが前記少なくとも1つのプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
を実行させる装置。
【請求項11】
前記動き補償処理は、
・適用される予測の種類についてのサンプルレベルの決定を示すこと、
・L0およびL1の重みを示すための変調信号を符号化すること、
・L0およびL1で特定された異なる乖離の階級に対して目的の動作を示すために予測ブロックレベルについてシグナリングすること、
の内の1つまたは複数を含む、請求項10に記載の装置。
【請求項12】
サンプルの前記サブセットは、前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルを含む、請求項10または11に記載の装置。
【請求項13】
サンプルの前記サブセットは、L0とL1との最大の差分が予測ブロック内にある所定数のサンプルを含む、請求項10または11に記載の装置。
【請求項14】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、
によって前記特定することと決定することと、
を前記装置に実行させるコードをさらに含む、請求項10から13のいずれかに記載の装置。
【請求項15】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、
を前記装置に実行させるコードをさらに含む、請求項10から14のいずれかに記載の装置。
【請求項16】
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することを前記装置に実行させるコードをさらに含む、請求項15に記載の装置。
【請求項17】
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、
を前記装置に実行させるコードをさらに含む、請求項15または16に記載の装置。
【請求項18】
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することを前記装置に実行させるコードをさらに含む、請求項10から17のいずれかに記載の装置。
【請求項19】
コンピュータ可読記憶媒体であって、該記憶媒体には装置によって使用されるコードが格納され、該コードがプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
を実行させるコンピュータ可読記憶媒体。
【請求項20】
動き補償予測を実行するように構成されたビデオエンコーダを有する装置であって、前記ビデオエンコーダは、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成する手段と、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定する手段と、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定する手段と、
を備える装置。
【請求項21】
動き補償予測を実行するように構成されたビデオエンコーダであって、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
をさらに実行するように構成されるビデオエンコーダ。
【請求項22】
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、
を含む動き補償予測の方法。
【請求項23】
前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
をさらに含む請求項22に記載の方法。
【請求項24】
L0とL1との最大の差分が予測ブロック内にある所定数のサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
をさらに含む請求項22に記載の方法。
【請求項25】
前記動き補償処理を決定することは、
・適用される予測の種類についてのサンプルレベルの決定を行うこと、
・変調信号からL0およびL1の重みを求めること、
・予測ブロックレベルシグナリングから、L0およびL1で特定された異なる乖離の階級に対して目的の動作を行うこと、
の内の1つまたは複数を含む、請求項22から24のいずれかに記載の方法。
【請求項26】
前記特定することと決定することは、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、
をさらに含む、請求項22から25のいずれかに記載の方法。
【請求項27】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、
をさらに含む、請求項22から26のいずれかに記載の方法。
【請求項28】
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む、請求項27に記載の方法。
【請求項29】
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、をさらに含む、
請求項27または28に記載の方法。
【請求項30】
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することと、をさらに含む、請求項22から29のいずれかに記載の方法。
【請求項31】
少なくとも1つのプロセッサおよび少なくとも1つのメモリを備える装置であって、前記少なくとも1つのメモリにはコードが格納され、該コードが前記少なくとも1つのプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、
を実行させる装置。
【請求項32】
前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
を前記装置に実行させるコードをさらに含む、請求項31に記載の装置。
【請求項33】
L0とL1との最大の差分が予測ブロック内にある所定数のサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
を前記装置に実行させるコードをさらに含む、請求項31に記載の装置。
【請求項34】
・適用される予測の種類についてのサンプルレベルの決定を行うこと、
・変調信号からL0およびL1の重みを求めること、
・予測ブロックレベルシグナリングから、L0およびL1で特定された異なる乖離の階級に対して目的の動作を行うこと、
の内の1つまたは複数によって前記動き補償処理を前記決定することを前記装置に実行させるコードをさらに含む、請求項31から33のいずれかに記載の装置。
【請求項35】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、
によって前記特定することと決定することを前記装置に実行させるコードをさらに含む、請求項31から34のいずれかに記載の装置。
【請求項36】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、
を前記装置に実行させるコードをさらに含む、請求項31から35のいずれかに記載の装置。
【請求項37】
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することを前記装置に実行させるコードをさらに含む、請求項36に記載の装置。
【請求項38】
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、
を前記装置に実行させるコードをさらに含む、請求項36または37に記載の装置。
【請求項39】
コンピュータ可読記憶媒体であって、該記憶媒体には装置によって使用されるコードが格納され、該コードがプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、
を実行させる、コンピュータ可読記憶媒体。
【請求項40】
動き補償予測を実行するように構成されたビデオデコーダを備える装置であって、前記ビデオデコーダは、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成する手段と、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得する手段と、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用する手段と、
を備える装置。
【請求項41】
動き補償予測を実行するように構成されたビデオデコーダであって、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、
をさらに実行するように構成されるビデオデコーダ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ビデオの符号化・復号装置、方法、およびコンピュータプログラムに関する。
【0002】
ビデオの符号化において、B(双方向に予測された)フレームは、複数のフレームから、通常該Bフレームの前の少なくとも1つのフレームとその後の少なくとも1つのフレームから予測される。この予測は、予測の元となった複数のフレームの単純平均に基づいてもよい。あるいは、Bフレームは、時間基準の重み付け平均等の重み付け双予測を使用して、または輝度等のパラメータに基づく重み付け平均に基づいて計算されてもよい。重み付け双予測では、複数のフレームの内の1つのフレーム、または複数のフレームの所定の特性に重きを置いている。
【0003】
重み付け双予測では、2つの動き補償予測を行い、その後、2つの予測された信号を拡縮し加算する動作を要する。これにより通常高い符号化効率が実現される。例えばH.265/HEVCで用いられる動き補償双予測では、2つの動き補償動作の平均をとってサンプル予測ブロックを構築する。重み付け予測の場合、この動作は2つの予測について異なる重みで実行され、その結果に対してさらに補正値が付加されうる。
【0004】
しかし、上述の動作はいずれも、予測ブロックの特殊な特性を考慮に入れていない。当該特性としては、単予測ブロックのいずれかが(重み付け)平均双予測ブロックよりもサンプルに対してより優れた推定を実現する場合があることが挙げられる。したがって、公知の重み付け双予測方法では、性能が最大限引き出せないことが多い。
【0005】
したがって、動き補償予測の精度を向上するための方法が求められている。
【0006】
上述の課題の実現に少なくとも近付くために、本明細書では改良された動き補償予測の方法を紹介する。
【0007】
第1の態様は動き補償予測の方法を含み、該方法は、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、を含む。
【0008】
ある実施形態によると、前記動き補償処理は、以下の内の1つまたは複数を含む。
・適用される予測の種類についてのサンプルレベルの決定を示すこと、
・L0およびL1の重みを示すための変調信号を符号化すること、
・L0およびL1で特定された異なる乖離の階級に対して目的の動作を示すために予測ブロックレベルについてシグナリングすること。
【0009】
ある実施形態によると、サンプルの前記サブセットは、前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルを含む。
【0010】
ある実施形態によると、サンプルの前記サブセットは、L0とL1との最大の差分が予測ブロック内にある所定数のサンプルを含む。
【0011】
ある実施形態によると、前記特定することと決定することは、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、をさらに含む。
【0012】
ある実施形態によると、前記方法は、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、をさらに含む。
【0013】
ある実施形態によると、前記方法は、
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む。
【0014】
ある実施形態によると、前記方法は、
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、をさらに含む。
【0015】
ある実施形態によると、前記方法は、
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することと、をさらに含む。
【0016】
第2の実施形態による装置は、
少なくとも1つのプロセッサおよび少なくとも1つのメモリを含み、前記少なくとも1つのメモリにはコードが格納され、該コードが前記少なくとも1つのプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、を実行させる。
【0017】
第3の実施形態によるとコンピュータ可読記憶媒体が提供され、該記憶媒体には装置によって使用されるコードが格納され、該コードがプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、を実行させる。
【0018】
第4の実施形態によると装置が提供され、該装置は、動き補償予測を実行するように構成されたビデオエンコーダを含み、前記ビデオエンコーダは、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成する手段と、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定する手段と、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定する手段と、を含む。
【0019】
第5の実施形態によると動き補償予測を実行するように構成されたビデオエンコーダが提供され、前記ビデオエンコーダはさらに、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、を実行するように構成される。
【0020】
第6の実施形態による方法は動き補償予測の方法を含み、該方法は、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、を含む。
【0021】
ある実施形態によると、前記方法は、
前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、をさらに含む。
【0022】
ある実施形態によると、前記方法は、
L0とL1との最大の差分が予測ブロック内にある所定数のサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、をさらに含む。
【0023】
ある実施形態によると、前記動き補償処理を決定することは、以下の内の1つまたは複数を含む。
・適用される予測の種類についてのサンプルレベルの決定を行うこと、
・変調信号からL0およびL1の重みを求めること、
・予測ブロックレベルシグナリングから、L0およびL1で特定された異なる乖離の階級に対して目的の動作を行うこと。
【0024】
ある実施形態によると、前記特定することと決定することは、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、をさらに含む。
【0025】
ある実施形態によると、前記方法は、前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、をさらに含む。
【0026】
ある実施形態によると、前記方法は、
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む。
【0027】
ある実施形態によると、前記方法は、
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、をさらに含む。
【0028】
ある実施形態によると、前記方法は、
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することと、をさらに含む。
【0029】
第7の実施形態による装置は、
少なくとも1つのプロセッサおよび少なくとも1つのメモリを含み、前記少なくとも1つのメモリにはコードが格納され、該コードが前記少なくとも1つのプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、を実行させる。
【0030】
第8の実施形態によるとコンピュータ可読記憶媒体が提供され、該記憶媒体には装置によって使用されるコードが格納され、該コードがプロセッサによって実行されると、前記装置に対して少なくとも、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、を実行させる。
【0031】
第9の実施形態による装置は、
動き補償予測を実行するように構成されたビデオデコーダを含み、前記ビデオデコーダは、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成する手段と、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得する手段と、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用する手段と、を含む。
【0032】
第10の実施形態によると動き補償予測を実行するように構成されたビデオデコーダが提供され、前記ビデオデコーダはさらに、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、を実行するように構成される。
【図面の簡単な説明】
【0033】
本発明に対する理解を促すために、以下の添付の図面と関連付けて以下に説明を行う。
【0034】
【
図1】
図1は、本発明の各実施形態が採用された電子デバイスを模式的に示す。
【0035】
【
図2】
図2は、本発明の各実施形態を採用するに適したユーザ端末を模式的に示す。
【0036】
【
図3】
図3は、無線および有線ネットワーク接続によって接続された、本発明の各実施形態が採用された電子デバイスを模式的に示す。
【0037】
【
図4】
図4は、本発明の各実施形態を実施するに適したエンコーダを模式的に示す。
【0038】
【
図5】
図5は、本発明のある実施形態による動き補償予測のフローチャートを示す。
【0039】
【
図6】
図6は、本発明のある実施形態による動き補償単予測および双予測の例を示す。
【0040】
【
図7】
図7は、本発明の各実施形態を実施するに適したデコーダの模式図を示す。
【0041】
【
図8】
図8は、本発明のある実施形態による復号処理における動き補償予測のフローチャートを示す。
【0042】
【
図9】
図9は、各種実施形態を実装可能なマルチメディア通信システムの例の模式図を示す。
【発明を実施するための形態】
【0043】
動き補償予測に適した装置および利用可能な機構を以下に詳述する。まずは、
図1、
図2を参照する。
図1は、本発明のある実施形態によるコーデックを有しうる例示的装置または電子デバイス50の概略的ブロック図として、例示的実施形態によるビデオ符号化システムのブロック図を示す。
図2は、例示的実施形態による装置のレイアウトを示す。その後、
図1および
図2の各要素を説明する。
【0044】
電子デバイス50は、例えば、無線通信システムにおける携帯端末またはユーザ端末であってもよい。ただし、本発明の各実施形態は、符号化・復号、あるいはビデオ映像の符号化または復号を必要とする可能性のある任意の電子デバイスや装置内に実装してもよいことを理解されたい。
【0045】
装置50は、前記デバイスを収容、保護する筐体30を備えてもよい。装置50はさらに、液晶ディスプレイであるディスプレイ32を備えてもよい。本発明の別の実施形態では、ディスプレイは画像またはビデオ表示に適した任意の好適なディスプレイに適したディスプレイ技術を採用してもよい。装置50は、さらにキーパッド34を備えてもよい。本発明の別の実施形態では、任意の好適なデータまたはユーザインタフェース機構を利用してもよい。例えば、このユーザインタフェースは、タッチ感知ディスプレイの一部としてのバーチャルキーボードまたはデータ入力システムとして実現されてもよい。
【0046】
装置50は、マイク36または任意の好適な音声入力(デジタル信号入力であってもアナログ信号入力であってもよい)を備えてもよい。装置50は、音声出力装置をさらに備えてもよい。本発明の各実施形態では、該音声出力装置は受話口38、スピーカー、アナログ音声出力接続またはデジタル音声出力接続のいずれかであってもよい。装置50は、バッテリ40をさらに備えてもよい(または本発明の別の実施形態では、デバイスが、太陽電池、燃料電池、またはゼンマイ式発電機等の任意の好適な可搬性エネルギー装置によって電源供給されてもよい)。また装置50は、画像や動画の記録や撮像が可能なカメラ42を備えてもよい。装置50はさらに、別の装置との短可視距離通信用の赤外線ポートを備えてもよい。別の実施形態では、装置50はさらに、例えばBluetooth(登録商標)無線接続またはUSB/FireWire有線接続等の、任意の好適な近距離通信手段を備えてもよい。
【0047】
装置50は、装置50を制御するコントローラ56またはプロセッサを備えてもよい。コントローラ56は、メモリ58に接続されてもよい。本発明の実施形態において、メモリ58は、画像および音声のいずれの形式のデータ、および/またはコントローラ56において実行される命令を格納してもよい。コントローラ56はさらに、音声および/またはビデオデータの符号化・復号の実行や、コントローラが実行する符号化・復号の補助に適したコーデック回路54に接続されてもよい。
【0048】
装置50は、ユーザ情報を提供し、ネットワークにおけるユーザを認証、承認するための認証情報の提供に適した、例えばUICC(Universal Integrated Circuit Card)およびUICCリーダーのようなカードリーダー48およびスマートカード46をさらに備えてもよい。
【0049】
装置50は、コントローラに接続され、例えば携帯通信ネットワーク、無線通信システム、または無線ローカルエリアネットワークと通信するための無線通信信号の生成に適した無線インタフェース回路52をさらに備えてもよい。装置50は、無線インタフェース回路52に接続され、無線インタフェース回路52で生成された無線周波数信号を単一または複数の別の装置に送信し、単一または複数の別の装置から無線周波数信号を受信するためのアンテナ44をさらに備えてもよい。
【0050】
装置50は、個別のフレームを記録、検出可能なカメラを備えてもよい。該フレームはその後、コーデック54またはコントローラに送られて処理される。装置50は、伝送や格納の前に、別装置から処理用のビデオ映像データを受信してもよい。装置50は、符号化/復号用の画像を無線または有線接続を介して受信してもよい。
【0051】
図3は、本発明の各実施形態を利用可能なシステムの例を示している。システム10は、1つ以上のネットワークを介して通信可能な複数の通信デバイスを含む。システム10は、有線ネットワークおよび/または無線ネットワークの任意の組合せを含んでもよい。これらのネットワークには、GSM(登録商標)、ユニバーサル携帯電話システム(Universal Mobile Telecommunications System:UMTS)、符号分割多元接続(Code Division Multiple Access:CDMA)ネットワーク等)、IEEE802.xのいずれかの規格で規定されるもの等の無線ローカルエリアネットワーク(Wireless Local Area Network:WLAN)、Bluetooth(登録商標)パーソナルエリアネットワーク、イーサネット(登録商標)ローカルエリアネットワーク、トークンリングローカルエリアネットワーク、広域ネットワーク、インターネット等があるが、これらに限定されない。
【0052】
システム10は、本発明の各実施形態の実現に適した有線および無線通信のデバイスおよび/または装置50を備えてもよい。
【0053】
例えば、
図3に示すシステムは、携帯電話ネットワーク11と、インターネット28を表現したものとを示している。インターネット28への接続は、長距離無線接続、近距離無線接続、および様々な有線接続を含んでもよいが、これらに限定されない。有線接続には、電話回線、ケーブル回線、電力線、その他同様の通信経路等が含まれるが、これらに限定されない。
【0054】
システム10内に示される通信デバイスの例は、電子デバイスまたは装置50、携帯情報端末(Personal Digital Assistant:PDA)と携帯電話14との組合せ、PDA16、統合通信デバイス(Integrated Messaging Device:IMD)18、デスクトップコンピュータ20、ノート型コンピュータ22を含んでもよいが、これらに限定されない。装置50は固定型でもよく、移動する人が持ち運べる携帯型でもよい。また、装置50は移動手段に設けられてもよい。こうした移動手段には、自動車、トラック、タクシー、バス、列車、船、飛行機、自転車、バイク、その他同様の好適な移動手段を含んでもよいが、これらに限定されない。
【0055】
実施形態はさらに、ディスプレイや無線通信に対応する性能を有しても有していなくてもよい、セットトップボックス、すなわちデジタルテレビ受信機、ハードウェア、ソフトウェア、またはエンコーダ/デコーダ実装の組合せを含むタブレットまたは(ノート型)パーソナルコンピュータ(PC)、各種オペレーティングシステム、チップセット、プロセッサ、DSPおよび/または組み込みシステム(ハードウェア/ソフトウェアベースの符号化を実現)で実施されてもよい。
【0056】
いくつかのまたはさらなる装置は、呼び出しやメッセージを送受信して、基地局24への無線接続25を介してサービスプロバイダと通信してもよい。基地局24は、携帯電話ネットワーク11とインターネット28との間の通信を可能にするネットワークサーバ26に接続されてもよい。システムは、さらなる通信デバイスや、様々な種類の通信デバイスを含んでもよい。
【0057】
通信デバイスは様々な伝送技術を用いて通信してもよく、こうした技術には、CDMA、GSM(登録商標)、UMTS、時分割多元接続(Time Divisional Multiple Access:TDMA)、周波数分割多元接続(Frequency Division Multiple Access:FDMA)、TCP‐IP(Transmission Control Protocol‐Internet Protocol)、ショートメッセージサービス(SMS)、マルチメディアメッセージサービス(MMS)、電子メール、インスタントメッセージングサービス(IMS)、Bluetooth(登録商標)、IEEE 802.11、その他同様の無線通信技術を含むが、これらに限定されない。本発明の様々な実施形態の実施に含まれる通信デバイスは、様々な媒体を介して通信できる。こうした媒体には、無線、赤外線、レーザー、ケーブル接続、その他好適な接続が含まれるが、これらに限定されない。
【0058】
電気通信およびデータネットワークにおいて、経路は、物理経路および論理経路のいずれであってもよい。物理経路は、ケーブルのような物理伝送媒体であってもよく、論理経路は、いくつかの論理経路の伝送を実現可能な多重化媒体における論理接続であってもよい。経路は、単一または複数の伝送者(または送信者)から単一または複数の受信者へ、例えばビットストリームのような情報信号を伝達するために使用できる。
【0059】
リアルタイム転送プロトコル(Real-time Transport Protocol:RTP)は、音声やビデオのような、時限式媒体のリアルタイム伝送に広く利用されている。RTPは、ユーザデータグラムプロトコル(UDP)上で動作しもよい。UDPは、インターネットプロトコル(IP)上で動作してもよい。RTPは、www.ietf.org/rfc/rfc3550.txtから入手可能なインターネット技術タスクフォース(Internet Engineering Task Force:IETF)リクエスト・フォー・コメンツ(RFC)3550に規定されている。RTP伝送では、媒体データは、RTPパケットにカプセル化される。通常、各媒体の種類または媒体符号化形式は、専用のRTPペイロード形式を有する。
【0060】
RTPセッションにより、RTPで通信する参加者群間が関連付けられる。該セッションは、多数のRTPストリームを伝送することも可能なグループ通信経路である。RTPストリームは、媒体データを含むRTPパケットのストリームである。RTPストリームは、特定のRTPセッションに属するSSRCで特定される。SSRCは、同期元またはRTPパケットヘッダにおける32ビットのSSRCフィールドである同期元識別子のいずれかを指す。同期元は、以下の特徴を有する。同期元からのすべてのパケットは同一のタイミングおよびシーケンス番号空間の一部を形成する。したがって、受信者は同期元からのパケットをグループ化して再生できる。同期元の例としては、マイクやカメラのような信号源からのパケットのストリームの送信者や、RTP混合器が挙げられる。各RTPストリームは、RTPセッション内で特有のSSRCにより特定される。RTPストリームは、論理経路とみなすことができる。
【0061】
MPEG−2伝送ストリーム(TS)は、ISO/IEC13818−1、また同様にITU−T推奨規格H.222.0に規定されており、音声、動画、およびその他の媒体を、プログラムメタデータまたはその他のメタデータとともに、多重化ストリームで伝送するためのフォーマットである。パケット識別子(PID)は、TS内の基本ストリーム(またはパケット化された基本ストリーム)を特定するために用いられる。このように、MPEG−2 TS内の論理経路は特定のPID値に対応するととらえることができる。
【0062】
入手可能なメディアファイルフォーマット規格には、ISOによるメディアファイルフォーマット(ISO/IEC14496−12、「ISOBMFF」と略呼ばれる場合もある)、MPEG−4ファイルフォーマット(ISO/IEC14496−14、「MP4フォーマット」とも呼ばれる)、NAL単位構造化ビデオ用のファイルフォーマット(ISO/IEC14496−15)、および3GPPファイルフォーマット(3GPP TS 26.244、「3GPフォーマット」とも呼ばれる)が挙げられる。ISOファイルフォーマットは、上述のすべてのファイルフォーマット(ISOファイルフォーマット自体を除く)の導出のための基盤である。これらのファイルフォーマット(ISOファイルフォーマット自体を含む)は、一般的にファイルフォーマットのISOファミリーと呼ばれる。
【0063】
ビデオコーデックは、入力されたビデオを保存/伝送に適した圧縮表現に変換するエンコーダと、その圧縮表現を可視形態に戻す復元を行うことができるデコーダとからなる。ビデオエンコーダおよび/またはビデオデコーダは、それぞれ分離していてもよい。すなわち、必ずしもコーデックを形成する必要はない。典型的なエンコーダは、ビデオをよりコンパクトな形態で(すなわち、低いビットレートで)表現するために、元のビデオシーケンスの情報の一部を切り捨てる。ビデオエンコーダは、後述するように、画像シーケンスを符号化するために使用されてもよく、ビデオデコーダは、符号化された画像シーケンスを復号するために使用されてもよい。ビデオエンコーダ、あるいはビデオエンコーダまたは画像エンコーダのイントラ符号化部は、画像を符号化するために使用されてもよく、ビデオデコーダ、あるいはビデオデコーダまたは画像デコーダのインター復号部は、符号化された画像を復号するために使用されてもよい。
【0064】
例えばITU−T H.263やH.264等の多くのエンコーダ実装例のような典型的なハイブリッドビデオエンコーダは、ビデオ情報を2段階で符号化する。第1段階で、例えば動き補償手段(符号化されるブロックと密接に対応する、先に符号化済みのビデオフレームの1つにあるエリアを探して示す手段)や空間手段(特定の方法で符号化されるブロックの周辺の画素値を用いる手段)によって、特定のピクチャエリア(または「ブロック」)の画素値が予測される。第2段階で、予測誤差、すなわち画素の予測ブロックとその画素の元のブロックとの間の差分が符号化される。これは通常、特定の変換(例えば、離散コサイン変換(Discrete Cosine Transform:DCT)やその変形)を用いて画素値の差分を変換し、係数を量子化し、量子化済み係数をエントロピー符号化することによって行われる。量子化処理の忠実度を変えることによって、エンコーダは画素表現の正確性(ピクチャ品質)と結果として得られる符号化ビデオ表現のサイズ(ファイルサイズまたは伝送ビットレート)との間のバランスを調整することができる。
【0065】
インター予測は、時間予測、動き補償、または動き補償予測とも呼ばれ、時間冗長性を小さくする。インター予測では、予測は先に復号済みのピクチャに基づく。一方、イントラ予測は、同一のピクチャ内の隣接画素同士に相関がある可能性が高いという事実に基づく。イントラ予測は、空間ドメインまたは変換ドメインで行うことができる。すなわち、サンプル値または変換係数のいずれかを予測することができる。イントラ符号化では通常イントラ予測が利用され、インター予測は適用されない。
【0066】
符号化処理の結果の1つとして、動きベクトルと量子化変換係数のような符号化パラメータセットが得られる。多くのパラメータは、最初に空間的または時間的に隣接するパラメータから予測することで、より効率的にエントロピー符号化することができる。例えば、動きベクトルは空間的に隣接する動きベクトルから予測されてもよく、動きベクトル予測器に対する相対差のみが符号化されてもよい。符号化パラメータの予測およびイントラ予測は、まとめてピクチャ内予測とも呼ばれる。
【0067】
図4は、本発明の各実施形態の利用に適したビデオエンコーダのブロック図である。
図4では、2レイヤ用のエンコーダを示す。図示のエンコーダは、1つのみのレイヤを符号化するように簡略化してもよく、あるいは3つ以上のレイヤを符号化するように拡張してもよい。
図4は、基本レイヤ用の第1のエンコーダ部500と、拡張レイヤ用の第2のエンコーダ部502とを備えるビデオエンコーダの実施形態を示す。第1のエンコーダ部500と第2のエンコーダ部502とはそれぞれ、受信するピクチャの符号化を実行するため、同様の要素を備えてもよい。エンコーダ部500、502は、画素予測器302、402と、予測誤差エンコーダ303、403と、予測誤差デコーダ304、404とを備える。
図4はさらに、インター予測器306、406と、イントラ予測器308、408と、モード選択部310、410と、フィルタ316、416と、参照フレームメモリ318、418とを備える画素予測器302、402の実施形態を示す。第1のエンコーダ部500の画素予測器302は、インター予測器306(画像と動き補償参照フレーム318との差分を判定する)と、イントラ予測器308(現フレームまたはピクチャの処理済み部分のみに基づいて、画像ブロックの予測を判定する)の両者で符号化される動画ストリームの基本レイヤ画像を300枚受信する。インター予測器およびイントラ予測器の両方の出力は、モード選択部310に送られる。イントラ予測器308は、2つ以上のイントラ予測モードを備えてもよい。この場合、各モードにおいてイントラ予測が行われ、予測信号がモード選択部310に提供されてもよい。モード選択部310は、基本レイヤピクチャ300のコピーも受信する。同様に、第2のエンコーダ部502の画素予測器402は、インター予測器406(画像と動き補償参照フレーム418との差分を判定する)と、イントラ予測器408(現フレームまたはピクチャの処理済み部分のみに基づいて、画像ブロックの予測を判定する)の両者で符号化される動画ストリームの拡張レイヤ画像を400枚受信する。インター予測器およびイントラ予測器の両方の出力は、モード選択部410に送られる。イントラ予測器408は、2つ以上のイントラ予測モードを備えてもよい。この場合、各モードにおいてイントラ予測が行われ、予測信号がモード選択部410に提供されてもよい。モード選択部410は、拡張レイヤピクチャ400のコピーも受信する。
【0068】
現在のブロックの符号化のためにいずれの符号化モードが選択されたかに応じて、インター予測器306、406の出力、任意のイントラ予測器モードの1つによる出力、またはモード選択部内のサーフェスエンコーダの出力が、モード選択部310、410の出力に送られる。モード選択部の出力は、第1の加算装置321、421に送られる。第1の加算装置は、基本レイヤピクチャ300/拡張レイヤピクチャ400から画素予測器302、402の出力を減算し、第1の予測誤差信号320、420を生成してもよい。当該信号は、予測誤差エンコーダ303、403に入力される。
【0069】
画素予測器302、402はさらに、画像ブロック312、412の予測表現と予測誤差デコーダ304、404の出力338、438の組合せを予備再構成器339、439から受け取る。予備再構成された画像314、414が、イントラ予測器308、408と、フィルタ316、416とに送られてもよい。予備表現を受け取るフィルタ316、416は、その予備表現をフィルタリングし、参照フレームメモリ318、418に保存されうる最終再構成画像340、440を出力してもよい。参照フレームメモリ318は、インター予測器306に接続され、インター予測動作において後の基本レイヤピクチャ300と比較される参照画像用に使用されてもよい。いくつかの実施形態では、基本レイヤが拡張レイヤのインターレイヤサンプル予測および/またはインターレイヤ動き情報予測の元として選択、標示されている場合、参照フレームメモリ318は、インター予測器406に接続され、インター予測動作において後の拡張レイヤピクチャ400と比較される参照画像用に使用されてもよい。さらに、参照フレームメモリ418は、インター予測器406に接続され、インター予測動作において後の拡張レイヤピクチャ400と比較される参照画像用に使用されてもよい。
【0070】
いくつかの実施形態において、基本レイヤが拡張レイヤのフィルタリングパラメータ予測の元として選択、標示されている場合、第2のエンコーダ部502に対して、第1のエンコーダ部500のフィルタ316からのフィルタリングパラメータが提供されてもよい。
【0071】
予測誤差エンコーダ303、403は、変換部342、442と量子化器344、444とを備える。変換部342、442は、第1の予測誤差信号320、420を変換ドメインに変換する。この変換は、例えばDCT変換である。量子化器344、444は、例えばDCT係数のような変換ドメイン信号を量子化し、量子化係数を生成する。
【0072】
予測誤差デコーダ304、404は予測誤差エンコーダ303、403からの出力を受信し、予測誤差エンコーダ303、403とは逆の処理を実行して、復号予測誤差信号338、438を生成する。当該信号は、第2の加算装置339、439にて画像ブロック312、412の予測表現と組み合わされて、予備再構成画像314、414が生成される。予測誤差デコーダは、逆量子化器361、461と、逆変換部363、463とを備えるものとみなすことができる。逆量子化器361、461は、例えばDCT係数のような量子化係数値を逆量子化し、変換信号を再構成する。逆変換部363、463は再構成変換信号を逆変換する。逆変換部363、463の出力は、1つ以上の再構成ブロックを含む。予測誤差デコーダはさらに、さらなる復号情報やフィルタパラメータに基づき、1つ以上の再構成ブロックをフィルタリングするブロックフィルタを備えてもよい。
【0073】
エントロピーエンコーダ330、430は、予測誤差エンコーダ303、403の出力を受信し、好適なエントロピー符号化/可変長符号化を信号に実行する。これによりエラー検出および修正が可能となる。エントロピーエンコーダ330、430の出力は、例えばマルチプレクサ508によりビットストリームに挿入されてもよい。
【0074】
H.264/AVC規格は、ITU−T(国際電気通信連合の電気通信標準化部門)のビデオの符号化専門家グループ(VCEG)およびISO(国際標準化機構)/IEC(国際電気標準会議)の動画専門家グループ(MPEG)による統合ビデオチーム(JVT)によって開発された。H.264/AVC規格は、その元となる両標準化機構によって公開されており、ITU−T勧告H.264およびISO/IEC国際規格14496−10と呼ばれ、MPEG−4パート10最新符号化方式(Advanced Video Coding:AVC)としても知られている。H.264/AVC規格には複数のバージョンがあり、それぞれが仕様に新たな拡張や特徴を統合している。これらの拡張には、スケーラブルビデオ符号化(Scalable Video Coding:SVC)やマルチビュービデオ符号化(Multiview Video Coding:MVC)が挙げられる。
【0075】
高効率ビデオ符号化(High Efficiency Video Coding:H.265/HEVCまたはHEVC)規格のバージョン1は、VCEGとMPEGのビデオの符号化共同研究開発チーム(JCT−VC)によって開発された。この規格は、その元となる両標準化機構によって公開されており、ITU−T勧告H.265およびISO/IEC国際規格23008−2と呼ばれ、MPEG−Hパート2高効率ビデオ符号化として知られている。H.265/HEVCのバージョン2は、スケーラブル拡張、マルチビュー拡張、および忠実度範囲拡張を含み、それぞれSHVC、MV−HEVC、およびREXTと略呼ばれる。H.265/HEVCのバージョン2は、ITU−T勧告H.265(2014年10月)として先に刊行されており、2015年にISO/IEC23008−2の第2版として刊行される見込みである。H.265/HEVCのさらなる拡張版を開発する標準化プロジェクトも現在進められている。当該拡張版には、3次元およびスクリーンコンテンツ符号化拡張(それぞれ、3D−HEVC、SCCと略呼ばれる)が含まれている。
【0076】
SHVC、MV−HEVC、および3D−HEVCは、HEVC規格のバージョン2の添付資料(Annex)Fに規定されている共通基準仕様を用いている。この共通基準は、例えば高レベルのシンタックスおよび意味を含む。これによって例えばインターレイヤ依存性等のビットストリームのレイヤの一部の特性や、インターレイヤ参照ピクチャを含む参照ピクチャリスト構造やマルチレイヤビットストリームに対するピクチャ順カウント導出等の復号処理が規定される。添付資料Fは、さらにHEVCの後続のマルチレイヤ拡張にも使用できる。以下において、ビデオエンコーダ、ビデオデコーダ、符号化方法、復号方法、ビットストリーム構造、および/または実施形態は、SHVCおよび/またはMV−HEVCといった特定の拡張を参照して説明されるが、これらはHEVCの任意のマルチレイヤ拡張にも広く適用可能であり、さらには任意のマルチレイヤビデオの符号化方式にも適用可能であることは理解されよう。
【0077】
ここでは、H.264/AVCおよびHEVCの重要な定義やビットストリーム、符号化の構造、概念の一部が、実施形態を実施可能なビデオエンコーダやデコーダ、符号化方法、復号方法、ビットストリーム構造の例として説明される。H.264/AVCの重要な定義やビットストリーム、符号化の構造、概念の中にはHEVCにおける規格と同一のものもある。したがって、以下ではこれらも一緒に説明される。本発明の態様は、H.264/AVCやHEVCに限定されるものではなく、本明細書は本発明が部分的にまたは全体として実現される上で可能な原理を説明するためのものである。
【0078】
先行する多くのビデオの符号化規格と同様に、H.264/AVCおよびHEVCは、エラーのないビットストリームのための復号処理に加えてビットストリームのシンタックスと意味についても規定している。符号化処理については規定されていないが、エンコーダは適合するビットストリームを生成する必要がある。ビットストリームとデコーダの適合性は、仮想参照デコーダ(Hypothetical Reference Decoder:HRD)を用いて検証できる。この規格は、伝送エラーや伝送損失対策を助ける符号化ツールを含むが、こうしたツールを符号化で用いることは任意に選択可能であって、誤ったビットストリームに対する復号処理は規定されていない。
【0079】
現存の規格に関する記述においても例示的実施形態の記述と同様に、シンタックス要素はビットストリームで表されるデータの要素として定義することができる。シンタックス構造は、特定の順序でビットストリームにおいて共存する0以上のシンタックス要素として定義されてもよい。現存の規格に関する記述においても例示的実施形態の記述と同様に、「外部手段によって」や「外部手段を介して」という表現が使用できる。例えば、シンタックス構造や復号処理において用いられる変数の値といったエンティティは、「外部手段によって」該復号処理に提供されてもよい。「外部手段によって」という表現は、このエンティティがエンコーダによって作成されたビットストリームに含まれるものではなく、ビットストリームの外部から、例えば制御プロトコルを用いて持ち込まれたことを示しうる。これに代えて、または加えて、「外部手段によって」という表現は、該エンティティがエンコーダによって作成されたものではなく、例えばデコーダを用いるプレーヤまたは復号制御論理回路等によって作成されたことを示しうる。このデコーダは、変数値等の外部手段を入力するインタフェースを有してもよい。
【0080】
H.264/AVCまたはHEVCエンコーダへの入力およびH.264/AVCまたはHEVCデコーダからの出力の基本単位は、それぞれピクチャである。エンコーダへの入力として与えられたピクチャはソースピクチャとも呼ばれ、デコーダによって復号されたピクチャは復号ピクチャとも呼ばれる。
【0081】
ソースピクチャおよび復号ピクチャは、それぞれ以下のサンプル配列のセットのいずれかのような、1つ以上のサンプル配列からなっている。
・輝度(Luma)(Y)のみ(モノクロ)
・輝度および2つのクロマ(YCbCrまたはYCgCo)
・緑、青、赤(GBRまたはRGB)
・その他の非特定モノクロまたは三刺激色サンプリングを示す配列(例えば、YZX、またはXYZ)
【0082】
以下では、これらの配列は、実際に使用されている色表現方法に関わらず、輝度(LまたはY)およびクロマと呼ばれ、2つのクロマ配列はCbおよびCrとも呼ばれる。実際に使用されている色表現方法は、例えばH.264/AVCおよび/またはHEVCのビデオユーザビリティ情報(VUI)シンタックスを使用して、符号化されたビットストリームにおいて示されることができる。ある成分が、3つのサンプル配列(輝度および2つのクロマ)の内の1つから配列または単一のサンプルとして定義されるか、モノクロフォーマットのピクチャを構成する配列または配列の単一のサンプルとして定義されてもよい。
【0083】
H.264/AVCおよびHEVCでは、ピクチャはフレームまたはフィールドのいずれかであってもよい。フレームは、輝度サンプルと場合により対応する色差(クロマ)サンプルの行列を含む。フィールドは、フレームの1つおきのサンプル行の組であり、ソース信号がインターレースである場合、エンコーダ入力として用いられてもよい。クロマサンプル配列はなくてもよく(よって、モノクロサンプリングが使用される)、または輝度サンプル配列と比較されるときにサブサンプリングされてもよい。クロマフォーマットは、以下のようにまとめられる。
・モノクロサンプリングでは、サンプル配列が1つのみ存在し、名目上輝度配列とみなされる。
・4:2:0サンプリングでは、2つのクロマ配列のそれぞれが輝度配列の半分の高さと半分の幅を有する。
・4:2:2サンプリングでは、2つのクロマ配列のそれぞれが輝度配列と同じ高さと半分の幅を有する。
・4:4:4サンプリングでは、別個の色平面が使用されない場合、2つのクロマ配列のそれぞれが輝度配列と同じ高さと幅を有する。
【0084】
H.264/AVCおよびHEVCでは、サンプル配列を別個の色平面としてビットストリームに符号化し、そのビットストリームから別個に符号化された色平面をそれぞれ復号することができる。別個の色平面が使用される場合、そのそれぞれは(エンコーダおよび/またはデコーダによって)モノクロサンプリングのピクチャとして別々に処理される。
【0085】
パーティショニングとは、1つのセットの各要素が正確にサブセットの1つであるように、そのセットを複数のサブセットに分割することと定義することができる。
【0086】
H.264/AVCでは、マクロブロックとは、16×16ブロックの輝度サンプルと対応するクロマサンプルのブロックである。例えば、4:2:0サンプリングパターンでは、1つのマクロブロックには各クロマ成分について、1つの8×8ブロックのクロマサンプルを含む。H.264/AVCでは、ピクチャが1つ以上のスライスグループに分割(パーティショニング)され、1つのスライスグループには1つ以上のスライスを含む。H.264/AVCでは、スライスは整数のマクロブロックからなり、特定のスライスグループ内でラスタースキャンの順に連続している。
【0087】
HEVC符号化および/または復号の動作の記述に関して、以下の用語が用いられる場合がある。符号化ブロックは、符号化ツリーブロックが符号化ブロックへパーティショニングにより分割されるように、何らかの値NについてのサンプルのN×Nブロックとして定義することができる。符号化ツリーブロック(CTB)は、ある成分の符号化ツリーブロックへパーティショニングにより分割されるように、何らかの値NについてのサンプルのN×Nブロックとして定義することができる。符号化ツリー単位(Coding Tree Unit:CTU)は、輝度サンプルの符号化ツリーブロックとして定義することができ、これは3つのサンプル配列を有するピクチャのクロマサンプルの2つの対応する符号化ツリーブロックや、モノクロピクチャのサンプルまたは3つの別個の色平面やサンプルを符号化するために使用されるシンタックス構造を用いて符号化されるピクチャのサンプルの符号化ツリーブロックである。符号化単位(Coding Unit:CU)は、輝度サンプルの符号化ブロックとして定義することができ、これは3つのサンプル配列を有するピクチャのクロマサンプルの2つの対応する符号化ブロックや、モノクロピクチャのサンプルまたは3つの別個の色平面やサンプルを符号化するために使用されるシンタックス構造を用いて符号化されるピクチャのサンプルの符号化ブロックである。
【0088】
高効率ビデオ符号化(HEVC)コーデック等の一部のビデオコーデックでは、ビデオピクチャは、ピクチャのエリアを網羅する複数の符号化単位(CU)に分割される。CUは、CU内のサンプルに対する予測処理を定義する1つ以上の予測単位(Prediction Unit:PU)と、該CU内のサンプルに対する予測誤差符号化処理を定義する1つ以上の変換単位(Transform Unit:TU)からなる。通常CUは、正方形のサンプルブロックからなり、規定されている可能なCUサイズの組から選択可能なサイズを有する。最大許容サイズのCUは、最大符号化単位(Largest Coding Unit:LCU)または符号化ツリー単位(CTU)と呼ばれることもあり、ビデオピクチャは重なり合わないLCUに分割される。LCUは、例えば該LCUと分割の結果得られるCUを再帰的に分割することによってさらに小さいCUの組合せに分割されることもある。分割の結果得られる各CUは通常、少なくとも1つのPUとそれに関連する少なくとも1つのTUを有する。PUとTUはそれぞれ、予測処理と予測誤差符号化処理の粒度を上げるために、さらに小さい複数のPUとTUに分割されることもある。各PUは、そのPU内の画素に適用される予測の種類を定義する、該PUに関連した予測情報(例えば、インター予測されたPUに対しては動きベクトルの情報、イントラ予測されたPUに対してはイントラ予測の方向情報)を有する。
【0089】
各TUは、そのTU内のサンプルに対する予測誤差復号処理を記述する情報(例えばDCT係数情報を含む)に関連付けられる。通常、各CUに対して予測誤差符号化が適用されるか否かがCUレベルでシグナリングされる。CUに関連する予測誤差の残差がない場合、そのCUに対するTUが存在しないとみなされる。画像をCUに分割し、CUをPUとTUに分割することは通常、デコーダがこうした単位から目的の構造を再生できるようにビットストリームでシグナリングされる。
【0090】
HEVCでは、ピクチャは、長方形であり整数のLCUを含むタイルに分割される。HEVCでは、タイルへの分割(パーティショニング)によって正規グリッド(regular grid)が形成され、タイルの高さと幅は最大のLCUに応じて異なる。HEVCでは、スライスは、1つの独立スライスセグメントと、(存在する場合)それに続き同一のアクセス単位内で(存在する場合)次の独立スライスセグメントより前のすべての従属スライスセグメントに含まれる整数の符号化ツリー単位として定義される。HEVCでは、スライスセグメントは、タイルスキャン順に連続している、単一のNAL単位に含まれる整数の符号化ツリー単位として定義される。各ピクチャのスライスセグメントへの分割はパーティショニングである。HEVCでは、独立スライスセグメントは、スライスセグメントヘッダのシンタックス要素値が前のスライスセグメントの値から推定されないようなスライスセグメントと定義され、従属スライスセグメントは、スライスセグメントヘッダのシンタックス要素の一部の値が復号順で前の独立スライスセグメントの値から推定されるようなスライスセグメントと定義される。HEVCでは、スライスヘッダは、現在のスライスセグメント、または現在の従属スライスセグメントより前の独立スライスセグメントである、独立スライスセグメントのスライスセグメントヘッダと定義され、スライスセグメントヘッダは、スライスセグメントに現れる先頭のまたはすべての符号化ツリー単位に関するデータ要素を含む符号化スライスセグメントの一部と定義される。CUは、タイルが使用されていない場合、タイル内またはピクチャ内のLCUのラスタースキャンの順にスキャンされる。LCU内において、CUは特定のスキャン順を有する。
【0091】
デコーダは、予測された画素ブロックの表現を形成して(エンコーダが作成し、圧縮表現に格納された、動き情報または空間情報を使用)、予測誤差を復号するために(空間画素ドメインで量子化された予測誤差信号を回復する、予測誤差符号化の逆操作を使用)、エンコーダと同様の予測手段を適用することによって出力ビデオを再構成する。予測および予測誤差復号手段の適用後、デコーダは、出力ビデオフレームを形成するために予測信号と予測誤差信号(画素値)を足し合わせる。デコーダ(およびエンコーダ)は、出力ビデオをディスプレイに送る、および/または後続フレーム用予測の参照としてビデオシーケンスに格納する前に、出力ビデオの品質を向上するために追加フィルタリング手段を適用することもできる。
【0092】
フィルタリングは、例えば、デブロッキング、適応サンプルオフセット(Sample Adaptive Offset:SAO)、および/または適応ループフィルタリング(Adaptive Loop Filtering:ALF)の内の1つ以上を含んでもよい。H.264/AVCはデブロッキングを含み、一方、HEVCはデブロッキングとSAOの両方を含む。
【0093】
典型的なビデオコーデックでは、動き情報は、予測単位等の動き補償された画像ブロックのそれぞれに関連する動きベクトルで示される。こうした動きベクトルはそれぞれ、(エンコーダ側で)符号化されるピクチャまたは(デコーダ側で)復号されるピクチャの画像ブロックと、先に符号化または復号されたピクチャの1つにおける予測元ブロックとの間の移動量を表す。動きベクトルを効率よく表現するために、動きベクトルは通常、ブロック固有の予測動きベクトルに関して差動符号化されてもよい。典型的なビデオコーデックにおいて、予測動きベクトルは所定の方法、例えば、隣接ブロックの符号化/復号動きベクトルの中央値を計算することによって生成される。動きベクトル予測を行う別の方法は、時間参照ピクチャにおける隣接ブロックおよび/または同位置のブロックから予測候補のリストを作成し、選択された候補を動きベクトルの予測として信号で伝えるものである。動きベクトルの値の予測に加え、いずれの参照ピクチャが動き補償予測に用いられるかを予測することができ、この予測情報を例えば先に符号化/復号されたピクチャの参照インデックスによって表すことができる。参照インデックスは通常、時間参照ピクチャにおける隣接ブロックおよび/または同位置のブロックから予測される。また、典型的な高効率ビデオコーデックでは追加的な動き情報符号化/復号機構を用い、通常、マージングまたはマージモードと呼ばれる。ここで、すべての動きフィールド情報は、利用可能な参照ピクチャリストの各々について動きベクトルと対応する参照ピクチャインデックスを含んで、予測され、その他の変更/修正を行わずに使用される。同様に、動きフィールド情報の予測は、時間参照ピクチャにおける隣接ブロックおよび/または同位置のブロックの動きフィールド情報を用いて行われ、使用された動きフィールド情報は、利用可能な隣接/同位置のブロックの動きフィールド情報が含まれる動きフィールド候補のリストに信号で伝えられる。
【0094】
典型的なビデオコーデックは、単予測と双予測の使用が可能である。単予測では単一の予測ブロックを符号化/復号対象ブロックに使用し、双予測では2つの予測ブロックを組み合わせて、符号化/復号対象ブロックに対する予測を実現する。一部のビデオコーデックでは、残差情報を加える前に予測ブロックのサンプル値が重み付けされる重み付け予測が可能である。例えば、乗法重み付け係数および加法補正値を適用することができる。一部のビデオコーデックによって実現される直接的な重み付け予測では、重み付け係数および補正値は、例えば許容される参照ピクチャインデックスごとにスライスヘッダにおいて符号化されてもよい。一部のビデオコーデックによって実現される間接的な重み付け予測では、重み付け係数および/または補正値は符号化されず、例えば参照ピクチャの相対ピクチャ順数(Relative Picture Order Count:POC)の距離に基づいて導出される。
【0095】
典型的なビデオコーデックにおいて、動き補償後の予測残差は最初に(DCTのような)変換カーネルで変換され、次に符号化される。これは、残差間にも相関があり、こうした変換が多くの場合でこのような相関を小さくするのに役立ち、より高い効率での符号化を可能にするからである。
【0096】
典型的なビデオエンコーダは、例えば所望のマクロブロックモードおよび関連する動きベクトルといった最適な符号化モードを探索するために、ラグランジュ費用関数(Lagrangian cost function)を利用する。この種の費用関数は、非可逆符号化方法による(正確な、または推定された)画像歪みと、画像エリアの画素値を表現するのに必要である(正確な、または推定された)情報量を一緒に固定するために、重み付け係数λを使用する。
C = D + λR (1)
ここで、Cは最小化すべきラグランジュ費用、Dはそのモードおよび考慮される動きベクトルによる画像歪み(例えば平均二乗誤差)、Rはデコーダで画像ブロックを再構成するために必要なデータ(候補の動きベクトルを表すためのデータ量を含む)を表すのに必要なビット数である。
【0097】
ビデオ符号化規格および標準は、エンコーダが符号化ピクチャを符号化スライス等に分割可能にするものであってもよい。通常、スライス境界をまたぐピクチャ内予測は無効である。したがって、スライスは符号化ピクチャを独立に復号可能な部分に分割する方法だと考えられる。H.264/AVCおよびHEVCでは、スライス境界をまたぐピクチャ内予測が無効でもよい。したがって、スライスは符号化ピクチャを独立に復号可能な部分に分割する方法だと考えられることもあり、このため、伝送の基本単位とみなされることが多い。多くの場合、エンコーダは、ピクチャ内予測のどの種類がスライス境界をまたぐ際に止められているかをビットストリームで示してもよい。この情報は、デコーダの動作によって、どの予測ソースが利用可能であるかを決定する際などに考慮される。例えば、隣接するマクロブロックやCUが別のスライスに存在する場合、その隣接するマクロブロックやCUからのサンプルはイントラ予測には利用できないとみなされてもよい。
【0098】
H.264/AVCまたはHEVCのエンコーダからの出力およびH.264/AVCまたはHEVCのデコーダへの入力のための基本単位はそれぞれ、ネットワーク抽象化層(Network Abstraction Layer:NAL)単位である。パケット指向ネットワークでの伝送や構造化ファイルへの格納に対して、NAL単位はパケットや同様の構造にカプセル化されてもよい。H.264/AVCおよびHEVCでは、フレーム構造を提供しない伝送や格納の環境に対してバイトストリームフォーマットが特定されている。バイトストリームフォーマットは、各NAL単位の先頭に開始コードを付与することによってNAL単位同士を分離する。NAL単位境界の誤検出を防止するために、エンコーダはバイト指向開始コードエミュレーション防止アルゴリズムを実行する。このアルゴリズムでは、開始コードが別の形で生じた場合にNAL単位ペイロードにエミュレーション防止バイトを追加する。パケット指向システムとストリーム指向システムとの間の直接的なゲートウェイ動作を可能とするために、バイトストリームフォーマットが使用されているか否かに関係なく常に開始コードエミュレーション防止が行われてもよい。NAL単位は、後続データの種類の標示を含むシンタックス構造と、未加工バイトシーケンスペイロード(RBSP)の形態で必要に応じてエミュレーション防止バイトを散在させたデータを含む複数のバイトとして定義することができる。RBSPは、NAL単位にカプセル化される整数のバイトを含むシンタックス構造として定義することができる。RBSPは空であるか、RBSPストップビットおよび0に等しい後続のビットが0個以上続くシンタックス要素を含むデータビット列の形態を持つかのいずれかである。
【0099】
NAL単位はヘッダとペイロードからなる。H.264/AVCおよびHEVCでは、NAL単位ヘッダはNAL単位の種類を示す。
【0100】
H.264/AVCのNAL単位ヘッダは2ビットのシンタックス要素であるnal_ref_idcを含み、これが0のときはNAL単位に含まれる符号化スライスが非参照ピクチャの一部であることを示し、0を超えるときはNAL単位に含まれる符号化スライスが参照ピクチャの一部であることを示す。SVCおよびMVCのNAL単位のヘッダは、スケーラビリティおよびマルチビュー階層に関する各種標示を追加で含んでもよい。
【0101】
HEVCでは、規定されるNAL単位のすべての種類に対して2バイトのNAL単位ヘッダが使用される。NAL単位ヘッダには、1ビットの予約ビットと6ビットのNAL単位種類の標示、時間レベルに対する3ビットのnuh_temporal_id_plus1標示(1以上であることが必要な場合がある)、6ビットのnuh_layer_idシンタックス要素が含まれる。temporal_id_plus1シンタックス要素はNAL単位の時間識別子とみなされ、ゼロベースのTemporalId 変数は次のように算出することができる。
TemporalId = temporal_id_plus1 − 1
TemporalId が0のときは、最下位時間レベルに対応する。2つのNAL単位ヘッダバイトを含む開始コードエミュレーションを避けるために、temporal_id_plus1の値はゼロでない値が求められる。選択された値以上のTemporalId を持つすべてのVCL−NAL単位を除外し、それ以外のすべてのVCL−NAL単位を含めることによって生成されたビットストリームが適合するものである。その結果、TIDと等しいTemporalId を持つピクチャは、TIDを超えるTemporalId を持つどのピクチャもインター予測の参照として使用しない。サブレイヤまたは時間サブレイヤは、TemporalId 変数の特定の値を持つVCL−NAL単位および関連する非VCL−NAL単位からなる時間スケーラブルビットストリームの時間スケーラブルレイヤとして定義されてもよい。nuh_layer_idは、スケーラビリティレイヤ識別子として理解できる。
【0102】
NAL単位は、ビデオ符号化層(Video Coding Layer:VCL)のNAL単位と、非VCL−NAL単位とに分類できる。VCL−NAL単位は通常、符号化スライスNAL単位である。H.264/AVCでは、符号化スライスNAL単位は1つ以上の符号化マクロブロックを表すシンタックス要素を含み、そのそれぞれが非圧縮ピクチャにおけるサンプルの1ブロックに対応する。HEVCでは、VCLNAL単位は1つ以上のCUを表すシンタックス要素を含む。
【0103】
H.264/AVCでは、符号化スライスNAL単位は、瞬時復号リフレッシュ(Instantaneous Decoding Refresh:IDR)ピクチャの符号化スライスまたは非IDRピクチャにおける符号化スライスであると示されうる。
【0104】
HEVCでは、符号化スライスNAL単位は以下の種類の内の1つであると示されうる。
【0105】
HEVCでは、ピクチャ種類の略語は、末尾(TRAIL)ピクチャ、時間サブレイヤアクセス(Temporal Sub-layer Access:TSA)、段階的時間サブレイヤアクセス(Step-wise Temporal Sub-layer Access:STSA)、ランダムアクセス復号可能先頭(Random Access Decodable Leading:RADL)ピクチャ、ランダムアクセススキップ先頭(Random Access Skipped Leading:RASL)ピクチャ、リンク切れアクセス(Broken Link Access:BLA)ピクチャ、瞬時復号リフレッシュ(IDR)ピクチャ、クリーンランダムアクセス(CRA)ピクチャと定義することができる。
【0106】
イントラランダムアクセスポイント(IRAP)ピクチャとも呼ばれるランダムアクセスポイント(RAP)ピクチャは、各スライスまたはスライスセグメントが16以上23以下の範囲にnal_unit_typeを有するピクチャである。独立したレイヤのIRAPピクチャは、イントラ符号化スライスのみを含む。nuh_layer_id値がcurrLayerIdの予測されたレイヤに属するIRAPピクチャは、P、B、Iスライスを含むことができ、nuh_layer_idがcurrLayerIdに等しいその他のピクチャからのインター予測を使用することができず、その直接参照レイヤからのインターレイヤ予測を使用してもよい。HEVCの現行バージョンでは、IRAPピクチャは、BLAピクチャ、CRAピクチャ、またはIDRピクチャであってもよい。基本レイヤを含むビットストリームの最初のピクチャは、該基本レイヤにおけるIRAPピクチャである。必須パラメータセットがアクティブ化される必要があるときに利用可能であるならば、独立レイヤのIRAPピクチャおよび該独立レイヤ内の復号順で後続のすべての非RASLピクチャは、復号順でIRAPピクチャより前のピクチャに復号処理を行うことなく、正しく復号することができる。アクティブ化する必要のあるときに必須パラメータセットが利用可能な場合、また、nuh_layer_idがcurrLayerIdに等しいレイヤの各直接参照レイヤの復号が初期化された場合(すなわち、nuh_layer_idがcurrLayerIdに等しいレイヤの直接参照レイヤのすべてのnuh_layer_id値に等しいrefLayerIdに対して、LayerInitializedFlag[ refLayerId ]が1に等しい)、nuh_layer_id値がcurrLayerIdの予測されたレイヤに属するIRAPピクチャと、nuh_layer_idがcurrLayerIdに等しい復号順で後続のすべての非RASLピクチャは、復号順でIRAPピクチャの前にあるnuh_layer_idがcurrLayerIdに等しいいずれのピクチャについても復号処理を行うことなく、正しく復号することができる。IRAPピクチャではないイントラ符号化スライスのみを含むビットストリームにピクチャが存在することもある。
【0107】
HEVCでは、CRAピクチャが復号順でビットストリームの最初のピクチャであってもよく、ビットストリームの後の方で現れてもよい。HEVCではCRAピクチャによって、いわゆる先頭ピクチャが復号順でCRAピクチャの後であるが出力順ではそれより前になる。先頭ピクチャの中のいわゆるRASLピクチャは、参照としてCRAピクチャより前に復号されるピクチャを用いてもよい。復号順および出力順で共にCRAピクチャより後のピクチャは、CRAピクチャでランダムアクセスが行われる場合に復号可能となり、そのため、クリーンランダムアクセスは、IDRピクチャのクリーンランダムアクセス機能と同様にして実現される。
【0108】
CRAピクチャは、関連するRADLまたはRASLピクチャを有することもある。CRAピクチャが復号順でビットストリームの最初のピクチャである場合、CRAピクチャは、復号順で符号化ビデオシーケンスの最初のピクチャであり、いずれの関連するRASLピクチャもデコーダから出力されず、復号できない可能性がある。その理由は、これらのピクチャにはビットストリームに現れないピクチャに対する参照が含まれる可能性があるためである。
【0109】
先頭ピクチャは、出力順で関連するRAPピクチャよりも先のピクチャである。関連するRAPピクチャは、(存在する場合は)復号順で前のRAPピクチャである。先頭ピクチャはRADLピクチャまたはRASLピクチャのいずれかである。
【0110】
すべてのRASLピクチャは、関連するBLAまたはCRAピクチャの先頭ピクチャである。関連するRAPピクチャがBLAピクチャまたはビットストリームにおける最初の符号化ピクチャである場合、RASLピクチャは出力されず、正しく復号されないかもしれない。その理由は、RASLピクチャにはビットストリームに現れないピクチャに対する参照が含まれる可能性があるためである。しかし、RASLピクチャの関連するRAPピクチャより前のRAPピクチャから復号が始まっていた場合、RASLピクチャを正しく復号することができる。RASLピクチャは、非RASLピクチャの復号処理のための参照ピクチャとして使用されない。すべてのRASLピクチャは、存在する場合、復号順で同一の関連するRAPピクチャのすべての末尾ピクチャよりも前にある。HEVC規格のドラフトの中には、RASLピクチャを破棄用タグ付き(Tagged for Discard:TFD)ピクチャと呼ぶものもあった。
【0111】
すべてのRADLピクチャは先頭ピクチャである。RADLピクチャは、同一の関連するRAPピクチャにおける末尾ピクチャの復号処理のための参照ピクチャとして使用されない。すべてのRADLピクチャは、存在する場合、復号順で同一の関連するRAPピクチャのすべての末尾ピクチャよりも前にある。RADLピクチャは、復号順で関連するRAPピクチャより前のいずれのピクチャも参照しない。したがって、復号が関連するRAPピクチャから始まる場合、該RADLピクチャを正しく復号することができる。HEVC規格のドラフトの中には、RADLピクチャを復号可能先頭ピクチャ(Decodable Leading Picture:DLP)と呼ぶものもあった。
【0112】
CRAピクチャから始まるビットストリームの一部が別のビットストリームに含まれる場合、このCRAピクチャに関連するRASLピクチャは、その参照ピクチャの一部が合成ビットストリームにも存在しない可能性があるため、正しく復号されない可能性がある。こうした接合動作を直接的に行うために、CRAピクチャのNAL単位種類は、それがBLAピクチャであることを示すように変更することができる。BLAピクチャに関連するRASLピクチャは正しく復号できない可能性があり、よって、出力/表示もされない。また、BLAピクチャに関連するRASLピクチャでは復号処理を省略することもある。
【0113】
BLAピクチャが復号順でビットストリームの最初のピクチャであってもよく、ビットストリームの後の方で現れてもよい。各BLAピクチャは新たな符号化ビデオシーケンスを開始し、復号処理に対してIDRピクチャと同様の影響を及ぼす。しかし、BLAピクチャは、空でない参照ピクチャセットを特定するシンタックス要素を含む。BLAピクチャは、BLA_W_LPに等しいnal_unit_typeを有する場合、関連するRASLピクチャを有する場合もあり、これらのRASLピクチャはデコーダから出力されず、復号できない可能性がある。これは、これらのピクチャにはビットストリームに現れないピクチャに対する参照が含まれる可能性があるためである。BLAピクチャはBLA_W_LPに等しいnal_unit_typeを有する場合、関連するRADLピクチャを備えてもよく、これらのRADLピクチャは復号されるべきか特定される。BLAピクチャは、BLA_W_DLPに等しいnal_unit_typeを有する場合、関連するRASLピクチャを有さず、関連するRADLピクチャを備えてもよく、これらのRADLピクチャは復号されるべきか特定される。BLAピクチャは、BLA_N_LPに等しいnal_unit_typeを有する場合、関連する先頭ピクチャを有さない。
【0114】
IDR_N_LPに等しいnal_unit_typeを有するIDRピクチャは、ビットストリームに関連する先頭ピクチャを有さない。IDR_W_LPに等しいnal_unit_typeを有するIDRピクチャは、ビットストリームに関連するRASLピクチャを有さず、ビットストリームに関連するRADLピクチャを備えてもよい。
【0115】
nal_unit_typeの値が、TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、またはRSV_VCL_N14に等しい場合、復号ピクチャは同一時間サブレイヤの他のピクチャに対する参照として使用されない。すなわち、HEVCでは、nal_unit_typeの値が、TRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、またはRSV_VCL_N14に等しい場合、復号ピクチャは、TemporalId が同じ値のピクチャのRefPicSetStCurrBefore、RefPicSetStCurrAfter、RefPicSetLtCurrのいずれにも含まれない。nal_unit_typeがTRAIL_N、TSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、またはRSV_VCL_N14に等しい符号化ピクチャは、TemporalId が同じ値の他のピクチャの復号可能性に影響を与えないように破棄されてもよい。
【0116】
末尾ピクチャは、出力順で関連するRAPピクチャより後のピクチャとして定義することができる。末尾ピクチャであるいずれのピクチャも、RADL_N、RADL_R、RASL_N、またはRASL_Rに等しいnal_unit_typeを有さない。先頭ピクチャであるピクチャはいずれも、復号順で、同一のRAPピクチャに関連するすべての末尾ピクチャより前であるように制限されてもよい。nal_unit_typeがBLA_W_DLPまたはBLA_N_LPであるBLAピクチャに関連するRASLピクチャは、ビットストリームには存在しない。BLA_N_LPに等しいnal_unit_typeを有するBLAピクチャまたはIDR_N_LPに等しいnal_unit_typeを有するIDRピクチャに関連するRADLピクチャは、ビットストリームには存在しない。CRAまたはBLAピクチャに関連するRASLピクチャはいずれも、出力順で、CRAまたはBLAピクチャに関連するいずれのRADLピクチャよりも前にあるように制限されてもよい。CRAピクチャに関連するRASLピクチャはいずれも、復号順でCRAピクチャよりも前にある他のいずれのRAPピクチャよりも、出力順で後になるように制限されてもよい。
【0117】
HEVCでは、TSAとSTSAという2つのピクチャ種類があり、時間サブレイヤの切り替ポイントに示すために使用することができる。TSAまたはSTSAピクチャ(そのいずれか)およびTSAまたはSTSAピクチャのTemporalId がN+1に等しくなるまで、TemporalId がNまでの時間サブレイヤが破棄されてきた場合、TSAまたはSTSAピクチャは、TemporalId がN+1であるすべての(復号順で)後続のピクチャの復号を可能にする。TSAピクチャ種類は、TSAピクチャ自体に加え、同一のサブレイヤにおいて復号順でそのTSAピクチャより後のすべてのピクチャに対して制限を加えてもよい。こうしたピクチャはいずれも、同一のサブレイヤにおいて復号順でTSAピクチャより前のピクチャからのインター予測の使用が許容されない。TSAの規定は、上位サブレイヤにおいて復号順でTSAピクチャに続くピクチャに対して制限をさらに加えてもよい。これらのピクチャはいずれも、TSAピクチャと同一または上位のサブレイヤに属する場合、復号順でTSAピクチャより前のピクチャに対してピクチャの参照が許容されない。TSAピクチャは0を超えるTemporalId を有する。STSAはTSAピクチャと同様であるが、上位サブレイヤにおいて復号順でSTSAピクチャより後のピクチャに対して制限を加えない。したがって、STSAピクチャが存在するサブレイヤに対してのみアップスイッチングが可能となる。
【0118】
非VCL−NAL単位は、例えば、シーケンスパラメータセット、ピクチャパラメータセット、補助拡張情報(Supplemental Enhancement Information:SEI)NAL単位、アクセス単位区切り、シーケンスNAL単位の一端、ビットストリームNAL単位の一端、または補充データNAL単位のいずれかの種類であってもよい。パラメータセットは復号ピクチャの再構成に必要であってもよいが、他の非VCL−NAL単位の多くは、復号サンプル値の再構成には必要ない。
【0119】
符号化ビデオシーケンスで不変のパラメータがシーケンスパラメータセットに含まれてもよい。復号処理に必要なパラメータに加え、シーケンスパラメータセットがビデオユーザビリティ情報(Video Usability Information:VUI)を含んでもよい。これは、バッファリングやピクチャ出力タイミング、レンダリング、およびリソース予約に重要なパラメータを含む。H.264/AVCでは、シーケンスパラメータセットを運ぶため、H.264/AVCのVCL−NAL単位用データすべてをシーケンスに含むシーケンスパラメータセットNAL単位、補助符号化ピクチャ用データを含むシーケンスパラメータセット拡張NAL単位、MVCおよびSVC VCL−NAL単位用のサブセット・シーケンスパラメータセットの3つのNAL単位が規定されている。HEVCでは、シーケンスパラメータセットRBSPには、1つ以上のピクチャパラメータセットRBSP、またはバッファリング期間SEIメッセージを含む1つ以上のSEI−NAL単位によって参照可能なパラメータが含まれる。ピクチャパラメータセットは、複数の符号化ピクチャで不変であるようなパラメータを含む。ピクチャパラメータセットRBSPは、1つ以上の符号化ピクチャの符号化スライスNAL単位によって参照可能なパラメータを含んでもよい。
【0120】
HEVCでは、ビデオパラメータセット(VPS)は、0以上の符号化ビデオシーケンス全体に対して適用するシンタックス要素を含むシンタックス構造として定義することができる。該ビデオシーケンスは、各スライスセグメントヘッダにおいて探索されるシンタックス要素によって参照されるPPSにおいて探索されるシンタックス要素によって参照されるSPSにおいて探索されるシンタックス要素のコンテンツによって決定される。
【0121】
ビデオパラメータセットRBSPは、1つ以上のシーケンスパラメータセットRBSPによって参照可能なパラメータを含んでもよい。
【0122】
ビデオパラメータセット(VPS)、シーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)の間の関係および階層は次のように記述できる。VPSは、スケーラビリティおよび/または3Dビデオの背景において、パラメータセット階層でSPSの1段上に位置する。VPSは、すべての(スケーラビリティまたはビュー)レイヤにわたって全スライスに共通なパラメータを符号化ビデオシーケンス全体に含んでもよい。SPSは、特定の(スケーラビリティまたはビュー)レイヤにおける全スライスに共通なパラメータを符号化ビデオシーケンスの全体に含み、複数の(スケーラビリティまたはビュー)レイヤで共有されてもよい。PPSは、特定のレイヤ表現(1つのアクセス単位における1つのスケーラビリティまたはビューレイヤの表現)における全スライスに共通なパラメータを含み、複数のレイヤ表現における全スライスで共有される傾向にある。
【0123】
VPSは、符号化ビデオシーケンス全体においてすべての(スケーラビリティまたはビュー)レイヤにわたって全スライスに適用可能なその他多くの情報を提供しうるが、さらにビットストリーム内のレイヤの依存関係に関する情報を提供してもよい。VPSは、基本VPSおよびVPS拡張の2つの部分を含むとみなされてもよく、この内、VPS拡張が含まれるかは任意に選択可能であってもよい。HEVCでは、基本VPSは、vps_extension( )シンタックス構造を含まず、video_parameter_set_rbsp( )シンタックス構造を含むとみなされてもよい。video_parameter_set_rbsp( )シンタックス構造は、HEVCのバージョン1で既に規定されており、基本レイヤの復号に使用できるシンタックス要素を含む。HEVCでは、VPS拡張は、vps_extension( )シンタックス構造を含むとみなされてもよい。vps_extension( )シンタックス構造は、HEVCのバージョン2で特にマルチレイヤ拡張について規定されており、レイヤ依存関係を示すシンタックス要素等の1つ以上の非基本レイヤの復号に使用できるシンタックス要素を含む。
【0124】
VPS拡張におけるシンタックス要素max_tid_il_ref_pics_plus1は、非IRAPピクチャがインターレイヤ予測の参照に使用されていないことを示し、これに該当しない場合は、いずれの時間サブレイヤがインターレイヤ予測の参照に使用されていないかを示すために用いることができる。
【0125】
0に等しいmax_tid_il_ref_pics_plus1[ i ][ j ]は、nuh_layer_idがlayer_id_in_nuh[ i ]に等しい非IRAPピクチャが、nuh_layer_idがlayer_id_in_nuh[ j ]に等しいピクチャのインターレイヤ予測のソースピクチャとして使用されていないことを示す。0より大きいmax_tid_il_ref_pics_plus1[ i ][ j ]は、nuh_layer_idがlayer_id_in_nuh[ i ]に等しくTemporalId がmax_tid_il_ref_pics_plus1[ i ][ j ] - 1より大きいピクチャが、nuh_layer_idがlayer_id_in_nuh[ j ]に等しいピクチャのインターレイヤ予測のソースピクチャとして使用されていないことを示す。存在しない場合、max_tid_il_ref_pics_plus1[ i ][ j ]の値は7に等しいと推定される。
【0126】
H.264/AVCおよびHEVCのシンタックスでは様々なパラメータセットの事例が許容され、各事例は固有の識別子で識別される。パラメータセットに必要なメモリ使用量を制限するために、パラメータセット識別値域は制限されている。H.264/AVCおよびHEVCでは、各スライスヘッダは、そのスライスを含むピクチャの復号に対してアクティブなピクチャパラメータセットの識別子を含む。各ピクチャパラメータセットは、アクティブなシーケンスパラメータセットの識別子を含む。その結果、ピクチャとシーケンスパラメータセットの伝送がスライスの伝送と正確に同期されている必要がない。実際に、アクティブシーケンスとピクチャパラメータセットはそれらが参照される前までに受け取られていれば十分であり、スライスデータ用のプロトコルよりも高い信頼性のある伝送機構を使って「帯域外」でパラメータセットを伝送することが可能になる。例えば、パラメータセットはリアルタイム転送プロトコル(Realtime Transport Protocol:RTP)セッション用のセッション記述でのパラメータとして含まれてもよい。パラメータセットは、帯域内で伝送される場合、エラー耐性を高めるために繰り返されることもある。
【0127】
これに加えて、またはこれに代えて、帯域外伝送、信号伝送、または格納は、伝送エラーに対する耐性以外の目的(アクセス容易にすること、セッション交渉)のために行うことができる。例えば、ISOの基本メディアファイルフォーマットに準拠したファイルにおけるトラックのサンプルエントリは、パラメータセットを含んでもよく、ビットストリームにおける符号化データはファイル中の別の場所または別のファイルに格納される。ビットストリームに沿った表現(例えば、ビットストリームに沿って示すもの)が、帯域外データが該ビットストリームに関連付けられるように帯域外伝送、信号伝送、または格納について言及するために請求項や実施形態で使用される。ビットストリームに沿った復号等の表現は、該ビットストリームに関連付けられた該帯域外データ(帯域外伝送、信号伝送、または格納によって得られる)の復号を示しうる。
【0128】
パラメータセットは、スライスや別のアクティブパラメータセットからの参照によってアクティブ化されてもよく、場合によっては、バッファリング期間SEIメッセージのような別のシンタックス構造からの参照によることもある。
【0129】
SEI−NAL単位は1つ以上のSEIメッセージを含んでもよい。これらは出力ピクチャの復号には必要ないが、ピクチャ出力タイミング、レンダリング、エラー検出、エラー隠蔽、リソース予約等の関連処理を補助してもよい。複数のSEIメッセージがH.264/AVCおよびHEVCで規定され、ユーザデータのSEIメッセージによって組織や企業が独自に使用するSEIメッセージを規定できる。H.264/AVCおよびHEVCは、規定されたSEIメッセージのシンタックスと意味を含むが、受信側でメッセージを取り扱う処理については何も定義されない。その結果、エンコーダはSEIメッセージを作成する際、H.264/AVC規格やHEVC規格に従い、デコーダもそれぞれH.264/AVC規格やHEVC規格に準拠する必要があるが、SEIメッセージを出力順規定に準じて処理する必要はない。H.264/AVCおよびHEVCでSEIメッセージのシンタックスと意味を含める理由の1つは、異なるシステム仕様でも補助情報を同じ様に解釈し相互運用を可能にすることである。システム仕様は符号化側と復号側の両方で特定のSEIメッセージを使用できるように要求するものであり、受信側で特定のSEIメッセージを取り扱う処理も規定されてもよい。
【0130】
HEVCでは、2種類のSEI−NAL単位、すなわち、互いに異なるnal_unit_type値を有する接尾SEI−NAL単位と接頭SEI−NAL単位がある。接尾SEI−NAL単位に含まれるSEIメッセージは、復号順で接尾SEI−NAL単位の前に置かれるVCL−NAL単位に関連付けられる。接頭SEI−NAL単位に含まれるSEIメッセージは、復号順で接頭SEI−NAL単位の後に置かれるVCL−NAL単位に関連付けられる。
【0131】
符号化ピクチャは、あるピクチャの符号化された表現である。H.264/AVCにおける符号化ピクチャは、ピクチャの復号に必要なVCL−NAL単位を含む。H.264/AVCでは、符号化ピクチャは、プライマリ符号化ピクチャであっても、冗長符号化ピクチャであってもよい。プライマリ符号化ピクチャは、有効ビットストリームの復号処理に用いられる。一方、冗長符号化ピクチャは、プライマリ符号化ピクチャが正しく復号できない場合にのみ復号されるべき冗長表現である。HEVCでは、冗長符号化ピクチャは規定されていない。
【0132】
H.264/AVCでは、アクセス単位(Access Unit:AU)が、プライマリ符号化ピクチャとそれに関連付けられるNAL単位を含む。H.264/AVCでは、アクセス単位内でのNAL単位の出現順序が次のように制限されている。任意選択のアクセス単位区切りのNAL単位は、アクセス単位の起点を示すことができる。この後に、0以上のSEI−NAL単位が続く。プライマリ符号化ピクチャの符号化スライスが次に現れる。H.264/AVCでは、プライマリ符号化ピクチャの符号化スライスの後に、0以上の冗長符号化ピクチャの符号化スライスが続いてもよい。冗長符号化ピクチャは、ピクチャまたはピクチャの一部の符号化された表現である。冗長符号化ピクチャは、例えば伝送損失や物理記憶媒体でのデータ破損等によってデコーダがプライマリ符号化ピクチャを受け取ることができない場合に復号されてもよい。
【0133】
H.264/AVCでは、アクセス単位は補助符号化ピクチャを含んでもよい。これは、プライマリ符号化ピクチャを補完し、例えば表示処理等で使用できるピクチャである。補助符号化ピクチャは例えば、復号ピクチャのサンプルの透過レベルを特定するアルファチャンネルやアルファ面として使用されてもよい。アルファチャンネルまたはアルファ面は、レイヤ成分やレンダリングシステムで使用されてもよく、出力ピクチャは、互いに表面で少なくとも一部が透過しているピクチャを重ね合わせることで作成される。補助符号化ピクチャは、モノクロ冗長符号化ピクチャと同一のシンタックスと意味の制限がある。H.264/AVCでは、補助符号化ピクチャは、プライマリ符号化ピクチャと同数のマクロブロックを含む。
【0134】
HEVCでは、符号化ピクチャは、ピクチャのすべての符号化ツリー単位を含むピクチャの符号化された表現として定義することができる。HEVCでは、アクセス単位(AU)は、特定の分類ルールに基づき互いに関連付けられ、復号順で連続し、nuh_layer_idが任意の特定の値である最大で1つのピクチャを含む、NAL単位の組と定義することができる。アクセス単位は、符号化ピクチャのVCL−NAL単位を含むことに加えて、非VCL−NAL単位を含んでもよい。
【0135】
符号化ピクチャは、アクセス単位内で所定の順で現れる必要がある場合がある。例えば、nuh_layer_idがnuhLayerIdAに等しい符号化ピクチャは、同一のアクセス単位内でnuh_layer_idがnuhLayerIdAより大きいすべての符号化ピクチャよりも復号順で前に置かれる必要がある場合がある。
【0136】
HEVCでは、ピクチャ単位は、符号化ピクチャのすべてのVCL−NAL単位およびこれに関連する非VCL−NAL単位を含むNAL単位の組と定義することができる。非VCL−NAL単位に対して関連するVCL−NAL単位は、所定の種類の非VCL−NAL単位よりも復号順で前のVCL−NAL単位と定義され、その他の種類の非VCL−NAL単位に対して復号順で次のVCL−NAL単位と定義することができる。VCL−NAL単位に対する関連する非VCL−NAL単位は、VCL−NAL単位が関連するVCL−NAL単位である非VCL−NAL単位と定義することができる。例えば、HEVCでは、関連するVCL−NAL単位は、nal_unit_typeがEOS_NUT、EOB_NUT、FD_NUT、またはSUFFIX_SEI_NUTに等しい、またはRSV_NVCL45..RSV_NVCL47あるいはUNSPEC56..UNSPEC63の範囲にある非VCL−NAL単位に対して復号順で前のVCL−NAL単位、もしくは復号順で次のVCL−NAL単位と定義することができる。
【0137】
ビットストリームは、NAL単位ストリームまたはバイトストリームの形式で、符号化ピクチャおよび1つ以上の符号化ビデオシーケンスを形成する関連するデータの表現を形成する、ビットのシーケンスとして定義することができる。同一のファイルや、通信プロトコルの同一の接続のように、同一の論理経路において、第1のビットストリームの後に第2のビットストリームが続いてもよい。(ビデオの符号化において)基本ストリームは、1つ以上のビットストリームのシーケンスと定義することができる。第1のビットストリームの終端は特定のNAL単位によって示されてもよく、これはビットストリーム終端(End of Bitstream:EOB)のNAL単位と呼ばれ、該ビットストリームの最後のNAL単位である。HEVCおよび現在検討中のその拡張版では、EOBのNAL単位は0に等しいnuh_layer_idを有する必要がある。
【0138】
H.264/AVCでは、符号化ビデオシーケンスは、IDRアクセス単位から、次のIDRアクセス単位の手前とビットストリームの終端との内のより早い方まで、復号順で連続したアクセス単位のシーケンスと定義される。
【0139】
HEVCでは、符号化ビデオシーケンス(Coded Video Sequence:CVS)が、例えば、復号順で、NoRaslOutputFlagが1に等しいIRAPアクセス単位と、その後のNoRaslOutputFlagが1に等しいIRAPアクセス単位である任意のアクセス単位の手前までの、後続のすべてのアクセス単位を含む、NoRaslOutputFlagが1に等しいIRAPアクセス単位ではない0以上のアクセス単位とからなるアクセス単位のシーケンスとして定義することができる。IRAPアクセス単位は、基本レイヤピクチャがIRAPピクチャであるアクセス単位として定義することができる。ビットストリームにおいて復号順で特定のレイヤの最初のピクチャである各IDRピクチャ、各BLAピクチャ、および各IRAPピクチャに対して、NoRaslOutputFlagの値が1に等しいのは、復号順で、同一の値のnuh_layer_idを有するシーケンスNAL単位の終端後の最初のIRAPピクチャである。マルチレイヤHEVCでは、nuh_layer_idが、LayerInitializedFlag[ nuh_layer_id ]が0に等しく、IdDirectRefLayer[ nuh_layer_id ][ j ]に等しいすべてのrefLayerIdの値に対してLayerInitializedFlag[ refLayerId ]が1に等しくなる(ここで、jは0からNumDirectRefLayers[ nuh_layer_id ] - 1までの範囲にある)場合に、IRAPピクチャに対してNoRaslOutputFlagの値が1に等しくなる。この条件が満たされなければ、NoRaslOutputFlagの値がHandleCraAsBlaFlagに等しくなる。1に等しいNoRaslOutputFlagの影響として、NoRaslOutputFlagが設定されたIRAPピクチャに関連付けられているRASLピクチャがデコーダから出力されないことが挙げられる。デコーダを制御しうるプレーヤまたは受信機等の外部エンティティからデコーダに対してHandleCraAsBlaFlagの値を提供するための手段が設けられてもよい。例えばビットストリームにおける新たな位置を探索し、ブロードキャストを受け、復号を開始し、その後CRAピクチャから復号を開始するプレーヤによって、HandleCraAsBlaFlagは1に設定されてもよい。CRAピクチャに対してHandleCraAsBlaFlagが1に等しい場合、CRAピクチャはBLAピクチャと同様に取り扱われ、復号される。
【0140】
HEVCでは、上記の仕様に加えて、またはこれに代えて、シーケンス終端(End of Sequence:EOS)のNAL単位とも呼ばれる特定のNAL単位がビットストリームに現れ、そのnuh_layer_idが0に等しい場合、符号化ビデオシーケンスが終了するように規定されてもよい。
【0141】
HEVCでは、符号化ビデオシーケンスグループ(Coded Video Sequence Group:CVSG)は、例えば、既にアクティブではなかったVPS RBSPの最初のVpsRBSPをアクティブ化するIRAPアクセス単位から、ビットストリームの終端と、最初のVpsRBSPとは異なるVPS RBSPをアクティブ化するアクセス単位の手前との内の復号順でより早い方までの、最初のVpsRBSPがアクティブVPS RBSPである後続のすべてのアクセス単位からなる、復号順で連続する1つ以上のCVSと定義することができる。
【0142】
ピクチャグループ(GOP)とその特性は次のように定義することができる。GOPは、その前のピクチャが復号されたか否かに関係なく復号することができる。オープンGOPとは、復号がその最初のイントラピクチャから開始する場合に、出力順で最初のイントラピクチャより先のピクチャが正しく復号できないようなピクチャグループである。換言すれば、オープンGOPのピクチャは、その前のGOPに属するピクチャを(インター予測で)参照してもよい。H.264/AVCデコーダは、H.264/AVCビットストリームでのリカバリポイントのSEIメッセージによって、オープンGOPの始めのイントラピクチャを認識できる。HEVCデコーダはオープンGOPの始めのイントラピクチャを認識できる。これは、符号化スライスに対して特定のNAL単位種類であるCRA−NAL単位種類が使用されるからである。クローズドGOPとは、復号がその最初のイントラピクチャから開始する場合に、すべてのピクチャが正しく復号される様なピクチャグループである。換言すれば、クローズドGOPではその前のGOPにおけるピクチャを参照するピクチャは存在しない。H.264/AVCおよびHEVCでは、クローズドGOPはIDRピクチャから始まってもよい。HEVCでは、クローズドGOPはBLA_W_RADLまたはBLA_N_LPピクチャから開始してもよい。オープンGOPの符号化構造は、参照ピクチャの選択における高い柔軟性によって、クローズドGOP符号化構造と比較してより効率的な圧縮を可能にする。
【0143】
ピクチャ構造(Structure of Pictures:SOP)は、復号順で連続する1つ以上の符号化ピクチャと定義することができる。ここで、復号順で最初の符号化ピクチャは最低時間サブレイヤにおける参照ピクチャであり、復号順で最初になりうる符号化ピクチャを除く符号化ピクチャはいずれもRAPピクチャではない。現SOPにおけるすべてのピクチャよりも、その前のSOPにおけるすべてのピクチャの復号順で先となり、次のSOPにおけるすべてのピクチャが復号順で後となる。SOPは階層および繰り返しインター予測構造を表してもよい。ピクチャグループ(GOP)とSOPという語は同一の意味で使用できる。
【0144】
H.264/AVCおよびHEVCのビットストリームシンタックスは、特定のピクチャが別のピクチャのインター予測のための参照ピクチャであるか否かを示す。符号化の任意の種類(I、P、B)のピクチャは、H.264/AVCおよびHEVCの参照ピクチャまたは非参照ピクチャでありうる。
【0145】
H.264/AVCは、デコーダでのメモリ消費を制御するために、復号参照ピクチャのマーキング処理を特定する。インター予測に用いる参照ピクチャの数の最大値はMで表し、シーケンスパラメータセットで決定される。参照ピクチャは、復号されるときに「参照に使用済」とマークされる。参照ピクチャの復号で「参照に使用済」とマークされるピクチャの数がMを超える場合、少なくとも1つのピクチャは「参照に未使用」とマークされる。復号参照ピクチャのマーキング動作には、適応メモリ制御とスライディングウィンドウの2種類がある。復号参照ピクチャのマーキング動作モードはピクチャに基づいて選択される。適応メモリ制御は、どのピクチャが「参照に未使用」とマークされているかを明示的に信号で伝えられ、短期参照ピクチャに長期インデックスを割り当ててもよい。適応メモリ制御は、ビットストリームにメモリ管理制御動作(Memory Management Control Operation:MMCO)パラメータの存在を要求してもよい。このMMCOパラメータは、復号参照ピクチャ・マーキングのシンタックス構造に含まれてもよい。スライディングウィンドウ動作モードが使われ、M枚のピクチャが「参照に使用済D」とマークされている場合、「参照に使用済」とマークされている短期参照ピクチャの中で最初に復号された短期参照ピクチャは「参照に未使用」とマークされる。換言すれば、スライディングウィンドウ動作モードは、短期参照ピクチャに関して先入れ先出し(first-in-first-out)バッファ動作となる。
【0146】
H.264/AVCのメモリ管理制御動作によっては、現ピクチャ以外のすべての参照ピクチャを「参照に未使用」とマークする。瞬時復号リフレッシュ(IDR)ピクチャはイントラ符号化スライスのみを含み、参照ピクチャに対する同様の「リセット」を行う。
【0147】
HEVC規格では、参照ピクチャ・マーキングのシンタックス構造と関連する復号処理は使用されない。その代わり、参照ピクチャセット(Reference Picture Set:RPS)のシンタックス構造と復号処理が同様の目的で使用される。あるピクチャに有効またはアクティブな参照ピクチャセットには、そのピクチャに対する参照として使われるすべての参照ピクチャと、復号順で後続の任意のピクチャに対して「参照に使用済」とマークされたままであるすべての参照ピクチャとが挙げられる。参照ピクチャセットには6つのサブセットがあり、それぞれRefPicSetStCurr0(またはRefPicSetStCurrBefore)、RefPicSetStCurr1(またはRefPicSetStCurrAfter)、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr、RefPicSetLtFollと呼ばれる。この6つのサブセットの表記法は次のとおりである。「Curr」は現ピクチャの参照ピクチャリストに含まれる参照ピクチャを表し、このため、現ピクチャに対するインター予測参照として使用されてもよい。「Foll」は現ピクチャの参照ピクチャリストに含まれない参照ピクチャを表すが、復号順で後続のピクチャでは参照ピクチャとして使用されてもよい。「St」は短期参照ピクチャを表し、通常、POC値の特定数の最下位ビットで識別されてもよい。「Lt」は長期参照ピクチャを表し、特定の方法で識別され、通常、現ピクチャに対するPOC値の差分は、前述した特定数の最下位ビットによって表されるものよりも大きい。「0」は現ピクチャのPOC値よりも小さいPOC値を持つ参照ピクチャを表す。「1」は現ピクチャのPOC値よりも大きいPOC値を持つ参照ピクチャを表す。RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1はまとめて、参照ピクチャセットの短期サブセットと呼ばれる。RefPicSetLtCurrおよびRefPicSetLtFollはまとめて、参照ピクチャセットの長期サブセットと呼ばれる。
【0148】
HEVCでは、参照ピクチャセットは、シーケンスパラメータセットで特定され、参照ピクチャセットへのインデックスを介してスライスヘッダ用に取り込まれてもよい。参照ピクチャセットはスライスヘッダで特定されてもよい。参照ピクチャセットは独立に符号化されてもよく、別の参照ピクチャセットから予測されてもよい(インターRPS予測と呼ばれる)。参照ピクチャセット符号化の両方の種類で、各参照ピクチャに対してフラグ(used_by_curr_pic_X_flag)が追加で送信される。このフラグは、その参照ピクチャが参照として現ピクチャに用いられる(*Currリストに含まれる)か否か(*Follリストに含まれるか)を示す。現スライスが使う参照ピクチャセットに含まれるピクチャは「参照に使用済」とマークされ、現スライスが使う参照ピクチャセットに含まれないピクチャは「参照に未使用」とマークされる。現ピクチャがIDRピクチャである場合、RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr、およびRefPicSetLtFollはすべて空に設定される。
【0149】
復号ピクチャバッファ(Decoded Picture Buffer:DPB)はエンコーダおよび/またはデコーダで使用されてもよい。復号ピクチャをバッファする理由は2つある。1つはインター予測で参照するため、もう1つは復号ピクチャを出力順に並べ直すためである。H.264/AVCおよびHEVCは参照ピクチャのマーキングと出力の並べ換えの両方で相当な柔軟性を与えるため、参照ピクチャのバッファリングと出力ピクチャのバッファリングで別々のバッファを使うことはメモリリソースを浪費する可能性がある。このためDPBは、参照ピクチャと出力並び替えのための統合された復号ピクチャバッファリング処理を含んでもよい。復号ピクチャは、参照として使用されず出力される必要がなくなると、DPBから削除されてもよい。
【0150】
H.264/AVCおよびHEVC等の多くの符号化モードでは、インター予測用参照ピクチャは参照ピクチャリストへのインデックスで示される。このインデックスは可変長符号化で符号化されてもよい。可変長符号化によって多くの場合、インデックスを小さくして対応するシンタックス要素に対してより小さい値を持つことができる。H.264/AVCおよびHEVCでは、双予測(B)スライスにはそれぞれ2つの参照ピクチャリスト(参照ピクチャリスト0および参照ピクチャリスト1)が作成され、インター符号化(P)スライスにはそれぞれ1つの参照ピクチャリスト(参照ピクチャリスト0)が形成される。
【0151】
参照ピクチャリスト0および参照ピクチャリスト1等の参照ピクチャリストは通常、2つのステップで作成される。第1ステップでは、初期参照ピクチャリストが作成される。初期参照ピクチャリストは例えば、frame_numやPOC、temporal_id(またはTemporalId や類似のもの)、GOP構造等の予測階層に関する情報、またはこれらの組合せに基づいて作成されてもよい。第2ステップでは、参照ピクチャリスト並び替え(Reference Picture List Reordering:RPLR)命令によって初期参照ピクチャリストが並び替えられてもよい。RPLR命令は参照ピクチャリスト変更シンタックス構造とも呼ばれ、スライスヘッダに含まれてもよい。H.264/AVCでは、RPLR命令は、各参照ピクチャリストの先頭に並べられるピクチャを示す。第2ステップは参照ピクチャリスト変更処理とも呼ばれ、RPLR命令が参照ピクチャリスト変更シンタックス構造に含まれてもよい。参照ピクチャセットが用いられる場合、参照ピクチャリスト0はRefPicSetStCurr0、RefPicSetStCurr1、RefPicSetLtCurrをこの順序で含むように初期化されてもよい。参照ピクチャリスト1はRefPicSetStCurr1、RefPicSetStCurr0をこの順序で含むように初期化されてもよい。HEVCでは、初期参照ピクチャリストは参照ピクチャリスト変更シンタックス構造を通じて変更されてもよい。初期参照ピクチャリストのピクチャはリストに対するエントリインデックスを通じて識別されてもよい。換言すれば、HEVCでは、参照ピクチャリスト変更を最後の参照ピクチャリストにおける各エントリのループを含むシンタックス構造に符号化し、各ループエントリが初期参照ピクチャリストへの固定長符号化インデックスであり、最後の参照ピクチャリストにおける位置の昇順でピクチャを示す。
【0152】
H.264/AVCおよびHEVCを含む多くの符号化規格は、参照ピクチャリストに対する参照ピクチャインデックスを導出するための復号処理が含まれてもよい。これによって、複数の参照ピクチャのいずれを使用して特定のブロックのインター予測を行うかが示されうる。参照ピクチャインデックスは、エンコーダによってビットストリームへと何らかのインター符号化モードで符号化されてもよく、または(エンコーダおよびデコーダによって)例えば何らかの他のインター符号化モードで隣接ブロックを使用して導出されてもよい。
【0153】
ビットストリームにおいて動きベクトルを効率的に表現するために、該動きベクトルを、ブロックに特定の予測された動きベクトルとは異なる形で符号化してもよい。多くのビデオコーデックでは、例えば隣接するブロックの符号化または復号された動きベクトルの中央値を計算することによって等、予測された動きベクトルは既定の方法で作成される。動きベクトル予測を作成する別の方法として、応用動きベクトル予測(Advanced Motion Vector Prediction:AMVP)とも呼ばれるものが挙げられる。これは時間参照ピクチャにおける隣接するブロックおよび/または同位置のブロックから候補予測のリストを作成し、選択された候補を動きベクトルの予測として、信号により伝達するものである。動きベクトル値の予測に加えて、先に符号化/復号されたピクチャの参照インデックスを予測することが可能となる。この参照インデックスは通常、時間参照ピクチャにおける隣接するブロックおよび/または同位置のブロックから予測される。通常、スライス境界をまたぐ動きベクトルの差分符号化は無効である。
【0154】
スケーラブルビデオ符号化とは、コンテンツに関して、例えばビットレート、解像度、またはフレームレートが異なる複数の表現を1つのビットストリームが格納できるような符号化構造を指してもよい。このような場合、受信機は、その特性(例えば、ディスプレイ装置に最適な解像度)に応じて望ましい表現を抽出することができる。あるいは、サーバまたはネットワーク要素が、例えばネットワーク特性や受信機の処理能力に応じて受信機に送信されるように、ビットストリームの一部を抽出することもできる。スケーラブルビットストリームの特定の部分のみを復号することにより、有意な復号表現を生成することができる。スケーラブルビットストリームは、一般的には、利用可能な最低品質動画を提供する1層の「基本レイヤ」と、下位レイヤと共に受信、復号されるとビデオ品質を高める1または複数層の「拡張レイヤ」から構成される。拡張レイヤに対する符号化効率を高めるために、レイヤの符号化表現は、一般に下位レイヤに依存する。例えば、拡張レイヤの動き情報およびモード情報が下位レイヤから予測されてもよい。同様に、拡張レイヤ予測を作成するために、下位レイヤの画素データを用いることもできる。
【0155】
スケーラブルビデオ符号化方式によっては、ビデオ信号は基本レイヤおよび1つ以上の拡張レイヤに符号化されてもよい。拡張レイヤは、例えば、時間分解能(すなわち、フレームレート)や空間分解能を上げたり、別のレイヤやその一部によって表されるビデオコンテンツの品質を単に上げたりしてもよい。各レイヤは、それぞれのすべての従属レイヤと合わせて、例えば、特定の空間分解能、時間分解能および品質レベルでのビデオ信号の一表現となる。本明細書では、すべての従属レイヤを伴うスケーラブルレイヤを「スケーラブルレイヤ表現」と呼ばれる。特定の忠実度で元の信号表現を生成するために、スケーラブルレイヤ表現に対応するスケーラブルビットストリームの一部が抽出され復号される。
【0156】
スケーラビリティモードまたはスケーラビリティの次元には以下のものを含むが、これらに限定されない。
・品質スケーラビリティ:基本レイヤピクチャは、拡張レイヤピクチャよりも低い品質で符号化され、これは例えば基本レイヤにおいて、拡張レイヤにおけるものより大きな量子化パラメータ値(すなわち変換係数量子化に対してより大きなサイズの量子化ステップ)によって実現可能である。品質スケーラビリティは、後述のように細粒子または細粒度スケーラビリティ(Fine-Grain/Granularity Scalability:FGS)、中粒子または中粒度スケーラビリティ(Medium-Grain/Granularity Scalability:MGS)、および/または粗粒子または粗粒度スケーラビリティ(Coarse-Grain/Granularity Scalability:CGS)にさらに分類されてもよい。
・空間スケーラビリティ:基本レイヤピクチャは、拡張レイヤピクチャよりも低い解像度(すなわち、より少ないサンプル)で符号化される。空間スケーラビリティおよび品質スケーラビリティは、特にその粗粒子スケーラビリティ種類について、同種のスケーラビリティとみなされる場合がある。
・ビット深度スケーラビリティ:基本レイヤピクチャは、拡張レイヤピクチャ(例えば10または12ビット)よりも低いビット深度(例えば8ビット)で符号化される。
・動的範囲スケーラビリティ:スケーラブルレイヤは、異なるトーンマッピング機能および/または異なる光学伝達機能を使用して得られた異なる動的範囲および/または画像を表す。
・クロマフォーマットスケーラビリティ:基本レイヤピクチャは、拡張レイヤピクチャ(例えば4:4:4フォーマット)よりも、クロマサンプル配列(例えば4:2:0クロマフォーマットで符号化される)においてより低い空間解像度となる。
・色域スケーラビリティ:拡張レイヤピクチャは、基本レイヤピクチャよりも豊富な、または幅広い色表現範囲を有する。例えば、拡張レイヤは超高精細テレビ(UHDTV、ITU−R BT.2020規格)の色域を有し、一方、基本レイヤはITU−R BT.709規格の色域を有しうる。
・ビュースケーラビリティは、マルチビュー符号化とも呼ばれる。基本レイヤは第1のビューを表し、拡張レイヤは第2のビューを表す。
・深度スケーラビリティは、深度が拡張された符号化とも呼ばれる。ビットストリームの1つまたはいくつかのレイヤはテクスチャビューを表し、他のレイヤは深度ビューを表してもよい。
・関心領域スケーラビリティ(後述)。
・インターレース化−進行性スケーラビリティ(フィールド−フレームスケーラビリティとしても知られる):基本レイヤの符号化されたインターレース化ソースコンテンツ材料は、拡張レイヤによって拡張され、進行性ソースコンテンツを表す。基本レイヤにおける符号化されたインターレース化ソースコンテンツは、符号化フィールド、フィールド対を表す符号化フレーム、またはこれらの組合せを含んでもよい。インターレース化−進行性スケーラビリティでは、基本レイヤピクチャが再サンプル化され、1つ以上の拡張レイヤピクチャに適した参照ピクチャとなってもよい。
・ハイブリッドコーデックスケーラビリティ(符号化規格スケーラビリティとしても知られる):ハイブリッドコーデックスケーラビリティでは、ビットストリームシンタックスや意味、ならびに基本レイヤおよび拡張レイヤの復号処理が、異なるビデオ符号化規格で規定されている。このため、基本レイヤピクチャは拡張レイヤピクチャとは異なる符号化規格またはフォーマットで符号化される。例えば、基本レイヤはH.264/AVCで符号化され、拡張レイヤはHEVCマルチレイヤ拡張で符号化されてもよい。
【0157】
スケーラビリティ種類の内の多くが組み合わされて、まとめて適用されうることも理解されよう。例えば、色域スケーラビリティとビット深度スケーラビリティを組み合わせてもよい。
【0158】
レイヤという語は、ビュースケーラビリティや深度拡張等、スケーラビリティの任意の種類の文脈において使用することができる。拡張レイヤは、SNR拡張、空間拡張、マルチビュー拡張、深度拡張、ビット深度拡張、クロマフォーマット拡張、および/または色域拡張等の拡張の任意の種類を指してもよい。基本レイヤは、ベースビュー、SNR/空間スケーラビリティに対する基本レイヤ、または深度が拡張されたビデオの符号化に対するテクスチャベースビュー等のベースビデオシーケンスの任意の種類を指してもよい。
【0159】
三次元(3D)ビデオコンテンツを提供するための各種技術が現在、調査、研究されている。立体視または2ビュービデオにおいて、1つのビデオシーケンスまたはビューは左目用に、平行ビューは右目用に供されるものとする場合がある。同時により多くのビューを提供し、ユーザが異なる視点でコンテンツを観察可能にするようなビューポイントスイッチングや、裸眼立体視ディスプレイを可能にする用途のためには、2以上の平行ビューが必要である場合がある。
【0160】
ビューは、1つのカメラまたは視点を表すピクチャのシーケンスとして定義することができる。ビューを表すピクチャは、ビュー成分とも呼ばれる。換言すれば、ビュー成分は単一のアクセス単位におけるビューの符号化された表現として定義することができる。マルチビュービデオの符号化では、ビットストリームにおいて2つ以上のビューが符号化される。複数のビューは通常、立体視用ディスプレイやマルチビュー裸眼立体視ディスプレイに表示されること、またはその他の3D構成に使用されることを目的としていることから、通常は同一のシーンを表し、コンテンツによっては異なる視点を表しながら部分的に重畳する。このように、マルチビュービデオの符号化にインタービュー予測を用いることによって、ビュー間の相関関係を活用し圧縮効率を向上させてもよい。インタービュー予測を実現する方法としては、第1のビュー中の符号化または復号されているピクチャの参照ピクチャリストに1つ以上のその他のビューの1つ以上の復号ピクチャを含めることが挙げられる。ビュースケーラビリティはこのようなマルチビュービデオの符号化またはマルチビュービデオのビットストリームを指してもよく、これらによって1つ以上の符号化されたビューを削除または省略することができ、その結果としてのビットストリームは適合性を保ちながら、元のものよりも少ない数のビューでビデオを表す。
【0161】
関心領域(Region of Interest:ROI)の符号化は、より高い忠実度でのビデオ内の特定の領域の符号化を指すと定義することができる。エンコーダおよび/または他のエンティティが入力されたピクチャからROIを決定して符号化するための方法がいくつか知られている。例えば、顔検出を使用して顔をROIとして決定してもよい。これに加えて、またはこれに代えて、別の例では、フォーカスされた物体を検出してこれをROIとして決定し、フォーカスから外れた物体をROIではないと決定してもよい。これに加えて、またはこれに代えて、別の例では、物体への距離を推定または把握し、例えば深度センサに基づいて、ROIを背景よりもカメラに近い物体に決定してもよい。
【0162】
ROIスケーラビリティは、スケーラビリティの一種であって、拡張レイヤによって参照レイヤピクチャの一部のみを、例えば空間的に、品質に応じ、ビット深度において、および/または別のスケーラビリティの次元で拡張するものと定義することができる。ROIスケーラビリティは他の種類のスケーラビリティと併用できることから、スケーラビリティの種類の新たな分類を形成するととらえることができる。異なる要件を伴う、ROI符号化に対する様々な異なる用途があるが、ROIスケーラビリティによって実現可能である。例えば、拡張レイヤを送信して、基本レイヤ内の領域の品質および/または解像度を向上させることができる。拡張レイヤおよび基本レイヤのビットストリームの両者を受け取ったデコーダは、両レイヤを復号し、復号ピクチャを互いに重ね、最終的に完成したピクチャを表示してもよい。
【0163】
参照レイヤピクチャおよび拡張レイヤピクチャの空間対応は、1つ以上の種類のいわゆる参照レイヤ位置の補正値によって推定または標示されてもよい。HEVCでは、参照レイヤ位置補正値はエンコーダによってPPSに含められ、デコーダによってPPSから復号される。参照レイヤ位置補正値は、ROIスケーラビリティの実現以外の用途でも使用できる。参照レイヤ位置補正値は、スケール化参照レイヤ補正値、参照領域補正値、および再サンプリングフェーズセットの内の1つまたは複数を含んでもよい。スケール化参照レイヤ補正値は、参照レイヤの復号ピクチャ中の参照領域の左上輝度サンプルと結び付く現ピクチャにおけるサンプル間の水平・垂直補正値と、参照レイヤの復号ピクチャ中の参照領域の右下輝度サンプルと結び付く現ピクチャにおけるサンプル間の水平・垂直補正値とを規定するものととらえることができる。他の方法としては、スケール化参照レイヤ補正値を考慮し、拡張レイヤピクチャの各コーナーサンプルに対するアップサンプリング化参照領域のコーナーサンプルの位置を規定する。スケール化参照レイヤ補正値を符号付きとしてもよい。参照領域補正値は、参照レイヤの復号ピクチャ中の参照領域の左上輝度サンプルと同じ復号ピクチャの左上輝度サンプルとの間の水平・垂直補正値と、参照レイヤの復号ピクチャ中の参照領域の右下輝度サンプルと同じ復号ピクチャの右下輝度サンプルとの間の水平・垂直補正値とを規定するものととらえることができる。参照領域補正値を符号付きとしてもよい。再サンプリングフェーズセットは、インターレイヤ予測のソースピクチャの再サンプリング処理に使用されるフェーズ補正値を規定するものととらえることができる。輝度成分およびクロマ成分に対して異なるフェーズ補正値が設けられてもよい。
【0164】
スケーラブルビデオの符号化方式によっては、アクセス単位内のすべてのピクチャがIRAPピクチャとなるように、またはアクセス単位内のいずれのピクチャもIRAPピクチャではなくなるように、レイヤ間でIRAPピクチャを整合することが求められる場合がある。HEVCのマルチレイヤ拡張等のその他のスケーラブルビデオの符号化方式では、IRAPピクチャが不整合な場合を許容しうる。すなわち、アクセス単位内の1つ以上のピクチャがIRAPピクチャであり、アクセス単位内の1つ以上の別のピクチャがIRAPピクチャではなくてもよい。レイヤ間で整合されていないIRAPピクチャ等のスケーラブルビットストリームにより、例えば、基本レイヤ内にIRAPピクチャがより頻繁に出現するようにしてもよい。この場合、例えば空間解像度が小さいことから、符号化されたサイズがより小さくなるものであってもよい。復号のレイヤごとのスタートアップのための処理または機構が、ビデオ復号方式に含まれていてもよい。この場合、基本レイヤがIRAPピクチャを含むとデコーダがビットストリームの復号を開始し、その他のレイヤがIRAPピクチャを含むとこれらのレイヤの復号を段階的に開始する。換言すれば、復号機構または復号処理のレイヤごとのスタートアップにおいては、追加の拡張レイヤからの後続のピクチャが復号処理において復号されるにつれて、デコーダは復号されたレイヤの数を徐々に増やし(ここで、レイヤは、空間解像度、品質レベル、ビュー、さらに深度等の追加の成分やこれらの組合せの拡張を表してもよい)。復号されたレイヤの数が徐々に増えることは、例えばピクチャ品質(品質および空間スケーラビリティの場合)が徐々に向上することであると考えられる。
【0165】
レイヤごとのスタートアップ機構によって、特定の拡張レイヤにおいて復号順で最初のピクチャの参照ピクチャに対して利用不可のピクチャが生成されてもよい。あるいは、デコーダは、レイヤの復号が開始されうるIRAPピクチャに復号順で先行するピクチャの復号を省略してもよい。これらの省略されうるピクチャは、エンコーダやビットストリーム内のその他のエンティティによって、特定可能となるようにラベル付けされていてもよい。例えば、1つ以上の特定のNAL単位の種類をこの目的で使用してもよい。これらのピクチャは、NAL単位の種類によって特定可能となるようにラベル付けされているか否か、または例えばデコーダによって推定されているか否かにかかわらず、クロスレイヤランダムアクセススキップ(CL−RAS)ピクチャと呼ばれてもよい。デコーダは、生成された利用不可のピクチャおよび復号されたCL−RASピクチャの出力を省略してもよい。
【0166】
スケーラビリティは、2つの基本的な方法で利用可能となる。その1つは、スケーラブル表現の下位レイヤからの画素値またはシンタックスを予測するために新たな符号化モードを導入することであり、もう1つは、より高位のレイヤの参照ピクチャバッファ(例えば、復号ピクチャバッファ、DPB)に下位レイヤピクチャを配置することである。1つ目の方法は、より柔軟性が高く、多くの場合、符号化効率に優れる。ただし、参照フレームに基づくスケーラビリティという2つ目の方法は、可能な符号化効率上昇をほぼ完全に維持したまま、単一のレイヤコーデックに対する変化を最小に抑えて効率的に実行できる。基本的に、参照フレームに基づくスケーラビリティコーデックは、すべてのレイヤに対して同一のハードウェまたはソフトウェアを実行して実現でき、DPB管理は外部手段に任せてもよい。
【0167】
品質スケーラビリティ(信号対ノイズ比(SNR)とも呼ばれる)および/または空間スケーラビリティに対するスケーラブルビデオエンコーダは、以下のように実現してもよい。基本レイヤについては、従来の非スケーラブルビデオエンコーダおよびデコーダを利用できる。拡張レイヤ用の参照ピクチャバッファおよび/または参照ピクチャリストには、基本レイヤの再構成/復号ピクチャが含まれる。空間スケーラビリティの場合、拡張レイヤピクチャの参照ピクチャリストへの挿入前に、再構成/復号された基本レイヤピクチャをアップサンプリングしてもよい。基本レイヤ復号ピクチャは、拡張レイヤの復号参照ピクチャの場合同様、拡張レイヤピクチャの符号化/復号のために参照ピクチャリスト(複数可)に挿入されてもよい。これにより、エンコーダはインター予測の参照として基本レイヤ参照ピクチャを選択して、それが使用されることを符号化ビットストリーム内の参照ピクチャインデックスで示してもよい。デコーダは、拡張レイヤは、拡張レイヤのインター予測の参照用に基本レイヤピクチャが使用されていることを、例えばビットストリームの参照ピクチャインデックスから復号する。拡張レイヤの予測の参照に使用される復号基本レイヤピクチャは、インターレイヤ参照ピクチャと呼ばれる。
【0168】
前段落では拡張レイヤおよび基本レイヤの2つのスケーラビリティレイヤを有するスケーラブルビデオコーデックが説明されたが、その説明は、3つ以上のレイヤを有するスケーラビリティ階層の任意の2つのレイヤにも適用できることを理解されたい。この場合、符号化および/または復号処理において、第2の拡張レイヤは第1の拡張レイヤに左右されるため、第1の拡張レイヤは第2の拡張レイヤの符号化および/または復号における基本レイヤとみなすことができる。さらに、拡張レイヤの参照ピクチャバッファまたは参照ピクチャリスト内の2つ以上のレイヤからインターレイヤ参照ピクチャが得られることを理解されたい。これらインターレイヤ参照ピクチャはそれぞれ、符号化および/または復号されている拡張レイヤの基本レイヤまたは参照レイヤに存在するものと考えられる。参照レイヤピクチャアップサンプリングに加えてまたは代えて、それとは別種のインターレイヤ処理が実行されてもよいことが理解されよう。例えば、参照レイヤピクチャのサンプルのビット深度を拡張レイヤのビット深度に変換したり、サンプル値を参照レイヤの色空間から拡張レイヤの色空間にマッピングしたりしてもよい。
【0169】
スケーラブルビデオの符号化および/または復号方式は、以下の特徴を有するマルチループ符号化および/または復号を利用してもよい。符号化/復号において、基本レイヤピクチャを再構成/復号して、同一のレイヤ内で符号化/復号順における後続のピクチャ用の動き補償参照ピクチャ、またはインターレイヤ(またはインタービューまたはインター成分)予測の参照に利用してもよい。再構成/復号された基本レイヤピクチャは、DPBに保存されてもよい。同様に、拡張レイヤピクチャを再構成/復号し、同一のレイヤ内で符号化/復号順における後続のピクチャ用の動き補償参照ピクチャ、または存在する場合より高位の拡張レイヤに対するインターレイヤ(またはインタービューまたはインター成分)予測の参照に利用されてもよい。再構成/復号サンプル値に加えて、基本/参照レイヤのシンタックス要素値または基本/参照レイヤのシンタックス要素値から求めた変数をインターレイヤ/インター成分/インタービュー予測に利用してもよい。
【0170】
インターレイヤ予測は、現ピクチャ(符号化または復号されている)のレイヤと異なるレイヤからの参照ピクチャのデータ要素(例えば、サンプル値または動きベクトル)に応じた予測として定義できる。スケーラブルビデオエンコーダ/デコーダに適用できるインターレイヤ予測は多岐にわたる。利用可能なインターレイヤ予測の種類は、例えばビットストリームまたはビットストリーム内の特定のレイヤが符号化される符号化プロファイル、または復号の際にビットストリームまたはビットストリーム内の特定のレイヤが従う符号化プロファイルに基づいてもよい。これに加えて、またはこれに代えて、利用可能なインターレイヤ予測の種類は、スケーラビリティの種類、スケーラブルコーデックまたは使用されるビデオの符号化規格改定の種類(例えばSHVC、MV−HEVC、または3D−HEVC)に応じたものであってもよい。
【0171】
インターレイヤ予測の種類は、インターレイヤサンプル予測、インターレイヤ動き情報予測、インターレイヤ残差予測の1つまたは複数を含むがこれに限定されない。インターレイヤサンプル予測では、少なくともインターレイヤ予測用のソースピクチャの再構成サンプル値のサブセットが現ピクチャのサンプル値を予測するための参照に使用される。インターレイヤ動き予測においては、少なくともインターレイヤ予測用のソースピクチャの動きベクトルのサブセットが現ピクチャの動きベクトル予測の参照に使用される。通常、参照ピクチャが動きベクトルに関連する予測情報も、インターレイヤ動き予測に含まれる。例えば、動きベクトル用の参照ピクチャの参照インデックスは、インターレイヤ予測され、さらに/あるいはピクチャ順序カウントまたはその他任意の参照ピクチャの識別がインターレイヤ予測されてもよい。場合によっては、インターレイヤ動き予測はさらにブロック符号化モード、ヘッダ情報、ブロックパーティショニング、および/またはその他同様のパラメータの予測を含んでもよい。場合によっては、ブロックパーティショニングのインターレイヤ予測のような符号化パラメータ予測は、別種のインターレイヤ予測としてみなされてもよい。インターレイヤ残差予測では、インターレイヤ予測用のソースピクチャの選択ブロックの予測誤差または残差を利用して、現ピクチャが予測される。3D−HEVCのようなマルチビュー+深度符号化では、成分交差的なインターレイヤ予測が適用されてもよい。当該予測では、深度ピクチャのような第1の種類のピクチャが、従来のテクスチャピクチャのような第2の種類のピクチャのインターレイヤ予測に影響を及ぼしうる。例えば、格差補償インターレイヤサンプル値および/または動き予測を適用してもよい。ここで、格差は少なくとも部分的に深度ピクチャから導出されてもよい。
【0172】
直接参照レイヤは、直接参照レイヤとなる別のレイヤのインターレイヤ予測に使用できるレイヤとして定義できる。直接予測されたレイヤは、別のレイヤが直接参照レイヤとなるレイヤとして定義できる。間接参照レイヤは、第2のレイヤの直接参照レイヤではないが、第3のレイヤの直接参照レイヤである。この第3のレイヤは、間接参照レイヤである第2のレイヤの直接参照レイヤまたはその直接参照レイヤの間接参照レイヤである。間接的に予測されたレイヤは、別のレイヤが間接参照レイヤとなるレイヤとして定義できる。独立レイヤは、直接参照レイヤを伴わないレイヤとして定義できる。換言すれば、独立レイヤはインターレイヤ予測により予測されていない。非基本レイヤは、基本レイヤ以外の任意のレイヤとして定義できる。基本レイヤはビットストリーム内の最下レイヤとして定義できる。独立非基本レイヤは、独立レイヤであり非基本レイヤであるレイヤとして定義できる。
【0173】
インターレイヤ予測用のソースピクチャは、インターレイヤ参照ピクチャである、またはそれを導出するために使用される復号ピクチャとして定義できる。インターレイヤ参照ピクチャは、現ピクチャの予測用の参照ピクチャとして使用できる。マルチレイヤHEVC拡張版では、インターレイヤ参照ピクチャが現ピクチャのインターレイヤ参照ピクチャセットに含まれる。インターレイヤ参照ピクチャは、現ピクチャのインターレイヤ予測に使用できる参照ピクチャとして定義できる。符号化および/または復号処理では、インターレイヤ参照ピクチャを長期参照ピクチャとして扱ってもよい。
【0174】
インターレイヤ予測用のソースピクチャは、現ピクチャと同一のアクセス単位にあることが求められる。場合によっては、例えば再サンプリング、動きフィールドマッピング、またはその他のインターレイヤ処理が不要であれば、インターレイヤ予測用のソースピクチャと各インターレイヤ参照ピクチャは同一であってもよい。場合によっては、例えば再サンプリングにより参照レイヤのサンプリンググリッドを現ピクチャ(符号化または複号されている)のレイヤのサンプリンググリッドに合わせる必要があれば、インターレイヤ予測用のソースピクチャからインターレイヤ参照ピクチャを導出するように、インターレイヤ処理が適用される。当該インターレイヤ処理の例を以下の数段落に示す。
【0175】
インターレイヤサンプル予測は、インターレイヤ予測用のソースピクチャのサンプル配列(複数可)の再サンプリングを含んでもよい。エンコーダおよび/またはデコーダは、水平倍率(例えば変数倍率Xに記憶される)および垂直倍率(例えば変数倍率Yに記憶される)を、拡張レイヤおよびその参照レイヤの対に対して、例えば当該参照レイヤ位置補正値に基づいて導出してもよい。いずれか一方の倍率が1でなければ、インターレイヤ予測用のソースピクチャを再サンプリングして、拡張レイヤピクチャ予測のためのインターレイヤ参照ピクチャを生成してもよい。再サンプリングに使用する処理および/またはフィルタは、例えば符号化規格で事前に定義されてもよく、ビットストリーム内のエンコーダによって(例えば、事前に定義された再サンプリング処理またはフィルタ間のインデックスとして)示されてもよく、デコーダによってビットストリームから復号されてもよい。倍率の値に応じて、異なる再サンプリング処理が、エンコーダによって示されてもよく、デコーダによって復号されてもよく、エンコーダおよび/またはデコーダによって推測されてもよい。例えば、両方の倍率が1未満であれば、事前に定義されたダウンサンプリング処理が推測されてもよい。いずれの倍率も1を超える場合、事前に定義されたアップサンプリング処理が推測されてもよい。これに加えて、またはこれに代えて、処理されるサンプル配列に応じて、異なる再サンプリング処理がエンコーダによって示されてもよく、デコーダによって復号されてもよく、エンコーダおよび/またはデコーダによって推測されてもよい。例えば、第1の再サンプリング処理が輝度サンプル配列に利用されるものと推測され、第2の再サンプリング処理がクロマサンプル配列に利用されるものと推測されてもよい。
【0176】
再サンプリングは、例えばピクチャに基づいて(インターレイヤ予測用のソースピクチャ全体、またはインターレイヤ予測用のソースピクチャの参照領域に対して)、スライス基づいて(例えば、拡張レイヤスライスに対応する参照レイヤ領域に対して)、またはブロックに基づいて(例えば、拡張レイヤ符号化ツリー単位に対応する参照レイヤ領域に対して)実行されてもよい。決定された領域(例えば拡張レイヤピクチャにおけるピクチャ、スライス、または符号化ツリー単位)の再サンプリングは、例えば決定された領域におけるすべてのサンプル位置をループして、各サンプル位置にサンプルに基づく再サンプリング処理を実行してもよい。ただし、決定された領域に対してさらに別の方法で再サンプリングすることが可能であることを理解されたい。例えば、あるサンプル位置のフィルタリングに、前回のサンプル位置の変数値を使用してもよい。
【0177】
SHVCは、(限定的ではないが)色域スケーラビリティに対する3Dルックアップテーブル(LUT)に基づく重み付け予測またはカラーマッピング処理を可能とする。3DのLUT手法は以下に説明するとおりである。各色成分のサンプル値範囲はまず2つの範囲に分割し、最大2×2×2の八分円が得られる。さらに輝度範囲を四分割までできるため、最大8×2×2の八分円が得られる。各八分円において、色成分交差線形モデルが適用されて、カラーマッピングが行われる。各八分円について、4つの頂点がビットストリームに符号化、および/またはビットストリームから復号され、八分円内の線形モデルが表される。カラーマッピングテーブルが、各色成分に対して、ビットストリームに符号化、および/またはビットストリームから復号される。カラーマッピングは3工程を含むものと考えられる。まず、所与の参照レイヤサンプル3つ組(Y、Cb、Cr)が属する八分円を決定する。次に、輝度およびクロマのサンプル位置を、色成分調整処理を適用して整列させてもよい。最後に、決定された八分円に特化した線形マッピングが適用される。このマッピングは成分交差的な性質を有する。すなわち、1つの色成分の入力値が別の色成分のマッピング値に影響を及ぼしうる。さらに、インターレイヤ再サンプリングも必要であれば、再サンプリング処理に対する入力はカラーマッピング済みのピクチャとなる。カラーマッピングでは、第1のビット深度のサンプルから、別のビット深度のサンプルまでマッピングしてもよい(ただしこれに限らない)。
【0178】
MV−HEVC、SMV−HEVC、および参照インデックスに基づくSHVCソリューションでは、インターレイヤテクスチャ予測に対応するためにブロックレベルシンタックスおよび復号処理を変化させない。高レベルシンタックスのみが変更され(HEVCと比較した場合)、同一のアクセス単位の参照レイヤからの再構成ピクチャ(必要であればアップサンプリングされる)が現拡張レイヤピクチャの符号化のための参照ピクチャに使用できるようにする。参照ピクチャリストには、インターレイヤ参照ピクチャおよび時間参照ピクチャが含まれる。伝達される参照ピクチャインデックスは、現予測単位(PU)が時間参照ピクチャまたはインターレイヤ参照ピクチャによって予測されたものか否かを示すために使用される。この特徴の使用はエンコーダにより制御され、ビットストリームにおいて、例えばビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータ、および/またはスライスヘッダにより標示されてもよい。この標示(複数可)は、例えば拡張レイヤ、参照レイヤ、拡張レイヤおよび参照レイヤの対、特定のTemporalId 値、特定のピクチャ種類(例えばRAPピクチャ)、特定のスライス種類(例えばPおよびBスライス。Iスライスは不可)、特定のPOC値のピクチャ、および/または特定のアクセス単位に対して特有であってもよい。標示(複数可)の範囲および/または持続性は、この標示そのものによって示されてもよく、推測されてもよい。
【0179】
MV−HEVC、SMV−HEVC、および参照インデックスに基づくSHVCソリューションは、特定の処理により初期化されてもよい。当該処理では、インターレイヤ参照ピクチャ(複数可)が存在する場合に、初期参照ピクチャリスト(複数可)に含まれてもよく、以下のように実現される。例えば、まず時間参照を、HEVCにおける参照リスト構造と同様にして参照リスト(L0、L1)に加える。その後、時間参照の後ろにインターレイヤ参照を加えてもよい。例えば、インターレイヤ参照ピクチャは、上述のとおりVPS拡張から導出されたRefLayerId[ i ]変数等のレイヤ依存情報から得られてもよい。インターレイヤ参照ピクチャは、現拡張レイヤスライスがPスライスの場合に初期参照ピクチャリストL0に加えられ、現拡張レイヤスライスがBスライスの場合に初期参照ピクチャリストL0およびL1の両方に加えられてもよい。インターレイヤ参照ピクチャは特定の順序で参照ピクチャリストに加えられてもよく、順序は参照ピクチャリスト間で同一であっても同一でなくてもよい。例えば、インターレイヤ参照ピクチャを初期参照ピクチャリスト1に加える順序が、初期参照ピクチャリスト0の場合とは逆であってもよい。例えば、インターレイヤ参照ピクチャは、最初の参照ピクチャ0に対して、nuh_layer_idの昇順で挿入され、初期参照ピクチャリスト1の初期化には逆の順序が採用されてもよい。
【0180】
符号化および/または復号処理において、インターレイヤ参照ピクチャを長期参照ピクチャとして扱ってもよい。
【0181】
インターレイヤ動き予測は以下のとおりに実現できる。H.265/HEVCのTMVPのような時間動きベクトル予測処理により、異なるレイヤ間の動きデータの冗長性を実現できる。具体的には以下のとおりとなる。復号基本レイヤピクチャがアップサンプリングされると、それに合わせて基本レイヤピクチャの動きデータが拡張レイヤの解像度にマッピングされる。拡張レイヤピクチャが、例えばH.265/HEVCのTMVPのような時間動きベクトル予測機構により、基本レイヤピクチャからの動きベクトル予測を利用する場合、対応する動きベクトル予測器がマッピングされた基本レイヤ動きフィールドから生じる。これにより、異なるレイヤ間の動きデータの相関が利用され、スケーラブルビデオコーダの符号化効率が向上できる。
【0182】
SHVC等では、インターレイヤ動き予測は、TMVP導出用の関連参照ピクチャとしてのインターレイヤ参照ピクチャを設定して実行できる。2つのレイヤ間の動きフィールドマッピング処理は、例えばTMVP導出におけるブロックレベル復号処理変化を避けるために実行してもよい。動きフィールドマッピング特徴の利用は、エンコーダにより制御され、ビットストリームにおいて、例えばビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータ、および/またはスライスヘッダにより標示されてもよい。この標示(複数可)は、例えば拡張レイヤ、参照レイヤ、拡張レイヤおよび参照レイヤの対、特定のTemporalId 値、特定のピクチャ種類(例えばRAPピクチャ)、特定のスライス種類(例えばPおよびBスライス。Iスライスは不可)、特定のPOC値のピクチャ、および/または特定のアクセス単位に対して特有であってもよい。標示(複数可)の範囲および/または持続性は、この標示そのものによって示されてもよく、推測されてもよい。
【0183】
空間スケーラビリティに対する動きフィールドマッピング処理では、アップサンプリングされたインターレイヤ参照ピクチャの動きフィールドは、インターレイヤ予測用の各ソースピクチャの動きフィールドに基づいて実現されてもよい。アップサンプリングされたインターレイヤ参照ピクチャの各ブロックの動きパラメータ(例えば、水平および/または垂直動きベクトル値および参照インデックスを含む)および/または予測モードは、インターレイヤ予測用のソースピクチャにおける関連したブロックの対応する動きパラメータおよび/または予測モードから導出できる。アップサンプリングされたインターレイヤ参照ピクチャの動きパラメータおよび/または予測モードの導出用のブロックサイズは、例えば16×16である。HEVCにおいて参照ピクチャの圧縮動きフィールドが利用されるTMVP導出処理でも同じく16×16ブロックサイズが利用される。
【0184】
場合によっては、拡張レイヤ内のデータを、所定箇所以降切り捨てたり、あるいは任意の箇所で切り捨てたりしてもよい。各切り捨て位置は、画質が向上したことを表す追加データを含んでもよい。このようなスケーラビリティは高粒度スケーラビリティ(FGS)と呼ばれる。
【0185】
MVC同様、MV−HEVCにおいても、インタービュー参照ピクチャは符号化または復号されている現ピクチャの参照ピクチャリスト(複数可)に含めてもよい。SHVCはマルチループ復号動作を利用する(この点がH.264/AVCのSVC拡張と異なる)。SHVCは参照インデックスに基づく手法を採ると考えられる。すなわち、インターレイヤ参照ピクチャが、符号化または復号されている現ピクチャの1つ以上の参照ピクチャリストに含まれてもよい(上述の内容参照)。
【0186】
拡張レイヤ符号化については、SHVC、MV−HEVC等に対してHEVC基本レイヤの概念や符号化ツールを利用できる。一方で、SHVC、MV−HEVC等のコーデックに対して、拡張レイヤの効率的な符号化のための参照レイヤにおいて符号化済みデータ(再構成ピクチャサンプルや、動きパラメータ、すなわち動き情報)を利用したインターレイヤ予測ツールを追加してもよい。
【0187】
上述のように、Bスライス、すなわちBフレームは、複数のフレームから予測される。予測は予測の元となったフレームの単純平均に基づいてもよいが、Bフレームは重み付け双予測を利用して計算することもできる。具体的には、時間基準の重み付け平均や、輝度のようなパラメータに基づく重み付け平均を採用してもよい。重み付け予測パラメータは予測パラメータセットにサブセットとして含まれてもよい。重み付け双予測は、フレームの1つまたはフレームの所定の特性を強調するものである。様々なコーデックが様々な方法で重み付け双予測を実現する。例えばH.264における重み付け予測は、過去と未来のフレームの単純平均、過去と未来のフレームに対する時間的距離に基づく重み付けの直接モード、過去と未来のフレームの輝度(またはその他のパラメータ)に基づく重み付け予測に対応する。H.265/HEVCビデオの符号化規格は、重み付け予測を使用する場合としない場合における双予測された動き補償サンプルブロックの構築方法を示す。
【0188】
重み付け双予測では、2つの動き補償予測を実行し、その後2つの予測された信号を拡縮し、加算することが求められる。これにより、通常は良好な符号化効率が実現される。H.265/HEVCで使用される動き補償双予測では、2つの動き補償動作の結果を平均化して、サンプル予測ブロックを構築する。重み付け予測の場合、動作は2つの予測に異なる重みを使用し、結果にさらなる補正値を加えて実行できる。しかし、これら動作では、(重み付け)平均双予測ブロックよりもいずれかの単予測ブロックの方がサンプルの推定に適する場合等の、予測ブロックの特殊な特性を考慮していない。したがって、既知の重み付け双予測方法では、最大限性能が引き出せない場合が多い。
【0189】
以下に、動き補償双予測の精度を向上するための、改良した動き補償予測の方法を説明する。
【0190】
図5に示す当該方法では、第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1が作成され(500)、L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットが特定され(502)、差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理が決定される(504)。
【0191】
換言すれば、動き補償双予測動作による2つのサンプル予測が分析され、予測の乖離が大きい箇所が特定される。これにより、入力サンプルの急激な変化が示される。ここで、2つのサンプル予測はかなりコンフリクトしており、概して双予測動き補償では十分正確な入力サンプルの予測が可能ではない場合がある。したがって、さらなる動き補償処理を、少なくとも予測が大きく乖離したサンプルに適用し、予測のコンフリクトを低減する。
【0192】
ある実施形態によると、前記動き補償処理は、以下の内の1つまたは複数を含む。
・適用される予測の種類についてのサンプルレベルの決定を示すこと、
・L0およびL1の重みを示すための変調信号を符号化すること、
・L0およびL1で特定された異なる乖離の階級に対して目的の動作を示すために予測ブロックレベルについてシグナリングすること。
【0193】
したがって、デコーダは少なくとも1つの前記動き補償処理について通知され、その後、示された動き補償処理を適用して効率的にコンフリクトを解消し、予測性能向上を図ることができる。
【0194】
ある実施形態によると、サンプルの前記サブセットは、第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルを含む。したがって、入力サンプルの急激な変化が生じるサンプルのサブセットは、所定の値を超えたL0とL1との差分として示されてもよい。
【0195】
ある実施形態によると、サンプルの前記サブセットは、L0とL1との最大の差分が予測ブロック内にある所定数のサンプルを含む。ここで、サンプルのサブセットは、N個の最も乖離しているサンプル、すなわちL0とL1との差分が最大のNサンプルを含んでもよい。
【0196】
ある実施形態によると、前記特定することと決定することは、前記L0とL1との差分を計算することと、前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、をさらに含む。
【0197】
図6は、一次元で双予測された動き補償の典型例を示す。
図6では、同一のサンプル列における8つの連続したサンプルを含む、簡略化された例を示す。この例では、L0およびL1予測の平均(すなわちBで示す双予測)は、L0とL1との予測の差分が小さいサンプルで十分入力信号を予測できる。具体的には、当該サンプルとしてはサンプル1〜3および6〜8が挙げられる。しかし、サンプル4および5のようにL0およびL1予測がより大きく乖離していると、双予測Bでは入力サンプルの予測に不十分である。この例では、サンプル値4および5についてはL1予測の方が双予測Bよりも適切な予測子となっている。
【0198】
実施形態に応じて動作するエンコーダは、L0およびL1予測子の間の差分を分析し、最も乖離している2つのサンプル4および5がL1で予測され、残りのサンプルが双予測されるものと示してもよい。同様に、L0およびL1予測子が最も乖離している予測単位PU内の2つのサンプルが、L1で予測されたと示す標示を受信すると、デコーダはL0およびL1予測を分析して当該2つのサンプルの位置を特定し、その位置のサンプルにL1予測を適用できる。あるいは、エンコーダはPU内のサンプルの番号(すなわち、4および5)を明確に示し、デコーダが当該サンプルにL1予測を直接適用できるようにしてもよい。その他実施形態と組み合わせてまたは独立して実現可能なある実施形態によると、前記方法は、前記L0とL1との差分を計算することと、L0とL1との前記差分に基づいて再構成予測誤差信号を決定することと、動き補償予測を決定することと、前記再構成予測誤差信号を前記動き補償予測に追加することと、をさらに含む。
【0199】
ここで、生成された動き補償差分信号に基づく予測誤差符号化が適用される別形態を開示する。この方法では、コーデックは乖離している予測信号が予測誤差となりうる箇所の標示であるとして、それに合わせて自身の予測誤差符号化モジュールの動作を調整する。予測誤差信号は、L0とL1との予測の差分に基づき様々な方法で再構成できる。
【0200】
ある実施形態によると、前記方法は、前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む。
【0201】
ある実施形態によると、前記方法は、全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、をさらに含む。
【0202】
以下に実施形態の様々な実施方法を開示する。
【0203】
ある実施形態によると、中間L0およびL1予測とその差分の計算は様々な方法で実行できる。例えば計算を組み合わせたり、予測単位内のサンプルのサブセットのみまたは全サンプルに対して計算を実行したり、異なる精度で計算を行い、結果を所定範囲で切り取ってもよい。
【0204】
ある実施形態によると、予測単位に対する動作を適用せずにピクチャのサブセットまたはピクチャ全体を使用してもよい。
【0205】
ある実施形態によると、前記方法は、予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することをさらに含む。例えば、L0およびL1予測が最も乖離したサンプルは、差分信号に基づき予測され、残りのサンプルは単予測または双予測されてもよい。
【0206】
動き補償予測は複数の方法で実現できる。例えば、
・エンコーダは、所定数の最も乖離しているL0およびL1予測されたサンプルが特定されるべきであると示し、さらにL0予測、L1予測、またはその組合せによりこれらサンプルが予測されたことを示すものであってもよい。この標示は、最も乖離している各サンプルまたは最も乖離しているサンプルの所定の群に対してまとめて実現されてもよい。
・L0およびL1サンプル予測の差分が所定の範囲内であれば、エンコーダは、サンプル補正値が適用されることを示してもよい。
・L0とL1との予測の差分が所定の範囲内であれば、エンコーダは、L0、L1予測またはその組合せがサンプルに加えられることを示してもよい。
・最終予測信号を計算する際、差分信号は、(例えばDCTで)変調して、L0およびL1予測がどのように重み付けされるべきであるかを示してもよい。
・予測は、(L0とL1との)差分を全体的または部分的に双予測されたサンプルに加えることで実行されてもよい。
・予測は、特定された差分信号(L0とL1予測器との差分)を拡縮して、双予測に加えることで実行されてもよい。
・予測を立てる際、エンコーダは、L0およびL1予測器に異なる重み付けがされていることを示すまたは定義してもよい。
【0207】
ある実施形態によると、L0とL1との予測の差分を考慮して予測誤差符号化の種類を選択してもよい。例えば所定数のサンプルのL0とL1との予測の差分が大きい場合、変換バイパスモードを選択して、予測誤差を示すサンプル値差を送信して、当該箇所のために復号されてもよい。また、予測誤差種類の符号化を、差分信号に基づき調整してもよい。これにより、モードの定義またはモードの演算符号化で使用される可能性が、差分信号の特性に基づき増減可能となる。
【0208】
ある実施形態によると、予測誤差符号化で使用される変換は、L0およびL1予測器の分析出力に基づいて選択されてもよい。例えば、L0およびL1予測器の差分を計算して生成された差分サンプルブロックが所定の方向性を有する場合、当該方向性の符号化用の変換を選択してもよい。
【0209】
図7は、本発明の各実施形態の利用に適したビデオデコーダのブロック図を示す。
図7は、2レイヤのデコーダ構造を示すが、説明される復号動作は単一レイヤのデコーダにも同様に適用できることが理解されよう。
【0210】
ビデオデコーダ550は、ベースビュー成分用の第1のデコーダ部552と、非ベースビュー成分用の第2のデコーダ部554とを有する。ブロック556は、ベースビュー成分に関する情報を第1のデコーダ部552に伝達し、非ベースビュー成分に関する情報を第2のデコーダ部554に伝達するデマルチプレクサを示す。参照符号P'nは、画像ブロックの予測された表現を示す。参照符号D'nは、再構成予測誤差信号を示す。ブロック704、804は、予備再構成画像(I'n)を示す。参照符号R'nは、最終再構成画像を示す。ブロック703、803は、逆変換(T
−1)を示す。ブロック702、802、は逆量子化を示す(Q
−1)を示す。ブロック701、801、はエントロピー復号(E
−1)を示す。ブロック705、805は、参照フレームメモリ(RFM)を示す。ブロック706、806は、予測(P)(インター予測またはイントラ予測)を示す。ブロック707、807は、フィルタリング(F)を示す。ブロック708、808は、復号予測誤差情報と予測されたベースビュー/非ベースビュー成分を組み合わせて予備再構成画像(I'n)を得るために使用されるものであってもよい。予備再構成およびフィルタリング済みベースビュー画像は、第1のデコーダ部552から出力709されてもよく、予備再構成およびフィルタリング済みベースビュー画像は第1のデコーダ部554から出力809されてもよい。
【0211】
ここで、デコーダは復号動作を実行可能な任意の動作単位を網羅するものと解されるべきであり、その例として、プレーヤ、受信機、ゲートウェイ、デマルチプレクサおよび/またはデコーダが挙げられる。
【0212】
図8は、本発明のある実施形態によるデコーダの動作を示すフローチャートである。実施形態の復号動作は、符号化動作と類似するが、別の動き補償処理の方が高精度となるサンプルについての標示をデコーダが取得する点で異なる。すなわち、受信したサンプルに動き補償予測を適用する際に、デコーダは第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成し(800)、L0とL1との予測の差分により定義されるサンプルの1つ以上のサブセットについての標示を取得し(802)、少なくともサンプルの前記1つ以上のサブセットに対して動き補償処理を適用して(804)、差分を補償する。
【0213】
したがって、上述の符号化・復号方法は予測ブロックの特殊な特性をよりよく考慮することで動き補償予測の精度を高める手段を提供するものである。
【0214】
図9は、各種実施形態が実現可能な例示的マルチメディア通信システムを示す図である。データソース1510は、ソース信号を提供する。当該信号は、アナログフォーマット、非圧縮デジタルフォーマット、圧縮デジタルフォーマット、あるいはこれらの組合せであってもよい。エンコーダ1520は、データフォーマット変換やソース信号フィルタリングのような前処理を含んでもよく、または当該処理に接続されていてもよい。エンコーダ1520はソース信号を符号化して符号化メディアビットストリームを得る。復号されるビットストリームは、実質的に任意の種類のネットワークに存在しうるリモート装置から直接的または間接的に受信されてもよい。ビットストリームは、ローカルハードウェアまたはソフトウェアから受信されてもよい。エンコーダ1520は、1以上の媒体の種類(音声、動画等)を符号化可能であってもよい。あるいは、2以上のエンコーダ1520に、異なる媒体の種類のソース信号を符号化することが求められてもよい。エンコーダ1520はさらに、グラフィックやテキストなど、合成して生成された入力を取得してもよく、あるいは合成メディアの符号化ビットストリームを生成可能であってもよい。以下では、簡潔に説明するため、1種類のみの媒体の1つの符号化メディアビットストリームに対する処理を検討する。ただし、通常ではリアルタイムブロードキャストサービスは複数のストリームを含む(通常、少なくとも1つの音声、動画、テキスト字幕付きストリーム)。さらに、システムが多数のエンコーダを含みうるが、一般性を損なわない範囲で簡潔に説明するために単一のエンコーダ1520のみが図示されていることを理解されたい。またここでの記載や例示は符号化処理を具体的に表しているが、同じ概念、原理を対応する復号処理に適用したり、その逆の運用をしたりすることがあってもよいことが当業者には理解されよう。
【0215】
符号化メディアビットストリームは、ストレージ1530に送信されてもよい。ストレージ1530は、符号化メディアビットストリームを格納する任意の種類のマスメモリを含んでもよい。ストレージ1530における符号化メディアビットストリームのフォーマットは、基本自立型ビットストリームフォーマット(elementary self-contained bitstream format)であってもよく、1つ以上の符号化メディアビットストリームが1つのコンテナファイルにカプセル化されてもよい。1つ以上のメディアビットストリームが1つのコンテナファイルにカプセル化される場合、ファイル作成機(図示せず)を使用して1以上のメディアビットストリームをファイルに保存し、ファイルフォーマットメタデータを生成してもよい。このデータもファイルに保存してもよい。エンコーダ1520またはストレージ1530がファイル作成機を有してもよく、あるいはファイル作成機がエンコーダ1520またはストレージ1530に対して動作可能に取り付けられてもよい。システムによっては「ライブ」で動作するものもある。すなわち、ストレージを省き、エンコーダ1520からの符号化メディアビットストリームを直接、送信機1540に伝送する。符号化メディアビットストリームはその後、必要に応じて、サーバとも呼ばれる送信機1540に送られてもよい。伝送に利用されるフォーマットは、基本自立型ビットストリームフォーマット、パケットストリームフォーマットまたは1つ以上の符号化メディアビットストリームをコンテナファイルにカプセル化したものであってもよい。エンコーダ1520、ストレージ1530、サーバ1540は同一の物理的装置に設けられても、別々の装置に設けられてもよい。エンコーダ1520およびサーバ1540は、リアルタイムコンテンツを扱ってもよい。その場合、符号化メディアビットストリームは通常、永久に記憶されることはなく、コンテンツエンコーダ1520および/またはサーバ1540に短期間保存され、処理遅延、送信遅延、符号化媒体ビットレートの平滑化が図られる。
【0216】
サーバ1540は、通信プロトコルスタックを用いて符号化メディアビットストリームを送信する。このスタックにはリアルタイムトランスポートプロトコル(RTP)、ユーザデータグラムプロトコル(UDP)、ハイパーテキストトランスファープロトコル(HTTP)、トランスポートコントロールプロトコル(TCP)、およびインターネットプロトコル(IP)の1つまたは複数を含んでもよいが、これらに限定されるものではない。通信プロトコルスタックがパケット指向の場合、サーバ1540は、符号化メディアビットストリームをパケットへとカプセル化する。例えば、RTPが用いられる場合、サーバ1540は、RTPペイロードフォーマットに従って符号化メディアビットストリームをRTPパケットへとカプセル化する。各媒体の種類は、通常、専用のRTPペイロードフォーマットを有する。システムには2つ以上のサーバ1540が含まれうるが、説明を単純にするため、以下の説明では1つのサーバ1540のみを示す。
【0217】
ストレージ1530または送信機1540へのデータ入力のためにメディアコンテンツがコンテナファイルにカプセル化される場合、送信機1540は、「送信ファイルパーサ」(図示せず)を備えてもよく、または動作可能であるように取り付けられてもよい。特に、コンテナファイルがそのように伝送されず、含められた符号化メディアビットストリームの少なくとも1つが通信プロトコルを介して伝送用にカプセル化される場合、送信ファイルパーサは、符号化メディアビットストリームの通信プロトコルを介して運ばれるのに適した部分を配置する。送信ファイルパーサは、パケットヘッダやペイロード等、通信プロトコル用の正しいフォーマットの作成を支援してもよい。マルチメディアコンテナファイルには、通信プロトコルで含められたメディアビットストリームの少なくとも1つをカプセル化するために、ISOベースメディアファイルフォーマットのヒントトラックのようなカプセル化指示が含まれてもよい。
【0218】
サーバ1540は、通信ネットワークを通じてゲートウェイ1550に接続されてもよく、そうでなくてもよい。これに加えて、またはこれに代えて、ゲートウェイはミドルボックスと呼ばれてもよい。システムは一般的に任意の数のゲートウェイや同様の装置を含んでもよいが、説明を単純にするため、以下の説明では1つのゲートウェイ1550のみを示す。ゲートウェイ1550は、様々な種類の機能を実行してもよい。こうした機能には、ある通信プロトコルスタックに従うパケットストリームを別の通信プロトコルスタックに従うものに変換することや、データストリームのマージおよびフォーク、ダウンリンクおよび/または受信機の容量に応じたデータストリームの操作等がある。データストリームの操作とは、例えば現在のダウンリンクネットワーク条件に応じた転送ストリームのビットレートの制御等である。ゲートウェイ1550の例としては、マルチポイント会議制御単位(Multipoint Conference Control Unit:MCU)、テレビ電話の回路交換・パケット交換間ゲートウェイ、PoC(Push-to-talk over Cellular)サーバ、DVB−H(Digital Video Broadcasting-Handheld)システムでのIPエンキャプスレータ(IP encapsulator)、ブロードキャスト伝送をローカルで家庭の無線ネットワークに転送するセットトップボックスやその他の装置が挙げられる。ゲートウェイ1550は、RTPが用いられる場合はRTP混合器またはRTP変換器とも呼ばれ、RTP接続の終点として動作してもよい。ゲートウェイ1550に代えて、または加えて、システムにはビデオシーケンスまたはビットストリームを連結させるスプライサが含まれてもよい。
【0219】
システムは1つ以上の受信機1560を備える。受信機1560は通常、送信信号を受信して復調し、符号化メディアビットストリームにデカプセル化(de-capsulating)することができる。符号化メディアビットストリームは、記憶ストレージ1570に送られてもよい。記憶ストレージ1570は、符号化メディアビットストリームを格納する任意の種類の大容量メモリを備えてもよい。これに代えて、またはこれに加えて、記憶ストレージ1570は、ランダムアクセスメモリ等の計算メモリを備えてもよい。記憶ストレージ1570における符号化メディアビットストリームのフォーマットは、基本自立型ビットストリームフォーマットであってもよく、1つ以上の符号化メディアビットストリームが1つのコンテナファイルにカプセル化されてもよい。音声ストリームと動画ストリームといった複数の符号化メディアビットストリームが互いに関連し合って存在する場合、通常コンテナファイルが使用され、受信機1560は、入力ストリームからコンテナファイルを生成するコンテナファイル生成器を備えるか、それに取り付けられる。システムによっては「ライブ」で動作するものもある。すなわち、記憶ストレージ1570を省き、受信機1560からの符号化メディアビットストリームを直接デコーダ1580に伝送する。システムによっては、記録済みストリームの直近10分間の抜粋のような記録済みストリームの最新部分が記憶ストレージ1570に保持され、それ以前に記録されたデータが記憶ストレージ1570から削除される。
【0220】
符号化メディアビットストリームは、記憶ストレージ1570からデコーダ1580に送られてもよい。音声ストリームと動画ストリームといった多数の符号化メディアビットストリームが関連し合って存在し、コンテナファイルにカプセル化される場合、または1つのメディアビットストリームがコンテナファイルにカプセル化される場合(例えばアクセスを容易にするため)、このコンテナファイルから各符号化メディアビットストリームをデカプセル化するためにファイルパーサ(図示せず)が使用される。記憶ストレージ1570またはデコーダ1580はファイルパーサを備えてもよく、あるいは記憶ストレージ1570またはデコーダ1580のいずれかにファイルパーサが取り付けられていてもよい。システムは多数のデコーダを備えてもよいが、普遍性を欠くことなく説明を単純にするために、本明細書では1つのデコーダ1570のみを示す。
【0221】
符号化メディアビットストリームはデコーダ1570によってさらに処理され、このデコーダの出力が1つ以上の非圧縮メディアストリームでもよい。最後に、レンダラ1590は、非圧縮メディアストリームを例えばラウドスピーカやディスプレイに再生してもよい。受信機1560、記憶ストレージ1570、デコーダ1570、およびレンダラ1590は、同一の物理的装置に設けられても、別々の装置に設けられてもよい。
【0222】
送信機1540および/またはゲートウェイ1550は、異なる表現間のスイッチングを実行するように構成されてもよい。例えば、ビュースイッチング、ビットレート適応化、および/または迅速なスタートアップが該当する。さらに/あるいは、送信機1540および/またはゲートウェイ1550は送信される表現(複数可)を選択するように構成されてもよい。異なる表現間の切替えは、複数の理由により行われるものである。具体的には、受信機1560のリクエストに応じるためや、ビットストリームが送られるネットワークの、スループットのような一般的条件等のためである。例えば、受信機からのリクエストとしては、これまでと異なる表現のセグメントまたはサブセグメントに対するリクエスト、送信スケーラビリティレイヤおよび/またはサブレイヤに対する変化のリクエスト、またはこれまでと異なる性能のレンダリング装置への変更が挙げられる。セグメントへのリクエストはHTTP GETリクエストであってもよい。サブセグメントへのリクエストは、バイト範囲が定められたHTTP GETリクエストであってもよい。これに加えて、またはこれに代えて、ビットレート調整またはビットレート適応化を利用して、例えばいわゆるストリーミングサービスにおける迅速なスタートアップを実現してもよい。これにより、ストリーミングの開始後またはランダムアクセス中の経路ビットレートよりも、送信ストリームのビットレートが低くなる。その結果、再生が即時開始でき、偶発的なパケット遅延および/または再伝送を許容可能なバッファ使用率が実現される。ビットレート適応化は、任意の順序で実行される複数の表現またはレイヤアップスイッチング、あるいは表現またはレイヤダウンスイッチング動作を含んでもよい。
【0223】
デコーダ1580は、異なる表現間を切り替えるスイッチングを行うように構成されてもよい。例えば、ビュースイッチング、ビットレート適応化、および/または迅速なスタートアップが該当する。さらに/あるいは、デコーダ1580は送信される表現(複数可)を選択するように構成されてもよい。異なる表現間の切替えは、複数の理由により行われるものである。具体的には、復号動作をより早くするためや、送信されたビットストリームの例えばビットレートを、当該ビットストリームが送信されるネットワークの、スループットのような一般的な条件に合わせることである。より速い復号動作は、デコーダ580を有する装置が、スケーラブルビデオのビットストリームの復号以外の理由でマルチタスクを実行中であり、コンピュータリソースを用いる場合に必要となりうる。別の例として、通常の再生速度よりも、速いペースでコンテンツの再生が行われる場合にもより速い復号動作が必要となる。例えば、通常のリアルタイム再生速度の倍または3倍ともなる場合である。デコード動作速度は、例えば早送りから通常再生、またはその逆といったように、復号または再生中に変更可能である。最後に、複数のレイヤアップスイッチングおよびレイヤダウンスイッチング動作が様々な順序にて実行されてもよい。
【0224】
上述の例示的実施形態は、SHVCやMV−HEVC等のマルチレイヤHEVC拡張版に沿って説明された。ただし、実施形態がその他任意のマルチレイヤ符号化でも同様に実現可能であることを理解されたい。上述の説明では、SHVC、MV−HEVC、あるいはその両方について特に言及した部分もあるが、その内容が同様に任意のマルチレイヤHEVC拡張版またはその他任意のマルチレイヤ符号化にも適用されうることを理解されたい。上述の説明では、HEVCをHEVC規格の基本バージョンおよびHEVC規格のすべての拡張、すなわちHEVCバージョン1、シングルレイヤ拡張(例えばREXT、スクリーンコンテンツ符号化)、マルチレイヤ拡張(MV−HEVC、SHVC、3D−HEVC)をまとめて示す語として使用している場合もある。
【0225】
上述の例示的実施形態がエンコーダを参照して説明されている点に関し、結果として得られるビットストリームとデコーダも対応する要素を備えうることも理解されるべきである。同様に、例示的実施形態がデコーダを参照して説明されている点に関し、デコーダによって復号されるビットストリームを生成する構造および/またはコンピュータプログラムをエンコーダが備えうることも理解されるべきである。
【0226】
前述された本発明の実施形態では、そこに含まれる処理に対する理解を促すため、別々のエンコーダ装置とデコーダ装置に関するコーデックを説明しているが、こうした装置やその構造、動作が単一のエンコーダ・デコーダ装置/構造/動作として実装されうることも理解されよう。さらに、コーダとデコーダが共通要素の一部または全部を共有してもよい。
【0227】
前述の例では、電子デバイスのコーデックにおいて動作する本発明の実施形態について説明しているが、請求項に定義している発明は、任意のビデオコーデックの一部として実装されうることを理解されたい。したがって、例えば、本発明の実施形態は、固定または有線通信経路を介してビデオの符号化を実施しうるビデオコーデックに実装されてもよい。
【0228】
ユーザ端末が本発明の上述の各実施形態に記載されたようなビデオコーデックを備えてもよい。「ユーザ端末」という語には、携帯電話、携帯型データ処理装置、携帯型Webブラウザ等の任意の好適な種類の無線ユーザ端末を含むことが意図されている。
【0229】
地上波公共移動通信ネットワーク(Public Land Mobile Network:PLMN)が、追加の要素として上述のビデオコーデックを含んでもよい。
【0230】
本発明の種々の実施形態は、概して、ハードウェア、特定用途向け回路、ソフトウェア、論理回路、またはそれらの任意の組合せで実装されてもよい。例えば、一部の態様がハードウェアで実装され、他の態様がコントローラ、マイクロプロセッサ、またはその他のコンピュータデバイスによって実行されうるファームウェアやソフトウェアで実装されてもよいが、本発明はこれに限定されない。本発明の種々の態様はブロック図、フローチャート、または他の図的表現によって図示および説明されるが、本明細書に記載するこれらのブロック、装置、システム、技術、または方法は、非限定的な例として、ハードウェア、ソフトウェア、ファームウェア、特定用途向け回路や論理回路、汎用のハードウェア、コントローラ、他のコンピュータデバイス、またはそれらの組合せとして実装されてもよいと理解されるべきである。
【0231】
本発明の実施形態は、プロセッサエンティティ内等に設けられる携帯装置のデータプロセッサによって実行可能な、あるいはハードウェア、またはソフトウェアおよびハードウェアの組合せによって実行可能な、コンピュータソフトウェアによって実装されてもよい。この点について、図中の論理フローのいずれのブロックも、プログラムのステップ、または相互接続された論理回路、ブロック、機能、またはプログラムステップ、論理回路、ブロック、機能の組合せを表していてもよいことが理解されよう。上記ソフトウェアは、メモリチップ、またはプロセッサ内に実装されたメモリブロック、ハードディスクやフロッピーディスク等の磁気媒体、例えばDVDやそのデータ変種、CD等の光学媒体等の物理的媒体に格納されてもよい。
【0232】
前記メモリはローカルの技術環境に適した任意の種類のものであってもよく、半導体ベースのメモリ装置、磁気メモリ装置およびシステム、光学メモリ装置およびシステム、固定メモリおよび着脱式メモリ等の任意の好適なデータ格納技術を用いて実装されてもよい。前記データプロセッサはローカルの技術環境に適した任意の種類のものであってもよく、この例として1つ以上の汎用コンピュータ、専用コンピュータ、マイクロプロセッサ、デジタル信号プロセッサ(Digital Signal Processor:DSP)、およびマルチコアプロセッサアーキテクチャによるプロセッサが挙げられるが、これらに限定されるものではない。
【0233】
本発明の実施形態は、集積回路モジュールのような、様々な要素で実施することもできる。集積回路の設計は、概して高度に自動化されたプロセスである。論理レベルの設計を、半導体基板上にエッチングおよび形成するための半導体回路設計に変換する複雑で強力なソフトウェアツールが利用可能である。
【0234】
カリフォルニア州マウンテンビューのSynopsys,Inc.や、カリフォルニア州サンノゼのCadence Designのような業者が提供するプログラムは、定評のある設計ルールと実績のある設計モジュールのライブラリに基づいて、半導体チップ上に導電経路や要素を自動的に配する。半導体回路の設計が完了すると、それは、OpusやGDSII等の標準的な電子フォーマットで半導体製造設備、いわゆるfabに送られて製造されてもよい。
【0235】
前述の説明は、非限定的な例によって、本発明の例示的な実施形態を十分かつ詳細に記述している。しかし、こうした前述の説明を、添付する図面および特許請求の範囲と併せて考慮すれば、種々の変更および適応が可能であることは、本願に関連する技術分野の当業者には明らかであろう。さらに、本発明が教示するこうした事項のすべておよび同様の変形は、そのすべてが本発明の範囲内にある。
【手続補正書】
【提出日】2018年2月6日
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
を含む、動き補償予測の方法。
【請求項2】
前記動き補償処理は、
・適用される予測の種類についてのサンプルレベルの決定を示すこと、
・L0およびL1の重みを示すための変調信号を符号化すること、
・L0およびL1で特定された異なる乖離の階級に対して目的の動作を示すために予測ブロックレベルについてシグナリングすること、
の内の1つまたは複数を含む、請求項1に記載の方法。
【請求項3】
サンプルの前記サブセットは、前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルを含む、請求項1または2に記載の方法。
【請求項4】
サンプルの前記サブセットは、L0とL1との最大の差分が予測ブロック内にある所定数のサンプルを含む、請求項1または2に記載の方法。
【請求項5】
前記特定することと決定することは、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、
をさらに含む、請求項1から4のいずれかに記載の方法。
【請求項6】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、
をさらに含む、請求項1から5のいずれかに記載の方法。
【請求項7】
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む、請求項6に記載の方法。
【請求項8】
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、
をさらに含む、請求項6または7に記載の方法。
【請求項9】
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することと、をさらに含む、請求項1から8のいずれかに記載の方法。
【請求項10】
処理手段及び記憶手段を備える装置であって、前記記憶手段はプログラム命令を格納し、前記プログラム命令は、前記処理手段に実行されると、前記装置に、請求項1から9のいずれかに記載の方法を遂行させるように構成される、装置。
【請求項11】
装置の処理手段に実行されると、前記装置に、請求項1から9のいずれかに記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。
【請求項12】
動き補償予測を実行するように構成されたビデオエンコーダを有する装置であって、前記ビデオエンコーダは、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成する手段と、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定する手段と、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定する手段と、
を備える装置。
【請求項13】
動き補償予測を実行するように構成されたビデオエンコーダであって、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
をさらに実行するように構成されるビデオエンコーダ。
【請求項14】
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、
を含む動き補償予測の方法。
【請求項15】
前記第1の中間動き補償サンプル予測L0および前記第2の中間動き補償サンプル予測L1が互いに所定の値より大きく異なるサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
をさらに含む請求項14に記載の方法。
【請求項16】
L0とL1との最大の差分が予測ブロック内にある所定数のサンプルとして、サンプルの前記1つ以上のサブセットを特定することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに対して適用される動き補償処理を決定することと、
をさらに含む請求項14に記載の方法。
【請求項17】
前記動き補償処理を決定することは、
・適用される予測の種類についてのサンプルレベルの決定を行うこと、
・変調信号からL0およびL1の重みを求めること、
・予測ブロックレベルシグナリングから、L0およびL1で特定された異なる乖離の階級に対して目的の動作を行うこと、
の内の1つまたは複数を含む、請求項14から16のいずれかに記載の方法。
【請求項18】
前記特定することと決定することは、
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて予測単位用の動き補償予測を作成することと、
をさらに含む、請求項14から17のいずれかに記載の方法。
【請求項19】
前記L0とL1との差分を計算することと、
前記L0とL1との差分に基づいて再構成予測誤差信号を決定することと、
動き補償予測を決定することと、
前記再構成予測誤差信号を前記動き補償予測に追加することと、
をさらに含む、請求項14から18のいずれかに記載の方法。
【請求項20】
前記予測誤差信号の決定に用いられる情報を、最も乖離しているL0およびL1サンプルの位置に基づく符号化単位の所定のエリアに制限することをさらに含む、請求項19に記載の方法。
【請求項21】
全予測単位、変換単位、または符号化単位を含む変換エリア用の前記予測誤差信号を符号化することと、
前記変換エリア内のサンプルのサブセットのみに対して前記予測誤差信号を適用することと、をさらに含む、
請求項19または20に記載の方法。
【請求項22】
予測単位内のすべてのサンプルまたは該サンプルのサブセットに対して前記動き補償処理を適用することと、をさらに含む、請求項14から21のいずれかに記載の方法。
【請求項23】
処理手段及び記憶手段を備える装置であって、前記記憶手段はプログラム命令を格納し、前記プログラム命令は、前記処理手段に実行されると、前記装置に、請求項14から22のいずれかに記載の方法を遂行させるように構成される、装置。
【請求項24】
装置の処理手段に実行されると、前記装置に、請求項14から22のいずれかに記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。
【請求項25】
動き補償予測を実行するように構成されたビデオデコーダを備える装置であって、前記ビデオデコーダは、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成する手段と、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得する手段と、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用する手段と、
を備える装置。
【請求項26】
動き補償予測を実行するように構成されたビデオデコーダであって、
第1の中間動き補償サンプル予測L0および第2の中間動き補償サンプル予測L1を作成することと、
L0とL1との予測の差分に基づくサンプルの1つ以上のサブセットに関する標示を取得することと、
前記差分を補償するべく、少なくともサンプルの前記1つ以上のサブセットに動き補償処理を適用することと、
をさらに実行するように構成されるビデオデコーダ。
【国際調査報告】