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

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

▶ テンセント・アメリカ・エルエルシーの特許一覧

特許7159423映像復号化のための方法、装置及びコンピュータ・プログラム
<>
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図1
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図2
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図3
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図4
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図5
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図6
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図7
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図8
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図9
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図10
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図11
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図12
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図13
  • 特許-映像復号化のための方法、装置及びコンピュータ・プログラム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-14
(45)【発行日】2022-10-24
(54)【発明の名称】映像復号化のための方法、装置及びコンピュータ・プログラム
(51)【国際特許分類】
   H04N 19/463 20140101AFI20221017BHJP
   H04N 19/593 20140101ALI20221017BHJP
【FI】
H04N19/463
H04N19/593
【請求項の数】 20
【外国語出願】
(21)【出願番号】P 2021174004
(22)【出願日】2021-10-25
(62)【分割の表示】P 2020545523の分割
【原出願日】2019-06-26
(65)【公開番号】P2022020694
(43)【公開日】2022-02-01
【審査請求日】2021-12-06
(31)【優先権主張番号】62/693,050
(32)【優先日】2018-07-02
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/147,246
(32)【優先日】2018-09-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャオ,リアン
(72)【発明者】
【氏名】リィウ,シャン
(72)【発明者】
【氏名】ジャオ,シン
(72)【発明者】
【氏名】リ,シアン
【審査官】坂東 大五郎
(56)【参考文献】
【文献】国際公開第2018/127624(WO,A1)
【文献】特表2020-526956(JP,A)
【文献】Rickard Sjoberg et al.,Description of SDR and HDR video coding technology proposal by Ericsson and Nokia,Joint Video Exploration Team (JVET),2018年04月13日,pp.5-6,[JVET-J0012-v1] (version 2)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
復号器で映像を復号化する方法であって、当該方法は:
符号化された映像ビットストリームから第1の数を示す構文要素を復号化する段階と、
前記符号化された映像ビットストリームから、非正方形ブロックである第1のブロックの予測情報を復号化し、前記第1のブロックの前記予測情報から、前記非正方形ブロックに関連付けられた第1の組のイントラ予測モードにおける第1のイントラ予測モードを決定する段階であって、
前記第1の組のイントラ予測モードは、正方形ブロックに関連付けられた第2の組のイントラ予測モードにない前記第1の数の広角モードを含み、前記第2の組のイントラ予測モードは、現在ブロックが予測される方向の左下から右上に向けて順に番号付けられた複数のイントラ予測モードを含み、前記第1の数の広角モードは前記第2の組のイントラ予測モードに隣接する番号を順に与えられており、
前記非正方形ブロックの幅が高さより大きい場合、前記第2の組のイントラ予測モードにおける左下から前記第1の数のイントラ予測モードは、前記第1の組のイントラ予測モードにない削除されたイントラ予測モードであり;
前記非正方形ブロックの高さが幅より大きい場合、前記第2の組のイントラ予測モードにおける右上から前記第1の数のイントラ予測モードは、前記第1の組のイントラ予測モードにない削除されたイントラ予測モードである、段階と、
前記第1のイントラ予測モードに従って前記第1のブロックの少なくとも1つのサンプルを再構成する段階とを含み、
前記第1のブロックの前記予測情報から前記第1のイントラ予測モードを決定することは、前記予測情報によって示されるイントラ予測モードが前記削除されたイントラ予測モードの1つに対応する場合、前記予測情報によって示されるイントラ予測モードに対する所定の数の演算により前記第1のイントラ予測モードを決定することを含み、
前記所定の数の演算は、前記非正方形ブロックの幅が高さより大きい場合は前記所定の数の加算であり、前記非正方形ブロックの高さが幅さより大きい場合は前記所定の数の減算である、方法。
【請求項2】
前記第1の数が、復号化された前記構文要素によって示される複数の数のうちから前記第1のブロックのアスペクト比に基づいて選択されることを含む、
請求項1に記載の方法。
【請求項3】
前記第1の数が、復号化された前記構文要素によって示される複数の数のうちから前記第1のブロックのアスペクト比に基づいて選択されることが、アスペクト比が1から離れるほど大きな前記第1の数が選択されることを含む
請求項2に記載の方法。
【請求項4】
前記構文要素が、シーケンスパラメータセット、画像パラメータセット、スライスヘッダ、画像の領域の共通構文要素、および前記画像の前記領域の共通パラメータのうちの少なくとも1つにある、請求項1乃至3の何れか一項に記載の方法。
【請求項5】
前記第1のイントラ予測モードは、前記正方形ブロックに関連付けられた前記第2の組のイントラ予測モードにない、請求項1乃至4の何れか一項に記載の方法。
【請求項6】
前記第1のブロックのアスペクト比を計算することをさらに含み、
前記第2の組のイントラ予測モードから、前記第1の数のイントラ予測モードを削除し、前記第2の組のイントラ予測モードに前記第1の数の異なるイントラ予測モードを追加することにより、前記第1の組のイントラ予測モードを形成することをさらに含む、
請求項1乃至5の何れか一項に記載の方法。
【請求項7】
前記第1のブロックのアスペクト比が1より大きく2以下である、または1/2以上1未満である場合、前記第1の数は第3の数Mに等しく、前記第3の数Mは正の整数である、請求項1乃至6の何れか一項に記載の方法。
【請求項8】
前記第2の組のイントラ予測モードが33のイントラ予測モードを有するとき、前記第3の数Mは3に等しく、前記第2の組のイントラ予測モードが65のイントラ予測モードを有するとき、前記第3の数Mは6に等しい、請求項7に記載の方法。
【請求項9】
前記第1のブロックのアスペクト比が4以上であるまたは1/4以下であるとき、前記第1の数は第4の数Nに等しく、前記第4の数Nは正の整数である、請求項1乃至8のうち何れか一項に記載の方法。
【請求項10】
前記第2の組のイントラ予測モードが33のイントラ予測モードを有するとき、前記第4の数Nは5に等しく、前記第2の組のイントラ予測モードが65のイントラ予測モードを有するとき、前記第4の数Nは10に等しい、請求項9に記載の方法。
【請求項11】
前記第1の数の広角モードは、前記削除されたイントラ予測モードの向きを逆にしたものである、請求項1ないし10のうちいずれか一項に記載の方法。
【請求項12】
前記第2の組のイントラ予測モードが、現在ブロックが予測される方向の左下から右上に向けてイントラ予測モード2ないし66を含み、nWidthが現在ブロックの幅を、nHeightが現在ブロックの高さを示すものであって、nHeight<nWidth<2×nHeightの場合、前記削除されたイントラ予測モードはイントラ予測モード2~7であり、前記広角モードはイントラ予測モード67~72であり、該イントラ予測モード67~72はそれぞれイントラ予測モード3~8の向きを逆にしたものであり、前記所定の数の演算は65の加算である、請求項1乃至5のうち何れか一項に記載の方法。
【請求項13】
前記第2の組のイントラ予測モードが、現在ブロックが予測される方向の左下から右上に向けてイントラ予測モード2ないし66を含み、nWidthが現在ブロックの幅を、nHeightが現在ブロックの高さを示すものであって、nWidth≧4×nHeightの場合、前記削除されたイントラ予測モードはイントラ予測モード2~11であり、前記広角モードはイントラ予測モード67~76であり、該イントラ予測モード67~76はそれぞれイントラ予測モード3~12の向きを逆にしたものであり、前記所定の数の演算は65の加算である、請求項1乃至5のうち何れか一項に記載の方法。
【請求項14】
前記第2の組のイントラ予測モードが、現在ブロックが予測される方向の左下から右上に向けてイントラ予測モード2ないし66を含み、nWidthが現在ブロックの幅を、nHeightが現在ブロックの高さを示すものであって、nWidth<nHeight<2×nWidthの場合、前記削除されたイントラ予測モードはイントラ予測モード61~66であり、前記広角モードはイントラ予測モード-1~-6であり、該イントラ予測モード-1~-6はそれぞれイントラ予測モード65~60の向きを逆にしたものであり、前記所定の数の演算は67の減算である、請求項1乃至5のうち何れか一項に記載の方法。
【請求項15】
前記第2の組のイントラ予測モードが、現在ブロックが予測される方向の左下から右上に向けてイントラ予測モード2ないし66を含み、nWidthが現在ブロックの幅を、nHeightが現在ブロックの高さを示すものであって、nHeight≧4×nWidthの場合、前記削除されたイントラ予測モードはイントラ予測モード57~66であり、前記広角モードはイントラ予測モード-1~-10であり、該イントラ予測モード-1~-10はそれぞれイントラ予測モード65~56の向きを逆にしたものであり、前記所定の数の演算は67の減算である、請求項1乃至5のうち何れか一項に記載の方法。
【請求項16】
請求項1乃至15のうち何れか一項に記載の方法を実行するように構成された処理回路を備えた装置。
【請求項17】
請求項1乃至15のうち何れか一項に記載の方法をコンピュータに実行させるためのコンピュータ・プログラム。
【請求項18】
符号器で映像を符号化する方法であって、当該方法は:
画像の非正方形ブロックである第1のブロックを予測符号化するための、前記非正方形ブロックに関連付けられた第1の組のイントラ予測モードにおける第1のイントラ予測モードを決定する段階であって、
前記第1の組のイントラ予測モードは、正方形ブロックに関連付けられた第2の組のイントラ予測モードにない第1の数の広角モードを含み、前記第2の組のイントラ予測モードは、現在ブロックが予測される方向の左下から右上に向けて順に番号付けられた複数のイントラ予測モードを含み、前記第1の数の広角モードは前記第2の組のイントラ予測モードに隣接する番号を順に与えられており、
前記非正方形ブロックの幅が高さより大きい場合、前記第2の組のイントラ予測モードにおける左下から前記第1の数のイントラ予測モードは、前記第1の組のイントラ予測モードにない削除されたイントラ予測モードであり;
前記非正方形ブロックの高さが幅より大きい場合、前記第2の組のイントラ予測モードにおける右上から前記第1の数のイントラ予測モードは、前記第1の組のイントラ予測モードにない削除されたイントラ予測モードである、段階と、
前記第1のイントラ予測モードに従って前記第1のブロックの少なくとも1つのサンプルを符号化する段階と;
イントラ予測モードを示す予測情報を決定する段階であって、前記第1のイントラ予測モードが前記広角モードの1つである場合には、前記予測情報は前記削除されたイントラ予測モードの1つを示すように決定され、復号器が、前記予測情報によって示されるイントラ予測モードが前記削除されたイントラ予測モードの1つに対応する場合、前記予測情報によって示されるイントラ予測モードに対する所定の数の演算により前記第1のイントラ予測モードを決定できるようにし、
前記所定の数の演算は、前記非正方形ブロックの幅が高さより大きい場合は前記所定の数の加算であり、前記非正方形ブロックの高さが幅さより大きい場合は前記所定の数の減算である、段階と、
少なくとも、符号化された前記少なくとも1つのサンプルと、前記予測情報と、前記第1の数とを表すビットストリームを出力する段階とを含む、
方法。
【請求項19】
請求項18に記載の方法を実行するように構成された処理回路を備えた装置。
【請求項20】
請求項18に記載の方法をコンピュータに実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2018年7月2日に提出された米国仮出願第62/693,050号、「映像圧縮における広角イントラ予測のための方法および装置」に優先権の利益を主張する2018年9月28日に提出されて現在は米国特許第10,284,860号である米国特許出願第16/147,246号、「映像符号化のための方法および装置」の優先権の利益を主張し、その内容全体が参照により本明細書に組み込まれる。
【0002】
本開示は、映像復号化に一般的に関連する実施形態を説明する。
【背景技術】
【0003】
本明細書で提供される背景の説明は、本開示の文脈を一般的に提示する目的のためのものである。現在記名されている発明者の作品は、この背景技術欄で説明されている限りにおいて、出願時に先行技術と見なされない説明の態様は、明示的または黙示的に本開示に対する先行技術として認められていない。
【0004】
映像の符号化および復号化は、動作補償付きの画像間予測を使用して実行され得る。非圧縮デジタル映像は一連の画像を含むことができ、各画像は、例えば1920×1080の輝度サンプルと関連するクロミナンスサンプルとの空間次元を有している。一連の画像は、例えば毎秒60画像すなわち60Hzの固定または可変の画像速度(非公式にはフレームレートとも呼ばれる)を有し得る。非圧縮映像には、重要なビットレート要件がある。例えば、サンプルあたり8ビットの1080p60 4:2:0映像(60Hzのフレームレートにおける1920×1080輝度サンプル解像度)には、1.5Gbit/sに近い帯域幅が必要である。このような映像を1時間使用するには、600GBを超える記憶領域が必要である。
【0005】
映像の符号化と復号化の1つの目的は、圧縮によって入力映像信号の冗長性を減らすことである。圧縮は、前述の帯域幅または記憶領域の要件を、場合によっては2桁以上削減するのに役立ち得る。可逆圧縮と非可逆圧縮の両方、およびそれらの組み合わせを使用できる。可逆圧縮とは、圧縮された元の信号から元の信号の正確なコピーを再構築できる手法を指す。非可逆圧縮を使用する場合、再構築された信号は元の信号と同一ではない可能性があるが、元の信号と再構築された信号との間の歪みは十分に小さいため、再構築された信号は目的の用途に役立つ。映像の場合、非可逆圧縮が広く採用されている。許容される歪みの量は用途によって異なる。例えば、特定の消費者ストリーミング用途のユーザは、テレビ投稿用途のユーザよりも高い歪みを許容し得る。達成可能な圧縮率は、より高い許容/許容歪みにより、より高い圧縮率が得られることを反映し得る。
【0006】
映像符号器および復号器は、例えば、動作補償、変換、量子化、エントロピー符号化など、いくつかの広範なカテゴリの手法を利用できる。
【0007】
映像コーデック技術は、イントラ符号化と呼ばれる手法を含み得る。イントラ符号化において、サンプル値は、以前に再構築された参照画像からのサンプルまたは他のデータを参照せずに表される。いくつかの映像コーデックにおいて、画像は空間的にサンプルのブロックに細分化される。サンプルのすべてのブロックがイントラモードで符号化されると、その画像はイントラ画像になる可能性がある。イントラ画像とその独立した復号器リフレッシュ画像などの派生物は、復号器の状態をリセットするために使用できるため、符号化された映像ビットストリームおよび映像セッションの第1の画像として、または静止画像として使用され得る。イントラブロックのサンプルは変換にさらされ、変換係数はエントロピー符号化の前に量子化される。イントラ予測は、変換前のドメインにおいてサンプル値を最小化する手法であり得る。場合によっては、変換後のDC値が小さく、AC係数が小さいほど、エントロピー符号化後のブロックを表すために特定の量子化ステップサイズで必要なビットが少なくなる。
【0008】
例えば、MPEG-2生成符号化技術から知られているような従来のイントラ符号化は、イントラ予測を使用しない。しかしながら、いくつかの新しい映像圧縮技術は、例えば、周囲のサンプルデータおよび/または空間的に隣接し、データブロックの復号化順序で先行する符号化/復号化の間に得られたメタデータから試みる技術を含む。このような手法は、以降「イントラ予測」手法と呼ばれる。少なくともいくつかのケースでは、イントラ予測は、再構成中の現在の画像からの参照データのみを使用し、参照画像からの参照データは使用しないことに注意されたい。
【0009】
イントラ予測には様々な形式があり得る。そのような技法の2つ以上が所与の映像符号化技法で使用できる場合、使用中の技法はイントラ予測モードで符号化できる。場合によっては、モードにサブモードやパラメータを含めることができ、それらのモードを個別に符号化するか、モードコードワードに含めることができる。特定のモード/サブモード/パラメータの組み合わせに使用するコードワードは、イントラ予測による符号化効率の向上に影響を与える可能性があり、コードワードをビットストリームに変換するために使用されるエントロピー符号化技術にも影響を与える可能性がある。
【0010】
イントラ予測の特定のモードがH.264で導入され、H.265で改良され、さらに共同探索モデル(JEM)、多用途映像符号化(VVC)、ベンチマークセット(BMS)などの新しい符号化技術で改良された。予測器ブロックは、すでに利用可能なサンプルに属する隣接するサンプル値を使用して形成できる。隣接するサンプルのサンプル値は、方向に従って予測器ブロックにコピーされる。使用中の方向への参照は、ビットストリームで符号化するか、それ自体を予測することができる。
【0011】
図1を参照すると、右下に描かれているのは、H.265の35の可能性のある予測方向から知られている9つの予測方向のサブセットである。矢印が収束する点(101)は、予測されるサンプルを表す。矢印は、サンプルが予測される方向を表す。例えば、矢印(102)は、サンプル(101)が、水平から45度の角度で、右上のサンプルから予測されることを示す。同様に、矢印(103)は、サンプル(101)がサンプル(101)の左下に、水平から22.5度の角度で予測されることを示す。
【0012】
さらに図1を参照すると、左上に、4×4サンプルの正方形ブロック(104)が示されている(破線の太字の線で示されている)。正方形ブロック(104)には、それぞれに「S」のラベルが付けられた16のサンプルが含まれており、Y次元でのその位置(例えば、行インデックス)とX次元でのその位置(例えば、列インデックス)とが含まれる。例えば、サンプルS21は、Y次元の(上から)2番目のサンプルであり、X次元の(左から)1番目のサンプルである。同様に、サンプルS44は、ブロック(104)のY次元およびX次元の両方において4番目のサンプルである。ブロックのサイズは4×4サンプルなので、S44は右下にある。さらに、同様の番号付けスキームに従う参照サンプルが示されている。参照サンプルは、ブロック(104)に対して、そのY位置(例えば、行インデックス)およびX位置(列インデックス)においてRでラベル付けされる。H.264およびH.265の両方において、予測サンプルは再構成中のブロックに隣接しており、したがって、負の値を使用する必要はない。
【0013】
イントラ画像予測は、通知された予測方向に応じて、隣接するサンプルから参照サンプル値をコピーすることで機能する。例えば、このブロックについて、符号化された映像ビットストリームに、矢印(102)と一致する予測方向を示す通知が含まれている、つまり、サンプルは、予測サンプルまたは水平から45度の角度で右上のサンプルから予測されると想定する。その場合、サンプルS41、S32、S23、およびS14は同じR05から予測される。そして、サンプルS44がR08から予測される。
【0014】
特定の場合、特に方向が45度で均等に分割できない場合において、複数の参照サンプルの値は、参照サンプルを計算するために、例えば、補間によって組み合わされてもよい。
【0015】
映像符号化技術が発展するにつれて、可能な方向の数は増加している。H.264(2003年)では、9つの異なる方向を表すことができた。これはH.265(2013年)で33に増加し、JEM/VVC/BMSは開示時において最大65方向をサポートできる。最も可能性の高い方向を特定するための実験が行われ、エントロピー符号化における特定の手法を使用して、可能性の低い方向の特定のペナルティを受け入れつつ、可能性のある方向を少数のビットで表現する。さらに、方向自体は、隣接する、すでに復号化されたブロックで使用される隣接する方向から予測される場合がある。
【0016】
図2は、時間とともに増加する予測方向の数を示すための、JEMによる65のイントラ予測方向を示す概略図201である。
【発明の概要】
【発明が解決しようとする課題】
【0017】
方向を表す、符号化された映像ビットストリーム内のイントラ予測方向ビットのマッピングは、映像符号化技術ごとに異なっていてもよく、例えばコードワードに対するイントラ予測モード、予測方向の単純な直接マッピングから、最も可能性の高いモードや類似の手法を含む複雑な適応スキームまで、様々な範囲があり得る。当業者はそれらの技術に容易に精通している。ただし、すべての場合において、他の特定の方向よりも統計的に映像コンテンツで発生する可能性が低い特定の方向が存在する可能性がある。映像圧縮の目的は冗長性の削減であるため、適切に機能する映像符号化技術では、これらの可能性の低い方向は、可能性の高い方向よりも多くのビット数で表される。
【課題を解決するための手段】
【0018】
本開示の態様は、映像符号化のための方法および装置を提供する。いくつかの例では、装置は、受信回路および処理回路を含む。
【0019】
本開示の態様によれば、復号器における映像復号化のための方法が提供される。開示された方法では、符号化された映像ビットストリームからの第1のブロックの予測情報が復号化される。第1のブロックは非正方形ブロックであり、第1のブロックの予測情報は、非正方形ブロックに関連する第1の組のイントラ予測モードにおける第1のイントラ予測モードを示す。第1の組のイントラ予測モードは、正方形ブロックに関連する第2の組のイントラ予測モードからの第1の数の異なるイントラ予測モードを有する。第1の数は、第1のブロックのアスペクト比に基づく正の整数である。その後、第1のブロックの少なくとも1つのサンプルが、第1のイントラ予測モードに従って再構成される。
【0020】
開示された方法は、符号化された映像ビットストリームから第1の数を示す構文要素を復号化することをさらに含む。構文要素は、シーケンスパラメータセット、画像パラメータセット、スライスヘッダ、画像の領域の共通構文要素、および画像の領域の共通パラメータのうちの少なくとも1つにある。
【0021】
いくつかの実施形態では、第2の組のイントラ予測モードにおける第2の数のイントラ予測モードは、第1の組のイントラ予測モード内になく、第2の数は、第1のブロックのアスペクト比に基づく正の整数である。
【0022】
いくつかの実施形態では、第1の数が第2の数に等しい。第1のイントラ予測モードは、正方形ブロックに関連する第2の組のイントラ予測モードにはない。
【0023】
いくつかの実施形態では、第1の数は、第1のブロックの形状に依存しない固定値である。
【0024】
開示される方法は、第1のブロックのアスペクト比を計算することと、第1のブロックのアスペクト比に基づいて第1の数を決定することとをさらに含む。第2の組のイントラ予測モードにおいて第2の数のイントラ予測モードが除去され、第2の組のイントラ予測モードにおいて第1の数の異なるイントラ予測モードが追加されて、第1の組のイントラ予測モードが形成される。
【0025】
本開示の別の態様によれば、装置が提供される。装置は処理回路を備えている。処理回路は、映像符号化のために開示された方法を実行するように構成される。
【0026】
本開示の態様は、映像復号化のためにコンピュータによって実行されたときに、コンピュータに映像符号化のための方法を実行させる命令を格納する非一時的なコンピュータ可読媒体も提供する。
【0027】
開示される主題のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるであろう。
【図面の簡単な説明】
【0028】
図1】H.265によるイントラ予測モードのサブセットの概略図である。
図2】JEMによるイントラ予測方向の図である。
図3】一実施形態による通信システム(300)の簡略化されたブロック図の概略図である。
図4】一実施形態による通信システム(400)の簡略化されたブロック図の概略図である。
図5】一実施形態による復号器の簡略化されたブロック図の概略図である。
図6】一実施形態による符号器の簡略化されたブロック図の概略図である。
図7】別の実施形態による符号器のブロック図を示す。
図8】別の実施形態による復号器のブロック図を示す。
図9】広角モードの例を示す概略図を示す。
図10】いくつかの従来のイントラ予測モードを広角モードに再マッピングする例を示す。
図11】いくつかの従来のイントラ予測モードを広角モードに再マッピングする別の例を示す。
図12】従来のイントラ予測方向および広角イントラ予測方向を示す概略図を示す。
図13】本開示の一実施形態による復号化処理を概説するフローチャートを示す。
図14】一実施形態によるコンピュータシステムの概略図である。
【発明を実施するための形態】
【0029】
図3は、本開示の実施形態による通信システム(300)の簡略化されたブロック図を示す。通信システム(300)は、例えばネットワーク(350)を介して互いに通信することができる複数の端末装置を含む。例えば、通信システム(300)は、ネットワーク(350)を介して相互接続された第1の対の端末装置(310)および(320)を含む。図3の例では、端末装置の第1の対(310)および(320)は、データの一方向送信を実行する。例えば、端末装置(310)は、ネットワーク(350)を介して他の端末装置(320)に送信するために、映像データ(例えば、端末装置(310)によってキャプチャされた映像画像のストリーム)を符号化し得る。符号化された映像データは、1つ以上の符号化された映像ビットストリームの形で送信できる。端末装置(320)は、ネットワーク(350)から符号化された映像データを受信し、符号化された映像データを復号化して、映像画像を回復し、回復された映像データに従って映像画像を表示することができる。一方向のデータ送信は、メディアサービング用途などでは一般的であり得る。
【0030】
別の例では、通信システム(300)は、例えば映像会議中に発生し得る符号化された映像データの双方向送信を実行する第2の対の端末装置(330)および(340)を含む。データの双方向送信の場合、一例では、端末装置(330)および(340)の各端末装置は、端末装置(330)および(340)のうち他の端末装置へのネットワーク(350)を介した送信のために映像データ(例えば、端末装置によってキャプチャされた映像画像のストリーム)を符号化し得る。端末装置(330)および(340)の各端末装置はまた、端末装置(330)および(340)のうち他の端末装置によって送信された符号化された映像データを受信し、符号化された映像データを復号化して映像画像を回復することができ、回復された映像データに従ってアクセス可能な表示装置で映像画像を表示することができる。
【0031】
図3の例では、端末装置(310)、(320)、(330)および(340)は、サーバ、パーソナルコンピュータおよびスマートフォンとして示され得るが、本開示の原理はそのように限定されない。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤ、および/または専用の映像会議機器での用途を見出す。ネットワーク(350)は、例えば有線(有線)および/または無線通信ネットワークを含む、端末装置(310)、(320)、(330)および(340)間で符号化された映像データを伝達する任意の数のネットワークを表す。通信ネットワーク(350)は、回路交換チャネルおよび/またはパケット交換チャネルでデータを交換することができる。代表的なネットワークには、通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワークおよび/またはインターネットなどがある。本議論の目的のために、ネットワーク(350)のアーキテクチャおよびトポロジーは、以下に本明細書で説明されない限り、本開示の動作にとって重要ではない場合がある。
【0032】
図4は、開示された主題のための用途の例として、ストリーミング環境における映像符号器および映像復号器の配置を示す。開示された主題は、例えば、映像会議、デジタルTV、CD、DVD、メモリスティックなどを含むデジタルメディアへの圧縮映像の格納などを含む他の映像対応用途に等しく適用可能であり得る。
【0033】
ストリーミングシステムは、例えば非圧縮の映像画像(402)のストリームを作成する、例えばデジタルカメラなどの映像ソース(401)を含み得るキャプチャサブシステム(413)を含み得る。一例では、映像画像(402)のストリームは、デジタルカメラによって取得されたサンプルを含む。符号化された映像データ(404)(または符号化された映像ビットストリーム)と比較してデータ量が多いことを強調するために太線で描かれた映像画像(402)のストリームは、映像ソース(401)に結合された映像符号器(403)を含む電子装置(420)で処理できる。映像符号器(403)は、以下でより詳細に説明されるように、開示された主題の態様を可能にするまたは実装するためのハードウェア、ソフトウェア、またはそれらの組み合わせを含み得る。映像画像(402)のストリームと比較してデータ量が少ないことを強調するために細い線で示された符号化された映像データ(404)(または符号化された映像ビットストリーム(404))は、将来の使用のためにストリーミングサーバ(405)に格納され得る。図4のクライアントサブシステム(406)および(408)などの1つまたはそれ以上のストリーミングクライアントサブシステムは、ストリーミングサーバ(405)にアクセスして、符号化された映像データ(404)のコピー(407)および(409)を取り出し得る。クライアントサブシステム(406)は、例えば、電子装置(430)に映像復号器(410)を含み得る。映像復号器(410)は、符号化された映像データの着信コピー(407)を復号化し、ディスプレイ(412)(例えば、ディスプレイ画面)または他のレンダリング装置(図示せず)にレンダリングできる映像画像(411)の発信ストリームを作成する。一部のストリーミングシステムでは、符号化された映像データ(404)、(407)、および(409)(例えば、映像ビットストリーム)は、特定の映像符号化/圧縮規格に従って符号化できる。これらの規格の例には、ITU-T勧告H.265が含まれる。例として、開発中の映像符号化規格は、非公式にVersatile Video CodingまたはVVCとして知られている。開示された主題は、VVCの文脈で使用され得る。
【0034】
電子装置(420)および(430)は、他の構成要素(図示せず)を含み得ることに留意されたい。例えば、電子装置(420)は映像復号器(図示せず)を含んでもよく、電子装置(430)は同様に映像符号器(図示せず)を含んでもよい。
【0035】
図5は、本開示の実施形態による映像復号器(510)のブロック図を示している。映像復号器(510)は、電子装置(530)に含まれ得る。電子装置(530)は、受信機(531)(例えば、受信回路)を含み得る。映像復号器(510)は、図4の例における映像復号器(410)の代わりに使用され得る。
【0036】
受信機(531)は、映像復号器(510)によって復号化される1つまたはそれ以上の符号化された映像シーケンスを受信することができ、同じまたは別の実施形態では、一度に1つの符号化された映像シーケンスであり、各符号化された映像シーケンスの復号化は、他の符号化された映像シーケンスから独立している。符号化された映像シーケンスは、符号化された映像データを記憶する記憶装置へのハードウェア/ソフトウェアリンクであり得るチャネル(501)から受信され得る。受信機(531)は、それぞれの使用エンティティ(図示せず)に転送され得る他のデータ、例えば、符号化オーディオデータおよび/または補助データストリームとともに、符号化された映像データを受信し得る。受信機(531)は、符号化された映像シーケンスを他のデータから分離することができる。ネットワークジッタに対抗するために、受信機(531)とエントロピー復号器/パーサ(520)(以降、「パーサ(520)」)との間にバッファメモリ(515)が結合され得る。特定の用途では、バッファメモリ(515)は、映像復号器(510)の一部である。他の場合には、バッファメモリ(515)は映像復号器(510)の外側にあり得る(図示せず)。さらに他のものでは、例えばネットワークジッタに対抗するために、映像復号器(510)の外部にバッファメモリ(図示せず)があり得、さらに、例えば再生タイミングを処理するために、映像復号器(510)内に別のバッファメモリ(515)があり得る。受信機(531)が十分な帯域幅および制御性を有するストア/フォワード装置から、または等同期(isosynchronous)ネットワークからデータを受信している場合、バッファメモリ(515)は必要ないか、小さくてもよい。インターネットなどのベストエフォートパケットネットワークで使用する場合、バッファメモリ(515)が必要になる場合があり、比較的大きく、適応サイズが有利であり、少なくとも部分的に、映像復号器(510)の外側のオペレーティングシステムまたは類似の要素(図示せず)に実装され得る。
【0037】
映像復号器(510)は、符号化された映像シーケンスからシンボル(521)を再構築するためのパーサ(520)を含み得る。これらのシンボルのカテゴリには、図5に示したように、映像復号器(510)の動作を管理するために使用される情報、および潜在的には、電子装置(530)の一体部品ではないが電子装置(530)に結合され得るレンダリング装置(512)などのレンダリング装置(例えば、表示画面)を制御するための情報が含まれる。レンダリング装置の制御情報は、補足拡張情報(Supplementary Enhancement Information)(SEIメッセージ)または映像ユーザビリティ情報(Video Usability Information:VUI)パラメータセットフラグメント(図示せず)の形であり得る。パーサ(520)は、受信された符号化された映像シーケンスを解析/エントロピー復号することができる。符号化された映像シーケンスの符号化は、映像符号化技術または映像符号化規格に従うことができ、可変長符号化、ハフマン符号化、文脈依存性の有無にかかわらず算術符号化などを含む様々な原理に従い得る。パーサ(520)は、グループに対応する少なくとも1つのパラメータに基づいて、映像復号器内のピクセルのサブグループのうちの少なくとも1つのサブグループパラメータの組を、符号化された映像シーケンスから抽出することができる。サブグループは、画像のグループ(GOP)、画像、タイル、スライス、マクロブロック、符号化ユニット(CU)、ブロック、変換ユニット(TU)、予測ユニット(PU)などを含み得る。パーサ(520)はまた、変換係数、量子化パラメータ値、動きベクトルなどのような符号化された映像シーケンス情報から抽出することができる。
【0038】
パーサ(520)は、シンボル(521)を作成するために、バッファメモリ(515)から受信された映像シーケンスに対してエントロピー復号化/パース操作を実行することができる。
【0039】
シンボル(521)の再構築には、符号化された映像画像またはその一部(インター画像およびイントラ画像、インターブロックおよびイントラブロックなど)のタイプ、およびその他の要因に応じて、複数の異なるユニットが含まれる。含まれるユニットおよびその方法は、パーサ(520)によって符号化された映像シーケンスから解析されたサブグループ制御情報によって制御され得る。パーサ(520)と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは、明確にするために示されていない。
【0040】
すでに述べた機能ブロックの他に、映像復号器(510)は、概念的には、以下で説明するように、いくつかの機能ユニットに細分化され得る。商業的な制約の下で動作する実際の実装では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的には互いに統合され得る。しかしながら、開示された主題を説明するために、以下の機能ユニットへの概念的な細分化が適切である。
【0041】
第1のユニットは、スケーラ/逆変換ユニット(551)である。スケーラ/逆変換ユニット(551)は、使用する変換、ブロックサイズ、量子化係数、量子化スケーリング行列などを含む制御情報と同様に、量子化された変換係数をパーサ(520)からシンボル(521)として受け取る。スケーラ/逆変換ユニット(551)は、アグリゲータ(555)に入力できるサンプル値を含むブロックを出力できる。
【0042】
場合によっては、スケーラ/逆変換(551)の出力サンプルは、イントラ符号化されたブロック、つまり、以前に再構築された画像からの予測情報を使用していないが、現在の画像の以前に再構築された部分からの予測情報を使用できるブロックに関係し得る。そのような予測情報は、イントラ画像予測ユニット(552)によって提供され得る。場合によっては、イントラ画像予測ユニット(552)は、現在の画像バッファ(558)からフェッチされた周囲のすでに再構成された情報を使用して、再構成中のブロックと同じサイズおよび形状のブロックを生成する。現在の画像バッファ(558)は、例えば、部分的に再構成された現在の画像および/または完全に再構成された現在の画像をバッファリングする。アグリゲータ(555)は、場合によっては、サンプルごとに、イントラ予測ユニット(552)が生成した予測情報をスケーラ/逆変換ユニット(551)によって提供された出力サンプル情報に追加する。
【0043】
他の場合では、スケーラ/逆変換ユニット(551)の出力サンプルは、インター符号化された、潜在的に動作補償されたブロックに関係する可能性がある。そのような場合、動作補償予測ユニット(553)は、参照画像メモリ(557)にアクセスして、予測に使用されるサンプルをフェッチすることができる。フェッチされたサンプルをブロックに関連するシンボル(521)に従って動作補償した後、これらのサンプルは、出力サンプル情報を生成するために、アグリゲータ(555)によってスケーラ/逆変換ユニット(551)の出力に追加され得る(この場合、残差サンプルまたは残差信号と呼ばれる)。動作補償予測ユニット(553)が予測サンプルをフェッチする参照画像メモリ(557)内のアドレスは、例えば、X、Y、および参照画像コンポーネントを有し得るシンボル(521)の形で動作補償予測ユニット(553)が利用できる動きベクトルによって制御され得る。動作補償はまた、サブサンプルの正確な動きベクトルが使用されているときに参照画像メモリ(557)からフェッチされたサンプル値の補間、動きベクトル予測メカニズムなどをも含み得る。
【0044】
アグリゲータ(555)の出力サンプルは、ループフィルタユニット(556)における様々なループフィルタリング技術の対象となり得る。映像圧縮技術には、符号化された映像シーケンス(符号化された映像ビットストリームとも呼ばれる)に含まれるパラメータによって制御され、パーサ(520)からのシンボル(521)としてループフィルタユニット(556)で利用できるループ内フィルタ技術を含めることができるが、符号化された画像または符号化された映像シーケンスの以前の(復号化順で)部分の復号化中に取得されたメタ情報に応答したり、以前に再構築およびループフィルタされたサンプル値に応答したりすることもできる。
【0045】
ループフィルタユニット(556)の出力は、レンダリング装置(512)に出力され得るだけでなく、将来の画像間予測で使用するために参照画像メモリ(557)に保存できるサンプルストリームであり得る。
【0046】
特定の符号化された画像は、完全に再構成されると、将来の予測のための参照画像として使用され得る。例えば、現在の画像に対応する符号化された画像が完全に再構築され、符号化された画像が(例えば、パーサ(520)によって)参照画像として識別されると、現在の画像バッファ(558)は参照画像メモリ(557)の一部になり得、次の符号化された画像の再構成を開始する前に、新鮮な現在の画像バッファを再割り当てすることができる。
【0047】
映像復号器(510)は、ITU-T Rec.H.265などの規格における所定の映像圧縮技術に従って復号化動作を実行することができる。符号化された映像シーケンスは、映像圧縮技術または規格の構文と、映像圧縮技術または規格のドキュメントとしてのプロファイルの両方に準拠しているという意味において、使用されている映像圧縮技術または規格によって指定された構文に準拠している場合がある。具体的には、プロファイルは、映像圧縮技術または規格において使用可能なすべてのツールから、そのプロファイルで使用できる唯一のツールとして特定のツールを選択できる。また、符号化された映像シーケンスの複雑さが、映像圧縮技術または規格のレベルで定義されている範囲内にあることも、コンプライアンスに必要である。場合によっては、レベルによって、最大画像サイズ、最大フレームレート、最大再構成サンプルレート(例えば、メガサンプル/秒で測定)、最大参照画像サイズなどが制限される。レベルによって設定された制限は、場合によっては、仮想参照復号器(Hypothetical Reference Decoder:HRD)の仕様と、符号化された映像シーケンスで通知されるHRDバッファ管理のメタデータとによってさらに制限され得る。
【0048】
一実施形態では、受信機(531)は、符号化された映像とともに追加の(冗長な)データを受信することができる。追加のデータは、符号化された映像シーケンスの一部として含まれ得る。追加のデータは、データを適切に復号化し、および/または元の映像データをより正確に再構築するために、映像復号器(510)によって使用され得る。追加のデータは、例えば、時間的、空間的、または信号ノイズ比(SNR)拡張レイヤ、冗長スライス、冗長画像、前方誤り訂正コードなどの形式であり得る。
【0049】
図6は、本開示の実施形態による映像符号器(603)のブロック図を示している。映像符号器(603)は、電子装置(620)に含まれる。電子装置(620)は、送信機(640)(例えば、送信回路)を含む。映像符号器(603)は、図4の例における映像符号器(403)の代わりに使用され得る。
【0050】
映像符号器(603)は、映像符号器(603)によって符号化される映像画像をキャプチャし得る(図6の例では電子装置(620)の一部ではない)映像ソース(601)から映像サンプルを受信し得る。別の例では、映像ソース(601)は、電子装置(620)の一部である。
【0051】
映像ソース(601)は、映像符号器(603)によって符号化されるソース映像シーケンスを、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、…)であり得、任意の色空間(例えば、BT.601 Y CrCB、RGB、…)および適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)であり得るデジタル映像サンプルストリームの形態で提供し得る。メディアサービングシステムでは、映像ソース(601)は、以前に準備された映像を格納する記憶装置であり得る。映像会議システムでは、映像ソース(601)は、ローカル画像情報を映像シーケンスとしてキャプチャするカメラであり得る。映像データは、順番に見たときに動きを与える複数の個別の画像として提供され得る。画像自体は、ピクセルの空間アレイとして編成することができ、各ピクセルは、使用中のサンプリング構造、色空間などに応じて、1つまたはそれ以上のサンプルを含み得る。当業者は、ピクセルとサンプルとの間の関係を容易に理解することができる。以下の説明では、サンプルを中心に説明する。
【0052】
一実施形態によれば、映像符号器(603)は、用途によって要求されるように、リアルタイムで、または任意の他の時間制約の下で、ソース映像シーケンスの画像を符号化し、符号化された映像シーケンス(643)に圧縮し得る。適切な符号化速度を強制することは、コントローラ(650)の1つの機能である。いくつかの実施形態では、コントローラ(650)は、以下で説明するように他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。分かりやすくするために、結合は描かれていない。コントローラ(650)によって設定されたパラメータには、レート制御関連パラメータ(画像スキップ、量子化、レート歪み最適化手法のラムダ値など)、画像サイズ、画像グループ(GOP)レイアウト、最大動きベクトル検索範囲などが含まれ得る。コントローラ(650)は、特定のシステム設計に対して最適化された映像符号器(603)に関係する他の適切な機能を有するように構成され得る。
【0053】
いくつかの実施形態では、映像符号器(603)は、符号化ループで動作するように構成される。過度に単純化した説明として、一例では、符号化ループは、ソース符号器(630)(例えば、符号化される入力画像および参照画像に基づいて、シンボルストリームなどのシンボルを作成する役割を果たす)、および映像符号器(603)に埋め込まれた(ローカル)復号器(633)を含み得る。復号器(633)は、(リモート)復号器が作成するのと同様の方法でサンプルデータを作成するためにシンボルを再構築する(シンボルと符号化された映像ビットストリームとの間の圧縮は、開示された主題で考慮される映像圧縮技術では損失がないため)。再構成されたサンプルストリーム(サンプルデータ)は、参照画像メモリ(634)に入力される。シンボルストリームの復号化は、復号器の場所(ローカルまたはリモート)に関係なくビット正確な結果をもたらすため、参照画像メモリ(634)のコンテンツもローカル符号器とリモート符号器間でビットが正確である。言い換えると、符号器の予測部分は、復号器が復号化中に予測を使用するときに「参照」するのとまったく同じサンプル値を参照画像のサンプルとして「見なす」。参照画像の同期性のこの基本原理(および、例えばチャネルエラーのために同期性を維持できない場合に生じるドリフト)は、いくつかの関連技術でも使用されている。
【0054】
「ローカル」復号器(633)の動作は、映像復号器(510)などの「リモート」復号器の動作と同じであり得、これは、図5に関連して上で詳細にすでに説明されている。しかしながら、図5も簡単に参照すると、シンボルが利用可能であり、エントロピー符号器(645)およびパーサ(520)による符号化された映像シーケンスへのシンボルの符号化/復号化は無損失であり得るため、バッファメモリ(515)を含む映像復号器(510)のエントロピー復号化部分、およびパーサ(520)は、ローカル復号器(633)に完全に実装されない場合がある。
【0055】
この時点で行うことができる観察は、復号器に存在する構文解析/エントロピー復号化以外の復号器技術も、対応する符号器に実質的に同一の機能形式で必ず存在する必要があることである。このため、開示された主題は、復号器の動作に重点を置いている。符号器技術の説明は、包括的に説明された復号器技術の逆であるため、省略できる。特定の領域でのみ、より詳細な説明が必要であり、以下に提供される。
【0056】
動作中、いくつかの例では、ソース符号器(630)は、「参照画像」として指定された映像シーケンスからの1つまたはそれ以上の以前に符号化された画像を参照して入力画像を予測的に符号化する動作補償予測符号化を実行し得る。このようにして、符号化エンジン(632)は、入力画像のピクセルブロックと、入力画像への予測参照として選択され得る参照画像のピクセルブロックとの間の差異を符号化する。
【0057】
ローカル映像復号器(633)は、ソース符号器(630)によって作成されたシンボルに基づいて、参照画像として指定され得る画像の符号化された映像データを復号化し得る。符号化エンジン(632)の動作は、不可逆プロセスであることが有利であり得る。符号化された映像データが映像復号器(図6には示されていない)で復号され得るとき、再構築された映像シーケンスは、通常、いくつかのエラーを伴うソース映像シーケンスのレプリカであり得る。ローカル映像復号器(633)は、参照画像に対して映像復号器によって実行され得る復号化プロセスを複製し、再構成された参照画像を参照画像キャッシュ(634)に記憶させることができる。このようにして、映像符号器(603)は、遠端映像復号器によって得られる(送信エラーがない)再構成参照画像として共通のコンテンツを有する再構成参照画像のコピーをローカルに格納し得る。
【0058】
予測器(635)は、符号化エンジン(632)の予測検索を実行し得る。すなわち、符号化される新しい画像について、予測器(635)は、(候補参照ピクセルブロックとしての)サンプルデータまたは参照画像の動きベクトル、ブロック形状などの、新しい画像の適切な予測参照として機能する特定のメタデータについて参照画像メモリ(634)を検索することができる。予測器(635)は、適切な予測参照を見つけるために、サンプルブロック-ピクセルブロックごとに動作し得る。いくつかの場合において、予測器(635)によって得られた検索結果によって決定されるように、入力画像は、参照画像メモリ(634)に記憶された複数の参照画像から引き出された予測参照を有し得る。
【0059】
コントローラ(650)は、例えば、映像データを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ソース符号器(630)の符号化動作を管理し得る。
【0060】
前述のすべての機能ユニットの出力は、エントロピー符号器(645)においてエントロピー符号化を受けることができる。エントロピー符号器(645)は、例えばハフマン符号化、可変長符号化、算術符号化などの当業者に知られている技術に従ってシンボルを可逆圧縮することにより、様々な機能ユニットにより生成されたシンボルを符号化された映像シーケンスに変換する。
【0061】
送信機(640)は、エントロピー符号器(645)によって作成された符号化された映像シーケンスをバッファリングして、符号化された映像データを格納する記憶装置へのハードウェア/ソフトウェアリンクであり得る通信チャネル(660)を介した送信に備えることができる。送信機(640)は、映像符号器(603)からの符号化された映像データを、送信される他のデータ、例えば符号化オーディオデータおよび/または補助データストリーム(ソースは図示せず)とマージすることができる。
【0062】
コントローラ(650)は、映像符号器(603)の動作を管理し得る。符号化中に、コントローラ(650)は、各々の符号化された画像に特定の符号化された画像タイプを割り当て得、これは、それぞれの画像に適用され得る符号化技法に影響を及ぼし得る。例えば、多くの場合、画像は次の画像タイプのうちの1つとして割り当てられる。
【0063】
イントラ画像(I画像)は、シーケンス内の他の画像を予測のソースとして使用せずに符号化および復号化できるものである。一部の映像コーデックでは、例えばIndependent Decoder Refresh(「IDR」)画像など、様々なタイプのイントラ画像を使用できる。当業者は、I画像のそれらの変形およびそれらのそれぞれの用途および特徴を知っている。
【0064】
予測画像(P画像)は、各ブロックのサンプル値を予測するために最大で1つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して符号化および復号化され得るものであり得る。
【0065】
双方向予測画像(B画像)は、各ブロックのサンプル値を予測するために最大で2つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して符号化および復号され得るものであり得る。同様に、複数の予測画像は、単一のブロックの再構成に2つを超える参照画像と関連メタデータとを使用できる。
【0066】
ソース画像は、通常、空間的に複数のサンプルブロック(例えば、それぞれ4×4、8×8、4×8、または16×16サンプルのブロック)に細分化され、ブロックごとに符号化され得る。ブロックは、ブロックのそれぞれの画像に適用される符号化割り当てによって決定されるように、他の(すでに符号化された)ブロックを参照して予測的に符号化され得る。例えば、I画像のブロックは非予測的に符号化されてもよく、またはそれらは同じ画像のすでに符号化されたブロックを参照して予測的に符号化されてもよい(空間予測またはイントラ予測)。P画像のピクセルブロックは、以前に符号化された1つの参照画像を参照して、空間的予測を介して、または時間的予測を介して、予測的に符号化され得る。B画像のブロックは、1つまたは2つの以前に符号化された参照画像を参照して、空間的予測を介して、または時間的予測を介して、予測的に符号化され得る。
【0067】
映像符号器(603)は、ITU-T Rec.H.265などの所定の映像符号化技術または規格に従って符号化動作を実行し得る。その動作において、映像符号器(603)は、入力映像シーケンスの時間的および空間的冗長性を活用する予測符号化操作を含む、様々な圧縮操作を実行し得る。したがって、符号化された映像データは、使用されている映像符号化技術または規格で指定された構文に準拠する場合がある。
【0068】
一実施形態では、送信機(640)は、符号化された映像とともに追加のデータを送信し得る。ソース符号器(630)は、そのようなデータを、符号化された映像シーケンスの一部として含み得る。追加のデータには、時間的/空間的/SNR拡張レイヤ、冗長な画像やスライスなどの冗長データの他の形式、SEI(Supplementary Enhancement Information)メッセージ、VUI(Visual Usability Information)パラメータセットフラグメントなどが含まれ得る。
【0069】
映像は、時系列で複数のソース画像(映像画像)としてキャプチャされ得る。イントラ画像予測(イントラ予測と略されることが多い)は、特定の画像の空間相関を利用し、画像間予測は、画像間の(時間的またはその他の)相関を利用する。一例では、現在の画像と呼ばれる、符号化/復号化中の特定の画像がブロックに分割される。現在の画像のブロックが、以前に符号化され、まだバッファリングされている映像の参照画像の参照ブロックに類似している場合、現在の画像のブロックは、動きベクトルと呼ばれるベクトルによって符号化され得る。動きベクトルは、参照画像の参照ブロックを指し、複数の参照画像が使用されている場合、参照画像を識別する三次元を有し得る。
【0070】
いくつかの実施形態では、画像間予測において双予測技法を使用することができる。双予測技法によれば、映像内の現在の画像よりも復号化順序が両方とも先行している(ただし、それぞれ表示順序が過去および未来である可能性がある)第1および第2参照画像などの2つの参照画像が使用され得る。現在の画像内のブロックは、第1の参照画像内の第1の参照ブロックを指す第1の動きベクトル、および第2の参照画像内の第2の参照ブロックを指す第2の動きベクトルによって符号化され得る。ブロックは、第1の参照ブロックと第2の参照ブロックとの組み合わせによって予測され得る。
【0071】
さらに、マージモード技術を画像間予測で使用して、符号化効率を改善することができる。
【0072】
本開示のいくつかの実施形態によれば、画像間予測およびイントラ画像予測などの予測は、ブロックの単位で実行される。例えば、HEVC規格に従って、映像画像シーケンスの画像は圧縮のために符号化ツリーユニット(CTU)に分割され、画像のCTUは64×64ピクセル、32×32ピクセル、または16×16ピクセルなど同じサイズである。一般に、CTUには、1つの輝度CTBと2つの彩度CTBである3つの符号化ツリーブロック(CTB)が含まれる。各CTUは、再帰的に1つまたはそれ以上の符号化ユニット(CU)に分割された四分木であり得る。例えば、64×64ピクセルのCTUは、64×64ピクセルの1つのCU、32×32ピクセルの4つのCU、または16×16ピクセルの16のCUに分割され得る。一例では、各CUは、インター予測タイプまたはイントラ予測タイプなどのCUの予測タイプを決定するために分析される。CUは、時間的および/または空間的予測可能性に応じて、1つまたはそれ以上の予測ユニット(PU)に分割される。一般に、各PUには輝度予測ブロック(PB)と2つの彩度PBとが含まれる。一実施形態では、符号化(符号化/復号化)における予測動作は、予測ブロックの単位で実行される。輝度予測ブロックを予測ブロックの例として使用すると、予測ブロックは、8×8ピクセル、16×16ピクセル、8×16ピクセル、16×8ピクセルなどのピクセルの値の行列(輝度値など)を含む。
【0073】
図7は、本開示の別の実施形態による映像符号器(703)の図を示している。映像符号器(703)は、映像画像シーケンスにおける現在の映像画像内のサンプル値の処理ブロック(例えば、予測ブロック)を受信し、処理ブロックを、符号化された映像シーケンスの一部である符号化画像に符号化するように構成される。一例では、映像符号器(703)は、図4の例における映像符号器(403)の代わりに使用される。
【0074】
HEVCの例では、映像符号器(703)は、8×8サンプルなどの予測ブロックなど、処理ブロックのサンプル値の行列を受け取る。映像符号器(703)は、処理ブロックが、例えばレート歪み最適化を使用して、イントラモード、インターモード、または双予測モードを使用して最良に符号化されるかどうかを決定する。処理ブロックがイントラモードで符号化される場合、映像符号器(703)は、イントラ予測技法を使用して、処理ブロックを符号化された画像に符号化することができる。そして、処理ブロックがインターモードまたは双予測モードで符号化される場合、映像符号器(703)は、それぞれインター予測または双予測技術を使用して、処理ブロックを符号化された画像に符号化することができる。特定の映像符号化技術では、マージモードは、動きベクトルが1つまたはそれ以上の動きベクトル予測器から導き出されるが、予測器の外側にある符号化された動きベクトルコンポーネントの利点はない画像間予測サブモードであり得る。特定の他の映像符号化技術では、対象ブロックに適用可能な動きベクトルコンポーネントが存在し得る。一例では、映像符号器(703)は、処理ブロックのモードを決定するためのモード決定モジュール(図示せず)などの他のコンポーネントを含む。
【0075】
図7の例では、映像符号器(703)は、インター符号器(730)、イントラ符号器(722)、残差計算器(723)、スイッチ(726)、残差符号器(724)、汎用コントローラ(721)および図7に示すように一緒に結合されたエントロピー符号器(725)を含む。
【0076】
インター符号器(730)は、現在のブロック(例えば、処理ブロック)のサンプルを受け取り、そのブロックを参照画像(例えば、前の画像および後の画像のブロック)の1つまたはそれ以上の参照ブロックと比較し、インター予測情報(例えば、インター符号化技法、動きベクトル、マージモード情報による冗長情報の記述)を生成し、任意の適切な技法を使用してインター予測情報に基づいてインター予測結果(例えば予測ブロック)を計算するように構成される。
【0077】
イントラ符号器(722)は、現在のブロック(例えば、処理ブロック)のサンプルを受信し、場合によっては、ブロックを同じ画像ですでに符号化されているブロックと比較し、変換後に量子化係数、場合によってはイントラ予測情報(例えば、1つ以上のイントラ符号化技術によるイントラ予測方向情報)を生成するように構成される。
【0078】
汎用コントローラ(721)は、汎用制御データを決定し、汎用制御データに基づいて映像符号器(703)の他の構成要素を制御するように構成される。一例では、汎用コントローラ(721)はブロックのモードを決定し、モードに基づいてスイッチ(726)に制御信号を提供する。例えば、モードがイントラである場合、汎用コントローラ(721)はスイッチ(726)を制御して、残差計算器(723)が使用するイントラモードの結果を選択し、エントロピー符号器(725)を制御してイントラ予測情報を選択し、ビットストリームにイントラ予測情報を含める。そして、モードがインターモードである場合、汎用コントローラ(721)は、スイッチ(726)を制御して、残差計算器(723)が使用するインター予測結果を選択し、エントロピー符号器(725)を制御してインター予測情報を選択し、ビットストリームにインター予測情報を含める。
【0079】
残差計算器(723)は、受信されたブロックと、イントラ符号器(722)またはインター符号器(730)から選択された予測結果との間の差(残差データ)を計算するように構成される。残差符号器(724)は、残差データに基づいて動作して残差データを符号化し、変換係数を生成するように構成される。一例では、残差符号器(724)は、周波数領域で残差データを変換し、変換係数を生成するように構成される。次に、変換係数は、量子化処理を受けて、量子化された変換係数が得られる。
【0080】
エントロピー符号器(725)は、符号化されたブロックを含むようにビットストリームをフォーマットするように構成される。エントロピー符号器(725)は、HEVC規格などの適切な規格に従って様々な情報を含むように構成される。一例では、エントロピー符号器(725)は、汎用制御データ、選択された予測情報(例えば、イントラ予測情報またはインター予測情報)、残差情報、およびビットストリーム内の他の適切な情報を含むように構成される。開示された主題によれば、インターモードまたは双予測モードのいずれかのマージサブモードでブロックを符号化する場合、残差情報はないことに留意されたい。
【0081】
図8は、本開示の別の実施形態による映像復号器(810)の図を示している。映像復号器(810)は、符号化された映像シーケンスの一部である符号化された画像を受信し、符号化された画像を復号化して再構成された画像を生成するように構成される。一例では、映像復号器(810)は、図4の例における映像復号器(410)の代わりに使用される。
【0082】
図8の例では、映像復号器(810)は、エントロピー復号器(871)、インター復号器(880)、残差復号器(873)、再構成モジュール(874)、および図8に示すように一緒に結合されたイントラ復号器(872)を含む。
【0083】
エントロピー復号器(871)は、符号化された画像から、符号化された画像が構成される構文要素を表す特定のシンボルを再構成するように構成され得る。そのようなシンボルは、例えば、ブロックが符号化されるモード(例えば、イントラ、インター、b予測、マージサブモードまたは別のサブモードにおける後者の2つ)、イントラ復号器(872)またはインター復号器(880)による予測に使用される特定のサンプルまたはメタデータをそれぞれ識別できる、例えば、量子化変換係数の形式の残差情報、などの予測情報(例えば、イントラ予測情報またはインター予測情報など)を含み得る。一例では、予測モードがインター予測モードまたは双予測モードである場合、インター予測情報がインター復号器(880)に提供される。そして、予測タイプがイントラ予測タイプである場合、イントラ予測情報はイントラ復号器(872)に提供される。残差情報は逆量子化を受ける可能性があり、残差復号器(873)に提供される。
【0084】
インター復号器(880)は、インター予測情報を受信し、インター予測情報に基づいてインター予測結果を生成するように構成される。
【0085】
イントラ復号器(872)は、イントラ予測情報を受け取り、イントラ予測情報に基づいて予測結果を生成するように構成される。
【0086】
残差復号器(873)は、逆量子化を実行して逆量子化変換係数を抽出し、逆量子化変換係数を処理して残差を周波数領域から空間領域に変換するように構成される。残差復号器(873)は、特定の制御情報(量子化パラメータQPを含めるため)も必要とする場合があり、その情報はエントロピー復号器(871)によって提供される場合がある(データパスは、低データ量制御情報のみであるため、図示されていない)。
【0087】
再構成モジュール(874)は、空間領域において、残差復号器(873)による出力としての残差と(場合によってはインターまたはイントラ予測モジュールによる出力としての)予測結果とを組み合わせて、再構成されたブロックは、再構成された映像の一部であり得る再構成された画像の一部であり得る。視覚的品質を改善するために、デブロッキング操作などの他の適切な操作を実行できることに留意されたい。
【0088】
映像符号器(403)、(603)および(703)、および映像復号器(410)、(510)および(810)は、任意の適切な技術を使用して実装できることに留意されたい。一実施形態では、映像符号器(403)、(603)および(703)ならびに映像復号器(410)、(510)および(810)は、1つまたはそれ以上の集積回路を使用して実装することができる。別の実施形態では、映像符号器(403)、(603)および(603)、および映像復号器(410)、(510)および(810)は、ソフトウェア命令を実行する1つまたはそれ以上のプロセッサを使用して実装できる。
【0089】
本開示のいくつかの態様によれば、イントラ予測の場合、広角モード(Wide Angle Mode)を使用して、映像を圧縮し、帯域幅または記憶スペース要件を低減することができる。
【0090】
図9は、広角モードの例を示す概略図(900)を示す。一般に、イントラ予測は、従来のイントラ予測モードと呼ばれる、右上に45度の方向(図9の34を指す矢印に対応)から左下の方向に45度の方向(図9の02を指す矢印に対応)の範囲内にある。35のHEVCイントラ予測モードが適用されている場合、モード2は左下の斜めモードと呼ばれ、モード34は右上の斜めモードと呼ばれる。従来のイントラ予測モードでカバーされる予測方向の範囲を超える広角は、広角イントラ予測モードに対応できる。広角イントラ予測モードがすなわち上述の広角モードであることは、当業者には自明である。
【0091】
いくつかの例では、広角イントラ予測方向は、1つの従来のイントラ予測方向に関連付けられている。例えば、広角のイントラ予測方向とそれに関連付けられたイントラ予測方向は同じ方向性をキャプチャするが、反対側の参照サンプル(左の列または一番上の行)を使用する。一例では、広角イントラ予測モードは、利用可能な広角「フリップモード」を有する関連する方向の1ビットフラグを送信することによって通知される。図9の例では、矢印が35を指す第1の方向は広角イントラ予測方向であり、矢印が03を指す第2の方向に関連付けられている。したがって、第1の方向は、第2の方向の1ビットフラグを送信することによって通知できる。
【0092】
一実施形態では、33方向の角度イントラ予測の場合、新しいモードの利用可能性は、45度の対角線右上モード(すなわち、35の従来のイントラモードが適用されるときのモード34)および左下モード(つまり、35の従来のイントラモードが適用されるときのモード2)に最も近い10の方向モードに制限される。実際のサンプル予測プロセスは、HEVCまたはVVCのプロセスに従う。
【0093】
図9の例では、モード2からモード34に関連する33のイントラ予測方向が示されている。一例では、ブロックの幅がブロックの高さより大きい場合、モード35およびモード36に関連する方向を広角イントラ予測方向として使用することができる。次に、モード3とモード4は、指定されたモードを使用するか、モード35とモード36で広角方向を反転するかを示す追加のフラグを有し得る。一部の例(例:多用途映像符号化テストモデル1(VTM1))では、四分木、二分木、および三分木(QT+BT+TT)の分割構造で、正方形ブロックと非正方形ブロックの両方がサポートされている。正方形ブロックと非正方形ブロックのイントラ予測設計が正方形ブロックに同じイントラ予測モード(例えば、モード2からモード34)を使用する場合、イントラ予測モード(例えば、図9の例ではモード2からモード34)は非正方形ブロックでは効率的ではない。広角予測モード(例えば、図9の例のモード35およびモード36)を使用して、非正方形ブロックをより効率的に符号化することができる。
【0094】
いくつかの例では、広角イントラ予測のシグナリングはイントラ予測モードに依存する。したがって、広角制御フラグを解析するときに、解析依存関係の問題がある(解析プロセス中にイントラ予測モードを再構築する必要がある)。
【0095】
いくつかの実施形態では、正方形ブロックのいくつかのイントラ予測モードは、非正方形ブロックの広角予測モードに再マッピングされる。例では、再マッピングプロセス中に、正方形ブロックの一部のイントラ予測モードが正方形ブロックに元々使用されていたイントラ予測モードの組から削除され、同じ数の広角予測モードがイントラ予測モードの組に追加されて形成される特定の非正方形ブロックのイントラ予測モードの新しい組が形成される。したがって、イントラ予測モードの組内の特定の数のモードが変更され、他のモードは同じに保たれる。一部の例では、変更された特定の数のモードは、ブロックのアスペクト比などのブロック形状に依存する。
【0096】
正方形ブロックの場合、従来のイントラ予測モードの組をイントラ予測に使用でき、従来のイントラ予測モードの組のモード番号は35、67などにすることができる。非正方形ブロックの場合、一部のモードを従来のイントラ予測モードの組から削除でき、(削除されたモードと同じ)広角モードの数を残りの従来のイントラ予測モードに追加して、新しいイントラ予測モードの組を形成できる。その結果、例では、非正方形ブロックと正方形ブロックとの信号モードインデックスは同じであり、非正方形ブロックと正方形ブロックとは同じモード符号化アルゴリズムを共有する。35の従来のイントラ予測モードの場合、追加された右上の広角モードのインデックスはモード35、モード36、モード37、モード38などであり、追加された左下の広角モードのインデックスはモード-1、モード-2、モード-3、モード-4などである。
【0097】
図10および図11は、いくつかの従来のイントラ予測モードを広角モードに再マッピングする2つの例を示す。図10では、モード2~34は、図10に示されるようにイントラ予測方向に関連付けられている。モード2~34は、モード0およびモード1に含まれ、正方形ブロックの従来のイントラ予測モードの組を形成する。図10の例では、モード2およびモード3は、従来のイントラ予測モードの組から(破線で示されているように)削除されている。さらに、(点線で示されているように)広角モード35とモード36とが追加され、モード35の方向はモード3の方向((1001)で示されている)と逆であり、モード36の方向はモード4の方向と((1002)で示されるように)逆である。したがって、モード4~36はモード0およびモード1に含まれ、特定の非正方形ブロックのイントラ予測モードの新しい組を形成する。
【0098】
図11では、(破線で示されるように)モード33およびモード34が削除され、(点線で示されるように)広角モード-1およびモード-2が追加される。モード-1の方向は((1101)で示されるように)モード33の方向と逆であり、モード-2の方向は((1102)で示されるように)モード32の方向と逆である。したがって、特定の非正方形ブロックのイントラ予測モードの新しい組を形成するために、モード-2と-1、およびモード2-32がモード0とモード1に含まれている。
【0099】
一実施形態では、除去された従来のモードと追加された広角モードとの間の角度距離は、90度より大きく、180度以下である。例えば、35の従来のイントラ予測モードがあり、幅が高さより大きい場合、モード2~モード5が削除され、広角モード35~モード38が追加され、高さが幅よりも大きい場合、モード31~モード34が削除され、モード-1~モード-4が追加される。別の例では、67の従来のイントラ予測モードがあり、幅が高さより大きい場合、モード2~モード9が削除され、モード67~モード74が追加され、高さが幅よりも大きい場合、モード59~モード66が削除され、モード-1~モード-8が追加される。
【0100】
代替実施形態では、削除された従来のモードと追加された広角モードとは反対方向である。例えば、35の従来のイントラ予測モードがあり、幅が高さより大きい場合、モード3~モード6が削除され、広角モード35~モード38が追加され、高さが幅よりも大きい場合、モード30~モード33が削除され、広角モード-1~モード-4が追加される。別の例として、67の従来のイントラ予測モードがあり、幅が高さより大きい場合、モード3~モード10が削除され、広角モード67~モード74が追加され、高さが幅よりも大きい場合、モード58~モード65が削除され、広角モード-1~モード-8が追加される。
【0101】
代替実施形態では、幅が高さよりも大きい場合、左下方向からのいくつかの従来のモードが削除され、右上方向から同じ数の広角モードが追加される。それ以外の場合、高さが幅よりも大きいときは、右上方向からのいくつかのモードが削除され、左下方向から同じ数の広角モードが追加される。
【0102】
例えば、35の従来のイントラ予測モードがあり、幅が高さより大きい場合、モード2~モード5が削除され、広角モード35~モード38が追加され、高さが幅よりも大きい場合、モード31~モード34が削除され、広角モード-1~モード-4が追加される。
【0103】
代替実施形態では、削除される従来のイントラ予測モードの数は、すべての非正方形ブロック形状に対して固定される。すべての非正方形ブロックについて、N個の従来のイントラ予測モードが削除され、それに応じてN個の広角モードが追加される。例えば、Nは、35の従来モードが使用されている場合は1~7、67の従来モードが使用されている場合は2~14、129の従来のイントラ予測モードが使用されている場合は4~28である。
【0104】
1つのサブ実施形態では、Nは、シーケンスパラメータセット(SPS)、画像パラメータセット(PPS)、スライスヘッダなどの高レベル構文要素として、または画像の領域の共通構文要素またはパラメータとしてシグナリングすることができる。
【0105】
一例では、従来のイントラ予測モードが35個ある場合は4つの従来のイントラモードが削除され、従来のイントラ予測モードが67個ある場合は8つの従来のイントラモードが削除される。
【0106】
代替の実施形態では、除去される従来のイントラ予測モードの数は、非正方形ブロックの形状に依存する。
【0107】
いくつかの例では、幅/高さ<=2または高さ/幅<=2(アスペクト比=幅/高さ、1<アスペクト比<=2、または1/2<=アスペクト比<1)の場合、M個の従来のイントラ予測モードが削除される。さらに、幅/高さ>=4または高さ/幅>=4(アスペクト比>=4またはアスペクト比<=1/4)の場合、N個の従来のイントラ予測モードが削除される。さらに、一例では、2<アスペクト比<4または1/4<アスペクト比<1/2の場合、P個の従来のイントラ予測モードが削除される。一例では、MはNに等しくない。一例では、35の従来のイントラ予測モードがある場合、Mは3に等しく、Nは5に等しく、67の従来のイントラ予測モードがある場合、Mは6に等しく、Nは10に等しい。PはMまたはNと同じであっても、MまたはNと異なっていてもよい。
【0108】
1つのサブ実施形態では、M、N及びPは、シーケンスパラメータセット(SPS)、画像パラメータセット(PPS)、スライスヘッダなどの高レベルの構文要素として、または共通の構文要素または画像の領域パラメータとしてシグナリングされ得る。別の例では、削除される従来のイントラ予測モードの数は、ブロック幅、ブロック高さ、およびブロック幅と高さの比、ブロック領域サイズを含むがこれらに限定されない符号化情報に依存する。
【0109】
代替の実施形態では、削除された従来のイントラ予測モードは、左下の対角線モード(つまり、35モードが適用されるときのモード2)または右上の対角線モード(つまり、35モードが適用されるときのモード34)から始まり、追加される広角モードは、左下の斜めモードまたは右上の斜めモード(つまり、モード-1またはモード35)を超えた最も近い角度から始まる。
【0110】
いくつかの例では、削除された従来のモードおよび追加された広角モードは、連続的または非連続的であり得る。一例では、従来のイントラ予測モードが35個あり、幅が高さよりも大きい場合、モード2~モード5が削除され、広角モード35~モード38が追加される。別の例では、35の従来のイントラ予測モードがあり、幅が高さより大きい場合、モード2~モード5が削除され、広角モード35、モード37、モード38およびモード39が追加される。
【0111】
代替実施形態では、未使用/削除された従来のイントラ予測モードを使用して、追加された広角モードを示す。その結果、未使用の従来のイントラ予測モードは引き続き通知されるが、これらの未使用の従来のイントラ予測モードの意味は、追加された広角モードに変換される。例えば、幅が高さよりも大きい場合、モード2は削除されるが、モード2は引き続き通知される。1つの非正方形ブロックの場合、復号器がモード2を復号化し、幅が高さより大きい場合、復号器はモード2をモード35に変換する。
【0112】
代替の実施形態では、現在のブロックの最も可能性の高いモード(MPM)を導出するために、隣接ブロックのイントラ予測が現在のブロックのイントラ予測方向範囲を超えている場合、隣接ブロックのモードは、現在のブロックのイントラ予測方向範囲によってカバーされる最も近い方向にマップされる。例えば、現在のブロックが正方形ブロックであり、その左側のブロックが非正方形ブロックであり、左側のブロックのモード番号が35である場合。モード35は、現在のブロックのモード範囲ではカバーされない。したがって、左側のブロックのモードは、現在のブロックのモード範囲でカバーされる最も近いモード34にマップされる。
【0113】
いくつかの実施形態では、イントラ予測プロセスは、長方形ブロックの広角予測を使用して実行される。イントラ予測プロセスは、イントラ予測モード(predModeIntraで示される)、現在のブロックの幅(nWidthで示される)、ブロックの高さ(nHeightで示される)、隣接するサンプル(p[x][y]と示される;ここで、(x=-1、y=-1からnWidth+nHeight-1)(x=0からnWidth+nHeight-1、y=-1))、および現在のブロックの色成分を指定する変数cIdxなどの入力を受け取る。イントラ予測プロセスは、x=0からnWidth-1、y=0からnHeight-1の予測サンプルpredSamples[x][y]を生成できる。
【0114】
いくつかの実施形態では、イントラ予測プロセスは、イントラ予測モードpredModeIntraと角度パラメータintraPredAngleとの間のマッピングに基づいて実行される。
【0115】
図12は、43のイントラ予測方向を図示する概略図を示す。43のイントラ予測方向には、従来のイントラ予測モードのモード2~モード34に対応する33の従来のイントラ予測方向が含まれ、モード34を超えて広がる(モード35~39で示される)5つの広い角度方向とモード2を超えて延びる(モード-1~-5で示される)5つの広い角度方向が含まれる。
【0116】
図12はまた、上部定規(Top-Ruler)および左定規(Left-Ruler)を示す。いくつかの例では、角度パラメータintraPredAngleは、上部定規または左定規に従って測定される。表1は、イントラ予測モードpredModeIntraと角度パラメータintraPredAngleの間のマッピングテーブルを示している。
【表1】
【0117】
例では、入力のイントラ予測モードpredModeIntraは、削除された従来のイントラ予測モードの1つであり、入力のイントラ予測モードpredModeIntraは、現在のブロックのアスペクト比(nWidth/nHeight)に基づいて広角モードに変換される。
【0118】
例えば、nWidth/nHeight=2および2<=predModeIntra<=4の場合、predModeIntra←predModeIntra+33である。←とは、predModeIntraを広角モードであるpredModeIntra+33に変換することである。具体的には、ブロックの幅nWidthがブロックの高さnHeightの2倍である場合、3つの従来のイントラ予測モード(モード2、モード3およびモード4)が従来のイントラ予測モードの組から削除され、3つの広角モード(モード35、モード36およびモード37)が残りの従来のイントラ予測モードに追加され、ブロックの新しいイントラ予測モードの組が形成される。入力のイントラ予測モードpredModeIntraが削除されたモードの1つに対応する場合、イントラ予測モードpredModeIntraは広角モードに変換される。
【0119】
さらに、nWidth/nHeight>=4および2<=predModeIntra<=6の場合、predModeIntra←predModeIntra+33である。具体的には、ブロックの幅nWidthがブロックの高さnHeightの4倍以上である場合、5つの従来のイントラ予測モード(モード2、モード3、モード4、モード5、モード6)が従来のイントラ予測モードの組から削除され、5つの広角モード(モード35、モード36、モード37、モード38およびモード39)が残りの従来のイントラ予測モードに追加され、ブロックの新しいイントラ予測モードの組を形成する。入力のイントラ予測モードpredModeIntraが削除されたモードの1つに対応する場合、イントラ予測モードpredModeIntraは広角モードに変換される。
【0120】
さらに、nHeight/nWidth=2および32<=predModeIntra<=34の場合、predModeIntra←predModeIntra-35である。具体的には、ブロックの高さnHeightがブロックの幅nWidthの2倍である場合、3つの従来のイントラ予測モード(モード34、モード33、およびモード32)が、従来のイントラ予測モードの組から削除され、3つの広角モード(モード-1、モード-2およびモード-3)が残りの従来のイントラ予測モードに追加され、ブロックのイントラ予測モードの新しい組が形成される。入力のイントラ予測モードpredModeIntraが削除されたモードの1つに対応する場合、イントラ予測モードpredModeIntraは広角モードに変換される。
【0121】
さらに、nHeight/nWidth>=4および30<=predModeIntra<=34の場合、predModeIntra←predModeIntra-35である。具体的には、ブロックの高さnHeightがブロックのnWidthの幅の4倍以上の場合、5つの従来のイントラ予測モード(モード34、モード33、モード32、モード31、モード30)が従来のイントラ予測モードの組から削除され、5つの広角モード(モード-1、モード-2、モード-3、モード-4、およびモード-5)が残りの従来のイントラ予測モードとともに追加され、新しいブロックのイントラ予測モードの組を形成する。入力のイントラ予測モードpredModeIntraが削除されたモードの1つに対応する場合、イントラ予測モードpredModeIntraは広角モードに変換される。
【0122】
次に、イントラ予測モードpredModeIntraに基づいて、対応する角度パラメータintraPredAngleを、例えば表1に基づいて決定できる。次に、予測サンプルpredSamples[x][y]は、HEVC規格などの適切な映像符号化標準に基づく角度パラメータintraPredAngleに基づいて計算できる。
【0123】
別の例では、65の従来のイントラ予測方向が、正方形ブロックのイントラ予測に使用されている。65の従来のイントラ予測方向は、図2に示されるような従来のイントラ予測モードであるモード2~66に対応する。モード2~66、モード0(平面モード)およびモード1(DCモード)は、正方形ブロックの67のイントラ予測モードの組を形成する。いくつかの実施形態では、いくつかの従来のイントラ予測モードが削除され、同じ数の広角モードが長方形ブロックの新しいイントラ予測モードの組に追加され、その数は長方形ブロックのアスペクト比に依存する。
【0124】
いくつかの実施形態では、イントラ予測プロセスは、長方形ブロック(現在のブロック)の広角予測を使用して実行される。イントラ予測プロセスは、イントラ予測モードpredModeIntra、現在のブロックの幅nWidth、ブロックの高さnHeight、隣接するサンプル(p[x][y]で示される;ここで、(x=-1、y=-1からnWidth+nHeight-1)(x=0からnWidth+nHeight-1、y=-1))のような入力を受信する。イントラ予測プロセスは、x=0からnWidth-1、y=0からnHeight-1の予測サンプルpredSamples[x][y]を生成できる。
【0125】
例では、変数whRatioがmin(abs(Log2(nWidth/nHeight))、2)に等しいと定義される。nWidthがnHeightを超え、かつ、nHeightの2倍未満の場合、whRatioは1未満である。nWidthがnHeightの2倍に等しい場合、whRatioは1に等しい。nWidthがnHeightの2倍を超え、かつ、nHeightの4倍未満の場合、whRatioは(1,2)の範囲の値である。nWidthがnHeightの4倍の場合、whRatioは2に等しい。nWidthがnHeightの4倍を超える場合、whRatioは2に等しい。
【0126】
同様に、nHeightがnWidthより大きく、かつ、nWidthの2倍未満の場合、whRatioは1未満である。nHeightがnWidthの2倍に等しい場合、whRatioは1に等しい。nHeightがnWidthの2倍を超え、4倍未満の場合、whRatioは(1,2)の範囲の値である。nHeightがnWidthの4倍の場合、whRatioは2である。nHeightがnWidthの4倍を超える場合、whRatioは2である。したがって、whRatioはブロックの形状の関数であり、ブロックの向きには依存しない。
【0127】
例では、入力のイントラ予測モードpredModeIntraは削除される従来のイントラ予測モードの1つであり、入力のイントラ予測モードpredModeIntraは現在ブロックのwhRatioに基づき広角モードに変換される。
【0128】
例えば、nWidthがnHeightを超え、nHeightの2倍未満の場合、whRatioは1未満であり、従来のイントラ予測モードの組から、6つの従来のイントラ予測モード(モード2~7)を削除し、6つの広角モード(モード67~72)を残りの従来のイントラ予測モードに追加し、ブロックのイントラ予測モードの新しい組を形成する。入力のイントラ予測モードpredModeIntraが削除されたモード(2以上8未満)の1つに対応する場合、イントラ予測モードpredModeIntraは65の加算により広角モードに変換される。
【0129】
さらに、nWidthがnHeightの4倍以上の場合、従来のイントラ予測モードの組から10個の従来のイントラ予測モード(モード2~11)を削除し、残りの従来のイントラ予測モードに10の広角モード(モード67~76)を追加することで、ブロックのイントラ予測モードの新しいセットを形成し、入力中のイントラ予測モードpredModeIntraが削除されたモード(2以上12未満)の何れかの1つに対応する場合、イントラ予測モードpredModeIntraは65の加算により広角モードに変換される。
【0130】
さらに、nHeightがnWidthを超え、かつ、nWidthの2倍未満の場合、whRatioは1未満であり、従来のイントラ予測モードの組から6つの従来のイントラ予測モード(モード61~66)を削除し、残りの従来のイントラ予測モードに6つのワイド角度モード(モード-1~-6)を追加し、ブロックのイントラ予測モードの新しい組を形成する。入力のイントラ予測モードpredModeIntraが削除されたモード(61以上67未満)の1つに対応する場合、イントラ予測モードpredModeIntraは67の減算により広角モードに変換される。
【0131】
さらに、nHeightがnWidthの4倍以上の場合、従来のイントラ予測モードの組から10個の従来のイントラ予測モード(モード57~66)を削除し、10個の広角モード(モード-1~-10)を残りの従来のイントラ予測モードに追加し、ブロックのイントラ予測モードの新しい組を形成する。入力のイントラ予測モードpredModeIntraが削除されたモード(57以上67未満)の1つに対応する場合、イントラ予測モードpredModeIntraは67の減算により広角モードに変換される。
【0132】
次に、イントラ予測モードpredModeIntraに基づいて、対応する角度パラメータintraPredAngleを、例えばルックアップテーブルに基づいて決定できる。次に、予測サンプルpredSamples[x][y]は、HEVC規格などの適切な映像符号化標準に基づく角度パラメータintraPredAngleに基づいて計算できる。
【0133】
図13は、本開示の実施形態によるプロセス(1300)を概説するフローチャートを示す。プロセス(1300)は、再構成中のブロックの予測ブロックを生成するために、イントラモードで符号化されたブロックの再構成に使用することができる。様々な実施形態において、プロセス(1300)は、端末装置(310)、(320)、(330)および(340)の処理回路、映像符号器(403)の機能を実行する処理回路、映像復号器(410)の機能を実行する処理回路、映像復号器(510)の機能を実行する処理回路、イントラ予測モジュール(552)の機能を実行する処理回路、映像符号器(603)の機能を実行する処理回路、予測器(635)の機能を実行する処理回路、イントラ符号器(722)の機能を実行する処理回路、イントラ復号器(872)の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、プロセス(1300)はソフトウェア命令で実装され、したがって、処理回路がソフトウェア命令を実行すると、処理回路はプロセス(1300)を実行する。プロセスは(S1301)から始まり、(S1310)に進む。
【0134】
(S1310)では、ブロックの予測情報を復号化する。一例では、処理回路は、符号化された映像ビットストリームからブロックの予測情報を復号化する。いくつかの例では、ブロックは非正方形ブロックであり、ブロックの予測情報は、非正方形ブロックの第1の組のイントラ予測モードにおける第1のイントラ予測モードを示す。第1の組のイントラ予測モードは、正方形ブロックの第2の組のイントラ予測モードにない第1の数の異なるイントラ予測モード(例えば、1つまたはそれ以上の広角モード)を有する。第1の組のイントラ予測モードは、第2の組のイントラ予測モードにある第2の数の欠落した(削除されたまたは未使用の)イントラ予測モードを含まない。いくつかの実施形態では、第1の数の異なるイントラ予測モードおよび第2の数の欠落したイントラ予測モードは、ブロックのアスペクト比(ブロックの形状を示す)の関数である。第1の数と第2の数はどちらも正の整数である。いくつかの実施形態では、第1の数が第2の数に等しい。
【0135】
(S1320)において、ブロックのサンプルは、第1のイントラ予測モードに従って再構成される。いくつかの例では、第1のイントラ予測モードに基づいて、対応する角度パラメータは、例えば、ルックアップテーブルに基づいて決定され得る。次に、ブロックのサンプルは、HEVC規格などの適切な映像符号化標準に基づく角度パラメータに基づいて計算することができる。そして、S1399に進んで終了する。
【0136】
上記の技法は、コンピュータ可読命令を使用してコンピュータソフトウェアとして実装でき、1つまたはそれ以上のコンピュータ可読媒体に物理的に格納できる。例えば、図14は、開示された主題の特定の実施形態を実装するのに適したコンピュータシステム(1400)を示している。
【0137】
コンピュータソフトウェアは、任意の適切な機械コードまたはコンピュータ言語を使用して符号化でき、アセンブリ、コンパイル、リンク、または同様のメカニズムの対象となり、1つまたはそれ以上のコンピュータ中央処理装置(CPU)、グラフィック処理装置(GPU)などによる直接、または解釈、マイクロコードの実行などを通じて実行できる命令を含むコードを作成する。
【0138】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲーム装置、モノのインターネット装置などを含む、様々なタイプのコンピュータまたはそのコンポーネント上で実行することができる。
【0139】
コンピュータシステム(1400)について図14に示されるコンポーネントは、本質的に例示であり、本開示の実施形態を実装するコンピュータソフトウェアの使用または機能の範囲に関していかなる制限を示唆することを意図しない。また、コンポーネントの構成は、コンピュータシステム(1400)の例示的な実施形態に示されているコンポーネントのいずれか1つまたは組み合わせに関する依存性または要件を有するものとして解釈されるべきではない。
【0140】
コンピュータシステム(1400)は、特定のヒューマンインターフェース入力装置を含み得る。そのようなヒューマンインターフェース入力装置は、例えば、触覚入力(キーストローク、スワイプ、データグローブの動きなど)、オーディオ入力(音声、拍手など)、視覚入力(ジェスチャなど)、嗅覚入力(図示せず)など、1人以上のユーザによる入力に応答する。ヒューマンインターフェース装置を使用して、音声(スピーチ、音楽、環境音など)、画像(スキャンした画像、静止画像カメラから得られる写真画像など)、映像(2次元映像、立体映像を含む3次元映像など)など、人間による意識的な入力に必ずしも直接関係しない特定のメディアをキャプチャすることもできる。
【0141】
入力ヒューマンインターフェース装置には、キーボード(1401)、マウス(1402)、トラックパッド(1403)、タッチスクリーン(1410)、データグローブ(図示せず)、ジョイスティック(1405)、マイク(1406)、スキャナ(1407)、カメラ(1408)のうち1つまたはそれ以上が含まれ得る。
【0142】
コンピュータシステム(1400)はまた、特定のヒューマンインターフェース出力装置を含み得る。そのようなヒューマンインターフェース出力装置は、例えば、触覚出力、音、光、および嗅覚/味覚を通じて、1人または複数の人間のユーザの感覚を刺激している可能性がある。そのようなヒューマンインターフェース出力装置は、触覚出力装置(例えば、タッチスクリーン(1410)、データグローブ(図示せず)、またはジョイスティック(1405)による触覚フィードバックを含み得るが、入力装置として機能しない触覚フィードバック装置もあり得る)、音声出力装置(スピーカ(1409)、ヘッドホン(図示せず)など)、視覚的出力装置(それぞれにタッチスクリーン入力機能の有無にかかわらず、それぞれ触覚フィードバック機能の有無にかかわらず、ステレオグラフィック出力、仮想現実の眼鏡(図示せず)、ホログラフィックディスプレイおよびスモークタンク(図示せず)などの手段により、2次元の視覚的出力または3次元以上の出力を出力できるものもある、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン(1410)など)、およびプリンタ(図示せず)を含み得る。
【0143】
コンピュータシステム(1400)には、人間がアクセスできる記憶装置と、CD/DVDを含むCD/DVD ROM/RW(1420)などの光学メディア(1421)、サムドライブ(1422)、リムーバブルハードドライブまたはソリッドステートドライブ(1423)、テープおよびフロッピーディスク(図示せず)などのレガシー磁気媒体、セキュリティドングル(図示せず)などの専用のROM/ASIC/PLDベースの装置などの関連媒体も含めることができる。
【0144】
当業者はまた、ここで開示される主題に関連して使用される「コンピュータ可読媒体」という用語は、送信媒体、搬送波、または他の一時的な信号を包含しないことを理解するべきである。
【0145】
コンピュータシステム(1400)は、1つまたはそれ以上の通信ネットワークへのインターフェースも含み得る。ネットワークは、例えば、無線、有線、光であり得る。さらに、ネットワークは、ローカル、広域、大都市圏、車両および産業、リアルタイム、遅延耐性などがある。ネットワークの例としては、イーサネット、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラーネットワークなどのローカルエリアネットワーク、ケーブルテレビ、衛星テレビ、地上波放送テレビを含むTV有線または無線広域デジタルネットワーク、CANBusなどが含まれる車両用、産業用など、などがある。特定のネットワークでは、一般に、特定の汎用データポートまたは周辺バス(1449)(例えば、コンピュータシステムのUSBポート(1400)など)に接続された外部ネットワークインターフェースアダプタが必要であり、他のものは一般に、以下に説明するようにシステムバスに接続することにより、コンピュータシステムのコア(1400)に統合される(例えば、PCコンピュータシステムへのイーサネットインターフェースまたはスマートフォンコンピュータシステムへのセルラーネットワークインターフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム(1400)は他のエンティティと通信できる。このような通信は、単方向、受信のみ(例えば、放送TV)、単方向送信のみ(例えば、CANbusから特定のCANbus装置)、または双方向、例えば、ローカルエリアデジタルネットワークまたはワイドエリアデジタルネットワークを使用する他のコンピュータシステムへの通信であり得る。上記のように、特定のプロトコルとプロトコルスタックは、これらのネットワークとネットワークインターフェースのそれぞれで使用できる。
【0146】
前述のヒューマンインターフェース装置、ヒューマンアクセス可能な記憶装置、およびネットワークインターフェースは、コンピュータシステム(1400)のコア(1440)に接続することができる。
【0147】
コア(1440)には、1つ以上の中央処理装置(CPU)(1441)、グラフィックス処理装置(GPU)(1442)、フィールドプログラマブルゲート領域(FPGA)(1443)、特定のタスクのハードウェアアクセラレータ(1444)などの形式の特殊なプログラマブル処理装置を含めることができる。これらの装置は、読み取り専用メモリ(ROM)(1445)、ランダムアクセスメモリ(1446)、ユーザがアクセスできない内部ハードドライブ、SSDなどの内部大容量記憶装置(1447)とともに、システムバス(1448)を介して接続され得る。いくつかのコンピュータシステムでは、システムバス(1448)に1つ以上の物理プラグの形でアクセスして、追加のCPU、GPUなどによる拡張を可能にすることができる。周辺機器は、コアのシステムバス(1448)に直接、または周辺バス(1449)を介して接続できる。周辺バスのアーキテクチャには、PCI、USBなどが含まれる。
【0148】
CPU(1441)、GPU(1442)、FPGA(1443)、およびアクセラレータ(1444)は、組み合わせて前述のコンピュータコードを構成できる特定の命令を実行できる。そのコンピュータコードは、ROM(1445)またはRAM(1446)に格納できる。移行データはRAM(1446)にも保存できるが、永続データは、例えば内部大容量記憶装置(1447)に保存できる。1つまたはそれ以上のCPU(1441)、GPU(1442)、大容量記憶装置(1447)、ROM(1445)、RAM(1446)などと密接に関連付けることができるキャッシュメモリを使用することにより、任意のメモリ装置に対する高速記憶および読み出しが可能になる。
【0149】
コンピュータ可読媒体は、様々なコンピュータ実施操作を実行するためのコンピュータコードをその上に有することができる。メディアおよびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであり得るか、またはそれらは、コンピュータソフトウェア技術の当業者に周知であり利用可能な種類のものであり得る。
【0150】
限定ではなく例として、アーキテクチャ(1400)、特にコア(1440)を有するコンピュータシステムは、1つまたはそれ以上の有形のコンピュータ可読媒体に組み込まれたソフトウェアを実行するプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として機能を提供できる。このようなコンピュータ可読媒体は、上で紹介したユーザがアクセス可能な大容量記憶装置、およびコア内部大容量記憶装置(1447)やROM(1445)などの非一時的な性質を持つコア(1440)の特定の記憶装置に関連付けられた媒体である。本開示の様々な実施形態を実装するソフトウェアは、そのような装置に格納され、コア(1440)によって実行され得る。コンピュータ可読媒体は、特定のニーズに従って、1つまたはそれ以上のメモリ装置またはチップを含み得る。ソフトウェアは、コア(1440)、特にその中のプロセッサ(CPU、GPU、FPGAなどを含む)に、RAM(1446)に格納されているデータ構造の定義すること、およびソフトウェアで定義されたプロセスに従ってそのようなデータ構造を変更することを含む、ここで説明する特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えて、または代替として、コンピュータシステムは、ここで説明する特定のプロセスまたは特定のプロセスの特定の部分を実行するためにソフトウェアの代わりに、またはソフトウェアと一緒に動作できる、回路(例:アクセラレータ(1444))に組み込まれたまたは他の方法で実装されたロジックの結果として機能を提供できる。ソフトウェアへの参照はロジックを含むことができ、その逆も適宜可能である。コンピュータ可読媒体への言及は、適宜、実行のためのソフトウェア、実行のためのロジックを具体化する回路、またはその両方を格納する回路(集積回路(IC)など)を包含することができる。本開示は、ハードウェアとソフトウェアとの任意の適切な組み合わせを包含する。
付録A:頭字語
JEM:ジョイント探索モデル
VVC:多用途映像符号化
BMS:ベンチマークセット
HEVC:高効率映像符号化
SEI:追加の拡張情報
VUI:映像のユーザビリティ情報
GOP:画像のグループ
TU:変換単位、
PU:予測ユニット
CTU:符号化ツリーユニット
CTB:符号化ツリーブロック
PB:予測ブロック
HRD:仮想参照復号器
SNR:信号ノイズ比
CPU:中央処理装置
GPU:グラフィックス処理ユニット
CRT:陰極線管
LCD:液晶ディスプレイ
OLED:有機発光ダイオード
CD:コンパクトディスク
DVD:デジタル映像ディスク
ROM:読み取り専用メモリ
RAM:ランダム・アクセス・メモリ
ASIC:特定用途向け集積回路
PLD:プログラマブルロジック装置
LAN:ローカルエリアネットワーク
GSM:モバイル通信用のグローバルシステム
LTE:ロングタームエボリューション
CANBus:コントローラエリアネットワークバス
USB:ユニバーサルシリアルバス
PCI:周辺構成要素相互接続
FPGA:フィールドプログラマブルゲート領域
SSD:ソリッドステートドライブ
IC:集積回路
CU:符号化ユニット
【0151】
本開示はいくつかの例示的な実施形態を説明してきたが、本開示の範囲内にある変更、置換、および様々な代替均等物が存在する。したがって、当業者は、本明細書では明示的に示されていないか、または記載されていないが、本開示の原理を具現化し、したがってその精神および範囲内にある多数のシステムおよび方法を考案できることが理解されよう。
【符号の説明】
【0152】
101 サンプル
102 矢印
103 矢印
104 ブロック
300 通信システム
310 端末装置
320 端末装置
330 端末装置
340 端末装置
350 ネットワーク
400 通信システム
401 映像ソース
402 映像画像
403 映像符号器
404 符号化された映像データ
405 ストリーミングサーバ
406 クライアントサブシステム
407 コピー
408 クライアントサブシステム
409 コピー
410 映像復号器
411 映像画像
412 ディスプレイ
413 キャプチャサブシステム
420 電子装置
430 電子装置
501 チャネル
510 映像復号器
512 レンダリング装置
515 バッファメモリ
520 パーサ
521 シンボル
530 電子装置
531 受信機
551 スケーラ/逆変換ユニット
552 イントラ画像予測ユニット
553 動作補償予測ユニット
555 アグリゲータ
556 ループフィルタユニット
557 参照画像メモリ
558 現在の画像バッファ
601 映像ソース
603 映像符号器
620 電子装置
630 ソース符号器
632 符号化エンジン
633 ローカル復号器
634 参照画像メモリ
635 予測器
640 送信機
643 映像シーケンス
645 エントロピー符号器
650 コントローラ
660 通信チャネル
703 映像符号器
721 汎用コントローラ
722 イントラ符号器
723 残差計算器
724 残差符号器
725 エントロピー符号器
726 スイッチ
730 インター符号器
810 映像復号器
871 エントロピー復号器
872 イントラ復号器
873 残差復号器
874 再構成モジュール
880 インター復号器
1300 プロセス
1400 コンピュータシステム
1405 ジョイスティック
1409 スピーカ
1410 タッチスクリーン
1420 CD/DVD ROM/RW
1421 光学メディア
1422 サムドライブ
1423 ソリッドステートドライブ
1440 コア
1441 中央処理装置(CPU)
1442 グラフィックス処理装置(GPU)
1443 フィールドプログラマブルゲート領域(FPGA)
1444 ハードウェアアクセラレータ
1445 読み取り専用メモリ(ROM)
1446 ランダムアクセスメモリ(RAM)
1447 内部大容量記憶装置
1448 システムバス
1449 周辺バス
S11 サンプル
S12 サンプル
S13 サンプル
S14 サンプル
S21 サンプル
S22 サンプル
S23 サンプル
S24 サンプル
S31 サンプル
S32 サンプル
S33 サンプル
S34 サンプル
S41 サンプル
S42 サンプル
S43 サンプル
S44 サンプル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14