JP2013516834A - ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置 - Google Patents

ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置 Download PDF

Info

Publication number
JP2013516834A
JP2013516834A JP2012547057A JP2012547057A JP2013516834A JP 2013516834 A JP2013516834 A JP 2013516834A JP 2012547057 A JP2012547057 A JP 2012547057A JP 2012547057 A JP2012547057 A JP 2012547057A JP 2013516834 A JP2013516834 A JP 2013516834A
Authority
JP
Japan
Prior art keywords
filter
post
function block
picture
data
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
JP2012547057A
Other languages
English (en)
Other versions
JP2013516834A5 (ja
JP5964755B2 (ja
Inventor
ミスラ キラン
ソーレ ジョエル
ペン イン
シャオアン ルー
ユンフェイ ツェン
チエン シュー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2013516834A publication Critical patent/JP2013516834A/ja
Publication of JP2013516834A5 publication Critical patent/JP2013516834A5/ja
Application granted granted Critical
Publication of JP5964755B2 publication Critical patent/JP5964755B2/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

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

Abstract

ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置を提供すること。この装置および方法は、ピクチャに関する入力データを、結果として得られるビットストリームとして符号化し、前記ビデオエンコーダは、プレフィルタと、プレフィルタに結合されたポストフィルタとを備え、前記プレフィルタは、ピクチャに関する入力データをフィルタ処理し、ポストフィルタは、ピクチャに関するループ内再構築後データをフィルタ処理する(900、915、950)。

Description

本原理は、一般にはビデオ符号化および復号化に関し、より詳細には、ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置に関する。
関連出願の相互参照
本願は、参照によりその全体が本明細書に組み込まれる2009年12月31日出願の米国特許仮出願第61/291596号の特典を主張する。
国際標準化機構/国際電気標準会議(ISO/IEC)Moving Picture Experts Group−4(MPEG−4) Part 10 Advanced Video Coding(AVC) Standard/国際電気通信連合、電気通信セクタ(ITU−T)H.264 Recommendation(以下「MPEG−4 AVC規格」)などの現在のビデオ圧縮方式および規格での変換について、より高度な変換手法(例えばサブバンドコーディングなど)と比べて、本質的に複雑さが低く、同程度の性能が達成されるために、ブロックベースの変換手法が主に選ばれてきた。重複変換は、離散コサイン変換(DCT)などの非重複変換よりも著しく性能が高く、複雑さがわずかに増大するだけである。重複変換は、コーディング利得を最大にし、エネルギー圧縮を最大にし、良好な周波数応答を与え、基底での正則性を最大にし、または上記の目的の組合せを最大にするように設計することができる。コーディング利得は直接的にレートひずみ性能の改善につながるので、コーディング利得は特に関心を引くものである。変換のコーディング利得は、「変換なしの再構築ひずみ」と「変換を伴う再構築ひずみ」との比として計算される。高ビットレートという仮定の下で、重複双直交変換(lapped bi−orthogonal transform)(LBT)に関するこの量は、第1の従来技術の手法では以下のように記述される。
Figure 2013516834
上式で、
Figure 2013516834
はソースxの分散であり、yは重複変換の出力であり、
Figure 2013516834
はi番目の変換出力の分散であり、Pi -1は重複変換の合成基底(ポストフィルタカラム)である。高ビットレート重複変換の設計は、式(1)で定義されるコーディング利得が最大となることを必要とする。
第2の従来技術の手法では、準最適重複変換を、プレフィルタ演算と、その後に続くシフテッドDCT演算に分解する代替均等物が開示される。この利点は、既存のエンコーダおよびデコーダループの外部でプレフィルタ手法を適用することができ、したがって第2の従来技術の手法は既存のエンコーダおよびデコーダ内でほとんど変更の必要がないことである。
重複変換に対するプレフィルタ処理ベースの手法では、出力yを以下のように表すことができる。
y=DCT[Shift(Px)] (2)
上式で、Shiftはプレフィルタとブロック変換の間の時間シフトであり、Pは現データxに対して適用されるプレフィルタである。
図1を参照すると、4×4プレフィルタと、その後に続くシフテッド4×4 DCT演算としての4×8重複変換の実装が、全般的に参照番号100によって示されている。すなわち、図1は、重複変換の2つの等価な実装を示す。図1の上部では、重複双直交変換により、8つの入力サンプルが4つの出力サンプルに直接変換される。図1から気付くように、同数の合計入力および出力サンプルを得るために、次の8つの入力サンプルが、最初の8つの入力サンプルと重複して取得される。実装がプレフィルタを使用する図1の下部に関して、以下が含まれる。まず、プレフィルタを4つの入力サンプルに適用し、次いで、DCTを適用する。プレフィルタと離散コサイン変換との間のシフトにより、図1の上部と全く同様に、それぞれの4つの出力サンプルについて8つの入力サンプルの処理が可能となることに留意されたい。
MPEG−4 AVC Standardで実施されるようなブロックベースのコーディング手法を増強するための以前の取り組みは、前処理フィルタおよび後処理フィルタを使用し、コーディング利得を向上させると共に、予測コーディング効率に対する影響を無視することを含む。しかし、そのような従来技術のプレフィルタは、単一の変換のみで動作するように設計される。例えば、第3の従来技術の手法は、4×4プレフィルタがイントラコーディング用の4×4 DCTで動作するように設計された方式を使用する。さらに、第3の従来技術の手法は、より高い圧縮効率を達成するために、プレフィルタ処理およびポストフィルタ処理と調和して働くようにレートひずみオプティマイザや最確モードプレディクタなどの従属エンコーダおよびデコーダブロックを修正することを何ら考慮しない。
従来技術のこれらおよび他の欠点および不都合が、ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置を対象とする本原理によって対処される。
本原理の一態様によれば、装置が提供される。この装置は、ピクチャに関する入力データを、結果として得られるビットストリームとして符号化するビデオエンコーダを含む。ビデオエンコーダは、プレフィルタと、プレフィルタに結合されたポストフィルタとを含む。プレフィルタは、ピクチャに関する入力データをフィルタ処理し、ポストフィルタは、ピクチャに関するループ内再構築後データをフィルタ処理する。
本原理の別の態様によれば、ビデオエンコーダにおける方法が提供される。この方法は、ピクチャに関する入力データを、結果として得られるビットストリームとして符号化することを含む。ビデオエンコーダは、プレフィルタと、プレフィルタに結合されたポストフィルタとを含む。プレフィルタは、ピクチャに関する入力データをフィルタ処理し、ポストフィルタは、ピクチャに関するループ内再構築後データをフィルタ処理する。
本原理のさらに別の態様によれば、装置が提供される。この装置は、ピクチャに関する残差イメージデータを復号化するビデオデコーダを含む。ビデオデコーダは、プレフィルタと、プレフィルタに結合されたポストフィルタとを含む。プレフィルタは、残差イメージデータを復号化する際に使用される基準ピクチャをフィルタ処理し、ポストフィルタは、ピクチャに関するループ内再構築後データをフィルタ処理する。
本原理のさらに別の態様によれば、ビデオエンコーダにおける方法が提供される。この方法は、ピクチャに関する残差イメージデータ復号化することを含む。ビデオデコーダは、プレフィルタと、プレフィルタに結合されたポストフィルタとを含む。プレフィルタは、残差イメージデータを復号化する際に使用される基準ピクチャをフィルタ処理し、ポストフィルタは、ピクチャに関するループ内再構築後データをフィルタ処理する。
添付の図面と共に読むべきである例示的実施形態の以下の詳細な説明から、本原理のこれらおよび他の態様、特徴、および利点が明らかとなるであろう。
以下の例示的な図に従って本原理をより良く理解することができる。
4×8重複変換の直接的実装、ならびに4×4プレフィルタと、その後に続くシフテッド4×4DCT演算としての同等な実装を示す図である。 本原理の一実施形態による、前処理フィルタおよび後処理フィルタを備える例示的ビデオエンコーダを示すブロック図である。 本原理の一実施形態による、前処理フィルタおよび後処理フィルタを備える例示的ビデオデコーダを示すブロック図である。 本原理の一実施形態による、別々のルーマおよびクロマプレフィルタ処理を使用する、イメージデータを符号化する例示的方法を示す流れ図である。 本原理の一実施形態による、別々のルーマおよびクロマポストフィルタ処理を使用する、イメージデータを復号化する例示的方法を示す流れ図である。 本原理の一実施形態による、予測コーディング(イントラ/インター)をモデル化するのに使用される(関数I(・,・)に関する4つの可能な選択肢を示す図である。 本原理の一実施形態による、予測コーディング(イントラ/インター)をモデル化するのに使用される(関数I(・,・)に関する4つの可能な選択肢を示す図である。 本原理の一実施形態による、予測コーディング(イントラ/インター)をモデル化するのに使用される(関数I(・,・)に関する4つの可能な選択肢を示す図である。 本原理の一実施形態による、予測コーディング(イントラ/インター)をモデル化するのに使用される(関数I(・,・)に関する4つの可能な選択肢を示す図である。 本原理の一実施形態による、フィルタパラメータ、適応パラメータ、および拡張パラメータのオフライントレーニングに関する例示的方法を示す流れ図である。 本原理の一実施形態による、観測データに対するプレフィルタ処理後推定の距離を最小限に抑えることによってポストフィルタ処理を実施する例示的方法を示す流れ図である。 本原理の一実施形態による、前処理フィルタ処理および後処理フィルタ処理でビデオデータを符号化する例示的方法を示す流れ図である。 本原理の一実施形態による、前処理フィルタ処理および後処理フィルタ処理でビデオデータを復号化する例示的方法を示す流れ図である。 本原理の一実施形態による、別々のルーマおよびクロマプレフィルタ処理を含む、イメージデータを符号化する例示的方法を示す流れ図である。 本原理の一実施形態による、別々のルーマおびクロマポストフィルタ処理を含む、イメージデータを復号化する例示的方法を示す流れ図である。 本原理の一実施形態による、リフティング実装で特異値分解(SVD)を使用して適応型プレフィルタ処理およびポストフィルタ処理を実施する例示的方法を示す流れ図である。 本原理の一実施形態による、行列分解またはガウスの消去法を使用してフィルタのリフティング実装を導出する例示的方法を示す流れ図である。 本原理の一実施形態による、レートひずみオプティマイザをトレーニングする例示的方法を示す流れ図である。 本原理の一実施形態による、最確モードプレディクタをトレーニングする例示的方法を示す流れ図である。 本原理の一実施形態による、ハードウェアでポストフィルタを効率的に実装する例示的方法を示す流れ図である。 本原理の一実施形態による、元の浮動小数点適応型フィルタの整数実装を求める例示的方法を示す流れ図である。
本原理は、ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置を対象とする。
本説明は本原理を例示する。したがって、本明細書では明示的には説明または図示していないが、本原理を実施し、本原理の趣旨および範囲内に含まれる様々な構成を当業者は考案できることになることを理解されよう。
本明細書に記載のすべての例および条件的言語は、当技術分野を促進することに対して本発明者(等)が寄与する本原理および概念を読者が理解するのを助ける、教育的な目的のためのものであり、そのような具体的に記載した例および条件に限定されないと解釈されるべきである。
さらに、本原理の原理、態様、および実施形態、ならびにその特定の例を説明する本明細書のすべての陳述は、その構造的均等物と機能的均等物の両方を包含するものとする。さらに、そのような均等物は、現在知られている均等物、ならびに将来開発される均等物の両方、すなわち構造の如何に関わらず同一の機能を実施する、開発される任意の要素を含むものとする。
したがって、例えば、本明細書で提示するブロック図が本原理を実施する例示的回路の概念図を表すことを当業者は理解されよう。同様に、コンピュータまたはプロセッサが明示的に示されているか否かに関わらず、実質上コンピュータ可読媒体で表すことができ、次いでそのようなコンピュータまたはプロセッサによって実行することのできる任意のフローチャート、流れ図、状態遷移図疑似コードなどが様々なプロセスを表すことを理解されよう。
図に示す様々な要素の機能は、専用ハードウェア、ならびに適切なソフトウェアに関連してソフトウェアを実行することのできるハードウェアを使用することによって実現することができる。プロセッサで実現されるとき、単一の専用プロセッサ、単一の共有プロセッサ、または一部が共有されることのある複数の個々のプロセッサによって機能を実現することができる。さらに、「プロセッサ」または「コントローラ」という用語の使用が、ソフトウェアを実行することのできるハードウェアをもっぱら指すと解釈すべきではなく、限定はしないが、暗黙的に、デジタル信号プロセッサ(「DSP」)ハードウェア、ソフトウェアを格納する読取り専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、および不揮発性ストレージを含むことができる。
従来型および/またはカスタムの他のハードウェアも含めることができる。同様に、図に示す任意のスイッチは概念的なものに過ぎない。その機能は、プログラムロジックの動作、専用ロジック、プログラム制御および専用ロジックの対話、さらには手動によって実施することができ、文脈からより具体的に理解できるように、実装者によって特定の技法が選択可能である。
本明細書の特許請求の範囲では、指定の機能を実施する手段として表される任意の要素は、例えば、a)その機能を実施する回路要素の組合せ、b)ソフトウェアを実行して機能を実施するための適切な回路と組み合わされる、任意の形態のソフトウェア、したがってファームウェア、マイクロコードなどを含むソフトウェアを含む、その機能を実施する任意の方式を包含するものとする。そのような特許請求の範囲によって定義される本原理は、様々な記載の手段によって提供される機能が、特許請求の範囲が求める方式で組み合わされ、互いに一緒にされることにある。したがって、そのような機能を提供することのできる任意の手段が、本明細書で示すものと同等であるとみなされる。
本明細書での、本原理の「一実施形態」ならびに本原理の他の変形形態に対する参照は、実施形態と共に説明する特定の機能、構造、特徴などが本原理の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書全体にわたって様々な場所で出現する「一実施形態では」という語句、ならびに任意の他の変形の出現は、必ずしもすべて同一の実施形態を指すわけではない。
「/」、「および/または」、および「の少なくとも1つ」、例えば、「A/B」の場合、「Aおよび/またはB」、「AおよびBのうちの少なくとも1つ」は、最初に列挙したオプション(A)の選択のみ、または2番目に列挙したオプション(B)の選択のみ、または両方のオプション(AおよびB)の選択を包含するものとすることを理解されたい。別の例として、「A、B、および/またはC」ならびに「A、B、およびCのうちの少なくとも1つ」の場合、そのような言い回しは、最初に列挙したオプション(A)の選択のみ、または2番目に列挙したオプション(B)の選択のみ、または3番目に列挙したオプション(C)の選択のみ、または1番目と2番目に列挙したオプション(AおよびB)の選択のみ、または1番目と3番目に列挙したオプション(AおよびC)の選択のみ、または2番目と3番目に列挙したオプション(BおよびC)の選択のみ、または3つのすべてのオプション(AおよびBおよびC)の選択を包含するものとする。当業者は直ちに理解するように、列挙される項目と同数だけこのことを拡張することができる。
さらに、本明細書では、「ピクチャ」および「イメージ」という語が交換可能に使用され、ビデオシーケンスからの静止イメージまたはピクチャを指す。周知の通り、ピクチャはフレームまたはフィールドでよい。
さらに、本明細書では、「プレフィルタ」および「前処理フィルタ」という用語が交換可能に使用される。同様に、「ポストフィルタ」および「後処理フィルタ」という用語が本明細書では交換可能に使用される。本原理はエンコーダおよびデコーダで適用可能であることを理解されたい。
さらに、本明細書では、「厳密な逆」という語句は、プレフィルタとポストフィルタとの間の関係を記述するのに使用されるとき、ポストフィルタから得られるフィルタ処理結果がプレフィルタから得られるフィルタ処理結果と逆となるように選ばれるプレフィルタおよびポストフィルタに関するフィルタ係数およびフィルタパラメータを指す。言い換えれば、「厳密な逆」は、任意の他の処理(例えば量子化など)がない場合、プレフィルタによって処理され、次いでポストフィルタによって処理されるプレフィルタの入力がポストフィルタの出力と同じとなるようなプレフィルタとポストフィルタとの間の関係を記述する。
さらに、本明細書では、「ほぼ逆」という語句は、プレフィルタとポストフィルタとの間の関係を記述するのに使用されるとき、ポストフィルタから得られるフィルタ処理結果がプレフィルタから得られるフィルタ処理結果とほぼ逆となるように選ばれるプレフィルタおよびポストフィルタに関するフィルタ係数およびフィルタパラメータを指す。同様に、「ほぼ逆」という語句は、ポストフィルタが適応型であるときにプレフィルタとポストフィルタとの間の関係を記述するのに使用されるとき、「小さい」摂動が適応に著しい影響を及ぼさないように選ばれるポストフィルタに関する適応パラメータを指す。この定義は、安定性の数学的概念に関係付けられる。すなわち、入力の変動が小さいとすると、出力の変動も小さい。例えば、そのことを、出力の違いのノルムが入力の違いのノルムにある係数を掛けたものよりも小さいと述べることによって数学的に表すことができる。このことの典型的な例は線形システムである。(例えば、データを量子化する)入力の変動が、同程度の出力の変動を示唆するからである。同じ概念が「ほぼ逆」によって意図され、「ほぼ逆」は「厳密な逆」を保証しないが、かなり近く、例えば、「ほぼ」を、システムで受け入れられる任意の入力について、入力の違いのノルムと出力の違いのノルムを関係付ける定数として表すことができる。
例示および説明のために、本明細書では、MPEG−4 AVC Standardに勝る改良の文脈で例を説明し、MPEG−4 AVC Standardを本発明者等の説明に関する基準として使用し、MPEG−4 AVC Standardを超える改良および拡張を説明する。しかし、本原理はMPEG−4 AVC Standardおよび/またはその拡張だけに限定されないことを理解されたい。本明細書で与えられる本原理の教示が与えられると、本原理が等しく適用可能であり、他の規格の拡張に適用したとき、またはまだ開発されていない規格内で適用および/または組み込まれるときに本原理が少なくとも同様の利点をもたらすことを当業者なら理解されよう。さらに、規格に準拠せず、知的所有権のある定義に準拠するビデオエンコーダおよびビデオデコーダにも本原理が当てはまることを理解されたい。
上述のように、MPEG−4 AVC Standardで使用されるブロックベースのコーディング手法は、インター変換ブロック境界に存在する相関を効果的に活用しない。明確には、本明細書では、「インター変換ブロック」は、相異なる変換によって処理されるデータのブロックを指す。ブロック内の空間的相関が変換によって除去され、すなわちイントラ変換データが変換によって非相関化される。しかし、MPEG−4 AVCでの変換は重複しないので、相異なる変換ブロックに属するデータ間の相関が、適切に除去されない。本原理によれば、インター変換ブロック相関を活用し、ビデオコーディングで観測されるブロッキングアーチファクトを低減する、結合した適応型前処理フィルタおよび後処理フィルタのセットを定義する方法および装置を開示する。例えば、結合したフィルタのセットは、1つまたは複数の後処理フィルタに結合された1つまたは複数の前処理フィルタを含むことができる。
一実施形態では、フィルタ適応は、例えば、入力データについて計算される「勾配」、および/または「量子化器ステップサイズ」、および/または「分散」などのローカルデータ統計に基づくことができる。予測(空間的または時間的)機構と協調して働くように前処理フィルタおよび後処理フィルタを設計および最適することに関する少なくとも1つの実施形態を開示する。この共同の設計および最適化は、より良好な全体的レートひずみ性能を達成する助けになる。さらに、前処理フィルタおよび後処理フィルタは、エッジの保持の助けとなり、より良好な知覚品質が得られる。本原理はまた、より良好な性能利得を達成するために、レートひずみオプティマイザや最確モードプレディクタなどの既存のビデオアーキテクチャをどのように修正するかを略述する。
前処理フィルタおよび後処理フィルタの目標は、このインター変換ブロック相関を活用し、したがってより高いコーディング効率を達成することである。さらに、前処理フィルタおよび後処理フィルタが変換ブロック境界にわたって適用されるので、ブロックベースのビデオコーディングでしばしば見られるブロッキングアーチファクトを低減する助けになる。
通常、予測を使用して冗長性が除去される前に、プレフィルタが元のフレームに適用される。強いプレフィルタが元のフレームに適用される場合、まさに予測のために使用されるピクセルを激しく摂動することになる。したがって、予測の品質が不十分であると、予測コーディングの圧縮効率が低下することになる。したがって、全体的なエンコーダおよびデコーダ圧縮効率も低下することになる。予測コーディングに対するプレフィルタ処理の影響を考慮し、補償するために、新しいプレフィルタ設計方法を開示する。一実施形態では、プレフィルタが、より良好な圧縮効率のために、入力データについて計算される「勾配」、および/または「量子化器ステップサイズ」、および/または「分散」などのローカルデータ統計に適合される。結合「適応型」ポストフィルタが、エンコーダのプレフィルタによって実施される演算を反転するように設計される。システムの性能は、前処理フィルタおよび後処理フィルタと共に動作するようにレートひずみオプティマイザおよび最確モードプレディクタを修正することによってさらに改善される。
図2を参照すると、前処理フィルタおよび後処理フィルタを備える例示的ビデオエンコーダが、全般的に参照番号200によって示されている。ビデオエンコーダ200は、コンバイナ210の第1の入力と信号通信で接続された第1の出力を有するプレフィルタ205を含む。コンバイナの出力は、変換器(T)215の入力と信号通信で接続される。変換器(T)215の出力は、量子化器(Q)220の入力と信号通信で接続される。量子化器(Q)220の出力は、エントロピーコーダ225の入力および逆量子化器(IQ)230の入力と信号通信で接続される。逆量子化器(IQ)230の出力は、逆変換器(IT)235の入力と信号通信で接続される。逆変換器(IT)235の出力は、コンバイナ240の第1の非反転入力と信号通信で接続される。コンバイナ240の出力は、ポストフィルタ245の第1の入力およびイントラプレディクタ280の入力と信号通信で接続される。ポストフィルタ245の出力は、デブロッキングフィルタ250の入力およびループフィルタ255の入力と信号通信で接続される。ループフィルタ255の出力は、基準メモリ260の入力と信号通信で接続される。基準メモリ260の第1の出力は、動き/イントラ補償器265の第1の入力と信号通信で接続される。基準メモリ260の第2の出力は、動き推定器270の第2の入力と信号通信で接続される。動き推定器270の出力は、動き/イントラ補償器265の第2の入力と信号通信で接続される。動き/イントラ補償器265の出力は、プレフィルタ275の第1の入力と信号通信で接続される。プレフィルタ275の出力は、イントラ/インターセレクタ285の第1の入力と信号通信で接続される。イントラ/インターセレクタ285の出力は、コンバイナ210の第2の非反転入力およびコンバイナ240の第2の非反転入力と信号通信で接続される。イントラプレディクタ280の出力は、イントラ/インターセレクタ285の第2の入力と信号通信で接続される。エントロピーコーダ225の出力は、ビットストリームを出力する、ビデオエンコーダ200の出力として利用可能である。デブロッキングフィルタ250の出力は、再構築を出力する、ビデオエンコーダ200の出力として利用可能である。プレフィルタ205の入力は、ビデオエンコーダに関係するビデオソースおよび/またはコンテンツを受信する、ビデオエンコーダの入力として利用可能である。プレフィルタ205、コンバイナ210、および変換器(T)215は、逆変換器(I)235、コンバイナ240、およびポストフィルタ245から形成される等価な逆重複変換277に対する等価な順方向重複変換266を形成する。
図3を参照すると、前処理フィルタおよび後処理フィルタを備える例示的ビデオデコーダが、全般的に参照番号300によって示されている。ビデオデコーダ300は、エントロピーデコーダ310の入力と信号通信で接続された出力を有する入力バッファ305を含む。エントロピーデコーダ310の出力は、逆量子化器315の入力と信号通信で接続される。逆量子化器320の出力は、コンバイナ325の第1の非反転入力と信号通信で接続される。コンバイナ325の出力は、ポストフィルタ330の入力およびイントラプレディクタ365の入力と信号通信で接続される。ポストフィルタ330の出力は、ループフィルタ340の入力と信号通信で接続される。ループフィルタ340の出力は、基準メモリ345の入力と信号通信で接続される。基準メモリ345の出力は、動き/イントラ補償器350の入力と信号通信で接続される。動き/イントラ補償器350の出力は、プレフィルタ355の入力と信号通信で接続される。プレフィルタ355の出力は、イントラ/インターセレクタ360の第1の入力と信号通信で接続される。イントラ/インターセレクタ360の出力は、コンバイナ325の第2の非反転入力と信号通信で接続される。イントラプレディクタ365の出力は、イントラ/インターセレクタ360の第2の入力と信号通信で接続される。入力バッファ305の入力は、入力ビットストリームを受信する、ビデオエンコーダ300の入力として利用可能である。デブロッキングフィルタ335の出力は、ビットストリームに対応する1つまたは複数のピクチャを出力する、ビデオデコーダ300の出力として利用可能である。逆変換器(IT)320、コンバイナ325、およびポストフィルタ330は、等価な逆重複変換377を形成する。
したがって、図2は、元のビデオソースをプレフィルタ処理するビデオエンコーダの一実施形態を示す。結合される後処理フィルタ245は、イントラコーディング用のコーディングループの外部に配置されるが、インターコーディング用のコーディングループの内部に配置される。図3は、対応するデコーダを示し、前処理フィルタ355および後処理フィルタ330ならびにその適応パラメータが、ルーマ成分およびクロマ成分について別々にオフラインで導出される。別々のパラメータは、異なる解像度についても得られる。
プレフィルタ(例えば、205および275)は物理的にポストフィルタ245に結合されないが、プレフィルタ205、275、およびポストフィルタ245は、プレフィルタ205に対する(プレフィルタ処理後)入力と同一であり、または可能な限り近い出力を供給するためにポストフィルタ245が動作するような関係を有するという点で「結合される」。すなわち、ポストフィルタ245に関するフィルタ係数およびパラメータが、ポストフィルタ245によって実施されるフィルタ処理演算がプレフィルタ205、275によって実施されるフィルタ処理演算とほぼ逆となるように選択される。
図4を参照すると、別々のルーマおよびクロマプレフィルタ処理を使用する、イメージデータを符号化する例示的方法が、全般的に参照番号400によって示されている。方法400は、機能ブロック407に制御を渡す開始ブロック405を含む。機能ブロック407はデータ(ソース/再構築データ)を入力し、判定ブロック410に制御を渡す。判定ブロック410は、フィルタ処理すべき現成分がルーマ成分であるか否かを判定する。そうである場合、機能ブロック415および機能ブロック435に制御を渡す。そうでない場合、機能ブロック440および機能ブロック460に制御を渡す。機能ブロック415はルーマ適応パラメータを設定し、機能ブロック435に制御を渡す。機能ブロック435は、(機能ブロック415によって設定されたルーマ適応パラメータを使用して)ルーマプレフィルタ処理を実施し、機能ブロック465に制御を渡す。機能ブロック465は、プレフィルタ処理後データを出力し、終了ブロック499に制御を渡す。機能ブロック440はクロマ適応パラメータを設定し、機能ブロック460に制御を渡す。機能ブロック460は、(機能ブロック440によって設定されたクロマ適応パラメータを使用して)クロマプレフィルタ処理を実施し、機能ブロック465に制御を渡す。機能ブロック415に関して、機能ブロック415は、エンコーダ設定420、プレディクタモード425、ならびに変換サイズおよびタイプ430に基づいてルーマ適応パラメータを設定する。機能ブロック440に関して、機能ブロック440は、エンコーダ設定445、プレディクタモード450、ならびに変換サイズおよびタイプ455に基づいてクロマ適応パラメータを設定する。
図5を参照すると、本原理の一実施形態による、別々のルーマおよびクロマポストフィルタ処理を使用する、イメージデータを復号化する例示的方法が、全般的に参照番号500によって示されている。方法500は、機能ブロック507に制御を渡す開始ブロック505を含む。機能ブロック507は再構築データを入力し、判定ブロック510に制御を渡す。判定ブロック510は、フィルタ処理すべき現成分がルーマ成分であるか否かを判定する。そうである場合、機能ブロック515および機能ブロック535に制御を渡す。そうでない場合、機能ブロック540および機能ブロック560に制御を渡す。機能ブロック515はルーマ適応パラメータを設定し、機能ブロック535に制御を渡す。機能ブロック535は、(機能ブロック515によって設定されたルーマ適応パラメータを使用して)ルーマポストフィルタ処理を実施し、機能ブロック565に制御を渡す。機能ブロック565はポストフィルタ処理後データを出力し、終了ブロック599に制御を渡す。機能ブロック540はクロマ適応パラメータを設定し、機能ブロック560に制御を渡す。機能ブロック560は、(機能ブロック540によって設定されたクロマ適応パラメータを使用して)クロマポストフィルタ処理を実施し、機能ブロック565に制御を渡す。機能ブロック515に関して、機能ブロック515は、エンコーダ設定520、プレディクタモード525、ならびに変換サイズおよびタイプ530に基づいてルーマ適応パラメータを設定する。機能ブロック540に関して、機能ブロック540は、エンコーダ設定545、プレディクタモード550、ならびに変換サイズおよびタイプ555に基づいてクロマ適応パラメータを設定する。
パラメータ導出は、プレフィルタの設計から始まる。プレフィルタ出力の時間領域表現が以下のように書き直される。
y=D[Shift(I(Px,Prev(x)))] (3)
上式で、Dはブロック変換(例えば、離散コサイン変換(DCT)、カルーネンレーベ変換(KLT)、および/またはモード依存方向性変換(MDDT))であり、Prev(x)は、xを予測する際に使用するデータである。関数I(・,・)は、考慮中のコーディング方式に対して使用されるプレディクタの挙動を取り込むようにモデル化される。異なるプレディクタを表すために異なるモデルを選ぶことができる。図4A〜4Dを参照すると、予測コーディング(イントラ/インター)をモデル化するのに使用される関数I(・,・)についての4つの可能な選択肢が、全般的に参照番号610、620、630、および640によって示されている。具体的には、図6Aは、平均2乗誤差を最小限に抑える直線を以前のピクセルのサブセットを通じてフィッティングし、現ピクセルに関する予測を得るために補外する場合の関数についての選択肢610を示す。図6Bは、以前のピクセルを現ピクセル関数に関する予測としてコピーする場合の関数についての選択肢620を示す。図6Cは、以前のブロックを現ブロックに関する予測としてコピーする場合の関数についての選択肢630を示す。図6Dは、平均2乗誤差を最小限に抑える直線を以前のピクセルのサブセットを通じてフィッティングし、現ブロックに関する予測を得るために補外する場合の関数についての選択肢640を示す。考慮中のx全体に関する予測を得るために、選択肢610および620を反復的に適用することができる。
MPEG−4 AVC Standardでのプレフィルタ処理では、分散
Figure 2013516834
が以下のように計算される。
Figure 2013516834
次に、全体的なMPEG−4 AVC Standardプレフィルタ設計問題を以下のように表すことができる。
Figure 2013516834
上記の問題を以下によって近似する(「逆DCT」および「予測再構築」による再構築でのひずみ増大が固定倍数であるという仮定に対応する)。
Figure 2013516834
このようにして、少なくとも1つ実装では、本原理によるフィルタを設計する方法は、予測コーディング効率に対するプレフィルタ処理の影響を組み込む。式(6)を解くことによって得られる解を進化最適化アルゴリズムのためのシードとして使用することにより、解をさらに改善することができる。
(コーディングモード選択を実施する)レートひずみオプティマイザや最確モードプレディクタなどの次のシステムブロックを、設計した前処理フィルタおよび後処理フィルタと協調して働くように修正およびトレーニングする。レートひずみオプティマイザに対する修正は、エンコーダだけの修正である。
目標関数、例えば、コーディング利得、エネルギー圧縮、周波数応答、基底での正則性、または上記の目標の一部もしくはすべての一次結合を最大にすることにより、前処理フィルタパラメータおよび後処理フィルタパラメータ、適応パラメータ、ならびにシステムパラメータが得られる。代表的シーケンスサブセットに対してオフラインでパラメータのすべてのトレーニングおよび決定を実施する。トレーニングが完了すると、これらのパラメータをすべてのビデオシーケンスに対して使用することができる。
図7を参照すると、本原理の一実施形態による、フィルタパラメータ、適応パラメータ、および拡張パラメータのオフライントレーニングに関する例示的方法が、全般的に参照番号700によって示されている。方法700は、機能ブロック710に制御を渡す開始ブロック705を含む。機能ブロック710はトレーニングデータを入力し、機能ブロック715に制御を渡す。機能ブロック715は、トレーニングデータに基づいてフィルタパラメータ、適応パラメータ、および拡張パラメータを求め、機能ブロック720に制御を渡す。機能ブロック720はパラメータを格納し、終了ブロック799に制御を渡す。
ポストフィルタは、プレフィルタによって実施される処理を反転するためにプレフィルタに結合される。非適応型固定フィルタでは、ポストフィルタはプレフィルタの厳密な逆である。固定フィルタ処理は、フィルタ処理なしに勝る性能改善をもたらすが、この性能改良をフィルタ適応によってさらに高めることができる。
これから、プレフィルタ適応およびポストフィルタ適応に関する可能な変形形態および実施形態を論じる。
適応
プレフィルタでの適応が元のデータに基づく場合、元のデータの(例えばデコーダ側での)非可用性のために、ポストフィルタは完全な逆となることはできない。そのような場合、ポストフィルタは、ポストフィルタに入力されるデータに基づいて適応を推定する。2つの新規なポストフィルタ処理実施形態が以下のように可能である。
第1の実施形態では、適応的にプレフィルタ処理されるときに現観測値に最も近い出力ベクトルを与える元のデータベクトルを推定する。凸最適化または非凸最適化のどちらかを使用して、この推定を実施することができる。
図8を参照すると、観測データに対するプレフィルタ処理後推定の距離を最小限に抑えることによってポストフィルタ処理を実施する例示的方法が、全般的に参照番号800によって示されている。方法800は、機能ブロック810に制御を渡す開始ブロック805を含む。機能ブロック810は入力観測値を受信し、機能ブロック815に制御を渡す。機能ブロック815は推測xを行い、機能ブロック820に制御を渡す。機能ブロック820は適応型フィルタ処理を実施し、機能ブロック825に制御を渡す。機能ブロック825は、観測値に対する推測から距離を測定し、判定ブロック845に制御を渡す。判定ブロック845は、(距離から判定して)以前の推測からの改善があるか否かを判定する。そうである場合、制御は機能ブロック815に戻る。そうでない場合、機能ブロック850に制御を渡す。機能ブロック850は、観測値に最も近い推測を出力し、終了ブロック899に制御を渡す。機能ブロック820に関して、機能ブロック820は、エンコーダ設定835、プレディクタモード830、ならびに変換サイズおよびタイプ840に基づいて適応型フィルタ処理を実施する。
第2の実施形態では、観測データベクトルに基づいて、「使用された適応型プレフィルタ」を推定し、ポストフィルタ変換に対応する逆マトリックスを計算する。次いで、この逆マトリックスを使用してポストフィルタ処理を実施する。プレフィルタの選択は、入力データ(および場合によっては、例えばプレディクタモードや符号化設定などの他のデータ)に適応的に依存する。したがって、正しいポストフィルタを適用してプレフィルタプロセスを反転するために、選択されたプレフィルタを推論しなければならず、すなわち使用されたプレフィルタの推定を実施しなければならない。適切なポストフィルタを適用するために使用されるプレフィルタを推論または推定するために、デコーダは、フィルタ処理後量子化データが利用可能であり、すなわちデコーダは、上述のデータ(例えば、入力データ、他のデータ(例えば、プレディクタモード、符号化設定など)、およびフィルタ処理後量子化データ)を観測および解析し、使用されたプレフィルタの推定を実施し、次いでポストフィルタに対応する逆行列を計算することができる。
ポストフィルタ処理に対する前述の手法は、ポストフィルタをプレフィルタのほぼ逆にする。
図9を参照すると、前処理フィルタ処理および後処理フィルタ処理でビデオデータを符号化する例示的方法が、全般的に参照番号900によって示されている。方法900は、機能ブロック910に制御を渡す開始ブロック905を含む。機能ブロック910はビデオソースデータを入力し、機能ブロック915、機能ブロック965、および機能ブロック960に制御を渡す。機能ブロック915はビデオソースデータをプレフィルタ処理し、機能ブロック920に制御を渡す。機能ブロック920は、ビデオソースデータに関する残差(例えば、ビデオソースデータからの元のピクチャと、予測とも呼ばれる基準ピクチャとの差)を計算し、機能ブロック925に制御を渡す。機能ブロック925は、残差に対する変換を適用し、それに関する係数を得、機能ブロック930および機能ブロック965に制御を渡す。機能ブロック930は、係数を量子化して量子化係数を得、機能ブロック935および機能ブロック965に制御を渡す。機能935は、量子化係数を逆量子化して逆量子化係数を得、機能ブロック940、機能ブロック975、および機能ブロック980に制御を渡す。機能ブロック940は、逆量子化係数に対して逆変換を適用して、再構築残差を得、機能ブロック945、機能ブロック975、および機能ブロック980に制御を渡す。機能ブロック945は、予測に再構築残差を追加して、再構築ピクチャを得、機能ブロック950、機能ブロック975、および機能ブロック970に制御を渡す。機能ブロック950は、再構築ピクチャに対するポストフィルタ処理を実施して、再構築およびポストフィルタ処理後ピクチャを得、機能ブロック955に制御を渡す。機能ブロック955は、再構築およびポストフィルタ処理後ピクチャのプレフィルタ処理を実施し、機能ブロック960に制御を渡す。機能ブロック960はインター予測を実施し、機能ブロック920、機能ブロック945、機能ブロック975、機能ブロック965、および機能ブロック980に制御を返す。機能ブロック965は、プレフィルタ選択を使用するエンコーダ適応を実施し、機能ブロック915に制御を返す。機能ブロック970はイントラ予測を実施し、機能ブロック980、機能ブロック945、機能ブロック975、機能ブロック920、および機能ブロック965に制御を返す。機能ブロック985はデブロッキングフィルタ処理を実施し、機能ブロック990に制御を渡す。機能ブロック990は再構築を出力し、終了ブロック999に制御を渡す。機能ブロック975はデコーダ適応を模倣し、機能ブロック950に制御を渡す。機能ブロック980はデコーダ適応を模倣し、機能ブロック955に制御を渡す。
図10を参照すると、前処理フィルタ処理および後処理フィルタ処理でビデオデータを復号化する例示的方法が、全般的に参照番号1000によって示されている。方法1000は、機能ブロック1010に制御を渡す開始ブロック1005を含む。機能ブロック1010はビットストリームを入力し、機能ブロック1015に制御を渡す。機能ブロック1015は、ビットストリーム中の量子化残差を逆量子化し、それに関する係数を得、機能ブロック1020、機能ブロック1055、および機能ブロック1060に制御を渡す。機能ブロック1020は、係数を逆変換して(例えば、ビットストリーム中のピクチャに関する)残差を得、機能ブロック1025、機能ブロック1055、および機能ブロック1060に制御を渡す。機能ブロック1025は、予測に残差を追加して、再構築ピクチャを得、機能ブロック1030、機能ブロック1055、および機能ブロック1045に制御を渡す。機能ブロック1030は、再構築ピクチャに関してポストフィルタ処理を実施し、再構築およびポストフィルタ処理後ピクチャを得、機能ブロック1035、機能ブロック1060、および機能ブロック1050に制御を渡す。機能ブロック1035は、再構築およびポストフィルタ処理後ピクチャのプレフィルタ処理を実施し、機能ブロック1040に制御を渡す。機能ブロック1040はインター予測を実施し、機能ブロック1060、機能ブロック1055、および機能ブロック1025に制御を返す。機能ブロック1045はイントラ予測を実施し、機能ブロック1025、機能ブロック1060、および機能ブロック1055に制御を渡す。機能ブロック1050はデブロッキングフィルタ処理を実施し、機能ブロック1065に制御を渡す。機能ブロック1065は復号化出力を供給し、終了ブロック1099に制御を渡す。
別の実施形態では、プレフィルタおよびポストフィルタがリフティング方式を使用して実装される場合、リフティング機構内に適応を組み込むことができる。そのような場合、プレフィルタでの適応をポストフィルタで完全に反転することができる。
図11を参照すると、リフティング方式を用いた別々のルーマおよびクロマプレフィルタ処理を含む、イメージデータを符号化する例示的方法が、全般的に参照番号1100によって示されている。方法1100は、機能ブロック1107に制御を渡す開始ブロック1105を含む。機能ブロック1107はデータ(ソース/再構築データ)を入力し、判定ブロック1110に制御を渡す。判定ブロック1110は、フィルタ処理すべき現成分がルーマ成分であるか否かを判定する。そうである場合、機能ブロック1115に制御を渡す。そうでない場合、機能ブロック1140に制御を渡す。機能ブロック1115は、リフティング実装を用いたルーマプレフィルタ処理を実施し、機能ブロック1165に制御を渡す。機能ブロック1165はプレフィルタ処理後データを出力し、終了ブロック1199に制御を渡す。機能ブロック1140は、リフティング実装を用いたクロマプレフィルタ処理を実施し、機能ブロック1165に制御を渡す。機能ブロック1115に関して、機能ブロック1115は、リフティング実装と、エンコーダ設定1120、プレディクタモード1125、および変換サイズおよびタイプ1130に基づく適応とを用いたルーマプレフィルタ処理を実施する。機能ブロック1140に関して、機能ブロック1140は、リフティング実装と、エンコーダ設定1145、プレディクタモード1150、および変換サイズおよびタイプ1155に基づく適応とを用いたクロマプレフィルタ処理を実施する。
図12を参照すると、別々のルーマおびクロマポストフィルタ処理を含む、イメージデータを復号化する例示的方法が、全般的に参照番号1200によって示されている。方法1200は、機能ブロック1207に制御を渡す開始ブロック1205を含む。機能ブロック1207は再構築データを入力し、判定ブロック1210に制御を渡す。判定ブロック1210は、フィルタ処理すべき現成分がルーマ成分であるか否かを判定する。そうである場合、機能ブロック1215に制御を渡す。そうでない場合、機能ブロック1260に制御を渡す。機能ブロック1215は、リフティング実装を用いたルーマポストフィルタ処理を実施し、機能ブロック1265に制御を渡す。機能ブロック1265はポストフィルタ処理後データを出力し、終了ブロック1299に制御を渡す。機能ブロック1260は、リフティング実装を用いたクロマポストフィルタ処理を実施し、機能ブロック1265に制御を渡す。機能ブロック1215に関して、機能ブロック1215は、リフティング実装と、エンコーダ設定1220、プレディクタモード1225、ならびに変換サイズおよびタイプ1230に基づく適応とを用いたルーマポストフィルタ処理を実施する。機能ブロック1260に関して、機能ブロック1260は、リフティング実装と、エンコーダ設定1245、プレディクタモード1250、ならびに変換サイズおよびタイプ1255に基づく適応とを用いたクロマポストフィルタ処理を実施する。
特異値分解を使用して固定プレフィルタ変換行列をまず分解することによってリフティング実装を実施することができる。特異値分解によって3つの行列の積が得られる。第1の行列および第3の行列は直交行列である。周知の通り、あらゆる直交行列は一連のギブンズ平面回転に分解することができる(そのような回転数は行列の次元に関係し、好ましくは「N個から2個を選ぶ」数学的演算を使用し、すなわちnが行列の次元である場合、回転数はn*(n−1)/2である)。各平面の回転は、予測−回転−予測のような3つのリフティングステップを使用して実装することができる。特異値分解から得られる第2の行列は対角行列であり、スケーリングに対応する。リフティング実装で使用することのできる新規な適応技法は、対角行列の値を変更することである。値は、そのような値をデコーダで厳密に、またはほぼ反転することができるように変更される。プレフィルタによって実施される個々のリフティングステップを反転することによってポストフィルタリフティング実装が得られる。
図13を参照すると、リフティング実装で特異値分解(SVD)を使用して適応型プレフィルタ処理およびポストフィルタ処理を実施する例示的方法が、全般的に参照番号1300によって示されている。方法1300は、機能ブロック1310に制御を渡す開始ブロック1305を含む。機能ブロック1310はベースプレフィルタ変換行列を入力し、機能ブロック1315に制御を渡す。機能ブロック1315は特異値分解(SVD)を実施し、機能ブロック1320、機能ブロック1325、および機能ブロック1330に制御を渡す。機能ブロック1320は、第1の直交行列を(機能ブロック1315によって実施される)SVDの第1の出力として受信し、機能ブロック1335に制御を渡す。機能ブロック1325は、第2の対角行列を(機能ブロック1315によって実施される)SVDの第2の出力として受信し、機能ブロック1345に制御を渡す。機能ブロック1330は、第3の直交行列を(機能ブロック1315によって実施される)SVDの第3の出力として受信し、機能ブロック1365に制御を渡す。機能ブロック1335は、第1の直交行列を与えられた平面回転に分解し、機能ブロック1340に制御を渡す。機能ブロック1340は、各回転を予測−更新−予測リフティングステップとして実装し、機能ブロック1345に制御を渡す。機能ブロック1345は、対角行列の要素について適応を求め、機能ブロック1350に制御を渡す。機能ブロック1350は、1340のリフティングステップ、1345の適応要素を有するスケーリング行列、および1370のリフティングステップを連結し、プレフィルタの完全なリフティング実装を得、機能ブロック1355に制御を渡す。機能ブロック1355は、個々のリフティングステップおよび適応を反転して、ポストフィルタリフティング実装を得、機能ブロック1360に制御を渡す。機能ブロック1360は、フィルタに関するリフティング実装を格納し、終了ブロック1399に制御を渡す。機能ブロック1365は、第3の直交行列を与えられた平面回転に分解し、機能ブロック1370に制御を渡す。機能ブロック1370は、各回転を予測−更新−予測リフティングステップとして実装し、機能ブロック1345に制御を渡す。
固定プレフィルタおよびポストフィルタのリフティング実装を求める他の新規な方式は、QR分解、PLUS分解などの行列分解を含む。ガウスの消去法(行変換のみ)を使用して、プレフィルタ変換行列を恒等行列に還元することができる。各行変換はリフティングステップである。これらのリフティングステップは、連結されたときに、ポストフィルタリフティング実装が得られる。ポストフィルタでのステップを反転することにより、プレフィルタ実装が得られる。
図14を参照すると、行列分解またはガウスの消去法を使用してフィルタのリフティング実装を導出する例示的方法が、全般的に参照番号1400によって示されている。方法1400は、機能ブロック1410に制御を渡す開始ブロック1405を含む。機能ブロック1410はベースプレフィルタ変換行列を入力し、機能ブロック1415および機能ブロック1425に制御を渡す。機能ブロック1415は、(機能ブロック1410によって入力されたベースプレフィルタ変換行列の)行列分解からプレフィルタのリフティング実装を得、機能ブロック1420に制御を渡す。機能ブロック1425は、ガウスの消去法(機能ブロック1410によって入力されたベースプレフィルタ変換行列に関する行変換)を使用してポストフィルタのリフティング実装を得、機能ブロック1430に制御を渡す。機能ブロック1420は、個々のリフティングステップおよび適応を反転し、ポストフィルタリフティング実装を得、機能ブロック1435に制御を渡す。機能ブロック1430は、個々のリフティングステップおよび適応を反転し、プレフィルタリフティング実装を得、機能ブロック1435に制御を渡す。機能ブロック1435は、フィルタのリフティング実装を格納し、終了ブロック1499に制御を渡す。したがって、方法1400に関して、次いで1つまたは複数のリフティングステップで適応を(完全に可逆な、またはほぼ可逆な方式で)実施することができる。
入力データから導出されるフィルタ適応は、データ勾配強度および/またはデータ勾配方向および/またはデータ分散などの特性に基づく。この新規な適応は、勾配強度および/または勾配方向および/または勾配分散を互いに素な範囲に区分化し、相異なる範囲について固定フィルタを適用することによって離散的に行うことができる。このことは、ルックアップテーブルに基づく適応と考えることができる。別の実施形態では、この適応は、勾配強度および/または勾配方向および/またはデータ分散の連続関数である。良好な性能をもたらす勾配適応関数の選択は、勾配が増加するときに指数関数的に減少する関数である。勾配は、プレフィルタ処理されているピクセル間の差として計算することができる。勾配のより正確な測定のために、ピクセル差は、プレフィルタ境界を超え、適切に重み付けされるピクセルを含むことができる。勾配を使用してエッジを検出することに関心があるので、勾配の大きさのみを考慮することにより、エッジを検出するより良好な能力を得ることができる。
適応のプロセスは、以下によってさらに向上する。
−水平方向および垂直方向について異なる適応型プレフィルタおよびポストフィルタを選ぶ。
−適応型プレフィルタおよびポストフィルタを選択的に適応する。
・変換ブロック境界のみに対して、
・変換ブロック境界および変換ブロック内に対して、および/または
・プレフィルタおよびポストフィルタをオフにする。
適応型プレフィルタおよびポストフィルタの1つの新規な特徴は、様々な変換(離散コサイン変換(DCT)、カルーネンレーベ変換(KLT)、モード依存方向性変換(MDDT))および様々な変換サイズと共に働くことができることである。以前の作業では、プレフィルタおよびポストフィルタ組合せが、単一の変換および変換サイズと共に働くように制限された。前述の図4および5は、前述の適応に関する一実施形態を示す。例えば、図4および5を参照すると、エンコーダ設定、予測モード、変換タイプ/サイズ、および入力データを含むいくつかの入力に従って前処理フィルタおよび後処理フィルタがその挙動を適応させることがわかる。
システム拡張
プレフィルタおよびポストフィルタの性能は、いくつかのエンコーダおよびデコーダ機能を修正し、そのような機能をフィルタ処理プロセスと協調して働かせることによって改善することができる。ルーマおよびクロマ成分についての異なるプレフィルタおよびポストフィルタの選択により、2つのチャネルのコーディング効率が変化する。このコーディング効率の変化は、新しいコーディング効率を反映し、より良好なモード決定を行うために、レートひずみオプティマイザを修正する必要があることを示唆する。このコーディング効率の変化を反映する1つの単純な方式は、エンコーダおよび/またはデコーダ内のルーマおよびクロマに関するラグランジアンパラメータを変更することである。コーディング効率を正確に反映する関数にラグランジアンパラメータを変更することにより、全体的な圧縮効率が著しく改善される。
図15を参照すると、レートひずみオプティマイザをトレーニングする例示的方法が、全般的に参照番号1500によって示されている。方法1500は、機能ブロック1510に制御を渡す開始ブロック1505を含む。機能ブロック1510はトレーニングデータを入力し、機能ブロック1515に制御を渡す。機能ブロック1515は、プレフィルタ/ポストフィルタベースの符号化を実施し、レートひずみオプティマイザを反復的に同調して、(例えば、レートひずみコストに基づいて)最良の性能を得、機能ブロック1520に制御を渡す。機能ブロック1520は、レートひずみパラメータを保存し、終了ブロック1599に制御を渡す。方法1500はエンコーダ側のみに関するものであり、したがってデコーダに影響を及ぼさないことを理解されたい。
MPEG−4 AVC Standardビデオエンコーダまたはデコーダで使用されるコーディングモードプレディクタは、過去にコーディングされたブロックに基づいて、現ブロックに関する最も可能性の高いコーディングモードに対する推測を行う。多くの場合、予測の基となるブロックは、現ブロックと空間的または時間的に隣接する。プレディクタが現ブロックに関する最良のコーディングモードに対する正確な推測を行う場合、このモードをコーディングするために最小のビット数が使用される。正確なプレディクタにより、ビットレートを著しく節約することができる。プレフィルタ処理プロセスおよびポストフィルタ処理プロセスは、予測プロセスに影響を及ぼし、予測プロセスの正確さを低下させる。トレーニング用のシーケンスのサブセットを使用して、フィルタ処理下でモードプレディクタをより正確に再設計することができる。
図16を参照すると、最確モードプレディクタをトレーニングする例示的方法が、全般的に参照番号1600によって示されている。方法1600は、機能ブロック1610に制御を渡す開始ブロック1605を含む。機能ブロック1610は、プレフィルタ/ポストフィルタベースの符号化を実施し、現ブロックおよび前のブロックに関して選択された予測モードに関する統計を収集し、機能ブロック1620に制御を渡す。機能ブロック1620は、収集した統計に基づいて新しい最確モードプレディクタを求め、機能ブロック1625に制御を渡す。機能ブロック1625は最確モードプレディクタ構成パラメータを格納し、終了ブロック1699に制御を渡す。最尤推定器、最大事後推定器、または任意の他の適切な推定器に基づいて、最確モードプレディクタを再設計できることを理解されたい。
ポストフィルタハードウェア実装の促進:
多くの場合、プレフィルタでの適応プロセスは、浮動小数点値、例えばsによってプレフィルタパラメータをスケーリングするのと同じほど単純である。4×4プレフィルタの一例を以下のように示す。
Figure 2013516834
適応型プレフィルタを反転する適応型ポストフィルタのハードウェア実装は、その反転論理をこの適応に基づいて変更しなければならない。上記の表現の直接的な「行列反転」によって4×4行列が得られ、スケーリングパラメータsに基づいて行列のあらゆる項を変更しなければならない。より良い方式は、スケーリングパラメータを可能な限り少ない行列要素に分離することである。この目的で、以下の新規なポストフィルタを提案する。
P(s)-1=I4×4+Q(s) (8)
3つの行列への特異値分解を使用して、Q(s=定数)を分解することができ、定数は通常は1として選ばれる。第1の行列(Ui)および第3の行列(Vi)は直交行列である。ここで、特異値分解の第2の行列中のスケーリングパラメータの変動がある場合、それを以下のように吸収することができる。
Figure 2013516834
パラメータm22、m23、m32、m33、およびc22、c23、c32、c33は、所与のフィルタパラメータのセットp00、p01、p10、p11に対して一意に求められる定数である。このポストフィルタのハードウェア実装に対する利点は、変化する部分が4つの要素だけに制限され、要素の残りの部分は定数であることである。
図17を参照すると、ハードウェアでポストフィルタを効率的に実装する例示的方法が、全般的に参照番号1700によって示されている。方法1700は、機能ブロック1710に制御を渡す開始ブロック1705を含む。機能ブロック1710は再構築データを入力し、判定ブロック1715に制御を渡す。判定ブロック1715は、フィルタ処理すべき現成分がルーマ成分であるか否かを判定する。そうである場合、機能ブロック1720、機能ブロック1725、および機能ブロック1740に制御を渡す。そうでない場合、機能ブロック1745、機能ブロック1750、および機能ブロック1767に制御を渡す。機能ブロック1720は、SVD(ルーマ)の第3の行列に対応する固定変換を得、機能ブロック1730に制御を渡す。機能ブロック1745は、SVD(クロマ)の第3の行列に対応する固定変換を得、機能ブロック1755に制御を渡す。機能ブロック1730は、SVD(ルーマ)の第2の行列を得、機能ブロック1735に制御を渡す。機能ブロック1735は、SVD(ルーマ)の第1の行列に対応する固定変換を得、機能ブロック1740に制御を渡す。機能ブロック1740は、ブロック1735の変換後データに再構築ルーマデータを加算する加算演算を実施し、機能ブロック1797に制御を渡す。機能ブロック1755は、SVD(クロマ)の第2の行列を得、機能ブロック1760に制御を渡す。機能ブロック1760は、SVD(クロマ)の第1の行列に対応する固定変換を得、機能ブロック1767に制御を渡す。機能ブロック1767は、ブロック1760の変換後データに再構築クロマデータを加算する加算演算を実施し、機能ブロック1797に制御を渡す。機能ブロック1797は、ポストフィルタ処理後データを出力し、終了ブロック1799に制御を渡す。機能ブロック1725はルーマ適応パラメータを設定し、機能ブロック1730に制御を渡す。機能ブロック1750はクロマ適応パラメータを設定し、機能ブロック1755に制御を渡す。機能ブロック1725に関して、機能ブロック1725は、エンコーダ設定1770、プレディクタモード1775、ならびに変換サイズおよびタイプ1780に基づいてルーマ適応パラメータを設定する。機能ブロック1750に関して、機能ブロック1750は、エンコーダ設定1785、プレディクタモード1790、ならびに変換サイズおよびタイプ1795に基づいてクロマ適応パラメータを設定する。
フィルタ実装を促進するためのソフトウェア手法は、整数実装を使用して適応型フィルタを近似することである。一実施形態では、整数実装下で、プレフィルタ処理およびポストフィルタ処理中に実施されるすべての浮動小数点演算が、整数乗算およびビットシフトに変換される。ビットシフトは、整数除算を2のべき乗による除算に制限する。フィルタパラメータ行列を、整数乗算と、その後に最後に続くビットシフトとに変換することによって式(7)の適合型プレフィルタを実装することができる。次に、得られたデータを元のデータに加算する前に、得られたデータにスケーリングパラメータを乗算することができる。適応型ポストフィルタ式について、整数プレフィルタの反転に近く、同時に元の浮動小数点P(s)-1に近い整数実装を求める。
図18を参照すると、元の浮動小数点適応型フィルタの整数実装を求める例示的方法が、全般的に参照番号1800によって示されている。方法1800は、機能ブロック1810に制御を渡す開始ブロック1805を含む。機能ブロック1810は浮動小数点適応型フィルタを入力し、機能ブロック1815に制御を渡す。機能ブロック1815は、浮動変換行列および整数変換行列が可能な限り近くなるように、さらに整数ポストフィルタが整数プレフィルタの反転に可能な限り近くなることを保証するように行列乗算の整数実装を求め、機能ブロック1825に制御を渡す。機能ブロック1825は、適応型フィルタに関する整数実装を格納し、終了ブロック1899に制御を渡す。機能ブロック1820は、可能な最大整数精度を設定し、機能ブロック1815に制御を渡す。
様々な革新、および新規性のポイント
−元のデータをプレフィルタ処理すること、およびコーディングループ中の結合されるポストフィルタ(およびデコーダ側)
−「結合フィルタ」
○ポストフィルタがプレフィルタの厳密な逆(完全な逆)である
○適応型ポストフィルタが、適応型プレフィルタと「ほぼ逆」である
・「ほぼ逆」:小さい摂動が適応に著しく影響を及ぼさないように適応パラメータが選ばれる
・量子化がなく、適応がある場合、適応はデコーダで利用可能ではない元のデータに基づくので、厳密な逆は達成されない
・ポストフィルタは厳密な逆ではない:観測値とフィルタ処理した元のデータとの違いを最小限に抑える
−2Dフィルタの方向が勾配のローカル方向に依存する
−ルーマ成分およびクロマ成分について異なるフィルタを使用する
−1Dフィルタを使用する
○垂直方向および水平方向について異なるフィルタを使用する
−結合フィルタの設計での予測効率
−ローカルデータ(エッジ、勾配、および/または分散)に対する結合フィルタの適応
○フィルタの連続的適応
○ローカル統計のサブセットにそれぞれ適用される結合フィルタの離散集合の使用
・ローカル勾配に応じた3つのプレフィルタおよび3つのポストフィルタ
−フィルタ処理機構に適合された最確モードプレディクタ
−フィルタ処理機構(エンコーダのみの最適化)のために使用されるレートひずみ(RD)
−フィルタを以下のように適応的に適用することができる。変換境界単位のみ、変換境界および変換単位内、および変換単位には全く適用しない。変換単位は、例えばブロックまたはマクロブロックでよい。
○上記の3つのモード間の比較および選択を可能にする方法は以下の通りである。3単位を作成し、RDコスト比較を実施して、現単位に対する最良のコーディングオプションを求める。現単位に対して行われる決定が、将来コーディングすべき単位に影響を及ぼすことを理解されたい。
−結合フィルタのリフティング方式実装
○ガウスの消去法およびギブンズ回転実装
−適応型プレフィルタおよびポストフィルタ組合せは、様々な変換(DCT、KLT、MDDT)および様々な変換次元と共に動作する。
次に、その一部を上記で述べた、本発明の多数の付随する利点/特徴のうちの一部の説明を与える。例えば、1つの利点/特徴は、ピクチャに関する入力データを、得られるビットストリームとして符号化するビデオエンコーダを有する装置である。ビデオエンコーダは、プレフィルタと、プレフィルタに結合されたポストフィルタとを含む。プレフィルタは、ピクチャに関する入力データをフィルタ処理し、ポストフィルタは、ピクチャに関するループ内再構築後データをフィルタ処理する。
別の利点/特徴は、上述のビデオエンコーダを有する装置であり、ポストフィルタがプレフィルタの厳密な逆となるようにポストフィルタのフィルタ係数およびフィルタパラメータが選択される。
さらに別の利点/特徴は、上述のビデオエンコーダを有する装置であり、プレフィルタとポストフィルタの少なくとも一方が異なるフィルタを含み、ピクチャのクロマ成分が、ピクチャのルーマ成分とは異なるフィルタのうちの異なるフィルタを使用してフィルタ処理される。
さらに別の利点/特徴は、上述のビデオエンコーダを有する装置であり、プレフィルタとポストフィルタの少なくとも一方に関するフィルタ係数およびフィルタパラメータのうちの少なくとも1つが、解像度、量子化レベル、ローカル勾配、予測モード、および勾配方向のうちの少なくとも1つに応答して選択される。
さらに別の利点/特徴は、上述のビデオエンコーダを有する装置であり、再構築後データをフィルタ処理するためにポストフィルタによって使用されるポストフィルタ変換行列が、2つの被加数に分解され、2つの被加数の一方が恒等行列であり、2つの被加数の他方が第1の行列、第2の行列、および第3の行列の乗算を表す行列であり、第1の行列および第3の行列が固定であり、第2の行列が、プレフィルタの適応を反転するために可変である。
さらに、別の利点/特徴は、上述のビデオエンコーダを有する装置であり、ポストフィルタがプレフィルタのほぼ逆となるようにポストフィルタのフィルタ係数およびフィルタパラメータが選択される。
さらに、別の利点/特徴は、ビデオエンコーダを有する装置であり、上述のようにポストフィルタがプレフィルタのほぼ逆となるようにポストフィルタのフィルタ係数およびフィルタパラメータが選択され、ポストフィルタが、観測値とプレフィルタ処理後推定との間の差を最小限に抑えることにより、プレフィルタに供給される入力データと同じ出力データをポストフィルタから実質的に供給するように構成され、観測値は、ポストフィルタに供給される入力データに関するものであり、プレフィルタ処理後推定は、プレフィルタによるフィルタ処理の前のピクチャに関する入力データの推定に関するものである。
さらに、別の利点/特徴は、上述のビデオエンコーダを有する装置であり、プレフィルタおよびポストフィルタが、プレフィルタとポストフィルタとの厳密な可逆性に関する距離を最小限に抑えるように求められる整数実装である。
さらに、別の利点/特徴は、上述のビデオエンコーダを有する装置であり、プレフィルタおよびポストフィルタのフィルタサイズが、残差データに適用される変換と同じサイズであり、残差データは、ピクチャに関する入力データと、少なくとも1つの基準ピクチャに関する基準データとの間の差を表す。
さらに、別の利点/特徴は、ビデオエンコーダを有する装置であり、プレフィルタおよびポストフィルタのフィルタサイズが、残差データに適用される変換と同じサイズであり、残差データが、上述のように、ピクチャに関する入力データと、少なくとも1つ基準ピクチャに関する基準データとの間の差を表し、プレフィルタおよびポストフィルタが複数のフィルタを含み、複数のフィルタのうちの少なくとも1つが、残差データに適用される変換のすべての変換サイズに適用される。
さらに、別の利点/特徴は、上述のビデオエンコーダを有する装置であり、プレフィルタとポストフィルタの少なくとも一方のフィルタサイズが、入力データに適用される変換のサイズとは異なる。
さらに、別の利点/特徴は、上述のビデオエンコーダを有する装置であり、プレフィルタおよびポストフィルタが、入力データの一部のみに適用される。
さらに、別の利点/特徴は、ビデオエンコーダを有する装置であり、プレフィルタおよびポストフィルタが、上述のように入力データの一部のみに適用され、入力データのその部分が、ブロック境界およびブロック内の少なくとも一方から選択される。
本明細書の教示に基づいて、当業者は本原理のこれらおよび他の特徴および利点を容易に確認することができる。ハードウェア、ソフトウェア、ファームウェア、専用プロセッサ、またはそれらの組合せの様々な形態で本原理の教示を実装できることを理解されたい。
最も好ましくは、本原理の教示は、ハードウェアとソフトウェアの組合せとして実装される。さらに、ソフトウェアをプログラム記憶ユニット上に有形に実施されたアプリケーションプログラムとして実装することができる。アプリケーションプログラムは、任意の適切なアーキテクチャを備えるマシンにアップロードし、実行することができる。
好ましくは、マシンは、1つまたは複数の中央演算処理装置(「CPU」)、ランダムアクセスメモリ(「RAM」)、入出力(「I/O」)インターフェースなどのハードウェアを有するコンピュータプラットフォーム上に実装される。コンピュータプラットフォームはまた、オペレーティングシステムおよびマイクロ命令コードをも含むことができる。本明細書に記載の様々なプロセスおよび機能は、CPUによって実行することのできる、マイクロ命令コードの一部、もしくはアプリケーションプログラムの一部、またはそれらの任意の組合せでよい。さらに、追加のデータ記憶ユニットやプリンティングユニットなどの様々な他の周辺ユニットをコンピュータプラットフォームに接続することができる。
添付の図面に示す構成システム構成要素および方法の一部が好ましくはソフトウェアで実装されるので、システム構成要素またはプロセス機能ブロック間の実際の接続は、本原理がプログラムされる方式に応じて異なることがあることをさらに理解されたい。本明細書の教示が与えられると、本原理のこれらおよび類似の実装または構成を当業者は企図することができることになる。
添付の図面を参照しながら本明細書で例示的実施形態を説明したが、本原理がこうした厳密な実施形態に限定されず、本原理の範囲または趣旨から逸脱することなく、当業者は実施形態の中で様々な変更および修正を実施できることを理解されたい。すべてのそのような変更および修正は、添付の特許請求の範囲に記載の本原理の範囲内に包含されるものとする。

Claims (29)

  1. ピクチャに関する入力データを、結果として得られるビットストリームに符号化するビデオエンコーダ(200)を備える装置であって、
    前記ビデオエンコーダ(200)は、プレフィルタ(205、275)と、前記プレフィルタ(205、275)に結合されたポストフィルタ(245)とを備え、前記プレフィルタ(205、275)は、前記ピクチャに関する前記入力データをフィルタ処理し、前記ポストフィルタ(245)は、前記ピクチャに関するループ内再構築後データをフィルタ処理する、前記装置。
  2. ビデオエンコーダにおいて、
    ピクチャに関する入力データを、結果として得られるビットストリームに符号化するステップであって、前記ビデオエンコーダが、プレフィルタと、前記プレフィルタに結合されたポストフィルタとを備え、前記プレフィルタが、前記ピクチャに関する前記入力データをフィルタ処理し、前記ポストフィルタが、前記ピクチャに関するループ内再構築後データをフィルタ処理する(900、915、950)、前記符号化するステップを備える方法。
  3. 前記ポストフィルタが前記プレフィルタの厳密な逆となるように前記ポストフィルタのフィルタ係数およびフィルタパラメータが選択される(900、915、950)、請求項2に記載の方法。
  4. 前記プレフィルタと前記ポストフィルタの少なくとも一方が異なるフィルタを含み、前記ピクチャのクロマ成分が、前記ピクチャのルーマ成分とは異なるフィルタのうちの異なるフィルタを使用してフィルタ処理される(415、435、440、460)、請求項2に記載の方法。
  5. 前記プレフィルタと前記ポストフィルタの少なくとも一方に関するフィルタ係数およびフィルタパラメータのうちの少なくとも1つが、解像度、量子化レベル、ローカル勾配、予測モード、および勾配方向のうちの少なくとも1つに応答して選択される(415、420、425、430、435)、請求項2に記載の方法。
  6. 再構築後データをフィルタ処理するために前記ポストフィルタによって使用されるポストフィルタ変換行列が、2つの被加数に分解され、前記2つの被加数の一方が恒等行列であり、前記2つの被加数の他方が第1の行列、第2の行列、および第3の行列の乗算を表す行列であり、前記第1の行列および前記第3の行列が固定であり、前記第2の行列が、前記プレフィルタの適応を反転するために可変である(1720、1725、1730、1735、1740)、請求項2に記載の方法。
  7. 前記ポストフィルタが前記プレフィルタのほぼ逆となるように前記ポストフィルタのフィルタ係数およびフィルタパラメータが選択される(815、820、825)、請求項2に記載の方法。
  8. 前記ポストフィルタが、観測値とプレフィルタ処理後推定との間の差を最小にすることにより、前記プレフィルタに供給される入力データと同じ出力データを前記ポストフィルタから実質的に供給するように構成され、前記観測値が、前記ポストフィルタに供給される入力データに関するものであり、前記プレフィルタ処理後推定が、前記プレフィルタによるフィルタ処理の前の前記ピクチャに関する前記入力データの推定に関するものである(815、820、825)、請求項7に記載の方法。
  9. 前記プレフィルタおよび前記ポストフィルタが、前記プレフィルタと前記ポストフィルタとの間の厳密な可逆性に関する距離を最小にするように決定される整数実装である(1810、1815、1820、1825)、請求項2に記載の方法。
  10. 前記プレフィルタおよび前記ポストフィルタのフィルタサイズが、残差データに適用される変換と同じサイズであり、前記残差データが、前記ピクチャに関する前記入力データと、少なくとも1つの基準ピクチャに関する基準データとの間の差を表す(415、430、435)、請求項2に記載の方法。
  11. 前記プレフィルタおよび前記ポストフィルタが複数のフィルタを含み、前記複数のフィルタのうちの少なくとも1つが、前記残差データに適用される変換のすべての変換サイズに適用される(415、430、435)、請求項10に記載の方法。
  12. 前記プレフィルタと前記ポストフィルタの少なくとも一方のフィルタサイズが、前記入力データに適用される変換のサイズとは異なる(415、430、435)、請求項2に記載の方法。
  13. 前記プレフィルタおよび前記ポストフィルタが、前記入力データの一部のみに適用される(915、965)、請求項2に記載の方法。
  14. 前記入力データの前記部分が、ブロック境界およびブロック内の少なくとも一方から選択される(915、965)、請求項13に記載の方法。
  15. ピクチャに関する残差イメージデータを復号化するビデオデコーダ(300)であって、前記ビデオデコーダ(300)が、プレフィルタ(355)と、前記プレフィルタ(335)に結合されたポストフィルタ(330)とを備え、前記プレフィルタ(355)が、前記残差イメージデータを復号化する際に使用される基準ピクチャをフィルタ処理し、前記ポストフィルタ(330)が、前記ピクチャに関するループ内再構築後データをフィルタ処理する、前記ビデオデコータを備える装置。
  16. ビデオデコーダにおいて、
    ピクチャに関する残差イメージデータ復号化するステップであって、前記ビデオデコーダが、プレフィルタと、前記プレフィルタに結合されたポストフィルタとを備え、前記プレフィルタが、前記残差イメージデータを復号化する際に使用される基準ピクチャをフィルタ処理し、前記ポストフィルタが、前記ピクチャに関するループ内再構築後データをフィルタ処理する(1030、1035、1055、1060)、前記復号化するステップを備える方法。
  17. 前記ポストフィルタが前記プレフィルタの厳密な逆となるように前記ポストフィルタのフィルタ係数およびフィルタパラメータが選択される(1030、1035、1055、1060)、請求項16に記載の方法。
  18. 前記プレフィルタと前記ポストフィルタの少なくとも一方が異なるフィルタを含み、前記ピクチャのクロマ成分が、前記ピクチャのルーマ成分とは異なるフィルタのうちの異なるフィルタを使用してフィルタ処理される(515、535、540、560)、請求項16に記載の方法。
  19. 前記プレフィルタと前記ポストフィルタの少なくとも一方に関するフィルタ係数およびフィルタパラメータのうちの少なくとも1つが、解像度、量子化レベル、ローカル勾配、予測モード、および勾配方向のうちの少なくとも1つに応答して選択される(515、520、525、530、535)、請求項16に記載の方法。
  20. 前記再構築後データをフィルタ処理するために前記ポストフィルタによって使用されるポストフィルタ変換行列が、2つの被加数に分解され、前記2つの被加数の一方が恒等行列であり、前記2つの被加数の他方が第1の行列、第2の行列、および第3の行列の乗算を表す行列であり、前記第1の行列および前記第3の行列が固定であり、前記第2の行列が、前記プレフィルタの適応を反転するために可変である(1720、1725、1730、1735、1740)、請求項16に記載の方法。
  21. 前記ポストフィルタが前記プレフィルタのほぼ逆となるように前記ポストフィルタのフィルタ係数およびフィルタパラメータが選択される(815、820、825)、請求項16に記載の方法。
  22. 前記ポストフィルタが、観測値とプレフィルタ処理後推定との間の差を最小にすることにより、前記プレフィルタに供給される入力データと同じ出力データを前記ポストフィルタから実質的に供給するように構成され、前記観測値が、前記ポストフィルタに供給される入力データに関するものであり、前記プレフィルタ処理後推定が、前記プレフィルタによるフィルタ処理の前の前記ピクチャに関する前記入力データの推定に関するものである(815、820、825、845)、請求項21に記載の方法。
  23. 前記プレフィルタおよび前記ポストフィルタが、前記プレフィルタと前記ポストフィルタとの間の厳密な可逆性に関する距離を最小にするように決定される整数実装である(1815、1820、1825)、請求項16に記載の方法。
  24. 前記プレフィルタおよび前記ポストフィルタのフィルタサイズが、残差データに適用される変換と同じサイズであり、前記残差データが、前記ピクチャに関する前記入力データと、少なくとも1つの基準ピクチャに関する基準データとの間の差を表す(515、530、535)、請求項16に記載の方法。
  25. 前記プレフィルタおよび前記ポストフィルタが複数のフィルタを含み、前記複数のフィルタのうちの少なくとも1つが、前記残差データに適用される変換のすべての変換サイズに適用される(515、530、535)、請求項24に記載の方法。
  26. 前記プレフィルタと前記ポストフィルタの少なくとも一方のフィルタサイズが、前記入力データに適用される変換のサイズとは異なる(515、530、535)、請求項16に記載の方法。
  27. 前記プレフィルタおよび前記ポストフィルタが、前記入力データの一部のみに適用される(1030、1035、1055、1060)、請求項16に記載の方法。
  28. 前記入力データの前記部分が、ブロック境界およびブロック内の少なくとも一方から選択される、請求項27に記載の方法。
  29. 符号化されたビデオ信号データを有する非一時的コンピュータ可読記憶媒体であって、
    符号化されたピクチャに関する入力データであって、前記ピクチャに関する前記入力データが、符号化されたとき、プレフィルタを使用してプレフィルタ処理されたものであり、前記ピクチャに関するループ内再構築後データが、符号化されたとき、前記プレフィルタに直接結合されたポストフィルタを使用してポストフィルタ処理されたものである、前記入力データ
    を備える、前記非一時的コンピュータ可読記憶媒体。
JP2012547057A 2009-12-31 2010-12-02 ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置 Active JP5964755B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US29159609P 2009-12-31 2009-12-31
US61/291,596 2009-12-31
PCT/US2010/003081 WO2011081637A1 (en) 2009-12-31 2010-12-02 Methods and apparatus for adaptive coupled pre-processing and post-processing filters for video encoding and decoding

Publications (3)

Publication Number Publication Date
JP2013516834A true JP2013516834A (ja) 2013-05-13
JP2013516834A5 JP2013516834A5 (ja) 2014-01-23
JP5964755B2 JP5964755B2 (ja) 2016-08-03

Family

ID=43567521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012547057A Active JP5964755B2 (ja) 2009-12-31 2010-12-02 ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置

Country Status (6)

Country Link
US (1) US9883207B2 (ja)
EP (1) EP2520092A1 (ja)
JP (1) JP5964755B2 (ja)
KR (1) KR101773012B1 (ja)
CN (1) CN102771122B (ja)
WO (1) WO2011081637A1 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8885714B2 (en) * 2010-01-14 2014-11-11 Texas Instruments Incorporated Method and system for intracoding in video encoding
JP2014525176A (ja) * 2011-07-12 2014-09-25 インテル コーポレイション 輝度に基づく色度イントラ予測
KR20130049526A (ko) 2011-11-04 2013-05-14 오수미 복원 블록 생성 방법
US9432694B2 (en) 2012-03-06 2016-08-30 Apple Inc. Signal shaping techniques for video data that is susceptible to banding artifacts
KR20160104646A (ko) * 2013-12-22 2016-09-05 엘지전자 주식회사 양자화 에러의 추가적인 제어를 이용한 비디오 신호의 인코딩, 디코딩 방법 및 장치
KR102249819B1 (ko) 2014-05-02 2021-05-10 삼성전자주식회사 시스템 온 칩과 이를 포함하는 데이터 처리 시스템
CN103974076B (zh) * 2014-05-19 2018-01-12 华为技术有限公司 图像编解码方法和设备、系统
US9811882B2 (en) 2014-09-30 2017-11-07 Electronics And Telecommunications Research Institute Method and apparatus for processing super resolution image using adaptive preprocessing filtering and/or postprocessing filtering
EP3032830A1 (en) * 2014-12-08 2016-06-15 Thomson Licensing Differential coding of intra modes
KR102525033B1 (ko) * 2015-11-11 2023-04-24 삼성전자주식회사 비디오 복호화 방법 및 그 장치 및 비디오 부호화 방법 및 그 장치
WO2018044125A1 (ko) * 2016-09-01 2018-03-08 엘지전자(주) 레이어드 기븐스 변환을 이용하여 변환을 수행하는 방법 및 장치
EP3516877B1 (en) * 2016-12-01 2020-03-11 Google LLC Restoration in video coding using domain transform recursive filters
CN110115033B (zh) 2016-12-23 2020-09-08 华为技术有限公司 用于有损静止图像编码的混合域协同后滤波器
EP3454556A1 (en) * 2017-09-08 2019-03-13 Thomson Licensing Method and apparatus for video encoding and decoding using pattern-based block filtering
US10542255B2 (en) * 2017-09-28 2020-01-21 Google Llc Image processing for compression
CN107908175B (zh) * 2017-11-08 2020-06-23 国网电力科学研究院武汉南瑞有限责任公司 一种电力系统现场智能化运维系统
WO2019191892A1 (zh) * 2018-04-02 2019-10-10 北京大学 用于视频编解码的方法和设备
WO2020125628A1 (en) * 2018-12-17 2020-06-25 Beijing Bytedance Network Technology Co., Ltd. Shape dependent interpolation filter
US10708624B1 (en) * 2019-05-30 2020-07-07 Ati Technologies Ulc Pre-processing for video compression
CN113518227B (zh) * 2020-04-09 2023-02-10 于江鸿 数据处理的方法和系统
CN111698512B (zh) * 2020-06-24 2022-10-04 北京达佳互联信息技术有限公司 视频处理方法、装置、设备及存储介质
CN111885378B (zh) * 2020-07-27 2021-04-30 腾讯科技(深圳)有限公司 多媒体数据编码方法、装置、设备以及介质
US20230171403A1 (en) * 2021-11-17 2023-06-01 Mediatek Inc. Methods and Apparatuses of Gaussian Elimination in Video Encoding System
EP4294006A1 (en) * 2022-06-16 2023-12-20 MBDA UK Limited Method for image encoding
WO2023242588A1 (en) * 2022-06-16 2023-12-21 Mbda Uk Limited Method for image encoding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06217290A (ja) * 1991-12-06 1994-08-05 Nippon Telegr & Teleph Corp <Ntt> 動き補償フレーム間帯域分割符号化処理方法
JP2006197573A (ja) * 2004-12-17 2006-07-27 Microsoft Corp 重ね合わせ双直交変換のための可逆2次元プリ/ポストフィルタリング
JP2008547288A (ja) * 2005-06-17 2008-12-25 株式会社エヌ・ティ・ティ・ドコモ 重複変換符号化及び復号化の方法と装置

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000511366A (ja) * 1995-10-25 2000-08-29 サーノフ コーポレイション 4分割ツリーベースの可変ブロックサイズ動き推定装置および方法
US7450641B2 (en) 2001-09-14 2008-11-11 Sharp Laboratories Of America, Inc. Adaptive filtering based upon boundary strength
US7194035B2 (en) * 2003-01-08 2007-03-20 Apple Computer, Inc. Method and apparatus for improved coding mode selection
US7672523B2 (en) * 2003-03-03 2010-03-02 The Hong Kong University Of Science And Technology Efficient rate allocation for multi-resolution coding of data
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
AU2005239628B2 (en) 2005-01-14 2010-08-05 Microsoft Technology Licensing, Llc Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
US8422546B2 (en) * 2005-05-25 2013-04-16 Microsoft Corporation Adaptive video encoding using a perceptual model
CN101199206A (zh) * 2005-06-17 2008-06-11 株式会社Ntt都科摩 用于重叠变换编解码的方法和设备
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
US8218655B2 (en) * 2005-09-19 2012-07-10 Maxim Integrated Products, Inc. Method, system and device for improving video quality through in-loop temporal pre-filtering
US8537903B2 (en) * 2005-09-23 2013-09-17 Entropic Communications, Inc. De-blocking and de-ringing systems and methods
US8149909B1 (en) * 2005-10-13 2012-04-03 Maxim Integrated Products, Inc. Video encoding control using non-exclusive content categories
WO2007081134A1 (en) * 2006-01-09 2007-07-19 Lg Electronics Inc. Inter-layer prediction method for video signal
US8009963B2 (en) * 2006-01-26 2011-08-30 Qualcomm Incorporated Adaptive filtering to enhance video bit-rate control performance
JP2010514246A (ja) * 2006-12-18 2010-04-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像圧縮及び伸張
US7573405B2 (en) * 2006-12-29 2009-08-11 Texas Instruments Incorporated System updating accumulated statistics coding variable values after multiple encodings
US20090060368A1 (en) * 2007-08-27 2009-03-05 David Drezner Method and System for an Adaptive HVS Filter
EP2063417A1 (en) * 2007-11-23 2009-05-27 Deutsche Thomson OHG Rounding noise shaping for integer transform based encoding and decoding
US8200028B2 (en) * 2007-12-07 2012-06-12 Csr Technology Inc. System and method for detecting edges in a video signal
US8576906B2 (en) * 2008-01-08 2013-11-05 Telefonaktiebolaget L M Ericsson (Publ) Adaptive filtering
US9077971B2 (en) * 2008-04-10 2015-07-07 Qualcomm Incorporated Interpolation-like filtering of integer-pixel positions in video coding
KR101350723B1 (ko) * 2008-06-16 2014-01-16 돌비 레버러토리즈 라이쎈싱 코오포레이션 비디오 코딩을 위한 슬라이스 종속성에 기초한 레이트 제어 모델 적응 방법
KR101271512B1 (ko) * 2008-09-16 2013-06-05 돌비 레버러토리즈 라이쎈싱 코오포레이션 적응형 비디오 인코더 제어 방법
US8792564B2 (en) * 2008-10-28 2014-07-29 Sony Corporation Adaptive preprocessing method using feature-extracted video maps
US8380001B2 (en) * 2009-02-27 2013-02-19 Vixs Systems, Inc. Edge adaptive deblocking filter and methods for use therewith
US9124874B2 (en) * 2009-06-05 2015-09-01 Qualcomm Incorporated Encoding of three-dimensional conversion information with two-dimensional video sequence
JP6217290B2 (ja) 2013-10-02 2017-10-25 株式会社豊田中央研究所 試料ガス測定装置および試料ガス測定方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06217290A (ja) * 1991-12-06 1994-08-05 Nippon Telegr & Teleph Corp <Ntt> 動き補償フレーム間帯域分割符号化処理方法
JP2006197573A (ja) * 2004-12-17 2006-07-27 Microsoft Corp 重ね合わせ双直交変換のための可逆2次元プリ/ポストフィルタリング
JP2008547288A (ja) * 2005-06-17 2008-12-25 株式会社エヌ・ティ・ティ・ドコモ 重複変換符号化及び復号化の方法と装置

Also Published As

Publication number Publication date
US9883207B2 (en) 2018-01-30
EP2520092A1 (en) 2012-11-07
KR20120099479A (ko) 2012-09-10
JP5964755B2 (ja) 2016-08-03
WO2011081637A1 (en) 2011-07-07
CN102771122A (zh) 2012-11-07
CN102771122B (zh) 2016-12-28
KR101773012B1 (ko) 2017-08-30
US20120281753A1 (en) 2012-11-08

Similar Documents

Publication Publication Date Title
JP5964755B2 (ja) ビデオ符号化および復号化用の適応型結合前処理および後処理フィルタのための方法および装置
US11240496B2 (en) Low complexity mixed domain collaborative in-loop filter for lossy video coding
JP5330647B2 (ja) 適応参照画像の発生
US9736500B2 (en) Methods and apparatus for spatially varying residue coding
EP3007447A1 (en) Method for improving intra-prediction of diagonal mode in video coding
US20130089151A1 (en) Learned transform and compressive sensing for video coding
JP5805097B2 (ja) 映像符号化及び復号化のためのdcイントラ予測モードのための方法及び装置
WO2020190896A1 (en) Methods and devices for bit-width control for bi-directional optical flow
US20230188733A1 (en) Video display preference filtering
US10432961B2 (en) Video encoding optimization of extended spaces including last stage processes
EP4018667A1 (en) Methods and apparatus on prediction refinement with optical flow
EP4032298A1 (en) Methods and apparatus for prediction refinement with optical flow
CN110100437B (zh) 用于有损视频编码的混合域协作环路滤波器
WO2020220048A1 (en) Methods and apparatuses for prediction refinement with optical flow
WO2020257629A1 (en) Methods and apparatus for prediction refinement with optical flow
EP3963887A1 (en) Methods and apparatus of prediction refinement with optical flow
WO2021072326A1 (en) Methods and apparatuses for prediction refinement with optical flow, bi-directional optical flow, and decoder-side motion vector refinement
CN114175659A (zh) 用于双向光流的比特宽度控制的装置和方法
CN109906610B (zh) 使用滤波和子空间投影的视频编译的恢复
US20120163465A1 (en) Method for encoding a video sequence and associated encoding device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131202

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141209

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150804

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20151104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160204

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160630

R150 Certificate of patent or registration of utility model

Ref document number: 5964755

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250