(57)【要約】  非線形予測フィルタリングの方法及び装置が開示されている。一実施形態では、方法は、前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行するステップと、動き補償された非線形予測を生成するために端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で動き補償された予測に非線形フィルタリングを実行するステップと、残差フレームを作成するために現在フレーム内のブロックから動き補償された非線形予測を減算するステップと、残差フレームを符号化するステップとを備える。【選択図】  図４
2008547324.tif 000002
【特許請求の範囲】
【請求項１】
前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行するステップと、
動き補償された非線形予測を生成するために端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で前記動き補償された予測に非線形フィルタリングを実行するステップと、
残差フレームを生成するために現在フレーム内のブロックから前記動き補償された非線形予測を減算するステップと、
前記残差フレームを符号化するステップと、
を備える方法。
【請求項２】
前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行する動き補償予測モジュールと、
端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で前記ブロックに非線形フィルタリングを実行する非線形予測フィルタと、
残差フレームを生成するために現在フレーム内のブロックから前記動き補償された非線形予測を減算する減算器と、
前記残差フレームを符号化するコーダと、
を備えるエンコーダ。
【請求項３】
システムによって実行されたときに、
前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行するステップと、
動き補償された非線形予測を生成するために端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で前記動き補償された予測に非線形フィルタリングを実行するステップと、
残差フレームを生成するために現在フレーム内のブロックから前記動き補償された非線形予測を減算するステップと、
前記残差フレームを符号化するステップと、
を備える方法を前記システムに実行させる命令を記憶する１つ以上のコンピュータ読み取り可能な媒体を有する製品。
【請求項４】
前に復号化されたフレームからのブロックを使用して予測されたブロックを生成するステップと、
非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で前記予測されたブロックに非線形フィルタリングを実行するステップと、
残差フレームを復号化するステップと、
前記残差フレームを前記非線形予測に加算するステップと、
を備える方法。
【請求項５】
前に復号化されたフレームからのブロックを使用して予測されたブロックを生成する動き補償ユニットと、
非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で前記予測されたブロックに非線形フィルタリングを実行する非線形予測フィルタと、
残差フレームを復号化するデコーダと、
前記残差フレームを前記非線形予測に加算する加算器と、
を備える装置。
【請求項６】
システムによって実行されたときに、
前に復号化されたフレームからのブロックを使用して予測されたブロックを生成するステップと、
非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で前記予測されたブロックに非線形フィルタリングを実行するステップと、
残差フレームを復号化するステップと、
前記残差フレームを前記非線形予測に加算するステップと、
を備える方法を前記システムに実行させる命令を記憶する１つ以上のコンピュータ読み取り可能な媒体を有する製品。
【発明の詳細な説明】
【優先権】
【０００１】
[0001]本特許出願は、２００５年６月２１日に出願され、名称が“Ａ  Ｎｏｎｌｉｎｅａｒ，  Ｐｒｅｄｉｃｔｉｏｎ  Ｆｉｌｔｅｒ  ｆｏｒ  Ｈｙｂｒｉｄ  Ｖｉｄｅｏ  Ｃｏｍｐｒｅｓｓｉｏｎ”である対応する仮特許出願第６０／６９２，７６７号の優先権を主張し、参照として組み入れる。
【発明の分野】
【０００２】
[0002]本発明は圧縮及び伸張の分野に関し、特に、本発明は映像圧縮及び伸張処理における非線形予測フィルタリングに関する。
【発明の背景】
【０００３】
[0003]ハイブリッド映像圧縮は、アンカー映像フレームを符号化するステップと、その後に、予測されたフレームの組を断定的に符号化するステップとにより構成されている。予測符号化は、予測誤差フレームを獲得するために、前に符号化されたフレームに関して動き補償された予測を使用し、その後にこの予測誤差フレーム（すなわち、残差フレーム）の符号化が続けられる。アンカーフレーム及び予測誤差は変換コーダを使用して符号化される。
【０００４】
[0004]図１はビデオエンコーダのブロック図である。図１を参照すると、動き補償（ＭＣ）予測モジュールは、前に復号化されたフレームから動き補償された予測を生成する。第１の加算器は、残差フレームを獲得するために、動き補償された予測を現在フレームから減算する。変換コーダは、たとえば、変換、量子化器、及び、エントロピーエンコーダの組み合わせを使用して、残差フレームを符号化された差分に変換する。復号化中に、変換デコーダは、たとえば、エントロピーデコーダ、逆量子化器、及び、逆変換の組み合わせを使用して、符号化された差分を再構成済みの残差フレームに変換する。第２の加算器は、再構成済みのフレームを獲得するために、再構成済みの残差フレームを動き補償された予測に加算する。遅延要素Ｚ―１は、ＭＣ予測モジュールによる将来の参照のため再構成済みのフレームを保存する。
【０００５】
[0005]一般的な動き補償された予測演算は、前に符号化されたフレームから直接的にブロックを使用することにより、又は、ローパスフィルタに基づくこれらのブロックの補間を使用することにより、現在フレームのための予測器を形成することに制限されている。このプロセスは時間的相関を利用する優れたメカニズムを形成する。
【０００６】
[0006]パラメトリック動きモデルを利用するブロックに基づく動き補償、オーバーラップ動き補償、様々なローパスフィルタに基づく補間、輝度補償アルゴリズムなどを改良する周知の技術が存在する。しかし、これらの解決策は、映像フレーム内の非常に特殊なタイプの時間変化に限定され、一般的な解決策を提供しない。たとえば、
１）Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ  ｏｆ  ＩＴＵ−Ｔ  ａｎｄ  ＩＳＯ／ＩＥＣ  ＪＴＣ  １，  “Ｄｒａｆｔ  ＩＴＵ−Ｔ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  ａｎｄ  Ｆｉｎａｌ  Ｄｒａｆｔ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｔａｎｄａｒｄ  ｏｆ  Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  （ＩＴＵ−Ｔ  Ｒｅｃ．  Ｈ．２６４｜  ＩＳＯ／ＩＥＣ  １４４９６−１０  ＡＶＣ），”  Ｊｏｉｎｔ  Ｖｉｄｅｏ  Ｔｅａｍ  （ＪＶＴ）  ｏｆ  ＩＳＯ／ＩＥＣ  ＭＰＥＧ  ａｎｄ  ＩＴＵ−Ｔ  ＶＣＥＧ，  ＪＶＴ−Ｇ０５０，  Ｍａｒｃｈ  ２００３と、
２）ＭＰＥＧ４  Ｖｅｒｉｆｉｃａｔｉｏｎ  Ｍｏｄｅｌ，  ＶＭ  １４．２，  ｐｐ．２６０−２６４，  １９９９とを参照のこと。
【０００７】
[0007]関連技術の解決策には多数の問題がある。たとえば、従来の解決策は、映像フレーム間の非常に特殊なタイプの時間的依存性を利用することに限定されている。動き推定が行われ、（複数の）アンカーフレーム内の候補ブロックが見つけられるならば、これらのブロック又はこれらのブロックの様々なローパスフィルタ処理後の形は、予測されたフレーム内のブロックに対する最良予測器であると仮定されている。エッジを含むブロックの小さなラップ、時間的に独立している変動、又は、時間的に相関している高周波の豊富なブロックなどのような大部分の時間的変動は、関連技術の解決策によって明らかにされていない。これらの明らかにされていない変動は、ハイブリッドビデオコーダで利用されている変換コーダで符号化することが非常に難しい動き補償された差分を作成するので、重大な性能ペナルティーの原因になる。
【０００８】
[0008]その上、特定のタイプの輝度変動のようなある特定の問題がある時間的変動が最近の映像圧縮規格に組み込まれている。しかし、これらの解決策は、その解決策が設計された対象の特定の問題を越えると有効ではない。したがって、これらの解決策は一般的かつ頑強な解決策を提供しない。
【０００９】
[0009]さらに、一部の関連技術は、典型的に、一様な並進運動の仮定の下で区分的に滑らかなフレームモデルを進め、実際の符号化されたフレームがこれらの仮定から逸脱するときには常に問題を引き起こす。
【発明の概要】
【００１０】
[0010]非線形予測フィルタリングの方法及び装置が開示されている。一実施形態では、方法は、前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行するステップと、動き補償された非線形予測を生成するために端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で動き補償された予測に非線形フィルタリングを実行するステップと、残差フレームを作成するために現在フレーム内のブロックから動き補償された非線形予測を減算するステップと、残差フレームを符号化するステップとを備える。
【００１１】
[0011]本発明は以下に記載されている詳細な説明と発明の種々の実施形態についての添付図面からより完全に理解されるが、添付図面は発明を特定の実施形態に限定するために利用されるべきではなく、説明と理解だけを目的としている。
【本発明の詳細な説明】
【００１２】
[0020]より良好なハイブリッド映像圧縮性能を可能にする映像フレームの非線形フィルタリングの方法、装置及び製品が記載されている。本明細書に記載されている技術は、周知のローパスフィルタに基づく補間より優れた非線形フィルタリング演算を提供することにより動き補償された予測プロセスを補強する。可能な動きベクトルの場所毎に、従来型のハイブリッドエンコーダは、ローパスフィルタを使用して実施される端数補間器の組のうちの１つを選択する。付加的な予測修正器は、前に符号化されたフレームから同じブロックを取り出し、現在フレームのより優れた予測器を形成するために様々な非線形フィルタを適用する。
【００１３】
[0021]開示された技術は、変換ドメインで実施される非線形フィルタリングの選択肢をこの組に追加する。１つ以上の実施形態では、これらの非線形予測の選択肢は、空間ドメイン内で非線形フィルタ処理された予測を導出するために、変換係数スレッショルディング、係数の大きさに基づく順位付け、及び、これらの組み合わせを利用することによって生成される。非線形フィルタリングの選択肢は、符号化されたビットストリームの一部としてデコーダへ送られるパラメータで効率的に獲得される。
【００１４】
[0022]本明細書に記載されている技術を使用することには多数の利益及び利点が存在する。記載されている技術は、頑強性があり、かつ、一般的であり、多数の画像領域タイプ及び多数の圧縮技術を効率的に取り扱うことが可能である。導出された非線形予測フィルタは、滑らかな画像領域にローパス選択性を作成し、高周波数領域にハイパス選択性を作成することなどによって、適応的かつ自律的に多数の画像領域タイプのための適切な周波数選択性を作り出す。
【００１５】
[0023]以下の説明中、多数の細部が本発明のより完全な説明を行うために記載されている。しかし、当業者に明白であるように、本発明はこれらの特定の細部を用いることなく実施される。別の事例では、周知の構成及び装置は、本発明を分かりにくくすることを避けるために、細部にわたることなくブロック図形式で示されている。
【００１６】
[0024]以下の詳細な説明の一部は、アルゴリズム及びコンピュータメモリ内のデータビットへの演算の記号表現という形で提示されている。これらのアルゴリズム的な記述及び表現は、データ処理技術の専門家が自分の業績の内容を他の当業者へ最も効率的に伝えるためにデータ処理技術の専門家によって使用される手段である。アルゴリズムは、本明細書中で、及び、一般的に、所望の結果につながるステップの首尾一貫したシーケンスであると考えられている。ステップは、物理量の物理的操作を必要とするステップである。通常は、不可欠ではないが、物理量は、記憶、転送、合成、比較、及び、その他の操作の対象となり得る電気的又は磁気的信号の形をとる。主として慣用法の理由で、電気的又は磁気的信号をビット、値、要素、シンボル、文字、項、番号などのように呼ぶことが時には便利であることがわかった。
【００１７】
[0025]しかし、上記の用語及び類似した用語は、適切な物理量と関連付けられるべきであり、電気的又は磁気的信号に適用される便宜的なラベルに過ぎないことに注意すべきである。特に断らない限り、以下の説明から明白であるように、説明の全体を通じて、「処理」又は「コンピューティング」又は「計算」又は「決定」又は「表示」のような用語を利用する説明は、コンピュータシステムのレジスタ及びメモリ内で物理（電子）量として表現されているデータを操作し、コンピュータシステムメモリ若しくはレジスタ内、又は、その他の情報記憶装置、伝送機器、又は、表示機器内で物理量として同様に表現される他のデータへ変換する、コンピュータシステム、又は、類似した電子コンピュータ装置の作用及びプロセスを指している。
【００１８】
[0026]本発明は中で演算を実行する装置にも関する。この装置は、必要な目的のため特別に構成されることがあり、或いは、この装置は、コンピュータに記憶されているコンピュータプログラムによって選択的に作動されるか、又は、再構成される汎用コンピュータを備える。このようなコンピュータプログラムは、限定されることはないが、たとえば、各々がコンピュータシステムバスに接続されているフロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、及び、光磁気ディスクを含むあらゆるタイプのディスクと、リードオンリーメモリ（ＲＯＭ）と、ランダムアクセスメモリ（ＲＡＭ）と、ＥＰＲＯＭと、ＥＥＰＲＯＭと、磁気又は光カードと、電子命令を記憶するため適した任意のタイプの媒体などのようなコンピュータ読み取り可能な記憶媒体に記憶されてもよい。
【００１９】
[0027]本明細書に提示されているアルゴリズム及び表示は、何らかの特有のコンピュータ又はその他の装置に本質的に関係していない。様々な汎用システムが本明細書における教示によるプログラムと共に使用され、又は、要求されている方法ステップを実行するためにより特殊化された装置を構築する方が好都合であるとわかることもある。多種多様なこれらのシステムの必要とされる構成は以下の説明からわかるであろう。さらに、本発明は何らかの特有のプログラミング言語に関して記載されていない。多種多様なプログラミング言語が本明細書に記載されている発明の教示を実施するために使用されることが認められるであろう。
【００２０】
[0028]機械読み取り可能な媒体は、機械（たとえば、コンピュータ）によって読み取り可能な形式で情報を記憶又は伝送するメカニズムを含む。たとえば、機械読み取り可能な媒体は、リードオンリーメモリ（「ＲＯＭ」）と、ランダムアクセスメモリ（「ＲＡＭ」）と、磁気ディスク記憶媒体と、光記憶媒体と、フラッシュメモリ機器と、電気的、光学的、音響的又はその他の形式の伝搬信号（たとえば、搬送波、赤外線信号、デジタル信号など）等々を含む。
【００２１】
概論
[0029]予測されたフレーム内で予測されるべきブロックに対し、前に符号化されたフレームからの候補ブロックが獲得される。様々なフィルタリング演算を可能にするため、この候補ブロックは予測されるべきブロックよりサイズが大きくても構わない。予測されたブロックよりサイズが大きい候補ブロックはフィルタリング演算の最後に予測されたブロックと同じサイズに縮小される。候補ブロックは、最初に変換係数を獲得するために線形変換を使用して変換される。線形変換の過完備集合もまた変換係数を生成するために使用される。候補ブロック変換係数は、Ｐ種類のブロックに対応するＰ組の係数の組を作成するために、Ｐ通りの方法で非線形的に修正される。このような係数の組の１つずつは逆変換され、その後に、おそらくは、予測されるべきブロックに対しＰ個の予測ブロックを獲得するためにサイズが縮小される。エンコーダでは、これらのＰ個の予測ブロックのうちの１つずつが予測されるべきブロックと比較される。最良予測が選択され、対応する予測パラメータが決定される。エンコーダは、その後に、この非線形予測に加えて標準的な予測の選択肢を考慮し、どれを使用すべきかをデコーダへ知らせる。この信号に基づいて、デコーダは予測プロセスを反復し、エンコーダと同じ予測ブロックを獲得する。
【００２２】
[0030]一実施形態では、候補ブロック係数の非線形修正は、係数のスレッショルディングと、大きさに基づく係数のソーティング及び最も大きなＲパーセントだけの保持と、係数のインデックス付け及び所定のインデックスを有する係数（又は、所与のインデックス集合に属する係数）だけの保持と、係数のスケーリングの形式をとる。少なくとも１つの非線形演算を含むこれらの演算の様々な組み合わせが適用され得る。エンコーダが非線形予測を使用することに決めた場合に、どの演算が実行されたかに関してデコーダへ送られるパラメータが決定される。このパラメータは、Ｐ通りの値を取り、すなわち、Ｐ種類の組み合わせ演算が候補ブロックに実行され得る。
【００２３】
[0031]一実施形態では、本明細書に記載されている技術は、予測スキャニングの形をしたパラメータオーバーヘッド制御演算を含み、除去演算は候補ブロックの重大な差を作るＰ個の演算を決定するために組み込まれている。一実施形態では、候補ブロックの重大な差を作成する演算だけがエンコーダによって考慮されている。この演算は、可能な演算の個数をＰからＱ＜＝Ｐまで削減し、デコーダによっても同じように実行され得る。したがって、エンコーダが非線形予測を利用することに決定するならば、エンコーダはＰ通りの値ではなくＱ通りの値を取るパラメータを指定するだけでよい。これは、レート歪みの意味で非線形予測を効率的に組み込むために必要なオーバーヘッドビットの量を制御する。
【００２４】
[0032]一実施形態では、非線形予測を使用する決定はブロックレベルで行われ、ブロックのサイズはハイブリッド映像コーダの変換符号化演算で使用される変換によって決定される。
【００２５】
[0033]一実施形態では、上述されているように候補ブロックに適用される線形変換は、たとえば、ブロックｎ×ｎ型ＤＣＴのような直交変換である。たとえば、非直交変換及び非ブロック変換のようなその他の変換もまた適用される。この変換は、計算が効率的に実行され得るように、高速に実施できることが望ましいが、不可欠ではない。
【００２６】
[0034]（Ｍ×１ベクトルに配置されている）ｘが予測されるべきブロックを表すことにする。（Ｎ×１ベクトルに配置されている）ｙがｘを予測する際に使用されるフレームからの候補ブロックを表すことにする。候補ブロックｙは、様々なフィルタリング演算及び補間演算が明確に定義されるように、ｘよりサイズが大きくてもよい。Ｈは上記段落で指定されているように線形変換（Ｎ×Ｎ行列）を表すことにする。ｙの変換係数は、ｄ＝Ｈｙによって与えられる。
【００２７】
[0035]従来型の動き補償された予測によって使用される端数動きに対応する補間演算はこの表記法を使用して定義される。これらの演算は、
【数１】
2008547324.tif 000003
によって与えられるｘについてのＦ個の予測を生成し、ここで、ｉ番目の予測は、
【数２】
2008547324.tif 000004
によって、所定の補間行列Ａｉ（Ｍ×Ｎ）で乗算することにより生成される。
【００２８】
[0036]一実施形態では、この組は、以下の非線形フィルタリングに基づいて、さらなる予測の組
【数３】
2008547324.tif 000005
を定義することによって補強される。Ｔ１，Ｔ２，．．．，ＴＫがスレッショルドの組を表し、Ｒ１，Ｒ２，．．．，ＲＬがパーセンテージの組を表すことにする。非線形予測
【数４】
2008547324.tif 000006
は、スレッショルドＴｊを用いてｄ内で係数をスレッショルディングし、逆変換を行い、必要に応じて、ｘのサイズと一致するように結果のサイズを縮小することにより生成される。非線形予測
【数５】
2008547324.tif 000007
は、大きさに関してｄ内で係数をソートし、最も小さい１００−Ｒｊパーセントを零化し、逆変換を行い、必要に応じて、ｘのサイズと一致するように結果のサイズを縮小することにより生成される。サイズの縮小は、クロッピング／サンプリングによって、又は、クロッピング／サンプリングが後に続けられるフィルタリングによって実現される。ｄを生成する際にブロック変換が使用されているならば、ソーティング及び零化が変換の各ブロックで行われ得る。さらなる予測は、スケーリング定数の組を用いてこれらの予測をスケーリングすることによって獲得される。さらに、より多くの予測を生成するために、少なくとも１つの非線形演算を使用して、様々な組み合わせで演算を適用可能である。さらなる予測は、ｙに加えて、これらの演算及び組み合わせを
【数６】
2008547324.tif 000008
に適用することにより獲得され、又は、逆に、これらの演算の結果にＡｉ，ｉ＝１，．．．，Ｆを適用することにより獲得される。一実施形態では、Ｐ個の予測が作成される。
【００２９】
[0037]一実施形態では、予測は、特定の反復回数が実行されるまで、生成された予測に修正項を加算し、上記演算を修正された予測に再適用することを続けることによって反復的に生成される。パラメータ（スレッショルド、パーセンテージ、インデックス集合など）は所定の方法で反復毎に変更されてもよい。
【００３０】
[0038]一実施形態では、重要でない予測が生成されないように、走査及び除去演算が使用される。１つのこのような演算は以下の通りである。生成された各予測は、同一予測器、すなわち、可能なサイズ縮小を除いて決してｙを修正することなく獲得された予測器のｙへの適用、予測
【数７】
2008547324.tif 000009
及び、それまで有効であることが分かっていた予測と比較される。生成された予測がこれらの予測と十分に相違するならば、生成された予測は有効予測になり、さもなければ、生成された予測は予測器の集合から削除される。残りのＱ個の予測は、集合
【数８】
2008547324.tif 000010
として形成される。
【００３１】
[0039]動き補償された予測プロセスの残りの部分は、デコーダが、従来の事例におけるちょうどＦ個の予測ではなく、Ｆ＋Ｑ個の予測のうちのどれを構築すべきであるかを通知されるべきである点を除いて変更されない。（走査及び除去演算は、エンコーダとデコーダの両方で利用可能であるデータだけを使用するので、デコーダは走査及び除去演算を並列に実施し、Ｑ個の付加的な予測器を決定することが可能である。）たとえば、スレッショルドの値、パーセンテージの値、及び、スケーリング係数の値のような一部のパラメータもまたデコーダへ知らせることが可能である。このようなシグナリングは当分野において周知の方法で行われる。
【００３２】
単一の線形変換Ｈを使用する上記のフィルタリング手順は、許容可能な性能を提供するが、より良好な性能は複数の異なる線形変換Ｈ１、Ｈ２、．．．、ＨＵを使用することによって獲得される。一実施形態では、これらの変換のそれぞれは、予測推定量
【数９】
2008547324.tif 000011
を作成するために、固有のフィルタリング手順で使用される。これらの個々の予測推定量は、その後に、各予測推定量より優れている全体的な予測
【数１０】
2008547324.tif 000012
を形成するために合成される。
【００３３】
エンコーダ及びデコーダの実施例
[0040]一実施形態では、ビデオエンコーダは、前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行する動き補償予測モジュールと、端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内でブロックに非線形フィルタリングを実行する非線形予測フィルタと、残差フレームを作成するために現在フレーム内のブロックから動き補償された非線形予測を減算する加算器（減算器）と、残差フレームを符号化するコーダとを備える。
【００３４】
[0041]図２Ａは機能強化されたビデオエンコーダのブロック図である。図２Ａを参照すると、動き補償された（ＭＣ）予測モジュール２１６は、前に復号化されたフレーム２０３から動き補償された予測を生成する。本明細書に記載されているように動き補償された予測を補強する非線形予測フィルタ２１７は、符号化されるべきフレームのより良好な予測を作成する。
【００３５】
[0042]加算器２１１は、残差フレームを獲得するために現在フレーム２０１から補強済みの動き補償された予測を減算する。変換コーダ２１２は、たとえば、変換、量子化器、及び、エントロピーエンコーダの組み合わせを使用して、残差フレームを符号化された差分２０２に変換する。復号化中に、変換デコーダ２１３は、たとえば、エントロピーデコーダ、逆量子化器、及び、逆変換の組み合わせを使用して、符号化された差分を再構成済みの残差フレームに変換する。加算器２１４は、再構成済みのフレームを獲得するために再構成済みの残差フレームを補強済みの動き補償された予測に加算する。遅延素子Ｚ−１２１５は、ＭＣ予測モジュール２１６による将来の参照のため再構築済みのフレームを記憶する。
【００３６】
[0043]一実施形態では、ビデオデコーダは、前に復号化されたフレームからのブロックを使用して予測されたブロックを生成するために動き補償ユニットと、非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で予測されたブロックに非線形フィルタリングを実行する非線形予測フィルタと、残差フレームを復号化するデコーダと、残差フレームを非線形予測に加算する加算器とを備える。
【００３７】
[0044]図２Ｂは機能強化されたビデオデコーダのブロック図である。図２Ｂを参照すると、ＭＣ予測モジュール２２４は前に復号化されたフレーム２３３から動き補償された予測を生成する。非線形予測フィルタ２２３は、復号化されるべきフレームのより良好な予測を作成するために動き補償された予測を補強する。この補強は符号化されたビットストリームから受信された予測パラメータ２３２に応答して行われる。変換デコーダ２２１は、たとえば、エントロピーデコーダ、逆量子化器、及び、逆変換の組み合わせを使用して、符号化された差分２３１を再構成済みの残差フレームに変換する。加算器２２２は、ビデオデコーダから出力される再構成済みのフレームを獲得するために再構成済みの残差フレームを補強済みの動き補償された予測に加算する。出力はディスプレイに送られることがある。遅延素子Ｚ−１  ２２５もまた同様にＭＣ予測モジュール２２４による将来の参照のためフィルタ処理されたフレームを記憶する。
【００３８】
非線形予測フィルタ演算
[0045]一実施形態では、非線形予測フィルタは、第１の変換係数の組を獲得するために動き補償された予測に変換を適用する順変換モジュールと、第１の組から第２の変換係数の組を獲得するために変換ドメイン内で非線形フィルタリング演算を実行するモジュールと、動き補償された非線形予測を生成するために第２の変換係数の組に逆変換を適用する逆変換モジュールとを備える。
【００３９】
[0046]一実施形態では、変換ドメイン内で非線形フィルタリング演算を実行するモジュールは、１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために、スレッショルドに基づいて変換係数毎にスレッショルディングを実行し、第１の変換係数の組を変更及び修正する１つ以上の係数の組を特定するモジュールを備える。別の実施形態では、変換ドメイン内で非線形フィルタリング演算を実行するモジュールは、第２の変換係数の組を作成するために、大きさに基づいて変換係数をソートし、これらの変換係数を変更及び修正する変換係数を特定するモジュールを備える。さらに別の実施形態では、変換ドメイン内で非線形フィルタリングを実行するモジュールは、第２の変換係数の組を作成するために、ブロック中の各変換係数にパーセンテージフィルタリングを実行し、これらの変換係数を変更及び修正する１つ以上の変換係数の組を特定するモジュールを備える。さらに別の実施形態では、変換ドメイン内で非線形フィルタリング演算を実行するモジュールは、インデックスをブロック内の各変換係数に割り当て、インデックスに基づいて変更すべき１つ以上の変換係数の組を特定し、１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために第１の変換係数の組を修正するモジュールを備える。さらに別の実施形態では、変換ドメイン内で非線形フィルタリング演算を実行するモジュールは、第２の変換係数の組を作成するために１つ以上の変換係数をスケーリングするモジュールを備える。
【００４０】
[0047]一実施形態では、線形変換は、ｎ×ｎブロックＤＣＴと、そのｎ２の空間平行移動の全部とによって与えられ、ｎは映像フレームのサイズによって定められている。ＱＣＩＦ解像度フレームの場合、ｎは４に等しく、ＣＩＦ解像度フレームの場合、ｎは４に等しいか、ｎは８に等しいか、以下同様である。一般に、ｎは映像フレームの解像度が高くなると大きくなることが予想される。
【００４１】
[0048]非線形予測フィルタの演算は詳細に後述されている。
【００４２】
[0049]図３は従来型の動き補償された予測形成プロセスのフローチャートである。図３を参照すると、このプロセスは、前に復号化されたフレームから候補ブロックｙを獲得する（処理ブロック３０１）。候補ブロックｙを使用して、プロセシングロジックは、予測されるべきブロックのＦ個の可能な補間予測
【数１１】
2008547324.tif 000013
を生成する（処理ブロック３０２）。そして、補間予測
【数１２】
2008547324.tif 000014
が出力される（処理ブロック３０３）。その後、プロセスは終了する。
【００４３】
[0050]図４は非線形予測形成を実行するプロセスの一実施形態のフローチャートである。プロセスは、ハードウェア（たとえば、回路、専用ロジックなど）、（たとえば、汎用コンピュータシステム又は専用機械上で動かされる）ソフトウェア、又は、両者の組み合わせを備えるプロセシングロジックによって実行される。一実施形態では、プロセスは非線形予測フィルタによって実行される。
【００４４】
[0051]図４を参照すると、プロセスは、前に復号化されたフレームから候補ブロックｙを獲得することにより開始し（処理ブロック４０１）、Ｆ個の従来型の動き補償された予測器
【数１３】
2008547324.tif 000015
を獲得する（処理ブロック４０２）。前に復号化されたフレームからの候補ブロックｙを使用して、プロセシングロジックは同一予測器を獲得し（処理ブロック４０３）、同一予測器は従来型の動き補償された予測器
【数１４】
2008547324.tif 000016
と共に予測辞書記憶装置４０９に記憶される。
【００４５】
[0052]同様に候補ブロックｙを使用して、プロセシングロジックは、Ｋ個のスレッショルディング予測
【数１５】
2008547324.tif 000017
を構築し（処理ブロック４０４）、Ｌ個のパーセンテージ予測
【数１６】
2008547324.tif 000018
を構築する（処理ブロック４０５）。プロセシングロジックは、スレッショルドパラメータＴ１，．．．，ＴＫ及び変換Ｈ１，．．．，ＨＵ（４０８）を使用してスレッショルディング予測を構築する。同様に、プロセシングロジックは、パーセンテージＲ１，．．．，ＲＬ及び変換Ｈ１，．．．，ＨＵ（４０６）を使用してパーセンテージ予測を構築する。
【００４６】
[0053]一実施形態では、スレッショルディングはｙの各変換係数をハードスレッショルディングすることにより実施される。変換係数がスレッショルドより大きいならば、変換係数は変更されず、さもなければ、変換係数は零に設定される。一実施形態では、Ｋ及びスレッショルドＴ１，．．．，ＴＫは、符号化されるべきフレーム毎にエンコーダによって決定され、デコーダへ通知される。
【００４７】
[0054]一実施形態では、パーセンテージフィルタリングの場合、Ｌ及びパーセンテージＲ１，．．．，ＲＬは符号化されるべきフレーム毎にエンコーダによって決定され、デコーダへ通知される。
【００４８】
[0055]スレッショルディング予測及びパーセンテージ予測、すなわち、予測
【数１７】
2008547324.tif 000019
は処理ブロック４０７へ送られ、プロセシングロジックが構築された各予測を予測辞書記憶装置４０９に記憶されている予測と比較する。より詳細には、一実施形態では、プロセシングロジックは、差がスレッショルドＴＱ未満であるかどうかをテストする。ＴＱは量子化ステップ幅の増加関数でもよい。スレッショルドＴＱ未満でなければ、予測は無効であり、廃棄される。予測が、スレッショルドＴＱとの比較に基づいて、全ての辞書要素との差が十分であるならば、プロセシングロジックは、予測が有効であると宣言し、将来の比較で使用されるべき辞書に予測を追加する。
【００４９】
[0056]全ての比較が終了した後、プロセシングロジックは非線形予測
【数１８】
2008547324.tif 000020
を出力し（処理ブロック４１０）、プロセスは終了する。
【００５０】
[0057]一実施形態では、非線形予測器は、後述されるように、同一予測器、
【数１９】
2008547324.tif 000021
と、その時点までに有効であることが判明した予測器と比較される。最初に、辞書が同一予測器
【数２０】
2008547324.tif 000022
を使用して構築される。各予測は、予測と辞書要素との間の平方誤差を計算することにより辞書の各要素と比較される。この平方誤差は、次に、スレッショルドＴＱと比較される、全ての辞書要素との平方誤差がそれぞれスレッショルドＴＱより大きいならば、予測は有効であることが宣言され、辞書に追加される。そうでなければ、予測は無効であり廃棄される。一実施形態では、スレッショルドＴＱは、平方された量子化器ステップ幅の倍数として決定され、それ以外の等価パラメータが使用されることもある。
【００５１】
[0058]図５は非線形予測プロセスの一実施形態のフローチャートである。プロセスは、ハードウェア（たとえば、回路、専用ロジックなど）、（たとえば、汎用コンピュータシステム又は専用機械上で動かされる）ソフトウェア、又は、両者の組み合わせを備えるプロセシングロジックによって実行される。一実施形態では、非線形予測処理は符号化ループの内側で実行される。
【００５２】
[0059]図５を参照すると、処理は、プロセシングロジックが、伸張された映像フレーム５１０に応答して符号化されるべきフレームのための予測を生成するために、従来型の動き補償された予測形成（処理ブロック５０１）と、非線形形成（処理ブロック５０２）とを実行することにより開始する。プロセシングロジックは、変換Ｈ１，．．．，ＨＵ、スレッショルドＴ１，．．．，ＴＫ、及び、パーセンテージＲ１，．．．，ＲＬ（５１１）を使用して非線形予測を実行する。
【００５３】
[0060]予測を形成した後、プロセシングロジックは最良予測を選択する（処理ブロック５０３）。これは予測されるべきフレーム（５１２）に応答して行われる。次に、プロセシングロジックは、選択された予測５１４と予測パラメータ、すなわち、スレッショルドＴ１，．．．，ＴＫ、及び、パーセンテージＲ１，．．．，ＲＬ（５１３）とをデコーダに通知する。その後に、プロセスは終了する。
【００５４】
[0061]図６は非線形予測プロセスの一実施形態のフローチャートである。プロセスは、ハードウェア（たとえば、回路、専用ロジックなど）、（たとえば、汎用コンピュータシステム又は専用機械上で動かされる）ソフトウェア、又は、両者の組み合わせを備えるプロセシングロジックによって実行される。一実施形態では、非線形予測プロセスはビデオデコーダの符号化ループ内で実行される。
【００５５】
[0062]図６を参照すると、プロセスは、プロセシングロジックが予測されるべきブロック毎にフィルタを決定することにより開始する（処理ブロック６０１）。一実施形態では、この決定は、伸張された映像フレーム６１０と、エンコーダによるビットストリームに含まれている予測パラメータ６１１とに応答して実行される。
【００５６】
[0063]フィルタを決定した後、プロセシングロジックは、従来型の動き補償予測形成を実行する（処理ブロック６０２）。従来型の動き補償予測形成は従来型の予測を要求するブロック６１２に関して実行される。プロセシングロジックは、非線形予測形成も実行する（処理ブロック６０３）。このような事例では、非線形予測形成は、非線形予測を要求するブロック６１３と、変換Ｈ１，．．．，ＨＵと、予測パラメータであるスレッショルドＴ１，．．．，ＴＫ及びパーセンテージＲ１，．．．，ＲＬ（６１４）とに関して実行される。
【００５７】
[0064]従来型の動き補償された予測形成と非線形予測形成の両方の出力は、復号化されるべきフレーム内のブロック毎の適切な予測である予測６１５からなる。
【００５８】
[0065]図７は非線形予測形成プロセスの一実施形態のフローチャートである。プロセスは、ハードウェア（たとえば、回路、専用ロジックなど）、（たとえば、汎用コンピュータシステム又は専用機械上で動かされる）ソフトウェア、又は、両者の組み合わせを備えるプロセシングロジックによって実行される。
【００５９】
[0066]上述されているようなプロセスは、過完備変換を使用して候補ブロックｙに関する非線形予測を生成する。本発明は、過完備変換を使用することに限定されるものではなく、その他の変換が使用されてもよい。
【００６０】
[0067]図７を参照すると、プロセスは、変換係数ｄｉの組を生成するために順変換を候補ブロックに適用し、係数ｄｉの組内の１つ以上の係数を修正するためにスレッショルディング（又は、たとえば、パーセンテージフィルタリングのような別のフィルタリング技術）を適用し、その後に、予測を生成するために変換係数ｄｉに逆変換を適用することにより開始する（処理ブロック７０１）。一実施形態では、この演算は、フレーム内の全ブロックに対して実行され、変換Ｈ１，．．．，ＨＵ、スレッショルドＴＫ及びパーセンテージＲＫに応答して行われる。一実施形態では、スレッショルドＴＫは、２、３．５、７．２、又は、量子化ステップ幅のα倍のある数値であり、ここで、αは、０．２、１，３．４５、２３などである。この結果は非線形予測推定量である。これは、Ｕ個の予測推定量が形成されるようにＵ回実行される。ｎ×ｎブロック変換の場合、Ｕはｎ２でもよく、ＵはＵ回の変換が平行移動に不変な分解を提供するように設定されてもよく、又は、Ｕは計算複雑性の制約に基づいて設定されてもよい。
【００６１】
[0068]フィルタリング演算を実行した後、プロセシングロジックは、全体的な非線形予測
【数２１】
2008547324.tif 000023
を作成するために、予測推定量を合成する（処理ブロック７０２）。一実施形態では、個々の予測推定量を合成するために、合成は、個々の予測
【数２２】
2008547324.tif 000024
の加重平均によって与えられる。加重平均は、等しい重みを用いて、又は、たとえば、Ｏｎｕｒ  Ｇ．  Ｇｕｌｅｒｙｕｚ，  “Ｗｅｉｇｈｔｅｄ  Ｏｖｅｒｃｏｍｐｌｅｔｅ  Ｄｅｎｏｉｓｉｎｇ”，  Ｐｒｏｃ．  Ａｓｉｌｏｍａｒ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｓｉｇｎａｌｓ  ａｎｄ  Ｓｙｓｔｅｍｓ，  Ｐａｃｉｆｉｃ  Ｇｒｏｖｅ，  ＣＡ，  Ｎｏｖ．２００３に記載されている技術のような、当分野において周知のより高度な重み決定技術を使用して行われる。
【００６２】
コンピュータシステムの実施例
[0069]図８は、本明細書に記載されている１つ以上の動作を実行する例示的なコンピュータシステムのブロック図である。図８を参照すると、コンピュータシステム８００は、例示的なクライアント又はサーバーコンピュータシステムを備える。コンピュータシステム８００は、情報を通信する通信メカニズム又はバス８１１と、バス８１１と接続され、情報を処理するプロセッサ８１２とを備える。プロセッサ８１２は、たとえば、Ｐｅｎｔｉｕｍ（商標）、ＰｏｗｅｒＰＣ（商標）、Ａｌｐｈａ（商標）などのようなマイクロプロセッサを含むが、マイクロプロセッサには限定されない。
【００６３】
[0070]システム８００は、バス８１１に接続され、情報及びプロセッサ８１２によって実行されるべき命令を記憶するランダムアクセスメモリ（ＲＡＭ）、又は、その他のダイナミック記憶装置８０４（主メモリと呼ばれる）をさらに備える。主メモリ８０４は、プロセッサ８１２による命令の実行中に、一時変数又はその他の中間情報を記憶するためにも使用される。
【００６４】
[0071]コンピュータシステム８００は、バス８１１に接続され、静的情報及びプロセッサ８１２のための命令を記憶するリードオンリーメモリ（ＲＯＭ）及び／又はその他のスタティック記憶装置８０６と、磁気ディスク又は光ディスク及びこれらのディスクに対応するディスクドライブのようなデータ記憶装置８０７とをさらに備える。データ記憶装置８０７はバス８１１に接続され、情報及び命令を記憶する。
【００６５】
[0072]コンピュータシステム８００は、バス８１１に接続され情報をコンピュータユーザへ提示する陰極線管（ＣＲＴ）又は液晶ディスプレイ（ＬＣＤ）のような表示装置８２１にさらに接続されている。英数字キー及びその他のキーを含む英数字入力装置８２２もまたバス８１１に接続され、情報及びコマンド選択をプロセッサ８１２へ通信する。付加的なユーザ入力装置は、バス８１１に接続され、方向情報及びコマンド選択をプロセッサ８１２へ通信し、ディスプレイ８２１上のカーソル移動を制御するマウス、トラックボール、トラックパッド、スタイラス、又は、カーソル方向キーのようなカーソル制御装置８２３である。
【００６６】
[0073]バス８１１に接続される別の装置は、紙、フィルム、又は、同様のタイプの媒体のような媒体上に情報を記録するハードコピー装置８２４である。バス８１１に接続される別の装置は、電話機又はハンドヘルド式パーム型装置へ通信するための有線／無線通信機能装置８２５である。
【００６７】
[0074]システム８００の何れか又は全部のコンポーネント、及び、関連したハードウェアが本発明において使用されることに注意すべきである。しかし、コンピュータシステムのその他の構造は装置の一部又は全部を含むことがわかる。
【００６８】
[0075]本発明の多数の代替及び変更は、おそらく上記の説明を読んだ後に当業者に明白になるが、例示のために図示され記載された特有の実施形態が制限的であるとみなされることは決して意図されていないことが理解されるべきである。したがって、様々な実施形態の細部への言及は、発明に不可欠であると考えられる特徴だけを本質的に列挙している請求項の範囲を制限することを目的としていない。
【図面の簡単な説明】
【００６９】
【図１】ビデオエンコーダのブロック図である。
【図２Ａ】機能強化されたビデオエンコーダのブロック図である。
【図２Ｂ】機能強化されたビデオエンコーダのブロック図である。
【図３】従来型の動き補償された予測形成プロセスのフローチャートである。
【図４】非線形予測形成を実行するプロセスの一実施形態のフローチャートである。
【図５】非線形予測プロセスの一実施形態のフローチャートである。
【図６】非線形予測プロセスの一実施形態のフローチャートである。
【図７】非線形予測形成プロセスの一実施形態のフローチャートである。
【図８】本明細書に記載されている１つ以上の動作を実行する例示的なコンピュータシステムのブロック図である。
【図３】
2008547324.tif 000025
【図４】
2008547324.tif 000026
【図５】
2008547324.tif 000027
【図６】
2008547324.tif 000028
【図７】
2008547324.tif 000029
【図８】
2008547324.tif 000030
【図１】
2008547324.tif 000031
【図２Ａ】
2008547324.tif 000032
【図２Ｂ】
2008547324.tif 000033
【手続補正書】
【提出日】平成20年2月19日(2008.2.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行するステップと、
動き補償された非線形予測を生成するために端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で前記動き補償された予測に非線形フィルタリングを実行するステップと、
残差フレームを生成するために現在フレーム内のブロックから前記動き補償された非線形予測を減算するステップと、
前記残差フレームを符号化するステップと、
を備える方法。
【請求項２】
非線形フィルタリングを前に復号化されたフレームに適用するステップをさらに備え、
動き補償を実行するステップが、前記非線形フィルタリングされた前に符号化されたフレームを使用して前記動き補償された予測を生成する工程を備える、請求項１に記載の方法。
【請求項３】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
変更すべき１つ以上の変換係数の組を特定するためにスレッショルドに基づいて各変換係数をスレッショルディングする工程と、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項４】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
変更すべき１つ以上の変換係数の組を特定するために大きさに基づいて変換係数を順位付けする工程と、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項５】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
変更すべき１つ以上の変換係数の組を特定するために前記ブロックの各変換係数をパーセンテージフィルタリングする工程と、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項６】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
前記ブロック内の各変換係数にインデックスを割り当てる工程と、
前記インデックスに基づいて変更すべき１つ以上の変換係数の組を特定する工程と、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項７】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
第２の変換係数の組を作成するために１つ以上の変換係数をスケーリングする工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項８】
前記スケーリングが零によるスケーリングによって実行される、請求項７に記載の方法。
【請求項９】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
第２の変換係数の組を作成するために１つ以上の変換係数を零化する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項１０】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
第２の変換係数の組を作成するために１つ以上の変換係数にソフトスレッショルディング演算を実行する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項１１】
ソフトスレッショルディング演算を実行するステップが、係数の大きさがスレッショルドより大きいならば、係数を並べ替え、係数の大きさが前記スレッショルドより小さいならば、前記係数に零を設定する工程を備える、請求項１０に記載の方法。
【請求項１２】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
第２の変換係数の組を作成するために前記係数の１次元増加関数を獲得することにより係数を修正する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項１３】
非線形フィルタリングを実行するステップが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する工程と、
第２の変換係数の組を作成するために１つ以上の変換係数にデノイジングを適用する工程と、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する工程と、
を備える、請求項１に記載の方法。
【請求項１４】
前記動き補償された非線形予測をフィルタ処理するため使用される前記非線形フィルタを表す情報を符号化されたビットストリームに加える、請求項１に記載の方法。
【請求項１５】
復号化中に前記変換係数を作成することに適用される変換に関してデコーダへ通知するために前記変換を表す情報を加えるステップをさらに備える、請求項１４に記載の方法。
【請求項１６】
前記非線形フィルタが複数のフィルタのうちの１つのフィルタであり、
前記複数のフィルタの中から前記非線形フィルタを選択するステップをさらに備える、請求項１に記載の方法。
【請求項１７】
映像フレームのための複数の動き補償された非線形予測を生成するステップと、
前に見つけられた予測との差に基づいて前記複数の動き補償された非線形予測のうちの１つ以上を除去するステップと、
をさらに備える、請求項１に記載の方法。
【請求項１８】
変換係数の個数が候補ブロック要素の個数を上回る、請求項１に記載の方法。
【請求項１９】
前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行する動き補償予測モジュールと、
端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で前記ブロックに非線形フィルタリングを実行する非線形予測フィルタと、
残差フレームを生成するために現在フレーム内のブロックから前記動き補償された非線形予測を減算する減算器と、
前記残差フレームを符号化するコーダと、
を備えるエンコーダ。
【請求項２０】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する順変換モジュールと、
変更すべき１つ以上の変換係数の組を特定するためにスレッショルドに基づいて各変換係数をスレッショルディングを実行し、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項１９に記載のエンコーダ。
【請求項２１】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する順変換モジュールと、
変更すべき１つ以上の変換係数の組を特定するために大きさに基づいて変換係数をソートし、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項１９に記載のエンコーダ。
【請求項２２】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する順変換モジュールと、
変更すべき１つ以上の変換係数の組を特定するために前記ブロックの各変換係数にパーセンテージフィルタリングを実行し、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項１９に記載のエンコーダ。
【請求項２３】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する順変換モジュールと、
前記ブロック内の各変換係数にインデックスを割り当て、前記インデックスに基づいて変更すべき１つ以上の変換係数の組を特定し、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項１９に記載のエンコーダ。
【請求項２４】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記動き補償された予測に変換を適用する順変換モジュールと、
第２の変換係数の組を作成するために１つ以上の変換係数をスケーリングするモジュールと、
前記動き補償された非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項１９に記載のエンコーダ。
【請求項２５】
システムによって実行されたときに、
前に符号化されたフレームからのブロックを使用して動き補償された予測を生成するために動き補償を実行するステップと、
動き補償された非線形予測を生成するために端数補間プロセスの一部として非線形フィルタを用いて変換ドメイン内で前記動き補償された予測に非線形フィルタリングを実行するステップと、
残差フレームを生成するために現在フレーム内のブロックから前記動き補償された非線形予測を減算するステップと、
前記残差フレームを符号化するステップと、
を備える方法を前記システムに実行させる命令を記憶する１つ以上のコンピュータ読み取り可能な媒体を有する製品。
【請求項２６】
前記方法が、
前に復号化されたフレームに非線形フィルタリングを適用するステップをさらに備え、
動き補償を実行するステップが、前記非線形フィルタリングされた前に復号化されたフレームを使用して前記動き補償された予測を生成する工程を備える、
請求項２５に記載の製品。
【請求項２７】
前に復号化されたブロックからのブロックを使用して予測されたブロックを生成するステップと、
非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で前記予測されたブロックに非線形フィルタリングを実行するステップと、
残差フレームを復号化するステップと、
前記残差フレームを前記非線形予測に加算するステップと、
を備える方法。
【請求項２８】
非線形フィルタリングが予測パラメータに基づいている、請求項２７に記載の方法。
【請求項２９】
前記予測パラメータに基づいて前記非線形フィルタを決定するステップをさらに備える、請求項２８に記載の方法。
【請求項３０】
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用するステップと、
変更すべき１つ以上の変換係数の組を特定するためにスレッショルドに基づいて各変換係数をスレッショルディングするステップと、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するステップと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用するステップと、
をさらに備える、請求項２９に記載の方法。
【請求項３１】
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用するステップと、
変更すべき１つ以上の変換係数の組を特定するために大きさに基づいて変換係数を順位付けするステップと、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するステップと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用するステップと、
をさらに備える、請求項２６に記載の方法。
【請求項３２】
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用するステップと、
変更すべき１つ以上の変換係数の組を特定するために前記ブロックの各変換係数をパーセンテージフィルタリングするステップと、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するステップと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用するステップと、
をさらに備える、請求項２７に記載の方法。
【請求項３３】
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用するステップと、
前記ブロック内の各変換係数にインデックスを割り当てるステップと、
前記インデックスに基づいて変更すべき１つ以上の変換係数の組を特定するステップと、
前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するステップと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用するステップと、
をさらに備える、請求項２７に記載の方法。
【請求項３４】
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用するステップと、
第２の変換係数の組を作成するために１つ以上の変換係数をスケーリングするステップと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用するステップと、
をさらに備える、請求項２７に記載の方法。
【請求項３５】
前に復号化されたブロックからのブロックを使用して予測されたブロックを生成する動き補償ユニットと、
非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で前記予測されたブロックに非線形フィルタリングを実行する非線形予測フィルタと、
残差フレームを復号化するデコーダと、
前記残差フレームを前記非線形予測に加算する加算器と、
を備える装置。
【請求項３６】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用する順変換モジュールと、
変更すべき１つ以上の変換係数の組を特定するためにスレッショルドに基づいて各変換係数にスレッショルディングを実行し、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項３５に記載の装置。
【請求項３７】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用する順変換モジュールと、
変更すべき１つ以上の変換係数の組を特定するために大きさに基づいて変換係数をソートし、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項３５に記載の装置。
【請求項３８】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用する順変換モジュールと、
変更すべき１つ以上の変換係数の組を特定するために前記ブロックの各変換係数にパーセンテージフィルタリングを実行し、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項３５に記載の装置。
【請求項３９】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用する順変換モジュールと、
前記ブロック内の各変換係数にインデックスを割り当て、前記インデックスに基づいて変更すべき１つ以上の変換係数の組を特定し、前記１つ以上の変換係数の組内の変換係数を変更することにより第２の変換係数の組を作成するために前記第１の変換係数の組を修正するモジュールと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項３５に記載の装置。
【請求項４０】
前記非線形予測フィルタが、
第１の変換係数の組を獲得するために前記予測されたブロックに変換を適用する順変換モジュールと、
第２の変換係数の組を作成するために１つ以上の変換係数をスケーリングするモジュールと、
前記非線形予測を生成するために前記第２の変換係数の組に逆変換を適用する逆変換モジュールと、
を備える、請求項３５に記載の装置。
【請求項４１】
システムによって実行されたときに、
前に復号化されたブロックからのブロックを使用して予測されたブロックを生成するステップと、
非線形予測を生成するために端数補間プロセスの一部として非線形予測フィルタを用いて変換ドメイン内で前記予測されたブロックに非線形フィルタリングを実行するステップと、
残差フレームを復号化するステップと、
前記残差フレームを前記非線形予測に加算するステップと、
を備える方法を前記システムに実行させる命令を記憶する１つ以上のコンピュータ読み取り可能な媒体を有する製品。
【国際調査報告】
2008547324.tif 000034
2008547324.tif 000035