(57)【要約】      （修正有）【課題】画像ブロックについてのビデオ信号データを符号化および復号するための、エンコーダ、デコーダ、および対応する方法を提供する。【解決手段】エンコーダは、画像ブロックについての信号データを受け取って、変換係数の係数位置および係数分布に基づいて適応的にデッドゾーン量子化を実施するための量子化器と変換係数を再構築するための逆量子化器とを備え、逆量子化における丸めが、特定の係数の量子化レベルによって決定される。【選択図】図３
2011223607.tif 000002
【特許請求の範囲】
【請求項１】
画像ブロックについてのビデオ信号データを符号化するためのエンコーダであって、
前記画像ブロックについての変換係数を受け取って、前記変換係数を量子化レベルに量子化するための量子化器と、
前記量子化レベルを再構築レベルに逆量子化するための逆量子化器と、
を備え、
特定の位置で前記逆量子化器によって使用される丸めパラメータが前記特定の位置での前記量子化レベルによって決定される、前記エンコーダ。
【請求項２】
画像ブロックについてのビデオ信号データを符号化する方法であって、
前記画像ブロックについての変換係数を受け取るステップと、
前記変換係数を量子化レベルに量子化するステップと、
前記量子化レベルを再構築レベルに逆量子化するステップと、
を含み、
特定の位置で逆量子化を行うために使用される丸めパラメータが前記特定の位置での前記量子化レベルによって決定される、前記方法。
【請求項３】
画像ブロックについてのビデオ信号データを復号するためのデコーダであって、
前記画像ブロックについての量子化レベルを受け取って、前記量子化レベルを再構築レベルに逆量子化する逆量子化器を備え、
特定の位置で前記逆量子化器によって使用される丸めパラメータが前記特定の位置での前記量子化レベルによって決定される、前記デコーダ。
【請求項４】
画像ブロックについてのビデオ信号データを復号する方法であって、
前記画像ブロックについての量子化レベルを受け取るステップと、
前記量子化レベルを再構築レベルに逆量子化するステップと、
を含み、
特定の位置で逆量子化を行うために使用される丸めパラメータが前記特定の位置での前記量子化レベルによって決定される、前記方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２００４年６月１８日に出願された米国特許仮出願第６０／５８１０１９号の利益を請求する。
【０００２】
本発明は一般にエンコーダおよびデコーダに関し、より詳細には、ビデオ・エンコーダおよびデコーダにおける量子化のための方法および装置に関する。
【背景技術】
【０００３】
現在、ＭＰＥＧ‐２やＪＶＴ／Ｈ．２６４／ＭＰＥＧ  ＡＶＣなど、ほとんどの画像およびビデオ符号化システムおよび規格は、圧縮を実施するために、変換ベースの技法と、それに続く量子化およびエントロピー符号化を使用する。図１に目を向けると、典型的な変換ベースの圧縮システムが参照番号１００で一般的に示されている。変換ベースの圧縮システム１００への入力は、変換器１１０の入力と信号通信で接続される。変換器１１０の出力は、量子化器１２０の入力と信号通信で接続される。量子化器１２０の出力は、エンコーダ１３０の入力と信号通信で接続される。エンコーダ１３０の出力は、デコーダ１４０の入力と信号通信で接続される。デコーダ１４０の出力は、逆量子化器１５０の入力と信号通信で接続される。逆量子化器１５０の出力は、逆変換器１６０の入力と信号通信で接続される。逆変換器１６０の出力は、システム１００の外部利用可能な出力である。鍵となる考えは、離散コサイン変換（ＤＣＴ）など、このような変換が画像信号を無相関化して、画像ブロックのエネルギーを少数のローパス係数にコンパクト化し、これらの係数は量子化および逆量子化の後でもかなり正確に信号を表すことができるということである。それでもなお、可能な最良の主観的および客観的品質を有するためには、この量子化／逆量子化プロセスを慎重に設計する必要がある。過去の多大な研究は、ＪＰＥＧおよびＭＰＥＧのようなエンコーダで使用される８×８ＤＣＴを主に対象としており、量子化プロセスの設計、特に、使用すべき最適な量子化ステップ・サイズ、係数分布、およびデッドゾーニング機構に関しての設計に焦点を合わせてきた。最も重要な観察の１つは、係数分布が、ほとんどの場合に、量子化プロセスのより正確なモデル化および設計を可能にするラプラス分布に従うことであった。Ｈ．２６４を含めた多くの近年のコーデックおよびエンコーダの設計の内では、レート歪み（ＲＤ）性能を改善しようとして、この仮定に従っている。
【０００４】
しかし、ラプラス分布は多くの場合（Ｈ．２６４で符号化された何らかの素材を含めて）に当てはまるものの、Ｈ．２６４規格において新しいより小さい（４×４）変換が導入されたため、またこの規格が高精細度ＴＶや同報通信やビデオ会議などを含めた幅広い応用例を考慮するため、このような分布が常に当てはまるわけではない場合もある。具体的にこのような応用例の１つはフィルム・グレイン・コンテンツの符号化であり、この場合、分布は、いくつかの係数についてはガウス分布または一般化ガウス分布を使用した方がよりよく近似することができる。このことは、ラプラス分布をよりよく適合させるのに使用される技法が、このようなコンテンツを符号化するには適切でない場合があり、特に高ビットレート（小さい量子化ステップ・サイズ）では主観的および客観的性能が劣る結果となることを示唆する。過去の研究のいくつかはまた、分布を様々とすることができること（ガウス、コーシー、一般化ガウスなど）も示唆しているが、これらは一般に、量子化プロセスの設計のための、いくぶん複雑なモデルをもたらす。
【０００５】
ＤＣＴ  ＡＣ係数の分布は多くの場合に以下のラプラス分布に従うことが、資料で十分に立証されている。
【０００６】
【数１】
2011223607.tif 000003
【０００７】
この観察に基づいて、以前の研究では、ソースの実際の係数分布に適合することのできるラプラス分布と、この設計に基づく、重み付き量子化行列、および量子化中に使用されるデッドゾーンを推定しようとした。このようなパラメータを見つけるための最も単純な方法は、以下の標準偏差を使用することである。
【０００８】
【数２】
2011223607.tif 000004
【０００９】
この推定は各ＡＣ係数について別々に行われ、また、同じプロセスがクロマＡＣ係数にも独立して適用される。
【００１０】
前述のプロセスは、例えば最適な再構築値を選択するためまたは量子化行列を設計するための、量子化プロセスの適応設計を可能にする。このようなプロセスは例えば、以下のように、最小の平均二乗誤差もまた得られる量子化係数（Ｑ）が最初に決定される場合に実施することができる。
【００１１】
【数３】
2011223607.tif 000005
【００１２】
上記の値を容易に求めることができ、それにより最良の量子化値を決定してから、知覚的に重み付けされた係数のテーブルを経験的に決定することができることが、主張されている。次いで、最適ＭＳＥの各Ｑに知覚的重み付けを掛けてからそれらを集めて行列にすることによって、基礎行列の決定が実施され、この行列は最終的に、所与のビットレートに適切なようにスケーリングされ丸められる。
【００１３】
それでもなお他の研究は、分布がガウスまたは一般化ガウスに近い、すなわち以下の分布モデルに従うと主張して、ラプラス分布の主張に論駁しようとする。
【００１４】
【数４】
2011223607.tif 000006
【００１５】
上式で、Γ（．）は、以下のガンマ関数を表す。
【００１６】
【数５】
2011223607.tif 000007
【００１７】
また、νおよびσは正の実数である。ｎ個の整数値についてのΓ（．）は⇒Γ（ｎ）＝（ｎ−１）！になり、半整数の引数Γ（ｎ／２）では以下のように別の特殊形を有することに留意されたい。
【００１８】
【数６】
2011223607.tif 000008
【００１９】
上式で、ｎ！！は二重階乗である。従って、ｎ＝１，３，５，．．．の場合に最初のいくつかの値は以下のとおりである。
【００２０】
【数７】
2011223607.tif 000009
【００２１】
ν＝１およびν＝２の場合に、上記の一般化ガウスはそれぞれラプラスまたはガウスＰＤＦになることに、すぐに気付く。所与の画像またはシーケンスの統計を適合させるために最尤法を使用して、νおよびσのパラメータを提供し、次いでこれらをラプラスの場合と同様の方式で使用して、最適な量子化値を決定する。
【００２２】
Ｈ．２６４規格は、最近まで、量子化プロセス中にこのようなプロパティの恩恵を受けるためのどんな機構も提供しなかった。より具体的には、この規格は、エンコーダがどのように量子化中に丸めを実施すべきかを指定せず、一様な量子化を使用してデコーダ再構築レベルがどのように計算されるかを指定するだけである。一方、Ｈ．２６４参照ソフトウェアは、どの固定丸めが使用されるか（イントラ符号化なら１／３、インター符号化なら１／６）に基づいてＤＣとＡＣの両方の係数がラプラス分布を満たすと仮定した。残念ながら、係数がラプラス分布にならないことが頻繁にあり、その結果、特にビットレートおよび解像度がより高い場合には、多くのＨ．２６４エンコーダ実装形態において主観的および客観的性能が非常に劣る。これは一部には、この規格が４×４変換だけしか考慮しておらず、従って係数を無相関化する効率がより低かったからであり、また、等しいステップの量子化器およびいくぶん強引なデッドゾーニング・プロセスにより、高ビットレートであってもＡＣ係数のほとんどを捨てる傾向があるからである。このために、この規格において８×８変換が再導入され、また、量子化プロセスのより細かい調整を可能にする量子化行列も採用された。量子化行列プロセスよりも複雑さの低い、再構築された係数値の修正を可能にする代替方法も提案された。この手法に基づくと、以下の形式の式
【００２３】
【数８】
2011223607.tif 000010
【００２４】
（Ｚは最終的な量子化レベルであり、Δは量子化ステップ・サイズであり、ｆは量子化プロセスのための丸め項として働く）を使用してＷに等しい係数の量子化および逆量子化を実施する（図２Ａおよび２Ｂ参照）代わりに、以下の形式の式を使用して量子化が実施される。
【００２５】
【数９】
2011223607.tif 000011
【００２６】
この場合、Θは、最終的な再構築値のオフセッティングを可能にする追加のパラメータである（図３参照）。これは、係数が０に設定されて、その結果として主観的性能さらには客観的性能さえもが場合により低下する確率を、効果的に低減する。図２Ａに目を向けると、ステップ・サイズΔおよびｆ＝Δ／２の一様量子化器での、入力信号Ｗと逆量子化済み出力信号Ｗ’との関係が、参照番号２００で一般的に示されている。図２Ｂに目を向けると、ステップ・サイズΔおよびｆ＝Δ／４の一様量子化器での、入力信号Ｗと逆量子化済み出力信号Ｗ’との関係が、参照番号２５０で一般的に示されている。図３に目を向けると、量子化プロセス内におけるΘ＝Δ／４の影響が、参照番号３００で一般的に示されている。
【発明の概要】
【００２７】
ビデオ・エンコーダおよびデコーダにおける量子化のための方法および装置を対象とする本発明によって、従来技術のこれらや他の欠点および不利益に対処する。
【００２８】
本発明の一実施形態によれば、画像ブロックについてのビデオ信号データを符号化するためのエンコーダが提供される。このエンコーダは、画像ブロックについての変換係数を受け取って、変換係数の係数位置および係数分布に基づいて適応的にデッドゾーン量子化を実施するための量子化器を備える。
【００２９】
本発明の別の実施形態によれば、画像ブロックについてのビデオ信号データを符号化する方法が提供される。この方法は、画像ブロックについての変換係数を受け取るステップと、変換係数の係数位置および係数分布に基づいてデッドゾーン量子化を適応的に実施するステップとを含む。
【００３０】
本発明の別の実施形態によれば、画像ブロックについてのビデオ信号データを復号するためのデコーダが提供される。このデコーダは、画像ブロックについての変換係数を受け取って、変換係数の係数位置および係数分布に基づいてデッドゾーン量子化を適応的に実施するための量子化器を備える。
【００３１】
本発明の別の実施形態によれば、画像ブロックについてのビデオ信号データを復号する方法が提供される。この方法は、画像ブロックについての変換係数を受け取るステップと、変換係数の係数位置および係数分布に基づいてデッドゾーン量子化を適応的に実施するステップとを含む。
【００３２】
本発明のこれらや他の実施形態、特徴、および利点は、添付の図面と共に読むべき後続の例示的な実施形態の詳細な記述から明らかになるであろう。
【００３３】
本発明は、例示的な図によって、よりよく理解することができる。
【図面の簡単な説明】
【００３４】
【図１】従来技術による典型的な変換ベースの圧縮システムのブロック図である。
【図２Ａ】ステップ・サイズΔならびにそれぞれｆ＝Δ／２およびｆ＝Δ／４の一様量子化器での、入力信号Ｗと逆量子化済み出力信号Ｗ’との関係のプロットである。
【図２Ｂ】ステップ・サイズΔならびにそれぞれｆ＝Δ／２およびｆ＝Δ／４の一様量子化器での、入力信号Ｗと逆量子化済み出力信号Ｗ’との関係のプロットである。
【図３】量子化プロセス内におけるΘ＝Δ／４の影響のプロットである。
【図４】高テクスチャＳＤシーケンスのイントラ符号化ブロックについての変換係数の分布に関するプロットである。
【図５】レベル１（ＱＰ３０）の周りの分布に関するプロットである。
【図６】図５の分布のレベル１（ＱＰ３０）の周りの誤差寄与に関するプロットである。
【図７】レベル１（ＱＰ２４）の周りの分布に関するプロットである。
【図８】図７の分布のレベル１（ＱＰ２４）の周りの誤差寄与に関するプロットである。
【図９】高テクスチャＳＤシーケンスのインター符号化ブロックについての変換係数の分布に関するプロットである。
【図１０】インター・レベル１（ＱＰ２４）の周りの分布に関するプロットである。
【図１１】図１０の分布のレベル１（ＱＰ２４）の周りの誤差寄与に関するプロットである。
【図１２】低テクスチャＱＣＩＦ解像度シーケンス内のイントラ符号化ブロックについての変換係数の分布に関するプロットである。
【図１３】イントラ・レベル１（ＱＰ２４）の周りの分布に関するプロットである。
【図１４】図１３の分布のレベル１（ＱＰ２４）の周りの誤差寄与に関するプロットである。
【図１５】低テクスチャＱＣＩＦ解像度シーケンス内のインター符号化ブロックについての変換係数の分布に関するプロットである。
【図１６Ａ】インター・レベル１（ＱＰ２４）の周りの分布のプロットである。
【図１６Ｂ】図１６Ａの分布のレベル１（ＱＰ２４）の周りの誤差寄与を示す図である。
【図１７】直角台形を使用したｆの計算に関する図である。
【図１８】メジアン選択（エリア等化）によるΘの選択に関するプロットである。
【図１９】直角台形を使用したΘの計算に関する図である。
【図２０】ピクチャ・レベルでの変換統計に基づく量子化の方法に関するフローである。
【図２１】ピクチャ・レベルでの変換統計に基づく量子化の方法に関するフローである。
【図２２】最適化された量子化のために変換係数を考慮することを伴うエンコーダに関するブロック図である。
【図２３】最適化された量子化のためにシータ・パラメータおよび変換係数を考慮することを伴うエンコーダに関するブロック図である。
【図２４】デコーダに関するブロック図である。
【発明を実施するための形態】
【００３５】
本発明は、ビデオ・エンコーダおよびデコーダにおける量子化のための方法および装置を対象とする。
【００３６】
変換ベースの画像およびビデオ符号化ではＡＣ係数がそれらの分布において０の周りではっきりした集中を有する傾向があることを考慮して、良好なレート歪み性能を達成する試みとしてデッドゾーン量子化が使用される。デッドゾーン量子化方法の設計は通常、係数がラプラスまたはガウス（正規）分布に従うと仮定して実施される。残念ながら、ほとんどの場合、区分的分布（対応する各量子化区間に関して）は考慮されず、その結果として性能が低下する可能性がある。さらに、設計は主に客観的測定値に基づき、これはさらに、視覚的アーチファクト、および主観的品質のかなりの低下につながる可能性がある。本発明の原理によれば、デッドゾーン・パラメータを画像特性、量子化ステップ・サイズ、および再構築レベルに応じて適応的に選択することを通して、主観的品質の改善、また多くの場合に客観的品質の改善をも可能にすることのできるいくつかの方法が提供される。これらの方法のいくつかはエンコーダ内での考慮のみを必要とするが、その他の方策はデコーダ設計にも影響し、符号化済みビットストリーム内に追加の情報が存在する必要がある。
【００３７】
本記述には、本発明の原理を示す。従って、本明細書に明示的に記述または図示されていなくても、当業者なら、本発明の原理を組み入れておりその趣旨および範囲に含まれる様々な構成を考案できることになることは理解されるであろう。
【００３８】
本明細書に挙げるすべての例および要件的な用語は、本発明の原理と、当技術を推進するために本発明者によって寄与される概念とを読者が理解するのを助けるための教授目的に向けられており、また、これらの例および条件言語は、このような具体的に挙げる例および条件に限定されないものと解釈されるべきである。
【００３９】
さらに、本明細書における、本発明の原理、実施形態、実施例、ならびにその具体例を挙げるすべての言明は、その構造上と機能上の両方の均等物を包含するものとする。加えて、このような均等物は、現在知られている均等物と将来開発される均等物の両方、すなわち構造にかかわらず同じ機能を実施する任意の開発された要素を含むものとする。
【００４０】
従って例えば、本明細書に提示するブロック図が、本発明の原理を組み入れた例示的な回路の概念図を表すことは、当業者には理解されるであろう。同様に、どんなフローチャート、流れ図、状態遷移図、擬似コードなども、コンピュータ可読媒体中でほぼ表すことができコンピュータまたはプロセッサによって（そうしたコンピュータまたはプロセッサが明示的に示されていなくても）そのように実行することのできる様々なプロセスを表すことは理解されるであろう。
【００４１】
図に示す様々な要素の機能は、専用ハードウェアを使用して、ならびに適切なソフトウェアと共にソフトウェアを実行することのできるハードウェアを使用して、提供することができる。プロセッサによって提供されるときは、これらの機能は単一の専用プロセッサ、単一の共有プロセッサ、または複数の個別プロセッサ（そのいくつかは共有されてよい）によって提供される。さらに、用語「プロセッサ」または「コントローラ」の明示的な使用は、ソフトウェアを実行することのできるハードウェアのみを指すものと解釈すべきではなく、限定ではないがディジタル信号プロセッサ（「ＤＳＰ」）ハードウェア、ソフトウェア記録用の読取り専用メモリ（「ＲＯＭ」）、ランダム・アクセス・メモリ（「ＲＡＭ」）、および不揮発性記憶装置を暗黙的に含むことがある。
【００４２】
従来型および／または特注の、その他のハードウェアを含めることもできる。同様に、図に示すどんなスイッチも概念的なものに過ぎない。これらの機能は、プログラム・ロジックの操作を通して、専用ロジックを通して、プログラム制御と専用ロジックの対話を通して、あるいは手動でも実施することができ、特定の技法は、コンテキストからより具体的に理解されるように、実施者によって選択可能である。
【００４３】
本明細書の特許請求の範囲では、指定された機能を実施するための手段として表現されるどんな要素も、その機能を実施するための任意の方式を包含するものとし、例えば、ａ）その機能を実施する回路要素の組合せ、またはｂ）任意の形式のソフトウェア（従ってそのソフトウェアを実行してその機能を実施するための適切な回路と組み合わせられたファームウェアやマイクロコードなどを含む）がこれに含まれる。このような特許請求の範囲によって定義される本発明は、列挙される様々な手段によって提供される機能が、特許請求の範囲の要求する方式で組み合わせられ集められるということに存する。従って、これらの機能を提供することのできるどんな手段も、本明細書に示すものと等価であるとみなされる。
【００４４】
本発明の原理により、デッドゾーンや、レベルごとの量子化領域や、量子化重み付け行列など、変換ベースの画像またはビデオ・エンコーダ内で使用することのできる量子化パラメータを、自動計算するための装置および方法の様々な実施形態を述べる。また、デコーダに送信することができ、量子化プロセス内で追加のフレキシビリティを提供して主観的および／または客観的品質を改善することができる、新しい量子化オフセッティング行列のセットも開示する。
【００４５】
この主題に関するほとんどの研究では、変換ベースのコーデックにおけるＡＣ係数分布はラプラスである傾向があることが主張されている。Ｈ．２６４コーデック内でもこの仮定に従うが、これは量子化プロセスの設計に特に影響する傾向がある。特に、係数ＷについてのＨ．２６４参照ソフトウェア内でのデッドゾーニング・プロセスは、以下のように固定の丸め係数ｆを考慮して実施される。
【００４６】
【数１０】
2011223607.tif 000012
【００４７】
上式で、Ｚはマッピングされる量子化レベルであり、Δは量子化ステップ・サイズである。ｆを減少させると、再構築値０の周りのデッドゾーン・エリアは本質的に増大し、また他のすべてのレベルでは、量子化領域はｆに従って等しくシフトされる。このプロセスは、図２Ａおよび図２Ｂでよりよくわかる。このようなラプラス分布を近似する試みとして、ｆは、イントラ・スライスではΔ／３に等しく選択され、インター・スライスではΔ／６に等しく選択された。図２Ａおよび２Ｂに目を向けると、ステップ・サイズがΔでありそれぞれｆ＝Δ／２およびｆ＝Δ／４である一様量子化器での、入力信号Ｗと逆量子化（再構築）された出力信号Ｗ’との関係が、参照番号２００および２５０でそれぞれ一般的に示されている。
【００４８】
しかし、この主張は常に当てはまるわけではなくコンテンツおよび係数に大きく依存することを観察することができる（例えば図４〜１６Ｂ参照）。図４には、高テクスチャＳＤシーケンスについてのイントラ変換（４×４）係数分布が、参照番号４００で一般的に示されている。図５には、このシーケンスについてのレベル１（ＱＰ３０）の周りのイントラ係数分布が、参照番号５００で一般的に示されている。図６に、レベル１の周りの上記の係数分布の誤差寄与を示すが、これは参照番号６００で一般的に示されている。しかし、図７に、このシーケンスでより小さい量子化器（ＱＰ２４）を使用したレベル１の周りのイントラ係数分布を示すが、このイントラ係数分布は参照番号７００で一般的に示されている。図６と同様、図８に、レベル１の周りの上記の係数分布の誤差寄与を示すが、これは参照番号８００で一般的に示されている。図９には、この高テクスチャＳＤシーケンスについてのインター変換（４×４）係数分布が、参照番号９００で一般的に示されている。この分布について、図１０にレベル１（ＱＰ２４）の周りの分布を示すが、これは参照番号１０００で一般的に示されている。図１１に移ると、レベル１の周りの上記の係数分布の誤差寄与が、参照番号１１００で一般的に示されている。比較として、次に図１２に移ると、低テクスチャＱＣＩＦシーケンスについてのイントラ変換（４×４）係数分布が、参照番号１２００で一般的に示されている。図１３には、このシーケンスについてのレベル１（ＱＰ２４）の周りのイントラ係数分布が、参照番号１３００で一般的に示されている。図１４に、レベル１の周りの上記の係数分布の誤差寄与を示すが、これは参照番号１４００で一般的に示されている。図１５には、この低テクスチャＱＣＩＦシーケンスについてのインター変換（４×４）係数分布が、参照番号１５００で一般的に示されている。この分布について、図１６Ａにレベル１（ＱＰ２４）の周りの分布を示すが、これは参照番号１６００で一般的に示されている。図１６Ｂに移ると、レベル１の周りの上記の係数分布の誤差寄与が、参照番号１６５０で一般的に示されている。これらの図では、各変換係数ごとの適切なスケーリングも考慮されたことに留意されたい。図１２〜１６Ｂに示したＱＣＩＦシーケンスなど、解像度およびディテールの低いコンテンツの場合、係数の分布はラプラスに近いかもしれないが、ある係数から別の係数までに大きな差があることを観察することができる。ラプラス分布を仮定すると、より高次の係数は、より低次の係数よりも速く減衰する傾向がある（より小さい減衰率λ、またはより大きい分散）。このことは直ちに、複数の周波数にまたがって同様の分布モデルを仮定するのではなく、係数をそれらの次数に従って異なる仕方で扱う必要があることを示唆する。これは、高解像度のコンテンツ、特に、ノイズ（例えばフィルム・グレイン・ノイズ）を含む可能性もあるフィルムまたは高テクスチャ・コンテンツではより一層明白になり、係数分布に大きく影響する可能性がある（図４〜１１）。このようなノイズは、サンプル間の低度から中度の分散としてそれ自体を表す傾向があり、この分散自体が、分布をガウスにより近い状態にする。明ら��に、固定の丸めパラメータｆをＨ．２６４参照ソフトウェアによって使用されるように使用した場合、このようなパラメータが周波数に従って修正されるとしても、この種の分布は正しく考慮されず、その結果、量子化プロセスは最適でなくなる。特に低度から中度の量子化パラメータ（非常に高度から中度のビットレートに対応する）では、ある量子化レベル内およびその付近（ならびに特にレベル１の周り）の区分的分布は、場合により一様になるかまたは一様に近くなる可能性があることが、実際に観察される（図５、７、１０、１３）。これらの条件の下では、ｆの選択はかなりクリティカルになり得る。というのは、デッドゾーンが不適切に大きいと必要以上の係数が０に量子化される可能性があり、これは、客観的品質の低下、およびより大きな主観的品質の低下につながる可能性があるからである。
【００４９】
この問題は、Ｈ．２６４の場合、ベースライン、メイン、拡張プロファイルが整数４×４変換の使用だけしか許容しないことを考えると、よりクリティカルである傾向がある。４×４変換は、ブロッキングおよびリンギング・アーチファクトの低減やビット・イグザクト（ｂｉｔ  ｅｘａｃｔ）実装など、いくつかの非常に優れたプロパティを有する傾向があるものの、８×８変換よりも低い無相関化プロパティを有し、また量子化決定の影響をより受けやすい。特に、量子化器値（ＱＰ）２６を使用して以下のブロックの量子化を実施したいと仮定する（ｆはΔ／２に等しいと考える）。
【００５０】
【数１１】
2011223607.tif 000013
【００５１】
この場合、量子化プロセスは以下の結果となる。
【００５２】
【数１２】
2011223607.tif 000014
【００５３】
元のブロックは高い垂直アクティビティおよび低い水平アクティビティによって記述され、ＱＰはそれほど高くないが、再構築されたブロック中のすべての水平アクティビティは失われることに、すぐに気付く。この特定のブロックの平均二乗誤差（ＭＳＥ）は比較的低い（７．６２５）が、このプロセスの主観的影響は、このブロックの知覚的特性が激しく改変されたことを考えると、いくぶん重い可能性がある。より具体的には、再構築後のブロックは、元のブロックと比較していくぶん構造化される傾向があり、従って、見る者にとってより目立ち不快となることが観察される。
【００５４】
上記は、量子化プロセスの直接的な結果であり、特に、係数をレベル１ではなくレベル０に割り当てた結果である。水平または垂直のすべての係数が０に設定された場合は、得られる結果は上記のようになる。しかしこのような結果は、影響を受ける次元におけるいくつかの係数（少なくとも１つ）を、強いて選択的にレベル０ではなく１にすることによって、回避することができる。このようなプロセスは様々な方式で実施することができる。まず初めに、このようなプロセスが必要か否かを判定する必要がある。特に、このような特性は、列方向または行方向の分散（すなわちブロック中のすべての行または列についての分散の合計）が比較的小さい場合に生じる傾向がある。このような値は、以下のように計算することができる。
【００５５】
【数１３】
2011223607.tif 000015
【００５６】
上式で、ｘｉ，ｊは、それぞれ行および列ｉおよびｊのピクセル値に対応する。Ｔ１＜ｃｏｌｕｍｎ＿ｓＶａｒ＜Ｔ２、またはＴ３＜ｒｏｗ＿ｓＶａｒ＜Ｔ４が満たされる場合は、このような特性を考慮するように量子化プロセスを改変することができる。さらに、マクロブロックまたはブロック全体の分散は、以下のように考慮することができる。
【００５７】
【数１４】
2011223607.tif 000016
【００５８】
上式で、ＢｖおよびＢｈは、それぞれブロックの高さおよび幅である。より具体的には、ｂｌｏｃｋＶａｒが異なる値領域に対応する場合、または値Ｔ１、Ｔ２、Ｔ３、Ｔ４を相応に適応させることができる場合（例えばｂｌｏｃｋＶａｒに応じたテーブル・ルックアップを使用して）は、異なる処理を適用することができる。画像全体についてのＡＣ係数の分布統計だけを収集するのではなく、種々の特性を有する領域についての分布も追加で収集することができ、より正確で精緻化された量子化プロセス適応を可能にすることが、実際には推奨される。
【００５９】
４×４変換内で（必要に応じて）人為的に水平または／および垂直分散を導入するための、いくぶん単純な方法は、位置（１，０）または／および（０，１）におけるＡＣ係数がレベル１に設定される確率を強制するかまたは増加させることである。これは、元のｆ値を使用してこれらの係数が元々０であったことがわかった場合にのみこれらの係数の値ｆを増加させることによって行うことができる。例えば、上記の特性が満たされる場合（垂直または水平分散）であって、可能なら（１，０）係数を維持することが望まれると仮定した場合、以下のプロセスを実施することができる。
【００６０】
係数Ｗ１，０の準備レベル
【００６１】
【数１５】
2011223607.tif 000017
を以下のように計算する。
【００６２】
【数１６】
2011223607.tif 000018
【００６３】
上式で、ｆ１は準備丸めパラメータである。
【００６４】
【数１７】
2011223607.tif 000019
であって上記の条件が満たされる場合は、最終レベルＺ１，０は以下のように計算される。
【００６５】
【数１８】
2011223607.tif 000020
【００６６】
上式で、ｆ２（ｆ２＞ｆ１）は、この係数がレベル１でマッピングされる優先度を高めるようにして選択される。
【００６７】
この実施形態は、いくつかの場合では主観的品質を改善することができるが、他の場合では主観的品質を損なうことがあり、また客観的品質に対する影響を全く考慮しない。別の手法は、最初にすべての係数について準備量子化を実施することである。これは基本的に、以下のような変換行列ｗおよび準備量子化行列
【００６８】
【数１９】
2011223607.tif 000021
をもたらすことになる。
【００６９】
【数２０】
2011223607.tif 000022
【００７０】
ｊ＞０であるすべての列で、
【００７１】
【数２１】
2011223607.tif 000023
が０の場合、または／およびｉ＞０ですべての
【００７２】
【数２２】
2011223607.tif 000024
が０の場合は、これらの
【００７３】
【数２３】
2011223607.tif 000025
の間で、提供されるコストの点から見てレベル１に設定するのが最もよい係数が見つかる。これは、最小化問題であり、以下のように関数Ｊの最小値（レート歪み最適化技法に類似する）を見つける必要がある。
【００７４】
【数２４】
2011223607.tif 000026
【００７５】
Ｄｉｓｔｏｒｔｉｏｎｉ，ｊは、以下のような種々の歪みメトリックスを使用して設定することができる。
【００７６】
【数２５】
2011223607.tif 000027
【００７７】
Ｃｏｓｔｉ，ｊは、１つの係数を修正するための実際のビットレート・コストを表すことができ、さらには、走査順で最後の非０の係数からの距離に等しいものとすることもでき、以下の行列形式で記述することができる。
【００７８】
【数２６】
2011223607.tif 000028
【００７９】
水平と垂直の両方の係数を変更する必要がある場合（すなわちＤＣを除いたすべての係数が０に量子化された場合）は、他方の次元が０である水平または垂直の係数（すなわち０，ｊまたはｉ，０における係数）を改変することからの合同コストを考慮する必要があり、一方、ｉとｊが両方とも０よりも大きい位置（ｉ，ｊ）における単一の係数を修正することは、両方の次元に直接に影響を有することになり、単一のコストを使用することができることに留意されたい。
【００８０】
４×４よりも大きい変換（すなわち８×８）でも、同様の手法に従うことができる。例えば８×８変換の場合、単一の水平または垂直係数だけでなく、これらのうちの２つを維持することが望ましいことがある。というのは、そうすることによって元のテクスチャをより現実的に再構築／表現することができるからである。このような場合、２つ（またはそれ以上）の係数の選択は、やはり合同で（すべての可能な組合せを調べることによって）実施する必要があり、あるいは単純にするために、最初に各係数を別々に最適化することを試みることもでき、各ステップで、前の係数修正をコスト・プロセス内で考慮する。必要なら、４×４の場合に、より多くの係数を同様にして維持することもできる。より具体的には、このプロセスは以下のように実施することができる。
【００８１】
変換行列Ｗおよび準備量子化行列
【００８２】
【数２７】
2011223607.tif 000029
は、この場合もやはり以下のように計算される。
【００８３】
【数２８】
2011223607.tif 000030
【００８４】
【数２９】
2011223607.tif 000031
に基づいて、単一の係数をレベル０からレベル１に変更するためのコスト行列が計算される。
【００８５】
【数３０】
2011223607.tif 000032
【００８６】
次いで、最小のＲＤベースのコストを有する係数、すなわち
【００８７】
【数３１】
2011223607.tif 000033
が修正される。この結果、以下の新しい行列Ｚ’がもたらされる。
【００８８】
【数３２】
2011223607.tif 000034
【００８９】
修正すべき第２の係数もやはり、Ｊｉ，ｊ＝Ｄｉｓｔｏｒｔｉｏｎｉ，ｊ＋λ＊Ｃｏｓｔｉ，ｊなどの基準を使用して選択され、この場合、Ｃｏｓｔｉ，ｊは新しいレベル行列Ｚ’に基づいて計算される。このプロセスを、維持する必要のある追加の係数の数に応じて必要なだけ繰り返すことができる。
【００９０】
上記の方法を使用して、いくつかの場合に主観的品質をいくらか改善することができるが、代替方法を利用することもできる。この代替方法は、係数分布に基づいてｆ２をよりよく選択し、生成される歪みを最小限に抑えることによって、主観的と客観的の両方の品質を改善することができる。前と同様、係数Ｗ１，０の準備レベル
【００９１】
【数３３】
2011223607.tif 000035
は、やはり以下のように計算される。
【００９２】
【数３４】
2011223607.tif 000036
【００９３】
上式で、ｆ１は準備丸めパラメータである。
【００９４】
【数３５】
2011223607.tif 000037
＝０であって上記の条件が満たされる場合は、最終レベルＺ１，０は以下のように計算される。
【００９５】
【数３６】
2011223607.tif 000038
【００９６】
上式で、ｆ２（ｆ２＞ｆ１）は、この係数がレベル１でマッピングされる優先度を高めるようにして選択される。この場合、ｆ２は、係数の分布を調べることによって計算することができる。このような分布は、現在データの事前分析を実施することによって収集することができ、あるいは、現在分布が同タイプの符号化済みブロック（現在または前のピクチャ）の分布と同様のプロパティを有することになると仮定することによって収集することができる。準備レベルが
【００９７】
【数３７】
2011223607.tif 000039
であると仮定すると、このレベルの周りの分布エリアを計算することができる。これは、分布の正確な統計を考慮することによって、あるいはモデルベースの方法を使用することによって（例えばラプラスまたはガウス分布モデルの使用）行うことができる。所与の分布領域について最適な量子化点を決定するための通常の方法では、分布のほぼ中央点（すなわち分布を２つの等サイズのエリア
【００９８】
【数３８】
2011223607.tif 000040
に分割する点）として選択することができる。この中央点は、区分的分布がほぼ区分的線形であると仮定することによる近似であることに留意されたい。より正確な方策は、ロイド・マックス（Ｌｌｏｙｄ  Ｍａｘ）法を使用して、誤差を最小限にする点を見つけることである。区分的線形分布を作ることにより、以下のように直角台形（すなわち２つの直角を有する台形）からのプロパティを使用して（図１７に見ることができる）ｆ２を計算することができる。
【００９９】
【数３９】
2011223607.tif 000041
【０１００】
図１７に目を向けると、直角台形を使用したｆの計算が、参照番号１７００で一般的に示されている。
【０１０１】
また、以下の式もある。
【０１０２】
【数４０】
2011223607.tif 000042
【０１０３】
ｆと平方根内の値は両方とも正である必要があることに留意されたい。
【０１０４】
わずかにより複雑ではあるが、シンプソン法や３／８法など、その他の算術積分法を台形法の代わりに使用することもできる。しかし、正確さは劣るがより単純な方策の１つは、最初にｘ−＝ｘ＋＝Δに設定することによって、まずエリア
【０１０５】
【数４１】
2011223607.tif 000043
および
【０１０６】
【数４２】
2011223607.tif 000044
を、
【０１０７】
【数４３】
2011223607.tif 000045
および
【０１０８】
【数４４】
2011223607.tif 000046
からそれぞれ計算することである。次いで
【０１０９】
【数４５】
2011223607.tif 000047
が選択されるが、これは最適ではないものの十分によい解である。ｘ−＝２×ｆ２であり、ｘ＋＝２×（１−ｆ２）であることに留意されたい。この方法は、係数を主観的に最適化する前述の方法と組み合わせてもよいが、ただしその場合は、そのプロセスにおける
【０１１０】
【数４６】
2011223607.tif 000048
は、新しいｆ２値に基づいて計算される。
【０１１１】
しかし、上記の方法は、量子化された各値によって被る歪みを慎重に考慮しない。エリア計算は、被る歪みをほぼ等しく仮定して行われる。この代わりに、より適切な方法は、このような計算の内で実際の歪みを考慮することであろう。すなわち、エリア
【０１１２】
【数４７】
2011223607.tif 000049
および
【０１１３】
【数４８】
2011223607.tif 000050
は、以下のように、よりよく計算されるはずである。
【０１１４】
【数４９】
2011223607.tif 000051
【０１１５】
上式で、
【０１１６】
【数５０】
2011223607.tif 000052
は、再構築された値
【０１１７】
【数５１】
2011223607.tif 000053
とｘとの間の歪みメトリックとすることができ、平方誤差すなわち
【０１１８】
【数５２】
2011223607.tif 000054
や、絶対誤差すなわち
【０１１９】
【数５３】
2011223607.tif 000055
などとすることができる。ｆｒｅｑｕｅｎｃｙ（ｘ）は、ｘに等しい値の係数の数に対応する。この場合もやはり、我々の目標は、
【０１２０】
【数５４】
2011223607.tif 000056
を作ることである。このようなプロパティを達成するための単純な方法は、最初に
【０１２１】
【数５５】
2011223607.tif 000057
を使用して
【０１２２】
【数５６】
2011223607.tif 000058
および
【０１２３】
【数５７】
2011223607.tif 000059
を計算し、ｆをゆっくりと減少させることによって、このような条件または
【０１２４】
【数５８】
2011223607.tif 000060
の形式の条件が満たされる最初の位置を見つけることであろう。このプロセスを実施するための単純なアルゴリズムは、以下のとおりとすることができる。
【０１２５】
ステップ１：
【０１２６】
【数５９】
2011223607.tif 000061
に設定する。
【０１２７】
【数６０】
2011223607.tif 000062
および
【０１２８】
【数６１】
2011223607.tif 000063
を計算する。
【０１２９】
ステップ２：
【０１３０】
【数６２】
2011223607.tif 000064
の場合はプロセスを終了する。
【０１３１】
ステップ３：ｆ＝ｆ−１に設定する。ｆ＝０の場合は、ｆ＝１に設定してプロセスを終了する。
【０１３２】
ステップ４：
【０１３３】
【数６３】
2011223607.tif 000065
および
【０１３４】
【数６４】
2011223607.tif 000066
に設定する。ステップ２に行く。
【０１３５】
上記の方法は性能（客観的または主観的、あるいは両方）を改善することができるが、より高いレベルを人為的に導入するこの方法は、元の信号と正確に合致しないことにもなるので、常に望ましいとは限らない。このために、従来技術では、ある間隔で（すなわちスライスごとに）ビットストリーム内で送信でき、すべての係数の再構築値の平行移動（シフト）を基本的に導入する、Θパラメータが導入された（図３参照）。図３に目を向けると、量子化プロセス内でのΘ＝Δ／４の影響が、参照番号３００で一般的に示されている。図３に関して、ｆ＝Δ／４と仮定する。これは、いくつかの係数が０レベルから１レベルに選択的に調節される本発明と似ている。しかし、従来技術では、デコーダがこのような調節を自覚して係数をより正確に再構築できるように、コーデック規格に対する変更が必要とされるが、これは本発明では不要なので、本発明とは異なる。従来技術で提案された方法は、ＡＣ係数が（ＤＣ係数を含めて）いくぶん異なる分布を有する傾向があることを考慮しない。そうではなく、よりよい手法は、ビットストリームと共に送信される行列Θを設計することであろう。これにより、異なる係数ごとにより細かい精緻化が可能になる。この手法は、従来技術によりＨ．２６４およびその他のコーデック内で量子化行列が考慮されるのによく似ている。Ｈ．２６４  ＦＲＥｘｔ仕様では、現在、１２個の異なる量子化重み行列が許容されており、これらは基本的に、変換サイズ（４×４対８×８）、色成分（Ｙ、Ｕ、Ｖ）、および予測タイプ（イントラ対インター）によって分けられる。というのは、これらは、いくぶん異なる分布特性を含むことのできる基本構成要素だからである。同様に、ここでは１２個の異なる量子化オフセッティング行列を定義することができ、これらは、スケーリングの代わりに再構築レベルをシフトする。マクロブロック適応フレーム‐フィールド符号化だけに利用可能である必要があり、フィールドとフレームのマクロブロックを区別することになる、追加の行列を加えることが望ましい場合もある。しかし、すべての再構築値をシフトすることができるものの、最も重要な再構築値はレベル１に関連するものであることが観察される。このことは、ＲＤ性能の点では、再構築されるレベルがレベル１である場合はΘパラメータだけを考慮する方がよいことを示唆する。特に、従来技術では、再構築値
【０１３６】
【数６５】
2011223607.tif 000067
は以下のように計算できることが言及された。
【０１３７】
【数６６】
2011223607.tif 000068
【０１３８】
上式で、Ｖｉｊパラメータは、逆変換プロセスから生じ、量子化器値ＱＰに関係する。我々の場合では、
【０１３９】
【数６７】
2011223607.tif 000069
はここで、以下のようにΘが今や係数位置に依存することも考慮して計算することができる。
【０１４０】
【数６８】
2011223607.tif 000070
【０１４１】
別の代替方法は、以下のようにΘをレベルに応じて修正することであろう。
【０１４２】
【数６９】
2011223607.tif 000071
【０１４３】
例えば、ｇ（Θｉｊ，Ｚｉｊ）＝Θｉｊ＞＞（Ｚｉｊ−１）を使用することができる。
【０１４４】
Θを計算するために、ｆ２の計算の場合と同様の手法を使用することができる。ここでの考えは、分布の点から見た中央値に対応する量子化区間Δ内の位置を見つけることであり、あるいは基本的には、Δを２つの等しいエリア領域に分割することにつながる（図１８参照）。図１８に目を向けると、メジアン選択（エリア等化）によるΘの選択に関するプロットが、参照番号１８００で一般的に示されている。これは手動で行うこともでき（すなわち全エリアを計算し、次いでエリアを半分に分割する点を見つける）、あるいはモデル分布を考慮して積分計算を実施することによって行うこともでき、あるいは単純な算術方法を考慮することによって行うこともできる。特に、図１８から、我々の区分的分布は、図１９からわかるようにやはり直角台形に類似することが、この場合にも観察される。図１９に目を向けると、直角台形を使用したΘの計算に関する図が、参照番号１９００で一般的に示されている。この場合、全エリアは以下のように計算することができる。
【０１４５】
【数７０】
2011223607.tif 000072
【０１４６】
点ｘ＝Δ／２＋Θは、エリアが２つの等しいエリア領域Ａ／２に分割されるような点として見つかることになる。すなわち
【０１４７】
【数７１】
2011223607.tif 000073
である。
【０１４８】
しかし、ｈ３は、相似三角形プロパティにより、以下の式にも等しい。
【０１４９】
【数７２】
2011223607.tif 000074
【０１５０】
従って、上式のｈ３を置き換えると、以下の結果になる。⇒
【０１５１】
【数７３】
2011223607.tif 000075
【０１５２】
負の符号はほとんど意味をなさないので、次いで以下の式になる。
【０１５３】
【数７４】
2011223607.tif 000076
【０１５４】
Ａも置き換えると、以下の式が得られる。
【０１５５】
【数７５】
2011223607.tif 000077
【０１５６】
Θはまた、ｆの計算で行われたのと同様に、実際の歪みおよび係数頻度を考慮することによって計算することもできる。ただしこの場合は、ｆを変化させる代わりに、第１の再構築値を変化させる必要がある。すなわち、意図するところは、
【０１５７】
【数７６】
2011223607.tif 000078
のような再構築値
【０１５８】
【数７７】
2011223607.tif 000079
を見つけることである。これもやはり、ｆの場合と同様の方策を使用して、以下のように行うことができる。
【０１５９】
ステップ１：
【０１６０】
【数７８】
2011223607.tif 000080
、Θ＝０に設定する。
【０１６１】
ステップ２：
【０１６２】
【数７９】
2011223607.tif 000081
および
【０１６３】
【数８０】
2011223607.tif 000082
を計算する。
【０１６４】
ステップ３：
【０１６５】
【数８１】
2011223607.tif 000083
の場合はプロセスを終了する。
【０１６６】
ステップ３：Θ＝Θ＋１に設定する。
【０１６７】
【数８２】
2011223607.tif 000084
の場合はプロセスを終了する。
【０１６８】
ステップ４：ステップ２に行く。
【０１６９】
性能およびΘ値の計算をさらに改善するために、０に設定される係数の数を考慮してもよい。具体的には、特定のＡＣ係数、すなわち強制的に０にされる位置（ｉ，ｊ）のＡＣ係数のパーセンテージを制限することが望ましい場合がある。パーセンテージは、マクロブロックのセット、スライス、ピクチャ、ＧＯＰのレベルで、あるいはシーケンス・レベルでも計算することができる。このような決定は、事前定義済みのパーセンテージ値をエンコーダにおいて提供することによって暗黙的に行うこともでき、あるいは、値が０に設定される場合には分散や歪みなど、シーケンスに関するある種の統計を考慮することによって、自動的に行うこともできる。現在の分布モデルを使用するとこのパーセンテージをかなり超過することを分布が示唆する場合は、Θの値をさらに増加させて品質を改善するのが最良であろう。このプロパティを考慮する単純な方法は、０レベルについてこのパーセンテージ関係を満たす係数値を見つけ、上記のΘ計算で使用されるΔ値を相応に増加させることである。例えば、０が位置ｙ（ｙ＜Δ／２）でパーセンテージＸ％を満たすと仮定すると、
【０１７０】
【数８３】
2011223607.tif 000085
に等しい新しいΔ’を使用して、以下のようにΘが計算される。
【０１７１】
【数８４】
2011223607.tif 000086
【０１７２】
Θはまた、必要なら、ａ≦Θ＜ｂなどのように制約することもできる（例えば、ａは０に設定することができ、ｂ＝Δ／２に設定することができる）。直角台形エリア計算を使用してまた、ｆ２を計算するのに必要な
【０１７３】
【数８５】
2011223607.tif 000087
および
【０１７４】
【数８６】
2011223607.tif 000088
のエリアの近似を、これらのエリア内の分布の完全な積分を実施する必要なしに実施することもできることに留意されたい。一般に、台形近似は、これらのエリアを計算するためにどんな間隔でも使用することができる。
【０１７５】
最後に、分布はまた、量子化重み付け行列の計算に使用することもできる。重み係数が知覚的分析に基づいてすでにわかっていると仮定すると、重み付け係数はまた、すべての係数について分布を等化しようとすることによってスケーリングすることができる。これは、次のことを考慮することによって実施することができる。すなわち、（ａ）各係数の最大値、および、所与の値と比較した（例えばＤＣと比較した）その比率の計算、（ｂ）０から開始する分布の指定パーセンテージ（例えば９５％）内の各係数の利用可能な最大値、（ｃ）０から開始する分布の別個の指定パーセンテージＰｉ，ｊ内の各係数の利用可能な最大値である。
【０１７６】
すべての係数の分布を考慮することもできるが、通常は、主観的品質の点から見てどの領域がより重要であると考えられるか（通常は低分散特性を有する領域）を決定して、それらの領域だけをこのような計算に使用する方がよい。しかし、このようにすると残りの領域についての性能を損なう可能性もあり、従って代替方法は、画像全体と各領域とについて別々にこれらの計算を実施してからこれらの結果を結合して（すなわち、各領域の重要度、つまり主観的影響や出現数などに基づく、重み付き平均法）、最終的な重み付け行列を計算することであろう。
【０１７７】
図２０に移ると、ピクチャ・レベルでの変換統計に基づく量子化の方法が、参照番号２０００で一般的に示されている。方法２０００は、画像データの符号化に関して実施される。
【０１７８】
開始ブロック２００５は、制御を機能ブロック２０１０に渡す。機能ブロック２０１０は、分布配列を初期化し、制御をループ境界ブロック２０１５に渡す。ループ境界ブロック２０１５は、ピクチャ符号化ループを開始し、制御を機能ブロック２０２０に渡す。機能ブロック２０２０は、符号化の準備として、ピクチャ・レベル量子化パラメータの決定や、ピクチャ決定の実施などを行い、制御をループ境界ブロック２０２５に渡す。ループ境界ブロック２０２５は、マクロブロック符号化ループを開始し、制御を機能ブロック２０３０に渡す。機能ブロック２０３０は、処理中の現在マクロブロックの量子化パラメータを決定／選択し、制御をループ境界ブロック２０３５に渡す。ループ境界ブロック２０３５は、予測モード・ループを開始し、制御を機能ブロック２０４０に渡す。機能ブロック２０４０は、現在マクロブロックについてイントラまたはインター予測を実施し、制御をループ境界ブロック２０４５に渡す。ループ境界ブロック２０４５は、すべての４×４ブロック（処理中の現在マクロブロック中の）について変換ループを開始し、制御を機能ブロック２０５０に渡す。機能ブロック２０５０は、処理中の現在４×４ブロックの変換を実施し、制御を機能ブロック２０５５に渡す。機能ブロック２０５５は、１／２のオフセットを使用して現在４×４ブロックを量子化して、あらゆる変換係数についてｌｅｖｅｌｉ，ｊを取得し、制御を機能ブロック２０６０に渡す。機能ブロック２０６０は、分布配列をチェックして、ｌｅｖｅｌｉ，ｊ量子化パラメータおよびｉ，ｊに基づいて最適なオフセットｆｉ，ｊを決定し、制御を機能ブロック２０６５に渡す。機能ブロック２０６５は、ｆｉ，ｊを新しいオフセットとして使用して位置ｉ，ｊにおける係数を再量子化し、制御をループ境界ブロック２０７０に渡す。ループ境界ブロック２０７０は、変換ループを終了し、制御をループ境界ブロック２０７５に渡す。ループ境界ブロック２０７５は、予測モード・ループを終了し、制御を機能ブロック２０８０に渡す。機能ブロック２０８０は、分布配列を更新し、制御をループ境界ブロック２０８５に渡す。ループ境界ブロック２０８５は、ＭＢ符号化ループを終了し、制御をループ境界ブロック２０９０に渡す。ループ境界ブロック２０９０は、ピクチャ符号化ループを終了し、制御を終了ブロック２０９５に渡す。
【０１７９】
図２１に移ると、領域の考慮に基づく量子化の方法が、参照番号２１００で一般的に示されている。方法２１００は、画像データの符号化に関して実施される。
【０１８０】
開始ブロック２１０５は、制御を機能ブロック２１１０に渡す。機能ブロック２１１０は、分布配列を初期化し、制御をループ境界ブロック２１１５に渡す。ループ境界ブロック２１１５は、ピクチャ符号化ループを開始し、制御を機能ブロック２１２０に渡す。機能ブロック２１２０は、符号化の準備として、ピクチャ・レベル量子化パラメータの決定や、ピクチャ決定の実施などを行い、制御を機能ブロック２１２２に渡す。機能ブロック２１２２は、コンテンツに基づいて（例えば領域セグメント化方式を使用して）場面を分析し、制御をループ境界ブロック２１２５に渡す。ループ境界ブロック２１２５は、マクロブロック符号化ループを開始し、制御を機能ブロック２１３０に渡す。機能ブロック２１３０は、処理中の現在マクロブロックの量子化パラメータを決定／選択し、現在マクロブロックに対応する領域を決定し、制御をループ境界ブロック２１３５に渡す。ループ境界ブロック２１３５は、予測モード・ループを開始し、制御を機能ブロック２１４０に渡す。機能ブロック２１４０は、現在マクロブロックについてイントラまたはインター予測を実施し、制御をループ境界ブロック２１４５に渡す。ループ境界ブロック２１４５は、すべての４×４ブロック（処理中の現在マクロブロック中の）について変換ループを開始し、制御を機能ブロック２１５０に渡す。機能ブロック２１５０は、処理中の現在４×４ブロックの変換を実施し、制御を機能ブロック２１５５に渡す。機能ブロック２１５５は、１／２のオフセットを使用して現在４×４ブロックを量子化して、あらゆる変換係数についてｌｅｖｅｌｉ，ｊを取得し、制御を機能ブロック２１６０に渡す。機能ブロック２１６０は、対応する領域について分布配列をチェックして、ｌｅｖｅｌｉ，ｊ量子化パラメータおよびｉ，ｊに基づいて最適なオフセットｆｉ，ｊを決定し、制御を機能ブロック２１６５に渡す。機能ブロック２１６５は、ｆｉ，ｊを新しいオフセットとして使用して位置ｉ，ｊにおける係数を再量子化し、制御をループ境界ブロック２１７０に渡す。ループ境界ブロック２１７０は、変換ループを終了し、制御をループ境界ブロック２１７５に渡す。ループ境界ブロック２１７５は、予測モード・ループを終了し、制御を機能ブロック２１８０に渡す。機能ブロック２１８０は、対応する領域の分布配列、および利用可能なら大域的な配列を更新し、制御をループ境界ブロック２１８５に渡す。ループ境界ブロック２１８５は、ＭＢ符号化ループを終了し、制御をループ境界ブロック２１９０に渡す。ループ境界ブロック２１９０は、ピクチャ符号化ループを終了し、制御を終了ブロック２１９５に渡す。
【０１８１】
図２２に移ると、最適化された量子化のために変換係数を考慮することを伴うエンコーダが、参照番号２２００で一般的に示されている。
【０１８２】
エンコーダ２２００への入力は、領域分析および統計モジュール２２１０の第１の入力、加算器２２１５の反転入力、および動き補償器２２２０の第１の入力と信号通信で接続される。加算器２２１５の出力は、変換器２２２５の入力と信号通信で接続される。変換器２２２５の第１の出力は、領域分析および統計モジュール２２１０の第２の入力と信号通信で接続される。領域分析および統計モジュール２２１０の出力は、事前量子化器２２３０の第１の入力と信号通信で接続される。事前量子化器２２３０の出力は、量子化器２２３５の第１の入力と信号通信で接続される。変換器２２２５の第２の出力は、量子化器２２３５の第２の入力と信号通信で接続される。変換器２２２５の第３の出力は、事前量子化器２２３０の第２の入力と信号通信で接続される。量子化器２２３５の出力は、可変長コーダ（ＶＬＣ）２２４０の第１の入力、および逆量子化器２２４５の入力と信号通信で接続される。ＶＬＣ２２４０の出力は、エンコーダ２２００の出力として利用可能である。
【０１８３】
動き補償器２２２０の第１の出力は、加算器２２１５の非反転入力、および加算器２２５５の第１の入力と信号通信で接続される。動き補償器２２２０の第２の入力は、動き推定およびモード決定モジュール２２５０の第１の出力と信号通信で接続される。逆量子化器２２４５の出力は、逆変換器２２６０の入力と信号通信で接続される。逆変換器２２６０の出力は、加算器２２５５の第２の入力と信号通信で接続される。加算器２２５５の出力は、ループ・フィルタ２２７５の入力と信号通信で接続される。ループ・フィルタ２２７５の出力は、ピクチャ参照ストア２２７０の入力と信号通信で接続される。ピクチャ参照ストアの出力は、動き補償器２２２０の第３の入力、ならびに動き推定およびモード決定モジュール２２５０の入力と信号通信で接続される。動き推定およびモード決定モジュール２２５０の第２の出力は、ＶＬＣ２２４０の第２の入力と信号通信で接続される。
【０１８４】
図２３に移ると、最適化された量子化のためにシータ・パラメータおよび変換係数を考慮することを伴うエンコーダが、参照番号２３００で一般的に示されている。
【０１８５】
エンコーダ２３００への入力は、領域分析および統計モジュール２３１０の第１の入力、加算器２３１５の反転入力、および動き補償器２３２０の第１の入力と信号通信で接続される。加算器２３１５の出力は、変換器２３２５の入力と信号通信で接続される。変換器２３２５の第１の出力は、領域分析および統計モジュール２３１０の第２の入力と信号通信で接続される。領域分析および統計モジュール２３１０の第１の出力は、事前量子化器２３３０の第１の入力と信号通信で接続される。事前量子化器２３３０の出力は、量子化器２３３５の第１の入力と信号通信で接続される。変換器２３２５の第２の出力は、量子化器２３３５の第２の入力と信号通信で接続される。変換器２３２５の第３の出力は、事前量子化器２３３０の第２の入力と信号通信で接続される。量子化器２３３５の出力は、可変長コーダ（ＶＬＣ）２３４０の第１の入力、および逆量子化器２３４５の入力と信号通信で接続される。ＶＬＣ２３４０の出力は、エンコーダ２３００の出力として利用可能である。
【０１８６】
動き補償器２３２０の第１の出力は、加算器２３１５の非反転入力、および加算器２３５５の第１の入力と信号通信で接続される。動き補償器２３２０の第２の入力は、動き推定およびモード決定モジュール２３５０の第１の出力と信号通信で接続される。逆量子化器２３４５の出力は、逆変換器２３６０の入力と信号通信で接続される。逆変換器２３６０の出力は、加算器２３５５の第２の入力と信号通信で接続される。加算器２３５５の出力は、ループ・フィルタ２３７５の入力と信号通信で接続される。ループ・フィルタ２３７５の出力は、ピクチャ参照ストア２３７０の入力と信号通信で接続される。ピクチャ参照ストアの出力は、動き補償器２３２０の第３の入力、ならびに動き推定およびモード決定モジュール２３５０の入力と信号通信で接続される。動き推定およびモード決定モジュール２３５０の第２の出力は、ＶＬＣ２３４０の第２の入力と信号通信で接続される。
【０１８７】
領域分析および統計モジュール２３１０の第２の出力は、シータ導出モジュール２３８０の入力と信号通信で接続される。シータ導出モジュール２３８０の第１の出力は、逆量子化器２３４５の第２の入力と信号通信で接続される。シータ導出モジュール２３８０の第２の出力は、事前量子化器２３３０の第３の入力、量子化器２３３５の第３の入力、およびＶＬＣ２３４０の第３の入力と信号通信で接続される。
【０１８８】
図２４に移ると、デコーダが参照番号２４００で一般的に示されている。デコーダ２４００の入力は、シータ導出モジュール２４８０の入力、および可変長デコーダ（ＶＬＤ）２４４０の入力と信号通信で接続される。シータ導出モジュール２４８０の第１の出力は、逆離散コサイン変換（ＩＤＣＴ）モジュール２４９９の第１の入力と信号通信で接続される。ＶＬＤ２４４０の第１の出力は、動き補償器２４２０の第１の入力と信号通信で接続される。ＶＬＤ２４４０の第２の出力は、量子化器２４３５の入力と信号通信で接続される。量子化器２４３５の出力は、ＩＤＣＴモジュール２４９９の第２の入力と信号通信で接続される。ＩＣＤＴモジュール２４９９の出力は、加算器２４８８の第１の入力と信号通信で接続される。動き補償器２４２０の出力は、加算器２４８８の第２の入力と信号通信で接続される。加算器２４８８の出力は、ループ・フィルタ２４７７の入力と信号通信で接続される。ループ・フィルタ２４７７の出力は、フレーム・バッファ２４６６の入力と信号通信で接続される。フレーム・バッファ２４６６の第１の出力は、動き補償器２４２０の第２の入力と信号通信で接続される。フレーム・バッファ２４６６の第２の出力は、デコーダ２４００の出力として利用可能である。
【０１８９】
次に、本発明の様々な例示的実施形態による、本発明に付随する多くの利点／特徴のいくつかについて述べる。例えば、利点／特徴の１つは、係数位置および関連する分布を考慮することによって適応的にデッドゾーン量子化が実施される符号化装置および方法である。別の利点／特徴は、前述の符号化装置および方法であって、符号化モード（イントラまたはインター）、色成分、変換サイズ、ならびに必要ならフィールドおよびフレーム・マクロブロック符号化モードのうちの、少なくとも１つに応じて、適応が実施される符号化装置および方法である。別の利点／特徴は、前述の適応を伴う符号化装置および方法であって、分布統計が種々の場合ごとに別々に収集される符号化装置および方法である。別の利点／特徴は、前述の適応を伴う符号化装置および方法であって、分布統計が領域特性（分散、エッジなど）に基づいて収集される符号化装置および方法である。別の利点／特徴は、前述の符号化装置および方法であって、デッドゾーン量子化が２ステップの方法で実施され、最初に固定のデッドゾーン／丸め制御を使用して準備レベルを決定してから、このレベルに基づいてレベル依存のデッドゾーン／丸め制御を使用して量子化を繰り返す符号化装置および方法である。また、別の利点／特徴は、前述の２ステップのデッドゾーン量子化を伴う符号化装置および方法であって、レベル依存の丸め制御が、そのレベル内の区分的分布に基づいて計算される符号化装置および方法である。さらに、別の利点／特徴は、前述の２ステップのデッドゾーン量子化およびレベル依存の丸め制御を伴う符号化装置および方法であって、再構築済みエリア内の分布集中（分布エリア）を使用して計算が実施される符号化装置および方法である。さらに、別の利点／特徴は、前述の２ステップのデッドゾーン量子化、またレベル依存の丸め制御を伴う符号化装置および方法であって、台形法や単体近似法などの算術積分法を使用してレベル依存の丸め制御が計算される符号化装置および方法である。加えて、別の利点／特徴は、前述の２ステップのデッドゾーン量子化を伴う符号化装置および方法であって、歪みもまた計算内で考慮される符号化装置および方法である。さらに、別の利点／特徴は、前述の符号化装置および方法であって、主観的品質を改善する試みとして、元々レベル０に設定されていたいくつかの係数がそうではなく強制的により高いレベルにされる符号化装置および方法である。また、別の利点／特徴は、前述の係数レベル強制を伴う符号化装置および方法であって、このような決定がレート歪み最適化基準に基づく符号化装置および方法である。さらに、別の利点／特徴は、前述の符号化装置および方法であって、オフセッティング量子化行列Θのセットを送信および考慮することによってデッドゾーン量子化が精緻化される符号化装置および方法である。また、別の利点／特徴は、前述のオフセッティング行列によって精緻化されるデッドゾーン量子化を伴う符号化装置および方法であって、異なるレベルでΘの値が異なる影響を有する符号化装置および方法である。さらに、別の利点／特徴は、前述のオフセッティング行列によって精緻化されるデッドゾーン量子化を伴う符号化装置および方法であって、画��統計および係数分布に基づいてΘが計算される符号化装置および方法である。さらに、別の利点／特徴は、前述のオフセッティング行列によって精緻化されるデッドゾーン量子化、ならびに画像統計および係数分布に基づいて計算されるΘを伴う符号化装置および方法であって、再構築済みエリア内の分布集中（分布エリア）を使用してΘが計算される符号化装置および方法である。加えて、別の利点／特徴は、前述のオフセッティング行列によって精緻化されるデッドゾーン量子化、ならびに画像統計および係数分布と分布集中とに基づいて計算されるΘを伴う符号化装置および方法であって、台形法や単体近似法などの算術積分法を使用してΘが計算される符号化装置および方法である。さらに、別の利点／特徴は、前述のオフセッティング行列によって精緻化されるデッドゾーン量子化、ならびに画像統計および係数分布と分布集中とに基づいて計算されるΘを伴う符号化装置および方法であって、歪みもまたΘの計算で考慮される符号化装置および方法である。さらに、別の利点／特徴は、前述のオフセッティング行列によって精緻化されるデッドゾーン量子化を伴う符号化装置および方法であって、レベル０を使用して符号化されることが可能な係数の最大パーセンテージに応じてΘ計算を調節することのできる符号化装置および方法である。別の利点／特徴は、前述の符号化装置および方法であって、すべての係数についての分布特性に基づいて計算された重み付き量子化行列をデッドゾーン量子化が考慮する符号化装置および方法である。別の利点／特徴は、前述の適応と、領域特性に基づく分布統計収集と、すべての係数についての分布特性に基づいて計算された重み付き行列によるデッドゾーン量子化とを伴う符号化装置および方法であって、「最も重要な領域」の分布だけがこの計算で考慮される符号化装置および方法である。さらに、別の利点／特徴は、前述の適応と、領域特性に基づく分布統計収集と、すべての係数についての分布特性に基づいて計算された重み付き行列によるデッドゾーン量子化とを伴う符号化装置および方法であって、主観的影響と出現統計とに基づく重み付き平均法を使用して、種々の領域すべてが重み付き行列の計算で考慮される符号化装置および方法である。
【０１９０】
本発明のこれらや他の特徴および利点は、本明細書の教示に基づいて、当業者によって容易に確かめることができる。本発明の教示は、様々な形式のハードウェア、ソフトウェア、ファームウェア、専用プロセッサ、またはこれらの組合せで実施できることを理解されたい。
【０１９１】
本発明の教示は、ハードウェアとソフトウェアの組合せとして実施されることが最も好ましい。さらに、ソフトウェアは、プログラム記憶ユニット上に有形に組み入れられたアプリケーション・プログラムとして実現されることが好ましい。アプリケーション・プログラムは、任意の適したアーキテクチャを備えるマシンにアップロードして、マシンによって実行することができる。マシンは、１つまたは複数の中央処理装置（ＣＰＵ）、ランダム・アクセス・メモリ（ＲＡＭ）、および入出力（Ｉ／Ｏ）インタフェースなどのハードウェアを有するコンピュータ・プラットフォーム上で実現されることが好ましい。コンピュータ・プラットフォームはまた、オペレーティング・システムおよびマイクロ命令コードを備えてもよい。本明細書に述べた様々なプロセスおよび機能は、マイクロ命令コードの一部またはアプリケーション・プログラムの一部、あるいはこれらの任意の組合せであってよく、これらはＣＰＵによって実行することができる。加えて、追加のデータ記憶ユニットや印刷ユニットなど、その他の様々な周辺ユニットがコンピュータ・プラットフォームに接続されてもよい。
【０１９２】
添付の図面に示した構成システム・コンポーネントおよび方法のいくつかはソフトウェア中で実現することが好ましいので、システム・コンポーネント間またはプロセス機能ブロック間の実際の接続は、本発明がプログラムされる方式に応じて異なる場合があることも、さらに理解されたい。本明細書の教示が与えられれば、当業者なら本発明のこれらおよび類似の実装形態または構成を企図することができるであろう。
【０１９３】
添付の図面を参照して例示的な実施形態を本明細書に述べたが、本発明はこれらの正確な実施形態に限定されず、本発明の範囲または趣旨を逸脱することなく当業者によって様々な変更および修正を実施できることを理解されたい。このような変更および修正はすべて、添付の特許請求の範囲に述べる本発明の範囲に含まれるものとする。
【図１】
2011223607.tif 000089
【図２Ａ】
2011223607.tif 000090
【図２Ｂ】
2011223607.tif 000091
【図３】
2011223607.tif 000092
【図４】
2011223607.tif 000093
【図５】
2011223607.tif 000094
【図６】
2011223607.tif 000095
【図７】
2011223607.tif 000096
【図８】
2011223607.tif 000097
【図９】
2011223607.tif 000098
【図１０】
2011223607.tif 000099
【図１１】
2011223607.tif 000100
【図１２】
2011223607.tif 000101
【図１３】
2011223607.tif 000102
【図１４】
2011223607.tif 000103
【図１５】
2011223607.tif 000104
【図１６Ａ】
2011223607.tif 000105
【図１６Ｂ】
2011223607.tif 000106
【図１７】
2011223607.tif 000107
【図１８】
2011223607.tif 000108
【図１９】
2011223607.tif 000109
【図２０】
2011223607.tif 000110
【図２１】
2011223607.tif 000111
【図２２】
2011223607.tif 000112
【図２３】
2011223607.tif 000113
【図２４】
2011223607.tif 000114