JP2022511850A - エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法 - Google Patents

エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法 Download PDF

Info

Publication number
JP2022511850A
JP2022511850A JP2021531933A JP2021531933A JP2022511850A JP 2022511850 A JP2022511850 A JP 2022511850A JP 2021531933 A JP2021531933 A JP 2021531933A JP 2021531933 A JP2021531933 A JP 2021531933A JP 2022511850 A JP2022511850 A JP 2022511850A
Authority
JP
Japan
Prior art keywords
block
predicted
prediction
boundary
blocks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021531933A
Other languages
English (en)
Other versions
JP7275270B2 (ja
Inventor
ワン,ビァオ
メヘル コトラ,アナンド
エセンリク,セミフ
ガオ,ハン
チェン,ジェンレェ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2022511850A publication Critical patent/JP2022511850A/ja
Priority to JP2023075905A priority Critical patent/JP2023090864A/ja
Application granted granted Critical
Publication of JP7275270B2 publication Critical patent/JP7275270B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

符号化及び復号のための機器及び方法が提供される。当該方法は、2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するステップであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、ステップを含む。当該方法は、前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定するか、前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定するステップを更に含む。

Description

[関連出願]
本願は、米国仮出願番号第62/776,491号、2018年12月7日出願、名称「AN ENCODER, A DECODER AND CORRESPONDING METHODS OF DEBLOCKING FILTER ADAPTATION」、及び米国仮出願番号第62/792,380号、2019年1月14日出願、名称「AN ENCODER, A DECODER AND CORRESPONDING METHODS OF DEBLOCKING FILTER ADAPTATION」の利益を主張し、該出願の両方は参照によりここに組み込まれる。
[技術分野]
本願(開示)の実施形態は、概して、ピクチャ処理の分野に関し、特に、エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法に関する。
ビデオ符号化(ビデオ符号化及び復号)は、広範囲のデジタルビデオアプリケーション、例えば、放送用デジタルテレビ、インターネット及び移動体ネットワークを介するビデオ送信、ビデオチャットのようなリアルタイム会話アプリケーション、ビデオ会議、DVD及びBlue-rayディスク、ビデオコンテンツ取得及び編集システム、及びセキュリティアプリケーションのカムコーダで使用される。
比較的短いビデオでも描写するために必要なビデオデータの量は相当なものになり得る。これは、データが限られた帯域幅能力を有する通信ネットワークに渡りストリーミングされる又はその他の場合に通信されるとき、困難をもたらすことがある。従って、ビデオデータは、通常、今日の電気通信ネットワークに渡り通信される前に、圧縮される。ビデオが記憶装置に格納されるとき、メモリリソースが限られていることがあるので、ビデオのサイズも問題になり得る。ビデオ圧縮装置は、送信又は記憶の前に、ソースにおいてビデオデータを符号化するためにソフトウェア及び/又はハードウェアを度々使用し、それによりデジタルビデオ画像を表現するために必要なデータの量を削減する。圧縮されたデータは、次に、ビデオデータを復号するビデオ伸長装置により宛先において受信される。限られたネットワークリソース及びより高いビデオ品質の増え続ける要求に伴い、ピクチャ品質を僅かしか又は全く犠牲にせずに圧縮率を向上する改良された圧縮及び伸長技術が望ましい。
本願の実施形態は、独立請求項に従い符号化及び復号の機器及び方法を提供する。
前述の及び他の目的は、独立請求項の主題により達成される。更なる実装形式は、従属請求項、説明、及び図面から明らかである。
第1の態様によると、本発明は符号化の方法に関し、前記符号化は復号又は符号化を含み、前記方法は、2個のブロックのうちの少なくとも1個がCIIP(又はMH)予測によるブロックであるかどうかを決定するステップであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、ステップ、を含む。当該方法は、前記2個のブロックのうちの少なくとも1個がCIIPによるブロックであるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定するか、前記2個のブロックのうちのいずれもCIIPによるブロックではないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定するステップを更に含む。
本発明の第1の態様による方法は、本発明の第2の態様による機器により実行できる。本発明の第2の態様による機器は、2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するよう構成される決定ユニットであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、決定ユニットを含む。本発明の第2の態様による前記機器は、前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定し、前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定する設定ユニットを更に含む。
本発明の第2の態様による方法の更なる特徴及び実装形式は、本発明の第1の態様による機器の特徴及び実装形式に対応する。
第3の態様によると、本発明は、プロセッサとメモリとを含む、ビデオストリームを復号する機器に関する。前記メモリは、前記プロセッサに第1の態様による方法を実行させる命令を格納する。
第4の態様によると、本発明は、プロセッサとメモリとを含む、ビデオストリームを符号化する機器に関する。前記メモリは、前記プロセッサに第1の態様による方法を実行させる命令を格納する。
第5の態様によると、実行されると1つ以上のプロセッサをビデオデータを符号化するよう構成させる命令を格納したコンピュータ可読記憶媒体が提案される。前記命令は、前記1つ以上のプロセッサに、第1又は第2の態様又は第1の態様の任意の可能な実施形態による方法を実行させる。
第6の態様によると、本発明は、コンピュータ上で実行されると第1の態様又は第1の態様の任意の可能な実施形態による方法を実行するためのプログラムコードを含むコンピュータプログラムに関する。
本発明の実施形態によると、前記2個のブロックのうちの少なくとも1個がCIIPによるブロックであるとき、前記境界強度を前記第1値に設定することにより(例えば、2に設定される)、CIIP予測の適用により予測されるブロックエッジのデブロッキングフィルタの機会が増大される。
1つ以上の実施形態の詳細は、添付の図面及び以下の説明において説明される。他の特徴、目的、及び利点は、説明、図面、及び請求項から明らかになるだろう。
以下では、本発明の実施形態は、添付の図面及び図を参照して更に詳細に説明される。
本発明の実施形態を実施するよう構成されるビデオ符号化システムの例を示すブロック図である。 本発明の実施形態を実施するよう構成されるビデオ符号化システムの別の例を示すブロック図である。 本発明の実施形態を実施するよう構成されるビデオエンコーダの例を示すブロック図である。 本発明の実施形態を実施するよう構成されるビデオデコーダの例示的な構造を示すブロック図である。 符号化機器又は復号機器の例を示すブロック図である。 符号化機器又は復号機器の別の例を示すブロック図である。 結合インターイントラ予測(combined inter-intra prediction (CIIP))を適用されたCU内の全部のサブブロック境界の例を示す。 境界のP及びQブロックの例を示す。 実施形態1のBs導出処理の例を示す。 VVCにおけるBs導出処理の例を示す。 実施形態2のBs導出処理の例を示す。 実施形態3のBs導出処理の例を示す。 8×8サンプルグリッドと重なり合う(揃えられる)CU内の全部のサブブロックエッジのデブロッキングの例を示す。 4×4サンプルグリッドと重なり合うCU内の全部のサブブロックエッジのデブロッキングの例を示す。 境界強度の導出処理のための機器の例示的な構造を示すブロック図である。 コンテンツ配信サービスを実現するコンテンツ供給システム3100の例示的な構造を示すブロック図である。 端末装置の例の構造を示すブロック図である。
以下では、明示的に断りのない場合、同一の参照符号は同一の又は少なくとも機能的に等価な特徴を表す。
以下の説明では、本開示の部分を形成し、図示により本発明の実施形態の特定の態様又は本発明の実施形態が使用され得る特定の態様を示す、添付の図面を参照する。本発明の実施形態は、他の態様で使用され、図に示されない構造的又は論理的変化を含んでよいことが理解される。以下の詳細な説明は、従って、限定的意味と考えられるべきではなく、本発明の範囲は添付の特許請求の範囲により定められる。
例えば、記載の方法に関連する開示は、方法を実行するよう構成される対応する装置又はシステムについても当てはまり、逆も同様である。例えば、1又は複数の特定の方法のステップが説明される場合、1つ以上のユニットが明示的に説明され又は図示されない場合でも、対応する装置は、説明される1又は複数の方法のステップを実行するために、1又は複数のユニット、例えば機能ユニットを含んでよい(例えば、1つのユニットが1又は複数のステップを実行し、又は複数のユニットの各々が複数のステップのうちの1つ以上を実行する)。他方で、例えば、特定の機器が1又は複数のユニット、例えば機能ユニットに基づき説明される場合、1又は複数のステップが明示的に説明され又は図示されない場合でも、対応する方法は、1又は複数のユニットの機能を実行するための1つのステップを含んでよい(例えば、1つのステップが1又は複数のユニットの機能を実行し、又は複数のステップの各々が複数のユニットのうちの1つ以上の機能を実行する)。更に、ここで説明される種々の例示的な実施形態及び/又は態様の特徴は、特に断りのない限り、互いに結合されてよいことが理解される。
ビデオ符号化は、標準的に、ビデオ又はビデオシーケンスを形成する、ピクチャのシーケンスの処理を表す。用語「ピクチャ」の代わりに、用語「フレーム」又は「画像」がビデオ符号化の分野では同義語として使用され得る。ビデオ符号化(又は一般的に符号化)は、ビデオ符号化及びビデオ復号の2つの部分を含む。ビデオ符号化は、ソース側で実行され、標準的に、元のビデオピクチャを処理して(例えば、圧縮による)、(より効率的な記憶及び/又は伝送のために)ビデオピクチャを表現するために必要なデータ量を削減することを含む。ビデオ復号は、宛先側で実行され、標準的に、エンコーダと比べて逆の処理を含み、ビデオピクチャを再構成する。ビデオピクチャ(又は一般的にピクチャ)の「符号化」を参照する実施形態は、ビデオピクチャ又はそれぞれのビデオシーケンスの「符号化」又は「復号」に関連すると理解されるべきである。符号化部分及び復号部分の結合は、コーデック(CODEC (Coding and Decoding))とも呼ばれる。
無損失ビデオ符号化の場合には、元のビデオピクチャが再構成可能である。つまり、再構成されたビデオピクチャは、元のビデオピクチャと同じ品質を有する(伝送損失、又は記憶若しくは伝送中に他のデータ損失が無いと仮定する)。損失ビデオ符号化の場合には、例えば量子化による更なる圧縮が実行され、ビデオピクチャを表現するデータ量を削減する。これは、デコーダで完全に再構成できない。つまり、再構成されたビデオピクチャの品質は、元のビデオピクチャの品質と比べて低い又は悪い。
幾つかのビデオ符号化標準は、「損失ハイブリッドビデオコーデック」のグループに属する(つまり、サンプルドメインにおける空間及び時間予測と、変換ドメインにおける量子化を適用する2D変換符号化と、を結合する)。ビデオシーケンスの各ピクチャは、標準的に、重なり合わないブロックのセットにパーティションされ、符号化は、標準的に、ブロックレベルで実行される。言い換えると、エンコーダにおいて、例えば空間(イントラピクチャ)予測及び/又は時間(インターピクチャ)予測を用いて予測ブロックを生成し、予測ブロックを現在ブロック(現在処理されている/処理されるべきブロック)から減算して残差ブロックを取得し、残差ブロックを変換し、及び変換ドメインで残差ブロックを量子化して、伝送されるべきデータ量を削減し(圧縮)することにより、ビデオは標準的にブロック(ビデオブロック)レベルで処理され、つまり符号化される。一方で、デコーダにおいて、エンコーダと比べて逆の処理が、符号化又は圧縮されたブロックに対して適用されて、提示するために現在ブロックを再構成する。更に、エンコーダは、デコーダ処理ループを複製して、後続のブロックを処理する、つまり符号化するために、両方が同一の予測(例えば、イントラ及びインター予測)及び/又は再構成を生成するようにする。
ビデオ符号化システム10の以下の実施形態では、ビデオエンコーダ20及びビデオデコーダ30は図1~3に基づき説明される。
図1Aは、本願の技術を利用し得る例示的な符号化システム10、例えばビデオ符号化システム10(又は略して符号化システム10)を示す概略的ブロック図である。ビデオ符号化システム10のビデオエンコーダ20(又は略してエンコーダ20)及びビデオデコーダ30(又は略してデコーダ30)は、本願で説明される種々の例に従う技術を実行するよう構成され得る装置の例を表す。
図1Aに示すように、符号化システム10は、符号化ピクチャデータ21を、例えば符号化ピクチャデータ13を復号する宛先装置14に提供するよう構成されるソース装置12を含む。
ソース装置12は、エンコーダ20を含み、追加でつまり任意で、ピクチャソース16、プリプロセッサ(又は前処理ユニット)18、例えばピクチャプリプロセッサ18、及び通信インタフェース又は通信ユニット22を含んでよい。
ピクチャソース16は、任意の種類のピクチャキャプチャ装置、例えば現実のピクチャをキャプチャするカメラ、及び/又は任意の種類のピクチャ生成装置、例えばコンピュータアニメーションピクチャを生成するコンピュータグラフィックプロセッサ、又は現実世界のピクチャ、コンピュータの生成したピクチャ(例えば、スクリーンコンテンツ、仮想現実(virtual reality (VR))ピクチャ)及び/又はそれらの任意の組み合わせ(例えば、拡張現実(augmented reality (AR))ピクチャ)を取得し及び/又は提供する任意の種類の他の装置、を含み又はそれであってよい。ピクチャソースは、前述のピクチャのうちのいずれかを格納する任意の種類のメモリ又は記憶であってよい。
プリプロセッサ18及び前処理ユニット18により実行される処理と対照的に、ピクチャ又はピクチャデータ17は、生ピクチャ又は生ピクチャデータ17とも呼ばれてよい。
プリプロセッサ18は、(生)ピクチャデータ17を受信し、ピクチャデータ17に前処理を実行して、前処理済みピクチャ19又は前処理済みピクチャデータ19を取得するよう構成される。プリプロセッサ18により実行される前処理は、例えばトリミング、色形式変換(例えば、RGBからYCbCrへ)、色補正、又はノイズ除去を含んでよい。前処理ユニット18は任意的コンポーネントであってよいことが理解できる。
ビデオエンコーダ20は、前処理済みピクチャデータ19を受信し、符号化ピクチャデータ21を提供するよう構成される(更なる詳細は、例えば図2に基づき後述される)。
ソース装置12の通信インタフェース22は、符号化ピクチャデータ21を受信し、符号化ピクチャデータ21(又はその任意の更なる処理済みバージョン)を通信チャネル13を介して別の装置、例えば宛先装置14又は任意の他の装置へ記憶又は直接再構成のために送信するよう構成されてよい。
宛先装置14は、デコーダ30(例えば、ビデオデコーダ30)を含み、追加で、つまり任意で、通信インタフェース又は通信ユニット28、ポストプロセッサ32(又は後処理ユニット32)、及びディスプレイ装置34を含んでよい。
宛先装置14の通信インタフェース28は、符号化ピクチャデータ21(又はその任意の更なる処理済みバージョン)を、例えばソース装置12から直接に又は任意の他のソース、例えば記憶装置、例えば符号化ピクチャデータ記憶装置から受信し、符号化ピクチャデータ21をデコーダ30へ提供するよう構成される。
通信インタフェース22及び通信インタフェース28は、符号化ピクチャデータ21又は符号化データ13を、ソース装置12と宛先装置14との間の直接通信リンク、例えば直接有線又は無線接続、又は任意の種類のネットワーク、例えば有線又は無線ネットワーク、又はそれらの任意の組み合わせ、又は任意の種類の私設及び公衆ネットワーク、又はそれらの任意の種類の組み合わせを介して送信又は受信するよう構成されてよい。
通信インタフェース22は、通信リンク又は通信ネットワークを介して送信するために、例えば、符号化ピクチャデータ21を適切な形式、例えばパケットにパッケージし、及び/又は任意の種類の送信符号化若しくは処理を用いて符号化ピクチャデータを処理するよう構成されてよい。
通信インタフェース28は、通信インタフェース22の相手方を形成し、例えば、送信されたデータを受信し、任意の種類の対応する送信復号若しくは処理を用いて送信データを処理し、及び/又はパッケージ解除して符号化ピクチャデータ21を取得するよう構成されてよい。
通信インタフェース22及び通信インタフェース28の両方は、図1Aでソース装置12から宛先装置14を指す通信チャネル13の矢印により示されるように、単方向通信インタフェース、又は、双方向通信インタフェースとして構成されてよく、例えば接続を確立するため、肯定応答し及び通信リンク及び/又はデータ送信、例えば符号化ピクチャデータ送信に関連する任意の他の情報を交換するために、例えばメッセージを送信し及び受信するよう構成されてよい。
デコーダ30は、符号化ピクチャデータ21を受信し、復号ピクチャデータ31又は復号ピクチャ31を提供するよう構成される(更なる詳細は、例えば図3又は図5に基づき後述される)。
宛先装置14のポストプロセッサ32は、復号ピクチャデータ31(再構成ピクチャデータとも呼ばれる)、例えば復号ピクチャ31を後処理して、後処理済みピクチャデータ33、例えば後処理済みピクチャ33を取得するよう構成される。後処理ユニット32により実行される後処理は、例えば色形式変換(例えば、YCbCrからRGBへ)、色補正、トリミング、又は再サンプリング、又は、例えば復号ピクチャデータ31を例えばディスプレイ装置34による表示のために準備するための任意の他の処理、を含んでよい。
宛先装置14のディスプレイ装置34は、例えばユーザ又はビューアにピクチャを表示するために、後処理済みピクチャデータ33を受信するよう構成される。ディスプレイ装置34は、再構成ピクチャを提示する任意の種類のディスプレイ、例えば内蔵又は外部ディスプレイ又はモニタであり又はそれを含んでよい。ディスプレイは、例えば液晶ディスプレイ(liquid crystal displays (LCD))、有機発光ダイオード(organic light emitting diodes (OLED))ディスプレイ、プラズマディスプレイ、プロジェクタ、マイクロLEDディスプレイ、シリコン上の液晶(liquid crystal on silicon (LCoS))、デジタル光プロセッサ(digital light processor(DLP))又は任意の種類の他のディスプレイを含んでよい。
図1Aはソース装置12及び宛先装置14を別個の装置として示すが、装置の実施形態は、ソース装置12又は対応する機能と宛先装置14又は対応する機能の両方又は両方の機能を含んでもよい。このような実施形態では、ソース装置12又は対応する機能及び宛先装置14又は対応する機能は、同じハードウェア及び/又はソフトウェアを用いて又は別個のハードウェア及び/又はソフトウェア又はそれらの任意の組み合わせにより実装されてよい。
説明に基づき当業者に明らかなように、図1Aに示されるようなソース装置12及び/又は宛先装置14内の異なるユニットの機能又は機能の存在及び(正確な)分割は、実際の装置及び用途に依存して変化してよい。
エンコーダ20(例えば、ビデオエンコーダ20)、又はデコーダ30(例えば、ビデオデコーダ30)、又はエンコーダ20及びデコーダ30の両方は、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processors (DSP))、特定用途向け集積回路(application-specific integrated circuits (ASIC))、フィールドプログラマブルゲートアレイ(field-programmable gate arrays (FPGA))、個別ロジック、ハードウェア、ビデオ符号化専用若しくはそれらの任意の組み合わせのような、図1Bに示される処理回路により実装されてよい。エンコーダ20は、図2のエンコーダ20に関して議論したような種々のモジュール及び/又はここで説明される任意の他のエンコーダシステム若しくはサブシステムを実現するために、処理回路46により実装されてよい。デコーダ30は、図3のデコーダ30に関して議論したような種々のモジュール及び/又はここで説明された任意の他のデコーダシステム若しくはサブシステムを実現するために、処理回路46により実装されてよい。処理回路は、後に議論されるような種々の動作を実行するよう構成されてよい。図5に示すように、技術が部分的にソフトウェアで実装される場合、装置は、適切な非一時的コンピュータ可読記憶媒体内のソフトウェアのための命令を格納してよく、該命令を1つ以上のプロセッサを用いるハードウェアで実行して、本開示の技術を実行してよい。ビデオエンコーダ20及びビデオデコーダ30のいずれも、例えば図1Bに示されるように、単一の装置内の結合されたエンコーダ/デコーダ(encoder/decoder (CODEC))の部分として統合されてよい。
ソース装置12及び宛先装置14は、任意の種類のハンドヘルド又は固定装置、例えばノートブック又はラップトップコンピュータ、移動電話機、スマートフォン、タブレット又はタブレットコンピュータ、カメラ、デスクトップコンピュータ、セットトップボックス、テレビジョン、ディスプレイ装置、デジタルメディアプレイヤ、ビデオゲームコンソール、(コンテンツサービスサーバ、又はコンテンツ配信サーバのような)ビデオストリーミング装置、ブロードキャスト受信装置、ブロードキャスト送信装置、等を含む、広範な装置のうちのいずれかを含んでよく、任意の種類のオペレーティングシステムを使用してよく又は使用しなくてよい。幾つかの場合には、ソース装置12及び宛先装置14は、無線通信のために装備されてよい。従って、ソース装置12及び宛先装置14は、無線通信装置であってよい。
幾つかの場合には、図1Aに示されるビデオ符号化システム10は単に例であり、本願の技術は、必ずしも符号化装置と復号装置との間の任意のデータ通信を含まないビデオ符号化設定(例えば、ビデオ符号化又はビデオ復号)に適用してよい。他の例では、データはローカルメモリから読み出される、ネットワークを介してストリーミングされる、等である。ビデオ符号化装置は、データを符号化しメモリに格納してよく、及び/又はビデオ復号装置はデータをメモリから読み出し復号してよい。幾つかの例では、符号化及び復号は、互いに通信しないが単にデータをメモリへと符号化し及び/又はメモリからデータを読み出し復号する装置により実行される。
説明の便宜上、本発明の実施形態は、ここで、例えば高効率ビデオ符号化(High-Efficiency Video Coding (HEVC))、又はバーサタイルビデオ符号化(Versatile Video coding(VVC))のリファレンスソフトウェア、ITU-Tビデオ符号化専門家グループ(ITU-T Video Coding Experts Group (VCEG))及びISO/IEC動画専門家グループ(Motion Picture Experts Group (MPEG))のビデオ符号化に関する共同作業部会(Joint Collaboration Team on Video Coding (JCT-VC))により開発された次世代ビデオ符号化標準を参照して説明される。当業者は、本発明の実施形態がHEVC又はVVCに限定されないことを理解するだろう。
エンコーダ及び符号化方法
図2は、本願の技術を実施するよう構成される例示的なビデオエンコーダ20の概略的ブロック図を示す。図2の例では、ビデオエンコーダ20は、入力201(又は入力インタフェース201)、残差計算ユニット204、変換処理ユニット206、量子化ユニット208、逆量子化ユニット210及び逆変換処理ユニット212、再構成ユニット214、ループフィルタユニット220、復号ピクチャバッファ(decoded picture buffer (DPB))230、モード選択ユニット260、エントロピー符号化ユニット270、出力272(又は出力インタフェース272)を含む。モード選択ユニット260は、インター予測ユニット244、イントラ予測処理ユニット254、及びパーティションユニット262を含んでよい。インター予測ユニット244は、動き推定ユニット及び動き補償ユニット(図示しない)を含んでよい。図2に示すビデオエンコーダ20は、ハイブリッドビデオエンコーダ又はハイブリッドビデオコーデックに従うビデオエンコーダとも呼ばれてよい。
残差計算ユニット204、変換処理ユニット206、量子化ユニット208、モード選択ユニット260は、エンコーダ20の順方向信号経路を形成するとして参照されてよい。一方で、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、バッファ216、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer (DPB))230、インター予測処理ユニット244、及びイントラ予測ユニット254は、ビデオエンコーダ20の逆方向信号経路を形成するとして参照されてよく、ビデオエンコーダ20の逆方向信号経路はデコーダの信号経路に対応する(図3のビデオデコーダ30を参照)。逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer (DPB))230、インター予測ユニット244、及びイントラ予測ユニット254は、ビデオエンコーダ20の「内蔵デコーダ」を形成するとも表される。
ピクチャ及びピクチャパーティション(ピクチャ及びブロック)
エンコーダ20は、例えば入力201により、ピクチャ17(又はピクチャデータ17)、例えばビデオ又はビデオシーケンスを形成するピクチャのシーケンスのピクチャを受信するよう構成されてよい。受信したピクチャ又はピクチャデータは、前処理済みピクチャ19(又は前処理済みピクチャデータ19)であってもよい。簡単のために、以下の説明はピクチャ17を参照する。ピクチャ17は、(特に、ビデオ符号化では、現在ピクチャを他のピクチャ、例えば同じビデオシーケンス、つまり現在ピクチャも含むビデオシーケンスの前に符号化され及び/又は復号されたピクチャと区別するために)現在ピクチャ又は被符号化ピクチャとも呼ばれてよい。
(デジタル)ピクチャは、強度値を有するサンプルの2次元配列又は行列である又はそのように考えることができる。配列の中のサンプルは、ピクセル(pixel)(ピクチャ要素の短縮形)又はペル(pel)とも呼ばれてよい。配列又はピクチャの水平及び垂直方向(又は軸)にあるサンプルの数は、ピクチャのサイズ及び/又は解像度を定める。色の表現のために、標準的に3つの色成分が利用される。つまり、ピクチャは、3つのサンプル配列で表現され又はそれを含んでよい。RBG形式又は色空間では、ピクチャは、対応する赤、緑、及び青色サンプル配列を含む。しかしながら、ビデオ符号化では、各ピクセルは、標準的に、輝度及び色度形式、又は色空間、例えば、Y(時には代わりにLが使用される)により示される輝度成分とCb及びCrにより示される2つの色度成分とを含むYCbCrで表現される。輝度(又は略してルマ)成分Yは、明るさ又はグレーレベル強度(例えば、グレイスケールピクチャのような)を表現する。一方で、2つの色度(又は略してクロマ)成分Cb及びCrは、色度又は色情報成分を表現する。従って、YCbCr形式のピクチャは、輝度サンプル値(Y)の輝度サンプル配列と、色度値(Cb及びCr)の2つの色度サンプル配列とを含む。RGB形式のピクチャは、YCbCr形式に転換され又は変換されてよく、逆も同様であり、処理は色転換又は変換としても知られる。ピクチャが単色である場合、ピクチャは、輝度サンプル配列のみを含んでよい。従って、ピクチャは、例えば、単色形式のルマサンプルの配列又はルマサンプルの配列、及び4:2:0、4:2:2、及び4:4:4色形式のクロマサンプルの2つの対応する配列であってよい。
ビデオエンコーダ20の実施形態は、ピクチャ17を複数の(標準的には重なり合わない)ピクチャブロック203にパーティションするよう構成されるピクチャパーティションユニット(図2に示されない)を含んでよい。これらのブロックは、ルートブロック、マクロブロック(H.264/AVC)又は符号化木ブロック(coding tree block (CTB))又は符号化木単位(coding tree unit (CTU))(H.265/HEVC及びVVC)と呼ばれてもよい。ピクチャパーティションユニットは、同じブロックサイズをビデオシーケンスの全部のピクチャ、及びブロックサイズを定める対応するグリッドに対して使用し、又はピクチャ又はピクチャのサブセット若しくはグループ間のブロックサイズを変更し、各ピクチャを対応するブロックにパーティションするよう構成されてよい。
更なる実施形態では、ビデオエンコーダは、ピクチャ17のブロック203、例えばピクチャ17を形成する1つの、幾つかの、又は全部のブロックを直接受信するよう構成されてよい。ピクチャブロック203は、現在ピクチャブロック又は被符号化ピクチャブロックとも呼ばれてよい。
ピクチャ17と同様に、ピクチャブロック203は、ここでも、強度値(サンプル値)を有するサンプルの2次元配列又は行列であり又はそのように考えることができるが、ピクチャ17より小さい次元である。言い換えると、ブロック203は、例えば1つのサンプル配列(例えば、単色ピクチャ17の場合にはルマ配列、又はカラーピクチャの場合にはルマ若しくはクロマ配列)、又は3つのサンプル配列(例えば、カラーピクチャ17の場合には、ルマ及び2つのクロマ配列)、又は適用される色形式に依存して任意の他の数の及び/又は種類の配列を含んでよい。ブロック203の水平及び垂直方向(又は軸)にあるサンプルの数は、ブロック203のサイズを定める。従って、ブロックは、例えばサンプルのM×N(M列×N行)配列、又は変換係数のM×N配列であってよい。
図2に示すようなビデオエンコーダ20の実施形態は、ブロック毎にピクチャ17を符号化するよう構成されてよい。例えば、符号化及び予測がブロック203毎に実行される。
残差計算
残差計算ユニット204は、残差ブロック205(残差205とも呼ばれる)を、ピクチャブロック203及び予測ブロック265(予測ブロック265に関する更なる詳細は後に提供される)に基づき、例えば予測ブロック265のサンプル値をピクチャブロック203のサンプル値からサンプル毎に(ピクセル毎に)減算してサンプルドメインにおける残差ブロック205を取得することにより、計算するよう構成されてよい。
変換
変換処理ユニット206は、変換、例えば離散コサイン変換(discrete cosine transform (DCT))又は離散サイン変換(discrete sine transform (DST))を残差ブロック205のサンプル値に対して適用して、変換ドメインにおける変換係数207を取得するよう構成されてよい。変換係数207は、変換残差係数とも呼ばれ、変換ドメインにおける残差ブロック205を表してよい。
変換処理ユニット206は、H.265/HEVCのために指定された変換のようなDCT/DSTの整数近似を適用するよう構成されてよい。直交DCT変換と比べて、このような整数近似は、標準的に、特定の因子によりスケーリングされる。順方向及び逆変換により処理される残差ブロックのノルムを維持するために、追加スケーリング因子が変換処理の部分として適用される。スケーリング因子は、標準的に、スケーリング因子がシフト演算について2のべき乗である、変換係数のビット深さ、精度と実装コストとの間のトレードオフ、等のような特定の制約に基づき選択される。特定のスケーリング因子は、例えば、例えば逆変換処理ユニット212による逆変換(及び例えばビデオデコーダ30における逆変換処理ユニット312による対応する逆変換)のために指定され、例えばエンコーダ20における変換処理ユニット206による順方向変換のための対応するスケーリング因子が相応して指定されてよい。
ビデオエンコーダ20の実施形態(それぞれ、変換処理ユニット206)は、変換パラメータ、例えば、変換又は複数の変換のタイプ、例えば直接又はエントロピー符号化ユニット270により符号化又は圧縮される、を出力するよう構成されてよい。その結果、例えば、ビデオデコーダ30は、復号のために変換パラメータを受信し使用してよい。
量子化
量子化ユニット208は、変換係数207を量子化して、例えばスカラー量子化又はベクトル量子化を適用することにより、量子化済み係数209を取得するよう構成されてよい。量子化済み係数209は、量子化済み変換係数209又は量子化済み残差係数209とも呼ばれてよい。
量子化処理は、変換係数207の一部又は全部に関連するビット深さを低減してよい。例えば、nビットの変換係数は、量子化の間、mビットの変換係数に切り捨てられてよい。ここで、nはmより大きい。量子化の程度は、量子化パラメータ(quantization parameter (QP))を調整することにより、変更されてよい。例えば、スカラー量子化では、より精細な又は粗い量子化を達成するために異なるスケーリングが適用されてよい。量子化ステップサイズが小さいほど、精細な量子化に対応する。一方で、量子化ステップサイズが大きいほど、粗い量子化に対応する。適用可能な量子化ステップサイズは、量子化パラメータ(quantization parameter (QP))により示されてよい。量子化パラメータは、例えば、適用可能な量子化ステップサイズの所定のセットに対するインデックスであってよい。例えば、小さい量子化パラメータは、精細な量子化(小さい量子化ステップサイズ)に対応してよく、大きな量子化パラメータは粗い量子化(大きな量子化ステップサイズ)に対応してよい。逆も同様である。量子化は、量子化ステップサイズによる除算を含んでよい。例えば逆量子化ユニット210による対応する及び/又は逆の逆量子化は、量子化ステップサイズによる乗算を含んでよい。幾つかの標準、例えばHEVCに従う実施形態は、量子化ステップサイズを決定するために量子化パラメータを使用するよう構成されてよい。通常、量子化ステップサイズは、除算を含む式の不動点近似を用いて、量子化パラメータに基づき計算されてよい。量子化ステップサイズ及び量子化パラメータの式の不動点近似において使用されるスケーリングのために変更され得る残差ブロックのノルムを復元するために、量子化及び逆量子化のための追加のスケーリング因子が導入されてよい。1つの例示的な実装では、逆変換及び逆量子化のスケーリングは結合されてよい。代替として、カスタマイズされた量子化テーブルが使用され、エンコーダからデコーダへ、例えばビットストリームの中でシグナリングされてよい。量子化は、損失動作であり、損失は量子化ステップサイズの増大に伴い増大する。
ビデオエンコーダ20の実施形態(それぞれ、量子化ユニット208)は、量子化パラメータ(quantization parameters (QP))、例えば直接又はエントロピー符号化ユニット270により符号化される、を出力するよう構成されてよい。その結果、例えば、ビデオデコーダ30は、復号のために量子化パラメータを受信し適用してよい。
逆量子化
逆量子化ユニット210は、例えば、量子化ユニット208と同じ量子化ステップサイズに基づき又はそれを用いて、量子化ユニット208により適用された量子化方式の逆を適用することにより、量子化された係数に対して量子化ユニット208の逆量子化を適用して、逆量子化された係数211を取得するよう構成される。逆量子化済み係数211は、逆量子化済み残差係数211とも呼ばれ、標準的には量子化による損失のために変換係数と同じではないが、変換係数207に対応してよい。
逆変換
逆変換処理ユニット212は、変換処理ユニット206により適用された変換の逆変換、例えば逆離散コサイン変換(inverse discrete cosine transform (DCT))又は逆離散サイン変換(inverse discrete sine transform (DST))又は他の逆変換を適用して、サンプルドメインにおける再構成残差ブロック213(又は対応する逆量子化済み係数213)を取得するよう構成される。再構成残差ブロック213は、変換ブロック213とも呼ばれてよい。
再構成
再構成ユニット214(例えば、加算器又は加算器214)は、変換ブロック213(つまり再構成残差ブロック213)を予測ブロック265に加算して、例えば再構成残差ブロック213のサンプル値と予測ブロック265のサンプル値とをサンプル毎に加算することにより、サンプルドメインにおける再構成ブロック215を取得するよう構成される。
フィルタリング
ループフィルタユニット220(又は略して「ループフィルタ」220)は、再構成ブロック215をフィルタリングして、フィルタリング済みブロック221を取得するよう、又は通常、再構成サンプルをフィルタリングしてフィルタリング済みサンプルを取得するよう構成される。ループフィルタユニットは、例えば、ピクセル遷移を円滑化し、又はその他の場合にはビデオ品質を向上するよう構成される。ループフィルタユニット220は、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset (SAO))フィルタ又は1つ以上の他のフィルタ、例えば双方向フィルタ、適応ループフィルタ(adaptive loop filter (ALF))、先鋭化フィルタ、円滑化フィルタ若しくは共同フィルタ、又はそれらの任意の組合せのような1つ以上のループフィルタを含んでよい。ループフィルタユニット220はインループフィルタであるとして図2に示されるが、他の構成では、ループフィルタユニット220は後置きループフィルタとして実装されてよい。フィルタリング済みブロック221は、フィルタリング済み再構成ブロック221と呼ばれてもよい。
ビデオエンコーダ20の実施形態(それぞれ、ループフィルタユニット220)は、例えば直接に又はエントロピー符号化ユニット270により符号化された(サンプル適応オフセット情報のような)ループフィルタパラメータを出力するよう構成されてよい。その結果、例えば、デコーダ30は、復号のために同じループフィルタパラメータ又はそれぞれのループフィルタを受信し適用してよい。
復号ピクチャバッファ
復号ピクチャバッファ(decoded picture buffer (DPB))230は、ビデオエンコーダ20によるビデオデータの符号化のために、参照ピクチャ又は一般的に参照ピクチャデータを格納するメモリであってよい。DPB230は、同期DRAM(synchronous DRAM (SDRAM))を含む動的ランダムアクセスメモリ(dynamic random access memory (DRAM))、磁気抵抗RAM(magnetoresistive RAM (MRAM))、抵抗RAM(resistive RAM (RRAM))、又は他の種類のメモリ装置のような、種々のメモリ装置のうちのいずれかにより形成されてよい。復号ピクチャバッファ(decoded picture buffer (DPB))230は、1つ以上のフィルタリング済みブロック221を格納するよう構成されてよい。復号ピクチャバッファ230は、同じ現在ピクチャの又は異なるピクチャ、例えば前の再構成ピクチャの他の前のフィルタリング済みブロック、例えば前の再構成及びフィルタリング済みブロック221を格納するよう更に構成されてよく、完全な前に再構成された、つまり復号されたピクチャ(及び対応する参照ブロック及びサンプル)、及び/又は部分的に再構成された現在ピクチャ(及び対応する参照ブロック及びサンプル)を、例えばインター予測のために提供してよい。復号ピクチャバッファ(decoded picture buffer (DPB))230は、1つ以上のフィルタリングされていない再構成ブロック215、又は一般的には、例えば再構成ブロック215がループフィルタユニット220によりフィルタリングされない場合には、フィルタリングされていない再構成サンプルを、又は再構成ブロック又はサンプルの任意の他の更に処理されたバージョンを格納するよう構成されてもよい。
モード選択(パーティション及び予測)
モード選択ユニット260は、パーティションユニット262、インター予測ユニット244、及びイントラ予測ユニット254を含み、元のピクチャデータ、例えば元のブロック203(現在ピクチャ17の現在ブロック203)、及び再構成ピクチャデータ、例えば同じ(現在)ピクチャの及び/又は1つ又は複数の前の復号ピクチャからの、例えば復号ピクチャバッファ230若しくは他のバッファ(例えば、図示されないラインバッファ)からのフィルタリング済み及び/又はフィルタリングされていない再構成サンプル又はブロック、を受信し又は取得するよう構成される。再構成されたピクチャデータは、予測ブロック265又は予測子265を取得するために、予測、例えばインター予測又はイントラ予測のために参照ピクチャデータとして使用される。
モード選択ユニット260は、現在ブロック予測モードのパーティション(パーティションしないことを含む)、及び予測モード(例えば、イントラ又はインター予測モード)を決定又は選択し、残差ブロック205の計算のため及び再構成ブロック215の再構成のために使用される対応する予測ブロック265を生成するよう構成されてよい。
モード選択ユニット260の実施形態は、最良の一致又は言い換えると最小残差(最小残差は送信又は記憶のためのより良い圧縮を意味する)又は最小シグナリングオーバヘッド(最小シグナリングオーバヘッドは送信又は記憶のためのより良い圧縮を意味する)を提供する又は両者を考慮する若しくはバランスを取るパーティション及び予測モードを(例えば、モード選択ユニット260によりサポートされる又は利用可能なものから)選択するよう構成されてよい。モード選択ユニット260は、レート歪み最適化(rate distortion optimization (RDO))に基づき、パーティション及び予測モードを決定するよう、つまり、最小レート歪みを提供する予測モードを選択するよう構成されてよい。この文脈における「最良」、「最小」、「最適」、等のような用語は、全体的な「最良」、「最小」、「最適」、等を必ずしも表さないが、閾値を超える又はそれより下である値のような終了若しくは選択基準、又は「準最適選択」をもたらす可能性があるが複雑さ及び処理時間を削減する他の制約の充足も表してよい。
言い換えると、パーティションユニット262は、例えば4分木パーティション(quad-tree (QT))、2分木パーティション(binary (BT))又は3分木パーティション(triple-tree(TT))、又はそれらの任意の組み合わせを繰り返し使用して、ブロック203を更に小さいブロックパーティション又はサブブロック(これはまたブロックを形成する)にパーティションし、例えば各ブロックパーティション又はサブブロックに対して予測を実行するよう構成されてよい。ここで、モード選択は、パーティション済みブロック203の木構造及びブロックパーティション又はサブブロックの各々に適用される予測モードの選択を含む。
以下では、例示的なビデオエンコーダ20により実行される(例えば、パーティションユニット260による)パーティション及び(インター予測ユニット244及びイントラ予測ユニット254による)予測処理が更に詳細に説明される。
パーティション
パーティションユニット262は、現在ブロック203を更に小さいパーティション、例えば正方形又は長方形サイズのより小さいブロックにパーティションして(又は分割して)よい。これらの更に小さいブロック(これは、サブブロックとも呼ばれてよい)は、一層小さいパーティションに更にパーティションされてよい。これは、木パーティション又は階層木パーティションとも呼ばれる。ここで、例えばルート木レベル0(階層レベル0、深さ0)にあるルートブロックは、再帰的にパーティションされて、例えば、次のより下の木レベルにある2つ以上のブロック、例えば木レベル1(階層レベル1、深さ1)にあるノードにパーティションされてよい。ここで、例えば終了基準が充足された、例えば最大木深さ又は最小ブロックサイズに達したために、例えばパーティションが終了するまで、これらのブロックは、再び、次のより下のレベル、例えば木レベル2(階層レベル2、深さ2)の2つ以上のブロックにパーティションされてよい、等である。更にパーティションされないブロックは、木のリーフブロック又はリーフノードとも呼ばれる。2個のパーティションへのパーティションを用いる木は、2分木(binary-tree (BT))と呼ばれ、3個のパーティションへのパーティションを用いる木は3分木(ternary-tree (TT))と呼ばれ、4個のパーティションへのパーティションを用いる木は4分木(quad-tree (QT))と呼ばれる。
前述のように、用語「ブロック」は、ここで使用されるとき、ピクチャの部分、特に正方形又は長方形部分であってよい。例えばHEVC及びVVCを参照すると、ブロックは、符号化木単位(coding tree unit (CTU))、符号化単位(coding unit (CU))、予測単位(prediction unit (PU))、及び変換単位(transform unit (TU))、及び/又は対応するブロック、例えば符号化木ブロック(coding tree block (CTB))、符号化ブロック(coding block (CB))、変換ブロック(transform block (TB))、又は予測ブロック(prediction block (PB))であり又はそれに対応してよい。
例えば、符号化木単位(coding tree unit (CTU))は、ルマサンプルのCTB、3個のサンプル配列を有するピクチャのクロマサンプルの2個の対応するCTB、又は単色ピクチャのサンプルのCTB、又は3個の別個の色平面及びサンプルを符号化するために使用されるシンタックス構造を用いて符号化されるピクチャであり又はそれを含んでよい。相応して、符号化木ブロック(coding tree block (CTB))は、何らかの値のNについてサンプルのN×Nブロックであってよい。その結果、CTBへの成分の分割はパーティションである。符号化単位(coding unit (CU))は、ルマサンプルの符号化ブロック、3個のサンプル配列を有するピクチャのクロマサンプルの2個の対応する符号化ブロック、又は単色ピクチャのサンプルの符号化ブロック、又は3個の別個の色平面及びサンプルを符号化するために使用されるシンタックス構造を用いて符号化されるピクチャであり又はそれを含んでよい。相応して、符号化木ブロック(coding block (CB))は、何らかの値のM及びNについてサンプルのM×Nブロックであってよい。その結果、符号化ブロックへのCTBの分割はパーティションである。
例えばHEVCに従う実施形態では、符号化木単位(coding tree unit)は、符号化木として示される4分木構造を用いてCUに分割されてよい。ピクチャ領域をインターピクチャ(時間)又はイントラピクチャ(空間)予測を用いて符号化するかの決定は、CUレベルで行われる。各CUは、PU分割タイプに従い、1、2、又は4個のPUに更に分割できる。1個のPU内で、同じ予測処理が適用され、関連情報がPU毎にデコーダへ送信される。PU分割タイプに基づき予測処理を適用することにより、残差ブロックを取得した後に、CUは、CUの符号化ツリーと同様の別の4分木構造に従い、変換単位(transform unit (TU))にパーティションできる。
例えばバーサタイルビデオ符号化(Versatile Video Coding (VVC))と呼ばれる現在策定中の最新のビデオ符号化標準に従う実施形態では、4分木及び2分木(Quad-tree and binary tree (QTBT))パーティションが、符号化ブロックをパーティションするために使用される。QTBTブロック構造では、CUは正方形又は長方形形状のいずれかを有し得る。例えば、符号化木単位(coding tree unit (CTU))は、先ず、4分木構造によりパーティションされる。4分木のリーフノードは、2分木又は3分木(又はトリプル)木構造により更にパーティションされる。パーティション木のリーフノードは、符号化単位(coding unit (CU))と呼ばれ、任意の更なるパーティションを伴わず、予測及び変換処理のためにセグメント化が使用される。これは、CU、PU、及びTUが、QTBT符号化ブロック構造において同じブロックサイズを有することを意味する。同時に、多重パーティション、例えば3分木パーティションも、QTBTブロック構造と一緒に使用するために提案された。
一例では、ビデオエンコーダ20のモード選択ユニット260は、ここに記載のパーティション技術の任意の組み合わせを実行するよう構成されてよい。
上述のように、ビデオエンコーダ20は、最良の又は最適な予測モードを決定し又は(予め決定された)予測モードのセットから選択するよう構成される。予測モードのセットは、例えばイントラ予測モード及び/又はインター予測モードを含んでよい。
イントラ予測
イントラ予測モードのセットは、35個の異なるイントラ予測モード、例えばDC(又は平均)モード及び平面モードのような無指向性モード、又は例えばHEVCで定義されたような指向性モードを含んでよく、又は67個の異なるイントラ予測モード、例えばDC(又は平均)モード及び平面モードのような無指向性モード、又は例えばVCCのために定義されたような指向性モードを含んでよい。
イントラ予測ユニット254は、イントラ予測モードのセットのうちのイントラ予測モードに従いイントラ予測ブロック265を生成するために、同じ現在ピクチャの近隣ブロックの再構成サンプルを使用するよう構成される。
イントラ予測ユニット254(又は一般的にモード選択ユニット260)は、イントラ予測パラメータ(又は一般的にブロックについて選択されたイントラ予測モードを示す情報)を、エントロピー符号化ユニット270に、符号化ピクチャデータ21に含めるためにシンタックス要素266の形式で出力するよう更に構成される。その結果、例えば、ビデオデコーダ30は、復号のために予測パラメータを受信し及び使用してよい。
インター予測
インター予測モード(又は可能なもの)のセットは、利用可能な参照ピクチャ(つまり、例えばDBP230に格納された、前の少なくとも部分的に復号されたピクチャ)及び他のインター予測パラメータに、例えば、参照ピクチャの全体又は部分のみが、例えば参照ピクチャの現在ブロックの領域周辺の検索ウインドウ領域が最良の適合する参照ブロックを検索するために使用されるか、及び/又は、例えば、ピクセル補間、例えばハーフ/セミペル及び/又は4分の1ペル補間が適用されるか否かに依存する。
上述の予測モードに加えて、スキップモード及び/又は直接モードが適用されてよい。
インター予測ユニット244は、動き推定(motion estimation (ME))ユニット及び動き補償(motion compensation (MC))ユニット(両方とも図2に示されない)を含んでよい。動き推定ユニットは、ピクチャブロック203(現在ピクチャ17の現在ピクチャブロック203)、及び復号ピクチャ231、又は前の再構成ブロックのうちの少なくとも1つ又は複数、例えば他の/異なる前に復号されたピクチャ231のうちの1又は複数の再構成ブロックを、動き推定のために受信し又は取得するよう構成されてよい。例えば、ビデオシーケンスは、現在ピクチャ及び前の復号ピクチャ231を含んでよく、又は言い換えると、現在ピクチャ及び前の復号ピクチャ231は、ビデオシーケンスを形成するピクチャのシーケンスの一部であり又はそれを形成してよい。
エンコーダ20は、例えば、複数の他のピクチャの同じ又は異なるピクチャの複数の参照ブロックから、参照ブロックを選択し、参照ピクチャ(又は参照ピクチャインデックス)及び/又は参照ブロックの位置(x,y座標)と現在ブロックの位置との間のオフセット(空間オフセット)を、インター予測パラメータとして動き推定ユニットに提供するよう構成されてよい。このオフセットは、動きベクトル(motion vector (MV))とも呼ばれる。
動き補償ユニットは、インター予測パラメータを取得し、例えば受信し、インター予測パラメータに基づき又はそれを用いてインター予測を実行して、インター予測ブロック265を取得するよう構成される。動き補償ユニットにより実行される動き補償は、動き推定により決定された動き/ブロックベクトルに基づき、予測ブロックをフェッチし又は生成し、場合によってはサブピクセル精度への補間を実行することを含んでよい。補間フィルタリングは、既知のピクセルサンプルから追加ピクセルサンプルを生成してよく、従ってピクチャブロックを符号化するために使用され得る候補予測ブロックの数を増大させる可能性がある。現在ピクチャブロックのPUの動きベクトルを受信すると、動き補償ユニットは、参照ピクチャリストのうちの1つの中で動きベクトルの指す予測ブロックの位置を特定してよい。
動き補償ユニットは、ビデオスライスのピクチャブロックを復号する際にビデオデコーダ30による使用のために、ブロック及びビデオスライスに関連するシンタックス要素も生成してよい。
エントロピー符号化
エントロピー符号化ユニット270は、例えばエントロピー符号化アルゴリズム又は方式(例えば、可変長符号化(variable length coding (VLC))方式、コンテキスト適応型VLC方式(context adaptive VLC (CAVLC))、算術符号化方式、二値化、コンテキスト適応型バイナリ算術符号化(context adaptive binary arithmetic coding (CABAC))、シンタックスに基づくコンテキスト適応型バイナリ算術符号化(syntax-based context-adaptive binary arithmetic coding (SBAC))、確率区間区分エントロピー(probability interval partitioning entropy (PIPE))符号化又は別のエントロピー符号化方法若しくは技術)を、量子化済み残差係数209、インター予測パラメータ、イントラ予測パラメータ、ループフィルタパラメータ及び/又は他のシンタックス要素に、適用して又はバイパスして(圧縮しない)、出力272により例えば符号化ビットストリーム21の形式で出力され得る符号化ピクチャデータ21を取得するよう構成される。その結果、例えば、ビデオデコーダ30は、復号のためにパラメータを受信し使用してよい。符号化ビットストリーム21は、ビデオデコーダ30へと伝送され、又はビデオデコーダ30による後の伝送又は読み出しのためにメモリに格納されてよい。
ビデオエンコーダ20の他の構造的変形は、ビデオストリームを符号化するために使用され得る。例えば、非変換に基づくエンコーダ20は、変換処理ユニット206を有しないで、特定のブロック又はフレームについて、残差信号を直接量子化できる。別の実装では、エンコーダ20は、単一のユニットに結合された、量子化ユニット208及び逆量子化ユニット210を有し得る。
デコーダ及び復号方法
図3は、本願の技術を実施するよう構成されるビデオデコーダ30の例を示す。ビデオデコーダ30は、復号ピクチャ331を取得するために、例えばエンコーダ20により符号化された符号化ピクチャデータ21(例えば、符号化ビットストリーム21)を受信するよう構成される。符号化ピクチャデータ又はビットストリームは、符号化ピクチャデータを復号するための情報、例えば符号化ビデオスライスのピクチャブロックを示すデータ及び関連するシンタックス要素を含む。
図3の例では、デコーダ30は、エントロピー復号ユニット304、逆量子化ユニット310、逆変換処理ユニット312、再構成ユニット314(例えば、加算器314)、ループフィルタ320、復号ピクチャバッファ(decoded picture buffer (DBP))330、インター予測ユニット344、及びイントラ予測ユニット354を含む。インター予測ユニット344は、動き補償ユニットであり又はそれを含んでよい。ビデオデコーダ30は、幾つかの例では、図2からビデオエンコーダ100に関して説明した符号化パスに対して通常相互的な復号パスを実行してよい。
エンコーダ20に関して説明したように、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer (DPB))230、インター予測ユニット344、及びイントラ予測ユニット354は、ビデオエンコーダ20の「内蔵デコーダ」を形成するとも表される。従って、逆量子化ユニット310は逆量子化ユニット110と機能的に同一であってよく、逆変換処理ユニット312は逆変換処理ユニット212と機能的に同一であってよく、再構成ユニット314は再構成ユニット214と機能的に同一であってよく、ループフィルタ320はループフィルタ220と機能的に同一であってよく、復号ピクチャバッファ330は復号ピクチャバッファ230と機能的に同一であってよい。従って、それぞれのユニット及びビデオ20エンコーダの機能について提供された説明は、相応して、ビデオデコーダ30のそれぞれのユニット及び機能に適用する。
エントロピー復号
エントロピー復号ユニット304は、ビットストリーム21(又は一般的に符号化ピクチャデータ21)をパースし、例えば符号化ピクチャデータ21にエントロピー復号を実行して、例えば量子化済み係数309及び/又は復号符号化パラメータ(図3に示されない)、例えばインター予測パラメータ(例えば、参照ピクチャインデックス及び動きベクトル)、イントラ予測パラメータ(例えば、イントラ予測モード又はインデックス)、変換パラメータ、量子化パラメータ、ループフィルタパラメータ、及び/又は他のシンタックス要素、のうちのいずれか又は全部を取得するよう構成される。エントロピー復号ユニット304は、エンコーダ20のエントロピー符号化ユニット270に関して説明したような符号化方式に対応する復号アルゴリズム又は方式を適用するよう構成されてよい。エントロピー復号ユニット304は、インター予測パラメータ、イントラ予測パラメータ、及び/又は他のシンタックス要素をモード適用ユニット360に、及び他のパラメータをデコーダ30の他のユニットに提供するよう更に構成されてよい。ビデオデコーダ30は、ビデオスライスレベル及び/又はビデオブロックレベルのシンタックス要素を受信してよい。
逆量子化
逆量子化ユニット310は、量子化パラメータ(quantization parameter (QP))(又は一般的に逆量子化に関する情報)及び量子化済み係数を、符号化ピクチャデータ21から(例えばエントロピー復号ユニット304により例えばパース及び/又は復号することにより)受信し、及び量子化パラメータに基づき逆量子化を復号量子化済み係数309に適用して、変換係数311とも呼ばれてよい逆量子化済み係数311を取得するよう構成されてよい。逆量子化処理は、ビデオスライス内の各ビデオブロックに対して、ビデオエンコーダ20により決定された量子化パラメータを使用して、量子化の程度、及び同様に適用されるべき逆量子化の程度を決定することを含んでよい。
逆変換
逆変換処理ユニット312は、変換係数311とも呼ばれる逆量子化済み係数311を受信し、サンプルドメインにおいて再構成残差ブロック213を取得するために逆量子化済み係数311に変換を適用するよう構成されてよい。再構成残差ブロック213は、変換ブロック313とも呼ばれてよい。変換は、逆変換、例えば、逆DCT、逆DST、逆整数変換、又は概念的に同様の逆変換処理であってよい。逆変換処理ユニット312は、変換パラメータ又は対応する情報を、符号化ピクチャデータ21から(例えばエントロピー復号ユニット304により例えばパース及び/又は復号することにより)受信して、逆量子化済み係数311に適用されるべき変換を決定するよう更に構成されてよい。
再構成
再構成ユニット314(例えば、加算器又は加算器314)は、再構成残差ブロック313を予測ブロック365に加算して、例えば再構成残差ブロック313のサンプル値と予測ブロック365のサンプル値とを加算することにより、サンプルドメインにおける再構成ブロック315を取得するよう構成されてよい。
フィルタリング
ループフィルタユニット320(符号化ループ内にある又は符号化ループの後にある)は、再構成ブロック315をフィルタリングしてフィルタリング済みブロック321を取得し、例えばピクセル遷移を円滑化するよう又はその他の場合にビデオ品質を向上するよう構成される。ループフィルタユニット320は、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset (SAO))フィルタ又は1つ以上の他のフィルタ、例えば双方向フィルタ、適応ループフィルタ(adaptive loop filter (ALF))、先鋭化、円滑化フィルタ若しくは共同フィルタ、又はそれらの任意の組合せのような1つ以上のループフィルタを含んでよい。ループフィルタユニット320はインループフィルタであるとして図3に示されるが、他の構成では、ループフィルタユニット320は後置きループフィルタとして実装されてよい。
復号ピクチャバッファ
ピクチャの復号ビデオブロック321は、次に、他のピクチャのための後の動き補償のための参照ピクチャとして及び/又はそれぞれディスプレイ出力のために復号ピクチャ331を格納する復号ピクチャバッファ330に格納される。
デコーダ30は、ユーザへの提示又は閲覧のために、復号ピクチャ311を、例えば出力312を介して出力するよう構成される。
予測
インター予測ユニット344は、インター予測ユニット244と(特に動き補償ユニットと)同一であってよく、イントラ予測ユニット354は、インター予測ユニット254と機能的に同一であってよく、パーティション及び/又は予測パラメータ又は符号化ピクチャデータ21から(例えばエントロピー復号ユニット304により例えばパース及び/又は復号することにより)受信したそれぞれの情報に基づき、分割又はパーティション決定及び予測を実行する。モード選択ユニット360は、再構成ピクチャ、ブロック、又はそれぞれの(フィルタリング済み又は未フィルタリング)サンプルに基づき、ブロック毎に予測(イントラ又はインター予測)を実行して、予測ブロック365を取得するよう構成されてよい。
ビデオスライスがイントラ符号化(intra coded (I))スライスとして符号化されるとき、モード選択ユニット360のイントラ予測ユニット354は、シグナリングされたイントラ予測モード及び現在ピクチャの前の復号ブロックからのデータに基づき、現在ビデオスライスのピクチャブロックについて予測ブロック365を生成するよう構成される。ビデオピクチャがインター符号化(つまり、B又はP)スライスとして符号化されるとき、モード選択ユニット360のインター予測ユニット344(例えば動き補償ユニット)は、動きベクトル及びエントロピー復号ユニット304から受信した他のシンタックス要素に基づき、現在ビデオスライスのビデオブロックについて予測ブロック365を生成するよう構成される。インター予測では、予測ブロックは、参照ピクチャリストのうちの1つの中の参照ピクチャのうちの1つから生成されてよい。ビデオデコーダ30は、DPB330に格納された参照ピクチャに基づき、規定構成技術を用いて、参照フレームリスト:リスト0及びリスト1を構成してよい。
モード選択ユニット360は、動きベクトル及び他のシンタックス要素をパースすることにより、現在ビデオスライスのビデオブロックについて予測情報を決定し、予測情報を使用して、復号中の現在ビデオブロックについて予測ブロックを生成するよう構成される。例えば、モード選択ユニット360は、受信したシンタックス要素のうちの幾つかを使用して、ビデオスライスのビデオブロックを符号化するために使用される予測モード(例えば、イントラ又はインター予測)、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又はGPBスライス)、スライスの参照ピクチャリストのうちの1つ以上の構成情報、スライスの各インター符号化ビデオブロックの動きベクトル、スライスの各インター符号化ビデオブロックのインター予測状態、及び現在ビデオスライス内のビデオブロックを復号するための他の情報を決定する。
ビデオデコーダ30の他の変形は、符号化ピクチャデータ21を復号するために使用され得る。例えば、デコーダ30は、ループフィルタユニット320を有しないで、出力ビデオストリームを生成できる。例えば、非変換に基づくデコーダ30は、逆変換処理ユニット312を有しないで、特定のブロック又はフレームについて、残差信号を直接逆量子化できる。別の実装では、ビデオデコーダ30は、単一のユニットに結合された、逆量子化ユニット310及び逆変換処理ユニット312を有し得る。
理解されるべきことに、エンコーダ20及びデコーダ30において、現在ステップの処理結果は、更に処理され、次に次のステップへ出力されてよい。例えば、補間フィルタリング、動きベクトル導出又はループフィルタリングの後に、クリップ又はシフトのような更なる動作が、補間フィルタリング、動きベクトル導出又はループフィルタリングの処理結果に対して実行されてよい。
留意すべきことに、現在ブロックの導出された動きベクトル(限定ではないが、アフィンモードの制御点動きベクトル、アフィン、平面、ATMVPモードにおけるサブブロック動きベクトル、時間的動きベクトル、等を含む)に更なる動作が適用されてよい。例えば、動きベクトルの値は、その表現ビットに従い所定の範囲に制約される。動きベクトルの表現ビットがbitDepthである場合、範囲は-2^(bitDepth-1)~2^(bitDepth-1)-1であり、ここで「^」はべき乗を意味する。例えば、bitDepthが16に等しい場合、範囲は-32768~32767であり、bitDepthが18に等しい場合、範囲は-131072~131071である。例えば、導出された動きベクトルの値(例えば、1個の8×8ブロックの中の4個の4×4サブブロックのMV)は、4×4サブブロックのMVの整数部分の間の最大差が、1ピクセルより大きくないなど、Nピクセルより大きくないように、制約される。
ここで、bitDepthに従い動きベクトルを制約する2つの方法を提供する。
方法1:以下の演算によりオーバーフローMSB(most significant bit)を除去する。
Figure 2022511850000002
ここで、mvxは、画像ブロック又はサブブロックの動きベクトルの水平成分であり、mvyは、画像ブロック又はサブブロックの動きベクトルの垂直成分であり、ux及びuyは、中間値を示す。
Figure 2022511850000003
式(5)~(8)に示すように、演算は、mvp及びmvdの加算の間に適用されてよい。
方法2:以下の値をクリッピングすることにより、オーバーフローMSBを除去する。
Figure 2022511850000004
ここで、vxは、画像ブロック又はサブブロックの動きベクトルの水平成分であり、vyは、画像ブロック又はサブブロックの動きベクトルの垂直成分である。x、y、及びzは、それぞれ、MVクリッピング処理の3つの入力値に対応し、関数Clip3の定義は以下の通りである。
Figure 2022511850000005
図4は、本開示の実施形態によるビデオ符号化装置400の概略図である。ビデオ符号化装置400は、ここに説明したような開示の実施形態を実施するのに適する。実施形態では、ビデオ符号化装置400は、図1Aのビデオデコーダ30のようなデコーダ、又は図1Aのビデオエンコーダ20のようなエンコーダであってよい。
ビデオ符号化装置400は、データを受信するためのイングレスポート410(又は入力ポート410)及び受信機ユニット(receiver unit (Rx))420と、データを処理するためのプロセッサ、論理ユニット、又は中央処理ユニット(central processing unit (CPU))430と、データを送信するための送信機ユニット(transmitter unit (Tx))440及びイグレスポート450(又は出力ポート460)と、データを格納するためのメモリ460と、を含む。ビデオ符号化装置400は、イングレスポート410、受信機ユニット420、送信機ユニット440、及びイグレスポート450に接続された、光若しくは電気信号のイグレス若しくはイングレスのための光-電気(optical-to-electrical (OE))コンポーネント及び電気-光(electrical-to-optical (EO))コンポーネントも含んでよい。
プロセッサ430は、ハードウェア及びソフトウェアにより実装される。プロセッサ430は、1つ以上のCPUチップ、コア(例えば、マルチコアプロセッサ)、FPGA、ASIC、及びDSPとして実装されてよい。プロセッサ430は、イングレスポート410、受信機ユニット420、送信機ユニット440、イグレスポート450、及びメモリ460と通信する。プロセッサ430は、符号化モジュール470を含む。符号化モジュール470は、上述の開示の実施形態を実装する。例えば、符号化モジュール470は、種々の符号化動作を実装し、処理し、準備し、又は提供する。符号化モジュール470の中に含まれるものは、従って、ビデオ符号化装置400の機能に実質的な改良を提供し、ビデオ符号化装置400の異なる状態への変換をもたらす。代替として、符号化モジュール470は、メモリ460に格納されプロセッサ430により実行される命令として実装される。
メモリ460は、1つ以上のディスク、テープドライブ、及び固体ドライブを含んでよく、プログラムが実行のために選択されるとき該プログラムを格納するため及びプログラムの実行中に読み出される命令及びデータを格納するためのオーバフローデータ記憶装置として使用されてよい。メモリ460は、例えば、揮発性及び/又は不揮発性であってよく、読み出し専用メモリ(read-only memory (ROM))、ランダムアクセスメモリ(random access memory (RAM))、三値連想メモリ(ternary content-addressable memory (TCAM))、及び/又は静的ランダムアクセスメモリ(static random-access memory (SRAM))であってよい。
図5は、例示的な実施形態による図1からのソース装置12及び宛先装置14の一方又は両方として使用されてよい機器500の簡略ブロック図である。
機器500内のプロセッサ502は、中央処理ユニットであり得る。代替として、プロセッサ502は、現在存在する又は将来開発される情報を操作し又は処理できる任意の他の種類の装置又は複数の装置であり得る。開示の実装は図示のように単一のプロセッサ、例えばプロセッサ502により実施できるが、速度及び効率における利益は、1つより多くのプロセッサを用いて達成できる。
機器500内のメモリ504は、一実装では、読み出し専用メモリ(read only memory (ROM))装置又はランダムアクセスメモリ(random access memory (RAM))装置であり得る。任意の他の適切な種類の記憶装置が、メモリ504として使用できる。メモリ504は、バス512を用いてプロセッサ502によりアクセスされるコード及びデータ506を含み得る。メモリ504は、オペレーティングシステム508及びアプリケーションプログラム510を更に含み得る。アプリケーションプログラム510は、プロセッサ502がここに記載の方法を実行することを可能にする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム510は、ここに記載の方法を実行するビデオ符号化アプリケーションを更に含むアプリケーション1~Nを含むことができる。機器500は、ディスプレイ518のような1つ以上の出力装置も含み得る。ディスプレイ518は、一例では、タッチ入力を感知するよう動作するタッチ感応要素とディスプレイを結合するタッチ感応ディスプレイであってよい。ディスプレイ518は、バス512を介してプロセッサ502と結合され得る。
ここでは単一のバスとして示されるが、機器500のバス512は複数のバスで構成できる。更に、2次記憶514は、機器500の他のコンポーネントに直接接続でき、又はネットワークを介してアクセスでき、メモリカードのような単一の統合ユニット又は複数のメモリカードのような複数のユニットを含むことができる。機器500は、従って、様々な構成で実装できる。
結合インターイントラ予測(Combined Inter-Intra Prediction (CIIP))
従来、符号化単位は、イントラ予測されるか(つまり、同じピクチャ内の参照サンプルを用いて)、又はインター予測されるか(つまり、他のピクチャの中の参照サンプルを用いて)のいずれかである。多仮説予測は、これらの2つの予測アプローチを結合する。従って、それは、時に結合インターイントラ予測(combined inter-intra prediction (CIIP))とも呼ばれる。結合インターイントラ予測が有効にされると、イントラ予測及びインター予測されたサンプルは重みにより適用され、最終的な予測は、加重平均サンプルとして導出される。
フラグ、多仮説予測(CIIP)フラグは、ブロックが結合インターイントラ予測を適用されるときを示すために使用される。
CIIPを適用されるブロックは、図6Aに示されるように、幾つかのサブブロックに更に分割できる。一例では、そのサブブロックは、ブロックを水平方向に分割することにより導出され、各サブブロックは、元のブロックと同じ幅であるが、元のブロックの1/4の高さを有する。
一例では、そのサブブロックは、ブロックを垂直方向に分割することにより導出され、各サブブロックは、元のブロックと同じ高さであるが、元のブロックの1/4の幅を有する。
CIIP予測により、それが通常はより多くの残差信号を有するイントラ予測による結果を含むので、ブロックアーチファクトが導入され得る。ブロックアーチファクトは、CIIPブロックの境界だけでなく、図6Aの垂直サブブロックエッジA、B、Cのような、CIIPブロックの内部のサブブロックエッジにも生じる。水平サブブロックエッジは、相応して識別できる。
ブロックアーチファクトはCIIP境界及びCIIPブロックの内部のサブブロックエッジの両方で生じ得るが、これらの2つの境界により引き起こされる歪みは異なることがあり、異なる境界強度が必要なことがある。
本願の残りの部分では、以下の用語が使用される。
CIIPブロック:多仮説予測(multi-hypothesis prediction (CIIP))の適用により予測される符号化ブロック。
イントラブロック:CIIP予測ではなくイントラ予測の適用により予測される符号化ブロック。
インターブロック:CIIP予測ではなくインター予測の適用により予測される符号化ブロック。
デブロッキングフィルタ及び境界強度
HEVC及びVVCのようなビデオ符号化方式は、ブロックに基づくハイブリッドビデオ符号化の成功した原理に沿って設計されている。この原理を用いて、ピクチャは、先ずブロックにパーティションされ、次に、各ブロックはイントラピクチャ又はインターピクチャ予測を用いて予測される。これらのブロックは、相対的に、近隣ブロックから符号化され、ある程度の類似性により元の信号を近似する。符号化ブロックは元の信号を近似するだけなので、近似の間の差分は、予測及び変換ブロック境界において不連続を生じ得る。これらの不連続は、デブロッキングフィルタにより減衰される。
ブロック境界をフィルタリングするかどうかの決定は、予測モード及び動きベクトルのようなビットストリーム情報を使用する。幾つかの符号化条件は、強力なブロックアーチファクトを生成する可能性がより高く、これは、全てのブロック境界に割り当てられ表1のように決定される、所謂、境界強度(boundary strength (Bs又はBS))変数により表現される。
Figure 2022511850000006
デブロッキングは、ルマ成分についてゼロより大きいBs及びクロマ成分について1より大きいBsを有するブロック境界にのみ適用される。Bsの値が高いほど、高いクリッピングパラメータ値を用いることにより、より強力なフィルタリングが可能である。Bs導出条件は、イントラ予測ブロック境界に最も強力なブロックアーチファクトが現れる確率を反映する。
通常、境界の2個の隣接ブロックは、図6Bに示されるようにP及びQとラベル付けされる。図6Bは、垂直境界の場合を示す。水平境界が検討される場合は、図6Bは、時計回りに90度回転されるべきであり、Pが上側になり、Qが下側になる。
最確モードリスト構築
最確モード(Most Probable Mode (MPM))リストは、符号化効率を向上するためにイントラモード符号化で使用される。多数のイントラモード(例えば、HEVCでは35、VVCでは67)により、現在ブロックのイントラモードは、直接シグナリングされない。代わりに、現在ブロックの最確モードリストは、その近隣ブロックのイントラ予測モードに基づき構築される。現在ブロックのイントラモードはその近隣のものに関連するので、MPMリストは、通常、その名称(最確モードリスト)が示すように、良好な予測を提供する。従って、現在ブロックのイントラモードはそのMPMリストに包含される高い可能性を有する。この方法では、現在ブロックのイントラモードを導出するために、MPMリストのインデックスのみがシグナリングされる。全部のイントラモードの数に比べて、MPMリストの長さは遙かに小さく(例えば、HEVCでは3-MPMリストが使用され、VVCでは6-MPMリストが使用される)、従って、イントラモードを符号化するために少ないビットしか必要ない。フラグ(mpm_flag)は、現在ブロックのイントラモードがそのMPMリストに属するか否かを示すために使用される。属する場合、現在ブロックのイントラモードは、MPMリストを用いてインデックス付けできる。その他の場合、イントラモードは、2値化コードを用いて直接シグナリングされる。VVC及びHEVCの両方で、MPMリストは、その近隣の左及び上のブロックに基づき構築される。現在ブロックの左近隣ブロック及び上近隣ブロックが予測のために利用不可能であるとき、規定モードリストが使用される。
動きベクトル予測
動きベクトル予測は、動きデータ符号化において使用される技術である。動きベクトルは、通常、それぞれ水平及び垂直方向の動きを表す2つの成分x及びyを有する。現在ブロックの動きベクトルは、通常、現在ピクチャ内の又は前の符号化ピクチャ内の近隣ブロックの動きベクトルと相関される。これは、近隣ブロックが、同様の動きを有する同じ移動するオブジェクトに対応する可能性があり、オブジェクトの動きが時間に渡り急激に変化する可能性が低いからである。従って、近隣ブロックの中の動きベクトルを予測子として使用することは、シグナリングされる動きベクトル差のサイズを低減する。動きベクトル予測子(Motion Vector Predictor (MVP))は、通常、空間近隣ブロックから又は同一位置のピクチャの中の時間近隣ブロックからの、既に復号された動きベクトルから導出される。
ブロックが、CIIP予測の適用により予測されるべきであると決定された場合、その最終的に予測されたサンプルは、イントラ予測サンプルに部分的に基づく。イントラ予測も含まれるので、通常、残差及び変換係数は、INTERブロック(mvd、マージ、スキップ)と比べると、より多い。従って、これらのMHブロックが他のブロックに隣接するとき、境界に渡り、より多くの不連続が存在する。HEVC及びVVCでは、境界の2個の隣接ブロックのうちのいずれかが、イントラ予測されるとき、強力なデブロッキングフィルタがこの境界に対して適用され、境界強度(Boundary Strength (BS))のパラメータは2(最強)に設定される。
VTM3.0では、しかしながら、CIIP予測により予測されたブロックにより引き起こされる可能性のあるブロックアーチファクトは、考慮されない。境界強度導出は、依然として、インターブロックとしてCIIP予測によるブロックを検討する。特定の状況下では、このような処理アプローチは、低い主観的及び客観的品質を生じ得る。
本発明の実施形態は、デブロッキングフィルタを向上するためにMHブロックを組み込むための幾つかの代替案を提供する。ここで、特定の境界の境界強度導出は、MHブロックにより影響される。
参考文献Versatile Video Coding (Draft 3)は、VVCドラフト3.0として定められ、以下のリンクにより見付けられる。
http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/12_Macao/wg11/JVET-L1001-v3.zip
実施形態1
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
1.図7に示されるように、P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、この境界の境界強度パラメータは第1値に設定され、例えば第1値は2に等しくてよい。
2.P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定され(境界強度の正確な値は更なる条件評価に従い決定される)、この境界の境界強度の導出は図7に示される。
4.比較のために、VVC又はITU-H.265ビデオ符号化標準において指定された方法が図8に提供される。
5.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態2
図9に示されるように、2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
6.P及びQのうちの少なくとも1個のブロックがイントラ予測によるブロックである場合、境界強度は2に設定される。
7.その他の場合、P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、この境界の境界強度パラメータは第1値、例えば1又は2に設定される。
8.その他の場合、隣接ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、この境界の境界強度パラメータは第2値、例えば1に設定される。
9.その他の場合、P及びQブロックに属する動きベクトルの間の絶対差が1個の整数ルマサンプルより大きい又はそれに等しい場合、この境界の境界強度パラメータは、第2値、例えば1に設定される。
10.その他の場合、隣接ブロックにおける動き予測が異なる参照ピクチャを参照し、又は動きベクトルの数が異なる場合、この境界の境界強度パラメータは1に設定される。
11.その他の場合、この境界の境界強度パラメータは0に設定される。
12.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態3
図10に示されるように、2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、この境界の境界強度パラメータは以下のように設定される。
13.P及びQのうちの少なくとも1個のブロックが、CIIP予測の適用ではなく、イントラ予測の適用により予測される場合(可能性は、Pブロックが、多仮説予測によるのではなく、イントラ予測により予測され、Qブロックが任意の予測関数により予測される、及びその逆を含む)、境界強度は2に等しく設定される。
14.ブロックQ及びPの両方がインター予測の適用により又はCIIP予測の適用により予測される場合(可能性は、Pブロックがインターブロックであり、Qブロックがインターブロックである、又は代替として、Pブロックがインターブロックであり、QブロックがMHブロックである、又は代替として、PブロックがHMブロックであり、Qブロックがインターブロックである、又は代替として、PブロックがMHブロックであり、QブロックがMHブロックであることを含む)。
1.ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
2.その他の場合(ブロックQ及びPがゼロではない変換係数を有しない場合)、ブロックP及びQを予測するために使用される動きベクトルの間の絶対差が1個の整数サンプルより大きく又はそれに等しい場合、この境界の境界強度パラメータは1に等しく設定される。
3.その他の場合(ブロックQ及びPがゼロではない変換係数を有しない、及び動きベクトルの間の絶対差が1サンプルより小さい場合)、ブロックP及びQが異なる参照ピクチャに基づき予測される、又はブロックQ及びブロックPを予測するために使用される動きベクトルの数が等しくない場合、この境界の境界強度パラメータは1に等しく設定される。
4.その他の場合(上述の3つの条件が偽と評価された場合)この境界の境界強度パラメータは0に等しく設定される。
15.P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、境界強度は以下のように変更される。
1.境界強度が所定の第1値に等しくない場合(一例では、所定の第1値は2に等しい)、境界強度は、所定の第2値だけインクリメントされる(一例では、所定の第2値は1に等しい)。
16.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態4
2つの側(VVCドラフト3.0に定められるようにP及びQ)を有する境界では、境界強度は以下のように導出される。
17.この境界が水平境界であり、P及びQが異なるCTUに属する場合、
1.ブロックQがCIIP予測によるブロックである場合、境界強度は2に設定される。
2.その他の場合、境界強度はVVCドラフト3.0に定められたように導出される。
18.その他の場合、
1.P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、この境界の境界強度パラメータは2に設定される。
その他の場合、この境界の境界強度をVVCドラフト3.0に定められたように導出する。
実施形態5
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
19.Pブロック又はQブロックのうちの少なくとも1個が、CIIP予測の適用ではなく、イントラ予測の適用により予測される場合(可能性は、Pブロックが、多仮説予測によるのではなく、イントラ予測により予測され、Qブロックが任意の予測関数により予測される、及びその逆を含む)、境界強度は2に等しく設定される。
20.ブロックの両方がインター予測又はCIIP予測の適用により予測される場合(可能性は、Pブロックがインターブロックであり、Qブロックがインターブロックである、又は代替として、Pブロックがインターブロックであり、QブロックがMHブロックである、又は代替として、PブロックがHMブロックであり、Qブロックがインターブロックである、又は代替として、PブロックがMHブロックであり、QブロックがMHブロックであることを含む)、
1.該境界が水平境界であり、P及びQが2個の異なるCTU内に位置する場合、
1.ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、該境界の境界強度パラメータは1に等しく設定される。
2.その他の場合(ブロックQがCIIP予測の適用により予測されない場合)、隣接ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
3.その他の場合、ブロックP及びQを予測するために使用される動きベクトルの間の絶対差が1個の整数ルマサンプルより大きく又はそれに等しい場合、該境界の境界強度パラメータは1に等しく設定される。
4.その他の場合、隣接ブロックP及びQにおける動き補償予測が異なる参照ピクチャに基づき実行される場合、又はブロックQ及びブロックPを予測するために使用される動きベクトルの数が等しくない場合、該境界の境界強度パラメータは1に等しく設定される。
5.その他の場合、該境界の境界強度パラメータは0に等しく設定される。
2.その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合)、
1.ブロックP及びQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは1に等しく設定される。
2.その他の場合、隣接ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
3.その他の場合、ブロックP及びQブロックを予測するために使用される動きベクトルの間の絶対差が1個の整数ルマサンプルより大きく又はそれに等しい場合、該境界の境界強度パラメータは1に等しく設定される。
4.その他の場合、隣接ブロックP及びQにおける動き補償予測が異なる参照ピクチャに基づき実行される場合、又はブロックQ及びPを予測するために使用される動きベクトルの数が等しくない場合、該境界の境界強度パラメータは1に等しく設定される。
5.その他の場合、この境界の境界強度パラメータは0に等しく設定される。
21.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態6
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
22.先ず、VVC又はITU-H.265ビデオ符号化標準で指定された方法に従い、該境界の境界強度を決定する。
23.該境界が水平境界であり、P及びQが2個の異なるCTU内に位置する場合、
1.ブロックQがCIIP予測の適用により予測される場合、境界強度は以下のように変更される。
1.境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
24.その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合)、
1.ブロックP又はブロックQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは以下のように調整される。
1.境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
25.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態7
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
26.該境界が水平境界であり、ブロックP及びQが異なるCTU内に位置する場合、
1.ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、境界強度は2に等しく設定される。
2.QブロックがCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.ブロックQが、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
27.その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合)、
1.ブロックP又はQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは2に等しく設定される。
2.P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
28.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態8
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
29.P及びQのうちの少なくとも1個のブロックが、CIIP予測の適用ではなく、イントラ予測の適用により予測される場合(可能性は、Pブロックが、多仮説予測によるのではなく、イントラ予測により予測され、Qブロックが任意の予測関数により予測される、及びその逆を含む)、境界強度は2に等しく設定される。
30.ブロックQ及びPの両方がインター予測の適用により又はCIIP予測の適用により予測される場合(可能性は、Pブロックがインターブロックであり、Qブロックがインターブロックである、又は代替として、Pブロックがインターブロックであり、QブロックがMHブロックである、又は代替として、PブロックがHMブロックであり、Qブロックがインターブロックである、又は代替として、PブロックがMHブロックであり、QブロックがMHブロックであることを含む)。
1.ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
2.その他の場合(ブロックQ及びPがゼロではない変換係数を有しない場合)、ブロックP及びQを予測するために使用される動きベクトルの間の絶対差が1個の整数サンプルより大きく又はそれに等しい場合、この境界の境界強度パラメータは1に等しく設定される。
3.その他の場合(ブロックQ及びPがゼロではない変換係数を有しない、及び動きベクトルの間の絶対差が1サンプルより小さい場合)、ブロックP及びQが異なる参照ピクチャに基づき予測される、又はブロックQ及びブロックPを予測するために使用される動きベクトルの数が等しくない場合、この境界の境界強度パラメータは1に等しく設定される。
4.その他の場合(上述の3つの条件が偽と評価された場合)、この境界の境界強度パラメータは0に等しく設定される。
31.該境界が水平境界であり、P及びQが2個の異なるCTU内に位置する場合、
1.ブロックQがCIIP予測の適用により予測される場合、決定された境界強度は以下のように変更される。
1.境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
32.該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合、
1.ブロックP及びブロックQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは以下のように調整される。
1.境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
33.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態9
一例では、CIIPブロックの境界の境界強度(boundary strength (Bs))を2の値に設定するが、CIIP内のサブブロックの境界の境界強度は1の値に設定する。サブブロックの境界が8×8サンプルグリッドに揃えられていないとき、このようなエッジの境界強度を0の値に設定する。8×8グリッドは、図11に示される。
別の例では、エッジの境界強度を以下のように決定する。
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
34.該境界が水平境界であり、ブロックP及びQが異なるCTU内に位置する場合、
1.ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、境界強度は2に等しく設定される。
2.QブロックがCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.ブロックQが、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
35.その他の場合(CIIPブロック内の2個のサブブロックに対応するP及びQ、つまり目標境界がCIIPブロック内のサブブロック境界である場合)、
1.サブブロック境界が8×8グリッドに揃えられる場合、境界強度を1の値に設定する。
2.その他の場合(サブブロック境界が8×8グリッドに揃えられていない)、境界強度を0の値に設定する。
36.その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれ、P及びQが同じCIIPブロック内にない場合)、
1.ブロックP又はQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは2に等しく設定される。
2.P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
37.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態10
一例では、CIIPブロックの境界の境界強度(boundary strength (Bs))を2の値に設定するが、CIIP内のサブブロックの境界の境界強度は1の値に設定する。サブブロックの境界が4×4サンプルグリッドに揃えられていないとき、このようなエッジの境界強度を0の値に設定する。4×4グリッドは、図12に示される。
別の例では、エッジの境界強度を以下のように決定する。
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
38.該境界が水平境界であり、ブロックP及びQが異なるCTU内に位置する場合、
1.ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、境界強度は2に等しく設定される。
2.QブロックがCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.ブロックQが、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
39.その他の場合(CIIPブロック内の2個のサブブロックに対応するP及びQ、つまり目標境界がCIIPブロック内のサブブロック境界である場合)、
1.サブブロック境界が4×4グリッドに揃えられる場合、境界強度を1の値に設定する。
2.その他の場合(サブブロック境界が4×4グリッドに揃えられていない)、境界強度を0の値に設定する。
40.その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれ、P及びQが同じCIIPブロック内にない場合)、
1.ブロックP又はQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは2に等しく設定される。
2.P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
3.P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
41.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
本発明は、以下の実施形態を更に提供する。
実施形態1。符号化の方法であって、前記符号化は復号又は符号化を含み、前記方法は、
現在符号化単位(又は符号化ブロック)が結合インターイントラ予測の適用により予測されるか否かを決定するステップと、
前記現在符号化単位が結合インターイントラ予測の適用により予測されるとき、前記現在符号化単位の境界の境界強度(boundary strength (Bs))を第1値に設定するステップと、
サブ符号化単位の境界の境界強度(boundary strength (Bs))を第2値に設定するステップであって、前記現在符号化単位は少なくとも2個のサブ符号化単位を含み、前記サブ符号化単位の前記境界は前記少なくとも2個のサブ符号化単位の間の境界である、ステップと、を含む方法。
実施形態2。前記方法は、前記Bsの値がルマ成分についてゼロより大きいとき、デブロッキングを実行するか、又は、前記Bsの前記値がクロマ成分について1より大きいとき、デブロッキングを実行するステップであって、前記Bsの前記値は前記第1値又は前記第2値のうちの1つである、ステップ、を更に含む実施形態1の方法。
実施形態3。前記現在符号化単位(又はブロック)が結合インターイントラ予測の適用により予測されるとき、前記現在符号化単位は、デブロッキングを実行するときにイントラ予測による単位であると考えられる、実施形態1又は2の方法。
図13は、境界強度の導出処理のための機器1300の例示的な構造を示すブロック図である。機器1300は、上述の方法を実行するよう構成され、
2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するよう構成される決定ユニット1302であって、2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、2個のブロックは境界に関連付けられる、決定ユニット1302と、
2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、境界の境界強度(boundary strength (Bs))を第1値に設定し、2個のブロックのうちのいずれもCIIPの適用により予測されないとき、境界の境界強度(boundary strength (Bs))を第2値に設定するよう構成される設定ユニット1304と、を含んでよい。
一例として、設定ユニットは、第1ブロックがCIIPの適用により予測されるとき又は第2ブロックがCIIPの適用により予測されるとき、境界のBsを第1値に設定するよう構成される。
機器2500は、ビットストリームをパースしてフラグを取得するよう構成されるパースユニット(図13に示されない)であって、フラグは、2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるかどうかを示すために使用される、パースユニット、を更に含んでよい。
決定ユニット1302は、2個のブロックのうちの少なくとも1個がイントラ予測の適用により予測されるかどうかを決定するよう更に構成されてよい。設定ユニット1304は、2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、境界のBsを第1値に設定するよう構成される。例えば、第1値は1又は2であってよい。
設定ユニット1304は、2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び2個のブロックのうちのいずれもCIIPの適用により予測されないとき、境界のBsを第2値に設定するよう構成される。例えば、2個のブロック(P及びQ)のうちの少なくとも1個がゼロではない変換係数を有するとき、第2値は1であってよい。
実施形態の利点
中程度の強度(境界強度が1に等しい)を有するデブロッキングフィルタによる多仮説予測の適用により予測されるブロックのデブロッキングフィルタ。
ブロックがCIIP予測の適用により予測される場合、第1予測はインター予測の適用により取得され、第2予測はイントラ予測の適用により取得され、それらは後に結合される。最終的な予測はイントラ予測部分を含むので、これは標準的により多くのブロックアーチファクトが観察される。従って、CIIP予測により予測されたブロックの境界においても、ブロックアーチファクトが存在する可能性がある。この問題を軽減するために、本発明の実施形態に従い境界強度が2に設定され、CIIP予測の適用により予測されるブロックエッジのデブロッキングフィルタの機会が向上される。
本発明の更なる実施形態は、以下のように必要なラインメモリを削減する。ラインメモリは、上のCTU行に対応する情報を格納するために必要な及び近隣の下のCTU行の処理の間に必要なメモリとして定義される。例えば、2つのCTU行の間の水平境界をフィルタリングするために、上のCTUの予測モード情報(イントラ予測/インター予測/多仮説予測)はリストメモリに格納される必要がある。ブロックの予測モードを記述するために3つの状態(イントラ予測/インター予測/多仮説予測)が可能なので、ラインメモリ要件はブロック当たり2ビットとして定義できる。
本発明の実施形態によると、ブロック(実施形態ではPブロック)が上のCTU行に属する場合、デブロッキング動作は、ブロックがインター予測又はイントラ予測により予測されるかに関する情報のみを必要とする(従って、2つの状態のみであり、これはブロック当たり1ビットを用いて格納できる)。理由は、以下の通りである。
PブロックとQブロックとの間の境界が水平境界であり、Qブロック及びPブロックが2個の異なるCTUに属する場合(全部の実施形態において、QブロックがPブロックに関して下にあるものである)、PブロックがCIIP予測の適用により予測されるかどうかの情報は、境界強度パラメータの決定で利用されない。従って、それは格納される必要がない。本発明の実施形態の助けにより、ハードウェア実装において、Pブロックの予測モードは、(PブロックがCIIP予測により予測されるとき)一時的にインター予測として変更でき、境界強度の決定は、変更された予測モードに従い実行できる。その後(境界強度の決定の後)、予測モードはCIIP予測に変更され戻すことができる。ハードウェア実装は、ここに説明した方法(CTU境界におけるPブロックの予測モードを変更すること)に限定されず、これは単に、本発明の実施形態により、PブロックがCIIP予測により予測されるかどうかの情報が、(水平CTU境界における)境界強度の決定において必須ではないことを説明するための例として提示されることに留意する。
従って、本発明の実施形態によると、必要なラインメモリは、ブロック当たり2ビットから、ブロック当たり1ビットに削減される。ハードウェアに実装される必要のある合計ラインメモリは、ピクチャ幅に比例し及び最小ブロック幅に反比例することに留意する。
実施形態によると、上述の全部の実施形態は、ブロックがCIIP予測の適用により予測される場合、第1予測はインター予測の適用により取得され、第2予測はイントラ予測の適用により取得され、それらは後に結合されることに留意する。
上述の実施形態は、デブロッキングフィルタを実行するとき、CIIPブロックが異なる範囲でイントラブロックと考えられることを示す。実施形態1、2、及び3は、境界の境界強度を調整するために、3つの異なる方針を使用する。実施形態1は、MHブロックを完全にイントラブロックと見なす。従って、Bsを2に設定する条件は、表1と同じである。
実施形態2も、MHブロックにより引き起こされる歪みがイントラブロックほど高くないと見なす。従って、境界強度条件は、先ずイントラブロックについて、次にCIIPブロックについてチェックされる。しかしながら、CIIPブロックが検出されるとき、Bsは依然として2と考えられる。
実施形態3は、MHブロックを部分的にイントラブロックと見なし、境界の少なくとも1個の隣接ブロックがMHブロックである場合、Bsは1だけ増大される。従来の導出方針を用いて、Bsが既に2である場合、Bsは変更されない。
図8は、VVCドラフト3.0におけるBsの導出を示す。図7、9、及び10は、それぞれ、実施形態1、2、及び3のBs導出に対する変更を示す。
実施形態1及び2では、潜在的な歪みだけでなく、処理ロジックも削減されることに留意する価値がある。実施形態1及び2では、P又はQブロックがMHブロックである限り、係数及び動きベクトルについてのチェックは、もはや必要なく、従って、条件チェックの遅延が短縮される。
実施形態4、5、6は、それぞれ、実施形態1、2、及び3の変形であり、ラインバッファメモリが考慮される。実施形態1、2、及び3に対するそれらの中核となる変更は、2つの側P及びQが異なるCTU内に位置し、エッジが水平である場合、MHブロックのチェックが非対称に実行されることである。つまり、P側ブロック(つまり上側)はチェックされないが、Q側(つまり下側)のみがチェックされる。この方法では、別のCTU内に位置するP側ブロックのCIIPフラグを格納するために、追加のラインバッファメモリが割り当てられない。
上述の6個の実施形態に加えて、MHブロックの1つの更なる特徴は、MHブロックが一貫してイントラブロックと考えられる必要がないことであり得る。一例では、現在ブロックの動きベクトル予測子を検索するとき、その近隣ブロックがMHブロックである場合、これらのMHブロックの動きベクトルは、動きベクトル予測子と考えることができる。この場合、HMブロックのインター予測情報が使用され、従って、HMブロックはもはやイントラブロックと考えられない。別の例では、イントラブロックのMPMリストを構築するとき、現在ブロックの近隣MHブロックは、イントラ情報を含まないと考えることができる。従って、現在ブロックのMPMリスト構築のために、それらのMHブロックの利用可能性をチェックするとき、それらは利用不可能とラベル付けされる。この段落で言及されるMHブロックは、デブロッキングフィルタのBs値を決定するために使用されるMHブロックにのみ限定されないことに留意する。
上述の6個の実施形態に加えて、MHブロックの1つの更なる特徴は、MHブロックが一貫してイントラブロックと考えられることであり得る。一例では、現在ブロックの動きベクトル予測子を検索するとき、その近隣ブロックがMHブロックである場合、これらのMHブロックの動きベクトルは、動きベクトル予測子から除外される。この場合、HMブロックのインター予測情報が使用されず、従って、HMブロックはイントラブロックと考えられる。別の例では、イントラブロックのMPMリストを構築するとき、現在ブロックの近隣MHブロックは、イントラ情報を含むと考えることができる。従って、現在ブロックのMPMリスト構築のために、それらのMHブロックの利用可能性をチェックするとき、それらは利用可能とラベル付けされる。この段落で言及されるMHブロックは、デブロッキングフィルタのBs値を決定するために使用されるMHブロックにのみ限定されないことに留意する。
以下は、上述の実施形態に示されたような符号化方法及び復号方法の適用、及びそれらを使用するシステムの説明である。
図14は、コンテンツ配信サービスを実現するコンテンツ供給システム3100を示すブロック図である。このコンテンツ供給システム3100は、キャプチャ装置3102、端末装置3106を含み、及び任意的にディスプレイ3126を含む。キャプチャ装置3102は、通信リンク3104を介して端末装置3106と通信する。通信リンクは、上述の通信チャネル13を含んでよい。通信リンク3104は、限定ではないが、WIFI、イーサネット、ケーブル、無線(3G/4G/5G)、USB、又はそれらの任意の種類の組み合わせ、等を含む。
キャプチャ装置3102は、データを生成し、上述の実施形態で示したような符号化方法によりデータを符号化してよい。或いは、キャプチャ装置3102は、データをストリーミングサーバ(図に示されない)へ配信してよく、サーバは、データを符号化し、符号化データを端末装置3106へ送信する。キャプチャ装置3102は、限定ではないが、カメラ、スマートフォン又はPad、コンピュータ又はラップトップ、ビデオ会議システム、PDA、車載装置、又はそれらのいずれかの組み合わせ、等を含む。例えば、キャプチャ装置3102は、上述のようなソース装置12を含んでよい。データがビデオを含むとき、キャプチャ装置3102に含まれるビデオエンコーダ20は、実際に、ビデオ符号化処理を実行してよい。データがオーディオ(つまり、音声)を含むとき、キャプチャ装置3102に含まれるオーディオエンコーダは、実際に、オーディオ符号化処理を実行してよい。幾つかの実用的なシナリオでは、キャプチャ装置3102は、符号化ビデオ及びオーディオデータを、それらを一緒に多重化することにより、配信する。他の実用的なシナリオでは、例えば、ビデオカメラシステムで、符号化オーディオデータ及び符号化ビデオデータは、多重化されない。キャプチャ装置3102は、符号化オーディオデータ及び符号化ビデオデータを端末装置3106へ別個に配信する。
コンテンツ供給システム3100では、端末装置310は、符号化データを受信し再生する。端末装置3106は、上述の符号化データを復号する能力を有するスマートフォン又はPad3108、コンピュータ又はラップトップ3110、ネットワークビデオレコーダ(network video recorder (NVR))/デジタルビデオレコーダ(digital video recorder (DVR))3112、TV3114、セットトップボックス(set top box (STB))3116、ビデオ会議システム3118、ビデオ監視システム3120、パーソナルデジタルアシスタント(personal digital assistant (PDA))3122、車載装置3124、又はそれらのいずれかの組合せ、等のような、データ受信及び復元能力を備えた装置であり得る。例えば、端末装置3106は、上述のような宛先装置14を含んでよい。符号化データがビデオを含むとき、端末装置に含まれるビデオデコーダ30は、ビデオ復号を実行するよう優先される。符号化データがオーディオを含むとき、端末装置に含まれるオーディオデコーダは、オーディオ復号処理を実行するよう優先される。
ディスプレイを備える端末装置、スマートフォン、又はPad3108、コンピュータ又はラップトップ3110、ネットワークビデオレコーダ(network video recorder (NVR))/デジタルビデオデコーダ(digital video recorder (DVR))3112、TV3114、パーソナルデジタルアシスタント(personal digital assistant (PDA))3122、又は車載装置3124では、端末装置は復号データを自身のディスプレイに供給できる。ディスプレイを備えない端末装置、例えばSTB3116、ビデオ会議システム3118、又はビデオ監視システム3120では、外部ディスプレイ3126は、復号データを受信し表示するために接続される。
このシステム内の各装置が符号化又は復号を実行するとき、上述の実施形態において示されたように、ピクチャ符号化装置又はピクチャ復号装置が使用できる。
図15は、端末装置3106の例の構造を示す図である。端末装置3106がキャプチャ装置3102からストリームを受信した後に、プロトコル進行ユニット3202は、ストリームの送信プロトコルを分析する。プロトコルは、限定ではないが、リアルタイムストリーミングプロトコル(Real Time Streaming Protocol (RTSP))、ハイパーテキスト転送プロトコル(Hyper Text Transfer Protocol (HTTP))、HTTPライブストリーミングプロトコル(HTTP Live streaming protocol (HLS))、MPEG-DASH、リアルタイムトランスポートプロトコル(Real-time Transport protocol (RTP))、リアルタイムメッセージングプロトコル(Real Time Messaging Protocol (RTMP))、又は任意の種類のそれらの組み合わせ、等を含む。
プロトコル進行ユニット3202がストリームを処理した後に、ストリームファイルが生成される。ファイルは、逆多重化ユニット3204へと出力される。逆多重化ユニット3204は、多重化データを符号化オーディオデータ及び符号化ビデオデータに分離できる。上述のように、幾つかの実用的なシナリオでは、例えば、ビデオ会議システムで、符号化オーディオデータ及び符号化ビデオデータは、多重化されない。この状況では、符号化データは、逆多重化ユニット3204を通らずに、ビデオデコーダ3206及びオーディオデコーダ3208へと送信される。
逆多重化処理により、ビデオエレメンタリストリーム(elementary stream (ES))、オーディオES、及び任意の字幕が生成される。上述の実施形態において説明したようなビデオデコーダ30を含むビデオデコーダ3206は、上述の実施形態において示したような復号方法によりビデオESを復号して、ビデオフレームを生成し、このデータを同期ユニット3212に供給する。オーディオデコーダ3208は、オーディオESを復号してオーディオフレームを生成し、このデータを同期ユニット3212に供給する。或いは、ビデオフレームは、同期ユニット3212に供給する前に、バッファ(図Yに示されない)に格納されてよい。同様に、オーディオフレームは、同期ユニット3212に供給する前に、バッファ(図Yに示されない)に格納されてよい。
同期ユニット3212は、ビデオフレーム及びオーディオフレームを同期化し、ビデオ/オーディオをビデオ/オーディオディスプレイ3214に供給する。例えば、同期ユニット3212は、ビデオ及びオーディオ情報の提示を同期化する。情報は、符号化オーディオ及び視覚データの提示に関するタイムスタンプ、及びデータストリーム自体の配信に関するタイムスタンプを用いてシンタックス内に符号化してよい。
字幕がストリームに含まれる場合、字幕デコーダ3210は、字幕を復号し、それをビデオフレーム及びオーディオフレームと同期化させ、ビデオ/オーディオ/字幕をビデオ/オーディオ/字幕ディスプレイ3216に供給する。
本発明は、上述のシステムに限定されず、上述の実施形態におけるピクチャ符号化装置又はピクチャ復号装置のいずれも、他のシステム、例えば車両システムに組み込むことができる。
本発明の実施形態は主にビデオ符号化に基づき説明されたが、留意すべきことに、符号化システム10、エンコーダ20、及びデコーダ30(及び相応してシステム10)の実施形態、並びにここに説明された他の実施形態は、静止画処理又は符号化、つまりビデオ符号化におけるような任意の先行する又は連続するピクチャと独立した個々のピクチャの処理又は符号化のために構成されてもよい。一般的に、ピクチャ処理符号化が単一のピクチャ17に限定される場合、インター予測ユニット244(エンコーダ)及び344(デコーダ)のみが利用可能である必要はない。ビデオエンコーダ20及びビデオデコーダ30の全ての他の機能(ツール又は技術とも呼ばれる)は、静止画処理、例えば残差計算204/304、変換206、量子化208、逆量子化210/310、(逆)変換212/312、パーティション262/362、イントラ予測254/354、及び/又はループフィルタ220、320、及びエントロピー符号化270及びエントロピー復号304のために等しく使用されてよい。
例えばエンコーダ20及びデコーダ30の実施形態、及び例えばエンコーダ20及びデコーダ30を参照してここに説明した機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装されてよい。ソフトウェアで実装される場合、機能は、1つ以上の命令又はコードとしてコンピュータ可読媒体に格納され又は通信媒体を介して送信され、ハードウェアに基づく処理ユニットにより実行されてよい。コンピュータ可読媒体は、データ記憶媒体のような有形媒体に対応するコンピュータ可読記憶媒体、又は例えば通信プロトコルに従いある場所から別の場所へのコンピュータプログラムの転送を実現する任意の媒体を含む通信媒体、を含んでよい。この方法では、コンピュータ可読媒体は、一般的に、(1)非一時的である有形コンピュータ可読記憶媒体、又は(2)信号若しくは搬送波のような通信媒体、に対応してよい。データ記憶媒体は、本開示で説明された技術の実装のために命令、コード、及び/又はデータ構造を読み出すために、1つ以上のコンピュータ又は1つ以上のプロセッサによりアクセス可能な任意の利用可能な媒体であってよい。コンピュータプログラムプロダクトは、コンピュータ可読媒体を含んでよい。
例により、限定ではなく、このようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、又は他の光ディスク記憶、磁気ディスク記憶、又は他の磁気記憶装置、フラッシュメモリ、又は所要のプログラムコードを命令又はデータ構造の形式で格納するために使用可能な、コンピュータによりアクセス可能な任意の他の媒体、を含み得る。また、任意の接続は、適正にコンピュータ可読媒体と呼ばれる。例えば命令がウェブサイト、サーバ、又は他のリモートソースから、同軸ケーブル、光ファイバケーブル、より対線、デジタル加入者線(digital subscriber line (DSL))、又は赤外線、無線、及びマイクロ波のような無線技術を用いて送信される場合、同軸ケーブル、光ファイバケーブル、より対線、DSL、又は赤外線、無線、及びマイクロ波のような無線技術は、媒体の定義に含まれる。しかしながら、理解されるべきことに、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とする。ディスク(disk)及びディクス(disc)は、ここで使用されるとき、コンパクトディスク(compact disc (CD))、レーザディスク、光ディスク、デジタルバーサタイルディスク(digital versatile disc (DVD))、フロッピーディスク、及びブルーレイディスクを含み、ディスク(disk)は通常データを磁気的に再生し、ディスク(disc)はデータをレーザにより光学的に再生する。前述の結合も、コンピュータ可読媒体の範囲に含まれるべきである。
命令は、1つ以上のデジタル信号プロセッサ(digital signal processor (DSP))、汎用マイクロプロセッサ、特定用途向け集積回路(application specific integrated circuit (ASIC))、フィールドプログラマブルロジックアレイ(field programmable logic array (FPGA))、又は他の等価な集積又は個別論理回路、のような1つ以上のプロセッサにより実行されてよい。従って、用語「プロセッサ」は、ここで使用されるとき、前述の構造のうちのいずれか、又はここに記載される技術の実装に適する任意の他の構造を表してよい。更に、幾つかの態様では、ここに説明された機能は、符号化及び復号又は結合されたコーデックに組み込まれるために構成される専用ハードウェア及び/又はソフトウェアモジュール内で提供されてよい。更に、技術は、全部、1つ以上の回路又は論理素子で実装され得る。
本開示の技術は、無線ハンドセット、集積回路(integrated circuit (IC))、又はICのセット(例えば、チップセット)を含む種々の装置又は機器の中で実装されてよい。種々のコンポーネント、モジュール、又はユニットは、開示の技術を実行するよう構成される装置の機能的側面を強調するために、本開示で説明されたが、異なるハードウェアユニットによる実現を必ずしも要求しない。むしろ、上述のように、種々のユニットは、適切なソフトウェア及び/又はファームウェアと組み合わせて、コーデックハードウェアユニット内で結合され、又は上述のような1つ以上のプロセッサを含む相互運用ハードウェアユニットの集合により提供されてよい。
[技術分野]
本願(開示)の実施形態は、概して、ピクチャ処理の分野に関し、特に、エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法に関する。
ビデオ符号化(ビデオ符号化及び復号)は、広範囲のデジタルビデオアプリケーション、例えば、放送用デジタルテレビ、インターネット及び移動体ネットワークを介するビデオ送信、ビデオチャットのようなリアルタイム会話アプリケーション、ビデオ会議、DVD及びBlue-rayディスク、ビデオコンテンツ取得及び編集システム、及びセキュリティアプリケーションのカムコーダで使用される。
比較的短いビデオでも描写するために必要なビデオデータの量は相当なものになり得る。これは、データが限られた帯域幅能力を有する通信ネットワークに渡りストリーミングされる又はその他の場合に通信されるとき、困難をもたらすことがある。従って、ビデオデータは、通常、今日の電気通信ネットワークに渡り通信される前に、圧縮される。ビデオが記憶装置に格納されるとき、メモリリソースが限られていることがあるので、ビデオのサイズも問題になり得る。ビデオ圧縮装置は、送信又は記憶の前に、ソースにおいてビデオデータを符号化するためにソフトウェア及び/又はハードウェアを度々使用し、それによりデジタルビデオ画像を表現するために必要なデータの量を削減する。圧縮されたデータは、次に、ビデオデータを復号するビデオ伸長装置により宛先において受信される。限られたネットワークリソース及びより高いビデオ品質の増え続ける要求に伴い、ピクチャ品質を僅かしか又は全く犠牲にせずに圧縮率を向上する改良された圧縮及び伸長技術が望ましい。
本願の実施形態は、独立請求項に従い符号化及び復号の機器及び方法を提供する。
前述の及び他の目的は、独立請求項の主題により達成される。更なる実装形式は、従属請求項、説明、及び図面から明らかである。
第1の態様によると、本発明は符号化の方法に関し、前記符号化は復号又は符号化を含み、前記方法は、2個のブロックのうちの少なくとも1個がCIIP(又はMH)予測によるブロックであるかどうかを決定するステップであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、ステップ、を含む。当該方法は、前記2個のブロックのうちの少なくとも1個がCIIPによるブロックであるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定するか、前記2個のブロックのうちのいずれもCIIPによるブロックではないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定するステップを更に含む。
本発明の第1の態様による方法は、本発明の第2の態様による機器により実行できる。本発明の第2の態様による機器は、2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するよう構成される決定ユニットであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、決定ユニットを含む。本発明の第2の態様による前記機器は、前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定し、前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定する設定ユニットを更に含む。
本発明の第2の態様による方法の更なる特徴及び実装形式は、本発明の第1の態様による機器の特徴及び実装形式に対応する。
第3の態様によると、本発明は、プロセッサとメモリとを含む、ビデオストリームを復号する機器に関する。前記メモリは、前記プロセッサに第1の態様による方法を実行させる命令を格納する。
第4の態様によると、本発明は、プロセッサとメモリとを含む、ビデオストリームを符号化する機器に関する。前記メモリは、前記プロセッサに第1の態様による方法を実行させる命令を格納する。
第5の態様によると、実行されると1つ以上のプロセッサをビデオデータを符号化するよう構成させる命令を格納したコンピュータ可読記憶媒体が提案される。前記命令は、前記1つ以上のプロセッサに、第1又は第2の態様又は第1の態様の任意の可能な実施形態による方法を実行させる。
第6の態様によると、本発明は、コンピュータ上で実行されると第1の態様又は第1の態様の任意の可能な実施形態による方法を実行するためのプログラムコードを含むコンピュータプログラムに関する。
本発明の実施形態によると、前記2個のブロックのうちの少なくとも1個がCIIPによるブロックであるとき、前記境界強度を前記第1値に設定することにより(例えば、2に設定される)、CIIP予測の適用により予測されるブロックエッジのデブロッキングフィルタの機会が増大される。
1つ以上の実施形態の詳細は、添付の図面及び以下の説明において説明される。他の特徴、目的、及び利点は、説明、図面、及び請求項から明らかになるだろう。
以下では、本発明の実施形態は、添付の図面及び図を参照して更に詳細に説明される。
本発明の実施形態を実施するよう構成されるビデオ符号化システムの例を示すブロック図である。 本発明の実施形態を実施するよう構成されるビデオ符号化システムの別の例を示すブロック図である。 本発明の実施形態を実施するよう構成されるビデオエンコーダの例を示すブロック図である。 本発明の実施形態を実施するよう構成されるビデオデコーダの例示的な構造を示すブロック図である。 符号化機器又は復号機器の例を示すブロック図である。 符号化機器又は復号機器の別の例を示すブロック図である。 結合インターイントラ予測(combined inter-intra prediction (CIIP))を適用されたCU内の全部のサブブロック境界の例を示す。 境界のP及びQブロックの例を示す。 実施形態1のBs導出処理の例を示す。 VVCにおけるBs導出処理の例を示す。 実施形態2のBs導出処理の例を示す。 実施形態3のBs導出処理の例を示す。 8×8サンプルグリッドと重なり合う(揃えられる)CU内の全部のサブブロックエッジのデブロッキングの例を示す。 4×4サンプルグリッドと重なり合うCU内の全部のサブブロックエッジのデブロッキングの例を示す。 境界強度の導出処理のための機器の例示的な構造を示すブロック図である。 コンテンツ配信サービスを実現するコンテンツ供給システム3100の例示的な構造を示すブロック図である。 端末装置の例の構造を示すブロック図である。
以下では、明示的に断りのない場合、同一の参照符号は同一の又は少なくとも機能的に等価な特徴を表す。
以下の説明では、本開示の部分を形成し、図示により本発明の実施形態の特定の態様又は本発明の実施形態が使用され得る特定の態様を示す、添付の図面を参照する。本発明の実施形態は、他の態様で使用され、図に示されない構造的又は論理的変化を含んでよいことが理解される。以下の詳細な説明は、従って、限定的意味と考えられるべきではなく、本発明の範囲は添付の特許請求の範囲により定められる。
例えば、記載の方法に関連する開示は、方法を実行するよう構成される対応する装置又はシステムについても当てはまり、逆も同様である。例えば、1又は複数の特定の方法のステップが説明される場合、1つ以上のユニットが明示的に説明され又は図示されない場合でも、対応する装置は、説明される1又は複数の方法のステップを実行するために、1又は複数のユニット、例えば機能ユニットを含んでよい(例えば、1つのユニットが1又は複数のステップを実行し、又は複数のユニットの各々が複数のステップのうちの1つ以上を実行する)。他方で、例えば、特定の機器が1又は複数のユニット、例えば機能ユニットに基づき説明される場合、1又は複数のステップが明示的に説明され又は図示されない場合でも、対応する方法は、1又は複数のユニットの機能を実行するための1つのステップを含んでよい(例えば、1つのステップが1又は複数のユニットの機能を実行し、又は複数のステップの各々が複数のユニットのうちの1つ以上の機能を実行する)。更に、ここで説明される種々の例示的な実施形態及び/又は態様の特徴は、特に断りのない限り、互いに結合されてよいことが理解される。
ビデオ符号化は、標準的に、ビデオ又はビデオシーケンスを形成する、ピクチャのシーケンスの処理を表す。用語「ピクチャ」の代わりに、用語「フレーム」又は「画像」がビデオ符号化の分野では同義語として使用され得る。ビデオ符号化(又は一般的に符号化)は、ビデオ符号化及びビデオ復号の2つの部分を含む。ビデオ符号化は、ソース側で実行され、標準的に、元のビデオピクチャを処理して(例えば、圧縮による)、(より効率的な記憶及び/又は伝送のために)ビデオピクチャを表現するために必要なデータ量を削減することを含む。ビデオ復号は、宛先側で実行され、標準的に、エンコーダと比べて逆の処理を含み、ビデオピクチャを再構成する。ビデオピクチャ(又は一般的にピクチャ)の「符号化」を参照する実施形態は、ビデオピクチャ又はそれぞれのビデオシーケンスの「符号化」又は「復号」に関連すると理解されるべきである。符号化部分及び復号部分の結合は、コーデック(CODEC (Coding and Decoding))とも呼ばれる。
無損失ビデオ符号化の場合には、元のビデオピクチャが再構成可能である。つまり、再構成されたビデオピクチャは、元のビデオピクチャと同じ品質を有する(伝送損失、又は記憶若しくは伝送中に他のデータ損失が無いと仮定する)。損失ビデオ符号化の場合には、例えば量子化による更なる圧縮が実行され、ビデオピクチャを表現するデータ量を削減する。これは、デコーダで完全に再構成できない。つまり、再構成されたビデオピクチャの品質は、元のビデオピクチャの品質と比べて低い又は悪い。
幾つかのビデオ符号化標準は、「損失ハイブリッドビデオコーデック」のグループに属する(つまり、サンプルドメインにおける空間及び時間予測と、変換ドメインにおける量子化を適用する2D変換符号化と、を結合する)。ビデオシーケンスの各ピクチャは、標準的に、重なり合わないブロックのセットにパーティションされ、符号化は、標準的に、ブロックレベルで実行される。言い換えると、エンコーダにおいて、例えば空間(イントラピクチャ)予測及び/又は時間(インターピクチャ)予測を用いて予測ブロックを生成し、予測ブロックを現在ブロック(現在処理されている/処理されるべきブロック)から減算して残差ブロックを取得し、残差ブロックを変換し、及び変換ドメインで残差ブロックを量子化して、伝送されるべきデータ量を削減し(圧縮)することにより、ビデオは標準的にブロック(ビデオブロック)レベルで処理され、つまり符号化される。一方で、デコーダにおいて、エンコーダと比べて逆の処理が、符号化又は圧縮されたブロックに対して適用されて、提示するために現在ブロックを再構成する。更に、エンコーダは、デコーダ処理ループを複製して、後続のブロックを処理する、つまり符号化するために、両方が同一の予測(例えば、イントラ及びインター予測)及び/又は再構成を生成するようにする。
ビデオ符号化システム10の以下の実施形態では、ビデオエンコーダ20及びビデオデコーダ30は図1~3に基づき説明される。
図1Aは、本願の技術を利用し得る例示的な符号化システム10、例えばビデオ符号化システム10(又は略して符号化システム10)を示す概略的ブロック図である。ビデオ符号化システム10のビデオエンコーダ20(又は略してエンコーダ20)及びビデオデコーダ30(又は略してデコーダ30)は、本願で説明される種々の例に従う技術を実行するよう構成され得る装置の例を表す。
図1Aに示すように、符号化システム10は、符号化ピクチャデータ21を、例えば符号化ピクチャデータ13を復号する宛先装置14に提供するよう構成されるソース装置12を含む。
ソース装置12は、エンコーダ20を含み、追加でつまり任意で、ピクチャソース16、プリプロセッサ(又は前処理ユニット)18、例えばピクチャプリプロセッサ18、及び通信インタフェース又は通信ユニット22を含んでよい。
ピクチャソース16は、任意の種類のピクチャキャプチャ装置、例えば現実のピクチャをキャプチャするカメラ、及び/又は任意の種類のピクチャ生成装置、例えばコンピュータアニメーションピクチャを生成するコンピュータグラフィックプロセッサ、又は現実世界のピクチャ、コンピュータの生成したピクチャ(例えば、スクリーンコンテンツ、仮想現実(virtual reality (VR))ピクチャ)及び/又はそれらの任意の組み合わせ(例えば、拡張現実(augmented reality (AR))ピクチャ)を取得し及び/又は提供する任意の種類の他の装置、を含み又はそれであってよい。ピクチャソースは、前述のピクチャのうちのいずれかを格納する任意の種類のメモリ又は記憶であってよい。
プリプロセッサ18及び前処理ユニット18により実行される処理と対照的に、ピクチャ又はピクチャデータ17は、生ピクチャ又は生ピクチャデータ17とも呼ばれてよい。
プリプロセッサ18は、(生)ピクチャデータ17を受信し、ピクチャデータ17に前処理を実行して、前処理済みピクチャ19又は前処理済みピクチャデータ19を取得するよう構成される。プリプロセッサ18により実行される前処理は、例えばトリミング、色形式変換(例えば、RGBからYCbCrへ)、色補正、又はノイズ除去を含んでよい。前処理ユニット18は任意的コンポーネントであってよいことが理解できる。
ビデオエンコーダ20は、前処理済みピクチャデータ19を受信し、符号化ピクチャデータ21を提供するよう構成される(更なる詳細は、例えば図2に基づき後述される)。
ソース装置12の通信インタフェース22は、符号化ピクチャデータ21を受信し、符号化ピクチャデータ21(又はその任意の更なる処理済みバージョン)を通信チャネル13を介して別の装置、例えば宛先装置14又は任意の他の装置へ記憶又は直接再構成のために送信するよう構成されてよい。
宛先装置14は、デコーダ30(例えば、ビデオデコーダ30)を含み、追加で、つまり任意で、通信インタフェース又は通信ユニット28、ポストプロセッサ32(又は後処理ユニット32)、及びディスプレイ装置34を含んでよい。
宛先装置14の通信インタフェース28は、符号化ピクチャデータ21(又はその任意の更なる処理済みバージョン)を、例えばソース装置12から直接に又は任意の他のソース、例えば記憶装置、例えば符号化ピクチャデータ記憶装置から受信し、符号化ピクチャデータ21をデコーダ30へ提供するよう構成される。
通信インタフェース22及び通信インタフェース28は、符号化ピクチャデータ21又は符号化データ13を、ソース装置12と宛先装置14との間の直接通信リンク、例えば直接有線又は無線接続、又は任意の種類のネットワーク、例えば有線又は無線ネットワーク、又はそれらの任意の組み合わせ、又は任意の種類の私設及び公衆ネットワーク、又はそれらの任意の種類の組み合わせを介して送信又は受信するよう構成されてよい。
通信インタフェース22は、通信リンク又は通信ネットワークを介して送信するために、例えば、符号化ピクチャデータ21を適切な形式、例えばパケットにパッケージし、及び/又は任意の種類の送信符号化若しくは処理を用いて符号化ピクチャデータを処理するよう構成されてよい。
通信インタフェース28は、通信インタフェース22の相手方を形成し、例えば、送信されたデータを受信し、任意の種類の対応する送信復号若しくは処理を用いて送信データを処理し、及び/又はパッケージ解除して符号化ピクチャデータ21を取得するよう構成されてよい。
通信インタフェース22及び通信インタフェース28の両方は、図1Aでソース装置12から宛先装置14を指す通信チャネル13の矢印により示されるように、単方向通信インタフェース、又は、双方向通信インタフェースとして構成されてよく、例えば接続を確立するため、肯定応答し及び通信リンク及び/又はデータ送信、例えば符号化ピクチャデータ送信に関連する任意の他の情報を交換するために、例えばメッセージを送信し及び受信するよう構成されてよい。
デコーダ30は、符号化ピクチャデータ21を受信し、復号ピクチャデータ31又は復号ピクチャ31を提供するよう構成される(更なる詳細は、例えば図3又は図5に基づき後述される)。
宛先装置14のポストプロセッサ32は、復号ピクチャデータ31(再構成ピクチャデータとも呼ばれる)、例えば復号ピクチャ31を後処理して、後処理済みピクチャデータ33、例えば後処理済みピクチャ33を取得するよう構成される。後処理ユニット32により実行される後処理は、例えば色形式変換(例えば、YCbCrからRGBへ)、色補正、トリミング、又は再サンプリング、又は、例えば復号ピクチャデータ31を例えばディスプレイ装置34による表示のために準備するための任意の他の処理、を含んでよい。
宛先装置14のディスプレイ装置34は、例えばユーザ又はビューアにピクチャを表示するために、後処理済みピクチャデータ33を受信するよう構成される。ディスプレイ装置34は、再構成ピクチャを提示する任意の種類のディスプレイ、例えば内蔵又は外部ディスプレイ又はモニタであり又はそれを含んでよい。ディスプレイは、例えば液晶ディスプレイ(liquid crystal displays (LCD))、有機発光ダイオード(organic light emitting diodes (OLED))ディスプレイ、プラズマディスプレイ、プロジェクタ、マイクロLEDディスプレイ、シリコン上の液晶(liquid crystal on silicon (LCoS))、デジタル光プロセッサ(digital light processor(DLP))又は任意の種類の他のディスプレイを含んでよい。
図1Aはソース装置12及び宛先装置14を別個の装置として示すが、装置の実施形態は、ソース装置12又は対応する機能と宛先装置14又は対応する機能の両方又は両方の機能を含んでもよい。このような実施形態では、ソース装置12又は対応する機能及び宛先装置14又は対応する機能は、同じハードウェア及び/又はソフトウェアを用いて又は別個のハードウェア及び/又はソフトウェア又はそれらの任意の組み合わせにより実装されてよい。
説明に基づき当業者に明らかなように、図1Aに示されるようなソース装置12及び/又は宛先装置14内の異なるユニットの機能又は機能の存在及び(正確な)分割は、実際の装置及び用途に依存して変化してよい。
エンコーダ20(例えば、ビデオエンコーダ20)、又はデコーダ30(例えば、ビデオデコーダ30)、又はエンコーダ20及びデコーダ30の両方は、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processors (DSP))、特定用途向け集積回路(application-specific integrated circuits (ASIC))、フィールドプログラマブルゲートアレイ(field-programmable gate arrays (FPGA))、個別ロジック、ハードウェア、ビデオ符号化専用若しくはそれらの任意の組み合わせのような、図1Bに示される処理回路により実装されてよい。エンコーダ20は、図2のエンコーダ20に関して議論したような種々のモジュール及び/又はここで説明される任意の他のエンコーダシステム若しくはサブシステムを実現するために、処理回路46により実装されてよい。デコーダ30は、図3のデコーダ30に関して議論したような種々のモジュール及び/又はここで説明された任意の他のデコーダシステム若しくはサブシステムを実現するために、処理回路46により実装されてよい。処理回路は、後に議論されるような種々の動作を実行するよう構成されてよい。図5に示すように、技術が部分的にソフトウェアで実装される場合、装置は、適切な非一時的コンピュータ可読記憶媒体内のソフトウェアのための命令を格納してよく、該命令を1つ以上のプロセッサを用いるハードウェアで実行して、本開示の技術を実行してよい。ビデオエンコーダ20及びビデオデコーダ30のいずれも、例えば図1Bに示されるように、単一の装置内の結合されたエンコーダ/デコーダ(encoder/decoder (CODEC))の部分として統合されてよい。
ソース装置12及び宛先装置14は、任意の種類のハンドヘルド又は固定装置、例えばノートブック又はラップトップコンピュータ、移動電話機、スマートフォン、タブレット又はタブレットコンピュータ、カメラ、デスクトップコンピュータ、セットトップボックス、テレビジョン、ディスプレイ装置、デジタルメディアプレイヤ、ビデオゲームコンソール、(コンテンツサービスサーバ、又はコンテンツ配信サーバのような)ビデオストリーミング装置、ブロードキャスト受信装置、ブロードキャスト送信装置、等を含む、広範な装置のうちのいずれかを含んでよく、任意の種類のオペレーティングシステムを使用してよく又は使用しなくてよい。幾つかの場合には、ソース装置12及び宛先装置14は、無線通信のために装備されてよい。従って、ソース装置12及び宛先装置14は、無線通信装置であってよい。
幾つかの場合には、図1Aに示されるビデオ符号化システム10は単に例であり、本願の技術は、必ずしも符号化装置と復号装置との間の任意のデータ通信を含まないビデオ符号化設定(例えば、ビデオ符号化又はビデオ復号)に適用してよい。他の例では、データはローカルメモリから読み出される、ネットワークを介してストリーミングされる、等である。ビデオ符号化装置は、データを符号化しメモリに格納してよく、及び/又はビデオ復号装置はデータをメモリから読み出し復号してよい。幾つかの例では、符号化及び復号は、互いに通信しないが単にデータをメモリへと符号化し及び/又はメモリからデータを読み出し復号する装置により実行される。
説明の便宜上、本発明の実施形態は、ここで、例えば高効率ビデオ符号化(High-Efficiency Video Coding (HEVC))、又はバーサタイルビデオ符号化(Versatile Video coding(VVC))のリファレンスソフトウェア、ITU-Tビデオ符号化専門家グループ(ITU-T Video Coding Experts Group (VCEG))及びISO/IEC動画専門家グループ(Motion Picture Experts Group (MPEG))のビデオ符号化に関する共同作業部会(Joint Collaboration Team on Video Coding (JCT-VC))により開発された次世代ビデオ符号化標準を参照して説明される。当業者は、本発明の実施形態がHEVC又はVVCに限定されないことを理解するだろう。
エンコーダ及び符号化方法
図2は、本願の技術を実施するよう構成される例示的なビデオエンコーダ20の概略的ブロック図を示す。図2の例では、ビデオエンコーダ20は、入力202(又は入力インタフェース202)、残差計算ユニット204、変換処理ユニット206、量子化ユニット208、逆量子化ユニット210及び逆変換処理ユニット212、再構成ユニット214、ループフィルタユニット220、復号ピクチャバッファ(decoded picture buffer (DPB))230、予測処理ユニット260、エントロピー符号化ユニット270、出力272(又は出力インタフェース272)を含む。予測処理ユニット260は、インター予測ユニット244、イントラ予測処理ユニット254、及びモード選択ユニット262を含んでよい。インター予測ユニット244は、動き推定ユニット及び動き補償ユニット(図示しない)を含んでよい。図2に示すビデオエンコーダ20は、ハイブリッドビデオエンコーダ又はハイブリッドビデオコーデックに従うビデオエンコーダとも呼ばれてよい。
残差計算ユニット204、変換処理ユニット206、量子化ユニット208、予測処理ユニット260は、エンコーダ20の順方向信号経路を形成するとして参照されてよい。一方で、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、バッファ216、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer (DPB))230、インター予測処理ユニット244、及びイントラ予測ユニット254は、ビデオエンコーダ20の逆方向信号経路を形成するとして参照されてよく、ビデオエンコーダ20の逆方向信号経路はデコーダの信号経路に対応する(図3のビデオデコーダ30を参照)。逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer (DPB))230、インター予測ユニット244、及びイントラ予測ユニット254は、ビデオエンコーダ20の「内蔵デコーダ」を形成するとも表される。
ピクチャ及びピクチャパーティション(ピクチャ及びブロック)
エンコーダ20は、例えば入力201により、ピクチャ17(又はピクチャデータ17)、例えばビデオ又はビデオシーケンスを形成するピクチャのシーケンスのピクチャを受信するよう構成されてよい。受信したピクチャ又はピクチャデータは、前処理済みピクチャ19(又は前処理済みピクチャデータ19)であってもよい。簡単のために、以下の説明はピクチャ17を参照する。ピクチャ17は、(特に、ビデオ符号化では、現在ピクチャを他のピクチャ、例えば同じビデオシーケンス、つまり現在ピクチャも含むビデオシーケンスの前に符号化され及び/又は復号されたピクチャと区別するために)現在ピクチャ又は被符号化ピクチャとも呼ばれてよい。
(デジタル)ピクチャは、強度値を有するサンプルの2次元配列又は行列と考えられる又は考えることができる。配列の中のサンプルは、ピクセル(pixel)(ピクチャ要素の短縮形)又はペル(pel)とも呼ばれてよい。配列又はピクチャの水平及び垂直方向(又は軸)にあるサンプルの数は、ピクチャのサイズ及び/又は解像度を定める。色の表現のために、標準的に3つの色成分が利用される。つまり、ピクチャは、3つのサンプル配列で表現され又はそれを含んでよい。RGB形式又は色空間では、ピクチャは、対応する赤、緑、及び青色サンプル配列を含む。しかしながら、ビデオ符号化では、各ピクセルは、標準的に、輝度及び色度形式、又は色空間、例えば、Y(時には代わりにLも使用される)により示される輝度成分とCb及びCrにより示される2つの色度成分とを含むYCbCrで表現される。輝度(又は略してルマ)成分Yは、明るさ又はグレーレベル強度(例えば、グレイスケールピクチャのような)を表現する。一方で、2つの色度(又は略してクロマ)成分Cb及びCrは、色度又は色情報成分を表現する。従って、YCbCr形式のピクチャは、輝度サンプル値(Y)の輝度サンプル配列と、色度値(Cb及びCr)の2つの色度サンプル配列とを含む。RGB形式のピクチャは、YCbCr形式に転換され又は変換されてよく、逆も同様であり、処理は色転換又は変換としても知られる。ピクチャが単色である場合、ピクチャは、輝度サンプル配列のみを含んでよい。従って、ピクチャは、例えば、単色形式のルマサンプルの配列又はルマサンプルの配列、及び4:2:0、4:2:2、及び4:4:4色形式のクロマサンプルの2つの対応する配列であってよい。
ビデオエンコーダ20の実施形態は、ピクチャ17を複数の(標準的には重なり合わない)ピクチャブロック203にパーティションするよう構成されるピクチャパーティションユニット(図2に示されない)を含んでよい。これらのブロックは、ルートブロック、マクロブロック(H.264/AVC)又は符号化木ブロック(coding tree block (CTB))又は符号化木単位(coding tree unit (CTU))(H.265/HEVC及びVVC)と呼ばれてもよい。ピクチャパーティションユニットは、同じブロックサイズをビデオシーケンスの全部のピクチャ、及びブロックサイズを定める対応するグリッドに対して使用し、又はピクチャ又はピクチャのサブセット若しくはグループ間のブロックサイズを変更し、各ピクチャを対応するブロックにパーティションするよう構成されてよい。
更なる実施形態では、ビデオエンコーダは、ピクチャ17のブロック203、例えばピクチャ17を形成する1つの、幾つかの、又は全部のブロックを直接受信するよう構成されてよい。ピクチャブロック203は、現在ピクチャブロック又は被符号化ピクチャブロックとも呼ばれてよい。
ピクチャ17と同様に、ピクチャブロック203は、ここでも、強度値(サンプル値)を有するサンプルの2次元配列又は行列であり又はそのように考えることができるが、ピクチャ17より小さい次元である。言い換えると、ブロック203は、例えば1つのサンプル配列(例えば、単色ピクチャ17の場合にはルマ配列、又はカラーピクチャの場合にはルマ若しくはクロマ配列)、又は3つのサンプル配列(例えば、カラーピクチャ17の場合には、ルマ及び2つのクロマ配列)、又は適用される色形式に依存して任意の他の数の及び/又は種類の配列を含んでよい。ブロック203の水平及び垂直方向(又は軸)にあるサンプルの数は、ブロック203のサイズを定める。従って、ブロックは、例えばサンプルのM×N(M列×N行)配列、又は変換係数のM×N配列であってよい。
図2に示すようなビデオエンコーダ20の実施形態は、ブロック毎にピクチャ17を符号化するよう構成されてよい。例えば、符号化及び予測がブロック203毎に実行される。
残差計算
残差計算ユニット204は、残差ブロック205(残差205とも呼ばれる)を、ピクチャブロック203及び予測ブロック265(予測ブロック265に関する更なる詳細は後に提供される)に基づき、例えば予測ブロック265のサンプル値をピクチャブロック203のサンプル値からサンプル毎に(ピクセル毎に)減算してサンプルドメインにおける残差ブロック205を取得することにより、計算するよう構成されてよい。
変換
変換処理ユニット206は、変換、例えば離散コサイン変換(discrete cosine transform (DCT))又は離散サイン変換(discrete sine transform (DST))を残差ブロック205のサンプル値に対して適用して、変換ドメインにおける変換係数207を取得するよう構成されてよい。変換係数207は、変換残差係数とも呼ばれ、変換ドメインにおける残差ブロック205を表してよい。
変換処理ユニット206は、H.265/HEVCのために指定された変換のようなDCT/DSTの整数近似を適用するよう構成されてよい。直交DCT変換と比べて、このような整数近似は、標準的に、特定の因子によりスケーリングされる。順方向及び逆変換により処理される残差ブロックのノルムを維持するために、追加スケーリング因子が変換処理の部分として適用される。スケーリング因子は、標準的に、スケーリング因子がシフト演算について2のべき乗である、変換係数のビット深さ、精度と実装コストとの間のトレードオフ、等のような特定の制約に基づき選択される。特定のスケーリング因子は、例えば、例えば逆変換処理ユニット212による逆変換(及び例えばビデオデコーダ30における逆変換処理ユニット312による対応する逆変換)のために指定され、例えばエンコーダ20における変換処理ユニット206による順方向変換のための対応するスケーリング因子が相応して指定されてよい。
ビデオエンコーダ20の実施形態(それぞれ、変換処理ユニット206)は、変換パラメータ、例えば、変換又は複数の変換のタイプ、例えば直接又はエントロピー符号化ユニット270により符号化又は圧縮される、を出力するよう構成されてよい。その結果、例えば、ビデオデコーダ30は、復号のために変換パラメータを受信し使用してよい。
量子化
量子化ユニット208は、変換係数207を量子化して、例えばスカラー量子化又はベクトル量子化を適用することにより、量子化済み係数209を取得するよう構成されてよい。量子化済み係数209は、量子化済み変換係数209又は量子化済み残差係数209とも呼ばれてよい。
量子化処理は、変換係数207の一部又は全部に関連するビット深さを低減してよい。例えば、nビットの変換係数は、量子化の間、mビットの変換係数に切り捨てられてよい。ここで、nはmより大きい。量子化の程度は、量子化パラメータ(quantization parameter (QP))を調整することにより、変更されてよい。例えば、スカラー量子化では、より精細な又は粗い量子化を達成するために異なるスケーリングが適用されてよい。量子化ステップサイズが小さいほど、精細な量子化に対応する。一方で、量子化ステップサイズが大きいほど、粗い量子化に対応する。適用可能な量子化ステップサイズは、量子化パラメータ(quantization parameter (QP))により示されてよい。量子化パラメータは、例えば、適用可能な量子化ステップサイズの所定のセットに対するインデックスであってよい。例えば、小さい量子化パラメータは、精細な量子化(小さい量子化ステップサイズ)に対応してよく、大きな量子化パラメータは粗い量子化(大きな量子化ステップサイズ)に対応してよい。逆も同様である。量子化は、量子化ステップサイズによる除算を含んでよい。例えば逆量子化ユニット210による対応する及び/又は逆の逆量子化は、量子化ステップサイズによる乗算を含んでよい。幾つかの標準、例えばHEVCに従う実施形態は、量子化ステップサイズを決定するために量子化パラメータを使用するよう構成されてよい。通常、量子化ステップサイズは、除算を含む式の不動点近似を用いて、量子化パラメータに基づき計算されてよい。量子化ステップサイズ及び量子化パラメータの式の不動点近似において使用されるスケーリングのために変更され得る残差ブロックのノルムを復元するために、量子化及び逆量子化のための追加のスケーリング因子が導入されてよい。1つの例示的な実装では、逆変換及び逆量子化のスケーリングは結合されてよい。代替として、カスタマイズされた量子化テーブルが使用され、エンコーダからデコーダへ、例えばビットストリームの中でシグナリングされてよい。量子化は、損失動作であり、損失は量子化ステップサイズの増大に伴い増大する。
ビデオエンコーダ20の実施形態(それぞれ、量子化ユニット208)は、量子化パラメータ(quantization parameters (QP))、例えば直接又はエントロピー符号化ユニット270により符号化される、を出力するよう構成されてよい。その結果、例えば、ビデオデコーダ30は、復号のために量子化パラメータを受信し適用してよい。
逆量子化
逆量子化ユニット210は、例えば、量子化ユニット208と同じ量子化ステップサイズに基づき又はそれを用いて、量子化ユニット208により適用された量子化方式の逆を適用することにより、量子化された係数に対して量子化ユニット208の逆量子化を適用して、逆量子化された係数211を取得するよう構成される。逆量子化済み係数211は、逆量子化済み残差係数211とも呼ばれ、標準的には量子化による損失のために変換係数と同じではないが、変換係数207に対応してよい。
逆変換
逆変換処理ユニット212は、変換処理ユニット206により適用された変換の逆変換、例えば逆離散コサイン変換(inverse discrete cosine transform (DCT))又は逆離散サイン変換(inverse discrete sine transform (DST))又は他の逆変換を適用して、サンプルドメインにおける再構成残差ブロック213(又は対応する逆量子化済み係数213)を取得するよう構成される。再構成残差ブロック213は、変換ブロック213とも呼ばれてよい。
再構成
再構成ユニット214(例えば、加算器又は加算器214)は、変換ブロック213(つまり再構成残差ブロック213)を予測ブロック265に加算して、例えば再構成残差ブロック213のサンプル値と予測ブロック265のサンプル値とをサンプル毎に加算することにより、サンプルドメインにおける再構成ブロック215を取得するよう構成される。
フィルタリング
ループフィルタユニット220(又は略して「ループフィルタ」220)は、再構成ブロック215をフィルタリングして、フィルタリング済みブロック221を取得するよう、又は通常、再構成サンプルをフィルタリングしてフィルタリング済みサンプルを取得するよう構成される。ループフィルタユニットは、例えば、ピクセル遷移を円滑化し、又はその他の場合にはビデオ品質を向上するよう構成される。ループフィルタユニット220は、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset (SAO))フィルタ又は1つ以上の他のフィルタ、例えば双方向フィルタ、適応ループフィルタ(adaptive loop filter (ALF))、先鋭化フィルタ、円滑化フィルタ若しくは共同フィルタ、又はそれらの任意の組合せのような1つ以上のループフィルタを含んでよい。ループフィルタユニット220はインループフィルタであるとして図2に示されるが、他の構成では、ループフィルタユニット220は後置きループフィルタとして実装されてよい。フィルタリング済みブロック221は、フィルタリング済み再構成ブロック221と呼ばれてもよい。
ビデオエンコーダ20の実施形態(それぞれ、ループフィルタユニット220)は、例えば直接に又はエントロピー符号化ユニット270により符号化された(サンプル適応オフセット情報のような)ループフィルタパラメータを出力するよう構成されてよい。その結果、例えば、デコーダ30は、復号のために同じループフィルタパラメータ又はそれぞれのループフィルタを受信し適用してよい。
復号ピクチャバッファ
復号ピクチャバッファ(decoded picture buffer (DPB))230は、ビデオエンコーダ20によるビデオデータの符号化のために、参照ピクチャ又は一般的に参照ピクチャデータを格納するメモリであってよい。DPB230は、同期DRAM(synchronous DRAM (SDRAM))を含む動的ランダムアクセスメモリ(dynamic random access memory (DRAM))、磁気抵抗RAM(magnetoresistive RAM (MRAM))、抵抗RAM(resistive RAM (RRAM))、又は他の種類のメモリ装置のような、種々のメモリ装置のうちのいずれかにより形成されてよい。復号ピクチャバッファ(decoded picture buffer (DPB))230は、1つ以上のフィルタリング済みブロック221を格納するよう構成されてよい。復号ピクチャバッファ230は、同じ現在ピクチャの又は異なるピクチャ、例えば前の再構成ピクチャの他の前のフィルタリング済みブロック、例えば前の再構成及びフィルタリング済みブロック221を格納するよう更に構成されてよく、完全な前に再構成された、つまり復号されたピクチャ(及び対応する参照ブロック及びサンプル)、及び/又は部分的に再構成された現在ピクチャ(及び対応する参照ブロック及びサンプル)を、例えばインター予測のために提供してよい。復号ピクチャバッファ(decoded picture buffer (DPB))230は、1つ以上のフィルタリングされていない再構成ブロック215、又は一般的には、例えば再構成ブロック215がループフィルタユニット220によりフィルタリングされない場合には、フィルタリングされていない再構成サンプルを、又は再構成ブロック又はサンプルの任意の他の更に処理されたバージョンを格納するよう構成されてもよい。
モード選択(パーティション及び予測)
予測処理ユニット260は、モード選択ユニット262、インター予測ユニット244、及びイントラ予測ユニット254を含み、元のピクチャデータ、例えば元のブロック203(現在ピクチャ17の現在ブロック203)、及び再構成ピクチャデータ、例えば同じ(現在)ピクチャの及び/又は1つ又は複数の前の復号ピクチャからの、例えば復号ピクチャバッファ230若しくは他のバッファ(例えば、図示されないラインバッファ)からのフィルタリング済み及び/又はフィルタリングされていない再構成サンプル又はブロック、を受信し又は取得するよう構成される。再構成されたピクチャデータは、予測ブロック265又は予測子265を取得するために、予測、例えばインター予測又はイントラ予測のために参照ピクチャデータとして使用される。
予測処理ユニット260は、現在ブロック予測モードのパーティション(パーティションしないことを含む)、及び予測モード(例えば、イントラ又はインター予測モード)を決定又は選択し、残差ブロック205の計算のため及び再構成ブロック215の再構成のために使用される対応する予測ブロック265を生成するよう構成されてよい。
予測処理ユニット260の実施形態は、最良の一致又は言い換えると最小残差(最小残差は送信又は記憶のためのより良い圧縮を意味する)又は最小シグナリングオーバヘッド(最小シグナリングオーバヘッドは送信又は記憶のためのより良い圧縮を意味する)を提供する又は両者を考慮する若しくはバランスを取るパーティション及び予測モードを(例えば、予測処理ユニット260によりサポートされる又は利用可能なものから)選択するよう構成されてよい。予測処理ユニット260は、レート歪み最適化(rate distortion optimization (RDO))に基づき、パーティション及び予測モードを決定するよう、つまり、最小レート歪みを提供する予測モードを選択するよう構成されてよい。この文脈における「最良」、「最小」、「最適」、等のような用語は、全体的な「最良」、「最小」、「最適」、等を必ずしも表さないが、閾値を超える又はそれより下である値のような終了若しくは選択基準、又は「準最適選択」をもたらす可能性があるが複雑さ及び処理時間を削減する他の制約の充足も表してよい。
言い換えると、パーティションユニット、例えば4分木パーティション(quad-tree (QT))、2分木パーティション(binary-tree (BT))又は3分木パーティション(triple-tree(TT))、又はそれらの任意の組み合わせを繰り返し使用して、ブロック203を更に小さいブロックパーティション又はサブブロック(これはまたブロックを形成する)にパーティションし、例えば各ブロックパーティション又はサブブロックに対して予測を実行するよう構成されてよい。ここで、モード選択は、パーティション済みブロック203の木構造及びブロックパーティション又はサブブロックの各々に適用される予測モードの選択を含む。
以下では、例示的なビデオエンコーダ20により実行される(例えば、パーティションユニット260による)パーティション及び(インター予測ユニット244及びイントラ予測ユニット254による)予測処理が更に詳細に説明される。
パーティション
パーティションユニット、現在ブロック203を更に小さいパーティション、例えば正方形又は長方形サイズのより小さいブロックにパーティションして(又は分割して)よい。これらの更に小さいブロック(これは、サブブロックとも呼ばれてよい)は、一層小さいパーティションに更にパーティションされてよい。これは、木パーティション又は階層木パーティションとも呼ばれる。ここで、例えばルート木レベル0(階層レベル0、深さ0)にあるルートブロックは、再帰的にパーティションされて、例えば、次のより下の木レベルにある2つ以上のブロック、例えば木レベル1(階層レベル1、深さ1)にあるノードにパーティションされてよい。ここで、例えば終了基準が充足された、例えば最大木深さ又は最小ブロックサイズに達したために、例えばパーティションが終了するまで、これらのブロックは、再び、次のより下のレベル、例えば木レベル2(階層レベル2、深さ2)の2つ以上のブロックにパーティションされてよい、等である。更にパーティションされないブロックは、木のリーフブロック又はリーフノードとも呼ばれる。2個のパーティションへのパーティションを用いる木は、2分木(binary-tree (BT))と呼ばれ、3個のパーティションへのパーティションを用いる木は3分木(ternary-tree (TT))と呼ばれ、4個のパーティションへのパーティションを用いる木は4分木(quad-tree (QT))と呼ばれる。
前述のように、用語「ブロック」は、ここで使用されるとき、ピクチャの部分、特に正方形又は長方形部分であってよい。例えばHEVC及びVVCを参照すると、ブロックは、符号化木単位(coding tree unit (CTU))、符号化単位(coding unit (CU))、予測単位(prediction unit (PU))、及び変換単位(transform unit (TU))、及び/又は対応するブロック、例えば符号化木ブロック(coding tree block (CTB))、符号化ブロック(coding block (CB))、変換ブロック(transform block (TB))、又は予測ブロック(prediction block (PB))であり又はそれに対応してよい。
例えば、符号化木単位(coding tree unit (CTU))は、ルマサンプルのCTB、3個のサンプル配列を有するピクチャのクロマサンプルの2個の対応するCTB、又は単色ピクチャのサンプルのCTB、又は3個の別個の色平面及びサンプルを符号化するために使用されるシンタックス構造を用いて符号化されるピクチャであり又はそれを含んでよい。相応して、符号化木ブロック(coding tree block (CTB))は、何らかの値のNについてサンプルのN×Nブロックであってよい。その結果、CTBへの成分の分割はパーティションである。符号化単位(coding unit (CU))は、ルマサンプルの符号化ブロック、3個のサンプル配列を有するピクチャのクロマサンプルの2個の対応する符号化ブロック、又は単色ピクチャのサンプルの符号化ブロック、又は3個の別個の色平面及びサンプルを符号化するために使用されるシンタックス構造を用いて符号化されるピクチャであり又はそれを含んでよい。相応して、符号化木ブロック(coding block (CB))は、何らかの値のM及びNについてサンプルのM×Nブロックであってよい。その結果、符号化ブロックへのCTBの分割はパーティションである。
例えばHEVCに従う実施形態では、符号化木単位(coding tree unit)は、符号化木として示される4分木構造を用いてCUに分割されてよい。ピクチャ領域をインターピクチャ(時間)又はイントラピクチャ(空間)予測を用いて符号化するかの決定は、CUレベルで行われる。各CUは、PU分割タイプに従い、1、2、又は4個のPUに更に分割できる。1個のPU内で、同じ予測処理が適用され、関連情報がPU毎にデコーダへ送信される。PU分割タイプに基づき予測処理を適用することにより、残差ブロックを取得した後に、CUは、CUの符号化ツリーと同様の別の4分木構造に従い、変換単位(transform unit (TU))にパーティションできる。
例えばバーサタイルビデオ符号化(Versatile Video Coding (VVC))と呼ばれる現在策定中の最新のビデオ符号化標準に従う実施形態では、4分木及び2分木(Quad-tree and binary tree (QTBT))パーティションが、符号化ブロックをパーティションするために使用される。QTBTブロック構造では、CUは正方形又は長方形形状のいずれかを有し得る。例えば、符号化木単位(coding tree unit (CTU))は、先ず、4分木構造によりパーティションされる。4分木のリーフノードは、2分木又は3分木(又はトリプル)木構造により更にパーティションされる。パーティション木のリーフノードは、符号化単位(coding unit (CU))と呼ばれ、任意の更なるパーティションを伴わず、予測及び変換処理のためにセグメント化が使用される。これは、CU、PU、及びTUが、QTBT符号化ブロック構造において同じブロックサイズを有することを意味する。同時に、多重パーティション、例えば3分木パーティションも、QTBTブロック構造と一緒に使用するために提案された。
一例では、ビデオエンコーダ20の予測処理ユニット260は、ここに記載のパーティション技術の任意の組み合わせを実行するよう構成されてよい。
上述のように、ビデオエンコーダ20は、最良の又は最適な予測モードを決定し又は(予め決定された)予測モードのセットから選択するよう構成される。予測モードのセットは、例えばイントラ予測モード及び/又はインター予測モードを含んでよい。
イントラ予測
イントラ予測モードのセットは、35個の異なるイントラ予測モード、例えばDC(又は平均)モード及び平面モードのような無指向性モード、又は例えばHEVCで定義されたような指向性モードを含んでよく、又は67個の異なるイントラ予測モード、例えばDC(又は平均)モード及び平面モードのような無指向性モード、又は例えばVCCのために定義されたような指向性モードを含んでよい。
イントラ予測ユニット254は、イントラ予測モードのセットのうちのイントラ予測モードに従いイントラ予測ブロック265を生成するために、同じ現在ピクチャの近隣ブロックの再構成サンプルを使用するよう構成される。
イントラ予測ユニット254(又は一般的に予測処理ユニット260)は、イントラ予測パラメータ(又は一般的にブロックについて選択されたイントラ予測モードを示す情報)を、エントロピー符号化ユニット270に、符号化ピクチャデータ21に含めるためにシンタックス要素266の形式で出力するよう更に構成される。その結果、例えば、ビデオデコーダ30は、復号のために予測パラメータを受信し及び使用してよい。
インター予測
インター予測モード(又は可能なもの)のセットは、利用可能な参照ピクチャ(つまり、例えばDBP230に格納された、前の少なくとも部分的に復号されたピクチャ)及び他のインター予測パラメータに、例えば、参照ピクチャの全体又は部分のみが、例えば参照ピクチャの現在ブロックの領域周辺の検索ウインドウ領域が最良の適合する参照ブロックを検索するために使用されるか、及び/又は、例えば、ピクセル補間、例えばハーフ/セミペル及び/又は4分の1ペル補間が適用されるか否かに依存する。
上述の予測モードに加えて、スキップモード及び/又は直接モードが適用されてよい。
インター予測ユニット244は、動き推定(motion estimation (ME))ユニット及び動き補償(motion compensation (MC))ユニット(両方とも図2に示されない)を含んでよい。動き推定ユニットは、ピクチャブロック203(現在ピクチャ17の現在ピクチャブロック203)、及び復号ピクチャ231、又は前の再構成ブロックのうちの少なくとも1つ又は複数、例えば他の/異なる前に復号されたピクチャ231のうちの1又は複数の再構成ブロックを、動き推定のために受信し又は取得するよう構成されてよい。例えば、ビデオシーケンスは、現在ピクチャ及び前の復号ピクチャ231を含んでよく、又は言い換えると、現在ピクチャ及び前の復号ピクチャ231は、ビデオシーケンスを形成するピクチャのシーケンスの一部であり又はそれを形成してよい。
エンコーダ20は、例えば、複数の他のピクチャの同じ又は異なるピクチャの複数の参照ブロックから、参照ブロックを選択し、参照ピクチャ(又は参照ピクチャインデックス)及び/又は参照ブロックの位置(x,y座標)と現在ブロックの位置との間のオフセット(空間オフセット)を、インター予測パラメータとして動き推定ユニットに提供するよう構成されてよい。このオフセットは、動きベクトル(motion vector (MV))とも呼ばれる。
動き補償ユニットは、インター予測パラメータを取得し、例えば受信し、インター予測パラメータに基づき又はそれを用いてインター予測を実行して、インター予測ブロック265を取得するよう構成される。動き補償ユニットにより実行される動き補償は、動き推定により決定された動き/ブロックベクトルに基づき、予測ブロックをフェッチし又は生成し、場合によってはサブピクセル精度への補間を実行することを含んでよい。補間フィルタリングは、既知のピクセルサンプルから追加ピクセルサンプルを生成してよく、従ってピクチャブロックを符号化するために使用され得る候補予測ブロックの数を増大させる可能性がある。現在ピクチャブロックのPUの動きベクトルを受信すると、動き補償ユニットは、参照ピクチャリストのうちの1つの中で動きベクトルの指す予測ブロックの位置を特定してよい。
動き補償ユニットは、ビデオスライスのピクチャブロックを復号する際にビデオデコーダ30による使用のために、ブロック及びビデオスライスに関連するシンタックス要素も生成してよい。
エントロピー符号化
エントロピー符号化ユニット270は、例えばエントロピー符号化アルゴリズム又は方式(例えば、可変長符号化(variable length coding (VLC))方式、コンテキスト適応型VLC方式(context adaptive VLC (CAVLC))、算術符号化方式、二値化、コンテキスト適応型バイナリ算術符号化(context adaptive binary arithmetic coding (CABAC))、シンタックスに基づくコンテキスト適応型バイナリ算術符号化(syntax-based context-adaptive binary arithmetic coding (SBAC))、確率区間区分エントロピー(probability interval partitioning entropy (PIPE))符号化又は別のエントロピー符号化方法若しくは技術)を、量子化済み残差係数209、インター予測パラメータ、イントラ予測パラメータ、ループフィルタパラメータ及び/又は他のシンタックス要素に、適用して又はバイパスして(圧縮しない)、出力272により例えば符号化ビットストリーム21の形式で出力され得る符号化ピクチャデータ21を取得するよう構成される。その結果、例えば、ビデオデコーダ30は、復号のためにパラメータを受信し使用してよい。符号化ビットストリーム21は、ビデオデコーダ30へと伝送され、又はビデオデコーダ30による後の伝送又は読み出しのためにメモリに格納されてよい。
ビデオエンコーダ20の他の構造的変形は、ビデオストリームを符号化するために使用され得る。例えば、非変換に基づくエンコーダ20は、変換処理ユニット206を有しないで、特定のブロック又はフレームについて、残差信号を直接量子化できる。別の実装では、エンコーダ20は、単一のユニットに結合された、量子化ユニット208及び逆量子化ユニット210を有し得る。
デコーダ及び復号方法
図3は、本願の技術を実施するよう構成されるビデオデコーダ30の例を示す。ビデオデコーダ30は、復号ピクチャ331を取得するために、例えばエンコーダ20により符号化された符号化ピクチャデータ21(例えば、符号化ビットストリーム21)を受信するよう構成される。符号化ピクチャデータ又はビットストリームは、符号化ピクチャデータを復号するための情報、例えば符号化ビデオスライスのピクチャブロックを示すデータ及び関連するシンタックス要素を含む。
図3の例では、デコーダ30は、エントロピー復号ユニット304、逆量子化ユニット310、逆変換処理ユニット312、再構成ユニット314(例えば、加算器314)、ループフィルタ320、復号ピクチャバッファ(decoded picture buffer (DBP))330、インター予測ユニット344、及びイントラ予測ユニット354を含む。インター予測ユニット344は、動き補償ユニットであり又はそれを含んでよい。ビデオデコーダ30は、幾つかの例では、図2からビデオエンコーダ100に関して説明した符号化パスに対して通常相互的な復号パスを実行してよい。
エンコーダ20に関して説明したように、逆量子化ユニット210、逆変換処理ユニット212、再構成ユニット214、ループフィルタ220、復号ピクチャバッファ(decoded picture buffer (DPB))230、インター予測ユニット344、及びイントラ予測ユニット354は、ビデオエンコーダ20の「内蔵デコーダ」を形成するとも表される。従って、逆量子化ユニット310は逆量子化ユニット110と機能的に同一であってよく、逆変換処理ユニット312は逆変換処理ユニット212と機能的に同一であってよく、再構成ユニット314は再構成ユニット214と機能的に同一であってよく、ループフィルタ320はループフィルタ220と機能的に同一であってよく、復号ピクチャバッファ330は復号ピクチャバッファ230と機能的に同一であってよい。従って、それぞれのユニット及びビデオンコーダ20の機能について提供された説明は、相応して、ビデオデコーダ30のそれぞれのユニット及び機能に適用する。
エントロピー復号
エントロピー復号ユニット304は、ビットストリーム21(又は一般的に符号化ピクチャデータ21)をパースし、例えば符号化ピクチャデータ21にエントロピー復号を実行して、例えば量子化済み係数309及び/又は復号符号化パラメータ(図3に示されない)、例えばインター予測パラメータ(例えば、参照ピクチャインデックス及び動きベクトル)、イントラ予測パラメータ(例えば、イントラ予測モード又はインデックス)、変換パラメータ、量子化パラメータ、ループフィルタパラメータ、及び/又は他のシンタックス要素、のうちのいずれか又は全部を取得するよう構成される。エントロピー復号ユニット304は、エンコーダ20のエントロピー符号化ユニット270に関して説明したような符号化方式に対応する復号アルゴリズム又は方式を適用するよう構成されてよい。エントロピー復号ユニット304は、インター予測パラメータ、イントラ予測パラメータ、及び/又は他のシンタックス要素をモード適用ユニット360に、及び他のパラメータをデコーダ30の他のユニットに提供するよう更に構成されてよい。ビデオデコーダ30は、ビデオスライスレベル及び/又はビデオブロックレベルのシンタックス要素を受信してよい。
逆量子化
逆量子化ユニット310は、量子化パラメータ(quantization parameter (QP))(又は一般的に逆量子化に関する情報)及び量子化済み係数を、符号化ピクチャデータ21から(例えばエントロピー復号ユニット304により例えばパース及び/又は復号することにより)受信し、及び量子化パラメータに基づき逆量子化を復号量子化済み係数309に適用して、変換係数311とも呼ばれてよい逆量子化済み係数311を取得するよう構成されてよい。逆量子化処理は、ビデオスライス内の各ビデオブロックに対して、ビデオエンコーダ20により決定された量子化パラメータを使用して、量子化の程度、及び同様に適用されるべき逆量子化の程度を決定することを含んでよい。
逆変換
逆変換処理ユニット312は、変換係数311とも呼ばれる逆量子化済み係数311を受信し、サンプルドメインにおいて再構成残差ブロック213を取得するために逆量子化済み係数311に変換を適用するよう構成されてよい。再構成残差ブロック213は、変換ブロックも呼ばれてよい。変換は、逆変換、例えば、逆DCT、逆DST、逆整数変換、又は概念的に同様の逆変換処理であってよい。逆変換処理ユニット312は、変換パラメータ又は対応する情報を、符号化ピクチャデータ21から(例えばエントロピー復号ユニット304により例えばパース及び/又は復号することにより)受信して、逆量子化済み係数311に適用されるべき変換を決定するよう更に構成されてよい。
再構成
再構成ユニット314(例えば、加算器又は加算器314)は、再構成残差ブロック313を予測ブロック365に加算して、例えば再構成残差ブロック313のサンプル値と予測ブロック365のサンプル値とを加算することにより、サンプルドメインにおける再構成ブロック315を取得するよう構成されてよい。
フィルタリング
ループフィルタユニット320(符号化ループ内にある又は符号化ループの後にある)は、再構成ブロック315をフィルタリングしてフィルタリング済みブロック321を取得し、例えばピクセル遷移を円滑化するよう又はその他の場合にビデオ品質を向上するよう構成される。ループフィルタユニット320は、デブロッキングフィルタ、サンプル適応オフセット(sample-adaptive offset (SAO))フィルタ又は1つ以上の他のフィルタ、例えば双方向フィルタ、適応ループフィルタ(adaptive loop filter (ALF))、先鋭化、円滑化フィルタ若しくは共同フィルタ、又はそれらの任意の組合せのような1つ以上のループフィルタを含んでよい。ループフィルタユニット320はインループフィルタであるとして図3に示されるが、他の構成では、ループフィルタユニット320は後置きループフィルタとして実装されてよい。
復号ピクチャバッファ
ピクチャの復号ビデオブロック321は、次に、他のピクチャのための後の動き補償のための参照ピクチャとして及び/又はそれぞれディスプレイ出力のために復号ピクチャ331を格納する復号ピクチャバッファ330に格納される。
デコーダ30は、ユーザへの提示又は閲覧のために、復号ピクチャ311を、例えば出力312を介して出力するよう構成される。
予測
インター予測ユニット344は、インター予測ユニット244と(特に動き補償ユニットと)同一であってよく、イントラ予測ユニット354は、インター予測ユニット254と機能的に同一であってよく、パーティション及び/又は予測パラメータ又は符号化ピクチャデータ21から(例えばエントロピー復号ユニット304により例えばパース及び/又は復号することにより)受信したそれぞれの情報に基づき、分割又はパーティション決定及び予測を実行する。モード選択ユニット360は、再構成ピクチャ、ブロック、又はそれぞれの(フィルタリング済み又は未フィルタリング)サンプルに基づき、ブロック毎に予測(イントラ又はインター予測)を実行して、予測ブロック365を取得するよう構成されてよい。
ビデオスライスがイントラ符号化(intra coded (I))スライスとして符号化されるとき、モード選択ユニット360のイントラ予測ユニット354は、シグナリングされたイントラ予測モード及び現在ピクチャの前の復号ブロックからのデータに基づき、現在ビデオスライスのピクチャブロックについて予測ブロック365を生成するよう構成される。ビデオピクチャがインター符号化(つまり、B又はP)スライスとして符号化されるとき、モード選択ユニット360のインター予測ユニット344(例えば動き補償ユニット)は、動きベクトル及びエントロピー復号ユニット304から受信した他のシンタックス要素に基づき、現在ビデオスライスのビデオブロックについて予測ブロック365を生成するよう構成される。インター予測では、予測ブロックは、参照ピクチャリストのうちの1つの中の参照ピクチャのうちの1つから生成されてよい。ビデオデコーダ30は、DPB330に格納された参照ピクチャに基づき、規定構成技術を用いて、参照フレームリスト:リスト0及びリスト1を構成してよい。
モード選択ユニット360は、動きベクトル及び他のシンタックス要素をパースすることにより、現在ビデオスライスのビデオブロックについて予測情報を決定し、予測情報を使用して、復号中の現在ビデオブロックについて予測ブロックを生成するよう構成される。例えば、モード選択ユニット360は、受信したシンタックス要素のうちの幾つかを使用して、ビデオスライスのビデオブロックを符号化するために使用される予測モード(例えば、イントラ又はインター予測)、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又はGPBスライス)、スライスの参照ピクチャリストのうちの1つ以上の構成情報、スライスの各インター符号化ビデオブロックの動きベクトル、スライスの各インター符号化ビデオブロックのインター予測状態、及び現在ビデオスライス内のビデオブロックを復号するための他の情報を決定する。
ビデオデコーダ30の他の変形は、符号化ピクチャデータ21を復号するために使用され得る。例えば、デコーダ30は、ループフィルタユニット320を有しないで、出力ビデオストリームを生成できる。例えば、非変換に基づくデコーダ30は、逆変換処理ユニット312を有しないで、特定のブロック又はフレームについて、残差信号を直接逆量子化できる。別の実装では、ビデオデコーダ30は、単一のユニットに結合された、逆量子化ユニット310及び逆変換処理ユニット312を有し得る。
理解されるべきことに、エンコーダ20及びデコーダ30において、現在ステップの処理結果は、更に処理され、次に次のステップへ出力されてよい。例えば、補間フィルタリング、動きベクトル導出又はループフィルタリングの後に、クリップ又はシフトのような更なる動作が、補間フィルタリング、動きベクトル導出又はループフィルタリングの処理結果に対して実行されてよい。
留意すべきことに、現在ブロックの導出された動きベクトル(限定ではないが、アフィンモードの制御点動きベクトル、アフィン、平面、ATMVPモードにおけるサブブロック動きベクトル、時間的動きベクトル、等を含む)に更なる動作が適用されてよい。例えば、動きベクトルの値は、その表現ビットに従い所定の範囲に制約される。動きベクトルの表現ビットがbitDepthである場合、範囲は-2^(bitDepth-1)~2^(bitDepth-1)-1であり、ここで「^」はべき乗を意味する。例えば、bitDepthが16に等しい場合、範囲は-32768~32767であり、bitDepthが18に等しい場合、範囲は-131072~131071である。例えば、導出された動きベクトルの値(例えば、1個の8×8ブロックの中の4個の4×4サブブロックのMV)は、4×4サブブロックのMVの整数部分の間の最大差が、1ピクセルより大きくないなど、Nピクセルより大きくないように、制約される。
ここで、bitDepthに従い動きベクトルを制約する2つの方法を提供する。
方法1:以下の演算によりオーバーフローMSB(most significant bit)を除去する。
Figure 2022511850000024
ここで、mvxは、画像ブロック又はサブブロックの動きベクトルの水平成分であり、mvyは、画像ブロック又はサブブロックの動きベクトルの垂直成分であり、ux及びuyは、中間値を示す。
Figure 2022511850000025
式(5)~(8)に示すように、演算は、mvp及びmvdの加算の間に適用されてよい。
方法2:以下の値をクリッピングすることにより、オーバーフローMSBを除去する。
Figure 2022511850000026
ここで、vxは、画像ブロック又はサブブロックの動きベクトルの水平成分であり、vyは、画像ブロック又はサブブロックの動きベクトルの垂直成分である。x、y、及びzは、それぞれ、MVクリッピング処理の3つの入力値に対応し、関数Clip3の定義は以下の通りである。
Figure 2022511850000027
図4は、本開示の実施形態によるビデオ符号化装置400の概略図である。ビデオ符号化装置400は、ここに説明したような開示の実施形態を実施するのに適する。実施形態では、ビデオ符号化装置400は、図1Aのビデオデコーダ30のようなデコーダ、又は図1Aのビデオエンコーダ20のようなエンコーダであってよい。
ビデオ符号化装置400は、データを受信するためのイングレスポート410(又は入力ポート410)及び受信機ユニット(receiver unit (Rx))420と、データを処理するためのプロセッサ、論理ユニット、又は中央処理ユニット(central processing unit (CPU))430と、データを送信するための送信機ユニット(transmitter unit (Tx))440及びイグレスポート450(又は出力ポート460)と、データを格納するためのメモリ460と、を含む。ビデオ符号化装置400は、イングレスポート410、受信機ユニット420、送信機ユニット440、及びイグレスポート450に接続された、光若しくは電気信号のイグレス若しくはイングレスのための光-電気(optical-to-electrical (OE))コンポーネント及び電気-光(electrical-to-optical (EO))コンポーネントも含んでよい。
プロセッサ430は、ハードウェア及びソフトウェアにより実装される。プロセッサ430は、1つ以上のCPUチップ、コア(例えば、マルチコアプロセッサ)、FPGA、ASIC、及びDSPとして実装されてよい。プロセッサ430は、イングレスポート410、受信機ユニット420、送信機ユニット440、イグレスポート450、及びメモリ460と通信する。プロセッサ430は、符号化モジュール470を含む。符号化モジュール470は、上述の開示の実施形態を実装する。例えば、符号化モジュール470は、種々の符号化動作を実装し、処理し、準備し、又は提供する。符号化モジュール470の中に含まれるものは、従って、ビデオ符号化装置400の機能に実質的な改良を提供し、ビデオ符号化装置400の異なる状態への変換をもたらす。代替として、符号化モジュール470は、メモリ460に格納されプロセッサ430により実行される命令として実装される。
メモリ460は、1つ以上のディスク、テープドライブ、及び固体ドライブを含んでよく、プログラムが実行のために選択されるとき該プログラムを格納するため及びプログラムの実行中に読み出される命令及びデータを格納するためのオーバフローデータ記憶装置として使用されてよい。メモリ460は、例えば、揮発性及び/又は不揮発性であってよく、読み出し専用メモリ(read-only memory (ROM))、ランダムアクセスメモリ(random access memory (RAM))、三値連想メモリ(ternary content-addressable memory (TCAM))、及び/又は静的ランダムアクセスメモリ(static random-access memory (SRAM))であってよい。
図5は、例示的な実施形態による図1からのソース装置12及び宛先装置14の一方又は両方として使用されてよい機器500の簡略ブロック図である。
機器500内のプロセッサ502は、中央処理ユニットであり得る。代替として、プロセッサ502は、現在存在する又は将来開発される情報を操作し又は処理できる任意の他の種類の装置又は複数の装置であり得る。開示の実装は図示のように単一のプロセッサ、例えばプロセッサ502により実施できるが、速度及び効率における利益は、1つより多くのプロセッサを用いて達成できる。
機器500内のメモリ504は、一実装では、読み出し専用メモリ(read only memory (ROM))装置又はランダムアクセスメモリ(random access memory (RAM))装置であり得る。任意の他の適切な種類の記憶装置が、メモリ504として使用できる。メモリ504は、バス512を用いてプロセッサ502によりアクセスされるコード及びデータ506を含み得る。メモリ504は、オペレーティングシステム508及びアプリケーションプログラム510を更に含み得る。アプリケーションプログラム510は、プロセッサ502がここに記載の方法を実行することを可能にする少なくとも1つのプログラムを含む。例えば、アプリケーションプログラム510は、ここに記載の方法を実行するビデオ符号化アプリケーションを更に含むアプリケーション1~Nを含むことができる。機器500は、ディスプレイ518のような1つ以上の出力装置も含み得る。ディスプレイ518は、一例では、タッチ入力を感知するよう動作するタッチ感応要素とディスプレイを結合するタッチ感応ディスプレイであってよい。ディスプレイ518は、バス512を介してプロセッサ502と結合され得る。
ここでは単一のバスとして示されるが、機器500のバス512は複数のバスで構成できる。更に、2次記憶514は、機器500の他のコンポーネントに直接接続でき、又はネットワークを介してアクセスでき、メモリカードのような単一の統合ユニット又は複数のメモリカードのような複数のユニットを含むことができる。機器500は、従って、様々な構成で実装できる。
結合インターイントラ予測(Combined Inter-Intra Prediction (CIIP))
従来、符号化単位は、イントラ予測されるか(つまり、同じピクチャ内の参照サンプルを用いて)、又はインター予測されるか(つまり、他のピクチャの中の参照サンプルを用いて)のいずれかである。多仮説予測は、これらの2つの予測アプローチを結合する。従って、それは、時に結合インターイントラ予測(combined inter-intra prediction (CIIP))とも呼ばれる。結合インターイントラ予測が有効にされると、イントラ予測及びインター予測されたサンプルは重みにより適用され、最終的な予測は、加重平均サンプルとして導出される。
フラグ、多仮説予測(CIIP)フラグは、ブロックが結合インターイントラ予測を適用されるときを示すために使用される。
CIIPを適用されるブロックは、図6Aに示されるように、幾つかのサブブロックに更に分割できる。一例では、そのサブブロックは、ブロックを水平方向に分割することにより導出され、各サブブロックは、元のブロックと同じ幅であるが、元のブロックの1/4の高さを有する。
一例では、そのサブブロックは、ブロックを垂直方向に分割することにより導出され、各サブブロックは、元のブロックと同じ高さであるが、元のブロックの1/4の幅を有する。
CIIP予測により、それが通常はより多くの残差信号を有するイントラ予測による結果を含むので、ブロックアーチファクトが導入され得る。ブロックアーチファクトは、CIIPブロックの境界だけでなく、図6Aの垂直サブブロックエッジA、B、Cのような、CIIPブロックの内部のサブブロックエッジにも生じる。水平サブブロックエッジは、相応して識別できる。
ブロックアーチファクトはCIIP境界及びCIIPブロックの内部のサブブロックエッジの両方で生じ得るが、これらの2つの境界により引き起こされる歪みは異なることがあり、異なる境界強度が必要なことがある。
本願の残りの部分では、以下の用語が使用される。
CIIPブロック:多仮説予測(multi-hypothesis prediction (CIIP))の適用により予測される符号化ブロック。
イントラブロック:CIIP予測ではなくイントラ予測の適用により予測される符号化ブロック。
インターブロック:CIIP予測ではなくインター予測の適用により予測される符号化ブロック。
デブロッキングフィルタ及び境界強度
HEVC及びVVCのようなビデオ符号化方式は、ブロックに基づくハイブリッドビデオ符号化の成功した原理に沿って設計されている。この原理を用いて、ピクチャは、先ずブロックにパーティションされ、次に、各ブロックはイントラピクチャ又はインターピクチャ予測を用いて予測される。これらのブロックは、相対的に、近隣ブロックから符号化され、ある程度の類似性により元の信号を近似する。符号化ブロックは元の信号を近似するだけなので、近似の間の差分は、予測及び変換ブロック境界において不連続を生じ得る。これらの不連続は、デブロッキングフィルタにより減衰される。
ブロック境界をフィルタリングするかどうかの決定は、予測モード及び動きベクトルのようなビットストリーム情報を使用する。幾つかの符号化条件は、強力なブロックアーチファクトを生成する可能性がより高く、これは、全てのブロック境界に割り当てられ表1のように決定される、所謂、境界強度(boundary strength (Bs又はBS))変数により表現される。
Figure 2022511850000028
デブロッキングは、ルマ成分についてゼロより大きいBs及びクロマ成分について1より大きいBsを有するブロック境界にのみ適用される。Bsの値が高いほど、高いクリッピングパラメータ値を用いることにより、より強力なフィルタリングが可能である。Bs導出条件は、イントラ予測ブロック境界に最も強力なブロックアーチファクトが現れる確率を反映する。
通常、境界の2個の隣接ブロックは、図6Bに示されるようにP及びQとラベル付けされる。図6Bは、垂直境界の場合を示す。水平境界が検討される場合は、図6Bは、時計回りに90度回転されるべきであり、Pが上側になり、Qが下側になる。
最確モードリスト構築
最確モード(Most Probable Mode (MPM))リストは、符号化効率を向上するためにイントラモード符号化で使用される。多数のイントラモード(例えば、HEVCでは35、VVCでは67)により、現在ブロックのイントラモードは、直接シグナリングされない。代わりに、現在ブロックの最確モードリストは、その近隣ブロックのイントラ予測モードに基づき構築される。現在ブロックのイントラモードはその近隣のものに関連するので、MPMリストは、通常、その名称(最確モードリスト)が示すように、良好な予測を提供する。従って、現在ブロックのイントラモードはそのMPMリストに包含される高い可能性を有する。この方法では、現在ブロックのイントラモードを導出するために、MPMリストのインデックスのみがシグナリングされる。全部のイントラモードの数に比べて、MPMリストの長さは遙かに小さく(例えば、HEVCでは3-MPMリストが使用され、VVCでは6-MPMリストが使用される)、従って、イントラモードを符号化するために少ないビットしか必要ない。フラグ(mpm_flag)は、現在ブロックのイントラモードがそのMPMリストに属するか否かを示すために使用される。属する場合、現在ブロックのイントラモードは、MPMリストを用いてインデックス付けできる。その他の場合、イントラモードは、2値化コードを用いて直接シグナリングされる。VVC及びHEVCの両方で、MPMリストは、その近隣の左及び上のブロックに基づき構築される。現在ブロックの左近隣ブロック及び上近隣ブロックが予測のために利用不可能であるとき、規定モードリストが使用される。
動きベクトル予測
動きベクトル予測は、動きデータ符号化において使用される技術である。動きベクトルは、通常、それぞれ水平及び垂直方向の動きを表す2つの成分x及びyを有する。現在ブロックの動きベクトルは、通常、現在ピクチャ内の又は前の符号化ピクチャ内の近隣ブロックの動きベクトルと相関される。これは、近隣ブロックが、同様の動きを有する同じ移動するオブジェクトに対応する可能性があり、オブジェクトの動きが時間に渡り急激に変化する可能性が低いからである。従って、近隣ブロックの中の動きベクトルを予測子として使用することは、シグナリングされる動きベクトル差のサイズを低減する。動きベクトル予測子(Motion Vector Predictor (MVP))は、通常、空間近隣ブロックから又は同一位置のピクチャの中の時間近隣ブロックからの、既に復号された動きベクトルから導出される。
ブロックが、CIIP予測の適用により予測されるべきであると決定された場合、その最終的に予測されたサンプルは、イントラ予測サンプルに部分的に基づく。イントラ予測も含まれるので、通常、残差及び変換係数は、INTERブロック(mvd、マージ、スキップ)と比べると、より多い。従って、これらのMHブロックが他のブロックに隣接するとき、境界に渡り、より多くの不連続が存在する。HEVC及びVVCでは、境界の2個の隣接ブロックのうちのいずれかが、イントラ予測されるとき、強力なデブロッキングフィルタがこの境界に対して適用され、境界強度(Boundary Strength (BS))のパラメータは2(最強)に設定される。
VTM3.0では、しかしながら、CIIP予測により予測されたブロックにより引き起こされる可能性のあるブロックアーチファクトは、考慮されない。境界強度導出は、依然として、インターブロックとしてCIIP予測によるブロックを検討する。特定の状況下では、このような処理アプローチは、低い主観的及び客観的品質を生じ得る。
本発明の実施形態は、デブロッキングフィルタを向上するためにMHブロックを組み込むための幾つかの代替案を提供する。ここで、特定の境界の境界強度導出は、MHブロックにより影響される。
参考文献Versatile Video Coding (Draft 3)は、VVCドラフト3.0として定められ、以下のリンクにより見付けられる。
http://phenix.it-sudparis.eu/jvet/doc_end_user/documents/12_Macao/wg11/JVET-L1001-v3.zip
実施形態1
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
図7に示されるように、P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、この境界の境界強度パラメータは第1値に設定され、例えば第1値は2に等しくてよい。
P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定され(境界強度の正確な値は更なる条件評価に従い決定される)、この境界の境界強度の導出は図7に示される。
比較のために、VVC又はITU-H.265ビデオ符号化標準において指定された方法が図8に提供される。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態2
図9に示されるように、2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
P及びQのうちの少なくとも1個のブロックがイントラ予測によるブロックである場合、境界強度は2に設定される。
その他の場合、P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、この境界の境界強度パラメータは第1値、例えば1又は2に設定される。
その他の場合、隣接ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、この境界の境界強度パラメータは第2値、例えば1に設定される。
その他の場合、P及びQブロックに属する動きベクトルの間の絶対差が1個の整数ルマサンプルより大きい又はそれに等しい場合、この境界の境界強度パラメータは、第2値、例えば1に設定される。
.その他の場合、隣接ブロックにおける動き予測が異なる参照ピクチャを参照し、又は動きベクトルの数が異なる場合、この境界の境界強度パラメータは1に設定される。
その他の場合、この境界の境界強度パラメータは0に設定される。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態3
図10に示されるように、2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、この境界の境界強度パラメータは以下のように設定される。
P及びQのうちの少なくとも1個のブロックが、CIIP予測の適用ではなく、イントラ予測の適用により予測される場合(可能性は、Pブロックが、多仮説予測によるのではなく、イントラ予測により予測され、Qブロックが任意の予測関数により予測される、及びその逆を含む)、境界強度は2に等しく設定される。
ブロックQ及びPの両方がインター予測の適用により又はCIIP予測の適用により予測される場合(可能性は、Pブロックがインターブロックであり、Qブロックがインターブロックである、又は代替として、Pブロックがインターブロックであり、QブロックがMHブロックである、又は代替として、PブロックがHMブロックであり、Qブロックがインターブロックである、又は代替として、PブロックがMHブロックであり、QブロックがMHブロックであることを含む)。
ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合(ブロックQ及びPがゼロではない変換係数を有しない場合)、ブロックP及びQを予測するために使用される動きベクトルの間の絶対差が1個の整数サンプルより大きく又はそれに等しい場合、この境界の境界強度パラメータは1に等しく設定される。
その他の場合(ブロックQ及びPがゼロではない変換係数を有しない、及び動きベクトルの間の絶対差が1サンプルより小さい場合)、ブロックP及びQが異なる参照ピクチャに基づき予測される、又はブロックQ及びブロックPを予測するために使用される動きベクトルの数が等しくない場合、この境界の境界強度パラメータは1に等しく設定される。
その他の場合(上述の3つの条件が偽と評価された場合)この境界の境界強度パラメータは0に等しく設定される。
P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、境界強度は以下のように変更される。
境界強度が所定の第1値に等しくない場合(一例では、所定の第1値は2に等しい)、境界強度は、所定の第2値だけインクリメントされる(一例では、所定の第2値は1に等しい)。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態4
2つの側(VVCドラフト3.0に定められるようにP及びQ)を有する境界では、境界強度は以下のように導出される。
この境界が水平境界であり、P及びQが異なるCTUに属する場合、
ブロックQがCIIP予測によるブロックである場合、境界強度は2に設定される。
その他の場合、境界強度はVVCドラフト3.0に定められたように導出される。
その他の場合、
P及びQのうちの少なくとも1個のブロックがCIIP予測によるブロックである場合、この境界の境界強度パラメータは2に設定される。
その他の場合、この境界の境界強度をVVCドラフト3.0に定められたように導出する。
実施形態5
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
Pブロック又はQブロックのうちの少なくとも1個が、CIIP予測の適用ではなく、イントラ予測の適用により予測される場合(可能性は、Pブロックが、多仮説予測によるのではなく、イントラ予測により予測され、Qブロックが任意の予測関数により予測される、及びその逆を含む)、境界強度は2に等しく設定される。
ブロックの両方がインター予測又はCIIP予測の適用により予測される場合(可能性は、Pブロックがインターブロックであり、Qブロックがインターブロックである、又は代替として、Pブロックがインターブロックであり、QブロックがMHブロックである、又は代替として、PブロックがHMブロックであり、Qブロックがインターブロックである、又は代替として、PブロックがMHブロックであり、QブロックがMHブロックであることを含む)、
該境界が水平境界であり、P及びQが2個の異なるCTU内に位置する場合、
ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合(ブロックQがCIIP予測の適用により予測されない場合)、隣接ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、ブロックP及びQを予測するために使用される動きベクトルの間の絶対差が1個の整数ルマサンプルより大きく又はそれに等しい場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、隣接ブロックP及びQにおける動き補償予測が異なる参照ピクチャに基づき実行される場合、又はブロックQ及びブロックPを予測するために使用される動きベクトルの数が等しくない場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、該境界の境界強度パラメータは0に等しく設定される。
その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合)、
ブロックP及びQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、隣接ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、ブロックP及びQブロックを予測するために使用される動きベクトルの間の絶対差が1個の整数ルマサンプルより大きく又はそれに等しい場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、隣接ブロックP及びQにおける動き補償予測が異なる参照ピクチャに基づき実行される場合、又はブロックQ及びPを予測するために使用される動きベクトルの数が等しくない場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合、この境界の境界強度パラメータは0に等しく設定される。
21.ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態6
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
先ず、VVC又はITU-H.265ビデオ符号化標準で指定された方法に従い、該境界の境界強度を決定する。
該境界が水平境界であり、P及びQが2個の異なるCTU内に位置する場合、
ブロックQがCIIP予測の適用により予測される場合、境界強度は以下のように変更される。
境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合)、
ブロックP又はブロックQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは以下のように調整される。
境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態7
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
該境界が水平境界であり、ブロックP及びQが異なるCTU内に位置する場合、
ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、境界強度は2に等しく設定される。
QブロックがCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
ブロックQが、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合)、
ブロックP又はQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは2に等しく設定される。
P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態8
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように決定される。
P及びQのうちの少なくとも1個のブロックが、CIIP予測の適用ではなく、イントラ予測の適用により予測される場合(可能性は、Pブロックが、多仮説予測によるのではなく、イントラ予測により予測され、Qブロックが任意の予測関数により予測される、及びその逆を含む)、境界強度は2に等しく設定される。
ブロックQ及びPの両方がインター予測の適用により又はCIIP予測の適用により予測される場合(可能性は、Pブロックがインターブロックであり、Qブロックがインターブロックである、又は代替として、Pブロックがインターブロックであり、QブロックがMHブロックである、又は代替として、PブロックがHMブロックであり、Qブロックがインターブロックである、又は代替として、PブロックがMHブロックであり、QブロックがMHブロックであることを含む)。
ブロックP及びQのうちの少なくとも1個がゼロではない変換係数を有する場合、該境界の境界強度パラメータは1に等しく設定される。
その他の場合(ブロックQ及びPがゼロではない変換係数を有しない場合)、ブロックP及びQを予測するために使用される動きベクトルの間の絶対差が1個の整数サンプルより大きく又はそれに等しい場合、この境界の境界強度パラメータは1に等しく設定される。
その他の場合(ブロックQ及びPがゼロではない変換係数を有しない、及び動きベクトルの間の絶対差が1サンプルより小さい場合)、ブロックP及びQが異なる参照ピクチャに基づき予測される、又はブロックQ及びブロックPを予測するために使用される動きベクトルの数が等しくない場合、この境界の境界強度パラメータは1に等しく設定される。
その他の場合(上述の3つの条件が偽と評価された場合)、この境界の境界強度パラメータは0に等しく設定される。
該境界が水平境界であり、P及びQが2個の異なるCTU内に位置する場合、
ブロックQがCIIP予測の適用により予測される場合、決定された境界強度は以下のように変更される。
境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれる場合、
ブロックP及びブロックQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは以下のように調整される。
境界強度が2に等しくない場合、境界強度は1だけインクリメントされる。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態9
一例では、CIIPブロックの境界の境界強度(boundary strength (Bs))を2の値に設定するが、CIIP内のサブブロックの境界の境界強度は1の値に設定する。サブブロックの境界が8×8サンプルグリッドに揃えられていないとき、このようなエッジの境界強度を0の値に設定する。8×8グリッドは、図11に示される。
別の例では、エッジの境界強度を以下のように決定する。
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
該境界が水平境界であり、ブロックP及びQが異なるCTU内に位置する場合、
ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、境界強度は2に等しく設定される。
QブロックがCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
ブロックQが、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
その他の場合(CIIPブロック内の2個のサブブロックに対応するP及びQ、つまり目標境界がCIIPブロック内のサブブロック境界である場合)、
サブブロック境界が8×8グリッドに揃えられる場合、境界強度を1の値に設定する。
その他の場合(サブブロック境界が8×8グリッドに揃えられていない)、境界強度を0の値に設定する。
その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれ、P及びQが同じCIIPブロック内にない場合)、
ブロックP又はQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは2に等しく設定される。
P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
実施形態10
一例では、CIIPブロックの境界の境界強度(boundary strength (Bs))を2の値に設定するが、CIIP内のサブブロックの境界の境界強度は1の値に設定する。サブブロックの境界が4×4サンプルグリッドに揃えられていないとき、このようなエッジの境界強度を0の値に設定する。4×4グリッドは、図12に示される。
別の例では、エッジの境界強度を以下のように決定する。
2つの側を有する境界(各側にある空間的に隣接するブロックがPブロック及びQブロックとして示される)では、境界強度は以下のように導出される。
該境界が水平境界であり、ブロックP及びQが異なるCTU内に位置する場合、
ブロックQ(Qブロックは、Pブロックと比べて下方向に位置するブロックとして示される)が、CIIP予測の適用により予測される場合、境界強度は2に等しく設定される。
QブロックがCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
ブロックQが、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
その他の場合(CIIPブロック内の2個のサブブロックに対応するP及びQ、つまり目標境界がCIIPブロック内のサブブロック境界である場合)、
サブブロック境界が4×4グリッドに揃えられる場合、境界強度を1の値に設定する。
その他の場合(サブブロック境界が4×4グリッドに揃えられていない)、境界強度を0の値に設定する。
その他の場合(該境界が垂直境界である場合、又はブロックQ及びブロックPが同じCTUの中に含まれ、P及びQが同じCIIPブロック内にない場合)、
ブロックP又はQのうちの少なくとも1個がCIIP予測の適用により予測される場合、該境界の境界強度パラメータは2に等しく設定される。
P及びQブロックの両方がCIIP予測の適用により予測されない場合、及びブロックQ又はブロックPのうちの少なくとも1個がイントラ予測の適用により予測される場合、境界強度は2に等しいと決定される。
P及びブロックQの両方が、CIIP予測の適用により予測されない場合、及びブロックQ及びPの両方がインター予測の適用により予測される場合、境界強度は2より小さいと決定される(境界強度の正確な値は更なる条件評価に従い決定される)。
ブロックQ及びブロックPに含まれるピクセルサンプルは、決定された境界強度に従いデブロッキングフィルタの適用によりフィルタリングされる。
本発明は、以下の実施形態を更に提供する。
実施形態1。符号化の方法であって、前記符号化は復号又は符号化を含み、前記方法は、
現在符号化単位(又は符号化ブロック)が結合インターイントラ予測の適用により予測されるか否かを決定するステップと、
前記現在符号化単位が結合インターイントラ予測の適用により予測されるとき、前記現在符号化単位の境界の境界強度(boundary strength (Bs))を第1値に設定するステップと、
サブ符号化単位の境界の境界強度(boundary strength (Bs))を第2値に設定するステップであって、前記現在符号化単位は少なくとも2個のサブ符号化単位を含み、前記サブ符号化単位の前記境界は前記少なくとも2個のサブ符号化単位の間の境界である、ステップと、を含む方法。
実施形態2。前記方法は、前記Bsの値がルマ成分についてゼロより大きいとき、デブロッキングを実行するか、又は、前記Bsの前記値がクロマ成分について1より大きいとき、デブロッキングを実行するステップであって、前記Bsの前記値は前記第1値又は前記第2値のうちの1つである、ステップ、を更に含む実施形態1の方法。
実施形態3。前記現在符号化単位(又はブロック)が結合インターイントラ予測の適用により予測されるとき、前記現在符号化単位は、デブロッキングを実行するときにイントラ予測による単位であると考えられる、実施形態1又は2の方法。
図13は、境界強度の導出処理のための機器1300の例示的な構造を示すブロック図である。機器1300は、上述の方法を実行するよう構成され、
2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するよう構成される決定ユニット1302であって、2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、2個のブロックは境界に関連付けられる、決定ユニット1302と、
2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、境界の境界強度(boundary strength (Bs))を第1値に設定し、2個のブロックのうちのいずれもCIIPの適用により予測されないとき、境界の境界強度(boundary strength (Bs))を第2値に設定するよう構成される設定ユニット1304と、を含んでよい。
一例として、設定ユニットは、第1ブロックがCIIPの適用により予測されるとき又は第2ブロックがCIIPの適用により予測されるとき、境界のBsを第1値に設定するよう構成される。
機器2500は、ビットストリームをパースしてフラグを取得するよう構成されるパースユニット(図13に示されない)であって、フラグは、2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるかどうかを示すために使用される、パースユニット、を更に含んでよい。
決定ユニット1302は、2個のブロックのうちの少なくとも1個がイントラ予測の適用により予測されるかどうかを決定するよう更に構成されてよい。設定ユニット1304は、2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、境界のBsを第1値に設定するよう構成される。例えば、第1値は1又は2であってよい。
設定ユニット1304は、2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び2個のブロックのうちのいずれもCIIPの適用により予測されないとき、境界のBsを第2値に設定するよう構成される。例えば、2個のブロック(P及びQ)のうちの少なくとも1個がゼロではない変換係数を有するとき、第2値は1であってよい。
実施形態の利点
中程度の強度(境界強度が1に等しい)を有するデブロッキングフィルタによる多仮説予測の適用により予測されるブロックのデブロッキングフィルタ。
ブロックがCIIP予測の適用により予測される場合、第1予測はインター予測の適用により取得され、第2予測はイントラ予測の適用により取得され、それらは後に結合される。最終的な予測はイントラ予測部分を含むので、これは標準的により多くのブロックアーチファクトが観察される。従って、CIIP予測により予測されたブロックの境界においても、ブロックアーチファクトが存在する可能性がある。この問題を軽減するために、本発明の実施形態に従い境界強度が2に設定され、CIIP予測の適用により予測されるブロックエッジのデブロッキングフィルタの機会が向上される。
本発明の更なる実施形態は、以下のように必要なラインメモリを削減する。ラインメモリは、上のCTU行に対応する情報を格納するために必要な及び近隣の下のCTU行の処理の間に必要なメモリとして定義される。例えば、2つのCTU行の間の水平境界をフィルタリングするために、上のCTUの予測モード情報(イントラ予測/インター予測/多仮説予測)はリストメモリに格納される必要がある。ブロックの予測モードを記述するために3つの状態(イントラ予測/インター予測/多仮説予測)が可能なので、ラインメモリ要件はブロック当たり2ビットとして定義できる。
本発明の実施形態によると、ブロック(実施形態ではPブロック)が上のCTU行に属する場合、デブロッキング動作は、ブロックがインター予測又はイントラ予測により予測されるかに関する情報のみを必要とする(従って、2つの状態のみであり、これはブロック当たり1ビットを用いて格納できる)。理由は、以下の通りである。
PブロックとQブロックとの間の境界が水平境界であり、Qブロック及びPブロックが2個の異なるCTUに属する場合(全部の実施形態において、QブロックがPブロックに関して下にあるものである)、PブロックがCIIP予測の適用により予測されるかどうかの情報は、境界強度パラメータの決定で利用されない。従って、それは格納される必要がない。本発明の実施形態の助けにより、ハードウェア実装において、Pブロックの予測モードは、(PブロックがCIIP予測により予測されるとき)一時的にインター予測として変更でき、境界強度の決定は、変更された予測モードに従い実行できる。その後(境界強度の決定の後)、予測モードはCIIP予測に変更され戻すことができる。ハードウェア実装は、ここに説明した方法(CTU境界におけるPブロックの予測モードを変更すること)に限定されず、これは単に、本発明の実施形態により、PブロックがCIIP予測により予測されるかどうかの情報が、(水平CTU境界における)境界強度の決定において必須ではないことを説明するための例として提示されることに留意する。
従って、本発明の実施形態によると、必要なラインメモリは、ブロック当たり2ビットから、ブロック当たり1ビットに削減される。ハードウェアに実装される必要のある合計ラインメモリは、ピクチャ幅に比例し及び最小ブロック幅に反比例することに留意する。
実施形態によると、上述の全部の実施形態は、ブロックがCIIP予測の適用により予測される場合、第1予測はインター予測の適用により取得され、第2予測はイントラ予測の適用により取得され、それらは後に結合されることに留意する。
上述の実施形態は、デブロッキングフィルタを実行するとき、CIIPブロックが異なる範囲でイントラブロックと考えられることを示す。実施形態1、2、及び3は、境界の境界強度を調整するために、3つの異なる方針を使用する。実施形態1は、MHブロックを完全にイントラブロックと見なす。従って、Bsを2に設定する条件は、表1と同じである。
実施形態2も、MHブロックにより引き起こされる歪みがイントラブロックほど高くないと見なす。従って、境界強度条件は、先ずイントラブロックについて、次にCIIPブロックについてチェックされる。しかしながら、CIIPブロックが検出されるとき、Bsは依然として2と考えられる。
実施形態3は、MHブロックを部分的にイントラブロックと見なし、境界の少なくとも1個の隣接ブロックがMHブロックである場合、Bsは1だけ増大される。従来の導出方針を用いて、Bsが既に2である場合、Bsは変更されない。
図8は、VVCドラフト3.0におけるBsの導出を示す。図7、9、及び10は、それぞれ、実施形態1、2、及び3のBs導出に対する変更を示す。
実施形態1及び2では、潜在的な歪みだけでなく、処理ロジックも削減されることに留意する価値がある。実施形態1及び2では、P又はQブロックがMHブロックである限り、係数及び動きベクトルについてのチェックは、もはや必要なく、従って、条件チェックの遅延が短縮される。
実施形態4、5、6は、それぞれ、実施形態1、2、及び3の変形であり、ラインバッファメモリが考慮される。実施形態1、2、及び3に対するそれらの中核となる変更は、2つの側P及びQが異なるCTU内に位置し、エッジが水平である場合、MHブロックのチェックが非対称に実行されることである。つまり、P側ブロック(つまり上側)はチェックされないが、Q側(つまり下側)のみがチェックされる。この方法では、別のCTU内に位置するP側ブロックのCIIPフラグを格納するために、追加のラインバッファメモリが割り当てられない。
上述の6個の実施形態に加えて、MHブロックの1つの更なる特徴は、MHブロックが一貫してイントラブロックと考えられる必要がないことであり得る。一例では、現在ブロックの動きベクトル予測子を検索するとき、その近隣ブロックがMHブロックである場合、これらのMHブロックの動きベクトルは、動きベクトル予測子と考えることができる。この場合、HMブロックのインター予測情報が使用され、従って、HMブロックはもはやイントラブロックと考えられない。別の例では、イントラブロックのMPMリストを構築するとき、現在ブロックの近隣MHブロックは、イントラ情報を含まないと考えることができる。従って、現在ブロックのMPMリスト構築のために、それらのMHブロックの利用可能性をチェックするとき、それらは利用不可能とラベル付けされる。この段落で言及されるMHブロックは、デブロッキングフィルタのBs値を決定するために使用されるMHブロックにのみ限定されないことに留意する。
上述の6個の実施形態に加えて、MHブロックの1つの更なる特徴は、MHブロックが一貫してイントラブロックと考えられることであり得る。一例では、現在ブロックの動きベクトル予測子を検索するとき、その近隣ブロックがMHブロックである場合、これらのMHブロックの動きベクトルは、動きベクトル予測子から除外される。この場合、HMブロックのインター予測情報が使用されず、従って、HMブロックはイントラブロックと考えられる。別の例では、イントラブロックのMPMリストを構築するとき、現在ブロックの近隣MHブロックは、イントラ情報を含むと考えることができる。従って、現在ブロックのMPMリスト構築のために、それらのMHブロックの利用可能性をチェックするとき、それらは利用可能とラベル付けされる。この段落で言及されるMHブロックは、デブロッキングフィルタのBs値を決定するために使用されるMHブロックにのみ限定されない。
以下は、上述の実施形態に示されたような符号化方法及び復号方法の適用、及びそれらを使用するシステムの説明である。
図14は、コンテンツ配信サービスを実現するコンテンツ供給システム3100を示すブロック図である。このコンテンツ供給システム3100は、キャプチャ装置3102、端末装置3106を含み、及び任意的にディスプレイ3126を含む。キャプチャ装置3102は、通信リンク3104を介して端末装置3106と通信する。通信リンクは、上述の通信チャネル13を含んでよい。通信リンク3104は、限定ではないが、WIFI、イーサネット、ケーブル、無線(3G/4G/5G)、USB、又はそれらの任意の種類の組み合わせ、等を含む。
キャプチャ装置3102は、データを生成し、上述の実施形態で示したような符号化方法によりデータを符号化してよい。或いは、キャプチャ装置3102は、データをストリーミングサーバ(図に示されない)へ配信してよく、サーバは、データを符号化し、符号化データを端末装置3106へ送信する。キャプチャ装置3102は、限定ではないが、カメラ、スマートフォン又はPad、コンピュータ又はラップトップ、ビデオ会議システム、PDA、車載装置、又はそれらのいずれかの組み合わせ、等を含む。例えば、キャプチャ装置3102は、上述のようなソース装置12を含んでよい。データがビデオを含むとき、キャプチャ装置3102に含まれるビデオエンコーダ20は、実際に、ビデオ符号化処理を実行してよい。データがオーディオ(つまり、音声)を含むとき、キャプチャ装置3102に含まれるオーディオエンコーダは、実際に、オーディオ符号化処理を実行してよい。幾つかの実用的なシナリオでは、キャプチャ装置3102は、符号化ビデオ及びオーディオデータを、それらを一緒に多重化することにより、配信する。他の実用的なシナリオでは、例えば、ビデオカメラシステムで、符号化オーディオデータ及び符号化ビデオデータは、多重化されない。キャプチャ装置3102は、符号化オーディオデータ及び符号化ビデオデータを端末装置3106へ別個に配信する。
コンテンツ供給システム3100では、端末装置310は、符号化データを受信し再生する。端末装置3106は、上述の符号化データを復号する能力を有するスマートフォン又はPad3108、コンピュータ又はラップトップ3110、ネットワークビデオレコーダ(network video recorder (NVR))/デジタルビデオレコーダ(digital video recorder (DVR))3112、TV3114、セットトップボックス(set top box (STB))3116、ビデオ会議システム3118、ビデオ監視システム3120、パーソナルデジタルアシスタント(personal digital assistant (PDA))3122、車載装置3124、又はそれらのいずれかの組合せ、等のような、データ受信及び復元能力を備えた装置であり得る。例えば、端末装置3106は、上述のような宛先装置14を含んでよい。符号化データがビデオを含むとき、端末装置に含まれるビデオデコーダ30は、ビデオ復号を実行するよう優先される。符号化データがオーディオを含むとき、端末装置に含まれるオーディオデコーダは、オーディオ復号処理を実行するよう優先される。
ディスプレイを備える端末装置、スマートフォン、又はPad3108、コンピュータ又はラップトップ3110、ネットワークビデオレコーダ(network video recorder (NVR))/デジタルビデオデコーダ(digital video recorder (DVR))3112、TV3114、パーソナルデジタルアシスタント(personal digital assistant (PDA))3122、又は車載装置3124では、端末装置は復号データを自身のディスプレイに供給できる。ディスプレイを備えない端末装置、例えばSTB3116、ビデオ会議システム3118、又はビデオ監視システム3120では、外部ディスプレイ3126は、復号データを受信し表示するために接続される。
このシステム内の各装置が符号化又は復号を実行するとき、上述の実施形態において示されたように、ピクチャ符号化装置又はピクチャ復号装置が使用できる。
図15は、端末装置3106の例の構造を示す図である。端末装置3106がキャプチャ装置3102からストリームを受信した後に、プロトコル進行ユニット3202は、ストリームの送信プロトコルを分析する。プロトコルは、限定ではないが、リアルタイムストリーミングプロトコル(Real Time Streaming Protocol (RTSP))、ハイパーテキスト転送プロトコル(Hyper Text Transfer Protocol (HTTP))、HTTPライブストリーミングプロトコル(HTTP Live streaming protocol (HLS))、MPEG-DASH、リアルタイムトランスポートプロトコル(Real-time Transport protocol (RTP))、リアルタイムメッセージングプロトコル(Real Time Messaging Protocol (RTMP))、又は任意の種類のそれらの組み合わせ、等を含む。
プロトコル進行ユニット3202がストリームを処理した後に、ストリームファイルが生成される。ファイルは、逆多重化ユニット3204へと出力される。逆多重化ユニット3204は、多重化データを符号化オーディオデータ及び符号化ビデオデータに分離できる。上述のように、幾つかの実用的なシナリオでは、例えば、ビデオ会議システムで、符号化オーディオデータ及び符号化ビデオデータは、多重化されない。この状況では、符号化データは、逆多重化ユニット3204を通らずに、ビデオデコーダ3206及びオーディオデコーダ3208へと送信される。
逆多重化処理により、ビデオエレメンタリストリーム(elementary stream (ES))、オーディオES、及び任意の字幕が生成される。上述の実施形態において説明したようなビデオデコーダ30を含むビデオデコーダ3206は、上述の実施形態において示したような復号方法によりビデオESを復号して、ビデオフレームを生成し、このデータを同期ユニット3212に供給する。オーディオデコーダ3208は、オーディオESを復号してオーディオフレームを生成し、このデータを同期ユニット3212に供給する。或いは、ビデオフレームは、同期ユニット3212に供給する前に、バッファ(図Yに示されない)に格納されてよい。同様に、オーディオフレームは、同期ユニット3212に供給する前に、バッファ(図Yに示されない)に格納されてよい。
同期ユニット3212は、ビデオフレーム及びオーディオフレームを同期化し、ビデオ/オーディオをビデオ/オーディオディスプレイ3214に供給する。例えば、同期ユニット3212は、ビデオ及びオーディオ情報の提示を同期化する。情報は、符号化オーディオ及び視覚データの提示に関するタイムスタンプ、及びデータストリーム自体の配信に関するタイムスタンプを用いてシンタックス内に符号化してよい。
字幕がストリームに含まれる場合、字幕デコーダ3210は、字幕を復号し、それをビデオフレーム及びオーディオフレームと同期化させ、ビデオ/オーディオ/字幕をビデオ/オーディオ/字幕ディスプレイ3216に供給する。
本発明は、上述のシステムに限定されず、上述の実施形態におけるピクチャ符号化装置又はピクチャ復号装置のいずれも、他のシステム、例えば車両システムに組み込むことができる。
本発明の実施形態は主にビデオ符号化に基づき説明されたが、留意すべきことに、符号化システム10、エンコーダ20、及びデコーダ30(及び相応してシステム10)の実施形態、並びにここに説明された他の実施形態は、静止画処理又は符号化、つまりビデオ符号化におけるような任意の先行する又は連続するピクチャと独立した個々のピクチャの処理又は符号化のために構成されてもよい。一般的に、ピクチャ処理符号化が単一のピクチャ17に限定される場合、インター予測ユニット244(エンコーダ)及び344(デコーダ)のみが利用可能である必要はない。ビデオエンコーダ20及びビデオデコーダ30の全ての他の機能(ツール又は技術とも呼ばれる)は、静止画処理、例えば残差計算204/304、変換206、量子化208、逆量子化210/310、(逆)変換212/312、モード選択262/260、イントラ予測254/354、及び/又はループフィルタ220、320、及びエントロピー符号化270及びエントロピー復号304のために等しく使用されてよい。
例えばエンコーダ20及びデコーダ30の実施形態、及び例えばエンコーダ20及びデコーダ30を参照してここに説明した機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装されてよい。ソフトウェアで実装される場合、機能は、1つ以上の命令又はコードとしてコンピュータ可読媒体に格納され又は通信媒体を介して送信され、ハードウェアに基づく処理ユニットにより実行されてよい。コンピュータ可読媒体は、データ記憶媒体のような有形媒体に対応するコンピュータ可読記憶媒体、又は例えば通信プロトコルに従いある場所から別の場所へのコンピュータプログラムの転送を実現する任意の媒体を含む通信媒体、を含んでよい。この方法では、コンピュータ可読媒体は、一般的に、(1)非一時的である有形コンピュータ可読記憶媒体、又は(2)信号若しくは搬送波のような通信媒体、に対応してよい。データ記憶媒体は、本開示で説明された技術の実装のために命令、コード、及び/又はデータ構造を読み出すために、1つ以上のコンピュータ又は1つ以上のプロセッサによりアクセス可能な任意の利用可能な媒体であってよい。コンピュータプログラムプロダクトは、コンピュータ可読媒体を含んでよい。
例により、限定ではなく、このようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM、CD-ROM、又は他の光ディスク記憶、磁気ディスク記憶、又は他の磁気記憶装置、フラッシュメモリ、又は所要のプログラムコードを命令又はデータ構造の形式で格納するために使用可能な、コンピュータによりアクセス可能な任意の他の媒体、を含み得る。また、任意の接続は、適正にコンピュータ可読媒体と呼ばれる。例えば命令がウェブサイト、サーバ、又は他のリモートソースから、同軸ケーブル、光ファイバケーブル、より対線、デジタル加入者線(digital subscriber line (DSL))、又は赤外線、無線、及びマイクロ波のような無線技術を用いて送信される場合、同軸ケーブル、光ファイバケーブル、より対線、DSL、又は赤外線、無線、及びマイクロ波のような無線技術は、媒体の定義に含まれる。しかしながら、理解されるべきことに、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とする。ディスク(disk)及びディクス(disc)は、ここで使用されるとき、コンパクトディスク(compact disc (CD))、レーザディスク、光ディスク、デジタルバーサタイルディスク(digital versatile disc (DVD))、フロッピーディスク、及びブルーレイディスクを含み、ディスク(disk)は通常データを磁気的に再生し、ディスク(disc)はデータをレーザにより光学的に再生する。前述の結合も、コンピュータ可読媒体の範囲に含まれるべきである。
命令は、1つ以上のデジタル信号プロセッサ(digital signal processor (DSP))、汎用マイクロプロセッサ、特定用途向け集積回路(application specific integrated circuit (ASIC))、フィールドプログラマブルロジックアレイ(field programmable logic array (FPGA))、又は他の等価な集積又は個別論理回路、のような1つ以上のプロセッサにより実行されてよい。従って、用語「プロセッサ」は、ここで使用されるとき、前述の構造のうちのいずれか、又はここに記載される技術の実装に適する任意の他の構造を表してよい。更に、幾つかの態様では、ここに説明された機能は、符号化及び復号又は結合されたコーデックに組み込まれるために構成される専用ハードウェア及び/又はソフトウェアモジュール内で提供されてよい。更に、技術は、全部、1つ以上の回路又は論理素子で実装され得る。
本開示の技術は、無線ハンドセット、集積回路(integrated circuit (IC))、又はICのセット(例えば、チップセット)を含む種々の装置又は機器の中で実装されてよい。種々のコンポーネント、モジュール、又はユニットは、開示の技術を実行するよう構成される装置の機能的側面を強調するために、本開示で説明されたが、異なるハードウェアユニットによる実現を必ずしも要求しない。むしろ、上述のように、種々のユニットは、適切なソフトウェア及び/又はファームウェアと組み合わせて、コーデックハードウェアユニット内で結合され、又は上述のような1つ以上のプロセッサを含む相互運用ハードウェアユニットの集合により提供されてよい。

