JP2021517378A - ビデオピクチャ境界のデブロッキング - Google Patents

ビデオピクチャ境界のデブロッキング Download PDF

Info

Publication number
JP2021517378A
JP2021517378A JP2020540272A JP2020540272A JP2021517378A JP 2021517378 A JP2021517378 A JP 2021517378A JP 2020540272 A JP2020540272 A JP 2020540272A JP 2020540272 A JP2020540272 A JP 2020540272A JP 2021517378 A JP2021517378 A JP 2021517378A
Authority
JP
Japan
Prior art keywords
block
boundary
conversion
deblocking filter
prediction
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
JP2020540272A
Other languages
English (en)
Other versions
JP7096890B2 (ja
Inventor
ケネト アンデション,
ケネト アンデション,
リキャルド ショバーリ,
リキャルド ショバーリ,
チー チャン,
チー チャン,
ヤコブ ストレム,
ヤコブ ストレム,
Original Assignee
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
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 テレフオンアクチーボラゲット エルエム エリクソン(パブル), テレフオンアクチーボラゲット エルエム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Publication of JP2021517378A publication Critical patent/JP2021517378A/ja
Application granted granted Critical
Publication of JP7096890B2 publication Critical patent/JP7096890B2/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/117Filters, e.g. for pre-processing or post-processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/004Predictors, e.g. intraframe, interframe coding
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/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/167Position within a video image, e.g. region of interest [ROI]
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/635Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by filter definition or implementation details
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

ビデオピクチャ中のコーディングユニットにデブロッキングを適用するための方法および装置を提供する。一態様では、デブロッキングは、コーディングユニット中のサブブロック境界およびコーディングユニット中の暗黙的変換ユニット境界に適用される。【選択図】図9A

Description

本開示は、ビデオ処理のための装置および方法に関する。本開示のいくつかの態様は、1つまたは複数のコーディングブロックに区分されたビデオピクチャを符号化、復号、および/またはフィルタ処理するための装置および方法に関する。
ビデオシーケンスは、各画像が1つまたは複数の成分からなる一連の画像からなる。一般に、各成分は、サンプル値の2次元矩形アレイとして説明され得る。ビデオシーケンス中の画像は、3つの成分、すなわち、サンプル値がルーマ値である1つのルーマ成分(Y)と、サンプル値がクロマ値である2つのクロマ成分(Cb、Cr)とからなることが一般的である。他の例示的な成分は、Y’、CbCr、Yuv、およびICを含むことができる。ICについて、「I」は、「強度ルーマ」成分と呼ばれる。本開示のコンテキストでは、ルーマ成分(たとえば、Y’、YまたはI)は、所与の例において単にYまたはルーマと呼ばれることがある。さらに、クロマ成分の次元がルーマ成分よりも小さいことがしばしばある。たとえば、クロマ成分の次元は各次元において1/2だけ小さいことがある。たとえば、HD画像のルーマ成分のサイズは1920×1080であり得、クロマ成分は、各々、960×540の次元を有し得る。成分は色成分と呼ばれることがある。
ビデオコーディングでは、画像はユニットにスプリットされ得、それらのユニットの各々は、画像の特定のエリアをカバーする。各ユニットは、その特定のエリアを構成する成分の各々からのブロックからなり得、ここで、各ブロックは、そのユニット中に完全に含まれる。H.264におけるマクロブロック、およびHEVCにおけるコーディングユニット(CU)が、そのようなユニットの例である。この事例では、ブロックは、サンプルの1つの2次元アレイとして理解され得る。ビデオコーディングではしばしば、各成分が、そのようなブロックにスプリットされ、したがって、コード化ビデオビットストリームは一連のブロックを含む。
HEVCでは、各ピクチャは、コーディングツリーユニット(CTU)に区分される。HEVCにおけるCTUは、ルーマサンプルのN×Nブロックと2つの対応するM×Mクロマブロックとからなる。HEVCにおけるCTUは、H.264および以前の規格におけるマクロブロックのようなものであるが、マクロブロックとは対照的に、CTUのサイズが設定可能である。しかしながら、たいていの事例では、HEVCにおけるCTUサイズは64×64ルーマサンプルにセットされる。各CTUは再帰的に4分木スプリットされ得、その場合、4分木のルートはCTUに関連付けられる。4分木は、リーフに達するまでスプリットされ、リーフは、コーディングユニット(CU)と呼ばれる。
HEVCにおけるCUは、常に、等しい高さおよび幅をもつルーマブロックからなる。各CTUがどのようにスプリットされるかに関する情報が、ビットストリーム中で伝達される。さらに、CUは、2つの他のツリー、すなわち、ノードとして予測ユニット(PU)を含む予測ツリー、およびノードとして変換ユニット(TU)を含む変換ツリーのルートノードである。CUレベル、PUレベル、およびTUレベルで、いくつかの復号プロセスが実施される。隣接するPU間の境界および隣接するTU間の境界が、TU間およびPU間の不連続性を低減するために、デブロッキングフィルタによってフィルタ処理される。HEVCでは、PUについて、2つの種類の予測タイプ、すなわち、(1)予測のために、現在ピクチャの、前に復号されたサンプルからの予測のみを使用するイントラ予測と、(2)少なくとも1つの前に復号されたピクチャからの予測を使用するインター予測とがある。HEVCでは、デブロッキングは、最初に垂直境界に対して適用され、次いで、水平境界に対して適用される。境界は、TU境界またはPU境界のいずれかである。並列フレンドリデブロッキングを可能にするために、デブロッキングは、8×8サンプルグリッドに対して実施される。
HEVCでは、各境界について、デブロッキングフィルタ強度パラメータ(bs)がセットされる。境界についてのbsの値が0よりも大きい場合、デブロッキングがその境界に適用され得る。適用されるフィルタ処理の強度は、境界強度がどのくらい大きいかに依存する。たとえば、第1のステップにおいて、ブロック間のPU境界におけるブロックのいずれかがイントラ予測されるブロックであるかどうかが検査される。ブロック間のPU境界がイントラ予測されるブロックである場合、そのPU境界についてのデブロッキングフィルタ強度パラメータは2にセットされる(たとえば、bsは2にセットされる)。両方のブロックがインター予測を使用するが、それらのブロックが、異なる参照フレームを使用するかまたは著しく異なる動きベクトルを有する場合、PU境界についてのデブロッキングフィルタ強度パラメータは1にセットされる(たとえば、bsは1にセットされる)。ブロック間のTU境界が、ブロックのうちの少なくとも1つ中に非0変換係数(たとえば、1に等しいコードブロックフラグ(CBF))を有するかどうかも検査される。ブロック間のTU境界が非0変換係数を有する場合、TU境界についてのデブロッキングフィルタ強度パラメータは1にセットされる(たとえば、bsは1にセットされる)。
したがって、HEVCでは、デブロッキングが適用されるべきであるかどうかを決定するために、境界強度(bs)が0よりも大きいかどうかが、最初に検査される。デブロッキングするときに自然構造を除去することを低減および/または回避するために、ルーマについて、境界のそれぞれの側に自然構造があるかどうかが検査される。HEVCでは、以下の不等式、すなわち、abs(p0−2*p1+p2)+abs(q0−2*q1+q2)<betaを使用して境界のそれぞれの側で勾配計算が使用され、ここで、betaは、ブロックについての量子化パラメータに基づくパラメータであり、p0、p1〜p2は、ブロック境界の一方の側のサンプルであり、q0、q1〜q2は、ブロック境界の反対側のサンプルである。条件が、境界に沿った2つの位置において検査され、両方の条件が満たされる場合、ルーマサンプルは、境界のそのサンプル部分についてデブロックされる。クロマ境界は、近隣ブロックのうちのいずれか1つがイントラコーディングされる場合、常にフィルタ処理され得る。
依然として、デブロッキングフィルタ処理など、境界における改善されたビデオ処理が必要である。
実施形態によれば、1つまたは複数のコーディングブロックに区分されたビデオピクチャを復号するためのデコーダが提供される。本方法は、最大変換サイズNよりも大きいサイズを有する、ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとにコーディングブロックをスプリットすることであって、それにより、第1の変換ブロックと第2の変換ブロックとの間に第1の変換境界を形成する、コーディングブロックをスプリットすることを含む。これは、たとえば、暗黙的スプリットであり得る。いくつかの実施形態では、デコーダは、サイズが最大Nよりも大きいと決定し得る。本方法は、第1の予測サブブロックと第2の予測サブブロックとにコーディングブロックの一部分をスプリットすることであって、それにより、第1の予測サブブロックと第2の予測サブブロックとの間に第1の予測境界を生成し、第1の予測境界が第1の変換ブロック内にある、コーディングブロックの一部分をスプリットすることをも含む。本方法は、第1の予測境界に第1のデブロッキングフィルタを適用することと、第1の変換境界に第2のデブロッキングフィルタを適用することとをも含む。本方法は、第1のブロックおよび第2のブロックのうちの少なくとも1つのための変換係数を復号し、第1のブロックまたは第2のブロックに逆変換演算を適用することをも含み得る。いくつかの態様では、第1のデブロッキングフィルタによって第1の予測境界において修正されるサンプルの最大数が、第2のデブロッキングフィルタによって第1の変換境界において修正されるサンプルの最大数とは異なる。
実施形態によれば、ビデオピクチャを復号するためのデコーダによって実施される方法が提供される。本方法は、デコーダが、ブロックレベルでスプリットを指示するシンタックスエレメントを復号することなしに第1のブロックと第2のブロックとにコーディングユニットのルーマ成分をスプリットすることを含む。本方法は、デコーダが、第1のブロックおよび第2のブロックのうちの少なくとも1つのための少なくとも1つの変換係数を復号し、第1のブロックおよび第2のブロックのうちの少なくとも1つに逆変換を適用することをさらに含む。本方法は、デコーダが、複数の予測サブブロックにコーディングユニットのルーマ成分をスプリットすることであって、複数の予測サブブロックが、第1のブロックと第2のブロックとのうちの少なくとも1つ中で境界を作成する、ルーマ成分をスプリットすることをさらに含む。デコーダは、次いで、第1のブロックと第2のブロックとのうちの少なくとも1つ中の境界にデブロッキングフィルタを適用し得る。本方法は、デコーダが、第1のブロックと第2のブロックとの間の境界にデブロッキングフィルタを適用することをも含むことができる。いくつかの態様では、本方法は、コーディングユニットのクロマ成分に適用され得る。いくつかの実施形態では、コーディングユニットのルーマ成分をスプリットするステップは、ルーマ成分を垂直方向にスプリットすることを含む。いくつかの実施形態では、コーディングユニットのルーマ成分をスプリットするステップは、ルーマ成分を水平方向にスプリットすることを含む。
いくつかの実施形態によれば、ビデオピクチャを復号する方法のうちの1つまたは複数を実施するように設定されたデコーダが提供される。
いくつかの実施形態によれば、1つまたは複数のコーディングブロックに区分されたビデオピクチャを符号化するためのエンコーダによって実施される方法が提供される。本方法は、最大変換サイズNよりも大きいサイズを有する、ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとにコーディングブロックをスプリットすることであって、それにより、第1の変換ブロックと第2の変換ブロックとの間に第1の変換境界を形成する、コーディングブロックをスプリットすることを含む。これは、たとえば、暗黙的スプリットであり得る。本方法は、サイズがNよりも大きいと決定することをも含み得る。本方法は、第1の予測サブブロックと第2の予測サブブロックとにコーディングブロックの一部分をスプリットすることであって、それにより、第1の予測サブブロックと第2の予測サブブロックとの間に第1の予測境界を生成し、第1の予測境界が第1の変換ブロック内にある、コーディングブロックの一部分をスプリットすることをも含む。本方法は、第1の予測境界に第1のデブロッキングフィルタを適用することと、第1の変換境界に第2のデブロッキングフィルタを適用することとをも含み得る。いくつかの実施形態では、本方法は、コード化ビデオピクチャ中に、第1のブロックまたは第2のブロックのための少なくとも1つの変換係数を含めることをさらに含む。いくつかの態様では、第1のデブロッキングフィルタによって第1の予測境界において修正されるサンプルの最大数が、第2のデブロッキングフィルタによって第1の変換境界において修正されるサンプルの最大数とは異なる。
実施形態によれば、ビデオピクチャを符号化するためのエンコーダによって実施される方法が提供される。本方法は、エンコーダが、符号化ビデオピクチャ中にブロックレベルでスプリットを指示するシンタックスエレメントを含めることなしに第1のブロックと第2のブロックとにコーディングユニットのルーマ成分をスプリットすることを含む。本方法は、エンコーダが、符号化ビデオピクチャ中に、第1のブロックと第2のブロックとのうちの少なくとも1つのための少なくとも1つの変換係数を含めることをさらに含む。本方法は、エンコーダが、複数の予測サブブロックにコーディングユニットのルーマ成分をスプリットすることであって、複数の予測サブブロックが、第1のブロックと第2のブロックとのうちの少なくとも1つ中で境界を作成する、ルーマ成分をスプリットすることをさらに含む。エンコーダは、次いで、第1のブロックと第2のブロックとのうちの少なくとも1つ中の境界にデブロッキングフィルタを適用し得る。本方法は、エンコーダが、第1のブロックと第2のブロックとの間の境界にデブロッキングフィルタを適用することをも含むことができる。いくつかの態様では、本方法は、コーディングユニットのクロマ成分に適用され得る。いくつかの実施形態では、コーディングユニットのルーマ成分をスプリットするステップは、ルーマ成分を垂直方向にスプリットすることを含む。いくつかの実施形態では、コーディングユニットのルーマ成分をスプリットするステップは、ルーマ成分を水平方向にスプリットすることを含む。
いくつかの実施形態によれば、ビデオピクチャを符号化する方法のうちの1つまたは複数を実施するように設定されたエンコーダが提供される。
いくつかの実施形態によれば、ビデオ処理デバイスの処理回路要素によって実施されたとき、ビデオ処理デバイスに、上記の方法のうちの1つまたは複数を実施させる命令を記憶する非一時的コンピュータ可読媒体を備えるコンピュータプログラム製品が提供される。
いくつかの実施形態によれば、ビデオ処理デバイスが提供される。本デバイスは、メモリとプロセッサとを含み得、プロセッサは、上記の方法のうちの1つまたは複数を実施するように設定される。
本明細書で開示される実施形態は、暗黙的TU境界にわたる不連続性の著しい低減を提供し、暗黙的TUがカバーするブロック内のサブブロックからの不連続性をも低減することができる。これは、主観的品質を大幅に改善することができる。さらに、本明細書で開示される実施形態は、デブロッキングプロセスが並列に行われ、それにより、ビデオ処理の効率を改善することの、さらなる利益を有することができる。
本明細書に組み込まれ、明細書の一部をなす添付の図面は、様々な実施形態を示す。
一実施形態による、コーディングユニットを示す図である。 いくつかの実施形態による、スプリットされたCUまたはブロックを示す図である。 一実施形態による、コーディングユニットを示す図である。 一実施形態による、プロセスを示すフローチャートである。 一実施形態による、プロセスを示すフローチャートである。 一実施形態による、コーディングユニットを示す図である。 一実施形態による、プロセスを示すフローチャートである。 いくつかの実施形態による、擬似コードを示す図である。 いくつかの実施形態による、擬似コードを示す図である。 いくつかの実施形態による、プロセスを示すフローチャートである。 いくつかの実施形態による、プロセスを示すフローチャートである。 一実施形態による、エンコーダのブロック図である。 一実施形態による、デコーダのブロック図である。 いくつかの実施形態による、デコーダの機能ユニットを示す図である。 いくつかの実施形態による、エンコーダの機能ユニットを示す図である。 いくつかの実施形態による、ビデオ処理装置の機能ユニットを示す図である。
本開示の態様は、符号化、復号、およびフィルタ処理など、改善されたビデオ処理に関する。サブブロック境界においてだけでなく、変換ユニットの暗黙的境界においても、デブロッキングが適用され得る。これは、たとえば、変換に関してなど、ユニットが暗黙的分割を含んでいることがある多用途ビデオコーディング(VVC:Versatile Video Coding)に関して適用され得る。実施形態は、他のMPEG規格を含む他の圧縮規格にも適用可能であり得る。
H.266についての仕様の現在のドラフト(VVCドラフト1 JVET−J1001v1)(以下、「VVCドラフト1」と呼ばれる)では、コーディングツリーユニット(CTU)は、HEVCにおけるCTUと同様であるが、VVCにおけるCTUは、128×128ルーマサンプルのサイズを有するという違いがある。VVCでは、CTUは、よりフレキシブルにスプリットされ得、その結果、得られたCUは矩形ルーマブロックを含み得る。現在、VVCについて、HEVCの場合のような予測ツリーがないが、VVCにおけるCUは暗黙的に複数のTUに分割され得る。得られた暗黙的TUは、CUサイズが、最大変換サイズよりも大きい幅または高さを有するときに現れることがある。CUサイズが、最大変換サイズよりも大きい幅または高さを有しない場合、CUは、おそらく、予測ツリーまたは変換ツリーを有しない。したがって、依然として、CUサイズが最大変換サイズを超えるときにTUを考慮することができる改善された処理が必要である。
さらに、VVCでは、デブロッキングは、最初に、垂直CU境界に対して適用され、次いで、水平CU境界に対して適用され、デブロッキングは、HEVCデブロッキングに基づく。たとえば、FRUC、AFFINE、およびMV予測など、いくつかのサブブロック予測ツールが、ジョイントビデオエキスパートチーム(JVET)の研究著作(exploration work)に記載されている。サブブロック予測ツールは、たとえば、ブロックの異なる部分、たとえばサブブロックについての動きパラメータの2つ以上のセットを有する予測ツールであり得るが、それらの動きパラメータは、デコーダに送信されるのではなく、近隣コーディングブロックからの前のフレームからまたは近隣コーディングブロックからの動きベクトルから導出される。そのようなツールは、1つまたは複数の圧縮規格(たとえば、VVC)中に含まれ得、CU内にサブブロックを作り出すことができる。図1は、CU100中の暗黙的TU境界102に近いサブブロック境界104の一例を示す。したがって、依然として、サブブロック境界の効果的なデブロッキングが必要である。
本明細書で開示されるいくつかの実施形態は、大きい暗黙的スプリットによるCUまたはブロック境界がデブロッキングフィルタによってフィルタ処理される、ビデオ符号化または復号のための方法を提供する。本開示のコンテキストでは、大きい暗黙的スプリットは、セットされた最大サイズよりも空間的に大きい少なくとも1つの側を有するCUまたはブロックのスプリットを指示し得る。最大サイズは、たとえば、最大変換サイズにセットされ得る。たとえば、セットされた最大変換サイズが64に等しい場合、64よりも大きい少なくとも1つの側を有するCUまたはブロックは、64に等しいかまたはそれよりも小さい両側をもつCUまたはブロックに暗黙的にスプリットされ得る。
図2は、いくつかの実施形態による、スプリットの前のCUまたはブロックが、128に等しい少なくとも1つの側を有し、セットされた最大サイズが64に等しい例の非網羅的セット200を示す。実施形態によれば、Nに等しいセットされた最大サイズがある。この例では、Nよりも大きい1つの側をもつCUまたはブロックについて、CUまたはブロックは、出力されたCUまたはブロックがNよりも大きい側を有しないように、1つの次元においてスプリットされる。Nよりも大きい両側をもつCUまたはブロックについて、CUまたはブロックは、出力されたCUまたはブロックがNよりも大きい側を有しないように、2つの次元に沿ってスプリットされる。最大許容変換サイズがより小さい、たとえば、32である場合には、128×64のブロックが、最初に、両方の次元に沿ってスプリットされ、それにより、サイズ64×32の4つのブロックを作り出し得る。4つのブロックの各々は1つの次元に沿ってさらにスプリットされ得、ここで、各スプリットは、サイズ32×32の2つのブロックを作り出す。図2を参照すると、暗黙的スプリット202は、128×128ブロックを4つの64×64ブロックにスプリットし、暗黙的スプリット204は、64×128ブロックを2つの64×64ブロックにスプリットし、暗黙的スプリット206は、128×64ブロックを2つの64×64ブロックにスプリットし、暗黙的スプリット208は、32×128ブロックを2つの32×64ブロックにスプリットし、暗黙的スプリット210は、128×32ブロックを2つの64×32ブロックにスプリットする。図2では、スプリットによって形成される暗黙的境界は破線で示されており、CUの境界は実線で示されている。いくつかの実施形態では、暗黙的スプリットは、ビデオについてのスプリット情報を伝達するシンタックスエレメントまたは他のコーディングエレメントがないが、CU境界が、シンタックスレベルにおいて規定されるか、あるいはさもなければシグナリングまたはコーディングされる、スプリットである。
いくつかの実施形態では、特定のブロックについての暗黙的スプリットに関するスプリット情報を伝達するシンタックスエレメントの必要なしに、CUまたはブロックのサイズと最大サイズとの間の比較の結果として、暗黙的スプリットが適用される。代わりに、最大サイズは、いくつかの実施形態によれば、たとえば、ビデオコーディング仕様において固定値にセットされるか、または代替的にビットストリーム中でシグナリングされるかのいずれかであり得る。最大サイズがビットストリーム中でシグナリングされる場合、最大サイズは、ビデオクリップごとに1回、ピクチャのセットごとに1回、ピクチャごとに1回またはスライスごとに1回など、複数のCUまたはブロックについて1回シグナリングされる。
いくつかの態様によれば、デコーダは、特定のCUまたはブロックについての暗黙的スプリットを指示するシンタックスエレメントを復号またはパースしない。代わりに、デコーダは、特定のCUまたはブロックのサイズを、ビットストリーム中で指示されたまたはビデオコーディング仕様において固定値としてセットされた最大サイズと比較することによって、スプリットを導出する。同様に、エンコーダは、ブロックレベルで特定のCUまたはブロックについての暗黙的スプリットを指示するシンタックスエレメントを符号化またはシグナリングする必要がない。すなわち、実施形態によれば、エンコーダは、ブロックレベル情報中で暗黙的スプリットを指示しない。代わりに、エンコーダは、特定のCUまたはブロックのサイズを、ビットストリーム中で指示されたまたはビデオコーディング仕様において固定値としてセットされた最大サイズと比較することによって、スプリットを導出する。ブロックレベル情報は、ブロックごとに送られ/符号化され、受信/復号される、シンタックスエレメントを含み得る。ブロックレベル情報中に含まれているブロックレベルシンタックスエレメントの一例は、変換係数である。ブロックレベルシンタックスエレメントの別の例はデルタ量子化器値である。
いくつかの実施形態では、暗黙的スプリットは、通常のCUスプリットプロセスの後に行われ得る。通常のCUスプリットは、スプリットが、ブロックごとに、コード化ビデオピクチャ中の1つまたは複数のシンタックスエレメントによってシグナリングされる、CUにCTUをスプリットすることの一部であるスプリットであり得る。
一例として、ビデオピクチャは、サイズ128×128のCTUに区分され得る。この事例では、最大サイズは、CTUサイズよりも小さい値、たとえば64に等しいと仮定される。一例として、1つのCTUが復号されるとき、コード化ビデオシーケンス中に、CTUがサイズ128×64の2つのCUにスプリットされるべきであることを指定する1つまたは複数のシンタックスエレメントがあり得る。実施形態によれば、およびこの例では、コード化ビデオシーケンス中に、これ以上CUがスプリットされる必要があることを指示するシンタックスエレメントがない。しかしながら、128は、最大サイズ64よりも大きいので、128×64CUは、たとえば、暗黙的スプリット206に関して示されているように、サイズ64×64の2つのユニットに暗黙的にスプリットされる。いくつかの実施形態では、CUの各成分についてのブロックは1つずつ暗黙的にスプリットされ得る。たとえば、CUのルーマ部分が、サイズ128×64のブロックであり、サイズ64×64の2つのブロックにスプリットされ得る。CUの1つのクロマ部分が、サイズ64×32のブロックであり、1つの最大サイズがすべての成分について使用される場合に暗黙的にスプリットされないことがある。いくつかの実施形態では、(すべてのクロマ成分についての1つの最大サイズ、または各成分についての別個の最大サイズ値のいずれかとして)クロマについて別個の最大サイズが指定され得る。たとえば、クロマについての最大サイズは32にセットされ得る。そのような実施形態では、クロマブロックは、32×32ブロックにさらにスプリットされ得る。
別の例として、別のCTUが復号されるとき、コード化ビデオシーケンス中に、CTUがサイズ128×N、128×M、および128×Nの3つのCUにスプリットされるべきであることを指定する1つまたは複数のシンタックスエレメントがあり、ここで、2*N+Mは128に等しい。NおよびMの例示的な値は、それぞれ、32および64であり、その結果、CUサイズは、128×32、128×64および128×32になる。この例では、および実施形態によれば、コード化ビデオシーケンス中に、CUのうちのいずれかをさらにスプリットするためのシンタックスエレメントがない。各128×32CUは、次いで、64×32の2つのユニットに暗黙的にスプリットされ、128×64CUは、64×64の2つのユニットに暗黙的にスプリットされる。代替的に、暗黙的スプリットはブロックに対して行われ、その結果、サイズ128×32および128×64のルーマブロックは、それぞれ、サイズ64×32および64×64のブロックに暗黙的にスプリットされる。クロマブロックは、64×16および64×32のサイズを有し得る。特定のクロマ成分についての最大サイズが64に等しい場合、クロマブロックの暗黙的スプリットが行われない。特定のクロマ成分についての最大サイズが32に等しい場合、クロマブロックは、それぞれ、64×16および64×32からサイズ32×16および32×32のブロックにスプリットされる。
CTUサイズ128×128は一例にすぎず、CTUサイズは、128×128よりも大きいかまたは小さいかのいずれかになり得ることに留意されたい。同様に、最大サイズは、64よりも大きいかまたは小さいかのいずれかであり得る。上記の例は、水平スプリットまたは垂直スプリットのいずれかを使用することができる。さらに、通常のCUスプリットプロセスはまた、一連の垂直および水平スプリット、ならびに、サイズ2N×2NのブロックまたはユニットからサイズN×Nの4つのブロックまたはユニットへのクワッドスプリット(quad split)からなり得る。垂直または水平スプリットは、1つのブロックまたはユニットを2つまたは3つまたはそれ以上のブロックまたはユニットにスプリットし得る。
サブブロックスプリッティングがCU内でサブブロックを作り出すことができる。実施形態によれば、コーディングユニットがサブブロック予測ツールを使用するとき、コーディングブロックはより小さいブロックに分割される。より小さいブロックの各々について、動きパラメータのセットが、1つまたは複数の空間的にまたは時間的に近隣するコーディングブロックからの動きパラメータから導出され、次いで、予測サブブロックのサンプルを生成するために使用される。これは、近隣サブブロックにおける動きパラメータが異なるとき、サブブロック間の境界でブロッキングアーチファクトをもたらすことがある。そのようなサブブロックは、たとえば、4×4サンプルのサイズにまで下がり得る。得られたサブブロック境界は、暗黙的TU境界の近くに現れることがある。サブブロック予測は、CU内の予測境界がどのように現れ得るかの一例であり、フラグによって指示され得る。予測境界の他の原因は予測ユニット(PU)を含む。実施形態によれば、たとえば、変換ユニット境界の近くのサブブロック境界にフィルタ処理が適用され得る。いくつかの実施形態では、暗黙的変換境界のデブロッキングは、サブブロック境界のフィルタ処理の後に実施され得る。いくつかの実施形態では、そのようなフィルタ処理は、並列処理の効率利益を達成するために同時に実施され得る。たとえば、すべての垂直境界(たとえば、変換境界と予測境界の両方)が一度にフィルタ処理され得、次いで、すべての水平境界が後にフィルタ処理される。そのプロセスは同様に逆順で進み得る。
図3は、いくつかの実施形態による、コーディングユニット300を示す。いくつかの実施形態では、ビデオピクチャは、コーディングユニット300を含む複数のコーディングユニット(CU)に区分される。
図4は、いくつかの実施形態による、垂直の暗黙的スプリットを伴う復号プロセス400を示すフローチャートである。そのプロセスは、たとえば、ルーマ成分についてのものであり得る。ルーマ成分に関して示されているが、プロセス400は、1つまたは複数のクロマ成分に適用され得る。復号プロセス400は、デコーダによって実施され得、図3に示されているコーディングユニット300に関して説明される。いくつかの実施形態では、ビデオピクチャ中のコーディングユニットについての最大サイズが整数値Nに等しくセットされる。この例では、コーディングユニット300は、垂直方向に高さYのルーマサンプルと、水平方向に幅Yのルーマサンプルとのサイズを有する。いくつかの実施形態では、高さYはNよりも大きく、幅Yは、Nに等しいかまたはそれよりも小さい。図2に示されているように、他の構成も適用され得る。
複数のCUに区分されたビデオピクチャを復号するための復号プロセス400は、ステップ402から始まり得、コーディングユニット300のルーマ成分が、第1のブロック302Aと第2のブロック302Bとに垂直方向にスプリットされる。これは、たとえば、ブロックレベルでスプリットを指示するシンタックスエレメントを復号することなしに実施され得る。いくつかの実施形態では、第1のブロック302Aおよび第2のブロック304Bの各々は、垂直方向にZ個のルーマサンプルを含み、水平方向に幅Yのルーマサンプルを含み、ここで、Zは、2で除算された高さYに等しい。
ステップ404および406において、変換プロセスが適用される。ステップ404において、第1のブロック302Aのための少なくとも1つの係数が復号され、その後、第1のブロック302Aに逆変換が適用される。代替または追加のステップであり得るステップ406において、第2のブロック302Bのための少なくとも1つの変換係数が復号され、その後、第2のブロック302Bに逆変換が適用される。
ステップ408において、CU300のルーマ成分が垂直方向に予測サブブロックにスプリットされ、ここで、予測サブブロックは、第1のブロック302Aと第2のブロック302Bとのうちの少なくとも1つ中でサンプルの境界304A、304Bを作成する。いくつかの実施形態では、第1のブロック302および/または第2のブロック302B内のサンプルの境界304A、304Bは、第1のブロック302Aと第2のブロック302Bとの間の境界306からM個のサンプル離れて位置する。これは、たとえば、サンプルの境界304A、304Bの一方の側のサブブロックが、サンプルの境界304A、304Bの反対側のサブブロックと比較して、異なる参照フレームを使用するかまたは著しい動き差分を有するときであり得る。
ステップ410および412において、フィルタ処理が適用される。ステップ410において、最初に、第1のブロック302Aおよび/または第2のブロック302B中のサンプルの境界304A、304Bにデブロッキングフィルタが適用される。いくつかの実施形態では、デブロッキングフィルタは、第1のブロック302Aと第2のブロック302Bとの間の境界306のそれぞれの側で少なくともG個のルーマサンプルを修正する。ステップ412において、デブロッキングフィルタは、第1のブロック302Aと第2のブロック302Bとの間の境界306に適用される。いくつかの実施形態では、デブロッキングフィルタは、境界306の第1のブロック302A側で少なくともF個のルーマサンプルを修正し、境界306の第2のブロック302B側で少なくともF個のルーマサンプルを修正する。
いくつかの実施形態では、Nは64に等しく、高さYは128に等しく、幅Yは64に等しく、Fは7に等しく、Gは1に等しく、Mは4に等しい。いくつかの実施形態では、Nは64に等しく、高さYは128に等しく、幅Yは32に等しい。いくつかの実施形態では、Fは、デブロッキングフィルタが長いデブロッキングフィルタであるとき、3または5に等しい。いくつかの実施形態では、Fは、デブロッキングフィルタが弱いフィルタであるとき、2に等しい。いくつかの実施形態では、Gは2または3に等しく、Mは8に等しい。
いくつかの実施形態では、大きい変換ブロックからのブロッキングアーチファクトをなくすために、より長いデブロッキングフィルタが必要とされ、HEVCにおける強いフィルタおよび弱いフィルタなど、より短いデブロッキングフィルタは、より小さいブロックからのブロッキングアーチファクトをハンドリングすることができる。一例として、Mが8に等しく、Gが2に等しく、Fが5に等しいとき、変換境界から8つのサンプル(Mが8に等しい)離れた予測境界のデブロッキングのためにVVCの弱いフィルタ(またはHEVCにおける弱いフィルタ、Gが2に等しい)を使用して、および(Fが5に等しい場合)変換境界のブロッキングのためにVVCにおける長いフィルタを使用して、並列フレンドリデブロッキングが行われ得る。
実施形態によれば、q0が、ブロックQ中の境界に最も近いサンプルを表し、p0が、ブロックP中の境界に最も近いサンプルを表し、p0’およびq0’が、デブロッキングによってフィルタ処理されたサンプルを表す場合、フィルタ処理は以下のように提供され得る。
弱いフィルタ処理(多くとも2+2サンプルを修正する、Gが2に等しい):
Δ=(9*(q−p)−3*(q−p)+8)>>4
Abs(Δ)がt*10よりも小さいとき、以下の順序のステップが適用され得る。
・ フィルタ処理されたサンプル値p’およびq’は、以下の通りである。
Δ=Clip3(−t,t,Δ)
’=Clip1(p+Δ)
’=Clip1(q−Δ)
・ dEpが1に等しいとき、フィルタ処理されたサンプル値p’は、以下の通りである。
Δp=Clip3(−(t>>1),t>>1,(((p+p+1)>>1)−p+Δ)>>1)
’=Clip1(p+Δp)
・ dEqが1に等しいとき、フィルタ処理されたサンプル値q’は、以下の通りである。
Δq=Clip3(−(t>>1),t>>1,(((q+q+1)>>1)−q−Δ)>>1)
’=Clip1(q+Δq)
VVCにおける長いフィルタ(修正されるサンプルの数、すなわち、maxFilterLengthPおよびmaxFilterLengthQが5であり得る場合。Fが5に等しい)
・ i=0..maxFilterLengthP−1およびj=0..maxFilterLengthQ−1である場合のフィルタ処理されたサンプル値p’およびq’は、以下のように導出される。
’=Clip3(p−(t*tPD)>>1,p+(t*tPD)>>1,(refMiddle*f+refP*(64−f)+32)>>6)
’=Clip3(q−(t*tQD)>>1,q+(t*tQD)>>1,(refMiddle*g+refQ*(64−g)+32)>>6)
ここで、
・ maxFilterLengthPがmaxFilterLengthQに等しく、maxFilterLengthPが5に等しい場合、以下が適用される。
refMiddle=(p+p+2*(p+p+p+q+q+q)+q+q+8)>>4
変数refPおよびrefQは以下のように導出され得る。
refP=(pmaxFilterLengtP+pmaxFilterLengthP−1+1)>>1
refQ=(qmaxFilterLengtQ+qmaxFilterLengthQ−1+1)>>1
いくつかの実施形態では、並列フィルタ処理が使用され、その結果、弱いフィルタは、Gが2に等しいとき、予測境界の各側で多くとも3つの連続するサンプルを読み取り(p0〜p2およびq0〜q2)、各側で多くとも2つの連続するサンプルを修正し、長いフィルタは、Fが5に等しいとき、変換ブロック境界の各側で多くとも6つの連続するサンプルを読み取り(p0〜p5およびq0〜q5)、各側で多くとも5つの連続するサンプルを修正する。したがって、Gが2に等しい場合の弱いフィルタおよびFが5に等しい場合の長いフィルタは、変換ブロック境界と予測ブロック境界との間の距離が8に等しい(Mが8に等しい)ので、他のフィルタによって修正されたサンプルを使用しない。
いくつかの実施形態によれば、プロセス400はさらなるステップを含み、デコーダが、第1のブロック302Aまたは第2のブロック302Bがイントラ予測を使用するかどうかを決定する。いくつかの実施形態では、高さYは、2*Nよりも小さいかまたはそれに等しい。
図5は、いくつかの実施形態による、ルーマ成分について1つまたは複数の暗黙的スプリットを伴う符号化プロセス500を示すフローチャートである。符号化プロセス500は、エンコーダによって実施され得、図3に示されているコーディングユニットに関して説明される。プロセス400の場合と同様に、プロセス500は、1つまたは複数のクロマ成分にも適用され得る。さらに、1つまたは複数のスプリットは、図3および図6に関して示されているように、垂直または水平のいずれかであり得る。図6は、いくつかの実施形態による、コーディングユニット600を示す。いくつかの実施形態では、ビデオピクチャは、コーディングユニット600を含む複数のコーディングユニット(CU)に区分される。
次に図5を参照すると、最大サイズが値Nに等しくセットされた場合の、ビデオピクチャを符号化するための符号化プロセス500は、ステップ502から始まり得、エンコーダが、コーディングユニット300を含む複数のコーディングユニット(CU)にビデオピクチャを区分する。いくつかの実施形態では、コーディングユニット300は、垂直方向に高さYのルーマサンプルと、水平方向に幅Yのルーマサンプルとのサイズを有する。いくつかの実施形態では、高さYはNよりも大きく、幅Yは、Nに等しいかまたはそれよりも小さい。コーディングユニットはまた、図6に示されているユニット600であり得る。すなわち、高さYが、Nに等しいかまたはそれよりも小さいが、幅YがNよりも大きい場合、プロセス500のステップが適用され得る。プロセス500は、垂直スプリットに関して説明されるが、プロセス500は、相対高さ、相対幅、および相対最大値によって要求される場合、水平スプリットの使用にも適用可能である。
ステップ504において、符号化ビデオピクチャ中にブロックレベルでスプリットを指示するシンタックスエレメントを含めることなしに、第1のブロック302Aと第2のブロック302Bとにコーディングユニット300のルーマ成分がスプリットされる。いくつかの実施形態では、第1のブロック302Aおよび第2のブロック304Bの各々は、垂直方向にZ個のルーマサンプルを含み、水平方向に幅Yのルーマサンプルを含み、ここで、Zは、2で除算された高さYに等しい。
ステップ506において、コード化ビデオピクチャ中に、第1のブロック302Aのための少なくとも1つの変換係数が含められる。追加または代替のステップ508において、コード化ビデオピクチャ中に、第2のブロック302Bのための少なくとも1つの変換係数が含められる。
ステップ510において、CU300のルーマ成分が予測サブブロックにスプリットされ、ここで、予測サブブロックは、第1のブロック302Aと第2のブロック302Bとのうちの少なくとも1つ中でサンプルの境界304A、304Bを作成する。いくつかの実施形態では、第1のブロック302Aおよび/または第2のブロック302B内のサンプルの境界304A、304Bは、サンプルの境界304A、304Bの一方の側のサブブロックが、サンプルの境界304A、304Bの反対側のサブブロックと比較して、異なる参照フレームを使用するかまたは著しい動き差分を有するとき、第1のブロック302Aと第2のブロック302Bとの間の境界306からM個のサンプル離れて位置する。サブブロックはまた、図6の対応するエレメントに関して示されているようなものであり得る。
ステップ512において、第1のブロック302Aおよび/または第2のブロック302B中のサンプルの境界304A、304Bにデブロッキングフィルタが適用される。いくつかの実施形態では、デブロッキングフィルタは、第1のブロック302Aと第2のブロック302Bとの間の境界306のそれぞれの側で少なくともG個のルーマサンプルを修正する。
ステップ514において、デブロッキングフィルタは、第1のブロック302Aと第2のブロック302Bとの間の境界306に適用される。いくつかの実施形態では、デブロッキングフィルタは、境界306の第1のブロック302A側で少なくともF個のルーマサンプルを修正し、境界306の第2のブロック302B側で少なくともF個のルーマサンプルを修正する。
いくつかの実施形態では、Nは64に等しく、高さYは128に等しく、幅Yは64に等しく、Fは7に等しく、Gは1に等しく、Mは4に等しい。いくつかの実施形態では、Nは64に等しく、高さYは128に等しく、幅Yは32に等しい。いくつかの実施形態では、Fは、デブロッキングフィルタが長いデブロッキングフィルタであるとき、3または5に等しい。いくつかの実施形態では、Fは、デブロッキングフィルタが弱いフィルタであるとき、2に等しい。いくつかの実施形態では、Gは2または3に等しく、Mは8に等しい。
いくつかの実施形態では、プロセス500はさらなるステップを含み、デコーダが、第1のブロック302Aまたは第2のブロック302Bがイントラ予測を使用するかどうかを決定する。いくつかの実施形態では、高さYは、2*Nよりも小さいかまたはそれに等しい。
図7は、いくつかの実施形態による、水平の暗黙的スプリットを伴う復号プロセス700を示すフローチャートである。そのプロセスは、たとえば、ルーマ成分についてのものであり得る。ルーマ成分に関して示されているが、プロセス700は、1つまたは複数のクロマ成分に適用され得る。復号プロセス700は、デコーダによって実施され得、図6に示されているコーディングユニット600に関して説明される。いくつかの実施形態では、ビデオピクチャ中のコーディングユニットについての最大サイズが整数値Nに等しくセットされる。コーディングユニット600は、垂直方向に高さYのルーマサンプルと、水平方向に幅Yのルーマサンプルとのサイズを有する。いくつかの実施形態では、高さYは、Nに等しいかまたはそれよりも小さく、幅YはNよりも大きくなり得る。
複数のCUに区分されたビデオピクチャを復号するための復号プロセス700は、ステップ702から始まり得、CU600のルーマ成分が、第1のブロック602Aと第2のブロック604Bとに水平方向にスプリットされる。これは、たとえば、ブロックレベルでスプリットを指示するシンタックスエレメントを復号することなしのものであり得る。いくつかの実施形態では、第1のブロック602Aおよび第2のブロック602Bの各々は、水平方向にZ個のルーマサンプルを含み、垂直方向に高さYのルーマサンプルを含み、ここで、Zは、2で除算された幅Yに等しい。
ステップ704において、第1のブロック602Aのための少なくとも1つの係数が復号され、その後、第1のブロック602Aに逆変換が適用される。追加または代替のステップ706において、第2のブロック602Bのための少なくとも1つの変換係数が復号され、その後、第2のブロック602Bに逆変換が適用される。
ステップ708において、CU600のルーマ成分が水平方向に予測サブブロックにスプリットされ、ここで、予測サブブロックは、第1のブロック602Aと第2のブロック602Bとのうちの少なくとも1つ中でサンプルの境界604A、604Bを作成する。いくつかの実施形態では、第1のブロック602および/または第2のブロック602B内のサンプルの境界604A、604Bは、第1のブロック602Aと第2のブロック602Bとの間の境界606からM個のサンプル離れて位置する。これは、たとえば、サンプルの境界604A、604Bの一方の側のサブブロックが、サンプルの境界604A、604Bの反対側のサブブロックと比較して、異なる参照フレームを使用するかまたは著しい動き差分を有するときであり得る。
ステップ710において、最初に、第1のブロック602Aおよび/または第2のブロック602B中のサンプルの境界604A、604Bにデブロッキングフィルタが適用される。いくつかの実施形態では、デブロッキングフィルタは、第1のブロック602Aと第2のブロック602Bとの間の境界606のそれぞれの側で少なくともG個のルーマサンプルを修正する。
ステップ712において、デブロッキングフィルタは、第1のブロック602Aと第2のブロック602Bとの間の境界606に適用される。いくつかの実施形態では、デブロッキングフィルタは、境界606の第1のブロック602A側で少なくともF個のルーマサンプルを修正し、境界606の第2のブロック602B側で少なくともF個のルーマサンプルを修正する。
いくつかの実施形態では、Nは64に等しく、幅Yは128に等しく、高さYは64に等しく、Fは7に等しく、Gは1に等しく、Mは4に等しい。いくつかの実施形態では、Nは64に等しく、幅Yは128に等しく、高さYは32に等しい。いくつかの実施形態では、Fは、デブロッキングフィルタが長いデブロッキングフィルタであるとき、3または5に等しい。いくつかの実施形態では、Fは、デブロッキングフィルタが弱いフィルタであるとき、2に等しい。いくつかの実施形態では、Gは2または3に等しく、Mは8に等しい。
いくつかの実施形態では、プロセス700はさらなるステップを含み、デコーダが、第1のブロック602Aまたは第2のブロック602Bがイントラ予測を使用するかどうかを決定する。いくつかの実施形態では、幅Yは、2*Nよりも小さいかまたはそれに等しい。
図8Aおよび図8Bは、本明細書で開示される実施形態を実装することを対象とする擬似コードを示す。図8Aのコードは図8Bのコードに進み得る。VVCでは、最大CUサイズは128×128であり、最大TUサイズは64×64である。したがって、最大サイズNは、いくつかの実施形態および例示的なコードによれば、64に等しい。CUサイズが128×128であり、復号すべきいくつかの変換係数があるとき、CUは、暗黙的スプリットによって4つの重複しない64×64の暗黙的TUに分割される。CUは、矩形ブロックにスプリットされ得、その結果、暗黙的スプリットの前のCUサイズは、128×NまたはN×128に等しく、ここで、Nは、たとえば、4、8、16、32、64である。CUは、次いで、CU中に変換係数があるとき、2つの64×NのTUまたは2つのN×64のTUに暗黙的にスプリットされる。CUは、境界(たとえば、図3に示されている境界304A、304Bおよび図6に示されている境界604A、604B)を作成する、サイズ4×4の予測サブブロックにもスプリットされ得、ここで、境界の一方の側のサブブロックが、境界の反対側のサブブロックと比較して、異なる参照フレームを使用するかまたは著しい動き差分を有する。
図8Aおよび図8Bに示されている擬似コードは、第1のブロック(たとえば、図3の302Aおよび図6の602A)および第2のブロック(たとえば、図3の302Bおよび図6の602B)中の境界のそれぞれの側で参照フレームの差異または著しい動き差分をもつ予測サブブロックからの境界(たとえば、図3に示されている境界304A、304Bおよび図6に示されている境界604A、604B)が、最初に、デブロッキングフィルタによってデブロックされ、次いで、第1のブロックと第2のブロックとのうちの少なくとも1つが非0変換係数を有するときに、暗黙的スプリットから得られた第1のブロックと第2のブロックとの間の境界(たとえば、図3の306および図6の606)がデブロッキングフィルタによってデブロックされ得ることを保証するための、VVCに対する考えられる変更を示す。いくつかの実施形態では、サブブロックは、JVET−G1001に記載されているようなATMVPツールおよびSTMVPツールのうちの1つから生じる。
図8Aおよび図8Bに示されているように、4つのサンプルの単位でiEdgeOffsetが表される。いくつかの実施形態では、edgeDirは、水平境界(EDGE_HOR)または垂直境界(EDGE_VER)のいずれかであり、cuは現在CUである。
いくつかの実施形態では、VVCは、HEVCフィルタおよび判定のみを使用する。いくつかの実施形態では、より長いフィルタおよび判定が使用され、特に、テクスチャが滑らかであるとき、大きいブロックについて使用され得る。いくつかの実施形態によれば、変換境界と任意のサブブロック境界との間に十分な数のサンプルがある場合、長いフィルタが変換境界に適用され得る。いくつかの実施形態では、たとえば、2つまたは3つのサンプルのみ、より短いフィルタがサブブロック境界において適用され得る。これは、それぞれのフィルタ処理演算が干渉しないことを保証し得る。
いくつかの実施形態では、変換段階の後のサブブロック予測からのサブブロック境界のデブロッキングに対する代替手法は、たとえば、変換段階の前に予測段階におけるデブロッキングを適用することである。したがって、デコーダに量子化変換係数をシグナリングするためのオーバーヘッドを低減するために、改善された予測品質が使用され得る。そのような実施形態では、デブロッキングは、近隣サブブロックが、参照フレームの差異または著しく異なる動きを有する、サブブロック予測境界に対して適用される。デブロッキングは、両方向において不連続性を低減するために、最初に垂直境界について実施され、次いで水平境界について実施され得る。いくつかの態様では、CU外のサンプルのフィルタ処理がない。いくつかの実施形態では、デブロッキングのためのフィルタ強度がブロックQPによって制御される。いくつかの実施形態では、この手法の変形態は、サブブロック予測境界のデブロッキングのためにブロックQPの代わりに予測QPを使用することである。
次に図9Aおよび図9Bを参照すると、符号化および復号するための方法が提供される。実施形態によれば、それらの方法は、たとえば、それぞれ、図10および図11に示されているエンコーダ(1001)および/またはデコーダ(1101)によって実施され得る。同様に、単一のデバイスが、符号化機能性と復号機能性の両方を備え、図9Aおよび図9Bのプロセスのうちの1つまたは複数を実施し得る。
次に図9Aを参照すると、いくつかの実施形態による、1つまたは複数のコーディングブロックに区分されたビデオピクチャを復号するためのプロセス900が示されている。
随意のステップ901において、プロセス900は、コーディングブロックが最大変換サイズよりも大きいサイズを有すると決定することから始まり得る。
ステップ902において、暗黙的スプリットが実施される。たとえば、最大変換サイズNよりも大きいサイズを有する、ビデオピクチャのコーディングブロックについて、ステップ902は、少なくとも第1の変換ブロックと第2の変換ブロックとにコーディングブロックをスプリットすることであって、それにより、第1の変換ブロックと第2の変換ブロックとの間に第1の変換境界を形成する、コーディングブロックをスプリットすることを含み得る。
随意のステップ903において、デコーダが変換演算を実施する。たとえば、デコーダは、第1のブロックおよび第2のブロックのうちの少なくとも1つのための変換係数を復号し、第1のブロックまたは第2のブロックに逆変換演算を適用し得る。
ステップ904において、第2のスプリットが実施される。実施形態によれば、ステップ904は、第1の予測サブブロックと第2の予測サブブロックとにコーディングブロックの一部分をスプリットすることであって、それにより、第1の予測サブブロックと第2の予測サブブロックとの間に第1の予測境界を生成し、第1の予測境界が第1の変換ブロック内にある、コーディングブロックの一部分をスプリットすることを含む。
ステップ905および906において、フィルタ処理が適用される。たとえば、905において、第1の予測境界に第1のデブロッキングフィルタが適用され、ステップ906において、第1の変換境界に第2のデブロッキングフィルタが適用される。実施形態によれば、第1のデブロッキングフィルタによって第1の予測境界において修正されるサンプルの最大数が、第2のデブロッキングフィルタによって第1の変換境界において修正されるサンプルの最大数とは異なる。
次に図9Bを参照すると、いくつかの実施形態による、1つまたは複数のコーディングブロックに区分されたビデオピクチャを符号化するためのプロセス950が示されている。
随意のステップ951において、プロセス900は、コーディングブロックが最大変換サイズよりも大きいサイズを有すると決定することから始まり得る。
ステップ952において、暗黙的スプリットが実施される。たとえば、最大変換サイズNよりも大きいサイズを有する、ビデオピクチャのコーディングブロックについて、ステップ952は、少なくとも第1の変換ブロックと第2の変換ブロックとにコーディングブロックをスプリットすることであって、それにより、第1の変換ブロックと第2の変換ブロックとの間に第1の変換境界を形成する、コーディングブロックをスプリットすることを含み得る。
随意のステップ953において、エンコーダが変換演算を実施する。たとえば、それは、コード化ビデオピクチャ中に、第1のブロックまたは第2のブロックのための少なくとも1つの変換係数を含め得る。
ステップ954において、第2のスプリットが実施される。実施形態によれば、ステップ954は、第1の予測サブブロックと第2の予測サブブロックとにコーディングブロックの一部分をスプリットすることであって、それにより、第1の予測サブブロックと第2の予測サブブロックとの間に第1の予測境界を生成し、第1の予測境界が第1の変換ブロック内にある、コーディングブロックの一部分をスプリットすることを含む。
ステップ955および956において、フィルタ処理が適用される。たとえば、955において、第1の予測境界に第1のデブロッキングフィルタが適用され、ステップ956において、第1の変換境界に第2のデブロッキングフィルタが適用される。実施形態によれば、第1のデブロッキングフィルタによって第1の予測境界において修正されるサンプルの最大数が、第2のデブロッキングフィルタによって第1の変換境界において修正されるサンプルの最大数とは異なる。
プロセス900および950の実施形態によれば、決定するステップ(901、951)は、たとえば、ビデオピクチャのコーディングブロックを取得することであって、コーディングブロックが、サイズD1×D2またはD2×D1のものである、コーディングブロックを取得することと、D1がNよりも大きいと決定することとを含み得る。さらに、少なくとも第1の変換ブロックと第2の変換ブロックとにコーディングブロックをスプリットすることは、D1がNよりも大きいと決定することに少なくとも部分的に基づき得る。スプリットの後に、第1の変換ブロックは、サイズN×D2、D2×N、またはN×Nのものであり、第2の変換ブロックは、サイズN×D2、D2×N、またはN×Nのものである。いくつかの実施形態では、高さと幅の両方が最大サイズNを超え得る。これは、たとえば、暗黙的スプリット202に関して示されているような、4つの変換ブロックの生成を生じ得る。
いくつかの実施形態では、第1のデブロッキングフィルタによって修正されるサンプルの数が、第2のデブロッキングフィルタによって修正されるサンプルの数よりも少ない。たとえば、第1の予測境界と第1の変換境界との間の距離が8つのサンプルである場合、第1のデブロッキングフィルタは境界間の2つのサンプルを修正し、第2のデブロッキングフィルタは境界間の5つのサンプルを修正する。この例では、第1のデブロッキングフィルタは弱いフィルタであり、第2のデブロッキングフィルタは長いフィルタである。
実施形態によれば、プロセス900および950のスプリットするステップは垂直および/または水平境界を生成し得る。いくつかの実施形態では、水平境界は同時に処理(たとえば、フィルタ処理)され得、垂直境界は同時に処理(たとえば、フィルタ処理)され得る。たとえば、第1の予測境界と第1の変換境界の両方が垂直境界であるかまたは第1の予測境界と第1の変換境界の両方が水平境界である場合、第1のデブロッキングフィルタと第2のデブロッキングフィルタとが並列に適用され得る。いくつかの実施形態では、追加の予測サブブロック、したがって、追加の予測境界が生成され得る。同様に、コーディングブロックが大きい場合、図2に示されているように、追加のスプリットにより、追加の変換境界(たとえば、第2の境界、第3の境界、および第4の境界)が生成され得る。
いくつかの実施形態では、デブロッキングフィルタ処理は、最初に、(1つまたは複数の)予測境界に適用され、次いで、(1つまたは複数の)変換境界に適用される。
いくつかの実施形態では、第1の予測境界を生成することは、第1の予測境界のいずれかの側に第1の予測サブブロックと第2の予測サブブロックとに第1のブロックをスプリットすることを含む。これは、たとえば、第1の予測サブブロックが、第2の予測サブブロックとは異なる参照フレームを使用するか、または第2の予測サブブロックよりも著しい動き差分を有するときであり得る。
デブロッキングフィルタなど、1つまたは複数のフィルタの適用は、所与の境界のいずれの側でもサンプルを修正することができる。たとえば、およびいくつかの実施形態によれば、第1のデブロッキングフィルタを適用することは、第1の予測境界の各側で少なくとも1つのサンプルを修正し、第2のデブロッキングフィルタを適用することは、第1の変換境界の各側で少なくとも1つのサンプルを修正する。いくつかの実施形態によれば、第1の予測境界と第1の変換境界との間の距離がMであり、第1の予測境界のいずれかの側でデブロッキングによって修正されるサンプルの数がGであり、変換境界のいずれかの側でデブロッキングによって修正されるサンプルの数がFである。ある態様では、所与のフィルタ処理演算に好適であるいくつかのサイズおよびサンプルの数があり得る。いくつかの例は以下を含む。
(i) Nが64に等しく、コーディングブロックの幅D1が128であり、コーディングブロックの高さD2が128であり、Mが8に等しく、Gが2に等しく、Fが5に等しい、あるいは
(ii) Nが64に等しく、高さD2が128に等しく、幅D1が64に等しく、Fが7に等しく、Gが1に等しく、Mが4に等しい、あるいは
(iii) Nが64に等しく、高さD2 128、幅D1が32に等しい、あるいは
(iv) Fが3または5に等しく、長いデブロッキングフィルタが適用される、あるいは
(v) Fが2に等しく、弱いデブロッキングフィルタが適用される、あるいは
(vi) Gが2または3に等しい、あるいは
(vii) Mが8に等しい。
第1のオプションを参照すると、Mが8に等しい場合、Gが2にセットされ、Fが5にセットされることにより、干渉なしの並列処理が可能になる。すなわち、境界間のスペースが8つのサンプルのみである場合、変換境界のデブロッキングフィルタ処理が、変換境界から5つのサンプルの距離を修正し、予測境界のデブロッキングフィルタ処理が、予測境界から2つのサンプルの距離を修正し、これは、適切な演算を保証するために、両方のフィルタ処理のみによって読み取られるサンプルを修正されていないままにする。
図10は、いくつかの実施形態による、エンコーダ1001のブロック図である。図10に示されているように、エンコーダ1001は、1つまたは複数のプロセッサ(P)1055(たとえば、汎用マイクロプロセッサ、および/または、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)など、1つまたは複数の他のプロセッサ)を含み得る処理回路(PC)1002と、ネットワークインターフェース1048であって、エンコーダ1001が、ネットワークインターフェース1048が接続されるネットワーク110(たとえば、インターネットプロトコル(IP)ネットワーク)に接続された他のノードにデータを送信し、他のノードからデータを受信することを可能にするための送信機(Tx)1045および受信機(Rx)1047を備える、ネットワークインターフェース1048と、UEとの無線通信のためのアンテナシステム1004に結合された)回路要素1003(たとえば、Rx1005とTx1006とを備える無線トランシーバ回路要素)と、1つまたは複数の不揮発性記憶デバイスおよび/または1つまたは複数の揮発性記憶デバイス(たとえば、ランダムアクセスメモリ(RAM))を含み得るローカル記憶ユニット(別名「データ記憶システム」)1008とを備え得る。PC1002がプログラマブルプロセッサを含む実施形態では、コンピュータプログラム製品(CPP)1041が提供され得る。CPP1041はコンピュータ可読媒体(CRM)1042を含み、CRM1042は、コンピュータ可読命令(CRI)1044を備えるコンピュータプログラム(CP)1043を記憶する。CRM1042は、限定はしないが、磁気媒体(たとえば、ハードディスク)、光媒体、メモリデバイス(たとえば、ランダムアクセスメモリ、フラッシュメモリ)など、非一時的コンピュータ可読媒体であり得る。いくつかの実施形態では、コンピュータプログラム1043のCRI1044は、データ処理装置1002によって実行されたとき、CRIが、エンコーダ1001に、本明細書で説明されるステップ(たとえば、フローチャートを参照しながら本明細書で説明されるステップ)を実施させるように設定される。他の実施形態では、エンコーダ1001は、コードの必要なしに本明細書で説明されるステップを実施するように設定され得る。すなわち、たとえば、PC1002は、単に1つまたは複数のASICからなり得る。したがって、本明細書で説明される実施形態の特徴は、ハードウェアおよび/またはソフトウェアで実装され得る。
図11は、いくつかの実施形態による、デコーダ1101のブロック図である。図11に示されているように、デコーダ1101は、1つまたは複数のプロセッサ(P)1155(たとえば、汎用マイクロプロセッサ、および/または、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)など、1つまたは複数の他のプロセッサ)を含み得る処理回路(PC)1102と、ネットワークインターフェース1148であって、デコーダ1101が、ネットワークインターフェース1148が接続されるネットワーク110(たとえば、インターネットプロトコル(IP)ネットワーク)に接続された他のノードにデータを送信し、他のノードからデータを受信することを可能にするための送信機(Tx)1145および受信機(Rx)1147を備える、ネットワークインターフェース1148と、UEとの無線通信のためのアンテナシステム1104に結合された)回路要素1103(たとえば、Rx1105とTx1106とを備える無線トランシーバ回路要素)と、1つまたは複数の不揮発性記憶デバイスおよび/または1つまたは複数の揮発性記憶デバイス(たとえば、ランダムアクセスメモリ(RAM))を含み得るローカル記憶ユニット(別名「データ記憶システム」)1108とを備え得る。PC1102がプログラマブルプロセッサを含む実施形態では、コンピュータプログラム製品(CPP)1141が提供され得る。CPP1141はコンピュータ可読媒体(CRM)1142を含み、CRM1142は、コンピュータ可読命令(CRI)1144を備えるコンピュータプログラム(CP)1143を記憶する。CRM1142は、限定はしないが、磁気媒体(たとえば、ハードディスク)、光媒体、メモリデバイス(たとえば、ランダムアクセスメモリ、フラッシュメモリ)など、非一時的コンピュータ可読媒体であり得る。いくつかの実施形態では、コンピュータプログラム1143のCRI1144は、データ処理装置1102によって実行されたとき、CRIが、デコーダ1101に、本明細書で説明されるステップ(たとえば、フローチャートを参照しながら本明細書で説明されるステップ)を実施させるように設定される。他の実施形態では、デコーダ1101は、コードの必要なしに本明細書で説明されるステップを実施するように設定され得る。すなわち、たとえば、PC1102は、単に1つまたは複数のASICからなり得る。したがって、本明細書で説明される実施形態の特徴は、ハードウェアおよび/またはソフトウェアで実装され得る。
図12は、いくつかの実施形態による、デコーダ1101の機能ユニットを示す図である。図12に示されているように、デコーダ1101は、ブロックレベルでスプリットを指示するシンタックスエレメントを復号することなしに第1のブロックと第2のブロックとにコーディングユニットの成分(たとえば、ルーマ成分)をスプリットするための第1のスプリッティングユニット1202と、第1のブロックおよび第2のブロックのうちの少なくとも1つのための少なくとも1つの変換係数を復号するための復号ユニット1204と、第1のブロックおよび第2のブロックのうちの少なくとも1つに逆変換を適用するための第1の適用ユニット1206と、複数の予測サブブロックにコーディングユニットのルーマ成分をスプリットするための第2のスプリッティングユニット1208であって、複数の予測サブブロックが、第1のブロックと第2のブロックとのうちの少なくとも1つ中で境界を作成する、第2のスプリッティングユニット1208と、第1のブロックと第2のブロックとのうちの少なくとも1つ中の境界にデブロッキングフィルタを適用するための第2の適用ユニット1210と、第1のブロックと第2のブロックとの間の境界にデブロッキングフィルタを適用するための第3の適用ユニット1212とを含む。
いくつかの実施形態では、コーディングユニットのルーマ成分をスプリットするステップは、ルーマ成分を垂直方向にスプリットすることを含む。いくつかの実施形態では、コーディングユニットのルーマ成分をスプリットするステップは、ルーマ成分を水平方向にスプリットすることを含む。
図13は、いくつかの実施形態による、エンコーダ1001の機能ユニットを示す図である。図13に示されているように、エンコーダ1001は、符号化ビデオピクチャ中にブロックレベルでスプリットを指示するシンタックスエレメントを含めることなしに第1のブロックと第2のブロックとにコーディングユニットの成分(たとえば、ルーマ成分)をスプリットするための第1のスプリッティングユニット1302と、符号化ビデオピクチャ中に、第1のブロックと第2のブロックとのうちの少なくとも1つのための少なくとも1つの変換係数を含めるための包含ユニット(including unit)1304と、複数の予測サブブロックにコーディングユニットのルーマ成分をスプリットするための第2のスプリッティングユニット1306であって、複数の予測サブブロックが、第1のブロックと第2のブロックとのうちの少なくとも1つ中で境界を作成する、第2のスプリッティングユニット1306と、第1のブロックと第2のブロックとのうちの少なくとも1つ中の境界にデブロッキングフィルタを適用するための第1の適用ユニット1308と、第1のブロックと第2のブロックとの間の境界にデブロッキングフィルタを適用するための第2の適用ユニット1310とを含む。
図14は、1つまたは複数の実施形態による、ビデオ処理装置1400の図である。図14に示されているように、ビデオプロセッサは、スプリッティングユニット1402と、変換ユニット1404と、フィルタ処理ユニット1406とを含む。スプリッティングユニットは、最大変換サイズNよりも大きいサイズを有する、ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとにコーディングブロックをスプリットすることであって、それにより、第1の変換ブロックと第2の変換ブロックとの間に第1の変換境界を形成する、コーディングブロックをスプリットすることを行うように設定され得る。スプリッティングユニット1402は、第1の予測サブブロックと第2の予測サブブロックとにコーディングブロックの一部分をスプリットすることであって、それにより、第1の予測サブブロックと第2の予測サブブロックとの間に第1の予測境界を生成し、第1の予測境界が第1の変換ブロック内にある、コーディングブロックの一部分をスプリットすることをも行い得る。フィルタ処理ユニット1406は、第1の予測境界に第1のデブロッキングフィルタを適用し、第1の変換境界に第2のデブロッキングフィルタを適用するために設定され得る。変換ユニット1404は、1つまたは複数の変換演算を実施し得る。たとえば、装置1400がデコーダとして動作する場合、変換ユニット1404は、第1のブロックおよび第2のブロックのうちの少なくとも1つのための変換係数を復号し、第1のブロックまたは第2のブロックに逆変換演算を適用するために設定され得る。装置1400がエンコーダとして動作する場合、変換ユニット1404は、コード化ビデオピクチャ中に、第1のブロックまたは第2のブロックのための少なくとも1つの変換係数を含めるために設定され得る。いくつかの実施形態では、装置1400は決定ユニット1408をさらに含み、決定ユニット1408は、コーディングユニットが、最大変換サイズなどの最大サイズよりも大きいかどうかを決定することができる。
概して、本明細書で使用されるすべての用語は、異なる意味が、明確に与えられ、および/またはその用語が使用されるコンテキストから暗示されない限り、関連する技術分野における、それらの用語の通常の意味に従って解釈されるべきである。1つの(a/an)/その(the)エレメント、装置、構成要素、手段、ステップなどへのすべての言及は、別段明示的に述べられていない限り、そのエレメント、装置、構成要素、手段、ステップなどの少なくとも1つの事例に言及しているものとしてオープンに解釈されるべきである。本明細書で開示されるいずれの方法のステップも、ステップが、別のステップに後続するかまたは先行するものとして明示的に説明されない限り、および/あるいはステップが別のステップに後続するかまたは先行しなければならないことが暗黙的である場合、開示される厳密な順序で実施される必要はない。本明細書で開示される実施形態のうちのいずれかの任意の特徴は、適切であればいかなる場合も、任意の他の実施形態に適用され得る。同じように、実施形態のうちのいずれかの任意の利点は、任意の他の実施形態に適用され得、その逆も同様である。同封の実施形態の他の目的、特徴、および利点は、以下の説明から明らかになる。
添付の図面を参照しながら、次に、本明細書で企図される実施形態のうちのいくつかがより十分に説明される。しかしながら、他の実施形態は、本明細書で開示される主題の範囲内に含まれており、開示される主題は、本明細書に記載される実施形態のみに限定されるものとして解釈されるべきではなく、むしろ、これらの実施形態は、当業者に主題の範囲を伝達するために、例として提供される。
本明細書で開示される任意の適切なステップ、方法、特徴、機能、または利益は、1つまたは複数の仮想装置の1つまたは複数の機能ユニットまたはモジュールを通して実施され得る。各仮想装置は、いくつかのこれらの機能ユニットを備え得る。これらの機能ユニットは、1つまたは複数のマイクロプロセッサまたはマイクロコントローラを含み得る、処理回路要素、ならびに、デジタル信号プロセッサ(DSP)、専用デジタル論理などを含み得る、他のデジタルハードウェアを介して実装され得る。処理回路要素は、読取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、キャッシュメモリ、フラッシュメモリデバイス、光記憶デバイスなど、1つまたはいくつかのタイプのメモリを含み得るメモリに記憶されたプログラムコードを実行するように設定され得る。メモリに記憶されたプログラムコードは、1つまたは複数の通信および/またはデータ通信プロトコルを実行するためのプログラム命令、ならびに本明細書で説明される技法のうちの1つまたは複数を行うための命令を含む。いくつかの実装形態では、処理回路要素は、それぞれの機能ユニットに、本開示の1つまたは複数の実施形態による、対応する機能を実施させるために使用され得る。
ユニットという用語は、エレクトロニクス、電気デバイス、および/または電子デバイスの分野での通常の意味を有し得、たとえば、本明細書で説明されるものなど、それぞれのタスク、プロシージャ、算出、出力、および/または表示機能を行うための、電気および/または電子回路要素、デバイス、モジュール、プロセッサ、メモリ、論理固体および/または個別デバイス、コンピュータプログラムまたは命令などを含み得る。
さらなる規定が以下で提供される。
本発明概念の様々な実施形態の上記の説明では、本明細書で使用される専門用語は、特定の実施形態を説明するためのものにすぎず、本発明概念を限定するものではないことを理解されたい。別段に規定されていない限り、本明細書で使用される(技術用語および科学用語を含む)すべての用語は、本発明概念が属する技術の当業者によって通常理解されるものと同じ意味を有する。通常使用される辞書において規定される用語など、用語は、本明細書および関連技術の文脈におけるそれらの用語の意味に従う意味を有するものとして解釈されるべきであり、明確にそのように本明細書で規定されない限り、理想的なまたは過度に形式的な意味において解釈されないことをさらに理解されよう。
エレメントが、別のエレメントに「接続された」、「結合された」、「応答する」、またはそれらの変形態であると呼ばれるとき、そのエレメントは、他のエレメントに直接、接続され、結合され、または応答し得、あるいは介在するエレメントが存在し得る。対照的に、エレメントが、別のエレメントに「直接接続された」、「直接結合された」、「直接応答する」、またはそれらの変形態であると呼ばれるとき、介在するエレメントが存在しない。同様の番号は、全体を通して同様のエレメントを指す。さらに、本明細書で使用される、「結合された」、「接続された」、「応答する」、またはそれらの変形態は、無線で結合された、無線で接続された、または無線で応答する、を含み得る。本明細書で使用される単数形「a」、「an」および「the」は、文脈が別段に明確に指示するのでなければ、複数形をも含むものとする。簡潔および/または明快のために、よく知られている機能または構築が詳細に説明されないことがある。「および/または」という用語は、関連するリストされた項目のうちの1つまたは複数の任意のおよび全部の組合せを含む。
様々なエレメント/動作を説明するために、第1の、第2の、第3の、などの用語が本明細書で使用され得るが、これらのエレメント/動作は、これらの用語によって限定されるべきでないことを理解されよう。これらの用語は、あるエレメント/動作を別のエレメント/動作と区別するために使用されるにすぎない。したがって、本発明概念の教示から逸脱することなしに、いくつかの実施形態における第1のエレメント/動作が、他の実施形態において第2のエレメント/動作と呼ばれることがある。同じ参照番号または同じ参照符号は、本明細書全体にわたって同じまたは同様のエレメントを示す。
本明細書で使用される、「備える、含む(comprise)」、「備える、含む(comprising)」、「備える、含む(comprises)」、「含む(include)」、「含む(including)」、「含む(includes)」、「有する(have)」、「有する(has)」、「有する(having)」という用語、またはそれらの変形態は、オープンエンドであり、1つまたは複数の述べられた特徴、整数、エレメント、ステップ、構成要素または機能を含むが、1つまたは複数の他の特徴、整数、エレメント、ステップ、構成要素、機能またはそれらのグループの存在または追加を排除しない。さらに、本明細書で使用される、「たとえば(exempli gratia)」というラテン語句に由来する「たとえば(e.g.)」という通例の略語は、前述の項目の一般的な1つまたは複数の例を紹介するかまたは具体的に挙げるために使用され得、そのような項目を限定するものではない。「すなわち(id est)」というラテン語句に由来する「すなわち(i.e.)」という通例の略語は、より一般的な具陳から特定の項目を具体的に挙げるために使用され得る。
例示的な実施形態が、コンピュータ実装方法、装置(システムおよび/またはデバイス)および/またはコンピュータプログラム製品のブロック図および/またはフローチャート例示を参照しながら本明細書で説明された。ブロック図および/またはフローチャート例示のブロック、ならびにブロック図および/またはフローチャート例示中のブロックの組合せが、1つまたは複数のコンピュータ回路によって実施されるコンピュータプログラム命令によって実装され得ることを理解されたい。これらのコンピュータプログラム命令は、汎用コンピュータ回路、専用コンピュータ回路、および/またはマシンを作り出すための他のプログラマブルデータ処理回路のプロセッサ回路に提供され得、したがって、コンピュータおよび/または他のプログラマブルデータ処理装置のプロセッサを介して実行する命令は、ブロック図および/またはフローチャートの1つまたは複数のブロックにおいて指定された機能/行為を実装するために、およびそれにより、ブロック図および/またはフローチャートの(1つまたは複数の)ブロックにおいて指定された機能/行為を実装するための手段(機能性)および/または構造を作成するために、トランジスタ、メモリロケーションに記憶された値、およびそのような回路要素内の他のハードウェア構成要素を変換および制御する。
これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラマブルデータ処理装置に特定の様式で機能するように指示することができる、有形コンピュータ可読媒体に記憶され得、したがって、コンピュータ可読媒体に記憶された命令は、ブロック図および/またはフローチャートの1つまたは複数のブロックにおいて指定された機能/行為を実装する命令を含む製造品を作り出す。したがって、本発明概念の実施形態は、ハードウェアで、および/または「回路要素」、「モジュール」またはそれらの変形態と総称して呼ばれることがある、デジタル信号プロセッサなどのプロセッサ上で稼働する(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)ソフトウェアで具現され得る。
また、いくつかの代替実装形態では、ブロック中で言及される機能/行為は、フローチャート中で言及される順序から外れて行われ得ることに留意されたい。たとえば、関与する機能性/行為に応じて、連続して示されている2つのブロックが、事実上、実質的にコンカレントに実行され得るか、またはブロックが、時々、逆の順序で実行され得る。その上、フローチャートおよび/またはブロック図の所与のブロックの機能性が、複数のブロックに分離され得、ならびに/あるいはフローチャートおよび/またはブロック図の2つまたはそれ以上のブロックの機能性が、少なくとも部分的に統合され得る。最後に、他のブロックが、示されているブロック間に追加/挿入され得、および/または発明概念の範囲から逸脱することなく、ブロック/動作が省略され得る。その上、図のうちのいくつかが、通信の主要な方向を示すために通信経路上に矢印を含むが、通信が、図示された矢印と反対方向に行われ得ることを理解されたい。
本発明概念の原理から実質的に逸脱することなしに、実施形態に対して多くの変形および修正が行われ得る。すべてのそのような変形および修正は、本発明概念の範囲内で本明細書に含まれるものとする。したがって、上記で開示された主題は、例示であり、限定するものではないと見なされるべきであり、実施形態の例は、本発明概念の趣旨および範囲内に入る、すべてのそのような修正、拡張、および他の実施形態をカバーするものとする。したがって、法によって最大限に許容される限りにおいて、本発明概念の範囲は、実施形態およびそれらの等価物の例を含む、本開示の最も広い許容可能な解釈によって決定されるべきであり、上記の詳細な説明によって制限または限定されるべきでない。

