(57)【要約】符号化マルチメディア・ビデオのためのシステムおよび方法が説明される。ビデオが符号化されるように、量子化パラメータは、各マクロブロックのために選択される。ここに説明されるように、各マクロブロックの量子化パラメータは、特定の可能な量子化パラメータ値に全ての可能な量子化パラメータの領域を限定することによって選択され得る。これは、各ビデオ・マクロブロックのためにテストされる量子化パラメータの数を低減することにより、ビデオ符号化の速度を増加させる。
2011514056.tif 000002
【特許請求の範囲】
【請求項１】
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択するように構成された量子化モジュールと、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックの前記最適な量子化をもたらす前記範囲内に量子化パラメータを決定するように構成されたモジュールと；
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化ビデオのためのシステム。
【請求項２】
量子化パラメータを決定するように構成された前記モジュールは、前のモーション探索のキャッシュを備える、請求項１に記載のシステム。
【請求項３】
量子化パラメータを決定するように構成された前記モジュールは、イントラ・モード決定結果のキャッシュを備える、請求項１に記載のシステム。
【請求項４】
前記記憶装置は、ダイナミック・メモリを備える、請求項１に記載のシステム。
【請求項５】
前記記憶装置は、ハード・ディスクを備える、請求項１に記載のシステム。
【請求項６】
前記量子化パラメータの範囲は、少なくとも予測された量子化パラメータの前記値に基づいて選択される、請求項１に記載のシステム。
【請求項７】
前記予測された量子化パラメータは、少なくとも以前決定された量子化パラメータの前記値に基づいて選択される、請求項６に記載のシステム。
【請求項８】
前記以前決定された量子化パラメータは、先行するマクロブロックのための前記量子化パラメータである、請求項７に記載のシステム。
【請求項９】
前記以前決定された量子化パラメータは、少なくとも２つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、請求項７に記載のシステム。
【請求項１０】
前記以前決定された量子化パラメータは、少なくとも３つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、請求項７に記載のシステム。
【請求項１１】
前記以前決定された量子化パラメータは、少なくとも４つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される請求項７に記載のシステム。
【請求項１２】
前記以前決定された量子化パラメータは、１つ以上の近隣マクロブロック・パラメータを使用することを決定し、１つ以上の近隣のマクロブロックがない状態で、デフォルトの量子化パラメータ値を使用する、請求項７に記載のシステム。
【請求項１３】
全ての可能な量子化パラメータ値は、近隣のマクロブロックが利用可能でない場合に使用される、請求項７に記載のシステム。
【請求項１４】
前記モジュールは、各ブロックのために前記以前決定された量子化パラメータを格納するバッファを備える、請求項７に記載のシステム。
【請求項１５】
前記システムは、携帯電話である、請求項１に記載のシステム。
【請求項１６】
前記マクロブロックの前記最適な量子化は、前記マクロブロックのための最低のレート歪みコストを備える、請求項１に記載のシステム。
【請求項１７】
マクロブロックを備えるビデオ・フレームを受信するための手段と、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択するための手段と、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックの前記最適な量子化をもたらす前記範囲内に前記量子化パラメータを決定するための手段と、
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化するための手段と、
を備える符号化ビデオのためのシステム。
【請求項１８】
量子化パラメータを決定するための手段は、前のモーション探索のキャッシュを備える、請求項１７に記載のシステム
【請求項１９】
量子化パラメータを決定するための前記手段は、イントラ・モード決定結果のキャッシュを備える、請求項１７に記載のシステム。
【請求項２０】
前記ビデオ・フレームを受信する手段は、電子機器を備える請求項１７に記載のシステム。
【請求項２１】
前記記憶装置は、コンピュータ・メモリである請求項２０に記載のシステム。
【請求項２２】
前記量子化パラメータの範囲は、少なくとも前記予測された量子化パラメータの値に基づいて選択される、請求項１７に記載のシステム。
【請求項２３】
前記予測された量子化パラメータは、少なくとも以前決定された量子化パラメータの前記値に基づいて選択されることを特徴とする請求項２２のシステム。
【請求項２４】
前記以前決定された量子化パラメータは、先行するマクロブロックのための前記量子化パラメータである、請求項２３に記載のシステム。
【請求項２５】
前記以前決定された量子化パラメータは、少なくとも２つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、請求項２３に記載のシステム。
【請求項２６】
前記以前決定された量子化パラメータは、少なくとも３つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、請求項２３に記載のシステム。
【請求項２７】
前記以前決定された量子化パラメータは、少なくとも４つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、請求項２３に記載のシステム。
【請求項２８】
前記以前決定された量子化パラメータは、１つ以上の近隣マクロブロック・パラメータを使用することを決定し、１つ以上の近隣のマクロブロックがない状態で、デフォルトの量子化パラメータ値を使用する、請求項２３に記載のシステム。
【請求項２９】
全ての可能な量子化パラメータ値は、近隣のマクロブロックが利用可能でない場合に使用される、請求項２３に記載のシステム。
【請求項３０】
前記選択手段は、量子化パラメータ最適化モジュールの少なくとも一部を備える、請求項１７に記載のシステム。
【請求項３１】
前記決定手段は、量子化パラメータ最適化モジュールの少なくとも一部を備える、請求項１７に記載のシステム。
【請求項３２】
前記マクロブロックを符号化する手段は、ビデオ符号器を備える、請求項１７に記載のシステム。
【請求項３３】
前記マクロブロックの前記最適な量子化は、前記マクロブロックのための最低のレート歪みコストを備える、請求項１７に記載のシステム。
【請求項３４】
量子化のためのマクロブロックを備えるビデオ・フレームを受信することと、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択することと、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックのための最低の歪み値をもたらす前記範囲内に前記量子化パラメータを決定することと、
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化することと、
を備える符号化ビデオのための方法。
【請求項３５】
前記量子化パラメータを決定する前記ステップは、前のモーション探索をキャッシュに入れる前記ステップを含む、請求項３４に記載の方法。
【請求項３６】
前記量子化パラメータを決定する前記ステップは、イントラ・モード決定結果をキャッシュに入れる前記ステップを含む、請求項３４に記載の方法。
【請求項３７】
前記量子化パラメータの範囲は、少なくとも予測された量子化パラメータの前記値に基づいて選択される、請求項３４に記載の方法。
【請求項３８】
少なくとも以前決定された量子化パラメータの前記値に基づいて前記予測された量子化パラメータを選択するステップをさらに備える、請求項３７に記載の方法。
【請求項３９】
前記以前決定された量子化パラメータは、先行するマクロブロックのための前記量子化パラメータである、請求項３８に記載の方法。
【請求項４０】
前記以前決定された量子化パラメータは、少なくとも２つの近隣マクロブロック、少なくとも３つの近隣マクロブロック、あるいは少なくとも４つの近隣マクロブロックのうちの１つの前記量子化パラメータの前記平均を少なくとも使用して決定される、請求項３８に記載の方法。
【請求項４１】
前記以前決定された量子化パラメータは、１つ以上の近隣マクロブロック・パラメータを使用することを決定し、１つ以上の近隣のマクロブロックがない状態で、デフォルトの量子化パラメータ値を使用する、請求項３８の方法。
【請求項４２】
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
以前のモーション探索をキャッシュに入れるように構成された量子化モジュールと、
前記キャッシュに入れられた以前のモーション探索の少なくとも１つの少なくとも一部分に基づいて、前記マクロブロックの前記最適な量子化をもたらす量子化パラメータを決定するように構成されたモジュールと、
前記決定された量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化ビデオのためのシステム。
【請求項４３】
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
イントラモード決定結果をキャッシュに入れるように構成された量子化モジュールと、
前記キャッシュに入れられたイントラモード決定結果の少なくとも１つの少なくとも一部分に基づいて、前記マクロブロックの前記最適な量子化をもたらす量子化パラメータを決定するように構成されたモジュールと、
前記決定された量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化のためのシステム。
【請求項４４】
量子化のためのマクロブロックを備えるビデオ・フレームを受信することと、
前記マクロブロックを量子化するために量子化パラメータの範囲を選択することと、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックのための最低の歪み値をもたらす前記範囲内に前記量子化パラメータを決定することと、
前記決定した量子化パラメータを使用して前記マクロブロックを符号化することと、
を備える方法を行うために実行されるのに適したコンピュータ可読プログラム・コードを備える、
コンピュータ可読媒体。
【発明の詳細な説明】
【関連出願】
【０００１】
本出願は、２００８年２月２２日に出願された米国仮特許出願第６１／０３０，８５７号の優先権を主張し、この仮出願は、ここに参照によって明白に組み込まれる。
【技術分野】
【０００２】
本実施形態は、マルチメディア画像処理に関する。特に、これらの実施形態は、ビデオ符号器のデジタル・ビデオのデジタル・ビット・レートおよび圧縮品質を適応的に制御するためのシステムおよび方法に関する。
【背景技術】
【０００３】
デジタル・ビデオの能力は、デジタル・テレビ、デジタル・直接衛星放送システム、ワイヤレス通信デバイス、携帯情報端末（ＰＤＡ）、ラップトップ・コンピュータ、デスクトップ・コンピュータ、デジタル・カメラ、デジタル・レコーディング・デバイス、携帯電話または衛星無線電話、およびこれらと同様なものを含む広範囲のデバイスに組み込まれ得る。これらおよび他のデジタル・ビデオ・デバイスは、フル・モーション・ビデオ・シーケンスを作成し、修正し、送信し、格納し、記録し、再生する従来のアナログ・ビデオ・システムを超える著しい改善を提供することができる。
【０００４】
多くの異なるビデオ符号化標準は、デジタル・ビデオ・シーケンスを通信するために確立されている。ＭＰＥＧ（Ｔｈｅ  Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）は、例えば、ＭＰＥＧ−１、ＭＰＥＧ−２およびＭＰＥＧ−４を含む多くの標準を作成している。他の符号化標準は、Ｈ．２６１／Ｈ．２６３、ＭＰＥＧ１／２／４および最新のＨ．２６４／ＡＶＣを含む。
【０００５】
ビデオ符号化標準は、圧縮された方法でデータを符号化することによってさらに高い伝送レートを達成する。圧縮は、画像フレームの有効な送信のために送信される必要のあるデータの全量を低減することができる。Ｈ．２６４標準は、例えば、圧縮なしで達成できるより狭い帯域幅上でビデオおよび画像伝送を容易にするために画像およびビデオ圧縮技術を利用する。特に、Ｈ．２６４標準は、フレーム間圧縮を提供するために、時間的相関またはフレーム間相関と呼ばれる、連続する画像フレーム間の類似点を利用するビデオ符号化技法を組み込む。フレーム間圧縮技法は、画像フレームのピクセルベースの表現をモーション表現に変換することによってフレームにわたってデータ冗長性を有効に使用する。さらに、ビデオ符号化技法は、画像フレーム内の空間相関がさらに圧縮されることができるフレーム内部の圧縮を達成するために、空間相関またはフレーム間相関と呼ばれる、画像フレーム内の類似性を利用し得る。フレーム内部の圧縮は、典型的に空間予測および離散コサイン変換（ＤＣＴ）符号化のような静止画像を圧縮するための従来のプロセスに基づく。
【０００６】
圧縮技法をサポートするために、多くのデジタル・ビデオ・デバイスは、デジタル・ビデオ・シーケンスを圧縮するための符号器およびデジタル・ビデオ・シーケンスを解凍するための復号器を含む。多くの場合において、符号器と復号器は、ビデオ画像シーケンスを定義するフレーム内のピクセルのブロック上で動作する、統合された符号器／復号器（ＣＯＤＥＣ）を含む。Ｈ．２６４標準において、例えば、送信デバイスの符号器は、より小さい画像ブロックを備えるマクロブロックに送信されるために通常、ビデオ画像フレームを分割する。画像フレームの各マクロブロックのために、符号器は、最も類似するマクロブロックを識別するための隣接ビデオ・フレームのマクロブロックを探索し、基準フレームからのマクロブロックが符号化のために使用されたかを示すモーション・ベクトルとともに、送信のためのマクロブロック間の差分を符号化する。受信デバイスの復号器は、モーション・ベクトルおよび符号化された差分を受信し、ビデオ・シーケンスを生成するために、モーション補償を実行する。
【０００７】
マクロブロック間の差分は、変換され、量子化される。量子化パラメータ（ＱＰ）は、量子化を実行するために使用され、ひいては制御ビット・レートを決定することになり、フレーム品質が回復する。より高いＱＰを使用する量子化は、より低いビット・レートおよびより低い品質に対応する。より低いＱＰを使用する量子化は、より高いビット・レートおよびより高い品質に対応する。ＱＰを調節することによって、異なるビット・レートおよび品質の程度が実現され得る。
【発明の概要】
【０００８】
いくつかの実施形態において、ビデオを符号化するためのシステムが供給される。なお、このシステムは、記憶装置を備え、記憶装置は、マクロブロックを順々に  備えるビデオ・フレームを備える。さらにシステムは、マクロブロックを量子化するための様々な範囲の量子化パラメータを選択するように構成された量子化モジュールと、なお、その範囲は、可能な量子化パラメータのサブセットである；マクロブロックの最適な量子化をもたらす範囲内に量子化パラメータを決定するように構成されたプロセッサと；決定された量子化パラメータを使用してマクロブロックを符号化するように構成された符号器と；を含む。
【０００９】
ある実施形態において、ビデオを符号化するためのシステムは、量子化のためのマクロブロックを含むビデオ・フレームを受信するための手段と；マクロブロックを量子化するための様々な範囲の量子化パラメータを選択するための手段と、なお、この範囲は、可能な量子化パラメータのサブセットである；マクロブロックのための最適な量子化値をもたらす範囲内に量子化パラメータを決定するための手段と；決定した量子化パラメータを使用してマクロブロックを符号化するための手段と；を備える。
【００１０】
ある実施形態において、ビデオを符号化するための方法が供給され、その方法は：量子化のためのマクロブロックを備えるビデオ・フレームを受信することと；マクロブロックを量子化するための様々な範囲の量子化パラメータ選択することと、なお、その範囲は、可能な量子化パラメータのサブセットである；マクロブロックに対する最低歪み値をもたらす範囲内に量子化パラメータを決定することと；決定した量子化パラメータを使用してマクロブロックを符号化することと；を備える。
【００１１】
ある実施形態において、コンピュータ可読媒体が提供され、そのコンピュータ可読媒体は、方法を実行するために適したコンピュータ可読プログラム・コード備え、その方法は：量子化のためのマクロブロック備えるビデオ・フレームを受信することと；マクロブロックの量子化のための様々な範囲の量子化パラメータを選択することと、なお、その範囲は、可能な量子化パラメータのサブセットである；マクロブロックに対する最低歪み値をもたらす範囲内に量子化パラメータを決定することと；決定された量子化パラメータを使用してマクロブロックを符号化することと；を備える。開示された実施形態の特徴、目的および利点は、参照する特徴が全体を通じて対応的に識別されるような図面との結合が包含される場合、以下で説明する詳細な説明からさらに明らかになるだろう。
【図面の簡単な説明】
【００１２】
【図１】図１は、発明の１つの実施形態内で使用されるような符号化ソース・デバイスおよび復号化受信デバイスのトップレベルのブロック図である。
【図２】図２は、本発明の実施形態に記述されるようなＱＰ最適化モジュールを実施する発明の１つの実施形態内のソース・デバイスの回路図である。
【図３】図３は、ＱＰ最適化モジュールが利用される符号化システムを例証する一般的なブロック図である。
【図４】図４は、量子化パラメータを使用するブロック符号化プロセスのブロック図である。
【図５】図５は、ＱＰ最適化モジュールの動作フローの回路図である。
【発明を実施するための形態】
【００１３】
発明の実施形態は、ユーザに表示されることになるマルチメディア・ビデオを符号化するためのシステムおよび方法を含む。１つの実施形態において、本システムおよび方法は、ビデオを圧縮するための符号化されたデータ転送速度を制御するのに適している。ある場合において、ビデオは、表示されるための受信機にワイヤレスでまたは有線ネットワークを通じて送信される。ビデオを圧縮する１つのステップは、送信されたビデオ・データを量子化することに関連する。量子化は、より小さく、扱いやすい形式にデータ・サイズを低減するように量子化パラメータ（ＱＰ）によってデータ・サビデオ・データを分割することを含む。全てのビデオ・データのセグメントが同じ情報量を含んでいるとは限らないので、ビデオの異なるセグメントは、異なるＱＰで異なって量子化され得る。所定のセクションに対して選択されたＱＰが小さ過ぎる場合、圧縮データは、よい品質になるだろうが、高い程度で圧縮されないだろう。データが受信機に送信される場合、これは高いビット・レートの生成につながる。反対に、選択されたＱＰが大き過ぎる場合、データは、高い程度で圧縮されビットレートは、送信するためにより小数のビットがあるように低減されることになる。しかしながら、各フレームが、ＱＰがより小さかった場合より比較的少数のビットによって表わされるので、送信されているビデオ・フレームの品質は、比較的低くなるだろう。１つの実施形態において、発明は、ビデオの所定のスライスのためのはやく且つ正確に適切なＱＰのためのシステムおよび方法を提供する。特に、発明の実施形態は、所定のデータのブロックのための最適なＱＰを含みそうな範囲を選択するための合理的な手段を提供する。
【００１４】
マクロブロックのための適切なＱＰを決定するための１つの方法は、「総当りの（ｂｒｕｔｅ−ｆｏｒｃｅ）」方法である。総当りの実施は、ＱＰ値を使用して同じマクロブロックを複数回符号化し、最小のコーディング・コストを提供するＱＰ値として最適なＱＰを選択すること、を備える。異なるコスト基準は、特定のマクロブロックのための適切なＱＰを決定するために使用され得る。１つのコスト測定は、レートと歪みの組み合わせとして表わされるレート歪みコストとして知られている、  
Ｃ＝Ｄ＋λＲ
ここで、Ｄは、当初のビデオ・ブロックと量子化したことによって再構成されたビデオ・ブロックとの間の歪みであり、Ｒは、入力ビデオ・ブロックを符号化するために使用されるレート（ビットの数）であり、λは、固定パラメータである。歪みＤとレートＲの両方は、１）ＱＰが当初のビデオ・ブロックと（より高いＱＰは、より大きな歪みを意味する）再構成されたビデオ・ブロックとの間の歪みの度合いに直接影響し；２）（より高いＱＰは、より小さいビット・レートを意味する）量子化剰余係数を符号化するために必要とされるビットの数に直接関連する；ようなＱＰの関数である。１つの可能な実施形態において、λは、同様にＱＰに依存し、以下の式を備え得る：  
λｍｏｄｅ＝０．８５＊  ２（ＱＰ−１２）／３
アプリケーションに依存して、この式内の係数は、歪みにわたるビット・レートの重要性を明確にするために変更されることになる。例えばここで、ＱＰが増加すると共にビット・レートは、最適な値を選択する際の所定の増加に関連する。
【００１５】
結果として、コストＣもＱＰの関数であり、Ｃ＝Ｃ（ＱＰ）となる。ＱＰ値の範囲を与える現在のマクロブロックについて多数回符号化した後、マクロブロックのための最良のＱＰは、以下のように選ばれ得る：  
ＱＰｏｐｔ＝ａｒｇ  ｍｉｎ（Ｃ（ＱＰ））
ここに説明されるような１つの改善は、サーチ範囲内でＱＰの各々のための歪みを計算する場合、指定されたＱＰのためのデフォルト・モーション推定量をキャッシュし、このキャッシュされたモーション推定量を使用することである。潜在的なＱＰのコストのより少ない正確な測定をもたらすが、このキャッシングは、モーション推定が潜在的なＱＰそれぞれのために繰り返し計算される必要がないので、相当な時間を節約する。  
インター・モード決定：
実施形態は、マクロブロックＱＰ決定プロセスの符号化速度を増加させる技法を意図する。例えば、インター・モードが考慮される場合、モード決定の間（符号器がマクロブロックのために多くの可能なコーディング・モードの中で最良のコーディング・モードを選ぶ場合）に、モーション探索は、（両方ともコスト・メトリックを最適化することに関する）最適なマクロブロック・パーティションおよび各パーティションのための最適なモーション・ベクトルを決定するために実行される。マクロブロックが（エンドユーザによって与えられる、またはデバイスのための品質制御仕様書によって決定され得る）名目上のＱＰのために符号化される場合に限り、符号器はモーション探索を実行し、モーション検索結果を格納し得る。１つの実施形態において、符号器は、再びモーション探索を起動する代わりに、（マクロブロックＱＰの異なる値で）後の符号化ラウンド内で保存されたモーション情報を検索する。これは、高価および時間のかかるプロセスである、モーション探索が各マクロブロックのために一度だけ実施されることを保証する。さらに最適なマクロブロックＱＰを決定するために必要とされる符号化時間をさらに低減するために、以下の追加の技法が使用され得る：  
イントラ・モード決定
インターコード化スライス（つまり、Ｐ−スライスあるいはＢ−スライス）において、イントラ符号化モード（空間的予測）およびインター符号化モード（時間的な予測）は、両方とも許可される。したがって、Ｐ−スライスおよびＢ−スライス・マクロブロックのためのモード決定の間、さらに、イントラ符号化モードが考慮され得る。イントラ・モードは、通常、現在のフレームおよび／またはシーン変更において新規のオブジェクトを表わすマクロブロックのために選ばれる。しかしながら、インター・モード決定（ここで、モーション検索結果は、マクロブロックＱＰの値によって著しい影響を受けない）と比較して、イントラ・モード決定は、マクロブロックＱＰの値に依存する。例えば、Ｈ．２６４／ＡＶＣに関して、４つのイントラ符号化モード、イントラ４ｘ４、イントラ８ｘ８、イントラ１６ｘ１６およびＩＰＣＭが許可される：前者２つのモードにおいて、マクロブロックは、より小さなブロック（４ｘ４または８ｘ８）に分割され、ラスタ・スキャン・オーダに連続して予測される。したがって、マクロブロックＱＰが変化する場合、再構成されたブロックは、マクロブロック内の次のブロックのための予測およびモード決定に影響を及ぼして変化することになる。最適なスキームにおいて、イントラ・モード決定は、異なるＱＰを使用して繰り返されるべきである。しかしながら、これは、長い符号化時間を被る。イントラ・モード決定をスピード・アップするために、１つのＱＰ値のみが使用され得る。インター・モード決定に類似して、（予測モードを含む）イントラ・モード決定の結果は、異なるＱＰ値と共に後の符号化ラウンド内で格納され再度使用され得る。これは、非最適化イントラ・モード決定による性能損失が発生するが、通常、インター・スライス（Ｐ−スライスあるいはＢ−スライス）内のマクロブロックの限定された割合のみがイントラ符号化されるので、影響は、限られて残り得る。この非最適化イントラ・モード決定の影響をさらに限定するために、符号器は、ノーマルＱＰでモードを決定している間に、インター符号化モードのかわりにイントラ符号化モードが現在のマクロブロックのための最良の符号化モードであるために選択される場合および場合のみ、異なるＱＰ値のために複数回イントラ・モード決定を実行することを決定し得る。  
ＱＰ範囲制限：
通常、近隣マクロブロックは、空間的に相関している。これは、近隣マクロブロックのための最適なＱＰ値が通常、類似していることを意味する。その既に符号化された近隣のものに対する最適なＱＰ値に依存して、最適なＱＰのためのマクロブロックの探索範囲は、ある制限に服従され得る。以下の偽のコードは、これらの制約の１つの可能な実施を提供する：
【数１】
2011514056.tif 000003
【００１６】
上記の偽コードがビデオ・フレーム／スライスの境界上に位置するマクロブロックに対して特定の条件を提供することに注意するべきである。これらの境界マクロブロックについて、それら１つ以上の近隣するものは、利用可能ではない。様々な方法は、例えば、この条件：１）ＱＰ予測因子を計算する場合に利用できない近隣するもののためにデフォルトのフレーム／スライス・レベルＱＰを使用することと；２）デルタＱＰ値の全範囲をテストすることと；を説明するために使用されることができる。オプション２）は、より広い範囲内で最適なＱＰ値を探索するために、境界マクロブロックを許可することによって非境界マクロブロックのための遅いスタート問題を緩和する長所を有する。
【００１７】
複数の方法は、近隣ＱＰに基づいてＱＰ予測因子を計算するために使用され得る。例えば、左およびトップの近隣するものの平均ＱＰが使用され得る。代替として、左、トップおよび左上の近隣するものの平均ＱＰが使用され得る。代替として、左、トップ、左上および右上の近隣するものの平均ＱＰが使用され得る。様々な組み合わせは、マクロブロックが符号化される次数に応じて可能である。
【００１８】
現在のＱＰ値がＱＰ予測因子に似ているかどうか決定するための異なる方法は、異なるタイプのスライスに対して使用され得る。例えば、［ＱＰｐｒｅｄ−２、ＱＰｐｒｅｄ＋１］の範囲は、Ｐ−スライス・マクロブロック上で適用されるが、［ＱＰｐｒｅｄ−１、ＱＰｐｒｅｄ＋２］の範囲は、Ｂスライス・マクロブロック上で適用され得る。
【００１９】
ＱＰ探索範囲に対する条件付きの制限は、各マクロブロックのために実行される符号化ラウンドの数を低減するための助けとなるため、符号化プロセスをスピード・アップする。しかしながら、課された制限は、網羅的な探索と比較して、ある性能損失を生じ得る。性能損失は、（Ｈ．２６４／ＡＶＣのＩＤＲまたは瞬間復号器リフレッシュ画像としても知られる）次のランダム・アクセス・ポイントに遭遇するまでに、Ｉ−スライスおよびＰ−スライスのレート歪み性能が現在の画像のグループ（ＧＯＰ）を超えて伝播されることになるような、Ｉ−スライスおよびＰスライスのマクロブロックに対してより厳しくなり得る。したがって、代案は、Ｉ−スライスおよびＰ−スライス・マクロブロックに対する条件付きＱＰ制限を緩めるあるいは適用しないことである。
【００２０】
図１は、ソース・デバイス１０１が受信デバイス１０２に通信リンク１０９にわたってビデオ・データの符号化シーケンスを送信する例示のシステム１００を例証するブロック図である。ソース・デバイス１０１および受信デバイス１０２は、両方ともデジタル・ビデオ・デバイスである。特に、ソース・デバイス１０１は、上記に議論されたものを含む、様々な画像圧縮標準のうちの任意の１つを使用してビデオ・データを符号化し送信する。通信リンク１０９は、無線リンク、物理的な伝送線、ローカルエリア・ネットワーク、広域ネットワークあるいはインターネットのようなグローバル・ネットワークのようなパケットベースのネットワーク、公衆交換電話網（ＰＳＴＮ）、または様々なリンクおよびネットワークの組み合わせを含み得る。言い換えれば、通信リンク１０９は、ソース・デバイス１０１から受信デバイス１０２にビデオ・データを送信するために、任意の適切な通信媒体、または場合により一群の異なるネットワークおよびリンクを表わし得る。
【００２１】
ソース・デバイス１０１は、ビデオ・データを符号化し送信することができる任意のデジタル・ビデオ・デバイスであり得る。例えば、ソース・デバイス１０１は、デジタル・ビデオ・シーケンスを格納するためのメモリ１０３、シーケンスを符号化するためのビデオ符号器１０４、および通信リンク１０９を通じて符号化されたシーケンスを送信するための送信機１０５を含み得る。メモリ１０３は、ハード・ディスク上のダイナミック・メモリあるいは記憶装置のようなコンピュータ・メモリを含み得る。受信デバイス１０２は、ビデオ・データを受信し復号化することができる任意のデジタル・ビデオ・デバイスであり得る。例えば、受信デバイス１０２は、符号化されたデジタル・ビデオ・シーケンスを受信するための受信機１０８、シーケンスを復号化するための復号器１０７、およびユーザにシーケンスを表示するためのディスプレイ１０６を含み得る。
【００２２】
ソース・デバイス１０１および受信デバイス１０２のための例示のデバイスは、コンピューター・ネットワーク上に配置されたサーバ、ワークステーションあるいは他のデスクトップ・コンピューティング・デバイス、およびラップトップ・コンピュータのようなモバイル・コンピューティング・デバイスを含む。他の例は、携帯電話、デジタル・テレビ、デジタル・カメラ、デジタル・ビデオ・カメラあるいは他のデジタル記録デバイス、ビデオ機能を有するセル方式の無線電話機および衛星無線電話機のようなデジタル・ビデオ電話、他のワイヤレス・ビデオ・デバイスおよびこれらに類似するもの、のような受信デバイスおよびデジタル・テレビ放送システムを含む。
【００２３】
いくつかの場合において、ソース・デバイス１０１および受信デバイス１０２の各々は、デジタル・ビデオ・データを符号化し復号化するための符号器／復号器（ＣＯＤＥＣ）（示されていない）を含む。その場合において、ソース・デバイスおよび受信デバイスの両方は、送信機および受信機と同様にメモリおよびディスプレイを含み得る。以下で概要が説明される符号化技法の多くは、符号器を含むデジタル・ビデオ・デバイスのコンテキスト内で説明される。しかしながら、符号器がＣＯＤＥＣの一部を形成し得ることが理解される。
【００２４】
ソース・デバイス１０１は、例えば、ビデオ・データを圧縮したフォーマットに符号化するためにビデオ画像のシーケンス内のピクセルのブロック上で作動する符号器１０４を含む。例えば、ソース・デバイス１０１の符号器１０４は、多くのより小さな画像ブロックを備えるマクロブロックに送信されるようにビデオ画像フレームを分割し得る。画像フレーム内の各マクロブロックについて、ソース・デバイス１０１の符号器１０４は、類似のマクロブロックを識別するために既に送信された先行しているビデオ・フレーム（あるいは後のビデオ・フレーム）のためにメモリ１０３に格納されたマクロブロックを探索し、符号化のために使用された以前のフレームからマクロブロックを識別するモーション・ベクトルと共にマクロブロック間の相違点を符号化する。ソース・デバイス１０１は、計算数を低減し電力を節約するために符号化プロセスの間の様々なタスクあるいは反復の終了をもたらすことができるプログラム可能なしきい値をサポートし得る。
【００２５】
受信デバイス１０２の受信機１０８は、モーション・ベクトルおよび符号化されたビデオ・データを受信する。また、復号器１０７は、ディスプレイ１０６を介してユーザに表示するためのビデオ・シーケンスを生成するためにモーション補償技法を実行する。当業者は、復号化されたデータを表示するよりはむしろ、データを格納し、データを再フォーマットし、あるいは復号化されたデータの再送信することを含むことが利用される様々な他のアクションを利用することを、容易に認識することになる。さらに、受信デバイス１０２の復号器１０７は、符号器／復号器（ＣＯＤＥＣ）として実装され得る。その場合において、ソース・デバイスおよび受信デバイスは、デジタル・ビデオ・シーケンスを符号化、送信、受信、および復号化することができ得る。
【００２６】
図２は、ここに説明された技法に従ってデジタル・ビデオ・シーケンスを圧縮する、ビデオ符号器２０３を組み込む、例示のソース・デバイス１０１を説明するブロック図である。典型的なデジタル・ビデオ・デバイス１０１は、モバイル・コンピューティング・デバイス、携帯情報端末（ＰＤＡ）、ワイヤレス通信デバイス、無線電話、およびそれらに類似のもののような、ワイヤレス・デバイスとして説明される。しかしながら、この開示における技法は、ワイヤレス装置に制限されず、非ワイヤレス・デバイスを含む他のデジタル・ビデオ・デバイスに容易に適用され得る。
【００２７】
図２の例において、デジタル・ビデオ・デバイス１０１は、送信機２０２およびアンテナ２０１を介して圧縮されたデジタル・ビデオ・シーケンスを送信するよう構成される。ビデオ符号器２０３は、送信する前にビデオ・シーケンスを符号化し、ビデオ・メモリ・ストレージ２０５内に符号化されたデジタル・ビデオ・シーケンスをバッファする。さらに、メモリ・ストレージ２０５は、符号化プロセスの間にビデオ符号器２０３によって使用するためのコンピュータ可読命令およびデータを格納し得る。メモリ２０５は、同期型ダイナミック・ランダム・アクセス・メモリ（ＳＤＲＡＭ）、ハード・ディスク、フラッシュ・メモリ、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）またはそれらに類似するものを備え得る。ビデオ・フレーム２０４は、符号化するためにメモリ２０５から抽出される。詳細に以下で説明されるように、ビデオ符号器２０３は、ビデオ符号器２０３によって実行されたビデオ符号化を最適化するように構成されるＱＰ最適化モジュール（ＱＰＯＭ）２０６を実装する。ＱＰＯＭ２０６は、符号化プロセスの間に符号器２０３によってどのパラメータが使用されるか決定する命令を有することによってビットレート制御を容易にする。
【００２８】
ＱＰＯＭを組み込む典型的なデータ圧縮システム３００は、図３で説明される。ビデオ信号３０５は、圧縮に向けてプリプロセッサ３０１に最初に伝えられる。プリプロセッサ３０１は、様々な目的を果たす、あるいは完全にシステムから除外され得る。プリプロセッサ３０１は、例えば、圧縮システムによってより簡単に処理されるコンポーネントにビデオ信号３０５をフォーマットし得る。プリプロセッサ３０１の出力は、符号器３０２に伝えられる。符号器３０２は、受信したデータを量子化し、次に量子化係数を圧縮する。実行された量子化は、ＱＰＯＭ３０３からのフィードバック量子化パラメータ３０７に依存する。同時に、符号器３０２およびＱＰＯＭ３０３は、符号化システム３０８あるいはＣＯＤＥＣを備え得る。ＱＰＯＭ３０３は、ビデオの次のセグメントを符号化するための量子化パラメータを適応的にセットするためにビデオの現在の符号化されたセグメントを特徴付ける統計を利用する。符号化されているビデオのための量子化パラメータを適応的にセッティングするプロセスは、より詳細に以下に説明される。一旦データが量子化されたならば、データは、送信のための出力ビット・ストリーム３０６をフォーマットするフォーマッタ３０４に送られる。フォーマッタ３０４は、レート制御されたデータを受け取り、通信チャネルを経由して送信するためのフォーマットされたビット・ストリームにデータを組み立てる。そうする際に、フォーマッタ３０４は、データに補足情報を付加し得る。例えば、ブロックの開始、フレームの開始、ブロック数、フレーム数、および量子化情報の信号表示は、フォーマッタ３０４によってデータ信号に付加され得る。
【００２９】
ブロックベースのビデオ・コーディングは、Ｈ．２６１／Ｈ．２６３、ＭＰＥＧ１／２／４および最新のＨ．２６４／ＡＶＣのようなビデオ・コーディング標準で広く使用される。ブロックベースのビデオ・コーディング・システムにおいて、インプット・ビデオ・フレームは、ブロック−バイ−ブロック（ｂｌｏｃｋ−ｂｙ−ｂｌｏｃｋ）により処理される。一般に使用されたブロック・サイズは、マクロブロックとしても知られている、１６ｘ１６である。図４は、ブロックベースのビデオ符号化の１つの例のブロック図を示す。当業者は、追加の特徴があり得ることを容易に認識するだろう。図４は、符号器の動作およびＱＰのその使用の一般化された概観を提供する。データ４０１の各入力ビデオ・ブロックについて、システムは、予測ブロック４１３を生成する。予測ブロック４１３は、空間予測（既に近隣するものが使用している同じフレーム内の予測）あるいは時間予測（構造にわたる予測）のいずれかを実行し、後の符号化プロセス４１７で使用され得る予測モジュール４１０によって形成される。その後、残余ブロック４０２は、フレーム４０１からの対応する当初ビデオ・ブロックの値から予測ブロックの値を引くことによって計算される。その後、残余ブロック４０２は、例えば、残余ブロック４０２についての離散コサイン変換（ＤＣＴ）を実行する変換モジュール４０３を通過する。変換に続いて、残余ブロックは、量子化モジュール４０４で選択された量子化パラメータを使用して量子化される。量子化された変換係数のセット４０５は、その後、符号化ビット・ストリーム４０９として送信される前に、係数スキャニング・モジュールで１次元ベクトルにスキャンされ、エントロピー符号化モジュール４０８でエントロピー符号化される。
【００３０】
ブロック４１６によって示されるように、量子化パラメータは、ブロックを量子化するためにのみ使用されるのではなく、量子化効率を決定するためにも使用される。残余ブロック４１４は、量子化された残余ブロックを逆量子化４１６および逆変換４１５することによって再構成される。この再構成されたブロック４１２は、その後格納４１１され、この特定のブロックのための効率を決定するだけでなく、将来のブロックの後の予測４１８のためも使用される。
【００３１】
図５は、ＱＰＯＭ３０３の動作プロセス５００の１つの可能な実施形態についての一般化されたフローチャート図を示す。プロセス５００は、第１のマクロブロックを受信することによって開始状態５０１で始まる。第１のマクロブロックについて、ＱＰのための予測値は、デフォルトの方法、例えば、総当りの最適化探索によって決定され得る。総当りの最適化探索は、（以前に議論されたように）それぞれのためのコスト・メトリックを提供し、最適なコスト・メトリックを生成するＱＰを選択する、全ての可能なＱＰ値にわたって繰り返すことを備える。当業者は、ビデオ信号の統計的特性に基づくデフォルト、あるいはグローバル予測のような、ビデオ信号の統計的最初に予測されたＱＰを選択するために存在する様々な代替の方法を認識するだろう。−これらの代替の方法の任意の１つは、結果のＱＰが相応な量子化を提供する限り十分であろう。後のマクロブロックについて、プロセス５００は、近隣するＱＰあるいは以前の最適なＱＰに基づいて予測ＱＰを選択し得る。現在のマクロブロックが構造の角にある場合、つまり、近隣するものが利用できない場合、代替の隣接するものあるいはデフォルト値が予測ＱＰのために利用され得る。一旦予測されたＱＰが選択されたならば、プロセス５００は、状態５０２で評価するためにＱＰの範囲を識別する。プロセス５００は、範囲内の各ＱＰの効率を決定するためにコスト・メトリックを適用するＱＰ範囲の間中繰り返す。以上で説明されるように、コスト・メトリックは、レート歪みコストを含み得る。一旦最適なＱＰが決定されたならば、プロセス５００は、状態５０６においてスライス・ヘッダに予測されたＱＰを挿入する。これは、システムによってこのマクロブロックの後の量子化のために使用されるＱＰになるだろう。その後、プロセス５００は、決定状態５０３においてより多くのマクロブロックが処理するために利用可能かどうか決定する。マクロブロックが利用可能である場合、プロセスは、状態５０８において次のマクロブロックを続ける。マクロブロックが利用可能でない場合、プロセスは、終了状態５０９において終了するだろう。
【００３２】
通常、選択された範囲は、予測ＱＰより小さい整数オフセット、および予測ＱＰより大きい整数オフセット（つまり、＋／−３）によって拡張されることになる。しかしながら、選択された範囲は、ＱＰをより上回るまたはより下回るバイアスが掛けられ、量子化されているフレームのタイプに基づき得る。Ｈ．２６４、例えば、Ｉ、ＰあるいはＢフレームを含む。ＩとＰのフレームは、画像情報を復元するために、Ｂフレーム以外のフレームによってより頻繁に参照される。従って、ＩとＰのフレームは、情報が失われないように、通常、量子化されるべきでない。従って、ＩまたはＰフレームを認識する上で、ＱＰＯＭは、より低い、より低いＱＰ、つまり、２未満の予測ＱＰかつ１より大きいＱＰに基づいて範囲を代わりに選択し得る。これは、最適なＱＰが予測ＱＰより低い機会を増加させることになる。対照的に、上向きのバイアスが望ましいという場合、つまり、高いビットレートを要求するシステムにおいて、品質の軽視をもたらすことになる。
【００３３】
したがって、符号化ビデオのための新規かつ改良された方法及び装置は、説明される。当業者は、ここに説明された実施形態に関連して様々な実例となる論理ブロック、モジュール、回路、およびアルゴリズム・ステップは、電子機器、コンピュータ・ソフトウェア、または両方の組み合わせとして実施され得る。様々な実例となるコンポーネント、ブロック、モジュール、回路およびステップは、それらの機能性の点から一般に記述されている。機能性は、特定のアプリケーションに依存し、且つ全体のシステムに課された設計制約のあるハードウェアであろうとソフトウェアであろうと実施される。当業者は、これらの状況の下のハードウェアおよびソフトウェアの互換性を認め、各特定のアプリケーションのための説明された機能性を実施するためにどれが最良かを評価する。例示として、ここに開示された実施形態に関して説明される、様々な実例となる論理ブロック、モジュール、回路、アルゴリズム・ステップは、デジタル・シグナル・プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル・ゲート・アレイ（ＦＰＧＡ）あるいは他のプログラム可能な論理回路、個別のゲートあるいはトランジスタ・ロジック、例えば、レジスタおよびＦＩＦＯのような、個別のハードウェア・コンポーネント、ファームウェアの命令のセットを実行するプロセッサ、任煮の従来のプログラム可能なソフトウェア・モジュールおよびプロセッサ、あるいはそれらの任意の組み合わせで実施されるあるいは実行され得る。プロセッサは、マイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラあるいはステート・マシンであることができる。ソフトウェア・モジュールは、ＲＡＭメモリ、フラッシュ・メモリ、ＲＯＭメモリ、レジスタ、ハード・ディスク、リムーバブル・ディスク、ＣＤ−ＲＯＭあるいは技術的に既知の記憶メディアの他の形式で存在することができる。当業者は、さらに、上記説明の全体にわたって参照され得る、データ、命令、コマンド、情報、信号、ビット、シンボルおよびチップが電圧、電流、電磁波、磁界あるいは磁性粒子、光場あるいは光子、またはこれらの任意の組み合わせによって表わされることを理解することができる。
【００３４】
好ましい実施形態の以前の説明は、当業者が開示された実施形態を行うまたは使用することを可能にするために提供される。これらの実施形態に対する様々な修正は、当業者に容易に明白になるだろうし、ここに定義された一般的な原理は、発明の才能を使用しない他の実施形態に適用され得る。したがって、示された実施形態は、ここに示された実施形態に制限されたようには意図されず、ここに示された原理および新規な特徴と一致する最も広い範囲を許容する。
【図１】
2011514056.tif 000004
【図２】
2011514056.tif 000005
【図３】
2011514056.tif 000006
【図４】
2011514056.tif 000007
【図５】
2011514056.tif 000008
【手続補正書】
【提出日】平成22年10月25日(2010.10.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
前記マクロブロックとして同じビデオ・フレーム内の前記マクロブロックの複数の近隣マクロブロックのための量子化パラメータを決定し、
前記近隣マクロブロックのための前記量子化パラメータの平均を決定し、
前記近隣マクロブロックのための前記量子化パラメータの前記平均に基づいて予測された量子化パラメータを選択し、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択する、なお、前記範囲は、予測された量子化パラメータの前記値に基づく、
ように構成された量子化モジュールと、
前記マクロブロックの前記最適な量子化をもたらす前記範囲内に量子化パラメータを決定するように構成されたモジュールと；
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化ビデオのためのシステム。
【請求項２】
量子化パラメータを決定するように構成された前記モジュールは、前のモーション探索のキャッシュを備える、請求項１に記載のシステム。
【請求項３】
量子化パラメータを決定するように構成された前記モジュールは、イントラ・モード決定結果のキャッシュを備える、請求項１に記載のシステム。
【請求項４】
前記記憶装置は、ダイナミック・メモリを備える、請求項１に記載のシステム。
【請求項５】
前記記憶装置は、ハード・ディスクを備える、請求項１に記載のシステム。
【請求項６】
前記量子化パラメータを決定することは、前記範囲内に各量子化パラメータの効率を決定するためにコスト・メトリックを適用する前記範囲の間中繰り返す事を備える、請求項１に記載のシステム。
【請求項７】
前記コスト・メトリックは、レート歪みコストを備える、請求項６に記載のシステム。
【請求項８】
前記範囲は、さらにビデオ・フレームの前記タイプに基づく、請求項１に記載のシステム。
【請求項９】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、２つの近隣マクロブロックの前記量子化パラメータの前記平均を使用して決定される、請求項１に記載のシステム。
【請求項１０】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、３つの近隣マクロブロックの前記量子化パラメータの前記平均を使用して決定される、請求項１に記載のシステム。
【請求項１１】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、４つの近隣マクロブロックの前記量子化パラメータの前記平均を使用して決定される請求項１に記載のシステム。
【請求項１２】
１つ以上の近隣のマクロブロックがない状態で、前記予測された量子化パラメータは、デフォルトの量子化パラメータ値に基づいて選択される、請求項１に記載のシステム。
【請求項１３】
全ての可能な量子化パラメータ値は、近隣のマクロブロックが利用可能でない場合に、前記予測されたパラメータの前記選択に使用される、請求項１に記載のシステム。
【請求項１４】
前記モジュールは、前記近接マクロブロックの各々のための前記量子化パラメータを格納するバッファを備える、請求項７に記載のシステム。
【請求項１５】
前記システムは、携帯電話である、請求項１に記載のシステム。
【請求項１６】
前記マクロブロックの前記最適な量子化は、前記マクロブロックのための最低のレート歪みコストを備える、請求項１に記載のシステム。
【請求項１７】
マクロブロックを備えるビデオ・フレームを受信するための手段と、
前記マクロブロックとして同じビデオ・フレーム内の前記マクロブロックの複数の近接マクロブロックのための量子化パラメータを決定するための手段と、
前記近接マクロブロックのための前記量子化パラメータの平均を決定するための手段と、
前記近接マクロブロックのための前記量子化パラメータの前記平均に基づいて予測された量子化パラメータを選択するための手段と、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択するための手段と、なお、前記範囲は、前記予測された量子化パラメータの前記値に基づく、
前記マクロブロックの前記最適な量子化をもたらす前記範囲内に前記量子化パラメータを決定するための手段と、
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化するための手段と、
を備える符号化ビデオのためのシステム。
【請求項１８】
量子化パラメータを決定するための手段は、前のモーション探索のキャッシュを備える、請求項１７に記載のシステム
【請求項１９】
量子化パラメータを決定するための手段は、イントラ・モード決定結果のキャッシュを備える、請求項１７に記載のシステム。
【請求項２０】
前記ビデオ・フレームを受信する手段は、電子機器を備える請求項１７に記載のシステム。
【請求項２１】
前記記憶装置は、コンピュータ・メモリである請求項２０に記載のシステム。
【請求項２２】
前記量子化パラメータを決定するための手段は、前記範囲内に各量子化パラメータの前記効率を決定するためにコスト・メトリックを適用する前記範囲の間中繰り返すための手段を含む、請求項１７に記載のシステム。
【請求項２３】
前記コスト・メトリックは、レート歪みコストを備える、請求項２２のシステム。
【請求項２４】
前記範囲は、さらにビデオ・フレームの前記タイプに基づく、請求項１７に記載のシステム。
【請求項２５】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、２つの近隣マクロブロックの前記量子化パラメータの前記平均を使用して決定される、請求項１７に記載のシステム。
【請求項２６】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、３つの近隣マクロブロックの前記量子化パラメータの前記平均を使用して決定される、請求項１７に記載のシステム。
【請求項２７】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、４つの近隣マクロブロックの前記量子化パラメータの前記平均を使用して決定される、請求項１７に記載のシステム。
【請求項２８】
１つ以上の近隣のマクロブロックがない状態で、前記予測された量子化パラメータは、デフォルトの量子化パラメータ値に基づいて選択される、請求項１７に記載のシステム。
【請求項２９】
全ての可能な量子化パラメータ値は、近隣のマクロブロックが利用可能でない場合に前記予測された量子化パラメータの選択に使用される、請求項１７に記載のシステム。
【請求項３０】
前記マクロブロックを量子化するための量子化パラメータの前記範囲を選択するための手段は、量子化パラメータ最適化モジュールの少なくとも一部を備える、請求項１７に記載のシステム。
【請求項３１】
前記量子化パラメータを決定するための手段は、量子化パラメータ最適化モジュールの少なくとも一部を備える、請求項１７に記載のシステム。
【請求項３２】
前記マクロブロックを符号化する手段は、ビデオ符号器を備える、請求項１７に記載のシステム。
【請求項３３】
前記マクロブロックの前記最適な量子化は、前記マクロブロックのための最低のレート歪みコストを備える、請求項１７に記載のシステム。
【請求項３４】
量子化のためのマクロブロックを備えるビデオ・フレームを受信することと、
前記マクロブロックとして同じビデオ・フレーム内の前記マクロブロックの複数の近接マクロブロックのための量子化パラメータを決定することと、
前記近接マクロブロックのための前記量子化パラメータの平均を決定することと、
前記近接マクロブロックのための前記量子化パラメータの前記平均に基づいて予測された量子化パラメータを選択することと、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択することと、なお、前記範囲は、前記予測された量子化パラメータの前記値に基づく、
前記マクロブロックのための最低の歪み値をもたらす前記範囲内に前記量子化パラメータを決定することと、
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化することと、
を備える符号化ビデオのための方法。
【請求項３５】
前記量子化パラメータを決定する前記ステップは、前のモーション探索をキャッシュに入れる前記ステップを含む、請求項３４に記載の方法。
【請求項３６】
前記量子化パラメータを決定する前記ステップは、イントラ・モード決定結果をキャッシュに入れる前記ステップを含む、請求項３４に記載の方法。
【請求項３７】
前記量子化パラメータを決定する前記ステップは、前記範囲内に各量子化パラメータの前記効果を決定するためにコスト・メトリックを適用する前記範囲の間中繰り返すステップを含む、請求項３４に記載の方法。
【請求項３８】
前記コスト・メトリックは、レート歪みコストを備える、請求項３７に記載の方法。
【請求項３９】
前記範囲は、さらに前記ビデオ・フレームの前記タイプに基づく、請求項３４に記載の方法。
【請求項４０】
前記近接するマクロブロックのための前記量子化パラメータの前記平均は、２つの近隣マクロブロック、３つの近隣マクロブロック、あるいは４つの近隣マクロブロックのための前記量子化パラメータの前記平均を使用して決定される、請求項３８に記載の方法。
【請求項４１】
１つ以上の近隣のマクロブロックがない状態で、前記予測された量子化パラメータは、デフォルトの量子化パラメータ値に基づいて選択される、請求項３８の方法。
【請求項４２】
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
前のモーション探索をキャッシュに入れ、
前記マクロブロックとして同じビデオ・フレーム内の前記マクロブロックの複数の近隣マクロブロックのための量子化パラメータを決定し、
前記近隣マクロブロックのための前記量子化パラメータの平均を決定し、
前記近隣マクロブロックのための前記量子化パラメータの前記平均に基づいて予測された量子化パラメータを選択し、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択し、なお、前記範囲は、前記予測された量子化パラメータの前記値に基づく、
ように構成された量子化モジュールと
前記キャッシュに入れられた以前のモーション探索の少なくとも１つの少なくとも一部分に基づいて、前記マクロブロックの前記最適な量子化をもたらす前記範囲内に量子化パラメータを決定するように構成されたモジュールと、
前記決定された量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化ビデオのためのシステム。
【請求項４３】
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
イントラモード決定結果をキャッシュに入れ、
前記マクロブロックとして同じビデオ・フレーム内の前記マクロブロックの複数の近隣マクロブロックのための量子化パラメータを決定し、
前記近隣マクロブロックのための前記量子化パラメータの平均を決定し、
前記近接マクロブロックのための前記量子化パラメータの平均に基づいて予測された量子化パラメータを選択し、
前記近隣マクロブロックのための前記量子化パラメータの前記平均に基づいて予測された量子化パラメータを選択する、なお、前記範囲は、前記予測された量子化パラメータの前記値に基づく
ように構成された量子化モジュールと、
前記キャッシュに入れられたイントラモード決定結果の少なくとも１つの少なくとも一部分に基づいて、前記マクロブロックの前記最適な量子化をもたらす前記範囲内に量子化パラメータを決定するように構成されたモジュールと、
前記決定された量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化のためのシステム。
【請求項４４】
量子化のためのマクロブロックを備えるビデオ・フレームを受信することと、
前記マクロブロックとして同じビデオ・フレーム内の前記マクロブロックの複数の近接マクロブロックのための量子化パラメータを決定することと、
前記近接マクロブロックのための前記量子化パラメータの平均を決定することと、
前記近接マクロブロックのための前記量子化パラメータの前記平均に基づいて予測された量子化パラメータを選択することと、
前記マクロブロックを量子化するために量子化パラメータの範囲を選択することと、なお、前記範囲は、前記予測された量子化パラメータの前記値に基づく、
前記マクロブロックのための最低の歪み値をもたらす前記範囲内に前記量子化パラメータを決定することと、
前記決定した量子化パラメータを使用して前記マクロブロックを符号化することと、
を備える方法を行うためにコンピュータ上で実行されるのに適したコンピュータ可読プログラム・コードを備える、
コンピュータ可読媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
好ましい実施形態の以前の説明は、当業者が開示された実施形態を行うまたは使用することを可能にするために提供される。これらの実施形態に対する様々な修正は、当業者に容易に明白になるだろうし、ここに定義された一般的な原理は、発明の才能を使用しない他の実施形態に適用され得る。したがって、示された実施形態は、ここに示された実施形態に制限されたようには意図されず、ここに示された原理および新規な特徴と一致する最も広い範囲を許容する。
以下に本願出願の当初の特許請求の範囲について記載された発明を付記する。
［１］
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択するように構成された量子化モジュールと、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックの前記最適な量子化をもたらす前記範囲内に量子化パラメータを決定するように構成されたモジュールと；
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化ビデオのためのシステム。
［２］
量子化パラメータを決定するように構成された前記モジュールは、前のモーション探索のキャッシュを備える、［１］に記載のシステム。
［３］
量子化パラメータを決定するように構成された前記モジュールは、イントラ・モード決定結果のキャッシュを備える、［１］に記載のシステム。
［４］
前記記憶装置は、ダイナミック・メモリを備える、［１］に記載のシステム。
［５］
前記記憶装置は、ハード・ディスクを備える、［１］に記載のシステム。
［６］
前記量子化パラメータの範囲は、少なくとも予測された量子化パラメータの前記値に基づいて選択される、［１］に記載のシステム。
［７］
前記予測された量子化パラメータは、少なくとも以前決定された量子化パラメータの前記値に基づいて選択される、［６］に記載のシステム。
［８］
前記以前決定された量子化パラメータは、先行するマクロブロックのための前記量子化パラメータである、［７］に記載のシステム。
［９］
前記以前決定された量子化パラメータは、少なくとも２つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、［７］に記載のシステム。
［１０］
前記以前決定された量子化パラメータは、少なくとも３つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、［７］に記載のシステム。
［１１］
前記以前決定された量子化パラメータは、少なくとも４つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される［７］に記載のシステム。
［１２］
前記以前決定された量子化パラメータは、１つ以上の近隣マクロブロック・パラメータを使用することを決定し、１つ以上の近隣のマクロブロックがない状態で、デフォルトの量子化パラメータ値を使用する、［７］に記載のシステム。
［１３］
全ての可能な量子化パラメータ値は、近隣のマクロブロックが利用可能でない場合に使用される、［７］に記載のシステム。
［１４］
前記モジュールは、各ブロックのために前記以前決定された量子化パラメータを格納するバッファを備える、［７］に記載のシステム。
［１５］
前記システムは、携帯電話である、［１］に記載のシステム。
［１６］
前記マクロブロックの前記最適な量子化は、前記マクロブロックのための最低のレート歪みコストを備える、［１］に記載のシステム。
［１７］
マクロブロックを備えるビデオ・フレームを受信するための手段と、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択するための手段と、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックの前記最適な量子化をもたらす前記範囲内に前記量子化パラメータを決定するための手段と、
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化するための手段と、
を備える符号化ビデオのためのシステム。
［１８］
量子化パラメータを決定するための手段は、前のモーション探索のキャッシュを備える、［１７］に記載のシステム
［１９］
量子化パラメータを決定するための前記手段は、イントラ・モード決定結果のキャッシュを備える、［１７］に記載のシステム。
［２０］
前記ビデオ・フレームを受信する手段は、電子機器を備える［１７］に記載のシステム。
［２１］
前記記憶装置は、コンピュータ・メモリである［２０］に記載のシステム。
［２２］
前記量子化パラメータの範囲は、少なくとも前記予測された量子化パラメータの値に基づいて選択される、［１７］に記載のシステム。
［２３］
前記予測された量子化パラメータは、少なくとも以前決定された量子化パラメータの前記値に基づいて選択されることを特徴とする［２２］のシステム。
［２４］
前記以前決定された量子化パラメータは、先行するマクロブロックのための前記量子化パラメータである、［２３］に記載のシステム。
［２５］
前記以前決定された量子化パラメータは、少なくとも２つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、［２３］に記載のシステム。
［２６］
前記以前決定された量子化パラメータは、少なくとも３つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、［２３］に記載のシステム。
［２７］
前記以前決定された量子化パラメータは、少なくとも４つの近隣マクロブロックの前記量子化パラメータの前記平均を少なくとも使用して決定される、［２３］に記載のシステム。
［２８］
前記以前決定された量子化パラメータは、１つ以上の近隣マクロブロック・パラメータを使用することを決定し、１つ以上の近隣のマクロブロックがない状態で、デフォルトの量子化パラメータ値を使用する、［２３］に記載のシステム。
［２９］
全ての可能な量子化パラメータ値は、近隣のマクロブロックが利用可能でない場合に使用される、［２３］に記載のシステム。
［３０］
前記選択手段は、量子化パラメータ最適化モジュールの少なくとも一部を備える、［１７］に記載のシステム。
［３１］
前記決定手段は、量子化パラメータ最適化モジュールの少なくとも一部を備える、［１７］に記載のシステム。
［３２］
前記マクロブロックを符号化する手段は、ビデオ符号器を備える、［１７］に記載のシステム。
［３３］
前記マクロブロックの前記最適な量子化は、前記マクロブロックのための最低のレート歪みコストを備える、［１７］に記載のシステム。
［３４］
量子化のためのマクロブロックを備えるビデオ・フレームを受信することと、
前記マクロブロックを量子化するための量子化パラメータの範囲を選択することと、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックのための最低の歪み値をもたらす前記範囲内に前記量子化パラメータを決定することと、
前記決定した量子化パラメータを使用して、前記マクロブロックを符号化することと、
を備える符号化ビデオのための方法。
［３５］
前記量子化パラメータを決定する前記ステップは、前のモーション探索をキャッシュに入れる前記ステップを含む、［３４］に記載の方法。
［３６］
前記量子化パラメータを決定する前記ステップは、イントラ・モード決定結果をキャッシュに入れる前記ステップを含む、［３４］に記載の方法。
［３７］
前記量子化パラメータの範囲は、少なくとも予測された量子化パラメータの前記値に基づいて選択される、［３４］に記載の方法。
［３８］
少なくとも以前決定された量子化パラメータの前記値に基づいて前記予測された量子化パラメータを選択するステップをさらに備える、［３７］に記載の方法。
［３９］
前記以前決定された量子化パラメータは、先行するマクロブロックのための前記量子化パラメータである、［３８］に記載の方法。
［４０］
前記以前決定された量子化パラメータは、少なくとも２つの近隣マクロブロック、少なくとも３つの近隣マクロブロック、あるいは少なくとも４つの近隣マクロブロックのうちの１つの前記量子化パラメータの前記平均を少なくとも使用して決定される、［３８］に記載の方法。
［４１］
前記以前決定された量子化パラメータは、１つ以上の近隣マクロブロック・パラメータを使用することを決定し、１つ以上の近隣のマクロブロックがない状態で、デフォルトの量子化パラメータ値を使用する、［３８の方法。
［４２］
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
以前のモーション探索をキャッシュに入れるように構成された量子化モジュールと、
前記キャッシュに入れられた以前のモーション探索の少なくとも１つの少なくとも一部分に基づいて、前記マクロブロックの前記最適な量子化をもたらす量子化パラメータを決定するように構成されたモジュールと、
前記決定された量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化ビデオのためのシステム。
［４３］
マクロブロックを備えるビデオ・フレームを含む記憶装置と、
イントラモード決定結果をキャッシュに入れるように構成された量子化モジュールと、
前記キャッシュに入れられたイントラモード決定結果の少なくとも１つの少なくとも一部分に基づいて、前記マクロブロックの前記最適な量子化をもたらす量子化パラメータを決定するように構成されたモジュールと、
前記決定された量子化パラメータを使用して、前記マクロブロックを符号化するように構成された符号器と、
を備える符号化のためのシステム。
［４４］
量子化のためのマクロブロックを備えるビデオ・フレームを受信することと、
前記マクロブロックを量子化するために量子化パラメータの範囲を選択することと、なお、前記範囲は、可能な量子化パラメータのサブセットである、
前記マクロブロックのための最低の歪み値をもたらす前記範囲内に前記量子化パラメータを決定することと、
前記決定した量子化パラメータを使用して前記マクロブロックを符号化することと、
を備える方法を行うために実行されるのに適したコンピュータ可読プログラム・コードを備える、
コンピュータ可読媒体。
【国際調査報告】
2011514056.tif 000009
2011514056.tif 000010
2011514056.tif 000011