アーチファクト評価による向上した画像/ビデオ品質
【課題】アーチファクト評価器を採用した、画像/ビデオ符号化および復号化システムを提供する。
【解決手段】ビデオブロックを処理する方法および/または装置は、フィルタリングされていない再構成済みのビデオブロックまたはフレームを受信し、アーチファクトフィルタを同期させるべく動作する復号器を備えており、これは、フィルタリングされた再構成済みビデオブロックまたはフレームを生成する。メモリバッファは、フィルタリングされた再構成済みビデオブロックまたはフレーム、あるいはフィルタリングされていない再構成済みのビデオブロックまたはフレームを記憶するべく動作し、アーチファクト評価器は、どのフィルタリングされたビデオブロックまたはフレーム、あるいはフィルタリングされていないビデオブロックまたはフレームがより優れた画像/ビデオ品質を生成するかを評価および決定した後に、メモリバッファを更新するべく動作する。
【解決手段】ビデオブロックを処理する方法および/または装置は、フィルタリングされていない再構成済みのビデオブロックまたはフレームを受信し、アーチファクトフィルタを同期させるべく動作する復号器を備えており、これは、フィルタリングされた再構成済みビデオブロックまたはフレームを生成する。メモリバッファは、フィルタリングされた再構成済みビデオブロックまたはフレーム、あるいはフィルタリングされていない再構成済みのビデオブロックまたはフレームを記憶するべく動作し、アーチファクト評価器は、どのフィルタリングされたビデオブロックまたはフレーム、あるいはフィルタリングされていないビデオブロックまたはフレームがより優れた画像/ビデオ品質を生成するかを評価および決定した後に、メモリバッファを更新するべく動作する。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ディジタル画像およびビデオ処理に関し、より具体的には、アーチファクト (artifact)評価による向上した画像/ビデオ品質に関する。
【背景技術】
【0002】
ディジタルビデオ機能は、ディジタルテレビ、ディジタルダイレクト放送システム、無線通信デバイス、パーソナルディジタルアシスタント(PDA)、ラップトップコンピュータ、デスクトップコンピュータ、ディジタルカメラ、ディジタル記憶デバイス、移動式または衛星無線電話などの幅広いデバイスに採用できる。ディジタルビデオおよび映像デバイスは、フル動画ビデオシーケンスおよび映像を作成、修正、送信、記憶、記録、再生を行う上で、従来のアナログビデオおよび映像システムよりも著しく向上している。ビデオシーケンス(ビデオクリップとも呼ばれる)はフレームのシーケンスで構成されている。さらに、映像はフレームとして表すことができる。ビデオまたは映像からのフレームあるいはフレームの一部は、多くの場合、画像と呼ばれる。
【0003】
移動電話やハンドヘルド型ディジタルカメラのようなディジタルデバイスは、写真および/またはビデオの両方を撮ることができる。写真およびビデオシーケンスは記憶され、別のデバイスへ無線またはケーブルで送信される。送信前に、フレームをサンプリングおよびディジタル化することができる。ディジタル化の後に、フレームをより小さいブロックにパース(parse)し、符号化することができる。符号化は、時に圧縮と同義語である。圧縮によって、フレームを表すために必要なデータの全体(通常は冗長)量(即ちビット)を減少させることができる。ビデオおよび画像データを圧縮することにより、多くの画像およびビデオ符号化基準が、ビデオシーケンスおよび画像の送信速度を向上させることが可能となる。典型的には、圧縮されたビデオシーケンスおよび圧縮された画像は符号化されたビットストリーム、符号化されたパケット、またはビットストリームと呼ばれる。多くの画像およびビデオ符号化基準は、送信するビットを、圧縮技術を用いずに使用したものよりも少なくすることで、ビデオおよび画像送信を促進するように設計された画像/ビデオ圧縮技術を利用する。
【0004】
圧縮をサポートするために、ディジタルビデオおよび/または写真デバイスは、典型的に、ディジタルビデオシーケンスを圧縮し、写真を圧縮するための符号器と、ディジタルビデオシーケンスを解凍するための復号器とを含んでいる。多くの場合、符号器と復号器は、ビデオシーケンスを定義するフレーム内の画素のブロック上で動作する集積符号器/復号器(CODEC)を形成する。例えば国際電気通信連合(ITU)H.264や動画エキスパートグループ(MPEG)−4、ジョイント・フォトグラフ・エキスパート・グループ(JPEG)のような基準においては、典型的に、符号器は送信するビデオフレームまたは画像を、「マクロブロック」と呼ばれるビデオブロックに分割する。典型的な1つのマクロブロックのサイズは、高さ16画素×幅16画素である。様々なサイズのビデオブロックを使用できる。画像およびビデオ処理の当業者は、ビデオブロック、または画像ブロックという用語を相互交換可能に使用できることを認識する。時に相互交換可能性において明確にするために、「画像/ビデオブロック」という用語を使用する。ITU H.264基準は、16×16ビデオブロック、16×8ビデオブロック、8×16画像ブロック、8×8画像ブロック、8×4画像ブロック、4×8画像ブロック、4×4画像ブロックの処理をサポートする。これ以外の基準は、サイズの異なる画像ブロックをサポートすることができる。時に当業者は、符号化処理を説明する場合に、ビデオブロックまたはフレームを相互交換可能に使用し、また時に、これをビデオ物質としてのビデオブロックまたはフレームとも呼ぶ。一般に、ビデオ符号化基準は、ビデオユニットの符号化および復号化をサポートし、この場合、ビデオユニットはビデオブロックまたはビデオフレームであってよい。
【0005】
ビデオフレーム中の各ビデオブロックについて、符号器は多数の「予測」モードで動作する。或るモードでは、「最予測ブロック」と呼ばれる最も類似したビデオブロックを識別するために、1以上の直前のビデオフレーム(または後続のフレーム)の類似サイズのビデオブロックを検索する。現在のビデオブロックを別のフレームのビデオブロックと比較する処理は、一般にブロックレベル動作推定(BME)と呼ばれる。BMEは、各ブロックに動作ベクトルを生成する。現在のビデオブロックに「最予測ブロック」が識別されると、符号器は、現在のビデオブロックと最予測ブロックとの間の差を符号化することができる。現在のビデオブロックと最予測ブロックの間の差を使用するこの処理は、動作補正と呼ばれる処理が含まれる。具体的には、動作補正は、動作ベクトルを使用して、最予測ブロックを取り出し、次に、入力ビデオブロックから最予測ブロックを除去して差分ブロックを生成する動作を意味する。動作補正の後に、典型的には、一連の追加的な符号化ステップが実行されて、差分ブロックの符号化が終了する。これらの追加的な符号化ステップは、使用する符号化基準に依存する。別モードでは、符号器は、同一フレーム内における、1以上の、近接し、サイズが類似したビデオブロックを検索し、これらブロックからの情報を符号化処理の補助に使用する。
【0006】
一般に、符号化処理の一部として、ビデオブロック(または差分ビデオブロック)の変換が実行される。この変換は、ビデオブロック(または差分ビデオブロック)が画素で表されている状態から、変換係数で表される状態に変換する。ビデオ符号化における典型的な変換は離散コサイン変換(DCT)と呼ばれる。DCTは、ビデオブロックデータを画素ドメインから空間周波数ドメイン(domain)へ変換する。空間周波数ドメインでは、データはDCTブロック係数で表される。DCTブロック係数は、ビデオブロック内に検出された空間周波数の数および大きさを表す。DCTの計算が終わると、「ブロック量子化」として公知の処理によって、DCTブロック係数を量子化することができる。DCTブロック係数の量子化(ビデオブロックまたは差分ビデオブロックのいずれかからのもの)は、ブロックから空間冗長性の一部を除去する。この「ブロック量子化」処理中に、量子化したDCTブロック係数を閾値と比較することで、さらなる空間冗長性を除去することができる。量子化されたDCTブロック係数の大きさが閾値未満である場合、係数は廃棄されるか、ゼロ値に設定される。
【0007】
しかし、符号器におけるブロック量子化では、符号器において圧縮されているビデオフレームまたは画像を再構成する再に、復号器に異なるアーチファクトが発生することが多い。アーチファクトの一例に、再構成されたビデオ画像内へのブロックの出現があり、これは「ブロックノイズ」として知られている。いくつかの基準は、符号化処理の一部としてデブロッキングフィルタを含めることでこの問題に対処しようとしてきた。いくつかのケースでは、デブロッキングフィルタはブロックノイズを除去するだけでなく、さらに、ビデオフレームまたは画像を汚したり不明瞭にする効果もあり、これは不明瞭性アーチファクトとして知られている。そのため、画像/ビデオ品質がデブロッキングフィルタからの「ブロックノイズ」または不明瞭性によって劣化してしまう。感知される視覚的品質への符号化アーチファクトの影響を減じる方法および装置は著しい利点となる。
【発明の概要】
【0008】
添付の図面および以下の説明において、1以上の実施形態の詳細を述べる。別の特徴、目的、利点は説明、図面、特許請求項から明らかになる。
【0009】
一般に、ビデオブロックを処理するアーチファクト評価器を採用した画像/ビデオ符号化および復号化システムは、画像/ビデオ品質を向上することができる。符号化処理中に、テクスチャ復号器およびビデオブロック、またはインター符号化もしくはイントラ符号化予測モードからのフレーム結果はフィルタリングされていない再構成済みビデオブロックまたはフレームと同期する。フィルタリングされていない再構成済みのビデオブロックまたはフレームは、アーチファクトフィルタを通過して、フィルタリングされた再構成済みのビデオブロックまたはフレームを生じる。アーチファクトフィルタはデブロッキングフィルタであるか、またはデブロッキングフィルタとして構成されていてよい。アーキテクトフィルタがデブロッキングフィルタである、もしくはこれとして構成されている場合には、ブロックノイズが抑圧される。しかし、フィルタリング後に得られる、フィルタリングされた再構成済みのビデオブロックまたはフレームは不明瞭になる可能性がある。現在の符号化方法および基準は、インループメモリバッファの更新方法を「適合的に」変更する手法を有していないために制限されてしまう。現在の符号化方法および基準におけるこの制限のために、特にインター符号化予測モードにて、他のフレームに粗悪な画像/ビデオ品質が伝播されてしまう。
【0010】
アーチファクト評価器を使用することで、この現在の符号化方法および基準の制限を克服することができる。アーチファクト評価器を使用することで、感知された画像/ビデオ品質に基づき、デブロッキングフィルタのようなアーチファクトフィルタの出力をいつ使用するのがよいか、また、インループメモリバッファを更新するために、デブロッキングフィルタのようなアーチファクトフィルタの入力をいつ使用するのがよいかを評価および決定できる。アーチファクト評価器を使用することにより、現在のフレームの現在の方法および基準を画像/ビデオ品質を向上するだけでなく、特にインター符号化予測モードで使用している場合に、粗悪な画像/ビデオ品質が後続の処理済みフレームへ伝播することを防止するというさらなる利点が得られる。アーチファクト評価器はまた、基準に準拠していてよい。
【0011】
フィルタリングされていない再構成済みのビデオブロックまたはフレームと、フィルタリングされた再構成済みビデオブロックまたはフレームの各々について、アーチファクトの量を測定するべくアーチファクトメトリック(artifact metric)を生成することができる。アーチファクトメトリックは非オリジナル基準(NR)またはフルオリジナル基準(FR)であってよい。NRおよびFRアーチファクトメトリックの間の差は、オリジナルビデオブロックまたはフレームの使用可能性に基づく。アーチファクトメトリック生成器は、アーチファクトメトリックを生成し、また、アーチファクト評価器の一部である。アーチファクトメトリックが生成されると、インループメモリバッファを更新する上でビデオブロックまたはフレームが使用される感知された画像/ビデオ品質に基づいて決定される。アーチファクトメトリックの生成方法には応用形があり、また、インループメモリバッファを更新する上で用いられる、フィルタリングされた再構成済みビデオブロックまたはフレーム、あるいはフィルタリングされていないビデオブロックまたはフレームを使用する様々な方法が存在する。これらの応用形は以下の実施形態において例証されている。
【0012】
一実施形態では、アーチファクトメトリック生成器は、NRアーチファクトメトリックを生成するためにビデオ符号器に使用される。
【0013】
別の実施形態では、アーチファクトメトリック生成器は、FRアーチファクトメトリックを生成するためにビデオ符号器に使用される。
【0014】
さらなる実施形態では、NRまたはFRアーチファクトメトリックは、ブロックノイズの量を測定するために使用される。
【0015】
さらなる実施形態では、構成可能なアーチファクトメトリック生成器は、複数のアーチファクトメトリックを一度に出力するために使用される。
【0016】
またさらなる実施形態では、インループメモリバッファを更新するためにはどのビデオブロックまたはフレームを使用するべきかを決める決定は、1タイプのみのメトリック、例えばブロックノイズ(またはデブロックノイズ)メトリックに基づいている。
【0017】
別の実施形態では、インループメモリバッファを更新するためにはどのビデオブロックまたはフレームを使用するべきかを決める決定は、複数タイプのメトリック、例えばブロックノイズ(またはデブロックノイズ)メトリックおよび不明瞭性メトリックに基づいていてよい。
【0018】
上記のいくつかの実施形態を組み合わせて他の実施形態を形成することができる。
【0019】
1以上の実施形態の詳細を、添付の図面および以下の説明において述べる。これ以外の特徴、目的、利点は、説明、図面、特許請求項から明らかになる。
【図面の簡単な説明】
【0020】
【図1A】本明細書で説明した技術に基づくアーチファクト評価器を採用した画像/ビデオ符号化および復号化システムを図示する。
【図1B】本明細書で説明した技術に基づいて使用できる2つのCODECを図示する。
【図2】グループオブピクチャーズ(GOP)として公知のビデオシーケンスを図示する。
【図3】図1Aまたは図1Bのデバイスに使用できる例証的な画像/ビデオ符号器を図示する。
【図4A】図3の単純化した例証的な画像/ビデオ符号器を図示しており、この場合、図3のデブロッキングフィルの代わりにより一般的なアーチファクトフィルタを使用している。
【図4B】再構成され、オプションのオリジナル画像/ビデオブロック(1以上)またはフレームの両方を評価する上で補助となるアーチファクトメトリック生成器の使用を図示する。
【図5A】図4Bで使用されるアーチファクトメトリック生成器の一態様を図示し、この場合、再構成済みの画像/ビデオブロック(1以上)またはフレームのみを示す。
【図5B】再構成されオプションである画像/ビデオブロック(1以上)またはフレームを設けたブロック線図であり、図4Bで使用したアーチファクトメトリック生成器の一態様を図示する。
【図6】ASNRメトリックを計算するのに使用される、アーチファクトメトリック生成器で使用される重量値選択(WVS)を図示したグラフである。
【図7】汎用アーチファクトフィルタと、より一般的な、オプションのメトリック制御装置で構成されていてよいアーチファクトメトリック生成器を設けた例証的な画像/ビデオ符号器を図示する。
【図8】アーチファクトメトリック生成器の一般的な構成を図示する。
【図9】別バージョンのASNRメトリックを実現するために、図8のアーチファクトメトリック生成器を構成できることを図示する。
【図10】典型的な画像/ビデオ符号器のフィードバックループ内にアーチファクト評価器を使用できることを図示する。
【図11A】1タイプのメトリックを使用して出力決定を行う、1バージョンのアーチファクト評価器を図示する。
【図11B】出力決定を行うために複数タイプのメトリックを使用する、1バージョンのアーチファクト評価器を図示する。
【図12】図11A中の決定論理ブロックによって使用される方法のフローチャートを図示する。
【図13】図11B中の決定論理ブロックに使用される方法のフローチャートを図示する。
【図14】アーチファクト評価処理のフローチャートを図示する。
【詳細な説明】
【0021】
本明細書で使用されている「例証的な」という用語は、「例、実例、または例証として働く」ことを意味する。本明細書で「例証的な」として述べられている任意の実施形態、構成、または設計は、他の実施形態もしくは設計にかけて好ましいあるいは有利なものとして構造される必要はない。一般に、本明細書で述べているように、アーチファクトを評価するだけでなく、評価の結果として感知した画像/ビデオ品質を向上させる新規の方法および装置である。
【0022】
図1Aは、本明細書で説明している実施形態による技術に基づいてアーチファクト評価機を採用できる画像/ビデオ符号化および復号化システム2を図示する。図1Aに示すように、ソースデバイス4aは、ビデオシーケンスまたは画像をディスプレイデバイス8へ送信する前にビデオまたは映像入力をとらえるキャプチャデバイス6を含有している。このビデオシーケンスまたは画像を、メモリ10あるいは画像/ビデオ処理ユニット14へ送信することができる。ビデオシーケンスあるいは画像は、画像/ビデオ処理ユニット14からメモリ10内へ書き込むことができる。画像/ビデオ処理ユニット14がメモリ10あるいはキャプチャデバイス6から受信する入力を、画像/ビデオ符号器へ送信することができる。画像/ビデオ符号器は画像/ビデオ処理ユニット14内にあってよい。ビデオ符号器が出力し符号化されたビットストリームを送信機16に記憶するか、送信機16へ送信することができる。ソースデバイス4aは、符号化したビットストリームを受信デバイス18aへチャンネル19を介して送信する。チャネル19は無線チャネルまたは有線チャネルであってよい。媒体は空気や、ソースデバイスを受信デバイスに接続できる任意のケーブルおよびリンクであってよい。例えば、受信機20を、画像/ビデオ復号器21を駆動する任意のコンピュータ、PDA、移動電話、ディジタルテレビ、DVDプレーヤ、画像/ビデオ試験装置の内部に設置して、上述の符号化されたビットストリームを復号することができる。画像/ビデオ復号器21の出力は復号化された信号を、ディスプレイデバイス22へ送信でき、そこで復号化された信号が表示される。
【0023】
ソースデバイス4aおよび/または受信デバイス18aの全体または一部は、移動電話用の「チップセット」または「チップ」を備えることができ、これらには、ハードウェア、ソフトウェア、ファームウェアの組み合わせ、および/または1以上のマイクロプロセッサ、ディジタル信号プロセッサ(DSP)、アプリケーション限定集積回路(ASIC)、フィールドプログラム可能ゲートアレイ(FPGA)、またはこれらの様々な組み合わせが含まれる。これに加え、別の実施形態では、画像/ビデオ符号化および復号化システム2は、CODEC24の一部としての1つのソースデバイス4bおよび1つの受信デバイス18bの内部に設けることができる。したがって、図1Bに見られるように、ソースデバイス4bと受信デバイス18bは、ソースおよび受信デバイスが少なくとも1つのCODEC24を含有できることを例示している。CODEC24は画像/ビデオ符号器23および画像/ビデオ符号器21で構成されており、また、画像/ビデオ処理ユニット14内に配置することができる。
【0024】
図2は、グループオブピクチャー(GOP)130として知られたビデオシーケンスを図示する。インター符号化予測モード符号化は、典型的に、異なるフレーム内のビデオブロック同士の間における時間および空間差分を補正するために使用される。イントラ符号化予測モード符号化は、同一フレーム内のビデオブロック同士の間の空間差分を補正するために使用される。インター符号化モードとイントラ符号化モードの両方は、現在のビデオブロックの符号化を補助するために過去の(または後にバッファされる)情報を使用することから、予測モードとして知られている。いくつかの基準において、Iフレーム31は、典型的に、過去のフレームとはコンテンツが異なるシーンの第1フレームまたはフレームのシーケンスを示す。典型的に、Iフレームはイントラ符号化モードを使用する。Bフレーム(1以上)33とPフレーム(1以上)35はイントラ符号化モードとインター符号化モードの両方を使用する。Pフレーム(1以上)35は、過去のフレームを符号化の基準として使用し、一方、Bフレーム(1以上)33は過去のフレームと将来のフレームの両方を符号化の基準として使用できる。しかし、ITU H.264標準では、任意のフレーム(Iフレーム、Pフレーム、Bフレーム)を符号化の基準として使用できる。将来のフレームを使用できる理由は、通常、フレームはバッファされ、バッファ内の過去または将来のフレームからのデータを符号化の最中にある現在のフレームに使用できるためである。
【0025】
図3は、図1Aまたは図1Bのデバイスに使用できる例証的な画像/ビデオ符号器を図示する。ビデオシーケンスからのフレームまたはフレームの一部を、CODEC24の一部であってよい画像/ビデオ符号器23内部、および/または画像/ビデオ処理ユニット14内部の入力フレームバッファ42内に配置することができる。入力フレームバッファ42からの入力フレームはブロック内へパースされ(ビデオブロックは任意のサイズのものでよいが、標準的なスクエアビデオブロックサイズは4×4、8×8、または16×16である)、ビデオブロックバッファ43へ送信される。典型的に、ビデオブロックバッファ43はビデオブロックを減算器44へ送信する。減算器44は、スイッチ46の出力からビデオブロックxを減算する。スイッチ46は、符号化のイントラ符号化予測モードとインター符号化予測モードを切り換える。スイッチ46がインター符号化予測モードを有効にしている場合には、ビデオブロックxと、別の(過去または後続の)フレームからのビデオブロックとの差が、テクスチャ符号器47によって圧縮される。スイッチ46がイントラ符号化予測モードを有効にしている場合には、ビデオブロックxと、過去のビデオブロックから予測された値との差がテクスチャ(texture)符号器47によって圧縮される。
【0026】
テクスチャ符号器47は、画素ドメインからの入力x(ビデオブロックまたは別のブロック)を空間周波数ドメインに変換するDCTブロック48を有する。空間周波数ドメイン内では、データはDCTブロック係数によって表される。DCTブロック係数は、ビデオブロック内で検出された空間周波数の数と大きさを表す。DCTの計算後に、「ブロック量子化」として公知の処理にて、DCTブロック係数を量子化器50を用いて量子化することができる。DCTブロック係数の量子化(ビデオブロックまたはビデオブロックの差から得たもの)が、ブロックからの空間冗長の一部を除去する。この「ブロック量子化」処理中、量子化したDCTブロック係数と閾値を比較することにより、さらなる空間冗長を除去することが可能である。この比較は、量子化器50、または別の比較器ブロック(図示せず)の内部において実施される。量子化したDCTブロック係数の大きさが閾値よりも小さい場合には、この係数は廃棄されるか、ゼロ値に設定される。
【0027】
ブロック量子化の後に、結果の出力が別個の2つの構造、即ち(1)テクスチャ復号器65、(2)エントロピー符号器55へ送信される。テクスチャ復号器65は、再構成された画像/ビデオブロックまたはフレームの製造を補助する逆量子化器66を備えている。この逆量子化器66は符号化予測モードで使用される。エントロピー符号器55は、送信または記憶のためのビットストリームを生成する。エントロピー符号器55はスキャナ56を含有していてよく、このスキャナ56は、ブロック量子化された出力を受信し、これを再順序化することで、可変長符号器(VLC)58によるより効率的な符号化を行えるようにする。VLC58は、符号化したビットストリームを生成するために、実行長さおよびハフマン符号化技術の使用を採用している。符号化されたビットストリームは出力バッファ60へ送信される。ビットストリームを速度制御装置62へ送信してもよい。速度制御装置62は、基礎品質を維持しながら、量子化器50が使用する量子ビット数の予定を立てる。エントロピー符号化は、無損失形式の圧縮であると考えられる。無損失圧縮とは、符号化されたデータが乱れることなくエントロピー復号器によって復元された場合に、符号化中のデータが全く同一に復元されることを意味する。エントロピー符号器55は、無損失圧縮を実行する。
【0028】
損失圧縮とは、符号化された入力に乱れがない場合であっても、符号化の結果、入力xが同一コピーを生成しないことを意味する。再構成された入力はこれの情報の「損失」部分を有する。テクスチャ符号器47は損失圧縮を実行する。典型的な画像/ビデオ符号器23は、通常、インター符号化予測モードとイントラ符号化予測モードの両方の補正を補助するローカルテクスチャ復号器65を有する。逆量子化器66と、逆DCT68と、加算器69へ送信されたスイッチ46の出力とが協働し、テクスチャ符号器47の出力を復号し、テクスチャ符号器47に入った入力xを再構成する。再構成された入力yはxと似ているが、完全にxと同じではない。一般的な画像/ビデオ「復号器」は、典型的に、逆量子化器66の機能、逆DCT68の機能、さらに、加算器69へ送信されたスイッチ46の出力の機能を備えている。
【0029】
MPEG−4、H.263基線プロファイルのようないくつかの基準においては、デブロッキングフィルタ70は存在しない。MPEG−4、H.263基線プロフィールでは、デブロッキングフィルタは、受信装置のビデオ復号器における処理後ステップと同様、任意である。ITU H.264、Windows(登録商標) Media 9(WM9)、Real Video9(RV9)のような別の基準は、「インループ」デブロッキングフィルタとして公知であるデブロッキングフィルタ70の使用の有効化をサポートする。デブロッキングフィルタ70は、再構成された入力yがブロックを有する場合に発生する「ブロックノイズ」を除去するために使用される。先述したように、いくつかのケースでは、デブロッキングフィルタはブロックノイズを除去する上に、ビデオフレームまたは画像を不明瞭化する効果もある。ブロックノイズアーチファクトと不明瞭アーチファクトの間には相殺が存在する。デブロッキングフィルタ70を有効化することでブロックノイズを低減できるが、これにより画像が不明瞭化してしまうために、感知される視覚品質が劣化する可能性がある。デブロッキングフィルタ70の使用を有効化する基準は、常に、メモリバッファ81を、フィルタリングした再構成済みのビデオブロックまたはフレームy^で更新する。
【数1】
【0030】
デブロッキングフィルタ70の出力をいつ使用すればより良いか、または、デブロッキングフィルタ70の入力をいつ使用すればより良いかを決定する方法を見つけることが大いに有利である。本開示における様々な実施形態は、以前の基準の制限を特定し、解決する。この開示における様々な実施形態は、デブロッキングフィルタ70のような出力アーチファクトフィルタをいつ使用すればより良いか、または、デブロッキングフィルタ70のようなアーチファクトフィルタの入力をいつ使用すればより良いかを評価および決定する方法を示唆している。
【0031】
先述したように、いくつかの基準においては、デブロッキングフィルタ70が有効化されている時に、出力をメモリバッファ81へ送信することができる。メモリバッファ81内部には2つのメモリバッファ、即ち(1)再構成された新規のフレームバッファ82、(2)再構成された古いフレームバッファ84が設けられている。再構成された新規のフレームバッファ82は、現在の処理された再構成フレーム(または部分フレーム)を記憶する。再構成された古いフレームバッファ84は過去の処理済の再構成されたフレームを記憶する。この過去の処理済の再構成されたフレームは(再構成された)基準フレームとして使用される。再構成された基準フレームは、入力フレームバッファ42内における現在のフレームの前または後のフレームであってよい。現在のフレーム(または、現在のフレームからのビデオブロック)、あるいは現在のフレームと再構成された基準フレーム(または別のブロックからのビデオブロック)の間の差分は「現在」符号化されている。現在のフレームの符号化が終了し、入力フレームバッファ42からの入力における次のフレームが符号化されるべく取り出される前に、再構成された古いフレームバッファ84が、再構成された新規のフレームバッファ82の内容を設けたコピーによって更新される。
【0032】
再構成された新規のフレームバッファ82は、空間予測子86で使用するために受信した再構成済みのビデオブロックを送信することができる。再構成された古いフレームバッファ84は、過去に処理された再構成済みのビデオブロックをMEC(動作推定および補正ブロック)87へ送信する。MECブロックは、動作評価器88と動作補正器90を備えている。動作評価器88は、動作補正器90が符号化中のフレームと別のフレームとの差分を補正するために使用できる動作ベクトル(MV)92と動作ベクトル予測子(MVP)を生成する。MV92はエントロピー符号器55によっても使用される。ITU H.264のようないくつかの基準においては、空間予測子86の出力がイントラフレーム予測モードにおいて使用され、減算器44と加算器69の両方に供給し戻される。MPEG−4またはJPEGのようないくつかの基準では、空間予測子86は存在しない。
【0033】
図4Aは図3と類似して見える。しかし、図示目的のみのために、図4Aおよびこれに続く図面では、速度制御装置62とエントロピー符号器55を省略している。これに加え、図4Aおよびこれに続く図面では、図3のデブロッキングフィルタ70の代わりに、より一般的なフィルタであるアーチファクトフィルタ72を使用している。この置き換えの意図は、一般的なアーチファクトフィルタを「インループ」にて使用できることを伝えることである。先述したように、アーチファクトは、復号中に、圧縮されたフレームを再構成する時に現れる。アーチファクトのいくつかの例には、ブロックノイズ、不明瞭性、リンギング、色滲みがある。ブロックノイズは、個々のビデオブロックの独立的な量子化によって生じる。不明瞭性は、高周波DCT係数の粗量子化または省略によって高周波係数を抑圧することで発生する。不明瞭性はまた、低パスフィルタリングまたは平滑化によっても発生する可能性がある。リンギングは、高コントラストエッジロケーションと共に脈動し、高周波係数の量子化または切捨てにより引き起こされうる。色滲みは、彩度成分の高周波係数の抑圧によって生じた、クロミナンスが大きく異なる範囲にて発生する。
【0034】
画像およびビデオ品質の測定に使用される最も一般的に使用されるメトリックの1つは、ピーク信号対ノイズ比(PSNR)であり、これは次の数式1によって定義される:
【数2】
【0035】
ここで、PKSは2乗されたピーク画素値であり、通常は2552である。coding_errorは、一対のビデオブロック間の画素内における差分の平均2乗エラー(MSE)を取ることで計算されることが多い。この一対のビデオブロックは、オリジナル基準フレームからのビデオブロックxと、再構成されたフレームからのビデオブロックyによって構成されている。PSNRは、一対のビデオブロック間におけるcoding_errorの関数である。Coding_errorは、比較中であるビデオブロック内の画素間における類似性の量を示す。類似した画素が多いほどPSNRが大きくなる。PSNRが小さいということは、画素の類似性が低いことを意味する。これに加え、PSNRは平均符号化エラー数を示すためにも使用される。平均coding_errorは<coding_error>で表され、coding_errorの実行平均を取ることで生成できる。この場合、PSNRは、フレーム上のcoding_errorの数である。PSNRはcoding_errorの関数であるが、coding_errorが小さい場合には、ユーザが感知する優れた画像およびビデオ品質が常に生成されるとは限らない。一例として、タイルを張った壁または床の画像は、デブロッキングフィルタをかけた後に不明瞭となる。タイル同士の間の境界、すなわち縁は、全体画像のほんの僅かな部分しか示さない。そのため、coding_errorを画素毎に計算すると、たとえタイルの縁が不明瞭であっても、これによって得られるPSNRは画像およびビデオ品質が良質であることを示す。再構成した画像にデブロッキングフィルタを適用しない場合には、タイルの縁に濃淡のムラが生じる可能性がある。このようなケースでは、PSNRによって感知される画像およびビデオ品質の測定が制限されてしまい望ましくない。
【0036】
PSNRの制限は新規のメトリック、即ちアーチファクト信号対ノイズ比(ASNR)によって克服できる。ASNRメトリックは、アーチファクトの欠損(または存在)を測定する方法を提供する。あるバージョンのASNRメトリック、即ちASNR(yまたはy^)は、図4Bのアーチファクトメトリック生成器101によって生成される。オプションの入力xを使用する場合には、アーチファクトメトリック生成器101によって、別バージョンのASNRメトリックであるASNR(x、yまたはy^)を生成できる。図中では、入力xがオプションであることを示すために、アーチファクトメトリック生成器101内に点線を描いている。ANSRメトリックは様々な具体例を有することができる。
【0037】
符号化アーチファクトまたはcoding_errorを測定する際に使用できる2つのフレームワークは、(1)非オリジナル基準(NR)、または(2)フルオリジナル基準(FR)である。図5AにNRフレームワークの一例を示す。図5Aは、図4Bのアーチファクトメトリック生成器101を使用できる一態様を図示する。図5A中のアーチファクトメトリック生成器101aは、再構成された(REC、オリジナルフレームなし)ビデオブロックまたはフレームのみからのビデオブロックを設けている、感知された画像およびビデオ品質の評価を補助する。非基準フレームは、オリジナルフレームでない任意のフレームであってよい。典型的には、圧縮および再構成されたビデオブロックまたはフレームであってよい。図5Bに、FRフレームワークの一例を示す。図5Bは、図4Bの任意のオリジナル入力xを設けたアーチファクトメトリック生成器101を使用した一態様を図示するブロック線図である。図5Bのアーチファクトメトリック生成器101bは、オリジナル(基準)入力xと、非オリジナル(再構成された)(RED、yまたはy^)ビデオブロックまたはフレームの両方からのビデオブロックを設けている、感知された画像およびビデオ品質の評価を補助する。
【0038】
一般に、アーチファクトメトリック生成器の出力は、アーチファクト量の評価基準である。アーチファクトがブロックノイズである場合には、ASNRメトリックの具体例を使用することができる。この具体例は、ブロックノイズの有無を測定するデブロッキング信号対ノイズ比(DSNR)メトリックである。NRフレームワークでは、アーチファクトメトリック生成器によって実行される生成は再構成されたフレームのみに基づく。アーチファクトフィルタ72がデブロッキングフィルタであれば、図4Bの頂部アーチファクトメトリック生成器101は、xが無い場合にDSNR(y)を出力することができる。DSNR(y)は、ビデオブロックy、即ち再構成されたビデオブロックのブロックノイズの量の評価基準となる。アーチファクトフィルタ72がデブロッキングフィルタであれば、図4Bの底部アーチファクトメトリック生成器101は、xが無い場合にDSNR(y^)を出力することができる。DSNR(y^)は、ビデオブロックy^、即ちアーチファクトをフィルタリングしたビデオブロックのブロックノイズの量の評価基準となる。DSNR(yまたはy^)と書かれたDSNR(y)またはDSNR(y^)は非オリジナル基準(NR)メトリックである。
【0039】
図4Bのアーチファクトメトリック生成器101内にオリジナル入力xが供給される場合には、FRフレームワークを使用してメトリックを生成することができる。FRフレームワークにおけるこのメトリックは、オリジナル基準フレームに対する非基準フレームのアーチファクト量の評価基準となる。アーチファクトフィルタ72がデブロッキングフィルタである場合、図4Bの頂部アーチファクトメトリック生成器101はDSNR(x、y)を出力できる。DSNR(x、y)は、ビデオブロックxに対するビデオブロックyのブロックノイズの量を判断する評価基準となる。アーチファクトフィルタ72がデブロッキングフィルタである場合には、底部アーチファクトメトリック生成器101はDSNR(x、y^)を生成できる。DSNR(x、y^)は、ビデオブロックxに対するビデオブロックy^のブロックノイズの量を判断する評価基準となる。DSNR(x、yまたはy^)と書かれたDSNR(x、y)またはDSNR(x、y^)は、フルオリジナル基準(FR)メトリックである。
【0040】
画像またはフレーム中のブロックノイズの量を測定するために、時に、傾きの平均2乗差(MSDS)メトリックを使用して、再構成された画像またはフレーム中のブロックノイズの量を決定することがある。しかし、MSDSメトリックは、オリジナル画像またはフレームの実テクスチャ内のブロックノイズと、ビデオ符号器のブロック量子化ステップにより導入されたブロックノイズとを区別しない。その上、このMSDSメトリックの使用は人間の視覚感知の使用を役立てたものではない。このMSDSによる制限はDSNRメトリックによって克服できる。DSNRメトリックは、異なるタイプのブロックノイズを明確にすることによって、また、人間視覚感知を考慮することによって、ブロックベースのビデオ符号器の画像およびビデオ品質をより精密に評価するために使用されるので、形式は様々であってよい。先述したように、DSNRメトリックはASNRメトリックの1つの具体例である。
【0041】
アーチファクト信号対ノイズ比(ASNR)メトリックの一般的な形式は、以下の数式2で示される。
【数3】
【0042】
ここで、PKSはピーク画素値2乗の略であり、通常この値は2552である。数式2の分子は、PKS、WS、WP、WTの積を含有している。WS、WP、WTは、画像およびビデオ品質に影響する空間(WS)成分、知覚(WP)成分、時間(WT)成分を明確にするために選択された重量である。数式2の分母はF(x、y)であり、xおよびyのジョイント関数またはディスジョイント関数であってよい。xが使用できない場合には、F(x、y)をF(y)で置き換えることができる。フィルタリングされていない再構成済みビデオブロックまたはフレームであるyを、フィルタリングされた再構成済みビデオブロックまたはフレームであるy^で置き換えられる点にも留意すべきである。
【0043】
F(x、y)に使用できる機能の1つにMSDS_error(x、y)がある。典型的に、MSDS_error(x、y)は、ASNRメトリックのDSNRメトリックの具体例を用いる場合に使用される。一態様では、MSDS_error(x、y)はMSDS(x)とMSDS(y)の間のエラーの2乗である。別の態様では、MSDS_error(x、y)は、MSDS(x)とMSDS(y)の間のエラーの絶対値である。MSDS_error(x、y)は別の変数を有していてよいが、FRフレームワーク中では、MSDS(x)とMSDS(y)の間のエラーの関数であることが多い。NRフレームワーク内では、MSDS_error(x、y)を、相互に比較できる少なくとも2つの異なるMSDS計算で置き換えることが可能である。例えば、MSDS(y)とMSDS(y^)を使用できる。MSDS(x)は、オリジナル基準フレームからの入力ビデオブロックxの関数である。MSDS(yまたはy^)は、再構成されたフレームからのビデオブロックの関数yまたはy^である。
【0044】
傾きの平均2乗差(MSDS)は、多くの場合、全てのビデオブロック境界にて計算され、また、一対の隣接するビデオブロック間の境界付近における異なる3タイプの傾きを設けている。この異なる3タイプの傾きは、通常、同一の画素行上にある画素間で計算される。直接隣り合った、L行を設けた2つの隣接するビデオブロックを考慮する。第1ビデオブロック内の最後2列の画素は、第2ビデオブロック内の第1の2列の画素の隣にある。Type_1の傾きは、第1ビデオブロックの最終列内の画素と、最後から2番目の列内の画素と間で計算される。Type_2の傾きは、第2ビデオブロックの第1列内の画素と第2列内の画素との間で計算される。Type_3の傾きは、第2ビデオブロックの第1列内の画素と、第1ビデオブロックの最終列内の画素との間で計算される。
【0045】
典型的に、MSDSは、数式3に示すように共通の画素行にかけて計算される。
【数4】
【0046】
ここで、画素(i)はi番目の画素グループがL行のいずれかにおける計算に関係していることを表す。この場合、i番目のグループは6ピクセル含んでいる。各ビデオブロック境界について、MSDS(画素(i))はL行にかけて平均化されている。各ビデオブロックおよびビデオブロック境界の全体(平均)MSDSは次の数式4として書かれる。
【数5】
【0047】
ここで、Lは、ビデオブロックの境界を定義する行の数である。
【0048】
しかし、列は画素のアレイであるため、同タイプの全ての傾きを平行して計算することができる。この平行した計算はグラジエントと呼ばれる。そのため、一対の隣接したビデオブロック間の境界付近のMSDSを計算する場合には、次の3つのグラジエントを計算することができる:(1)pre_gradient(タイプ1の傾き)、(2)post_gradient(タイプ2の傾き)、(3)edge_gradient(タイプ3の傾き)。算出したグラジエントはベクトルである。そのため、数式4の平行した例は下の数式(5)によって計算できる。
【数6】
【0049】
ここで、bは任意のビデオブロックを表す。i番目のグループの画素(i=1...L)について、MSDS(b)が、一対の隣接したビデオブロックの間の境界にて計算される。
【0050】
差分ベクトルのL2ノルム(edge_gradient−_average(pre_gradient,post_gradient))を2乗することにより、数式5を実現できる。ノルムは数学的な構造である。L2ノルムは1タイプのノルムであり、ベクトルの大きさを計算するために使用できる。このベクトルの大きさを計算するために、L2ノルムはベクトル成分の2乗の和の平方根を取る。MSDSは数式4、5に示すように計算されることが多いが、edge_gradientと、pre_gradientとpost_gradientの平均との間の差を2乗しない別形が存在してもよい。例えば、代わりにL1ノルムを使用することもできる。本明細書に含まれている実施形態は、タイプ1、タイプ2、タイプ3の傾きを使用するあらゆる別形を包括し、これに適用される。
【0051】
既述のように、F(x、y)にMSDSを使用することで、ASNRメトリックの具体例であるDSNRメトリックが生成される。同様に、F(x、y)の代わりに別の公知のメトリックを使用することで、ASNRメトリックの別の具体例を生成することができる。デブロッキング信号対ノイズ比(DSNR)メトリックの一般的なFR形式は、下の数式6で定義される。
【数7】
【0052】
DSNRメトリックの一般的なNR形式を下の数式7にて定義する。
【数8】
【0053】
図5Aは、図4Bで使用したアーチファクトメトリック生成器の一態様を示しており、この生成器は、再構成された画像/ビデオブロック(1以上)あるいはフレームのみを設けている。図5Aのアーチファクトメトリック生成器101aは、オリジナル基準のないDSNRメトリックを生成する。デブロッキングアーチファクトを評価するために、DSNR(y)とDSNR(y^)の間で比較(図示せず)を行うことができる。数式6または数式7で示すDSNRメトリックの分子は、アーチファクトメトリック生成器101a内で、以下の3つの重量値セレクタで構成された重量値セレクタ(WVS)バンク103を使用して生成することができる:(1)重量WSを出力する空間WVS104;(2)重量WPを出力する知覚WVS105;(3)重量WTを出力する時間WVS106。この重量WS、WP、WTは、事前に選択するか、または入力パラメータZS、ZP、ZTからの復号化処理中に選択することができる。入力パラメータZS、ZP、ZTは、暗号化処理中、または符号器を実行する前に生成できる。分子生成器107は、数式6または7の分子に見られるPKS、Ws、WP、WTの積を計算する。重量WS、WP、WTが全て1と等しい場合には、DSNRメトリックの分子貢献は数式1のPSNRの分子と同じである。分子生成器107内に設ける乗算器108は1つで十分であるが、分子にWS、WP、WT有することによる効果を強調するために2つの分子が示されている。
【0054】
数式7で示すDSNRメトリックの分母は、アーチファクトメトリック生成器101a内で実行される。入力はREC(再構成されたビデオブロックまたはフレーム)であるため、数式2のF(x、y)はRECの関数F(yまたはy^)でしかない。図5Aは、F(yまたはy^)がMSDS(yまたはy^)である場合の例を示す。再構成された入力RECは、yまたはy^のいずれであってもよく、MSDS112は、数式4または数式5のいずれかに見られるとおりに、MSDS(y)およびMSDS(y^)を計算する。
【0055】
割算器109は、分子生成器107の出力(PKS*WS*WP*WT)をMSDS112の出力MSDS(REC(yまたはy^))で割る。ログブロック114は、割算器109によって生成された結果である10*log10を取る。ログブロック114の出力はDSNRメトリックであり、これは、アーチファクトメトリック生成器101で計算したASNR(yまたはy^)の具体例である。
【0056】
図5Bは、図4Bの任意のオリジナル入力xを設けたアーチファクトメトリック生成器101を使用できる一態様を図示する。アーチファクトメトリック生成器101bは、1つのみのMSDS112の代わりに分母生成器110を有する点を除いて、DSNRメトリックであるアーチファクトメトリック生成器101aと類似した構造を有する。分母生成器110は、2つのMSDS112ブロック、減算器44、ノルムファクタ(norm factor)116で構成されている。分母生成器110は2つの入力、即ち(1)オリジナル入力ORIG(x)、(2)再構成された入力REC(yまたはy^)を受信する。減算器44は、MSDS(x)とMSDS(yまたはy^)の間の差を計算し、この差をノルムファクタ116へ送信する。分母生成器110の或る構成では、ノルムファクタ116はこれの入力を2乗できる。別の構成では、ノルムファクタ116はこれの入力の絶対値を取ることができる。いずれのケースにおいても、ノルムファクタ116は、分母生成器110による出力であるMSDS_error(x、y)を生成できる。割算器109は分子生成器107の出力をMSDS_error(x、y)で割り、ログブロック114は、割算器109によって生成された結果の10*log10を取る。ログブロック114の出力はDSNR(ORIG、REC)であり、これは、アーチファクトメトリック生成器101によって生成されたASNR(x、yまたはy^)メトリックの具体例である。DSNRメトリックの空間、知覚、時間成分は、評価中のブロックノイズアーチファクトを逆強調する、強調する、またはこれに対して何もしないことができる。しかし、DSNRはブロックノイズアーチファクトを対象とし、この構造は、これ以外のそこに存在するアーチファクト全てに影響するようになっている。例えば、デブロッキングフィルタを適用した結果生じた不明瞭アーチファクトに対しても、逆強調する、強調する、または同じ状態を維持することができる。
【0057】
一般に、ASNRメトリックのWVSバンク103中のもののような重量の選択処理は、画像/ビデオ品質を向上させる形で行われる。DSNRメトリックでは、正確な量のデブロックノイズは強調され、正確な量の不明瞭性は強調されない。選択処理は図6のグラフ118に基づいている。図6では、グラフ118は、アーチファクト評価器で使用される重量値選択子(WVS)(空間、知覚、時間)を図示する。グラフ118の横座標軸上には2つの印、即ち(1)閾値1を表すTh1、(2)閾値2を表すTh2が存在する。グラフ118の縦座標軸上には、WVSからの重量値を表す3つの印が存在している。一般的入力パラメータZ(ZS、ZP、ZT)が生成され、グラフ118の横座標軸(Z)にマッピングされる。Zは次の3つの範囲のうちの1つにある:(1)0≦Z<Th1:(2)TH1≦Z<Th2;(3)Th2≦Z。WVSからの重量は、Zの範囲によって決定される。WVSは、次の3つの範囲に基づいて重量を選択する:(1)では[WZ]−1が選択され;(2)では1が選択され;(3)ではWzが選択される。[WZ]−1重量は、ブロックノイズアーチファクトの空間、知覚、時間成分を逆強調する。1の重量値はブロックノイズアーチファクトを修正しない。WZ重量は、ブロックノイズアーチファクトの空間、知覚、時間成分を強調することができる。これは、数式2の次のような書き換えからわかる。
【数9】
【0058】
分子成分および分母の対数を取ることにより、重量の影響が加算的、減算的であるか、または影響がないか(重量値が1の場合)が示される。
【0059】
入力パラメータの選択は変化する。しかし、ZS、ZP、ZTの選択は次のとおりであってよい。ZSは、1つの例を通して説明されているマルチステップ処理によって生成できる。近傍D(Eの左側)、B(Eの上)、A(Eの上方左側対角線付近)を有する、符号化対象である現在のビデオブロックEを考慮する。ビデオブロックEの一部と、ビデオブロックAの一部を使用してビデオブロックAEが形成される。ビデオブロックBEとDEも同様に形成できる。各ビデオブロックAE、BE、DEについてDCTを形成し、DCTの平均をZSに使用することができる。ZPは、フレーム全体にかけて平均DCTを計算することによって生成できる。ZTは、1フレーム内の平均DCTと別のフレーム内の平均DCTの間の差を計算することによって生成できる。
【0060】
図7は、一般的なアーチファクトフィルタと、オプションのメトリック制御装置122で構成できるより一般的なアーチファクトメトリック生成器121とを設けた、例証的な画像/ビデオ符号器を図示する。図7において、メトリック制御装置122、並びに入力xは、それぞれオプションであることを示すために破線で描かれている。アーチファクトメトリック生成器121は事前に構成することができ、したがってメトリック制御装置122を必ずしも必要としない。メトリック制御装置122を使用する場合には、この制御装置が入力パラメータをアーチファクトメトリック生成器121へ送る。入力パラメータはアーチファクトメトリック生成器121に記憶されるか、またはメトリック制御装置122によって同生成器121に送られる。アーチファクトメトリック生成器は、1つの出力ではなく、一組のメトリックを出力する。アーチファクトメトリック生成器121はまた、一組のメトリックを計算する際に、オリジナル入力xを使用しても、使用しなくてもよい。
【0061】
図8は、アーチファクトメトリック生成器121の全体構造を図示する。成分ブロック内のサブ[i]は、アーチファクトメトリック生成器121a内の次の2つの態様を示すために使用される:(1)様々なメトリックバージョンを生成できる;(2)全く違うメトリックを生成できる。例えば態様(1)からは、様々な形式のASNRを生成できることがわかる。また、例えば態様(2)からは、デブロッキング(またはブロッキング)メトリック、不明瞭性メトリック、リンギングメトリック、色滲みメトリック、またこれ以外の任意タイプのアーチファクトメトリックを生成できる。使用可能である、異なるメトリックおよび様々なメトリックバージョンを捕獲するための一般的なアーキテクチャを示す。
【0062】
F_errブロック123は、オリジナルビデオブロックまたはフレームの関数の例と、再構成されたビデオブロックまたはフレームの関数の例との間のエラーをとらえるために使用できる。関数同士の間の差は減算器44によって計算され、具体的に選択したFにノルムファクタ(NF)128を選択することができる。アーチファクトメトリック生成器121は、アーチファクトメトリック生成器101の機能を実現することができる。これは、図5Aのアーチファクトメトリック生成器101aのアーキテクチャにおいて、Fの選択がMSDS(y)およびMSDS(y^)であったことを知ることでわかる。図5Bのアーチファクトメトリック生成器101bのアーキテクチャでは、Fの選択はMSDS(x、y)およびMSDS(x、y^)の関数であった。Fの選択は、メトリック制御装置122によって事前構成または送信されることが可能なMETRIC_SORT[i]により制御される。掛ける1を含む、F_errブロック123の出力上のあらゆる動作の組に、調整器130を使用することができる。調整器[i]130は、F_errブロック123の出力を「調整」する。調整器[i]の出力は、メトリックアレンジャ132へ送信することができる。メトリックアレンジャ132は、セレクタ134を使用して、様々なメトリックまたはメトリックバージョンをメトリックバッファ136内へ送る。セレクタ134は内部的に駆動されるか、または、メトリック制御装置122を介してオプションで制御される。出力MSET(ORIG,REC)は,出力MA[1]、MA[2]、MA[N]の組である。MSET(ORIG、REC)のそれぞれは異なるメトリックまたは様々なメトリックバージョンであってよい。図8からは、ASNRメトリックの一般的な形式は調整器(F(x、y))であってよい、即ち、F(x、y)は何らかの別の機能あるいは機能の組によって調整されてよいことを示している。数式2では、調整器は10*log10(PKS*WS*WP*WT)である。
【0063】
図9は、図8のアーチファクトメトリック生成器121aが、様々なバージョンのASNRを実現するように構成できることを図示する。どのバージョンのASNRを出力できるかを選択するために使用できる、追加的なオプションのセレクタ139が設けられている。このオプションのセレクタ139は、図9のアーチファクトメトリック生成器121bを、アーチファクトメトリック生成器101(ASNR出力は1つのみ)と同様に機能するように構成できることを示すために使用されている。オプションのセレクタ139を使用していない場合は、アーチファクトメトリック生成器の出力121bはASNRSET(ORIG、REG)であってよい。先述したように、F_errブロック123は、MSDS(x、y)およびMSDS(x、y^)を実現できる。図9はまた、調整器[i]130を示す。調整器[i]130は数式2の分子を実現し、並びに、割算を行い、割算のログを取ることができる。メトリック制御装置122は、異なる入力パラメータを送信でき、この結果、異なるバージョンの調整器[i]130が得られる。あるいは、METRIC_SORT[i]は、MSDSとは別の関数を選ぶこともできる。別のノルムファクタ(1以上)[i]128を選択することもできる。図9の構成では、一般的な出力ASNRSET(ORIG、REC)はASNR[1]、ASNR[2]、...ASNR[N]であり、これらのうち1つは、セレクタ139が、出力する目的でオプションにて選択することができる。
【0064】
アーチファクトは画像およびビデオ品質に影響するため、符号化処理中に感知した画像およびビデオ品質を評価する上でメトリックを使用する方法が望まれる。図10のアーチファクト評価器140を使用することでこのような方法が可能となる。アーチファクト評価器140は、どの再構成された入力が、画像およびビデオ品質の感知度がより高いかを評価する。典型的には、復号化処理中に、メモリバッファ81は2つの選択のうちの1つによって更新される。典型的に、この選択は、フィルタリングされていない再構成済みのビデオブロック(またはフレーム)yと、(デブロックされた)フィルタリングされた再構成済みのビデオブロック(またはフレーム)y^との間で行われる。より低いビット条件の下では、ブロックノイズは時に優勢なアーチファクトである。そのため、アーチファクトフィルタ72は、典型的にブロックノイズを減少させるように構成されている。これを行う上で、フィルタリングされた再構成済みのビデオブロック(またはフレーム)y^が非常に不明瞭になってしまう可能性がある。y^が非常に不明瞭になると、メモリバッファ81をy^で更新した結果、縁が不明瞭となる。yに濃淡のムラがありすぎる場合、メモリバッファ81をyで更新した結果「濃淡のムラ」が生じる。現在の符号化方法および基準がデブロッキングフィルタ70を使用する場合、これらの方法および基準は常に、メモリバッファ81をデブロッキングフィルタ70の出力によって更新する。現在の符号化方法および基準は、メモリバッファ81を「適切に」変更する方法を有していないために制限されてしまう。現在の符号化方法および基準におけるこの制限により、特にインター符号化予測モードにて、粗悪な画像/ビデオ品質が別のフレームへ伝播される。
【0065】
図10のアーチファクト評価器を使用することで、「インループ」、即ち画像/ビデオ符号器のフィードバックループにより、どのようにメモリバッファを更新するかを「適切な」方法で変更できるようになる。「適切に」とは、視覚的品質の感知度が高いのは、再構成されたビデオブロック(またはフレーム)yまたはy^のうちどちらであるかに応じて、画像/ビデオ符号器が入力をメモリバッファ81内に調整できることを意味する。アーチファクト評価器140は、yまたはy^のうちどちらの画像およびビデオ品質がより優れているかを評価する。yの品質がより優れている場合には、アーチファクト評価器140は出力QA(x、y、y^)をyに設定し、メモリバッファ81をyで更新する。y^の品質の方が優れている場合には、アーチファクト評価器140は出力QA(x、y、y^)をy^に設定し、メモリバッファ81をy^で更新する。yとy^の両方の画像およびビデオ品質が許容できる画像およびビデオ品質でない場合には、アーチファクト評価器140は画像/ビデオ符号器23に、別の量子化係数の組で再符号化を行うように命令する。そのため、アーチファクト評価器140によって評価される画像およびビデオ品質を、フレーム中の任意のビデオブロックを符号化および再構成した直後に適切に向上させることができる。したがって、アーチファクト評価器140を使用することで、現在の符号化方法および基準の制限を克服できる。図10に見られる、アーチファクト評価器140を使用したアーキテクチャは、現在の方法および基準の画像/ビデオ品質を向上するだけでなく、特にインター符号化予測モードについて、粗悪な画像/ビデオ品質がこれ以降に処理されるフレームへ伝播することを防止するというさらなる利点を提供する。
【0066】
これに加え、ITU H.264,WM9、RV9のようないくつかの基準は、デブロッキングフィルタの使用をサポートし、アーチファクト評価器140の使用は標準準拠である。例えば、メモリバッファ81を更新するために、符号器内のどの再構成済み(フィルタリングされた、またはフィルタリングされていない)ビデオブロックまたはフレームが使用されたかの決定が、ビデオ復号器へ送られる。これにより、ビデオ符号器およびビデオ復号器を「同期させる」ために、この決定をビデオ復号器ヘッダ情報内に挿入する、即ち、デブロッキングフィルタがオンであるかオフであるかをビデオ復号器に知らせるビットストリームの一部として挿入することができる。
【0067】
図11Aは、出力決定を行うために1タイプのメトリックを使用する或るバージョンのアーチファクト評価器101を図示する。図11Aは、図10で使用されているアーチファクト評価器140の構成を図示する。アーチファクト評価器140は、2つの入力y、y^を受信する。あるいは、メトリック制御装置122から入力xと入力パラメータ(IP)を受信する。メトリック制御装置122から送られたアーチファクト評価器140aのための入力パラメータ(IP)を事前に構成できるようになり、即ち、メトリック制御装置122からの直接入力が不要となる。そのため、図11Aでは、メトリック制御装置122からの入力パラメータが省略される。アーチファクト評価器140は、入力x(受信した場合)とyをアーチファクトメトリック生成器101内へ送り、さらに、入力x(受信した場合)とy^を別のアーチファクトメトリック生成器101内へ送る。アーチファクトメトリック生成器101の構造の実施形態を図5A、図5Bの両方に示し、これの機能については上述したとおりであり、どちらを使用してもよい。図11Aでは、頂部アーチファクトメトリック生成器101がASNR(x、y^)を出力し(ASNR(y^)と交互に使用できる)、底部アーチファクト評価器101がASNR(x、y)を出力する(ASNR(y)と交互に使用できる)。決定論理142がASNR(x、y^)とASNR(x、y)を受信し、yまたはy^を出力すると決定するか、または、2つの入力ASNRメトリックに基づいて、ライン出力REを再符号化するために出力する。図11Aに図示した論理を、DSNRメトリックのみにではなく、任意のASNRメトリックに使用できることが理解される。
【0068】
図11Bは、複数のメトリックまたはメトリックバージョン使用して出力決定を行う、或るバージョンのアーチファクト評価器121を図示する。図11Bは、図10で使用されているアーチファクト評価器140の構成を図示する。アーチファクト評価器140は、2つの入力y、y^を受信するかまたはメトリック制御装置122から入力xと入力パラメータ(IP)を受信する。メトリック制御装置122から送られたアーチファクト評価器140b用の入力パラメータ(IP)を事前に構成する、即ち、メトリック制御装置122からの直接入力が不要となる。そのため、図11Bでは、メトリック制御装置122からの入力パラメータが省略されている。アーチファクト評価器140は、入力x(受信した場合)とyをアーチファクトメトリック生成器121内へ送り、さらに、入力x(受信した場合)とy^を別のアーチファクトメトリック生成器121内へ送る。アーチファクトメトリック生成器121の構造を図8、図9の両方に示しており、これらの機能は上述したとおりであり、どちらを使用してもよい。図11Bでは、頂部アーチファクトメトリック生成器121が、MSET(x、y^)を出力し(MSET(y^)と交互に使用できる)、底部アーチファクト評価器121がMSET(x、y)を出力する(MSET(y)と交互に使用できる)。決定論理143はMSET(x、y^)、MSET(x、y)を受信し、2つの入力メトリックの組に基づいて、yまたはy^を出力するように決定するか、またはライン出力REを再符号化するべく作動させる。
【0069】
図12は、図11A中の決定論理142ブロックの使用される方法のフローチャートを図示する。減算器44は、ASNRメトリック入力、ASNR(x、y^)、ASNR(x、y)を減算し、この結果の差が出力品質144ブロックへ送信される。出力品質144ブロック内で、この差がゼロ146と比較される。この比較による差がゼロよりも大きい場合には、(1)ASNR(x、y^)>ASNR(x、y)であり、出力148はy^であり、(2)ASNR(x、y^)>画像およびビデオ品質の許容可能な閾値であることを意味する。上記差がゼロよりも小さい場合には、(1)ASNR(x、y)>ASNR(x、y^)であり、出力150はyであり、(2)ASNR(x、y)>画像およびビデオ品質の許容可能な閾値となる。制御(CTRL)信号が有効である場合には、決定論理142ブロックの出力(RE)は画像/ビデオ符号器23にxを再符号化するように命令できる。これは、ASNR(x、y)とASNR(x、y^)の両方が、画像およびビデオ品質の許容可能な閾値未満である場合に可能である。出力QA(x、y、y^)は、符号器メモリバッファを更新するために使用できる(図10参照)。図12のフローチャートに図示された論理は、DSNRメトリックのみにではなく、あらゆるASNRメトリックに使用することができる。
【0070】
図13は、図11B中の決定論理143により決定された方法のフローチャートを図示する。このフローチャートは、任意のアーチファクトメトリックまたはアーチファクトメトリックの変形例の設計論理を表す。例えば、A[1]はブロックノイズであってよく、MA[1](x、y^)はDSNR(x、y^)であってよい。同様に、A[2]は不明瞭性であってよく、MA[2](x、y^)はy^の不明瞭性の量を測定するメトリックであってよい。また同様に、MA[1](x、y)はDSNR(x、y)であってよく、MA[2](x、y)はyの不明瞭性の量を測定するメトリックであってよい。MA[2](x、y、y^)は、ブロックノイズを逆強調する別バージョンのDSNRであってよく、そのため、MA[1](x、y、y^)に関連して不明瞭性がより強調される。MA[2](x、y、y^)も、不明瞭性の量を測定するメトリックであってよい。
【0071】
フィルタリングした再構成済みのビデオブロック(またはフレーム)y^内部に存在するブロックノイズの量を調べるために、MA[1](x、y^)とブロックノイズ閾値との間の比較160が行われる。比較160が真(はい)である場合には、y^は「許容可能」に感知された画像およびビデオ品質を満たす。さらに、y^内の不明瞭性の量を調べるために、MA[2](x、y^)と不明瞭性閾値との間の比較162を行う。比較162が真(はい)である場合には、y^は、不明瞭性とブロックノイズの両方について「許容可能に」感知された画像およびビデオ品質を満たす。この結果による出力QA(x、y、y^)は164y^となり、符号器メモリバッファ(図10を参照)がy^で更新される。
【0072】
比較160または162のいずれかが間違い(いいえ)である場合には、フィルタリングされていない再構成済みのビデオブロック(またはフレーム)yにおける不明瞭性の量を調べるために、MA[1](x、y)と不明瞭性閾値の間の比較166を行う。比較166が真(はい)である場合には、yは「許容可能に」感知された画像およびビデオ品質を満たす。さらに、y内における不明瞭性の量を調べるために、MA[2](x、y)と不明瞭性閾値の間の比較168を行う。比較168が真(はい)の場合、yは不明瞭性とブロックノイズの両方について「許容可能に」感知された画像およびビデオ品質を満たす。この結果の出力QA(x、y、y^)は170yになり、符号器メモリバッファ(図10を参照)がy^で更新される。比較166または168が間違い(いいえ)である場合には、ライン出力REはアクティブ172となり、オリジナルビデオブロック(またはフレーム)xの再符号化が実行される。
【0073】
図14は、アーチファクト評価処理のフローチャートを図示する。アーチファクト評価のスタート後、metric_sort180の選択は、どのタイプまたはバージョンのメトリックが生成されるかに基づく。オリジナルxビデオブロックまたはフレーム(1が使用可能である場合)のローディングと、使用可能な再構成済みのyまたはy^ビデオブロック(1以上)あるいはフレーム(1以上)182のローディングが実行される。関数F、および/またはノルムファクタ(NF)184を用いて、エラー(1以上)を計算できる。調整器[i]は符号化186の前または最中(シリアルまたはパラレル)に実行できる。次に、調整器[i]と、関数Fおよび/またはNF188で計算したエラー(1以上)の結果との組み合わせが実行される。この結果の組み合わせ(1以上)により、2つのMSETメトリック結果、即ちMSET(x、y)とMSET(x、y^)が得られる。MSET(x、y)とMSET(x、y^)の各メンバーはアレンジ192できる。MSET(x、y)のメンバーとMSET(x、y^)のメンバーの間の少なくとも1つの比較に基づいた論理決定194は、y、y^のいずれの画像および/またはビデオ品質が優れているかを決定する。この決定に基づいて、出力QA(x、y、y^)、yとy^のうちの優れた一方を使用して、符号化処理中に、符号器メモリバッファインループが更新される。決定論理194ブロックはまた、yまたはy^の画像およびビデオ品質が許容不能である場合には、再符号化信号REを送信することができる。
【0074】
多数の異なる実施形態を説明してきた。これらの技術は、符号化処理中に、アーチファクト評価器インループを使用して画像およびビデオ品質を向上させることで、ビデオ符号化を向上させることができる。これらの技術は基準に準拠する。これらの技術はさらに、ハードウェア、ソフトウェア、ファームウェア、これらの任意の組み合わせにおいて実現される。ソフトウェア内で実現された場合、これらの技術は、コンピュータ読み出し可能プログラムコード(コンピュータコードとも呼ばれる)を備えたコンピュータ読み出し可能媒体に向けられる。このプログラムコードは、デバイス内で実行されると、ビデオシーケンスを符号化し、上述した1以上の方法を実行する。
【0075】
コンピュータ読み出し可能プログラムコードは、コンピュータ読み出し可能な命令の形式でメモリ上に記憶できる。このケースでは、DSPのようなプロセッサはメモリに記憶されている命令を実行して、本明細書で説明された1以上の技術を実行することができる。いくつかのケースでは、この技術は、符号化処理を加速化させるために、動作推定器のような様々なハードウェア成分を呼び出すDSPによって実行される。別のケースでは、ビデオ符号器はマイクロプロセッサ、1以上のアプリケーション専用集積回路(ASIC)、1以上のフィールドプログラム可能なゲートアレイ(FPGA)、またはこれ以外の何らかのハードウェア/ソフトウェアの組み合わせとして実現される。これらおよびこれ以外の実施形態は、請求項の範囲内に包括される。
【技術分野】
【0001】
本開示は、ディジタル画像およびビデオ処理に関し、より具体的には、アーチファクト (artifact)評価による向上した画像/ビデオ品質に関する。
【背景技術】
【0002】
ディジタルビデオ機能は、ディジタルテレビ、ディジタルダイレクト放送システム、無線通信デバイス、パーソナルディジタルアシスタント(PDA)、ラップトップコンピュータ、デスクトップコンピュータ、ディジタルカメラ、ディジタル記憶デバイス、移動式または衛星無線電話などの幅広いデバイスに採用できる。ディジタルビデオおよび映像デバイスは、フル動画ビデオシーケンスおよび映像を作成、修正、送信、記憶、記録、再生を行う上で、従来のアナログビデオおよび映像システムよりも著しく向上している。ビデオシーケンス(ビデオクリップとも呼ばれる)はフレームのシーケンスで構成されている。さらに、映像はフレームとして表すことができる。ビデオまたは映像からのフレームあるいはフレームの一部は、多くの場合、画像と呼ばれる。
【0003】
移動電話やハンドヘルド型ディジタルカメラのようなディジタルデバイスは、写真および/またはビデオの両方を撮ることができる。写真およびビデオシーケンスは記憶され、別のデバイスへ無線またはケーブルで送信される。送信前に、フレームをサンプリングおよびディジタル化することができる。ディジタル化の後に、フレームをより小さいブロックにパース(parse)し、符号化することができる。符号化は、時に圧縮と同義語である。圧縮によって、フレームを表すために必要なデータの全体(通常は冗長)量(即ちビット)を減少させることができる。ビデオおよび画像データを圧縮することにより、多くの画像およびビデオ符号化基準が、ビデオシーケンスおよび画像の送信速度を向上させることが可能となる。典型的には、圧縮されたビデオシーケンスおよび圧縮された画像は符号化されたビットストリーム、符号化されたパケット、またはビットストリームと呼ばれる。多くの画像およびビデオ符号化基準は、送信するビットを、圧縮技術を用いずに使用したものよりも少なくすることで、ビデオおよび画像送信を促進するように設計された画像/ビデオ圧縮技術を利用する。
【0004】
圧縮をサポートするために、ディジタルビデオおよび/または写真デバイスは、典型的に、ディジタルビデオシーケンスを圧縮し、写真を圧縮するための符号器と、ディジタルビデオシーケンスを解凍するための復号器とを含んでいる。多くの場合、符号器と復号器は、ビデオシーケンスを定義するフレーム内の画素のブロック上で動作する集積符号器/復号器(CODEC)を形成する。例えば国際電気通信連合(ITU)H.264や動画エキスパートグループ(MPEG)−4、ジョイント・フォトグラフ・エキスパート・グループ(JPEG)のような基準においては、典型的に、符号器は送信するビデオフレームまたは画像を、「マクロブロック」と呼ばれるビデオブロックに分割する。典型的な1つのマクロブロックのサイズは、高さ16画素×幅16画素である。様々なサイズのビデオブロックを使用できる。画像およびビデオ処理の当業者は、ビデオブロック、または画像ブロックという用語を相互交換可能に使用できることを認識する。時に相互交換可能性において明確にするために、「画像/ビデオブロック」という用語を使用する。ITU H.264基準は、16×16ビデオブロック、16×8ビデオブロック、8×16画像ブロック、8×8画像ブロック、8×4画像ブロック、4×8画像ブロック、4×4画像ブロックの処理をサポートする。これ以外の基準は、サイズの異なる画像ブロックをサポートすることができる。時に当業者は、符号化処理を説明する場合に、ビデオブロックまたはフレームを相互交換可能に使用し、また時に、これをビデオ物質としてのビデオブロックまたはフレームとも呼ぶ。一般に、ビデオ符号化基準は、ビデオユニットの符号化および復号化をサポートし、この場合、ビデオユニットはビデオブロックまたはビデオフレームであってよい。
【0005】
ビデオフレーム中の各ビデオブロックについて、符号器は多数の「予測」モードで動作する。或るモードでは、「最予測ブロック」と呼ばれる最も類似したビデオブロックを識別するために、1以上の直前のビデオフレーム(または後続のフレーム)の類似サイズのビデオブロックを検索する。現在のビデオブロックを別のフレームのビデオブロックと比較する処理は、一般にブロックレベル動作推定(BME)と呼ばれる。BMEは、各ブロックに動作ベクトルを生成する。現在のビデオブロックに「最予測ブロック」が識別されると、符号器は、現在のビデオブロックと最予測ブロックとの間の差を符号化することができる。現在のビデオブロックと最予測ブロックの間の差を使用するこの処理は、動作補正と呼ばれる処理が含まれる。具体的には、動作補正は、動作ベクトルを使用して、最予測ブロックを取り出し、次に、入力ビデオブロックから最予測ブロックを除去して差分ブロックを生成する動作を意味する。動作補正の後に、典型的には、一連の追加的な符号化ステップが実行されて、差分ブロックの符号化が終了する。これらの追加的な符号化ステップは、使用する符号化基準に依存する。別モードでは、符号器は、同一フレーム内における、1以上の、近接し、サイズが類似したビデオブロックを検索し、これらブロックからの情報を符号化処理の補助に使用する。
【0006】
一般に、符号化処理の一部として、ビデオブロック(または差分ビデオブロック)の変換が実行される。この変換は、ビデオブロック(または差分ビデオブロック)が画素で表されている状態から、変換係数で表される状態に変換する。ビデオ符号化における典型的な変換は離散コサイン変換(DCT)と呼ばれる。DCTは、ビデオブロックデータを画素ドメインから空間周波数ドメイン(domain)へ変換する。空間周波数ドメインでは、データはDCTブロック係数で表される。DCTブロック係数は、ビデオブロック内に検出された空間周波数の数および大きさを表す。DCTの計算が終わると、「ブロック量子化」として公知の処理によって、DCTブロック係数を量子化することができる。DCTブロック係数の量子化(ビデオブロックまたは差分ビデオブロックのいずれかからのもの)は、ブロックから空間冗長性の一部を除去する。この「ブロック量子化」処理中に、量子化したDCTブロック係数を閾値と比較することで、さらなる空間冗長性を除去することができる。量子化されたDCTブロック係数の大きさが閾値未満である場合、係数は廃棄されるか、ゼロ値に設定される。
【0007】
しかし、符号器におけるブロック量子化では、符号器において圧縮されているビデオフレームまたは画像を再構成する再に、復号器に異なるアーチファクトが発生することが多い。アーチファクトの一例に、再構成されたビデオ画像内へのブロックの出現があり、これは「ブロックノイズ」として知られている。いくつかの基準は、符号化処理の一部としてデブロッキングフィルタを含めることでこの問題に対処しようとしてきた。いくつかのケースでは、デブロッキングフィルタはブロックノイズを除去するだけでなく、さらに、ビデオフレームまたは画像を汚したり不明瞭にする効果もあり、これは不明瞭性アーチファクトとして知られている。そのため、画像/ビデオ品質がデブロッキングフィルタからの「ブロックノイズ」または不明瞭性によって劣化してしまう。感知される視覚的品質への符号化アーチファクトの影響を減じる方法および装置は著しい利点となる。
【発明の概要】
【0008】
添付の図面および以下の説明において、1以上の実施形態の詳細を述べる。別の特徴、目的、利点は説明、図面、特許請求項から明らかになる。
【0009】
一般に、ビデオブロックを処理するアーチファクト評価器を採用した画像/ビデオ符号化および復号化システムは、画像/ビデオ品質を向上することができる。符号化処理中に、テクスチャ復号器およびビデオブロック、またはインター符号化もしくはイントラ符号化予測モードからのフレーム結果はフィルタリングされていない再構成済みビデオブロックまたはフレームと同期する。フィルタリングされていない再構成済みのビデオブロックまたはフレームは、アーチファクトフィルタを通過して、フィルタリングされた再構成済みのビデオブロックまたはフレームを生じる。アーチファクトフィルタはデブロッキングフィルタであるか、またはデブロッキングフィルタとして構成されていてよい。アーキテクトフィルタがデブロッキングフィルタである、もしくはこれとして構成されている場合には、ブロックノイズが抑圧される。しかし、フィルタリング後に得られる、フィルタリングされた再構成済みのビデオブロックまたはフレームは不明瞭になる可能性がある。現在の符号化方法および基準は、インループメモリバッファの更新方法を「適合的に」変更する手法を有していないために制限されてしまう。現在の符号化方法および基準におけるこの制限のために、特にインター符号化予測モードにて、他のフレームに粗悪な画像/ビデオ品質が伝播されてしまう。
【0010】
アーチファクト評価器を使用することで、この現在の符号化方法および基準の制限を克服することができる。アーチファクト評価器を使用することで、感知された画像/ビデオ品質に基づき、デブロッキングフィルタのようなアーチファクトフィルタの出力をいつ使用するのがよいか、また、インループメモリバッファを更新するために、デブロッキングフィルタのようなアーチファクトフィルタの入力をいつ使用するのがよいかを評価および決定できる。アーチファクト評価器を使用することにより、現在のフレームの現在の方法および基準を画像/ビデオ品質を向上するだけでなく、特にインター符号化予測モードで使用している場合に、粗悪な画像/ビデオ品質が後続の処理済みフレームへ伝播することを防止するというさらなる利点が得られる。アーチファクト評価器はまた、基準に準拠していてよい。
【0011】
フィルタリングされていない再構成済みのビデオブロックまたはフレームと、フィルタリングされた再構成済みビデオブロックまたはフレームの各々について、アーチファクトの量を測定するべくアーチファクトメトリック(artifact metric)を生成することができる。アーチファクトメトリックは非オリジナル基準(NR)またはフルオリジナル基準(FR)であってよい。NRおよびFRアーチファクトメトリックの間の差は、オリジナルビデオブロックまたはフレームの使用可能性に基づく。アーチファクトメトリック生成器は、アーチファクトメトリックを生成し、また、アーチファクト評価器の一部である。アーチファクトメトリックが生成されると、インループメモリバッファを更新する上でビデオブロックまたはフレームが使用される感知された画像/ビデオ品質に基づいて決定される。アーチファクトメトリックの生成方法には応用形があり、また、インループメモリバッファを更新する上で用いられる、フィルタリングされた再構成済みビデオブロックまたはフレーム、あるいはフィルタリングされていないビデオブロックまたはフレームを使用する様々な方法が存在する。これらの応用形は以下の実施形態において例証されている。
【0012】
一実施形態では、アーチファクトメトリック生成器は、NRアーチファクトメトリックを生成するためにビデオ符号器に使用される。
【0013】
別の実施形態では、アーチファクトメトリック生成器は、FRアーチファクトメトリックを生成するためにビデオ符号器に使用される。
【0014】
さらなる実施形態では、NRまたはFRアーチファクトメトリックは、ブロックノイズの量を測定するために使用される。
【0015】
さらなる実施形態では、構成可能なアーチファクトメトリック生成器は、複数のアーチファクトメトリックを一度に出力するために使用される。
【0016】
またさらなる実施形態では、インループメモリバッファを更新するためにはどのビデオブロックまたはフレームを使用するべきかを決める決定は、1タイプのみのメトリック、例えばブロックノイズ(またはデブロックノイズ)メトリックに基づいている。
【0017】
別の実施形態では、インループメモリバッファを更新するためにはどのビデオブロックまたはフレームを使用するべきかを決める決定は、複数タイプのメトリック、例えばブロックノイズ(またはデブロックノイズ)メトリックおよび不明瞭性メトリックに基づいていてよい。
【0018】
上記のいくつかの実施形態を組み合わせて他の実施形態を形成することができる。
【0019】
1以上の実施形態の詳細を、添付の図面および以下の説明において述べる。これ以外の特徴、目的、利点は、説明、図面、特許請求項から明らかになる。
【図面の簡単な説明】
【0020】
【図1A】本明細書で説明した技術に基づくアーチファクト評価器を採用した画像/ビデオ符号化および復号化システムを図示する。
【図1B】本明細書で説明した技術に基づいて使用できる2つのCODECを図示する。
【図2】グループオブピクチャーズ(GOP)として公知のビデオシーケンスを図示する。
【図3】図1Aまたは図1Bのデバイスに使用できる例証的な画像/ビデオ符号器を図示する。
【図4A】図3の単純化した例証的な画像/ビデオ符号器を図示しており、この場合、図3のデブロッキングフィルの代わりにより一般的なアーチファクトフィルタを使用している。
【図4B】再構成され、オプションのオリジナル画像/ビデオブロック(1以上)またはフレームの両方を評価する上で補助となるアーチファクトメトリック生成器の使用を図示する。
【図5A】図4Bで使用されるアーチファクトメトリック生成器の一態様を図示し、この場合、再構成済みの画像/ビデオブロック(1以上)またはフレームのみを示す。
【図5B】再構成されオプションである画像/ビデオブロック(1以上)またはフレームを設けたブロック線図であり、図4Bで使用したアーチファクトメトリック生成器の一態様を図示する。
【図6】ASNRメトリックを計算するのに使用される、アーチファクトメトリック生成器で使用される重量値選択(WVS)を図示したグラフである。
【図7】汎用アーチファクトフィルタと、より一般的な、オプションのメトリック制御装置で構成されていてよいアーチファクトメトリック生成器を設けた例証的な画像/ビデオ符号器を図示する。
【図8】アーチファクトメトリック生成器の一般的な構成を図示する。
【図9】別バージョンのASNRメトリックを実現するために、図8のアーチファクトメトリック生成器を構成できることを図示する。
【図10】典型的な画像/ビデオ符号器のフィードバックループ内にアーチファクト評価器を使用できることを図示する。
【図11A】1タイプのメトリックを使用して出力決定を行う、1バージョンのアーチファクト評価器を図示する。
【図11B】出力決定を行うために複数タイプのメトリックを使用する、1バージョンのアーチファクト評価器を図示する。
【図12】図11A中の決定論理ブロックによって使用される方法のフローチャートを図示する。
【図13】図11B中の決定論理ブロックに使用される方法のフローチャートを図示する。
【図14】アーチファクト評価処理のフローチャートを図示する。
【詳細な説明】
【0021】
本明細書で使用されている「例証的な」という用語は、「例、実例、または例証として働く」ことを意味する。本明細書で「例証的な」として述べられている任意の実施形態、構成、または設計は、他の実施形態もしくは設計にかけて好ましいあるいは有利なものとして構造される必要はない。一般に、本明細書で述べているように、アーチファクトを評価するだけでなく、評価の結果として感知した画像/ビデオ品質を向上させる新規の方法および装置である。
【0022】
図1Aは、本明細書で説明している実施形態による技術に基づいてアーチファクト評価機を採用できる画像/ビデオ符号化および復号化システム2を図示する。図1Aに示すように、ソースデバイス4aは、ビデオシーケンスまたは画像をディスプレイデバイス8へ送信する前にビデオまたは映像入力をとらえるキャプチャデバイス6を含有している。このビデオシーケンスまたは画像を、メモリ10あるいは画像/ビデオ処理ユニット14へ送信することができる。ビデオシーケンスあるいは画像は、画像/ビデオ処理ユニット14からメモリ10内へ書き込むことができる。画像/ビデオ処理ユニット14がメモリ10あるいはキャプチャデバイス6から受信する入力を、画像/ビデオ符号器へ送信することができる。画像/ビデオ符号器は画像/ビデオ処理ユニット14内にあってよい。ビデオ符号器が出力し符号化されたビットストリームを送信機16に記憶するか、送信機16へ送信することができる。ソースデバイス4aは、符号化したビットストリームを受信デバイス18aへチャンネル19を介して送信する。チャネル19は無線チャネルまたは有線チャネルであってよい。媒体は空気や、ソースデバイスを受信デバイスに接続できる任意のケーブルおよびリンクであってよい。例えば、受信機20を、画像/ビデオ復号器21を駆動する任意のコンピュータ、PDA、移動電話、ディジタルテレビ、DVDプレーヤ、画像/ビデオ試験装置の内部に設置して、上述の符号化されたビットストリームを復号することができる。画像/ビデオ復号器21の出力は復号化された信号を、ディスプレイデバイス22へ送信でき、そこで復号化された信号が表示される。
【0023】
ソースデバイス4aおよび/または受信デバイス18aの全体または一部は、移動電話用の「チップセット」または「チップ」を備えることができ、これらには、ハードウェア、ソフトウェア、ファームウェアの組み合わせ、および/または1以上のマイクロプロセッサ、ディジタル信号プロセッサ(DSP)、アプリケーション限定集積回路(ASIC)、フィールドプログラム可能ゲートアレイ(FPGA)、またはこれらの様々な組み合わせが含まれる。これに加え、別の実施形態では、画像/ビデオ符号化および復号化システム2は、CODEC24の一部としての1つのソースデバイス4bおよび1つの受信デバイス18bの内部に設けることができる。したがって、図1Bに見られるように、ソースデバイス4bと受信デバイス18bは、ソースおよび受信デバイスが少なくとも1つのCODEC24を含有できることを例示している。CODEC24は画像/ビデオ符号器23および画像/ビデオ符号器21で構成されており、また、画像/ビデオ処理ユニット14内に配置することができる。
【0024】
図2は、グループオブピクチャー(GOP)130として知られたビデオシーケンスを図示する。インター符号化予測モード符号化は、典型的に、異なるフレーム内のビデオブロック同士の間における時間および空間差分を補正するために使用される。イントラ符号化予測モード符号化は、同一フレーム内のビデオブロック同士の間の空間差分を補正するために使用される。インター符号化モードとイントラ符号化モードの両方は、現在のビデオブロックの符号化を補助するために過去の(または後にバッファされる)情報を使用することから、予測モードとして知られている。いくつかの基準において、Iフレーム31は、典型的に、過去のフレームとはコンテンツが異なるシーンの第1フレームまたはフレームのシーケンスを示す。典型的に、Iフレームはイントラ符号化モードを使用する。Bフレーム(1以上)33とPフレーム(1以上)35はイントラ符号化モードとインター符号化モードの両方を使用する。Pフレーム(1以上)35は、過去のフレームを符号化の基準として使用し、一方、Bフレーム(1以上)33は過去のフレームと将来のフレームの両方を符号化の基準として使用できる。しかし、ITU H.264標準では、任意のフレーム(Iフレーム、Pフレーム、Bフレーム)を符号化の基準として使用できる。将来のフレームを使用できる理由は、通常、フレームはバッファされ、バッファ内の過去または将来のフレームからのデータを符号化の最中にある現在のフレームに使用できるためである。
【0025】
図3は、図1Aまたは図1Bのデバイスに使用できる例証的な画像/ビデオ符号器を図示する。ビデオシーケンスからのフレームまたはフレームの一部を、CODEC24の一部であってよい画像/ビデオ符号器23内部、および/または画像/ビデオ処理ユニット14内部の入力フレームバッファ42内に配置することができる。入力フレームバッファ42からの入力フレームはブロック内へパースされ(ビデオブロックは任意のサイズのものでよいが、標準的なスクエアビデオブロックサイズは4×4、8×8、または16×16である)、ビデオブロックバッファ43へ送信される。典型的に、ビデオブロックバッファ43はビデオブロックを減算器44へ送信する。減算器44は、スイッチ46の出力からビデオブロックxを減算する。スイッチ46は、符号化のイントラ符号化予測モードとインター符号化予測モードを切り換える。スイッチ46がインター符号化予測モードを有効にしている場合には、ビデオブロックxと、別の(過去または後続の)フレームからのビデオブロックとの差が、テクスチャ符号器47によって圧縮される。スイッチ46がイントラ符号化予測モードを有効にしている場合には、ビデオブロックxと、過去のビデオブロックから予測された値との差がテクスチャ(texture)符号器47によって圧縮される。
【0026】
テクスチャ符号器47は、画素ドメインからの入力x(ビデオブロックまたは別のブロック)を空間周波数ドメインに変換するDCTブロック48を有する。空間周波数ドメイン内では、データはDCTブロック係数によって表される。DCTブロック係数は、ビデオブロック内で検出された空間周波数の数と大きさを表す。DCTの計算後に、「ブロック量子化」として公知の処理にて、DCTブロック係数を量子化器50を用いて量子化することができる。DCTブロック係数の量子化(ビデオブロックまたはビデオブロックの差から得たもの)が、ブロックからの空間冗長の一部を除去する。この「ブロック量子化」処理中、量子化したDCTブロック係数と閾値を比較することにより、さらなる空間冗長を除去することが可能である。この比較は、量子化器50、または別の比較器ブロック(図示せず)の内部において実施される。量子化したDCTブロック係数の大きさが閾値よりも小さい場合には、この係数は廃棄されるか、ゼロ値に設定される。
【0027】
ブロック量子化の後に、結果の出力が別個の2つの構造、即ち(1)テクスチャ復号器65、(2)エントロピー符号器55へ送信される。テクスチャ復号器65は、再構成された画像/ビデオブロックまたはフレームの製造を補助する逆量子化器66を備えている。この逆量子化器66は符号化予測モードで使用される。エントロピー符号器55は、送信または記憶のためのビットストリームを生成する。エントロピー符号器55はスキャナ56を含有していてよく、このスキャナ56は、ブロック量子化された出力を受信し、これを再順序化することで、可変長符号器(VLC)58によるより効率的な符号化を行えるようにする。VLC58は、符号化したビットストリームを生成するために、実行長さおよびハフマン符号化技術の使用を採用している。符号化されたビットストリームは出力バッファ60へ送信される。ビットストリームを速度制御装置62へ送信してもよい。速度制御装置62は、基礎品質を維持しながら、量子化器50が使用する量子ビット数の予定を立てる。エントロピー符号化は、無損失形式の圧縮であると考えられる。無損失圧縮とは、符号化されたデータが乱れることなくエントロピー復号器によって復元された場合に、符号化中のデータが全く同一に復元されることを意味する。エントロピー符号器55は、無損失圧縮を実行する。
【0028】
損失圧縮とは、符号化された入力に乱れがない場合であっても、符号化の結果、入力xが同一コピーを生成しないことを意味する。再構成された入力はこれの情報の「損失」部分を有する。テクスチャ符号器47は損失圧縮を実行する。典型的な画像/ビデオ符号器23は、通常、インター符号化予測モードとイントラ符号化予測モードの両方の補正を補助するローカルテクスチャ復号器65を有する。逆量子化器66と、逆DCT68と、加算器69へ送信されたスイッチ46の出力とが協働し、テクスチャ符号器47の出力を復号し、テクスチャ符号器47に入った入力xを再構成する。再構成された入力yはxと似ているが、完全にxと同じではない。一般的な画像/ビデオ「復号器」は、典型的に、逆量子化器66の機能、逆DCT68の機能、さらに、加算器69へ送信されたスイッチ46の出力の機能を備えている。
【0029】
MPEG−4、H.263基線プロファイルのようないくつかの基準においては、デブロッキングフィルタ70は存在しない。MPEG−4、H.263基線プロフィールでは、デブロッキングフィルタは、受信装置のビデオ復号器における処理後ステップと同様、任意である。ITU H.264、Windows(登録商標) Media 9(WM9)、Real Video9(RV9)のような別の基準は、「インループ」デブロッキングフィルタとして公知であるデブロッキングフィルタ70の使用の有効化をサポートする。デブロッキングフィルタ70は、再構成された入力yがブロックを有する場合に発生する「ブロックノイズ」を除去するために使用される。先述したように、いくつかのケースでは、デブロッキングフィルタはブロックノイズを除去する上に、ビデオフレームまたは画像を不明瞭化する効果もある。ブロックノイズアーチファクトと不明瞭アーチファクトの間には相殺が存在する。デブロッキングフィルタ70を有効化することでブロックノイズを低減できるが、これにより画像が不明瞭化してしまうために、感知される視覚品質が劣化する可能性がある。デブロッキングフィルタ70の使用を有効化する基準は、常に、メモリバッファ81を、フィルタリングした再構成済みのビデオブロックまたはフレームy^で更新する。
【数1】
【0030】
デブロッキングフィルタ70の出力をいつ使用すればより良いか、または、デブロッキングフィルタ70の入力をいつ使用すればより良いかを決定する方法を見つけることが大いに有利である。本開示における様々な実施形態は、以前の基準の制限を特定し、解決する。この開示における様々な実施形態は、デブロッキングフィルタ70のような出力アーチファクトフィルタをいつ使用すればより良いか、または、デブロッキングフィルタ70のようなアーチファクトフィルタの入力をいつ使用すればより良いかを評価および決定する方法を示唆している。
【0031】
先述したように、いくつかの基準においては、デブロッキングフィルタ70が有効化されている時に、出力をメモリバッファ81へ送信することができる。メモリバッファ81内部には2つのメモリバッファ、即ち(1)再構成された新規のフレームバッファ82、(2)再構成された古いフレームバッファ84が設けられている。再構成された新規のフレームバッファ82は、現在の処理された再構成フレーム(または部分フレーム)を記憶する。再構成された古いフレームバッファ84は過去の処理済の再構成されたフレームを記憶する。この過去の処理済の再構成されたフレームは(再構成された)基準フレームとして使用される。再構成された基準フレームは、入力フレームバッファ42内における現在のフレームの前または後のフレームであってよい。現在のフレーム(または、現在のフレームからのビデオブロック)、あるいは現在のフレームと再構成された基準フレーム(または別のブロックからのビデオブロック)の間の差分は「現在」符号化されている。現在のフレームの符号化が終了し、入力フレームバッファ42からの入力における次のフレームが符号化されるべく取り出される前に、再構成された古いフレームバッファ84が、再構成された新規のフレームバッファ82の内容を設けたコピーによって更新される。
【0032】
再構成された新規のフレームバッファ82は、空間予測子86で使用するために受信した再構成済みのビデオブロックを送信することができる。再構成された古いフレームバッファ84は、過去に処理された再構成済みのビデオブロックをMEC(動作推定および補正ブロック)87へ送信する。MECブロックは、動作評価器88と動作補正器90を備えている。動作評価器88は、動作補正器90が符号化中のフレームと別のフレームとの差分を補正するために使用できる動作ベクトル(MV)92と動作ベクトル予測子(MVP)を生成する。MV92はエントロピー符号器55によっても使用される。ITU H.264のようないくつかの基準においては、空間予測子86の出力がイントラフレーム予測モードにおいて使用され、減算器44と加算器69の両方に供給し戻される。MPEG−4またはJPEGのようないくつかの基準では、空間予測子86は存在しない。
【0033】
図4Aは図3と類似して見える。しかし、図示目的のみのために、図4Aおよびこれに続く図面では、速度制御装置62とエントロピー符号器55を省略している。これに加え、図4Aおよびこれに続く図面では、図3のデブロッキングフィルタ70の代わりに、より一般的なフィルタであるアーチファクトフィルタ72を使用している。この置き換えの意図は、一般的なアーチファクトフィルタを「インループ」にて使用できることを伝えることである。先述したように、アーチファクトは、復号中に、圧縮されたフレームを再構成する時に現れる。アーチファクトのいくつかの例には、ブロックノイズ、不明瞭性、リンギング、色滲みがある。ブロックノイズは、個々のビデオブロックの独立的な量子化によって生じる。不明瞭性は、高周波DCT係数の粗量子化または省略によって高周波係数を抑圧することで発生する。不明瞭性はまた、低パスフィルタリングまたは平滑化によっても発生する可能性がある。リンギングは、高コントラストエッジロケーションと共に脈動し、高周波係数の量子化または切捨てにより引き起こされうる。色滲みは、彩度成分の高周波係数の抑圧によって生じた、クロミナンスが大きく異なる範囲にて発生する。
【0034】
画像およびビデオ品質の測定に使用される最も一般的に使用されるメトリックの1つは、ピーク信号対ノイズ比(PSNR)であり、これは次の数式1によって定義される:
【数2】
【0035】
ここで、PKSは2乗されたピーク画素値であり、通常は2552である。coding_errorは、一対のビデオブロック間の画素内における差分の平均2乗エラー(MSE)を取ることで計算されることが多い。この一対のビデオブロックは、オリジナル基準フレームからのビデオブロックxと、再構成されたフレームからのビデオブロックyによって構成されている。PSNRは、一対のビデオブロック間におけるcoding_errorの関数である。Coding_errorは、比較中であるビデオブロック内の画素間における類似性の量を示す。類似した画素が多いほどPSNRが大きくなる。PSNRが小さいということは、画素の類似性が低いことを意味する。これに加え、PSNRは平均符号化エラー数を示すためにも使用される。平均coding_errorは<coding_error>で表され、coding_errorの実行平均を取ることで生成できる。この場合、PSNRは、フレーム上のcoding_errorの数である。PSNRはcoding_errorの関数であるが、coding_errorが小さい場合には、ユーザが感知する優れた画像およびビデオ品質が常に生成されるとは限らない。一例として、タイルを張った壁または床の画像は、デブロッキングフィルタをかけた後に不明瞭となる。タイル同士の間の境界、すなわち縁は、全体画像のほんの僅かな部分しか示さない。そのため、coding_errorを画素毎に計算すると、たとえタイルの縁が不明瞭であっても、これによって得られるPSNRは画像およびビデオ品質が良質であることを示す。再構成した画像にデブロッキングフィルタを適用しない場合には、タイルの縁に濃淡のムラが生じる可能性がある。このようなケースでは、PSNRによって感知される画像およびビデオ品質の測定が制限されてしまい望ましくない。
【0036】
PSNRの制限は新規のメトリック、即ちアーチファクト信号対ノイズ比(ASNR)によって克服できる。ASNRメトリックは、アーチファクトの欠損(または存在)を測定する方法を提供する。あるバージョンのASNRメトリック、即ちASNR(yまたはy^)は、図4Bのアーチファクトメトリック生成器101によって生成される。オプションの入力xを使用する場合には、アーチファクトメトリック生成器101によって、別バージョンのASNRメトリックであるASNR(x、yまたはy^)を生成できる。図中では、入力xがオプションであることを示すために、アーチファクトメトリック生成器101内に点線を描いている。ANSRメトリックは様々な具体例を有することができる。
【0037】
符号化アーチファクトまたはcoding_errorを測定する際に使用できる2つのフレームワークは、(1)非オリジナル基準(NR)、または(2)フルオリジナル基準(FR)である。図5AにNRフレームワークの一例を示す。図5Aは、図4Bのアーチファクトメトリック生成器101を使用できる一態様を図示する。図5A中のアーチファクトメトリック生成器101aは、再構成された(REC、オリジナルフレームなし)ビデオブロックまたはフレームのみからのビデオブロックを設けている、感知された画像およびビデオ品質の評価を補助する。非基準フレームは、オリジナルフレームでない任意のフレームであってよい。典型的には、圧縮および再構成されたビデオブロックまたはフレームであってよい。図5Bに、FRフレームワークの一例を示す。図5Bは、図4Bの任意のオリジナル入力xを設けたアーチファクトメトリック生成器101を使用した一態様を図示するブロック線図である。図5Bのアーチファクトメトリック生成器101bは、オリジナル(基準)入力xと、非オリジナル(再構成された)(RED、yまたはy^)ビデオブロックまたはフレームの両方からのビデオブロックを設けている、感知された画像およびビデオ品質の評価を補助する。
【0038】
一般に、アーチファクトメトリック生成器の出力は、アーチファクト量の評価基準である。アーチファクトがブロックノイズである場合には、ASNRメトリックの具体例を使用することができる。この具体例は、ブロックノイズの有無を測定するデブロッキング信号対ノイズ比(DSNR)メトリックである。NRフレームワークでは、アーチファクトメトリック生成器によって実行される生成は再構成されたフレームのみに基づく。アーチファクトフィルタ72がデブロッキングフィルタであれば、図4Bの頂部アーチファクトメトリック生成器101は、xが無い場合にDSNR(y)を出力することができる。DSNR(y)は、ビデオブロックy、即ち再構成されたビデオブロックのブロックノイズの量の評価基準となる。アーチファクトフィルタ72がデブロッキングフィルタであれば、図4Bの底部アーチファクトメトリック生成器101は、xが無い場合にDSNR(y^)を出力することができる。DSNR(y^)は、ビデオブロックy^、即ちアーチファクトをフィルタリングしたビデオブロックのブロックノイズの量の評価基準となる。DSNR(yまたはy^)と書かれたDSNR(y)またはDSNR(y^)は非オリジナル基準(NR)メトリックである。
【0039】
図4Bのアーチファクトメトリック生成器101内にオリジナル入力xが供給される場合には、FRフレームワークを使用してメトリックを生成することができる。FRフレームワークにおけるこのメトリックは、オリジナル基準フレームに対する非基準フレームのアーチファクト量の評価基準となる。アーチファクトフィルタ72がデブロッキングフィルタである場合、図4Bの頂部アーチファクトメトリック生成器101はDSNR(x、y)を出力できる。DSNR(x、y)は、ビデオブロックxに対するビデオブロックyのブロックノイズの量を判断する評価基準となる。アーチファクトフィルタ72がデブロッキングフィルタである場合には、底部アーチファクトメトリック生成器101はDSNR(x、y^)を生成できる。DSNR(x、y^)は、ビデオブロックxに対するビデオブロックy^のブロックノイズの量を判断する評価基準となる。DSNR(x、yまたはy^)と書かれたDSNR(x、y)またはDSNR(x、y^)は、フルオリジナル基準(FR)メトリックである。
【0040】
画像またはフレーム中のブロックノイズの量を測定するために、時に、傾きの平均2乗差(MSDS)メトリックを使用して、再構成された画像またはフレーム中のブロックノイズの量を決定することがある。しかし、MSDSメトリックは、オリジナル画像またはフレームの実テクスチャ内のブロックノイズと、ビデオ符号器のブロック量子化ステップにより導入されたブロックノイズとを区別しない。その上、このMSDSメトリックの使用は人間の視覚感知の使用を役立てたものではない。このMSDSによる制限はDSNRメトリックによって克服できる。DSNRメトリックは、異なるタイプのブロックノイズを明確にすることによって、また、人間視覚感知を考慮することによって、ブロックベースのビデオ符号器の画像およびビデオ品質をより精密に評価するために使用されるので、形式は様々であってよい。先述したように、DSNRメトリックはASNRメトリックの1つの具体例である。
【0041】
アーチファクト信号対ノイズ比(ASNR)メトリックの一般的な形式は、以下の数式2で示される。
【数3】
【0042】
ここで、PKSはピーク画素値2乗の略であり、通常この値は2552である。数式2の分子は、PKS、WS、WP、WTの積を含有している。WS、WP、WTは、画像およびビデオ品質に影響する空間(WS)成分、知覚(WP)成分、時間(WT)成分を明確にするために選択された重量である。数式2の分母はF(x、y)であり、xおよびyのジョイント関数またはディスジョイント関数であってよい。xが使用できない場合には、F(x、y)をF(y)で置き換えることができる。フィルタリングされていない再構成済みビデオブロックまたはフレームであるyを、フィルタリングされた再構成済みビデオブロックまたはフレームであるy^で置き換えられる点にも留意すべきである。
【0043】
F(x、y)に使用できる機能の1つにMSDS_error(x、y)がある。典型的に、MSDS_error(x、y)は、ASNRメトリックのDSNRメトリックの具体例を用いる場合に使用される。一態様では、MSDS_error(x、y)はMSDS(x)とMSDS(y)の間のエラーの2乗である。別の態様では、MSDS_error(x、y)は、MSDS(x)とMSDS(y)の間のエラーの絶対値である。MSDS_error(x、y)は別の変数を有していてよいが、FRフレームワーク中では、MSDS(x)とMSDS(y)の間のエラーの関数であることが多い。NRフレームワーク内では、MSDS_error(x、y)を、相互に比較できる少なくとも2つの異なるMSDS計算で置き換えることが可能である。例えば、MSDS(y)とMSDS(y^)を使用できる。MSDS(x)は、オリジナル基準フレームからの入力ビデオブロックxの関数である。MSDS(yまたはy^)は、再構成されたフレームからのビデオブロックの関数yまたはy^である。
【0044】
傾きの平均2乗差(MSDS)は、多くの場合、全てのビデオブロック境界にて計算され、また、一対の隣接するビデオブロック間の境界付近における異なる3タイプの傾きを設けている。この異なる3タイプの傾きは、通常、同一の画素行上にある画素間で計算される。直接隣り合った、L行を設けた2つの隣接するビデオブロックを考慮する。第1ビデオブロック内の最後2列の画素は、第2ビデオブロック内の第1の2列の画素の隣にある。Type_1の傾きは、第1ビデオブロックの最終列内の画素と、最後から2番目の列内の画素と間で計算される。Type_2の傾きは、第2ビデオブロックの第1列内の画素と第2列内の画素との間で計算される。Type_3の傾きは、第2ビデオブロックの第1列内の画素と、第1ビデオブロックの最終列内の画素との間で計算される。
【0045】
典型的に、MSDSは、数式3に示すように共通の画素行にかけて計算される。
【数4】
【0046】
ここで、画素(i)はi番目の画素グループがL行のいずれかにおける計算に関係していることを表す。この場合、i番目のグループは6ピクセル含んでいる。各ビデオブロック境界について、MSDS(画素(i))はL行にかけて平均化されている。各ビデオブロックおよびビデオブロック境界の全体(平均)MSDSは次の数式4として書かれる。
【数5】
【0047】
ここで、Lは、ビデオブロックの境界を定義する行の数である。
【0048】
しかし、列は画素のアレイであるため、同タイプの全ての傾きを平行して計算することができる。この平行した計算はグラジエントと呼ばれる。そのため、一対の隣接したビデオブロック間の境界付近のMSDSを計算する場合には、次の3つのグラジエントを計算することができる:(1)pre_gradient(タイプ1の傾き)、(2)post_gradient(タイプ2の傾き)、(3)edge_gradient(タイプ3の傾き)。算出したグラジエントはベクトルである。そのため、数式4の平行した例は下の数式(5)によって計算できる。
【数6】
【0049】
ここで、bは任意のビデオブロックを表す。i番目のグループの画素(i=1...L)について、MSDS(b)が、一対の隣接したビデオブロックの間の境界にて計算される。
【0050】
差分ベクトルのL2ノルム(edge_gradient−_average(pre_gradient,post_gradient))を2乗することにより、数式5を実現できる。ノルムは数学的な構造である。L2ノルムは1タイプのノルムであり、ベクトルの大きさを計算するために使用できる。このベクトルの大きさを計算するために、L2ノルムはベクトル成分の2乗の和の平方根を取る。MSDSは数式4、5に示すように計算されることが多いが、edge_gradientと、pre_gradientとpost_gradientの平均との間の差を2乗しない別形が存在してもよい。例えば、代わりにL1ノルムを使用することもできる。本明細書に含まれている実施形態は、タイプ1、タイプ2、タイプ3の傾きを使用するあらゆる別形を包括し、これに適用される。
【0051】
既述のように、F(x、y)にMSDSを使用することで、ASNRメトリックの具体例であるDSNRメトリックが生成される。同様に、F(x、y)の代わりに別の公知のメトリックを使用することで、ASNRメトリックの別の具体例を生成することができる。デブロッキング信号対ノイズ比(DSNR)メトリックの一般的なFR形式は、下の数式6で定義される。
【数7】
【0052】
DSNRメトリックの一般的なNR形式を下の数式7にて定義する。
【数8】
【0053】
図5Aは、図4Bで使用したアーチファクトメトリック生成器の一態様を示しており、この生成器は、再構成された画像/ビデオブロック(1以上)あるいはフレームのみを設けている。図5Aのアーチファクトメトリック生成器101aは、オリジナル基準のないDSNRメトリックを生成する。デブロッキングアーチファクトを評価するために、DSNR(y)とDSNR(y^)の間で比較(図示せず)を行うことができる。数式6または数式7で示すDSNRメトリックの分子は、アーチファクトメトリック生成器101a内で、以下の3つの重量値セレクタで構成された重量値セレクタ(WVS)バンク103を使用して生成することができる:(1)重量WSを出力する空間WVS104;(2)重量WPを出力する知覚WVS105;(3)重量WTを出力する時間WVS106。この重量WS、WP、WTは、事前に選択するか、または入力パラメータZS、ZP、ZTからの復号化処理中に選択することができる。入力パラメータZS、ZP、ZTは、暗号化処理中、または符号器を実行する前に生成できる。分子生成器107は、数式6または7の分子に見られるPKS、Ws、WP、WTの積を計算する。重量WS、WP、WTが全て1と等しい場合には、DSNRメトリックの分子貢献は数式1のPSNRの分子と同じである。分子生成器107内に設ける乗算器108は1つで十分であるが、分子にWS、WP、WT有することによる効果を強調するために2つの分子が示されている。
【0054】
数式7で示すDSNRメトリックの分母は、アーチファクトメトリック生成器101a内で実行される。入力はREC(再構成されたビデオブロックまたはフレーム)であるため、数式2のF(x、y)はRECの関数F(yまたはy^)でしかない。図5Aは、F(yまたはy^)がMSDS(yまたはy^)である場合の例を示す。再構成された入力RECは、yまたはy^のいずれであってもよく、MSDS112は、数式4または数式5のいずれかに見られるとおりに、MSDS(y)およびMSDS(y^)を計算する。
【0055】
割算器109は、分子生成器107の出力(PKS*WS*WP*WT)をMSDS112の出力MSDS(REC(yまたはy^))で割る。ログブロック114は、割算器109によって生成された結果である10*log10を取る。ログブロック114の出力はDSNRメトリックであり、これは、アーチファクトメトリック生成器101で計算したASNR(yまたはy^)の具体例である。
【0056】
図5Bは、図4Bの任意のオリジナル入力xを設けたアーチファクトメトリック生成器101を使用できる一態様を図示する。アーチファクトメトリック生成器101bは、1つのみのMSDS112の代わりに分母生成器110を有する点を除いて、DSNRメトリックであるアーチファクトメトリック生成器101aと類似した構造を有する。分母生成器110は、2つのMSDS112ブロック、減算器44、ノルムファクタ(norm factor)116で構成されている。分母生成器110は2つの入力、即ち(1)オリジナル入力ORIG(x)、(2)再構成された入力REC(yまたはy^)を受信する。減算器44は、MSDS(x)とMSDS(yまたはy^)の間の差を計算し、この差をノルムファクタ116へ送信する。分母生成器110の或る構成では、ノルムファクタ116はこれの入力を2乗できる。別の構成では、ノルムファクタ116はこれの入力の絶対値を取ることができる。いずれのケースにおいても、ノルムファクタ116は、分母生成器110による出力であるMSDS_error(x、y)を生成できる。割算器109は分子生成器107の出力をMSDS_error(x、y)で割り、ログブロック114は、割算器109によって生成された結果の10*log10を取る。ログブロック114の出力はDSNR(ORIG、REC)であり、これは、アーチファクトメトリック生成器101によって生成されたASNR(x、yまたはy^)メトリックの具体例である。DSNRメトリックの空間、知覚、時間成分は、評価中のブロックノイズアーチファクトを逆強調する、強調する、またはこれに対して何もしないことができる。しかし、DSNRはブロックノイズアーチファクトを対象とし、この構造は、これ以外のそこに存在するアーチファクト全てに影響するようになっている。例えば、デブロッキングフィルタを適用した結果生じた不明瞭アーチファクトに対しても、逆強調する、強調する、または同じ状態を維持することができる。
【0057】
一般に、ASNRメトリックのWVSバンク103中のもののような重量の選択処理は、画像/ビデオ品質を向上させる形で行われる。DSNRメトリックでは、正確な量のデブロックノイズは強調され、正確な量の不明瞭性は強調されない。選択処理は図6のグラフ118に基づいている。図6では、グラフ118は、アーチファクト評価器で使用される重量値選択子(WVS)(空間、知覚、時間)を図示する。グラフ118の横座標軸上には2つの印、即ち(1)閾値1を表すTh1、(2)閾値2を表すTh2が存在する。グラフ118の縦座標軸上には、WVSからの重量値を表す3つの印が存在している。一般的入力パラメータZ(ZS、ZP、ZT)が生成され、グラフ118の横座標軸(Z)にマッピングされる。Zは次の3つの範囲のうちの1つにある:(1)0≦Z<Th1:(2)TH1≦Z<Th2;(3)Th2≦Z。WVSからの重量は、Zの範囲によって決定される。WVSは、次の3つの範囲に基づいて重量を選択する:(1)では[WZ]−1が選択され;(2)では1が選択され;(3)ではWzが選択される。[WZ]−1重量は、ブロックノイズアーチファクトの空間、知覚、時間成分を逆強調する。1の重量値はブロックノイズアーチファクトを修正しない。WZ重量は、ブロックノイズアーチファクトの空間、知覚、時間成分を強調することができる。これは、数式2の次のような書き換えからわかる。
【数9】
【0058】
分子成分および分母の対数を取ることにより、重量の影響が加算的、減算的であるか、または影響がないか(重量値が1の場合)が示される。
【0059】
入力パラメータの選択は変化する。しかし、ZS、ZP、ZTの選択は次のとおりであってよい。ZSは、1つの例を通して説明されているマルチステップ処理によって生成できる。近傍D(Eの左側)、B(Eの上)、A(Eの上方左側対角線付近)を有する、符号化対象である現在のビデオブロックEを考慮する。ビデオブロックEの一部と、ビデオブロックAの一部を使用してビデオブロックAEが形成される。ビデオブロックBEとDEも同様に形成できる。各ビデオブロックAE、BE、DEについてDCTを形成し、DCTの平均をZSに使用することができる。ZPは、フレーム全体にかけて平均DCTを計算することによって生成できる。ZTは、1フレーム内の平均DCTと別のフレーム内の平均DCTの間の差を計算することによって生成できる。
【0060】
図7は、一般的なアーチファクトフィルタと、オプションのメトリック制御装置122で構成できるより一般的なアーチファクトメトリック生成器121とを設けた、例証的な画像/ビデオ符号器を図示する。図7において、メトリック制御装置122、並びに入力xは、それぞれオプションであることを示すために破線で描かれている。アーチファクトメトリック生成器121は事前に構成することができ、したがってメトリック制御装置122を必ずしも必要としない。メトリック制御装置122を使用する場合には、この制御装置が入力パラメータをアーチファクトメトリック生成器121へ送る。入力パラメータはアーチファクトメトリック生成器121に記憶されるか、またはメトリック制御装置122によって同生成器121に送られる。アーチファクトメトリック生成器は、1つの出力ではなく、一組のメトリックを出力する。アーチファクトメトリック生成器121はまた、一組のメトリックを計算する際に、オリジナル入力xを使用しても、使用しなくてもよい。
【0061】
図8は、アーチファクトメトリック生成器121の全体構造を図示する。成分ブロック内のサブ[i]は、アーチファクトメトリック生成器121a内の次の2つの態様を示すために使用される:(1)様々なメトリックバージョンを生成できる;(2)全く違うメトリックを生成できる。例えば態様(1)からは、様々な形式のASNRを生成できることがわかる。また、例えば態様(2)からは、デブロッキング(またはブロッキング)メトリック、不明瞭性メトリック、リンギングメトリック、色滲みメトリック、またこれ以外の任意タイプのアーチファクトメトリックを生成できる。使用可能である、異なるメトリックおよび様々なメトリックバージョンを捕獲するための一般的なアーキテクチャを示す。
【0062】
F_errブロック123は、オリジナルビデオブロックまたはフレームの関数の例と、再構成されたビデオブロックまたはフレームの関数の例との間のエラーをとらえるために使用できる。関数同士の間の差は減算器44によって計算され、具体的に選択したFにノルムファクタ(NF)128を選択することができる。アーチファクトメトリック生成器121は、アーチファクトメトリック生成器101の機能を実現することができる。これは、図5Aのアーチファクトメトリック生成器101aのアーキテクチャにおいて、Fの選択がMSDS(y)およびMSDS(y^)であったことを知ることでわかる。図5Bのアーチファクトメトリック生成器101bのアーキテクチャでは、Fの選択はMSDS(x、y)およびMSDS(x、y^)の関数であった。Fの選択は、メトリック制御装置122によって事前構成または送信されることが可能なMETRIC_SORT[i]により制御される。掛ける1を含む、F_errブロック123の出力上のあらゆる動作の組に、調整器130を使用することができる。調整器[i]130は、F_errブロック123の出力を「調整」する。調整器[i]の出力は、メトリックアレンジャ132へ送信することができる。メトリックアレンジャ132は、セレクタ134を使用して、様々なメトリックまたはメトリックバージョンをメトリックバッファ136内へ送る。セレクタ134は内部的に駆動されるか、または、メトリック制御装置122を介してオプションで制御される。出力MSET(ORIG,REC)は,出力MA[1]、MA[2]、MA[N]の組である。MSET(ORIG、REC)のそれぞれは異なるメトリックまたは様々なメトリックバージョンであってよい。図8からは、ASNRメトリックの一般的な形式は調整器(F(x、y))であってよい、即ち、F(x、y)は何らかの別の機能あるいは機能の組によって調整されてよいことを示している。数式2では、調整器は10*log10(PKS*WS*WP*WT)である。
【0063】
図9は、図8のアーチファクトメトリック生成器121aが、様々なバージョンのASNRを実現するように構成できることを図示する。どのバージョンのASNRを出力できるかを選択するために使用できる、追加的なオプションのセレクタ139が設けられている。このオプションのセレクタ139は、図9のアーチファクトメトリック生成器121bを、アーチファクトメトリック生成器101(ASNR出力は1つのみ)と同様に機能するように構成できることを示すために使用されている。オプションのセレクタ139を使用していない場合は、アーチファクトメトリック生成器の出力121bはASNRSET(ORIG、REG)であってよい。先述したように、F_errブロック123は、MSDS(x、y)およびMSDS(x、y^)を実現できる。図9はまた、調整器[i]130を示す。調整器[i]130は数式2の分子を実現し、並びに、割算を行い、割算のログを取ることができる。メトリック制御装置122は、異なる入力パラメータを送信でき、この結果、異なるバージョンの調整器[i]130が得られる。あるいは、METRIC_SORT[i]は、MSDSとは別の関数を選ぶこともできる。別のノルムファクタ(1以上)[i]128を選択することもできる。図9の構成では、一般的な出力ASNRSET(ORIG、REC)はASNR[1]、ASNR[2]、...ASNR[N]であり、これらのうち1つは、セレクタ139が、出力する目的でオプションにて選択することができる。
【0064】
アーチファクトは画像およびビデオ品質に影響するため、符号化処理中に感知した画像およびビデオ品質を評価する上でメトリックを使用する方法が望まれる。図10のアーチファクト評価器140を使用することでこのような方法が可能となる。アーチファクト評価器140は、どの再構成された入力が、画像およびビデオ品質の感知度がより高いかを評価する。典型的には、復号化処理中に、メモリバッファ81は2つの選択のうちの1つによって更新される。典型的に、この選択は、フィルタリングされていない再構成済みのビデオブロック(またはフレーム)yと、(デブロックされた)フィルタリングされた再構成済みのビデオブロック(またはフレーム)y^との間で行われる。より低いビット条件の下では、ブロックノイズは時に優勢なアーチファクトである。そのため、アーチファクトフィルタ72は、典型的にブロックノイズを減少させるように構成されている。これを行う上で、フィルタリングされた再構成済みのビデオブロック(またはフレーム)y^が非常に不明瞭になってしまう可能性がある。y^が非常に不明瞭になると、メモリバッファ81をy^で更新した結果、縁が不明瞭となる。yに濃淡のムラがありすぎる場合、メモリバッファ81をyで更新した結果「濃淡のムラ」が生じる。現在の符号化方法および基準がデブロッキングフィルタ70を使用する場合、これらの方法および基準は常に、メモリバッファ81をデブロッキングフィルタ70の出力によって更新する。現在の符号化方法および基準は、メモリバッファ81を「適切に」変更する方法を有していないために制限されてしまう。現在の符号化方法および基準におけるこの制限により、特にインター符号化予測モードにて、粗悪な画像/ビデオ品質が別のフレームへ伝播される。
【0065】
図10のアーチファクト評価器を使用することで、「インループ」、即ち画像/ビデオ符号器のフィードバックループにより、どのようにメモリバッファを更新するかを「適切な」方法で変更できるようになる。「適切に」とは、視覚的品質の感知度が高いのは、再構成されたビデオブロック(またはフレーム)yまたはy^のうちどちらであるかに応じて、画像/ビデオ符号器が入力をメモリバッファ81内に調整できることを意味する。アーチファクト評価器140は、yまたはy^のうちどちらの画像およびビデオ品質がより優れているかを評価する。yの品質がより優れている場合には、アーチファクト評価器140は出力QA(x、y、y^)をyに設定し、メモリバッファ81をyで更新する。y^の品質の方が優れている場合には、アーチファクト評価器140は出力QA(x、y、y^)をy^に設定し、メモリバッファ81をy^で更新する。yとy^の両方の画像およびビデオ品質が許容できる画像およびビデオ品質でない場合には、アーチファクト評価器140は画像/ビデオ符号器23に、別の量子化係数の組で再符号化を行うように命令する。そのため、アーチファクト評価器140によって評価される画像およびビデオ品質を、フレーム中の任意のビデオブロックを符号化および再構成した直後に適切に向上させることができる。したがって、アーチファクト評価器140を使用することで、現在の符号化方法および基準の制限を克服できる。図10に見られる、アーチファクト評価器140を使用したアーキテクチャは、現在の方法および基準の画像/ビデオ品質を向上するだけでなく、特にインター符号化予測モードについて、粗悪な画像/ビデオ品質がこれ以降に処理されるフレームへ伝播することを防止するというさらなる利点を提供する。
【0066】
これに加え、ITU H.264,WM9、RV9のようないくつかの基準は、デブロッキングフィルタの使用をサポートし、アーチファクト評価器140の使用は標準準拠である。例えば、メモリバッファ81を更新するために、符号器内のどの再構成済み(フィルタリングされた、またはフィルタリングされていない)ビデオブロックまたはフレームが使用されたかの決定が、ビデオ復号器へ送られる。これにより、ビデオ符号器およびビデオ復号器を「同期させる」ために、この決定をビデオ復号器ヘッダ情報内に挿入する、即ち、デブロッキングフィルタがオンであるかオフであるかをビデオ復号器に知らせるビットストリームの一部として挿入することができる。
【0067】
図11Aは、出力決定を行うために1タイプのメトリックを使用する或るバージョンのアーチファクト評価器101を図示する。図11Aは、図10で使用されているアーチファクト評価器140の構成を図示する。アーチファクト評価器140は、2つの入力y、y^を受信する。あるいは、メトリック制御装置122から入力xと入力パラメータ(IP)を受信する。メトリック制御装置122から送られたアーチファクト評価器140aのための入力パラメータ(IP)を事前に構成できるようになり、即ち、メトリック制御装置122からの直接入力が不要となる。そのため、図11Aでは、メトリック制御装置122からの入力パラメータが省略される。アーチファクト評価器140は、入力x(受信した場合)とyをアーチファクトメトリック生成器101内へ送り、さらに、入力x(受信した場合)とy^を別のアーチファクトメトリック生成器101内へ送る。アーチファクトメトリック生成器101の構造の実施形態を図5A、図5Bの両方に示し、これの機能については上述したとおりであり、どちらを使用してもよい。図11Aでは、頂部アーチファクトメトリック生成器101がASNR(x、y^)を出力し(ASNR(y^)と交互に使用できる)、底部アーチファクト評価器101がASNR(x、y)を出力する(ASNR(y)と交互に使用できる)。決定論理142がASNR(x、y^)とASNR(x、y)を受信し、yまたはy^を出力すると決定するか、または、2つの入力ASNRメトリックに基づいて、ライン出力REを再符号化するために出力する。図11Aに図示した論理を、DSNRメトリックのみにではなく、任意のASNRメトリックに使用できることが理解される。
【0068】
図11Bは、複数のメトリックまたはメトリックバージョン使用して出力決定を行う、或るバージョンのアーチファクト評価器121を図示する。図11Bは、図10で使用されているアーチファクト評価器140の構成を図示する。アーチファクト評価器140は、2つの入力y、y^を受信するかまたはメトリック制御装置122から入力xと入力パラメータ(IP)を受信する。メトリック制御装置122から送られたアーチファクト評価器140b用の入力パラメータ(IP)を事前に構成する、即ち、メトリック制御装置122からの直接入力が不要となる。そのため、図11Bでは、メトリック制御装置122からの入力パラメータが省略されている。アーチファクト評価器140は、入力x(受信した場合)とyをアーチファクトメトリック生成器121内へ送り、さらに、入力x(受信した場合)とy^を別のアーチファクトメトリック生成器121内へ送る。アーチファクトメトリック生成器121の構造を図8、図9の両方に示しており、これらの機能は上述したとおりであり、どちらを使用してもよい。図11Bでは、頂部アーチファクトメトリック生成器121が、MSET(x、y^)を出力し(MSET(y^)と交互に使用できる)、底部アーチファクト評価器121がMSET(x、y)を出力する(MSET(y)と交互に使用できる)。決定論理143はMSET(x、y^)、MSET(x、y)を受信し、2つの入力メトリックの組に基づいて、yまたはy^を出力するように決定するか、またはライン出力REを再符号化するべく作動させる。
【0069】
図12は、図11A中の決定論理142ブロックの使用される方法のフローチャートを図示する。減算器44は、ASNRメトリック入力、ASNR(x、y^)、ASNR(x、y)を減算し、この結果の差が出力品質144ブロックへ送信される。出力品質144ブロック内で、この差がゼロ146と比較される。この比較による差がゼロよりも大きい場合には、(1)ASNR(x、y^)>ASNR(x、y)であり、出力148はy^であり、(2)ASNR(x、y^)>画像およびビデオ品質の許容可能な閾値であることを意味する。上記差がゼロよりも小さい場合には、(1)ASNR(x、y)>ASNR(x、y^)であり、出力150はyであり、(2)ASNR(x、y)>画像およびビデオ品質の許容可能な閾値となる。制御(CTRL)信号が有効である場合には、決定論理142ブロックの出力(RE)は画像/ビデオ符号器23にxを再符号化するように命令できる。これは、ASNR(x、y)とASNR(x、y^)の両方が、画像およびビデオ品質の許容可能な閾値未満である場合に可能である。出力QA(x、y、y^)は、符号器メモリバッファを更新するために使用できる(図10参照)。図12のフローチャートに図示された論理は、DSNRメトリックのみにではなく、あらゆるASNRメトリックに使用することができる。
【0070】
図13は、図11B中の決定論理143により決定された方法のフローチャートを図示する。このフローチャートは、任意のアーチファクトメトリックまたはアーチファクトメトリックの変形例の設計論理を表す。例えば、A[1]はブロックノイズであってよく、MA[1](x、y^)はDSNR(x、y^)であってよい。同様に、A[2]は不明瞭性であってよく、MA[2](x、y^)はy^の不明瞭性の量を測定するメトリックであってよい。また同様に、MA[1](x、y)はDSNR(x、y)であってよく、MA[2](x、y)はyの不明瞭性の量を測定するメトリックであってよい。MA[2](x、y、y^)は、ブロックノイズを逆強調する別バージョンのDSNRであってよく、そのため、MA[1](x、y、y^)に関連して不明瞭性がより強調される。MA[2](x、y、y^)も、不明瞭性の量を測定するメトリックであってよい。
【0071】
フィルタリングした再構成済みのビデオブロック(またはフレーム)y^内部に存在するブロックノイズの量を調べるために、MA[1](x、y^)とブロックノイズ閾値との間の比較160が行われる。比較160が真(はい)である場合には、y^は「許容可能」に感知された画像およびビデオ品質を満たす。さらに、y^内の不明瞭性の量を調べるために、MA[2](x、y^)と不明瞭性閾値との間の比較162を行う。比較162が真(はい)である場合には、y^は、不明瞭性とブロックノイズの両方について「許容可能に」感知された画像およびビデオ品質を満たす。この結果による出力QA(x、y、y^)は164y^となり、符号器メモリバッファ(図10を参照)がy^で更新される。
【0072】
比較160または162のいずれかが間違い(いいえ)である場合には、フィルタリングされていない再構成済みのビデオブロック(またはフレーム)yにおける不明瞭性の量を調べるために、MA[1](x、y)と不明瞭性閾値の間の比較166を行う。比較166が真(はい)である場合には、yは「許容可能に」感知された画像およびビデオ品質を満たす。さらに、y内における不明瞭性の量を調べるために、MA[2](x、y)と不明瞭性閾値の間の比較168を行う。比較168が真(はい)の場合、yは不明瞭性とブロックノイズの両方について「許容可能に」感知された画像およびビデオ品質を満たす。この結果の出力QA(x、y、y^)は170yになり、符号器メモリバッファ(図10を参照)がy^で更新される。比較166または168が間違い(いいえ)である場合には、ライン出力REはアクティブ172となり、オリジナルビデオブロック(またはフレーム)xの再符号化が実行される。
【0073】
図14は、アーチファクト評価処理のフローチャートを図示する。アーチファクト評価のスタート後、metric_sort180の選択は、どのタイプまたはバージョンのメトリックが生成されるかに基づく。オリジナルxビデオブロックまたはフレーム(1が使用可能である場合)のローディングと、使用可能な再構成済みのyまたはy^ビデオブロック(1以上)あるいはフレーム(1以上)182のローディングが実行される。関数F、および/またはノルムファクタ(NF)184を用いて、エラー(1以上)を計算できる。調整器[i]は符号化186の前または最中(シリアルまたはパラレル)に実行できる。次に、調整器[i]と、関数Fおよび/またはNF188で計算したエラー(1以上)の結果との組み合わせが実行される。この結果の組み合わせ(1以上)により、2つのMSETメトリック結果、即ちMSET(x、y)とMSET(x、y^)が得られる。MSET(x、y)とMSET(x、y^)の各メンバーはアレンジ192できる。MSET(x、y)のメンバーとMSET(x、y^)のメンバーの間の少なくとも1つの比較に基づいた論理決定194は、y、y^のいずれの画像および/またはビデオ品質が優れているかを決定する。この決定に基づいて、出力QA(x、y、y^)、yとy^のうちの優れた一方を使用して、符号化処理中に、符号器メモリバッファインループが更新される。決定論理194ブロックはまた、yまたはy^の画像およびビデオ品質が許容不能である場合には、再符号化信号REを送信することができる。
【0074】
多数の異なる実施形態を説明してきた。これらの技術は、符号化処理中に、アーチファクト評価器インループを使用して画像およびビデオ品質を向上させることで、ビデオ符号化を向上させることができる。これらの技術は基準に準拠する。これらの技術はさらに、ハードウェア、ソフトウェア、ファームウェア、これらの任意の組み合わせにおいて実現される。ソフトウェア内で実現された場合、これらの技術は、コンピュータ読み出し可能プログラムコード(コンピュータコードとも呼ばれる)を備えたコンピュータ読み出し可能媒体に向けられる。このプログラムコードは、デバイス内で実行されると、ビデオシーケンスを符号化し、上述した1以上の方法を実行する。
【0075】
コンピュータ読み出し可能プログラムコードは、コンピュータ読み出し可能な命令の形式でメモリ上に記憶できる。このケースでは、DSPのようなプロセッサはメモリに記憶されている命令を実行して、本明細書で説明された1以上の技術を実行することができる。いくつかのケースでは、この技術は、符号化処理を加速化させるために、動作推定器のような様々なハードウェア成分を呼び出すDSPによって実行される。別のケースでは、ビデオ符号器はマイクロプロセッサ、1以上のアプリケーション専用集積回路(ASIC)、1以上のフィールドプログラム可能なゲートアレイ(FPGA)、またはこれ以外の何らかのハードウェア/ソフトウェアの組み合わせとして実現される。これらおよびこれ以外の実施形態は、請求項の範囲内に包括される。
【特許請求の範囲】
【請求項1】
ビデオブロックを処理するように構成された装置であって、
フィルタリングされていない再構成済みビデオユニットを同期させることが可能な復号器を備え、ビデオユニットはビデオブロックとビデオフレームのうち少なくとも1つであり、
前記フィルタリングされていない再構成済みのビデオユニットを受信するべく動作可能であり、フィルタリングされた再構成済みのビデオユニットを生成するアーチファクトフィルタをさらに備え、前記ビデオユニットはビデオブロックまたはフレームのうち少なくとも1つであり、
前記フィルタリングされた再構成済みビデオユニットまたはフィルタリングされていない再構成されたビデオユニットを記憶するべく動作可能なメモリバッファをさらに備え、
前記メモリバッファを更新するべく動作可能なアーチファクト評価器をさらに備える、装置。
【請求項2】
前記アーチファクト評価器は、少なくとも1つのアーチファクトメトリック生成器と決定論理ブロックを備えている、請求項1に記載の装置。
【請求項3】
前記少なくとも1つのアーチファクト生成器のうちの任意のアーチファクトメトリック生成器は、前記フィルタリングされたビデオユニットまたは前記フィルタリングされていない再構成済みのビデオユニットを受信するように構成されている、請求項2に記載の装置。
【請求項4】
前記少なくとも1つのアーチファクトメトリック生成器はさらに、前記オリジナルビデオユニットを受信するように構成されている、請求項3に記載の装置。
【請求項5】
前記少なくとも1つのアーチファクトメトリック生成器のうちの任意のアーチファクトメトリック生成器は、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックを生成することを備える、請求項4に記載の装置。
【請求項6】
少なくとも1つのアーチファクトメトリック生成器からの第1アーチファクトメトリック生成器と、少なくとも1つのアーチファクトメトリック生成器からの第2アーチファクトメトリック生成器が第1決定論理ブロックまたは第2決定論理ブロックに結合している、請求項5に記載の装置。
【請求項7】
前記第1決定論理ブロックは、フィルタリングされた再構成済みビデオユニットと前記フィルタリングされてない再構成ビデオユニットを受信するように構成されており、さらに、第1NRアーチファクトメトリックを第2NRアーチファクトメトリックと比較するか、または、第1FRアーチファクトメトリックを第2FRアーチファクトメトリックと比較し、いずれかの比較決定に基づいて、前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成済みビデオユニットを出力するように構成されている、請求項6に記載の装置。
【請求項8】
前記第2決定論理ブロックは、前記フィルタリングされた再構成済みビデオユニットと前記フィルタリングされてない再構成済みビデオユニットとを受信するように構成されており、さらに、第1組のNRアーチファクトメトリックを第1組のNRアーチファクトメトリックと比較する、または、第1組のFRアーチファクトメトリックを第2組のFRアーチファクトメトリックと比較し、いずれかの比較決定に基づいて、前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成済みビデオユニットを出力するように構成されている、請求項6に記載の装置。
【請求項9】
前記出力は、再生デバイス、移動デバイス、またはコンピュータ内の前記メモリバッファインループへ送信される、請求項7に記載の装置。
【請求項10】
前記出力は、再生デバイス、移動デバイス、またはコンピュータ内の前記メモリバッファインループへ送信される、請求項8に記載の装置。
【請求項11】
アーチファクト評価器デバイスであって、
フィルタリングされていない再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段を備えており、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段をさらに備え、前記ビデオユニットはビデオブロックおよびフレーム、前記オリジナルビデオユニットのうちの少なくとも1つであり、
第1アーチファクトメトリックを第2アーチファクトメトリックと比較する手段をさらに備え、
前記比較する手段に基づいて出力を決定する手段をさらに備える、アーチファクト評価器デバイス。
【請求項12】
前記出力は、画像/ビデオ符号器のインループメモリバッファに結合している、請求項11に記載のアーチファクト評価器デバイス。
【請求項13】
前記第1アーチファクトメトリックと前記第2アーチファクトメトリックは、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックである、請求項12に記載のアーチファクト評価器デバイス。
【請求項14】
前記出力は、前記フィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていないビデオユニットである、請求項13に記載のアーチファクト評価器デバイス。
【請求項15】
アーチファクト評価器デバイスであって、
フィルタリングされていない再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段を備え、前記ビデオユニットはビデオブロックおよびフレーム、オリジナルビデオユニットのうち少なくとも1つであり、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段をさらに備え、前記ビデオユニットは、ビデオブロックおよびフレーム、前記オリジナルビデオユニットのうち少なくとも1つであり、
第1アーチファクトメトリックを第1アーチファクト閾値と比較する第1比較手段をさらに備え、
第2アーチファクトメトリックを第2アーチファクト閾値と比較する第2比較手段をさらに備え、
第3アーチファクトメトリックの第3閾値を第3アーチファクト閾値と比較する第3比較手段をさらに備え、
第4アーチファクトメトリックを第4アーチファクト閾値と比較する第4比較手段をさらに備え、
比較手段の様々な組み合わせに基づいて出力を決定する手段をさらに備える、アーチファクト評価器デバイス。
【請求項16】
前記出力は、画像/ビデオ符号器のインループメモリバッファと結合される、請求項15に記載のアーチファクト評価器デバイス。
【請求項17】
前記第1、第2、第3、第4アーチファクトメトリックは、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックである、請求項16に記載のデバイス。
【請求項18】
前記出力は、前記フィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていない再構成済みのビデオユニットである、請求項17に記載のデバイス。
【請求項19】
命令の組を記憶するように構成されたコンピュータ読み出し可能な媒体であって、前記命令は実行可能な処理ビデオブロックであり、
フィルタリングされていない再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成するための、コンピュータ読み出し可能なプログラムコード手段を備え、前記ビデオユニットは、ビデオブロックおよびフレーム、オリジナルビデオユニットのうちの少なくとも1つであり、前記ビデオユニットはビデオおよびフレームのうちの少なくとも1つであり、
フィルタリングされた再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成するためのコンピュータ読み出し可能なプログラムコード手段であり、前記ビデオユニットはビデオブロックおよびフレーム、前記オリジナルビデオユニットのうちの少なくとも1つであり、
第1アーチファクトメトリックを第2アーチファクトメトリックと比較するための、コンピュータ読み出し可能なプログラムコード手段をさらに備え、
前記比較手段に基づいて、前記出力を決定するための、コンピュータ読み出し可能なプログラムコード手段をさらに備え、
メモリバッファインループを決定手段に基づく出力によって更新するためのコンピュータ読み出し可能なプログラムコード手段をさらに備える、コンピュータ読み出し可能媒体。
【請求項20】
前記少なくともアーチファクトメトリックを生成する手段は、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックである、請求項19に記載のコンピュータ読み出し可能媒体。
【請求項21】
前記メモリバッファインループを更新手段を決定する手段は、前記メモリバッファを前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成済みのビデオユニットで更新する手段さらに備えている、請求項20に記載のコンピュータ読み出し可能媒体。
【請求項22】
ビデオブロックを処理するように構成されたコンピュータ読み出し可能な媒体であって、
フィルタリングされていない再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成するための、コンピュータ読み出し可能なプログラムコード手段を備え、前記ビデオユニットはビデオブロックおよびフレーム、オリジナルビデオユニットのうちの少なくとも1つであり、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた構成済みのビデオユニットおよび前記オリジナルビデオユニットから少なくとも1つのアーチファクトメトリックを生成するコンピュータ読み出し可能なコード手段をさらに備え、
第1アーチファクトメトリックを第1アーチファクト閾値と第1比較するためのコンピュータ読み出し可能なプログラムコード手段をさらに備え、
第2アーチファクトメトリックを第2アーチファクトメトリックと第2比較するコンピュータ読み出し可能なプログラムコード手段をさらに備え、
第3アーチファクトメトリックを第3アーチファクト閾値と第3比較するための前記コンピュータ読み出し可能プログラムコード手段をさらに備え、
第4アーチファクトメトリックを第4アーチファクト閾値と第4比較するための前記コンピュータ読み出し可能プログラムコード手段をさらに備え、
前記比較手段の様々な組み合わせに基づいて前記出力を決定するためのコンピュータ読み出し可能なプログラムコード手段をさらに備え、
メモリバッファインループを前記決定手段に基づく出力で更新するためのコンピュータ読み出し可能なプログラムコード手段をさらに備える、コンピュータ読み出し可能な媒体。
【請求項23】
前記少なくとも1つのアーチファクトメトリックを生成する手段は、非(オリジナル)基準(NR)アーチファクトメトリックまたはフル(オリジナル)基準(FR)アーチファクトメトリックである、請求項22に記載のコンピュータ読み出し可能な媒体。
【請求項24】
前記メモリバッファインループの更新を決定する手段は、さらに、前記メモリバッファを、前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成されたビデオユニットで更新することを備えている、請求項23に記載のコンピュータ読み出し可能な媒体。
【請求項25】
アーチファクト評価の方法であって、
オリジナルビデオユニットを入力することを備え、前記ビデオユニットは、ビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされていない再構成済みのビデオユニットを入力することをさらに備え、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた再構成済みのビデオユニットを入力することをさらに備え、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
前記オリジナルビデオユニットと前記フィルタリングされていない再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成することをさらに備え、
前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成することをさらに備える、方法。
【請求項26】
前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つ、および前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオブロックから生成された前記アーチファクトメトリックのうちの任意の1つはブロックノイズまたは不明瞭性の量を測定する、請求項25に記載の方法。
【請求項27】
前記オリジナルビデオユニットから生成した前記アーチファクトメトリックとフィルタリングされていない再構成済みのビデオユニットのうちの任意の1つを、オリジナルビデオユニットから生成されたアーチファクトメトリックおよび前記フィルタリングされた再構成済みのビデオユニットのうちの任意の1つと比較することをさらに備え、
前記比較に基づいて、フィルタリングされていない再構成済みのビデオユニットまたはフィルタリングされた再構成済みのビデオブロックを出力することを決定することをさらに備え、
必要であれば前記比較に基づいて再符号化することをさらに備える、請求項26に記載の方法。
【請求項28】
前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを、第1アーチファクト閾値と第1比較させることと、
前記第1比較において使用される前記アーチファクトメトリックが前記第1アーチファクト閾値よりも小さい場合には、前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを、第2アーチファクト閾値と第2比較させることと、
前記第1比較に使用される任意の前記アーチファクトメトリックが前記第1アーチファクト閾値よりも低く、前記第2比較に使用される任意の前記アーチファクトメトリックが前記第2アーチファクト閾値よりも低い場合には、前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを第3アーチファクト閾値と第3比較させることと、
前記第3比較に使用される前記アーチファクトメトリックが前記第3アーチファクト閾値よりも低い場合には、前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを第4アーチファクト閾値と第4比較させることと、
前記第1および第2比較に基づいて、前記フィルタリングされた再構成済みのビデオユニットの出力を決定することと、
前記第3および第4に比較に基づいて、前記フィルタリングされていない再構成済みのビデオユニットの出力を決定することと、
必要であれば、前記第3または第4比較のいずれかに基づいて再符号化を行うこととをさらに備える、請求項27に記載の方法。
【請求項29】
前記フィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていない再構成済みのビデオユニットは、テクスチャ符号器を含んだ符号化処理の一部として同期使用されているメモリバッファ内に記憶される、請求項27に記載の方法。
【請求項30】
前記フィルタリングされた再構成済みビデオユニット、またはフィルタリングされていない再構成済みのビデオユニットは、テクスチャ符号器を含んだ符号化処理の一部としてインループ使用されているメモリバッファ内に記憶されている、請求項29に記載の方法。
【請求項31】
画像/ビデオ符号器における方法であって、
メモリバッファをアーチファクト評価器の出力で更新することを備え、前記アーチファクト評価器はインループ使用され、
前記アーチファクト評価器の一部としての決定論理ブロックによって決定を行うことをさらに備え、前記決定論理ブロックは、第1組のアーチファクトメトリックと第2組のアーチファクトメトリックを使用して比較を行い、また、前記比較に基づいて、前記アーチファクト評価器は、フィルタリングされた再構成済みのビデオユニットを出力し、ビデオユニットはビデオブロックおよびフレーム、またはフィルタリングされていない再構成済みのビデオユニットのうちの少なくとも1つであり、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つである、方法。
【請求項32】
前記メモリバッファはフィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていない再構成済みのビデオユニットのうちいずれかを記憶する、請求項31に記載の方法。
【請求項33】
前記第1組のメトリックは前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みのビデオユニットに基づく、請求項32に記載の方法。
【請求項34】
前記第2組のメトリックは、前記オリジナルビデオユニットと、前記フィルタリングされた再構成済みのビデオユニットに基づく、請求項33に記載の方法。
【請求項35】
前記第1組のメトリックは前記フィルタリングされていない再構成済みのビデオユニットに基づく、請求項32に記載の方法。
【請求項36】
前記第2組のメトリックは前記フィルタリングされた再構成済みのビデオユニットに基づく、請求項33に記載の方法。
【請求項37】
アーチファクトを測定する方法であって、
フィルタリングされていない再構成済みのビデオユニットを使用することを備え、前記ビデオユニットはビデオブロックおよびフレーム、またはフィルタリングされた再構成済みのビデオユニットのうちの少なくとも1つであり、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つであり、以下のアーチファクトメトリック実現を設け、
【数1】
ここで、yはフィルタリングされていない再構成済みのビデオユニットまたはフィルタリングされた再構成済みのビデオユニットのいずれかを表し、
PKSは、前記平方画素のピーク値であり、
WSは、空間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WPは、知覚要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WTは、時間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
F(y)はyの関数である、方法。
【請求項38】
F(y)がNorm_Factor(MSDS(y))である場合には、ASNR(y)はDSNR(y)であり、
Norm_Factorは絶対値または平方のいずれかを取ることを伴う、請求項37に記載の方法。
【請求項39】
前記アーチファクトの測定はさらに、WS、WP、WTの値の組み合わせによって、ブロックノイズアーチファクトを強調する、または逆強調することをさらに備えている、請求項38に記載の方法。
【請求項40】
アーチファクトを測定する方法であって、
フィルタリングされていない再構成済みのビデオユニットを使用することを備え、前記ビデオユニットはビデオブロックおよびフレーム、またはフィルタリングされた再構成済みのビデオユニットのうちの少なくとも1つであり、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つであり、以下のアーチファクトメトリック実現を設けたオリジナルビデオユニットと協働し、
【数2】
ここで、yはフィルタリングされていない再構成済みのビデオユニットまたはフィルタリングされた再構成済みのビデオユニットのいずれかを表し、
xは、前記オリジナルビデオユニットを表し、この場合、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つであり、
PKSは、前記平方画素のピーク値であり、
WSは、空間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WPは、知覚要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WTは、時間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
F(x、y)はxおよびyの関数である、方法。
【請求項41】
F(x、y)がMSDS_error(x、y)である場合、ASNR(x、y)はDSNR(x、y)であり;
MSDS_error(x、y)=Norm_Factor(MSDS(x)−MSDS(y))であり;
MSDS(x)は(x)の傾きの平均2乗差であり;
MSDS(y)は(y)の前記傾きの平均2乗差であり、
Norm_Factorは絶対値または平方のいずれかを取ることを伴う、請求項40に記載の方法。
【請求項42】
前記アーチファクトの測定はさらに、
値WS、WP、WTの組み合わせによってブロックノイズアーチファクトを強調する、または逆強調する、請求項41に記載の方法。
【請求項1】
ビデオブロックを処理するように構成された装置であって、
フィルタリングされていない再構成済みビデオユニットを同期させることが可能な復号器を備え、ビデオユニットはビデオブロックとビデオフレームのうち少なくとも1つであり、
前記フィルタリングされていない再構成済みのビデオユニットを受信するべく動作可能であり、フィルタリングされた再構成済みのビデオユニットを生成するアーチファクトフィルタをさらに備え、前記ビデオユニットはビデオブロックまたはフレームのうち少なくとも1つであり、
前記フィルタリングされた再構成済みビデオユニットまたはフィルタリングされていない再構成されたビデオユニットを記憶するべく動作可能なメモリバッファをさらに備え、
前記メモリバッファを更新するべく動作可能なアーチファクト評価器をさらに備える、装置。
【請求項2】
前記アーチファクト評価器は、少なくとも1つのアーチファクトメトリック生成器と決定論理ブロックを備えている、請求項1に記載の装置。
【請求項3】
前記少なくとも1つのアーチファクト生成器のうちの任意のアーチファクトメトリック生成器は、前記フィルタリングされたビデオユニットまたは前記フィルタリングされていない再構成済みのビデオユニットを受信するように構成されている、請求項2に記載の装置。
【請求項4】
前記少なくとも1つのアーチファクトメトリック生成器はさらに、前記オリジナルビデオユニットを受信するように構成されている、請求項3に記載の装置。
【請求項5】
前記少なくとも1つのアーチファクトメトリック生成器のうちの任意のアーチファクトメトリック生成器は、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックを生成することを備える、請求項4に記載の装置。
【請求項6】
少なくとも1つのアーチファクトメトリック生成器からの第1アーチファクトメトリック生成器と、少なくとも1つのアーチファクトメトリック生成器からの第2アーチファクトメトリック生成器が第1決定論理ブロックまたは第2決定論理ブロックに結合している、請求項5に記載の装置。
【請求項7】
前記第1決定論理ブロックは、フィルタリングされた再構成済みビデオユニットと前記フィルタリングされてない再構成ビデオユニットを受信するように構成されており、さらに、第1NRアーチファクトメトリックを第2NRアーチファクトメトリックと比較するか、または、第1FRアーチファクトメトリックを第2FRアーチファクトメトリックと比較し、いずれかの比較決定に基づいて、前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成済みビデオユニットを出力するように構成されている、請求項6に記載の装置。
【請求項8】
前記第2決定論理ブロックは、前記フィルタリングされた再構成済みビデオユニットと前記フィルタリングされてない再構成済みビデオユニットとを受信するように構成されており、さらに、第1組のNRアーチファクトメトリックを第1組のNRアーチファクトメトリックと比較する、または、第1組のFRアーチファクトメトリックを第2組のFRアーチファクトメトリックと比較し、いずれかの比較決定に基づいて、前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成済みビデオユニットを出力するように構成されている、請求項6に記載の装置。
【請求項9】
前記出力は、再生デバイス、移動デバイス、またはコンピュータ内の前記メモリバッファインループへ送信される、請求項7に記載の装置。
【請求項10】
前記出力は、再生デバイス、移動デバイス、またはコンピュータ内の前記メモリバッファインループへ送信される、請求項8に記載の装置。
【請求項11】
アーチファクト評価器デバイスであって、
フィルタリングされていない再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段を備えており、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段をさらに備え、前記ビデオユニットはビデオブロックおよびフレーム、前記オリジナルビデオユニットのうちの少なくとも1つであり、
第1アーチファクトメトリックを第2アーチファクトメトリックと比較する手段をさらに備え、
前記比較する手段に基づいて出力を決定する手段をさらに備える、アーチファクト評価器デバイス。
【請求項12】
前記出力は、画像/ビデオ符号器のインループメモリバッファに結合している、請求項11に記載のアーチファクト評価器デバイス。
【請求項13】
前記第1アーチファクトメトリックと前記第2アーチファクトメトリックは、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックである、請求項12に記載のアーチファクト評価器デバイス。
【請求項14】
前記出力は、前記フィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていないビデオユニットである、請求項13に記載のアーチファクト評価器デバイス。
【請求項15】
アーチファクト評価器デバイスであって、
フィルタリングされていない再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段を備え、前記ビデオユニットはビデオブロックおよびフレーム、オリジナルビデオユニットのうち少なくとも1つであり、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成する手段をさらに備え、前記ビデオユニットは、ビデオブロックおよびフレーム、前記オリジナルビデオユニットのうち少なくとも1つであり、
第1アーチファクトメトリックを第1アーチファクト閾値と比較する第1比較手段をさらに備え、
第2アーチファクトメトリックを第2アーチファクト閾値と比較する第2比較手段をさらに備え、
第3アーチファクトメトリックの第3閾値を第3アーチファクト閾値と比較する第3比較手段をさらに備え、
第4アーチファクトメトリックを第4アーチファクト閾値と比較する第4比較手段をさらに備え、
比較手段の様々な組み合わせに基づいて出力を決定する手段をさらに備える、アーチファクト評価器デバイス。
【請求項16】
前記出力は、画像/ビデオ符号器のインループメモリバッファと結合される、請求項15に記載のアーチファクト評価器デバイス。
【請求項17】
前記第1、第2、第3、第4アーチファクトメトリックは、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックである、請求項16に記載のデバイス。
【請求項18】
前記出力は、前記フィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていない再構成済みのビデオユニットである、請求項17に記載のデバイス。
【請求項19】
命令の組を記憶するように構成されたコンピュータ読み出し可能な媒体であって、前記命令は実行可能な処理ビデオブロックであり、
フィルタリングされていない再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成するための、コンピュータ読み出し可能なプログラムコード手段を備え、前記ビデオユニットは、ビデオブロックおよびフレーム、オリジナルビデオユニットのうちの少なくとも1つであり、前記ビデオユニットはビデオおよびフレームのうちの少なくとも1つであり、
フィルタリングされた再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成するためのコンピュータ読み出し可能なプログラムコード手段であり、前記ビデオユニットはビデオブロックおよびフレーム、前記オリジナルビデオユニットのうちの少なくとも1つであり、
第1アーチファクトメトリックを第2アーチファクトメトリックと比較するための、コンピュータ読み出し可能なプログラムコード手段をさらに備え、
前記比較手段に基づいて、前記出力を決定するための、コンピュータ読み出し可能なプログラムコード手段をさらに備え、
メモリバッファインループを決定手段に基づく出力によって更新するためのコンピュータ読み出し可能なプログラムコード手段をさらに備える、コンピュータ読み出し可能媒体。
【請求項20】
前記少なくともアーチファクトメトリックを生成する手段は、非オリジナル基準(NR)アーチファクトメトリックまたはフルオリジナル基準(FR)アーチファクトメトリックである、請求項19に記載のコンピュータ読み出し可能媒体。
【請求項21】
前記メモリバッファインループを更新手段を決定する手段は、前記メモリバッファを前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成済みのビデオユニットで更新する手段さらに備えている、請求項20に記載のコンピュータ読み出し可能媒体。
【請求項22】
ビデオブロックを処理するように構成されたコンピュータ読み出し可能な媒体であって、
フィルタリングされていない再構成済みビデオユニットから少なくとも1つのアーチファクトメトリックを生成するための、コンピュータ読み出し可能なプログラムコード手段を備え、前記ビデオユニットはビデオブロックおよびフレーム、オリジナルビデオユニットのうちの少なくとも1つであり、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた構成済みのビデオユニットおよび前記オリジナルビデオユニットから少なくとも1つのアーチファクトメトリックを生成するコンピュータ読み出し可能なコード手段をさらに備え、
第1アーチファクトメトリックを第1アーチファクト閾値と第1比較するためのコンピュータ読み出し可能なプログラムコード手段をさらに備え、
第2アーチファクトメトリックを第2アーチファクトメトリックと第2比較するコンピュータ読み出し可能なプログラムコード手段をさらに備え、
第3アーチファクトメトリックを第3アーチファクト閾値と第3比較するための前記コンピュータ読み出し可能プログラムコード手段をさらに備え、
第4アーチファクトメトリックを第4アーチファクト閾値と第4比較するための前記コンピュータ読み出し可能プログラムコード手段をさらに備え、
前記比較手段の様々な組み合わせに基づいて前記出力を決定するためのコンピュータ読み出し可能なプログラムコード手段をさらに備え、
メモリバッファインループを前記決定手段に基づく出力で更新するためのコンピュータ読み出し可能なプログラムコード手段をさらに備える、コンピュータ読み出し可能な媒体。
【請求項23】
前記少なくとも1つのアーチファクトメトリックを生成する手段は、非(オリジナル)基準(NR)アーチファクトメトリックまたはフル(オリジナル)基準(FR)アーチファクトメトリックである、請求項22に記載のコンピュータ読み出し可能な媒体。
【請求項24】
前記メモリバッファインループの更新を決定する手段は、さらに、前記メモリバッファを、前記フィルタリングされた再構成済みビデオユニットまたは前記フィルタリングされていない再構成されたビデオユニットで更新することを備えている、請求項23に記載のコンピュータ読み出し可能な媒体。
【請求項25】
アーチファクト評価の方法であって、
オリジナルビデオユニットを入力することを備え、前記ビデオユニットは、ビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされていない再構成済みのビデオユニットを入力することをさらに備え、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
フィルタリングされた再構成済みのビデオユニットを入力することをさらに備え、前記ビデオユニットはビデオブロックおよびフレームのうち少なくとも1つであり、
前記オリジナルビデオユニットと前記フィルタリングされていない再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成することをさらに備え、
前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオユニットから少なくとも1つのアーチファクトメトリックを生成することをさらに備える、方法。
【請求項26】
前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つ、および前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオブロックから生成された前記アーチファクトメトリックのうちの任意の1つはブロックノイズまたは不明瞭性の量を測定する、請求項25に記載の方法。
【請求項27】
前記オリジナルビデオユニットから生成した前記アーチファクトメトリックとフィルタリングされていない再構成済みのビデオユニットのうちの任意の1つを、オリジナルビデオユニットから生成されたアーチファクトメトリックおよび前記フィルタリングされた再構成済みのビデオユニットのうちの任意の1つと比較することをさらに備え、
前記比較に基づいて、フィルタリングされていない再構成済みのビデオユニットまたはフィルタリングされた再構成済みのビデオブロックを出力することを決定することをさらに備え、
必要であれば前記比較に基づいて再符号化することをさらに備える、請求項26に記載の方法。
【請求項28】
前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを、第1アーチファクト閾値と第1比較させることと、
前記第1比較において使用される前記アーチファクトメトリックが前記第1アーチファクト閾値よりも小さい場合には、前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを、第2アーチファクト閾値と第2比較させることと、
前記第1比較に使用される任意の前記アーチファクトメトリックが前記第1アーチファクト閾値よりも低く、前記第2比較に使用される任意の前記アーチファクトメトリックが前記第2アーチファクト閾値よりも低い場合には、前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを第3アーチファクト閾値と第3比較させることと、
前記第3比較に使用される前記アーチファクトメトリックが前記第3アーチファクト閾値よりも低い場合には、前記オリジナルビデオユニットおよび前記フィルタリングされた再構成済みのビデオユニットから生成された前記アーチファクトメトリックのうちの任意の1つを第4アーチファクト閾値と第4比較させることと、
前記第1および第2比較に基づいて、前記フィルタリングされた再構成済みのビデオユニットの出力を決定することと、
前記第3および第4に比較に基づいて、前記フィルタリングされていない再構成済みのビデオユニットの出力を決定することと、
必要であれば、前記第3または第4比較のいずれかに基づいて再符号化を行うこととをさらに備える、請求項27に記載の方法。
【請求項29】
前記フィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていない再構成済みのビデオユニットは、テクスチャ符号器を含んだ符号化処理の一部として同期使用されているメモリバッファ内に記憶される、請求項27に記載の方法。
【請求項30】
前記フィルタリングされた再構成済みビデオユニット、またはフィルタリングされていない再構成済みのビデオユニットは、テクスチャ符号器を含んだ符号化処理の一部としてインループ使用されているメモリバッファ内に記憶されている、請求項29に記載の方法。
【請求項31】
画像/ビデオ符号器における方法であって、
メモリバッファをアーチファクト評価器の出力で更新することを備え、前記アーチファクト評価器はインループ使用され、
前記アーチファクト評価器の一部としての決定論理ブロックによって決定を行うことをさらに備え、前記決定論理ブロックは、第1組のアーチファクトメトリックと第2組のアーチファクトメトリックを使用して比較を行い、また、前記比較に基づいて、前記アーチファクト評価器は、フィルタリングされた再構成済みのビデオユニットを出力し、ビデオユニットはビデオブロックおよびフレーム、またはフィルタリングされていない再構成済みのビデオユニットのうちの少なくとも1つであり、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つである、方法。
【請求項32】
前記メモリバッファはフィルタリングされた再構成済みのビデオユニット、または前記フィルタリングされていない再構成済みのビデオユニットのうちいずれかを記憶する、請求項31に記載の方法。
【請求項33】
前記第1組のメトリックは前記オリジナルビデオユニットおよび前記フィルタリングされていない再構成済みのビデオユニットに基づく、請求項32に記載の方法。
【請求項34】
前記第2組のメトリックは、前記オリジナルビデオユニットと、前記フィルタリングされた再構成済みのビデオユニットに基づく、請求項33に記載の方法。
【請求項35】
前記第1組のメトリックは前記フィルタリングされていない再構成済みのビデオユニットに基づく、請求項32に記載の方法。
【請求項36】
前記第2組のメトリックは前記フィルタリングされた再構成済みのビデオユニットに基づく、請求項33に記載の方法。
【請求項37】
アーチファクトを測定する方法であって、
フィルタリングされていない再構成済みのビデオユニットを使用することを備え、前記ビデオユニットはビデオブロックおよびフレーム、またはフィルタリングされた再構成済みのビデオユニットのうちの少なくとも1つであり、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つであり、以下のアーチファクトメトリック実現を設け、
【数1】
ここで、yはフィルタリングされていない再構成済みのビデオユニットまたはフィルタリングされた再構成済みのビデオユニットのいずれかを表し、
PKSは、前記平方画素のピーク値であり、
WSは、空間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WPは、知覚要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WTは、時間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
F(y)はyの関数である、方法。
【請求項38】
F(y)がNorm_Factor(MSDS(y))である場合には、ASNR(y)はDSNR(y)であり、
Norm_Factorは絶対値または平方のいずれかを取ることを伴う、請求項37に記載の方法。
【請求項39】
前記アーチファクトの測定はさらに、WS、WP、WTの値の組み合わせによって、ブロックノイズアーチファクトを強調する、または逆強調することをさらに備えている、請求項38に記載の方法。
【請求項40】
アーチファクトを測定する方法であって、
フィルタリングされていない再構成済みのビデオユニットを使用することを備え、前記ビデオユニットはビデオブロックおよびフレーム、またはフィルタリングされた再構成済みのビデオユニットのうちの少なくとも1つであり、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つであり、以下のアーチファクトメトリック実現を設けたオリジナルビデオユニットと協働し、
【数2】
ここで、yはフィルタリングされていない再構成済みのビデオユニットまたはフィルタリングされた再構成済みのビデオユニットのいずれかを表し、
xは、前記オリジナルビデオユニットを表し、この場合、ビデオユニットはビデオブロックおよびフレームのうちの少なくとも1つであり、
PKSは、前記平方画素のピーク値であり、
WSは、空間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WPは、知覚要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
WTは、時間要因に基づいて、フィルタリングされていない再構成済みのビデオユニットに影響する重量であり、
F(x、y)はxおよびyの関数である、方法。
【請求項41】
F(x、y)がMSDS_error(x、y)である場合、ASNR(x、y)はDSNR(x、y)であり;
MSDS_error(x、y)=Norm_Factor(MSDS(x)−MSDS(y))であり;
MSDS(x)は(x)の傾きの平均2乗差であり;
MSDS(y)は(y)の前記傾きの平均2乗差であり、
Norm_Factorは絶対値または平方のいずれかを取ることを伴う、請求項40に記載の方法。
【請求項42】
前記アーチファクトの測定はさらに、
値WS、WP、WTの組み合わせによってブロックノイズアーチファクトを強調する、または逆強調する、請求項41に記載の方法。
【図1A】
【図1B】
【図2】
【図3】
【図4A】
【図4B】
【図5A】
【図5B】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11A】
【図11B】
【図12】
【図13】
【図14】
【図1B】
【図2】
【図3】
【図4A】
【図4B】
【図5A】
【図5B】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11A】
【図11B】
【図12】
【図13】
【図14】
【公開番号】特開2013−102471(P2013−102471A)
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−279988(P2012−279988)
【出願日】平成24年12月21日(2012.12.21)
【分割の表示】特願2008−557499(P2008−557499)の分割
【原出願日】平成19年3月1日(2007.3.1)
【出願人】(595020643)クゥアルコム・インコーポレイテッド (7,166)
【氏名又は名称原語表記】QUALCOMM INCORPORATED
【Fターム(参考)】
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願番号】特願2012−279988(P2012−279988)
【出願日】平成24年12月21日(2012.12.21)
【分割の表示】特願2008−557499(P2008−557499)の分割
【原出願日】平成19年3月1日(2007.3.1)
【出願人】(595020643)クゥアルコム・インコーポレイテッド (7,166)
【氏名又は名称原語表記】QUALCOMM INCORPORATED
【Fターム(参考)】
[ Back to top ]