Claims (62)

  1. 1つまたは複数のコーディングブロックに区分されたビデオピクチャを復号するための方法(900)であって、前記方法は、
    最大変換サイズNよりも大きいサイズを有する、前記ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとに前記コーディングブロックをスプリットすること(902)であって、それにより、前記第1の変換ブロックと前記第2の変換ブロックとの間に第1の変換境界を形成する、前記コーディングブロックをスプリットすること(902)と、
    少なくとも第1の予測サブブロックと第2の予測サブブロックとに前記コーディングブロックをスプリットすること(904)であって、それにより、前記第1の予測サブブロックと前記第2の予測サブブロックとの間に第1の予測境界を生成し、前記第1の予測境界が前記第1の変換ブロック内にある、前記コーディングブロックをスプリットすること(904)と、
    前記第1の予測境界に第1のデブロッキングフィルタを適用すること(905)と、
    前記第1の変換境界に第2のデブロッキングフィルタを適用すること(906)と
    を含み、
    前記第1のデブロッキングフィルタによって前記第1の予測境界において修正されるサンプルの最大数が、前記第2のデブロッキングフィルタによって前記第1の変換境界において修正されるサンプルの最大数とは異なる、方法(900)。
  2. 前記第1の予測境界と前記第1の変換境界との間の距離が8つのサンプルであり、前記第1のデブロッキングフィルタが前記境界間の2つのサンプルを修正し、前記第2のデブロッキングフィルタが前記境界間の5つのサンプルを修正する、
    請求項1に記載の方法。
  3. 前記第1のデブロッキングフィルタによって修正されるサンプルの数が、前記第2のデブロッキングフィルタによって修正されるサンプルの数よりも少ない、請求項1に記載の方法。
  4. 前記第1のデブロッキングフィルタが弱いフィルタであり、前記第2のデブロッキングフィルタが長いフィルタである、請求項1から3のいずれか一項に記載の方法。
  5. 前記第1のブロックおよび前記第2のブロックのうちの少なくとも1つのための変換係数を復号し、前記第1のブロックまたは前記第2のブロックに逆変換演算を適用すること(903)
    をさらに含む、請求項1に記載の方法。
  6. 前記第1の予測境界と前記第1の変換境界の両方が垂直境界であるか、または前記第1の予測境界と前記第1の変換境界の両方が水平境界であり、
    前記第1のデブロッキングフィルタおよび前記第2のデブロッキングフィルタが干渉なしに並列に適用される、
    請求項1から5のいずれか一項に記載の方法。
  7. 前記第1の予測境界に第1のデブロッキングフィルタを前記適用することが、前記第1の変換境界に第2のデブロッキングフィルタを前記適用することの前に実施される、請求項1から6のいずれか一項に記載の方法。
  8. 前記ビデオピクチャの前記コーディングブロックを取得することであって、前記コーディングブロックが、サイズD1×D2またはD2×D1である、前記コーディングブロックを取得することと、
    D1がNよりも大きいと決定すること(901)と
    をさらに含み、
    少なくとも第1の変換ブロックと第2の変換ブロックとに前記コーディングブロックを前記スプリットすることが、D1がNよりも大きいと前記決定することに少なくとも部分的に基づき、
    前記第1の変換ブロックが、サイズN×D2、D2×N、またはN×Nであり、
    前記第2の変換ブロックが、サイズN×D2、D2×N、またはN×Nである、請求項1から7のいずれか一項に記載の方法。
  9. 前記ビデオピクチャの前記コーディングブロックを取得することであって、前記コーディングブロックが、サイズD1×D2またはD2×D1である、前記コーディングブロックを取得することと、
    D1とD2とが両方ともNよりも大きいと決定することと
    をさらに含み、
    前記コーディングブロックを前記スプリットすることが、少なくとも第3の変換ブロックと第4の変換ブロックとに前記コーディングブロックをスプリットすることであって、それにより、第2の変換境界と、第3の変換境界と、第4の変換境界とを形成する、前記コーディングブロックをスプリットすることをさらに含む、請求項1から7のいずれか一項に記載の方法。
  10. 前記変換ブロックの各々がN×Nのサイズを有する、請求項9に記載の方法。
  11. 予測サブブロックに前記コーディングブロックを前記スプリットすることが、第3の予測サブブロックと第4の予測サブブロックとに前記コーディングブロックをスプリットすることであって、それにより、少なくとも第2の予測境界を生成する、前記コーディングブロックをスプリットすることをさらに含む、
    請求項9または10に記載の方法。
  12. 前記第1の変換境界、前記第3の変換境界、および前記第1の予測境界の各々が垂直境界であり、前記第1のデブロッキングフィルタおよび前記第2のデブロッキングフィルタを前記適用することが、前記第1の変換境界、前記第3の変換境界、および前記第1の予測境界に並列に前記フィルタを適用することを含み、
    前記第2の変換境界および前記第4の変換境界、ならびに前記第2の予測境界が水平境界であり、前記第1のデブロッキングフィルタおよび前記第2のデブロッキングフィルタを前記適用することが、前記第2の変換境界および前記第4の変換境界、ならびに前記第2の予測境界に並列に前記フィルタを適用することを含む、
    請求項11に記載の方法。
  13. 前記コーディングブロックを前記スプリットすることは、ビデオエレメントについてのスプリット情報を伝達するシンタックスエレメントがないスプリットを実施することを含む、請求項1から12のいずれか一項に記載の方法。
  14. 前記コーディングブロックがコーディングブロックのルーマ成分であり、前記第1のブロックおよび前記第2のブロックの各々がルーマサンプルを含む、請求項1から13のいずれか一項に記載の方法。
  15. 第1の予測境界を前記生成することが、前記第1の予測境界のいずれかの側に第1の予測サブブロックと第2の予測サブブロックとに前記コーディング第1のブロックをスプリットすることを含む、請求項1から14のいずれか一項に記載の方法。
  16. 前記第1の予測サブブロックが、前記第2の予測サブブロックとは異なる参照フレームを使用するか、または前記第2の予測サブブロックよりも著しい動き差分を有する、請求項1から14のいずれか一項に記載の方法。
  17. 第1の予測境界を前記生成することは、サブブロック予測ツールが前記コーディングブロックのために使用されると決定することを含む、請求項1から16のいずれか一項に記載の方法。
  18. 前記予測ツールが、FRUCツール、AFFINEツール、およびMV予測ツールのうちの1つである、請求項17に記載の方法。
  19. 前記第1のデブロッキングフィルタを適用することが、前記第1の予測境界の各側で少なくとも1つのサンプルを修正し、
    前記第2のデブロッキングフィルタを適用することが、前記第1の変換境界の各側で少なくとも1つのサンプルを修正する、
    請求項1から18のいずれか一項に記載の方法。
  20. 前記第1の予測境界と前記第1の変換境界との間の距離がMであり、前記第1の予測境界のいずれかの側でデブロッキングによって修正されるサンプルの数がGであり、前記変換境界のいずれかの側でデブロッキングによって修正されるサンプルの数がFであり、
    (viii) Nが64に等しく、前記コーディングブロックの前記幅D1が128であり、前記コーディングブロックの前記高さD2が128であり、Mが8に等しく、Gが2に等しく、Fが5に等しい、あるいは
    (ix) Nが64に等しく、前記高さD2が128に等しく、前記幅D1が64に等しく、Fが7に等しく、Gが1に等しく、Mが4に等しい、あるいは
    (x) Nが64に等しく、前記高さD2が128に等しく、前記幅D1が32に等しい、あるいは
    (xi) Fが3または5に等しく、長いデブロッキングフィルタが適用される、あるいは
    (xii) Fが2に等しく、弱いデブロッキングフィルタが適用される、あるいは
    (xiii) Gが2または3に等しい、あるいは
    (xiv) Mが8に等しい、
    請求項1から19のいずれか一項に記載の方法。
  21. 前記コーディングブロックの前記高さがNよりも大きく、前記コーディングブロックの幅がNよりも小さいかまたはそれに等しく、前記スプリットすることが垂直である、あるいは
    前記コーディングブロックの前記幅がNよりも大きく、前記コーディングブロックの高さがNよりも小さいかまたはそれに等しく、前記スプリットすることが水平である、
    請求項1から20のいずれか一項に記載の方法。
  22. 前記第1の変換ブロックまたは前記第2の変換ブロックのうちの1つまたは複数がイントラ予測を実装すると決定すること
    をさらに含み、
    予測境界を前記生成することと第1のデブロッキングフィルタを前記適用することとのうちの少なくとも1つは、イントラ予測が実装されると前記決定することに基づく、請求項1から21のいずれか一項に記載の方法。
  23. 前記最大サイズが、ビデオコーディング仕様において固定値にセットされる、請求項1から22のいずれか一項に記載の方法。
  24. 前記最大サイズがビットストリーム中でシグナリングされ、前記最大サイズが、複数のコーディングユニットについて1回シグナリングされる、請求項1から23のいずれか一項に記載の方法。
  25. 前記サイズが、ビデオクリップごとに1回、ピクチャのセットごとに1回、ピクチャごとに1回、またはスライスごとに1回シグナリングされる、請求項24に記載の方法。
  26. 処理回路要素(1102)によって実行されたとき、前記処理回路要素(1102)に、請求項1から25のいずれか一項に記載の方法を実施させる命令(1144)を備える、コンピュータプログラム(1143)。
  27. 請求項26に記載のコンピュータプログラムを含んでいるキャリアであって、前記キャリアが、電子信号、光信号、無線信号、およびコンピュータ可読記憶媒体(1142)のうちの1つである、キャリア。
  28. 1つまたは複数のコーディングブロックに区分されたビデオピクチャを復号するためのデコーダ(1101)であって、前記デコーダは、
    最大変換サイズNよりも大きいサイズを有する、前記ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとに前記コーディングブロックをスプリットすることであって、それにより、前記第1の変換ブロックと前記第2の変換ブロックとの間に第1の変換境界を形成する、前記コーディングブロックをスプリットすることと、
    少なくとも第1の予測サブブロックと第2の予測サブブロックとに前記コーディングブロックをスプリットすることであって、それにより、前記第1の予測サブブロックと前記第2の予測サブブロックとの間に第1の予測境界を生成し、前記第1の予測境界が前記第1の変換ブロック内にある、前記コーディングブロックをスプリットすることと、
    前記第1の予測境界に第1のデブロッキングフィルタを適用することと、
    前記第1の変換境界に第2のデブロッキングフィルタを適用することと
    を行うように適応され、
    前記第1のデブロッキングフィルタによって前記第1の予測境界において修正されるサンプルの最大数が、前記第2のデブロッキングフィルタによって前記第1の変換境界において修正されるサンプルの最大数とは異なる、デコーダ(1101)。
  29. 前記デコーダが、請求項2から25のいずれか一項に記載の方法を実施するようにさらに設定された、請求項28に記載のデコーダ。
  30. 1つまたは複数のコーディングブロックに区分されたビデオピクチャを符号化するための方法(950)であって、前記方法は、
    最大変換サイズNよりも大きいサイズを有する、前記ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとに前記コーディングブロックをスプリットすること(952)であって、それにより、前記第1の変換ブロックと前記第2の変換ブロックとの間に第1の変換境界を形成する、前記コーディングブロックをスプリットすること(952)と、
    少なくとも第1の予測サブブロックと第2の予測サブブロックとに前記コーディングブロックをスプリットすること(954)であって、それにより、前記第1の予測サブブロックと前記第2の予測サブブロックとの間に第1の予測境界を生成し、前記第1の予測境界が前記第1の変換ブロック内にある、前記コーディングブロックをスプリットすること(954)と、
    前記第1の予測境界に第1のデブロッキングフィルタを適用すること(955)と、
    前記第1の変換境界に第2のデブロッキングフィルタを適用すること(956)と
    を含み、
    前記第1のデブロッキングフィルタによって前記第1の予測境界において修正されるサンプルの最大数が、前記第2のデブロッキングフィルタによって前記第1の変換境界において修正されるサンプルの最大数とは異なる、方法(950)。
  31. 前記第1の予測境界と前記第1の変換境界との間の距離が8つのサンプルであり、前記第1のデブロッキングフィルタが前記境界間の2つのサンプルを修正し、前記第2のデブロッキングフィルタが前記境界間の5つのサンプルを修正する、
    請求項30に記載の方法。
  32. 前記第1のデブロッキングフィルタによって修正されるサンプルの数が、前記第2のデブロッキングフィルタによって修正されるサンプルの数よりも少ない、請求項30に記載の方法。
  33. 前記第1のデブロッキングフィルタが弱いフィルタであり、前記第2のデブロッキングフィルタが長いフィルタである、請求項30から32のいずれか一項に記載の方法。
  34. コード化ビデオピクチャ中に、前記第1のブロックまたは前記第2のブロックのための少なくとも1つの変換係数を含めること(953)
    をさらに含む、請求項33に記載の方法。
  35. 前記第1の予測境界と前記第1の変換境界の両方が垂直境界であるか、または前記第1の予測境界と前記第1の変換境界の両方が水平境界であり、
    前記第1のデブロッキングフィルタおよび前記第2のデブロッキングフィルタが並列に適用される、
    請求項33または34に記載の方法。
  36. 前記第1の予測境界に第1のデブロッキングフィルタを前記適用することが、前記第1の変換境界に第2のデブロッキングフィルタを前記適用することの前に実施される、請求項33または34に記載の方法。
  37. 前記ビデオピクチャの前記コーディングブロックを取得することであって、前記コーディングブロックが、サイズD1×D2またはD2×D1である、前記コーディングブロックを取得することと、
    D1がNよりも大きいと決定すること(951)と
    をさらに含み、
    少なくとも第1の変換ブロックと第2の変換ブロックとに前記コーディングブロックを前記スプリットすることが、D1がNよりも大きいと前記決定することに少なくとも部分的に基づき、
    前記第1の変換ブロックが、サイズN×D2、D2×N、またはN×Nであり、
    前記第2の変換ブロックが、サイズN×D2、D2×N、またはN×Nである、請求項30から36のいずれか一項に記載の方法。
  38. 前記ビデオピクチャの前記コーディングブロックを取得することであって、前記コーディングブロックが、サイズD1×D2またはD2×D1である、前記コーディングブロックを取得することと、
    D1とD2とが両方ともNよりも大きいと決定することと
    をさらに含み、
    前記コーディングブロックを前記スプリットすることが、少なくとも第3の変換ブロックと第4の変換ブロックとに前記コーディングブロックをスプリットすることであって、それにより、第2の変換境界と、第3の変換境界と、第4の変換境界とを形成する、前記コーディングブロックをスプリットすることをさらに含む、請求項30から36のいずれか一項に記載の方法。
  39. 前記変換ブロックの各々がN×Nのサイズを有する、請求項38に記載の方法。
  40. 前記コーディングブロックの一部分を前記スプリットすることが、第3の予測サブブロックと第4の予測サブブロックとに前記ブロックをスプリットすることであって、それにより、少なくとも第2の予測境界を生成する、前記ブロックをスプリットすることをさらに含む、
    請求項38または39に記載の方法。
  41. 前記第1の変換境界、前記第3の変換境界、および前記第1の予測境界の各々が垂直境界であり、前記第1のデブロッキングフィルタおよび前記第2のデブロッキングフィルタを前記適用することが、前記第1の変換境界、前記第3の変換境界、および前記第1の予測境界に並列に前記フィルタを適用することを含み、
    前記第2の変換境界および前記第4の変換境界が水平境界であり、前記第2のデブロッキングフィルタを前記適用することが、前記第2の変換境界および前記第4の変換境界に並列に前記フィルタを適用することを含む、
    請求項40に記載の方法。
  42. 前記コーディングブロックを前記スプリットすることが、前記コード化ビデオピクチャ中にスプリットを指示するシンタックスエレメントを含めることなしに前記スプリットを実施することを含む、請求項30から41のいずれか一項に記載の方法。
  43. 前記コーディングブロックがコーディングブロックのルーマ成分であり、前記第1のブロックおよび前記第2のブロックの各々がルーマサンプルを含む、請求項30から42のいずれか一項に記載の方法。
  44. 第1の予測境界を前記生成することが、前記第1の予測境界のいずれかの側に第1の予測サブブロックと第2の予測サブブロックとに前記第1のブロックをスプリットすることを含む、請求項30から43のいずれか一項に記載の方法。
  45. 前記第1の予測サブブロックが、前記第2の予測サブブロックとは異なる参照フレームを使用するか、または前記第2の予測サブブロックよりも著しい動き差分を有する、請求項44に記載の方法。
  46. 第1の予測境界を前記生成することは、サブブロック予測ツールが前記コーディングブロックのために使用されると決定することを含む、請求項30から45のいずれか一項に記載の方法。
  47. 前記予測ツールが、FRUCツール、AFFINEツール、およびMV予測ツールのうちの1つである、請求項46に記載の方法。
  48. 前記第1のデブロッキングフィルタを適用することが、前記第1の予測境界の各側で少なくとも1つのサンプルを修正し、
    前記第2のデブロッキングフィルタを適用することが、前記第1の変換境界の各側で少なくとも1つのサンプルを修正する、
    請求項30から47のいずれか一項に記載の方法。
  49. 前記第1の予測境界と前記第1の変換境界との間の距離がMであり、前記第1の予測境界のいずれかの側でデブロッキングによって修正されるサンプルの数がGであり、前記変換境界のいずれかの側でデブロッキングによって修正されるサンプルの数がFであり、
    (i) Nが64に等しく、前記コーディングブロックの前記幅D1が128であり、前記コーディングブロックの前記高さD2が128であり、Mが8に等しく、Gが2に等しく、Fが5に等しい、あるいは
    (ii) Nが64に等しく、前記高さD2が128に等しく、前記幅D1が64に等しく、Fが7に等しく、Gが1に等しく、Mが4に等しい、あるいは
    (iii) Nが64に等しく、前記高さD2が128に等しく、前記幅D1が32に等しい、あるいは
    (iv) Fが3または5に等しく、長いデブロッキングフィルタが適用される、あるいは
    (v) Fが2に等しく、弱いデブロッキングフィルタが適用される、あるいは
    (vi) Gが2または3に等しい、あるいは
    (vii) Mが8に等しい、
    請求項30から48のいずれか一項に記載の方法。
  50. 前記コーディングブロックの前記高さがNよりも大きく、前記コーディングブロックの幅がNよりも小さいかまたはそれに等しく、前記スプリットすることが垂直である、あるいは
    前記コーディングブロックの前記幅がNよりも大きく、前記コーディングブロックの高さがNよりも小さいかまたはそれに等しく、前記スプリットすることが水平である、
    請求項30から49のいずれか一項に記載の方法。
  51. 前記第1の変換ブロックまたは前記第2の変換ブロックのうちの1つまたは複数がイントラ予測を実装すると決定すること
    をさらに含み、
    予測境界を前記生成することと第1のデブロッキングフィルタを前記適用することとのうちの少なくとも1つは、イントラ予測が実装されると前記決定することに基づく、請求項30から50のいずれか一項に記載の方法。
  52. 前記最大サイズが、ビデオコーディング仕様において固定値にセットされる、請求項30から51のいずれか一項に記載の方法。
  53. 前記最大サイズがビットストリーム中でシグナリングされ、前記最大サイズが、複数のコーディングユニットについて1回シグナリングされる、請求項30から51のいずれか一項に記載の方法。
  54. 前記サイズが、ビデオクリップごとに1回、ピクチャのセットごとに1回、ピクチャごとに1回、またはスライスごとに1回シグナリングされる、請求項53に記載の方法。
  55. 処理回路要素(1002)によって実行されたとき、前記処理回路要素(1002)に、請求項30から54のいずれか一項に記載の方法を実施させる命令(1044)を備える、コンピュータプログラム(1043)。
  56. 請求項55に記載のコンピュータプログラムを含んでいるキャリアであって、前記キャリアが、電子信号、光信号、無線信号、およびコンピュータ可読記憶媒体(1042)のうちの1つである、キャリア。
  57. 1つまたは複数のコーディングブロックに区分されたビデオピクチャを符号化するためエンコーダ(1001)であって、前記エンコーダは、
    最大変換サイズNよりも大きいサイズを有する、前記ビデオピクチャのコーディングブロックについて、少なくとも第1の変換ブロックと第2の変換ブロックとに前記コーディングブロックをスプリットすることであって、それにより、前記第1の変換ブロックと前記第2の変換ブロックとの間に第1の変換境界を形成する、前記コーディングブロックをスプリットすることと、
    少なくとも第1の予測サブブロックと第2の予測サブブロックとに前記コーディングブロックをスプリットすることであって、それにより、前記第1の予測サブブロックと前記第2の予測サブブロックとの間に第1の予測境界を生成し、前記第1の予測境界が前記第1の変換ブロック内にある、前記コーディングブロックをスプリットすることと、
    前記第1の予測境界に第1のデブロッキングフィルタを適用することと、
    前記第1の変換境界に第2のデブロッキングフィルタを適用することと
    を行うように適応され、
    前記第1のデブロッキングフィルタによって前記第1の予測境界において修正されるサンプルの最大数が、前記第2のデブロッキングフィルタによって前記第1の変換境界において修正されるサンプルの最大数とは異なる、エンコーダ(1001)。
  58. 請求項31から54のいずれか一項に記載の方法を実施するようにさらに設定された、請求項57に記載のエンコーダ。
  59. ビデオピクチャを復号するための方法(400)であって、前記方法は、
    ブロックレベルでスプリットを指示するシンタックスエレメントを復号することなしに第1のブロックと第2のブロックとにコーディングユニットのルーマ成分をスプリットすること(402)と、
    前記第1のブロックと前記第2のブロックとのうちの少なくとも1つのための少なくとも1つの変換係数を復号すること(404、406)と、
    前記第1のブロックと前記第2のブロックとのうちの前記少なくとも1つに逆変換を適用すること(404、406)と、
    複数の予測サブブロックに前記コーディングユニットの前記ルーマ成分をスプリットすること(408)であって、前記複数の予測サブブロックが、前記第1のブロックと前記第2のブロックとのうちの少なくとも1つ中で境界を作成する、前記ルーマ成分をスプリットすること(408)と、
    前記第1のブロックと前記第2のブロックとのうちの前記少なくとも1つ中の前記境界にデブロッキングフィルタを適用すること(410)と、
    前記第1のブロックと前記第2のブロックとの間の境界に前記デブロッキングフィルタを適用すること(410)と
    を含む、方法(400)。
  60. 前記コーディングユニットの前記ルーマ成分をスプリットすることが、前記ルーマ成分を垂直方向にスプリットすることを含む、請求項59に記載の方法。
  61. 前記コーディングユニットの前記ルーマ成分をスプリットすることが、前記ルーマ成分を水平方向にスプリットすることを含む、請求項59に記載の方法。
  62. ビデオピクチャを符号化するための方法(500)であって、前記方法は、
    前記符号化ビデオピクチャ中にブロックレベルでスプリットを指示するシンタックスエレメントを含めることなしに第1のブロックと第2のブロックとにコーディングユニットのルーマ成分をスプリットすること(504)と、
    前記符号化ビデオピクチャ中に、前記第1のブロックと前記第2のブロックとのうちの少なくとも1つのための少なくとも1つの変換係数を含めること(506、508)と、
    複数の予測サブブロックに前記コーディングユニットの前記ルーマ成分をスプリットすること(510)であって、前記複数の予測サブブロックが、前記第1のブロックと前記第2のブロックとのうちの少なくとも1つ中で境界を作成する、前記ルーマ成分をスプリットすること(510)と、
    前記第1のブロックと前記第2のブロックとのうちの前記少なくとも1つ中の前記境界にデブロッキングフィルタを適用すること(512)と、
    前記第1のブロックと前記第2のブロックとの間の境界に前記デブロッキングフィルタを適用すること(514)と
    を含む、方法(500)。
