JP2021108475A - 映像サンプルのブロックをデブロックする方法 - Google Patents

映像サンプルのブロックをデブロックする方法 Download PDF

Info

Publication number
JP2021108475A
JP2021108475A JP2021064793A JP2021064793A JP2021108475A JP 2021108475 A JP2021108475 A JP 2021108475A JP 2021064793 A JP2021064793 A JP 2021064793A JP 2021064793 A JP2021064793 A JP 2021064793A JP 2021108475 A JP2021108475 A JP 2021108475A
Authority
JP
Japan
Prior art keywords
block
prediction
unit
video
intra
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
JP2021064793A
Other languages
English (en)
Other versions
JP7104827B2 (ja
Inventor
クリストファー ジェームズ ロゼワーン,
James Rosewarne Christopher
クリストファー ジェームズ ロゼワーン,
ジョナサン ガン,
Jonathan Gan
ジョナサン ガン,
ウォロジミール コレスニコフ,
Kolesnikov Volodymyr
ウォロジミール コレスニコフ,
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of JP2021108475A publication Critical patent/JP2021108475A/ja
Application granted granted Critical
Publication of JP7104827B2 publication Critical patent/JP7104827B2/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/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/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
    • 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/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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/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

Landscapes

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

Abstract

【課題】映像データのサンプルのブロックのエッジをデブロックする方法を提供する。【解決手段】方法は、映像データのブロックの各々がプライマリカラーチャネルとセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックに対して第1、第2予測モードを符号化する。第1予測モードと第2予測モードが両方ともイントラブロックコピーであり、かつ、隣接する2つのブロックの整数画素精度であるブロックベクトルの絶対差分が等しくない場合に、第1ブロックと第2ブロックとの間の境界エッジに沿ったサンプルに対して、プライマリカラーチャネルについてはデブロッキングフィルタを適用し、セカンダリカラーチャネルについてはデブロッキングフィルタを適用しない。第1予測モードと第2予測モードのいずれかがイントラ予測である場合、プライマリカラーチャネル及びセカンダリカラーチャネルについてデブロッキングフィルタを適用する。【選択図】図8

Description

(技術分野)
本発明は一般にはデジタル映像信号処理に関し、特に、映像サンプルのブロックをデブロックする方法、装置、及び、システムに関する。本発明はまた、映像サンプルのブロックをデブロックするためのコンピュータプログラムが記録されたコンピュータ可読媒体を含むコンピュータプログラム製品にも関する。
(背景)
映像データの送信及び記憶のためのアプリケーションを含む、映像符号化のための多くのアプリケーションが現在存在している。また、多くの映像符号化標準が開発されており、他のものは現在開発中である。映像符号化標準化における近年の進展により、「映像符号化共同作業チーム(JCT−VC:Joint Collaborative Team on Video Coding)」と呼ばれる団体が結成されている。映像符号化共同作業チーム(JCT−VC)には、映像符号化エキスパートグループ(VCEG:Video Coding Experts Group)として知られている、国際電気通信連合(ITU)の電気通信標準化セクター(ITU−T)のスタディグループ16、クエスチョン6(SG16/Q6)のメンバーと、動画エキスパートグループ(MPEG:Moving Picture Experts Group)としても知られている、国際標準化機構/国際電気標準会議 合同技術委員会1/分科委員会29/ワーキンググループ11(ISO/IEC JTC1/SC29/WG11:International Organisations for Standardisation / International Electrotechnical Commission Joint Technical Committee 1 / Subcommittee 29 / Working Group 11)のメンバーが含まれる。
映像符号化共同作業チーム(JCT−VC)は、「H.264/MPEG−4 AVC」(ISO/IEC14496−10)映像符号化標準よりも極めて性能がよい新たな映像符号化標準を製作した。新たな映像符号化標準は、「高効率映像符号化(HEVC:High Efficiency Video Coding)」と名付けられている。高効率映像符号化(HEVC)のさらなる開発は、「スクリーンコンテンツ」あるいは「不連続トーンコンテンツ」のように様々に知られているコンテンツに対して改善されたサポートを導入することに向けられている。このようなコンテンツは、コンピュータ又はタブレット装置からの、例えば、DVIコネクタからの、あるいは、無線HDMIリンクを介して送信されうる、映像出力の典型である。このようなコンテンツは従来の映像圧縮標準によってはうまく取り扱われていなかったので、この種のコンテンツに対して達成可能な符号化効率を改善することに向けられた新たな活動が進行中である。
映像データは1つ以上のカラーチャネルを含む。一般には、1つのプライマリカラーチャネルと2つのセカンダリカラーチャネルが存在する。プライマリカラーチャネルは一般に「輝度(luma:ルマ)」チャネルと呼ばれ、セカンダリカラーチャネルは一般に「クロマ(chroma)」チャネルと呼ばれている。映像データは、「YCbCr」や「RGB」等の色空間を使用して表される。
スクリーンコンテンツのアプリケーションに対しては「RGB」が広く使用されている。これはLCDパネルを駆動するために一般に使用されているフォーマットであるからである。「G」(緑)チャネルに最も大きな信号強度が存するため、一般にGチャネルはプライマリカラーチャネルを使用して符号化され、残りのチャネル(すなわち、「B」、「R」)はセカンダリカラーチャネルを使用して符号化される。このような符号化方法は「GBR」と呼ばれることがある。「YCbCr」色空間が使用される場合、「Y」チャネルはプライマリカラーチャネルを使用して符号化され、「Cb」及び「Cr」チャネルはセカンダリカラーチャネルを使用して符号化される。
映像データはまた、特定のクロマフォーマットを使用して表される。4:4:4のクロマフォーマットが使用される場合、プライマリカラーチャネルとセカンダリカラーチャネルの空間サンプリングは同一の空間密度で空間的にサンプリングされる。一般にLCDパネルが4:4:4のフォーマットで画素を提供するように、スクリーンコンテンツに対して、広く使用されるクロマフォーマットは4:4:4である。ビット深度は各カラーチャネルにおけるサンプルのビット幅を規定し、これは利用可能なサンプル値の範囲を示す。カラーチャネルは異なるビット深度を有するかもしれないが、一般に、全てのカラーチャネルは同一のビット幅を有する。
高効率映像符号化(HEVC)においては、イントラ予測(画面内予測)、イントラブロックコピー予測、及び、インター予測(画面間予測)の3種類の使用される予測方法が存在する。イントラ予測及びイントラブロックコピー法は、映像フレームの一部のコンテンツを、同一の映像フレームの他の部分から予測することを可能にする。イントラ予測法は典型的には方向を持つテクスチャ(構造)を有するサンプルのブロックを生成するところ、イントラ予測モードは、テクスチャの方向と、テクスチャを生成するための基礎として使用されるフレーム内の隣接するサンプルを特定する。イントラブロックコピー予測法は、現在のフレームからのサンプルのブロックを、サンプルの現在のブロックに対する予測として使用する。
インター予測法は、映像フレーム内のサンプルのブロックのコンテンツを、以前の映像フレーム内のブロックから予測する。以前の映像フレーム(すなわち、異なりうる「表示順」とは対照的に「復号順」に)は「参照フレーム」と呼ばれてもよい。インター予測された予測ユニットは、「単一方向の」インター予測に対して構成された場合は1つの参照フレームを参照し、あるいは、「2つの方向の」インター予測に対して構成された場合は2つの参照フレームを参照してもよい。サンプルの1つのブロックが、各参照フレームから取得される。各参照フレームは、参照ピクチャのリストから選択される。サンプルのブロックは、動きベクトルを使用した、考慮される予測ユニット(PU:Prediction Unit)の位置に対する空間的オフセットである。予測ユニット(PU)が双方向のインター予測に対して構成されている場合、別個の動きベクトルが各参照フレームからサンプルのブロックを取得するために適用される。
映像フレームのシーケンス内の最初の映像フレームは、それよりも前に参照できるフレームがないため、フレーム内のサンプルの全てのブロックに対してイントラ予測を使用することが典型的である。それに続く映像フレームは、サンプルのブロックを予測するために、1つ以上の以前の映像フレームを使用してもよい。符号化効率を最大化するために、キャプチャされたフレームデータに最も近い予測ブロックを生成する予測法が典型的に使用される。サンプルの予測ブロックとキャプチャされたフレームデータとの間の残りの差分は「残差(residual)」として知られている。この差分の空間領域表現は、一般に、周波数領域表現へ変換される。一般に、周波数領域表現は、画像センサからキャプチャされたコンテンツの空間領域表現に存在する情報をコンパクトに格納するところ、このようなコンテンツは「ナチュラルコンテンツ」、「連続トーンコンテンツ」、あるいは、「カメラキャプチャコンテンツ」とも呼ばれる。スクリーンコンテンツに対して、フォント等のコンテンツのソフトウェアレンダリングの結果、エッジがシャープになるにつれて、ウィンドウのエッジやアイコンの結果は、周波数領域において効果的に表現されなくなる。周波数領域表現は、整数の離散コサイン変換(DCT)等の変換の適用に起因する「残差係数(residual coefficients)」のブロックを含む。さらに、残差係数(あるいは「変倍された変換係数」)は量子化され、これにより損失が導入されるだけでなく、またさらに、ビットストリームで符号化されるのに必要な情報の量が削減される。残差の非可逆な周波数領域表現は、「変換係数」としても知られており、ビットストリーム内に格納されてもよい。非ゼロ値を有する各残差係数は、「有意(significant)」残差係数とも呼ばれる。復号部内で復元される残差における「非可逆性」の程度は、ビットストリームから復号された映像データの、キャプチャされたフレームデータと比べたゆがみと、ビットストリームのサイズに影響する。
(概要)
本発明の目的は、既存の構成の1つ以上の欠点を実質的に解消するか、あるいは、少なくとも改善することである。
本明細書の一側面によれば、映像データのサンプルのブロックのエッジをデブロックする方法であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号する工程と、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する工程と、
前記第1の予測モードと前記第2の予測モードが両方ともイントラブロックコピーである場合、前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する工程であって、該境界強度値は、前記隣接する2つのブロックと関連付けられたブロックベクトルが異なる大きさを有する場合に弱いデブロッキングフィルタの適用を示し、該ブロックベクトルが等しい大きさを有する場合にデブロッキングフィルタは適用されないことを示す、工程と、
前記弱いデブロッキングフィルタが適用されるべきことを前記決定された境界強度値が示す場合にのみ前記2つのブロックの前記エッジに沿ってデータの前記ブロックへ前記弱いデブロッキングフィルタを適用する工程であって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたエッジに適用されるフィルタと異なる、工程と
を有することを特徴とする方法が提供される。
本明細書の他の側面によれば、映像データのサンプルのブロックのエッジをデブロックする装置であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号し、該映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する復号モジュールと、
前記第1の予測モードと前記第2の予測モードが両方ともイントラブロックコピーである場合、前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する決定モジュールであって、該境界強度値は、前記隣接する2つのブロックと関連付けられたブロックベクトルが異なる大きさを有する場合に弱いデブロッキングフィルタの適用を示し、該ブロックベクトルが等しい大きさを有する場合にデブロッキングフィルタは適用されないことを示す、決定モジュールと、
前記弱いデブロッキングフィルタが適用されるべきことを前記決定された境界強度値が示す場合にのみ前記2つのブロックの前記エッジに沿ってデータの前記ブロックへ前記弱いデブロッキングフィルタを適用する適用モジュールであって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたエッジに適用されるフィルタと異なる、適用モジュールと
を備えることを特徴とする装置が提供される。
本明細書のさらなる他の側面によれば、映像データのサンプルのブロックのエッジをデブロックするシステムであって、
データ及びコンピュータプログラムを記憶するメモリと、
前記コンピュータプログラムを実行する前記メモリに結合されたプロセッサと
を備え、
前記コンピュータプログラムは、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号する工程と、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する工程と、
前記第1の予測モードと前記第2の予測モードが両方ともイントラブロックコピーである場合、前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する工程であって、該境界強度値は、前記隣接する2つのブロックと関連付けられたブロックベクトルが異なる大きさを有する場合に弱いデブロッキングフィルタの適用を示し、該ブロックベクトルが等しい大きさを有する場合にデブロッキングフィルタは適用されないことを示す、工程と、
前記弱いデブロッキングフィルタが適用されるべきことを前記決定された境界強度値が示す場合にのみ前記2つのブロックの前記エッジに沿ってデータの前記ブロックへ前記弱いデブロッキングフィルタを適用する工程であって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたエッジに適用されるフィルタと異なる、工程と
を実行するための命令を備えることを特徴とするシステムが提供される。
本明細書のさらなる他の側面によれば、映像データのサンプルのブロックのエッジをデブロックするためのコンピュータプログラムを有する非一時的なコンピュータ可読媒体であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号するコードと、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号するコードと、
前記第1の予測モードと前記第2の予測モードが両方ともイントラブロックコピーである場合、前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定するコードであって、該境界強度値は、前記隣接する2つのブロックと関連付けられたブロックベクトルが異なる大きさを有する場合に弱いデブロッキングフィルタの適用を示し、該ブロックベクトルが等しい大きさを有する場合にデブロッキングフィルタは適用されないことを示す、コードと、
前記弱いデブロッキングフィルタが適用されるべきことを前記決定された境界強度値が示す場合にのみ前記2つのブロックの前記エッジに沿ってデータの前記ブロックへ前記弱いデブロッキングフィルタを適用するコードであって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたエッジに適用されるフィルタと異なる、コードと
を備えたコンピュータプログラムを当該媒体上に記憶したコンピュータ可読媒体が提供される。
本明細書のさらなる他の側面によれば、映像データのサンプルのブロックのエッジをデブロックする方法であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号する工程と、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する工程と、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する工程と、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿ってデータの前記ブロックへ弱いデブロッキングフィルタを適用する工程であって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたブロックに適用されるフィルタと異なる、工程と
を有することを特徴とする方法が提供される。
本明細書のさらなる他の側面によれば、映像データのサンプルのブロックのエッジをデブロックする装置であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号し、該映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する復号モジュールと、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する決定モジュールと、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿ってデータの前記ブロックへ弱いデブロッキングフィルタを適用する適用モジュールであって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたブロックに適用されるフィルタと異なる、適用モジュールと
を備えることを特徴とする装置が提供される。
本明細書のさらなる他の側面によれば、映像データのサンプルのブロックのエッジをデブロックするシステムであって、
データ及びコンピュータプログラムを記憶するメモリと、
前記コンピュータプログラムを実行する前記メモリに結合されたプロセッサと
を備え、
前記コンピュータプログラムは、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号する工程と、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する工程と、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する工程と、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿ってデータの前記ブロックへ弱いデブロッキングフィルタを適用する工程であって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたブロックに適用されるフィルタと異なる、工程と
を実行するための命令を備えることを特徴とするシステムが提供される。
本明細書のさらなる他の側面によれば、映像データのサンプルのブロックのエッジをデブロックするためのコンピュータプログラムを有するコンピュータ可読媒体であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号するコードと、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号するコードと、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定するコードと、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿ってデータの前記ブロックへ弱いデブロッキングフィルタを適用するコードであって、該弱いデブロッキングフィルタは、隣接して位置づけられた2つのイントラ予測モードブロックを有すると決定されたブロックに適用されるフィルタと異なる、コードと
を備えたコンピュータプログラムを当該媒体上に記憶したコンピュータ可読媒体が提供される。
本明細書のさらなる他の側面によれば、デブロックする方法であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号する工程と、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する工程と、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する工程と、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿って前記プライマリカラーチャネルデータにのみデブロッキングフィルタを適用する工程と
を有することを特徴とする方法が提供される。
本明細書のさらなる他の側面によれば、デブロックする装置であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号し、該映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する復号モジュールと、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する決定モジュールと、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿って前記プライマリカラーチャネルデータにのみデブロッキングフィルタを適用するデブロッキングフィルタモジュールと
を備えることを特徴とする装置が提供される。
本明細書のさらなる他の側面によれば、デブロックするシステムであって、
データ及びコンピュータプログラムを記憶するメモリと、
前記コンピュータプログラムを実行する前記メモリに結合されたプロセッサと
を備え、
前記コンピュータプログラムは、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号する工程と、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号する工程と、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定する工程と、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿って前記プライマリカラーチャネルデータにのみデブロッキングフィルタを適用する工程と
を実行するための命令を備えることを特徴とするシステムが提供される。
本明細書のさらなる他の側面によれば、デブロックする方法を実行するためのコンピュータプログラムを有するコンピュータ可読媒体であって、
映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを復号するコードと、
前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを復号するコードと、
前記映像データの前記第1のブロックと前記映像データの前記第2のブロックとの間の境界に対応するエッジに沿ってサンプルのブロックに対する境界強度値を決定するコードと、
前記第1の予測モードがイントラ予測であり、前記第2の予測モードがイントラブロックコピー予測であることを前記決定された境界強度値が示す場合、前記エッジに沿って前記プライマリカラーチャネルデータにのみデブロッキングフィルタを適用するコードと
を備えたコンピュータプログラムを当該媒体上に記憶したコンピュータ可読媒体が提供される。
他の側面もまた開示される。
(図面の簡単な説明)
以下、次の図面及び付録を参照して、本発明の少なくとも1つの実施形態を説明する。
図1は、映像符号化・復号システムを示す概略ブロック図である。 図2A及び図2Bは、図1の映像符号化・復号システムの1つ又は両方が実施されてもよい、汎用コンピュータシステムの概略ブロック図を形成する。 図3は、映像符号化部の機能モジュールを示す概略ブロック図である。 図4は、映像復号部の機能モジュールを示す概略ブロック図である。 図5Aは、符号化木ブロック(CTB:coding tree block)内で符号化ブロック(CB:coding block)を「Z−スキャン」の順にスキャンする例を示す概略ブロック図である。 図5Bは、イントラブロックコピー動作の例を示す概略ブロック図である。 図6は、再構成されたサンプルの領域を有するフレームの例を示す概略ブロック図である。 図7は、フレームの一部における水平及び垂直のエッジの例を示す概略ブロック図である。 図8は、各エッジのいずれかのサイドにおける予測ユニット(PU:prediction unit)の予測モードに起因するエッジの種類の例を示す概略ブロック図である。 図9は、異なるカラーチャネルに対するフィルタ強度設定と境界強度値を示すテーブルである。 図10Aは、エッジの各サイドの予測ユニット(PU)の予測モードに従いエッジに対して境界強度を設定する規則を示すテーブルである。 図10Bは、エッジの各サイドの予測ユニット(PU)の予測モードに従いエッジに対して境界強度を設定する規則を示すテーブルである。 図10Cは、エッジの各サイドの予測ユニット(PU)の予測モードに従いエッジに対して境界強度を設定する規則を示すテーブルである。 図11は、デブロッキングフィルタに対して境界強度を設定する方法を示す概略フロー図である。 図12は、デブロッキングフィルタに対して境界強度を設定する方法を示す概略フロー図である。 図13は、映像データのブロックのイントラブロックコピー及びデブロックの方法を示す概略フロー図である。
付録1及び付録2は、本明細書に開示された修正及び変形に従い修正されたHEVC標準に係る構文テーブルを提供する。
(ベストモードを含む詳細な説明)
任意の1つ以上の添付図面において、同一の参照符号を有するステップ及び/又は特徴が参照される場合、反対の意図が示されない限り、これらのステップ及び/又は特徴は、この説明の目的に対して、同一の機能ないし動作を有する。
量子化プロセスに起因するアーチファクト(悪影響)を減少させるために、「デブロック」フィルタが、映像データのブロック間の滑らかな境界に適用されてもよい。映像データの隣接ブロック間の相違を平滑化することは、復号された映像データの知覚される(すなわち、主観的な)品質を大幅に改善することができる。映像データの隣接ブロック間の相違を平滑化することはまた、復号された映像データの客観的な品質の基準である、ピーク信号対雑音比(PSNR:peak signal to noise ratio)をも改善することができる。
図1は、映像符号化・復号システム100の機能モジュールを示す概略ブロック図である。システム100は、「スクリーンコンテンツ」のプレゼンスにおける主観的及び客観的な映像品質を改善するデブロックの方法を利用してもよい。スクリーンコンテンツは、連続トーンコンテンツほど強くフィルタリングされるべきでない高周波数情報を含むコンテンツである。
システム100は、送信元装置110及び宛先装置130を含む。通信チャネル120は、送信元装置110から宛先装置130へ符号化映像情報を通信するために使用される。ある構成において、送信元装置110及び宛先装置130はそれぞれ携帯電話ハンドセットを備えてもよく、そのような場合、通信チャネル120は無線チャネルである。他の構成において、送信元装置110及び宛先装置130はビデオ会議機器を備えてもよく、そのような場合、通信チャネル120は典型的にはインターネット接続等の有線チャネルである。さらに、送信元装置110及び宛先装置130は、無線テレビ放送、ケーブルテレビアプリケーション、インターネットビデオアプリケーション、及び、符号化映像データがあるストレージ媒体又はファイルサーバにおいてキャプチャされるアプリケーションにわたって支援する装置を含む、任意の広範囲の装置を備えてもよい。
図1に示すように、送信元装置110は、映像ソース112、映像符号化部114、及び、送信部116を含む。映像ソース112は典型的には、撮像センサ、一時的でない記録媒体に記憶された以前キャプチャされた映像シーケンス、あるいは、遠隔撮像センサからの映像フィード等のキャプチャ映像フレームデータのソースを備える。映像ソース112はまた、例えば、オペレーティングシステムや様々なコンピュータアプリケーションの映像出力を表示するコンピュータグラフィックカードの出力としてもよい。そのようなコンテンツは「スクリーンコンテンツ」の例である。撮像センサを映像ソース112として含んでもよい送信元装置110の例には、スマートフォン、ビデオカムコーダ、及び、ネットワークビデオカメラが含まれてもよい。映像符号化部114は、映像ソース112からのキャプチャフレームデータを符号化映像データに変換するところ、これについては図3を参照してさらに説明する。符号化映像データは典型的には、符号化ビットストリームであり、送信部116により通信チャネル120を介して符号化映像データ(又は「符号化映像情報」)として送信される。符号化映像データはまた、後に通信チャネル120を介して送信されるまでか、あるいは、通信チャネル120を介して送信することに代えて、「フラッシュ」メモリ又はハードディスクドライブ等の一時的でないストレージ装置122に記憶することもできる。
宛先装置130は、受信部132、映像復号部134、及び、ディスプレイ装置136を含む。受信部132は、通信チャネル120から符号化映像データを受信し、受信した映像データを映像復号部134へ受け渡す。次に、映像復号部134は復号されたフレームデータをディスプレイ装置136へ出力する。ディスプレイ装置136の例には、スマートフォン、タブレットコンピュータ、コンピュータモニタ、あるいは、スタンドアロン型のテレビセット等における、陰極線管や液晶ディスプレイが含まれる。また、送信元装置110及び宛先装置130の各々の機能性は、単一の装置に実施することもできる。
上述の装置の例にもかかわらず、送信元装置110及び宛先装置130の各々は、典型的にはハードウェア及びソフトウェアのコンポーネントの組み合わせを介して、汎用コンピュータシステム内に構成されてもよい。図2Aは、コンピュータモジュール201と、キーボード202、マウスポインタ装置203、スキャナ226、映像ソース112として構成されてもよいカメラ227、及び、マイク280等の入力装置と、プリンタ215、ディスプレイ装置136として構成されてもよいディスプレイ装置214、及び、スピーカ217を含む出力装置とを包含するコンピュータシステム200等を示している。外部の変調復調器(モデム)送受信装置216は、接続221を介して通信ネットワーク220へ、又は、通信ネットワーク220から通信するために、コンピュータモジュール201により使用されてもよい。通信チャネル120を示してもよい通信ネットワーク220は、インターネット、セルラ電気通信網、あるいは、プライベートWAN等の、ワイドエリアネットワーク(WAN)としてもよい。接続221が電話線の場合、モデム216は従来の「ダイアルアップ」モデムとしてもよい。あるいは、接続221が大容量(例えば、ケーブル)の接続である場合、モデム216はブロードバンドモデムとしてもよい。また、通信ネットワーク220への無線接続のために、無線モデムが使用されてもよい。送受信装置216は送信部116と受信部132の機能性を提供してもよく、通信チャネル120は接続221において実施されてもよい。
コンピュータモジュール201は典型的には、少なくとも1つのプロセッサユニット205及びメモリユニット206を含む。例えば、メモリユニット206は、半導体ランダムアクセスメモリ(RAM)及び半導体リードオンリーメモリ(ROM)を有してもよい。コンピュータモジュール201はまた、映像ディスプレイ214、スピーカ217、及び、マイク280に結合する音声・映像インタフェース207と、キーボード202、マウス203、スキャナ226、カメラ227、及び、オプションでジョイスティック又は他のヒューマンインタフェース装置(不図示)に結合するに入出力(I/O)インタフェース213と、外部モデム216及びプリンタ215に対するインタフェース208とを含む、多数のI/Oインタフェースを含む。音声・映像インタフェース207からコンピュータモニタ214への信号は、一般にコンピュータグラフィックカードの出力であり、「スクリーンコンテンツ」の例を提供する。ある実装において、モデム216は、コンピュータモジュール201内の、例えばインタフェース208内に組み込んでもよい。コンピュータモジュール201はまた、ローカルエリアネットワーク(LAN)として知られるローカルエリアの通信ネットワーク222へ接続223を介してコンピュータシステム200を結合できるようにする、ローカルネットワークインタフェース211をも有している。図2Aに示すように、ローカル通信ネットワーク222はまた、接続224を介してワイドネットワーク220にも結合してよく、接続224は典型的には、いわゆる「ファイアウォール」装置又は同様の機能の装置を含んでいるだろう。ローカルネットワークインタフェース211は、イーサネット(商標)回路カード、Bluetooth(商標)無線構成、あるいは、IEEE802.11無線構成を備えてもよいが、多数の他の種類のインタフェースがインタフェース211に対して実施されてもよい。ローカルネットワークインタフェース211はまた送信部116と受信部132の機能性をも提供してもよく、通信チャネル120はまたローカル通信ネットワーク222においても実施されてもよい。
I/Oインタフェース208及び213は、シリアル接続及びパラレル接続のいずれか又は両方を提供してもよく、前者は典型的にはユニバーサルシリアルバス(USB)標準に従い実装され、対応するUSBコネクタ(不図示)を有する。ストレージ装置209が提供され、典型的にはハードディスクドライブ(HDD)210を含む。また、フロッピーディスクドライブや磁気テープドライブ(不図示)等の他のストレージ装置が使用されてもよい。光学ディスクドライブ212は、典型的にはデータの不揮発性ソースとして作用するために提供される。例えば、光学ディスク(例えば、CD−ROM、DVD、ブルーレイディスク(商標))、USB−RAM、ポータブルな外部ハードドライブ、及び、フロッピーディスク等のポータブルメモリ装置は、コンピュータシステム200への適切なデータソースとして使用されてもよい。典型的には、HDD210、光学ドライブ212、ネットワーク220及び222のいずれかは、映像ソース112、又は、ディスプレイ214を介して再生するために記憶される復号された映像データの宛先として動作するように構成されてもよい。システム100の送信元装置110及び宛先装置130、あるいは、システム100の送信元装置110及び宛先装置130は、コンピュータシステム200に実施されてもよい。
コンピュータモジュール201のコンポーネント205〜213は、典型的には、相互接続されたバス204を介して、関連技術において知られている、コンピュータシステム200の動作の従来のモードをもたらすような態様で通信する。例えば、プロセッサ205は、接続218を使用してシステムバス204へ結合される。同様に、メモリ206及び光学ディスクドライブ212は、接続219によりシステムバス204へ結合される。前述の構成を実施することが可能なコンピュータの例には、IBM−PC及び互換機、Sun SPARCステーション、Apple Mac(商標)、あるいは、類似のコンピュータシステムが含まれる。
適切または望まれる場合、映像符号化部114及び映像復号部134、並びに、後述する方法は、コンピュータシステム200を使用して実装してもよく、映像符号化部114、映像復号部134、及び、説明する方法は、コンピュータシステム200内で実行可能な1つ以上のソフトウェアアプリケーションプログラム233として実装されてもよい。特に、映像符号化部114、映像復号部134、及び、説明する方法のステップは、コンピュータシステム200内で実行されるソフトウェア233において命令231(図2B参照)によりもたらされる。ソフトウェア命令231は、1つ以上の特定のタスクをそれぞれ実行する、1つ以上のコードモジュールとして形成されてもよい。また、ソフトウェアは2つの別の部分に分けてもよく、第1の部分と対応するコードモジュールは説明する方法を実行し、第2の部分と対応するコードモジュールは第1の部分とユーザとの間のユーザインタフェースを管理する。
ソフトウェアは、例えば、後述するストレージ装置を含むコンピュータ可読媒体に記憶されてもよい。ソフトウェアはコンピュータ可読媒体からコンピュータシステム200へロードされ、次に、コンピュータシステム200により実行される。コンピュータ可読媒体に記録されたそのようなソフトウェア又はコンピュータプログラムを有するコンピュータ可読媒体は、コンピュータプログラム製品である。コンピュータシステム200におけるコンピュータプログラム製品の使用は、好適には、映像符号化部114、映像復号部134、及び、説明する方法を実装するための有利な装置をもたらす。
ソフトウェア233は、典型的には、HDD210又はメモリ206に記憶される。ソフトウェアはコンピュータ可読媒体からコンピュータシステム200へロードされ、コンピュータシステム200により実行される。したがって、例えば、ソフトウェア233は、光学ディスクドライブ212により読み出される光学的に可読なディスクストレージ媒体(たとえば、CD−ROM)225上に記憶されてもよい。
いくつかの例において、アプリケーションプログラム233は、1つ以上のCD−ROM225上でのユーザ符号化に供給され、対応するドライブ212を介して読み出されてもよいし、あるいは、ネットワーク220又は222からユーザにより読み出されてもよい。さらにまた、ソフトウェアは、他のコンピュータ可読媒体からコンピュータシステム200へロードされることもできる。コンピュータ可読ストレージ媒体とは、記録された命令及びデータの少なくともいずれかを、実行及び処理の少なくともいずれかのために、コンピュータシステム200へ提供する任意の一時的でない有形のストレージ媒体をいう。そのようなストレージ媒体の例には、コンピュータモジュール201の内部又は外部の装置であるかに関わりなく、フロッピーディスク、磁気テープ、CD−ROM、DVD、ブルーレイディスク(商標)、ハードディスクドライブ、ROM若しくは集積回路、USBメモリ、光磁気ディスク、又は、PCMCIAカード等のコンピュータ可読カード、その他が含まれる。ソフトウェア、アプリケーションプログラム、命令、及び、映像データ若しくは符号化映像データの少なくともいずれかをコンピュータモジュール401に提供することにも関わってもよい、一時的若しくは有形でないコンピュータ可読伝送媒体の例には、無線若しくは赤外線伝送チャネル、他のコンピュータ若しくはネットワーク装置へのネットワーク接続、及び、電子メール伝送及びウェブサイト上に記録された情報を含むインターネット若しくはイントラネット、その他が含まれる。
前述のアプリケーションプログラム233の第2の部分と対応するコードモジュールは、ディスプレイ214上でレンダリング、さもなければ示される、1つ以上のグラフィカルユーザインタフェース(GUI)を実装するために実行されてもよい。典型的には、キーボード202及びマウス203の操作により、コンピュータシステム200及びアプリケーションのユーザは、GUIと関連付けられたアプリケーションへのコマンド及び入力の少なくともいずれかの制御を提供するために、機能的に適応性のある態様でインタフェースを操作してもよい。スピーカ217を介した会話プロンプト出力、及び、マイク280を介したユーザ音声コマンドを利用した音声インタフェース等の、他の形態の機能的に適応性のあるユーザインタフェースもまた実装されてもよい。
図2Bは、プロセッサ205及び「メモリ」234の詳細な概略ブロック図である。メモリ234は、図2Aにおいてコンピュータモジュール201によりアクセスすることが可能な全てのメモリモジュール(HDD209及び半導体メモリ206を含む)の論理的な集合体を示している。
はじめにコンピュータモジュール201に電源が投入されると、パワーオン・セルフテスト(POST)プログラム250が実行される。POSTプログラム250は、典型的には、図2Aの半導体メモリ206のROM249に記憶される。ソフトウェアを記憶するROM249等のハードウェア装置は、ファームウェアと呼ばれることがある。POSTプログラム250は、正しい機能性を確保するためにコンピュータモジュール201内のハードウェアを検査し、典型的には、プロセッサ205、メモリ234(209、206)、及び、ベーシックインプットアウトプットシステム(BIOS)ソフトウェアモジュール251をチェックするところ、BIOSソフトウェアモジュール251は典型的には正しい動作のためにROM249内にも記憶される。POSTプログラム250の作動が一度成功すると、BIOS251は図2Aのハードディスクドライブ210を稼働させる。ハードディスクドライブ210の稼働は、ハードディスクドライブ210に常駐するブートストラップローダプログラム252がプロセッサ205を介して実行することをもたらす。これによりオペレーティングシステム253がRAMメモリ206内にロードされ、オペレーティングシステム253はこれに基づいて動作を開始する。オペレーティングシステム253は、プロセッサ205により実行可能なシステムレベルアプリケーションであり、プロセッサ管理、メモリ管理、装置管理、記憶管理、ソフトウェアアプリケーションインタフェース、及び、一般ユーザインタフェースを含む、様々な高レベルの機能を実現する。
オペレーティングシステム253は、コンピュータモジュール201上で作動している各プロセス又はアプリケーションが、他のプロセスに割り当てられたメモリと衝突することなく実行するために十分なメモリを有することを確保するために、メモリ234(209、206)を管理する。さらに、各プロセスが効果的に作動することができるように、図2Aのコンピュータシステム200において利用可能な異なる種類のメモリは正しく使用されなければならない。したがって、集約されたメモリ234は、(そうでないことを言及しない限り)メモリの特定のセグメントがどのように割り当てられるかを示すことが意図されているのではなく、コンピュータシステム200によりアクセス可能なメモリの一般的概念と、それがどのように使用されるかを提供することが意図されている。
図2Bに示すように、プロセッサ205は、制御ユニット239、算術論理ユニット(ALU)240、及び、キャッシュメモリと呼ばれることがあるローカル又は内部メモリ248を含む、多数の機能モジュールを含む。キャッシュメモリ248は、典型的には、レジスタセクションにおける多数のストレージレジスタ244〜246を含む。1つ以上の内部バス241は、これらの機能モジュールと機能的に相互接続する。また、プロセッサ205は、典型的には、接続218を使用してシステムバス204を介して外部装置と通信するための1つ以上のインタフェース242をも有している。メモリ234は、接続219を使用してバス204へ結合される。
アプリケーションプログラム233は、条件分岐及びループ命令を含んでもよい、命令231のシーケンスを含む。プログラム233はまた、プログラム233の実行において使用されるデータ232を含んでもよい。命令231及びデータ232は、メモリ位置228、229、230、及び、235、236、237にそれぞれ記憶される。命令231の相対的なサイズ及びメモリ位置228〜230に応じて、メモリ位置230に示す命令により図示されているように、特定の命令が単一のメモリ位置に記憶されてもよい。あるいは、メモリ位置228及び229に示す命令セグメントにより図示されているように、命令は別のメモリ位置にそれぞれ記憶される複数の部分に分割されてもよい。
一般に、プロセッサ205は、その中で実行される命令の集合が与えられる。プロセッサ205は、他の命令の集合を実行してプロセッサ205が反応する、それに続く入力を待機する。各入力は、いずれも図2Aに図示されている、入力装置202、203の1つ以上により生成されたデータ、ネットワーク220、202の1つをまたがり外部ソースから受信されたデータ、ストレージ装置206、209の1つから取得されたデータ、あるいは、対応するリーダ212に挿入されたストレージ媒体225から取得されたデータを含む、多数のソースの1つ以上から提供されてもよい。命令の集合の実行は、ある場合は、データの出力をもたらす。また、実行は、メモリ234へのデータまたは変数の記憶を伴ってもよい。
映像符号化部114、映像復号部134、及び、説明する方法は、対応するメモリ位置255、256、257におけるメモリ234に記憶された、入力変数254を使用してもよい。映像符号化部114、映像復号部134、及び、説明する方法は、対応するメモリ位置262、263、264におけるメモリ234に記憶される、出力変数261を生成してもよい。中間変数258は、メモリ位置259、260、266、及び、267に記憶されてもよい。
図2Bのプロセッサ205を参照すると、レジスタ244、245、246、算術論理ユニット(ALU)240、及び、制御ユニット239は、プログラム233を構成する命令集合におけるあらゆる命令に対して、「フェッチ、復号、及び、実行」のサイクルを実行するのに必要なマイクロ動作のシーケンスを実行するように協働する。各フェッチ、復号、及び、実行のサイクルは、以下を備える。:
(a)メモリ位置228、229、230から命令231をフェッチ又は読み出す、フェッチ動作。
(b)どの命令がフェッチされたかを制御ユニット239が決定する復号動作。
(c)制御ユニット239及びALU240の少なくともいずれかが命令を実行する実行動作。
その後、次の命令に対するさらなるフェッチ、復号、及び、実行のサイクルが実行されてもよい。同様に、制御ユニット239がメモリ位置232に値を記憶し又は書き込む、記憶サイクルが実行されてもよい。
後述する図11、図12、及び、図13の方法における各ステップ又はサブプロセスは、プログラム233の1つ以上のセグメントと関連付けられ、典型的には、プロセッサ205内のレジスタセクション244、245、247、ALU240、及び、制御ユニット239により協働して実行されて、プログラム233の言及されたセグメントに対する命令集合におけるあらゆる命令に対して、フェッチ、復号、及び、実行のサイクルを実行する。
図3は、映像符号化部114の機能モジュールを示す概略ブロック図である。図4は、映像復号部134の機能モジュールを示す概略ブロック図である。一般に、データは、ブロック又はアレイ(例えば、サンプルのブロック又は変換係数のブロック)における映像符号化部114及び映像復号部134内の機能モジュール間で受け渡される。個々のアレイ要素(例えば、サンプル又は変換係数)の挙動を参照して機能モジュールを説明する場合、挙動は全てのアレイ要素に適用されるものと理解すべきである。映像符号化部114及び映像復号部134は、図2A及び図2Bに示すように、汎用コンピュータシステム200を使用して実装されてもよい。ここでは、様々な機能モジュールは、コンピュータシステム200内の専用ハードウェアにより実装されるか、ハードディスクドライブ205に常駐するソフトウェアアプリケーションプログラム233の1つ以上のソフトウェアコードモジュールのようなコンピュータシステム200内で実行可能であり、その実行においてプロセッサ205により制御されるソフトウェアにより実装されるか、あるいは、コンピュータシステム200内の専用ハードウェア及び実行可能なソフトウェアの組み合わせにより実装されてもよい。あるいは、映像符号化部114、映像復号部134、及び、説明する方法は、説明する方法の機能又はサブ機能を実行する1つ以上の集積回路等の、専用ハードウェアに実装されてもよい。そのような専用ハードウェアには、グラフィックプロセッサ、デジタルシグナルプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、あるいは、1つ以上のマイクロプロセッサ及び関連メモリが含まれてもよい。特に、映像符号化部114はモジュール320〜350を備え、映像復号部134はモジュール420〜440を備え、これらのモジュールは、ソフトウェアアプリケーションプログラム233の1つ以上のソフトウェアコードモジュールとしてそれぞれ実装されてもよい。
図3の映像符号化部114は高効率映像符号化(HEVC)映像符号化パイプラインの一例であるが、他の映像コーデックもまた本明細書に記載の処理ステージを実行するために使用されてもよい。映像符号化部114は、一連のフレーム等の、各フレームが1つ以上のカラーチャネルを含む、キャプチャフレームデータを受信する。
映像符号化部114は、フレームデータ310等のキャプチャされたフレームデータの各フレームを、サイドのサイズが2のべき乗である、「符号化木ユニット」(CTU)と一般に呼ばれる矩形領域に分割する。フレームデータ310における符号化木ユニット(CTU)は、一般に、ラスタスキャンの順にスキャンされる。各符号化木ユニット(CTU)は、各符号化木ユニット(CTU)が各カラーチャネルに対して1つの符号化木ブロック(CTB)を含むように、現在のフレームにより表される画像の全てのカラーチャネルと関連付けられる。例えば、YCbCr色空間を使用して符号化されたフレームにおいて、符号化木ユニット(CTU)は、フレームにより表される画像における同一の空間位置に対応するY、Cb、及び、Cr色平面に対する3つの符号化木ブロック(CTB)からなる。個別の符号化木ブロック(CTB)のサイズは、色成分にまたがって変化し、一般に、使用される色成分スケーリングモード又は「クロマフォーマット」に依存する。例えば、全ての色成分が同一のサイズを有する、「4:4:4」クロマフォーマットとして一般に知られているモードにおいては、符号化木ブロック(CTB)のサイズは同一となる。クロマ成分が水平及び垂直の両方に2の因数で削減される、「4:2:0」クロマフォーマットとして一般に知られているモードにおいては、クロマ符号化木ブロック(CTB)のサイズは、輝度符号化木ブロック(CTB)のサイズの(水平及び垂直の両方に)2倍小さくなる。符号化木ユニット(CTU)のサイズが特定された場合、そのサイズは、通常、輝度符号化木ブロック(CTB)のサイズを指す。クロマ符号化木ブロック(CTB)のサイズは、符号化木ユニット(CTU)のサイズ、及び、色成分スケーリングモードから推論されてもよい。
各符号化木ユニット(CTU)は、階層的な四分木の下位区分の各葉ノードに1つの符号化ユニット(CU)が存在するように、「符号化ユニット」(CU)の集まりとともに、フレームの一部の階層的な四分木の下位区分を含む。各符号化ユニット(CU)は、各カラーチャネルに対する、サンプルの2次元アレイ、又は、「サンプルのブロック」を含む。再区分は、葉ノードに存在する符号化ユニット(CU)が特定の最小サイズに到達するまで続けることができる。特定の最小サイズは、最小符号化ユニット(SCU)サイズと呼ばれる。一般に、最小符号化ユニット(SCU)サイズは8×8であるが、16×16あるいは32×32等の、他のサイズも可能である。符号化ユニット(CU)のサイズは、輝度サンプルのユニットにおいて特定される。したがって、輝度チャネルに対する対応する符号化ブロック(CB)は符号化ユニット(CU)と同一の次元を有することになる。クロマチャネルに対する対応する符号化ブロック(CB)はクロマサブサンプリングサイズに従い変倍された次元を有する。符号化木ユニット(CTU)の再区分が行われず、単一の符号化ユニット(CU)が符号化木ユニット(CTU)の全体を占める場合、そのような符号化ユニット(CU)は最大符号化ユニット(LCU:largest coding unit)(又は、最大符号化ユニットサイズ)と呼ばれる。一般に、最大符号化ユニット(LCU)のサイズは64×64である。しかし、32×32や16×16等の、他の最大符号化ユニット(LCU)のサイズも可能である。最大符号化ユニット(LCU)の次元もまた、輝度サンプルのユニットにおいて特定される。四分木の階層化の結果として、符号化木ユニット(CTU)の全体は1つ以上の符号化ユニット(CU)により占められる。最大符号化ユニットサイズは、符号化映像シーケンスとして知られるフレームの集まりに対するビットストリームにおいて伝達される。特定のフレームに対して、最大符号化ユニット(LCU)サイズ及び最小符号化ユニット(SCU)サイズは変化しない。
映像符号化部114は、各符号化ブロック(CU)に対して1つ以上の予測ユニット(PU)を生成する。各符号化ユニット(CU)においては様々な構成の予測ユニット(PU)が可能であり、符号化ユニット(CU)における予測ユニット(PU)の各構成は「分割(パーティション)モード」と呼ばれる。映像符号化部114により生成された各符号化ブロック(CU)に対する予測ユニット(PU)は重なり合わない。さらに、フレームの符号化木ユニット(CTU)の各々に対応する、フレームの領域を予測ユニット(PU)がカバーするように、符号化ユニットの全体は、符号化ユニット(CU)に対する映像符号化部114により生成された1つ以上の予測ユニット(PU)により占められる。符号化ユニット(CU)を予測ユニット(PU)に区分することは、各色成分に対する符号化ブロック(CB)を「予測ブロック(PB)」に再区分することをもたらす。再区分に使用される色成分のスケーリングモードに応じて、異なる色成分に対する同一の符号化ユニット(CU)に対応する予測ブロック(PB)のサイズは、サイズにおいて異なる。
映像符号化部114は、多重化モジュール340から予測ユニット(PU)382を出力する。差分モジュール344は、「残差サンプルアレイ」360を生成する。残差サンプルアレイ360は、予測ユニット(PU)382と、フレームデータ310の符号化木ブロック(CTB)の符号化ユニット(CU)からのデータサンプルの対応する2次元アレイとの間の差分である。予測ユニット(PU)382と対応する2次元アレイとの間の差分は、アレイの各位置における対応するサンプルに対して計算される。予測ユニット(PU)382と対応する2次元アレイとの間の差分は正又は負となってもよいため、1つの差分サンプルのダイナミックレンジはビット深度に1ビットを加えたものである。
残差サンプルアレイ360は、変換モジュール320において周波数領域へ変換されてもよい。差分モジュール344からの残差サンプルアレイ360は変換モジュール320により受信され、変換モジュール320は、「順変換(forward transform)」を適用することにより、残差サンプルアレイ360を空間表現から周波数領域表現へ変換する。変換モジュール320は、特定の精度を有する変換に従い、変換係数を生成する。符号化ユニット(CU)は、1つ以上の変換ユニット(TU)に再分割される。再分割された符号化ユニット(CU)は、「残差四分木」又は「残差四分木(RQT)」と呼ばれてもよい。変換ユニット(TU)は、フレームの全ての色成分とまとめて関連付けられる。各変換ユニット(TU)は、各カラーチャネルに対する個別の変換ブロック(TB)を含む。ピクチャ変換ブロック(TB)に適用される色成分スケーリングモードに応じて、クロマチャネルは、色成分のスケーリングによって、対応する輝度変換ブロック(TB)よりもサイズが小さくてもよい。変換ブロック(TB)、予測ブロック(PB)、及び、符号化ブロック(CB)はそれぞれ「ブロック」又は「サンプルのブロック」と呼ばれてもよく、ブロックの種類は「ブロック」の用語が使用されている文脈から理解されるべきである。2つのブロックの間に他のブロックが位置していない場合、その2つのブロックは互いに「隣接し」、あるいは、「隣接して位置している」と考えられる。2つのブロックは異なるサイズを有して、かつ、なお隣接している(あるいは、「隣接して位置している」)と考えられてもよい。
量子化制御モジュール346は、「レートゆがみ基準」に係る様々な可能な量子化パラメータ値に対する符号化ビットストリーム312において要求されるビットレートをテストしてもよい。レートゆがみ基準は、符号化ビットストリーム312又はその局所領域のビットレートと、ゆがみとの間の許容しうるトレードオフの評価尺度である。ゆがみは、フレームバッファ332に存在するフレームと、キャプチャされたフレームデータ310との間の差分の評価尺度である。ゆがみは、ピーク信号対雑音比(PSNR)あるいは差分絶対値和(SAD:sum of absolute differences)基準を使用して決定されてもよい。映像符号化部114のある構成においては、レートゆがみ基準は輝度カラーチャネルに対するレート及びゆがみを考慮するため、符号化の決定は輝度チャネルの特性に基づいて行われる。一般に、残差四分木(RQT)は輝度及びクロマカラーチャネルの間で共有され、クロマ情報の量は輝度と比べて相対的に小さいため、輝度のみがレートゆがみ基準において考慮されてもよい。
量子化パラメータ384は、量子化制御モジュール346から出力される。量子化パラメータは映像データのフレームに対して固定されてもよいし、あるいは、フレームが符号化される際に、ブロックごとに基づき変化してもよい。また、量子化パラメータ384を制御する他の方法が使用されてもよい。残差四分木に対する可能な変換ユニット(TU)の集合は、利用可能な変換サイズ及び符号化ユニット(CU)のサイズに依存する。より大きなサイズの変換ユニット(TU)は、輝度とクロマの両方のカラーチャネルに対するより大きな変換の使用をもたらす。一般に、より大きな変換は、残差サンプルアレイのよりコンパクトな表現に、残差サンプルアレイにまたがって広がるサンプルデータ(あるいは「残差エネルギー」)を提供する。より小さな変換ユニット(TU)は、残差サンプルアレイのよりコンパクトな表現に、残差サンプルアレイの特定の領域にローカライズされた残差エネルギーを提供する。残差四分木(RQT)の多くの可能な構成は、高効率映像符号化(HEVC)標準において残差サンプルアレイ360の高い符号化効率を実現するために使用されてもよい。
予測モードセレクタモジュール348は、現在の予測ユニット(PU)に対する予測モード386を選択する。
変換モジュール320と量子化モジュール322がバイパスされる、「変換量子化バイパス」モードが提供される。変換量子化バイパスモードは、「cu_transquant_bypass_flag」構文要素を使用して、符号化ユニット(CU)レベルにおいて伝達される。変換量子化バイパスモードは、符号化ビットストリーム312においてフレームデータ310を可逆的に符号化するために使用されてもよい。変換量子化バイパスモードの使用は制御ユニット(CU)レベルで制御され、これによりフレームデータ310の部分を可逆的に符号化することが可能となる。変換量子化バイパスモードの可用性は「高レベル構文」を介して制御され、これによりフレームデータ310のどの部分においても可逆的符号化が要求されない場合に、変換量子化バイパスモードを制御する信号伝達のオーバーヘッドを除去することが可能となる。高レベル構文は、一般にまれに符号化される符号化ビットストリーム312の部分を参照する。高レベル構文はビットストリーム312の特性を記述するため(例えば、映像符号化部114及び映像復号部134において使用される特定の符号化ツールを制限、さもなければ構成するために)に使用される。高レベル構文の例には、「シーケンスパラメータセット」、「ピクチャパラメータセット」、及び、「スライスヘッダ」が含まれる。
高効率映像符号化(HEVC)標準に対して、残差サンプルアレイ360の周波数領域表現への変換は、修正された離散コサイン変換(DCT)等の変換を使用して実装される。このような変換において、修正により、乗算のかわりにシフト及び加算を使用して実装することが可能となる。修正は、従来の離散コサイン変換(DCT)と比べて実装の複雑さを軽減することができる。修正された離散コサイン変換(DCT)に加えて、修正された離散サイン変換(DST)もまた特定の状況において使用されてもよい。様々なサイズの残差サンプルアレイ360及び変倍された変換係数362が、サポートされている変換サイズに従い可能である。高効率映像符号化(HEVC)標準において、32×32、16×16、8×8、4×4等のサイズを有する、データサンプルの2次元(2D)のアレイにおいて変換が実行される。したがって、変換サイズの所定の集合が映像符号化部114に利用可能である。さらに、変換サイズの集合は、輝度チャネルとクロマチャネルとの間で異なってもよい。
変換は輝度チャネルとクロマチャネルの両方に適用されてもよい。変換ユニット(TU)との関係で、輝度チャネルとクロマチャネルの取り扱いの間で差違が存在する。各残差四分木は1つの符号化ユニット(CU)を占め、符号化ユニットの、残差四分木階層の各葉ノードにおいて1つの変換ユニットを含む階層への四分木分解として規定される。各変換ユニット(TU)は、サポートされている変換サイズの1つに対応する次元を有する。残差四分木階層の各レベルにおいて、「符号化ブロックフラグ値」は各カラーチャネルにおける変換の可能なプレゼンスを信号伝達する。信号伝達は、(さらなる分割が存在しない場合)現在の階層レベルにおける変換が存在すること、または、低位の階層レベルは結果として生じた変換ユニット(TU)の間で少なくとも1つの変換を含んでもよいことを示してもよい。符号化ブロックフラグ値がゼロの場合、現在又は低位の階層レベルにおける全ての残差係数はゼロであることが知られる。このような場合、現在の階層レベル又は低位の階層レベルにおけるあらゆる変換ユニット(TU)の対応するカラーチャネルに対して、変換を実行する必要はない。符号化ブロックフラグ値が1の場合、現在の領域がさらに再分割されないときは、その領域は少なくとも1つの非ゼロ(即ち、有意な)残差係数を要する変換を含んでいる。現在の領域がさらに再分割された場合、1つの符号化ブロックフラグ値は、結果として生じた再分割された領域の各々が非ゼロ残差係数を含んでもよいことを示す。このようにして、各カラーチャネルに対して、0以上の変換が、符号化ユニット(CU)の何もないものから全体まで変化する符号化ユニット(CU)の領域の一部をカバーしてもよい。別個の符号化ブロックフラグ値が、各カラーチャネルに対して存在する。可能な符号化ブロックフラグ値が1つしか存在しない場合があるため、符号化ブロックフラグ値の各々は符号化される必要がない。
所与の変換ブロック(TB)に対して、変換が実行されてもよいし、あるいは、変換がスキップされてもよい。このような「変換スキップ」ブロックにおいて、残差係数は空間領域表現を提供する。変換スキップモードは修正された整数離散コサイン変換(DCT)が実現できるものよりも、より圧縮効率の高い高周波数(不連続トーン)情報を実現することができるため、「変換スキップ」モードは一般にスクリーンコンテンツに対して選択される。変換スキップ動作が各変換ブロック(TB)に対して信号伝達されるため、所与の変換ユニット(TU)に対して、変換スキップの信号伝達は各カラーチャネルに対して独立に提供される。
変倍された変換係数362は、変換係数364を生成するために、決定された量子化パラメータ384に従いそのデータサンプル値が変倍及び量子化される量子化モジュール322へ入力される。変換係数364は、残差サンプルアレイ360と同じ次元を有する値のアレイである。変換が適用された場合、変換係数364は、残差サンプルアレイ360の周波数領域表現を提供する。変換がスキップされた場合、変換係数364は、残差サンプルアレイ360の空間領域表現(すなわち、量子化モジュール322により量子化されているが、変換モジュール320により変換されていない)を提供する。離散コサイン変換(DCT)に対して、変換係数364の左上の値は、残差サンプルアレイ360に対する「DC」値を特定し、「DC係数」として知られている。DC係数は残差サンプルアレイ360の値の「平均」の代表である。変換係数364における他の値は、残差サンプルアレイ360に対する「AC係数」を特定する。変倍及び量子化は、決定された量子化パラメータ384の値に応じて、精度の損失をもたらす。決定された量子化パラメータ384の値が高くなるにつれて、残差データからより多くの情報が失われ、再構成されたサンプル370においてより多くのブロッキングアーチファクトが存在する結果となる。符号化すべき情報が少なくなるにつれて、情報の損失は、映像符号化部114により実現される圧縮を増大させる。この圧縮効率の増大は、映像復号部134から出力される視覚品質を低下させて現れる。決定された量子化パラメータ384は、フレームデータ310の各フレームを符号化する間に適応させてもよい。あるいは、決定された量子化パラメータ384は、フレームデータ310の一部に対して修正されてもよい。1つの構成において、決定された量子化パラメータ384は、フレームデータ310の全フレームに対して修正されてもよい。別個の値を使用した異なる残差係数の量子化のような、決定された量子化パラメータ384の他の適応も可能である。
変換係数364及び決定された量子化パラメータ384は、逆量子化モジュール326への入力として取得される。逆量子化モジュール326は、量子化モジュール322により実行される変倍を反転させて、再変倍された変換係数366を生成する。再変倍された変換係数366は、変換係数364の再編倍されたものである。変換係数364、決定された量子化パラメータ384、及び、予測モード386は、エントロピー符号化モジュール324への入力としても取得される。エントロピー符号化モジュール324は、変換係数364の値を符号化ビットストリーム312(又は「映像ビットストリーム」)において符号化する。量子化モジュール322の動作によりもたらされる精度の損失により、再変倍された変換係数366は、変倍された変換係数362における元の値と同一ではない。次に、逆量子化モジュール326からの再変倍された変換係数366は、逆変換モジュール328へ出力される。逆変換モジュール328は、周波数領域から空間領域へ逆変換を行って、再変倍された変換係数366の空間領域表現368を生成する。空間領域表現368は、映像復号部134において生成される空間領域表現と実質的に同一である。次に、空間領域表現368は合算モジュール342へ入力される。
動き推定モジュール338は、フレームデータ310と、一般にメモリ206内に構成されるフレームバッファモジュール332に記憶されたフレームの1つ以上の集合からの以前のフレームデータとを比較することにより、動きベクトル374を生成する。フレームの集合は「参照ピクチャリスト」として知られる。次に、動きベクトル374は動き補償モジュール334へ入力されるところ、動き補償モジュール334は、動きベクトル374から取得された空間オフセットを考慮して、フレームバッファモジュール332に記憶されたデータサンプルをフィルタリングすることによりインター予測された予測ユニット(PU)376を生成する。図3に示されていないが、動きベクトル374は、符号化ビットストリーム312において符号化するエントロピー符号化モジュール324へも受け渡される。動きベクトルは、「動きベクトル差分」、すなわち、現在のブロック及び隣接ブロックに対する動きベクトルの大きさの差分として符号化される。
イントラフレーム予測モジュール336は、合算モジュール342から取得された再構成されたサンプル370を使用してイントラ予測された予測ユニット(PU)378を生成する。特に、イントラフレーム予測モジュール336は、現在の予測ユニット(PU)に対するイントラ予測されたサンプルを生成するために既に復号されている隣接ブロックからのサンプルを使用する。(例えば、フレーム境界において)隣接ブロックが利用可能でない場合、隣接するサンプルは、参照のため「利用可能でない」と考えられる。このような場合、隣接するサンプル値の代わりにデフォルト値が使用される。典型的には、デフォルト値(あるいは「ハーフトーン」)は、ビット深度により暗示される範囲の半分と等しい。例えば、映像符号化部114が8のビット深度に対して構成された場合、デフォルト値は128である。合算モジュール342は多重化モジュール340からの予測ユニット(PU)382と多重化部の空間領域出力382とを合算する。
イントラブロックコピーモジュール350は、イントラブロックコピー予測ユニットと呼んでもよい、予測ユニット(PU)382に対する最適な参照ブロックを生成するために様々なブロックベクトルをテストする。参照ブロックは、現在の符号化木ブロック(CTB)及び/又は以前の符号化木ブロック(CTB)から取得された再構成されたサンプル370、又は、フレームバッファ332からのサンプルからのブロックを含む。多重化部352は、提供されたブロックベクトルに基づいて、再構成されたサンプル370とフレームバッファ332からのサンプルのブロックの間で選択する。参照ブロックは、まだ復号されていない(したがって、再構成されたサンプル370において利用可能でない)現在の符号化木ブロック(CTB)における符号化ブロック(CB)からのサンプルを全く含むことができない。ブロックベクトルは、現在考慮されている予測ユニット(PU)の位置に対する参照ブロックの相対的な位置を特定する2次元ベクトルである。ブロックベクトルは、水平成分(すなわち、「X成分」)と垂直成分(すなわち、「Y成分」)を含む。イントラブロックコピーモジュール350は、入れ子のループを使用して検索を行うことにより、すべての有効なブロックベクトルをテストしてもよい。より高速な検索方法を使用することもできる。イントラブロックコピーモジュール350は、現在の符号化ブロック(CU)に水平又は垂直に揃えられたブロックベクトルに対してのみ検索することにより検索の複雑さを低減してもよく、ほぼ水平及びほぼ垂直のブロックベクトルもまた検索されるようにしてもよい。イントラブロックコピーモジュール350は、ブロックベクトルの空間的にまばらな集合をテストし、次に、まばらなブロックベクトルの最適なものの近傍において絞り込んだ検索を実行して、最終的なブロックベクトルを生成してもよい。
予測ユニット(PU)は、イントラ予測、インター予測、イントラブロックコピー法、あるいは、パレット予測を使用して生成されてもよい。イントラ予測法は、予測ユニット(PU)内の参照データサンプルを生成するために、(典型的には予測ユニットの上及び左に)以前復号された予測ユニット(PU)に隣接するデータサンプルを使用する。様々な方向のイントラ予測が可能である(全部で33個の方向)。さらに、全部で35個の可能なイントラ予測モードに対して、「DCモード」と「平面モード」がサポートされている。インター予測法は、選択された参照フレームからブロックを参照するために、動きベクトルを使用する。動き推定モジュール338及び動き補償モジュール334は、輝度サンプルの4分の1(1/4)の精度を有する動きベクトル374において動作し、フレームデータ310におけるフレーム間の動きの正確なモデリングを可能にする。イントラブロックコピー法は、現在のフレームにおける以前復号されたサンプルからサンプルのブロックを参照するためにブロックベクトルを使用する。ブロックベクトルは整数の画素精度において規定される。
パレット予測は、一連の「実行」動作及び「コピー」動作から取得されたサンプルで予測ユニット(PU)を充たす。実行動作は、パレットにおいて利用可能な色を使用して、ラスタスキャンの順に予測ユニット(PU)を充たす。コピー動作は、予測ユニット(PU)の隣接サンプルから現在のサンプルへ値をコピーすることにより、ラスタスキャンの順に予測ユニット(PU)を充たす。予測ユニット(PU)の全体は、実行とコピーの動作の組み合わせを使用してラスタスキャンの順に充たされる。色のパレットから高い精度で予測ユニット(PU)コンテンツを特定する能力は、スクリーンコンテンツに対してパレット予測モードを大いに有益なものにする。
イントラ予測法、インター予測法、イントラブロックコピー法、又は、パレット予測法のいずれを使用するかの決定は、レート・ゆがみのトレードオフに従い行われる。結果として生じた符号化ビットストリーム312の所望のビットレートと、予測法により取り込まれた画質のゆがみの量との間にはトレードオフがある。イントラ予測が使用される場合、レート・ゆがみのトレードオフにも従い、可能なイントラ予測モードの集合から1つのイントラ予測モードが選択される。多重化モジュール340は、イントラフレーム予測モジュール336からのイントラ予測された参照サンプル378、動き補償ブロック334からのインター予測された予測ユニット(PU)376、イントラブロックコピーモジュール350からのイントラブロックコピーされたサンプル、又は、パレット予測モジュール(図3に図示せず)からのパレット予測されたサンプルのいずれかを選択してもよい。多重化モジュール340は、予測モード386に従い選択を行う。
合算モジュール342は、デブロッキングフィルタモジュール330へ入力される再構成されたサンプル370を生成する。デブロッキングフィルタモジュール330はブロック境界に沿ってフィルタリングを実行し、メモリ206内に構成されたフレームバッファモジュール332へ書き込まれるデブロックされたサンプル372を生成する。フレームバッファモジュール332は、参照ピクチャリストの一部として将来の参照に対する1つ以上の以前のフレームからのデータを保持するための十分な容量を有するバッファである。
エントロピー符号化部324は、コンテキスト適応バイナリ算術符号化(CABAC:context adaptive binary arithmetic coding)アルゴリズムを実行することにより、変換係数364、予測モード386、動きベクトル(あるいは動きベクトル差分)、及び、他のパラメータ(まとめて「構文要素」と呼ぶ)を、符号化ビットストリーム312へ変換する。構文要素は「構文構造」にグループ化される。グループ化は、階層構造を記述するために反復を含んでもよい。イントラ予測モード等の序数値、又は、動きベクトル等の整数値に加えて、構文要素は、四分木分割等を示すフラグもまた含む。
図4の映像復号部134は高効率映像符号化(HEVC)映像復号パイプラインを参照して記載されているが、他の映像コーデックもまたモジュール420〜434の処理ステージに従事してもよい。また、符号化された映像情報は、メモリ206、ハードディスクドライブ210、CD−ROM、ブルーレイディスク(商標)、又は、他のコンピュータ可読記憶媒体から読み出されてもよい。これに代えて、符号化映像情報は、通信ネットワーク220に接続されたサーバ又は無線周波数受信機等の外部ソースから受信されてもよい。
図4において見られるように、符号化ビットストリーム312等の受信された映像データは、映像復号器134へ入力される。符号化ビットストリーム312は、メモリ206、ハードディスクドライブ210、CD−ROM、ブルーレイディスク(商標)、又は、他のコンピュータ可読記憶媒体から読み出されてもよい。これに代えて、符号化ビットストリーム312は、通信ネットワーク220に接続されたサーバ又は無線周波数受信機等の外部ソースから受信されてもよい。符号化ビットストリーム312は、復号すべきキャプチャされたフレームデータを表す符号化構文要素を含む。
符号化ビットストリーム312は、符号化ビットストリーム312から構文要素を抽出し構文要素の値を映像復号部134の他のブロックへ受け渡すエントロピー復号モジュール420へ入力される。エントロピー復号モジュール420は、符号化ビットストリーム312から構文要素を復号するために、コンテキスト適応バイナリ算術符号化(CABAC)アルゴリズムを適用する。復号された構文要素は、映像復号部134内でパラメータを再構成するために使用される。パラメータは、0以上の残差データアレイ450、動きベクトル452(動きベクトルの差分は符号化ビットストリーム312から復号され、動きベクトル452は動きベクトルの差分から取得される)、予測モード454を含む。残差データアレイ450は逆量子化モジュール421へ受け渡され、動きベクトル452は動き補償モジュール434へ受け渡され、予測モード454はイントラフレーム予測モジュール426及び多重化部428へ受け渡される。
逆量子化モジュール421は、残差データアレイ450の残差データにおいて逆スケーリングを行って、変換係数の形態で再構成されたデータ455を生成する。逆量子化モジュール421は、再構成されたデータ455を逆変換モジュール422へ出力する。逆変換モジュール422は、再構成されたデータ455(すなわち、変換係数)を周波数領域表現から空間領域表現へ変換するために「逆変換」を適用し、残差サンプルアレイ456を出力する。逆変換モジュール422は、逆変換モジュール328と同じ動作を行う。逆変換モジュール422は逆変換を行うように構成される。逆変換モジュール422により行われる変換は、高効率映像符号化(HEVC)標準に準拠した符号化ビットストリーム312を復号するために要求される変換サイズの所定の集合から選択される。
動き補償モジュール434は、エントロピー復号モジュール420からの動きベクトル452を、メモリ206内に構成されたフレームバッファブロック432からの参照フレームデータ460と組み合わせて使用し、予測ユニット(PU)に対するインター予測された予測ユニット(PU)462を生成する。インター予測の予測ユニット(PU)462は、以前復号されたフレームデータに基づく出力復号されたフレームデータの予測である。現在の予測ユニット(PU)はイントラ予測を使用して符号化されたことを予測モード454が示す場合、イントラフレーム予測モジュール426は、予測ユニット(PU)に対してイントラ予測された予測ユニット(PU)464を生成する。イントラ予測の予測ユニット(PU)464は、予測ユニットに空間的に隣接するデータサンプル、また、予測モード454により供給される予測方向を使用して生成される。空間的に隣接するデータサンプルは、合算モジュール424から出力される再構成されたサンプル458から取得される。イントラブロックコピーモジュール436は、現在及び/又は以前の符号化木ブロック(CTB)、又は、フレームバッファ432からのサンプルのアレイをコピーするために、多重化部440を使用して参照サンプル438のブロックを生成する。参照サンプルのオフセットは、現在の符号化木ブロック(CTB)内の現在の符号化ブロック(CB)の位置に(エントロピー復号部420により復号された)ブロックベクトルを加えることにより計算される。現在及び以前の符号化木ブロック(CTB)の外に位置する参照ブロックを示すブロックベクトルに対して、多重化部440は、フレームバッファ432からサンプルを選択し、さもなければ多重化部は再構成されたサンプル458からサンプルを選択する。多重化モジュール428は、イントラ予測された予測ユニット(PU)464、インター予測された予測ユニット(PU)462、イントラブロックコピーモジュール436からの参照ブロック438、又は、パレット予測モジュール(図4に図示せず)からのパレット予測のいずれかから、現在の予測モード454に応じて予測ユニット(PU)466を選択する。多重化モジュール428から出力された予測ユニット(PU)466は、逆スケール・変換モジュール422からの残差サンプルアレイ456へ合算モジュール424により加算されて、再構成されたサンプル458を生成する。次に、再構成されたサンプル458は、デブロッキングフィルタモジュール430、イントラフレーム予測モジュール426、及び、イントラブロックコピーモジュール436の各々へ入力される。デブロッキングフィルタモジュール430は、目に見えるアーチファクトを平滑化するために、変換ユニット(TU)境界等のデータブロック境界に沿ってフィルタリングを行う。デブロッキングフィルタモジュール430の出力は、メモリ206内に構成されたフレームバッファモジュール432へ書き込まれる。フレームバッファモジュール432は、将来の参照のために、1つ以上の復号されたフレームを保持するために十分なストレージを提供する。また、復号されたフレーム412は、フレームバッファモジュール432から、ディスプレイ装置136等(例えば、ディスプレイ装置214の形態)のディスプレイ装置へ出力される。
図5Aは、符号化木ブロック(CTB)500内で符号化ブロック(CB)を「Z−スキャン」の順にスキャンする例を示す概略ブロック図である。符号化木ブロック(CTB)500の階層的な分解の各レベルにおいて、「Z」に似ているスキャン、すなわち、左から右へ、次に上から下へのスキャンが実行される。スキャンは深さ優先の態様で再帰的に適用される。図5Aの例において、符号化木ブロック(CTB)500の左上における4つの符号化ブロック(CB)がZスキャンの順(例えば、502)にスキャンされ、図5Aの例において現在処理されている符号化ブロック(CB)506へ到達する。符号化木ブロック(CTB)500の残りはZスキャン順504に従いスキャンされる。符号化木ブロック(CTB)500における以前復号された符号化ブロック(CB)からのサンプルはイントラ予測に対して利用可能である。映像復号部134によりまだ復号されていない符号化ブロック(CB)からのサンプルは、イントラ予測に対して利用可能でなく、図5Aでは斜線のハッチングにより示されている。そのように、映像符号化部114はまた、まだ復号されていない符号化ブロック(CB)からのサンプルを、イントラブロックコピーに対して利用可能でないものとして取り扱う。
図5Bは、イントラブロックコピー動作の例を示す概略ブロック図である。イントラブロックコピー動作の例において、符号化ブロック(CB)522は、イントラブロックコピーモードを使用するように構成される。ブロックベクトル524は、符号化ブロック(CB)522を再構成するために使用される現在の符号化木ブロック(CTB)528における符号化ブロック(CB)522の左上のサンプル位置に対するサンプルの参照ブロック526を参照する。図5Bの例において、現在の符号化木ブロック(CTB)528の領域530はまだ復号されていない。これは、領域530はZスキャンの順序では符号化ブロック(CB)522の後に続くためである。したがって、領域530は参照のために利用可能でない。図5Bの例において、参照ブロック526は、以前の符号化木ブロック(CTB)が示されていない、現在の符号化木ブロック(CTB)528内に完全に包含されている。
映像符号化部114のイントラブロックコピーモジュール350と映像復号部134のイントラブロックコピーモジュール436のメモリ容量は、64×64の輝度サンプルとして構成された符号化木ブロック(CTB)のサイズと、選択されたクロマフォーマットに従うクロマに対する対応する次元を有する、2つの符号化木ブロック(CTB)の輝度及びクロマのサンプルを保持するのに十分である。
図6は、イントラブロックコピーに対する局所的で離れた領域に分割された映像データ600のフレームの例を示している。符号化ユニット(CU)606はイントラブロックコピーを使用するために構成される。2つのブロックベクトルの例が符号化ユニット(CU)606に対して示されている。第1のブロックベクトル608は参照ブロック610を参照している。参照ブロック610は、符号化ユニット(CU)606を含む符号化木ユニット(CTU)の(ラスタスキャン順で)前の符号化木ユニット(CTU)に位置している。そのようにして、参照ブロック610はオンチップメモリ内に含まれ、映像符号化部114において再構成されたサンプル370からブロックを選択する多重化部352、又は、映像復号部134において再構成されたサンプル458からブロックを選択する多重化部440によってアクセスされる。第2のブロックベクトル612は参照ブロック614を参照している。参照ブロック614は、ラスタスキャンの順序で現在又は以前の符号化木ユニット(CTU)ではない符号化木ユニット(CTU)に位置している。そのようにして、参照ブロック610はオフチップメモリに含まれる。参照ブロック610は、映像符号化部114におけるフレームバッファ330からブロックを選択する多重化部352、又は、映像復号部134におけるフレームバッファ430からブロックを選択する多重化部440によってアクセスされる。映像復号部134において、フレーム600は復号の処理にあるため、フレーム600の全てのサンプルが多重化部440による選択に利用可能であるわけではない。領域602は、フレーム600において以前復号された符号化木ユニット(CTU)を示している。一般に、領域602は多重化部440による選択に対して利用可能である。符号化ユニット(CU)606を含む符号化木ユニット(CTU)の前の1つ以上の符号化木ユニット(CTU)は、デブロッキングフィルタ430におけるパイプライン遅延により利用可能ではないことがありうる。
図7は、フレーム部分700における水平及び垂直のエッジの例を示す概略ブロック図である。フレーム部分700は、プライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルを含む。カラーチャネルは、サンプル702等のサンプルのアレイを含む。各サンプルは、考慮されているカラーチャネルのビット深度に依存した範囲を有する数値を有する。フレーム部分700は、8×8ブロックのグリッドに分割される。デブロッキングフィルタ処理は、グリッドのエッジに沿ってのみ実行される。グリッドは、エッジ708等の水平エッジと、エッジ707等の垂直エッジを含む。8×8グリッド上の各エッジ(例えば、708)に沿って、「境界強度」が規定される。次に、「フィルタ強度」が、考慮されているエッジに隣接するブロックの境界強度及び量子化パラメータから取得される。デブロッキングフィルタ処理は、プライマリカラーチャネルとセカンダリカラーチャネルの間で異なり、図9を参照してさらに後述する。量子化パラメータは、4×4ブロックの粒度へ低下するように変化してもよい。したがって、フィルタ強度はまた、8×8グリッド上の各4つのサンプルの粒度へ低下するように変化してもよい。結果として、1つの8サンプルエッジに沿って、4つのサンプルの各グループに対して2つの異なるフィルタ強度が可能である。各エッジは隣接する2つのブロック間の接触部分(インタフェース)であるため、2つの「サイド」を有する。水平エッジ709に対して、水平エッジ709の上のブロックの部分、及び、水平エッジ709の下のブロックの部分を占める影付きサンプル704は、水平エッジ709に対するデブロッキングフィルタ処理への入力として使用される。垂直エッジ711に対して、垂直エッジ711の左のブロック、及び、垂直エッジ711の右のブロックの部分を占める影付きサンプル706は、垂直エッジ711に対するデブロッキングフィルタ処理への入力として使用される。
図8は、各エッジのいずれかのサイドにおける予測ユニット(PU)の予測モードに起因するエッジの種類の例を示す概略ブロック図である。符号化木ブロック(CTB)800は、様々なサイズ及び予測モードを有する複数の予測ユニット(PU)を含む。図8の例において、符号化木ブロック(CTB)800は、エッジの各サイドにおける予測ユニット(PU)に対して予測モードの各組み合わせとともにエッジを有する。エッジ802は、イントラ予測された予測ユニット(PU)801とイントラブロックコピーされた予測ユニット(PU)803の間に存在する。エッジ804は、イントラブロックコピーされた予測ユニット(PU)803とイントラブロックコピーされた予測ユニット(PU)805の間に存在する。エッジ806は、イントラブロックコピーされた予測ユニット(PU)805とインター予測された予測ユニット(PU)807の間に存在する。エッジ808は、インター予測された予測ユニット(PU)807とインター予測された予測ユニット(PU)809の間に存在する。エッジ810は、インター予測された予測ユニット(PU)811とイントラ予測された予測ユニット(PU)813の間に存在する。エッジ812は、イントラ予測された予測ユニット(PU)813とイントラ予測された予測ユニット(PU)815の間に存在する。エッジ814は、インター予測された予測ユニット(PU)809とパレット予測された予測ユニット(PU)817の間に存在する。エッジ816は、イントラ予測された予測ユニット(PU)813とパレット予測された予測ユニット(PU)817の間に存在する。エッジ818は、イントラブロックコピー予測された予測ユニット(PU)805とパレット予測された予測ユニット(PU)815の間に存在する。
図8に示されていないが、他の種類のエッジが、各予測ユニット(PU)がパレット予測を使用する隣接する2つの予測ユニット(PU)の間に存在する。図8に示すように、4つの予測モード(すなわち、イントラ予測、インター予測、イントラブロックコピー、及び、パレットモード)とともに、10種類のエッジ(すなわち、802、804、806、808、810、812、814、816、818、及び、図8に示されていないパレットとパレットのエッジ)が隣接する予測ユニット(PU)の間でとりうる。さらに、8×8サンプルグリッドの粒度へ低下した予測ユニット(PU)の中にもエッジは存在するが、そのようなエッジはデブロックされない。
変換ユニット(TU)間のエッジもまた図8に示されていない。変換ユニット(TU)間のエッジはデブロックのためにマークされる。一般に、エッジフラグのアレイは、どのエッジがデブロックされ、どのエッジがデブロックされないかを伝達するために使用される。(例えば、デブロッキングフィルタの2つの経路を介して、関連付けられたエッジフラグを決定するための対応するパスとともに)水平エッジと垂直エッジは別個に考慮される。
図9は、異なるカラーチャネルに対するフィルタ強度設定と境界強度値を示すテーブル900である。3つの境界強度値(すなわち、0、1、2)が規定されている。ゼロの境界強度値は、プライマリカラーチャネルとセカンダリカラーチャネルにおいて考慮されているエッジにデブロックは適用されないことを示す。1の境界強度値は、プライマリカラーチャネルにおいて考慮されているエッジには「弱い」フィルタが適用され、セカンダリカラーチャネルにおいて考慮されているエッジにはフィルタリングは適用されないことを示す。2の境界強度値は、プライマリカラーチャネルにおいて考慮されているエッジには「強い」フィルタが適用され、セカンダリカラーチャネルにおいて考慮されているエッジにはフィルタリングが適用されることを示す。エッジフラグがゼロ(0)に設定された8×8サンプルグリッドに沿ったエッジ、すなわち、2つの予測ユニット(PU)又は2つの変換ユニット(TU)の境界に存在しないエッジに対して、境界強度値は黙示的にゼロに設定される。デブロッキングフィルタの「強度」は、考慮されているエッジのいずれかのサイドにおける変換ユニット(TU)の量子化パラメータに依存する。所与の量子化パラメータ値に対して、フィルタリングが適用される場合、「強い」フィルタと「弱い」フィルタの2つのフィルタ強度がサポートされる。所与の量子化パラメータ値における「強い」フィルタは、より弱い量子化パラメータ値における「弱い」フィルタに対応する。
図10Aは、エッジの各サイドの予測ユニット(PU)の予測モードに従いエッジに対して境界強度を設定する規則を示すテーブル1000である。規則はテーブル1000に要約され、以下のように規定される。テーブル1000は、隣接する2つのブロックの予測モードをとり、隣接する2つのブロックの間のエッジに沿って境界強度を示す。水平エッジに対して、予測ユニット(PU)は考慮されているエッジの上及び下にある。垂直エッジに対して、予測ユニット(PU)は考慮されているエッジの左又は右にある。図10Aの規則において、いずれかのブロックが、イントラ予測、イントラブロックコピー、又は、パレットモードの予測モードを有する場合、境界強度は2に設定される。さもなければ(すなわち、両方のブロックがインター予測の予測モードを有する場合)、以下の条件の1つ以上が充たされる場合、境界強度は1に設定される。:
(a)対応する変換ブロック(TB)における少なくとも1つの有意な残差係数の存在を信号伝達する考慮されたエッジのいずれかのサイドにおける変換ブロック(TB)の符号化されたブロックフラグのいずれか又は両方により示されるように、少なくとも1つの非ゼロ(すなわち、有意)の残差係数がいずれかの変換ブロック(TB)に存在すること。
(b)各ブロックに対して異なる参照画像が使用されるか、又は、各ブロックに対して異なる数の動きベクトルが使用されること。
(c)各ブロックに対して1つの動きベクトルが使用され、2つの動きベクトルの間の絶対差分が4つのクォーター(四半)輝度サンプルよりも大きいこと。
(d)2つの動きベクトルが各ブロックに対して使用され、同じ2つの参照ピクチャが各ブロックに対して使用され、動きベクトルの各対の間の絶対差分が4つのクォーター輝度サンプルよりも大きいこと。
上記条件(a)、(b)、(c)、(d)のいずれもが充たされない場合、考慮されているエッジに対する境界強度はゼロ(0)に設定される。
テーブル1000の規則において、プライマリカラーチャネルにおいて強いフィルタリングが適用され、いずれかのブロックがイントラ予測又はイントラブロックコピーを使用するブロック間のエッジに対するセカンダリカラーチャネルにおいてフィルタリングが適用される。イントラ予測された予測ユニット(PU)は、「ナチュラルコンテンツ」、すなわち、利用可能な参照フレームが存在しない場合に対して使用される。イントラ予測処理は、予測ユニット(PU)の予測されたサンプルを生成するために、現在の予測ユニット(PU)に隣接するブロックからのサンプルを使用する。予測ユニット(PU)に隣接するブロックのサンプルから決定された情報が限定されているため、イントラ予測された予測ユニット(PU)はほぼ常に残差情報を含む。ナチュラルコンテンツに対して、変換が残差情報に対して頻繁に適用される。上述のスクリーンコンテンツに対して、変換は効率よく圧縮されることができないことの高周波数情報の存在により、変換はスキップされてもよい。イントラ予測を有する変換された残差の広く行き渡った使用は、2つの境界強度値の使用が適切であることを示す。イントラブロックコピーモードとパレットモードは、ナチュラルコンテンツに対してめったに選択されない。
フレームデータ310が(例えば、画像センサからの)ナチュラルコンテンツである場合に、イントラブロックコピー又はパレットモードが映像符号化部114による選択に対して利用可能なときは、小さな符号化効率の改善が観察される。スクリーンコンテンツに対して、イントラブロックコピー及びパレットモードは頻繁に選択される。特に、イントラブロックコピーは、高周波数情報を有する領域をコピーするために選択されることが多い。そのような領域は「シャープな(鋭い)」エッジを含み、そのようなものとして、シャープなエッジが平滑化されることにより、強いデブロッキングフィルタを適用することは符号化効率を削減し、その結果、PSNRが減退するかもしれない。そのような場合、コンテンツの正確な性質と、イントラブロックコピーモードによる使用に対する適切な参照ブロックの可用性に応じて、パレットモードもまた頻繁に選択される。
図10Bは、エッジの各サイドの予測ユニット(PU)の予測モードに従いエッジに対して境界強度を設定する規則を示すテーブル1010である。規則はテーブル1010に要約され、以下のように規定される。テーブル1010は、隣接する2つのブロックの予測モードをとり、隣接する2つのブロックの間のエッジに沿って境界強度を示す。図10Bの規則において、いずれかのブロックがイントラ予測の予測モードを有する場合、境界強度は2に設定される。さもなければ、両方のブロックがイントラブロックコピーの予測モードを有する場合、2つのブロックに対応するブロックベクトルが等しい(すなわち、ブロックベクトルが等しい大きさを有する)ときは境界強度はゼロ(0)に設定され、2つのブロックに対応するブロックベクトルが等しくないときは境界強度は1に設定される。さもなければ、いずれかのブロックが、イントラブロックコピー、又は、パレットモードの予測モードを有する場合、境界強度は1に設定される。さもなければ(すなわち、両方のブロックがインター予測の予測モードを有する場合)、境界強度は図10Aを参照して上述の条件(a)−(d)に従い設定される。
テーブル1010の規則において、隣接する2つのブロックが、イントラブロックコピー予測、パレット予測モード、又は、イントラブロックコピーとパレット予測モードの組み合わせを使用する場合、隣接する2つのブロックの間のエッジは、プライマリカラーチャネルにおいては弱いフィルタが適用され、セカンダリカラーチャネルにおいてはフィルタがないことをもたらす1の境界強度値を使用する。イントラブロックコピー又はパレットモードは一般にスクリーンコンテンツを含む映像データのフレームの領域に対して選択されるため、デブロッキングフィルタを弱めることは、そのような領域における効果の平滑化を減退させ、そのような領域における高周波数(すなわち、よりシャープなエッジ)を保つ。テーブル1010の規則は、テーブル1000の規則と比較して圧縮効率を改善する。
図10Cは、エッジの各サイドの予測ユニット(PU)の予測モードに従いエッジに対して境界強度を設定する規則を示すテーブル1020である。規則はテーブル1020に要約され、以下のように規定される。テーブル1020は、隣接する2つのブロックの予測モードをとり、隣接する2つのブロックの間のエッジに沿って境界強度を示す。図10Cの規則において、いずれかのブロックが、イントラブロックコピー、又は、パレットモードの予測モードを有する場合、境界強度は1に設定される。さもなければ、いずれかのブロックがイントラ予測の予測モードを有する場合、境界強度は2に設定される。さもなければ(すなわち、ブロックがインター予測の予測モードを有する場合)、境界強度は図10Aを参照して上述の条件(a)−(d)に従い設定される。
テーブル1020の規則において、隣接する2つのブロックのいずれかのブロックが、イントラブロックコピー、パレットモード、又は、イントラブロックコピーとパレット予測モードの組み合わせを使用する場合、隣接する2つのブロックの間のエッジは、1の境界強度値を使用し、その結果としてプライマリカラーチャネルにおいては弱いフィルタが適用され、セカンダリカラーチャネルにおいてはフィルタが適用されないこととなる。テーブル1010の規則と比較して、テーブル1020の規則は、イントラブロックコピーに対するデブロッキングフィルタの適用をさらに削減する。イントラブロックコピー又はパレット予測モードは一般にスクリーンコンテンツを含む映像データのフレームの領域に対して選択されるため、デブロッキングフィルタを弱めることは、そのような領域における効果の平滑化を減退させ、そのような領域における高周波数(すなわち、よりシャープなエッジ)を保つ。テーブル1020の規則は、テーブル1010の規則と比較して圧縮効率をさらに改善する。
図11は、デブロッキングフィルタに対して境界強度値を設定する方法1100を示す概略フロー図である。方法1100は、テーブル1010の規則に従い境界強度値を設定することをもたらす。方法1100は、ハードディスクドライブ210上に存在し、プロセッサ205によりその実行が制御される、映像符号化部114又は映像復号部134を実装する1つ以上のソフトウェアコードモジュールとして実装されてもよい。方法1100は、映像符号化部114及び映像復号部134の両方において実行される。方法1100は、映像符号化部114及びデブロッキングフィルタモジュール330を参照して説明される。もっとも、方法1100の説明は、映像復号部134及びデブロッキングフィルタモジュール430にも適用する。方法1100は、8×8のブロック粒度に下げられた、フレームデータ310における各エッジに対して実行される。
初期変換及び符号化ブロックフラグテストのステップ1101が映像符号化部114の特定の構成におけるプロセッサ205により実行される。初期変換及び符号化ブロックフラグテストのステップ1101はまた、映像復号部134の特定の構成におけるプロセッサ205によっても実行される。ステップ1101を以下さらに詳細に説明する。
イントラテストのステップ1102において、デブロッキングフィルタモジュール330は、プロセッサ205の制御の下で、考慮されているエッジのいずれかのサイドにおける予測ユニット(PU)の予測モードをテストする。同様に、方法1100が映像復号部134により実行されている場合、ステップ1102はデブロッキングフィルタモジュール430によっても実行される。いずれかの予測モードがイントラ予測の場合、プロセッサ205における制御は境界強度2のステップ1104へ移動する。さもなければ(すなわち、両方の予測モードがイントラ予測でない場合)、プロセッサ205における制御はイントラブロックコピー又はパレットモードテストのステップ1105へ移動する。
境界強度2のステップ1104において、デブロッキングフィルタモジュール330は、プロセッサ205の制御の下で、考慮されているエッジに対する境界強度値を2に設定する。次に、方法1100は終了する。再び、方法1100が映像復号部134により実行されている場合、ステップ1104はデブロッキングフィルタモジュール430によっても実行される。
イントラブロックコピー又はパレットモードテストのステップ1105において、デブロッキングフィルタモジュール330は、プロセッサ205の制御の下で、考慮されているエッジのいずれかのサイドにおける予測ユニット(PU)の予測モードをテストする。いずれかの予測モードがイントラブロックコピー又はパレットモードの場合、プロセッサ205における制御はブロックベクトルテストのステップ1107へ移動する。さもなければ(すなわち、両方の予測モードがインター予測である場合)、プロセッサ205における制御は変換及び符号化ブロックフラグ値テストのステップ1106へ移動する。再び、方法1100が映像復号部134により実行されている場合、ステップ1105はデブロッキングフィルタモジュール430によっても実行される。
符号化ブロックフラグ値テストのステップ1106において、デブロッキングフィルタモジュール330は、プロセッサ205の制御の下で、考慮されているエッジのいずれかのサイドに沿って輝度変換ブロック(TB)の符号化ブロックフラグをテストする。いずれかの変換ブロック(TB)が少なくとも1つの有意な残差係数を含む(すなわち、対応する符号化ブロックフラグが1の値を有する)場合、プロセッサの制御は境界強度1のステップ1110へ移動する。さもなければ(すなわち、両方の輝度変換ブロック(TB)が有意な残差係数を有しない場合)、制御は参照ピクチャ及び動きベクトルテストのステップ1108へ移動する。再び、方法1100が映像復号部134により実行されている場合、ステップ1106はデブロッキングフィルタモジュール430によっても実行される。
ブロックベクトルテストのステップ1107において、デブロッキングフィルタモジュール330は、プロセッサ205の制御の下で、考慮されているエッジのいずれかのサイドにおける予測ユニット(PU)の予測モードをテストする。予測モードが両方ともイントラブロックコピーである場合、2つの予測ユニット(PU)のブロックベクトルが比較される。ブロックベクトルが等しい(すなわち、ブロックベクトルが等しい大きさを有する)場合、プロセッサ205における制御は境界強度0のステップ1112へ移動する。さもなければ(すなわち、ブロックベクトルが等しくない場合)、プロセッサ205における制御は境界強度1のステップ1110へ移動する。再び、方法1100が映像復号部134により実行されている場合、ステップ1107はデブロッキングフィルタモジュール430によっても実行される。
参照ピクチャ及び動きベクトルテストのステップ1108において、デブロッキングフィルタモジュール330(又は、方法1100が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、各予測ユニット(PU)の以下の条件をテストする。:
(a)各予測ユニット(PU)に対して異なる参照ピクチャが使用されるか、又は、各予測ユニット(PU)に対して異なる数の動きベクトルが使用されること。
(b)各予測ユニット(PU)に対して1つの動きベクトルが使用され、2つの動きベクトルの間の絶対差分が4つのクォーター輝度サンプルよりも大きいこと。
(c)2つの動きベクトルが各予測ユニット(PU)に対して使用され、同じ2つの参照ピクチャが各ブロックに対して使用され、動きベクトルの各対の間の絶対差分が4つのクォーター輝度サンプルよりも大きいこと。
条件(a)〜(c)のいずれかが充たされる場合、プロセッサ205における制御は境界強度1のステップ1110へ移動する。さもなければ(すなわち、条件(a)〜(c)のいずれもが充たされない場合)、プロセッサ205における制御は境界強度0のステップ1112へ移動する。
境界強度1のステップ1110において、デブロッキングフィルタモジュール330(又は、方法1100が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジの境界強度値を1に設定する。次に、方法1100は終了する。
境界強度0のステップ1112において、デブロッキングフィルタモジュール330(又は、方法1100が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジの境界強度値を0に設定する。次に、方法1100は終了する。
映像符号化部114及び映像復号部134の1つの構成において、方法1100は、初期変換及び符号化ブロックフラグテストのステップ1101がイントラテストのステップ1102の前に実行されるように修正される。初期変換及び符号化ブロックフラグテストのステップ1101において、両方の予測ユニット(PU)が少なくとも1つの有意な残差係数を有し(すなわち、対応する符号化ブロックフラグが1の値を有し)、予測ユニットが変換を使用しなかった、すなわち、「変換スキップ」が考慮された予測ユニット(PU)に対して有効にされた場合、制御は境界強度0のステップ1112へ移動する。このような構成において、たとえ有意な残差係数が存在しても、デブロッキングフィルタは変換スキップを用いて隣接ブロック間で適用されない。変換スキップがスクリーンコンテンツに対して選択されようとするにつれて、デブロッキングフィルタの適用の省略は、そのようなコンテンツの意図しない平滑化を防ぐ。デブロッキングフィルタが変換スキップを使用して隣接するブロック間で適用されない場合、符号化効率の小さな改善が実現される。
映像符号化部114及び映像復号部134の他の構成において、初期変換及び符号化ブロックフラグ値テストのステップ1101は、予測ユニット(PU)のいずれか又は両方が少なくとも1つの有意な残差係数を有し(すなわち、符号化ブロックフラグが1に等しい)、予測ユニット(PU)に対応する輝度チャネル(すなわち、プライマリカラーチャネル)の変換ブロック(TB)が変換を使用しなかった、すなわち、「変換スキップ」が考慮された変換ブロック(TB)に対して有効にされた場合に、制御が境界強度0のステップ1112へ移動するように修正される。このような構成において、たとえ有意な残差係数が存在しても、ブロックの少なくとも1つが変換スキップを使用する隣接ブロック間でデブロッキングフィルタは適用されない。変換スキップがスクリーンコンテンツに対して選択されようとするにつれて、デブロッキングフィルタの適用の省略はそのようなコンテンツの意図しない平滑化を防ぎ、小さな符号化効率の改善が実現される。
映像符号化部114及び映像復号部134のさらなる他の構成において、初期変換及び符号化ブロックフラグ値テストのステップ1101は、境界強度を決定するために以下の規則が適用されるように修正される。すなわち、Pは考慮されているエッジの一方のサイドにおける変換ユニット(TU)又は予測ユニット(PU)を示し、Qは考慮されているエッジの他方のサイドにおける変換ユニット(TU)又は予測ユニット(PU)を示すものとする。以下の式が真(true)と評価された場合はプロセッサ205における制御が境界強度0のステップ1112へ移動し、さもなければ制御はステップ1102へ移動する2つの変形が利用可能である。
・変形1:(CBF(P)が0又はTS(P)と等しい)かつ(CBF(Q)が0又はTS(Q)かつ(Intra(P)又はIBC(P)かつIntra(Q)又はIBC(Q))と等しい)
・変形2:(CBF(P)が0又はTS(P)と等しい)かつ(CBF(Q)が0又はTS(Q)かつ(IBC(P)又はIBC(Q))と等しい)
ここで、CBF(x)はブロック「x」と関連付けられた輝度変換ブロック(TB)の符号化ブロックフラグと等しく、TS(x)はブロック「x」と関連付けられた輝度変換ブロック(TB)の変換スキップフラグと等しく、Intra(x)はブロック「x」と関連付けられた予測ユニット(PU)の予測モードがイントラ予測であることを示し、IBC(x)はブロック「x」と関連付けられた予測ユニット(PU)の予測モードがイントラブロックコピーであることを示す。そのような構成は、エッジの一方のサイドが有意な残差係数を全く有さず、スクリーンコンテンツを含むフレームの領域に対して改善された符号化効率を提供する、変換がスキップされたブロックと関連付けられたエッジに沿ってデブロックをすることを無効化する。
映像符号化部114及び映像復号部134のさらなる他の構成において、方法1100のブロックベクトルテストのステップ1107は省略される。ステップ1107が省略された構成においては、イントラブロックコピーテストのステップ1105においてプロセッサ205が、所与のエッジに沿った予測ユニット(PU)のいずれか又は両方がイントラブロックコピー、パレットモード、又は、イントラブロックコピー及びパレット予測モードの組み合わせを使用すると決定した場合、制御は境界強度1のステップ1110へ移動する。ステップ1107が省略された構成において、デブロッキングフィルタの境界強度を決定するイントラブロックコピー予測ユニットのブロックベクトルをバッファする要件は除去される。そのようにして、ブロックベクトルは、映像符号化部114におけるデブロックモジュール330又は映像復号部134におけるデブロックモジュール430によってアクセスされない。ステップ1107が省略された構成において、図10Bのテーブル010に記載された規則は、イントラブロックコピーをそれぞれ使用する2つの予測ユニット(PU)の間のエッジに対する境界強度値が常に1となるように修正される。
映像符号化部114及び映像復号部134のさらなる他の構成において、図11のステップ1105は以下のように修正される。すなわち、いずれかの予測モードがイントラブロックコピー又はパレットモードの場合、プロセッサ205における制御は境界強度0のステップ1112へ移動する。そのような修正されたステップ1105を備えた構成において、所与のエッジに対して、エッジのいずれかのサイドにおける予測ユニット(PU)がイントラブロックコピーモード、パレットモード、又は、これらの2つの予測モードの組み合わせを使用している場合、デブロッキングフィルタは、プライマリカラーチャネル及びセカンダリカラーチャネルに対して無効化される。
図12は、デブロッキングフィルタに対して境界強度値を設定する方法1200を示す概略フロー図である。方法1200は、テーブル1020の規則に従い境界強度値を設定することをもたらす。方法1200は、ハードディスクドライブ210上に存在し、プロセッサ205によりその実行が制御される、映像符号化部114又は映像復号部134を実装する1つ以上のソフトウェアコードモジュールとして実装されてもよい。方法1200は、映像符号化部114及び映像復号部134の両方において実行される。もっとも、方法1200は、映像符号化部114を参照して以下に説明する。方法1200は、8×8のブロック粒度に下げられた、フレームデータ310における各エッジに対して実行される。
イントラブロックコピー又はパレットモードテストのステップ1201において、デブロッキングフィルタモジュール330(方法1200が映像復号部134により実行されている場合はデブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジの一方のサイドにおける予測ユニット(PU)の第1の予測モードと、考慮されているエッジの他方のサイドにおける予測ユニット(PU)の第2の予測モードをテストする。いずれかの予測モードがイントラブロックコピー又はパレットモードの場合、プロセッサ205における制御は境界強度1のステップ1210へ移動する。ステップ1201において実行されるテストは、第1の予測モードがイントラ予測で第2の予測モードがイントラブロックコピー又はパレットモードである場合、あるいは、第1の予測モードがイントラブロックコピー又はパレットモードで第2の予測モードがイントラである場合、制御が境界強度1のステップ1210へ移動することをもたらす。ステップ1201は、もたらされる境界強度が2ではなく1である点で、図11のステップ1102と異なる。ステップ1201において実行されるテストは各エッジを対照的に取り扱うため、以下のような第1の予測モード及び第2の予測モードの規定が可能である。すなわち、左側予測ユニット(PU)及び右側予測ユニット(PU)、右側予測ユニット(PU)及び左側予測ユニット、上方予測ユニット(PU)及び下方予測ユニット(PU)、あるいは、下方予測ユニット(PU)及び上方予測ユニット(PU)である。さもなければ(すなわち、両方の予測モードがイントラブロックコピー、パレットモード、又は2つの予測モードの組み合わせではない場合)、プロセッサ205における制御はイントラテストのステップ1202へ異動する。
イントラテストのステップ1202において、デブロッキングフィルタモジュール330(又は、方法1200が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジのいずれかのサイドにおける予測ユニット(PU)の予測モードをテストする。いずれかの予測モードがイントラ予測の場合、プロセッサ205における制御は境界強度2のステップ1204へ移動する。さもなければ(すなわち、両方の予測モードがインター予測である場合)、プロセッサ205における制御は変換及び符号化ブロックフラグ値テストのステップ1206へ移動する。
境界強度2のステップ1204において、デブロッキングフィルタモジュール330(又は、方法1200が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジの境界強度値を2に設定する。次に、方法1200は終了する。
符号化ブロックフラグテストのステップ1206において、デブロッキングフィルタモジュール330(又は、方法1200が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジのいずれかのサイドに沿って輝度変換ブロック(TB)の符号化ブロックフラグをテストする。いずれかの変換ブロック(TB)が少なくとも1つの有意な残差係数を含む(すなわち、対応する符号化ブロックフラグが1の値を有する)場合、プロセッサ205の制御は境界強度1のステップ1210へ移動する。さもなければ(すなわち、両方の輝度変換ブロック(TB)が有意な残差係数を有しない場合)、制御は参照ピクチャ及び動きベクトルテストのステップ1208へ移動する。
参照ピクチャ及び動きベクトルテストのステップ1208において、デブロッキングフィルタモジュール330(又は、方法1200が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、各予測ユニット(PU)の以下の条件をテストする。:
(a)各予測ユニット(PU)に対して異なる参照ピクチャが使用されるか、又は、各予測ユニット(PU)に対して異なる数の動きベクトルが使用されること。
(b)各予測ユニット(PU)に対して1つの動きベクトルが使用され、2つの動きベクトルの間の絶対差分が4つのクォーター輝度サンプルよりも大きいこと。
(c)2つの動きベクトルが各予測ユニット(PU)に対して使用され、同じ2つの参照ピクチャが各ブロックに対して使用され、動きベクトルの各対の間の絶対差分が4つのクォーター輝度サンプルよりも大きいこと。
条件(a)〜(c)のいずれかが充たされる場合、プロセッサ205における制御は境界強度1のステップ1210へ移動する。さもなければ(すなわち、条件(a)〜(c)のいずれもが充たされない場合)、プロセッサ205における制御は境界強度0のステップ1212へ移動する。
境界強度1のステップ1210において、デブロッキングフィルタモジュール330(又は、方法1200が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジの境界強度値を1に設定する。次に、方法1200は終了する。
境界強度0のステップ1212において、デブロッキングフィルタモジュール330(又は、方法1200が映像復号部134により実行されている場合、デブロッキングフィルタモジュール430)は、プロセッサ205の制御の下で、考慮されているエッジの境界強度値を0に設定する。次に、方法1200は終了する。
映像符号化部114及び映像復号部134のある構成において、図12のステップ1201は以下のように修正される。すなわち、いずれかの予測モードがイントラブロックコピー又はパレットモードの場合、プロセッサ205における制御は境界強度0のステップ1212へ移動する。ステップ1201がそのように修正された構成において、所与のエッジに対して、エッジのいずれかのサイドにおける予測ユニット(PU)がイントラブロックコピーモード、パレットモード、又は、イントラブロックコピー及びパレット予測モードの組み合わせを使用している場合、デブロッキングフィルタは、プライマリカラーチャネル及びセカンダリカラーチャネルに対して無効化される。
図13は、映像データのブロックのイントラブロックコピー及びデブロックの方法を示す概略フロー図である。方法1300は、ハードディスクドライブ210上に存在し、プロセッサ205によりその実行が制御される、映像符号化部114又は映像復号部134を実装する1つ以上のソフトウェアコードモジュールとして実装されてもよい。方法1300は、映像符号化部114及び映像復号部134の両方において実行される。もっとも、方法1300は、映像符号化部114を参照して以下に説明する。方法1300はフレーム内の各符号化木ブロック(CTB)へ適用される。
ステップ1302〜1320は、以下に説明するように、全ての符号化木ブロック(CTB)が横断されるように実行される。さらに、方法1300は映像データのフレームにおける各符号化木ブロック(CTB)に対して実行される。
予測モードを決定するステップ1302において、予測モード選択モジュール348は、プロセッサ205の制御の下で、映像符号化部114(映像復号部134のエントロピー復号部420)において、隣接して位置づけられた2つの予測ユニット(PU)に対して予測モードを決定する。方法1300が映像復号部134により実行されている場合、ステップ1106はエントロピー復号モジュール420によっても実行される。
イントラブロックコピーテストのステップ1304にいて、プロセッサ205は、考慮されている予測ユニット(PU)の予測モードをテストする。予測モードがイントラブロックコピーの使用を示す場合、プロセッサにおける制御は領域テストのステップ1306へ移動する。さもなければ、プロセッサ205における制御は、イントラ予測又はインター予測(図13に図示せず)のいずれかに対するステップへ移動し、次に残差四分木を決定するステップ1312へ移動する。
領域テストのステップ1306において、映像符号化部114におけるイントラブロックコピーモジュール350(又は、方法1300が映像復号部134により実行されている場合は、映像復号部134におけるイントラブロックコピーモジュール436)は、考慮されている予測ユニット(PU)と関連付けられたベクトルブロックをテストする。ブロックベクトルが現在又は以前の符号化木ユニット(CTU)内の参照ブロック、すなわち、映像符号化部114における再構成されたサンプル370又は映像復号部134における再構成されたサンプル458を参照した場合、プロセッサ205における制御は、再構成されたサンプルからコピーするステップ1308へ移動する。図6のブロックベクトル608は、現在及び/又は以前の符号化木ユニット(CTU)内の参照ブロックを参照するそのようなブロックベクトルの例である。さもなければ(ブロックベクトルが、現在及び以前の符号化木ユニット(CTU)の外の参照ブロックを参照する)、プロセッサ205における制御はフレームバッファからコピーするステップ1310へ移動する。図6のブロックベクトル612は、現在及び以前の符号化木ユニット(CTU)の外の参照ブロックを示すブロックベクトルの例である。
再構成されたサンプルからコピーするステップ1308において、映像符号化部114における多重化部352は、再構成されたサンプル370からサンプルのブロックを選択する。ステップ1308において選択された再構成されたサンプルは、インループフィルタリング(すなわち、デブロック)が実行される前に存在するサンプルである。あるいは、映像復号部134における多重化部440は、方法1300が映像復号部134により実行されている場合に、再構成されているサンプル458からステップ1308におけるサンプルのブロックを選択する。再構成されたサンプル370は、デブロックされていないサンプルである。再構成されたサンプル370は、現在の符号化木ユニット(CTU)又は以前の符号化木ユニット(CTU)に対応する映像データのフレームの領域からのものである。そのようにして、再構成されたサンプル370は一般に「オンチップ」メモリを使用して記憶される。ローカル又はオンチップのメモリを使用することで、外部メモリ(例えば、206)への帯域幅要件が軽減される。オンチップメモリは一般に、シリコン領域に関して高価だが非常に高い帯域幅を提供する静的RAMを使用して実装される。オンチップメモリは、オンチップメモリの(例えば、シリコン領域に関する)著しいコストに起因して、映像データの全フレームを保持するのに十分な容量を欠いていることが一般的である。
フレームバッファからコピーするステップ1310において、映像符号化部114における多重化部352は、フレームバッファ332からサンプルのブロックを選択する。ステップ1310において選択された再構成されたサンプルは、インループフィルタリング(すなわち、デブロック)が適用されたものである。あるいは、映像復号部134における多重化部440は、方法1300が映像復号部134により実行されている場合に、ステップ1310におけるフレームバッファ432からサンプルのブロックを選択する。ステップ1310において選択された再構成されたサンプルは、外部メモリ(例えば、206)におけるフレームバッファから取得される。そのようにして、ステップ1310において選択された再構成されたサンプルはデブロッキングフィルタリングが適用されている。ステップ1310において選択された再構成されたサンプルは、現在及び以前の符号化木ユニット(CTU)の前の映像データのフレームの任意の位置から取得されてもよい。そのようにして、ステップ1310において選択可能なサンプルに対する記憶要件は、オンチップメモリにおける実際的な制約を上回り、代わりに、外部メモリ(例えば、206)に記憶されなければならない。
映像データのフレームにおけるイントラブロックコピーを使用するように構成された後の符号化ユニット(CU)により符号化ユニット(CU)のサンプルが参照された場合に、各再構成された符号化ユニット(CU)は外部メモリ(例えば、206)に記憶される必要があるであろうから、再構成されたサンプル(すなわち、デブロッキングフィルタの適用の前)を外部メモリ(例えば、206)に記憶させることは外部メモリの帯域幅を増大させるだろう。デブロックされたサンプル(例えば、372)は、映像符号化部114の動作の間、外部メモリ(例えば、206)に既に記憶される。同様に、デブロッキングフィルタモジュール430からの出力は、映像復号部134の動作の間、フレームバッファモジュール432に記憶される。そのようにして、デブロックされたサンプルのブロックは、外部メモリ(例えば、206)への追加のサンプルの書き込みを全く要することなく、多重化部352による選択に利用可能である。さらに、読みだしアクセスに対する外部メモリの帯域幅における増加は、イントラブロックコピーを使用するように構成された各符号化ユニット(CU)に対してのみ存在する。同様の作用が、多重化部440による選択に利用可能なフレームバッファ432における再構成されたサンプルのブロックを有する映像復号部134において発生する。
残差四分木を決定するステップ1312において、符号化ユニット(CU)に対する残差四分木が決定される。映像符号化部114において、プロセッサ205の制御の下で、多数の異なる残差四分木をテストし、各々に対して、量子化、変換、逆量子化、及び、逆変換のステップ(すなわち、モジュール320〜328の通りに)を実行することにより、残差四分木は一般に決定される。次に、残差四分木は、プロセッサ205の制御の下で、エントロピー符号化部324により符号化ビットストリーム312において符号化される。
方法1300が映像復号部134により実行された場合、残差四分木及び残差計数は、ステップ1312においてエントロピー復号部420により決定される。ステップ1312において、エントロピー復号部420は、プロセッサ205の制御の下で、映像ビットストリーム312からの関連付けられた構文要素を復号する。
以下に説明するように、ステップ1314〜1320は、第1の水平エッジのテスト及びデブロックと、第2の垂直エッジのテスト及びデブロックとの2つの経路において実行される。
予測ユニット(PU)のエッジを決定するステップ1314において、映像符号化部114におけるデブロックモジュール330(又は、方法1300が映像復号部134により実行されている場合は、映像復号部134におけるデブロックモジュール430)は、プロセッサ205の制御の下で、エッジフラグアレイにおけるエッジフラグを決定する。エッジフラグアレイは、8×8のサンプルグリッドに沿ったエッジの粒度へ、どのエッジはデブロックされるかもしれず、どのエッジはデブロックされないかを信号伝達する。異なる予測ユニット(PU)の間のエッジは、デブロックに対してフラグ付けされる。フラグはメモリ206内に記憶されてもよい。各符号化ユニット(CU)に対する予測ユニット(PU)境界は、符号化ユニット(CU)の分割モードに基づき知られる。
変換ユニット(TU)の境界を決定するステップ1316において、映像符号化部114におけるデブロックモジュール330(又は、方法1300が映像復号部134により実行されている場合は、映像復号部134におけるデブロックモジュール430)は、プロセッサ205の制御の下で、エッジフラグアレイにおける追加のエッジフラグを決定する。ステップ1314において設定されたエッジフラグに加えて、異なる変換ユニット(TU)間のあらゆるエッジもまたデブロックに対してフラグづけされる。変換ユニット(TU)の境界は、各符号化ユニット(CU)に対する決定された残差四分木(RQT)に基づいて知られる。
境界強度を決定するステップ1318において、映像符号化部114におけるデブロックモジュール330(又は、方法1300が映像復号部134により実行されている場合は、映像復号部134におけるデブロックモジュール430)は、プロセッサ205の制御の下で、各エッジに対する境界強度値を決定する。
映像符号化部114及び映像復号部134の1つの構成において、方法1100は、ステップ1318を実行する場合に呼び出される。ステップ1318を実行する場合に方法1100が呼び出される構成において、セカンダリカラーチャネルのエッジはデブロックされず、隣接して位置づけられたイントラブロックコピーされた予測ユニット(PU)の間のエッジにおけるプライマリカラーチャネルに対して弱いフィルタが適用されるように、デブロッキングフィルタを弱めることが行われる。
映像符号化部114及び映像復号部134の他の構成において、方法1200は、ステップ1318において呼び出される。方法1200がステップ1318において呼び出される構成において、セカンダリカラーチャネルのエッジはデブロックされず、いずれかの予測ユニット(PU)がイントラブロックコピーを使用する隣接する予測ユニットの間のエッジにおけるプライマリカラーチャネルに対して弱いフィルタが適用されるように、デブロッキングフィルタを弱めることが行われる。
方法1300はデブロッキングフィルタを適用するステップ1320に継続する。ステップ1320において、映像符号化部114におけるデブロックモジュール330(又は、方法1300が映像復号部134により実行されている場合は、映像復号部134におけるデブロックモジュール430)は、プロセッサ205の制御の下で、ステップ1308から決定された境界強度値に従い符号化木ブロック(CTB)における各エッジのデブロックを実行する。プライマリカラーチャネル及びセカンダリカラーチャネルは、図9のテーブル900に従いフィルタ強度を使用してフィルタリングされる。特に、1の境界強度値に対して、プライマリカラーチャネルはデブロッキングフィルタリングを適用し、セカンダリカラーチャネルはデブロッキングフィルタリングを適用しない。次に、方法1300は終了する。
付録Aは、方法1100に従う、高効率映像符号化(HEVC)標準に対する「ワーキングドラフト」テキストを示している。
付録Bは、方法1200に従う、高効率映像符号化(HEVC)標準に対する「ワーキングドラフト」テキストを示している。
上述のブロックベクトルを符号化する方法は、イントラブロックコピーにより実現可能な圧縮効率を改善し、イントラブロックコピーを映像符号化部による選択のより優位性のある候補モードにするため、非常に望ましい。したがって、上述の方法は実現可能な圧縮効率を改善する。
(産業上の利用可能性)
上述の構成は、コンピュータ及びデータ処理業界、特に、映像信号等の信号を符号化及び復号するためのデジタル信号処理に適用可能である。
前述のものは本発明の実施形態を少数のみ説明したものであり、それに対する修正及び/又は変更は、本発明の範囲及び精神から離れることなく行うことが可能であり、実施形態は例示であり制限的ではない。
本明細書の文脈において、「備えている(comprising)」という用語は、「主に含むが必ずしも単独である必要はない」、「有する(having)」、又は、「含む(including)」ことを意味し、「のみからなる」ことを意味しない。「備える(comprise)」、「備える(comprises)」等の用語「備えている(comprising)」の変形は、それに応じて変化した意味を有する。
[付録A]
8.7.2.4 境界フィルタリング強度の導出処理
この処理への入力は、
− 輝度ピクチャサンプルアレイrecPictureL
− 現在のピクチャの左上の輝度サンプルに対する現在の輝度符号化ブロックの左上のサンプルを特定する輝度位置(xCb,yCb)
− 現在の輝度符号化ブロックのサイズを特定する変数log2CbSize
− 垂直(EDGE_VER)と水平(EDGE_HOR)のどちらのエッジがフィルタリングされるかを特定する変数edgeType
− 2次元(nCbS)×(nCbS)アレイのedgeFlags
である。
この処理の出力は、境界フィルタリング強度を特定する2次元(nCbS)×(nCbS)アレイのbSである。
変数xDi、yDj、xN、及び、yNは以下のようにして取得される。
1.edgeTypeがEDGE_VERと等しい場合、xDiは(i<<3)に等しく設定され、yDjは(j<<2)に等しく設定され、xNは(1<<(log2CbSize−3))−1に等しく設定され、及び、yNは(1<<(log2CbSize−2))−1に等しく設定される。
2.さもなければ(edgeTypeがEDGE_HORと等しい)、xDiは(i<<2)に等しく設定され、yDjは(j<<3)に等しく設定され、xNは(1<<(log2CbSize−2))−1に等しく設定され、及び、yNは(1<<(log2CbSize−3))−1に等しく設定される。
i=0,...,xNのxDiとj=0,...,yNのyDjに対して以下が適用される。
3.edgeFlags[xDi][yDj]が0に等しい場合、変数bS[xDi][yDj]は0に等しく設定される。
4.さもなければ(edgeFlags[xDi][yDj]が1に等しい)、以下が適用される。
− サンプル値p0及びq0は以下のようにして取得される。
・edgeTypeがEDGE_VERと等しい場合、p0はrecPictureL[xCb+xDi−1][yCb+yDj]に等しく設定され、q0はrecPictureL[xCb+xDi][yCb+yDj]に等しく設定される。
・さもなければ(edgeTypeがEDGE_HORと等しい)、p0はrecPictureL[xCb+xDi][yCb+yDj−1]に等しく設定され、q0はrecPictureL[xCb+xDi][yCb+yDj]に等しく設定される。
− 変数bS[xDi][yDj]は以下のようにして取得される。
・サンプルp0又はq0が、(イントラブロックコピーモード又はパレット予測モード)ではなくイントラ予測モードを用いて符号化された符号化ユニットの輝度符号化ブロックにある場合、bS[xDi][yDj]は2に等しく設定される。
・さもなければ、ブロックエッジが変換ブロックエッジでもあり、また、サンプルp0又はq0が1つ以上の非ゼロ変換係数レベルを含む輝度変換ブロックにある場合、bS[xDi][yDj]は1に等しく設定される。
・さもなければ、以下の条件の1つ以上が真の場合、bS[xDi][yDj]は1に等しく設定される。
・サンプルp0を含む輝度予測ブロックの予測に対しては、サンプルq0を含む輝度予測ブロックの予測に対するものとは異なる参照ピクチャ又は異なる数の動きベクトルが使用される。
注釈1 − 2つの輝度予測ブロックに対して使用される参照ピクチャが同一か異なるかの決定は、どのピクチャが参照されるかにのみ基づき、予測が参照ピクチャリスト0へのインデックスを使用して形成されるかには関係せず、また、参照ピクチャリスト内のインデックスの位置が異なるか否かにも関係しない。
注釈2 − (xPb,yPb)をカバーする左上の輝度サンプルを用いて輝度予測ブロックの予測に対して使用される動きベクトルの数は、PredFlagL0[xPb][yPb]+PredFlagL1[xPb][yPb]と等しい。
・1つの動きベクトルがサンプルp0を含む輝度予測ブロックを予測するために使用され、1つの動きベクトルがサンプルq0を含む輝度予測ブロックを予測するために使用され、使用される動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
・2つの動きベクトル及び2つの異なる参照ピクチャがサンプルp0を含む輝度予測ブロックを予測するために使用され、同じ2つの参照ピクチャに対する2つの動きベクトルがサンプルq0を含む輝度予測ブロックを予測するために使用され、同じ参照ピクチャに対する2つの輝度予測ブロックの予測において使用される2つの動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
・同じ参照ピクチャに対する2つの動きベクトルがサンプルp0を含む輝度予測ブロックを予測するために使用され、同じ参照ピクチャに対する2つの動きベクトルがサンプルq0を含む輝度予測ブロックを予測するために使用され、以下の条件の両方が真である。:
- 2つの輝度予測ブロックの予測において使用されるリスト0の動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルにおいて4以上であるか、又は、2つの輝度予測ブロックの予測において使用されるリスト1の動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
- サンプルp0を含む輝度予測ブロックの予測において使用されるリスト0の動きベクトルとサンプルq0を含む輝度予測ブロックの予測において使用されるリスト1の動きベクトルとの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上であるか、又は、サンプルp0を含む輝度予測ブロックの予測において使用されるリスト1の動きベクトルとサンプルq0を含む輝度予測ブロックの予測において使用されるリスト0の動きベクトルとの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
・さもなければ、変数bS[xDi][yDj]は0に等しく設定される。
[付録B]
8.7.2.4 境界フィルタリング強度の導出処理
この処理への入力は、
− 輝度ピクチャサンプルアレイrecPictureL
− 現在のピクチャの左上の輝度サンプルに対する現在の輝度符号化ブロックの左上のサンプルを特定する輝度位置(xCb,yCb)
− 現在の輝度符号化ブロックのサイズを特定する変数log2CbSize
− 垂直(EDGE_VER)と水平(EDGE_HOR)のどちらのエッジがフィルタリングされるかを特定する変数edgeType
− 2次元(nCbS)×(nCbS)アレイのedgeFlags
である。
この処理の出力は、境界フィルタリング強度を特定する2次元(nCbS)×(nCbS)アレイのbSである。
変数xDi、yDj、xN、及び、yNは以下のようにして取得される。
− edgeTypeがEDGE_VERと等しい場合、xDiは(i<<3)に等しく設定され、yDjは(j<<2)に等しく設定され、xNは(1<<(log2CbSize−3))−1に等しく設定され、及び、yNは(1<<(log2CbSize−2))−1に等しく設定される。
− さもなければ(edgeTypeがEDGE_HORと等しい)、xDiは(i<<2)に等しく設定され、yDjは(j<<3)に等しく設定され、xNは(1<<(log2CbSize−2))−1に等しく設定され、及び、yNは(1<<(log2CbSize−3))−1に等しく設定される。
i=0,...,xNのxDiとj=0,...,yNのyDjに対して以下が適用される。
− edgeFlags[xDi][yDj]が0に等しい場合、変数bS[xDi][yDj]は0に等しく設定される。
− さもなければ(edgeFlags[xDi][yDj]が1に等しい)、以下が適用される。
− サンプル値p0及びq0は以下のようにして取得される。
− edgeTypeがEDGE_VERと等しい場合、p0はrecPictureL[xCb+xDi−1][yCb+yDj]に等しく設定され、q0はrecPictureL[xCb+xDi][yCb+yDj]に等しく設定される。
− さもなければ(edgeTypeがEDGE_HORと等しい)、p0はrecPictureL[xCb+xDi][yCb+yDj−1]に等しく設定され、q0はrecPictureL[xCb+xDi][yCb+yDj]に等しく設定される。
− 変数bS[xDi][yDj]は以下のようにして取得される。
サンプルp 0 又はq 0 が、イントラブロックコピーモード又はパレット予測モードを用いて符号化された符号化ユニットの輝度符号化ブロックにある場合、bS[xD i ][yD j ]は1に等しく設定される。
さもなければ、サンプルp0又はq0が、イントラ予測モードを用いて符号化された符号化ユニットの輝度符号化ブロックにある場合、bS[xDi][yDj]は2に等しく設定される。
− さもなければ、ブロックエッジが変換ブロックエッジでもあり、また、サンプルp0又はq0が1つ以上の非ゼロ変換係数レベルを含む輝度変換ブロックにある場合、bS[xDi][yDj]は1に等しく設定される。
− さもなければ、1つ以上の以下の条件が真の場合、bS[xDi][yDj]は1に等しく設定される。
・サンプルp0を含む輝度予測ブロックの予測に対しては、サンプルq0を含む輝度予測ブロックの予測に対するものとは異なる参照ピクチャ又は異なる数の動きベクトルが使用される。
注釈1 − 2つの輝度予測ブロックに対して使用される参照ピクチャが同一か異なるかの決定は、どのピクチャが参照されるかにのみ基づき、予測が参照ピクチャリスト0へのインデックスを使用して形成されるかには関係せず、また、参照ピクチャリスト内のインデックスの位置が異なるか否かにも関係しない。
注釈2 − (xPb,yPb)をカバーする左上の輝度サンプルを用いて輝度予測ブロックの予測に対して使用される動きベクトルの数は、PredFlagL0[xPb][yPb]+PredFlagL1[xPb][yPb]と等しい。
・1つの動きベクトルがサンプルp0を含む輝度予測ブロックを予測するために使用され、1つの動きベクトルがサンプルq0を含む輝度予測ブロックを予測するために使用され、使用される動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
・2つの動きベクトル及び2つの異なる参照ピクチャがサンプルp0を含む輝度予測ブロックを予測するために使用され、同じ2つの参照ピクチャに対する2つの動きベクトルがサンプルq0を含む輝度予測ブロックを予測するために使用され、同じ参照ピクチャに対する2つの輝度予測ブロックの予測において使用される2つの動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
・同じ参照ピクチャに対する2つの動きベクトルがサンプルp0を含む輝度予測ブロックを予測するために使用され、同じ参照ピクチャに対する2つの動きベクトルがサンプルq0を含む輝度予測ブロックを予測するために使用され、以下の条件の両方が真である。:
・2つの輝度予測ブロックの予測において使用されるリスト0の動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルにおいて4以上であるか、又は、2つの輝度予測ブロックの予測において使用されるリスト1の動きベクトルの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
・サンプルp0を含む輝度予測ブロックの予測において使用されるリスト0の動きベクトルとサンプルq0を含む輝度予測ブロックの予測において使用されるリスト1の動きベクトルとの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上であるか、又は、サンプルp0を含む輝度予測ブロックの予測において使用されるリスト1の動きベクトルとサンプルq0を含む輝度予測ブロックの予測において使用されるリスト0の動きベクトルとの水平又は垂直の成分の間の絶対差分がクォーター輝度サンプルを単位として4以上である。
−さもなければ、変数bS[xDi][yDj]は0に等しく設定される。

Claims (2)

  1. 映像データのサンプルのブロックのエッジをデブロックする方法であって、
    映像データのブロックの各々がプライマリカラーチャネルと少なくとも1つのセカンダリカラーチャネルとを含む映像データの、隣接する2つのブロックの第1のブロックに対して第1の予測モードを符号化する工程と、
    前記映像データの隣接する2つのブロックの第2のブロックに対して第2の予測モードを符号化する工程と、
    前記第1の予測モードと前記第2の予測モードが両方ともイントラブロックコピーである場合であってかつ前記隣接する2つのブロックと関連付けられた整数の画素精度であるブロックベクトルの絶対差分が等しくない場合に、 前記第1のブロックと前記第2のブロックとの間の境界に対応するエッジに沿ったサンプルに対して、前記プライマリカラーチャネルについてはデブロッキングフィルタを適用し、前記セカンダリカラーチャネルについてはデブロッキングフィルタを適用しないように処理する工程と、
    前記第1の予測モードと前記第2の予測モードのいずれかがイントラ予測である場合、前記プライマリカラーチャネルおよび前記セカンダリカラーチャネルについてデブロッキングフィルタを適用する工程と、
    を有することを特徴とする方法。
  2. 前記ブロックベクトルは、現在のフレームにおける以前符号化したサンプルから、サンプルのブロックを参照するために用いられるベクトルであることを特徴とする請求項1に記載の方法。
JP2021064793A 2014-05-29 2021-04-06 映像サンプルのブロックをデブロックする方法 Active JP7104827B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2014202921A AU2014202921B2 (en) 2014-05-29 2014-05-29 Method, apparatus and system for de-blocking a block of video samples
AU2014202921 2014-05-29
JP2020037124A JP6865872B2 (ja) 2014-05-29 2020-03-04 映像サンプルのブロックをデブロックする方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020037124A Division JP6865872B2 (ja) 2014-05-29 2020-03-04 映像サンプルのブロックをデブロックする方法

Publications (2)

Publication Number Publication Date
JP2021108475A true JP2021108475A (ja) 2021-07-29
JP7104827B2 JP7104827B2 (ja) 2022-07-21

Family

ID=54697712

Family Applications (5)

Application Number Title Priority Date Filing Date
JP2017508715A Active JP6253845B2 (ja) 2014-05-29 2015-05-28 映像サンプルのブロックをデブロックする方法、装置、及び、システム
JP2017228282A Active JP6452792B2 (ja) 2014-05-29 2017-11-28 映像サンプルのブロックをデブロックする方法、装置、及び、システム
JP2018232810A Active JP6671450B2 (ja) 2014-05-29 2018-12-12 映像サンプルのブロックをデブロックする方法
JP2020037124A Active JP6865872B2 (ja) 2014-05-29 2020-03-04 映像サンプルのブロックをデブロックする方法
JP2021064793A Active JP7104827B2 (ja) 2014-05-29 2021-04-06 映像サンプルのブロックをデブロックする方法

Family Applications Before (4)

Application Number Title Priority Date Filing Date
JP2017508715A Active JP6253845B2 (ja) 2014-05-29 2015-05-28 映像サンプルのブロックをデブロックする方法、装置、及び、システム
JP2017228282A Active JP6452792B2 (ja) 2014-05-29 2017-11-28 映像サンプルのブロックをデブロックする方法、装置、及び、システム
JP2018232810A Active JP6671450B2 (ja) 2014-05-29 2018-12-12 映像サンプルのブロックをデブロックする方法
JP2020037124A Active JP6865872B2 (ja) 2014-05-29 2020-03-04 映像サンプルのブロックをデブロックする方法

Country Status (6)

Country Link
US (1) US10298961B2 (ja)
EP (2) EP3149941B1 (ja)
JP (5) JP6253845B2 (ja)
CN (2) CN111294593B (ja)
AU (3) AU2014202921B2 (ja)
WO (1) WO2015179898A1 (ja)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6336058B2 (ja) 2013-10-14 2018-06-06 マイクロソフト テクノロジー ライセンシング,エルエルシー ビデオ及び画像符号化及び復号のためのベースカラーインデックスマップモードの機能
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
AU2014202921B2 (en) * 2014-05-29 2017-02-02 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking a block of video samples
US9924175B2 (en) * 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US9955157B2 (en) * 2014-07-11 2018-04-24 Qualcomm Incorporated Advanced palette prediction and signaling
EP3917146A1 (en) 2014-09-30 2021-12-01 Microsoft Technology Licensing, LLC Rules for intra-picture prediction modes when wavefront parallel processing is enabled
US9832467B2 (en) 2014-10-07 2017-11-28 Qualcomm Incorporated Deblock filtering for intra block copying
MY190919A (en) * 2014-11-28 2022-05-19 Mediatek Inc Method and apparatus of alternative transform for video coding
KR20170135847A (ko) * 2015-04-08 2017-12-08 엘지전자 주식회사 비디오 신호의 인코딩/디코딩 방법 및 장치
US10659783B2 (en) * 2015-06-09 2020-05-19 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
CN106254888B (zh) * 2015-06-09 2020-06-02 同济大学 一种图像编码及解码方法、图像处理设备
CN115134609A (zh) 2015-06-11 2022-09-30 杜比实验室特许公司 使用自适应去块滤波编码和解码图像的方法及其装置
CN106358042B (zh) * 2015-07-17 2020-10-09 恩智浦美国有限公司 使用视频图像的帧间预测的并行解码器
EP3244614A1 (en) * 2016-05-13 2017-11-15 Thomson Licensing A method and a device for decoding an intra predicted block of a picture and corresponding coding method and coding device
US10567808B2 (en) * 2016-05-25 2020-02-18 Arris Enterprises Llc Binary ternary quad tree partitioning for JVET
BR112019012707A2 (pt) * 2016-12-28 2019-11-19 Sony Corp aparelho e método de processamento de imagem.
US10798402B2 (en) * 2017-10-24 2020-10-06 Google Llc Same frame motion estimation and compensation
US10694195B2 (en) * 2018-03-07 2020-06-23 Tencent America LLC Methods and apparatus for palette coding
US10708592B2 (en) * 2018-04-02 2020-07-07 Qualcomm Incorporated Deblocking filter for video coding and processing
JP6895586B2 (ja) 2018-04-04 2021-06-30 日本放送協会 予測画像補正装置、画像符号化装置、画像復号装置、及びプログラム
US11449256B2 (en) 2018-05-15 2022-09-20 Samsung Electronics Co., Ltd. Method for accelerating image storing and retrieving differential latency storage devices based on access rates
US10949087B2 (en) 2018-05-15 2021-03-16 Samsung Electronics Co., Ltd. Method for rapid reference object storage format for chroma subsampled images
CN110636299B (zh) 2018-06-21 2022-06-14 北京字节跳动网络技术有限公司 用于处理视频数据的方法、装置及计算机可读记录介质
US12034977B2 (en) * 2018-06-28 2024-07-09 Electronics And Telecommunications Research Institute Video encoding/decoding method and device, and recording medium for storing bitstream
FR3086487A1 (fr) * 2018-09-21 2020-03-27 Orange Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image.
CN113170120B (zh) * 2018-09-28 2024-07-26 弗劳恩霍夫应用研究促进协会 去块或去振铃滤波器以及应用和改变去块或去振铃滤波器的强度的编码器、解码器和方法
WO2020096510A1 (en) 2018-11-08 2020-05-14 Telefonaktiebolaget Lm Ericsson (Publ) Asymmetric deblocking in a video encoder and/or video decoder
CA3119935A1 (en) 2018-11-14 2020-05-22 Sharp Kabushiki Kaisha Systems and methods for applying deblocking filters to reconstructed video data
CN113424536B (zh) 2018-11-30 2024-01-30 腾讯美国有限责任公司 用于视频编解码的方法和装置
US11470329B2 (en) * 2018-12-26 2022-10-11 Tencent America LLC Method and apparatus for video coding
KR20240145038A (ko) * 2019-01-02 2024-10-04 엘지전자 주식회사 디블록킹 필터링을 사용하는 영상 코딩 방법 및 장치
US11356699B2 (en) * 2019-01-11 2022-06-07 Hfi Innovation Inc. Method and apparatus of sub-block deblocking in video coding
US11019359B2 (en) * 2019-01-15 2021-05-25 Tencent America LLC Chroma deblock filters for intra picture block compensation
CN113383547A (zh) * 2019-02-01 2021-09-10 北京字节跳动网络技术有限公司 环路整形和帧间编解码工具之间的相互作用
WO2020156547A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Buffer resetting for intra block copy in video coding
BR112021011019A2 (pt) * 2019-02-15 2021-08-31 Panasonic Intellectual Property Corporation Of America Codificador, decodificador, método de codificação e método de decodificação
CN117395439A (zh) 2019-03-01 2024-01-12 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的基于方向的预测
CN113545068B (zh) 2019-03-01 2023-09-15 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的基于顺序的更新
CN113545036B (zh) * 2019-03-02 2023-11-28 北京字节跳动网络技术有限公司 对环路内滤波的限制
KR20240132530A (ko) 2019-03-04 2024-09-03 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 인트라 블록 복사의 구현 형태
CN111919441A (zh) * 2019-03-10 2020-11-10 北京字节跳动网络技术有限公司 组合的屏幕内容编码模式
WO2020192614A1 (en) 2019-03-23 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Restrictions on adaptive-loop filtering parameter sets
EP3928521A4 (en) 2019-04-02 2022-08-17 Beijing Bytedance Network Technology Co., Ltd. BIDIRECTIONAL OPTICAL FLOW BASED VIDEO ENCODING AND DECODING
US11252442B2 (en) * 2019-04-08 2022-02-15 Tencent America LLC Method and apparatus for video coding
WO2020207502A1 (en) * 2019-04-12 2020-10-15 Beijing Bytedance Network Technology Co., Ltd. Most probable mode list construction for matrix-based intra prediction
CN113711609B (zh) 2019-04-19 2023-12-01 北京字节跳动网络技术有限公司 利用光流的预测细化过程中的增量运动矢量
WO2020211866A1 (en) 2019-04-19 2020-10-22 Beijing Bytedance Network Technology Co., Ltd. Applicability of prediction refinement with optical flow process
WO2020211864A1 (en) 2019-04-19 2020-10-22 Beijing Bytedance Network Technology Co., Ltd. Region based gradient calculation in different motion vector refinements
CN113812163B (zh) * 2019-05-11 2022-11-25 北京字节跳动网络技术有限公司 用于视频编解码的去方块滤波器
CN114041285B (zh) * 2019-05-11 2024-04-19 北京字节跳动网络技术有限公司 视频处理中去方块滤波器的边界强度确定
SG11202112517QA (en) * 2019-05-22 2021-12-30 Beijing Bytedance Network Technology Co Ltd Matrix-based intra prediction using upsampling
US11902510B2 (en) * 2019-05-30 2024-02-13 Hfi Innovation Inc. Video processing methods and apparatuses for determining deblocking filter decision in video coding systems
CN113924775B (zh) 2019-05-31 2023-11-14 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的限制的上采样
CN114503596B (zh) * 2019-06-05 2023-12-29 北京字节跳动网络技术有限公司 运动矢量细化和其他编解码工具之间的相互作用
WO2020244610A1 (en) 2019-06-05 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Context determination for matrix-based intra prediction
EP3993415A4 (en) * 2019-06-25 2023-05-31 Nippon Hoso Kyokai ENCODING DEVICE, DECODING DEVICE, AND PROGRAM
CN114175633B (zh) 2019-07-10 2023-12-29 北京字节跳动网络技术有限公司 用于视频编解码中的帧内块复制的样点标识
JP2022539887A (ja) * 2019-07-11 2022-09-13 北京字節跳動網絡技術有限公司 映像符号化におけるイントラブロックコピーのためのビットストリーム適合性の制約
CN114424532A (zh) * 2019-07-21 2022-04-29 Lg电子株式会社 根据是否应用调色板模式执行去块滤波的图像编码/解码方法和设备及发送比特流的方法
CN117221536A (zh) 2019-07-23 2023-12-12 北京字节跳动网络技术有限公司 调色板模式编解码的模式确定
WO2021018167A1 (en) 2019-07-29 2021-02-04 Beijing Bytedance Network Technology Co., Ltd. Palette mode coding in prediction process
CN117241033A (zh) * 2019-08-06 2023-12-15 北京字节跳动网络技术有限公司 使用屏幕内容编码工具进行视频编码和解码
CN114868391B (zh) * 2019-08-23 2024-06-25 北京字节跳动网络技术有限公司 编解码块或子块边界处的去方块滤波
KR20220058534A (ko) 2019-09-14 2022-05-09 바이트댄스 아이엔씨 크로마 디블로킹 필터링을 위한 양자화 파라미터
US11394957B2 (en) * 2019-09-23 2022-07-19 Tencent America LLC Constraints on reference sample locations in the dedicated buffer for intra picture block compensation
CN112543325B (zh) * 2019-09-23 2022-09-09 腾讯美国有限责任公司 视频解码方法、装置、计算机设备和存储介质
WO2020251420A2 (en) * 2019-10-05 2020-12-17 Huawei Technologies Co., Ltd. Removing blocking artifacts inside coding unit predicted by intra block copy
CN114651442A (zh) 2019-10-09 2022-06-21 字节跳动有限公司 视频编解码中的跨分量适应性回路滤波
EP4029264A4 (en) 2019-10-14 2022-11-23 ByteDance Inc. JOINT CODING OF CHROMINANCE RESIDUE AND FILTERING IN VIDEO PROCESSING
EP4055827A4 (en) * 2019-12-09 2023-01-18 ByteDance Inc. USING QUANTIFICATION GROUPS IN VIDEO CODING
CN113129201A (zh) 2019-12-31 2021-07-16 英特尔公司 用于图形处理命令的压缩的方法和装置
WO2021138293A1 (en) 2019-12-31 2021-07-08 Bytedance Inc. Adaptive color transform in video coding
CN115336274B (zh) * 2020-02-05 2023-05-26 Lg电子株式会社 与残差编码关联的图像解码方法以及用于其的装置
JP7288149B2 (ja) * 2020-02-05 2023-06-06 エルジー エレクトロニクス インコーポレイティド 画像コーディングシステムにおけるレジデュアルコーディングに対する画像デコード方法及びその装置
CN115053523A (zh) * 2020-02-10 2022-09-13 松下电器(美国)知识产权公司 编码装置、解码装置、编码方法和解码方法
US11516514B2 (en) * 2020-03-27 2022-11-29 Tencent America LLC High level control for deblocking operations
WO2021202667A1 (en) 2020-03-31 2021-10-07 Alibaba Group Holding Limited Methods for palette prediction
WO2021244419A1 (en) * 2020-05-31 2021-12-09 Beijing Bytedance Network Technology Co., Ltd. Constraint signaling using general constraint information syntax element
CN116250239A (zh) * 2020-07-27 2023-06-09 字节跳动有限公司 去方块滤波改进
CN112543338B (zh) * 2020-10-16 2022-03-04 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机可读介质及电子设备
CN112714316B (zh) * 2020-12-21 2023-01-31 太原智林信息技术股份有限公司 基于视频码流的规则标志检测和分类识别方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012114724A1 (ja) * 2011-02-22 2012-08-30 パナソニック株式会社 フィルタ方法、動画像符号化装置、動画像復号装置及び動画像符号化復号装置
WO2015054811A1 (en) * 2013-10-14 2015-04-23 Microsoft Corporation Features of intra block copy prediction mode for video and image coding and decoding
WO2015148814A1 (en) * 2014-03-26 2015-10-01 Qualcomm Incorporated Determining palette size, palette entries and filtering of palette coded blocks in video coding
WO2015191834A1 (en) * 2014-06-11 2015-12-17 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
JP6865872B2 (ja) * 2014-05-29 2021-04-28 キヤノン株式会社 映像サンプルのブロックをデブロックする方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7450641B2 (en) * 2001-09-14 2008-11-11 Sharp Laboratories Of America, Inc. Adaptive filtering based upon boundary strength
US7907789B2 (en) 2007-01-05 2011-03-15 Freescale Semiconductor, Inc. Reduction of block effects in spatially re-sampled image information for block-based image coding
BRPI0817770B1 (pt) * 2007-10-16 2020-11-10 Interdigital Madison Patent Holdings métodos e aparelhos para a remoção de artefatos para a escalabilidade de profundidade em bits
CN101212665B (zh) 2007-12-25 2012-01-25 海信集团有限公司 一种环路滤波方法
CN101472176A (zh) * 2007-12-29 2009-07-01 智多微电子(上海)有限公司 基于边界强度因子进行去块效应滤波的解码方法和装置
US9338476B2 (en) * 2011-05-12 2016-05-10 Qualcomm Incorporated Filtering blockiness artifacts for video coding
US9167269B2 (en) * 2011-10-25 2015-10-20 Qualcomm Incorporated Determining boundary strength values for deblocking filtering for video coding
KR102032000B1 (ko) * 2011-11-04 2019-10-14 선 페이턴트 트러스트 변경된 이미지 블록 경계 세기 유도에 의한 디블로킹 필터링
US9270993B2 (en) * 2012-09-10 2016-02-23 Apple Inc. Video deblocking filter strength derivation
CN103813176A (zh) * 2012-11-14 2014-05-21 北京三星通信技术研究有限公司 视频编解码中的去块效应滤波方法和自适应环路滤波方法
US10015515B2 (en) * 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
AU2013228045A1 (en) * 2013-09-13 2015-04-02 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data
JP6373008B2 (ja) * 2013-12-27 2018-08-15 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
US10432928B2 (en) * 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012114724A1 (ja) * 2011-02-22 2012-08-30 パナソニック株式会社 フィルタ方法、動画像符号化装置、動画像復号装置及び動画像符号化復号装置
WO2015054811A1 (en) * 2013-10-14 2015-04-23 Microsoft Corporation Features of intra block copy prediction mode for video and image coding and decoding
WO2015148814A1 (en) * 2014-03-26 2015-10-01 Qualcomm Incorporated Determining palette size, palette entries and filtering of palette coded blocks in video coding
JP6865872B2 (ja) * 2014-05-29 2021-04-28 キヤノン株式会社 映像サンプルのブロックをデブロックする方法
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 (7)

* Cited by examiner, † Cited by third party
Title
BIN LI, JIZHENG XU AND GARY. J. SULLIVAN: "On Intra BC mode", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-O0183_r1, JPN6019044553, October 2013 (2013-10-01), pages 1 - 12, ISSN: 0004735890 *
D. FLYNN AND C. ROSEWARNE: "BoG report on Range Extensions topics", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-O0352_d4, JPN6019044552, November 2013 (2013-11-01), pages 1 - 3, ISSN: 0004735891 *
DAVID FLYNN ET AL.: "High Efficiency Video Coding (HEVC) Range Extensions text specification: Draft 4", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-N1005_v1, JPN6019044551, August 2013 (2013-08-01), pages 152 - 165, ISSN: 0004735889 *
JIANLE CHEN ET AL.: "Description of screen content coding technology proposal by Qualcomm", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-Q0031_r2, JPN6017040935, March 2014 (2014-03-01), pages 1 - 19, ISSN: 0004735892 *
JOEL SOLE ET AL.: "AhG13: Palette and deblocking", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-S0096r1, JPN6018035397, October 2014 (2014-10-01), pages 1 - 9, ISSN: 0004735895 *
JOEL SOLE ET AL.: "Non-SCCE3: Palette and deblocking", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11, vol. JCTVC-R0213, JPN6018035396, June 2014 (2014-06-01), pages 1 - 6, ISSN: 0004735894 *
XIAOYU XIU ET AL.: "Description of screen content coding technology proposal by InterDigital", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11, vol. JCTVC-Q0037, JPN6018035394, March 2014 (2014-03-01), pages 1 - 12, ISSN: 0004735893 *

Also Published As

Publication number Publication date
JP2020108160A (ja) 2020-07-09
WO2015179898A1 (en) 2015-12-03
JP6865872B2 (ja) 2021-04-28
JP7104827B2 (ja) 2022-07-21
JP2017519460A (ja) 2017-07-13
AU2017202789B2 (en) 2018-12-13
AU2014202921A1 (en) 2015-12-17
JP6253845B2 (ja) 2017-12-27
US10298961B2 (en) 2019-05-21
CN106464866A (zh) 2017-02-22
AU2017202788A1 (en) 2017-05-18
JP2018050340A (ja) 2018-03-29
US20170127090A1 (en) 2017-05-04
CN106464866B (zh) 2020-03-10
CN111294593B (zh) 2022-07-15
JP6452792B2 (ja) 2019-01-16
JP2019071632A (ja) 2019-05-09
EP3149941A1 (en) 2017-04-05
EP3614678B1 (en) 2023-07-12
EP3614678A1 (en) 2020-02-26
EP3149941A4 (en) 2018-01-24
CN111294593A (zh) 2020-06-16
EP3149941B1 (en) 2019-10-09
AU2014202921B2 (en) 2017-02-02
AU2017202789A1 (en) 2017-05-18
JP6671450B2 (ja) 2020-03-25

Similar Documents

Publication Publication Date Title
JP7104827B2 (ja) 映像サンプルのブロックをデブロックする方法
JP6563079B2 (ja) 符号化方法、復号方法、符号化装置、復号装置、及びプログラム
KR101822765B1 (ko) 비디오 데이터의 인코딩 및 디코딩을 위한 방법, 장치 및 시스템
US20190289332A1 (en) Method, apparatus and system for de-blocking video data
RU2604986C2 (ru) Способ, устройство и система для кодирования и декодирования единиц преобразования единицы кодирования
WO2021110116A1 (en) Prediction from multiple cross-components
EP3649777A1 (en) Division-free bilateral filter
KR20220100991A (ko) 비디오 필터링 방법 및 장치
KR20210088697A (ko) 인코더, 디코더 및 대응하는 디블록킹 필터 적응의 방법
CN113411613B (zh) 对图像块进行视频译码的方法、解码设备和编/解码器
KR20220041940A (ko) 비디오 샘플들의 블록을 인코딩 및 디코딩하기 위한 방법, 장치 및 시스템
KR20220032620A (ko) 비디오 샘플들의 블록을 인코딩 및 디코딩하기 위한 방법, 장치 및 시스템
AU2020202285A1 (en) Method, apparatus and system for encoding and decoding a block of video samples
KR20180080115A (ko) 참조 화소에 대하여 적응적 필터링을 수행하기 위한 화면 내 예측 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220516

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220708

R151 Written notification of patent or utility model registration

Ref document number: 7104827

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151