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

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

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

特表2022-531759ビデオデコーディング方法及びビデオコーディング方法
<>
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図1
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図2
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図3
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図4
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図5
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図6
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図7
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図8
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図9
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図10
  • 特表-ビデオデコーディング方法及びビデオコーディング方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-07-11
(54)【発明の名称】ビデオデコーディング方法及びビデオコーディング方法
(51)【国際特許分類】
   H04N 19/11 20140101AFI20220704BHJP
   H04N 19/46 20140101ALI20220704BHJP
   H04N 19/105 20140101ALI20220704BHJP
   H04N 19/176 20140101ALI20220704BHJP
【FI】
H04N19/11
H04N19/46
H04N19/105
H04N19/176
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021558676
(86)(22)【出願日】2020-11-26
(85)【翻訳文提出日】2021-10-01
(86)【国際出願番号】 US2020062446
(87)【国際公開番号】W WO2021108733
(87)【国際公開日】2021-06-03
(31)【優先権主張番号】17/079,417
(32)【優先日】2020-10-23
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/941,342
(32)【優先日】2019-11-27
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ブルートゥース
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャオ,リアン
(72)【発明者】
【氏名】ジャオ,シン
(72)【発明者】
【氏名】リィウ,シャン
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159MA04
5C159MA05
5C159MA21
5C159MC11
5C159ME01
5C159ME11
5C159PP16
5C159RC12
5C159TA31
5C159TA32
5C159TA33
5C159TB08
5C159TC08
5C159TC18
5C159TC26
5C159UA05
(57)【要約】
ビデオデコーディング方法であって、ビデオ信号の複数のコーディングフレームを含むビットストリームを取得し、複数のコーディングフレームのそれぞれを複数のCTUにデコーディングし、複数のCTUのそれぞれを複数の残差ブロックにデコーディングし、各コーディングフレームに含まれるマルチ参照ラインイントラ予測フラグ及び参照サンプルに基づいて、複数の残差ブロックのそれぞれに対してコーディングブロックを復元し、コーディング効率及び圧縮性能に基づいて、イントラ予測用に選択された複数の参照ラインのそれぞれに対して全て利用可能なイントラ予測モードのサブセットを決定し、複数の参照ラインのそれぞれは、インデックス番号で識別され、複数の残差ブロックのそれぞれに対して復元されたコーディングブロックをフレームバッファに記憶してビデオ信号の各フレームを再構成し、再構成されたフレームを連続的に出力してビデオ信号を復元することを含む。
【特許請求の範囲】
【請求項1】
ビデオデコーディング方法であって、
ビデオ信号の複数のコーディングフレームを含むビットストリームを取得するステップと、
前記複数のコーディングフレームのそれぞれを複数のコーディングツリーユニット(CTU)にデコーディングし、前記複数のCTUのそれぞれを複数の残差ブロックにデコーディングするステップと、
各コーディングフレームに含まれるマルチ参照ラインイントラ予測(MRLP)フラグ及び参照サンプルに基づいて、前記複数の残差ブロックのそれぞれに対してコーディングブロックを復元するステップであり、コーディング効率及び圧縮性能に基づいて、イントラ予測用に選択された複数の参照ラインのそれぞれに対して、許可されたイントラ予測モードセット(AIPM)とも呼ばれる全ての利用可能なイントラ予測モードのサブセットを決定し、前記複数の参照ラインのそれぞれは、ゼロ以上の整数であるインデックス番号で識別される、前記復元するステップと、
前記複数の残差ブロックのそれぞれについての前記復元されたコーディングブロックを、フレームバッファに記憶することで、前記ビデオ信号の各フレームを再構成するステップと、
前記再構成されたフレームを連続的に出力して前記ビデオ信号を復元するステップと
を含む方法。
【請求項2】
前記参照ラインのインデックス番号は、前記参照ラインが現在のブロックから離れるにつれて順次増加し、
前記現在のブロックに直接隣接する参照ラインはゼロ参照ラインと呼ばれ、ゼロに等しいインデックス番号を有し、対応するAIPMセットはS2と表され、
前記インデックス番号がゼロよりも大きい参照ラインは非ゼロ参照ラインと呼ばれ、対応するAIPMセットはS1と表され、
S1はS2のサブセットである、
請求項1に記載の方法。
【請求項3】
S1に含まれるイントラ予測モードは、
前記現在のブロックのサイズ、及び隣接ブロックのイントラ予測モードにかかわらず、公称角度を持つ角度イントラ予測モードを含めることと、
前記現在のブロックのサイズ、及び前記隣接ブロックのイントラ予測モードにかかわらず、SMOOTH_Vモード又はSMOOTH_Hモードのどちらか一方を含めることと、
前記SMOOTH_Vモード又は前記SMOOTH_Hモード以外の如何なる非角度イントラ予測モードも除外することと
によって決定され、
前記公称角度は、45°、67°、90°、113°、135°、157°、180°及び203°であり、
前記SMOOTH_Vモード及び前記SMOOTH_Hモードは、それぞれ、垂直方向又は水平方向における二次補間を用いたイントラ予測モードである、
請求項2に記載の方法。
【請求項4】
前記現在のブロックの高さが前記現在のブロックの幅以上である場合に、前記SMOOTH_VモードがS1に含まれ、
前記現在のブロックの幅が前記現在のブロックの高さよりも大きい場合に、前記SMOOTH_HモードがS1に含まれる、
請求項3に記載の方法。
【請求項5】
前記現在のブロックの幅が前記現在のブロックの高さ以上である場合に、前記SMOOTH_VモードがS1に含まれ、
前記現在のブロックの高さが前記現在のブロックの幅よりも大きい場合に、前記SMOOTH_HモードS1に含まれる、
請求項3に記載の方法。
【請求項6】
S1及びS2に含まれるイントラ予測モードは、
S2を第1のレベル及び第2のレベルに分割することと、
L及びMが1よりも大きい整数であるとして、S2の前記第1のレベルで2個のイントラ予測モードを含め、S2の前記第2のレベルで2個のイントラ予測モードを含めることと
S1にはS2の前記第1のレベルでの角度イントラ予測モードを含めることと
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項7】
S1及びS2に含まれるイントラ予測モードは、
S2を、第1のレベル、第2のレベル及び第3のレベルに分割することと、
L、M及びNが1よりも大きい整数であるとして、S2の前記第1のレベルで2個のイントラ予測モードを含め、S2の前記第2のレベルで2個のイントラ予測モードを含め、S2の前記第3のレベルで2個の予測モードを含めることと、
S1にはS2の前記第1のレベル及び前記第2のレベルでの角度イントラ予測モードを含めることと
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項8】
S1に含まれるイントラ予測モードは、
隣接ブロックのイントラ予測モードの一つが角度イントラ予測モードである場合に、非公称角度の少なくとも1つの角度イントラ予測モードを含めること
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項9】
S1及びS2に含まれるイントラ予測モードは、
S1にS2の全ての角度イントラ予測モードを含めること
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項10】
S1及びS2に含まれるイントラ予測モードは、
S1にS2の全てのイントラ予測モードを含めること
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項11】
S1及びS2に含まれるイントラ予測モードは、
S1にS2の全ての角度イントラ予測モードを含めることと、
S1においてS2の全ての非角度イントラ予測モードを除外することと
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項12】
S1及びS2に含まれるイントラ予測モードは、
S1にS2よりも多くの角度イントラ予測モードを含めること
によって決定される、
請求項2乃至5のうちいずれか一項に記載の方法。
【請求項13】
ビデオコーディング方法であって、
ビデオ入力の現在のフレームを取得するステップと、
前記取得された現在のフレームを複数のブロックに分割するステップと、
マルチ参照ラインイントラ予測を組み込むことにより、分割されたブロックごとにシンボルレベルを予測するステップであり、
隣接ブロックの複数の参照ラインに基づいてイントラ予測モードが導出され、
コーディング効率及び圧縮性能に基づいて、前記複数の参照ラインのそれぞれに対して、許可されたイントラ予測モードセット(AIPM)とも呼ばれる全ての利用可能なイントラ予測モードのサブセットが決定され、
前記複数の参照ラインのそれぞれが、ゼロ以上の整数であるインデックス番号で識別される、前記予測するステップと、
現在のシンボルレベルから前記予測されたシンボルレベルを差し引くことで導出された残差シンボルレベルを変換及び量子化するステップと、
前記変換及び量子化された残差シンボルレベルをエントロピーコーディングするステップと、
前記エントロピーコーディングされた残差シンボルレベルを含むビットストリームを生成するステップと
を含む方法。
【請求項14】
前記参照ラインのインデックス番号は、前記参照ラインが現在のブロックから離れるにつれて順次増加し、
前記現在のブロックに直接隣接する参照ラインはゼロ参照ラインとも呼ばれ、ゼロに等しいインデックス番号を有し、対応するAIPMセットはS2と表され、
前記インデックス番号がゼロよりも大きい参照ラインは非ゼロ参照ラインと呼ばれ、対応するAIPMセットS1と表され、
S1はS2のサブセットである、
請求項13に記載の方法。
【請求項15】
S1に含まれるイントラ予測モードは、
前記現在のブロックのサイズ、及び隣接ブロックのイントラ予測モードにかかわらず、公称角度を持つ角度イントラ予測モードを含めることと、
前記現在のブロックのサイズ、及び前記隣接ブロックのイントラ予測モードにかかわらず、SMOOTH_Vモード又はSMOOTH_Hモードのどちらか一方を含めること
によって決定され、
前記公称角度は、45°、67°、90°、113°、135°、157°、180°及び203°であり、
前記SMOOTH_Vモード及び前記SMOOTH_Hモードは、それぞれ、垂直方向又は水平方向における二次補間を用いたイントラ予測モードである、
請求項14に記載の方法。
【請求項16】
前記現在のブロックの高さが前記現在のブロックの幅以上である場合に、前記SMOOTH_VモードがS1に含まれ、
前記現在のブロックの幅が前記現在のブロックの高さよりも大きい場合に、前記SMOOTH_HモードがS1に含まれる、
請求項15に記載の方法。
【請求項17】
前記現在のブロックの幅が前記現在のブロックの高さ以上である場合に、前記SMOOTH_VモードがS1に含まれ、
前記現在のブロックの高さが前記現在のブロックの幅よりも大きい場合に、前記SMOOTH_HモードがS1に含まれる、
請求項15に記載の方法。
【請求項18】
S1及びS2に含まれるイントラ予測モードは、
S2を第1のレベル及び第2のレベルに分割することと、
L及びMが1よりも大きい整数であるとして、S2の前記第1のレベルで2個のイントラ予測モードを含め、S2の前記第2のレベルで2個のイントラ予測モードを含めること、
S1には、S2の前記第1のレベルでの角度イントラ予測モードを含めることと
によって決定される、
請求項14乃至17のうちいずれか一項に記載の方法。
【請求項19】
S1及びS2に含まれるイントラ予測モードは、
S2を第1のレベル、第2のレベル及び第3のレベルに分割することと、
L、M及びNが1よりも大きい整数であるとして、S2の前記第1のレベルで2個のイントラ予測モードを含め、S2の前記第2のレベルで2個のイントラ予測モードを含め、S2の前記第3のレベルで2個の予測モードを含めることと、
S1には、S2の前記第1のレベル及び前記第2のレベルでの角度イントラ予測モードを含めることと
によって決定される、
請求項14乃至17のうちいずれか一項に記載の方法。
【請求項20】
S1に含まれるイントラ予測モードは、
前記隣接ブロックのイントラ予測モードの一つが角度イントラ予測モードである場合に、非公称角度の少なくとも1つの角度イントラ予測モードを含めること
によって決定される、
請求項14乃至17のうちいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願への相互参照]
本出願は、2019年11月27日に出願された米国仮特許出願第62/941,342号の優先権を主張して2020年10月23日に出願された米国特許出願第17/079,417号の優先権を主張するものであり、上記の各出願の全内容は、本明細書に援用により組み込まれる。
【0002】
[技術分野]
本出願は、ビデオコーディング技術の分野に関し、さらに、具体的に、マルチ参照ラインイントラ予測を有するビデオコーディングの方法及びシステムに関する。
【背景技術】
【0003】
AOMedia Video 1(AV1)は、インターネットを介したビデオ伝送用に設計されたオープンビデオコーディングフォーマットである。これは、半導体企業、ビデオオンデマンドプロバイダー、ビデオコンテンツプロデューサー、ソフトウェア開発会社、及びWebブラウザーベンダーを含む2015年に設立されたコンソーシアムであるオープンメディア連合(Alliance for Open Media、AOMedia)によってVP9の後継として開発された。VP9のコードベースに基づいて構築されたAV1には、追加の技術が組み込まれており、その追加の技術の幾つかはこれらの実験的な形式で開発された。AV1リファレンスコーデックの最初のバージョン0.1.0は、2016年4月7日にリリースされた。連合は、2018年3月28日にAV1ビットストリーム仕様とともに、リファレンスであるソフトウェアベースのエンコーダ及びデコーダをリリースした。2018年6月25日に、当該仕様の検証バージョン1.0.0がリリースされた。2019年1月8日に、当該仕様のエラッタ1を含む検証バージョン1.0.0がリリースされた。AV1ビットストリーム仕様には、リファレンスビデオコーデックが含まれている。
【0004】
ITU-T VCEG(Q6/16)及びISO/IEC MPEG(JTC 1/SC 29/WG 11)は、2013年(バージョン1)、2014年(バージョン2)、2015年(バージョン3)、及び2016年(バージョン4)にH.265/HEVC(高効率ビデオコーディング)(High Efficiency Video Coding、HEVC))標準をリリースした。2015年に、これらの2つの標準化団体は、HEVCを超えた次のビデオコーディング標準の開発の可能性を探るために、共同でJVET(Joint Video Exploration Team)を結成した。2017年10月に、それらは、HEVCを超えた能力を持つビデオ圧縮に関する共同提案募集(Capability beyond HEVC、CfP)をリリースした。2018年2月15日までに、全部で、標準ダイナミックレンジ(standard dynamic range、SDR)に関する22件のCfP回答、ハイダイナミックレンジ(high dynamic range、HDR)に関する12件のCfP回答、及び360個のビデオカテゴリに関する12件のCfP回答が、それぞれ提出された。2018年4月1日に、受け取られたすべてのCfP回答は、第122回MPEG/第10回JVET会議で評価された。この会議の結果、JVETはHEVCを超えた次世代のビデオコーディングの標準化プロセスを正式に開始した。新しい標準は多用途ビデオコーディング(Versatile Video Coding、VVC)と名付けられ、JVETは共同ビデオ専門家チームと改名された。
【0005】
AV1標準に基づくビデオコーディングスキームでは、利用可能なイントラ予測モードの数は62であり、これは、56個の角度(又は方向)イントラ予測モード、5つの平滑化モード、及び1つの、輝度予測に基づく彩度決定モード(chroma from luma mode)を含む。本開示の説明では、角度(又は指向)イントラ予測モードは、角度(又は指向)モードとも呼ばれる。イントラ予測で複数の参照ラインが適用され、複数の参照ラインのためにすべてのイントラ予測モードが含まれる場合に、ビデオコーディングの複雑さはかなり大きくなる。複数の参照ラインには、インデックス番号がゼロに等しいゼロ参照ラインと、インデックス番号がゼロよりも大きい1つ又は複数の非ゼロ参照ラインとが含まれる。非ゼロ参照ラインごとに許可されるイントラ予測モードの数を制限することが望ましい。VVC標準に基づくビデオコーディングスキームでは、イントラ予測モードは、許可されたイントラ予測モード(allowed intra prediction mode、AIPM)セットに最確モード(most probable modes、MPM)を含むように決定される。ただし、AV1は同様の最確モード(MPM)を定義しておらず、VVC標準に基づくビデオコーディングスキームのマルチ参照ラインイントラ予測をAV1標準に基づくビデオコーディングスキームに直接適用することはできない。
【0006】
開示された方法及びシステムは、上記の1つ又は複数の問題及び他の問題を解決することを目的としている。
【発明の概要】
【0007】
本開示の一態様はビデオデコーディング方法を含む。この方法は、ビデオ信号の複数のコーディングフレームを含むビットストリームを取得するステップと、複数のコーディングフレームのそれぞれを複数のコーディングツリーユニット(CTU)にデコーディングし、複数のCTUのそれぞれを複数の残差ブロックにデコーディングするステップと、各コーディングフレームに含まれるマルチ参照ラインイントラ予測(MRLP)フラグ及び参照サンプルに基づいて、複数の残差ブロックのそれぞれに対してコーディングブロックを復元するステップであり、コーディング効率及び圧縮性能に基づいて、イントラ予測用に選択された複数の参照ラインのそれぞれに対して、許可されたイントラ予測モードセット(AIPM)とも呼ばれる全ての利用可能なイントラ予測モードのサブセットを決定し、複数の参照ラインのそれぞれは、ゼロ以上の整数であるインデックス番号で識別される、ステップと、複数の残差ブロックのそれぞれに対して復元されたコーディングブロックを、フレームバッファに記憶することで、ビデオ信号の各フレームを再構成するステップと、再構成されたフレームを連続的に出力してビデオ信号を復元するステップとを含む。
【0008】
本開示の他の態様はビデオエンコーディング方法を含む。この方法は、ビデオ入力の現在のフレームを取得するステップと、取得された現在のフレームを複数のブロックに分割するステップと、マルチ参照ラインイントラ予測を組み込むことにより、分割されたブロックごとにシンボルレベルを予測するステップであり、隣接ブロックの複数の参照ラインに基づいてイントラ予測モードを導出し、コーディング効率及び圧縮性能に基づいて、複数の参照ラインのそれぞれに対して、許可されたイントラ予測モードセット(AIPM)とも呼ばれる全ての利用可能なイントラ予測モードのサブセットを決定し、複数の参照ラインのそれぞれが、ゼロ以上の整数であるインデックス番号で識別される、ステップと、現在のシンボルレベルから予測されたシンボルレベルを差し引くことで導出された残差シンボルレベルを変換及び量子化するステップと、変換及び量子化された残差シンボルレベルをエントロピーコーディングするステップと、エントロピーコーディングされた残差シンボルレベルを含むビットストリームを生成するステップとを含む。
【0009】
当業者は、本開示の明細書、特許請求の範囲及び図面に従って本開示の他の態様を理解することができる。
【図面の簡単な説明】
【0010】
図1】本開示の幾つかの実施形態を組み込んだ動作環境を示す。
図2】本開示の実施形態と一致する電子機器を示す。
図3】本開示の実施形態と一致するコンピュータシステムを示す。
図4】本開示の実施形態と一致するビデオエンコーダを示す。
図5】本開示の実施形態と一致する例示的なビデオコーディング方法を示す。
図6】AV1標準に基づくビデオコーディングスキームにおけるイントラ予測モードの8つの公称角度を示す。
図7】本開示の実施形態と一致するPAETHモードの上方、左側及び左上の位置を示す。
図8】本開示の実施形態と一致する再帰的イントラフィルタリングモードの例を示す。
図9】本開示の実施形態と一致する4つの参照ラインの例を示す。
図10】本開示の実施形態と一致するS1に含まれるイントラ予測モードを決定するフローチャートを示す。
図11】本開示の実施形態と一致する例示的なビデオデコーディング方法を示す。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら本発明の実施形態における技術的解決策について説明する。可能な限り、全ての図面において同じ符号を使用して同じ又は類似する部分を示す。明らかに、説明された実施形態は、本発明の実施形態の全てではなく、一部である。本発明における実施形態に基づいて、当業者が創造的な労力をしない前提で得られる他の実施形態は、本開示の保護する範囲に属する。本開示で使用される特定の用語は、以下において最初に説明される。
【0012】
多用途ビデオコーディング(Versatile Video Coding、VVC):VVCは、ジョイントビデオエクスプロレーションチーム(Joint Video Exploration Team、JVET)によって開発されてHEVC(ITU-T H.265とも呼ばれる)を引き継ぐビデオデコーディング標準である。VVCは、そのような標準の従来の世代の圧縮能力を著しく超えた圧縮能力を有するビデオコーディング技術を規定し、拡大された応用範囲での効果的な使用のために非常に多用途である。VVC標準は参照により本明細書に組み込まれる。
【0013】
AOMedia Video 1(AOMedia Video 1、AV1):AV1は、AOMedia(Alliance for Open Media)によって開発された、インターネットを介したビデオ伝送のためのオープンソースビデオコーディング標準である。AV1標準は参照により本明細書に組み込まれる。
【0014】
許可されたイントラ予測モード(Allowed Intra Prediction Mode、AIPM):隣接ブロックのイントラ予測モードから導出された現在のブロックのイントラ予測に使用することができるモードを有する1つのモードセットとして定義される。
【0015】
許可されないイントラ予測モード(Disallowed Intra Prediction Mode、DIPM):信号で示すこと、又は現在のブロックのイントラ予測に使用し、隣接ブロックのイントラ予測モードから導出することができないモードを有する1つのモードセットとして定義される。
【0016】
コンテキストベース適応2値算術コーディング(Context-based Adaptive Binary Arithmetic Coding、CABAC):CABACは、さまざまなビデオコーディング標準で使用されるエントロピーコーディングの形式の一つである。
【0017】
多用途ビデオコーディングテストモデル(Versatile video coding Test Model、VTM):VTMは、テストプロセス及びVVCアルゴリズムのエンコーダ側の説明を提供する。
【0018】
BD-Rate(Bjontegaard Delta Rate、BDR又はBDレート):BDRは、ビデオ信号の同じピーク信号対雑音比(peak signal-to-noise ratio、PSNR)のビットレートの変化を測定することにより、コーディング効率を評価する方法である。
【0019】
図1は、本開示の幾つかの実施形態を組み込んだ動作環境100を示している。図1に示すように、動作環境100はビデオ機能を持つ様々な装置を含み得る。例えば、動作環境100は、端末デバイス102、カメラデバイス104、及びモノのインターネット(internet of things、IoT)デバイス106を含み得る。他のタイプのデバイスも含んでもよい。
【0020】
動作環境100は、サーバ122、ヒューマンビジョンアプリケーション124、マシンビジョンアプリケーション126、及び様々なデバイスをサーバ122に接続する通信リンク140をさらに含み得る。ユーザ130は、さまざまなデバイスの1つ又は複数を使用、アクセス、又は制御することができる。
【0021】
端末デバイス102は、パーソナルデジタルアシスタント(personal digital assistant、PDA)、携帯電話、スマートフォン、統合メッセージングデバイス(integrated messaging device、IMD)、タブレットコンピュータ、ノートブックコンピュータ、デスクトップコンピュータ、及び他のコンピューティングデバイスなどの任意のユーザ端末を含むことができる。カメラデバイス104は、デジタルカメラ、ビデオカメラ、セキュリティカメラ、車載カメラ、及びステレオカメラなどのような任意の画像又はビデオキャプチャデバイスを含むことができる。IoTデバイス106は、デジタルドアベル、自律駆動センサー、デジタル音声アシスタント、スマートスピーカー、スマートアプライアンス、及び産業用又は商用のIoTシステムなどのカメラ機能を備える任意のタイプのIoTデバイスを含むことができる。様々な装置102、104、及び106のいずれも、移動している個人によって携帯される際に、移動又は静止可能であり得、また、自動車、トラック、タクシー、バス、電車、船、飛行機、自転車、オートバイを含む乗り物、又は同様の適切な乗り物の一部とするか、前記乗り物内に位置することができる。
【0022】
図2に、様々な装置102、104、及び/又は106のいずれかを実現するための電子機器を示している。図2に示すように、電子機器200は、ハードウェアプロセッサー202、メモリ204、カードリーダ206、ディスプレイ208、キーボード210、無線周波数(radio-frequency、RF)インターフェース212、ベースバンド214、アンテナ216、エンコーダ222、デコーダ224、カメラ226、スピーカ232及びマイク234などを含み得、図2に示す構成要素は例示であり、幾つかの構成要素は省略されてもよく、そして他の構成要素が追加されてもよい。
【0023】
プロセッサ202は、電子機器200を制御するために提供され得る。プロセッサ202は、他の構成要素との間でデータを送受信するために、1つ又は複数のバス又は他の電気接続を介して他の構成要素に接続され得る。プロセッサ202は、1つ又は複数の処理コア、例えば、4コアプロセッサ又は8コアプロセッサを含み得る。プロセッサ202は、デジタル信号処理(digital signal processing、DSP)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、特定用途向け集積回路(application specific integrated circuit、ASIC)、及びプログラマブルロジックアレイ(programmable logic array、PLA)のうちの少なくとも1つのハードウェア形式を使用して実現され得る。プロセッサ202は、また、メインプロセッサ及びコプロセッサを含み得る。メインプロセッサは中央処理ユニット(central processing unit、CPU)であり得、コプロセッサは、表示画面が表示する必要のあるコンテンツのレンダリング及び描画を担当するように配置されたグラフィックス処理ユニット(graphics processing unit、GPU)であり得る。いくつかの実施形態では、プロセッサ202は、人工知能(artificial intelligence、AI)プロセッサをさらに含み得る。AIプロセッサは、機械学習に関連するコンピューティング操作を処理するように配置されている。
【0024】
メモリ204は、高速ランダムアクセスメモリ及び不揮発性メモリ、例えば、1つ又は複数のディスク記憶デバイス又はフラッシュ記憶デバイスなどの、1つ又は複数のコンピュータ可読記憶媒体を含むことができる。メモリ204は、画像データ及び音声データの形式でデータを格納することができ、プロセッサ202の命令も格納することができる。カードリーダ206は、スマートカードインターフェース、通信カードインターフェース(例えば、近距離通信(NFC)カード)、又はユーザ情報を提供しユーザ130の認証及び許可のための認証情報を提供するのに適する加入者識別子モジュール(subscriber identifier module、SIM)カードインターフェース又は他のカードインターフェースなどの任意のタイプのポータブルカードインターフェースを含むことができる。
【0025】
また、ディスプレイ208は、画像又はビデオを表示するのに適する任意の適切なディスプレイ技術であり得る。例えば、ディスプレイ208は、液晶ディスプレイ(liquid crystal display、LCD)スクリーン、有機発光ダイオード(organic light-emitting diode、OLED)スクリーンなどを含み得、タッチスクリーンであり得る。キーボード210は、ユーザ130による情報を入力するための物理又は仮想キーボードを含み得、また、他のタイプの入力/出力デバイスを含み得る。スピーカ232及びマイクロフォン234は、電子機器200の音声を入出力するために使用され得る。
【0026】
RFインターフェース212(アンテナ216と共に)は、RF信号を送受信するためのRF回路を含み得る。RFインターフェース212は、電気信号を送信用の電磁信号に変換するか、又は受信した電磁信号を受信用の電気信号に変換することができる。RFインターフェース212は、少なくとも1つの無線通信プロトコルにより他の電子機器と通信することができる。無線通信プロトコルは、メトロポリタンエリアネットワーク、様々な世代の移動通信ネットワーク(2G、3G、4G、及び5G)、無線ローカルエリアネットワーク(local area network、LAN)、及び/又はwifi(wireless fidelity)ネットワークを含み得る。いくつかの実施形態では、RFインターフェース212は、また、近距離無線通信(near field communication、NFC)に関連する回路を含み得る。ベースバンド214は、RFインターフェース212との間の信号を処理するための回路を含み得る。
【0027】
また、カメラ226は、画像又はビデオを収集するように配置された任意のタイプのイメージング又はビデオキャプチャデバイスを含むことができる。電子機器200がユーザ130によって携帯される携帯デバイスである場合、カメラ226は、前面カメラ及び背面カメラを含み得る。当該前面カメラは、当該電子機器のフロントパネルに配置することができ、背面カメラは、電子機器の背面に配置することができる。いくつかの実施形態では、少なくとも2つの背面カメラが存在し、各背面カメラは、メインカメラ、被写界深度カメラ、広角カメラ、及び望遠カメラのいずれかであり、メインカメラと被写界深度カメラとを融合させることで背景ぼけ機能を実現し、メインカメラと広角カメラとを融合させることでパノラマ撮影及びバーチャルリアリティ(VR)撮影機能、又は他の融合撮影機能を実現する。いくつかの実施形態では、カメラ226は、フラッシュをさらに含み得る。
【0028】
エンコーダ222及びデコーダ224は、電子機器のコーデック回路と呼ばれ得、オーディオ及び/又はビデオデータのコーディング及びデコーディングを実行するのに適するか、又はプロセッサ202によって実行されるコーディング及びデコーディングを支援するのに適する。
【0029】
図2に示す電子機器200は、無線通信システムの移動端末又はユーザ機器の構造と同様な構造を含み得る。しかしながら、エンコーディング及びデコーディング、あるいはビデオ又は画像のエンコーディング又はデコーディングを必要とし得る任意の電子機器又は装置を含み得る。
【0030】
図1に戻って、電子機器200(すなわち、様々なデバイス102、104、及び/又は106のうちのいずれか1つ又は複数)は、様々なデータ(例えば、オーディオデータ、環境/動作データ、画像データ、及び/又はビデオデータ)をキャプチャ又は収集し、通信リンク140を介してデータをサーバ122に送信することができる。電子機器200は、データをサーバ122に送信する前にデータを処理又は前処理するか、又は未処理のデータをサーバ122に送信することができる。
【0031】
通信リンク140は、任意の適切なタイプの通信ネットワークを含み得、無線携帯電話ネットワーク、無線ローカルエリアネットワーク(wireless local area network、WLAN)、ブルートゥースパーソナルエリアネットワーク、イーサネットローカルエリアネットワーク、トークンリングローカルエリアネットワーク、ワイドエリアネットワーク、及びインターネットを含むがこれらに限定されない有線又は無線ネットワークの任意の組み合わせを含み得る。通信リンク140は、また、音声/データ通信のためのプライベート又はパブリッククラウドコンピューティングプラットフォームを含み得る。インターネット又は他のタイプのネットワークを含む場合に、インターネットへの接続には、長距離無線接続、短距離無線接続、及びさまざまな有線接続(電話回線、ケーブル回線、電力線、及び同様の通信経路を含む)が含まれる場合がある。
【0032】
サーバ122は、サーバクラスタ内に配置された、又は異なる場所に分散された任意のタイプのサーバーコンピュータシステム又は複数のコンピュータシステムを含むことができる。サーバ122は、また、クラウドコンピューティングプラットフォーム上のクラウドサーバーを含み得る。図3は、サーバ122の幾つかの態様を実現する例示的なコンピュータシステムを示している。
【0033】
図3に示すように、コンピュータシステム300は、プロセッサ302、記憶媒体304、モニタ306、通信モジュール308、データベース310及び周辺機器312を含むことができる。特定のデバイスは省略されてもよく、他のデバイスが含まれてもよい。
【0034】
プロセッサ302は、任意の適切な1つ又は複数のプロセッサを含み得る。さらに、プロセッサ302は、マルチスレッド又は並列処理のための複数のコアを含むことができる。記憶媒体304は、読み取り専用メモリ(Read-only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、フラッシュメモリモジュール、消去可能及び書き換え可能メモリ、ならびに大容量記憶装置(例えば、CD-ROM、Uディスク、及びハードディスク)などのメモリモジュールを含み得、記憶媒体304は、プロセッサ302によって実行される際に、様々な処理を実現するためのコンピュータプログラムを記憶することができる。
【0035】
また、周辺機器312は、キーボードや、マウスのようなI/Oデバイスを含み得る。通信モジュール308は、通信ネットワークを介して接続を確立するためのネットワークデバイスを含み得る。データベース310は、特定のデータを格納するため、及び格納されたデータに対して特定の操作(例えば、データベース検索)を実行するための1つ又は複数のデータベースを含むことができる。
【0036】
図2に戻って、エンコーダ222は、イントラモードコーディングの方法を実現するエンコーダであってもよい。この場合、電子機器200がまた、イントラモードコーディングの方法を実現すると見なされ得る。すなわち、エンコーダ122は、電子機器200内のハードウェア回路として実現され得るか、又は電子機器200によってソフトウェアプログラムとして実現され得るか、又はハードウェア回路とソフトウェアプログラムとの組み合わせとして実現され得る。図4は、本開示の開示された実施形態と一致する例示的なビデオエンコーダを示している。
【0037】
図4に示すように、ビデオエンコーダ400は、ブロック分割ユニット410、減算ユニット420、予測ユニット430、変換/量子化ユニット440、逆量子化/逆変換ユニット450、加算ユニット460、インループフィルタ470及びエントロピーエンコーダ480を含む。入力ビデオをエンコーダ400に入力し、応答として、エンコーダ400はビットストリームを出力する。
【0038】
入力ビデオは、複数のピクチャフレームを含む。各ピクチャフレームは、ブロック分割ユニット410によって一連のコーディングツリーユニット(coding tree unit、CTU)に分割される。3つのサンプルアレイを有するピクチャフレームについて、CTUは、輝度サンプルのNxNブロックと、彩度サンプルの対応する2つのNxNブロックとを含む。ブロック分割ユニット410は、また、様々な局所特性に適応するために、コーディングツリーとして示される四分木構造を使用することによって、CTUをコーディングユニット(CU)にさらに分割する。ピクチャ間(時間的)又はピクチャ内(空間的)予測を使用してピクチャ領域をコーディングする決定は、リーフCUレベルで行われる。各リーフCUは、PU分割タイプに応じて、さらに、1つ、2つ、又は4つの予測ユニット(coding unit、CU)に分割され得る。1つのPU内で、同じ予測プロセスが適用され、関連情報をPUベースのビデオデコーダーに送信する。PU分割タイプに基づく予測プロセスを適用して残差ブロックを取得した後、リーフCUは、CUのコーディングツリーと同様の別の四分木構造に従って変換ユニット(transform unit、TU)に分割できる。
【0039】
予測ユニット430は、イントラ予測、インター予測、及びインター予測とイントラ予測との組み合わせをサポートする。イントラ予測は、イントラモードコーディングとも呼ばれる。自然なビデオで提示される任意のエッジ方向をキャプチャするために、予測ユニット430は、平面(表面フィッティング)イントラ予測モード及びDC(フラット)イントラ予測モードに加えて、65個の方向(又は角度)イントラ予測モードをサポートする。予測ユニット430は、さらに、動きベクトル、参照ピクチャインデックス及び参照ピクチャリスト使用インデックス、ならびにビデオコーディング特徴に必要な追加情報を含む動きパラメータに基づくインター予測サンプル生成をサポートする。予測ユニット430は、さらに、変換スキップモードをサポートし、変換スキップモード又は変換スキップでコーディングされたCUは、1つのPUに関連付けられ、有意な残差係数、コーディングされた動きベクトルデルタ又は参照ピクチャインデックスを持たない。予測ユニット430は、さらに、マージモードをサポートし、現在のCUに使用される動きパラメータは、隣接するCU(空間的及び時間的候補を含む)、ならびに追加のスケジュールに応じて取得される。マージモードは、変換スキップモードだけでなく、任意のインター予測CUに適用可能である。予測ユニット430は、また、動きパラメータを明示的に送信することでマージモードの代替をサポートし、CUごとに、動きベクトル、各参照ピクチャリストに使用される対応する参照ピクチャインデックス及び参照ピクチャリスト使用フラグ、並びに他の必要な情報が、明示的に信号により送られる。
【0040】
減算ユニット420は、CUとPUとの間の差(又は残差)を変換/量子化ユニット440に出力する。
【0041】
変換/量子化ユニット440は、最大64×64サイズの大きなブロックサイズの変換をサポートする。サイズが64に等しい変換ブロックについて、高周波数変換係数はゼロにされ、低周波数係数のみが保持される。変換スキップモードで大きなブロックを変換する場合、変換/量子化ユニット440は、値をゼロにすることなく、ブロック全体を使用する。変換/量子化ユニット440は、また、コア変換のための複数の変換選択(multiple transform selection、MTS)をサポートする。MTSを制御するために、変換/量子化ユニット440は、それぞれ、シーケンスパラメータセット(SPS)レベルでの別個の有効化フラグを、イントラ及びインター予測に使用する。MTSがSPSレベルで有効になっている場合、CUレベルフラグを信号により送ってMTSを適用するかどうかを指示する。変換/量子化ユニット440は、また、低周波分離不可能変換(Low-Frequency Non-Separable Transfomr、LFNST)及びサブブロック変換(Sub-Block Transform、SBT)などの、VVC及びAVIドラフト標準に記載されている他の変換特徴がサポートされてもよい。
【0042】
また、変換/量子化ユニット440は、最大63個の量子化パラメータ(quantization parameter、QP)をサポートする。変換/量子化ユニット440は、また、SPSで輝度から彩度へのマッピング関係を信号により送ることによって、柔軟な、輝度から彩度へのQPマッピングをサポートする。変換/量子化ユニット440は、また、輝度成分及び彩度成分のデルタQP値をそれぞれ信号により送ることができるCUレベルQP適応をサポートする。変換/量子化ユニット440は、また、依存量子化のようなVVC及びAVI標準で説明されている他の量子化特徴をサポートする。
【0043】
変換/量子化ユニット440は、また、TUレベルフラグで指示される彩度残差の共同コーディングをサポートする。
【0044】
コンテキストベース適応2値算術コーディング(Context-based Adaptive Binary Arithmetic Coding,CABAC)は、エントロピーコーディングアルゴリズムとして説明できる。エントロピーエンコーダ480は、変換/量子化ユニット440によって出力された構文要素をコーディングするためのCABACコーディングエンジンを含む。CABACコーディングエンジンは、Golomb-Riceコーディングアルゴリズムのような算術コーディングアルゴリズムをサポートする。エントロピーエンコーダ480は、変換ブロック及び変換スキップブロックのための別個の残差コーディング構造をサポートする。エントロピーエンコーダ480は、重複しない係数グループ(CG又はサブブロック)を使用することによってコーディングブロックの変換係数をコーディングし、各CGは、可変サイズのコーディングブロックの変換係数を含む。係数グループのサイズは、チャネルタイプに関係なく、変換ブロックサイズのみに基づいて選択される。CGのサイズには、1x16、2x8、8x2、2x4、4x2、及び16x1を含んでもよい。各コーディングブロック内のCGと各CG内の変換係数は、事前定義されたスキャン順序に従ってコーディングされる。
【0045】
変換ユニット内の各コーディングブロックは複数のサブブロックに分割され、各サブブロックは複数のピクセルに分割される。複数のサブブロックは、4x4又は2x2サブブロックを含む。
【0046】
算術コーディングアルゴリズムでは、構文要素ごとに、構文要素の絶対レベル又局所近傍の構文要素の部分的に再構成された絶対レベルに応じて、確率モデルを動的に選択する。
【0047】
逆量子化/逆変換ユニット450は、変換/量子化ユニット440によって実行される量子化処理及び変換処理を逆にし、出力を加算ユニット460に供給して、ピクチャフレームを再構成する。加算ユニット460は、また、予測ユニット430の出力をもう1つの入力としてとる。再構成された画像は、インループフィルタ470によってフィルタリングされる。インループフィルタ470は、デブロッキングフィルタ、サンプル適応オフセット(sample adaptive offset、SAO)フィルタ、及び適応ループフィルタ(adaptive loop filter、ALF)を含み、これらはこの順序でカスケードされる。インループフィルタ470の出力は、予測ユニット430に入力される。
【0048】
本開示は、ビデオコーディング方法を提供する。図5は、本開示の実施形態と一致する例示的なビデオコーディング方法のフローチャートを示している。図5に示すように、ビデオコーディング方法は、ビデオ入力の現在のフレームを取得することを含む(S510)。現在のフレームを取得した後に、パーティションツリー構造に従って現在のビデオフレームを複数のブロックに分割することができる。
【0049】
S520において、取得された現在のフレームを複数のブロックに分割する。現在のビデオフレームは、さまざまな正方形及び長方形のパーティションに分割できる。正方形のパーティションは、さらに小さなパーティションに分割することができる。ただし、長方形のパーティションをさらに分割することはできない。
【0050】
S530において、現在のフレームを複数のブロックに分割した後に、マルチ参照ラインイントラ予測を組み込むことで、分割されたブロックごとにシンボルレベルを予測する。ブロックごとに、隣接ブロックの複数の参照ラインに基づいてイントラ予測モードを導出する。複数の参照ラインのそれぞれに対して、AV1標準に基づくビデオコーディングスキームで定義されたすべての利用可能なイントラ予測モードのサブセットを決定する。すべての利用可能なイントラ予測モードのサブセットは、許可されたイントラ予測モード(allowed intra prediction mode、AIPM)セットとも呼ばれる。複数の参照ラインのそれぞれは、インデックス番号で識別される。インデックス番号はゼロ以上の整数である。
【0051】
AV1標準に基づくビデオコーディングスキームでは、利用可能なイントラ予測モードの数は62であり、56個の角度イントラ予測モード、5つの平滑化モード、及び1つの、輝度予測に基づく彩度決定モードを含む。複数の参照ラインがイントラ予測で適用され、複数の参照ラインのためにすべてのイントラ予測モードが含まれる場合に、ビデオコーディングの複雑さはかなり大きくなる。複数の参照ラインには、インデックス番号がゼロに等しいゼロ参照ラインと、インデックス番号がゼロよりも大きい1つ又は複数の非ゼロ参照ラインとが含まれる。ビデオコーディングの複雑さを軽減するために、参照ラインごとに許可されるイントラ予測モードの数を制限する必要がある。
【0052】
複数の参照ラインのイントラ予測には、特定の制限が適用され得る。狭いブロックについて、複数の参照ラインのイントラ予測を無効にすることができる。狭いブロックは、幅W、高さHを有し、abs(logW-logH)>1である。小さなブロックについて、複数の参照ラインのイントラ予測を無効にすることができる。小さなブロックのサイズは8x8以下である。複数の参照ラインのイントラ予測は、コーディングツリーユニット(CTU)内のブロックの第1行のラインを無効にして、現在のCTUラインの外側の拡張参照サンプルを使用することを防止する。その他の制限も適用される場合がある。
【0053】
本開示は、コーディング効率及び圧縮性能を改善するために、マルチ参照ラインイントラ予測を有するビデオコーディングの方法を提供する。コーディング効率と圧縮性能に基づいて複数の参照ラインのそれぞれに対して決定された対応するイントラ予測モードは、AV1標準に基づくビデオコーディングスキームで定義されたすべての利用可能なイントラ予測モードのサブセットである。当該サブセットはAIPMセットとも呼ばれる。AIPMセットに含まれるイントラ予測モードは、図4に示されるビデオエンコーダ400のようなビデオコーディングデバイスによって信号により伝えられる。AIPMセットに含まれるイントラ予測モードの数は、対応するビデオコーディングスキームで定義された利用可能なすべてのイントラ予測モードの数よりも少ないため、AIPMセットに含まれるイントラ予測モードを示すために必要なビットは少なくなる。また、イントラ予測モードに加えて、インター予測モードでブロックごとにシンボルレベル(symbol level)を予測し得る。
【0054】
シンボルレベルを予測した後に、残差シンボルレベルを変換及び量子化する。残差シンボルレベルは、現在のシンボルレベルと予測されたシンボルレベルとの差である。
【0055】
AV1標準に基づくビデオコーディングスキームでのイントラ予測モードには、56個の角度(又は方向)イントラ予測モード、5つの非角度の平滑化イントラ予測モード、1つの彩度のみのイントラ予測モード、及びその他のいくつかのイントラ予測モードを含む。8つの方向(又は角度)モードは、45~207度の角度に対応する。方向テクスチャにより多くの種類の空間冗長性を活用するために、方向イントラ予測モードは、より細かい粒度を持つ角度セットに拡張される。8つの方向モードの角度をわずかに変更して公称角度とし、これらの8つの公称角度は公称イントラ角度とも呼ばれ、V_PRED、H_PRED、D45_PRED、D135_PRED、D113_PRED、D157_PRED、D203_PRED及びD67_PREDと名付けられ、90°、180°、45°、135°、113°、157°、203°、及び67°に対応し、図6に示されるようである。各公称角度は7つのより細かい角度に拡張される。合計56個の方向角(イントラ角度又は予測角度とも呼ばれる)が定義されている。各予測角度は、公称イントラ角度と角度デルタで表される。当該角度デルタは、-3~3で、3度のステップサイズを乗算する。一般的な方法で方向イントラ予測モードを実現するために、56個の方向イントラ予測モードはすべて、各ピクセルを参照サブピクセル位置に投影し、2タップバイリニアフィルタによって参照ピクセルを補間する統合された方向予測子を使用して実現される。
【0056】
イントラ予測モードには、DCモード、PAETHモード、SMOOTHモード、SMOOTH_Vモード、及びSMOOTH_Hモードの5つの非方向の平滑化イントラ予測モードをさらに含む。DCモードの場合、左側及び上方の隣接サンプルの平均が、予測されようとするブロックの予測子として使用される。PAETHモードの場合、最初に上、左、左上の参照サンプルを取得し、次に(上+左-左上)に最も近い値が、予測されようとするピクセルの予測子として設定される。図7は、現在のブロック内の1つのピクセルの上方、左、及び左上のサンプルの位置を示している。SMOOTHモード、SMOOTH_Vモード、及びSMOOTH_Hモードの場合、垂直方向又は水平方向における二次補間、又は両方向における平均を使用してブロックを予測する。
【0057】
エッジ上の参照との減衰する空間相関をキャプチャするために、フィルタイントラ(FILTER INTRA)モードは輝度ブロック用に設計される。5つのフィルターイントラモードが定義されている。5つのフィルターイントラモードのそれぞれは、4x2パッチ内のピクセルと7つの隣接するネイバーと間の相関を反映する8つの7タップフィルタのセットによって表される。つまり、7タップフィルタの重み係数は位置に依存する。8x8ブロックを例として、それは、図8に示されるように、8つの4x2パッチに分割される。これらのパッチは、図8のB0、B1、B2、B3、B4、B5、B6、及びB7によって示されている。パッチごとに、R0~R7で示される7つの隣接するネイバーを使用して、現在のパッチ内のピクセルを予測する。パッチB0の場合、隣接するすべてのネイバーはすでに再構成されている。ただし、他のパッチの場合、隣接するすべてのネイバーが再構成されているわけではない。隣接するネイバーの予測値が参照として使用される。たとえば、パッチB7のすべての隣接するネイバーが再構成されているわけではないため、代わりに隣接するネイバー(つまり、B5とB6)の予測サンプルを使用する。
【0058】
輝度予測に基づく彩度決定(Chroma from Luma、CfL)は、彩度ピクセルを、同時再構成された輝度ピクセルの線形関数としてモデリングする彩度のみのイントラ予測子である。CfL予測は次のように表される。
【数1】
ACは、輝度成分のAC寄与を示し、αは線形モデルのパラメータを示し、DCは彩度成分のDC寄与を示す。具体的に、再構成された輝度ピクセルを彩度解像度にサブサンプリングし、次に平均値を差し引いて、AC寄与を形成する。AC寄与から彩度AC成分を近似するために、デコーダがスケーリングパラメーターを計算する代わりに、CfLは元の彩度ピクセルに基づいてパラメータαを決定し、ビットストリームでそれらを信号により送る。この方法は、デコーダの複雑さを軽減し、より正確な予測が可能になる。彩度成分のDC寄与に関しては、イントラDCモードを使用して計算され、当該イントラDCモードは、ほとんどの彩度コンテンツに十分であり、成熟した高速実現を備える。
【0059】
マルチ参照ラインイントラ予測は、複数の参照ラインを使用してイントラ予測を行い、図4に示すビデオエンコーダ400は、イントラ予測子を生成するためにどの参照ラインを使用するかを決定し信号により送る。イントラ予測モードの前に、参照ラインのインデックス番号を信号で送り、非ゼロ参照ラインのインデックス番号を信号により送る場合に、最確モード(most probable mode、MPM)又は同等のもののみが許可される。図9に示すように、4つの参照ラインの例を示し、各参照ラインは、6つのセグメント(すなわち、セグメントAからF)、及び左上の参照サンプルを含む。また、それぞれセグメントB及びEからの最も近いサンプルでセグメントAとFを埋め込む。
【0060】
図9に示すように、参照ラインのインデックス番号は、参照ラインが現在のブロックから離れるにつれて順次増加する。現在のブロックに隣接する参照ラインはゼロ参照ラインと呼ばれ、ゼロに等しいインデックス番号を有し、このゼロ参照ラインは、図9の参照ライン0である。ゼロ参照ラインに対応するAIPMセットはS2と表される。インデックス番号がゼロよりも大きい参照ラインは非ゼロ参照ラインと呼ばれる。非ゼロ参照ラインに対応するAIPMセットはS1と表される。S2は、S1の少なくとも全てのイントラ予測モードを含む。S1はS2のサブセットである。
【0061】
図5に戻って、S540において、現在のシンボルレベルから予測されたシンボルレベルを差し引くことで導出された残差シンボルレベルを変換及び量子化する。大きなブロックサイズの変換は、最大64x64のサイズを含む。サイズが64に等しい変換ブロックについて、高周波数変換係数はゼロにされ、低周波数係数のみが保持される。変換スキップモードで大きなブロックを変換する場合、値をゼロにすることなく、ブロック全体を使用する。さらに、コア変換のための複数の変換選択(multiple transform selection、MTS)をサポートする。MTSを制御するために、シーケンスパラメータセット(SPS)レベルで、イントラ予測及びインター予測にそれぞれ個別の有効化フラグを使用する。MTSがSPSレベルで有効になっている場合、CUレベルフラグを信号で送ってMTSが適用されているかどうかを示す。低周波分離不可能変換(LFNST)及びサブブロック変換(SBT)などの、他の変換特徴がサポートされてもよい。
【0062】
また、変換及び量子化プロセスは、最大63個の量子化パラメータ(quantization parameter、QP)をサポートする。SPSで輝度から彩度へのマッピング関係を信号により送ることで、柔軟な、輝度から彩度へのQPマッピングもサポートされる。輝度成分及び彩度成分のデルタQP値を別々に信号により送ることができるCUレベルのQP適応もサポートされる。依存量子化のような他の量子化特徴もサポートされ得る。
【0063】
図5に戻って、S550において、変換及び量子化された残差シンボルレベルをエントロピーコーディングする。エントロピーコーディングアルゴリズムは、コンテキストベース適応2値算術コーディング(Context-based Adaptive Binary Arithmetic Coding、CABAC)であり得る。CABACコーディングエンジンは、変換及び量子化プロセスから出力される構文要素をコーディングするために使用され得る。CABACコーディングエンジンは算術コーディングアルゴリズム、例えばGolomb-Riceコーディングアルゴリズムをサポートする。変換ブロック及び変換スキップブロックについて、それぞれの残差コーディング構造をサポートすることができる。重複しない係数グループ(CG(coefficient group)又はサブブロック)を使用してコーディングブロックの変換係数をコーディングすることができ、各CGは、可変サイズのコーディングブロックの変換係数を含む。係数グループのサイズは、チャネルタイプに関係なく、変換ブロックサイズのみに基づいて選択される。CGのサイズには、1x16、2x8、8x2、2x4、4x2、及び16x1を含んでもよい。各コーディングブロック内のCG及び各CG内の変換係数は、事前定義されたスキャン順序に従ってコーディングされる。
【0064】
図5に示すように、S560において、エントロピーコーディングされた残差シンボルレベルを含むビットストリームを生成する。エントロピーコーディングの結果として、エントロピーコーディングされた残差シンボルレベルを含むビットストリームを生成する。ビットストリームは送信及び/又は記憶されてもよい。デコーダは、本開示と一致するビデオコーディング方法に対応するビデオデコーディング方法を実行して、元のビデオを復元することができる。
【0065】
従って、本開示はビデオコーディング方法を提供する。当該方法は、イントラ予測に複数の参照ラインを含め、且つ各参照ラインに対してAIPMセットを決定することにより、複数の参照ラインのイントラ予測モードの総数が制限されるようにする。複数の参照ラインのイントラ予測モードの総数を減らすことにより、イントラ予測モードのインデックス番号とシグナリングフラグとをコーディングするために必要なビットが少なくなり、それによってビデオコーディングスキームのコーディング効率と圧縮性能を向上させる。
【0066】
本開示と一致するエンコーダ及びデコーダの実施形態は、処理回路(例えば、1つ又は複数のプロセッサ、あるいは1つ又は複数の集積回路)で実現されてもよく、当該処理回路は、非一時的なコンピュータ可読記憶媒体に記憶されたプログラム命令を実行する。
【0067】
図10は、本開示の実施形態と一致するS1に含まれるイントラ予測モードのフローチャートを示している。一実施形態において、図10に示すように、S1010において、現在のブロックのサイズ及び隣接ブロックのイントラ予測モードにかかわらず、S1には、公称角度を持つ角度イントラ予測モードが含まれる。現在のブロックのサイズ又は隣接ブロックのイントラ予測モードにかかわらず、S1には、45°、67°、90°、113°、135°、157°、180°及び203°の8つの公称角度の角度イントラ予測モードが含まれる。
【0068】
S1020において、現在のブロックのサイズ、及び隣接ブロックのイントラ予測モードにかかわらず、S1には、SMOOTH_Vモード又はSMOOTH_Hモードのどちらか一方が含まれる。SMOOTH_Vモード及びSMOOTH_Hモードは、それぞれ、垂直方向又は水平方向における二次補間を用いたイントラ予測モードである。
【0069】
現在のブロックの高さが現在のブロックの幅以上である場合に、SMOOTH_VモードがS1に含まれる。現在のブロックの幅が現在のブロックの高さよりも大きい場合に、SMOOTH_HモードがS1に含まれる。
【0070】
代わりに、現在のブロックの幅が現在のブロックの高さ以上である場合に、SMOOTH_VモードがS1に含まれる。現在のブロックの高さが現在のブロックの幅よりも大きい場合に、SMOOTH_HモードがS1に含まれる。
【0071】
S1030において、S1において、SMOOTH_Vモード又はSMOOTH_Hモード以外の如何なる非角度イントラ予測モードも除外される。可能性の低いイントラ予測モードを除外することにより、S1に含まれるイントラ予測モードの数は、コーディング効率と圧縮性能を向上させるために制限されている。
【0072】
一実施形態において、S1及びS2に含まれるイントラ予測モードは以下によって決定され、S2を第1のレベル及び第2のレベルに分割し、S2の第1のレベルで2個のイントラ予測モードを含み、S2の第2のレベルで2個のイントラ予測モードを含み、L及びMは1よりも大きい整数であり、S1には、S2の第1のレベルでの角度イントラ予測モードを含む。従って、S1及びS2に含まれるイントラ予測モードを効果的にコーディングすることができる。
【0073】
同様に、別の実施形態では、S1及びS2に含まれるイントラ予測モードは以下によって決定され、S2を第1のレベル、第2のレベル及び第3のレベルに分割し、S2の第1のレベルで2個のイントラ予測モードを含み、S2の第2のレベルで2個のイントラ予測モードを含み、S2の第3のレベルで2個の予測モードを含み、L、M及びNは1よりも大きい整数であり、S1には、S2の第1のレベル及び第2のレベルでの角度イントラ予測モードを含む。従って、S1及びS2に含まれるイントラ予測モードを効果的にコーディングすることができる。
【0074】
幾つかの実施形態では、隣接ブロックのイントラ予測モードの一つが角度イントラ予測モードである場合に、本開示と一致するビデオコーディング方法は、また、S1に非公称角度である少なくとも1つの角度イントラ予測モードを含めてもよい。
【0075】
ゼロ参照ラインは、非ゼロ参照ラインよりも現在のブロックに近いので、マルチ参照ラインイントラ予測において、S2はS1よりも大きな影響を与える。従って、S1はS2のサブセットである。しかしながら、S2に含まれる最確イントラ予測モードはS1にも含まれる。一例では、同様に、S2のすべての角度イントラ予測モードがS1に含まれていてもよい。他方で、本開示は、S1及びS2が全く同じであることを妨げない。
【0076】
別の例では、角度イントラ予測モードは、非角度イントラ予測モードよりも可能性があるイントラ予測モードと見なされる。S2のすべての角度イントラ予測モードはS1にも含まれるが、S2の全ての非角度イントラ予測モードはS1において除外される。代わりに、S1には、S2よりも多くの角度イントラ予測モードが含まれてもよい。
【0077】
また、S1に含まれるイントラ予測モードの数は、対応する参照ラインの隣接ブロックのイントラ予測モードに依存し得る。N個の隣接ブロックから、S1及びS2に含まれるイントラ予測モードを導出する。N個の隣接ブロックのうちのM個の隣接ブロックが特定のイントラ予測モードを含む場合に、S1に含まれるイントラ予測モードの数を減らすことができる。この場合、M及びNは正の整数であり、且つMはN以下である。特定のイントラ予測モードは、Cモード、再帰モード、PAETHモード、SMOOTHモード、SMOOTH_Hモード及びSMOOTH_Vモードなどの非角度イントラ予測モードを含み、これらは上記の実施形態で説明された。一例において、M=2且つN=2である。S1に含まれるイントラ予測モードの数はゼロに減少する。この場合、現在のブロックのためのイントラ予測モードを導出することから、対応する参照ラインの隣接ブロックは除外され、ビデオコーディングプロセスにおいて、対応する参照ラインのインデックス番号は、信号により送られない。
【0078】
別の例では、S1に含まれるイントラ予測モードの数は、対応する参照ラインの隣接ブロックのイントラ予測モード及びインデックス番号の両方に依存し得る。参照ラインのインデックス番号は、隣接ブロックと現在のブロックとの近接性を反映している。S1に含まれるイントラ予測モードを決定する場合に、対応する参照ラインのインデックス番号を含めることは、近接性情報を考慮する。例えば、インデックス番号が小さいほど、S1に含まれるイントラ予測モードの数が大きくなる。
【0079】
別の例では、彩度成分について、非ゼロ参照ラインのありとあらゆる隣接ブロックが少なくとも1つの角度イントラ予測モードを含む場合にのみ、対応する非ゼロ参照ラインは、イントラ予測モードを導出するために、マルチ参照ラインイントラ予測プロセスに含まれ得る。
【0080】
別の例では、彩度成分について、非ゼロ参照ラインのありとあらゆる隣接ブロックが同じ角度イントラ予測モードを含む場合にのみ、対応するゼロ参照ラインは、イントラ予測モードを導出するために、マルチ参照ラインイントラ予測プロセスに含まれ得る。
【0081】
本開示の実施形態では、ビデオコーディング方法は、AV1標準に基づくビデオコーディングスキームでのマルチ参照ラインイントラ予測をサポートする。各参照ラインに含まれるイントラ予測モードの数は、コーディング効率と圧縮性能を向上させるために制限されている。
【0082】
本開示は、さらに、ビデオデコーディング方法を提供する。図11は、本開示の実施形態と一致する例示的なビデオデコーディング方法を示している。図11に示すように、ビデオ入力の複数のコーディングフレームを含むビットストリームを取得する(S1110)。ビットストリームは、ビデオコーディングシステムが図5に示すビデオコーディング方法を実行することで生成されてもよい。
【0083】
S1120において、複数のコーディングフレームのそれぞれを複数のCTUにデコーディングし、複数のCTUのそれぞれを複数の残差ブロックにデコーディングする。ビットストリームは、複数のCTUの境界、及び複数のCTUのそれぞれに含まれる複数の残差ブロックの境界を指示するために、ヘッダ情報を含む。複数の残差ブロックのそれぞれはエントロピーコーディングされてもよい。エントロピーデコーディング処理とそれに続く逆変換及び逆量子化処理を実行して、複数の残差ブロックのそれぞれを取得することができる。エントロピーデコーディング処理と、逆変換及び逆量子化処理とは、図5に示すビデオコーディング方法のS540及びS550で実行されたエントロピーコーディング処理及び変換と量子化処理を反転させる。
【0084】
S1130において、各コーディングフレームに含まれる参照サンプル及びMRLPフラグに基づいて、複数の残差ブロックのそれぞれについてのコーディングブロックを復元する。具体的に、図5に示すビデオコーディング方法のS530で決定された各コーディングフレームに含まれるMRLPフラグ及び参照サンプルに基づいて、MRLPプロセスを反転させることによって、対応する残差ブロックからコーディングブロックをデコーディングする。
【0085】
次いで、複数のCTUのそれぞれの複数の残差ブロックのそれぞれに対して復元されたコーディングブロックをフレームバッファに格納して、ビデオ信号の各フレームを再構成する(S1140)。このプロセスは、図5に示すビデオコーディング方法のS520を反転させることによって、複数のコーディングブロックをCTUに組み立て、複数のCTUをビデオ信号のフレームに組み立てる。
【0086】
最後に、再構成されたフレームを連続的に出力してビデオ信号を復元する(S1150)。このプロセスは、図5に示すビデオコーディング方法のS510を反転させる。
【0087】
本開示の実施形態では、ビデオコーディング方法は、AV1標準に基づくビデオコーディングスキームでのマルチ参照ラインイントラ予測をサポートする。各参照ラインに含まれるイントラ予測モードの数は、コーディング効率と圧縮性能を向上させるために制限されている。
【0088】
本開示の原理及び実施形態は、明細書において特定の実施形態を使用して説明されたが、実施形態の説明は、本開示の方法及び核となるアイデアを理解するのを助けることのみを目的とする。その一方で、当業者であれば、本開示のアイデアに基づいて、具体な実施形態及び適用範囲を変更することができる。要するに、明細書は、本開示の限定として解釈されるべきではない。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
【国際調査報告】