JP2020540272A 2018-06-21 2019-06-20 ビデオピクチャ境界のデブロッキング Active JP7096890B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862688085P 2018-06-21 2018-06-21
US62/688,085 2018-06-21
PCT/EP2019/066349 WO2019243498A1 (en) 2018-06-21 2019-06-20 Deblocking of video picture boundaries

Publications (2)

Publication Number Publication Date
JP2021517378A true JP2021517378A (ja) 2021-07-15
JP7096890B2 JP7096890B2 (ja) 2022-07-06

Family

ID=67060391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020540272A Active JP7096890B2 (ja) 2018-06-21 2019-06-20 ビデオピクチャ境界のデブロッキング

Country Status (7)

Country Link
US (3) US11388400B2 (ja)
EP (2) EP3721623B1 (ja)
JP (1) JP7096890B2 (ja)
CN (1) CN111819847B (ja)
CA (1) CA3103003A1 (ja)
PL (1) PL3721623T3 (ja)
WO (1) WO2019243498A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020167228A1 (en) * 2019-02-15 2020-08-20 Telefonaktiebolaget Lm Ericsson (Publ) Deblocking of transform sub-block boundaries
CN113994671B (zh) 2019-06-14 2024-05-10 北京字节跳动网络技术有限公司 基于颜色格式处理视频单元边界和虚拟边界
EP3981150A4 (en) 2019-07-09 2022-08-03 Beijing Bytedance Network Technology Co., Ltd. SAMPLE DETERMINATION FOR ADAPTIVE LOOP FILTERING
AU2020309130B2 (en) 2019-07-11 2023-06-08 Beijing Bytedance Network Technology Co., Ltd. Sample padding in adaptive loop filtering
KR20220031611A (ko) * 2019-07-15 2022-03-11 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 적응적 루프 필터링에서의 분류
CN114430902B (zh) 2019-09-22 2023-11-10 北京字节跳动网络技术有限公司 自适应环路滤波中的填充过程
KR20220063177A (ko) 2019-09-27 2022-05-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 상이한 비디오 유닛들 간의 적응적 루프 필터링
CN117956146A (zh) 2019-10-10 2024-04-30 北京字节跳动网络技术有限公司 自适应环路滤波中不可用样点位置处的填充处理

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101590500B1 (ko) * 2008-10-23 2016-02-01 에스케이텔레콤 주식회사 동영상 부호화/복호화 장치, 이를 위한 인트라 예측 방향에기반한 디블록킹 필터링 장치 및 필터링 방법, 및 기록 매체
WO2011129100A1 (ja) * 2010-04-13 2011-10-20 パナソニック株式会社 画像符号化方法および画像復号化方法
KR102350071B1 (ko) * 2011-11-04 2022-01-11 엘지전자 주식회사 영상 정보 인코딩/디코딩 방법 및 장치
KR20130090465A (ko) * 2012-02-06 2013-08-14 삼성전자주식회사 순차 주사 기반의 디블록킹 필터링 장치 및 방법
CN103220529B (zh) * 2013-04-15 2016-02-24 北京大学 一种视频编解码环路滤波的实现方法
US9906790B2 (en) 2014-03-14 2018-02-27 Qualcomm Incorporated Deblock filtering using pixel distance

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RICKARD SJOBERG ET AL., DESCRIPTION OF SDR AND HDR VIDEO CODING TECHNOLOGY PROPOSAL BY ERICSSON AND NOKIA, JPN6021045927, 13 April 2018 (2018-04-13), pages 9 - 12, ISSN: 0004646435 *

