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

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

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

特許7326436イントラ予測におけるイントラモード選択
<>
  • 特許-イントラ予測におけるイントラモード選択 図1A
  • 特許-イントラ予測におけるイントラモード選択 図1B
  • 特許-イントラ予測におけるイントラモード選択 図1C
  • 特許-イントラ予測におけるイントラモード選択 図2
  • 特許-イントラ予測におけるイントラモード選択 図3
  • 特許-イントラ予測におけるイントラモード選択 図4
  • 特許-イントラ予測におけるイントラモード選択 図5
  • 特許-イントラ予測におけるイントラモード選択 図6A
  • 特許-イントラ予測におけるイントラモード選択 図6B
  • 特許-イントラ予測におけるイントラモード選択 図6C
  • 特許-イントラ予測におけるイントラモード選択 図6D
  • 特許-イントラ予測におけるイントラモード選択 図7
  • 特許-イントラ予測におけるイントラモード選択 図8
  • 特許-イントラ予測におけるイントラモード選択 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-04
(45)【発行日】2023-08-15
(54)【発明の名称】イントラ予測におけるイントラモード選択
(51)【国際特許分類】
   H04N 19/593 20140101AFI20230807BHJP
【FI】
H04N19/593
【請求項の数】 16
(21)【出願番号】P 2021518870
(86)(22)【出願日】2019-11-26
(65)【公表番号】
(43)【公表日】2022-01-13
(86)【国際出願番号】 US2019063212
(87)【国際公開番号】W WO2020112744
(87)【国際公開日】2020-06-04
【審査請求日】2021-04-06
(31)【優先権主張番号】62/772,068
(32)【優先日】2018-11-27
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/777,542
(32)【優先日】2018-12-10
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/688,408
(32)【優先日】2019-11-19
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】シュイ,シアオジョォン
(72)【発明者】
【氏名】リィウ,シャン
(72)【発明者】
【氏名】リ,イミン
(72)【発明者】
【氏名】チェン,ジェンジョォン
【審査官】田中 純一
(56)【参考文献】
【文献】米国特許出願公開第2015/0172719(US,A1)
【文献】特表2015-507903(JP,A)
【文献】特表2015-507885(JP,A)
【文献】国際公開第2017/205703(WO,A1)
【文献】米国特許出願公開第2017/0347103(US,A1)
【文献】米国特許出願公開第2014/0355679(US,A1)
【文献】米国特許出願公開第2014/0376626(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 7/12
H04N 19/00 - 19/98
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御する方法であって、当該方法は:
角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得する段階であって、前記方向性モードのうち第1の量の一つまたは複数の方向性モードが、前記イントラ予測モードの第2の量および最確モード(MPM)の第3の量に基づいて、前記イントラ予測モードから除外される、段階と;
前記方向性モードのうち前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうち2つ以上のイントラ予測モードを、前記MPMとして選択する段階と;
前記方向性モードのうち前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうち1つを、前記ビデオ・シーケンスをデコードするために選択する段階とを含み、
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、
前記方向性モードのうち、垂直予測方向に対応する垂直モードの左の第1直近モードの左の第2直近モードと;
前記方向性モードのうち、水平予測方向に対応する水平モードの上の第1直近モードの上の第2直近モードとを含む、
前記方向性モードのうち前記第1の量の一つまたは複数の方向性モードは、前記MPMの第3の量と前記MPMではない残りのモードの第4の量の合計が許容される量以下になるように、前記イントラ予測モードから除外される、
方法。
【請求項2】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの左の直近モードを含む、請求項1に記載の方法。
【請求項3】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの上の直近モードを含む、請求項1または2に記載の方法。
【請求項4】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの右の直近モードを含む、請求項1ないし3のうちいずれか一項に記載の方法。
【請求項5】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの下の直近モードを含む、請求項1ないし4のうちいずれか一項に記載の方法。
【請求項6】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの右の第1直近モードの右の第2直近モードを含む、請求項1ないし5のうちいずれか一項に記載の方法。
【請求項7】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの下の第1直近モードの下の第2直近モードを含む、請求項1ないし6のうちいずれか一項に記載の方法。
【請求項8】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、右上コーナー方向、左下コーナー方向、および左上コーナー方向にそれぞれ対応する右上コーナー・モード、左下コーナー・モード、および左上コーナー・モードのいずれかまたは何らかの組み合わせを含む、請求項1に記載の方法。
【請求項9】
ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御するための装置であって、当該装置は:
コンピュータ・プログラム・コードを記憶するように構成された少なくとも1つのメモリと;
前記少なくとも1つのメモリにアクセスし、前記コンピュータ・プログラム・コードに従って動作するように構成された少なくとも1つのプロセッサとを有しており、前記コンピュータ・プログラム・コードは:
前記少なくとも1つのプロセッサに、角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得させるように構成された取得コードであって、前記方向性モードのうち第1の量の一つまたは複数の方向性モードが、前記イントラ予測モードの第2の量および最確モード(MPM)の第3の量に基づいて、前記イントラ予測モードから除外される、取得コードと;
前記少なくとも1つのプロセッサに、前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの2つ以上を、前記MPMとして選択させるように構成された第1の選択コードと;
前記少なくとも1つのプロセッサに、前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの1つを、前記ビデオ・シーケンスをデコードするために、選択させるように構成された第2の選択コードとを有し、
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは:
前記方向性モードのうち垂直予測方向に対応する垂直モードの左の第1直近モードの左の第2直近モードと、
前記方向性モードのうち水平予測方向に対応する水平モードの上の第1直近モードの上の第2直近モードとを含
前記方向性モードのうち前記第1の量の一つまたは複数の方向性モードは、前記MPMの第3の量と前記MPMではない残りのモードの第4の量の合計が許容される量以下になるように、前記イントラ予測モードから除外される、
装置。
【請求項10】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは:
前記方向性モードのうち垂直予測方向に対応する垂直モードの左の直近モード、
前記方向性モードのうち水平予測方向に対応する水平モードの上の直近モード、
前記方向性モードのうち前記垂直モードの右の直近モード、および
前記方向性モードのうち前記水平モードの下の直近モード
のいずれかまたは何らかの組み合わせを含む、請求項に記載の装置。
【請求項11】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは:
前記方向性モードのうち前記垂直モードの右の第1直近モードの右の第2直近モード、および
前記方向性モードのうち前記水平モードの下の第1直近モードの下の第2の直近モード
のいずれかまたは何らかの組み合わせをさらに含む、請求項に記載の装置。
【請求項12】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、右上コーナー方向、左下コーナー方向、および左上コーナー方向にそれぞれ対応する右上コーナー・モード、左下コーナー・モード、および左上コーナー・モードのいずれかまたは何らかの組み合わせを含む、請求項に記載の装置。
【請求項13】
少なくとも1つのプロセッサに:
角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得する段階であって、前記方向性モードのうち第1の量の一つまたは複数の方向性モードが、前記イントラ予測モードの第2の量および最確モード(MPM)の第3の量に基づいて、前記イントラ予測モードから除外される、段階と;
前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの2つ以上を、前記MPMとして選択する段階と;
前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの1つを、ビデオ・シーケンスをデコードするために、選択する段階とを実行させるための、
コンピュータ・プログラムであって、
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは:
前記方向性モードのうち垂直予測方向に対応する垂直モードの左の第1直近モードの左の第2直近モードと、
前記方向性モードのうち水平予測方向に対応する水平モードの上の第1直近モードの上の第2直近モードとを含
前記方向性モードのうち前記第1の量の一つまたは複数の方向性モードは、前記MPMの第3の量と前記MPMではない残りのモードの第4の量の合計が許容される量以下になるように、前記イントラ予測モードから除外される、
コンピュータ・プログラム。
【請求項14】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは:
前記方向性モードのうち垂直予測方向に対応する垂直モードの左の直近モード、
前記方向性モードのうち水平予測方向に対応する水平モードの上の直近モード、
前記方向性モードのうち前記垂直モードの右の直近モード、および
前記方向性モードのうち前記水平モードの下の直近モード
のいずれかまたは何らかの組み合わせを含む、請求項13に記載のコンピュータ・プログラム。
【請求項15】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは:
前記方向性モードのうち前記垂直モードの右の第1直近モードの右の第2直近モード、および
前記方向性モードのうち前記水平モードの下の第1直近モードの下の第2の直近モード
のいずれかまたは何らかの組み合わせをさらに含む、請求項13に記載のコンピュータ・プログラム。
【請求項16】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、右上コーナー方向、左下コーナー方向、および左上コーナー方向にそれぞれ対応する右上コーナー・モード、左下コーナー・モード、および左上コーナー・モードのいずれかまたは何らかの組み合わせを含む、請求項13に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願への相互参照
本願は、米国特許商標庁において2018年11月27日に出願された米国仮特許出願第62/772,068号、米国特許商標庁において2018年12月10日に出願された米国仮特許出願第62/777,542号、および米国特許商標庁において2019年11月19日に出願された米国特許出願第16/688,408号からの優先権を主張し、それらの全体が参照により本明細書に組み込まれる。
【0002】
1.分野
実施形態と整合する方法および装置は、ビデオ符号化、より詳細には、イントラ予測におけるイントラモード選択に関する。
【背景技術】
【0003】
2.関連技術の説明
高効率ビデオ符号化(High Efficiency Video Coding、HEVC)および多用途ビデオ符号化(Versatile Video Coding、VVC)で使用されるイントラ予測モードは、それぞれ、図1Aおよび図1Bに示されている。HEVCでは、モード10は水平モードであり、モード26は垂直モードであり、モード2、モード18およびモード34は対角モードである。自然なビデオにおいて提示される任意のエッジ方向を捕捉するために、65の方向性モードに基づくイントラ予測方式も提案されており、65の方向性モードに基づくこのイントラ予測方式は、VVCの開発のために研究されている。
【0004】
図1Aにおいて、HEVCでは、モード2および34は同じ予測方向を示す。図1Bにおいて、VVCでは、モード2および66は同じ予測方向を示す。
【0005】
図1Aおよび図1Bに示されるように、すべてのイントラ予測モードは、右上方向および左下方向において45度以内であり、これらは本稿では従来のイントラ予測モードと呼ばれる、従来のイントラ予測モードによってカバーされる予測方向の範囲を越える広い角度が提案されており、それらは広角イントラ予測モードと呼ばれる。各広角イントラ予測方向は、1つの従来のイントラ予測方向と関連付けられている。各広角イントラ予測方向およびそれに関連付けられたイントラ予測方向は、同じ方向を捉えるが、参照サンプルの反対側(左の列または上の行)を用いる。利用可能な広角「反転〔フリップ〕モード」があるそうした関連付けられた方向について1ビットのフラグを送ることによって、このツールは信号伝達される。65方向角のイントラ予測の場合、新しいモードの利用可能性は、45度の対角右上モード(35の従来のイントラモードが適用される場合、モード34)と左下モード(35の従来のイントラモードが適用される場合、モード2)に最も近い10の方向性モードに制限される。実際のサンプル予測プロセスは、HEVCまたはVVCのプロセスに従う。
【0006】
図1Cは、33のHEVC方向の仮設的な場合についてのプロセスを示し、動作を対角モードに最も近い2つのモードに制限する。この例では、ブロック幅がブロック高さよりも大きい場合、モード3およびモード4は、指示されたモードを使用するか、または反転された広角方向であるモード35およびモード36を使用するかを示す余分なフラグを有する。広角イントラ予測(wide angular intra prediction、WAIP)では、モード3とモード4が反転を必要とするかどうかはビットストリーム中の追加のフラグによって指示されず、むしろブロック幅および高さによって導出される。さらに、モード3およびモード4が反転を必要とする場合、モード2も反転を必要とする。
【発明の概要】
【0007】
実施形態によれば、ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御する方法が、少なくとも1つのプロセッサによって実行され、角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得することを含む。前記方向性モードのうちの一つまたは複数の方向性モードの第1の量は、前記イントラ予測モードの第2の量および最確モード(most probable mode、MPM)の第3の量に基づいて、前記イントラ予測モードから除外される。本方法は、さらに、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの2つ以上を前記MPMとして選択するステップと、前記ビデオ・シーケンスをデコードするために、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの1つを選択するステップとを含む。
【0008】
実施形態によれば、ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御するための装置が、コンピュータ・プログラム・コードを記憶するように構成された少なくとも1つのメモリと、前記少なくとも1つのメモリにアクセスし、前記コンピュータ・プログラム・コードに従って動作するように構成された少なくとも1つのプロセッサとを含む。前記コンピュータ・プログラム・コードは、前記少なくとも1つのプロセッサに、角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得させるように構成された取得コードを含む。前記方向性モードのうちの一つまたは複数の方向性モードの第1の量は、前記イントラ予測モードの第2の量および最確モード(most probable mode、MPM)の第3の量に基づいて、前記イントラ予測モードから除外される。前記コンピュータ・プログラム・コードは、前記少なくとも1つのプロセッサに、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの2つ以上を前記MPMとして選択させるように構成された第1の選択コードと、前記少なくとも1つのプロセッサに、前記ビデオ・シーケンスをデコードするために、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの1つを選択させるように構成された第2の選択コードとを含む。
【0009】
実施形態によれば、非一時的なコンピュータ読み取り可能な記憶媒体が、少なくとも1つのプロセッサに、角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得させる命令を記憶しており、前記方向性モードのうちの一つまたは複数の方向性モードの第1の量は、前記イントラ予測モードの第2の量および最確モード(most probable mode、MPM)の第3の量に基づいて、前記イントラ予測モードから除外される。前記命令は、前記少なくとも1つのプロセッサにさらに、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの2つ以上を前記MPMとして選択させ、ビデオ・シーケンスをデコードするために、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの1つを選択させる。
【図面の簡単な説明】
【0010】
図1A】HEVCにおける35のイントラ予測モードの図である。
【0011】
図1B】VVCにおける67のイントラ予測モードの図である。
【0012】
図1C】信号伝達されるモードおよび関連する広角モードの図である。
【0013】
図2】実施形態による通信システムの簡略化されたブロック図である。
【0014】
図3】実施形態による、ストリーミング環境におけるビデオ・エンコーダおよびビデオ・デコーダの配置図である。
【0015】
図4】実施形態によるビデオ・デコーダの機能ブロック図である。
【0016】
図5】実施形態によるビデオ・エンコーダの機能ブロック図である。
【0017】
図6A】実施形態による、イントラ予測モードからの除外のための候補モードの図である。
図6B】実施形態による、イントラ予測モードからの除外のための候補モードの図である。
図6C】実施形態による、イントラ予測モードからの除外のための候補モードの図である。
図6D】実施形態による、イントラ予測モードからの除外のための候補モードの図である。
【0018】
図7】実施形態による、ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御する方法を示すフローチャートである。
【0019】
図8】実施形態による、ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御する装置の簡略化されたブロック図である。
【0020】
図9】実施形態を実装するのに好適なコンピュータ・システムの図である。
【発明を実施するための形態】
【0021】
図2は、実施形態による通信システム(200)の簡略化されたブロック図である。通信システム(200)は、ネットワーク(250)を介して相互接続された少なくとも2つの端末(210~220)を含んでいてもよい。データの一方向伝送のために、第1の端末(210)は、ネットワーク(250)を介した相手端末(220)への伝送のために、ローカル位置でビデオ・データを符号化することができる。第2の端末(220)は、ネットワーク(250)から相手端末の符号化されたビデオ・データを受信し、符号化されたデータをデコードし、復元されたビデオ・データを表示することができる。一方向データ伝送は、メディア・サービス・アプリケーション等において一般的でありうる。
【0022】
図2は、たとえば、ビデオ会議中に起こりうる、符号化されたビデオの双方向伝送をサポートするために設けられた第2の対の端末(230、240)を示している。データの双方向伝送のために、各端末(230、240)は、ネットワーク(250)を介した相手端末への伝送のために、ローカル位置で捕捉されたビデオ・データを符号化することができる。各端末(230、240)はまた、相手端末によって送信された符号化されたビデオ・データを受信することができ、符号化されたデータをデコードすることができ、復元されたビデオ・データをローカル・ディスプレイ装置に表示することができる。
【0023】
図2において、端末(210~240)は、サーバー、パーソナルコンピュータおよびスマートフォンとして示されることがあるが、実施形態の原理はそれに限定されない。実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディア・プレーヤー、および/または専用のビデオ会議設備での応用を見出す。ネットワーク(250)は、たとえば、有線および/または無線通信ネットワークを含む、端末(210~240)間で符号化されたビデオ・データを伝達する任意の数のネットワークを表わす。通信ネットワーク(250)は、回線交換および/またはパケット交換チャネルにおいてデータを交換することができる。代表的なネットワークは、遠隔通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワークおよび/またはインターネットを含む。今の議論の目的のために、ネットワーク(250)のアーキテクチャーおよびトポロジーは、以下に説明しない限り、実施形態の動作には重要ではないことがありうる。
【0024】
図3は、実施形態による、ストリーミング環境におけるビデオ・エンコーダおよびビデオ・デコーダの配置図である。開示される主題は、たとえば、ビデオ会議、デジタルTV、CD、DVD、メモリスティックなどを含むデジタル媒体上の圧縮されたビデオの記憶などを含む、他のビデオ対応用途にも等しく適用可能でありうる。
【0025】
ストリーミング・システムは、ビデオ源(301)を含むことができる捕捉サブシステム(313)を含んでいてもよい。ビデオ源はたとえばデジタル・カメラであり、たとえば非圧縮のビデオ・サンプル・ストリーム(302)を生成する。サンプルストリーム(302)は、エンコードされたビデオ・ビットストリームと比較して高いデータ・ボリュームを強調するために太線として描かれており、カメラ(301)に結合されたエンコーダ(303)によって処理されることができる。エンコーダ(303)は、ハードウェア、ソフトウェア、またはそれらの組み合わせを含むことができ、以下により詳細に説明されるように、開示される主題の諸側面を可能にする、または実装することができる。エンコードされたビデオ・ビットストリーム(304)は、サンプル・ストリームと比較してより低いデータ・ボリュームを強調するために細い線として描かれており、将来の使用のためにストリーミング・サーバー(305)に格納されることができる。一つまたは複数のストリーミング・クライアント(306、308)がストリーミング・サーバー(305)にアクセスして、エンコードされたビデオ・ビットストリーム(304)のコピー(307、309)を取り出すことができる。クライアント(306)は、エンコードされたビデオ・ビットストリーム(307)のはいってくるコピーをデコードし、ディスプレイ(312)または他のレンダリング装置(図示せず)上でレンダリングされることのできる出ていくビデオ・サンプル・ストリーム(311)を生成するビデオ・デコーダ(310)を含むことができる。いくつかのストリーミング・システムでは、ビデオ・ビットストリーム(304、307、309)は、ある種のビデオ符号化/圧縮標準に従ってエンコードされることができる。これらの標準の例は、ITU-T勧告H.265を含む。非公式にVVCとして知られるビデオ符号化規格が開発中である。開示される主題は、VVCの文脈で使用されうる。
【0026】
図4は、実施形態によるビデオ・デコーダ(310)の機能ブロック図である。
【0027】
受領器(410)は、デコーダ(310)によってデコードされるべき一つまたは複数のコーデック・ビデオ・シーケンスを受領することができ;同一または実施形態において、一度に1つの符号化されたビデオ・シーケンスである。各符号化されたビデオ・シーケンスのデコードは、他の符号化されたビデオ・シーケンスとは独立である。符号化されたビデオ・シーケンスは、チャネル(412)から受領されてもよく、該チャネルは、エンコードされたビデオ・データを記憶する記憶装置へのハードウェア/ソフトウェア・リンクであってもよい。受領器(410)は、エンコードされたビデオ・データを、たとえば符号化されたオーディオ・データおよび/または補助データ・ストリームなどの他のデータと一緒に受領してもよく、これらは、それぞれの使用エンティティ(図示せず)に転送されてもよい。受領器(410)は、符号化されたビデオ・シーケンスを他のデータから分離することができる。ネットワーク・ジッタ対策として、バッファメモリ(415)が、受領器(410)とエントロピーデコーダ/パーサー(420)(以下「パーサー」)との間に結合されてもよい。受領器(410)が、十分な帯域幅および制御可能性の記憶/転送装置から、またはアイソクロナス・ネットワークからデータを受領している場合は、バッファ(415)は、必要とされなくてもよく、または小さくてもよい。インターネットのようなベストエフォート型のパケット・ネットワークでの使用のためには、バッファ(415)が要求されることがあり、比較的大きいことがあり、有利には適応サイズでありうる。
【0028】
ビデオ・デコーダ(310)は、エントロピー符号化されたビデオ・シーケンスからシンボル(421)を再構成するためのパーサー(420)を含んでいてもよい。これらのシンボルのカテゴリーは、デコーダ(310)の動作を管理するために使用される情報と、潜在的には、ディスプレイ(312)のようなレンダリング装置を制御する情報とを含む。ディスプレイは、図4に示されたように、デコーダの一体的な部分ではなく、デコーダに結合されることができる。レンダリング装置(単数または複数)のための制御情報は、補足向上情報(Supplementary Enhancement Information、SEIメッセージ)またはビデオユーザービリティ情報(Video Usability Information、VUI)パラメータ・セット・フラグメント(図示せず)の形であってもよい。パーサー(420)は、受領された符号化されたビデオ・シーケンスをパースする/エントロピー復号することができる。符号化されたビデオ・シーケンスの符号化は、ビデオ符号化技術または標準に従うことができ、可変長符号化、ハフマン符号化、コンテキスト感受性ありまたはなしの算術符号化などを含む、当業者に周知の原理に従うことができる。パーサー(420)は、符号化されたビデオ・シーケンスから、ビデオ・デコーダ内のピクセルのサブグループのうちの少なくとも1つについてのサブグループ・パラメータのセットを、グループに対応する少なくとも1つのパラメータに基づいて、抽出することができる。サブグループは、ピクチャーグループ(Group of Pictures、GOP)、ピクチャー、タイル、スライス、マクロブロック、符号化単位(Coding Unit、CU)、ブロック、変換単位(Transform Unit、TU)、予測単位(Prediction Unit、PU)などを含むことができる。エントロピーデコーダ/パーサーはまた、符号化されたビデオ・シーケンスから、変換係数、量子化パラメータ(QP)値、動きベクトル等の情報を抽出することができる。
【0029】
パーサー(420)は、バッファ(415)から受領されたビデオ・シーケンスに対してエントロピー・デコード/パース動作を実行し、それによりシンボル(421)を生成することができる。パーサー(420)は、エンコードされたデータを受領し、特定のシンボル(421)を選択的にデコードすることができる。さらに、パーサー(420)は、特定のシンボル(421)が、動き補償予測ユニット(453)、スケーラー/逆変換ユニット(451)、イントラ予測ユニット(452)、またはループ・フィルタ・ユニット(454)に提供されるべきかどうかを決定することができる。
【0030】
シンボル(421)の再構成は、符号化されたビデオ・ピクチャーまたはその諸部分のタイプ(たとえば、インターおよびイントラ・ピクチャー、インターおよびイントラ・ブロック)および他の要因に依存して、複数の異なるユニットに関わることができる。どのユニットがどのように関わるかは、符号化されたビデオ・シーケンスからパーサー(420)によってパースされたサブグループ制御情報によって制御されることができる。パーサー(420)と下記の複数のユニットとの間のそのようなサブグループ制御情報の流れは、明確のため、描かれていない。
【0031】
すでに述べた機能ブロックのほかに、デコーダ(310)は、以下に説明するように、概念的に、いくつかの機能ユニットに分割できる。商業的制約の下で機能する実際的な実装では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的に互いに統合されることができる。しかしながら、開示される主題を記述する目的のためには、下記の機能単位への概念的な細分が適切である。
【0032】
第1のユニットは、スケーラー/逆変換ユニット(451)である。スケーラー/逆変換ユニット(451)は、パーサー(420)から、量子化された変換係数および制御情報をシンボル(単数または複数)(421)として受領する。制御情報は、どの変換を使用するか、ブロック・サイズ、量子化因子、量子化スケーリング行列などを含む。第1のユニットは、集計器(455)に入力できるサンプル値を含むブロックを出力することができる。
【0033】
場合によっては、スケーラー/逆変換(451)の出力サンプルは、イントラ符号化されたブロック、すなわち、以前に再構成されたピクチャーからの予測情報を使用していないが、現在ピクチャーの、以前に再構成された部分からの予測情報を使用することができるブロックに関することができる。そのような予測情報は、イントラ・ピクチャー予測ユニット(452)によって提供されることができる。場合によっては、イントラ・ピクチャー予測ユニット452は、現在の(部分的に再構成された)ピクチャー(456)から取ってきた、周囲のすでに再構成された情報を使用して、再構成中のブロックと同じサイズおよび形状のブロックを生成する。集計器(455)は、場合によっては、サンプル毎に、イントラ予測ユニット(452)が生成した予測情報を、スケーラー/逆変換ユニット(451)によって提供される出力サンプル情報に加算する。
【0034】
他の場合には、スケーラー/逆変換ユニット(451)の出力サンプルは、インター符号化され、潜在的には動き補償されたブロックに関することができる。そのような場合、動き補償予測ユニット(453)は、予測のために使用されるサンプルを取ってくるために参照ピクチャー・メモリ(457)にアクセスすることができる。取ってきたサンプルを、ブロックに関するシンボル(421)に従って動き補償した後、これらのサンプルは、集計器(455)によってスケーラー/逆変換ユニットの出力(この場合、残差サンプルまたは残差信号と呼ばれる)に加算されて、それにより出力サンプル情報を生成することができる。動き補償ユニットが予測サンプルを取ってくる参照ピクチャー・メモリ内のアドレスは、シンボル(421)の形で動き補償ユニットに利用可能な動きベクトルによって制御できる。該シンボルは、たとえばX、Y、および参照ピクチャー成分を有することができる。動き補償は、サンプル以下の正確な動きベクトルが使用されるときの参照ピクチャー・メモリから取ってこられるサンプル値の補間、動きベクトル予測機構などを含むことができる。
【0035】
集計器(455)の出力サンプルは、ループ・フィルタ・ユニット(454)内でさまざまなループ・フィルタリング技術を受けることができる。ビデオ圧縮技術は、ループ内フィルタ技術を含むことができる。ループ内フィルタ技術は、符号化されたビデオ・ビットストリームに含まれるパラメータによって制御され、パーサー(420)からのシンボル(421)としてループ・フィルタ・ユニット(454)に利用可能にされるが、符号化されたピクチャーまたは符号化されたビデオ・シーケンスの(デコード順で)前の部分のデコード中に得られたメタ情報に応答するとともに、以前に再構成されループ・フィルタリングされたサンプル値に応答することもできる。
【0036】
ループ・フィルタ・ユニット(454)の出力はサンプル・ストリームであることができ、これは、レンダリング装置(312)に出力されることができ、また将来のインターピクチャー予測において使用するために参照ピクチャー・メモリ(456)に記憶されることができる。
【0037】
符号化された画像は、いったん完全に再構成されると、将来の予測のための参照ピクチャーとして使用できる。ある符号化されたピクチャーが完全に再構成され、該符号化されたピクチャーが(たとえば、パーサー(420)によって)参照ピクチャーとして同定されると、現在の参照ピクチャー(456)は参照ピクチャーバッファ(457)の一部となることができ、後続の符号化されたピクチャーの再構成を開始する前に、新鮮な現在ピクチャー・メモリが再割当てされることができる。
【0038】
ビデオ・デコーダ(310)は、ITU-T勧告H.265のような標準で文書化されていてもよい所定のビデオ圧縮技術に従ってデコード動作を実行することができる。符号化されたビデオ・シーケンスは、ビデオ圧縮技術文書または標準において、特にその中のプロファイル文書において規定されているビデオ圧縮技術または標準のシンタックスに従うという意味で、使用されているビデオ圧縮技術または標準によって規定されたシンタックスに準拠することができる。準拠のためにはまた、符号化されたビデオ・シーケンスの複雑さが、ビデオ圧縮技術または標準のレベルによって定義される範囲内にあることも必要であることがある。いくつかの場合には、レベルは、最大ピクチャー・サイズ、最大フレーム・レート、最大再構成サンプル・レート(たとえば、毎秒メガサンプルの単位で測られる)、最大参照ピクチャー・サイズなどを制約する。レベルによって設定された限界は、場合によっては、符号化されたビデオ・シーケンスにおいて信号伝達される、HRDバッファ管理のための仮説参照デコーダ(Hypothetical Reference Decoder、HRD)仕様およびメタデータを通じてさらに制約されることができる。
【0039】
実施形態において、受領器(410)は、エンコードされたビデオとともに追加の(冗長な)データを受領してもよい。追加データは、符号化されたビデオ・シーケンス(単数または複数)の一部として含まれていてもよい。追加データは、データを適正にデコードするため、および/またはもとのビデオ・データをより正確に再構成するために、ビデオ・デコーダ(310)によって使用されてもよい。追加データは、たとえば、時間的、空間的、または信号対雑音比(SNR)の向上層、冗長スライス、冗長ピクチャー、前方誤り訂正符号などの形でありうる。
【0040】
図5は、実施形態によるビデオ・エンコーダ(303)の機能ブロック図である。
【0041】
エンコーダ(303)は、エンコーダ(303)によって符号化されるべきビデオ画像を捕捉することができるビデオ源(301)(これはエンコーダの一部ではない)からビデオ・サンプルを受領することができる。
【0042】
ビデオ源(301)は、任意の好適なビット深さ(たとえば、8ビット、10ビット、12ビット、…)、任意の色空間(たとえば、BT.601 YCrCB、RGB、…)および任意の好適なサンプリング構造(たとえば、YCrCb 4:2:0、YCrCb 4:4:4)でありうるデジタル・ビデオ・サンプル・ストリームの形で、エンコーダ(303)によって符号化されるべき源ビデオ・シーケンスを提供することができる。メディア・サービス・システムにおいては、ビデオ源(301)は、事前に準備されたビデオを記憶している記憶装置であってもよい。ビデオ会議システムにおいては、ビデオ源(301)は、ローカルでの画像情報をビデオ・シーケンスとして捕捉するカメラであってもよい。ビデオ・データは、シーケンスで見たときに動きを付与する複数の個々のピクチャーとして提供されてもよい。ピクチャー自体は、ピクセルの空間的アレイとして編成されてもよく、各ピクセルは、使用中のサンプリング構造、色空間などに依存して、一つまたは複数のサンプルを含むことができる。当業者は、ピクセルとサンプルとの間の関係を容易に理解することができる。下記の説明は、サンプルに焦点を当てる。
【0043】
実施形態によれば、エンコーダ(303)は、源ビデオ・シーケンスのピクチャーを、リアルタイムで、またはアプリケーションによって要求される任意の他の時間的制約の下で、符号化および圧縮して、符号化されたビデオ・シーケンス(543)にすることができる。適切な符号化速度を施行することは、コントローラ(550)の一つの機能である。コントローラは、以下に記載されるような他の機能ユニットを制御し、これらのユニットに機能的に結合される。かかる結合は、明確のために描かれていない。コントローラによって設定されるパラメータは、レート制御に関連するパラメータ(ピクチャー・スキップ、量子化器、レート‐歪み最適化技術のラムダ値、…)、ピクチャー・サイズ、ピクチャーグループ(GOP)レイアウト、最大動きベクトル探索範囲などを含むことができる。コントローラ(550)の他の機能は、ある種のシステム設計のために最適化されたビデオ・エンコーダ(303)に関連しうるので、当業者は容易に識別することができる。
【0044】
いくつかのビデオ・エンコーダは、当業者が「符号化ループ」として容易に認識するものにおいて動作する。思い切って単純化した説明として、符号化ループは、エンコーダ(530)(以下、「源符号化器」)(符号化されるべき入力ピクチャーと参照ピクチャー(算数または複数)に基づいてシンボルを生成することを受け持つ)のエンコード部分と、エンコーダ(303)に埋め込まれた(ローカル)デコーダ(533)とから構成されることができ、ローカル・デコーダは、(リモートの)デコーダが生成するであろうサンプル・データを生成するよう前記シンボルを再構成する(開示される主題において考慮されるビデオ圧縮技術では、シンボルと符号化されたビデオ・ビットストリームとの間のどの圧縮も無損失である)。再構成されたサンプル・ストリームは、参照ピクチャー・メモリ(534)に入力される。シンボル・ストリームのデコードは、デコーダ位置(ローカルかリモートか)によらずビット正確な結果をもたらすので、参照ピクチャー・バッファ内容もローカル・エンコーダとリモート・エンコーダの間でビット正確である。言い換えると、エンコーダの予測部は、デコーダがデコード中に予測を使用するときに「見る」のとまったく同じサンプル値を参照ピクチャー・サンプルとして「見る」。参照ピクチャー同期性のこの基本原理(および、たとえば、チャネルエラーのために同期性が維持できない場合の結果として生じるドリフト)は、当業者に周知である。
【0045】
「ローカル」デコーダ(533)の動作は、図4との関連ですでに上記で詳細に述べた「リモート」デコーダ(310)の動作と同じであってよい。しかしながら、暫時図4も参照すると、シンボルが利用可能であり、エントロピー符号化器(545)およびパーサー(420)による、シンボルの符号化されたビデオ・シーケンスへのエンコード/デコードが可逆でありうるので、チャネル(412)、受領器(410)、バッファ(415)およびパーサー(420)を含むデコーダ(310)のエントロピー復号部は、ローカル・デコーダ(533)においては完全には実装されなくてもよい。
【0046】
この時点で行なうことができる観察は、デコーダ内に存在するパース/エントロピー復号を除くどのデコーダ技術も、対応するエンコーダ内で実質的に同一の機能的形態で存在する必要があることである。エンコーダ技術の記述は、包括的に記述されたデコーダ技術の逆であるため、短縮することができる。ある種の領域においてのみ、より詳細な説明が必要であり、以下に提供される。
【0047】
その動作の一部として、源符号化器(530)は、「参照フレーム」として指定された、ビデオ・シーケンスからの一つまたは複数の以前に符号化されたフレームを参照して、入力フレームを予測的に符号化する、動き補償された予測符号化を実行することができる。このようにして、符号化エンジン(532)は、入力フレームのピクセル・ブロックと、入力フレームに対する予測参照として選択されうる参照フレーム(単数または複数)のピクセル・ブロックとの間の差分を符号化する。
【0048】
ローカル・ビデオ・デコーダ(533)は、源符号化器(530)によって生成されたシンボルに基づいて、参照フレームとして指定されうるフレームの符号化されたビデオ・データをデコードすることができる。符号化エンジン(532)の動作は、有利には、損失のあるプロセスでありうる。符号化されたビデオ・データがビデオ・デコーダ(図4には示さず)でデコードされうるとき、再構成されたビデオ・シーケンスは、典型的には、いくつかのエラーを伴う源ビデオ・シーケンスの複製でありうる。ローカル・ビデオ・デコーダ(533)は、ビデオ・デコーダによって参照フレームに対して実行されうるデコード・プロセスを複製し、再構成された参照フレームを参照ピクチャー・キャッシュ(534)に格納させることができる。このようにして、エンコーダ(303)は、遠端のビデオ・デコーダによって得られるであろう再構成された参照フレームとしての共通の内容を有する再構成された参照フレームのコピーを、ローカルに記憶することができる。
【0049】
予測器(535)は、符号化エンジン(532)について予測探索を実行することができる。すなわち、符号化されるべき新しいフレームについて、予測器(535)は、新しいピクチャーのための適切な予測参照のはたらきをしうるサンプル・データ(候補参照ピクセル・ブロックとして)またはメタデータ、たとえば参照ピクチャー動きベクトル、ブロック形状などを求めて、参照ピクチャー・メモリ(534)を探索することができる。予測器(535)は、適切な予測参照を見出すために、サンプル・ブロック毎に動作しうる。場合によっては、予測器(535)によって得られた検索結果によって決定されるところにより、入力ピクチャーは、参照ピクチャー・メモリ(534)に記憶された複数の参照ピクチャーから引き出された予測参照を有することができる。
【0050】
コントローラ(550)は、たとえば、ビデオ・データをエンコードするために使用されるパラメータおよびサブグループ・パラメータの設定を含め、ビデオ符号化器(530)の符号化動作を管理してもよい。
【0051】
上記の機能ユニットのすべての出力は、エントロピー符号化器(545)におけるエントロピー符号化を受けることができる。エントロピー符号化器は、たとえば、ハフマン符号化、可変長符号化、算術符号化など、当業者に知られた技術に従ってシンボルを無損失圧縮することによって、さまざまな機能ユニットによって生成されたシンボルを符号化されたビデオ・シーケンスに変換する。
【0052】
送信器(540)は、エントロピー符号化器(545)によって生成される符号化されたビデオ・シーケンスをバッファに入れて、通信チャネル(560)を介した送信のためにそれを準備することができる。通信チャネル(560)は、エンコードされたビデオ・データを記憶することができる記憶装置へのハードウェア/ソフトウェア・リンクであってもよい。送信器(540)は、ビデオ符号化器(530)からの符号化されたビデオ・データを、送信されるべき他のデータ、たとえば符号化されたオーディオ・データおよび/または補助データ・ストリーム(源は図示せず)とマージすることができる。
【0053】
コントローラ(550)は、エンコーダ(303)の動作を管理してもよい。符号化の間、コントローラ(550)は、それぞれの符号化されたピクチャーに、ある符号化ピクチャー・タイプを割り当てることができる。符号化ピクチャー・タイプは、それぞれのピクチャーに適用されうる符号化技術に影響しうる。たとえば、ピクチャーはしばしば、以下のフレーム・タイプのうちの1つとして割り当てられることがある。
【0054】
イントラピクチャー(Iピクチャー)は、予測の源としてシーケンス内の他のフレームを使用せずに、符号化され、デコードされうるものでありうる。いくつかのビデオ・コーデックは、たとえば、独立デコーダ・リフレッシュ・ピクチャー(Independent Decoder Refresh Pictures)を含む、異なるタイプのイントラ・ピクチャーを許容する。当業者は、Iピクチャーのこれらの変形、ならびにそれらのそれぞれの用途および特徴を認識する。
【0055】
予測ピクチャー(Pピクチャー)は、各ブロックのサンプル値を予測するために、最大で1つの動きベクトルおよび参照インデックスを用いるイントラ予測またはインター予測を用いて符号化およびデコードされうるものでありうる。
【0056】
双方向予測ピクチャー(Bピクチャー)は、各ブロックのサンプル値を予測するために、最大で2つの動きベクトルおよび参照インデックスを用いるイントラ予測またはインター予測を用いて符号化およびデコードされうるものでありうる。同様に、マルチ予測ピクチャーは、単一のブロックの再構成のために、3つ以上の参照ピクチャーおよび関連するメタデータを使用することができる。
【0057】
源ピクチャーは、普通、空間的に複数のサンプル・ブロック(たとえば、それぞれ4×4、8×8、4×8、または16×16サンプルのブロック)に分割され、ブロック毎に符号化されうる。ブロックは、ブロックのそれぞれのピクチャーに適用される符号化割り当てによって決定されるところにより、他の(すでに符号化された)ブロックを参照して予測的に符号化されうる。たとえば、Iピクチャーのブロックは、非予測的に符号化されてもよく、または、同じピクチャーのすでに符号化されたブロック(空間的予測またはイントラ予測)を参照して予測的に符号化されてもよい。Pピクチャーのピクセル・ブロックは、以前に符号化された一つの参照ピクチャーを参照して、非予測的に、空間的予測を介して、または時間的予測を介して符号化されてもよい。Bピクチャーのブロックは、1つまたは2つの以前に符号化された参照ピクチャーを参照して、非予測的に、空間的予測を介して、または時間的予測を介して符号化されてもよい。
【0058】
ビデオ符号化器(303)は、ITU-T勧告H.265などの所定のビデオ符号化技術または標準に従って符号化動作を実行することができる。その動作において、ビデオ符号化器(303)は、入力ビデオ・シーケンスにおける時間的および空間的冗長性を活用する予測符号化動作を含む、さまざまな圧縮動作を実行することができる。よって、符号化されたビデオ・データは、使用されるビデオ符号化技術または標準によって指定されるシンタックスに準拠しうる。
【0059】
実施形態において、送信器(540)は、エンコードされたビデオと一緒に追加データを送信してもよい。ビデオ符号化器(530)は、符号化されたビデオ・シーケンスの一部としてそのようなデータを含めてもよい。追加データは、時間的/空間的/SNR向上層、冗長ピクチャーおよびスライスのような他の形の冗長データ、補足向上情報(SEI)メッセージ、視覚的ユーザービリティ情報(Visual Usability Information、VUI)パラメータ・セット・フラグメントなどを含んでいてもよい。
【0060】
イントラ予測におけるイントラモード選択について、これから詳細に述べる。イントラ予測モードの符号化または信号伝達のために、最も可能性の高いモード〔最確モード〕(most probable mode、MPM)の集合が確立される。現在のイントラ予測モードがMPMの集合に属するかどうかを信号伝達するためにフラグが使用されてもよい。そうであれば、それらのMPMのうちのどれが現在のイントラ予測モードに一致するかを示すためにインデックスが信号伝達される。それ以外の場合、残りのモード(非MPM)の符号化は、固定長符号化または可変長符号化を使用する。よって、MPMを表わすビット長は、非MPMモードを表わすビット長よりも短くてもよい(たとえば、1ビット)。
【0061】
実施形態において、イントラ予測モードの総数(総量)(MPMの数と残りのモードの数の合計)が許容される数(許容される量)を超える場合、一つまたは複数のイントラ予測モードが除去される。
【0062】
実施形態において、それぞれ角度予測方向に対応する65の方向性モードから、1つまたは2つの方向性モードが除外されてもよい。たとえば、イントラ予測モードの総数(総量)が68であり、MPMの数が2である場合、65の方向性モードから2つの方向性モードが除外されてもよい。別の例では、イントラ予測モードの総数が68であり、MPMの数が3である場合、65の方向性モードから1つの方向性モードが除外されてもよい。このように、非MPMの符号化は固定長符号化を使用してもよく、非MPMモードを表わすビット長は、たとえば、64の非MPMモードのために6ビットであってもよい。
【0063】
図6A図6B図6C図6Dは、実施形態による、イントラ予測モードからの除外のための候補モードの図である。
【0064】
図6Aを参照すると、垂直モード(610)(上の太矢印)の左にある直近モード(immediate mode)(605)(上の丸印のモード)および/または水平モード(620)(左の太矢印)の上にある直近モード(615)(左の丸印のモード)が除外されてもよい。
【0065】
図6Bを参照すると、垂直モード(610)(上の太矢印)の右にある直近モード(625)(上の丸印のモード)および/または水平モード(620)(左の太矢印)の下にある直近モード(630)(左の丸印のモード)が除外されてもよい。
【0066】
図6Cを参照すると、垂直モード(610)(上の太矢印)の左にある第2直近モード(635)(上の丸印のモード)および/または水平モード(620)(左の太矢印)の上にある第2直近モード(640)(左の丸印のモード)が除外されてもよい。
【0067】
図6Dを参照すると、垂直モード(610)(上の太矢印)の右にある第2直近モード(645)(上の丸印のモード)および/または水平モード(620)(左の太矢印)の下にある第2直近モード(650)(左の丸印のモード)が除外されてもよい。
【0068】
図6A~6Dを参照すると、示された方向性モードの数は65ではなく、水平モードおよび垂直モードに対して、除外されうる方向性モードを示すために使用されている。
【0069】
実施形態において、最も遠い対角モード(右上コーナー・モード、左下コーナー・モード、および/または左上コーナー・モード)の隣の隣接方向性モードおよび/または最も遠い対角モードも、イントラ予測モードからの除外のための候補とすることができる。たとえば、図1Cを参照するに、左下コーナー・モード、左上コーナー・モード、右上コーナー・モードにそれぞれ対応するモード2、18、34が除外されてもよい。
【0070】
図7は、実施形態による、ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御する方法(700)を示すフローチャートである。いくつかの実装において、図7の一つまたは複数のプロセス・ブロックは、デコーダ(310)によって実行されてもよい。いくつかの実装では、図7の一つまたは複数のプロセス・ブロックは、デコーダ(310)とは別個の、またはデコーダ(310)を含む、別の装置または装置群、たとえばエンコーダ(303)によって実行されてもよい。
【0071】
図7を参照すると、第1のブロック(710)において、本方法(700)は、角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得することを含み、前記方向性モードのうち第1の量の一つまたは複数の方向性モードが、前記イントラ予測モードの第2の量および最確モード(MPM)の第3の量に基づいて、イントラ予測モードから除外される。
【0072】
第2のブロック(720)において、方法(700)は、MPMとして、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードの2つ以上のイントラ予測モードを選択することを含む。
【0073】
第3のブロック(730)において、方法(700)は、ビデオ・シーケンスをデコードするために、前記方向性モードのうちの前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードの1つを選択することを含む。
【0074】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの左の直近モードを含んでいてもよい。
【0075】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの上の直近モードを含んでいてもよい。
【0076】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの右の直近モードを含んでいてもよい。
【0077】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの下の直近モードを含んでいてもよい。
【0078】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの左の第1直近モードの左の第2直近モードを含んでいてもよい。
【0079】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの上の第1直近モードの上の第2直近モードを含んでいてもよい。
【0080】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、垂直予測方向に対応する垂直モードの右の第1直近モードの右の第2直近モードを含んでいてもよい。
【0081】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、水平予測方向に対応する水平モードの下の第1直近モードの下の第2直近モードを含んでいてもよい。
【0082】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、右上コーナー方向、左下コーナー方向、および左上コーナー方向にそれぞれ対応する右上コーナー・モード、左下コーナー・モード、および左上コーナー・モードのいずれかまたは何らかの組み合わせを含んでいてもよい。
【0083】
前記方向性モードのうち前記第1の量の一つまたは複数の方向性モードは、MPMの第3の量とMPMではない残りのモードの第4の量の合計が許容される量以下になるように、前記イントラ予測モードから除外されてもよい。
【0084】
図7は、方法(700)の例示的なブロックを示しているが、いくつかの実装においては、方法(700)は、図7に描かれたものに比べ、追加のブロック、より少ないブロック、異なるブロック、または異なる配置のブロックを含んでいてもよい。追加的または代替的に、方法(700)のブロックのうちの2つ以上が並列に実行されてもよい。
【0085】
さらに、提案された方法は、処理回路(たとえば、一つまたは複数のプロセッサまたは一つまたは複数の集積回路)によって実装されてもよい。一例では、前記一つまたは複数のプロセッサは、提案された方法の一つまたは複数を実行するために、非一時的なコンピュータ読み取り可能な媒体に記憶されたプログラムを実行する。
【0086】
図8は、実施形態による、ビデオ・シーケンスのデコードまたはエンコードのためのイントラ予測を制御するための装置(800)の簡略化されたブロック図である。
【0087】
図8を参照すると、装置(800)は、取得コード(810)、第1の選択コード(820)、および第2の選択コード(830)を含む。
【0088】
取得コード(810)は、前記少なくとも1つのプロセッサに、角度予測方向にそれぞれ対応する方向性モードを含むイントラ予測モードを取得させるように構成される。前記方向性モードのうち第1の量の一つまたは複数の方向性モードが、前記イントラ予測モードの第2の量および最確モード(MPM)の第3の量に基づいて、イントラ予測モードから除外される。
【0089】
第1の選択コード(820)は、前記少なくとも1つのプロセッサに、前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの2つ以上を前記MPMとして選択させるように構成される。
【0090】
第2の選択コード(830)は、前記少なくとも1つのプロセッサに、前記ビデオ・シーケンスをデコードするために、前記一つまたは複数の方向性モードがそこから除外される前記イントラ予測モードのうちの1つを選択させるように構成される。
【0091】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち垂直予測方向に対応する垂直モードの左にある直近モード、前記方向性モードのうち水平予測方向に対応する水平モードの上にある直近モード、前記方向性モードのうち垂直モードの右にある直近モード、および前記方向性モードのうち水平モードの下にある直近モードのいずれかまたは何らかの組み合わせを含むことができる。
【0092】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち垂直予測方向に対応する垂直モードの左にある第1直近モードの左にある第2直近モード、前記方向性モードのうち水平予測方向に対応する水平モードの上にある第1直近モードの上にある第2直近モード、前記方向性モードのうち垂直モードの右にある第1直近モードの右にある第2直近モード、および前記方向性モードのうち水平モードの下にある第1直近モードの下にある第2の直近モードのいずれかまたは何らかの組み合わせを含む。
【0093】
前記イントラ予測モードから除外される前記一つまたは複数の方向性モードは、前記方向性モードのうち、右上コーナー方向、左下コーナー方向、および左上コーナー方向にそれぞれ対応する右上コーナー・モード、左下コーナー・モード、および左上コーナー・モードのいずれかまたは何らかの組み合わせを含むことができる。
【0094】
前記の第1の量の一つまたは複数の方向性モードは、MPMの第3の量と、MPMではない残りのモードの第4の量の合計が許容量以下になるように、前記イントラ予測モードから除外されてもよい。
【0095】
図9は、実施形態を実装するのに好適なコンピュータ・システム(900)の図である。
【0096】
コンピュータソフトウェアは、任意の好適な機械コードまたはコンピュータ言語を用いてコーディングされることができ、アセンブリ、コンパイル、リンク、または同様の機構の対象とされて、コンピュータ中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)などによって、直接的に、またはインタープリット、マイクロコード実行などを通じて実行可能な命令を含むコードを作成することができる。
【0097】
命令は、たとえば、パーソナルコンピュータ、タブレットコンピュータ、サーバー、スマートフォン、ゲーム装置、モノのインターネット等を含むさまざまなタイプのコンピュータまたはそのコンポーネント上で実行されることができる。
【0098】
コンピュータ・システム(900)について図9に示されるコンポーネントは、例としての性質であり、実施形態を実装するコンピュータソフトウェアの使用または機能の範囲に関する制限を示唆することを意図したものではない。コンポーネントの構成も、コンピュータ・システム(900)の実施形態において例示されているコンポーネントの任意の1つまたは組み合わせに関する何らかの従属性または要件を有するものとして解釈されるべきではない。
【0099】
コンピュータ・システム(900)は、ある種のヒューマン・インターフェース入力装置を含むことができる。そのようなヒューマン・インターフェース入力装置は、たとえば、触覚入力(たとえば、キーストローク、スワイプ、データグローブの動き)、音声入力(たとえば、声、拍手)、視覚入力(たとえば、ジェスチャー)、嗅覚入力(図示せず)を通じた一または複数の人間ユーザーによる入力に応答することができる。また、ヒューマン・インターフェース装置は、音声(たとえば、発話、音楽、周囲の音)、画像(たとえば、スキャンされた画像、スチール画像カメラから得られる写真画像)、ビデオ(たとえば、2次元ビデオ、立体視ピクチャーを含む3次元ビデオ)のような、人間による意識的入力に必ずしも直接関係しないある種のメディアを捕捉するために使用できる。
【0100】
入力ヒューマン・インターフェース装置は、キーボード(901)、マウス(902)、トラックパッド(903)、タッチスクリーン(910)、データグローブ(904)、ジョイスティック(905)、マイクロフォン(906)、スキャナ(907)、カメラ(908)の一つまたは複数を含んでいてもよい(それぞれ一つのみ図示している)。
【0101】
コンピュータ・システム(900)はまた、ある種のヒューマン・インターフェース出力装置を含んでいてもよい。そのようなヒューマン・インターフェース出力装置は、たとえば、触覚出力、音、光、および臭い/味を通じて、一または複数の人間ユーザーの感覚を刺激することができる。そのようなヒューマン・インターフェース出力装置は、触覚出力装置(たとえば、タッチスクリーン(910)、データグローブ(904)、またはジョイスティック(905)による触覚フィードバック;ただし、入力装置のはたらきをしない触覚フィードバック装置もありうる)、音声出力装置(たとえば、スピーカー(909)、ヘッドフォン(図示せず)、視覚出力装置(たとえば、陰極線管(CRT)画面、液晶ディスプレイ(LCD)画面、プラズマスクリーン、有機発光ダイオード(OLED)画面を含む画面(910);それぞれはタッチスクリーン入力機能があってもなくてもよく、それぞれは触覚フィードバック機能があってもなくてもよく、そのうちのいくつかは、2次元の視覚出力または立体視出力のような手段を通じた3次元より高い出力を出力することができる;仮想現実感眼鏡(図示せず)、ホログラフィーディスプレイおよび煙タンク(図示せず))、およびプリンタ(図示せず)を含んでいてもよい。グラフィックスアダプター(950)は、画像を生成し、タッチスクリーン(910)に出力する。
【0102】
コンピュータ・システム(900)はまた、人間がアクセス可能な記憶装置および関連する媒体、たとえば、CD/DVDまたは類似の媒体(921)とともにCD/DVD ROM/RW(920)を含む光学式媒体、サムドライブ(922)、取り外し可能なハードドライブまたはソリッドステート・ドライブ(923)、テープおよびフロッピーディスクといったレガシー磁気媒体(図示せず)、セキュリティ・ドングルのような特化したROM/ASIC/PLDベースの装置(図示せず)などを含むことができる。
【0103】
当業者はまた、現在開示されている主題に関連して使用される用語「コンピュータ読み取り可能な媒体」は、伝送媒体、搬送波、または他の一時的な信号を包含しないことを理解すべきである。
【0104】
コンピュータ・システム(900)はまた、一つまたは複数の通信ネットワーク(955)へのインターフェースを含むことができる。ネットワーク(955)は、たとえば、無線、有線、光学式でありうる。ネットワーク(955)は、さらに、ローカル、広域、都市圏、車載および工業用、リアルタイム、遅延耐性などでありうる。ネットワーク(955)の例は、イーサネット〔登録商標〕、無線LAN、移動通信のためのグローバルシステム(GSM)、第3世代(3G)、第4世代(4G)、第5世代(5G)、ロングタームエボリューション(LTE)などを含むセルラー・ネットワーク、ケーブルテレビ、衛星テレビ、地上放送テレビを含むTV有線または無線の広域デジタルネットワーク、CANBusを含む車載および工業用などを含む。ある種のネットワーク(955)は、普通、ある種の汎用データ・ポートまたは周辺バス((949))(たとえば、コンピュータ・システム(900)のユニバーサル・シリアル・バス(USB)・ポートなど)に取り付けられる外部ネットワーク・インターフェース・アダプターを必要とする。他は、普通、後述するようなシステム・バスへの取り付けによって、コンピュータ・システム(900)のコアに統合される(たとえば、PCコンピュータ・システムへのイーサネット・インターフェースまたはスマートフォン・コンピュータ・システムへのセルラー・ネットワーク・インターフェース(954))。これらのネットワーク(955)のいずれかを使用して、コンピュータ・システム(900)は、他のエンティティと通信することができる。そのような通信は、一方向性、受信のみ(たとえば、放送テレビ)、一方向性送信専用(たとえば、ある種のCANbus装置へのCANbus)、または、たとえば、ローカルまたは広域デジタルネットワークを使用する他のコンピュータ・システムへの双方向性であってもよい。上述のようなそれらのネットワーク(955)およびネットワークインターフェース(954)のそれぞれで、ある種のプロトコルおよびプロトコルスタックが使用できる。
【0105】
前述のヒューマン・インターフェース装置、人間がアクセス可能な記憶装置、およびネットワークインターフェース(954)は、コンピュータ・システム(900)のコア(940)に取り付けることができる。
【0106】
コア(940)は、一つまたは複数の中央処理装置(CPU)(941)、グラフィックス処理装置(GPU)(942)、フィールドプログラマブルゲートアレイ(FPGA)(943)の形の特化したプログラマブル処理装置、ある種のタスクのためのハードウェアアクセラレータ(944)などを含むことができる。これらの装置は、読み出し専用メモリ(ROM)(945)、ランダムアクセスメモリ(RAM)(946)、内部のユーザー・アクセス可能でないハードドライブ、ソリッドステートドライブ(SSD)などの内蔵大容量記憶装置(947)とともに、システムバス(948)を通じて接続されうる。いくつかのコンピュータ・システムでは、追加のCPU、GPUなどによる拡張を可能にするために、システム・バス(948)は、一つまたは複数の物理プラグの形でアクセス可能であってもよい。周辺装置は、コアのシステムバス(948)に直接取り付けられることも、周辺バス(949)を通じて取り付けることもできる。周辺バスのためのアーキテクチャーは、ペリフェラルコンポーネント相互接続(PCI)、USBなどを含む。
【0107】
CPU(941)、GPU(942)、FPGA(943)、およびアクセラレータ(944)は、組み合わせて上述のコンピュータコードを構成することができるある種の命令を、実行することができる。そのコンピュータコードは、ROM (945)またはRAM (946)に記憶できる。一時的データは、RAM(946)に記憶されることもでき、持続的データは、たとえば、内部大容量記憶装置(947)に記憶されることができる。一つまたは複数のCPU(941)、GPU(942)、大容量記憶装置(947)、ROM(945)、RAM(946)などと密接に関連付けることができるキャッシュメモリを使用することを通じて、メモリデバイスのいずれかへの高速な記憶および取り出しを可能にすることができる。
【0108】
コンピュータ読み取り可能な媒体は、さまざまなコンピュータ実装された動作を実行するためのコンピュータコードをその上に有することができる。媒体およびコンピュータコードは、実施形態の目的のために特別に設計および構築されたものであってもよく、または、コンピュータソフトウェア分野の技術を有する者に周知であり利用可能な種類のものであってもよい。
【0109】
限定ではなく一例として、アーキテクチャー(900)、具体的にはコア(940)を有するコンピュータ・システムは、プロセッサ(CPU、GPU、FPGA、アクセラレータ等を含む)が一つまたは複数の有形のコンピュータ可読媒体に具現化されたソフトウェアを実行することの結果として、機能性を提供することができる。そのようなコンピュータ読み取り可能媒体は、上記で紹介したようなユーザー・アクセス可能な大容量記憶ならびにコア内部の大容量記憶装置(947)またはROM(945)のような非一時的な性質のコア(940)のある種の記憶に関連する媒体であることができる。さまざまな実施形態を実装するソフトウェアは、そのような装置に記憶され、コア(940)によって実行されることができる。コンピュータ読み取り可能媒体は、特定のニーズに応じて、一つまたは複数のメモリデバイスまたはチップを含むことができる。ソフトウェアは、RAM(946)に記憶されたデータ構造を定義し、ソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を修正することを含む、本明細書に記載された特定のプロセスまたは特定の特定部分を、コア(940)および具体的にその中のプロセッサ(CPU、GPU、FPGAなどを含む)に実行させることができる。追加的または代替的に、コンピュータ・システムは、回路(たとえば、アクセラレータ(944))内に配線された、または他の仕方で具現された論理の結果として機能性を提供することができ、これは、本明細書に記載される特定のプロセスまたは特定のプロセスの特定部分を実行するためのソフトウェアの代わりに、またはそれと一緒に動作することができる。ソフトウェアへの言及は、論理を含み、適宜その逆も可能である。コンピュータ読み取り可能媒体への言及は、適宜、実行のためのソフトウェアを記憶する回路(たとえば集積回路(IC))、実行のための論理を具現する回路、またはその両方を包含することができる。実施形態は、ハードウェアおよびソフトウェアの任意の好適な組み合わせを包含する。
【0110】
本開示は、いくつかの実施形態を記載してきたが、変更、置換、およびさまざまな代替等価物があり、それらは本開示の範囲内にはいる。よって、当業者は、本明細書に明示的に示されていないかまたは記載されていないが、本開示の原理を具現し、よって、本開示の精神および範囲内にある多くのシステムおよび方法を考案することができることが理解されるであろう。
図1A
図1B
図1C
図2
図3
図4
図5
図6A
図6B
図6C
図6D
図7
図8
図9