Claims (48)

  1. 符号化の方法であって、前記符号化は復号又は符号化を含み、前記方法は、
    2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するステップであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、ステップと、
    前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定するか、又は、前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定するステップと、
    を含む方法。
  2. 前記境界の前記Bsを前記第1値に設定する前記ステップは、
    前記第1ブロックがCIIPの適用により予測されるとき又は前記第2ブロックがCIIPの適用により予測されるとき、前記境界の前記Bsを前記第1値に設定するステップを含む、請求項1に記載の方法。
  3. 前記方法は、
    ビットストリームをパースしてフラグを取得するステップであって、前記フラグは、前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるかどうかを示すために使用される、ステップ、を更に含む請求項1又は2に記載の方法。
  4. 前記方法は、
    2個のブロックのうちの少なくとも1個がイントラ予測の適用により予測されるかどうかを決定するステップ、を更に含む請求項1~3のいずれか一項に記載の方法。
  5. 前記方法は、
    前記2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の前記Bsを前記第1値に設定するステップ、を含む請求項4に記載の方法。
  6. 前記第1値は2又は1である、請求項1~5のいずれか一項に記載の方法。
  7. 前記方法は、
    前記2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の前記Bsを前記第2値に設定するステップ、を含む請求項4に記載の方法。
  8. 前記2個のブロック(P及びQ)のうちの少なくとも1個がゼロではない変換係数を有するとき、前記第2値は1である、請求項1~7のいずれか一項に記載の方法。
  9. 前記方法は、
    VVCドラフト3.0に基づき、前記境界の元のBsを導出するステップ、を更に含み、
    前記元のBsの値が閾値より小さいとき、前記第1値は前記元のBsの前記値と定数との和に等しく、
    前記元のBsの値が前記閾値より小さくないとき、前記第1値は前記元のBsの前記値に等しい、請求項1に記載の方法。
  10. 前記閾値は2に等しい、請求項9に記載の方法。
  11. 前記定数は1に等しい、請求項9又は10に記載の方法。
  12. 前記第1値は、前記第2値と同じである又は異なる、請求項1~11のいずれか一項に記載の方法。
  13. 前記方法は、
    前記Bsの値がルマ成分についてゼロより大きいとき、デブロッキングを実行するか、又は、前記Bsの前記値がクロマ成分について1より大きいとき、デブロッキングを実行するステップであって、前記Bsの前記値は前記第1値又は前記第2値のうちの1つである、ステップ、を更に含む請求項1~12のいずれか一項に記載の方法。
  14. ブロックがCIIPの適用により予測されるとき、前記ブロックは、デブロッキングを実行するときにイントラ予測によるブロックと考えられ、前記ブロックは前記第1ブロック又は前記第2ブロックである、請求項1~13のいずれか一項に記載の方法。
  15. ブロックがCIIPの適用により予測されるとき、前記ブロックは、最確モード(Most Probable Mode (MPM))リストを構築するときにインター予測の適用により予測されるブロックと考えられ、前記ブロックは前記第1ブロック又は前記第2ブロックである、請求項1~14のいずれか一項に記載の方法。
  16. ブロックがCIIPの適用により予測されるとき、前記ブロックは、動きベクトル予測(Motion Vector Prediction (MVP))を実行するときにインター予測の適用により予測されるブロックと考えられ、前記ブロックは前記第1ブロック又は前記第2ブロックである、請求項1~15のいずれか一項に記載の方法。
  17. ブロックがCIIPの適用により予測されるとき、前記ブロックは、最確モード(Motion Vector Prediction (MVP))リストを構築するときにイントラ予測の適用により予測されるブロックと考えられ、前記ブロックは前記第1ブロック又は前記第2ブロックである、請求項1~16のいずれか一項に記載の方法。
  18. ブロックがCIIPの適用により予測されるとき、前記ブロックは、動きベクトル予測(Motion Vector Prediction (MVP))を実行するときにイントラ予測の適用により予測されるブロックと考えられ、前記ブロックは前記第1ブロック又は前記第2ブロックである、請求項1~17のいずれか一項に記載の方法。
  19. 符号化の方法であって、前記符号化は符号化又は復号を含み、
    境界の符号化ブロックが結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するステップと、
    前記符号化ブロックがCIIPの適用により予測されるブロックであるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定するか、又は、前記符号化ブロックがCIIPの適用により予測されるブロックではないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定するステップと、
    を含む方法。
  20. 2個のブロックが前記境界に関連付けられ、前記2個のブロックは第1ブロック(ブロックQ)及び第2ブロック(ブロックP)を含み、前記境界の前記符号化ブロックは前記第1ブロックである、請求項19に記載の方法。
  21. 前記境界が水平境界であるとき、前記2個のブロックは異なる符号化木単位(Coding Tree Unit (CTU))に属し、前記第1ブロックは前記境界の下側に属する、請求項20に記載の方法。
  22. 前記方法は、
    ビットストリームをパースしてフラグを取得するステップであって、前記フラグは、前記境界の前記符号化ブロックがCIIPの適用により予測されるかどうかを示すために使用される、ステップ、を更に含む請求項19~21のいずれか一項に記載の方法。
  23. 前記方法は、
    前記境界の前記符号化ブロックがイントラ予測の適用により予測されるかどうかを決定するステップ、を更に含む請求項19~22のいずれか一項に記載の方法。
  24. 前記方法は、
    前記符号化ブロックがイントラ予測の適用により予測されないとき及び前記符号化ブロックがCIIPの適用により予測されるとき、前記境界の前記Bsを前記第1値に設定するステップであって、前記第1値は2又は1である、ステップ、を含む請求項23に記載の方法。
  25. 前記符号化ブロックがイントラ予測の適用により予測されず、CIIPの適用により予測されないとき、前記符号化ブロックがゼロではない変換係数を有するとき前記第2値は1である、請求項23に記載の方法。
  26. 前記方法は、
    VVCドラフト3.0に基づき、前記境界の元のBsを導出するステップ、を更に含み、
    前記元のBsの値が閾値より小さいとき、前記第1値は前記元のBsの前記値と定数との和に等しく、
    前記元のBsの値が前記閾値より小さくないとき、前記第1値は前記元のBsの前記値に等しい、請求項19~22のいずれか一項に記載の方法。
  27. 前記閾値は2に等しい、請求項26に記載の方法。
  28. 前記定数は1に等しい、請求項26又は27に記載の方法。
  29. 前記方法は、
    前記Bsの値がルマ成分についてゼロより大きいとき、デブロッキングを実行するか、又は、前記Bsの前記値がクロマ成分について1より大きいとき、デブロッキングを実行するステップであって、前記Bsの前記値は前記第1値又は前記第2値のうちの1つである、ステップ、を更に含む請求項19~28のいずれか一項に記載の方法。
  30. 前記符号化ブロックがCIIPの適用により予測されるとき、前記符号化ブロックは、デブロッキングを実行するときにイントラ予測の適用により予測されるブロックと考えられる、請求項19~29のいずれか一項に記載の方法。
  31. 前記符号化ブロックがCIIPの適用により予測されるとき、前記符号化ブロックは、最確モード(Most Probable Mode (MPM))リストを構築するときにインター予測の適用により予測されるブロックと考えられる、請求項19~30のいずれか一項に記載の方法。
  32. 前記符号化ブロックがCIIPの適用により予測されるとき、前記符号化ブロックは、動きベクトル予測を実行するときにインター予測の適用により予測されるブロックと考えられる、請求項19~31のいずれか一項に記載の方法。
  33. 前記符号化ブロックがCIIPの適用により予測されるとき、前記符号化ブロックは、最確モード(Most Probable Mode (MPM))リストを構築するときにイントラ予測の適用により予測されるブロックと考えられる、請求項19~32のいずれか一項に記載の方法。
  34. 前記符号化ブロックがCIIPの適用により予測されるとき、前記符号化ブロックは、動きベクトル予測を実行するときにイントラ予測の適用により予測されるブロックと考えられる、請求項19~33のいずれか一項に記載の方法。
  35. 前記第1値は、前記第2値と同じである又は異なる、請求項19~34のいずれか一項に記載の方法。
  36. 境界強度を導出する機器であって、前記機器はエンコーダ又はデコーダであり、前記機器は、
    2個のブロックのうちの少なくとも1個が結合インターイントラ予測(combined inter-intra prediction (CIIP))の適用により予測されるかどうかを決定するよう構成される決定ユニットであって、前記2個のブロックは第1ブロック(ブロックQ)と第2ブロック(ブロックP)とを含み、前記2個のブロックは境界に関連付けられる、決定ユニットと、
    前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の境界強度(boundary strength (Bs))を第1値に設定し、前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の境界強度(boundary strength (Bs))を第2値に設定するよう構成される設定ユニットと、
    を含む機器。
  37. 前記設定ユニットは、前記第1ブロックがCIIPの適用により予測されるとき又は前記第2ブロックがCIIPの適用により予測されるとき、前記境界の前記Bsを前記第1値に設定するよう構成される、請求項36に記載の機器。
  38. 前記機器は、
    ビットストリームをパースしてフラグを取得するよう構成されるパースユニットであって、前記フラグは、前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるかどうかを示すために使用される、パースユニット、を更に含む請求項36又は37に記載の機器。
  39. 前記決定ユニットは、2個のブロックのうちの少なくとも1個がイントラ予測の適用により予測されるかどうかを決定するよう更に構成される、請求項36~38のいずれか一項に記載の機器。
  40. 前記設定ユニットは、前記2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び前記2個のブロックのうちの少なくとも1個がCIIPの適用により予測されるとき、前記境界の前記Bsを前記第1値に設定するよう構成される、請求項39に記載の機器。
  41. 前記第1値は2又は1である、請求項36~40のいずれか一項に記載の機器。
  42. 前記設定ユニットは、前記2個のブロックのうちのいずれもイントラ予測の適用により予測されないとき及び前記2個のブロックのうちのいずれもCIIPの適用により予測されないとき、前記境界の前記Bsを前記第2値に設定するよう構成される、請求項39に記載の機器。
  43. 前記2個のブロック(P及びQ)のうちの少なくとも1個がゼロではない変換係数を有するとき、前記第2値は1である、請求項36~42のいずれか一項に記載の機器。
  44. 請求項1~35のいずれか一項に記載の方法を実行する処理回路を含むエンコーダ(20)。
  45. 請求項1~35のいずれか一項に記載の方法を実行する処理回路を含むデコーダ(30)。
  46. 請求項1~35のいずれか一項に記載の方法を実行するためのプログラムコードを含むコンピュータプログラムプロダクト。
  47. デコーダであって、
    1つ以上のプロセッサと、
    前記プロセッサに接続され前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサにより実行されると、請求項1~35のいずれか一項に記載の方法を実行するよう前記デコーダを構成する、非一時的コンピュータ可読記憶媒体と、
    を含むデコーダ。
  48. エンコーダであって、
    1つ以上のプロセッサと、
    前記プロセッサに接続され前記プロセッサによる実行のためのプログラミングを格納する非一時的コンピュータ可読記憶媒体であって、前記プログラミングは、前記プロセッサにより実行されると、請求項1~35のいずれか一項に記載の方法を実行するよう前記エンコーダを構成する、非一時的コンピュータ可読記憶媒体と、
    を含むエンコーダ。
