(57)【特許請求の範囲】
【請求項１】
プロセッサが、ビデオエンコーダに入力され、前記ビデオエンコーダによってエンコードされた複数の画素を、複数の異なるヒストグラム分割方法のそれぞれを用いて、複数の異なるヒストグラムビンに分類する段階と、
前記プロセッサが、前記複数の異なるヒストグラム分割方法のそれぞれについて、前記複数の異なるヒストグラムビンに分類された前記複数の画素を、オフセットを有するウィーナーフィルタを用いてフィルタリングする段階と
を備え、
前記プロセッサが、前記オフセットを、前記ウィーナーフィルタを用いてフィルタリングされた前記複数の画素の値と、前記ビデオエンコーダに入力された前記複数の画素の値とのそれぞれの差分を加算した値を、ヒストグラムビン内の複数の画素の数で除算した値として設定する段階
を備える、方法。
【請求項２】
前記プロセッサが、前記フィルタリングする段階においてフィルタリングされた前記複数の画素の値と、前記ビデオエンコーダに入力された前記複数の画素の値と、レート歪み最適化基準とに基づいて、前記複数の異なるヒストグラム分割方法から、一のヒストグラム分割方法を決定する段階と、
前記プロセッサが、前記決定する段階における決定結果を示すフラグを、前記ビデオエンコーダによってエンコードされた前記複数の画素をデコードするデコーダに送信する段階と
を備える、請求項１に記載の方法。
【請求項３】
前記ビデオエンコーダから前記デコーダに対して、前記複数の異なるヒストグラムビンの数を送信する段階を含む、請求項２に記載の方法。
【請求項４】
前記複数の異なるヒストグラム分割方法は、ヒストグラムを均等に分割したヒストグラムビンに複数の画素を分割する方法を含む、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記複数の異なるヒストグラム分割方法は、ヒストグラムを複数のヒストグラム特性に基づいて分割したヒストグラムビンに複数の画素を分割する方法を含む、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記プロセッサが、位置における入力画素の値と、その位置における前記フィルタリングの後の画素値との間で、複数の歪みの二乗の合計を最小化することにより、複数の適応フィルタ係数を生成する段階を含む、請求項１から５のいずれか１項に記載の方法。
【請求項７】
コンピュータが備えるプロセッサに、
ビデオエンコーダに入力され、前記ビデオエンコーダによってエンコードされた複数の画素を、複数の異なるヒストグラム分割方法のそれぞれを用いて、複数の異なるヒストグラムビンに分類する手順と、
前記複数の異なるヒストグラム分割方法のそれぞれについて、前記複数の異なるヒストグラムビンに分類された前記複数の画素を、オフセットを有するウィーナーフィルタを用いてフィルタリングする手順と、
前記オフセットを、前記ウィーナーフィルタを用いてフィルタリングされた前記複数の画素の値と、前記ビデオエンコーダに入力された前記複数の画素の値とのそれぞれの差分を加算した値を、ヒストグラムビン内の複数の画素の数で除算した値として設定する手順と
を実行させるための、プログラム。
【請求項８】
前記プロセッサに、
前記フィルタリングする手順によってフィルタリングされた前記複数の画素の値と、前記ビデオエンコーダに入力された前記複数の画素の値と、レート歪み最適化基準とに基づいて、前記複数の異なるヒストグラム分割方法から、一のヒストグラム分割方法を決定する手順と、
前記決定する手順による決定結果を示すフラグを、前記ビデオエンコーダによってエンコードされた前記複数の画素をデコードするデコーダに送信する手順と
を実行させるための、請求項７に記載のプログラム。
【請求項９】
前記プロセッサに、
前記ビデオエンコーダから前記デコーダに対して、複数のビンの数を送信する手順を実行させるための、請求項８に記載のプログラム。
【請求項１０】
前記複数の異なるヒストグラム分割方法は、ヒストグラムを均等に分割したヒストグラムビンに複数の画素を分割する方法を含む、請求項７から９のいずれか一項に記載のプログラム。
【請求項１１】
前記複数の異なるヒストグラム分割方法は、ヒストグラムを複数のヒストグラム特性に基づいて分割したヒストグラムビンに複数の画素を分割する方法を含む、請求項７から１０のいずれか一項に記載のプログラム。
【請求項１２】
位置における入力画素の値と、その位置における前記フィルタリングの後の画素値との間で、複数の歪みの二乗の合計を最小化することにより、複数の適応フィルタ係数を生成する手順を前記プロセッサにさらに実行させるための、請求項７から１１のいずれか１項に記載のプログラム。
【請求項１３】
請求項７から１２のいずれか一項に記載のプログラムを記録したコンピュータ可読記録媒体。
【請求項１４】
オフセットを有するウィーナーフィルタと、
ビデオエンコーダに入力され、前記ビデオエンコーダによってエンコードされた複数の画素を、複数の異なるヒストグラム分割方法のそれぞれを用いて、複数の異なるヒストグラムビンに分類し、前記複数の異なるヒストグラム分割方法のそれぞれについて、前記複数の異なるヒストグラムビンに分類された前記複数の画素を、前記フィルタを用いてフィルタリングし、前記オフセットを、前記フィルタを用いてフィルタリングした前記複数の画素の値と、前記ビデオエンコーダに入力された前記複数の画素の値とのそれぞれの差分を加算した値を、ヒストグラムビン内の複数の画素の数で除算した値として設定する、前記フィルタに連結されるプロセッサとを備える、装置。
【請求項１５】
前記プロセッサは、前記フィルタを用いてフィルタリングした前記複数の画素の値と、前記ビデオエンコーダに入力された前記複数の画素の値と、レート歪み最適化基準とに基づいて、前記複数の異なるヒストグラム分割方法から、一のヒストグラム分割方法を決定し、決定結果を示すフラグを、前記ビデオエンコーダによってエンコードされた前記複数の画素をデコードするデコーダに送信する、請求項１４に記載の装置。
【請求項１６】
前記ビデオエンコーダと、前記デコーダとを含み、前記プロセッサは、前記ビデオエンコーダから前記デコーダに対して、複数のビンの数を送信する、請求項１５に記載の装置。
【請求項１７】
前記複数の異なるヒストグラム分割方法は、ヒストグラムを均等に分割したヒストグラムビンに複数の画素を分割する方法を含む、請求項１４から１６のいずれか一項に記載の装置。
【請求項１８】
前記複数の異なるヒストグラム分割方法は、ヒストグラムを複数のヒストグラム特性に基づいて分割したヒストグラムビンに複数の画素を分割する方法を含む、請求項１４から１７のいずれか一項に記載の装置。
【請求項１９】
前記プロセッサは、位置における入力画素の値と、その位置における前記フィルタリングの後の画素値との間で、複数の歪みの二乗の合計を最小化することにより、複数の適応フィルタ係数を生成する、請求項１４から１８のいずれか１項に記載の装置。
【請求項２０】
オペレーティングシステムを含む、請求項１４から１９のいずれか１項に記載の装置。
【請求項２１】
バッテリを含む、請求項１４から２０のいずれか１項に記載の装置。
【請求項２２】
ファームウェアと、前記ファームウェアを更新するためのモジュールとを含む、請求項１４から２１のいずれか１項に記載の装置。
【発明の詳細な説明】
【背景技術】
【０００１】
本願は、ビデオ圧縮に関する。
【０００２】
非可逆ビデオ符号化では、複数の変換係数の量子化により、複数の復元された画像の質が劣化する。量子化ステップが大きくなると、画像の質の損失が増大する。
【０００３】
復元された画像の質を改善し、ビデオ圧縮利得を改善するために、適応フィルタが、アウトループビデオ処理ツールとして、または、画像の質の損失を部分的に補償するコアビデオ符号化パイプラインにおける複数のインループモジュールの一部として、適用されてもよい。
【図面の簡単な説明】
【０００４】
いくつかの実施形態が、以下の複数の図に関して説明される。
【図１】複数のヒストグラム分割方法が適用される場合におけるフィルタリング決定のための符号化フローの一例を示す。
【図２】対応するデコーダのフローを示す。
【図３】一実施形態に係るシステムの説明である。
【図４】一実施形態の正面図である。
【発明を実施するための形態】
【０００５】
グローバルウィーナーフィルタはいくつかのローカル画素情報に対する適応を失う可能性があることを考慮すると、適応的に選択された複数の画素に対してウィーナーフィルタをローカルに適用し、フィルタリングのための複数の画素の選択の助けとなるヒストグラム分割スキームを用いることができる。しかし、ウィーナーフィルタは、ヒストグラムビン内における一定の質の損失を処理する能力が欠如している可能性がある。そこで、オフセットを有する、変更が加えられたウィーナーフィルタが、ヒストグラムの複数のビンを適応的にフィルタリングするために用いられてもよい。
【０００６】
ビデオコーデックシステムで復元された画像の質は、複数の復元された画素を、ヒストグラム分割によって複数の異なるヒストグラムビンに分類し、次に、複数の異なるビンに対して複数の異なるフィルタを適用することにより、改良され得る。ヒストグラム分割は、ヒストグラムをＭ個のビンに均等に分割する、または複数のヒストグラム特性に基づいて、ヒストグラムをＮ個のビンに適応的に分割することにより、実行されてもよい。例えば、画素値範囲が０−２５５の場合、ヒストグラムをＭ個のビンに均等に分割することは、各ビンが２５６／Ｍ画素値の間隔を有することを意味する。ここで、Ｍ及びＮは、予め定められ、固定された正の整数値またはエンコーダ側で適応的に生成された値であってもよく、符号化されたビットストリームを介してデコーダに送信されてもよい。複数のヒストグラム特性は、画素値の複数の分配を伴う。ヒストグラム分割及び／または区画化の複数の方法を紹介する文書が多数公開されている。
【０００７】
ビデオコーデックシステムで復元された画像の質は、複数の利用可能なヒストグラム分割スキームを適用し、エンコーダ側でレート歪み最適化（ＲＤＯ）基準に基づいてフィルタリングのための最良の分割スキームを決定し、次に決定結果を示すフラグをデコーダに送信することにより、改良され得る。ビデオコーデックシステムで復元された画像の質は、ＲＤＯ基準に基づいて分割されたヒストグラムの複数のビンに複数のフィルタを適応的に適用し、次に符号化されたビットストリームを介して、フィルタリングされるべきヒストグラムの複数のビンを示す複数のフラグを送信することにより、改良され得る。
【０００８】
適応ウィーナーフィルタが、ヒストグラムビンのためのオフセットとともに適用されてもよい。複数のウィーナーフィルタ係数及びヒストグラムビンのためのオフセット値は、エンコーダ側で適応的に生成され、次に複数の係数及びオフセット値は、符号化されたビットストリームを介してデコーダに送信されてもよい。オフセットを有するウィーナーフィルタは、ヒストグラムビン内の複数の復元された画素Ｐ（ｘ，ｙ）に適用され、ビンについてフィルタリングされた画素値Ｐ'（ｘ，ｙ）を得る。次に、複数のウィーナーフィルタ係数及びオフセット値は、図１に示されるように、エンコーダ側でフィルタリングされた画素値Ｐ'（ｘ，ｙ）及び元の入力画素値Ｑ（ｘ，ｙ）間の合計絶対差（ＳＳＤ）を最小化し、次に複数の係数及びオフセット値が、符号化されたビットストリームを介してデコーダに送信されることにより、計算されてもよい。いくつかの実施形態では、オフセット値は、強制的にゼロにされてもよく、複数のウィーナーフィルタ係数のみがエンコーダ側で生成され、次にデコーダに送信される必要がある。
【０００９】
いくつかの実施形態では、ウィーナーフィルタを適用することなく、オフセット値のみがヒストグラムビンに適用される。この場合、オフセット値のみが、エンコーダ側でヒストグラムビンについて生成され、次にデコーダに送信される必要がある。
【００１０】
いくつかの実施形態では、複数のウィーナーフィルタ係数のいくつかは、送信帯域幅をセーブするべく強制的にゼロとされてもよく、これらの複数の係数は、デコーダに送信されなくてもよい。
【００１１】
ビデオコーデックシステムで復元された画像の質は、グローバルフィルタリングまたはエンコーダ側におけるＲＤＯ基準に基づくヒストグラム分割ベースのローカルフィルタリングを適応的に選択し、次に選択結果を示すフラグをデコーダに送信することにより、改良され得る。グローバルフィルタリングは、実際には、ヒストグラム分割ベースのローカルフィルタリングの特別な場合である。ヒストグラム全体が単一ビン（分割なし）とみなされる場合、ローカルフィルタリングは、実際には、画像内の複数の画素の全てに対するグローバルフィルタリングである。図１では、この場合に「分割しない」ために、１のヒストグラム分割方法が設定可能である。
【００１２】
ビデオコーデックシステムで復元された画像の質は、フィルタリングされるべき（又はされるべきでない）フレームを、エンコーダ側でＲＤＯ基準に基づいて適応的に決定し、次に決定結果を示すフラグをデコーダに送信することにより、改良され得る。
【００１３】
ビデオコーデックでは、適応ウィーナーフィルタは、２つの入力画像又は画像領域間の違い、及びデコーダ側に送信される必要がある複数のフィルタ係数を最小化することを目的とする。Ｑ（ｘ，ｙ）は、位置（ｘ，ｙ）におけるエンコーダ入力画素の値を意味し、Ｐ（ｘ，ｙ）は、位置（ｘ，ｙ）における復元されたフィルタリング前の画素の値を意味するものとする。オフセットを有する適応ウィーナーフィルタリングは、式（１）に示すように、Ｐ（ｘ，ｙ）に対して実行され、フィルタリングの後の画素値Ｐ'（ｘ，ｙ）を得る。
【数１】
0006005292.tif 000002
（１）  ここで、Ｃｍ，ｎは、複数の適応フィルタリング係数を意味し、オフセットは、対応するヒストグラムの複数のビンに加算されたオフセット値を意味する。Ｍ０，Ｍ１，Ｎ０，Ｎ１は、ウィーナーフィルタタップの数を制御する複数のパラメータである。以下のリストの複数の変数Ｍ０，Ｍ１，Ｎ０，Ｎ１で複数の異なる設定をすることにより、フィルタは、対称フィルタまたは非対称フィルタ、１−Ｄフィルタまたは２−Ｄフィルタであってもよい。複数のパラメータＭ０，Ｍ１，Ｎ０，Ｎ１は、予め定められた複数の固定値に設定されてもよい。これらの複数の固定値は、エンコーダ及びデコーダの両方が複数の同一の値を用いることができるように、ビデオ符号化規格の仕様において提示され得る。代わりに、Ｍ０，Ｍ１，Ｎ０，Ｎ１は、いくつかの予め定められた候補値を有してもよい。次に、エンコーダは、ＲＤＯ基準に基づいて最良の候補を選択し、次に、用いられる候補を示すフラグをデコーダに送信することができる。
【００１４】
複数の係数Ｃｍ，ｎ及びオフセット値Ｏｆｆｓｅｔは、エンコーダ側で適応的に生成されてもよく、次に、復号のために、複数のビットストリームに符号化されてもよい。Ｃｍ，ｎ及びＯｆｆｓｅｔ値を生成する１つの方法は、Ｑ（ｘ，ｙ）及びＰ'（ｘ，ｙ）間における複数の歪みの二乗の合計を最小化することである。
【００１５】
複数のフィルタタップの微分を、以下に示す。簡単な説明のために、２ＤフィルタタップＣｍｎを１ＤフィルタタップＣｉにマッピングし、２Ｄ画素インデックス（ｘ，ｙ）を１Ｄ画素インデックス（ｉ）にマッピングすることができるものとする。入力画素Ｑ（ｋ）と、サイズＬ＋１かつ重量Ｃｉで、フィルタサポート｛Ｓ｝で復元されたマッピングされた画素Ｐ（ｋ）からなるウィーナーフィルタの出力Ｐ'（ｋ）とを考える。適応（ウィーナー）フィルタ関数は、以下の通りである。
【数２】
0006005292.tif 000003
［２］  入力画素Ｑ（ｉ）及びウィーナーフィルタリングされた画素Ｐ'（ｉ）の中の残留信号は、以下の通り定義される。
【数３】
0006005292.tif 000004
［３］  ウィーナーフィルタは、平均二乗誤差を複数のフィルタタップ｛Ｃｉ｝で最小化することにより最適となる。
【数４】
0006005292.tif 000005
［４］  ここで、Ｅ［］は、一連の複数の画像、画像又は画像内部のいくつかの領域からの複数の画素であり得る関心の複数の画素に対する残留信号の二乗の予測値である。
【数５】
0006005292.tif 000006
［５］  Ｅ［ｅｒｒｏｒｋ２］の最小値を導くために、導関数がＣｉに関してとられる。複数のフィルタタップは、導関数をゼロと等しくすることにより、導かれることができる。
【数６】
0006005292.tif 000007
［６］  自己相関関数Ｐ（ｋ）は、以下の式［７］で示され、Ｐ（ｋ）及びＱ（ｋ）の中の相互相関関数は、以下の式［８］で示される。
【数７】
0006005292.tif 000008
［７］
【数８】
0006005292.tif 000009
［８］  式［５］は、行列形式で書き直すことができる。
【数９】
0006005292.tif 000010
［９］  このように、ウィーナーフィルタタップセット｛Ｃ｝は、行列形式で導かれることができる。
【数１０】
0006005292.tif 000011
［１０］  ここで、ＲＰＰ−１は、式［９］の自己相関行列の逆行列である。Ｃｉは、取得後、Ｃｍｎに再びマッピングされることができる。次に、オフセットは、次式により計算されることができ、ここで、Ｎはヒストグラムビン内の複数の画素の数である。
【数１１】
0006005292.tif 000012
【００１６】
式［７］及び［１０］の複数の自己相関関数は、ビデオデコーダ側で集められることができるが、式［８］及び［１０］の相互相関は、入力｛ｘ｝がビデオエンコーダ側のみで得られるという要件により、ビデオエンコーダ側で導かれなければならない。このように、式［１０］で導かれた複数のフィルタタップを、ビデオエンコーダからビデオデコーダに送信する必要がある。
【００１７】
ビデオデコーダは、相互相関関数及び復号された非ブロック化されたデータ｛ｙ｝を自ら受信することにより、複数のフィルタタップを導くことができるため、いくつかの場合には、導かれた複数のフィルタタップの代わりに、相互相関関数を送信すれば十分である。
【００１８】
いくつかの場合には、画像境界に近い複数の画素を省略することによって符号化効率をさらに改善するために、より正確な統計情報が得られる場合がある。式［１０］の右側は、この省略の表現である。
【００１９】
複数のフィルタタップは、それぞれ、輝度あたり及び彩度チャネルあたり、導かれることができる。よりよい符号化効率は、彩度画素のみにより導かれた複数のフィルタタップに基づいて、彩度画像に対して達成される。いくつかのシナリオは、Ｃｂ及びＣｒのチャネルの両方に共有される１の彩度テーブルを用い、または、Ｃｂ及びＣｒのそれぞれに対する２の個別のテーブルを用いることができる。
【００２０】
このアプローチは、スケーラブルであり、かつ、複数の非ブロック化された画像を含み、適応フィルタリングされた画像に加え、動き予測のフェーズでリファレンス画像として機能するように、拡張されることができる。これにより、非ブロック化された画像は、常にビデオデコーダ側でアクセス可能であるため、追加の情報がビデオエンコーダ側から送信されることなく、動き予測の正確性を改善するために、複数のリファレンス画像の量が倍増する。
【００２１】
図４は、図２の遅延モジュールが、非ブロック化フィルタの後、適応フィルタの前に配置されることを示す。遅延のモジュールにより、複数の適応フィルタタップの生成が、バッファリストの複数のリファレンス画像に対する現在の入力画像に基づく各画像時間あたりで、再計算されることができる。このように、ビデオエンコーダは、各リファレンス画像に対する複数のフィルタタップを更新する。同様に、図５は、図３における遅延モジュールの再位置を示す。
【００２２】
図６は、入力ビデオ及び動き補償画像の中の最小平均二乗誤差の解決を得るために、動き補償画像の出力に追加された統計的特徴コレクタ及び適応フィルタの複数のモジュールを示す。これにより、いくつかの場合には、よりよい符号化効率が向上する。動き補償モジュール後のこの適応フィルタは、図２−５に示されるように、動き予測モジュール前の適応フィルタから独立している。このように、この適応フィルタは、図２−５の先頭でアドオンとして機能することもできる。
【００２３】
いくつかのシナリオでは、適応フィルタの符号化効率は、非ブロック化フィルタのみを適用する場合よりも良い。つまり、適応フィルタを適用して、コア符号化ループから非ブロック化フィルタを取り除くことができる。
【００２４】
グローバルウィーナーフィルタで画像をフィルタリングする場合、複数のフィルタ係数は、画像内の全ての画素により、学習する。この場合、フィルタリングにより、いくつかの画素の複数の歪みは減少するが、他の複数の画素の複数の歪みは増加する。このため、画像内の複数の画素の一部にウィーナーフィルタリングを実行するだけで、より多くの符号化利得が得られる。
【００２５】
１つの方法は、ヒストグラム分割により、複数の画素を複数のグループに分類し、次に、適応的に（ＲＤＯ基準に応じて）各ヒストグラムビンに対してウィーナーフィルタリングを実行することである。ヒストグラム分割は、複数の画素値を複数のビンに分割し、ここで、１のビンは、その値がそのビンにあてはまる複数の画素のグループである。ヒストグラムは、（統一的な又は非統一的な複数の方法を含む任意の種類のヒストグラム分割方法で）Ｎ個のビンに分割されると仮定する。次に、エンコーダは、フィルタリングする複数のビンを決定し、複数のフィルタリングパラメータ、すなわち、フィルタリングされた複数のビンとなり得る複数のビンに対する複数の係数Ｃｍ，ｎ及びＯｆｆｓｅｔを生成し、次に、関連情報をデコーダに送信することができる。
【００２６】
複数のヒストグラム分割方法を適用する場合、エンコーダは、現在の画像をフィルタするために用いられるＲＤＯ基準を決定し、次に決定結果をデコーダに送信することができる。エンコーダは、マルチタスク符号化（１の分割方法に対して１のパス）を行い、各パスに対するレート歪み（ＲＤ）コストを計算することができる。次に、最小ＲＤコストのパスが、最後の符号化のために用いられる。
【００２７】
図１を参照すると、位置（ｘ，ｙ）における復元されたフィルタリング前の画素値Ｐ（ｘ，ｙ）は、ヒストグラム分割方法１２ａ−ｋに与えられてもよい。この場合、複数のヒストグラム分割方法が適用され、それぞれが値に対して動作する。これにより、複数の適応フィルタ決定１４ａ−１４ｋに提供される複数の出力が生成される。位置（ｘ，ｙ）におけるエンコーダ入力画素値Ｑ（ｘ，ｙ）も、複数の適応フィルタ決定１４ａ−ｋに適用される。これらの複数の入力に基づいて、複数の適応フィルタ決定は、次に所望の結果を生成するヒストグラム分割方法決定１６に、値を出力する。適応フィルタ決定は、オフセットを有する適応ウィーナーフィルタを含む。
【００２８】
エンコーダ側と対照的にデコーダに関する図２を参照すると、値Ｐ（ｘ，ｙ）は、受信された方法によるヒストグラム分割ブロック１８に適用される。複数のヒストグラム分割方法が定義される場合、デコーダは、エンコーダに選択された分割方法を示すフラグを、エンコーダから受信する。方法フラグを受信した後、デコーダは、Ｐ（ｘ，ｙ）に対して、受信された方法によりヒストグラム分割を行うことができる。その出力は、フィルタリングの後の画素値Ｐ'（ｘ，ｙ）を出力するために、受信された複数のフィルタパラメータを有する、ヒストグラムの複数のビンに対する適応フィルタ２０に提供される。
【００２９】
図３は、システム７００の実施形態を示す。複数の実施形態では、システム７００は、メディアシステムであってもよいが、システム７００は、この内容に限定されない。例えば、システム７００は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレットまたはスマートテレビ）、モバイルインターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイスなどに組み込まれてもよい。
【００３０】
複数の実施形態では、システム７００は、ディスプレイ７２０に連結されるプラットフォーム７０２を備える。プラットフォーム７０２は、コンテンツサービスデバイス７３０またはコンテンツ配信デバイス７４０または他の同様の複数のコンテンツソースのようなコンテンツデバイスからコンテンツを受信してもよい。１つまたは複数のナビゲーション機能を備えるナビゲーションコントローラ７５０は、例えば、プラットフォーム７０２及び／またはディスプレイ７２０と情報をやりとりするために用いられてもよい。これらの複数のコンポーネントのそれぞれは、以下により詳細に説明される。
【００３１】
複数の実施形態では、プラットフォーム７０２は、チップセット７０５、プロセッサ７１０、メモリ７１２、ストレージ７１４、グラフィクスサブシステム７１５、複数のアプリケーション７１６、全地球測位システム（ＧＰＳ）７２１、カメラ７２３及び／または無線７１８の任意の組み合わせを備えてもよい。チップセット７０５は、プロセッサ７１０、メモリ７１２、ストレージ７１４、グラフィクスサブシステム７１５、複数のアプリケーション７１６及び／または無線７１８の中の相互通信を提供してもよい。例えば、チップセット７０５は、ストレージ７１４との相互通信を提供可能なストレージアダプタ（不図示）を含んでもよい。
【００３２】
さらに、プラットフォーム７０２は、オペレーティングシステム７７０を含んでもよい。プロセッサへのインターフェース７７２は、オペレーティングシステム及びプロセッサ７１０のインターフェースであってもよい。
【００３３】
ファームウェア７９０は、ブートシーケンスのような機能を実装するために提供されてもよい。ファームウェアがプラットフォーム７０２外から更新されることを可能にする更新モジュールが、提供されてもよい。例えば、更新モジュールは、複数の更新が必要な場合の決定を容易にするべく、更新の試みが真正なものであるか否かを決定し、ファームウェア７９０の最新の更新を特定するコードを含んでもよい。
【００３４】
いくつかの実施形態では、プラットフォーム７０２は、外部電源により電源供給されてもよい。いくつかの場合には、プラットフォーム７０２は、外部電源に適応しない複数の実施形態では、または、バッテリ供給電力又は外部供給電力のいずれかを許容する複数の実施形態では、電源として機能する内部バッテリ７８０をさらに含んでもよい。
【００３５】
図１及び２に示される複数のシーケンスは、少しの例を説明するために、ストレージ７１４内に、もしくはプロセッサ７１０またはグラフィクスサブシステム７１５内のメモリ内にこれらを組み込むことにより、ソフトウェア及びファームウェアの実施形態のかたちで実装されてもよい。一実施形態では、グラフィクスサブシステム７１５は、グラフィクスプロセッシングユニットを含んでもよく、プロセッサ７１０は、中央処理装置であってもよい。
【００３６】
プロセッサ７１０は、複合命令セットコンピュータ（ＣＩＳＣ）または縮小命令セットコンピュータ（ＲＩＳＣ）の複数のプロセッサ、複数のプロセッサ、マルチコアもしくは任意の他のマイクロプロセッサまたは中央処理装置（ＣＰＵ）と互換性を有するｘ８６命令セットとして実装されてもよい。複数の実施形態では、プロセッサ７１０は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサなどを備えてもよい。
【００３７】
メモリ７１２は、限定されるものではないが、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）またはスタティックＲＡＭ（ＳＲＡＭ）のような揮発性メモリデバイスとして実装されてもよい。
【００３８】
ストレージ７１４は、限定されるものではないが、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内部ストレージデバイス、外付けストレージデバイス、フラッシュメモリ、バッテリバックアップＳＤＲＡＭ  （シンクロナスＤＲＡＭ）及び／またはネットワークアクセス可能ストレージデバイスのような不揮発性記憶デバイスとして実装されてもよい。複数の実施形態では、例えば、複数のハードドライブが含まれる場合には、ストレージ７１４は、重要なデジタルメディアのために記憶性能が強化された保護を向上させる技術を備えてもよい。
【００３９】
グラフィクスサブシステム７１５は、表示のためのスチルまたはビデオのような複数の画像の処理を実行してもよい。グラフィクスサブシステム７１５は、例えば、グラフィクスプロセッシングユニット（ＧＰＵ）またはビジュアルプロセッシングユニット（ＶＰＵ）であってもよい。アナログまたはデジタルインターフェースは、グラフィクスサブシステム７１５及びディスプレイ７２０を通信可能に連結するために用いられてもよい。例えば、インターフェースは、高解像度マルチメディアインターフェース、ＤｉｓｐｌａｙＰｏｒｔ、ワイヤレスＨＤＭＩ（登録商標）及び／またはワイヤレスＨＤに準拠する複数の技術のいずれかであってもよい。グラフィクスサブシステム７１５は、プロセッサ７１０またはチップセット７０５に集積されることができる。グラフィクスサブシステム７１５は、チップセット７０５と通信可能に連結されるスタンドアロンのカードとされることができる。
【００４０】
本明細書に記載された複数のグラフィクス及び／またはビデオ処理技術は、様々な複数のハードウェアキテクチャのかたちで実装されてもよい。例えば、グラフィクス及び／またはビデオ機能性は、チップセット内に集積されてもよい。代わりに、個別のグラフィクス及び／またはビデオプロセッサが、用いられてもよい。さらに他の実施形態として、グラフィクス及び／またはビデオ複数の機能は、マルチコアプロセッサを含む汎用プロセッサによって実装されてもよい。さらなる実施形態では、複数の機能は、家庭用電子機器のかたちで実装されてもよい。
【００４１】
無線７１８は、様々な適した複数の無線通信技術を用いて、複数の信号の送受信が可能な１つまたは複数の無線を含んでもよい。そのような複数の技術は、１つまたは複数の無線ネットワークを介した複数の通信を伴ってもよい。例示的な複数の無線ネットワークは、（限定されるものではないが）複数のワイヤレスローカルエリアネットワーク（ＷＬＡＮ）、複数のワイヤレスパーソナルエリアネットワーク（ＷＰＡＮ）、複数のワイヤレスメトロポリタンエリアネットワーク（ＷＭＡＮ）、複数のセルラーネットワーク及び複数の衛星ネットワークを含む。そのような複数のネットワークを介した通信では、無線７１８は、任意のバージョンの１つまたは複数の適用し得る規格に従って、動作してもよい。
【００４２】
複数の実施形態では、ディスプレイ７２０は、任意のテレビ型モニタまたはディスプレイを備えてもよい。ディスプレイ７２０は、例えば、コンピュータディスプレイスクリーン、タッチスクリーンディスプレイ、ビデオモニタ、テレビ型デバイス及び／またはテレビを備えてもよい。ディスプレイ７２０は、デジタル及び／またはアナログであってもよい。複数の実施形態では、ディスプレイ７２０は、ホログラフィックディスプレイであってもよい。また、ディスプレイ７２０は、視覚的なビデオを受信し得る透明な面であってもよい。そのような複数のビデオは、様々な形の情報、複数の画像及び／または複数のオブジェクトを伝送してもよい。例えば、そのような複数のビデオは、モバイル拡張現実(MAR)アプリケーションのための視覚的オーバーレイであってもよい。１つまたは複数のソフトウェアアプリケーション７１６の制御下で、プラットフォーム７０２は、ディスプレイ７２０上にユーザインターフェース７２２を表示してもよい。
【００４３】
複数の実施形態では、コンテンツサービスデバイス７３０は、任意の国内、国際及び／または独立したサービスにより設けられ、そのため、例えば、インターネットを介してプラットフォーム７０２にアクセス可能であってもよい。コンテンツサービスデバイス７３０は、プラットフォーム７０２及び／またはディスプレイ７２０と連結されてもよい。プラットフォーム７０２及び／またはコンテンツサービスデバイス７３０は、ネットワーク７６０との間でメディア情報の通信（例えば、送信及び／または受信）を行うために、ネットワーク７６０と連結されてもよい。コンテンツ配信デバイス７４０も、プラットフォーム７０２及び／またはディスプレイ７２０と連結されてもよい。
【００４４】
複数の実施形態では、コンテンツサービスデバイス７３０は、デジタル情報及び／またはコンテンツを伝達可能なケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話、インターネット対応デバイスまたは電化製品、ならびに、ネットワーク７６０を介してまたは直接、複数のコンテンツプロバイダとプラットフォーム７０２及びディスプレイ７２０との間で、一方向または双方向にコンテンツを通信可能な任意の他の同様のデバイスを備えてもよい。コンテンツは、システム７００の複数のコンポーネント及びコンテンツプロバイダのいずれか１つとの間で、ネットワーク７６０を介して一方向及び／または双方向通信を行ってもよいことが理解されよう。コンテンツの複数の例は、例えば、ビデオ、音楽、医療及びゲーム情報などを含む任意のメディア情報を含んでもよい。
【００４５】
コンテンツサービスデバイス７３０は、メディア情報、デジタル情報及び／または他のコンテンツを含むケーブルテレビプログラムなどのコンテンツを受信する。複数のコンテンツプロバイダの複数の例は、任意のケーブルまたは衛星テレビまたはラジオまたはインターネットの複数のコンテンツプロバイダを含んでもよい。提供された複数の例は、本発明の複数の実施形態を限定することを意味するものではない。
【００４６】
複数の実施形態では、プラットフォーム７０２は、１つまたは複数のナビゲーション機能を有するナビゲーションコントローラ７５０から複数の制御信号を受信してもよい。コントローラ７５０の複数のナビゲーション機能は、例えば、ユーザインターフェース７２２と情報をやりとりするために用いられてもよい。複数の実施形態では、ナビゲーションコントローラ７５０は、ユーザによる空間的（例えば、連続的かつ多次元）データのコンピュータへの入力を可能にするコンピュータハードウェアコンポーネント（具体的には、ヒューマンインターフェースデバイス）であり得るポインティングデバイスであってもよい。複数のグラフィカルユーザインタフェース（ＧＵＩ）ならびに複数のテレビ及び複数のモニタのような多数のシステムにより、ユーザは、複数の身体的ジェスチャを用いて、コンピュータまたはテレビに対し、データを制御及び提供することができる。
【００４７】
コントローラ７５０の複数のナビゲーション機能の複数の動きは、ポインタ、カーソル、焦点リングまたはディスプレイ上に表示される他の複数の視覚的インジケータの複数の動きにより、ディスプレイ（例えば、ディスプレイ７２０）上に反映されてもよい。例えば、複数のソフトウェアアプリケーション７１６の制御下で、ナビゲーションコントローラ７５０上に位置する複数のナビゲーション機能は、例えば、ユーザインターフェース７２２上に表示される仮想的な複数のナビゲーション機能にマッピングされてもよい。複数の実施形態では、コントローラ７５０は、別個のコンポーネントではなく、プラットフォーム７０２及び／またはディスプレイ７２０に一体化されてもよい。複数の実施形態は、しかしながら、本明細書に示されまたは記載された複数の要素に、またはその内容の中で限定されるものではない。
【００４８】
複数の実施形態では、複数のドライバ（不図示）は、例えば、可能な場合には、複数のユーザが、初期起動後、ボタンをタッチすることにより、テレビのようにプラットフォーム７０２の電源を即座にオン及びオフすることを可能とする技術を備えてもよい。プログラムロジックによれば、プラットフォーム７０２は、プラットフォームが「オフ」にされる場合に、複数の媒体アダプタまたは他のコンテンツサービスデバイス７３０もしくはコンテンツ配信デバイス７４０に対して、コンテンツをストリーミングしてもよい。さらに、チップセット７０５は、例えば、５．１サラウンドサウンドオーディオ及び／または高解像度７．１サラウンドサウンドオーディオに対するハードウェア及び／またはソフトウェアサポートを備えてもよい。複数のドライバは、複数の集積グラフィクスプラットフォームのためのグラフィクスドライバを含んでもよい。複数の実施形態では、グラフィクスドライバは、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）エクスプレスグラフィクスカードを備えてもよい。
【００４９】
様々な実施形態において、システム７００に示される複数のコンポーネントの中のいずれか１つまたは複数は、一体化されてもよい。例えば、プラットフォーム７０２及びコンテンツサービスデバイス７３０は、一体化されてもよく、または、プラットフォーム７０２及びコンテンツ配信デバイス７４０は、一体化されてもよく、または、例えば、プラットフォーム７０２、コンテンツサービスデバイス７３０及びコンテンツ配信デバイス７４０は、一体化されてもよい。様々な実施形態において、プラットフォーム７０２及びディスプレイ７２０は、一体化されたユニットであってもよい。例えば、ディスプレイ７２０及びコンテンツサービスデバイス７３０は、一体化されてもよく、または、ディスプレイ７２０及びコンテンツ配信デバイス７４０は、一体化されてもよい。これらの複数の例は、本発明を限定することを意味するものではない。
【００５０】
様々な実施形態において、システム７００は、無線システム、有線システムまたは両方の組み合わせとして実装されてもよい。無線システムとして実装される場合、システム７００は、１つまたは複数のアンテナ、送信機、受信機、トランシーバ、増幅器、フィルタ、制御ロジックなどのような無線共有媒体経由の通信に適した複数のコンポーネント及び複数のインターフェースを含んでもよい。無線共有媒体の例は、ＲＦスペクトルなどのような無線スペクトルの一部を含んでもよい。有線システムとして実装される場合、システム７００は、複数の入出力（Ｉ／Ｏ）アダプタ、Ｉ／Ｏアダプタを対応する有線通信媒体に接続する複数の物理コネクタ、ネットワークインタフェースカード(NIC)、ディスクコントローラ、ビデオコントローラ、オーディオコントローラなどのような有線通信媒体経由の通信に適した複数のコンポーネント及び複数のインターフェースを含んでもよい。有線通信媒体の複数の例は、ワイヤ、ケーブル、複数の金属リード線、プリント回路基板（ＰＣＢ）、バックプレーン、スイッチファブリック、半導体材料、ツイストペアワイヤ、同軸ケーブル、光ファイバなどを含んでもよい。
【００５１】
プラットフォーム７０２は、情報を通信するために、１つまたは複数の論理チャネルまたは物理チャネルを確立してもよい。情報は、メディア情報及び制御情報を含んでもよい。メディア情報は、ユーザ向けコンテンツを表す任意のデータを指してもよい。コンテンツの複数の例は、例えば、音声会話、ビデオ会議、ストリーミングビデオ、電子メール（「ｅメール」）メッセージ、ボイスメールメッセージ、複数の英数字記号、グラフィクス、画像、ビデオ、テキストなどからのデータを含んでもよい。音声会話からのデータは、例えば、発話情報、複数の沈黙時間、バックグラウンドノイズ、コンフォートノイズ、複数のトーンなどであってもよい。制御情報は、自動化システム向けの複数のコマンド、命令または制御語を表す任意のデータを指してもよい。例えば、制御情報は、システムを介してメディア情報をルーティングし、または予め定められた態様でのメディア情報の処理をノードに命令するために用いられてもよい。複数の実施形態は、しかしながら、図３に示されまたは記載された複数の要素に、またはその内容の中で限定されるものではない。
【００５２】
上述のように、システム７００は、様々な複数の物理的スタイルまたは複数のフォームファクタで具現化されてもよい。図４は、システム７００が具現化され得る小さいフォームファクタのデバイス８００の複数の実施形態を示す。複数の実施形態では、例えば、デバイス８００は、複数の無線機能を有するモバイルコンピューティングデバイスとして実装されてもよい。モバイルコンピューティングデバイスは、処理システム及び、例えば、１つまたは複数のバッテリなどのモバイル電源または電力供給を有する任意のデバイスを指してもよい。
【００５３】
上述のように、モバイルコンピューティングデバイスの複数の例は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレットまたはスマートテレビ）、モバイルインターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイスなどを含んでもよい。
【００５４】
モバイルコンピューティングデバイスの複数の例は、リストコンピュータ、フィンガーコンピュータ、リングコンピュータ、眼鏡コンピュータ、ベルトクリップコンピュータ、アームバンドコンピュータ、複数の靴コンピュータ、複数の衣服コンピュータ及び他の複数のウェアラブルコンピュータのような、人に装着されるよう構成される複数のコンピュータを、さらに含んでもよい。複数の実施形態では、例えば、モバイルコンピューティングデバイスは、複数のコンピュータアプリケーション、複数の音声通信及び／または複数のデータ通信を実行可能なスマートフォンとして実装されてもよい。いくつかの実施形態は、例として、スマートフォンとして実装されるモバイルコンピューティングデバイスにより説明されてもよいが、複数の他の実施形態は、なお他の複数のワイヤレスモバイルコンピューティングデバイスを用いて実装されてもよいことが理解されよう。複数の実施形態は、この内容に限定されない。
【００５５】
図４に示されるように、デバイス８００は、ハウジング８０２、ディスプレイ８０４、入出力（Ｉ／Ｏ）デバイス８０６及びアンテナ８０８を備えてもよい。デバイス８００は、複数のナビゲーション機能８１２をさらに備えてもよい。ディスプレイ８０４は、モバイルコンピューティングデバイスに適した情報を表示するために、任意の適したディスプレイユニットを備えてもよい。Ｉ／Ｏデバイス８０６は、モバイルコンピューティングデバイスに情報を入力するために、任意の適したＩ／Ｏデバイスを備えてもよい。Ｉ／Ｏデバイス８０６の複数の例は、英数字キーボード、テンキーパッド、タッチパッド、複数の入力キー、複数のボタン、複数のスイッチ、複数のロッカースイッチ、複数のマイク、複数のスピーカ、音声認識デバイス及びソフトウェアなどを含んでもよい。情報は、さらにマイクを用いて、デバイス８００に入力されてもよい。そのような情報は、音声認識デバイスによりデジタル化されてもよい。複数の実施形態は、この内容に限定されない。
【００５６】
様々な複数の実施形態は、複数のハードウェア要素、複数のソフトウェア要素または両方の組み合わせを用いて実装されてもよい。複数のハードウェア要素の複数の例は、複数のプロセッサ、複数のマイクロプロセッサ、複数の回路、複数の回路要素（例えば、複数のトランジスタ、複数の抵抗、複数のキャパシタ、複数のインダクタなど）、複数の集積回路、複数の特定用途向け集積回路（ＡＳＩＣ）、複数のプログラム式論理デバイス（ＰＬＤ）、複数のデジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複数の論理ゲート、複数のレジスタ、半導体デバイス、複数のチップ、複数のマイクロチップ、複数のチップセットなどを含んでもよい。ソフトウェアの複数の例は、複数のソフトウェアコンポーネント、複数のプログラム、複数のアプリケーション、複数のコンピュータプログラム、複数のアプリケーションプログラム、複数のシステムプログラム、複数の機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、複数のソフトウェアモジュール、複数のルーチン、複数のサブルーチン、複数の機能、複数の方法、複数のプロシージャ、複数のソフトウェアインターフェース、複数のアプリケーション・プログラム・インターフェース（ＡＰＩ）、複数の命令セット、演算コード、コンピュータコード、複数のコードセグメント、複数のコンピュータ・コード・セグメント、複数の単語、複数の値、複数の記号またはこれらの任意の組み合わせを含んでもよい。実施形態が複数のハードウェア要素及び／または複数のソフトウェア要素を用いて実装されるか否かの決定は、望ましい演算速度、複数の電力レベル、複数の耐熱性、処理サイクル予算、複数の入力データレート、複数の出力データレート、複数のメモリリソース、複数のデータバススピード及び他の設計または複数の性能制約のような任意の数の要因に従って変化してもよい。
【００５７】
少なくとも１つの実施形態の１つまたは複数の態様は、プロセッサ内の様々なロジックを表し、機械によって読み取られた場合に、本明細書に記載された複数の技術を実行するためのロジックを機械に作成させる、機械可読媒体に記憶された複数の表現命令によって実装されてもよい。「ＩＰコア」として知られるそのような複数の表現は、有形の機械可読媒体に記憶され、様々な複数の顧客または実際にロジックまたはプロセッサを作成する複数の製造機械に読み込まれるべく、複数の製造設備に供給されてもよい。
【００５８】
様々な複数の実施形態は、複数のハードウェア要素、複数のソフトウェア要素または両方の組み合わせを用いて実装されてもよい。複数のハードウェア要素の複数の例は、複数のプロセッサ、複数のマイクロプロセッサ、複数の回路、複数の回路要素（例えば、複数のトランジスタ、複数の抵抗、複数のキャパシタ、複数のインダクタなど）、複数の集積回路、複数の特定用途向け集積回路（ＡＳＩＣ）、複数のプログラム式論理デバイス（ＰＬＤ）、複数のデジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複数の論理ゲート、複数のレジスタ、半導体デバイス、複数のチップ、複数のマイクロチップ、複数のチップセットなどを含んでもよい。ソフトウェアの複数の例は、複数のソフトウェアコンポーネント、複数のプログラム、複数のアプリケーション、複数のコンピュータプログラム、複数のアプリケーションプログラム、複数のシステムプログラム、複数の機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、複数のソフトウェアモジュール、複数のルーチン、複数のサブルーチン、複数の機能、複数の方法、複数のプロシージャ、複数のソフトウェアインターフェース、複数のアプリケーション・プログラム・インターフェース（ＡＰＩ）、複数の命令セット、演算コード、コンピュータコード、複数のコードセグメント、複数のコンピュータ・コード・セグメント、複数の単語、複数の値、複数の記号またはこれらの任意の組み合わせを含んでもよい。実施形態が複数のハードウェア要素及び／または複数のソフトウェア要素を用いて実装されるか否かの決定は、望ましい演算速度、複数の電力レベル、複数の耐熱性、処理サイクル予算、複数の入力データレート、複数の出力データレート、複数のメモリリソース、複数のデータバススピード及び他の設計または複数の性能制約のような任意の数の要因に従って変化する。
【００５９】
少なくとも１つの実施形態の１つまたは複数の態様は、プロセッサ内の様々なロジックを表し、機械によって読み取られた場合に、本明細書に記載された複数の技術を実行するためのロジックを機械に作成させる、機械可読媒体に記憶された複数の表現命令によって実装されてもよい。「ＩＰコア」として知られるそのような複数の表現は、有形の機械可読媒体に記憶され、様々な複数の顧客または実際にロジックまたはプロセッサを作成する複数の製造機械に読み込まれるべく、複数の製造設備に供給されてもよい。
【００６０】
本明細書に記載された複数のグラフィクス処理技術は、様々な複数のハードウェアキテクチャのかたちで実装されてもよい。例えば、グラフィクス機能性は、チップセット内に集積されてもよい。代わりに、個別のグラフィクスプロセッサが、用いられてもよい。さらに他の実施形態として、複数のグラフィクス機能は、マルチコアプロセッサを含む汎用プロセッサによって実装されてもよい。
【００６１】
以下の複数の節及び／または複数の例は、複数のさらなる実施形態に関する。例示的な一実施形態は、ビデオ符号化のために、オフセットを有するウィーナーフィルタを用いて、ヒストグラムの複数のビンを適応的にフィルタリングする方法であってもよい。他の例示的な実施形態は、複数のビンの複数の分割方法を用いてもよい。方法は、ヒストグラムを複数のビンに均等に分割する段階をさらに含んでもよい。方法は、ヒストグラムを複数のビンに適応的に分割する段階をさらに含んでもよい。方法は、エンコーダからデコーダに対して、複数のビンの数を送信する段階を含んでもよい。方法は、レート歪み最適化基準に基づいて、分割方法を特定する段階を含んでもよい。方法は、ある位置における入力画素の値と、その位置におけるフィルタリングの後の画素値との間で、複数の歪みの二乗の合計を最小化することにより、複数の適応フィルタ係数を生成する段階をさらに含んでもよい。
【００６２】
他の例示的な実施形態は、ビデオ符号化のためにヒストグラムの複数のビンを適応的にフィルタリングする、オフセットを有するウィーナーフィルタを用いるために、コンピュータによって実行される複数の命令を記憶する段階を備える少なくとも１つまたは複数のコンピュータ可読媒体であってもよい。例示的な一実施形態は、複数のビンの複数の分割方法を用いるために、複数の命令をさらに記憶する段階であってもよい。媒体は、ヒストグラムを複数のビンに分割する複数の命令をさらに記憶してもよい。媒体は、ヒストグラムを複数のビンに適応的に分割する複数の命令をさらに記憶してもよい。媒体は、エンコーダからデコーダに対して、複数のビンの数を送信する複数の命令をさらに記憶してもよい。媒体は、レート歪み最適化基準に基づいて、分割方法を特定する複数の命令をさらに記憶してもよい。媒体は、位置における入力画素の値と、その位置におけるフィルタリングの後の画素値との間で、複数の歪みの二乗の合計を最小化することにより、複数の適応フィルタ係数を生成する複数の命令をさらに記憶してもよい。
【００６３】
他の例示的な実施形態は、オフセットを有するウィーナーフィルタと、フィルタを用いてヒストグラムの複数のビンを適応的にフィルタリングするために、フィルタに連結されるプロセッサとを備える装置であってもよい。装置は、複数のビン分割を用いてもよい。装置は、ヒストグラムを複数のビンに均等に分割してもよい。装置は、ヒストグラムを複数のビンに適応的に分割してもよい。装置は、エンコーダと、エンコーダに連結されるデコーダとを含んでもよく、プロセッサは、エンコーダからデコーダに対して、複数のビンの数を送信する。装置は、レート歪み最適化基準に基づいて、分割方法を特定するプロセッサをさらに含んでもよい。装置は、位置における入力画素の値と、その位置における後の画素値との間で、複数の歪みの二乗の合計を最小化することにより、複数の適応フィルタ係数を生成するプロセッサを含んでもよい。装置は、オペレーティングシステム、バッテリ及びファームウェアならびにファームウェアを更新するためのモジュールをさらに含んでもよい。
【００６４】
本明細書に記載された複数のグラフィクス処理技術は、様々な複数のハードウェアキテクチャのかたちで実装されてもよい。例えば、グラフィクス機能性は、チップセット内に集積されてもよい。代わりに、個別のグラフィクスプロセッサが、用いられてもよい。さらに他の実施形態として、複数のグラフィクス機能は、マルチコアプロセッサを含む汎用プロセッサによって実装されてもよい。
【００６５】
本明細書中で「一実施形態」または「実施形態」という語は、その実施形態に関連して説明された特定の機能、構造または特性が、本発明内に含まれる少なくとも１つの実装に含まれることを意味する。このように、「一実施形態」または「実施形態では」という用語の複数の出現は、必ずしも同一の実施形態を指すものではない。さらに、複数の特定の機能、複数の構造または複数の特性は、示された特定の実施形態以外の他の適した複数の形で設けられてもよく、全てのそのような複数の形は、本願の特許請求の範囲内に含まれてもよい。
【００６６】
本発明は、限定的な数の実施形態に関して説明されたものであり、当業者であれば、そこから多数の修正及び変形が理解される。添付された特許請求の範囲は、本発明の真の趣旨および範囲に属する全ての複数の修正及び複数の変形を包含することが意図されている。
【図１】
0006005292.tif 000013
【図２】
0006005292.tif 000014
【図３】
0006005292.tif 000015
【図４】
0006005292.tif 000016