(57)【要約】  複数のピクチャに対応するビデオ信号データを符号化するエンコーダ、およびそれに対応する方法を提供する。このエンコーダは、ビデオ信号データに対応する複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いてビデオ信号データのビデオ解析を実行し、ビデオ解析の結果に基づいてビデオ信号データの符号化パラメータの適応化を行う重複ウィンドウ解析ユニット（３１０）を含む。
2008503919.tif 000002
【特許請求の範囲】
【請求項１】
複数のピクチャに対応するビデオ信号データを符号化するエンコーダであって、
前記ビデオ信号データに対応する前記複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いて前記ビデオ信号データのビデオ解析を実行し、前記ビデオ解析の結果に基づいて前記ビデオ信号データの符号化パラメータの適応化を行う重複ウィンドウ解析ユニット（３１０）を含む、前記エンコーダ。
【請求項２】
前記重複ウィンドウ解析ユニット（３１０）が、時空間的解析を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項１に記載のエンコーダ。
【請求項３】
前記重複ウィンドウ解析ユニット（３１０）が、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも１つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも１つに使用する、請求項２に記載のエンコーダ。
【請求項４】
前記重複ウィンドウ解析ユニット（３１０）が、絶対差および分散を用いて前記量子化パラメータの適応化を行う、請求項３に記載のエンコーダ。
【請求項５】
前記重複ウィンドウ解析ユニット（３１０）が、事前符号化パスを用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項１に記載のエンコーダ。
【請求項６】
前記重複ウィンドウ解析ユニット（３１０）が、時空間的解析および事前符号化パスの両方を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項１に記載のエンコーダ。
【請求項７】
前記重複ウィンドウ解析ユニット（３１０）が、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも１つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも１つに使用する、請求項６に記載のエンコーダ。
【請求項８】
前記重複ウィンドウ解析ユニット（３１０）が、絶対差および分散を用いて量子化パラメータの適応化を行う、請求項７に記載のエンコーダ。
【請求項９】
前記ビデオ信号データが複数のフレームを含み、前記複数のフレームがそれぞれ対応するピクチャを表し、前記重複解析ユニットが、以前に符号化されたピクチャのみを考慮するように前記ビデオ解析を実行する、請求項１に記載のエンコーダ。
【請求項１０】
前記符号化パラメータが、スライス・タイプ、ピクチャおよびＧＯＰの符号化の構造および順序、重み付きパラメータ、量子化値およびデッド・ゾーン処理、ラグランジュ・パラメータ、参照数、参照の順序およびハンドリング、フレーム／フィールド・ピクチャおよびマクロブロック・パラメータ、デブロッキング・パラメータ、インター・ブロック・サイズ、イントラ空間予測、および直接モードのうち少なくとも１つを含む、請求項１に記載のエンコーダ。
【請求項１１】
前記重複ウィンドウ解析ユニット（３１０）が、複数回反復して前記ビデオ解析を実行し、以前に生成された解析統計値に基づいて符号化パラメータおよび解析統計値の一方の適応化を行う、請求項１に記載のエンコーダ。
【請求項１２】
前記重複ウィンドウのそれぞれが、ピクチャＰ個分のウィンドウ・サイズと、それに関連する重複サイズとを有し、前記重複ウィンドウ解析ユニットが、以前に生成された解析統計値に基づいて前記ウィンドウ・サイズおよび前記重複サイズの適応化を行う、請求項１に記載のエンコーダ。
【請求項１３】
複数のピクチャに対応するビデオ信号データを符号化する方法であって、
前記ビデオ信号データに対応する前記複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いて前記ビデオ信号データのビデオ解析を実行するステップ（４２５、４３０）と、
前記ビデオ解析の結果に基づいて前記ビデオ信号データの符号化パラメータの適応化を行うステップ（４３５）と、を含む前記方法。
【請求項１４】
前記実行ステップで、時空間的解析を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項１３に記載の方法。
【請求項１５】
前記実行ステップおよび前記適応化ステップでそれぞれ、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも１つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも１つに使用する、請求項１４に記載の方法。
【請求項１６】
前記量子化パラメータの適応化が、絶対差および分散を用いて行われる、請求項１５に記載の方法。
【請求項１７】
前記実行ステップで、事前符号化パスを用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項１３に記載の方法。
【請求項１８】
前記実行ステップで、時空間的解析および事前符号化パスの両方を用いて前記ビデオ信号データの前記ビデオ解析を実行する、請求項１３に記載の方法。
【請求項１９】
前記実行ステップおよび前記適応化ステップがそれぞれ、ピクチャ符号化タイプ情報、エッジ情報、平均情報および分散情報のうちの少なくとも１つを、時空間的解析、ラグランジュ・パラメータおよび量子化パラメータの適応化、ならびにデッド・ゾーン処理のうちの少なくとも１つに使用する、請求項１８に記載の方法。
【請求項２０】
前記量子化パラメータの適応化が、絶対差および分散を用いて行われる、請求項１９に記載の方法。
【請求項２１】
前記ビデオ信号データが複数のフレームを含み、前記複数のフレームがそれぞれ対応するピクチャを表し、前記実行ステップで、以前に符号化されたピクチャのみを考慮するように前記ビデオ解析を実行する、請求項１３に記載の方法。
【請求項２２】
前記符号化パラメータが、スライス・タイプ、ピクチャおよびＧＯＰの符号化の構造および順序、重み付きパラメータ、量子化値およびデッド・ゾーン処理、ラグランジュ・パラメータ、参照数、参照の順序およびハンドリング、フレーム／フィールド・ピクチャおよびマクロブロック・パラメータ、デブロッキング・パラメータ、インター・ブロック・サイズ、イントラ空間予測、および直接モードのうち少なくとも１つを含む、請求項１３に記載の方法。
【請求項２３】
前記実行ステップで、複数回反復して前記ビデオ解析を実行し、前記適応化ステップで、以前に生成された解析統計値に基づいて符号化パラメータおよび解析統計値の一方の適応化を行う、請求項１３に記載の方法。
【請求項２４】
前記重複ウィンドウのそれぞれが、ウィンドウ・サイズおよびそれに関連する重複サイズを有し、前記実行ステップが、以前に生成された解析統計値に基づいて前記ウィンドウ・サイズおよび前記重複サイズの適応化を行うステップを含む、請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２００４年６月１８日出願の米国仮特許出願第６０／５８１２８０号の特典を請求するものである。
【０００２】
本発明は、一般にビデオ・エンコーダおよび・ビデオ・デコーダに関し、特にビデオ符号化を最適化する方法および装置に関する。
【背景技術】
【０００３】
マルチパス・ビデオ符号化方式は、ＭＰＥＧ−２やＪＶＴ／Ｈ．２６４／ＭＰＥＧ  ＡＶＣなど多くのビデオ符号化アーキテクチャで、符号化効率を高めるために使用されている。これらの方式の基礎となる概念は、解析を実行し、符号化性能を向上させるために将来の反復に用いることができる統計値を収集しながら、シーケンス全体を数回反復して試験して符号化することである。
【０００４】
２パス符号化方式は、ＭＩＣＲＯＳＯＦＴ（登録商標）ＷＩＮＤＯＷＳ  ＭＥＤＩＡ（登録商標）やＲＥＡＬＶＩＤＥＯ（登録商標）エンコーダなど、いくつかの符号化システムで既に使用されている。この符号化方式によれば、エンコーダは、最初にいくつかの初期既定設定を用いてシーケンス全体に対して初期符号化パスを実行し、シーケンス内の各ピクチャの符号化効率に関する統計値を収集する。このプロセスが完了した後で、以前に生成された統計値を同時に考慮に入れながら、もう一度シーケンス全体を処理し、符号化する。これにより、符号化効率をかなり向上させることができ、さらに例えば符号化されたストリームの所与のビットレート制約を満たすなど、いくつかの規定の符号化制約または要件を満たすことも可能になる。これは、エンコーダがビデオ・シーケンスまたはピクチャの特性をより多く把握しており、従って、エンコーダが符号化に使用される量子化器やデッド・ゾーン処理などのパラメータをより適切に選択できるからである。この最初の符号化パスの間に収集することができ、この目的のために使用することができる統計値としては、ビット／ピクチャ（ｂｉｔｓ  ｐｅｒ  ｐｉｃｔｕｒｅ）、空間アクティビティ（すなわち平均正規化マクロブロック分散および平均）、時間アクティビティ（すなわち動きベクトル／動きベクトル分散）、歪み（例えば二乗平均誤差（ＭＳＥ））などが挙げられる。これらの方法を用いることによって符号化の性能をかなり向上させることができるが、これらの方法は非常に複雑になる傾向があり、オフラインでしか用いることができず（シーケンス全体を最初に符号化し、その後で第２のパスを実行する。）、そのため、実時間エンコーダに適さない。これらの方法は、最初の符号化ステップから推測可能な全ての生じうる統計値を必ずしも考慮しているわけではない。
【発明の開示】
【０００５】
（発明の概要）
本発明は、ビデオ符号化を最適化する方法および装置に関し、上述した従来技術および他の先行技術の欠点および問題点に対処するものである。
【０００６】
本発明の一態様によれば、複数のピクチャに対応するビデオ信号データを符号化するエンコーダが提供される。このエンコーダは、ビデオ信号データに対応する複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いてビデオ信号データのビデオ解析を実行し、ビデオ解析の結果に基づいてビデオ信号データの符号化パラメータの適応化を行う重複ウィンドウ解析ユニットを含む。
【０００７】
本発明の別の態様によれば、複数のピクチャに対応するビデオ信号データを符号化する方法が提供される。この方法は、ビデオ信号データに対応する複数のピクチャの少なくとも一部に関する複数の重複解析ウィンドウを用いてビデオ信号データのビデオ解析を実行するステップと、ビデオ解析の結果に基づいてビデオ信号データの符号化パラメータの適応化を行うステップとを含む。
【０００８】
本発明についての上記および他の態様、特徴および利点は、以下の例示的な実施形態の詳細な説明を添付の図面と併せて読むことにより明らかになるであろう。
【０００９】
本発明は、後述の例示的な図面によってより深く理解することができる。
【発明を実施するための最良の形態】
【００１０】
本発明は、ビデオ符号化を最適化する方法および装置に関する。本発明の有利な点は、ビデオ・エンコーダが所与のビットレートで大幅に改善された主観的品質および客観的品質でビデオ・シーケンスを圧縮することを可能にすることである。これは、これから符号化する後続のＮ個のピクチャと比較して現在のピクチャの簡単な解析を行う、ビデオ・シーケンスの特殊な処理によって実現される。その後、エンコーダがこの解析結果を利用して、現在のピクチャの符号化に使用される符号化パラメータ（ピクチャ・タイプ／スライス・タイプ、量子化器、しきい値処理パラメータ、ラグランジュλなどがあるが、これらに限定されるわけではない。）をより良好に決定することができる。本発明は、符号化性能を向上させるためにシーケンス全体のデュアルパスまたはマルチパス符号化を行う従来技術のいくつかのシステムとは異なり、本発明は比較的簡単であり、従って複雑性に及ぼす影響も比較的小さい。本発明の原理をその他のマルチパス符号化ストラテジと共に使用して、効率をさらに高めることもできる。また同様に、一般的なシステム（以前に符号化されたＭ個のピクチャを用いる。）を形成することもできる。
【００１１】
本発明の原理によれば、シーケンス全体のうちピクチャ・ウィンドウが重複する部分のみを最初に解析する。これにより生成された統計値に基づいて、各ピクチャの符号化パラメータを適宜調節する。これらの符号化パラメータとしては、ピクチャ・タイプ／スライス・タイプ決定（Ｉ、Ｐ、Ｂ）、フレーム／フィールド決定、Ｂピクチャ間隔、ピクチャまたはマクロブロック量子化値（ＱＰ）、係数しきい値処理、ラグランジュ・パラメータ、クロマ・オフセット、重み付き予測、参照ピクチャ選択、マルチ・ブロック・サイズ決定、エントロピ・パラメータの初期化、イントラ・モード決定、およびデブロッキング・フィルタ・パラメータなどがあるが、これらに限定されるわけではない。解析方法は、様々な複雑性コストを要する可能性があるが、その解析方法をピクチャ／マクロブロック解析を実行するために使用することができる。その解析方法として、最初のパスの完全符号化、空間解析を用いた単純な最初のパスの動き推定、または分散や画像差などを含むがこれに限定されない単純な時空間的解析メトリクスなどがある。さらに、重複するピクチャ・ウィンドウ（およびその重複するピクチャ）は、必要なだけ大きくすることも小さくすることも（多くすることも少なくすることも）できるので、遅延と性能の兼ね合いを様々につけることができる。
【００１２】
本明細書では、本発明の原理について説明する。従って、当業者なら、本明細書では明示的に説明または図示していないが本発明の趣旨および範囲に含まれる本発明の原理を実施する様々な構成を考案することができることを理解されたい。
【００１３】
本明細書に記載する全ての実施例および条件に関する表現は、本発明の原理と発明者による技術の進歩の助けとなる概念とを読者が理解するのを助けるための教育的な目的を有するものであり、これらの具体的に列挙した実施例および条件に限定されないものと解釈されたい。
【００１４】
さらに、本発明の原理、態様および実施形態ならびに本発明の具体的な実施例についての本明細書の全ての記述は、その構造的均等物および機能的均等物の両方を含むものとする。さらに、これらの均等物には、現在既知の均等物と将来開発されるであろう均等物の両方が含まれる、すなわちその構造にかかわらず同じ機能を実行する、将来開発される任意の要素が含まれるものとする。
【００１５】
従って、例えば、当業者なら、本明細書に示すブロック図が本発明の原理を実施する例示的な回路の概念図を表していることを理解するであろう。同様に、任意のフローチャート、流れ図、状態遷移図、擬似コードなどが、コンピュータ可読媒体中に実質的に表現され、明示してある場合も明示していない場合もあるコンピュータまたはプロセッサによって実行される様々なプロセスを表すことも理解されたい。
【００１６】
図面に示す様々な要素の機能は、専用のハードウェア、および適当なソフトウェアと連動してソフトウェアを実行することができるハードウェアを使用して実現することができる。プロセッサによって実現するときには、これらの機能は単一の専用プロセッサで実現することも、単一の共用プロセッサで実現することも、あるいはその一部を共用することもできる複数の個別プロセッサで実施することもできる。さらに、「プロセッサ」または「制御装置」という用語を明示的に用いていても、ソフトウェアを実行することができるハードウェアのみを指していると解釈すべきではなく、ディジタル信号プロセッサ（ＤＳＰ）ハードウェア、ソフトウェアを記憶するための読取り専用メモリ（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）および不揮発性記憶装置（これらに限定されない）を暗に含むことがある。
【００１７】
従来の、且つ／または特注のその他ハードウェアも含まれることがある。同様に、図面に示す任意のスイッチも、概念的なものに過ぎない。スイッチの機能は、プログラム論理の動作、専用論理またはプログラム制御と専用論理の相互作用によって、あるいは手作業で実施することができ、作製者が前後関係から具体的に判断して特定の技術を選択することができる。
【００１８】
本明細書の特許請求の範囲において、特定の機能を実行する手段として表現されている任意の要素は、例えば（ａ）当該機能を実行する回路素子の組合せ、（ｂ）ファームウェアやマイクロコードなどを含む任意の形態のソフトウェアを当該ソフトウェアを実行して当該機能を実行する適当な回路と組み合わせたものを含む、当該機能を実行する任意の方法を含むものとする。特許請求の範囲に定義される本発明は、列挙する様々な手段が実施する機能を、特許請求の範囲が要求するかたちで組み合わせることにある。従って、出願人は、これらの機能を実施することができるあらゆる手段を、本明細書に示す手段の均等物とみなす。
【００１９】
本発明の原理によれば、各パス中にビデオ・シーケンス全体または個別のウィンドウを考慮する従来の方法と異なり、重複するウィンドウに対して各パスを実行して、事前に決定した特徴を隣接するウィンドウの間で再利用できるようにする新しいマルチパス符号化アーキテクチャが開示される。このアーキテクチャでは、はるかに少ないステップ数で最適な符号化を行うことができるので、より低いコストやより低い複雑性であっても、より少ないメモリ要件やより短い待ち時間で、ビデオ品質の大幅な向上などのマルチパス符号化の利点も得ることができる。この特徴は、隣接するウィンドウ間の類似性により最初のパス中でもエンコーダが最良のパラメータを決定することができるため、最終的な符号化のためにさらなる反復を必要としないことを考えると、実時間符号化に適用したときに特に重要である。
【００２０】
図１を参照すると、ウィンドウ・ベース・２パス符号化アーキテクチャの全体を参照番号１００で示してある。処理／解析ウィンドウの大きさはピクチャのＷｐ個分であり、隣接する２つのグループの間で許される重複の大きさはピクチャのＷｏ個分である。第１のウィンドウの処理を行うと、このウィンドウ内の全てのフレームの符号化特性の事前セットを決定するために使用することができるいくつかの初期統計値が得られる。より詳細には、２パス方式を用いる場合には、次のウィンドウに属さない全てのフレームを、生成されたパラメータに基づいて直ちに符号化することができる。ただし、この情報は、この次のウィンドウの処理／解析に直接使用することができる。例えば、これらのパラメータは、このウィンドウの処理中に初期シードとして使用することができ、大部分のシーケンスにおいて高い時間的相関が存在していることを考えれば、解析を改善することができる。さらに重要なことに、Ｗｏの選択により直前のウィンドウにも属しているこのウィンドウの初期フレームに対して使用される符号化パラメータを、新たに生成された統計値に基づいてさらに洗練／調整することができる。これにより、基本的に、例えばシーケンス全体またはＭ個の隣接するウィンドウを処理した後など、多数の繰返し／パスを用いた場合に、より速く最適な解に収束させることができる。この時間的ウィンドウは、エンコーダの能力または要件に応じてできる限り大きくすることも小さくすることもでき、異なるウィンドウ・サイズ（ＷｏおよびＷｐより大きくても小さくてもよい）でこの方式を反復することもできることは明らかである。
【００２１】
本願発明者等のマルチパス方式の事前解析ステップでは、数多くの異なる基準を使用することができる。これらの基準は、エンコーダ・アーキテクチャの複雑性の制約によって決めることができ、単純な時空間的方法（エッジ検出、テクスチャ解析メトリクス、および絶対画像差などを含むがこれらに限定されない。）から、より複雑なストラテジ（離散的コサイン変換（ＤＣＴ）解析、最初のパスのイントラ符号化、動き推定／動き補償、および完全符号化などを含むがこれらに限定されない。）まで考慮することができる。解析および／または重複するウィンドウを増加または減少させることによって、待ち時間も調節することができる。
【００２２】
このようなシステムの例として、この解析中に、以下の基準を計算することができる。
【００２３】
ウィンドウＷｐ内の全てのピクチャｋに対して、以下を計算する。
【００２４】
（ｉ）位置（ｉ，ｊ）の各マクロブロックに対して、平均値ＭＢｍｅａｎ（ｋ，ｉ，ｊ）を次のように計算する。
【００２５】
【数１】
2008503919.tif 000003
【００２６】
（ｉｉ）二乗平均値ＭＢｓｑｍｅａｎ（ｋ，ｉ，ｊ）を次のように計算する。
【００２７】
【数２】
2008503919.tif 000004
【００２８】
（ｉｉｉ）分散値ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）を次のように計算する。
【００２９】
ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＝ＭＢｓｑｍｅａｎ（ｋ，ｉ，ｊ）−（ＭＢｍｅａｎ（ｋ，ｉ，ｊ））２
【００３０】
（ｉｖ）ピクチャ全体に対して、平均マクロブロック平均値ＡＭＭｋを次のように計算する。
【００３１】
【数３】
2008503919.tif 000005
【００３２】
（ｖ）平均マクロブロック分散ＡＭＶｋを次のように計算する。
【００３３】
【数４】
2008503919.tif 000006
【００３４】
（ｖｉ）ピクチャ分散ＰＶｋを次のように計算する。
【００３５】
【数５】
2008503919.tif 000007
ここで、ｃ［ｘ，ｙ］は位置（ｘ，ｙ）におけるピクセル値に対応し、ＰＭＢＷおよびＰＭＢＨはそれぞれマクロブロックを単位とするピクチャの幅および高さであり、ＢＷおよびＢＨは現在のピクチャ中の各マクロブロックの幅および高さである（通常はＢＷ＝ＢＨ＝１６）。
【００３６】
さらに、ピクチャｍ（例えばｍ＝ｋ＋１）に対する以下の時間的特性も、以下のように計算する。
【００３７】
（Ｉ）平均絶対ピクチャ差ＭＡＰＤｋ，ｍを次のように計算する。
【００３８】
【数６】
2008503919.tif 000008
【００３９】
（ＩＩ）平均絶対重み付きピクチャ差ＭＡＷＰＤｋ，ｍを次のように計算する。
【００４０】
【数７】
2008503919.tif 000009
【００４１】
（ＩＩＩ）平均絶対オフセット・ピクチャ差ＭＡＷＰＤｋ，ｍを次のように計算する。
【００４２】
【数８】
2008503919.tif 000010
【００４３】
（ＩＶ）二乗平均ピクチャ誤差ＭＳＰＥｋ，ｍを次のように計算する。
【００４４】
【数９】
2008503919.tif 000011
【００４５】
（Ｖ）絶対ピクチャ分散差ＡＰＶＤｋ，ｍを次のように計算する。
【００４６】
ＡＰＶＤｋ，ｍ＝｜ＰＶｋ−ＰＶｍ｜
【００４７】
計算可能なその他の時空間的特性は、ヒストグラムの絶対差、絶対差のヒストグラム、ｋとＭの間のχ２メトリクス、任意（または複数）のエッジ演算子（キャニー・エッジ演算子、ソーベル・エッジ演算子、またはプレウィット・エッジ演算子を含むがこれらに限定されない。）を用いたｋのエッジ、またはシーケンスのインタレース特性を検出するためのフィールド・ベースのメトリクスである。有用である可能性があり、上記から推測可能な他の２つの統計情報は、現在のピクチャの最も近い過去の符号化されたイントラ・ピクチャからの距離（ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ）、および現在のピクチャの最も近い将来の符号化されたイントラ・ピクチャからの距離（ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ）である。これらは例えばピクチャ番号、符号化順序、またはピクチャ・オーダ・カウント（ｐｏｃ）で測定される。これらの統計値は、シーン変更／ショット検出器および／またはデフォルトＧＯＰ（ｇｒｏｕｐ  ｏｆ  ｐｉｃｔｕｒｅｓ）構造を考慮することによって改善することができる。時間的特性は、（例えば本発明をマルチパス態様に適用した場合には）元の画像または再構成された画像を用いて計算することができ、これらのメトリクスの計算では動き推定／動き補償を考慮することもできる。
【００４８】
上記のメトリクスに基づいて、エンコーダは、符号化プロセスに関係する特定のピクチャ、マクロブロックまたはサブブロックのパラメータを修正することを決定することができる。これらは、量子化値（ＱＰ）、係数デッド・ゾーン処理／しきい値処理、マクロブロック符号化とフレーム間およびフィールド間のピクチャ・レベル決定のラグランジュ値、デブロッキング・フィルタ・パラメータ、符号化および参照ピクチャの順序付け、シーン／ショット（フェード／ディゾルブ／ワイプ／フラッシュなどがあるがこれらに限定されない）検出、ＧＯＰ構造などのパラメータを含む。
【００４９】
本発明の例示的な一実施形態では、上記パラメータは、以下のように、スライス・タイプｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋのピクチャｋを符号化するときにピクチャ量子化値（ＱＰ）を適合させるものと考える。この実施形態では、ｄｉｓｔａｎｃｅｋ，ｋ＋１は、ピクチャ数を単位とした隣接する２つのピクチャの間の距離と考える。
ｉｆ  （ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ＞３＆＆ｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋ＝＝Ｉ＿Ｓｌｉｃｅ）
｛
ｉｆ（ＰＶｋ＜１＆＆ＭＡＰＤｋ，ｋ＋１＜１＆＆ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ＞５＊ｄｉｓｔａｎｃｅｋ，ｋ＋１）
ＱＰｋ＝ＱＰｋ−４
ｅｌｓｅ  ｉｆ（ＭＡＰＤｋ，ｋ＋１＜３＆＆（ｋ＝＝０｜｜ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ＞５＊ｄｉｓｔａｎｃｅｋ，ｋ＋１））
ＱＰｋ＝ＱＰｋ−３
ｅｌｓｅ  ｉｆ（ＭＡＰＤｋ，ｋ＋１＜１０）
ＱＰｋ＝ＱＰｋ−２
ｅｌｓｅ  ｉｆ（ＭＡＰＤｋ，ｋ＋１＜１５）
ＱＰｋ＝ＱＰｋ−１
｝
ｅｌｓｅ  ｉｆ（ＡＭＶｋ＞１０＆＆ＡＭＶｋ＜６０）
｛
ｉｆ（ＰＶｋ＜５００＆＆ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ＞３＊ｄｉｓｔａｎｃｅｋ，ｋ＋１）
｛
ｉｆ（ＭＡＰＤｋ，ｋ＋１＜１０＆＆ＡＭＶｋ＜３５＆＆ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ＞２＊ｄｉｓｔａｎｃｅｋ，ｋ＋１）
ＱＰｋ＝ＱＰｋ−２
ｅｌｓｅ
ＱＰｋ＝ＱＰｋ−１
｝
ｅｌｓｅ  ｉｆ（ＰＶｋ＜１５００＆＆ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ＞０）
｛
ｉｆ（ＭＡＰＤｋ，ｋ＋１＜２５）
ＱＰｋ＝ＱＰｋ−１
｝
｝
ｅｌｓｅ  ｉｆ（ＭＡＰＤｋ，ｋ＋１＝＝０＆＆ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ＞３＊ｄｉｓｔａｎｃｅｋ，ｋ＋１＆＆ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ＞４＊ｄｉｓｔａｎｃｅｋ，ｋ＋１）
ＱＰｋ＝ＱＰｋ−２
ｅｌｓｅ（（（ＭＡＰＤｋ，ｋ＋１＜２＆＆ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ＞３＊ｄｉｓｔａｎｃｅｋ，ｋ＋１＆＆ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ＞２＊ｄｉｓｔａｎｃｅｋ，ｋ＋１）
｜｜ｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋ＞３０）＆＆ｎｅｘｔ＿ｉｄｉｓｔａｎｃｅｋ＞５）
｛
ｉｆ（ＭＡＰＤｋ，ｋ＋１＜１）
ＱＰｋ＝ＱＰｋ−３
ｅｌｓｅ  ｉｆ（ＭＡＰＤｋ，ｋ＋１＜４）
ＱＰｋ＝ＱＰｋ−２
ｅｌｓｅ  ｉｆ（ＭＡＰＤｋ，ｋ＋１＜１０）
ＱＰｋ＝ＱＰｋ−１
｝
【００５０】
上記の実施形態では、直前または近い過去のピクチャが上記の規則により既にそのＱＰを更新しているかどうかは考慮していない。従って、必要以上にＱＰ値を更新することになる可能性もあり、これはレート−歪み（ＲＤ）性能の点で望ましくないことがある。このために、パラメータｌａｓｔ＿ｉｄｉｓｔａｎｃｅｋを更新して、ピクチャ・タイプにかかわらず最後にＱＰを調節されたピクチャの値と等しくなるようにする。
【００５１】
同様に、マクロブロック／ブロックの分散、平均およびエッジ統計値を使用して、局所的な符号化パラメータを決定することができる。例えば、位置（ｉ，ｊ）にあるマクロブロックのラグランジュのλを選択するには、以下の規則を考慮すればよい。
ｉｆ（ｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋ！＝Ｂ＿Ｓｌｉｃｅ）
｛
ｉｆ（ｃｏｎｔａｉｎｓ＿ｅｄｇｅｓ（ｋ，ｉ，ｊ））
【００５２】
【数１０】
2008503919.tif 000012
ｅｌｓｅ  ｉｆ（ｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋ＝＝Ｉ＿Ｓｌｉｃｅ）
｛
ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜１５｜｜ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞６０）
【００５３】
【数１１】
2008503919.tif 000013
ｅｌｓｅ  ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞＝１５＆＆ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜＝４０）
【００５４】
【数１２】
2008503919.tif 000014
ｅｌｓｅ
【００５５】
【数１３】
2008503919.tif 000015
｝
ｅｌｓｅ／／ｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋ＝＝Ｐ＿Ｓｌｉｃｅ
｛
ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜１５｜｜ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞６０）
【００５６】
【数１４】
2008503919.tif 000016
ｅｌｓｅ  ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞＝１５＆＆ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜＝４０）
【００５７】
【数１５】
2008503919.tif 000017
ｅｌｓｅ
【００５８】
【数１６】
2008503919.tif 000018
｝
｝
ｅｌｓｅ
｛
ｂｓｃａｌｅ＝ｍａｘ（２．００，ｍｉｎ（４．００，（ＱＰ／６．０）））；
ｉｆ（ｃｏｎｔａｉｎｓ＿ｅｄｇｅｓ（ｋ，ｉ，ｊ））
【００５９】
【数１７】
2008503919.tif 000019
ｅｌｓｅ
｛
ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜１５｜｜ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞６０）
【００６０】
【数１８】
2008503919.tif 000020
ｅｌｓｅ  ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞＝１５＆＆ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜＝４０）
【００６１】
【数１９】
2008503919.tif 000021
ｅｌｓｅ
【００６２】
【数２０】
2008503919.tif 000022
｝
ｉｆ（ｎａｌ＿ｒｅｆｅｒｅｎｃｅ＿ｉｄｃ＝＝１）
λ＝０．８０×λ
｝
【００６３】
残りの符号化に使用される量子化値または係数しきい値処理の選択でも、同様の決定を行うことができる。具体的には、Ｈ．２６４での係数Ｗの量子化は、以下のように実行される。
Ｚ＝ｉｎｔ（｛｜Ｗ｜＋ｆ×（１＜＜ｑ＿ｂｉｔｓ）｝＞＞ｑｂｉｔｓ）・ｓｇｎ（Ｗ）
ここで、Ｚは最終的な量子化値であり、ｑ＿ｂｉｔｓは現在のマクロブロックの量子化器ＱＰに基づく。ｆ×（１＜＜ｑ＿ｂｉｔｓ）の項は、この量子化プロセスの丸めを行う項として機能し、１／２×（１＜＜ｑ＿ｂｉｔｓ）であると「最適」である。
【００６４】
次に図２を参照すると、変換および量子化を行う間のデッド・ゾーン処理の影響の全体を参照番号２００で示してある。図２では、ゼロ付近の区間をデッド・ゾーンと呼ぶ。デッド・ゾーン量子化器は、図２に示すように、ゼロビン幅（ｚｅｒｏ  ｂｉｎ−ｗｉｄｔｈ）（２ｓ−２ｆ）およびアウトビン幅（ｏｕｔｂｉｎ  ｗｉｄｔｈ）（ｓ）という２つのパラメータで特徴付けられる。ｆによるデッド・ゾーンの最適化は、良好なレート−歪み性能を得るための効率的な方法として使用されることが多い。しかし、このプロセスの間にデッド・ゾーンを導入する（すなわちｆの項を減少させる。）ことにより、通常は、品質に対する影響を低く抑えながらさらにビットレートを低下させることができることは周知である。これは、解像度の高い素材の細部（およびフィルム・グレイン情報）を含まない解像度の低いコンテンツの場合に特に当てはまる。ｆ＝１／２を用いてもよいが、この値にすると、ビットレートの増加が大きくなり、レート−歪み評価の点で性能が低下する可能性もある。
【００６５】
様々な周波数が他のものよりも重要であることを考慮して、上記に代わる一つの手法では、性能を向上させるためにこの観察を考慮に入れることになる。全ての変換係数に対して一定のｆの値を使用する代わりに、特に各デッド・ゾーンパラメータが周波数位置に基づいて選択される行列手法では、様々な値を考慮する。従って、この場合にはＺは次のように計算することができる。
Ｚ＝ｉｎｔ（｛｜Ｗ｜＋ｆ（ｉ，ｊ）×（１＜＜ｑ＿ｂｉｔｓ）｝＞＞ｑｂｉｔｓ）・ｓｇｎ（Ｗ）
ここで、ｉおよびｊは、ブロック変換係数内の現在の列または行に対応する。アレイｆは、スライスまたはマクロブロックのタイプ、および現在のブロックのテクスチャ特性（分散またはエッジ情報）によって決めることができる。例えば、あるブロックが複数のエッジを含む、またはその分散特性が低い場合には、デッド・ゾーン処理プロセスによるアーチファクトがより目に見えやすくなるので、それらをそれ以上取り込まないようにすることが重要である。一方、空間アクティビティの高いブロックはより多くのアーチファクトをマスクすることができ、品質に有意な影響を及ぼすことなくデッド・ゾーンを増大させることができる。デッド・ゾーンは、現在のブロックが将来のピクチャのブロックに対して有用な情報を提供するかどうかに応じて（すなわち現在のブロック内の任意のピクセルがその他のピクセルの予測に使用されるか使用されないかに応じて）変化させることもできる。
【００６６】
例えば、４×４変換を用いる場合には、以下のデッド・ゾーン処理行列を使用することができる。
ｉｆ（ｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋ＝＝Ｉ＿Ｓｌｉｃｅ）
｛
ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜１５｜｜ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞６０）
【００６７】
【数２１】
2008503919.tif 000023
ｅｌｓｅ  ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞＝１５＆＆ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜＝４０｜｜ｃｏｎｔａｉｎｓ＿ｅｄｇｅｓ（ｋ，ｉ，ｊ））
【００６８】
【数２２】
2008503919.tif 000024
ｅｌｓｅ
【００６９】
【数２３】
2008503919.tif 000025
｝
ｅｌｓｅ  ｉｆ（ｃｕｒ＿ｓｌｉｃｅ＿ｔｙｐｅｋ＝＝Ｐ＿Ｓｌｉｃｅ）
｛
ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜１５｜｜ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞６０）
【００７０】
【数２４】
2008503919.tif 000026
ｅｌｓｅ  ｉｆ（ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＞＝１５＆＆ＭＢｖａｒｉａｎｃｅ（ｋ，ｉ，ｊ）＜＝４０｜｜ｃｏｎｔａｉｎｓ＿ｅｄｇｅｓ（ｋ，ｉ，ｊ））
【００７１】
【数２５】
2008503919.tif 000027
ｅｌｓｅ
【００７２】
【数２６】
2008503919.tif 000028
｝
ｅｌｓｅ／／Ｂ＿ｓｌｉｃｅｓ
｛
【００７３】
【数２７】
2008503919.tif 000029
｝
【００７４】
ある条件下では、エンコーダが将来のフレームを用いた時間的解析を実行することが可能になることもある。この場合には、以前に符号化されたピクチャのみを考慮して、将来のピクチャが同様の時間的特性を有するものと仮定することによって時間的解析を実行することができる。例えば、現在のピクチャが高い類似性を有する（例えばＭＡＰＤｋ，ｋ−１が小さい）場合には、次に符号化するピクチャとの類似性（ＭＡＰＤｋ，ｋ＋１）も小さいと仮定する。従って、全ての指標（ｋ、ｋ＋１）を（ｋ，ｋ−１）で置き換えて、既に利用可能な情報に基づいて符号化パラメータの適応化を行うことができる。
【００７５】
次に図３を参照すると、ビデオ・エンコーダの全体を参照番号３００で示してある。ビデオ・エンコーダ３００の入力は、事前解析ブロック３１０の入力と信号通信で接続されている。事前解析ブロック３１０は、互いに信号通信で接続された複数のフレーム遅延３１２を含む。これら複数のフレーム遅延３１２はそれぞれ縦に直列に接続され、また並列信号経路によって並列にも接続されている。この並列信号経路は、時間的解析器３１５の入力にも信号通信で接続されている。エンコーダ３００の入力から最も遠く離れた、直列に接続された最後のフレーム遅延３１２の出力は、空間的解析器３２０の入力、第１の加算ジャンクション３２５の反転入力、動き補償器３７５の第１の入力、および動き推定／モード決定ブロック３７０の第１の入力に信号通信で接続される。第１の加算ジャンクション３２５の出力は、変換器３３０の入力に信号通信で接続される。変換器３３０の出力は、量子化器３３５の第１の入力に信号通信で接続される。量子化器３３５の出力は、可変長コーダ３４０の第１の入力および逆量子化器３４５の入力に信号通信で接続される。可変長コーダ３４０の出力は、ビデオ・エンコーダ３００の外部で使用可能な出力である。逆量子化器３４５の出力は、逆変換器３５０の入力に信号通信で接続される。逆変換器３５０の出力は、第２の加算ジャンクション３５５の非反転の第１の入力に信号通信で接続される。第２の加算ジャンクション３５５の出力は、ループ・フィルタ３６０の第１の入力に信号通信で接続される。ループ・フィルタ３６０の出力は、ピクチャ参照記憶装置３６５の第１の入力に信号通信で接続される。ピクチャ参照記憶装置３６５の出力は、動き推定／モード決定ブロック３７０の第２の入力、および動き補償器３７５の第２の入力に信号通信で接続される。動き推定／モード決定ブロック３７０の第１の出力は、可変長コーダ３４０の第２の入力に信号通信で接続される。動き推定／モード決定ブロック３７０の第２の出力は、動き補償器３７５の第３の入力に信号通信で接続される。動き補償器３７５の出力は、第１の加算ジャンクション３２５の非反転入力、および第２の加算ジャンクション３５５の非反転の第２の入力に信号通信で接続される。空間的解析器３２０の第１の出力は、量子化器３３５の第２の入力に信号通信で接続される。空間的解析器３２０の第２の出力は、ループ・フィルタ３６０の第２の入力、動き推定／モード決定ブロック３７０の第３の入力、および第１の加算ジャンクション３２５の非反転入力に信号通信で接続される。時間的解析器３１５の第１の出力は、量子化器３３５の第２の入力に信号通信で接続される。時間的解析器３１５の第２の出力は、動き推定／モード決定ブロック３７０の第４の入力に信号通信で接続される。時間的解析器３１５の第３の出力は、ループ・フィルタ３６０の第３の入力、およびピクチャ参照記憶装置３６５の第２の入力に信号通信で接続される。
【００７６】
ピクチャ群は、時間的解析ステップの間に考慮される。この時間的解析ステップでは、スライス・タイプ決定、ＧＯＰ構造、重み付きパラメータ（動き推定／モード決定ブロック３７０による）、量子化値およびデッド・ゾーン処理（量子化器３３５による）、参照の順序およびハンドリング（ピクチャ参照記憶装置３６５）、ピクチャ符号化の順序付け、フレーム／フィールド・ピクチャ・レベル適応化決定、ならびにデブロッキング・パラメータ（ループ・フィルタ３６０）を含むいくつかのパラメータを決定する。同様に、各符号化フレームに対して空間的解析を行う。この空間的解析も同様に、量子化およびデッド・ゾーン処理（量子化器３３５）、ラグランジュ・パラメータおよびスライス・タイプ決定（動き推定／モード決定ブロック３７０）、インター／イントラ・モード決定、フレーム／フィールド・ピクチャ・レベルおよびマクロブロック・レベル適応化決定、ならびにデブロッキング（ループ・フィルタ３６０）に影響を及ぼす可能性がある。
【００７７】
次に図４を参照すると、ビデオ信号データを符号化する例示的なプロセスの全体を参照番号４００で示してある。このプロセスでは、反復するたびに必要な統計値を収集および更新しながら、同一のビットストリームを複数回解析または符号化することができる。これらの統計値は、後続のパスのそれぞれで、ビデオ特性またはユーザ要件を所与としてエンコーダのパラメータを適応させることによって符号化の性能を向上させるために使用される。具体的には、ｋ個のフレーム（すなわち記憶されていないピクチャは除く。）は、Ｌ個のパス（本明細書ではＬ回の「繰返し」および「反復」とも呼ぶ）およびサイズ（Ｎ，Ｍ）のウィンドウで符号化されることになる。ここで、Ｎはウィンドウ内のフレームの総数、Ｍは隣接するウィンドウ間で重複するフレームの数である。符号化されるフレームは変数ｆｒｍを用いて指標が付けられ、ウィンドウ内の現在の位置は変数ｗｉｎｄｅｘを用いて指標が付けられる。
【００７８】
このプロセスは、制御を機能ブロック４１０に渡す開始ブロック４０５を含む。機能ブロック４１０では、シーケンス・サイズをｋに設定し、繰返し回数をＬに設定し、変数ｉをゼロ（０）に設定し、制御を機能ブロック４１５に渡す。機能ブロック４１５では、ウィンドウ・サイズをＮに設定し、重複サイズをＭに設定し、変数ｆｒｍをゼロ（０）に設定し、制御を機能ブロック４２０に渡す。機能ブロック４２０では、変数ｗｉｎｄｅｘをゼロ（０）に設定し、制御を機能ブロック４２５に渡す。従って、各符号化パスごとにウィンドウ・パラメータが初期化されることが理解されるであろう。これにより、様々なウィンドウ・サイズを使用すること、または以前の解析ステップに基づいて様々なウィンドウ・サイズの適応化を行うことも可能になる（例えばシーン変更が検出された場合には、それに応じて完全なシーンのみを含むようにＮおよびＭを調整することができる。）。
【００７９】
機能ブロック４２５では、ウィンドウ内のＮ個全てのフレームを考慮しながら、処理対象の各ウィンドウの時間的解析を実行し、時間的統計値（ｔｓｔａｔｉ，ｆｒｍ…ｆｒｍ＋Ｎ−１）を生成し、以前のパスまたは符号化ステップの統計値を現在の統計値を用いて最適に適応させ、または洗練する。機能ブロック４２５では、その後、制御を機能ブロック４３０に渡す。機能ブロック４３０では、ｗｉｎｄｅｘ＜Ｎ−Ｍの条件が満たされなくなるまで指標ｆｒｍ（現在のウィンドウ内のｗｉｎｄｅｘ）を有するフレームについて空間的解析を実行し、制御を機能ブロック４３５に渡す。機能ブロック４３５では、時間的および空間的解析の結果に基づいてこれらのフレームを符号化し、複数のパスが必要な場合に必要になる可能性があるエンコーダ統計値を生成／収集し、制御を機能ブロック４４０に渡す。
【００８０】
機能ブロック４４０では、変数ｆｒｍおよびｗｉｎｄｅｘの値を増分し、制御を判定ブロック４４５に渡す。判定ブロック４４５では、変数ｆｒｍがｋ未満であるかどうかを判定する。
【００８１】
変数ｆｒｍがｋ未満である場合には、ｗｉｎｄｅｘが（Ｎ−Ｍ）未満であるかどうかを判定する判定ブロック４５０に制御が移る。そうでない場合には、変数ｆｒｍがｋ以上である場合には、ｉがＬ未満であるかどうかを判定する判定ブロック４５５に制御が移る。
【００８２】
ｗｉｎｄｅｘが（Ｎ−Ｍ）未満である場合には、制御は機能ブロック４３０に移る。そうでない場合、ｗｉｎｄｅｘが（Ｎ−Ｍ）以上である場合には、制御は機能ブロック４２０に戻る。
【００８３】
ｉがＬ以上である場合には、制御は機能ブロック４１５に戻る。そうでない場合、ｉがＬ未満である場合には、制御は終了ブロック４６０に移る。
【００８４】
以下、本発明の様々な例示的な実施形態により、本発明の多くのさらなる利点／特徴のいくつかについて説明する。例えば、１つの利点／特徴は、符号化するコンテンツの重複する限られたウィンドウに基づいてビデオ解析を実行し、この情報を用いて符号化パラメータの適応化を行う符号化装置および符号化方法が提供されることである。もう１つの利点／特徴は、ビデオ解析において時空間的解析を使用することである。さらに別の利点／特徴は、ビデオ解析で事前符号化パスを考慮することである。さらに、別の利点／特徴は、ビデオ解析において時空間的解析および事前符号化パスが共に考慮されることである。また、別の利点／特徴は、ピクチャ符号化タイプ、エッジ、平均および分散の情報のうち少なくとも１つが、空間的解析、ならびにラグランジュ・パラメータ、量子化およびデッド・ゾーン処理の適応化に使用されることである。さらに別の利点／特徴は、絶対差および絶対分散を使用して、量子化パラメータの適応化を行うことである。さらに、別の利点／特徴は、実行されたビデオ解析で、以前に符号化されたピクチャのみが考慮されることである。さらに、別の利点／特徴は、実行されたビデオ解析を利用して、スライス・タイプ決定、ＧＯＰおよびピクチャ符号化の構造および順序、重み付きパラメータ、量子化値およびデッド・ゾーン処理、ラグランジュ・パラメータ、参照数、参照の順序およびハンドリング、フレーム／フィールド・ピクチャおよびマクロブロックの決定、デブロッキング・パラメータ、インター・ブロック・サイズ決定、イントラ空間予測、および直接モードを含む（ただしこれらに限定されない）いくつかの符号化パラメータのうち少なくとも１つを決定することである。また、別の利点／特徴は、以前に生成した統計値が符号化パラメータまたは解析統計値に適応するように考慮しながら、複数回反復してビデオ解析を実行することができることである。さらに、別の利点／特徴は、ウィンドウ・サイズおよび重複するウィンドウ領域が、以前に生成した解析統計値に基づいて適応化可能であることである。
【００８５】
本発明の以上その他の特徴および利点は、当業者なら本明細書の教示に基づいて容易に確認することができる。本発明の教示は、ハードウェア、ソフトウェア、ファームウェア、特殊目的プロセッサまたはそれらの組合せの様々な形態で実施することができることを理解されたい。
【００８６】
本発明の教示は、ハードウェアとソフトウェアの組合せとして実施されることがより好ましい。さらに、ソフトウェアは、プログラム記憶装置上で有形に実施されたアプリケーション・プログラムとして実施されることが好ましい。アプリケーション・プログラムは、任意の適当なアーキテクチャを有するマシンにアップロードして実行することができる。このマシンは、１つまたは複数の中央処理装置（「ＣＰＵ」）、ランダム・アクセス・メモリ（「ＲＡＭ」）および入出力（「Ｉ／Ｏ」）インタフェースなどのハードウェアを有するコンピュータ・プラットフォームに実装されることが好ましい。コンピュータ・プラットフォームは、オペレーティング・システムおよびマイクロ命令コードを含むこともできる。本明細書に記載の様々なプロセスおよび機能は、ＣＰＵが実行することができる、マイクロ命令コードの一部またはアプリケーション・プログラムの一部あるいはそれらの任意の組合せとすることもできる。さらに、追加のデータ記憶装置や印刷装置など、その他の様々な周辺機器をコンピュータ・プラットフォームに接続することもできる。
【００８７】
さらに、添付の図面に示すシステム構成要素および方法の一部はソフトウェアで実施することが好ましく、またシステム構成要素間またはプロセス機能ブロック間の実際の接続形態は、本発明を実施する方法によって変わることがあることを理解されたい。本明細書の教示があれば、当業者なら、上記の、またそれに類する本発明の実施態様または構成を思いつくことができるであろう。
【００８８】
本明細書では添付の図面を参照しながら例示的な実施形態について説明したが、本発明はこうした具体的な実施形態に限定されるものではなく、当業者なら、本発明の趣旨または範囲を逸脱することなく様々な変更および修正を加えることができることを理解されたい。これらの変更および修正は全て、添付の特許請求の範囲に記載の本発明の範囲に含まれるものとする。
【図面の簡単な説明】
【００８９】
【図１】本発明の原理による例示的なウィンドウ・ベース・２パス符号化アーキテクチャを示すブロック図である。
【図２】本発明の原理による変換および量子化を行う間のデッド・ゾーン処理の影響をプロットした図である。
【図３】本発明の原理によるエンコーダを示すブロック図である。
【図４】本発明の原理による例示的な符号化プロセスを示す流れ図である。
【図１】
2008503919.tif 000030
【図２】
2008503919.tif 000031
【図３】
2008503919.tif 000032
【図４】
2008503919.tif 000033
【手続補正書】
【提出日】平成19年2月16日(2007.2.16)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００４１
【補正方法】変更
【補正の内容】
【００４１】
（ＩＩＩ）平均絶対オフセット・ピクチャ差ＭＡＯＰＤｋ，ｍを次のように計算する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
【数８】
2008503919.tif 000034
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００７４
【補正方法】変更
【補正の内容】
【００７４】
ある条件下では、エンコーダが将来のフレームを用いた時間的解析を実行することが可能になることもある。この場合には、以前に符号化されたピクチャのみを考慮して、将来のピクチャが同様の時間的特性を有するものと仮定することによって時間的解析を実行することができる。例えば、現在のピクチャが高い類似性を有する（例えばＭＡＰＤｋ，ｋ−１が小さい）場合には、次に符号化するピクチャとの類似性（ＭＡＰＤｋ，ｋ＋１が小さい）も高いと仮定する。従って、全ての指標（ｋ、ｋ＋１）を（ｋ，ｋ−１）で置き換えて、既に利用可能な情報に基づいて符号化パラメータの適応化を行うことができる。
【国際調査報告】
2008503919.tif 000035
2008503919.tif 000036