JP2021531933A 2018-12-07 2019-12-07 エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法 Active JP7275270B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023075905A JP2023090864A (ja) 2018-12-07 2023-05-02 エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862776491P 2018-12-07 2018-12-07
US62/776,491 2018-12-07
US201962792380P 2019-01-14 2019-01-14
US62/792,380 2019-01-14
PCT/CN2019/123845 WO2020114513A1 (en) 2018-12-07 2019-12-07 An encoder, a decoder and corresponding methods of boundary strength derivation of deblocking filter

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023075905A Division JP2023090864A (ja) 2018-12-07 2023-05-02 エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法

Publications (2)

Publication Number Publication Date
JP2022511850A true JP2022511850A (ja) 2022-02-01
JP7275270B2 JP7275270B2 (ja) 2023-05-17

Family

ID=70974090

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021531933A Active JP7275270B2 (ja) 2018-12-07 2019-12-07 エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法
JP2023075905A Pending JP2023090864A (ja) 2018-12-07 2023-05-02 エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023075905A Pending JP2023090864A (ja) 2018-12-07 2023-05-02 エンコーダ、デコーダ、及びデブロッキングフィルタの境界強度導出の対応する方法

Country Status (12)

Country Link
US (2) US11240493B2 (ja)
JP (2) JP7275270B2 (ja)
KR (2) KR20230165354A (ja)
CN (4) CN117857806A (ja)
AU (1) AU2019394248B2 (ja)
BR (1) BR112020026818A2 (ja)
CA (1) CA3122137C (ja)
IL (1) IL283789A (ja)
MX (1) MX2021001607A (ja)
NZ (1) NZ777166A (ja)
WO (1) WO2020114513A1 (ja)
ZA (1) ZA202104007B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7303255B2 (ja) 2019-01-09 2023-07-04 ベイジン ダジア インターネット インフォメーション テクノロジー カンパニー リミテッド ビデオコーディングの方法、ビデオコーディングデバイス、コンピュータ可読記憶媒体およびコンピュータプログラム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA3117627A1 (en) * 2018-10-27 2020-04-30 Huawei Technologies Co., Ltd. Separate merge list for subblock merge candidates and intra-inter techniques harmonization for video coding
KR20200073124A (ko) * 2018-12-13 2020-06-23 에스케이텔레콤 주식회사 필터링 방법 및 영상 복호화 장치
JP7418152B2 (ja) * 2018-12-17 2024-01-19 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法
CN113661704A (zh) 2019-01-09 2021-11-16 北京达佳互联信息技术有限公司 用于改进帧间帧内联合预测的系统和方法
CA3120828A1 (en) 2019-01-17 2020-07-23 Huawei Technologies Co., Ltd. An encoder, a decoder and corresponding methods of deblocking filter adaptation
WO2020228661A1 (en) * 2019-05-11 2020-11-19 Beijing Bytedance Network Technology Co., Ltd. Deblocking filter for video coding
US11936916B2 (en) * 2019-06-25 2024-03-19 Lg Electronics Inc. Image decoding method using lossless coding in image coding system and apparatus therefor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007503775A (ja) * 2003-08-26 2007-02-22 トムソン ライセンシング ハイブリッド・イントラ・インター符号化ブロックを符号化する方法及び装置
WO2015191834A1 (en) * 2014-06-11 2015-12-17 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US9374578B1 (en) * 2013-05-23 2016-06-21 Google Inc. Video coding using combined inter and intra predictors

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101779464B (zh) * 2007-06-08 2014-02-12 汤姆森特许公司 多格点基于稀疏性滤波基础上环内去伪像滤波方法和装置
KR101590500B1 (ko) * 2008-10-23 2016-02-01 에스케이텔레콤 주식회사 동영상 부호화/복호화 장치, 이를 위한 인트라 예측 방향에기반한 디블록킹 필터링 장치 및 필터링 방법, 및 기록 매체
JP2011139208A (ja) * 2009-12-28 2011-07-14 Sony Corp 画像処理装置および方法
MY191783A (en) * 2010-04-13 2022-07-15 Samsung Electronics Co Ltd Video encoding method and video encoding apparatus and video decoding method and video decoding apparatus, which perform deblocking filtering based on tree-structure encoding units
CN104811712B (zh) 2010-08-17 2016-12-14 三星电子株式会社 视频解码方法
US9025675B2 (en) * 2011-06-22 2015-05-05 Texas Instruments Incorporated Systems and methods for reducing blocking artifacts
EP4336841A3 (en) * 2011-07-19 2024-03-20 Tagivan Ii Llc Coding method
CN108696753B (zh) * 2011-09-20 2021-07-27 Lg 电子株式会社 用于编码/解码图像信息的方法和装置
KR20130079261A (ko) * 2011-12-30 2013-07-10 (주)휴맥스 3차원 영상 부호화 방법 및 장치, 및 복호화 방법 및 장치
US9609343B1 (en) * 2013-12-20 2017-03-28 Google Inc. Video coding using compound prediction
EP3376764A4 (en) * 2015-11-12 2019-12-04 LG Electronics Inc. METHOD AND DEVICE FOR COEFFICIENT-INDUCED INTRAPREDICATION IN A BILDCODING SYSTEM
WO2020005031A1 (ko) * 2018-06-28 2020-01-02 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
KR102499384B1 (ko) * 2018-07-30 2023-02-13 삼성전자주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
US11240497B2 (en) * 2018-11-15 2022-02-01 Telefonaktiebolaget Lm Ericsson (Publ) Deblocking in a video encoder and/or video decoder

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007503775A (ja) * 2003-08-26 2007-02-22 トムソン ライセンシング ハイブリッド・イントラ・インター符号化ブロックを符号化する方法及び装置
US8085845B2 (en) * 2003-08-26 2011-12-27 Thomson Licensing Method and apparatus for encoding hybrid intra-inter coded blocks
US9374578B1 (en) * 2013-05-23 2016-06-21 Google Inc. Video coding using combined inter and intra predictors
WO2015191834A1 (en) * 2014-06-11 2015-12-17 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MAN-SHU CHIANG, CHIH-WEI HSU, YU-WEN HUANG, SHAW-MIN LEI: "CE10.1.1: Multi-hypothesis prediction for improving AMVP mode, skip or merge mode, and intra mode [o", JVET-L JVET-L0100-V3, JPN6022039822, 17 October 2019 (2019-10-17), pages 1 - 14, ISSN: 0004882532 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7303255B2 (ja) 2019-01-09 2023-07-04 ベイジン ダジア インターネット インフォメーション テクノロジー カンパニー リミテッド ビデオコーディングの方法、ビデオコーディングデバイス、コンピュータ可読記憶媒体およびコンピュータプログラム

