(57)【要約】【課題】ビデオ圧縮、特に、デジタルビデオエンコーダにおける内部予測処理及びモード決定処理の計算を低減する技術を提供する。【解決手段】異なる内部予測モードに関して絶対変換距離の和（ＳＡＴＤ）の計算速度を改善する方法。ＳＡＴＤの判断を高速化すると、計算の長時間化の欠点を受けることなく、符号化性能の改善という利点が得られる。ビデオエンコーダにおいて内部予測処理及びモード決定処理を低減する方法は、改善されたアダマール変換を実施する。元のブロック及び予測されたブロックにアダマール変換を行い、係数が非ゼロである場合にのみ計算を行い、従って、ゼロである係数が跳び越される。このような手法を用いると、垂直予測、水平予測、及びＤＣ予測に必要とされる計算が大幅に低減される。すなわち、最良の内部予測モードを非常に効率的に判断することができる。【選択図】図１
2009531980.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ符号化処理における内部予測処理及びモード決定処理の計算を低減する方法であって、
ａ．１つ又はそれよりも多くの絶対和を計算する段階、
ｂ．１つ又はそれよりも多くのアダマール変換を計算する段階、及び
ｃ．前記１つ又はそれよりも多くの絶対和と前記１つ又はそれよりも多くのアダマール変換を用いて絶対変換差分の１つ又はそれよりも多くの和を取得する段階、
を含むことを特徴とする方法。
【請求項２】
前記１つ又はそれよりも多くの絶対和は、共通の変換係数、垂直予測のための係数、及び水平予測のための係数を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記１つ又はそれよりも多くのアダマール変換を計算する段階は、元のブロックに関してアダマール変換を計算する段階を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記１つ又はそれよりも多くのアダマール変換を計算する段階は、垂直予測に関してアダマール変換を計算する段階を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記１つ又はそれよりも多くのアダマール変換を計算する段階は、水平予測に関してアダマール変換を計算する段階を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記１つ又はそれよりも多くのアダマール変換を計算する段階は、ＤＣ予測に関してアダマール変換を計算する段階を含むことを特徴とする請求項１に記載の方法。
【請求項７】
ゼロである係数を有する前記計算を飛び越すことによって計算を低減する段階を更に含むことを特徴とする請求項１に記載の方法。
【請求項８】
絶対変換差分の前記１つ又はそれよりも多くの和を取得する段階は、垂直予測、水平予測、ＤＣ予測、及び平面予測のためのものであることを特徴とする請求項１に記載の方法。
【請求項９】
最良の内部予測モードの判断をもたらすことを特徴とする請求項１に記載の方法。
【請求項１０】
前記計算は、４０００回未満に低減されることを特徴とする請求項１に記載の方法。
【請求項１１】
前記計算は、ビデオエンコーダにおいて低減されることを特徴とする請求項１に記載の方法。
【請求項１２】
前記ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用することを特徴とする請求項１１に記載の方法。
【請求項１３】
低複雑性モード決定のための絶対変換差分の和を取得する方法であって、
ａ．元のブロックの第１のアダマール変換を計算する段階、
ｂ．共通変換係数の第１の絶対和を判断する段階、
ｃ．予測のための係数の第２の絶対和を判断する段階、
ｄ．予測されたブロックの第２のアダマール変換を計算する段階、
ｅ．前記第１のアダマール変換と前記第２のアダマール変換の間の差を計算する段階、
ｆ．非ゼロ係数の第３の絶対和を判断する段階、及び
ｇ．前記第１の絶対和、前記第２の絶対和、及び前記第３の絶対和を合計することによって前記絶対変換差分の和を取得する段階、
を含むことを特徴とする方法。
【請求項１４】
前記予測は、垂直予測であることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記予測は、水平予測であることを特徴とする請求項１３に記載の方法。
【請求項１６】
前記予測は、ＤＣ予測であることを特徴とする請求項１３に記載の方法。
【請求項１７】
前記予測されたブロックは、垂直予測のためのものであることを特徴とする請求項１３に記載の方法。
【請求項１８】
前記予測されたブロックは、水平予測のためのものであることを特徴とする請求項１３に記載の方法。
【請求項１９】
前記予測されたブロックは、ＤＣ予測のためのものであることを特徴とする請求項１３に記載の方法。
【請求項２０】
最良の内部予測モードの判断をもたらすことを特徴とする請求項１３に記載の方法。
【請求項２１】
前記計算は、４０００回未満に低減されることを特徴とする請求項１３に記載の方法。
【請求項２２】
前記計算は、ビデオエンコーダにおいて低減されることを特徴とする請求項１３に記載の方法。
【請求項２３】
前記ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用することを特徴とする請求項２２に記載の方法。
【請求項２４】
ビデオ符号化処理における最良の１６ｘ１６内部予測モードを見出す方法であって、
ａ．垂直予測のための絶対変換差分の第１の和を取得する段階、
ｂ．水平予測のための絶対変換差分の第２の和を取得する段階、
ｃ．ＤＣ予測のための絶対変換差分の第３の和を取得する段階、及び
ｄ．平面予測のための絶対変換差分の第４の和を取得する段階、
を含むことを特徴とする方法。
【請求項２５】
前記絶対変換差分の第１の和は、共通変換係数の絶対和、前記垂直予測に関する係数の絶対和、及び該垂直予測に関する非ゼロ係数の絶対和を合計することによって取得されることを特徴とする請求項２４に記載の方法。
【請求項２６】
前記絶対変換差分の第２の和は、共通変換係数の絶対和、前記水平予測に関する係数の絶対和、該水平予測に関する非ゼロ係数の絶対和を合計することによって取得されることを特徴とする請求項２４に記載の方法。
【請求項２７】
前記絶対変換差分の第３の和は、共通変換係数の絶対和、前記垂直予測に関する係数の絶対和、前記水平予測に関する係数の絶対和、前記ＤＣ予測に関する非ゼロ係数の絶対和を合計することによって取得されることを特徴とする請求項２４に記載の方法。
【請求項２８】
ゼロである係数を有する計算を飛び越すことによって計算を低減する段階を更に含むことを特徴とする請求項２４に記載の方法。
【請求項２９】
最良の内部予測モードの判断をもたらすことを特徴とする請求項２４に記載の方法。
【請求項３０】
計算が、４０００回未満に低減されることを特徴とする請求項２４に記載の方法。
【請求項３１】
計算が、ビデオエンコーダにおいて低減されることを特徴とする請求項２４に記載の方法。
【請求項３２】
前記ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用することを特徴とする請求項３１に記載の方法。
【請求項３３】
ビデオ符号化処理における内部予測処理及びモード決定処理の計算を低減するための装置であって、
ａ．複数の絶対和を計算し、複数のアダマール変換を計算し、かつ該複数のアダマール変換を用いて絶対変換差分の１つ又はそれよりも多くの和を取得するためのプログラムモジュール、及び
ｂ．前記プログラムモジュールを実行するためのプロセッサ、
を含むことを特徴とする装置。
【請求項３４】
前記プログラムモジュールは、１つ又はそれよりも多くの係数がゼロである計算を回避することを特徴とする請求項３３に記載の装置。
【請求項３５】
前記計算は、４０００回未満に低減されることを特徴とする請求項３３に記載の装置。
【請求項３６】
前記計算は、ビデオエンコーダにおいて低減されることを特徴とする請求項３３に記載の装置。
【請求項３７】
前記ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用することを特徴とする請求項３６に記載の装置。
【請求項３８】
ａ．使用される係数がゼロである計算を回避する内部予測のための構成要素、及び
ｂ．前記内部予測のための構成要素に結合されて複数の圧縮ビデオビットを生成するエントロピー・コーダ、
を含むことを特徴とするビデオエンコーダ。
【請求項３９】
前記内部予測のための構成要素は、複数の絶対和を計算し、複数のアダマール変換を計算し、かつ該複数のアダマール変換を用いて絶対変換差分の１つ又はそれよりも多くの和を取得することを特徴とする請求項３８に記載のビデオエンコーダ。
【請求項４０】
前記計算は、４０００回未満に低減されることを特徴とする請求項３８に記載のビデオエンコーダ。
【請求項４１】
Ｈ．２６４規格プロトコルを利用することを特徴とする請求項３８に記載のビデオエンコーダ。
【請求項４２】
ａ．ビデオデータを受信するための受信ユニット、
ｂ．前記受信ユニットに結合されてビデオデータを表示する表示ユニット、及び
ｃ．前記受信ユニット及び前記表示ユニットに結合されて１つ又はそれよりも多くの圧縮ビデオビットを生成するエンコーダ、
を含み、
前記エンコーダは、内部予測処理及びモード決定処理における１つ又はそれよりも多くの係数がゼロである計算を回避する、
ことを特徴とするビデオ捕捉及び表示デバイス。
【請求項４３】
前記計算は、４０００回未満に低減されることを特徴とする請求項４２に記載のビデオ捕捉及び表示デバイス。
【請求項４４】
前記エンコーダは、Ｈ．２６４規格プロトコルを利用することを特徴とする請求項４２に記載のビデオ捕捉及び表示デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオ圧縮の分野に関する。より具体的には、本発明は、デジタルビデオエンコーダにおける内部予測処理及びモード決定処理の計算を低減することに関する。
【背景技術】
【０００２】
ビデオシーケンスは、通常はフレームと呼ぶいくつかの映像から成る。連続するフレームは、非常に似たものであり、従って、フレーム毎に多くの冗長性を含む。ビデオデータは、効率的にチャンネル上で送信されるか又はメモリに記憶される前に、帯域幅及びメモリの両方を節約するために圧縮される。その目標は、冗長性を取り除いて圧縮比を改善することである。第１のビデオ圧縮手法は、参照フレームを所定のフレームから差し引いて相対差を発生させることである。圧縮フレームは、含まれる情報量が参照フレームよりも少ない。相対差は、同じ品質でより低いビットレートで符号化することができる。デコーダは、相対差を参照フレームに追加することによって元のフレームを再構成する。
【０００３】
より洗練された手法は、ビデオシーケンスの場面全体と物体の動きを近似することである。動きは、ビットストリームに符号化されたパラメータによって説明される。予測されたフレームのピクセルは、参照フレームの適切に変形されたピクセルによって近似される。この手法によって、単純な引き算よりも予測機能が改善する。しかし、動きモデルのパラメータによって占められるビットレートは、速すぎてはならない。
【０００４】
一般的に、ビデオ圧縮は、ＭＰＥＧ−１、ＭＰＥＧ−２、及びＭＰＥＧ−４のような「Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ（ＭＰＥＧ）」からのオーディオ及びビデオ圧縮のための１つ又はそれよりも多くの規格を含む多くの規格に従って行われる。Ｈ．２６４又はＡＶＣ（Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）とも呼ばれる「ＭＰＥＧ−４  Ｐａｒｔ  １０」規格の一部として更なる強化が行われている。ＭＰＥＧ規格の下で、ビデオデータは、最初に符号化され（例えば、圧縮され）、次に、ビデオシステムのエンコーダ側のエンコーダバッファに記憶される。その後、符号化されたデータは、ビデオシステムのデコーダ側に送信され、そこで、それは、デコーダバッファに記憶された後で、対応する映像を閲覧することができるように復号される。
【０００５】
Ｈ．２６４／ＡＶＣプロジェクトの意図は、過去の規格（例えば、ＭＰＥＧ−２、Ｈ．２６３、又はＭＰＥＧ−４  Ｐａｒｔ  ２）が必要とするものよりも実質的に遅いビットレートで良好なビデオ品質を提供することができる規格を開発することであった。更に、設計が実行不可能であるというほどの複雑さの大きな増大なしにこれらの改善を行うことが望まれていた。付加的な目標は、低速及び高速ビットレート及び低解像度及び高解像度ビデオの両方に使用することができるように、Ｈ．２６４／ＡＶＣ規格を広範な用途に適用することを可能にするような柔軟な方法でこれらの変更を行うというものであった。別の目的は、それが非常に広範なネットワーク及びシステム上で良好に機能するというものであった。
【０００６】
Ｈ．２６４／ＡＶＣ／「ＭＰＥＧ−４  Ｐａｒｔ  １０」には、旧規格よりも遥かに有効にビデオを圧縮し、かつ広範囲にわたるネットワーク環境への適用に向けて更なる柔軟性を提供することを可能にする多くの新しい特徴が含まれている。一部の重要な特徴は、予め符号化された映像を参照に用いる多重映像動き補正、大きい方は１６ｘ１６、小さい方は４ｘ４のブロックサイズでの可変ブロックサイズ動き補正（ＶＢＳＭＣ）、半ピクセルｌｕｍａサンプル予測誘導のための６タップフィルタリング、マクロブロック対構造、動き補正のための１／４ピクセル精度、重み付け予測、インループブロック解除フィルタ、完全整合整数４ｘ４空間ブロック変換、アダマール変換が高速フーリエ変換と類似している１次空間変換の「ＤＣ」係数に対して実行される２次アダマール変換、「内部」符号化のための近傍ブロックの縁部からの空間予測、コンテクスト適応２進演算符号化（ＣＡＢＡＣ）、コンテクスト適応可変長符号化（ＣＡＶＬＣ）、指数ゴロム符号化と呼ばれるＣＡＢＡＣ又はＣＡＶＬＣによって符号化されない構文要素の多くのための単純かつ高度に構造化された可変長符号化（ＶＬＣ）技術、ネットワーク抽象化層（ＮＡＬ）定義、交換スライス、柔軟マクロブロック順序化、冗長スライス（ＲＳ）、補足的強化情報（ＳＥＩ）及びビデオ有用性情報（ＶＵＩ）、補助映像、フレーム付番、及び映像順序計数を含む。これらの技術及びいくつかの他の技術は、Ｈ．２６４が、従来の規格よりも遙かに良好に、かつより多くの状況及びより多くの環境の下で機能することを可能にする。Ｈ．２６４は、通常は、ビットレートの半分又は更にそれを下回って同じ品質を取得することにより、ＭＰＥＧ−２ビデオよりも良好に機能する。
【０００７】
ＭＰＥＧは、動画及び関連のオーディオの一般的な符号化に使用されており、一連の３つの形式の符号化されたデータフレームで構成された圧縮ビデオビットストリームを作り出す。３つの形式のデータフレームは、内部フレーム（Ｉフレーム又はＩ映像と呼ばれる）、双方向予測フレーム（Ｂフレーム又はＢ映像と呼ばれる）、及び順方向予測フレーム（Ｐフレーム又はＰ映像と呼ばれる）である。これらの３つの形式のフレームは、ＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  ｐｉｃｔｕｒｅｓ）構造と呼ばれる所定の順番で配置することができる。Ｉフレームは、映像を再構成するために必要とされる全ての情報を含む。Ｉフレームは、動き補正なしの通常の映像として符号化される。一方、Ｐフレームは、以前のフレームからの情報を使用し、Ｂフレームは、以前のフレーム、その後のフレーム、又はその両方からの情報を使用して映像を再構成する。具体的には、Ｐフレームは、先行するＩフレーム又は直前のＰフレームから予測される。
【０００８】
フレームは、直後のフレームから予測することもできる。直後のフレームをこのように利用するためには、直後のフレームは、予測フレームの前に符号化されるべきである。従って、符号化順序は、必ずしも実際のフレーム順序と合っているわけではない。このようなフレームは、通常は２方向から、例えば、直前のＩ又はＰフレーム又は予測フレームの直後のＰフレームから予測される。これらの双方向で予測されるフレームは、Ｂフレームと呼ばれる。
【０００９】
多くの可能なＧＯＰ構造がある。一般的なＧＯＰ構造は、１５フレーム長であり、シーケンスＩ＿ＢＢ＿Ｐ＿ＢＢ＿Ｐ＿ＢＢ＿Ｐ＿ＢＢ＿Ｐ＿ＢＢ＿を有する。類似の１２フレームシーケンスも一般的である。Ｉフレームは、空間冗長性に対して、Ｐ及びＢフレームは、時間的冗長性に対して符号化する。ビデオストリーム内の隣接フレームは、十分に相関していることが多いので、Ｐフレーム及びＢフレームは、Ｉフレームのサイズのうちの僅かな割合であるに過ぎない。しかし、フレームを圧縮することができるサイズと、このような圧縮フレームを符号化するために必要される処理時間及びリソースとの間には妥協点がある。ＧＯＰ構造内のＩ、Ｐ、及びＢフレームの比率は、ビデオストリームの性質及び出力ストリームに関する帯域幅制約条件で判断されるが、符号化時間も問題になる場合がある。これは、多くのＢフレームを含むストリームの方がＩフレームのみのファイルよりも符号化に遥かに長い時間を消費する可能性があるので、制限されたコンピュータリソースを用いた生の伝送及びリアルタイム環境において特に当て嵌まる。
【００１０】
Ｂフレーム及びＰフレームは、映像データを記憶するためのビット数が少なくて済み、一般的に、現在のフレームと、前フレーム、後フレーム、又はその両方との間の差に対する差分ビットを含む。従って、Ｂフレーム及びＰフレームは、フレームにわたって含まれる冗長性情報を低減するのに使用される。作動中、デコーダは、符号化Ｂフレーム又は符号化Ｐフレームを受信して、前フレーム又は後フレームを使用して元のフレームを再構成する。連続するフレームが実質的に類似のものである時には、フレームの差異が小さいので、この処理の方が遥かに容易であり、滑らかな場面遷移を生成する。
【００１１】
各ビデオ画像は、１つの輝度（Ｙ）チャンネルと２つのクロミナンスチャンネル（色差信号Ｃｂ及びＣｒとも呼ばれる）とに分けられる。輝度アレイとクロミナンスアレイのブロックは、フレーム内の符号化の基本単位である「マクロブロック」にまとめられる。
【００１２】
Ｉフレームの場合、実際の画像データは、符号化処理に通される。しかし、Ｐフレーム及びＢフレームは、最初に、「動き補正」の処理を受ける。動き補正は、前のフレームの各マクロブロックがどこに移動したかに関して連続フレーム間の差異を説明する方法である。このような技術は、ビデオ圧縮に向けてビデオシーケンスの時間的冗長性を低減するために採用されることが多い。Ｐフレーム又はＢフレーム内の各マクロブロックは、「動きベクトル」を用いてエンコーダによって選択された時に十分に相関している以前の又は次の画像内のエリアに関連付けられる。マクロブロックをその相関したエリアにマップする動きベクトルは、符号化され、次に、２つのエリア間の差異が、符号化処理に通される。
【００１３】
従来のビデオコーデックは、動き補正された予測を用いて、生入力ビデオストリームを効率的に符号化する。現在のフレーム内のマクロブロックは、前フレーム内の変位マクロブロックから予測される。元のマクロブロックとその予測との差異は、圧縮されて、変位（動き）ベクトルと共に伝送される。この技術は、相互符号化と呼ばれ、ＭＰＥＧ規格に使用される手法である。
【００１４】
ＭＰＥＧエンコーダの出力ビットレートは、一定又は可変とすることができ、最大ビットレートは、再生媒体で判断される。一定のビットレートを達成するために、量子化の程度は、出力ビットレート要件を達成するために反復的に変えられる。量子化増加によって、ストリームが復号された時に可視のアーチファクトが発生する。マクロブロック縁部での不連続部は、ビットレートが低減された時の方が目立つ。
【００１５】
ビットレートが一定である時、有効なビット割り当てにより、ビデオ符号化において視覚的品質を改善することができる。従来的に、各フレームは、前景と背景に分けられる。背景よりも前景に中心に観るという論理的思考に基づいて、より多くのビット数が、一般的に前景物体に割り当てられ、より少ないビット数が、背景エリアに割り当てられる。このような論理的思考は、背景を中心に観ない限り背景の差異は分らないであろうという仮定に基づくものである。しかし、これが、常に当て嵌まるとは限らない。更に、Ｈ．２６４規格の特性のために、背景のビット数が少なくなると、ぼけが発生することが多く、背景が低品質の時には、内部リフレッシュ現象が非常に明らかである。静的エリア、通常は背景におけるリフレッシュは、ヒトの目にかなり邪魔であり、従って、視覚的品質に影響を与える。
【００１６】
背景の品質を改善するために、単純な方法により、より多くのビットが背景に割り当てられる。この方策によって前景に割り当てられるビット数が少なくなることになり、これは、受け入れられる交換条件ではない。また、微細な詳細を観察可能にするために、量子化スケールをかなり小さくする必要があり、これは、ビットレート割り当て量を超えることになることを意味する。
【００１７】
別の欠点は、画像シーケンスコンテンツの反復の仮定は、殆どのシーケンスには当て嵌まらないということである。殆どの場合、動きは、数秒以内に殆ど一方向に沿って移動していく。現在フレーム内の対象外の物体に対しては、前フレームでの整合には限りがある。残念ながら、最新の長期的動き予測方法は、参照として以前のフレームに着目するものである。
【００１８】
Ｈ．２６４規格の目的は、以前の規格が必要とすると考えられるビットレートよりも実質的に低いビットレートで高品質なビデオを可能にすることである。付加的な目的は、この規格を非常に広範な用途に適用し、かつ広範なネットワーク及びシステム上で良好に機能することを可能にする柔軟な方法でこの機能性を達成することである。残念ながら、ＭＰＥＧ規格を採用している従来のエンコーダは、比較的高いビットレートにおいてさえも鮮明なテクスチャ詳細をぼかしてしまう傾向がある。また、低いビットレートが使用された時には、Ｉフレームリフレッシュが非常に明らかである。従って、Ｉフレームが表示される度に、その品質は、以前の非Ｉフレームよりも遥かに高く、それによってＩフレームが表示される度に不連続部を生じる。このような不連続部は、ユーザに対して目立つものである。ＭＰＥＧビデオ符号化規格では、一般的な符号化方法と、正規のＭＰＥＧビットストリームの作成に関する文法とが明記されているが、ＭＰＥＧビットストリームの品質を改善するための多くの機会が開かれている。
【００１９】
Ｈ．２６４／ＡＶＣ内部符号化において、２つの内部マクロブロックモードがサポートされている。それらは、４ｘ４内部予測モード及び１６ｘ１６内部予測モードを含む。サブブロック又はマクロブロックが内部モードで符号化された場合、以前に符号化かつ再構成されたブロックに基づいて、予測されたブロックが形成される。予測されたブロックは、符号化前に現在のブロックから差し引かれる。４ｘ４ｌｕｍａブロックの場合は、合計９個の予測モード、１６ｘ１６ｌｕｍａブロックの場合は、４個の予測モードがある。最小の歪みを有する予測モードが、そのブロックの最良モードとして選択される。
【００２０】
歪みを見出す方法は数多くあるが、絶対差の和（ＳＡＤ）又は絶対変換距離の和（ＳＡＴＤ）が、低複雑性モード決定に一般的に使用されている。通常、ＳＡＴＤ選択による符号化性能は、０．２ｄＢから０．５ｄＢ以上であるが、ＳＡＴＤの計算は、ＳＡＤを見出すよりも時間を消費する。
【００２１】
「合同モデル参照符号化方法及び復号隠蔽方法のテキストによる説明」＜ｈｔｔｐ：／／ｆｔｐ３．ｉｔｕ．ｃｈ／ａｖ−ａｒｃｈ／ｊｖｔ−ｓｉｔｅ／２００５＿０１＿ＨｏｎｇＫｏｎｇ／ＪＶＴ−Ｎ０４６ｒｌ．ｄｏｃ＞（２００５年２月）では、Ｈ．２６４規格に準拠したビデオデータのためのデコーダ内の誤差及び損失を隠す方法が開示されている。この文献では、ＳＡＴＤを計算する方法及びＳＡＴＤを計算するためのアダマール変換の適用が開示されている。
【００２２】
Ｌｅｅ他に付与された米国特許出願第２００５／００６９２１１号は、受信映像の形式を考慮して内部予測及び／又は相互予測を用いて受信映像を符号化することにより、受信映像のマクロブロックの内部予測コストの平均値又は相互予測コストの平均値を計算し、内部予測コスト及び／又は相互予測コストの計算平均値を用いて閾値を計算し、かつ計算閾値に基づいてその後の映像に内部予測を行うべきか否かを判断する予測方法を開示している。計算量は、内部予測を受けるマクロブロックの数を低減することにより軽減される。
【００２３】
【特許文献１】米国特許出願第２００５／００６９２１１号
【非特許文献１】「合同モデル参照符号化方法及び復号隠蔽方法のテキストによる説明」、＜ｈｔｔｐ：／／ｆｔｐ３．ｉｔｕ．ｃｈ／ａｖ−ａｒｃｈ／ｊｖｔ−ｓｉｔｅ／２００５＿０１＿ＨｏｎｇＫｏｎｇ／ＪＶＴ−Ｎ０４６ｒｌ．ｄｏｃ＞、２００５年２月
【発明の開示】
【００２４】
異なる内部予測モードに関して絶対変換距離の和（ＳＡＴＤ）の計算速度を改善する方法を説明する。ＳＡＴＤの判断を高速化すると、計算の長時間化の欠点を受けることなく、符号化性能の改善という利点が得られる。ビデオエンコーダにおいて内部予測処理及びモード決定処理を低減する方法では、改善されたアダマール変換を実行する。元のブロック及び予測されたブロックにアダマール変換を行い、係数が非ゼロである場合にのみ計算を行い、従って、ゼロである係数が跳び越される。このような手法を用いると、垂直予測、水平予測、及びＤＣ予測に必要とされる計算が大幅に低減される。すなわち、最良の内部予測モードを非常に効率的に判断することができる。
【００２５】
一態様では、ビデオ符号化処理における内部予測処理及びモード決定処理の計算を低減する方法は、１つ又はそれよりも多くの絶対和を計算する段階と、１つ又はそれよりも多くのアダマール変換を計算する段階と、１つ又はそれよりも多くの絶対和と１つ又はそれよりも多くのアダマール変換とを用いて絶対変換差分の１つ又はそれよりも多くの和を取得する段階とを含む。１つ又はそれよりも多くの絶対和は、共通の変換係数と、垂直予測のための係数と、水平予測のための係数とを含む。１つ又はそれよりも多くのアダマール変換を計算する段階は、元のブロックに関してアダマール変換を計算する段階を含む。１つ又はそれよりも多くのアダマール変換を計算する段階は、垂直予測に関してアダマール変換を計算する段階を含む。１つ又はそれよりも多くのアダマール変換を計算する段階は、水平予測に関してアダマール変換を計算する段階を含む。１つ又はそれよりも多くのアダマール変換を計算する段階は、ＤＣ予測に関してアダマール変換を計算する段階を含む。本方法は、ゼロである係数を有する計算を飛び越すことにより計算を低減する段階を更に含む。絶対変換差分の１つ又はそれよりも多くの和を取得する段階は、垂直予測、水平予測、ＤＣ予測、及び平面予測のためのものである。本方法は、最良の内部予測モードの判断をもたらす。計算は、４０００回未満に低減される。計算は、ビデオエンコーダ内で低減される。ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用する。
【００２６】
別の態様では、低複雑性モード決定のための絶対変換差分の和を取得する方法は、元のブロックの第１のアダマール変換を計算する段階と、共通変換係数の第１の絶対和を判断する段階と、予測のための係数の第２の絶対和を判断する段階と、予測されたブロックの第２のアダマール変換を計算する段階と、第１のアダマール変換と第２のアダマール変換との差を計算する段階と、非ゼロ係数の第３の絶対和を判断する段階と、第１の絶対和、第２の絶対和、及び第３の絶対和を合計することにより絶対変換差分の和を取得する段階とを含む。一部の実施形態では、予測は、垂直予測である。一部の実施形態では、予測は、水平予測である。一部の実施形態では、予測は、ＤＣ予測である。一部の実施形態では、予測されたブロックは、垂直予測のためのものである。一部の実施形態では、予測されたブロックは、水平予測のためのものである。一部の実施形態では、予測されたブロックは、ＤＣ予測のためのものである。本方法は、最良の内部予測モードの判断をもたらす。計算は、４０００回未満に低減される。計算は、ビデオエンコーダにおいて低減される。ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用する。
【００２７】
別の態様では、ビデオ符号化処理における最良の１６ｘ１６内部予測モードを見出す方法は、垂直予測のための絶対変換差分の第１の和を取得する段階と、水平予測のための絶対変換差分の第２の和を取得する段階と、ＤＣ予測のための絶対変換差分の第３の和を取得する段階と、平面予測のための絶対変換差分の第４の和を取得する段階とを含む。絶対変換差分の第１の和は、共通変換係数の絶対和、垂直予測に関する係数の絶対和、及び垂直予測に関する非ゼロ係数の絶対和を合計することにより取得される。絶対変換差分の第２の和は、共通変換係数の絶対和、水平予測に関する係数の絶対和、及び水平予測に関する非ゼロ係数の絶対和を合計することにより取得される。絶対変換差分の第３の和は、共通変換係数の絶対和、垂直予測に関する係数の絶対和、水平予測に関する係数の絶対和、及びＤＣ予測に関する非ゼロ係数の絶対和を合計することにより取得される。本方法は、ゼロである係数を有する計算を飛び越すことにより計算を低減する段階を更に含む。本方法は、最良の内部予測モードの判断をもたらす。計算は、４０００回未満に低減される。計算は、ビデオエンコーダにおいて低減される。ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用する。
【００２８】
更に別の実施形態では、内部予測処理及びモード決定処理の計算を低減するための装置は、複数の絶対和を計算し、複数のアダマール変換を計算し、かつ複数のアダマール変換を用いて絶対変換差分の１つ又はそれよりも多くの和を取得するためのプログラムモジュールと、プログラムモジュールを実行するためのプロセッサとを含む。プログラムモジュールは、１つ又はそれよりも多くの係数がゼロである計算を回避する。計算は、４０００回未満に低減される。計算は、ビデオエンコーダにおいて低減される。ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用する。
【００２９】
別の実施形態では、ビデオエンコーダは、使用される係数がゼロである計算を回避する内部予測のための構成要素と、内部予測のための構成要素に結合されて複数の圧縮ビデオビットを生成するエントロピー・コーダとを含む。内部予測のための構成要素は、複数の絶対和を計算し、複数のアダマール変換を計算し、かつ複数のアダマール変換を用いて絶対変換差分の１つ又はそれよりも多くの和を取得する。計算は、４０００回未満に低減される。ビデオエンコーダは、Ｈ．２６４規格プロトコルを利用する。
【００３０】
更に別の実施形態では、ビデオ捕捉及び表示デバイスは、ビデオデータを受信する受信ユニットと、受信ユニット結合されてビデオデータを表示する表示ユニットと、受信ユニットと表示ユニットとに結合されて１つ又はそれよりも多くの圧縮ビデオビットを生成し、内部予測処理及びモード決定処理において１つ又はそれよりも多くの係数がゼロである計算を回避するエンコーダとを含む。計算は、４０００回未満に低減される。エンコーダは、Ｈ．２６４規格プロトコルを利用する。
【発明を実施するための最良の形態】
【００３１】
図１は、マクロブロックのビデオ符号化層１００のブロック図を示している。ビデオ符号化層１００（例えば、エンコーダ）は、変換符号化と共に時間予測及び空間予測の組合せを含む。入力ビデオ１０２は、受信されると複数のブロックに分割される。シーケンスの第１の映像は、通常、それ自体に含まれた情報のみで「内部」符号化される。次に、内部フレーム内ブロックの各部は、以前に符号化されたブロックの空間的に近傍のサンプルを用いて内部予測モジュール１１０で予測される。符号化処理では、内部予測に向けてどの近傍サンプルを利用するか、及びどのように使用されるかが選択される。この処理は、デコーダ１１８で、並びにエンコーダ１００で行われる。シーケンスの映像の残りの部分に対しては、通常、「相互」符号化が用いられる。相互符号化では、他の以前に復号された映像から動き補正１１２が実行される。相互予測／動き推定のための符号化処理１１４には、動きデータを選択する段階、及び参照映像とブロックの全てのサンプルに適用される空間変位とを判断する段階が含まれる。動きデータは、エンコーダ１００及びデコーダ１１８により使用されるサイド情報として伝送される。
【００３２】
元のブロックと予測されたブロックの間の差は、予測残差として公知である。残差は、変換されて、変換係数は、変換及びスケーリング量子化モジュール１０４でスケーリング及び量子化される。変換係数の量子化に対しては、スカラー量子化が利用される。各ブロックは、整数変換で変換され、変換係数は、エントロピー符号化方法で量子化されて送信される。エントロピー・エンコーダ１１６は、量子化変換係数を除く全ての要素に符号語集合を使用する。量子化変換係数に対しては、「コンテキスト適応可変長符号化（ＣＡＶＬＣ）」が使用される。画像のピクセル化を低減するために、フィルタリングの強度を制御するブロック解除フィルタ１０８が実施される。
【００３３】
エンコーダ１００は、次のブロックに関して予測を行うデコーダ１１８を収容する。量子化変換係数は、復号予測残差が得られるエンコーダ側と同じ方法で逆スケーリングかつ逆変換される。復号予測残差は、予測に追加されて、その組合せは、ブロック解除フィルタ１０８のためのものであり、ブロック解除フィルタ１０８により、出力として復号ビデオが得られる。最終的には、エントロピー・コーダは、最初に入力されたビデオ１０２の圧縮ビデオビット１２０を生成する。
【００３４】
異なる内部予測モードに関して絶対変換距離の和（ＳＡＴＤ）の計算速度を改善する方法を説明する。ＳＡＴＤを判断することを高速化すると、計算の長時間化の欠点という問題がなく、符号化性能の改善という利点が得られる。
【００３５】
１６ｘ１６ｌｕｍａブロックには、４種類の予測モードがある。予測モードは、図２に例示されている共に以下を含む。
１．垂直予測２００：上サンプルからの外挿（Ｈ）
２．水平予測２０２：左サンプルからの外挿（Ｖ）
３．ＤＣ予測２０４：上及び左サンプルの平均値（Ｈ＋Ｖ）
４．平面予測２０６：上及び左サンプルに当て嵌められた線形関数ｆ（Ｈ、Ｖ）
【００３６】
４種類の内部予測モードの各々に関してＳＡＴＤを判断する一般的な実施方法では、現在のマクロブロックから予測マクロブロックを差し引き、次に、１６個のサブブロックの各々に４ｘ４アダマール変換を行い、最後に、変換値の絶対値の和を計算する。現在のマクロブロックから予測マクロブロックを差し引く第１の段階は、２５６回の引き算が行われる。４ｘ４アダマール変換毎に３２回の足し算及び３２回の引き算が必要である。従って、１６回のこのような変換では、５１２回の足し算及び５１２回の引き算が必要である。最後の段階では、２５６回の絶対値計算及び２５５回の足し算が必要である。以下の表Ｉは、４種類の予測モードの各々に必要とされる総計算回数の詳細を示している。
【００３７】
（表Ｉ）
2009531980.tif 000003
【００３８】
従って、従来の方法では、３０６８回の足し算、３０７２回の引き算、及び１０２４回の絶対値計算が必要である。しかし、アダマール変換の特性により、最良の１６ｘ１６内部予測モードを見出すために必要される計算回数を低減することができる。
アダマール変換の分配則により、垂直予測モード、水平予測モード、ＤＣ予測モードに関してＳＡＴＤを判断するために必要される計算回数の低減が可能である。分配則によると、Ｏが、元の４ｘ４ブロックであり、Ｐが、予測４ｘ４ブロックであり、Ｈが、アダマール変換を表すとすると、以下のようになる。
Ｈ｛Ｏ−Ｐ｝＝Ｈ｛Ｏ｝−Ｈ｛Ｐ｝
【００３９】
Ｐにおける係数の反復のために、変換されたブロックＨ｛Ｐ｝は、垂直、水平、及びＤＣ予測モードに対して非常に少ない計算回数で計算することができる。
【００４０】
改良型方法における第１の段階では、Ｈ｛Ｏ｝の値を計算する。上述のように、Ｈ｛Ｑ｝を計算するには、５１２回の足し算及び５１２回の引き算が必要である。次の段階は、共通の変換係数の和を判断するというものである。共通の係数は、図３Ａで影付きブロック３１０により示されている。共通係数の絶対和では、１４４回の絶対値計算及び１４３回の足し算が必要である。共通係数の絶対和は、Ａcにより表されている。次の段階は、垂直予測に向けて利用される係数の絶対和を判断することである。垂直予測に関する係数は、図３Ｂで影付きブロック３２０として示されている。垂直予測に関する絶対和は、Ａvで表すことができる。Ａvの計算では、４８回の絶対値計算及び４７回の足し算が必要である。次に、水平予測に必要とされる係数の絶対和を表すＡhを判断する。水平予測係数は、図３Ｃにおいて影付きブロック３３０として示されている。Ａvに必要とされたように、Ａhを判断するのに４８回の絶対値計算及び４７回の足し算が必要である。次の段階では、垂直予測に関してＨ｛Ｐ｝を判断する。Ｐにおける係数の反復のために、Ｐの各４ｘ４ブロックのアダマール変換では、図４で分るように最大４つの非ゼロ係数しか得られない。この４つの非ゼロ係数では、４回の足し算、４回の引き算、及び４回の桁送りが必要である。Ｐが含む異なる係数は、最大６つに過ぎないので、１６ｘ１６ブロック全体に関してＨ｛Ｐ｝を計算するには、１６回の足し算、１６回の引き算、及び１６回の桁送りが必要である。次の段階は、非ゼロ係数に関するＨ｛Ｏ｝−Ｈ｛Ｐ｝の計算であり、６４回の引き算が必要である。係数（Ｈ）の絶対和では、６４回の絶対値計算及び６３回の足し算が必要である。垂直予測に対する最終ＳＡＴＤは、Ｈv、Ａv、及びＡcの和によって与えられ、これには、もう２回の足し算が必要である。
【００４１】
水平予測は、同様のパターンに追随する。水平予測に対するＨ｛Ｐ｝を計算する必要がある。水平予測の非ゼロ係数は、図５に示す通りである。６４個の非ゼロ係数に関してＨ｛Ｏ｝−Ｈ｛Ｐ｝を計算した後、非ゼロ係数（Ｈh）の絶対和を判断しなければならない。水平予測の最終ＳＡＴＤは、Ｈh、Ａh、及びＡcの和によって与えられ、これには、もう２回の足し算が必要である。
【００４２】
ＤＣ予測に対しては、必要な計算回数は少なくなる。図６に示すように、ＤＣ予測内の４ｘ４ブロック毎に生成される非ゼロ係数は、１つだけである。従って、ＤＣ予測に関してＨ｛Ｐ｝を計算するのに必要な引き算は１回だけである。１６ｘ１６ブロック全体に関してＨ｛Ｏ−Ｐ｝を計算するには、１６回の引き算が必要であり、これらの係数の絶対和（Ｈd）には、１６回の絶対値計算及び１５回の足し算が必要である。ＤＣ予測の最終ＳＡＴＤは、Ｈd、Ａv、Ａh、及びＡcによって与えられ、これには、もう３回の足し算が必要である。
【００４３】
平面予測では、通常、係数の反復は含まれないので、このモードに関してＳＡＴＤを計算するには、現在の技術と同数の計算が必要であり、これは、７６７回の足し算、７６８回の引き算、及び２５６回の絶対値計算が必要である。
【００４４】
以下の表ＩＩは、本明細書で説明する方法に必要とされる全計算の要約を示している。
【００４５】
（表ＩＩ）
2009531980.tif 000004
【００４６】
従って、本明細書で説明する方法の全体の足し算及び引き算は、６１４０回から３１５２回に低減される。足し算及び引き算の回数の低減は、約５０％である。絶対値計算は、１０２４回から６４０回に低減され、これは、約４０％の低減である。オーバーヘッドは、僅かに３３回の桁送り命令の導入である。従って、本方法では、最良の１６ｘ１６内部予測モードを見出すために必要とされる計算回数が大幅に低減される。本方法は、最良の４ｘ４内部予測モードを見出すために必要される計算回数を低減するのにも使用可能である。
【００４７】
図７は、本明細書で説明する方法の流れ図を例示している。段階７００では、元のブロックＨ｛Ｏ｝のアダマール変換を計算する。段階７０２では、共通変換係数の絶対和Ａcを判断する。段階７０４では、垂直予測に利用される係数の絶対和Ａvを判断する。段階７０６では、水平予測に必要とされる係数の絶対和Ａhを判断する。段階７０８では、垂直予測に関して予測されたブロックのアダマール変換Ｈ｛Ｐ｝を判断する。段階７１０では、Ｈ｛Ｏ｝−Ｈ｛Ｐ｝間の差を非ゼロ係数に関して計算する。段階７１２では、垂直予測に関する非ゼロ係数の絶対和Ｈvを判断する。段階７１４では、垂直予測Ｈvに関する非ゼロ係数の絶対和、垂直予測に関する係数の絶対和Ａv、及び共通変換係数の絶対和Ｈcを合計することにより、垂直予測に関するＳＡＴＤが達成される。段階７１６では、水平予測に関するアダマール変換Ｈ｛Ｐ｝を非ゼロ係数に関して計算する。段階７２０では、水平予測に関する非ゼロ係数の絶対和Ｈhを判断する。段階７２２では、水平予測に関する非ゼロ係数の絶対和Ｈh、水平予測に関する係数の絶対和Ａh、及び共通変換係数の絶対和Ａcを合計することにより、水平予測に関するＳＡＴＤが達成される。段階７２４では、ＤＣ予測に関するアダマール変換Ｈ｛Ｐ｝を判断する。段階７２６では、アダマール変換Ｈ｛Ｏ−Ｐ｝を非ゼロ係数に対して計算する。段階７２８では、ＤＣ予測に関する非ゼロ係数の絶対和Ｈdを判断する。段階７３０では、ＤＣ予測に関する非ゼロ係数の絶対和Ｈd、垂直予測に関する係数の絶対和Ａv、水平予測に関する係数の絶対和Ａh、及び共通変換係数の絶対和Ａcを合計することにより、ＤＣ予測に関するＳＡＴＤが達成される。段階７３２では、平面予測に関するＳＡＴＤを計算する。このようにして最良の内部予測モードが見出される。
【００４８】
Ｈ．２６４エンコーダにおける内部予測処理及びモード決定処理を低減する方法を利用するために、改善を加えてアダマール変換を実施する。最初に、元のブロックアダマール変換を計算する。次に、共通変換係数、垂直予測係数、及び水平予測係数の絶対和を判断する。次に、垂直予測、水平予測、及びＤＣ予測に関するアダマール変換を計算する。垂直予測、水平予測、及びＤＣ予測に関する非ゼロ係数の絶対和も計算する。次に、以前に計算されたデータを用いて、予測モードの各々に関するＳＡＴＤを取得する。垂直予測、水平予測、及びＤＣ予測に関してＳＡＴＤを計算した状態で、平面予測に関してＳＡＴＤを取得する。全４種類の予測モードを用いて、最良の内部予測モードを判断することができる。
【００４９】
作動中、内部予測処理及びモード決定処理の計算を低減する方法により、Ｈ．２６４エンコーダの所要時間及び計算電力を低減することができる。符号化処理の態様には、内部予測及びモード決定が含まれる。符号化処理のこれらの態様は、複数の絶対和を計算し、複数のアダマール変換を計算し、かつ絶対変換差の和を取得する方法を実施することにより大幅に低減される。多数の計算の代わりに、本明細書で説明する方法では、所要の計算数を最小にする変換を利用することができる。具体的には、予測されたブロック内のいくつかの係数が反復するので、垂直、水平、及びＤＣ予測モードに関して予測されたブロックのアダマール変換を少ない計算量で計算することができる。
【００５０】
本明細書で説明する方法は、以下に限定されるものではないが、ラップトップ、パーソナルコンピュータ、サーバ、携帯電話、ＰＤＡ、ビデオｉＰｏｄ、ＤＶＤレコーダ、ＤＶＤ、デジタルカメラ／ビデオカメラ、ビデオゲーム機、携帯用ビデオゲームプレーヤ、ビデオ監視のようなセキュリティ、高品位テレビジョン放送、テレビ電話、テレビ会議、インターネット上のビデオストリーミング、及び他のマルチメディア用途を含むデバイスを用いて／デバイス上で実施することができる。
【００５１】
本発明の構成及び作動の原理の理解を助けるために、詳細を組み込んだ特定的な実施形態に関して本発明を説明した。特定的な実施形態及びその詳細への本明細書のこのような参照は、本明細書に添えた特許請求の範囲を限定することを意図していない。特許請求の範囲により規定される本発明の精神及び範囲から逸脱することなく、例示のために選択した実施形態に他の様々な修正を加えることができることは、当業者には容易に明らかであろう。
【図面の簡単な説明】
【００５２】
【図１】マクロブロックのビデオ符号化層のブロック図である。
【図２】１６ｘ１６ｌｕｍａブロックのための４つの予測モードを例示する図である。
【図３Ａ】共通係数の図的表現を例示する図である。
【図３Ｂ】垂直予測係数の図的表現を例示する図である。
【図３Ｃ】水平予測係数の図的表現を例示する図である。
【図４】垂直予測の非ゼロ係数の図的表現を例示する図である。
【図５】水平予測の非ゼロ係数の図的表現を例示する図である。
【図６】ＤＣ予測の非ゼロ係数の図的表現を例示する図である。
【図７】計算回数を低減する方法の流れ図である。
【符号の説明】
【００５３】
１００  ビデオ符号化層、エンコーダ
１０２  入力ビデオ
１１０  内部予測モジュール
１１８  デコーダ
【図１】
2009531980.tif 000005
【図２】
2009531980.tif 000006
【図３Ａ】
2009531980.tif 000007
【図３Ｂ】
2009531980.tif 000008
【図３Ｃ】
2009531980.tif 000009
【図４】
2009531980.tif 000010
【図５】
2009531980.tif 000011
【図６】
2009531980.tif 000012
【図７】
2009531980.tif 000013
【国際調査報告】
2009531980.tif 000014