JP4988715B2 - ビデオ符号化におけるノイズフィルタリング方法及び装置 - Google Patents

ビデオ符号化におけるノイズフィルタリング方法及び装置 Download PDF

Info

Publication number
JP4988715B2
JP4988715B2 JP2008512582A JP2008512582A JP4988715B2 JP 4988715 B2 JP4988715 B2 JP 4988715B2 JP 2008512582 A JP2008512582 A JP 2008512582A JP 2008512582 A JP2008512582 A JP 2008512582A JP 4988715 B2 JP4988715 B2 JP 4988715B2
Authority
JP
Japan
Prior art keywords
threshold
signal power
coefficient
noise
transform
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.)
Active
Application number
JP2008512582A
Other languages
English (en)
Other versions
JP2008541672A (ja
JP2008541672A5 (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.)
NTT Docomo Inc
Original Assignee
NTT Docomo 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 NTT Docomo Inc filed Critical NTT Docomo Inc
Publication of JP2008541672A publication Critical patent/JP2008541672A/ja
Publication of JP2008541672A5 publication Critical patent/JP2008541672A5/ja
Application granted granted Critical
Publication of JP4988715B2 publication Critical patent/JP4988715B2/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods 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 set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

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

Description

関連出願
[0001]本特許出願は、「ビデオ符号化におけるノイズフィルタリングの方法及び装置(Method And Apparatus For Noise Filtering in Video Coding)」と題して2005年5月20日に出願された対応の仮特許出願第60/683,240号の優先権を主張するものであり、当該仮特許出願を参照することによって援用するものである。
発明の分野
[0002]本発明は、ビデオ符号化の分野に関するものであり、より詳細には、本発明は、ビデオ符号化におけるノイズフィルタリングを、係数の信号パワーの推定と、それら推定値と一つ以上の閾値との比較とに基づいて、実行することに関するものである。
発明の背景
[0003]ハイブリッドビデオ符号化の従来方法では、ビデオフレームを、シーケンス中の他のフレームを参照することなく単独で符号化するか、或いは、ビデオフレームをシーケンス中の既に符号化されて再構築されている他のフレームから予測することによって符号化する。このプロセスは、通常、画像のブロックレベルで動作する。何れの場合にも、符号化プロセス後に再構築されたフレームには、符号化プロセスによって生じる歪みが含まれており、歪みはノイズとしてモデル化することができる。このノイズは、ブロッキングアーチファクト及びリンギングアーチファクトといった符号化アーチファクトとして視覚的に現れることがある。ビデオの符号化器及び復号器によって一般に使用されるフレームストアに格納されている再構築されたフレームの幾つかは、シーケンス中の他のフレームを予測するための基準フレームとして更に使用され、それ以外のフレームは使用されない。前者の場合、フレームストアに格納されている再構築されたフレームの品質は、それを表示する上で重要であるのみならず、その予測プロセスにおける使用が、参照のために当該フレームに依存するフレームであって以降に符号化されるフレームの品質にも影響する。後者の場合、基準フレームとして更には使用されないフレームの品質は、それを表示する上で重要である。従って、何れの場合にも、符号化ノイズを除去する手順は、再構築されたビデオシーケンスの品質、及び、客観的な符号化効率の向上のために有益である。
[0004]最近のコーデックの殆どには、符号化の結果としてのノイズのレベルを低減する何らかのタイプのフィルタリングが含まれている。これらのフィルタリングは、コーデックにおける符号化ループの外側又は内側で動作することができる。符号化ループの内側で動作するループフィルタの場合には、一般的に、符号化器と復号器とにおいて同じ利用可能データを使用して同じオペレーションを実行し、従って、そのフィルタリングに固有の副情報を符号化器から復号器に明示的に送信する必要がない。一般に使用されるノイズフィルタリング方法としては、再構築されたフレームデータの単純なローパスフィルタリングであって画像を平滑化して符号化アーチファクトの出現を低減させるローパスフィルタや、画像の局所的な特性(例:ブロックの縁部)に基づいて自身の強度を適合させるループフィルタが挙げられる。
[0005]符号化ループの外側でのフィルタリング手法、例えば、再構築された(ノイズが含まれる)フレームの復号器におけるローパスフィルタリングは、通常、復号後のビデオシーケンスの全体的な画質を十分に向上させることができない。「画像符号化におけるブロッキング効果の低減(Reduction of Blocking Effects in Image Coding)」(H.C.Reeve、J.S.Lim)(Opt.Eng.,Vol.23、No.1、p.34〜37、1984年1/2月)を参照されたい。符号化器における符号化ループと復号器における復号ループの内側でフィルタリングを実行するループ内フィルタは、優れた性能を有している詳しくは、「H.264/AVCビデオ符号化規格の概要(Overview of the H.264/AVC Video Coding Standard)」(Wiegandら)(IEEE Transactions on Circuits and Systems for Video Technology、vol.13、Issue:7、p.560〜576、2003年7月)を参照されたい。これらのフィルタは、通常、ビデオコーデックが使用する量子化方式と、フィルタリングする信号の特性とに基づいて、フィルタリングの強度を発見的方式で適合させる。更に、これらのフィルタは符号化ループの中で動作するため、予測に使用する基準フレームの品質が向上し、従って、符号化プロセスの効率が向上する。
[0006]発見的に処理を行なうものとは対照的に、ノイズからの信号推定であって特定の信号モデルを使用する信号推定に基づくフィルタリング手法が存在する。詳しくは、「確率、確率変数、及び確率過程(Probability,Random Variables,and Stochastic Processes)」(A.Papoulis)(3rd edition、New York、McGraw−Hill、1991年)を参照されたい。
[0007]変換領域において動作する過完備のノイズ低減手法は、フレーム内の同じサンプル位置に対して複数の再構築されたインスタンス(推定値)を求め、これらを組み合わせて(例:平均する)推定の品質を高めることができるという利点を更に提供する。「推移不変ノイズ低減・除去(Translation Invariant Denoising)」(R.R.Coifrnan、D.L.Donoho)(Wavelets and Statistics,Springer Lecture Notes in Statistics 103、p.125〜150、New York、Springer Verlag)を参照されたい。既存のノイズ低減方法は、符号化ノイズから信号を取り出すことを試みるものであり、そのコアに信号推定器を有する。通常、問題の統計的情報は正確には既知ではないので、未知条件(unknowns)について何らかの想定を行い、信号を推定する方式を選択する必要がある。最も有名な方式の一つは、未知条件の予想され得る最悪の状況時の信号推定値を最適化し、結果としてロバストな推定器をもたらすものである。詳しくは、「有界なデータ不確実性における決定論的パラメータの線形ミニマックスリグレット推定(Linear Minimax Regret Estimation of Deterministic Parameters with Bounded Data Uncertainties)」(Y.C.Eldar、A.B.−Tal、A.Nemirovski)(IEEE Transactions on Signal Processing、Vol.52、No.8、2004年8月)を参照されたい。この設計制約下では、最悪のシナリオに対してパフォーマンスが最適化されるため、結果としての推定器が控えめすぎる傾向にあることが周知である。
[0008]符号化ノイズフィルタリングの従来方法のパフォーマンスは、これらフィルタリング方法に固有の幾つかの特性と、ノイズの性質に関して成された仮定とによって、制限されている。符号化アーチファクトを低減するために適用される単純なローパスフィルタリング手法は、ビデオフレームにおける多様な視覚情報を扱うには有効ではなく、ビデオシーケンスに対するパフォーマンスが大きく変動する傾向にある(パフォーマンス制御の欠如)。ビデオ符号化における適応的なループ境界内フィルタリングでは、発見的手法を使用し、場合によっては最適なソリューションが保証しない。また、信号モデルの使用に基づく既存のノイズ低減・除去手法では、信号及びノイズの性質に関する非現実的な仮定の下に、具体的には、信号とノイズとが相関していないと仮定することによって、推定器を決定する。この仮定は、画像及びビデオの符号化において発生する信号ノイズ及び符号化ノイズにはあてはまらない。これらのフィルタリング手法は既存の問題の条件に適合していないので、そのパフォーマンスは高くない。
発明の概要
[0009]本明細書では、ビデオフレームデータを符号化及び/又は復号する方法及び装置を開示する。一実施形態においては、ビデオ符号化器は、ノイズフィルタリングモジュールを備えており、このモジュールは、変換されたフレームデータに対して動作し、複数の変換係数それぞれの信号パワーを推定し、各係数の信号パワーを少なくとも一つの閾値と比較し、各変換係数の値を、信号パワーと少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することによって、複数の変換係数に対して信号推定を実行する。
[0010]本発明は、以下の詳細な説明と、本発明の様々な実施形態の添付の図面とから、更に完全に理解されるであろう。しかしながら、これらの実施形態は、本発明をそれら特定の実施形態に限定するものではなく、説明及び理解のみを目的としているものと理解されたい。
本発明の詳細な説明
[0022]ビデオ符号化及び復号用の信号ノイズ低減手法を実施する装置及び方法を開示する。一実施形態においては、フィルタリング装置は、ビデオコーデックによって生成される再構築されたフレームデータに対して動作し、そのフィルタリングプロセスは、フレームデータに対応する過完備の変換領域において行われる。符号化プロセスによって生じるノイズからの信号の推定は、この変換領域において実行される。一実施形態においては、この推定プロセスは、変換係数に対応する信号パワーを推定するステップと、推定された信号パワーを一つ以上の閾値と比較するステップと、比較の結果に基づいて変換係数を調整するステップと、を含んでいる。従って、推定プロセスでは、推定された信号パワーと、ノイズ出力と、(一つ以上の)閾値の値とを使用する。
[0023]一実施形態においては、過完備表現の下では、処理するフレーム内のデータサンプル位置のそれぞれについて、推定プロセスによって生成されるときに、その位置におけるサンプルの複数の推定値が対応する。各データサンプルのこれら初期推定値を更にフィルタリングし、処理するビデオフレーム内の位置におけるデータサンプルの最終的な推定値を得る。そのようなフィルタリングは、平均化であってもよい。
[0024]このように、過完備の変換領域における適応的な推定を使用して、符号化プロセス中に生じるノイズから信号を取り出す。一実施形態においては、信号パワーを推定するためのノイズフィルタにおける推定器は、符号化プロセスにおける信号及びノイズに関する仮定に基づいて動作する。また、一実施形態において、信号推定器は、例えば上述した従来技術の推定器の欠点が回避されるように、ロバスト性とパフォーマンスとの間のバランスが達成されるように設計されている。
[0025]この信号ノイズ低減手法を使用する結果として、ビデオフレームフィルタリングの従来技術の手法と比較して、客観的なレート・歪みパフォーマンスが向上し、更に、復号後のビデオフレームの主観的な(視覚的な)品質が高まる。
[0026]以下の説明では、本発明をより完全に説明するために、数多くの詳細部分を記載してある。しかしながら、当業者には、これらの特定の詳細部分を使用せずに本発明を実施できることが明らかであろう。周知の構造及び装置については、本発明が曖昧になることがないように、詳細に示すのではなくブロック図形式で示してある。
[0027]以下の詳細な説明の一部は、コンピュータメモリ内のデータビットに対する操作のアルゴリズム及び記号表現の形式で提示してある。このようなアルゴリズムによる説明及び表現は、データ処理の技術分野における当業者が、自身の開発内容の要旨を他の当業者に最も効果的に伝えるために使用する手段である。アルゴリズムは、本明細書において、及び一般的には、目的の結果に達する首尾一貫した一連のステップとして認識される。これらのステップは、物理量の物理的操作を必要とするステップである。通常(ただし絶対的ではないが)、これらの数量は、格納、伝送、結合、比較、その他の操作を行うことのできる電気信号又は磁気信号の形式をとる。これらの信号を、例えばビット、値、要素、記号、文字、術語、数字として表現することは、主として、一般的に使用されているという理由から、場合によっては便利であることが実証されている。
[0028]しかしながら、上記及び同様の表現の何れも、該当する物理量が関連付けられるものであり、物理量に付された便利なラベルにすぎないことを認識しておく必要がある。以下の説明から明らかであるように、特に明記しない限りは、説明全体を通じて、「処理する」、「計算する」、「決定する」、「表示する」等の用語を用いての説明は、コンピュータシステムのレジスタ及びメモリ内で物理的(電子的)数量として表されているデータを操作して、コンピュータシステムのメモリ又はレジスタ、或いはそれ以外の、そのような情報の記憶装置、伝送装置、又は表示装置において同様に物理量として表される他のデータに変換する、コンピュータシステム、又は類似する電子計算装置の動作及び処理を意味しているものと理解されたい。
[0029]本発明は、本明細書における動作を実行する装置にも関する。この装置は、必要な目的のために専用に構築することができ、或いは、格納されているコンピュータプログラムによって選択的に起動又は再構成される汎用コンピュータを備えていてもよい。そのようなコンピュータプログラムは、コンピュータ可読記憶媒体、例えば、以下に限定されないが、任意のタイプのディスク(例:フロッピーディスク、光ディスク、CD−ROM、光磁気ディスク)、ROM(読取り専用メモリ)、RAM(ランダムアクセスメモリ)、EPROM、EEPROM、磁気カード又は光カード、或いは、電子的命令を格納するのに適しており、それぞれがコンピュータシステムのバスに結合されている任意のタイプの媒体、に格納することができる。
[0030]本明細書に提示したアルゴリズム及び表示は、特定のコンピュータ或いはその他の装置に本質的に関連するものではない。本明細書における教示内容によるプログラムは、様々な汎用システムにおいて使用することができ、或いは、場合によっては、必要な方法ステップを実行するための専用の装置を構築することが好都合であることもわかっている。これらの様々なシステムの必要な構造は、以下の説明から明らかになるであろう。更に、本発明は、特定のプログラミング言語に関連して説明していない。本明細書に説明した本発明の教示内容は、様々なプログラミング言語を使用して実施できることが理解されるであろう。
[0031]機械可読媒体には、機械(例:コンピュータ)が読むことのできる形式で情報を格納又は伝送する任意のメカニズムが含まれる。例えば、機械可読媒体としては、読取り専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイスのほか、電気、光、音響、又はその他の形式の伝搬信号(例:搬送波、赤外線信号、デジタル信号)等が挙げられる。
<ビデオ符号化器の実施形態の概要>
[0032]一実施形態においては、ビデオ符号化器はフィルタリングモジュールを含んでおり、このフィルタリングモジュールは、符号化ノイズを低減又は排除する目的でフレームデータを処理し、従って、符号化プロセスの客観的な品質と主観的な品質の双方を向上させる。ノイズフィルタは、過完備ベースでフレームデータを表現することによって構築される領域において、ノイズが含まれるフレームデータからビデオ信号を取り出すように動作する適応的な推定手法を使用する。本明細書に説明した装置及び方法は、フレームデータの過完備ベースの表現において、既存の従来技術とは異なる方式で推定オペレーション及びフィルタリングオペレーションを実行し、これらの装置及び方法を使用する結果として、従来技術と比較してパフォーマンスを向上させる。従来技術との差異としては、以下に限定されないが、ノイズから信号を取り出すために使用される推定器の構造、推定器が使用する他の変数の推定と、上述したように、表示を目的として、或いは参照及び表示の双方を目的として使用するフィルタリングされた最終的なデータサンプルを求めるために、推定器が生成する信号推定値を処理するために使用されるフィルタの構造、が挙げられる。
[0033]本明細書に説明した推定手法及び/又はフィルタリングプロセスを使用する結果として、データ符号化の効率が高まり、これが符号化プロセスの優れたレート・歪み特性に反映され、更に、符号化アーチファクトが低減又は排除されることにより、従来技術の方法と比較して復号後のビデオシーケンスの視覚的な品質が向上する。
[0034]図1は、ビデオ符号化器の一実施形態のブロック図である。以下、図1を参照する。ビデオ符号化器は、動き推定モジュール(MEM)129と、動き補償予測モジュール(MCPM)131と、メモリ123と、変換符号化モジュール(TCM)114と、動きデータ処理モジュール(MDPM)127と、ノイズフィルタモジュール(NFM)125と、フレームストア(FS)(例:メモリ)126と、スイッチ118,124,128,141,142と、を備えている。変換符号化器114は、変換モジュール111と、量子化器モジュール112と、エントロピ符号化モジュール113と、を含んでいる。変換符号化器114に入力されるフレームデータは、ビデオフレーム、又はDFD(displaced frame difference)フレームによって構成することができる。DFDフレームは、ビデオ符号化器において、ビデオフレームのデータと、MCPM131が生成して出力するその予測との間の差をとることによって得られる。この差は、ビデオフレーム101と、Iフレーム又はフレーム内ブロックとを受け取る減算器103から出力される(スイッチ141が閉じているとき)。MCPM131は、フレームストア126に格納されている動き補償後の再構築されたビデオフレームから成るデータに基づいて、予測を生成する。動き補償は、動き推定モジュール129が生成する動き情報を使用して行われる。このプロセスは、図1におけるスイッチの構成(後述する)によって有効になる。或いは、ビデオ符号化器(VC)が、予測を使用せずにビデオフレームを直接的に符号化するときには(従来の符号化器のフレーム内符号化モードに相当する)、MEM129、MCPM131、及びMDPM127は使用されない。
[0035]ビデオ符号化器は、一般には、ブロックに分割されたフレームデータ(ブロック内の各位置における輝度値及び色差値から成る)に対して連続的に動作する。
[0036]図2は、ビデオ符号化プロセスの一実施形態のフローチャートである。このプロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。
[0037]図2において、フレームからのブロックが、以下に説明するプロセスによって、現在のフレームの全てのブロックが処理されるまで連続的に読み取られて処理される。図2を参照すると、このプロセスでは、処理ロジックは、最初に、現在のフレーム内のブロックにインデックスを付けるために使用するインデックス変数iを1に設定する(処理ブロック201)。次いで、処理ロジックは、現在のフレームからブロックc(i)を読み取る(処理ブロック202)。
[0038]ビデオ符号化器の動作の最初の段階では、図1におけるスイッチは以下のように構成されている。すなわち、スイッチ141、142、及び128は、処理するブロックのタイプに応じて、開いているか又は閉じている(フレーム内符号化するブロックの場合は開いており、従来のビデオプロセスのように予測するブロックの場合には閉じている)。スイッチ124は開いている。
[0039]更に、処理ロジックは、インデックスkを1に初期化し(インデックスkは、現在のブロックc(i)に対応する探索領域内の位置)(処理ブロック203)、動き推定探索領域内の位置kに対応する基準フレーム内の基準ブロックb(k)を取得する(処理ブロック204)。動き推定プロセスを実行し、このプロセスによって、フレームストアからの基準フレーム内の探索領域内の候補の位置を連続的に探索し、現在のブロックc(i)に最良に整合する基準ブロックを識別する。整合の程度の量を使用して、ブロックc(i)とブロックb(k)との間の差を定量化する。動き推定プロセスは、現在のブロックc(i)と基準ブロックb(k)との間の差の量d(i,k)が最小になるように、基準フレーム内の探索領域内のブロックb(k)を見つけることを試みる。この位置は、現在のブロックc(i)を起点とし基準フレーム内の基準ブロックb(k)を指す動きベクトルmv(i,k)によって指定される。
[0040]処理ロジックは、ブロックc(i)とブロックb(k)との間の差の測度d(i,k)を計算し、それをメモリに格納する(処理ブロック205)。一実施形態においては、差d(i,k)は、例えば、c(i)とb(k)のサンプルの間の差の絶対値の合計によって定量化する。このように、現在のブロックc(i)について、探索領域の内側の位置kを、対応する基準ブロックb(k)を取得してd(i,k)を計算することによって調べ、誤差d(i,k)をメモリに格納する。
[0041]次いで、処理ロジックは、変数kを1だけインクリメントし(処理ブロック206)、変数kがK(探索領域内の位置の総数)より小さいか又は等しいかを調べる(処理ブロック207)。現在のブロックc(i)に対応する、基準フレームの探索領域位置の全てをまだ調べていない(すなわちk<K)場合、処理ロジックは処理ブロック204に戻り、プロセスがそこから続行する。全てを調べた(すなわちkがKより小さくない)場合、処理ロジックは処理ブロック208に進み、最良の、すなわちc(i)とb(k)との間のd(i,k)が最小である整合ブロックb(n)を見つける。一実施形態においては、現在のブロックc(i)に対応する基準フレームからのK個の探索領域位置の全てを処理した後、MEM129の処理ロジックは、メモリに格納されている一連の値d(i,k)のうち最小の誤差dminを見つける。この誤差dminは、座標が動きベクトルmv(i)によって指定される特定の基準ブロック(bminと表す)に対応する。
[0042]その後、処理ロジックは、動きベクトルmv(i,n)をメモリに格納し(処理ブロック209)、ブロックc(i)の符号化モードm(i)を決定して格納する(処理ブロック210)。ブロックc(i)の符号化モードm(i)は、フレーム内符号化又は予測符号化である。一実施形態においては、MEM129の処理ロジックは、ブロックc(i)のサンプルをフレーム内符号化するときの符号化計算量と、ブロックc(i)をブロックbminを基準に予測的に符号化する計算量とを比較することによって、現在のブロックc(i)の符号化モードcmode(i)を決定する。前者の計算量の方が小さい場合、ブロックc(i)のモードを「フレーム内(INTRA)」とマークし、そうでない場合、現在のブロックを予測ブロックとしてマークする。
[0043]ブロックc(i)の符号化モードが「フレーム内」でない場合、動きベクトルmv(i)をメモリに格納する。また、現在のブロックのモードcmode(i)もメモリに書き込む。処理ロジックがインデックス変数iを1だけインクリメントすることにより、プロセスは現在のフレーム内の次のブロックc(i)に進み(処理ブロック211)、iがN(現在のフレーム内のブロックの総数)より小さいかを調べる(処理ブロック212)。インデックスiがNより小さい場合、処理ロジックは処理ブロック202に移行し、プロセスはそこから続行する。インデックスiがNより小さくない場合、処理ロジックは処理ブロック213に移行し、インデックス変数iを1に設定する。
[0044]現在のフレーム内の全てのブロックを上述したように処理した時点で、動き補償プロセスを開始する。動き補償プロセスでは、最初に、処理ロジックが、現在のフレームから元の現在のブロックc(i)を読み取る(処理ブロック214)。一実施形態においては、ブロックを連続的に読み取る。処理ロジックは、ブロックc(i)の符号化モードが「フレーム内」であるかを調べる(処理ブロック215)。一実施形態においては、これは、MCPM131の処理ロジックが行う。ブロックc(i)の符号化モードが「フレーム内」である場合、処理ロジックは処理ブロック219に移行する。「フレーム内」ではない場合、処理ロジックは、mv(i,n)を使用して動き補償を実行し、基準フレームからブロック予測子(block predictor)b(i)をフェッチし(処理ブロック216)、次式に従って予測誤差e(i)を計算する(処理ブロック217)。
Figure 0004988715


この式において、予測ブロックp(i)は、MCPM131がブロックc(i)用にメモリに格納されている動きベクトルmv(i)を使用することによって、生成される。処理ロジックは、動き情報をエントロピ符号化し(処理ブロック218)、処理ブロック219に移行する。一実施形態においては、現在のブロックに対応する動きベクトルデータをMDPM127に送って処理し(例:近傍のブロックの動きベクトルに対してDPCM符号化する)、エントロピ符号化器モジュール113に送って符号化する。
[0045]処理ブロック219において、処理ロジックは、c(i)の符号化モードをエントロピ符号化する。次いで、処理ロジックは、モードm(i)に応じてブロックデータc(i)又はe(i)を変換符号化し(処理ブロック220)、現在のブロックを再構築し(処理ブロック221)、それをメモリ(例:メモリ123)に書き込む(処理ブロック222)。
[0046]現在のフレーム内の全てのブロックに対して、上述したプロセスが繰り返される。そのために、次いで、処理ロジックは、インデックスiを1だけインクリメントし(処理ブロック223)、インデックスiがN(現在のフレーム内のブロックの総数)より小さいかを調べる(処理ブロック224)。Nより小さい場合、処理は処理ブロック214に移行し、プロセスはそこから続行する。Nより小さくない場合、処理ロジックは、メモリ(例:メモリ123)内のノイズが含まれるフレームデータをフィルタリングし(処理ブロック225)、フィルタリングしたデータをフレームストア(例:フレームストア126)に格納する(処理ブロック226)。その後、プロセスは終了する。
[0047]現在のフレーム内の全てのブロックを処理した後、スイッチ124を閉じる。メモリ123に格納されている再構築されたフレームデータを、以下に説明するようにノイズフィルタモジュール125によって処理する。ノイズフィルタモジュール125は、自身が処理したデータをフレームストア126に格納する。
<ノイズフィルタリング>
[0048]図3は、ノイズフィルタリングモジュールの一実施形態(例:図1のノイズフィルタリングモジュール125)のブロック図である。以下、図3を参照する。このノイズフィルタリングモジュールは、メモリ301と、空間マスク位置生成モジュール(MPGM)302と、変換モジュール(TM)303と、推定器モジュール(EM)304と、メモリ305と、逆変換モジュール(ITM)306と、メモリ307と、フィルタモジュール(FM)308と、を備えている。メモリ301は、マスク位置生成器302にマスク構造310を提供する。マスク位置生成器302は、これに応答して、フレーム内位置311を示し、これらの位置を、変換モジュール303と、逆変換モジュール306と、フィルタ308とに提供する。変換モジュール303は、復号されたフレームデータ312に変換を適用し、マスク位置生成器302によって示されたマスク下のサンプルの変換係数313を生成する。推定器305は、変換係数313を受け取り、これに応じて、ノイズ低減された変換係数314を生成する。ノイズ低減された変換係数314をメモリ305に格納する。次いで、逆変換モジュール306が、ノイズ低減された変換係数に、マスク位置生成器302からのマスクに基づいて逆変換を適用し、マスク下のノイズ低減されたサンプル315を生成する。これらサンプルはメモリ307に格納される。フィルタモジュール308は、ノイズ低減されたサンプル315に、マスク位置生成器302からのマスクに基づいてフィルタリングを実行し、再構築されたフレームサンプル316を生成する。
[0049]ノイズフィルタモジュールへの入力は、メモリモジュール123に格納されている再構築されたフレームデータ312(例:復号されたフレームデータ)から成る。ノイズフィルタモジュールは、フィルタリングされたフレームデータ316(例:再構築されたフレームサンプル)をフレームストア126に出力する。ノイズフィルタモジュールのオペレーションは、図4、図5、図6に記載したフローチャートによって示したように進行する。
[0050]図4は、ノイズフィルタリングプロセスの実施形態のフローチャートである。このプロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。一実施形態においては、処理ロジックは、図3のノイズフィルタモジュールの推定器304の一部である。
[0051]ノイズフィルタモジュールが実行するプロセスは、最初のステップとして、メモリ(例:123)に格納されている再構築されたフレームデータを取得する。処理ロジックは、再構築されたフレームデータを使用して、変数Vのセットを計算する(処理ブロック401)。これら補助変数Vのセットは、推定プロセスにおいて更に使用される。推定器は、符号化プロセスによって生じる量子化ノイズの量を、コーデックが使用する量子化方式に基づいて計算する。本明細書においては、符号化プロセスにおいて使用する量子化ステップサイズをqによって表す。一実施形態においては、処理ロジックは、補助変数を次式によって計算する
Figure 0004988715


この式において、αは定数、νはノイズ出力の推定値を表す。推定器の処理ロジックは、符号化器において使用する符号化方式の特性に基づいて、変数bの値も決定する。この場合、bは、b=βνとして計算する。ここで、βは定数である。別の実施形態においては、処理ロジックは、追加の補助変数を以下のように計算する。
Figure 0004988715



ここれ、μは選択可能な定数である。
[0052]更に別の実施形態においては、処理ロジックは、以下の補助変数を計算する。
Figure 0004988715



ここで、μは選択可能な定数である。
[0053]次いで、処理ロジックは、サポート領域Rを有するマスクSを設定する(処理ブロック402)。マスクのサイズ(サポート領域R)は、例えば、符号化プロセスにおいて使用するブロックのサイズに等しくすることができる。
[0054]その後、処理ロジックは、(i,j)をフレーム内のブロックの位置に初期化する(処理ブロック403)。このブロック位置(i,j)は、ビデオコーデックがフレームを符号化/復号するのに慣習的に使用されるブロックのグリッド上に位置しており、メモリ(例:メモリ123)からの現在フィルタリングしているフレーム内で選択する。
[0055]更に、処理ロジックは、(m,n)を、(i,j)を含んだその周囲の位置に初期化する(処理ブロック404)。位置(m,n)は、マスクSを(i,j)に対してシフトさせる位置を表す。次いで、処理ロジックは、マスクSをフレーム内の位置(m,n)に移動させる(処理ブロック405)。
[0056]処理ロジックは、マスクS下のサンプルに変換T(例:離散コサイン変換(DCT))を適用し(処理ブロック406)、変換後の係数に対し、推定器の処理ロジックを使用してノイズ低減を行う(処理ブロック407)。この実施形態では、マスクSの現在の位置によってカバーされるデータサンプルに対応するN個の変換係数を、s(k)(k=1,...,N)によって表す。結果としての変換係数を、推定器モジュールの処理ロジックによって処理する。図7及び図8のフローチャートは、この動作の相異なる実施形態を示しており、以下ではこれらの実施形態について更に詳しく説明する。
[0057]図7のフローチャートでは、推定器モジュールの処理ロジックは、変換係数s(k)を取得し、値s(k)を計算することによって信号パワーを推定する。次いで、処理ロジックは、この信号パワーを閾値と比較し、係数s(k)に対応する推定値a(k)を以下のように求める。
Figure 0004988715

[0058]次いで、推定器の処理ロジックは、次式に従って、処理後の変換係数p(k)を求める。
Figure 0004988715

[0059]代替の実施形態においては、推定器の処理ロジックは、図8のフローチャートに示したプロセスを使用し、前に定義した補助変数Vを利用し、係数s(k)のそれぞれの推定値を、以下のように計算する。
Figure 0004988715

[0060]次いで、推定器の処理ロジックは、処理後の変換係数p(k)を以下のように求める。
Figure 0004988715

[0061]代替の実施形態においては、推定器の処理ロジックは、同じく図8のフローチャートに示したプロセスを使用し、係数s(k)のそれぞれに対して、処理後の係数p(k)の値を以下のように計算する。
Figure 0004988715


図8については、後に更に詳しく説明する。
[0062]図7又は図8のどちらのプロセスを使用した場合にも、処理ロジックは、係数p(k)をメモリ(例:メモリ305)に格納する。全ての係数を処理していなければ、上述したプロセスを繰り返す。
[0063]次いで、処理ロジックは、マスクS下の処理済み変換係数p(k)に逆変換T−1(例:逆DCT変換)を適用し(処理ブロック408)、フレームにおけるマスクSの現在の位置(m,n)に対応するサンプルr(k)を得る。処理ロジックは、マスクS下のこれらの処理済みサンプルをメモリ(例:メモリ307)に格納する(処理ブロック409)。
[0064]次いで、処理ロジックは、(m,n)を次の位置に設定し(処理ブロック410)、サポート領域R内の全ての位置(m,n)を処理したかを調べる(処理ブロック411)。ブロック位置(i,j)の周囲のマスクSの位置の全てを処理していない場合、処理は処理ブロック405に移行し、(i,j)に対するマスクSの次のシフト位置(m,n)を選択し、上述したプロセスを繰り返す。
[0065]ブロック位置(i,j)の周囲のマスクSの位置の全てを処理した場合、処理ブロックは処理ブロック412に移行し、フレーム内のブロックグリッド上の次のブロック位置(i,j)を選択し、フレーム内の処理中のブロックのブロック位置(i,j)の全てを処理したかを調べる(処理ブロック413)。全てを処理していない場合、処理ロジックは処理ブロック404に移行し、プロセスはそこから続行する。全てを処理した場合、処理は処理ブロック414に移行する。このようにして、ブロック位置(i,j)の全てを処理するまで、上記のプロセスを繰り返す。
[0066]処理ブロック414において、処理ロジックは、フレーム内のサンプル位置のそれぞれに対応する再構築バージョンを、フィルタ(例:フィルタ308)を使用してフィルタリングし(処理ブロック414)、処理している現在のフレームのフィルタリングされたデータサンプルf(x,y)を、フレームストア(例:フレームストア126)に書き込む(処理ブロック415)。一実施形態においては、処理ロジックは、現在のフレーム内のサンプルのそれぞれに対応する、メモリ(例:メモリ307)に格納されている処理済みサンプルをフィルタリングする。一実施形態においては、このフィルタリングは、ノイズフィルタモジュール125のフィルタ308が実行する。従って、ノイズフィルタモジュール125によって処理している現在のフレーム内の位置(x,y)のそれぞれに対して、推定器304によってメモリ307に格納されている、複数の処理済みの再構築されたサンプルr(x,y)が存在する。ここで、l=1,...,Lは、マスクSがフレーム内のブロックグリッド位置の周囲を占有できる位置をインデックス化しており、そのような位置のそれぞれにおいて、マスクSのサポート領域Rにサンプル位置(x,y)が含まれる。一実施形態においては、フィルタは、フレーム位置(x,y)に対応する入力データr(x,y)に対して、以下のように加重平均演算を実行する。
Figure 0004988715


この式において、wは、推定器の処理ロジックによって生成される統計情報に基づいて選択する重みである。一実施形態においては、全ての重みは、w=1/Lとして選択され、平均化演算に相当するものとする。代替の実施形態においては、重みは、マスクSの位置lにおいて推定器を適用することで得られる処理後の係数p(k)のうち値がゼロである係数の数に比例するように選択する。
[0067]次いで、プロセスが終了する。
[0068]図5は、ノイズフィルタリングモジュールによって実行されるノイズフィルタリングプロセスの代替の実施形態のフローチャートである。このプロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。一実施形態においては、処理ロジックは、図3のノイズフィルタモジュールの推定器304の一部である。
[0069]以下、図5を参照する。このプロセスでは、最初に、処理ロジックが、サポート領域Rを有するマスクSを生成する(処理ブロック501)。マスクのサイズ(サポート領域R)は、例えば、符号化プロセスにおいて使用するブロックのサイズに等しくすることができる。
[0070]処理ロジックは、変数V(k)のセットを計算する(処理ブロック502)。変換(例:DCT)をマスクS下のサンプルに適用する(処理ブロック303において)ので、そのような変換の場合に慣習的に行われるように、変換係数を順位付けることができる。この順位をkによって表す。この実施形態においては、変数v(k)は、マスクS下で生成される変換係数の順位kに依存する。この補助変数v(k)のセットは、推定プロセスにおいて更に使用される。処理ロジックは、コーデックが使用する量子化方式に基づいて、符号化プロセスによって生じる量子化ノイズの量を計算する。本明細書においては、符号化プロセスにおいて使用する量子化ステップサイズをqによって表す。この場合、処理ロジックは、変数を次式によって計算する。
Figure 0004988715


この式において、αは、様々な要因(例:マスクSの内側の係数s(k)の順位k)に基づいて適合させることができる(この場合はα=α(k))。例えば、順位の高い係数に対してはαを大きくする。νがkの関数であるならば、bも係数の順位kの関数となり、b(k)=βν(k)である。別の実施形態においては、処理ロジックは、マスクS(Sの中の位置)下の変換係数の順位kに依存する追加の補助変数を以下のように計算する。
Figure 0004988715


上式において、μは選択可能な定数である。
[0071]或いは、別の実施形態においては、処理ロジックは以下の補助変数を計算する。
Figure 0004988715


上式において、μは選択可能な定数である。
[0072]次いで、処理ロジックは、(i,j)を、フレーム内のブロックの位置に初期化する(処理ブロック503)。一実施形態においては、ビデオコーデックがフレームを符号化/復号するのに慣習的に使用するブロックのグリッド上に位置しているブロック位置(i,j)を、メモリ(例:メモリ123)からの現在フィルタリングしているフレーム内で選択する。
[0073]更に、処理ロジックは、(m,n)を、(i,j)を含んだその周囲の位置に初期化する(処理ブロック504)。位置(m,n)は、マスクSを(i,j)に対してシフトさせる位置である。次いで、処理ロジックは、マスクSをフレーム内の位置(m,n)に移動させる(処理ブロック505)。
[0074]処理ロジックは、マスクS下のサンプルに変換T(例:DCT)を適用し(処理ブロック506)、変換係数に対してノイズ低減を行う(処理ブロック507)。この実施形態では、マスクSの現在の位置によってカバーされるデータサンプルに対応するN個の変換係数を、s(k)(k=1,...,N)によって表す。結果としての変換係数を、推定器モジュールの処理ロジックによって処理する。図7及び図8のフローチャートは、このオペレーションの相異なる実施形態を示しており、以下ではこれらの実施形態について更に詳しく説明する。
[0075]図7のフローチャートでは、推定器モジュールの処理ロジックは、変換係数s(k)を取得し、値s(k)を計算することによって信号パワーを推定する。次いで、処理ロジックは、この信号パワーを閾値と比較し、係数s(k)に対する推定値を以下のように求める。
Figure 0004988715

[0076]次いで、推定器の処理ロジックは、次式に従って、処理後の変換係数p(k)を求める。
Figure 0004988715

[0077]代替の実施形態においては、推定器の処理ロジックは、図8のフローチャートに示したプロセスを使用し、補助変数を利用して、係数s(k)のそれぞれの推定値を以下のように計算する。
Figure 0004988715

[0078]次いで、推定器の処理ロジックは、処理後の変換係数p(k)を以下のように求める。
Figure 0004988715

[0079]代替の実施形態においては、推定器の処理ロジックは、同じく図8のフローチャートに示したプロセスを使用し、処理後の係数p(k)の値を以下のように計算する。
Figure 0004988715

[0080]図8については、後に更に詳しく説明する。
[0081]図7又は図8のどちらのプロセスを使用した場合にも、処理ロジックは、係数p(k)を(例えばメモリ305に)格納する。全ての係数を処理していなければ、上述したプロセスを繰り返す。
[0082]ノイズ低減を行った後、処理ロジックは、マスクS下の変換係数p(k)に逆変換T−1(例:逆DCT変換)を適用し(処理ブロック508)、フレームにおけるマスクSの現在の位置(m,n)に対応するサンプルr(k)を得て、マスクS下の再構築されたサンプルをメモリ(例:メモリ307)に格納する(処理ブロック509)。
[0083]次いで、処理ロジックは、(m,n)を次の位置に設定し(処理ブロック510)、サポート領域R内の全ての位置(m,n)を処理したかを調べる(処理ブロック511)。ブロック位置(i,j)の周囲のマスクSの位置の全てを処理していない場合、処理は処理ブロック505に移行し、(i,j)に対するマスクSの次のシフト位置(m,n)を選択し、上述したプロセスを繰り返す。
[0084]ブロック位置(i,j)の周囲のマスクSの位置の全てを処理した場合、処理ブロックは処理ブロック512に移行し、フレーム内のブロックグリッド上の次のブロック位置(i,j)を選択し、フレーム内の処理中のブロックのブロック位置(i,j)の全てを処理したかを調べる(処理ブロック513)。全てを処理していない場合、処理ロジックは処理ブロック504に移行し、プロセスはそこから続行する。全てを処理した場合、処理は処理ブロック514に移行する。このようにして、ブロック位置(i,j)の全てを処理するまで、上記のプロセスを繰り返す。
[0085]処理ブロック514において、処理ロジックは、フレーム内のサンプル位置のそれぞれに対応する再構築されたバージョンを、フィルタを使用してフィルタリングする(処理ブロック514)。一実施形態においては、使用するフィルタはフィルタ308である。従って、ノイズフィルタモジュール125によって処理している現在のフレーム内の位置(x,y)のそれぞれに対して、推定器によってメモリ307に格納されている、複数の処理済みの再構築されたサンプルr(x,y)が存在する。ここで、l=1,...,Lは、マスクSがフレーム内のブロックグリッド位置の周囲を占有できる位置をインデックス化しており、そのような位置のそれぞれにおいて、マスクSのサポート領域Rにサンプル位置(x,y)が含まれる。一実施形態においては、フィルタ308は、フレーム位置(x,y)に対応する入力データr(x,y)に対して、以下のように加重平均演算を実行する。
Figure 0004988715


この式において、wは、推定器によって生成される統計情報に基づいて選択する重みである。一実施形態においては、全ての重みを、w=1/Lとして選択する。代替の実施形態においては、重みは、マスクSの位置lにおいて推定器を適用した結果としての処理後の係数p(k)のうち値がゼロである係数の数に比例するように選択する。
[0086]処理ロジックは、処理している現在のフレームに用に得られたフィルタリング済みのデータサンプルf(x,y)を、フレームストア(例:フレームストア126)に書き込む(処理ブロック515)。
[0087]その後、プロセスが終了する。
[0088]図6は、ノイズフィルタリングモジュールによって実行されるノイズフィルタリングプロセスの更に別の代替実施形態のフローチャートである。このプロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。
[0089]以下、図6を参照し、このプロセスでは、最初に、処理ロジックが、サポート領域Rを有するマスクSを生成する(処理ブロック601)。一実施形態においては、マスクのサイズ(サポート領域R)は、符号化プロセスにおいて使用するブロックのサイズに等しくすることができる。
[0090]次いで、処理ロジックは、(i,j)を、フレーム内のブロックの位置に初期化する(処理ブロック602)。一実施形態においては、ビデオコーデックがフレームを符号化/復号するのに慣習的に使用するブロックのグリッド上に位置しているブロック位置(i,j)は、メモリ(例:メモリ123)からの現在フィルタリングしているフレーム内で選択する。
[0091]更に、処理ロジックは、(m,n)を、(i,j)を含んだその周囲の位置に初期化する(処理ブロック603)。位置(m,n)は、マスクSを(i,j)に対してシフトさせる位置である。処理ロジックは、マスクSをフレーム内の位置(m,n)に移動させる(処理ブロック604)。
[0092]推定器の処理ロジックは、現在のマスク位置において303によって生成される変換係数の順位kと、フレーム内のマスクSの位置(m,n)とに依存する変数V(m,n,k)のセットを計算する(処理ブロック605)。これら補助変数のセットは、推定プロセスにおいて更に使用される。処理ロジックは、符号化プロセスによって生じる量子化ノイズの量を、コーデックが使用する量子化方式に基づいて計算する。本明細書においては、符号化プロセスにおいて使用する量子化ステップサイズをqによって表す。この場合、処理ロジックは、変数を以下のように計算する。
Figure 0004988715


この式において、αは、様々な要因(例:マスクSの内側の係数s(k)の順位k、(i,j)の周囲のマスクSの位置(m,n)に基づいて適合させることができる(この場合、α=α(m,n,k))。例えば、順位の高い係数に対してはαを大きくする。vが(m,n,k)の関数であるならば、bも係数の順位(m,n,k)の関数となり、b(m,n,k)=βν(m,n,k)である。別の実施形態においては、処理ロジックは、マスクS(Sの中の位置)にマッピングされる変換係数の順位(m,n,k)に依存する追加の補助変数を、以下のように計算する。
Figure 0004988715


上式において、μは選択可能な定数である。
[0093]或いは、別の実施形態においては、処理ロジックは以下の補助変数を計算する。
Figure 0004988715


上式において、μは選択可能な定数である。
[0094]処理ロジックは、マスクS下のサンプルに変換T(例:DCT)を適用し(処理ブロック606)、変換後の係数に対し、推定器の処理ロジックを使用してノイズ低減を行う(処理ブロック607)。この実施形態では、マスクSの現在の位置によってカバーされるデータサンプルに対応するN個の変換係数を、s(m,n,k)(k=1,...,N)によって表す。結果としての変換係数を、推定器モジュールの処理ロジックによって処理する。図7及び図8のフローチャートは、このオペレーションの相異なる実施形態を示しており、以下ではこれらの実施形態について更に詳しく説明する。
[0095]図7のフローチャートでは、推定器モジュールの処理ロジックは、変換係数s(m,n,k)を取得し、値s(m,n,k)を計算することによって信号パワーを推定する。次いで、処理ロジックは、この信号パワーを閾値と比較し、係数s(m,n,k)に対する推定値を以下のように求める。
Figure 0004988715

[0096]次いで、推定器の処理ロジックは、次式に従って、処理後の変換係数p(m,n,k)を求める。
Figure 0004988715

[0097]代替の実施形態においては、推定器の処理ロジックは、図8のフローチャートに示したプロセスを使用し、補助変数を利用し、係数s(m,n,k)のそれぞれの推定値を、以下のように計算する。
Figure 0004988715

[0098]次いで、推定器の処理ロジックは、処理後の変換係数p(m,n,k)を以下のように求める。
Figure 0004988715

[0099]代替の実施形態においては、推定器の処理ロジックは、同じく図8のフローチャートに示したプロセスを使用し、処理後の係数p(m,n,k)の値を以下のように計算する。
Figure 0004988715

[00100]図8については、後に更に詳しく説明する。
[00101]図7又は図8のどちらのプロセスを使用した場合にも、処理ロジックは、係数p(k)をメモリ(例:メモリ305)に格納する。全ての係数が処理されていなければ、上述したプロセスを繰り返す。
[00102]次いで、処理ロジックは、マスクS下の変換係数に逆変換T−1を適用し(処理ブロック608)、フレームにおけるマスクSの現在の位置(m,n)に対応するサンプルr(m,n,k)を得る。処理ロジックは、マスクS下のこれらの再構築されたサンプルをメモリ(例:メモリ307)に格納する(処理ブロック609)。
[00103]次いで、処理ロジックは、(m,n)を次の位置に設定し(処理ブロック610)、サポート領域R内の全ての位置(m,n)を処理したかを調べる(処理ブロック611)。ブロック位置(i,j)の周囲のマスクSの位置の全てを処理していない場合、処理は処理ブロック605に移行し、(i,j)に対するマスクSの次のシフト位置(m,n)を選択し、上述したプロセスを繰り返す。
[00104]ブロック位置(i,j)の周囲のマスクSの位置の全てを処理した場合、処理ブロックは処理ブロック612に移行し、フレーム内のブロックグリッド上の次のブロック位置(i,j)を選択し、フレーム内の処理中のブロックのブロック位置(i,j)の全てを処理したかを調べる(処理ブロック613)。全てを処理していない場合、処理ロジックは処理ブロック604に移行し、プロセスはそこから続行する。全てを処理した場合、処理は処理ブロック614に移行する。このようにして、ブロック位置(i,j)の全てを処理するまで、上記のプロセスを繰り返す。
[00105]処理ブロック614において、処理ロジックは、フレーム内のサンプル位置のそれぞれに対応する再構築されたバージョンを、フィルタ(例:フィルタ308)を使用してフィルタリングし(処理ブロック614)、処理している現在のフレームのフィルタリングされたデータサンプルf(x,y)を、フレームストア(例:フレームストア126)に書き込む(処理ブロック615)。一実施形態においては、処理ロジックは、現在のフレーム内の各サンプルに対応する、メモリ(例:メモリ307)に格納されている推定されたサンプルをフィルタリングする。一実施形態においては、このフィルタリングは、ノイズフィルタモジュール125のフィルタ308が実行する。従って、ノイズフィルタモジュール125によって処理している現在のフレーム内の位置(x,y)のそれぞれに対して、推定器304によってメモリに格納されている、複数の処理済みの再構築されたサンプルr(x,y)が存在する。ここで、l=1,...,Lは、マスクSがフレーム内のブロックグリッド位置の周囲を占有できる位置をインデックス化しており、そのような位置のそれぞれにおいて、サンプル位置(x,y)が含まれる。一実施形態においては、フィルタは、フレーム位置(x,y)に対応する入力データr(x,y)に対して、以下のように加重平均演算を実行する。
Figure 0004988715


この式において、wは、推定器の処理ロジックによって生成される統計情報に基づいて選択する重みである。一実施形態においては、全ての重みを、w=1/Lとして選択する。代替実施形態においては、重みは、マスクSの位置lにおいて推定器を適用した結果としての処理後の係数p(k)のうち値がゼロである係数の数に比例するように選択する。
[00106]次いで、プロセスが終了する。
<推定プロセスの例>
[00107]図7は、推定プロセスの一実施形態のフローチャートである。推定プロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。
[00108]以下、図7を参照する。このプロセスでは、処理ロジックは、最初に変換係数を取得し(処理ブロック701)、変換係数の信号パワーを推定する(処理ブロック702)。一実施形態においては、変換係数の二乗を計算することによって信号パワーを推定する。
[00109]次いで、処理ロジックは、信号パワーが閾値よりも小さいかを調べる(処理ブロック703)。閾値の一実施形態は、上の段落[0052]に説明したものである。閾値よりも小さい場合に、処理ロジックは、係数を0に設定し(処理ブロック704)、処理が処理ブロック706に移行し、係数を格納する。閾値よりも小さくない場合、処理ロジックは、信号パワー、ノイズ出力、及び閾値に基づいて、上述したロジックを実行することによって係数の値を調節し(処理ブロック705)、処理が処理ブロック706に移行し、係数を格納する。
[00110]処理ロジックは、係数を格納した後、全ての係数を処理したかを調べる(処理ブロック707)。処理していない場合、処理ロジックは処理ブロック701に移行し、プロセスはこのポイントから続行する。全ての係数を処理した場合、プロセスは終了する。
[00111]図8は、推定プロセスの代替の実施形態のフローチャートである。このプロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。
[00112]以下、図8を参照する。このプロセスでは、処理ロジックは、最初に変換係数を取得し(処理ブロック801)、変換係数の信号パワーを推定する(処理ブロック802)。一実施形態においては、変換係数の二乗を計算することによって信号パワーを推定する。次いで、処理ロジックは、信号パワーが閾値よりも小さいかを調べる(処理ブロック803)。閾値の一実施形態は、上の段落[0071]に説明したものである。閾値よりも小さい場合、処理ロジックは、係数を0に設定し(処理ブロック804)、処理が処理ブロック806に移行し、係数を格納する。閾値よりも小さくない場合、処理ロジックは、信号パワーが第2の閾値より小さいかを調べる(処理ブロック805)。この閾値の実施形態は、上の段落[0093]に説明したものである。第2の閾値よりも小さい場合、処理ロジックは、信号パワー、ノイズ出力、及び閾値に基づいて、上述したロジックを実行することによって係数の値を調節し(処理ブロック806)、処理が処理ブロック808に移行し、係数を格納する。第2の閾値よりも小さくない場合、処理ロジックは、係数を変更せずそのままにし(処理ブロック807)、処理ブロック808に移行して係数を格納する。
[00113]処理ロジックは、係数を格納した後、全ての係数を処理したかを調べる(処理ブロック809)。処理していない場合、処理ロジックは処理ブロック701に移行し、プロセスはこのポイントから続行する。全ての係数を処理した場合、プロセスは終了する。
<ビデオ復号器の例>
[00114]図9は、ビデオ復号器(VD)の一実施形態のブロック図である。以下、図9を参照する。ビデオ復号器は、変換復号器913と、加算器904と、メモリモジュール905と、動き補償・予測モジュール(MCPM)907と、動きデータ処理モジュール(MDPM)908と、フレームストア909と、ノイズフィルタモジュール(NFM)906と、スイッチ941〜943と、を備えている。一実施形態においては、変換復号器913は、エントロピ復号器901と、逆量子化器902と、逆変換モジュール903と、を含んでいる。
[00115]ビデオ復号器は、図10のフローチャートを参照しながら以下に説明するプロセスに従って、ビデオフレームデータを再構築する。スイッチ942及びスイッチ943は、従来の符号化プロセスの動作と同様に、復号するブロックのタイプ(フレーム内符号化されている、又は予測符号化されている)に応じて開いているか、又は閉じている。スイッチ941は、最初は開いている。
[00116]図10は、ビデオ復号プロセスの一実施形態のフローチャートである。このプロセスは処理ロジックによって実行される。処理ロジックは、ハードウェア(回路、専用ロジック等)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で実行されるもの等)、又は双方の組合せを備えることができる。
[00117]以下、図10を参照する。このプロセスは、最初に、処理ロジックが、インデックス変数iを1に初期化する(処理ブロック1001)。
[00118]次いで、処理ロジックは、復号するビデオフレーム内の現在のブロックc(i)の符号化モードを復号し(処理ブロック1002)、ブロックc(i)の符号化モードが「フレーム内」であるかを調べる(処理ブロック1003)。「フレーム内」である場合、処理ロジックは、従来のプロセスに従って現在のブロックc(i)をフレーム内復号し(処理ブロック1004)、処理ブロック1009に移行する。「フレーム内」ではない場合、処理ロジックは、現在のブロックc(i)のブロック予測誤差e(i)を変換復号器913を使用して復号し(処理ブロック1005)、現在のブロックc(i)の動きベクトルmv(i)を変換復号器913とMDPM908とを使用して復号し(処理ブロック1006)、mv(i)とフレームストア内の基準フレームとを使用して現在のブロックc(i)の動き補償を行って予測ブロックu(i)を求める(処理ブロック1007)。一実施形態においては、復号された動きベクトルmv(i)をMCPM908が使用して、フレームストア909に格納されている基準フレームから基準ブロック(予測子)u(i)をフェッチする。
[00119]次いで、処理ロジックは、次式に従って現在のブロックを再構築する(処理ブロック1008)。
Figure 0004988715


即ち、現在のブロックrc(i)は、予測誤差e(i)を予測サンプルu(i)に加算することによって再構築される。
[00120]その後、処理ロジックは、再構築されたデータをメモリ(例:メモリ905)に書き込む(処理ブロック1009)。すなわち、再構築されたブロックrc(i)に対応するデータをメモリに書き込む。次いで、処理ロジックは、iを1だけインクリメントすることによって、復号している現在のフレーム内の次のブロック位置に進む(処理ブロック1010)。
[00121]処理ロジックは、インデックス変数iがN(処理している現在のフレーム内のブロックの総数)より小さいかを調べる(処理ブロック1011)。小さい場合、処理ロジックは処理ブロック1002に移行し、プロセスはそのポイントから続行する。このようにして、復号している現在のフレーム内の全てのブロックについて、上述したプロセスを繰り返す。小さくない場合、スイッチ941を閉じ、処理ロジックは、メモリ(例:メモリ905)内のフレームデータをノイズフィルタモジュール(例:ノイズフィルタモジュール906)を使用してフィルタリングする(処理ブロック1012)。一実施形態においては、ループフィルタリングモジュールが、メモリモジュール905に格納されている復号されたフレームデータを読み取り、ビデオ符号化器におけるループフィルタモジュール125について説明したプロセスと同じプロセスを実行する。次いで、処理ロジックは、フィルタリングされたデータをフレームストア(例:フレームストア909)に書き込む(処理ブロック1013)。
[00122]その後、プロセスが終了する。
[00123]したがって、本明細書に説明した方法及び装置を使用して求められるビデオフレームデータのフィルタリングでは、従来技術のソリューションと比較して、客観的及び主観的な(画質の)パフォーマンスが向上する。
<コンピュータシステムの例>
[00124]図11は、本明細書に説明した一つ以上のオペレーションを実行することのできる例示的なコンピュータシステムのブロック図である。以下、図11を参照する。コンピュータシステム1100は、例示的なクライアントコンピュータシステム又はサーバコンピュータシステムを備えることができる。コンピュータシステム1100は、情報を伝えるための通信メカニズム又はバス1111と、バス1111に結合されており情報を処理するプロセッサ1112と、を備えている。プロセッサ1112はマイクロプロセッサを含んでいるが、マイクロプロセッサ(例:PentiumTM、PowerPCTM、AlphaTM)に限定されない。
[00125]システム1100は、バス1111に結合されているおり、情報と、プロセッサ1112によって実行される命令とを格納するRAM(ランダムアクセスメモリ)又はその他の動的記憶装置1104(メインメモリと称する)を更に備えている。メインメモリ1104は、プロセッサ1112による命令の実行時に一時変数又はその他の中間情報を格納する目的にも使用することができる。
[00126]更に、コンピュータシステム1100は、バス1111に結合されており、静的な情報と、プロセッサ1112への命令とを格納するROM(読取り専用メモリ)及び/又はその他の静的記憶装置1106と、データ記憶装置1107(例:磁気ディスク又は光ディスクと、それに対応するディスクドライブ)とを備えている。データ記憶装置1107は、バス1111に結合されており、情報及び命令を格納する。
[00127]更に、コンピュータシステム1100には、バス1111に結合されており、コンピュータの使用者に情報を表示するディスプレイ装置1121(例:CRT(陰極線管)、液晶ディスプレイ(LCD))を結合することができる。英数字キー及びその他のキーを有しており、情報及びコマンド選択をプロセッサ1112に伝える英数字入力装置1122も、バス1111に結合することができる。更なるユーザ入力装置は、バス1111に結合されるカーソル制御装置1123(例:マウス、トラックボール、トラックパッド、スタイラス、カーソル方向キー)であり、方向情報及びコマンド選択をプロセッサ1112に伝え、ディスプレイ1121上のカーソルの動きを制御する。
[00128]バス1111に結合することのできる別の装置は、媒体(例:紙、フィルム、又は類似するタイプの媒体)上に情報を記録するために使用することのできるハードコピー装置1124である。バス1111に結合することのできる別の装置は、電話又はハンドヘルド型パームデバイス(handheld palm device)と通信するための有線/無線通信機能1125である。
[00129]なお、本発明においては、システム1100及び関連のハードウェアの一部又は全てを使用することができる。しかしながら、コンピュータシステムの別の構成では、これらデバイスの一部又は全てを備えてもよいことを理解されたい。
[00130]この技術分野における当業者には、上記の説明を読み終えた後、本発明の数多くの変更及び修正が明らかになるであろうが、説明を目的として図示及び記載した実施形態の何れも、本発明を制限することを意図したものではないことを理解されたい。従って、様々な実施形態の細部を示したが、それらは、本発明の本質的な特徴のみを記載している特許請求の範囲を制限することを意図したものではない。
ビデオ符号化器の一実施形態のブロック図である。 ビデオ符号化プロセスの一実施形態のフローチャートである。 ノイズフィルタモジュールの一実施形態のブロック図である。 ノイズフィルタリングプロセスの一実施形態のフローチャートである。 ノイズフィルタリングプロセスの別の実施形態のフローチャートである。 ノイズフィルタリングプロセスの更に別の実施形態のフローチャートである。 推定プロセスの一実施形態のフローチャートである。 推定プロセスの別の実施形態のフローチャートである。 ビデオ復号器の一実施形態のブロック図である。 ビデオ復号プロセスの一実施形態のフローチャートである。 コンピュータシステムの一実施形態のブロック図である。

Claims (34)

  1. ビデオフレームにおけるデータを符号化するためのビデオ符号化器であって、
    変換されたフレームデータに対して動作するノイズフィルタリングモジュールであって、複数の変換係数それぞれの信号パワーを推定し、前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較し、前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することによって、前記複数の変換係数に対する信号推定を実行する、該ノイズフィルタリングモジュール、
    を備え
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定する、ことを含むビデオ符号化器。
  2. ビデオフレームにおけるデータを符号化するためのビデオ符号化器であって、
    変換されたフレームデータに対して動作するノイズフィルタリングモジュールであって、複数の変換係数それぞれの信号パワーを推定し、前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較し、前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することによって、前記複数の変換係数に対する信号推定を実行する、該ノイズフィルタリングモジュール、
    を備え、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残す、ことを含むビデオ符号化器。
  3. 前記少なくとも一つの閾値は、一対の閾値を含む請求項1又は2に記載のビデオ符号化器。
  4. ノイズフィルタは、
    復号されたフレームデータに応じて複数の変換係数を生成する変換モジュールと、
    変換モジュールによって生成された変換係数に応じて、ノイズ低減が行われた変換係数を生成する推定器と、
    推定器から出力されたノイズ低減が行われた変換係数からノイズ低減が行われたサンプルを生成する逆変換モジュールと、
    逆変換モジュールによって生成されたノイズ低減が行われたサンプルにフィルタをかけて、再構築されたフレームサンプルを生成するフィルタと、
    を備える請求項1又は2に記載のビデオ符号化器。
  5. 変換モジュール、逆変換モジュール及びフィルタは、フレーム内の処理されている位置を特定するマスクに基づいて機能する請求項に記載のビデオ符号化器。
  6. マスクを生成するマスク位置生成器を更に備える請求項に記載のビデオ符号化器。
  7. 複数の変換係数それぞれの信号パワーを推定するステップと、
    前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較するステップと、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップと、
    を含み、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、を含む方法。
  8. 複数の変換係数それぞれの信号パワーを推定するステップと、
    前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較するステップと、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップと、
    を含み、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残すステップと、を含む方法。
  9. 前記少なくとも一つの閾値は、一対の閾値を含む請求項7又は8に記載の方法。
  10. 復号されたフレームデータに応じて複数の変換係数を生成するステップと、
    変換係数に応じて、ノイズ低減が行われた変換係数を生成するステップと、
    推定器から出力されたノイズ低減が行われた変換係数からノイズ低減が行われたサンプルを生成するステップと、
    逆変換モジュールによって生成されたノイズ低減が行われたサンプルにフィルタをかけて、再構築されたフレームサンプルを生成するステップと、
    を更に含む請求項7又は8に記載の方法。
  11. 復号されたフレームデータに応じて複数の変換係数を生成するステップと、
    変換係数に応じて、ノイズ低減が行われた変換係数を生成するステップと、
    推定器から出力されたノイズ低減が行われた変換係数からノイズ低減が行われたサンプルを生成するステップと、
    逆変換モジュールによって生成されたノイズ低減が行われたサンプルにフィルタをかけて、フレーム内の処理されている位置を特定するマスクに基づいて、再構築されたフレームサンプルを生成するステップと、
    を含む請求項10に記載の方法。
  12. 命令を格納する一つ以上のコンピュータ可読記録媒体であって、該命令がシステムによる実行時に、該システムに、
    複数の変換係数それぞれの信号パワーを推定するステップと、
    前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較するステップと、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップと、
    を含み、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、を含む方法を実行させるコンピュータ可読記録媒体。
  13. 命令を格納する一つ以上のコンピュータ可読記録媒体であって、該命令がシステムによる実行時に、該システムに、
    複数の変換係数それぞれの信号パワーを推定するステップと、
    前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較するステップと、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップと、
    を含み、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定するステップは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残すステップと、を含む方法を実行させるコンピュータ可読記録媒体。
  14. ビデオフレームデータに対してノイズ低減を行うための方法であって、
    メモリからフレームデータを取得するステップと、
    前記フレーム内のマスク下のサンプルに変換を適用し、変換係数を生成するステップと、
    前記変換係数に対してノイズ低減を行うステップと、
    前記ノイズ低減が行われた変換係数に逆変換を適用するステップと、
    前記ノイズ低減が行われたフレームサンプルであってフレーム内の位置に対応する該フレームサンプルをフィルタリングして、該位置におけるフィルタリングされたデータサンプルを得るステップと、
    を含み、
    前記変換係数に対してノイズ低減を行うステップは、
    変換係数それぞれの信号パワーを推定するステップと、
    信号パワーを閾値と比較するステップと、
    信号パワーが閾値未満であれば、前記係数それぞれをゼロに設定するステップと、
    信号パワーが閾値未満でなければ、信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び閾値に基づいて前記係数それぞれの値を調節するステップと、
    を含む方法。
  15. ビデオフレームデータに対してノイズ低減を行うための方法であって、
    メモリからフレームデータを取得するステップと、
    前記フレーム内のマスク下のサンプルに変換を適用し、変換係数を生成するステップと、
    前記変換係数に対してノイズ低減を行うステップと、
    前記ノイズ低減が行われた変換係数に逆変換を適用するステップと、
    前記ノイズ低減が行われたフレームサンプルであってフレーム内の位置に対応する該フレームサンプルをフィルタリングして、該位置におけるフィルタリングされたデータサンプルを得るステップと、
    を含み、
    前記変換係数に対してノイズ低減を行うステップは、
    変換係数それぞれの信号パワーを推定するステップと、
    信号パワーを第1の閾値と比較するステップと、
    信号パワーが第1の閾値未満であれば、前記変換係数それぞれをゼロに設定するステップと、
    信号パワーを第2の閾値と比較するステップと、
    信号パワーが第2の閾値未満でありかつ第1の閾値未満でなければ、信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づいて前記変換係数それぞれの値を調節するステップと、
    信号パワーが第2の閾値未満でなくかつ第1の閾値未満でなければ、前記変換係数それぞれの値を変更せずに残すステップと、
    を含む方法。
  16. 命令を格納する一つ以上のコンピュータ可読記録媒体であって、該命令がシステムによる実行時に、該システムに、ビデオフレームデータに対するノイズ低減を行う方法であって、
    メモリからフレームデータを取得するステップと、
    前記フレーム内のサンプルに変換を適用して、変換係数を生成するステップと、
    前記変換係数に対してノイズ低減を行うステップと、
    前記ノイズ低減が行われた変換係数に逆変換を適用するステップと、
    前記ノイズ低減が行われたフレームサンプルであってフレーム内の位置に対応する該フレームサンプルをフィルタリングし、該位置におけるフィルタリングされたデータサンプルを得るステップと、
    を含み、
    前記変換係数に対してノイズ低減を行うステップは、
    変換係数それぞれの信号パワーを推定するステップと、
    信号パワーを閾値と比較するステップと、
    信号パワーが閾値未満であれば、前記係数それぞれをゼロに設定するステップと、
    信号パワーが閾値未満でなければ、信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び閾値に基づいて前記係数それぞれの値を調節するステップと、
    を含む該方法を実行させるコンピュータ可読記録媒体。
  17. 命令を格納する一つ以上のコンピュータ可読記録媒体であって、該命令がシステムによる実行時に、該システムに、ビデオフレームデータに対するノイズ低減を行う方法であって、
    メモリからフレームデータを取得するステップと、
    前記フレーム内のサンプルに変換を適用して、変換係数を生成するステップと、
    前記変換係数に対してノイズ低減を行うステップと、
    前記ノイズ低減が行われた変換係数に逆変換を適用するステップと、
    前記ノイズ低減が行われたフレームサンプルであってフレーム内の位置に対応する該フレームサンプルをフィルタリングし、該位置におけるフィルタリングされたデータサンプルを得るステップと、
    を含み、
    前記変換係数に対してノイズ低減を行うステップは、
    変換係数それぞれの信号パワーを推定するステップと、
    信号パワーを第1の閾値と比較するステップと、
    信号パワーが第1の閾値未満であれば、前記変換係数それぞれをゼロに設定するステップと、
    信号パワーを第2の閾値と比較するステップと、
    信号パワーが第2の閾値未満でありかつ第1の閾値未満でなければ、信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づいて前記変換係数それぞれの値を調節するステップと、
    信号パワーが第2の閾値未満でなくかつ第1の閾値未満でなければ、前記変換係数それぞれの値を変更せずに残すステップと、
    を含む該方法を実行させるコンピュータ可読記録媒体。
  18. フレームの空間データを、信号処理に適する別の領域に変換する変換モジュールと、
    フレームデータに対応する変換係数のノイズ低減された推定値を、信号パワーを推定し、前記推定された信号パワーを一つ以上の閾値と比較し、前記変換係数を、前記比較の結果、符号化プロセスによって生じるノイズのノイズパワー、及び閾値に従って調整することによって、生成する推定器モジュールと、
    前記ノイズ低減された変換係数に逆変換を適用し、前記マスク下の前記データをその元の領域に戻す逆変換モジュールと、
    各フレーム位置におけるフィルタリングされたサンプルを、前記推定器による処理によって得られるその推定値を組み合わせることによって取得する、フィルタモジュールと、
    を備え、
    前記変換係数を、前記比較の結果、ノイズパワー、及び閾値に従って調整することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、ノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定する、ことを含むノイズフィルタリングモジュール。
  19. フレームの空間データを、信号処理に適する別の領域に変換する変換モジュールと、
    フレームデータに対応する変換係数のノイズ低減された推定値を、信号パワーを推定し、前記推定された信号パワーを一つ以上の閾値と比較し、前記変換係数を、前記比較の結果、符号化プロセスによって生じるノイズのノイズパワー、及び閾値に従って調整することによって、生成する推定器モジュールと、
    前記ノイズ低減された変換係数に逆変換を適用し、前記マスク下の前記データをその元の領域に戻す逆変換モジュールと、
    各フレーム位置におけるフィルタリングされたサンプルを、前記推定器による処理によって得られるその推定値を組み合わせることによって取得する、フィルタモジュールと、
    を備え、
    前記変換係数を、前記比較の結果、ノイズパワー、及び閾値に従って調整することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、ノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残す、ことを含むノイズフィルタリングモジュール。
  20. 空間的なマスクが位置するフレーム内の位置を生成して、該位置におけるマスク下で更に処理されるデータサンプルを決定するマスク生成器モジュールを更に備える請求項18又は19に記載のノイズフィルタリングモジュール。
  21. フレームデータ推定値を格納するメモリモジュールを更に備える請求項18又は19に記載のノイズフィルタリングモジュール。
  22. 信号パワーを推定する手段と、
    前記推定された信号パワーを一つ以上の閾値と比較する手段と、
    信号の変換係数値を、前記信号の変換係数値と一つ以上の閾値との比較の結果に従って、且つ、前記推定された信号パワーの値と、ノイズのパワーと、前記一つ以上の閾値とに基づいて、調整する手段と、
    を備え
    信号の変換係数値を、前記信号の変換係数値と一つ以上の閾値との比較の結果に従って、且つ、前記推定された信号パワーの値と、ノイズのパワーと、前記一つ以上の閾値とに基づいて、調整する手段は、
    前記変換係数値それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定する、推定器モジュール。
  23. 信号パワーを推定する手段と、
    前記推定された信号パワーを一つ以上の閾値と比較する手段と、
    信号の変換係数値を、前記信号の変換係数値と一つ以上の閾値との比較の結果に従って、且つ、前記推定された信号パワーの値と、ノイズのパワーと、前記一つ以上の閾値とに基づいて、調整する手段と、
    を備え、
    信号の変換係数値を、前記信号の変換係数値と一つ以上の閾値との比較の結果に従って、且つ、前記推定された信号パワーの値と、ノイズのパワーと、前記一つ以上の閾値とに基づいて、調整する手段は、
    前記変換係数値それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残す、推定器モジュール。
  24. ビデオフレームにおけるデータを復号するビデオ復号器であって、
    変換されたフレームデータに対して動作するノイズフィルタリングモジュールであって、複数の変換係数それぞれの信号パワーを推定し、前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較し、前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することによって、複数の変換係数に対する信号推定を実行する、該ノイズフィルタリングモジュール、
    を備え
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定する、ことを含むビデオ復号器。
  25. ビデオフレームにおけるデータを復号するビデオ復号器であって、
    変換されたフレームデータに対して動作するノイズフィルタリングモジュールであって、複数の変換係数それぞれの信号パワーを推定し、前記変換係数それぞれの前記信号パワーを少なくとも一つの閾値と比較し、前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することによって、複数の変換係数に対する信号推定を実行する、該ノイズフィルタリングモジュール、
    を備え、
    前記変換係数それぞれの値を、前記信号パワーと前記少なくとも一つの閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定し、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残す、ことを含むビデオ復号器。
  26. 前記少なくとも一つの閾値は、一対の閾値を含む請求項24又は25に記載のビデオ復号器。
  27. ノイズフィルタは、
    復号されたフレームデータに応じて複数の変換係数を生成する変換モジュールと、
    変換モジュールによって生成された変換係数に応じて、ノイズ低減が行われた変換係数を生成する推定器と、
    推定器から出力されたノイズ低減が行われた変換係数からノイズ低減が行われたサンプルを生成する逆変換モジュールと、
    逆変換モジュールによって生成されたノイズ低減が行われたサンプルにフィルタをかけて、再構築されたフレームサンプルを生成するフィルタと、
    を備える請求項24又は25に記載のビデオ復号器。
  28. 変換モジュール、逆変換モジュール及びフィルタは、フレーム内の処理されている位置を特定するマスクに基づいて機能する請求項27に記載のビデオ復号器。
  29. マスクを生成するマスク位置生成器を更に備える請求項28に記載のビデオ復号器。
  30. フレームデータのブロックの予測誤差を復号するステップと、
    前記ブロックに関連付けられている動きベクトルを復号するステップと、
    前記ブロックに対する動き補償を、前記動きベクトルと基準フレームとを使用し実行し、予測ブロックを求めるステップと、
    前記予測ブロックと前記予測誤差とを使用して前記ブロックを再構築するステップと、
    前記フレームデータから複数の変換係数を生成し、前記変換係数に応じて前記変換係数の信号パワーの推定値を一つ以上の閾値と比較して、変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定して、ノイズ低減された変換係数を生成し、ノイズ低減されたサンプルをフィルタリングして再構築されたフレームサンプルを生成することによって、再構築されたブロックサンプルをフィルタリングするステップと、
    を含み、
    変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、を含む復号方法。
  31. フレームデータのブロックの予測誤差を復号するステップと、
    前記ブロックに関連付けられている動きベクトルを復号するステップと、
    前記ブロックに対する動き補償を、前記動きベクトルと基準フレームとを使用し実行し、予測ブロックを求めるステップと、
    前記予測ブロックと前記予測誤差とを使用して前記ブロックを再構築するステップと、
    前記フレームデータから複数の変換係数を生成し、前記変換係数に応じて前記変換係数の信号パワーの推定値を一つ以上の閾値と比較して、変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定して、ノイズ低減された変換係数を生成し、ノイズ低減されたサンプルをフィルタリングして再構築されたフレームサンプルを生成することによって、再構築されたブロックサンプルをフィルタリングするステップと、
    を含み、
    変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残すステップと、を含む復号方法。
  32. 少なくとも一つの閾値は、一対の閾値を含む請求項30又は31に記載の復号方法。
  33. 命令を格納する一つ以上のコンピュータ可読記録媒体であって、該命令がシステムによる実行時に、該システムに、
    フレームデータのブロックの予測誤差を復号するステップと、
    前記ブロックに関連付けられている動きベクトルを復号するステップと、
    前記ブロックに対する動き補償を、前記動きベクトルと基準フレームとを使用して実行し、予測ブロックを求めるステップと、
    前記予測ブロックと前記予測誤差とを使用して前記ブロックを再構築するステップと、
    前記フレームデータから複数の変換係数を生成し、前記変換係数に応じて前記変換係数の信号パワーの推定値を一つ以上の閾値と比較して、変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定して、ノイズ低減された変換係数を生成し、ノイズ低減されたサンプルをフィルタリングして再構築されたフレームサンプルを生成することによって、再構築されたブロックサンプルをフィルタリングするステップと、
    を含み、
    変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなければ、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、を含む復号方法を実行させるコンピュータ可読記録媒体。
  34. 命令を格納する一つ以上のコンピュータ可読記録媒体であって、該命令がシステムによる実行時に、該システムに、
    フレームデータのブロックの予測誤差を復号するステップと、
    前記ブロックに関連付けられている動きベクトルを復号するステップと、
    前記ブロックに対する動き補償を、前記動きベクトルと基準フレームとを使用して実行し、予測ブロックを求めるステップと、
    前記予測ブロックと前記予測誤差とを使用して前記ブロックを再構築するステップと、
    前記フレームデータから複数の変換係数を生成し、前記変換係数に応じて前記変換係数の信号パワーの推定値を一つ以上の閾値と比較して、変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定して、ノイズ低減された変換係数を生成し、ノイズ低減されたサンプルをフィルタリングして再構築されたフレームサンプルを生成することによって、再構築されたブロックサンプルをフィルタリングするステップと、
    を含み、
    変換係数それぞれの値を、信号パワーと一つ以上の閾値との比較の結果に少なくとも部分的に基づいて設定することは、前記変換係数それぞれに対して、
    係数の信号パワーが第1の閾値未満であれば、係数をゼロに設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満であれば、係数を信号パワー、符号化プロセスによって生じるノイズのノイズパワー及び第1の閾値に基づき、当該係数、当該信号パワー、当該ノイズパワー、当該第1の閾値の間の関係を定めた式によって求められる値に設定するステップと、
    係数の信号パワーが第1の閾値未満でなくかつ第2の閾値未満でなければ、係数を変更せずに残すステップと、を含む復号方法を実行させるコンピュータ可読記録媒体。
JP2008512582A 2005-05-20 2006-05-19 ビデオ符号化におけるノイズフィルタリング方法及び装置 Active JP4988715B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US68324005P 2005-05-20 2005-05-20
US60/683,240 2005-05-20
US11/437,515 2006-05-18
US11/437,515 US8050331B2 (en) 2005-05-20 2006-05-18 Method and apparatus for noise filtering in video coding
PCT/US2006/019641 WO2006127546A2 (en) 2005-05-20 2006-05-19 Method and apparatus for noise filtering in video coding

Publications (3)

Publication Number Publication Date
JP2008541672A JP2008541672A (ja) 2008-11-20
JP2008541672A5 JP2008541672A5 (ja) 2009-08-13
JP4988715B2 true JP4988715B2 (ja) 2012-08-01

Family

ID=37448288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008512582A Active JP4988715B2 (ja) 2005-05-20 2006-05-19 ビデオ符号化におけるノイズフィルタリング方法及び装置

Country Status (5)

Country Link
US (1) US8050331B2 (ja)
EP (1) EP1882236B1 (ja)
JP (1) JP4988715B2 (ja)
CN (1) CN101203882B (ja)
WO (1) WO2006127546A2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8208548B2 (en) * 2006-02-09 2012-06-26 Qualcomm Incorporated Video encoding
US8077769B2 (en) * 2006-03-28 2011-12-13 Sony Corporation Method of reducing computations in transform and scaling processes in a digital video encoder using a threshold-based approach
US8831111B2 (en) * 2006-05-19 2014-09-09 The Hong Kong University Of Science And Technology Decoding with embedded denoising
US20080159637A1 (en) * 2006-12-27 2008-07-03 Ricardo Citro Deblocking filter hardware accelerator with interlace frame support
JP5345139B2 (ja) * 2007-06-08 2013-11-20 トムソン ライセンシング 多格子スパース性ベースのフィルタリングに基づくインループ・アーチファクト解除フィルタリングのための方法及び装置
JP5345138B2 (ja) * 2007-06-08 2013-11-20 トムソン ライセンシング 多格子スパース性ベースのフィルタリングのための方法及び装置
KR101228020B1 (ko) * 2007-12-05 2013-01-30 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
US8731062B2 (en) 2008-02-05 2014-05-20 Ntt Docomo, Inc. Noise and/or flicker reduction in video sequences using spatial and temporal processing
US20090268818A1 (en) * 2008-04-29 2009-10-29 International Business Machines Corporation Method and system for integrating noise filtering in predictive video coding
US10123050B2 (en) 2008-07-11 2018-11-06 Qualcomm Incorporated Filtering video data using a plurality of filters
JP2012510202A (ja) * 2008-11-25 2012-04-26 トムソン ライセンシング ビデオ符号化および復号のためのスパース性に基づくアーティファクト除去フィルタリングを行う方法および装置
EP2192786A1 (en) * 2008-11-27 2010-06-02 Panasonic Corporation Frequency domain filters for video coding
KR101483179B1 (ko) * 2010-10-06 2015-01-19 에스케이 텔레콤주식회사 주파수 마스크 테이블을 이용한 주파수변환 블록 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
GB2486692B (en) * 2010-12-22 2014-04-16 Canon Kk Method for encoding a video sequence and associated encoding device
US9681125B2 (en) * 2011-12-29 2017-06-13 Pelco, Inc Method and system for video coding with noise filtering
US9154782B2 (en) * 2013-09-16 2015-10-06 Magnum Semiconductor, Inc. Apparatuses and methods for adjusting coefficients using dead zones
US10368107B2 (en) * 2016-08-15 2019-07-30 Qualcomm Incorporated Intra video coding using a decoupled tree structure

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9019538D0 (en) * 1990-09-07 1990-10-24 Philips Electronic Associated Tracking a moving object
JPH0678296A (ja) * 1992-07-09 1994-03-18 Mitsubishi Electric Corp 画像符号化装置及び画像雑音除去装置
JPH0715631A (ja) * 1993-06-29 1995-01-17 Nippon Telegr & Teleph Corp <Ntt> 画像信号雑音除去方法および装置
JPH07212627A (ja) * 1994-01-18 1995-08-11 Sony Corp ノイズ低減装置
US5706054A (en) * 1995-12-01 1998-01-06 Intel Corporation Method and apparatus for adjusting video data to limit the effects of automatic focusing control on motion estimation video coders
JPH09212623A (ja) * 1996-01-30 1997-08-15 Fuji Photo Film Co Ltd 画像処理方法
IT1289206B1 (it) * 1996-09-12 1998-09-29 Sgs Thomson Microelectronics Metodo di ricompressione e decompressione adpcm di un flusso di dati digitali costituente un segnale video digitale e stimatore
FR2755527B1 (fr) * 1996-11-07 1999-01-08 Thomson Multimedia Sa Procede de prediction compensee en mouvement et codeur utilisant un tel procede
JP4046969B2 (ja) * 2000-11-09 2008-02-13 キヤノン株式会社 画像処理装置、及びその方法、並びにプログラム、記憶媒体
JP2002218466A (ja) * 2001-01-24 2002-08-02 Nec Corp ノイズ除去装置、帯域分割型逆dct回路、及びこれらの方法、プログラム
US7643688B2 (en) * 2003-10-10 2010-01-05 Hewlett-Packard Development Company, L.P. Reducing artifacts in compressed images

Also Published As

Publication number Publication date
CN101203882A (zh) 2008-06-18
EP1882236A2 (en) 2008-01-30
CN101203882B (zh) 2011-07-13
US8050331B2 (en) 2011-11-01
WO2006127546A2 (en) 2006-11-30
EP1882236B1 (en) 2015-01-21
WO2006127546A3 (en) 2007-01-11
JP2008541672A (ja) 2008-11-20
US20060262854A1 (en) 2006-11-23

Similar Documents

Publication Publication Date Title
JP4988715B2 (ja) ビデオ符号化におけるノイズフィルタリング方法及び装置
JP5259396B2 (ja) ハイブリッド映像圧縮のための非線形予測フィルタ
JP5203379B2 (ja) ビデオ圧縮用の空間規約誘導時間予測
US9596485B2 (en) Motion picture encoding/decoding apparatus, adaptive deblocking filtering apparatus and filtering method for same, and recording medium
JP4920599B2 (ja) ハイブリッドビデオ圧縮の量子化雑音除去用の非線形ループ内デノイズフィルタ
JP5174970B2 (ja) 適応フィルタ
KR100809354B1 (ko) 복원된 프레임의 프레임율을 업컨버팅하는 장치 및 방법
JP3385077B2 (ja) 動きベクトル検出装置
JP5529537B2 (ja) 複数経路ビデオ符号化及び復号化のための方法及び装置
US20110200098A1 (en) Video encoding/decoding apparatus and adaptive overlapped block motion compensation method and apparatus employing adaptive weights therefor
JP2009509413A (ja) 不規則な動きベクトルのサンプルに対する時間予測フィルタのための適応動き推定
CN102271257A (zh) 图像处理设备和方法及程序和计算机可读介质
JP5237814B2 (ja) ビデオ圧縮における適応的動きベクトルサンプリングのための多段リンク方法
US8848783B2 (en) Motion picture encoding/decoding apparatus, and apparatus and method for adaptive overlapped block motion compensation by variable unit for same
WO2008080816A1 (en) Method and system for signal prediction in predictive coding
US9420303B2 (en) Method and apparatus for displacement vector component transformation in video coding and decoding
JP4824705B2 (ja) 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラムおよびそれらのプログラムを記録したコンピュータ読み取り可能な記録媒体
US9319710B2 (en) Video encoding and decoding apparatus and method
US9240802B2 (en) Inverse quantization method, inverse quantization device, and program
JP5809574B2 (ja) 符号化方法、復号方法、符号化装置、復号装置、符号化プログラム及び復号プログラム
US9615091B2 (en) Motion picture encoding/decoding apparatus, and method and apparatus for hybrid block motion compensation/overlapped block motion compensation for same
Deng Transform domain LMS-based adaptive prediction for lossless image coding
WO2011105230A1 (ja) フィルタ係数符号化装置、フィルタ係数復号装置、動画像符号化装置、動画像復号装置、および、データ構造
KR20040014047A (ko) 이산여현변환 방법과 이를 이용한 영상압축방법
JPH11196417A (ja) 画像符号化装置及び画像処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120321

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120426

R150 Certificate of patent or registration of utility model

Ref document number: 4988715

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250