Also Published As

Publication number Publication date
JP2023090864A (ja) 2023-06-29
KR20230165354A (ko) 2023-12-05
EP3881545A1 (en) 2021-09-22
US11240493B2 (en) 2022-02-01
AU2019394248A1 (en) 2021-07-01
NZ777166A (en) 2022-11-25
WO2020114513A1 (en) 2020-06-11
KR20210018470A (ko) 2021-02-17
CN113170143A (zh) 2021-07-23
US20200404258A1 (en) 2020-12-24
IL283789A (en) 2021-07-29
MX2021001607A (es) 2021-04-19
CN117956166A (zh) 2024-04-30
BR112020026818A2 (pt) 2021-07-27
JP7275270B2 (ja) 2023-05-17
AU2019394248B2 (en) 2023-03-16
US20220124314A1 (en) 2022-04-21
CN117857806A (zh) 2024-04-09
CA3122137A1 (en) 2020-06-11
CN113170143B (zh) 2024-01-02
ZA202104007B (en) 2022-07-27
KR102606414B1 (ko) 2023-11-24
CA3122137C (en) 2024-01-02
US11895292B2 (en) 2024-02-06
CN117857807A (zh) 2024-04-09

Similar Documents

Publication Publication Date Title
KR102431537B1 (ko) 루마 및 크로마 성분에 대한 ibc 전용 버퍼 및 디폴트 값 리프레싱을 사용하는 인코더, 디코더 및 대응하는 방법들
US20210344915A1 (en) Encoder, a decoder and corresponding methods of intra prediction
US11895292B2 (en) Encoder, decoder and corresponding methods of boundary strength derivation of deblocking filter
JP7457010B2 (ja) マージモードのためのエンコーダ、デコーダ、および対応する方法
CN112954367B (zh) 使用调色板译码的编码器、解码器和相应方法
US11876997B2 (en) Encoder, decoder and corresponding methods of most probable mode list construction for blocks with multi-hypothesis prediction
KR20210126126A (ko) 크로마 서브블록의 아핀 기반 인터 예측을 위한 방법 및 장치
JP7314300B2 (ja) イントラ予測のための方法および装置
JP2022529030A (ja) 行列ベースのイントラ予測と二次変換コア選択を調和させるエンコーダ、デコーダ、および対応する方法
US11843806B2 (en) Encoder, a decoder and corresponding methods of deblocking filter adaptation
KR20210126771A (ko) 인트라 예측 모드에 관련된 인코더, 디코더 및 대응하는 방법들
KR20210139446A (ko) 인트라 스무딩을 위한 방법 및 장치
US20210329305A1 (en) Encoder, A Decoder And Corresponding Methods For Tile Configuration Signaling
JP2022551313A (ja) ピクチャヘッダのシグナリングを簡略化するためのエンコーダ、デコーダ及び対応する方法
KR20210094057A (ko) 비디오 코딩에서 크로마 인트라 예측을 위한 방법 및 장치
JP2023100701A (ja) イントラ予測のためのイントラモードコーディングを使用するエンコーダ、デコーダ、および対応する方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210714

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210714

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230502

R150 Certificate of patent or registration of utility model

Ref document number: 7275270

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150