Also Published As

Publication number Publication date
JP7096890B2 (ja) 2022-07-06
PL3721623T3 (pl) 2021-09-27
US11758131B2 (en) 2023-09-12
WO2019243498A1 (en) 2019-12-26
US20240022719A1 (en) 2024-01-18
US20220312007A1 (en) 2022-09-29
CN111819847B (zh) 2022-08-09
EP3863285A1 (en) 2021-08-11
EP3721623B1 (en) 2021-05-19
CA3103003A1 (en) 2019-12-26
US20210409699A1 (en) 2021-12-30
US11388400B2 (en) 2022-07-12
EP3721623A1 (en) 2020-10-14
CN111819847A (zh) 2020-10-23

Similar Documents

Publication Publication Date Title
JP7096890B2 (ja) ビデオピクチャ境界のデブロッキング
US11812034B2 (en) Method and apparatus for sample adaptive offset parameter estimation for image and video coding
KR102656595B1 (ko) 영상 정보 인코딩 및 디코딩 방법
KR102104594B1 (ko) 영상 정보 부호화 및 복호화 방법
US20190075328A1 (en) Method and apparatus of video data processing with restricted block size in video coding
CN110024405B (zh) 图像处理方法及其装置
KR102294016B1 (ko) 변환생략을 참조하는 디블록킹 필터링을 이용한 영상의 부호화/복호화 방법 및 이를 이용하는 장치
WO2020125804A1 (en) Inter prediction using polynomial model
US11134247B2 (en) Image encoding and decoding method and apparatus therefor
US10506259B2 (en) Method for encoding/decoding image, and device therefor
CN110771166B (zh) 帧内预测装置和方法、编码、解码装置、存储介质
JP2021523641A (ja) 暗黙的変換ユニット境界のデブロッキング
CN118077197A (zh) 组合用于视频编码和/或解码的去块滤波和另一滤波
OA20341A (en) Deblocking of implicit transform unit boundaries

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200925

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200925

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211124

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220518

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: 20220531

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220624

R150 Certificate of patent or registration of utility model

Ref document number: 7096890

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150