(57)【要約】完全および基準化インタフェースを介して入力されるデータにそれぞれ完全および基準化変換を効率的に実行するための手法を説明する。完全変換とは、変換の完全な数学的記述を実施する変換である。完全変換は完全変換係数に作用するか、またはこれを出力する。基準化変換とは、完全変換係数の基準化バージョンである基準化変換係数に作用するか、またはこれを出力する変換である。完全変換がアプリケーションに用いることがより容易であるかもしれないのに対し、基準化変換は計算量がより少ないかもしれない。完全および基準化変換は２Ｄ  ＩＤＣＴ用であるかもしれない。これは１Ｄ  ＩＤＣＴを用いて分離可能な方法で実施されるかもしれない。また、完全および基準化変換は２Ｄ  ＤＣＴ用であるかもしれない。これは１Ｄ  ＤＣＴを用いて分離可能な方法で実施されるかもしれない。１Ｄ  ＩＤＣＴおよび１Ｄ  ＤＣＴは効率的計算方法で実施されるかもしれない。【選択図】      図５
2009534723.tif 000002
【特許請求の範囲】
【請求項１】
第１のインタフェースを介して第１の入力値を入力するように、および前記第１の出力値を得るために第１の入力値に完全変換を実行するように、および第２のインタフェースを介して第２の入力値を入力するように、および第２の出力値を得るために前記第２の入力値に基準化変換を実行するように構成されたプロセッサと、
前記プロセッサに結合されたメモリー、とを含む装置。
【請求項２】
完全変換が、完全２次元（２Ｄ）変換であり、かつプロセッサが、第１のインタフェースを介して第１の入力値のブロックを入力するように、および基準化された入力値のブロックを得るために前記第１の入力値のブロックを基準化するように、および中間ブロックを得るために前記基準化された入力値のブロックの各行に基準化１次元（１Ｄ）変換を実行するように、および第１の出力値のブロックを得るために前記中間ブロックの各列に基準化１Ｄ変換を実行するように構成された、請求項１に記載の装置。
【請求項３】
完全変換が、完全２次元（２Ｄ）変換であり、かつプロセッサが、第１のインタフェースを介して第１の入力値のブロックを入力するように、および第１の中間ブロックを得るために前記入力値のブロックの各行に基準化１次元（１Ｄ）変換を実行するように、および第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ変換を実行するように、および第１の出力値のブロックを得るために前記第２の中間ブロックを基準化するように構成された、請求項１に記載の装置。
【請求項４】
完全変換が、完全逆離散コサイン変換（ＩＤＣＴ）であり、かつ基準化変換が、基準化ＩＤＣＴである、請求項１に記載の装置。
【請求項５】
完全変換が、完全２次元（２Ｄ）逆離散コサイン変換（ＩＤＣＴ）であり、かつ基準化変換が、基準化２Ｄ  ＩＤＣＴである請求項１に記載の装置。
【請求項６】
プロセッサが、第１のインタフェースを介して第１の変換係数のブロックを第１の入力値として入力するように、および第２の基準化変換係数のブロックを得るために前記第１の変換係数のブロックを基準化するように、および中間ブロックを得るために前記第２のブロックの各行に基準化１次元（１Ｄ）ＩＤＣＴを実行するように、および前記中間ブロックの各列に基準化１Ｄ  ＩＤＣＴを実行するように構成された、請求項５に記載の装置。
【請求項７】
プロセッサが、第１のブロック内の各変換係数を、第２のブロック内の対応する基準化変換係数を得るために、それぞれの基準化係数を用いて基準化するように構成された、請求項６に記載の装置。
【請求項８】
プロセッサが、第２の基準化変換係数のブロックを得るために第１の変換係数のブロックを行毎におよび列毎に基準化するように構成された、請求項６に記載の装置。
【請求項９】
プロセッサが、第１のインタフェースを介して変換係数のブロックを第１の入力値として入力するように、並びに中間ブロックを得るために前記変換係数のブロックの各行に基準化および基準化１次元（１Ｄ）ＩＤＣＴを実行するように、並びに前記中間ブロックの各列に基準化および基準化１Ｄ  ＩＤＣＴを実行するように構成された、請求項５に記載の装置。
【請求項１０】
プロセッサが、第２のインタフェースを介して基準化変換係数のブロックを第２の入力値として入力するように、および中間ブロックを得るために前記基準化変換係数のブロックの各行に基準化１次元（１Ｄ）ＩＤＣＴを実行するように、および前記中間ブロックの各列に基準化１Ｄ  ＩＤＣＴを実行するように構成された、請求項５に記載の装置。
【請求項１１】
完全変換が、完全離散コサイン変換（ＤＣＴ）であり、かつ基準化変換が、基準化ＤＣＴである、請求項１に記載の装置。  
【請求項１２】
完全変換が、完全２次元（２Ｄ）離散コサイン変換（ＤＣＴ）であり、かつ基準化変換が、基準化２Ｄ  ＤＣＴである、請求項１に記載の装置。  
【請求項１３】
プロセッサが、第１のインタフェースを介して入力サンプルのブロックを第１の入力値として入力するように、および第１の中間ブロックを得るために前記入力サンプルのブロックの各行に基準化１次元（１Ｄ）ＤＣＴを実行するように、および第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ  ＤＣＴを実行するように、および変換係数のブロックを得るために前記第２の中間ブロックを基準化するように、および第１のインタフェースを介して前記変換係数のブロックを第１の出力値として出力するように構成された、請求項１２に記載の装置。
【請求項１４】
プロセッサが、第２の中間ブロック内の各要素を、変換係数のブロック内の対応する変換係数を得るために、それぞれの基準化係数を用いて基準化するように構成された、請求項１３に記載の装置。
【請求項１５】
プロセッサが、変換係数のブロックを得るために第２の中間ブロックを行毎におよび列毎に基準化するように構成された、請求項１３に記載の装置。
【請求項１６】
プロセッサが、第１のインタフェースを介して入力サンプルのブロックを第１の入力値として入力するように、並びに中間ブロックを得るために前記入力サンプルのブロックの各行に基準化１次元（１Ｄ）ＤＣＴおよび基準化を実行するように、並びに変換係数のブロックを得るために前記中間ブロックの各列に基準化１Ｄ  ＤＣＴおよび基準化を実行するように、並びに第１のインタフェースを介して前記変換係数のブロックを第１の出力値として出力するように構成された、請求項１２に記載の装置。
【請求項１７】
プロセッサが、第２のインタフェースを介して入力サンプルのブロックを第２の入力値として入力するように、および中間ブロックを得るために前記入力サンプルのブロックの各行に基準化１次元（１Ｄ）ＤＣＴを実行するように、および基準化変換係数のブロックを得るために前記中間ブロックの各列に基準化１Ｄ  ＤＣＴを実行するように、および第２のインタフェースを介して前記基準化変換係数のブロックを第２の出力値として出力するように構成された、請求項１２に記載の装置。
【請求項１８】
第１のインタフェースを介して第１の入力値を入力することと、
第１の出力値を得るために前記第１の入力値に完全変換を実行することと、
第２のインタフェースを介して第２の入力値を入力することと、
第２の出力値を得るために前記第２の入力値に基準化変換を実行することとを含む方法。
【請求項１９】
完全変換が、完全２次元（２Ｄ）変換であり、かつ第１の入力値に完全変換を実行することが、
基準化された入力値のブロックを得るために第１の入力値のブロックを基準化することと、
中間ブロックを得るために前記基準化された入力値のブロックの各行に基準化１次元（１Ｄ）変換を実行することと、
第１の出力値のブロックを得るために前記中間ブロックの各列に基準化１Ｄ変換を実行することとを含む、請求項１８に記載の方法。  
【請求項２０】
完全変換が、完全２次元（２Ｄ）変換であり、かつ第１の入力値に完全変換を実行することが、
第１の中間ブロックを得るために入力値のブロックの各行に基準化１次元（１Ｄ）変換を実行することと、
第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ変換を実行することと、
第１の出力値のブロックを得るために前記第２の中間ブロックを基準化することとを含む、請求項１８に記載の方法。
【請求項２１】
完全変換が、完全２次元（２Ｄ）逆離散コサイン変換（ＩＤＣＴ）であり、かつ第１のインタフェースを介して第１の入力値を入力することが、第１のインタフェースを介して第１の変換係数のブロックを第１の入力値として入力することを含み、かつ第１の入力値に完全変換を実行することが、
第２の基準化変換係数のブロックを得るために前記第１の変換係数のブロックを基準化することと、
中間ブロックを得るために前記第２のブロックの各行に基準化１次元（１Ｄ）ＩＤＣＴを実行することと、
前記中間ブロックの各列に基準化１Ｄ  ＩＤＣＴを実行することとを含む、請求項１８に記載の方法。
【請求項２２】
完全変換が、完全２次元（２Ｄ）離散コサイン変換（ＤＣＴ）であり、かつ第１のインタフェースを介して第１の入力値を入力することが、第１のインタフェースを介して入力サンプルのブロックを第１の入力値として入力することを含み、かつ第１の入力値に完全変換を実行することが、
第１の中間ブロックを得るために入力サンプルの前記ブロックの各行に基準化１次元（１Ｄ）ＤＣＴを実行することと、
第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ  ＤＣＴを実行することと、
変換係数のブロックを得るために前記第２の中間ブロックを基準化することと、
第１のインタフェースを介して前記第１の変換係数のブロックを第１の出力値として出力することとを含む、請求項１８に記載の方法。
【請求項２３】
第１のインタフェースを介して第１の入力値を入力するための手段と、
第１の出力値を得るために前記第１の入力値に完全変換を実行するための手段と、
第２のインタフェースを介して第２の入力値を入力するための手段と、
第２の出力値を得るために前記第２の入力値に基準化変換を実行するための手段とを含む装置。
【請求項２４】
完全変換が、完全２次元（２Ｄ）変換であり、かつ第１の入力値に完全変換を実行するための手段が、
基準化された入力値のブロックを得るために第１の入力値のブロックを基準化するための手段と、
中間ブロックを得るために前記基準化された入力値のブロックの各行に基準化１次元（１Ｄ）変換を実行するための手段と、
第１の出力値のブロックを得るために前記中間ブロックの各列に基準化１Ｄ変換を実行するための手段とを含む、請求項２３に記載の装置。
【請求項２５】
完全変換が、完全２次元（２Ｄ）変換であり、かつ第１の入力値に完全変換を実行するための手段が、
第１の中間ブロックを得るために入力値のブロックの各行に基準化１次元（１Ｄ）変換を実行するための手段と、
第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ変換を実行するための手段と、
第１の出力値のブロックを得るために前記第２の中間ブロックを基準化するための手段とを含む、請求項２３に記載の装置。
【請求項２６】
第１のインタフェースを介して第１の入力値を入力し、
第１の出力値を得るために第１の入力値に完全変換を実行し、
第２のインタフェースを介して第２の入力値を入力し、および
第２の出力値を得るために第２の入力値に基準化変換を実行するための命令を格納するためのプロセッサ可読媒体。
【請求項２７】
基準化変換係数の第２のブロックを得るために変換係数の第１のブロックを基準化するように、および中間ブロックを得るために前記第２のブロックの各行に基準化１次元（１Ｄ）変換を実行するように、および出力サンプルのブロックを得るために前記中間ブロックの各列に基準化１Ｄ変換を実行するように、および各基準化１Ｄ変換のための１組の無理数定数を近似する１組の有理２項定数と１組の変数の乗算を実行するように構成されたプロセッサと、
前記プロセッサに結合され、前記中間ブロックを格納するように構成されたメモリーとを含む装置。
【請求項２８】
基準化１Ｄ変換が、基準化１Ｄ逆離散コサイン変換（ＩＤＣＴ）である請求項２７に記載の装置。
【請求項２９】
基準化変換係数の第２のブロックを得るために変換係数の第１のブロックを基準化することと、
中間ブロックを得るために前記第２のブロックの各行に基準化１次元（１Ｄ）変換を実行することと、
出力サンプルのブロックを得るために前記中間ブロックの各列に基準化１Ｄ変換を実行することと、
各基準化１Ｄ変換のための１組の無理定数を近似する１組の有理２項定数と１組の変数の乗算を実行することとを含む方法。
【請求項３０】
基準化１Ｄ変換が、基準化１Ｄ逆離散コサイン変換（ＩＤＣＴ）である、請求項２９に記載の方法。
【請求項３１】
第１の中間ブロックを得るために入力サンプルのブロックの各行に基準化１次元（１Ｄ）変換を実行するように、および第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ変換を実行するように、および変換係数のブロックを得るために前記第２の中間ブロックを基準化するように、および各基準化１Ｄ変換のための１組の無理数定数を近似する１組の有理２項定数と１組の変数の乗算を実行するように構成されたプロセッサと、
前記プロセッサに結合され、前記第１および第２の中間ブロックを格納するように構成されたメモリーとを含む装置。
【請求項３２】
基準化１Ｄ変換が、基準化１Ｄ離散コサイン変換（ＤＣＴ）である請求項３１に記載の装置。
【請求項３３】
第１の中間ブロックを得るために入力サンプルのブロックの各行に基準化１次元（１Ｄ）変換を実行することと、
第２の中間ブロックを得るために前記第１の中間ブロックの各列に基準化１Ｄ変換を実行することと、
変換係数のブロックを得るために前記第２の中間ブロックを基準化することと、
各基準化１Ｄ変換のための１組の無理数定数を近似する１組の有理２項定数と１組の変数の乗算を実行することとを含む方法。
【請求項３４】
基準化１Ｄ変換が基準化１Ｄ離散コサイン変換（ＤＣＴ）である請求項３３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、本譲受人に譲渡され、ここに参照として組み込まれる２００６年３月２９日に出願された米国仮出願番号60/787,562、名称“CONVERGENCE OF SCALED AND NON-SCALED IDCT ARCHITECTURES”（基準化および非基準化ＩＤＣＴアーキテクチャの収束）の優先権を主張する。
【０００２】
本開示は一般に処理に関し、より詳細にはデータに変換を実行するための手法に関する。
【背景技術】
【０００３】
変換は一般的に１つの領域からもう一方の領域へデータを変換するために用いられる。例えば、離散コサイン変換（ＤＣＴ）はデータを空間領域から周波数領域へ変換するために一般的に用いられ、逆離散コサイン変換（ＩＤＣＴ）はデータを周波数領域から空間領域へ変換するために一般的に用いられる。ＤＣＴは画像／ビデオ圧縮に用いられ、画像またはビデオフレーム内の画素（ピクセル）のブロックを空間的に無相関化する。得られる変換係数は通常相互にほとんど依存しない。これによりこれらの係数は量子化および符号化に一層適する。ＤＣＴはエネルギー集中特性をも示す。これは、ピクセルブロックのエネルギーの大部分をわずかな（通常低次の）変換係数だけにマッピングすることができるものである。このエネルギー集中特性は符号化アルゴリズムの設計を簡易にできる。
【０００４】
異なる画像およびビデオ符号化標準をサポートするかもしれない種々のアプリケーションに対して、ＤＣＴおよびＩＤＣＴのような変換が用いられるかもしれない。したがって、これらのアプリケーションに適したフォーマットのデータを受信し、出力できるインタフェースを提供することが望ましい。さらに、変換は大量のデータに関して実行されるかもしれないため、できるだけ効率的に変換を実行することが望ましい。
【特許文献１】米国仮出願番号60/787,562
【非特許文献１】新井、安居院、中嶋、「画像用高速ＤＣＴ-ＳＱ方式」、電子情報通信学会論文誌、１９８８年１１月
【発明の開示】
【発明の概要】
【０００５】
ここに、完全および基準化インタフェースを介して入力されるデータにそれぞれ完全および基準化変換を効率的に実行するための手法を説明する。完全変換とは、変換の完全な数学的記述を実施する変換である。完全変換は完全変換係数（または簡単に、変換係数）に作用するか、またはこれを出力する。また、完全変換は非基準化変換、コンプリート変換等と呼ばれるかもしれない。基準化変換とは、完全変換係数の基準化バージョンである基準化変換係数に作用するか、またはこれを出力する変換である。基準化変換は計算量がより少ないかもしれない。また、基準化変換係数が使用可能なアプリケーションで用いられるかもしれない。完全変換は全変換係数の交換を必要とするアプリケーションで用いられるかもしれない。完全および基準化変換は２次元（２Ｄ）ＩＤＣＴ用であるかもしれない。これは１次元（１Ｄ）ＩＤＣＴを用いて分離可能な方法で実施されるかもしれない。また、完全および基準化変換は２Ｄ  ＤＣＴ用であるかもしれない。これは１Ｄ  ＤＣＴを用いて分離可能な方法で実施されるかもしれない。以下で説明するように、１Ｄ  ＩＤＣＴおよび１Ｄ  ＤＣＴは効率的計算方法で実施されるかもしれない。
【詳細な説明】
【０００６】
以下に、本開示の種々の態様および特徴をより詳細に説明する。
【０００７】
ここに説明する手法は、ＤＣＴ、ＩＤＣＴ、離散フーリエ変換（ＤＦＴ）、逆ＤＦＴ（ＩＤＦＴ）、変調重複変換（ＭＬＴ）、逆ＭＬＴ、変調複素重複変換（ＭＣＬＴ）、逆ＭＣＬＴなどの種々の変換に用いられるかもしれない。本手法は、画像、ビデオ、およびオーディオ処理、通信、計算、データネットワーキング、データ保存、グラフィックスなどの種々のアプリケーションにも用いられるかもしれない。一般に、本手法は変換を用いるいかなるアプリケーションにも用いられるかもしれない。明確さのために、本手法を画像およびビデオ処理において一般的に用いられるＤＣＴおよびＩＤＣＴに対して以下に説明する。
【０００８】
タイプＩＩのＮ点１Ｄ  ＤＣＴおよびのＮ点１Ｄ  ＩＤＣＴは次式のように定義されるかもしれない。
【数１】
2009534723.tif 000003
【０００９】
ｘ［ｎ］は１Ｄ空間領域関数、
Ｘ［ｋ］は１Ｄ周波数領域関数である。
【００１０】
式（１）の１Ｄ  ＤＣＴはＮ個の入力サンプルすなわち空間領域値ｘ［０］からｘ［Ｎ−１］に作用し、Ｎ個の変換係数Ｘ［０］からＸ［Ｎ−１］を生成する。式（２）の１Ｄ  ＩＤＣＴはＮ個の変換係数に作用し、Ｎ個の出力サンプルを生成する。タイプＩＩ  ＤＣＴは、変換の一形式であり、画像／ビデオ圧縮のためにたびたび提案される種々のエネルギー集中化変換の中で最も効率的な変換の１つであると一般的に信じられている。
【００１１】
１Ｄ  ＤＣＴおよび１Ｄ  ＩＤＣＴはそれぞれ式（１）および式（２）に示すそれらの元々の型で実施されるかもしれない。しかし、以下で説明するように、できるだけ少ない乗算および加算になるような要素分解を見出すことにより、かなりの計算量削減が実現されるかもしれない。
【００１２】
式（１）の１Ｄ  ＤＣＴは以下のように行列形式で表現されるかもしれない。
【００１３】
ｘ ＝ Ｔ ｙ                                式（３）                                                    
ここで、ｙは入力サンプルのＮ×１ベクトル、
Ｔは完全１Ｄ  ＤＣＴのＮ×Ｎ行列、
ｘは変換係数のＮ×１ベクトルである。
【００１４】
ｙは入力サンプルｘ［０］からｘ［Ｎ−１］を含み、ｘは変換係数Ｘ［０］からＸ［Ｎ−１］を含む。Ｔの要素は式（１）に基づいて得られるかもしれない。
【００１５】
１Ｄ  ＤＣＴは以下のように行列の積に分解されるかもしれない。
【００１６】
Ｔ ＝Ｓ ＴＳ                                式（４）
ここで、Ｓ ＝ ｄｉａｇ（Ａ０，・・・，ＡＮ−１）は基準化係数の対角行列、
Ｔは基準化１Ｄ  ＤＣＴのＮ×Ｎ行列である。
【００１７】
式（３）および式（４）は、最初に基準化１Ｄ  ＤＣＴをｙに実行し、次にその結果をＳを用いて基準化することにより、完全１Ｄ  ＤＣＴがｙに実行されるかもしれないことを示している。
【００１８】
例えば、式（４）に示すような、完全変換の基準化変換への分解および基準化操作の利点は、基準化係数を適切に選択することにより基準化変換の乗算量が減少するかもしれないことである。例えば、新井、安居院、中嶋（ＡＡＮ）「画像用高速ＤＣＴ-ＳＱ方式」、電子情報通信学会論文誌、１９８８年１１月発行、に記載の周知の分解は、わずか５回の無理数係数の乗算を用いて実施されるかもしれない基準化８点ＤＣＴを実現する。対照的に、最もよく知られている完全８点ＤＣＴはそのような乗算を１１回要する。
【００１９】
Ｎ×Ｎの２Ｄ  ＤＣＴは以下のように定義される。
【数２】
2009534723.tif 000004
【００２０】
式（５）の演算の結果はＮ×Ｎの２Ｄ  ＤＣＴの行列である。
【００２１】
２Ｄ  ＤＣＴは入力サンプルＹのＮ×Ｎ行列に、一回に１次元について、分離可能な方法で実行されるかもしれない。例えば、中間行列を得るために、Ｙの各行に１Ｄ  ＤＣＴが実行されるかもしれない。次に、前記中間行列の各列に１Ｄ  ＤＣＴが実行されるかもしれない。あるいはまた、Ｙの各列に１Ｄ  ＤＣＴが実行され、中間行列の各行についての１Ｄ  ＤＣＴが後続するかもしれない。
【００２２】
式（５）は最初に基準化２Ｄ  ＤＣＴをＹに実行し、次にその結果を基準化することにより、Ｙに２Ｄ  ＤＣＴが実行されるかもしれないことを示している。また、式（５）は、行および列１Ｄ  ＤＣＴに対する基準化は、基準化２Ｄ  ＤＣＴの結果に適用される単一のステップ
【数３】
2009534723.tif 000005
【００２３】
式（２）の１Ｄ  ＩＤＣＴは次のように行列形式で表されるかもしれない。
【数４】
2009534723.tif 000006
【００２４】
ここで、Ｔｔは完全１Ｄ  ＩＤＣＴのＮ×Ｎ行列であり、「ｔ」は転置を表す。
【００２５】
２Ｄ  ＩＤＣＴは次式で表されるかもしれない。
【数５】
2009534723.tif 000007
【００２６】
式（７）は最初に変換係数を基準化し、次に基準化２Ｄ  ＩＤＣＴを前記基準化変換係数に実行することにより、２Ｄ  ＩＤＣＴが変換係数ＸのＮ×Ｎ行列に実行されるかもしれないことを示している。また、式（７）は、行および列１Ｄ  ＩＤＣＴに対する基準化は、基準化２Ｄ  ＩＤＣＴに先立つ単一のステップへ組み込まれるかもしれないことを示している。
【００２７】
基準化アーキテクチャとは、基準化変換を用いる設計であり、また完全アーキテクチャとは、完全変換を用いる設計である。基準化アーキテクチャは完全アーキテクチャより乗算量が少ないかもしれない。例えば、基準化アーキテクチャは分離可能な行-列の方法で基準化２Ｄ  ＩＤＣＴ
【数６】
2009534723.tif 000008
【００２８】
また、各行および各列に対してＡＡＮ分解による８点基準化１Ｄ  ＩＤＣＴ  ＴＳを用いるかもしれない。この基準化アーキテクチャの乗算量は、８×８＋１６×５ ＝ ６４＋８０ ＝ １４４、すなわち基準化のための６４回の乗算並びに８行および８列の各々に対する５回の乗算であるかもしれない。特定の状況において、基準化は量子化と組み合わされるかもしれない。その場合、基準化アーキテクチャの乗算量は約８０回の乗算に減少するかもしれない。完全アーキテクチャは行-列の方法で２Ｄ  ＩＤＣＴ
【数７】
2009534723.tif 000009
【００２９】
また、各行および各列に対して最もよく知られている完全８点１Ｄ  ＩＤＣＴ  Ｔを用いるかもしれない。この完全アーキテクチャの乗算量は、１６×１１ ＝ １７６、すなわち８行および８列の各々に対して１１回の乗算であるかもしれない。分離可能の実施において、基準化アーキテクチャは完全アーキテクチャより乗算量が少ないかもしれない。
【００３０】
基準化アーキテクチャは低計算量が好ましい設計に用いられるかもしれない。基準化アーキテクチャは基準化する非ゼロ変換係数がほとんどない場合に有利であるかもしれない。これは画像／ビデオ復号器の２Ｄ  ＩＤＣＴにおいてよくある場合であるかもしれない。また、基準化アーキテクチャは、図８に示すように、変換係数の基準化が画像／ビデオ符号器／復号器（コーデック）における量子化および／または逆量子化と組み合わされることができる設計において有利であるかもしれない。
【００３１】
完全アーキテクチャは使いやすさを好む設計において望ましいかもしれない。例えば、多くの計算環境およびアプリケーションは複数の画像およびビデオ符号化標準をサポートするかもしれない。これらの例において、完全変換を実施する変換エンジンを有すること、およびその変換エンジンが種々の量子化器とコーデックとで用いられ得るようにフレキシブルな入力／出力インタフェースを提供することは、より便利であるかもしれない。完全アーキテクチャは簡単なインタフェースを提供し、そのような環境においてより適切であるかもしれない。
【００３２】
基準化および完全インタフェースを介して異なるアプリケーションを柔軟にサポートできる変換設計をここに説明する。本変換設計は完全インタフェースを介して完全入力値を入力し、これらの入力値に完全変換を実行し、完全アーキテクチャと同様に完全出力値を出力するかもしれない。本変換設計は、また、基準化インタフェースを介して基準化入力値を入力し、これらの入力値に基準化変換を実行し、基準化アーキテクチャと同様に基準化出力値を出力するかもしれない。本変換設計は可能性として少ない計算量および／または改善した精度を達成するために分離可能な基準化変換を内部的に実施するかもしれない。このように、本変換設計はあるアプリケーションに対して計算量を少なくでき、他のアプリケーションに対しては使いやすさを提供し、またはある場合には少ない計算量と使いやすさの双方を提供することができるかもしれない。本変換設計は順変換（例えば、ＤＣＴ）と逆変換（例えば、ＩＤＣＴ）の双方に用いられるかもしれない。明確さのために、以下に本変換設計をＩＤＣＴに対して特に説明する。
【００３３】
基準化および非基準化／完全２Ｄ  ＩＤＣＴアーキテクチャは次式で表されるかもしれない。
【００３４】
基準化２Ｄ  ＩＤＣＴ：
【数８】
2009534723.tif 000010
【００３５】
非基準化２Ｄ  ＩＤＣＴ：
【数９】
2009534723.tif 000011
【００３６】
完全／非基準化インタフェースは変換係数を入力するかもしれない。これらの変換係数に完全２Ｄ  ＩＤＣＴが以下のように実行されるかもしれない。
【００３７】
Ｙ ＝ Θ（Ｘ） ≒ Ｔｔ Ｘ Ｔ                                  式（１０）
ここで、Ｘは変換係数の行列、
Θ（・）は完全２Ｄ  ＩＤＣＴの近似、
Ｙは出力サンプルの行列である。
【００３８】
式（１０）の演算子記法（・）は、固定小数点近似が線形操作のみに基づいていないかもしれないということを示すために用いられる。
【００３９】
完全な２Ｄ  ＩＤＣＴはＸの各行および各列について以下のように完全１Ｄ  ＩＤＣＴを実行することによって達成されるかもしれない。
【００４０】
θ（ｘｉ） ≒ Ｔｔ ｘｉ                                        式（１１）
ここで、ｘｉはＸのｉ番目の行または列、
θ（・）は完全１Ｄ  ＩＤＣＴの近似である。
【００４１】
θ（・）は２Ｄ演算子Θ（・）の行-列の実施に用いられるかもしれない。
【００４２】
基準化インタフェースは基準化変換係数を入力するかもしれない。これは以下のように求められるかもしれない。
【００４３】
ＸＳ ＝ Σ（Ｘ） ≒ Ｓｔ Ｘ Ｓ                                式（１２）
ここで、Σ（・）は２Ｄ基準化操作の近似、
ＸＳは基準化変換係数の行列である。
【００４４】
基準化２Ｄ  ＩＤＣＴは以下のように基準化変換係数に実行されるかもしれない。
【数１０】
2009534723.tif 000012
【００４５】
ここで、Ξ（・）は基準化２Ｄ  ＩＤＣＴの近似である。
【００４６】
基準化２Ｄ  ＩＤＣＴはＸＳの各行および各列に以下のように基準化１Ｄ  ＩＤＣＴを実行することにより達成されるかもしれない。
【数１１】
2009534723.tif 000013
【００４７】
ここで、ｘＳ，ｉはＸＳのｉ番目の行または列、
ξ（・）は基準化１Ｄ  ＩＤＣＴの近似である。
【００４８】
ξ（・）は２Ｄ演算子Ξ（・）の行-列の実施に用いられるかもしれない。
【００４９】
式（１３）に示すように、２Ｄ演算子Ξ（・）を実施することにより基準化インタフェースが実現されるかもしれない。式（１２）および式（１３）に示すように、２Ｄ演算子Ξ（・）に加えて２Ｄ基準化演算子Σ（・）を実施することにより完全インタフェースが実現されるかもしれない。したがって、完全２Ｄ  ＩＤＣＴは以下のように実行されるかもしれない。
【００５０】
Ｙ ＝ Ξ（Σ（Ｘ）） ≒ Θ（Ｘ）                              式（１５）
式（１５）は、最初に完全変換係数を２Ｄ基準化演算子Σ（・）を用いて基準化し、次に前記基準化変換係数に２Ｄ演算子Ξ（・）を用いて基準化２Ｄ  ＩＤＣＴを実行することにより、完全変換係数Ｘに完全２Ｄ  ＩＤＣＴが実行されるかもしれないことを示している。２Ｄ演算子Ξ（・）は１Ｄ演算子ξ（・）の行-列の縦続接続で順次実施されるかもしれない。
【００５１】
したがって、分離可能な完全２Ｄ  ＩＤＣＴのための２Ｄ演算子Θ（・）は分離可能な基準化２Ｄ  ＩＤＣＴのための２Ｄ演算子Ξ（・）および２Ｄ基準化演算子Σ（・）を用いて実施されるかもしれない。２Ｄ基準化は、以下に説明するように、種々の方法で実施されるかもしれない。分離可能な基準化２Ｄ  ＩＤＣＴおよび２Ｄ基準化を用いて実施される分離可能な完全２Ｄ  ＩＤＣＴの計算量と特性は、結果として、元々実施される完全２Ｄ  ＩＤＣＴと同等になるかもしれない。
【００５２】
図１Ａに２Ｄ基準化を用いた分離可能な完全２Ｄ  ＩＤＣＴ  １００の構造を示す。２Ｄ  ＩＤＣＴ  １００は、２Ｄ基準化段１１２と、それに続く行（または列）用の基準化１Ｄ  ＩＤＣＴ段１１４と、さらにそれに続く列（または行）用の基準化１Ｄ  ＩＤＣＴ段１１６と、終段の出力フォーマッティング段１１８と含む。２Ｄ基準化段１１２は変換係数ＸのＮ×Ｎブロックを入力し、さらに各変換係数Ｘｉｊに基準化係数Ａｉｊを乗算するかもしれない。またさらに、各基準化変換係数をＰビットだけ左へシフトするかもしれない。ここでＰは予約「仮数」ビット数を表す。基準化後に、出力サンプルにおいて適当な丸めを得るために、ＤＣ変換係数に値Ｃ＝２Ｐ−１が加算されるかもしれない。基準化の精度改善のためにＳ＝Ｐ＋Ｒビットが基準化係数の整数への変換で用いられるかもしれない。乗算後Ｒビットだけ右シフトが実行されるかもしれない。Ｓはハードウェアプラットフォームでの実施を容易にすることができる任意の適切な値であるかもしれない。例えば、符号付／符号なし１６ビット乗算器を備えたプラットフォームにおいてＳは１５または１６であるかもしれない。
【００５３】
ＩＤＣＴ段１１４は２Ｄ基準化段１１２からの基準化変換係数のブロックの各行にＮ点の基準化１Ｄ  ＩＤＣＴを実行する。ＩＤＣＴ段１１６はＩＤＣＴ段１１４で生成される中間ブロックの各列にＮ点の基準化１Ｄ  ＩＤＣＴを実行する。段１１４および１１６用の基準化１Ｄ  ＩＤＣＴはそれらの入力データに対して、内部の前基準化または後基準化すること無しに、直接動作するかもしれない。すべての行と列の処理後に、完全２Ｄ  ＩＤＣＴに対する出力サンプルＹのＮ×Ｎブロックを生成するために、出力フォーマッティング段１１８はＩＤＣＴ段１１６から得た量をＰビットだけ右にシフトするかもしれない。基準化係数および精度定数Ｐは所望の幅のレジスタを用いて全体の２Ｄ  ＩＤＣＴを実施することができるように選択されるかもしれない。
【００５４】
段１１２における２Ｄ基準化は次式で表されるかもしれない。
【００５５】
ＸＳ，ｉｊ ＝ （Ｘｉｊ・Ａｉ・Ａｊ） ＞＞ Ｒ                          式（１６）
ここで、ＸｉｊはＸの行ｉ、列ｊの変換係数、
ＡｉおよびＡｊはＳのそれぞれｉ番目、ｊ番目の対角要素、
ＸＳ，ｉｊはＸＳの行ｉ、列ｊの基準化変換係数、
「＞＞Ｒ」はＲビットの符号付右シフトを表す。
【００５６】
Ｒは、基準化変換係数ＸＳ，ｉｊにおいてＰビットの付加的固定小数点精度を確実にする定数である。
【００５７】
１つの表にｉ ＝ ０，・・・，Ｎ−１およびｊ ＝ ０，・・・，Ｎ−１に対して基準化係数Ａｉｊ ＝ Ａｉ・Ａｊが格納されるかもしれない。Ｘの各要素はこの表の対応する基準化係数と乗算されるかもしれない。最大Ｎ・Ｎ回の乗算が、ＸのＮ・Ｎ要素に対して実行されるかもしれない。
【００５８】
図１Ｂに分離可能な行-列基準化を用いた分離可能な完全２Ｄ  ＩＤＣＴ１０２の構造を示す。２Ｄ  ＩＤＣＴ  １０２は分離可能な行-列基準化段１２２と、それに続く行（または列）用の基準化１Ｄ  ＩＤＣＴ段１２４と、さらにそれに続く列（または行）用の基準化１Ｄ  ＩＤＣＴ段１２６と、終段の出力フォーマッティング段１２８を含む。基準化段１２２は変換係数ＸのＮ×Ｎブロックを入力し、基準化変換係数を求めるために、次式のようにさらに各行ｉの各変換係数Ｘｉｊに基準化係数Ａｉを乗算し、さらに、各列ｊの得られた各係数に基準化係数Ａｊを乗算するかもしれない。
【数１２】
2009534723.tif 000014
【００５９】
このように、基準化段１２２は分離可能な方法で行、続いて列に（または列、続いて行に）２Ｄ基準化を実行するかもしれない。分離可能な行-列の基準化は同じハードウェアが行の基準化および列の基準化に用いられることを可能にするかもしれない。これは実施の複雑さを減少させるかもしれない。ＸのＮ・Ｎ要素に対して最大２・Ｎ・Ｎ回の乗算が実行されるかもしれない。しかし、基準化係数Ａ０からＡＮ−１のいくつかはよくある値（例えば２５６）を有しており、またこれらのよくある基準化係数との乗算は単純なシフト操作で実施されるかもしれないため、実際の乗算回数は上算数は２・Ｎ・Ｎより遙かに少ないかもしれない。段１２４、１２６、および１２８はそれぞれ図１Ａの段１１４、１１６、および１１８と同様に動作するかもしれない。
【００６０】
図１Ｃに各基準化１Ｄ  ＩＤＣＴに先立って基準化を用いる分離可能な完全２Ｄ  ＩＤＣＴ  １０４の構造を示す。２Ｄ  ＩＤＣＴ  １０４は、行（または列）用の基準化を用いる基準化１Ｄ  ＩＤＣＴ段１３４と、それに続く列（または行）用の基準化を用いる基準化１Ｄ  ＩＤＣＴ段１３６と、終段の出力フォーマッティング段１３８を含む。ＩＤＣＴ段１３４はＮ点の基準化１Ｄ  ＩＤＣＴに先立って、変換係数のブロックの各行に基準化を実行する。ＩＤＣＴ段１３６はＮ点の基準化１Ｄ  ＩＤＣＴに先立って、ＩＤＣＴ段１３４で生成される中間ブロックの各列に基準化を実行する。段１３４および１３６は基準化１Ｄ  ＩＤＣＴを用いて本質的には完全１Ｄ  ＩＤＣＴを実行する。基準化係数Ａ０からＡＮ−１および基準化１Ｄ  ＩＤＣＴ内の定係数は、以下に説明するように完全１Ｄ  ＩＤＣＴのために計算量を減少しおよび／または精度を改善するように選択されるかもしれない。段１３８は図１Ａの段１１８と同様に動作するかもしれない。
【００６１】
図１Ｄに分離可能な基準化２Ｄ  ＩＤＣＴ  １０６の構造を示す。２Ｄ  ＩＤＣＴ  １０６は行（または列）用の基準化１Ｄ  ＩＤＣＴ段１４４と、それに続く列（または行）用の基準化１Ｄ  ＩＤＣＴ段１４６と、終段の出力フォーマッティング段１４８を含む。ＩＤＣＴ段１４４は基準化変換係数ＸＳのＮ×Ｎブロックの各行にＮ点の基準化１Ｄ  ＩＤＣＴを実行する。ＩＤＣＴ段１４６はＩＤＣＴ段１４４で生成される中間ブロックの各列にＮ点の基準化１Ｄ  ＩＤＣＴを実行する。段１４８は図１Ａの段１１８と同様に動作するかもしれない。
【００６２】
図１Ａから１Ｃに示すように、完全２Ｄ  ＩＤＣＴに対する基準化は、図１Ａの行-列１Ｄ  ＩＤＣＴに先立つ２Ｄ基準化を用いるような、または図１Ｂの行-列１Ｄ  ＩＤＣＴに先立つ分離可能な行-列基準化を用いるような、または図１Ｃの各１Ｄ  ＩＤＣＴに先立つ基準化を用いるような種々の方法で達成できるかもしれない。基準化は他の方法でも実行されるかもしれない。図１Ｄに示すように、基準化２Ｄ  ＩＤＣＴは単に基準化を省略し行と列に対して１Ｄ  ＩＤＣＴを実行することによって達成されるかもしれない。
【００６３】
種々の形式の基準化１Ｄ  ＩＤＣＴが図１Ａから図１Ｄにおける行-列１Ｄ  ＩＤＣＴに用いられるかもしれない。例えば、ＡＡＮ分解に基づく基準化１Ｄ  ＩＤＣＴが用いられるかもしれない。計算量がおそらくより少ない別の基準化ＩＤＣＴについて以下に説明する。
【００６４】
図２に８点１Ｄ  ＩＤＣＴの例示的な要素分解のフロー図２００を示す。
【数１３】
2009534723.tif 000015
【００６５】
各加算は２つの入力値を加算または減算し、出力値を出力する。各乗算は入力値と四角形の中の示される定係数の乗算を行い、出力値を出力する。図２における要素分解には、以下の定係数との乗算がある。
【００６６】
α１ ＝ α２ ＝ １                                              式（１８）
β１ ＝ β２ ＝ Ｃπ／４ ＝ ｃｏｓ（π／４） ≒ ０．７０７１０６７８１
γ１ ＝ Ｃ３π／８ ＝ ｃｏｓ（３π／８） ≒ ０．３８２６８３４３２
δ１ ＝ Ｓ３π／８ ＝ ｓｉｎ（３π／８） ≒ ０．９２３８７９５３３。
【００６７】
フロー図２００は８個の変換係数Ｘ［０］からＸ［７］を入力し、８個の基準化変換係数Ａ０・Ｘ［０］からＡ７・Ｘ［７］を求めるためにこれらの変換係数を基準化係数Ａ０からＡ７を用いて基準化するかもしれない。あるいはまた、フロー図２００は直接８個の基準化変換係数を入力するかもしれない。どちらの場合においても、フロー図２００は、８個の基準化変換係数に８点１Ｄ  ＩＤＣＴを実行し、８個の出力サンプルｘ［０］からｘ［７］を生成する。基準化係数Ａ０からＡ７は以下の通りである。
【数１４】
2009534723.tif 000016
【００６８】
フロー図２００は多くのバタフライ演算を含む。バタフライ演算は２つの入力値を入力し、１つの出力値は２つの入力値の和であり、もう一方の出力値は２つの入力値の差である２つの出力値を生成する。例えば、入力値Ａ０・Ｘ［０］およびＡ４・Ｘ［４］のバタフライ演算は上側分岐において出力値Ａ０・Ｘ［０］ ＋ Ａ４・Ｘ［４］を、下側分岐において出力値Ａ０・Ｘ［０］ − Ａ４・Ｘ［４］を生成する。
【００６９】
図２に示す要素分解により合計６個の乗算と２８個の加算となる。これは式（２）を直接計算するために必要な乗算と加算の数より大幅に少ない。乗算は８点１Ｄ  ＩＤＣＴにおいてはπ／８の倍数である種々の角度のｓｉｎおよびｃｏｓを表す無理数定数との乗算である。無理数定数は２つの整数の比ではない定数である。各無理数定数が有理２項定数で近似される場合、無理数定数との乗算は固定小数点整数算術で効率的に実行されるかもしれない。有理２項定数は２進の分母を有する有理定数であり、ｃ／２ｂの形である。ここで、ｂおよびｃは整数でありｂ＞０である。
【００７０】
固定小数点整数算術における整数変数ｘと無理数定数μの乗算は以下のように無理数定数を有理２項定数で近似することにより達成されるかもしれない。
【００７１】
μ ≒ ｃ／２ｂ                                                式（１９）
ここで、μは近似されるべき無理数定数、
ｃ／２ｂは有理２項定数である。
【００７２】
整数変数ｘおよび有理２項定数ｕ ＝ ｃ／２ｂが与えられると、整数値の積
ｙ ＝ （ｘ・ｃ）／２ｂ                                      式（２０）
が中間値の数列
ｘ０，ｘ１，ｘ２，・・・，ｘｔ                                式（２１）
を用いて近似されるかもしれない。
【００７３】
ここで、ｘ０ ＝ ０，ｘ１ ＝ ｘ、およびすべての２≦ｉ≦ｔに対してｘｉは以下のように求められる。
【数１５】
2009534723.tif 000017
【００７４】
数列内の各中間値ｘｉは数列内の２つの先行する中間値ｘｊおよびｘｋに基づいて導出されるかもしれない。ここで、ｘｊおよびｘｋのいずれかは０であるかもしれない。各中間値ｘｉは１シフトおよび／または１加算で求められるかもしれない。ｓｉが０の場合、シフトは不要である。ｘｊ ＝ ｘ０ ＝ ０の場合、加算は不要である。乗算のための加算およびシフトの総数は、数列になっている中間値の数ｔおよび各中間値に用いられる式とよって決定される。有理２項定数ｕによる乗算は本質的に一連のシフトおよび加算操作に展開される。数列は数列の最終の値が所望の整数値積、すなわち、
ｘｔ ≒ ｙ                                              式（２３）
になるように決定される。
【００７５】
固定小数点整数算術における整数変数ｘと２つの無理数定数μおよびηとの乗算は、以下のように無理数定数を有理２項定数で近似することによって得られるかもしれない。
【００７６】
μ ≒ ｃ／２ｂ    および    η ≒ ｅ／２ｄ                式（２４）
ここで、ｃ／２ｂおよびｅ／２ｄは２つの有理２項定数、
ｂ，ｃ，ｄ，ｅは整数、ｂ＞０、ｄ＞０である。
【００７７】
整数値ｘおよび有理２項定数ｕ ＝ ｃ／２ｂおよびｖ ＝ ｅ／２ｄを与えると、２つの整数値の積
ｙ ＝ （ｘ・ｃ）／２ｂ  および  ｚ ＝ （ｘ・ｅ）／２ｄ        式（２５）
は中間値の数列
ｘ０，ｘ１，ｘ２，・・・，ｘｔ                                  式（２６）
を用いて近似されるかもしれない。
【００７８】
ここで、ｘ０ ＝ ０，ｘ１ ＝ ｘ、およびすべての２≦ｉ≦ｔに対してｘｉは以下のように求められる。
【数１６】
2009534723.tif 000018
【００７９】
この数列は所望の整数で表した値の積が以下のようにステップｍおよびｎで得られるように定義される。
【００８０】
ｘｍ ≒ ｙ  および  ｘｎ ≒ ｚ                              式（２８）
ここで、ｍ，ｎ≦ｔ、ｍまたはｎのいずれかはｔに等しい。
【００８１】
式（２４）から式（２８）に示すように、整数変数ｘと無理数定数μおよびηとの乗算は、操作の総数を減少するためにシフトおよび加算操作で生成される共通の中間値の数列で、および中間値を用いて近似されるかもしれない。
【００８２】
上述の計算において、０の加算および減算並びに０ビットのシフトのような自明の操作は省略されるかもしれない。以下の簡素化がなされるかもしれない。
【数１７】
2009534723.tif 000019
【００８３】
式（２９）において、「⇒」の左の式は０（ｘ０で表される）の加算または減算を含み、「⇒」の右の式で示すように１つのシフトで実行されるかもしれない。式（３０）において、「⇒」の左の式は０ビットのシフト（２０で表される）を含み、「⇒」の右の式で示すように１回の加算で実行されるかもしれない。式（２９）および式（３０）はｘｉの計算における式（２２）および式（２７）に適用されるかもしれない。
【００８４】
計算量を減少するために、次式で示すように、第１の共通係数Ｆ１がフロー図２００の定数項α１およびβ１に適用され、第２の共通係数Ｆ２が定数項α２、β２、δ１およびγ１に適用されるかもしれない。
【数１８】
2009534723.tif 000020
【００８５】
基準化係数Ａ０からＡ７も共通係数Ｆ１およびＦ２を計算に入れるように次式のように基準化されるかもしれない。
【数１９】
2009534723.tif 000021
【００８６】
共通係数Ｆ１およびＦ２の種々の値の組合せが評価されるかもしれない。Ｆ１およびＦ２の値の各組合せに対して、１Ｄ  ＩＤＣＴのための論理および算術演算の総数並びに出力サンプルの精度が決定されるかもしれない。
【００８７】
表１に、  Ｆ１ ＝ ２５２３／２０４８およびＦ２ ＝ ２６０７／２０４８としたときの図２の１Ｄ  ＩＤＣＴに対する固定小数点近似の例を示す。表１の第１列に、基準化係数A0'からA7'および基準化共通係数を示す。各係数は第２列に示す有理２項定数で近似されるかもしれない。変数ｘと１つまたは２つの有理２項定数の乗算に対する中間値の数列を第３列に示す。各乗算に対する加算およびシフト演算の数をそれぞれ第４および第５列に示す。１Ｄ  ＩＤＣＴのために各乗算が用いられる回数を第６列に示す。１Ｄ  ＩＤＣＴのための加算操作の総数は第４列の加算操作の数掛ける第６列に示す数の和に等しい。１Ｄ  ＩＤＣＴのためのシフト操作の総数は第５列のシフト操作の数掛ける第６列に示す数の和に等しい。
【表１】
2009534723.tif 000022
【００８８】
表１において、８だけ右シフトすることは基準化係数A0',A1',A2'およびA4'の２５６との乗算を打ち消す。これは付加的計算量の減少を可能とする。
【００８９】
表１に示す設計において、８点基準化１Ｄ  ＩＤＣＴは５０の加算操作および２４のシフト操作を用いて実行されるかもしれない。８点完全１Ｄ  ＩＤＣＴは６１の加算操作および３９のシフト操作を用いて実行されるかもしれない。基準化係数A0'からA7'までを用いる基準化は、（図１Ｃに示すように）基準化１Ｄ  ＩＤＣＴに先立って実行されるか、または、（図の１Ａおよび１Ｂに示すように）行-列の１Ｄ  ＩＤＣＴに先立って実行されるかもしれない。８×８の完全２Ｄ  ＩＤＣＴは９７７の加算操作および６８８のシフト操作を用いて実行されるかもしれない。上記９７７の加算操作は８行および８列に対する１６の１Ｄ  ＩＤＣＴの各々に対する６１の加算に、２Ｐ−１と基準化後のＤＣ変換係数の和のために１つの加算を加えた操作を含む。上記６８８のシフト操作は８行および８列に対する１６のＩＤＣＴの各々に対する３９のシフトに、第２のＩＤＣＴ段からの６４の値をＰビットだけシフトするための６４のシフトを加えた操作を含むかもしれない。表１に示す設計はＩＥＥＥ標準１１８０−１１９０および未決定のその後継版で定義される精度基準を満足するか、または超えている。
【００９０】
表１は図２の１Ｄ  ＩＤＣＴのための例示的固定小数点近似を示すものである。基準化係数Ａ０からＡ７並びに定係数α１、β１、α２、β２、δ１およびγ１は、異なる計算量および／または精度を有するかもしれない他の有理２項定数で近似されるかもしれない。また、他の形式の基準化ＩＤＣＴが分離可能な基準化および完全２Ｄ  ＩＤＣＴを実施するために用いられるかもしれない。
【００９１】
図３Ａに２Ｄ基準化を用いた分離可能な完全２Ｄ  ＤＣＴ  ３００の構造を示す。２Ｄ  ＤＣＴ３００は入力フォーマッティング段３１２と、それに続く行（または列）用の基準化１Ｄ  ＤＣＴ段３１４と、さらにそれに続く列（または行）用の基準化１Ｄ  ＤＣＴ段３１６と、終段の２Ｄ基準化段３１８を含む。入力フォーマッティング段３１２は入力サンプルのＮ×Ｎブロックを左から乗算するかもしれない。ＤＣＴ段３１４は段３１２からの予め乗算したサンプルのブロックの各行にＮ点基準化１Ｄ  ＤＣＴを実行し、第１の中間ブロックを生成する。ＤＣＴ段３１６は前記第１の中間ブロックの各列にＮ点基準化１Ｄ  ＤＣＴを実行し、第２の中間ブロックを生成する。基準化段３１８は第２の中間の各要素を基準化し、完全２Ｄ  ＤＣＴのための変換係数のブロックを出力する。
【００９２】
図３Ｂに分離可能な行-列基準化を用いた分離可能な完全２Ｄ  ＤＣＴ３０２の構造を示す。２Ｄ  ＤＣＴ３０２は入力フォーマッティング段３２２と、それに続く行（または列）用の基準化１Ｄ  ＤＣＴ段３２４と、さらにそれに続く列（または行）用の基準化１Ｄ  ＤＣＴ段３２６と、終段の行-列基準化段３２８を含む。段３２２、３２４、および３２６はそれぞれ図３Ａの段３１２、３１４、および３１６と同様に動作するかもしれない。基準化段３２８は完全２Ｄ  ＤＣＴのための変換係数のブロックを生成するために、ＤＣＴ段３２６からの第２の中間ブロックを行毎に、次いで列毎に基準化するかもしれない。
【００９３】
図３Ｃに各基準化１Ｄ  ＤＣＴの後に基準化を用いる分離可能な完全２Ｄ  ＤＣＴ３０４の構造を示す。２Ｄ  ＤＣＴ３０４は、入力フォーマッティング段３３２、それに続く行（または列）用の基準化を用いる基準化１Ｄ  ＤＣＴ段３３４、さらにそれに続く列（または行）用の基準化を用いる基準化１Ｄ  ＤＣＴ段３３６を含む。段３３２は図３Ａの段３１２と同様に動作するかもしれない。ＤＣＴ段３３４はＮ点基準化１Ｄ  ＤＣＴを実行し、続いて段３３２からの予め乗算されたサンプルのブロックの各行に基準化を実行する。ＤＣＴ段３３６はＮ点基準化１Ｄ  ＤＣＴを実行し、続いてＤＣＴ段３３４で生成された中間ブロックの各列に基準化を実行する。
【００９４】
図３Ｄに分離可能な基準化２Ｄ  ＤＣＴ３０６の構造を示す。２Ｄ  ＤＣＴ３０６は入力フォーマッティング段３４２、それに続く行（または列）用の基準化１Ｄ  ＤＣＴ段３４４、さらにそれに続く列（または行）用の基準化１Ｄ  ＤＣＴ３４６を含む。段３４２は図３Ａの段３１２と同様に動作するかもしれない。ＤＣＴ段３４４は段３３２からの予め乗算されたサンプルのブロックの各行にＮ点基準化１Ｄ  ＤＣＴを実行する。ＤＣＴ段３４６はＤＣＴ段３４４で生成された中間ブロックの各列にＮ点基準化１Ｄ  ＤＣＴを実行する。
【００９５】
図３Ａから図３Ｃに示すように、完全２Ｄ  ＤＣＴのための基準化は、図３Ａの行-列１Ｄ  ＤＣＴ後に２Ｄ基準化を用いる方法、図３Ｂの行-列１Ｄ  ＤＣＴ後に分離可能な行-列基準化を用いる方法、または図３Ｃの各１Ｄ  ＤＣＴ後に基準化を用いる方法などの種々の方法で達成されるかもしれない。基準化は、他の方法でも実行されるかもしれない。図３Ｄに示すように、基準化２Ｄ  ＤＣＴは単に基準化を省略し行と列に対して１Ｄ  ＩＤＣＴを実行することによって達成されるかもしれない。
【００９６】
種々の形式の基準化１Ｄ  ＤＣＴが図３Ａから図３Ｄの基準化１Ｄ  ＤＣＴに用いられるかもしれない。計算量の少ない例示的基準化ＤＣＴについて以下に説明する。
【００９７】
図４は８点１Ｄ  ＤＣＴの例示的要素分解のフロー図４００を示す。フロー図４００は入力サンプルｘ［０］からｘ［７］を入力し、これらの入力サンプルに８点基準化１Ｄ  ＤＣＴを実行し、これらの入力のサンプルに実行し、８個の基準化変換係数８Ａ０・Ｘ［０］から８Ａ７・Ｘ［７］を生成する。基準化係数Ａ０からＡ７は上で与えられる。図４の要素分解には以下の定数係数との乗算がある。
【００９８】
αａ ＝ αｂ ＝ １                                          式（３３）
βａ ＝ βｂ ＝ １／Ｃπ／４ ＝ １／ｃｏｓ（π／４）
γa ＝ ２Ｃ３π／８ ＝ ２ｃｏｓ（３π／８）
δａ ＝ ２Ｓ３π／８ ＝ ２ｓｉｎ（３π／８）。
【００９９】
図２および図４のＩＤＣＴ用およびＤＣＴ用のフロー図は類似しており、本質的に同一（１／２の違いがある）の定数係数との乗算を含む。このような類似性はＤＣＴおよびＩＤＣＴを集積回路上で実施するのに有利であるかもしれない。特に、この類似性は順変換および逆変換の双方で用いられるバタフライ回路および変換定数との乗算を実施するためのシリコンまたはダイ面積の節約を可能にするかもしれない。
【０１００】
図５に完全および基準化インタフェースをサポートするＩＤＣＴプロセッサ５００の構造のブロック図を示す。ＩＤＣＴプロセッサ５００内において、基準化ユニット５１０は完全インタフェースを介して変換係数のブロックを入力し、その変換係数のブロックに基準化（例えば要素毎に２Ｄ基準化または分離可能な行-列基準化）を実行し、基準化変換係数のブロックを出力する。マルチプレクサ（Ｍｕｘ）５１２は、完全インタフェースが選択されている場合、基準化ユニット５１０から基準化変換係数を入力し出力する。マルチプレクサ５１２は、基準化インタフェースが選択されている場合には、基準化インタフェースを介して基準化変換係数を入力し、これらの基準化変換係数を出力する。マルチプレクサ５１４はマルチプレクサ５１２の出力またはバッファ５１８の出力をＩＤＣＴエンジン５１６へ出力する。
【０１０１】
ＩＤＣＴエンジン５１６はマルチプレクサ５１２からの基準化変換係数のブロックの行に基準化１Ｄ  ＩＤＣＴを実行し、中間結果のブロックの行をバッファ５１８へ出力するかもしれない。ＩＤＣＴエンジン５１６は、次にバッファ５１８からの中間結果のブロックの列に基準化１Ｄ  ＩＤＣＴを実行し、最終結果のブロックをバッファ５１８に出力するかもしれない。ユニット５２０はバッファ５１８の最終結果に出力フォーマッティングを実行し、出力サンプルを出力する。
【０１０２】
図６に完全および基準化インタフェースをサポートするＤＣＴプロセッサ６００の構造のブロック図を示す。ＤＣＴプロセッサ６００内で、ユニット６１０は入力サンプルのブロックに入力フォーマッティングを実行する。ＤＣＴエンジン６１４はマルチプレクサ６１２を介してユニット６１０から入力値のブロックを入力し、入力値のブロックの行に基準化１Ｄ  ＤＣＴを実行し、中間結果のブロックをバッファ６１６に出力する。ＤＣＴエンジン６１４は、次にバッファ６１６からの中間結果のブロックの列に基準化１Ｄ  ＤＣＴを実行し、基準化変換係数のブロックをバッファ６１６に出力するかもしれない。バッファ６１６は基準化変換係数のブロックを基準化インタフェースに出力する。基準化ユニット６１８は基準化変換係数のブロックを入力し基準化し完全変換係数を完全インタフェースに出力する。
【０１０３】
明確さのために、上記の説明のほとんどはＤＣＴおよびＩＤＣＴに対するものである。一般に、ここに説明した手法はＤＣＴ、ＩＤＣＴ、ＤＦＴ、ＩＤＦＴ、ＭＬＴ、逆ＭＬＴ、ＭＣＬＴ、逆ＭＣＬＴなどのような、いかなる形式の変換にも用いられるかもしれない。また、本手法は図２および図４に示したいくつかの例示的要素分解の例を用いて、変換の任意の要素分解にも用いることができるかもしれない。また、本手法は図２および図４に示した８点変換を用いて任意サイズの変換に用いられるかもしれない。８×８ＤＣＴおよび８×８ＩＤＣＴは画像およびビデオ処理に一般的に用いられる。また、本手法はＪＰＥＧ、ＭＰＥＧ−１、ＭＰＥＧ−２、ＭＰＥＧ−４（Ｐ．２）、Ｈ．２６１、Ｈ．２６３などのような種々の画像およびビデオの符号化標準に用いられるかもしれない。
【０１０４】
図７に変換を実行するための処理７００の構造を示す。第１の入力値が第１のインタフェース（完全または非基準化インタフェース）を介して入力されるかもしれない（ブロック７１２）。第１の出力値を得るために第１の入力値に完全変換が実行されるかもしれない（ブロック７１４）。第２の入力値が第２のインタフェース（基準化インタフェース）を介して入力されるかもしれない（ブロック７１６）。第２の出力値を得るために第２の入力値に基準化変換が実行されるかもしれない（ブロック７１８）。
【０１０５】
完全変換は完全２Ｄ逆変換であるかもしれない。この場合、第１の入力値のブロックは第１のインタフェースを介して入力され、基準化入力値のブロックを得るために基準化されるかもしれない。中間ブロックを得るために基準化入力値のブロックの各行に基準化１Ｄ変換が実行されるかもしれない。第１の出力値のブロックを得るために中間ブロックの各列に基準化１Ｄ変換が実行されるかもしれない。また、基準化１Ｄ変換は列に、次いで行に実行されるかもしれない。
【０１０６】
完全変換はまた完全２Ｄ順変換であるかもしれない。この場合、第１のインタフェースを介して第１の入力値のブロックが入力されるかもしれない。第１の中間ブロックを得るために入力値のブロックの各行に基準化１Ｄ変換が実行されるかもしれない。第２の中間ブロックを得るために第１の中間ブロックの各列に基準化１Ｄ変換が実行されるかもしれない。第１の出力値のブロックを得るために第２の中間ブロックが基準化されるかもしれない。
【０１０７】
完全変換は完全２Ｄ  ＩＤＣＴであるかもしれない。この場合、第１のインタフェースを介して変換係数のブロックが入力され、基準化変換係数のブロックを得るために基準化されるかもしれない。各変換係数は対応する基準化変換係数を得るために、例えば、図１Ａに示すように、それぞれの基準化係数で基準化されるかもしれない。あるいはまた、変換係数のブロックは例えば図１Ｂに示すように基準化変換係数のブロックを得るために、行毎におよび列毎に基準化されるかもしれない。中間ブロックを得るために基準化変換係数のブロックの各行に基準化１Ｄ  ＩＤＣＴが実行されるかもしれない。出力サンプルのブロックを得るために中間ブロックの各列に基準化１Ｄ  ＩＤＣＴが実行されるかもしれない。あるいはまた、図１Ｃに示すように、中間ブロックを得るために変換係数のブロックの各行に基準化および１つの基準化１Ｄ  ＩＤＣＴが実行され、中間ブロックの各列に基準化または基準化１Ｄ  ＩＤＣＴが実行されるかもしれない。
【０１０８】
基準化変換は基準化２Ｄ  ＩＤＣＴであるかもしれない。この場合、基準化変換係数のブロックは第２のインタフェースを介して入力されるかもしれない。次に、中間ブロックを得るために基準化変換係数のブロックの各行に基準化１Ｄ  ＩＤＣＴが実行されるかもしれない。出力サンプルのブロックを得るために中間ブロックの各列に基準化１Ｄ  ＩＤＣＴが実行されるかもしれない。
【０１０９】
完全変換は完全２Ｄ  ＤＣＴであるかもしれない。また、基準化変換は基準化２Ｄ  ＤＣＴであるかもしれない。第１のインタフェースに対する完全変換係数のブロックを得るために、上述したように入力サンプルのブロックに完全２Ｄ  ＤＣＴが実行されるかもしれない。また、第２のインタフェースに対する基準化変換係数のブロックを得るために、入力サンプルのブロックに基準化２Ｄ  ＤＣＴが実行されるかもしれない。
【０１１０】
図８に符号化システム８１０および復号システム８５０の構造のブロック図を示す。符号化システム８１０において、画像／ビデオ符号器８２０は、複数の画素ブロックを入力し、特定の画像またはビデオ圧縮アルゴリズムに従って各画素ブロックに圧縮を実行するかもしれない。符号器８２０は画素の差分値（または、残差）のブロックおよび画素のブロックを出力するかもしれない。ユニット８２２は入力サンプルのブロックとして残差ブロックおよび画素ブロックを入力し、各入力サンプルブロックに２Ｄ  ＤＣＴを実行し、完全または基準化変換係数のブロックを出力するかもしれない。ユニット８２２は完全および基準化インタフェースの双方をサポートするかもしれない。量子化器８２４は完全または基準化変換係数を量子化し、量子化係数を出力するかもしれない。エントロピー符号器８２６はその量子化係数にエントロピー符号化を実行し、通信チャネル８４０を介した伝送および／または格納のために、圧縮されたデータをパケットまたはビットストリームで出力するかもしれない。
【０１１１】
復号システム８５０において、エントロピー復号器８６０は圧縮されたデータにエントロピー復号を符号器８２６によるエントロピー符号化の相補的方法で実行し、量子化係数を出力するかもしれない。逆量子化器８６２はその量子化係数を完全または基準化変換係数にマッピングするかもしれない。ユニット８６４は完全変換係数に完全２Ｄ  ＩＤＣＴを、または基準化変換係数に基準化２Ｄ  ＩＤＣＴを実行し、出力サンプルのブロックを出力するかもしれない。ユニット８６４は完全および基準化インタフェースの双方をサポートするかもしれない。画像／ビデオ復号器８６６は出力サンプルのブロックに復元を実行し、画素のブロックを出力するかもしれない。
【０１１２】
符号化システム８１０において、ユニット８２２は基準化２Ｄ  ＤＣＴを実行し、基準化変換係数を出力するかもしれない。量子化器８２４は基準化変換係数の量子化と同様に基準化（例えば、図３Ａの段３１８または図３Ｂの段３２８）を実行するかもしれない。復号システム８５０において、ユニット８６２は変換係数に対する基準化（例えば、図１Ａの段１１２または図１Ｂの段１２２）と同様に逆量子化を実行するかもしれない。次に、ユニット８６４はユニット８６２からの基準化変換係数に基準化２Ｄ  ＩＤＣＴを実行するかもしれない。
【０１１３】
図９に符号化システム９００のブロック図を示す。これは、図８の符号化システム８１０に用いられるかもしれない。取得デバイス／メモリー９１０は源信号を入力し、デジタルフォーマットへの変換を実行し、入力／生データを出力するかもしれない。取得デバイス９１０はビデオカメラ、ディジタイザ、または他のデバイスであるかもしれない。プロセッサ９２０は生データを処理し、圧縮されたデータを生成する。プロセッサ９２０内において、生データはＤＣＴユニット９２２で変換され、ジグザグスキャンユニット９２４でスキャンされ、量子化器９２６で量子化され、エントロピー符号器９２８で符号化され、パケット化器でパケット化されるかもしれない。ＤＣＴユニット９２２は、ここに説明した手法に従って生データに２Ｄ  ＤＣＴを実行し、完全および基準化インタフェース双方をサポートするかもしれない。９２２から９３０の各ユニットはハードウェア、ファームウェア、および／またはソフトウェアで実施されるかもしれない。例えば、ＤＣＴユニット９２２は専用ハードウェア、演算論理ユニット（ＡＬＵ）のための１組の命令、その他で実施されるかもしれない。
【０１１４】
記憶ユニット９４０はプロセッサ９２０からの圧縮されたデータを格納するかもしれない。送信機９４２は圧縮されたデータを送信するかもしれない。制御器／プロセッサ９５０は符号化システム９００の種々のユニットの動作を制御する。メモリー９５２は符号化システム９００のためのデータおよびプログラムコードを格納する。１つ以上のバス９６０は符号化システム９００内の種々のユニットを相互接続する。
【０１１５】
図１０に復号システム１０００のブロック図を示す。これは図８の復号システム８５０に用いられるかもしれない。受信機１０１０は符号化システムから圧縮されたデータを受信し、記憶ユニット１０１２は受信された圧縮されたデータを格納するかもしれない。プロセッサ１０２０は圧縮されたデータを処理し、出力データを生成する。プロセッサ１０２０内において、圧縮されたデータはパケット分解器１０２２でパケット分解され、エントロピー復号器１０２４で復号され、逆量子化器１０２６で逆量子化され、逆ジグザグスキャンユニット１０２８で適切な順に配置され、ＩＤＣＴユニット１０３０で変換されるかもしれない。ＩＤＣＴユニット１０３０はここに説明した手法に従って完全または基準化変換係数に２Ｄ  ＩＤＣＴを実行し、完全および基準化インタフェースの双方をサポートするかもしれない。１０２２から１０３０の各ユニットは、ハードウェア、ファームウェア、および／またはソフトウェアで実施されるかもしれない。例えば、ＩＤＣＴユニット１０３０は専用ハードウェア、ＡＬＵのための１組の命令、その他で実施されるかもしれない。
【０１１６】
ディスプレイユニット１０４０はプロセッサ１０２０からの再構成画像およびビデオを表示する。制御器／プロセッサ１０５０は復号システム１０００内の種々のユニットの動作を制御する。メモリー１０５２は復号システム１０００のためのデータおよびプログラムコードを格納する。１つ以上のバス１０６０は復号システム１０００内の種々のユニットを相互接続する。
【０１１７】
プロセッサ９２０および１０２０はそれぞれ１つ以上の特定用途向ＩＣ（ＡＳＩＣ）、ディジタル信号プロセッサ（ＤＳＰ）、および／または、ある他の形式のプロセッサで実施されるかもしれない。あるいはまた、プロセッサ９２０および１０２０はそれぞれ１つ以上のランダムアクセスメモリー（ＲＡＭ）、読み出し専用メモリー（ＲＯＭ）、電気的プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、磁気ディスク、光ディスク、および／または当業者に既知の他の形式の揮発性および不揮発性メモリーでそれぞれ置き換えられるかもしれない。
【０１１８】
ここに説明した手法は種々の形式の装置において実施されるかもしれない。例えば、本手法は種々の形式のプロセッサ、種々の形式の集積回路、種々の形式の電子機器、種々の形式の電子回路、その他で実施されるかもしれない。
【０１１９】
当業者は情報および信号が種々の異なる技術および手法のいずれかを用いて表されるかもしれないことを理解するだろう。例えば、上の記述中に参照されるかもしれないデータ、命令、指示、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光学場もしくは光粒子、またはそれらの任意の組合せで表されるかもしれない。
【０１２０】
当業者は本開示に関連して説明された種々の例示的論理ブロック、モジュール、回路およびアルゴリズムのステップは、電子的ハードウェア、計算機ソフトウェア、またはその双方の組合せとして実施されるかもしれないことをさらに認識するだろう。ハードウェアとソフトウェアのこの互換性を明確に示すために、ここまで種々の例示的部品、ブロック、モジュール、回路、およびステップをそれらの機能の面から一般的に説明してきた。そのような機能がハードウェアまたはソフトウェアとして実施されるかどうかは、全体のシステムに課せられた特定のアプリケーションおよび設計制約に依存する。当業者は、説明した機能を各特定のアプリケーションに対して異なる方法で実施するかもしれないが、そのような実施の決定が本開示の範囲からの逸脱を引き起こすと解釈されるべきではない。
【０１２１】
本開示に関して説明された種々の例示的論理ブロック、モジュール、および回路は、汎用プロセッサ、ＤＳＰ、ＡＳＩＣ、プログラマブルゲートアレイ（ＦＰＧＡ）、もしくは他のプログラム可能論理回路、個別ゲートもしくはトランジスタ論理、個別ハードウェア部品、またはここに説明した機能を実行するように設計されたそれらの任意の組合せで実施または実行されるかもしれない。汎用プロセッサはマイクロプロセッサであるかもしれないが、代替的にはプロセッサは、任意の通常のプロセッサ、制御器、マイクロ制御器または状態機械であるかもしれない。プロセッサはまた、計算機器の組合せ、例えばＤＳＰとマイクロプロセッサ、複数のマイクロプロセッサ、ＤＳＰコアと連係した１つ以上のマイクロプロセッサ、または他のそのような構成として実施されるかもしれない。
【０１２２】
本開示に関して説明した方法またはアルゴリズムのステップは、直接ハードウェアで、プロセッサで実行されるソフトウェアモジュールで、またはその２つの組合せで具体化されるかもしれない。ソフトウェアモジュールはＲＡＭメモリー、フラッシュメモリ、ＲＯＭメモリー、ＥＰＲＯＭメモリー、ＥＥＰＲＯＭメモリー、レジスタ、ハードディスク、可搬形ディスク、ＣＤ−ＲＯＭ、または当業者に既知の任意の他の形式の記憶媒体の中にあるかもしれない。代表的記憶媒体はプロセッサが情報を記憶媒体から読み出しおよび情報を記憶媒体に書き込むことができるようにプロセッサに接続される。代替的には、記憶媒体はプロセッサの構成部品であるかもしれない。プロセッサおよび記憶媒体はＡＳＩＣ内にあるかもしれない。ＡＳＩＣはユーザ端末内にあるかもしれない。代替的に、プロセッサおよび記憶媒体は個別部品としてユーザ端末内にあるかもしれない。
【０１２３】
本開示のこれまでの説明は、いかなる当業者も本開示を製造しまたは使用することが可能となるように提供されている。本開示への種々の変形は当業者に容易に明らかになるだろう。また、ここに定義した一般的原理は本開示の精神または範囲から逸脱することなく他の設計に適用されるかもしれない。したがって、本開示は、ここに示した例に制限することを意図していず、ここに開示した原理および新規な機能に矛盾しない最も広い範囲と一致するということである。
【図面の簡単な説明】
【０１２４】
【図１Ａ】本発明の２Ｄ基準化を用いた分離可能な完全２Ｄ  ＩＤＣＴを示す図。
【図１Ｂ】本発明の行-列基準化を用いた分離可能な完全２Ｄ  ＩＤＣＴを示す図。
【図１Ｃ】本発明の１Ｄ基準化を用いた、分離可能な完全２Ｄ  ＩＤＣＴを示す図。
【図１Ｄ】本発明の分離可能な基準化２Ｄ  ＩＤＣＴを示す図。
【図２】本発明の８点１Ｄ  ＩＤＣＴの要素分解のフロー図。
【図３Ａ】本発明の２Ｄ基準化を用いた分離可能な完全２Ｄ  ＤＣＴを示す図。
【図３Ｂ】本発明の行-列基準化を用いた分離可能な完全２Ｄ  ＤＣＴを示す図。
【図３Ｃ】本発明の１Ｄ基準化を用いた分離可能な完全２Ｄ  ＤＣＴを示す図。
【図３Ｄ】本発明の分離可能な基準化２Ｄ  ＤＣＴを示す図。
【図４】本発明の８点１Ｄ  ＤＣＴの要素分解のフロー図。
【図５】本発明の完全および基準化インタフェースをサポートするＩＤＣＴプロセッサを示す図。
【図６】本発明の完全および基準化インタフェースをサポートするＤＣＴプロセッサを示す図。
【図７】本発明の変換を実行するための処理を示す図。
【図８】本発明の符号化システムおよび復号システムを示す図。
【図９】本発明の符号化システムのブロック図。
【図１０】本発明の復号システムのブロック図。
【図１Ａ】
2009534723.tif 000023
【図１Ｂ】
2009534723.tif 000024
【図１Ｃ】
2009534723.tif 000025
【図１Ｄ】
2009534723.tif 000026
【図２】
2009534723.tif 000027
【図３Ａ】
2009534723.tif 000028
【図３Ｂ】
2009534723.tif 000029
【図３Ｃ】
2009534723.tif 000030
【図３Ｄ】
2009534723.tif 000031
【図４】
2009534723.tif 000032
【図５】
2009534723.tif 000033
【図６】
2009534723.tif 000034
【図７】
2009534723.tif 000035
【図８】
2009534723.tif 000036
【図９】
2009534723.tif 000037
【図１０】
2009534723.tif 000038