(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-11
(45)【発行日】2022-07-20
(54)【発明の名称】マルチラインフレーム内予測のための方法、装置、及びコンピュータプログラム
(51)【国際特許分類】
H04N 19/11 20140101AFI20220712BHJP
H04N 19/117 20140101ALI20220712BHJP
H04N 19/176 20140101ALI20220712BHJP
【FI】
H04N19/11
H04N19/117
H04N19/176
(21)【出願番号】P 2020560455
(86)(22)【出願日】2019-07-24
(86)【国際出願番号】 US2019043141
(87)【国際公開番号】W WO2020046496
(87)【国際公開日】2020-03-05
【審査請求日】2020-10-28
(32)【優先日】2018-08-29
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2018-11-26
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャオ,リアン
(72)【発明者】
【氏名】ジャオ,シン
(72)【発明者】
【氏名】リ,シアン
(72)【発明者】
【氏名】リィウ,シャン
【審査官】鉢呂 健
(56)【参考文献】
【文献】特開2020-014198(JP,A)
【文献】特表2019-535211(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00-19/98
(57)【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサが実行する、ビデオシーケンスの復号のための、フレーム内予測を制御する方法であって、
参照ラインインデックスに基づき、復号器に第1参照ラインをシグナリングし、前記第1参照ライ
ンに対してフレーム内平滑化を適用するステップであって、複数の参照ラインが符号化ユニットに隣接しており、前記第1参照ラインは、前記複数の参照ライン
に含まれる、ステップと、
前記第1参照ライ
ンに適用される前記フレーム内平滑化に基づき、前記符号化ユニットに対してフレーム内予測を適用するステップと、
前記符号化ユニットに適用される前記フレーム内予測に基づき、前記第1参照ラインに対して位置依存フレーム内予測組み合わせ(PDPC)を適用するステップと、
前記複数の参照ラインのうちの前記第1の参照ライン以外の参照ラインに対して、前記PDPCを適用しないようにするステップと、
を含む方法。
【請求項2】
前記方法はさらに、
前記複数の参照ラインのうちの、前記第1参照ライン以外の参照ラインに対して前記フレーム内平滑化を適用する
ことを阻止するステップを含む請求項1に記載の方法。
【請求項3】
前記方法はさらに、
前記複数の参照ラインのうち、一つだけの参照ラインを除く他の参照ラインに対して、前記フレーム内平滑化を適用する
ことを阻止するステップを含む請求項1に記載の方法。
【請求項4】
前記方法はさらに、
前記符号化ユニットに適用される前記フレーム内予測に基づき、前記複数の参照ラインのうち、一つだけの参照ラインを除く他の参照ラインに対して前記PDPCを適用する
ことを阻止するステップを含む請求項1又は3に記載の方法。
【請求項5】
前記方法はさらに、
ビデオシーケンスを復号するためのフレーム内予測モードに対応するフレーム内予測角度が、前記符号化ユニットの対角線方向に対応する所定の角度より大きいかどうかを決定するステップと、
前記フレーム内予測角度が前記所定の角度より大きいと決定されたことに基づき、前記複数の参照ラインのうちの前記第1参照ライン以外の参照ラインに対して、前記フレーム内平滑化の適用を阻止するステップと、
を含む請求項1に記載の方法。
【請求項6】
前記方法はさらに、
ビデオシーケンスを復号するためのフレーム内予測モードに対応するフレーム内予測角度が、前記符号化ユニットの対角線方向に対応する所定の角度より大きいかどうかを決定するステップであって、前記フレーム内予測モードは前記ビデオシーケンスの復号に用いられる、ステップと、
前記フレーム内予測角度が前記所定の角度より大きいと決定されたことに基づき、前記複数の参照ラインのうちの前記第1参照ライン以外の参照ラインに対して前記PDPCの適用を阻止するステップと、
を含む請求項1に記載の方法。
【請求項7】
前記方法はさらに、
前記ビデオシーケンスを復号するためのフレーム内予測モードと、少なくとも1つの参照ラインのインデックスに基づき、前記少なくとも1つの参照ラインに対して前記フレーム内平滑化を適用するステップを含み、前記少なくとも1つの参照ラインは前記複数の参照ラインのうちの前記第1参照ライン以外の参照ラインである請求項1に記載の方法。
【請求項8】
前記方法はさらに、
前記複数の参照ラインのうちの
特定のインデックス
値以上のインデックス値範囲を閾値インデックス範囲
として決定するステップであって、前記
閾値インデックス範囲に対応する複数のフレーム内予測モードは前記符号化ユニットの水平方向に隣接する、ステップと、
前記ビデオシーケンスを復号するための現在フレーム内予測モードの現在インデックス値が前記閾値インデックス範囲内にあるかどうかを決定するステップと、
前記現在インデックス値が前記閾値インデックス範囲内にあると決定されたことに基づき、前記
現在インデックス値に対応する第2参照ラインに対して前記フレーム内平滑化を適用することを阻止するステップとを含む請求項1に記載の方法。
【請求項9】
前記方法はさらに、
前記複数の参照ラインのうちの
特定のインデックス
値以上のインデックス値範囲を閾値インデックス範囲
として決定するステップであって、前記
閾値インデックス範囲に対応する複数のフレーム内予測モードは前記符号化ユニットの垂直方向に隣接する、ステップと、
前記ビデオシーケンスを復号するための現在フレーム内予測モードの現在インデックス値が前記閾値インデックス範囲内にあるかどうかを決定するステップと、
前記現在インデックス値が前記閾値インデックス範囲内にあると決定されたことに基づき、前記
現在インデックス値に対応する第2参照ラインに対して前記フレーム内平滑化を適用することを阻止するステップと、
を含む請求項1に記載の方法。
【請求項10】
前記第1参照ラインは1つ以上の第1参照ラインを含み、
前記第1参照ライ
ンに対してフレーム内平滑化を提供する前記ステップは、
前記複数の参照ラインのうちの、
前記1つ以上の第1参照ラインに対して、フレーム内平滑化を適用し、同時に前記複数の参照ラインのうちの、前記1つ以上の第1参照ライン以外の1つ以上の第2参照ラインに対して、前記フレーム内平滑化の適用を阻止するステップを含み、
前記第1参照ライ
ンに対して位置依存フレーム内予測組み合わせ(PDPC)を適用する前記ステップは、
前記複数の参照ラインのうちの、前記
1つ以上の第1参照ライ
ンに対して、前記PDPCを適用し、同時に前記複数の参照ラインのうちの、前記1つ以上の第
1参照ライン以外の1つ以上の第
3参照ラインに対して、前記PDPCの適用を阻止するステップを含む、
請求項1に記載の方法。
【請求項11】
ビデオシーケンスの復号のための、フレーム内予測を制御するための装置であって、
コンピュータプログラムコードを記憶した少なくとも1つのメモリと、
少なくとも1つのプロセッサとを含み、
前記コンピュータプログラムコードは、前記少なくとも1つのプロセッサに、請求項1から
10の何れか一項に記載の方法を実行させる、
装置。
【請求項12】
コンピュータに請求項1から
10の何れか一項に記載の方法を実行させるためのコンピュータプログラム。
【請求項13】
符号器の少なくとも1つのプロセッサが実行する、ビデオシーケンスの復号のための、フレーム内予測を制御する方法であって、
参照ラインインデックスに基づき、復号器に第1参照ラインをシグナリングし、前記第1参照ラインに対してフレーム内平滑化を適用するステップであって、複数の参照ラインが符号化ユニットに隣接しており、前記第1参照ラインは、前記複数の参照ラインに含まれる、ステップと、
前記第1参照ラインに適用される前記フレーム内平滑化に基づき、前記符号化ユニットに対してフレーム内予測を適用するステップと、
前記符号化ユニットに適用される前記フレーム内予測に基づき、前記第1参照ラインに対して位置依存フレーム内予測組み合わせ(PDPC)を適用するステップと、
前記複数の参照ラインのうちの前記第1の参照ライン以外の参照ラインに対して、前記PDPCを適用しないようにするステップと、
を含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本出願は、2018年8月29日にて米国特許及び商標局に提出された米国仮特許出願番号第62/724.575号の優先権を主張し、その全ての内容は本明細書に援用される。
【0002】
実施形態と一致する方法及び装置は、ビデオ処理に関わり、特にマルチラインフレーム内予測のための方法及び装置に関わる。
【背景技術】
【0003】
図1は、高効率ビデオ符号化(High Efficiency Video Coding、HEVC)において利用されるフレーム内予測モードを示す。HEVCにおいて、合計で35個のフレーム内予測モードが存在し、これらのフレーム内予測モードにおいて、モード10(101)は水平モードであり、モード26(102)は垂直モードであり、モード2(103)、モード18(104)及びモード34(105)は対角線モードである。フレーム内予測モードは3つの最も可能性の高いモード(most probable mode、MPM)と32個の残りモードによりシグナリングされる。
【発明の概要】
【課題を解決するための手段】
【0004】
実施形態に基づき、少なくとも1つのプロセッサが実行する、ビデオシーケンスの復号のための、フレーム内予測の制御方法であって、参照ラインインデックスに基づき、復号器に第1参照ラインを通知し、第1参照ラインのみに対してフレーム内平滑化を適用するステップであって、複数の参照ラインが符号化ユニットに隣接し、第1参照ラインは前記複数の参照ラインにおける符号化ユニットに最も近接する参照ラインであるステップと、第1参照ラインのみに適用されるフレーム内平滑化に基づき、符号化ユニットに対してフレーム内予測を適用するステップと、フレーム内予測が符号化ユニットに適用されることに基づき、第1参照ラインのみに対して、位置関連フレーム内予測組み合わせ(position-dependent intra prediction combination、PDPC)を適用するステップとを含む。
【0005】
実施形態に基づき、ビデオシーケンスの復号のための、フレーム内予測を制御する装置であって、コンピュータプログラムコードを記憶するように構成される少なくとも1つのメモリと、少なくとも1つのメモリにアクセスするとともに、コンピュータプログラムコードに基づき動作するように構成される少なくとも1つのプロセッサと、を備える。コンピュータプログラムコードは、少なくとも1つのプロセッサに、参照ラインインデックスに基づき、復号器に第1参照ラインを通知させ、第1参照ラインのみに対してフレーム内平滑化を適用させるように構成される第1適用コードであって、複数の参照ラインが符号化ユニットに隣接し、第1参照ラインは前記複数の参照ラインにおける符号化ユニットに最も近接する参照ラインである第1適用コードと、少なくとも1つのプロセッサに、第1参照ラインのみに適用されるフレーム内平滑化に基づき、符号化ユニットに対してフレーム内予測を適用させるように構成される第2適用コードと、少なくとも1つのプロセッサに、フレーム内予測が符号化ユニットに適用されることに基づき、第1参照ラインのみに対してPDPCを適用させるように構成される第3適用コードと、を備える。
【0006】
実施形態に基づき、命令を記憶する非一時的なコンピュータ読み取り可能な記憶媒体であって、該命令はプロセッサに、参照ラインインデックスに基づき、復号器に第1参照ラインを通知し、第1参照ラインのみに対してフレーム内平滑化を適用するステップであって、複数の参照ラインが符号化ユニットに隣接し、前記第1参照ラインは前記複数の参照ラインにおける符号化ユニットに最も近接する参照ラインであるステップと、第1参照ラインのみに適用されるフレーム内平滑化に基づき、符号化ユニットに対してフレーム内予測を適用するステップと、フレーム内予測が符号化ユニットに適用されることに基づき、第1参照ラインのみに対してPDPCを適用するステップと、を実行させる。
【図面の簡単な説明】
【0007】
【
図1】HEVCにおけるフレーム内予測モードの図面である。
【0008】
【
図2】実施形態に基づく通信システムの簡略化ブロック図である。
【0009】
【
図3】実施形態に基づくビデオ符号器とビデオ復号器とのストリーミング環境における配置の図面である。
【0010】
【
図4】実施形態に基づくビデオ復号器の機能ブロック図である。
【0011】
【
図5】実施形態に基づくビデオ符号器の機能ブロック図である。
【0012】
【
図6】次世代ビデオ符号化(Versatile Video Coding、VVC)ドラフト2におけるフレーム内予測モードの図面である。
【0013】
【
図7】VVCドラフト2において、1つの4×4ブロック内の(0、0)と(1、0)位置にあるDCモードのPDPC重み(wL、wT、wTL)を示す図面である。
【0014】
【
図8】実施形態に基づく、フレーム内予測のための、符号化ブロックユニットに隣接する4つの参照ラインの図面である。
【0015】
【
図9】実施形態に基づく、ビデオシーケンスの復号のためのフレーム内予測を制御する方法を示すフローチャートである。
【0016】
【
図10】実施形態に基づく、ビデオシーケンスの復号のためのフレーム内予測を制御するための装置の簡略化ブロック図である。
【0017】
【
図11】実施形態を実現するためのコンピュータシステムの図面である。
【発明を実施するための形態】
【0018】
図2は、実施形態に基づく通信システム(200)のブロック図である。通信システム(200)は、ネットワーク(250)を介して互いに接続される少なくとも2つ端末(210-220)を有してもよい。データの一方向伝送に対して、第1端末(210)はローカル位置でビデオデータを符号化することで、ネットワーク(250)を介して他の端末(220)に伝送する。第2端末(220)はネットワーク(250)から他の端末の符号化ビデオデータを受信し、符号化データを復号するとともに、復元されたビデオデータを表示する。一方向データ伝送は、メディアサービスアプリケーションなどにおいてよく見られる。
【0019】
図2は、第2対端末(230、240)を示し、例えば、ビデオ会議期間に発生する可能性がある符号化ビデオの双方向伝送を支持する。データの双方向伝送に対して、各端末(230、240)はローカル位置で収集されたビデオデータを符号化することで、ネットワーク(250)を介して他の端末に伝送する。各端末(230、240)はさらに、他の端末から伝送され、符号化ビデオデータを受信し、符号化データを復号し、ローカル表示機器において回復されたビデオデータを表示できる。
【0020】
図2において、端末(210-240)はサーバ、パーソナルコンピュータ及びスマートフォンとして図示されているが、実施形態の原理はこれに限定されない。実施形態はラップトップコンピュータ、タブレット、メディアプレイヤー及び/または専門ビデオ会議機器に適用される。ネットワーク(250)は、端末(210-240)の間で符号化ビデオデータを伝送するための、例えば有線及び/または無線通信ネットワークを含む任意の数のネットワークを示す。通信ネットワーク(250)は回路交換及び/またはパケット交換チャンネルにおいてデータを交換できる。代表的なネットワークは電信ネットワーク、ローカルエリアネットワーク、広域エリアネットワーク及び/またはインターネットを含む。本論述の目的から見れば、以下で説明されない限り、ネットワーク(250)のアーキテクチャ及びトポロジは本実施形態の動作に対して重要ではない。
【0021】
図3は、実施形態に基づくビデオ符号器とビデオ復号器とのストリーミング環境における配置の図面である。開示されたテーマは等価的にビデオを支持するための他のアプリケーションに適用でき、例えば、ビデオ会議、デジタルTVを含み、CD、DVD、メモリースティックなどを含むデジタル媒体に圧縮ビデオなどを記憶する。
【0022】
ストリーミングシステムは、キャプチャサブシステム(313)を含み、該キャプチャサブシステムは、例えばデジタルカメラなどのビデオソース(301)を含み、前記ビデオソースは、例えば非圧縮のビデオサンプルストリーム(302)を構築する。符号化ビデオビットストリームに比べて、サンプルストリーム(302)はデータ量が多いことを強調するように太線として描画され、サンプルストリームはカメラ(301)に連結される符号器(303)によって処理される。符号器(303)はハードウェア、ソフトウェアまたはその組み合わせを含むことで、以下により詳しく記載される開示のテーマの各態様を実現または実施する。サンプルストリームに比べて、符号化ビデオビットストリーム(304)は、データ量が少ないことを強調するように細線として描画され、符号化ビデオビットストリームはストリーミングサーバ(305)に記憶されることで、後で使用される。1つまたは複数のストリーミングクライアント(306、308)はストリーミングサーバ(305)にアクセスすることで、符号化ビデオビットストリーム(304)のコピー(307、309)を検索することができる。クライアント(306)はビデオ復号器(310)を有してもよく、該ビデオ復号器は符号化ビデオビットストリーム(307)の入力してくるコピー(307)を復号し、ディスプレイ(312)または他の表示機器(図示せず)に表示される出力するビデオサンプルストリーム(311)を構築する。あるビデオ符号化/圧縮基準に基づきビデオビットストリーム(304、307、309)を符号化できるストリーミングシステムもある。これらの基準の例示はITU-T H.265勧告を含む。開発中のビデオ符号化規格は非公式的にVVCと呼ばれる。開示されたテーマはVVCのコンテキストに適用される。
【0023】
図4は、実施形態に基づくビデオ復号器(310)の機能ブロック図である。
【0024】
受信機(410)は、復号器(310)によって復号される1つまたは複数のコーデックビデオシーケンスを受信でき、同一の実施形態または他の実施形態において、1回に1つの符号化ビデオシーケンスを受信し、各符号化ビデオシーケンスの復号は、他の符号化ビデオシーケンスと独立する。チャンネル(412)から符号化ビデオシーケンスを受信し、該チャンネルは符号化ビデオデータを記憶するための記憶機器へのハードウェア/ソフトウェアリンクであってもよい。受信機(410)は符号化ビデオデータ及び他のデータを受信でき、例えば、それぞれの利用エンティティ(図示せず)に転送される符号化オーディオデータ及び/または補助データストリームである。受信機(410)は符号化ビデオシーケンスと他のデータとを分割できる。ネットワークのジッタを阻止するために、バッファメモリ(415)は受信機(410)とエントロピー復号器/パーサー(420)(以下では「パーサー」と呼ばれる)との間に連結される。受信機(410)は十分な帯域幅及び制御可能性を有する記憶/転送機器、または等時性リアルタイムネットワークからデータを受信する際、バッファ(415)を必要としないか、またはバッファが小さくてもよい。インターネットのようなビジネスパケットネットワークで利用するために、バッファ(415)を必要としてよく、バッファは相対的に大きく、有利に自己適応のサイズを有してもよい。
【0025】
ビデオ復号器(310)はパーサー(420)を有することで、エントロピー符号化ビデオシーケンスに基づき、シンボル(421)を再構築する。これらのシンボルのカテゴリには、復号器(310)の動作を管理するための情報、及び場合によってはディスプレイ(312)のような表示機器を制御するための情報が含まれ、
図4に示すように、該ディスプレイは復号器の構成部分ではないが、復号器に連結される。表示機器のための制御情報は、付加情報(SEI(Supplementary Enhancement Information、SEI))メッセージまたはビデオ表示情報(Video Usability Information、VUI)パラメータセットセグメント(図示せず)という形式であってもよい。パーサー(420)は受信された符号化ビデオシーケンスに対して解析/エントロピー復号を行う。符号化ビデオシーケンスの符号化は、ビデオ符号化技術または基準に基づき行うとともに、可変長符号化、ハフマン符号化(Huffmancoding)、コンテキスト感度を有するかまたは有しない算術符号化などのような、当業者にとって公知である各種原理に従う。パーサー(420)はグループに対応する少なくとも1つのパラメータに基づき、符号化ビデオシーケンスから、ビデオ復号器における画素のサブグループのうちの少なくとも1つのサブグループのためのサブグループパラメータセットを抽出する。サブグループは、ピクチャグループ(Group of Picture、GOP)、ピクチャ、タイル、スライス、マクロブロック、符号化ユニット(Coding Unit、CU)、ブロック、変換ユニット(Transform Unit、TU)、予測ユニット(Prediction Unit、PU)などを含んでもよい。エントロピー復号器/パーサーはさらに、符号化ビデオシーケンスから、変換係数、量子化器パラメータ(quantizer parameter、QP)値、動きベクトルなどのような情報を抽出できる。
【0026】
パーサー(420)は、バッファ(415)から受信されたビデオシーケンスに対してエントロピー復号/解析動作を実行することで、シンボル(421)を構築する。パーサー(420)は符号化データを受信するとともに、選択的に特定のシンボル(421)を復号する。また、パーサー(420)は、特定のシンボル(421)が動き補償予測ユニット(453)、スケーラ/逆変換ユニット(451)、フレーム内予測ユニット(452)またはループフィルタユニット(454)に提供されるかどうかを決定できる。
【0027】
符号化ビデオピクチャ、または一部の符号化ビデオピクチャ(例えば、フレーム間ピクチャとフレーム内ピクチャ、フレーム間ブロックとフレーム内ブロック)のタイプ、及び他の要因に依存し、シンボル(421)の再構築は、複数の異なるユニットに関わる可能性がある。どのユニットに関わるか、及び関わり方式について、パーサー(420)が符号化ビデオシーケンスに基づき解析したサブグループ制御情報によって制御される。簡潔のために、パーサー(420)と以下の複数ユニットとの間の、このようなサブグループ制御情報ストリームを図示していない。
【0028】
既に言及された機能ブロック以外、復号器(310)は概念で以下に記載のいくつかの機能ユニットに細分される。商業制約で実行する実際の実現方式において、これらのユニットにおける複数のユニットは互いに密接にインタラクションするとともに、少なくとも部分的に互いに集積されてもよい。ただし、開示されたテーマを記載するという目的から見れば、概念的に以下の機能ユニットに細分されることは適切である。
【0029】
第1ユニットはスケーラ/逆変換ユニット(451)である。スケーラ/逆変換ユニット(451)はパーサー(420)からシンボル(421)としての量子化変換係数及び制御情報を受信し、どの変換方式を利用するかということ、ブロックのサイズ、量子化因子、量子化スケーリング行列などを含む。スケーラ/逆変換ユニットは、アグリゲーター(455)に入力されるサンプル値が含まれるブロックを出力する。
【0030】
スケーラ/逆変換(451)の出力サンプルはフレーム内符号化ブロックに適合でき、即ち、前に再構築されたピクチャからの予測的な情報を利用せず、現在ピクチャの前に再構築された部分からの予測的な情報を利用できる。このような予測的な情報はフレーム内ピクチャ予測ユニット(452)から提供される。場合によっては、フレーム内ピクチャ予測ユニット(452)は現在(部分的に再構築された)ピクチャ(456)から抽出され、周囲にある既に再構築された情報を利用して、再構築中のブロックと同じサイズ及び形状のブロックを生成する。場合によっては、アグリゲーター(455)は各サンプルに基づき、フレーム内予測ユニット(452)から生成された予測情報を、スケーラ/逆変換ユニット(451)により提供される出力サンプル情報に追加する。
【0031】
また、スケーラ/逆変換ユニット(451)の出力サンプルは、フレーム間符号化ブロック、及び場合によっては動き補償ブロックに属してもよい。このような場合、動き補償予測ユニット(453)は参照ピクチャメモリ(457)にアクセスし、予測のためのサンプルを抽出できる。ブロックに属するシンボル(421)に基づき、抽出のサンプルに対して動き補償を行った後、これらのサンプルはアグリゲーター(455)によってスケーラ/逆変換ユニットの出力に追加され(この場合、残差サンプルまたは残差信号と呼ばれる)、出力サンプル情報を生成する。動き補償予測ユニットが予測サンプルを抽出する参照ピクチャメモリ内のアドレスは、動きベクトルによって制御され、動きベクトルはシンボル(421)という形式で、動き補償ユニットに使用され、符号(421)は、例えばX、Yおよび参照ピクチャ成分を有してもよい。動き補償はさらに、サブサンプルによって動きベクトルを正確にする際、参照ピクチャメモリから抽出されたサンプル値の補間、動きベクトル予測メカニズムなどを含んでもよい。
【0032】
アグリゲーター(455)の出力サンプルは、ループフィルタユニット(454)において、各種のループフィルタリング技術に使用される。ビデオ圧縮技術はループ内フィルタ技術を含んでもよく、該ループ内フィルタ技術は、符号化ビデオビットストリームに含まれるとともに、パーサー(420)からのシンボル(421)として、ループフィルタユニット(454)に用いられるパラメータによって制御されるが、ビデオ圧縮技術はさらに、符号化ピクチャまたは符号化ビデオシーケンスの前の(復号順序に従う)部分を復号する期間で取得したメタ情報、及び前に構築されループフィルタリングを経たサンプル値に応答できる。
【0033】
ループフィルタユニット(454)の出力は、サンプルストリームであってもよく、前記サンプルストリームは表示機器(312)に出力され、且つ参照ピクチャメモリ(456)に記憶されることで、将来のピクチャ間予測に適用される。
【0034】
完全に再構成されると、ある符号化ピクチャは参照ピクチャとして、後の予測に用いることができる。符号化ピクチャが完全に再構成され、符号化ピクチャ(例えばパーサー(420)を介して)が参照ピクチャとして認識されると、現在ピクチャ(456)は参照ピクチャメモリ(457)の一部になり、その後の符号化ピクチャを再構成する前に、新たな現在ピクチャバッファを改めて割り当てる。
【0035】
ビデオ復号器(310)は、例えばITU-T H.265勧告の基準における所定ビデオ圧縮技術に基づき、復号動作を実行することができる。符号化ビデオシーケンスは、ビデオ圧縮技術または基準の文法、及びビデオ圧縮技術または基準に記録されたコンフィグファイルという両者に従うという意味で、符号化ビデオシーケンスは使用中のビデオ圧縮技術または基準が指定する文法に準拠する。準拠性について、符号化ビデオシーケンスの複雑度は、ビデオ圧縮技術または基準のレベルによって限定される範囲内にあるように要求する。ある状況で、レベルは最大ピクチャの大きさ、最大フレームレート、最大再構築サンプリングレート(例えば、百万サンプル/秒で測定される)、最大参照ピクチャの大きさを制限する。ある状況で、レベルにより設定される制限は、仮想参照復号器(HRD)の仕様、及び符号化ビデオシーケンスにおいてシグナリングされたHRDバッファの管理のメタデータを介してさらに限定される。
【0036】
実施形態において、受信機(410)は追加(冗長)データ及び符号化ビデオを受信できる。追加データは符号化ビデオシーケンスの一部として含まれる。追加データはビデオ復号器(310)によって利用されることで、データを適切に復号し、及び/またはオリジナルビデオデータをより正確に再構築することができる。追加データは、例えば時間、空間または信号対雑音比(SNR)強化層、冗長スライス、冗長ピクチャ、前方誤り訂正符号などの形式であってもよい。
【0037】
図5は、実施形態に基づくビデオ符号器(303)の機能ブロック図である。
【0038】
符号器(303)は、ビデオソース(301)(符号器の一部ではない)からビデオサンプルを受信でき、該ビデオソースは符号器(303)によって符号化されるビデオ画像を収集できる。
【0039】
ビデオソース(301)は、ビデオ符号器(303)によって符号化され、デジタルビデオサンプルストリームの形式であるソースビデオシーケンスを提供でき、デジタルビデオサンプルストリームは任意の適切なビット深度(例えば、8ビット、10ビット、12ビット…)、任意の色空間(例えば、BT.601 Y CrCB、RGB……)、及び任意の適切なサンプリング構成(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)を有してもよい。メディアサービスシステムにおいて、ビデオソース(301)は、前に準備されたビデオを記憶するための記憶機器であってもよい。ビデオ会議システムにおいて、ビデオソース(301)は、ビデオシーケンスとして、ローカル画像情報をキャプチャするための撮影装置であってもよい。ビデオデータは、順序に応じて見る際、動きが付与された複数の単独のピクチャとして提供されてもよい。ピクチャそのものは、空間画素アレイとして組織され、使用中のサンプリング構成、色空間などに依存し、各画素には1つ又は複数のサンプルが含まれてもよい。画素とサンプルとの間の関係は、当業者にとって容易に理解できる。以下の記載はサンプルに着目する。
【0040】
実施形態に基づいて、ビデオ符号器(303)は、リアルタイムまたはアプリケーションの必要な任意の他の時間の制約で、ソースビデオシーケンスのピクチャを符号化するとともに、符号化ビデオシーケンス(543)として圧縮する。適切な符号化速度で実行することは、コントローラ(550)の1つの機能である。コントローラ(550)は以下に記載の他の機能ユニットを制御するとともに、これらの他の機能ユニットに機能的に連結される。簡潔のために、該連結を図示していない。コントローラにより設定されるパラメータは、レート制御に関するパラメータ(ピクチャスキップ、量子化器、レート歪み最適化技術のλ値......)、ピクチャの大きさ、ピクチャグループ(GOP)の構成、最大動きベクトルの検索範囲などを含んでもよい。コントローラ(550)は他の適切な機能を有するように構成されてもよく、これらの機能は、あるシステム設計に対して最適化したビデオ符号器(303)に属する。
【0041】
いくつかの実施例において、ビデオ符号器は符号化ループにおいて動作するように構成される。非常に簡単な記載として、1つの例示において、符号化ループは符号器(530)(以降、ソース符号器と呼ばれる)(例えば、符号化対象となる入力ピクチャと参照ピクチャに基づき、シンボルを生成することを担う)、及びビデオ符号器(303)に埋め込まれる(ローカル)復号器(533)を含む。復号器は、(リモート)復号器がサンプルデータを構築するという方式で、シンボルを再構築し、サンプルデータを構築する(なぜならば、開示のテーマで考慮されるビデオ圧縮技術において、シンボルと符号化ビデオビットストリームとの間の圧縮はいずれも可逆であるからだ)。再構築されたサンプルストリーム(サンプルデータ)を参照ピクチャメモリ(534)に入力する。シンボルストリームの復号は、復号器位置(ローカルまたはリモート)と関係がないビット正確結果を発生させるから、参照ピクチャメモリにおけるコンテンツはローカル符号器とリモート符号器との間でもビット正確である。言い換えれば、符号器の予測部分から「見られる」参照ピクチャサンプルは復号器が復号期間で予測を利用しようとする際に「見られる」サンプル値と完全に同様である。該参照ピクチャの同期性の基本原理は(及び、例えばチャンネル誤差から、同期性を維持できない場合に発生するドリフト)も当業者に知られている。
【0042】
「ローカル」復号器(533)の動作は、例えば、以上
図4を結合し、詳しく記載したビデオ復号器(310)の「リモート」復号器の動作と同様であってもよい。ただし、
図4を簡単に参照し、シンボルが利用可能であり、エントロピー符号器(545)及びパーサー(420)がロスレスにシンボルを符号化ビデオシーケンスに符号化/復号することができる場合、チャンネル(412)、受信機(410)、バッファメモリ(415)とパーサー(420)とを含むビデオ復号器(310)のエントロピー復号部分は、ローカル復号器(533)において完全に実現できないおそれがある。
【0043】
この場合、復号器に存在する解析/エントロピー復号以外の任意の復号器技術も、必然として、基本的に同じ機能という形式で、対応する符号器に存在する。符号器技術と全面的に記載された復号器技術とは反対の処理なので、符号器技術に対する記載を簡略化し得る。より詳しい記載は、ある領域のみに必要であり、以下で提供される。
【0044】
その動作の一部として、ソース符号器(530)は動き補償予測符号化を実行でき、ビデオシーケンスからの1つまたは複数の符号化フレーム(「参照フレーム」として指定される)を参照し、予測的に入力フレームを符号化する。該方式で、符号化エンジン(532)は入力フレームの画素ブロックと、入力フレームの予測的な参照の参照フレームとして選択される画素ブロックとの間の差を符号化する。
【0045】
ローカルビデオ復号器(533)は、ソース符号器(530)によって構築されたシンボルに基づき、参照ピクチャとして指定できるピクチャの符号化ビデオデータを復号することができる。符号化エンジン(532)の動作は好ましくは非可逆処理である。符号化ビデオデータがビデオ復号器(
図4において図示せず)で復号できると、再構築されたビデオシーケンスは、一般的にある程度誤差を有するソースビデオシーケンスのコピーであってもよい。ローカルビデオ復号器(533)はビデオ復号器が参照ピクチャに対して実行する復号処理をコピーするとともに、再構築された参照ピクチャを参照ピクチャキャッシュ(534)に記憶させる。該方式で、ビデオ符号器(303)は再構築された参照ピクチャのコピーをローカルに記憶し、該コピーは、リモートビデオ復号器によって取得される再構築された参照ピクチャと、共通のコンテンツを有する(伝送誤差がない)。
【0046】
予測器(535)は、符号化エンジン(532)に対して予測検索を実行することができる。即ち、符号化対象となる新たなフレームに対して、予測器(535)は参照ピクチャメモリ(534)から新たなピクチャとしての適切な予測参照のサンプルデータ(候補参照画素ブロックとして)、またはあるメタデータ、例えば参照ピクチャ動きベクトル、ブロック形状などを検索する。予測器(535)はサンプルブロックに基づき、画素ブロックごとに動作することで、適切な予測参照を見つけることができる。ある状況で、予測器(535)によって取得された検索結果に基づき決定されるように、入力ピクチャは参照ピクチャメモリ(534)に記憶された複数の参照ピクチャから取得される予測参照を有してもよい。
【0047】
コントローラ(550)は、例えば、ビデオデータを符号化するためのパラメータとサブグループパラメータを設定することを含む、ビデオ符号器(530)の符号化動作を管理できる。
【0048】
エントロピー符号器(545)において、前記全ての機能ユニットの出力に対してエントロピー符号化を行ってもよい。エントロピー符号器は、当業者の既知技術(例えばハフマン符号化、可変長符号化、算術符号化等)に基づき、シンボルに対して可逆圧縮を行うことで、各種機能ユニットから生成されたシンボルを符号化ビデオシーケンスに変換する。
【0049】
伝送器(540)は、エントロピー符号器(545)によって構築された符号化ビデオシーケンスをバッファリングすることで、通信チャンネル(560)を介して伝送するように準備し、該通信チャンネルは符号化ビデオデータを記憶するための記憶機器へのハードウェア/ソフトウェアリンクであってもよい。伝送器(540)はビデオ符号器(530)からの符号化ビデオデータと、伝送対象となる他のデータ、例えば符号化オーディオデータ及び/または補助データストリーム(ソースを図示せず)とをマージする。
【0050】
コントローラ(550)は、ビデオ符号器(303)の動作を管理できる。符号化期間で、コントローラ(550)は各符号化ピクチャに、特定の符号化ピクチャのタイプを指定することができ、相応的なピクチャに適用される符号化技術に影響する可能性がある。例えば、一般的に、ピクチャは以下のフレームタイプのうちの1つとして割り当てられる。
【0051】
フレーム内ピクチャ(Iピクチャ)であって、シーケンスにおけるいずれの他のピクチャも予測のソースとしていない場合に、符号化及び復号されるピクチャであってもよい。例えばデコーダ復号動作の瞬時リフレッシュピクチャが含まれる異なるタイプのフレーム内ピクチャを許容するビデオコーデックもある。当業者は、Iピクチャの変体及びその相応的な適用、特徴を理解できる。
【0052】
予測ピクチャ(Pピクチャ)であって、多くても1つの動きベクトル及び参照インデックスによって各ブロックのサンプル値を予測する場合、フレーム内予測またはフレーム間予測を利用して符号化及び復号を行うピクチャであってもよい。
【0053】
双方向予測ピクチャ(Bピクチャ)であって、多くても2つの動きベクトル及び参照インデックスによって、各ブロックのサンプル値を予測する場合、フレーム内予測またはフレーム間予測を利用して符号化及び復号を行うピクチャであってもよい。同様に、複数の予測ピクチャは、2つより多い参照ピクチャと、関連メタデータとを、単一のブロックの再構築に使用できる。
【0054】
ソースピクチャは一般的に、複数のサンプルブロック(例えば、4×4、8×8、4×8または16×16個のサンプルのブロック)に空間的に細分できるとともに、ブロックごとに符号化を行う。これらのブロックは、他の(符号化)ブロックを参照し、予測的に符号化を行って、他のブロックはブロックの相応的なピクチャに適用される符号化割当によって決定される。例えば、Iピクチャのブロックに対して非予測符号化を行うか、またはIピクチャのブロックは、同一のピクチャの符号化されたブロックを参照して、予測符号化(空間予測またはフレーム内予測)を行う。Pピクチャの画素ブロックは、前に符号化された1つの参照ピクチャを参照し、空間予測または時間予測を介して予測的に符号化を行ってもよい。Bピクチャのブロックは、前に符号化された1つまたは2つの参照ピクチャを参照し、空間予測または時間予測を介して予測的に符号化を行ってもよい。
【0055】
ビデオ符号器(303)は例えばITU-T H.265勧告の所定のビデオ符号化技術または基準に基づき符号化動作を実行することができる。その動作において、ビデオ符号器(303)は、入力ビデオシーケンスにおける時間的及び空間的冗長性を利用した予測符号化動作を含む各種の圧縮動作を実行できる。従って、符号化ビデオデータは、使用されるビデオ符号化技術または基準が指定する文法に合う。
【0056】
実施形態において、伝送器(540)は追加データ及び符号化ビデオを伝送することができる。ソース符号器(530)は符号化ビデオシーケンスの一部として、このようなデータを含んでもよい。追加データは、時間/空間/SNR強化層、冗長ピクチャ及びスライスのような他の形式の冗長データ、付加情報(SEI)メッセージ、ビデオ表示情報(VUI)パラメータセットセグメントなどを含んでもよい。
【0057】
図6は、VVCドラフト2におけるフレーム内予測モードの図面である。
【0058】
VVCドラフト2において、合計で87個のフレーム内予測モードがあり、
図6に示すように、モード18(601)は水平モードであり、モード50(602)は垂直モードであり、モード2(603)、モード34(604)及びモード66(605)は対角線モードである。モード-1~10、及びモード67~76は広角フレーム内予測(Wide-Angle Intra Prediction、WAIP)モードと呼ばれる。
【0059】
PDPCはシグナリングされる必要がなく、平面モード、DCモード、WAIPモード、水平モード、垂直モード、左下角モード(モード2(603)))とその8つの隣接角モード(モード3~10)、及び右上角モード(モード66(605)))とその8つの隣接角モード(モード58~65)というフレーム内モードに適用される。
【0060】
以下のPDPC表現式に基づき、フレーム内予測モード(DC、平面、角)と参照サンプルとの線型結合を利用して位置(x、y)にある予測サンプルpred(x、y)を予測する。
【数1】
【0061】
ここで、Rx,-1,R-1,yはそれぞれ現在サンプル(x、y)のトップ部(T)と左側(L)にある参照サンプルを示し、R-1,1は現在ブロックの左上(top-left、TL)角にある参照サンプルを示す。
【0062】
DCモードにおいて、幅と高さとのサイズを有するブロックに対して、以下のように重み(wL、wT、wTL)を演算する。
wT=32>>((y<<1)>> シフト)、wL=32>>((x<<1)>> シフト)
WTL=(wL>>4)+(wT>>4)、
(式2)
【0063】
なお、シフト=(log2(幅)-2)+log2(高さ)-2+2)>>2
【0064】
平面モードにおいて、wTL=0であり、水平モードにおいて、wTL=wTであり、垂直モードにおいて、wTL=wLである。PDPC重みは、加算とシフトのみを介して演算されてもよい。式1を利用して単一のステップで、pred(x、y)の値を演算してもよい。
【0065】
図7は、VVCドラフト2において、1つの4×4ブロック内の(0、0)と(1、0)位置にあるDCモードのPDPC重み(wL、wT、wTL)を示す図面である。
【0066】
図7を参照し、(a)部分は、1つの4×4ブロック内の(0、0)位置にあるDCモードのPDPC重み(wL、wT、wTL)を示す。(b)部分は、1つの4×4ブロック内(1、0)位置にあるDCモードのPDPC重み(wL、wT、wTL)を示す。
【0067】
PDPCをDCモード、平面モード、水平モード及び垂直モードに適用すると、例えばHEVC DCモード境界フィルタまたは水平/垂直モードエッジフィルタのような他の境界フィルタを必要としない。
【0068】
図7の(a)部分は、右上角モードまたは対角線モードに適用されるPDPC参照サンプルR
x,-1,R
-1,y及びR
-1,-1に対する定義を示す。予測サンプルpred(x‘,y’)は予測ブロック内の(x‘,y’)にある。参照サンプルR
x,-1の座標xはx=x‘+y’+1から与えられ、参照サンプルR
-1,yの座標yは類似するように、y=x‘+y’+1から与えられる。
【0069】
VVCドラフト2からの以下の項目はPDPCを説明する。
8.2.4.2.9位置関連のフレーム内予測の組み合わせ処理
該処理の入力は以下の通りであり、
-フレーム内予測モードPredModeIntra、
-変換ブロックの幅を指定するための変数nTbW、
-変換ブロックの高さを指定するための変数nTbH、
-参照サンプルの幅を指定するための変数refW、
-参照サンプルの高さを指定するための変数refH、
-予測のサンプルpredSamples[x][y]、ここで、x=0..nTbW-1及びy=0..nTbH-1)であり、
-隣接サンプルp[x][y]、ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1)であり、
-現在ブロックの色成分を指定するための変数cldx。
該処理の出力は、補正された予測サンプルpredSamples[x][y]であり、ここで、x=0..nTbW-1、y=0..nTbH-1である。
cldxの値に依存して、関数cliplCmpは以下のように設定され、
-cldxが0に等しいと、cliplCmpはClipl
Yに等しく設定される。
-さもなければ、cliplCmpはClipl
Cに等しく設定される。
変数nScaleは、((Log2(nTbW)+Log2(nTbH)-2)>>2)であるように設定される。
以下のように、参照サンプルアレイmainRef[x]とsidRef[y]を取得し、ここで、x=0..refW及びy=0..refH)である。
【数2】
以下のように、変数refL[x][y]、refT[x][y]、wT[y]、wL[y]及びwTL[x][y]を取得し、ここで、x=0..nTbW-1、y=0..nTbH-1)であり、
-predModeIntraがINTRA_PLANAR、INTRA_DC、INTRA_ANGULAR18またはINTRA_ANGULAR50に等しいと、以下のように適用され、
【数3】
-さもなければ、predModeIntraがINTRA_ANGULAR2またはINTRA_ANGULAR66に等しいと、以下のように適用され、
【数4】
-さもなければ、predModeIntraがINTRA_ANGULAR10の以下であれば、以下のようにソートされたステップが適用され、
-IntraPredModeに基づき、項目8.2.4.2.7に規定したinvAngleを利用して、変数dXPos[y]、dXFrac[y]、dXInt[y]及びdX[y]を取得し、
【数5】
-以下のように、変数refL[x][y]、refT[x][y]、wT[y]、wL[y]及びwTL[x][y]を取得し、
【数6】
-さもなければ、predModeIntraがINTRA_ANGULAR58の以上であれば、以下のようにソートされたステップが適用され、
-IntraPredModeに基づき、項目8.2.4.2.7に規定したInvAngleを利用して変数dYPos[x]、dYFrac[x]、dYInt[x]及びdY[x]を取得し、
【数7】
-以下のように変数refL[x][y]、refT[x][y]、wT[y]、wL[y]及びwTL[x][y]を取得し、
【数8】
-さもなければ、refL[x][y]、refT[x][y]、wT[y]、wL[y]及びwTL[x][y]はいずれも0に等しく設定される。以下のようにフィルタリングされたサンプルfiltSamples[x][y](ここで、x=0..nTbW-1、y=0..nTbH-1である)の値を取得し、
【数9】
【0070】
VVCドラフト2において、輝度成分に対して、生成処理(即ちフレーム内平滑化処理)の前に、フレーム内予測サンプルの生成のための隣接サンプルに対してフィルタリングを行う。フィルタリングは所定のフレーム内予測モードと変換ブロックの大きさにより制御される。フレーム内予測モードがDCモード、または変換ブロックの大きさが4×4に等しいと、隣接サンプルに対してフィルタリングを行わない。所定のフレーム内予測モードと垂直モード(または水平モード)との間の距離は、事前定義された閾値より大きいと、フィルタリング処理を開始させる。隣接サンプルのフィルタリングに対して、[1、2、1]フィルタとバイリニアフィルタを利用する。
【0071】
VVCドラフト2からの以下の項目は、フレーム内平滑化処理を説明する。
8.2.4.2.4 参照サンプルのフィルタリング処理
該処理の入力は以下の通りであり、
-(フィルタリングされていない)隣接サンプルrefUnfilt[x][y]、ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1であり、
-変換ブロックの幅を指定するための変数nTbW、
-変換ブロックの高さを指定するための変数nTbH、
-参照サンプルの幅を指定するための変数refW、
-参照サンプルの高さを指定するための変数refH、
-現在ブロックの色成分を指定するための変数cIdx。
該処理の出力は参照サンプルp[x][y]であり、ここで、x=-1、y=-1..refH-1であり、及びx=0..refW-1、y=-1である。
変数nTbSは(Log2(nTbW)+Log2(nTbH))>>1に等しく設定される。
変数whRatioはmin(abs(Log2(nTbW/nTbH)),2)に等しく設定される。
以下のように変数wideAngleを取得し、
-以下の条件のうちの全ての条件がいずれも真であれば、wideAngleは1に等しく設定される。
-nTbWはnTbHより大きい
-predModeIntraは2以上である
-predModeIntraは(whRatio>1)?12:8より小さい
-さもなければ、以下の条件のうちの全ての条件がいずれも真であれば、wideAngleは1に等しく設定される。
-nTbHはnTbWより大きい
-predModeIntraは66以下である
-predModeIntraは(whRatio>1)?56:60より大きい
-さもなければ、wideAngleは0に設定される。
以下のように、変数filterFlagを取得し、
-以下の条件のうちの1つまたはより複数の条件が真であれば、filterFlagは0に等しく設定され、
-predModeIntraはINTRA_DCに等しく、
-cIdxは0に等しくない。
-さもなければ、以下のように適用され、
-変数minDistVerHorは、
Min(Abs(predModeIntra-50),Abs(predModeIntra-18))に等しく設定される。
-変数intraHorVerDistThres[nTbS]は、表8-4において詳しく規定される。
-以下のように、変数filterFlagを取得し、
-minDistVerHorがintraHorVerDistThres[nTbS]より大きく、またはwideAngleが1に等しいと、filterFlagは1に等しく設定される。
-さもなければ、filterFlagは0に等しく設定される。
表8-4:各種変換ブロックの大きさのためのintraHorVerDistThres[nTbS]の規定
【表1】
参照サンプルp[x][y]の取得について、以下のように適用され、
-filterFlagが1に等しいと、以下のように、フィルタリングされたサンプル値p[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)を取得し、
【数10】
-さもなければ、参照サンプル値p[x][y]は、フィルタリングされていないサンプル値refUnfilt[x][y] に等しく設定され、ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1)である。
【0072】
VVCドラフト2において、マルチラインフレーム内予測はより多い参照ラインを利用してフレーム内予測を行って、符号器は、どの参照ラインを利用してフレーム内予測器を生成するかを决定するとともに、シグナリングする。フレーム内予測モードの前に、参照ラインインデックスをシグナリングし、非ゼロ参照ラインインデックスをシグナリングする際、フレーム内予測モードから平面モードとDCモードを排除する。
【0073】
図8は、実施形態に基づく、フレーム内予測のための符号化ブロックユニット(810)に隣接する4つの参照ライン(881~884)の図面である。
【0074】
図8を参照し、4つの参照ライン(881~884)の例示を示し、参照ライン(881~884)のうちの各々は、6つのセグメントA~F(820~870)を有する。ブロックユニット(810)の左上にも、黒で左上参照サンプル(880)を描画する。また、セグメントBとE(830と860)それぞれからの、最も近接するサンプル(890)によってセグメントAとF(820~870)をパディングする。
【0075】
再び
図6を参照し、通常のフレーム内予測モードによりカバーされる予測方向範囲を超える広角は、点線矢印で示し、それぞれ広角フレーム内予測モードに対応する。以下のような非正方形ブロックはこれらの広角に適用される:
【0076】
ブロックの幅がブロックの高さより大きいと、右上方向で(HEVCにおけるフレーム内予測モード34)45度以上の角度である。
【0077】
ブロックの高さがブロックの幅より大きいと、左下方向で(HEVCにおけるフレーム内予測モード2)45度以上の角度である。
【0078】
元の方法で置換されたモードをシグナリングし、解析の後、置換されたモードを改めて広角フレーム内予測モードのインデックスにマッピングする。フレーム内予測モードの総数は不変で、即ち35であり、フレーム内モードの番号は不変である。
【0079】
現在、PDPCは全ての参照ラインに適用される。ただし、生成の予測サンプルが似るように、PDPC処理は異なる参照ラインを利用するが、これは望ましい設計ではない。
【0080】
現在、フレーム内平滑化は全ての参照ラインに適用される。ただし、フレーム内平滑化処理は異なるラインにおける参照サンプルをより近接させ、これは所望の設計ではない。
【0081】
これらの問題を解決するために、以下は実施形態を検討し、これらの実施形態は単独、または任意の順序で組み合わせて利用されてもよい。以下の記載において、最も近い参照ライン(即ち、
図8の参照ライン881)のラインインデックスは0である。シグナリングされる最大の参照ライン番号をNとして示す。また、用語「PDPC」は、VVCドラフト2の項目8.2.4.2.9に記載される簡略化PDPCを指す。
【0082】
実施形態において、最も近い参照ラインのみに対してPDPCを適用する。
【0083】
実施形態において、最も近い参照ラインのみに対してフレーム内平滑化処理を適用する。
【0084】
実施形態において、いくつかの参照ラインのみ(即ち、
図8における881~884)に対して、フレーム内平滑化処理を適用する。実施形態において、フレーム内平滑化処理を参照ライン0(即ち、
図8の881)、及び1(即ち、
図8の882)のみに適用する。他の実施形態において、フレーム内平滑化処理を参照ライン0及び3(即ち、
図8の884)に適用する。他の実施形態において、フレーム内平滑化処理を、参照ライン0及び2(即ち、
図8の883)に適用する。他の実施形態において、フレーム内平滑化処理を1つの参照ラインに適用せず、フレーム内平滑化処理を他の全ての参照ラインに適用する。例えば、フレーム内平滑化処理を参照ライン3に適用しない。
【0085】
実施形態において、選択されたいくつかの参照ラインのみに対してPDPCを適用する。実施形態において、PDPCを参照ライン0及び1のみに適用する。他の実施形態において、PDPCを参照ライン0及び3に適用する。他の実施形態において、PDPCを参照ライン0及び2に適用する。他の実施形態において、PDPCを1つの参照ラインに適用せず、PDPCを他の全ての参照ラインに適用する。例えば、PDPCを参照ライン3に適用しない。
【0086】
実施形態において、非ゼロ参照ラインのみ(即ち、
図8の882~884)に対してPDPCを適用するが、PDPCが非ゼロ参照ラインに適用される場合、PDPCはいくつかのフレーム内予測モードのみに適用される。以下の実施形態は単独、または任意の順序で組み合わせて適用される。実施形態において、非ゼロ参照ラインを利用する場合、PDPCは平面モード及び/またはDCモードのみに適用される。実施形態において、非ゼロ参照ラインを利用する場合、PDPCを水平モードと垂直モードのみに適用する。他の実施形態において、非ゼロ参照ラインを利用する場合、PDPCを対角線モードのみ(
図6に示すモード2または66)に適用する。他の実施形態において、非ゼロ参照ラインを利用する場合、PDPCをモード2とモード66に近接するフレーム内予測モードのみに適用し、例えば、
図6に示すモード3~10、及びモード58~65である。他の実施形態において、非ゼロ参照ラインを利用する場合、PDPCをWAIPモードのみに適用する。
【0087】
実施形態において、PDPCとフレーム内平滑化処理の異なる組み合わせを異なる参照ラインに適用する。実施形態において、PDPCとフレーム内平滑化とを参照ライン0に適用し、PDPCのみを参照ライン1に適用し、フレーム内平滑化のみを参照ライン2に適用し、そして、参照ライン3にPDPCも、フレーム内平滑化も適用しない。他の実施形態において、Nが4に等しいと、PDPCとフレーム内平滑化の両者を参照ライン0に適用し、及び/またはPDPCのみ、またはフレーム内平滑化のみを適用し、両者を適用しない少なくとも1つの参照ラインが存在し、及び/またはPDPC、フレーム内平滑化のいずれも適用しない少なくとも1つの参照ラインが存在する。他の実施形態において、Nが3に等しいと、PDPCとフレーム内平滑化の両者を参照ライン0に適用し、PDPCのみを非ゼロ参照ラインのうちの1つの非ゼロ参照ラインに適用し、PDPC、フレーム内平滑化のいずれも参照ラインのうちの1つの参照ラインに適用しない。他の実施形態において、Nが3に等しいと、PDPCとフレーム内平滑化の両者を参照ライン0に適用し、フレーム内平滑化のみを非ゼロ参照ラインのうちの少なくとも1つに適用し、PDPC、フレーム内平滑化のいずれも参照ラインのうちの少なくとも1つに適用しない。
【0088】
実施形態において、平面モードとDCモードとが非ゼロ参照ラインに適用されるが、異なる参照ラインにおいて、平面モードとDCモードに適用されるPDPCとフレーム内平滑化とは異なる。実施形態において、最も近い参照ラインにおいて、PDPCとフレーム内平滑化とを平面モードとDCモードに適用するとともに、他の参照ラインにおいて、PDPCとフレーム内平滑化とを平面モードとDCモードに適用しない。他の実施形態において、最も近い参照ラインにおいて、PDPCとフレーム内平滑化とを平面モードとDCモードに適用し、非ゼロ参照ラインにおいて、PDPCとフレーム内平滑化のうちのいずれか一つを、平面モードとDCモードに適用し、または、PDPCとフレーム内平滑化のいずれも平面モードとDCモードに適用しない。
【0089】
実施形態において、非ゼロ参照ラインに対して、PDPCを広角(wide angle)に適用しない。
【0090】
実施形態において、非ゼロ参照ラインに対して、フレーム内平滑化を広角に適用しない。
【0091】
実施形態において、フレーム内平滑化は参照ラインに依存する。つまり、異なる参照ラインに対して、フレーム内平滑化を異なるフレーム内予測モードに適用する。どの水平/垂直モードに近接するフレーム内予測モードがフレーム内平滑化から排除されるかを制御するための閾値は、参照ラインインデックスに依存する。実施形態において、特定の参照ラインインデックスに対してフレーム内平滑化を適用するフレーム内予測モードは、小さい参照ラインインデックス値に対してフレーム内平滑化を適用するフレーム内予測モードにより、完全にカバーされ、小さい参照ラインインデックス値は、予測対象となる現在ブロックにより近接する参照ラインを指す。
【0092】
実施形態において、異なる参照ラインに対して、PDPCを利用するフレーム内予測モードは異なる。実施形態において、参照ライン0のうち、PDPCを垂直方向及び水平方向に適用する。ただし、非ゼロ参照ラインにおいて、PDPCを垂直方向及び水平方向に適用しない。
【0093】
以下のテキストは、VVCドラフト2に基づく、非ゼロ参照ラインに対してフレーム内平滑化を禁止する実施形態を利用したテキスト変更を記載する(下線と取り消し線を利用する)。
8.2.4.2.1 一般的なフレーム内サンプル予測
該処理の入力は以下の通りであり、
-現在ピクチャの左上サンプルに対する現在変換ブロックの左上サンプルを指定するためのサンプル位置(xTbCmp、yTbCmp)
-フレーム内予測モードを指定するための変数predModeIntra、
-変換ブロックの幅を指定するための変数nTbW、
-変換ブロックの高さを指定するための変数nTbH、
-
参照ラインインデックスを指定するための変数refLine、
-現在ブロックの色成分を指定するための変数cIdx。
該処理の出力は予測サンプルpredSamples[x][y]であり、ここで、x=0..nTbW-1、y=0..nTbH-1である。
変数whRatioは、min(abs(Log2(nTbW/nTbH)),2)に等しく設定される。
以下のように変数refWとrefHを取得し、
【数11】
参照サンプルp[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)の生成に対して、以下の順序付けのステップが適用される:
1.サンプル位置(xTbCmp、yTbCmp)、参照サンプルの幅refW、参照サンプルの高さrefH、色成分インデックスcIdxを入力とし、及び参照サンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)を出力とし、項目8.2.4.2.2に規定する参照サンプルの可用性マーキング処理を呼び出す。
2.少なくとも1つのサンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)は「フレーム内予測に利用不可」と標識されると、参照サンプルの幅refW、参照サンプルの高さrefH、参照サンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)、及び色成分インデックスcIdxを入力とし、補正後の参照サンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)を出力とし、項目8.2.4.2.3に規定する参照サンプルの置換処理を呼び出す。
3.フィルタリングされていないサンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)、変換ブロックの幅nTbW、変換ブロックの高さnTbH、参照サンプルの幅refW、参照サンプルの高さrefH、
参照ラインインデックスrefLine、及び色成分インデックスcIdxを入力とし、参照サンプルp[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)を出力とし、項目8.2.4.2.4に規定する参照サンプルのフィルタリング処理を呼び出す。
predModeIntraのフレーム内サンプル予測処理に基づき、以下のように適用され、
-predModeIntraがINTRA_PLANARに等しいと、参照サンプルアレイp、変換ブロックの幅nTbW、及び変換ブロックの高さnTbHを入力とし、項目8.2.4.2.5に規定する、対応するフレーム内予測モード処理を呼び出し、出力は予測サンプルアレイpredSamplesである。
-さもなければ、predModeIntraがINTRA_DCに等しいと、変換ブロックの幅nTbW、変換ブロックの高さnTbH、及び参照サンプルアレイpを入力とし、項目8.2.4.2.6に規定する、対応するフレーム内予測モード処理を呼び出し、出力は予測サンプルアレイpredSamplesである。
-さもなければ、predModeIntraがINTRA_CCLMに等しいと、(xTbCmp、yTbCmp)に等しく設定されるサンプル位置(xTbC、yTbC)、予測ブロックの幅nTbW、及び予測ブロックの高さnTbH、参照サンプルアレイpを入力とし、項目8.2.4.2.8に規定する、対応するフレーム内予測モード処理を呼び出し、出力は予測サンプルアレイpredSampesである。
-さもなければ、フレーム内予測モードpredModeIntra、変換ブロックの幅nTbW、変換ブロックの高さnTbH、参照サンプルの幅refW、参照サンプルの高さrefH、及び参照サンプルアレイpを入力とし、補正されたフレーム内予測モードpredModeIntraと予測サンプルアレイpredSamplesを出力とし、項目8.2.4.2.7に規定する、対応するフレーム内予測モード処理を呼び出す。
以下の条件のうちの1つが真であれば、フレーム内予測モードpredModeIntra、変換ブロックの幅nTbW、変換ブロックの高さnTbH、予測サンプルpredSamples[x][y](ここで、x=0..nTbW-1、y=0..nTbH-1である)、参照サンプルの幅refW、参照サンプルの高さrefH、参照サンプルp[x][y](ここで、x=-1、y=-1..refH-1であり、及びx=0..refW-1、y=-1である)、及び色成分インデックスcIdxを入力とし、項目8.2.4.2.9に規定する位置依存予測の組み合わせ処理を呼び出し、出力は補正された予測サンプルアレイpredSamplesである。
-predModeIntraはINTRA_PLANARに等しい
-predModeIntraはINTRA_DCに等しい
-predModeIntraはINTRA_ANGULAR18に等しい
-predModeIntraはINTRA_ANGULAR50に等しい
-predModeIntraはINTRA_ANGULAR10の以下である
-predModeIntraはINTRA_ANGULAR58の以上である。
8.2.4.2.4 参照サンプルのフィルタリング処理
該処理の入力は以下の通りであり、
-(フィルタリングされていない)隣接サンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)、
-変換ブロックの幅を指定するための変数nTbW、
-変換ブロックの高さを指定するための変数nTbH、
-参照サンプルの幅を指定するための変数refW、
-参照サンプルの高さを指定するための変数refH、
-
参照ラインインデックスを指定するための変数refLine、
-現在ブロックの色成分を指定するための変数cIdx。
該処理の出力は参照サンプルp[x][y]である(ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)。
変数nTbSは(Log2(nTbW)+Log2(nTbH))>>1に等しく設定される。
変数whRatioはmin(abs(Log2(nTbW/nTbH)),2)に等しく設定される。
以下のように変数wideAngleを取得し、
-以下の条件のうちの全ての条件がいずれも真であれば、wideAngleは1に等しく設定される。
-nTbWはnTbHより大きい
-predModeIntraは2の以上である
-predModeIntraは(whRatio>1)?12:8より小さい
-さもなければ、以下の条件のうちの全ての条件がいずれも真であれば、wideAngleは1に等しく設定される。
-nTbHはnTbWより大きい
-predModeIntraは66の以下である
-predModeIntraは(whRatio>1)?56:60より大きい
-さもなければ、wideAngleは0に設定される。
以下のように変数filterFlagを取得し、
-以下の条件のうちの1つまたはより複数の条件が真であれば、filterFlagは0に等しく設定され、
-predModeIntraはINTRA_DCに等しい
-cIdxは0に等しくない。
-
refLineは0に等しくない。
-さもなければ、以下のように適用され、
-変数minDistVerHorは
Min(Abs(predModeIntra-50),Abs(predModeIntra-18))に等しく設定される。
-変数intraHorVerDistThres[nTbS]は表8-4において、詳しく指定される。
-以下のように変数filterFlagを取得し、
-minDistVerHorがintraHorVerDistThres[nTbS]より大きく、またはwideAngleが1に等しいと、filterFlagは1に等しく設定される。
-さもなければ、filterFlagは0に等しく設定される。
表8-4は、各種の変換ブロックの大きさであるintraHorVerDistThres[nTbS]に対する規範である。
【表2】
参照サンプルp[x][y]の取得に対して、以下のように適用され、
-filterFlagが1に等しいと、以下のようなフィルタリングされたサンプル値p[x][y]を取得する(ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)。
【数12】
さもなければ、参照サンプル値p[x][y]は、フィルタリングされていないサンプル値refUnfilt[x][y]に等しく設定される(ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)。
【0094】
以下のテキストは、VVCドラフト2の最新バージョンに基づく、非ゼロ参照ラインに対してPDPCを禁止する実施形態を利用したテキストの変更(下線及び取り消し線を利用する)を記載する。
8.2.4.2.1 一般的なフレーム内サンプル予測
該処理の入力は以下の通りであり、
-現在ピクチャの左上サンプルに対する現在変換ブロックの左上サンプルを指定するためのサンプル位置(xTbCmp、yTbCmp)、
-フレーム内予測モードを指定するための変数predModeIntra、
-変換ブロックの幅を指定するための変数nTbW、
-変換ブロックの高さを指定するための変数nTbH、
-
参照ラインインデックスを指定するための変数refLine、
-現在ブロックの色成分を指定するための変数cIdx。
該処理の出力は予測サンプルpredSamples[x][y]である(ここで、x=0..nTbW-1、y=0..nTbH-1である)。
変数whRatioはmin(abs(Log2(nTbW/nTbH)),2)に等しく設定される。
以下のように変数refWとrefHを取得し、
【数13】
参照サンプルp[x][y](ここで、x=-1..refH-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)の生成に対して、以下の順序付けのステップが適用され、
4.サンプル位置(xTbCmp、yTbCmp)、参照サンプルの幅refW、参照サンプルの高さrefH、色成分インデックスcIdxを入力とし、参照サンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)を出力とし、項目8.2.4.2.2に規定する参照サンプルの可用性マーキング処理を呼び出す。
5.少なくとも1つのサンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)は「フレーム内予測に利用不可」と標識されると、参照サンプルの幅refW、参照サンプルの高さrefH、参照サンプルrefUnfilt[x][y](そのち、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)、及び色成分インデックスcIdxを入力とし、及び補正後の参照サンプルrefUnfihf[x][y](ここで、
x=-1、y=-1..refH-1であり、
x=0..refW-1、y=-1である)を出力とし、項目8.2.4.2.3に規定する参照サンプルの置換処理を呼び出す。
6.フィルタリングされていないサンプルrefUnfilt[x][y](ここで、x=-1、y=-1..refH-1であり、
x=0..refW-1、y=-1である)、変換ブロックの幅nTbW、変換ブロックの高さnTbH、参照サンプルの幅refW、参照サンプルの高さrefH、及び色成分インデックスcIdxを入力とし、及び参照サンプルp[x][y](ここで、x=-1、y=-1..refH-1であり、x=0..refW-1、y=-1である)を出力とし、項目8.2.4.2.4に規定する参照サンプルのフィルタリング処理を呼び出す。
predModeIntraのフレーム内サンプル予測処理に基づき、以下のように適用され、
-predModeIntraがINTRA_PLANARに等しいと、参照サンプルアレイp、変換ブロックの幅nTbW、及び変換ブロックの高さnTbHを入力とし、項目8.2.4.2.5に規定する、対応するフレーム内予測モード処理を呼び出し、出力は予測サンプルアレイpredSamplesである。
-さもなければ、predModeIntraがINTRA_DCに等しいと、変換ブロックの幅nTbW、変換ブロックの高さnTbH及び参照サンプルアレイpを入力とし、項目8.2.4.2.6に規定する、対応するフレーム内予測モード処理を呼び出すし、出力は予測サンプルアレイpredSamplesである。
-さもなければ、predModeIntraがINTRA_CCLMに等しいと、(xTbCmp、yTbCmp)に等しく設定されるサンプル位置(xTbC、yTbC)、予測ブロックの幅nTbWと高さnTbH、及び参照サンプルアレイpを入力とし、項目8.2.4.2.8に規定する、対応するフレーム内予測モード処理を呼び出し、出力は予測サンプルアレイpredSampesである。
-さもなければ、フレーム内予測モードpredModeIntra、変換ブロックの幅nTbW、変換ブロックの高さnTbH、参照サンプル幅refW、参照サンプル高さrefH、及び参照サンプルアレイpを入力とし、補正されたフレーム内予測モードpredModeIntraと予測サンプルアレイpredSamplesを出力とし、項目8.2.4.2.7に規定する、対応するフレーム内予測モード処理を呼び出す。
以下の条件のうちの1つが真であれば、フレーム内予測モードpredModeIntra、変換ブロックの幅nTbW、変換ブロックの高さnTbH、予測サンプルpredSamples[x][y](ここで、x=0..nTbW-1、y=0..nTbH-1である)、参照サンプルの幅refW、参照サンプルの高さrefH、参照サンプルp[x][y](ここで、x=-1、y=-1..refH-1、x=0..refW-1、y=-1である)、及び色成分インデックスcIdxを入力とし、項目8.2.4.2.9に規定する位置関連予測の組み合わせ処理を呼び出し、出力は補正された予測サンプルアレイpredSamplesであり、
-predModeIntraがINTRA_PLANARに等しい
-predModeIntraがINTRA_DCに等しい
-predModeIntraがINTRA_ANGULAR18に等しい
-predModeIntraがINTRA_ANGULAR50に等しい
-predModeIntraがINTRA_ANGULAR10の以下である
-predModeIntraがINTRA_ANGULAR58の以上である
refLineは0である。
【0095】
図9は、実施形態に基づくフレーム内予測の方法(900)を示すフローチャートであり、前記方法はビデオシーケンスの復号に適用される。いくつかの実現方式において、
図9の1つまたは複数の処理ブロックは復号器310により実行される。いくつかの実現方式において、
図9の1つまたは複数の処理ブロックは、復号器(310)と分けられ、または復号器(310)を含む他の機器または1組の機器(例えば、符号器(303))により実行される。
【0096】
図9を参照し、第1ブロック(910)において、方法(900)は、参照ラインインデックスに基づき、復号器に第1参照ラインを通知し、第1参照ラインのみに対してフレーム内平滑化を適用するステップを含み、複数の参照ラインが符号化ユニットに隣接し、第1参照ラインは前記複数の参照ラインのうちの、符号化ユニットに最も近接する参照ラインである。
【0097】
第2ブロック(920)において、方法(900)は、第1参照ラインのみに適用されるフレーム内平滑化に基づき、符号化ユニットに対してフレーム内予測を適用するステップを含む。
【0098】
第3ブロック(930)において、方法(900)は、フレーム内予測は符号化ユニットに適用されることに基づき、第1参照ラインのみに対してPDPCを適用するステップを含む。
【0099】
方法(900)はさらに、複数の参照ラインのうちの第2参照ラインに対してフレーム内平滑化を適用するステップを含む。
【0100】
方法(900)はさらに、複数の参照ラインにおける一つの参照ライン以外に、複数の参照ラインにおける他の参照ラインのみに対してフレーム内平滑化を適用するステップを含む。
【0101】
方法(900)はさらに、フレーム内予測は符号化ユニットに適用されることに基づき、複数の参照ラインのうちの第2参照ラインに対してPDPCを適用するステップを含む。
【0102】
方法(900)はさらに、フレーム内予測は符号化ユニットに適用されることに基づき、複数の参照ラインのうちの一つの参照ライン以外に、複数の参照ラインのうちの他の参照ラインのみに対してPDPCを適用するステップを含む。
【0103】
方法(900)はさらに、フレーム内予測モードに対応するフレーム内予測角度が、符号化ユニットの対角線方向に対応する所定角度より大きいかどうかを決定するステップであって、フレーム内予測モードはビデオシーケンスを復号するために用いられるステップと、フレーム内予測角度が所定角度より大きいと決定されたことに基づき、複数の参照ラインのうちの、第1参照ライン以外の他の参照ラインに対してフレーム内平滑化を適用することを阻止するステップとを含む。
【0104】
方法(900)はさらに、フレーム内予測モードに対応するフレーム内予測角度が、符号化ユニットの対角線方向に対応する所定角度より大きいかどうかを決定するステップであって、前記フレーム内予測モードは前記ビデオシーケンスを復号するために用いられるステップと、フレーム内予測角度が所定角度より大きいと決定されたことに基づき、複数の参照ラインのうちの、第1参照ライン以外の他の参照ラインに対してPDPCを適用することを阻止するステップとを含む。
【0105】
方法(900)はさらに、ビデオシーケンスを復号するためのフレーム内予測モードと、少なくとも1つの参照ラインのインデックスに基づき、該少なくとも1つの参照ラインに対してフレーム内平滑化を適用するステップを含み、前記少なくとも1つの参照ラインは前記複数の参照ラインのうちの、前記第1参照ライン以外の他の参照ラインにある。
【0106】
方法(900)はさらに、複数の参照ラインのうちの第2参照ラインのインデックスに基づき、複数のフレーム内予測モードに対応する閾値インデックスの範囲を決定するステップであって、前記複数のフレーム内予測モードは前記符号化ユニットの水平方向に隣接するステップと、ビデオシーケンスを復号するための現在フレーム内予測モードの現在インデックス値が閾値インデックス範囲内にあるかどうかを決定し、現在インデックス値が閾値インデックス範囲内にあると決定されたことに基づき、第2参照ラインに対してフレーム内平滑化を適用することを阻止するステップとを含む。
【0107】
方法(900)はさらに、複数の参照ラインのうちの第2参照ラインのインデックスに基づき、複数のフレーム内予測モードに対応する閾値インデックスの範囲を決定するステップであって、前記複数のフレーム内予測モードは前記符号化ユニットの垂直方向に隣接するステップと、ビデオシーケンスを復号するための現在フレーム内予測モードの現在インデックス値が閾値インデックス範囲内にあるかどうかを決定し、現在インデックス値が閾値インデックス範囲内にあると決定されたことに基づき、第2参照ラインに対してフレーム内平滑化を適用することを阻止するステップとを含む。
【0108】
図9は方法(900)の例示ブロックを示したが、いくつかの実現方式において、
図9に示されるこれらのブロックに比べると、方法(900)は追加のブロック、より少ないブロック、異なるブロック、または配置が異なるブロックを有してもよい。付加的、または代わりとして、方法(900)の2つまたは複数のブロックは並行実行されてもよい。
【0109】
また、提案の方法は、処理回路(例えば、1つまたは複数のプロセッサ、または1つまたは複数の集積回路)で実現されてもよい。例示において、1つまたは複数のプロセッサは、非一時的なコンピュータ読み取り可能な媒体に記憶されるプログラムを実行することで、提案の方法のうちの1つまたは複数の方法を実行する。
【0110】
図10は、実施形態に基づく、ビデオシーケンスの復号のためのフレーム内予測を制御する装置(1000)の簡略化ブロック図である。
【0111】
図10を参照し、装置(1000)はビデオシーケンスの復号のために用いられ、第1適用コード(1010)、第2適用コード(1020)及び第3適用コード(1030)を含む。
【0112】
第1適用コード(1010)は、参照ラインインデックスに基づき、復号器に第1参照ラインを通知し、第1参照ラインのみに対してフレーム内平滑化を適用するように構成され、複数の参照ラインが符号化ユニットに隣接し、第1参照ラインは前記複数の参照ラインにおいて、符号化ユニットに最も近接する参照ラインである。
【0113】
第2適用コード(1020)は、第1参照ラインのみに適用されるフレーム内平滑化に基づき、符号化ユニットに対してフレーム内予測を適用するように構成される。
【0114】
選択コード(1030)は、フレーム内予測が符号化ユニットに適用されることに基づき、第1参照ラインのみに対してPDPCを適用するように構成される。
【0115】
第1適用コード(1010)はさらに、複数の参照ラインのうちの第2参照ラインに対してフレーム内平滑化を適用するように構成される。
【0116】
第1適用コード(1010)はさらに、複数の参照ラインのうちの一つの参照ライン以外に、複数の参照ラインのうちの他の参照ラインのみに対してフレーム内平滑化を適用するように構成される。
【0117】
第3適用コード(1030)はさらに、フレーム内予測が符号化ユニットに適用されることに基づき、複数の参照ラインのうちの第2参照ラインに対してPDPCを適用するように構成される。
【0118】
第3適用コード(1030)はさらに、フレーム内予測が符号化ユニットに適用されることに基づき、複数の参照ラインのうちの一つの参照ライン以外に、複数の参照ラインのうちの他の参照ラインのみに対してPDPCを適用するように構成される。
【0119】
第1適用コード(1010)はさらに、フレーム内予測モードに対応するフレーム内予測角度が、符号化ユニットの対角線方向に対応する所定角度より大きいかどうかを決定するように構成され、フレーム内予測モードが前記ビデオシーケンスを復号に用いられ、且つフレーム内予測角度が所定角度より大きいと決定されたことに基づき、複数の参照ラインのうちの、前記第1参照ライン以外の他の参照ラインに対してフレーム内平滑化を適用することを阻止するように構成される。
【0120】
第3適用コード(1030)はさらに、フレーム内予測モードに対応するフレーム内予測角度が、符号化ユニットの対角線方向に対応する所定角度より大きいかどうかを決定するように構成され、前記フレーム内予測モードは前記ビデオシーケンスを復号に用いられ、且つフレーム内予測角度が所定角度より大きいと決定されたことに基づき、複数の参照ラインのうちの、前記第1参照ライン以外の他の参照ラインに対してPDPCを適用することを阻止するように構成される。
【0121】
第1適用コード(1010)はさらに、ビデオシーケンスを復号するためのフレーム内予測モードと、少なくとも1つの参照ラインのインデックスに基づき、該少なくとも1つの参照ラインに対してフレーム内平滑化を適用するように構成され、前記少なくとも1つの参照ラインは前記複数の参照ラインのうちの、前記第1参照ライン以外の他の参照ラインにある。
【0122】
第1適用コード(1010)はさらに、複数の参照ラインのうちの第2参照ラインのインデックスに基づき、複数のフレーム内予測モードに対応する閾値インデックスの範囲を決定するように構成され、前記複数のフレーム内予測モードは前記符号化ユニットの水平方向に隣接し、且つビデオシーケンスを復号するための現在フレーム内予測モードの現在インデックス値が閾値インデックス範囲内にあるかどうかを決定し、現在インデックス値が閾値インデックス範囲内にあると決定されたことに基づき、第2参照ラインに対してフレーム内平滑化を適用することを阻止するように構成される。
【0123】
第1適用コード(1010)はさらに、複数の参照ラインのうちの第2参照ラインのインデックスに基づき、複数のフレーム内予測モードに対応する閾値インデックスの範囲を決定するように構成され、前記複数のフレーム内予測モードは前記符号化ユニットの垂直方向に隣接し、ビデオシーケンスを復号するための現在フレーム内予測モードの現在インデックス値が閾値インデックス範囲内にあるかどうかを決定し、現在インデックス値が閾値インデックス範囲内にあると決定されたことに基づき、第2参照ラインに対してフレーム内平滑化を適用することを阻止するように構成される。
【0124】
前記技術は、コンピュータ読み取り可能な命令を利用して、コンピュータソフトウェアとして実現され、物理的に1つまたは複数のコンピュータ読み取り可能な媒体に記憶される。
【0125】
図11は、実施形態を実現するためのコンピュータシステム(1100)の図面である。
【0126】
コンピュータソフトウェアは任意の適切なマシンコードまたはコンピュータ言語によって符号化を行って、マシンコードまたはコンピュータ言語は編集、コンパイル、リンクなどのメカニズムを介して命令が含まれるコードを構築し、該命令は1つ又は複数のコンピュータ中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)などによって直接的に実行されるか、または解釈、マイクロコード実行などによって実行される。
【0127】
命令は各種タイプのコンピュータまたはその部材で実行でき、例えばパーソナルコンピュータ、タブレット、サーバ、スマートフォン、ゲーム機器、モノのインターネット機器などを含む。
【0128】
図11に示すコンピュータシステム(1100)の部材は、本開示内容を実現するための実施例のコンピュータソフトウェアの使用範囲または機能に対して限定せず、本質に例示的である。部材の構成も、コンピュータシステム(1100)の例示の実施例で示した部材におけるいずれかの部材、またはその組み合わせに関する依存性または要求を有するように解釈されるべきではない。
【0129】
コンピュータシステム(1100)はいくつかのヒューマンマシンインタフェース入力機器を含んでもよい。このようなヒューマンマシンインタフェース入力機器は、1つ又は複数の人間のユーザの、例えば触覚入力(例えば:キーストローク、スライド、データグローブ移動)、オーディオ入力(例えば:音声、拍手)、視覚入力(例えば:姿勢)、嗅覚入力(図示せず)による入力に応答できる。マンマシンインタフェース機器はさらに、必ずしも人間の意識的な入力に直接的に関していない、ある媒体、例えば、オーディオ(例えば:音声、音楽、環境音)、画像(例えば:スキャン画像、静止画像撮影装置から取得された写真画像)、ビデオ(例えば2次元ビデオ、立体ビデオが含まれる3次元ビデオ)をキャプチャできる。
【0130】
入力マンマシンインタフェース機器は、キーボード(1101)、マウス(1102)、タッチパッド(1103)、タッチパネル(1110)、データグローブ(1104)、ジョイスティック(1105)、マイク(1106)、スキャナ(1107)、撮影装置(1108)のうちの1つ又は複数を有してもよい(記載の各々のうちの1つのみ)。
【0131】
コンピュータシステム(1100)はさらにマンマシンインタフェース出力機器を有してもよい。このようなマンマシンインタフェース出力機器は、例えば触覚出力、音、光及び匂い/味を介して1つ又は複数の人間のユーザの感覚を刺激できる。このようなマンマシンインタフェース出力機器は触覚出力機器(例えば、タッチパネル(1110)、データグローブ(1104)またはジョイスティック(1105)による触覚フィードバック、但し入力機器として用いられない触覚フィードバック機器も存在する)、オーディオ出力機器(例えば、スピーカー(1109)、ヘッドフォン(図示せず))、視覚出力機器(例えば、スクリーン(1110)、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含み、各スクリーンはタッチパネル入力能力、触覚フィードバック能力を有してもよく、有してなくてもよく、そのうちのいくつかは、立体画像出力のような手段で、2次元の視覚を出力または3次元以上の出力を行い、バーチャルリアリティ眼鏡(図示せず)、ホログラフィックディスプレイ及びスモークタンク(図示せず)がある)、プリンター(図示せず)を含む。
【0132】
コンピュータシステム(1100)はさらに人間がアクセスし得る記憶機器及びその関連する媒体を有してもよく、例えば、CD/DVDなどの媒体(1121)を有するCD/DVD ROM/RW(1120)を含む光学媒体、サムドライブ(1122)、取り外し可能なハードドライブまたはソリッドステートドライブ(1123)、磁気テープとフロッピーディスク(図示せず)のような伝統的な磁気媒体、専用ROM/ASIC/PLDに基づく機器、例えばドングル(図示せず)などを含む。
【0133】
当業者は、現在開示のテーマを結合して、使用される用語「コンピュータ読み取り可能な媒体」には伝送媒体、搬送波または他の瞬間信号が含まれないことを理解できる。
【0134】
コンピュータシステム(1100)は、さらに1つ又は複数の通信ネットワークのインタフェースを有してもよい。ネットワークは、例えば無線、有線、光学であってもよい。ネットワークはさらに、ローカル、広域、都市用、車両用、工業用、リアルタイム、遅延耐性ネットワークなどであってもよい。ネットワークの例示はイーサネットのようなローカルエリアネットワーク、無線LAN、GSM、3G、4G、5G、LTEなどが含まれたセルラーネットワーク、有線テレビ、衛星テレビ及び地上波テレビが含まれるテレビ有線または無線広域デジタルネットワーク、CANBusが含まれる車両及び工業ネットワークなどを含む。あるネットワークは一般的に、ある汎用データポートまたは周辺バス(1149)(例えば、コンピュータシステム(1100)のUSBポート)に連結される外部ネットワークインタフェースアダプタを必要とし、他のネットワークは一般的に、以下に記載のシステムバス(例えば、PCコンピュータシステムへのイーサネットインタフェース、またはスマートフォンコンピュータシステムへのセルラーネットワークインタフェース)に連結されることで、コンピュータシステム(1100)のコアに集積される。これらのネットワークのうちのいずれかのネットワークを介して、コンピュータシステム(1100)は他のエンティティと通信できる。このような通信は一方向で受信だけ(例えば、放送テレビ)、一方向で送信だけ(例えば、あるCANbus機器へのCANbus)、または双方向である(例えば、ローカルエリアまたは広域デジタルネットワークを介して他のコンピュータシステムへ)。以上に記載のこれらのネットワーク及びネットワークインタフェースのうちの各ネットワーク及びネットワークインタフェースに、特定のプロトコル及びプロトコルスタックを利用できる。
【0135】
以上に言及されたマンマシンインタフェース機器、人間がアクセスし得る記憶機器及びネットワークインタフェースは、コンピュータシステム(1100)のコア(1140)に連結できる。
【0136】
コア(1140)は1つ又は複数の中央処理ユニット(CPU)(1141)、グラフィック処理ユニット(GPU)(1142)、フィールドプログラム可能なゲートアレイ(FPGA)(1143)という形式の専門プログラム可能な処理ユニット、あるタスクのためのハードウェアアクセラレータ(1144)などを含む。これらの機器は、読み取り専用メモリ(ROM)(1145)、ランダムアクセスメモリ(1146)、内部のユーザがアクセスできないハードディスクドライブ、SSDなどのような内部大容量記憶装置(1147)とともに、システムバス(1148)を介して接続される。あるコンピュータシステムにおいて、1つ又は複数の物理プラグという形式で、システムバス(1148)にアクセスすることで、別のCPU、GPUなどによって拡張できる。周囲機器は直接的または周辺バス(1149)を介してコアのシステムバス(1148)に連結される。周辺バスのアーキテクチャはPCI、USBなどを含む。
【0137】
CPU(1141)、GPU(1142)、FPGA(1143)及びアクセラレータ(1144)はいくつかの命令を実行でき、これらの命令を組み合わせて、以上に言及されたコンピュータコードを構成する。該コンピュータコードはROM(1145)またはRAM(1146)に記憶される。移行データはRAM(1146)に記憶され、永久データは、例えば内部大容量記憶装置(1147)に記憶されてもよい。キャッシュメモリによってメモリ機器のうちのいずれかのメモリ機器の快速記憶及び検索を実現でき、該キャッシュメモリは1つ又は複数のCPU(1141)、GPU(1142)、大容量記憶装置(1147)、ROM(1145)、RAM(1146)などに密接に関連できる。
【0138】
コンピュータ読み取り可能な媒体は、コンピュータが実現する各種動作を実行するためのコンピュータコードを有する。媒体とコンピュータコードとは、本開示内容の目的のために、専門に設計され及び構築された媒体とコンピュータコードであってもよいし、またはコンピュータソフトウェアの当業者にとって、公知且つ利用可能なタイプであってもよい。
【0139】
限定ではなく例示として、アーキテクチャ(1100)を有するコンピュータシステム、特にコア(1140)は、プロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)が1つ又は複数の有形コンピュータ読み取り可能な媒体に体現されるソフトウェアを実行することで、機能を提供できる。このようなコンピュータ読み取り可能な媒体は、以上に紹介された、ユーザがアクセスし得る大容量記憶装置に関する媒体、及び非一時的なコア(1140)を有する、コア内部大容量記憶装置(1147)またはROM(1145)のような記憶装置であってもよい。本開示内容を実現するための各種実施例のソフトウェアはこのような機器に記憶され、コア(1140)に実行される。特定の需要に応じて、コンピュータ読み取り可能な媒体には1つ又は複数の記憶機器またはチップが含まれてもよい。ソフトウェアはコア(1140)、特にそのうちのプロセッサ(CPU、GPU、FPGAなどが含まれた)に、本明細書に記載の特定プロセスまたは特定プロセスの特定部分を実行させ、RAM(1146)に記憶されるデータ構成を限定すること、及びソフトウェアにより限定されたプロセスに基づき、このようなデータ構成を修正することが含まれる。また或いは代わりとして、コンピュータシステムは、論理的な固定接続または他の方式で回路(例えば、アクセラレータ(1144))に具現されることで機能を提供し、該回路は、ソフトウェアの代わりとして、またはソフトウェアとともに動作することで、本明細書に記載の特定プロセスまたは特定プロセスの特定部分を実行できる。適切な場合、言及のソフトウェアにはロジックが含まれ、逆に、言及のロジックにはソフトウェアが含まれてもよい。適切な場合、言及のコンピュータ読み取り可能な媒体には、実行するためのソフトウェアが記憶される回路(例えば、集積回路(IC))、実行するためのロジックを体現する回路、或いは両者が含まれてもよい。本開示内容にはハードウェアとソフトウェアとの任意の適切な組み合わせが含まれる。
【0140】
本開示内容には若干の例示の実施例が記載されているが、本開示内容の範囲内にある変更、置き換え及び種々の置換均等物が存在する。従って、本明細書には明らかに記載されていないが、本開示内容の原理を具現し本開示内容の精神及び範囲内に属する多くのシステム及び方法は、当業者に考案され得る。