(57)【要約】  画像を圧縮する方法及びシステムについて説明する。変換され量子化された複数の値であって画像データのブロックと関連付けられた値が、アクセスされる。ブロックは画像内の位置に対応している。ブロックのランレングス符号化中に符号化されたビット数のカウントが行われる。カウントが限界に到達した場合、ブロックのランレングス符号化が終了となる。【選択図】  図１Ａ
2008516532.tif 000002
【特許請求の範囲】
【請求項１】
画像を圧縮する方法であって、
画像データの第１のブロックに関連する第１の複数の変換量子化をアクセスするステップであって、該第１のブロックが前記画像内の第１の位置に対応しており、前記値の各々が幾つかのビットとして表される、該ステップと、
前記第１のブロックのランレングス符号化中に符号化されたビットの数のカウントを保持するステップであって、前記第１のブロックの前記ランレングス符号化は、前記カウントが限界に達した場合に終了する、該ステップと、
を含む方法。
【請求項２】
前記限界が、前記第１の位置に応じて決定される値を有する、請求項１に記載の方法。
【請求項３】
前記画像内の第２の位置に対応する第２のブロックのデータを符号化するために、前記限界を増加させるステップを更に含む、請求項１に記載の方法。
【請求項４】
第２のブロックの画像データに関連する第２の複数の変換量子化値にアクセスするステップであって、該第２のブロックが、前記画像内の第２の位置に対応する、該ステップと、
前記第２のブロックの符号化用に与える新たな限界を設定するための量によって、前記限界を増加させるステップと、
前記カウントを前記第２のブロックのランレングス符号化中に増加するステップであって、前記第２のブロックの前記ランレングス符号化を、前記カウントが前記新たな限界に到達した場合に、終了する、該ステップと
を更に含む、請求項１に記載の方法。
【請求項５】
前記量が、前記第２の位置に応じて決定される、請求項４に記載の方法。
【請求項６】
前記カウントに対する第１の閾値を特定するステップを更に含み、
該第１の閾値が前記限界までの余裕を設け、
前記第１の閾値に到達した場合に、第２の閾値を充足しない変換量子化値が、符号化されない、
請求項１に記載の方法。
【請求項７】
前記第２の閾値が前記変換量子化値の大きさ適用され、
前記第２の閾値を充足しない変換量子化値がゼロにセットされる、
請求項６に記載の方法。
【請求項８】
前記第２の閾値が前記ランレングス符号化中に変更される、請求項６に記載の方法。
【請求項９】
前記第１のブロックが、前記画像内の第１の位置に対応し、
前記第１のブロックが、画像データの複数のブロックのうちの一つのブロックであって、前記第１の位置に対応しており、
前記複数のブロックにおける各ブロックのランレングス符号化中に符号化されるビット数には、それぞれの限界が課せられている、
請求項１に記載の方法。
【請求項１０】
非圧縮の画像データのブロックを受け取るステップと、
前記非圧縮の画像データを、離散コサイン変換を使用して変換して、変換データを生成するステップと、
前記変換データを量子化して、変換量子化データを生成するステップと、
を更に含む、請求項１に記載の方法。
【請求項１１】
変換量子化データをもつ第１の複数のブロックを備える画像データを圧縮する方法であって、
前記第１の複数のブロックのうち第１のブロックに第１の割当量を割り当てるステップであって、前記第１の割当量が、前記第１のブロックの符号化に利用可能なビット数の限界を構成する、該ステップと、
前記第１のブロックを符号化するステップであって、前記第１のブロックの前記符号化は、前記第１のブロックに割り当てられた第１の割当量を超過しない場合に、継続し、その他の場合に、前記第１のブロックの前記符号化が停止する、該ステップと、
を含む方法。
【請求項１２】
前記第１のブロックの前記符号化後に残る第１の割当量の一部を、前記第１の複数のブロックのうちの第２のブロックに割り当てられている第２の割当量に加算するステップを更に含む、請求項１１に記載の方法。
【請求項１３】
前記第１のブロックが複数の変換量子化値を含み、前記変換量子化値の各々がそれぞれのビット数によって表現され、
前記符号化するステップが、
変換量子化値を選択するステップと、
前記変換量子化値に関連したビット数によって前記第１の割当量を減じる工程と、
を更に含む、請求項１１に記載の方法。
【請求項１４】
前記第１の割当量の範囲内の第１の閾値を特定するステップを更に含み、
第２の閾値を充足しない変換量子化値は、前記第１の閾値に到達しない場合に、前記ランレングス符号化中に選択されない、
請求項１３に記載の方法。
【請求項１５】
前記第２の閾値が前記変換量子化値の大きさに対応し、
前記第２の閾値を充足しない変換量子化値がゼロにセットされる、
請求項１４に記載の方法。
【請求項１６】
前記変換量子化値の大きさが前記第２の閾値と対照して測定され、
前記第２の閾値を充足しない変換量子化値がゼロにセットされる、
請求項１４に記載の方法。
【請求項１７】
前記符号化中に前記第２の閾値を変更するステップを更に含む、請求項１４に記載の方法。
【請求項１８】
前記第１のブロックが画像内のある位置に対応し、前記第１の割当量が前記位置に対応する値を有する、請求項１１に記載の方法。
【請求項１９】
前記第１のブロックが、画像内のある位置に対応し、
前記第１のブロックが、第２の複数のブロックのうちの一つのブロックであり、前記位置に対応しており、
前記第２の複数のブロックにおける各ブロックには、符号化中にそれぞれの割当量が課せられる、
請求項１１に記載の方法。
【請求項２０】
メモリと、
画像を圧縮する方法を実行するためのプロセッサと、
を備えるシステムであって、
前記方法が、
画像データ内の第１のブロックに関連する第１の複数の変換量子化値をアクセスするステップであって、前記第１のブロックが前記画像内の第１の位置に対応しており、前記値の各々が幾つかのビットで表される、該ステップと、
前記第１のブロックのランレングス符号化中に符号化されたビットの数のカウントを保持するステップであって、前記第１のブロックの前記ランレングス符号化は、前記カウントが限界に到達した場合に、終了する、該ステップと
を含む、
システム。
【請求項２１】
前記限界が、前記第１の位置に応じて決定される値を有する、請求項２０に記載のシステム。
【請求項２２】
前記限界が、前記画像内の第２の位置に対応する第２のブロックのデータを符号化するために増加される、請求項２０に記載のシステム。
【請求項２３】
前記方法が、
第２のブロックの画像データに関連する第２の複数の変換量子化値にアクセスするステップであって、該第２のブロックが、前記画像内の第２の位置に対応する、該ステップと、
前記第２のブロックの符号化用に与える新たな限界を設定するための量によって、前記限界を増加させるステップと、
前記カウントを前記第２のブロックのランレングス符号化中に増加するステップであって、前記第２のブロックの前記ランレングス符号化を、前記カウントが前記新たな限界に到達した場合に、終了する、該ステップと
を更に含む、
請求項２０に記載のシステム。
【請求項２４】
前記量が、前記第２の位置に応じて決定される、請求項２３に記載のシステム。
【請求項２５】
前記方法が、前記カウントに対する第１の閾値を特定するステップを更に含み、
該第１の閾値が前記限界までの余裕を設け、
前記第１の閾値に到達した場合に、第２の閾値を充足しない変換量子化値が、符号化されない、
請求項２０に記載のシステム。
【請求項２６】
前記第２の閾値が前記変換量子化値の大きさ適用され、
前記第２の閾値を充足しない変換量子化値がゼロにセットされる、
請求項２５に記載のシステム。
【請求項２７】
前記第２の閾値が前記ランレングス符号化中に変更される、請求項２５に記載のシステム。
【請求項２８】
前記第１のブロックが、前記画像内の第１の位置に対応し、
前記第１のブロックが、画像データの複数のブロックのうちの一つのブロックであって、前記第１の位置に対応しており、
前記複数のブロックにおける各ブロックのランレングス符号化中に符号化されたビット数には、それぞれの限界が課せられる、
請求項２０に記載のシステム。
【発明の詳細な説明】
【分野】
【０００１】
[001]本発明の実施の形態は、広く画像圧縮に関するものである。
【背景技術】
【０００２】
[002]画像データを圧縮（符号化）して、画像の忠実性に著しい影響を与えることなく、画像に関連したデータの量を削減することが可能である。ＪＰＥＧ（ジョイント・フォトグラフィック・エキスパート・グループ）圧縮標準のような画像圧縮標準は、画像データ量の削減機能に優れる。
【０００３】
[003]ＪＰＥＧ符号化では、入力画像が、マクロブロックとも呼ばれるＭＣＵ（マクロコードユニット又は最小符号化ユニット）に分解される。各ＭＣＵは、通常は８×８個の値からなる配列である多数のブロックを含む。ブロックは、個別の画像、又は、画像のカラー成分のそれぞれと関連付けられる。例えば、ＭＣＵは、輝度ブロック（例えば、Ｙブロック）と２個の色差ブロック（例えば、Ｕブロック及びＶブロック）とを含む。
【０００４】
[004]離散コサイン変換（ＤＣＴ）が実行され、各ブロックが（ＤＣＴ係数と呼ばれる）周波数空間に変換される。通常、大部分の画像は、僅かな高周波情報しか含まないので、変換された画像データの大部分は低周波数成分に集中する。８×８のブロック毎に、６４個の係数（１個の「ＤＣ」係数と６３個の「ＡＣ」係数）が生成される。ＤＣＴ変換自体はデータの量を削減しない。
【０００５】
[005]量子化では、周波数情報の一部が本質的に廃棄されて、より少ないビットの使用で画像を記述することができる。例えば、画素が（例えば、最明から最暗までの）２５６個の彩色のレベルをとり得るものとする。したがって、量子化の前に、各レベルは、固有の８ビットの組み合わせによって識別されるであろう。しかしながら、量子化を使用すると、２５６個のとり得るレベルは、１６レベル毎の１６ステップに量子化され、各ステップが僅か４ビットの固有の組み合わせによって特定できる。
【０００６】
[006]低周波ＤＣＴ係数は、比較的多数のビットを使用してより離散的に量子化されるが、高周波ＤＣＴ係数は比較的少数のビットを使用してより粗い基準で量子化される。このように、低周波係数は、前述の通り、それぞれが４ビットを使用して表現された１６ステップに量子化され、高周波数係数は、それぞれが１ビットによって表現された２個のステップに量子化される。
【０００７】
[007]量子化ステップに適用されるＤＣＴ係数は、量子化テーブルと称する８×８の配列に倣って配列され、量子化テーブル内のエントリーがＤＣＴ係数の配列内の位置に一致するようになる。量子化テーブルは、量子化ステップのサイズを指定するので、圧縮の量（「圧縮率」）を左右する。量子化ステップが大きくなると、圧縮率が大きくなるが、再現された（伸長され、又は、復号された）画像の品質に相応の低下が生じる。逆に、量子化ステップが小さくなると、圧縮されていないデータがより密に表現され、これによって、再現された画像の品質は向上するが、圧縮率が低下する。
【０００８】
[008]量子化後、圧縮プロセスは、量子化されたデータを符号化し、ビットストリームにシリアル化するため、ランレングス符号化（例えば、ハフマン符号化）で終了する。（ビット又はバイトで測定された）ビットストリームのサイズは量子化の量に応じて変化し、画像データにも左右される。
【０００９】
[009]圧縮方式の望ましい特長は、圧縮率の制御（「レート制御」と呼ばれる）である。レート制御は、目標圧縮率が指定され、画像データが目標圧縮率に応じて圧縮されるときに、結果として得られるビットストリームの長さが目標サイズ以下であることを意味する。適切なレート制御を用いれば、圧縮データの必要量が大まかに分かるので、圧縮データのためのファイル空間を効率的に割り付けたり、又は、圧縮されたデータを転送するために帯域幅を割り付けたりすることが可能である。他の方法では、過度に小さいファイル空間が割り付けられた場合に、圧縮データが、割り付けられたファイル空間に適合しないか、又は、利用可能な転送帯域幅を超えることがある。
【００１０】
[010]上述の通り、圧縮率及び出力品質（例えば、再現画像の品質）は、量子化値を変化させることによって制御される。ＪＰＥＧ符号化では、量子化値は符号化に先行して選択され、１組の値が画像全体に適用される。しかし、（圧縮されていない）入力データ量と選択された量子化値の組とに対して、（圧縮された）出力データ量を正確に予測することは不可能である。実際、出力ビットストリームのサイズは画像間で著しく変化し、最悪の場合には、入力ビットストリームより大きくなることさえある。上述したように、圧縮されたデータ量が過大なために割り付けられたファイル空間に適切に収まらないこと、又は、所与の割り付けられた転送帯域幅で転送できないことがあるので、この出力ビットストリームのサイズの不確定性は問題である。
【００１１】
[011]圧縮されたデータ量が過剰な場合、量子化値の組が新たに選択され、データが再び圧縮される。そのプロセスは、目標圧縮率（例えば、目標ビットストリーム又はファイルサイズ）が達成されるまで繰り返される。このように、従来の技術は、複数回の反復を必要とし、符号化時間と計算リソース（電力、メモリ、プロセッササイクルなど）利用の両方を増加させる。目標ビットストリーム又はファイルサイズを超過する危険性は、大きな量子化値の選択で小さくなるが、これは再現された画像の品質を過度に低下させる犠牲をもたらす。
【概要】
【００１２】
[012]したがって、画像データを目標圧縮率まで効率的に圧縮できるシステム及び／又は方法が有利であろう。本発明による実施形態はこの利点及びその他の利点を提供する。
【００１３】
[013]本発明のある実施の形態では、限界又は割当量が、変換され量子化された画像データの各ブロック（例えば、各輝度ブロックと各色差ブロック）に割り当てられる。この実施の形態では、割当量のサイズは、ブロックが関連付けられた画像内の位置に依存する。割当量はブロック毎に同じであっても異なっていてもよい。ある実施の形態では、全割当量の合計は目標ビットストリーム又はファイルのサイズを超えない。
【００１４】
[014]ある実施の形態では、ブロックにおいて変換され量子化された画像データのランレングス符号化中に、符号化される（例えば、ビットストリームにシリアル化される）ビット数がカウントされる。カウントがブロック用に指定された限界に到達したとき、そのブロックの符号化が終了する。すなわち、ランレングス符号化されていない変換量子化（変換され量子化された）値は、ブロックが完全に符号化される前に割当量が消費された場合に、エンド・オブ・ブロック・コードを強制することにより本質的には廃棄される。
【００１５】
[015]別の実施の形態では、ブロックがその全割当量を消費することなく符号化される場合に、その割当量の残余部分は別のブロックの割当量に加算される。
【００１６】
[016]更に別の実施の形態では、第１の閾値が各割当量の範囲内で定められる。第１の閾値は、割当量によって課された限界までの余裕を基本的に設ける。このような実施の形態では、第１の閾値に到達した場合、第２の閾値を充足しない残りの（例えば、未符号化の）変換量子化値はゼロに設定される（事実上、それらは廃棄される）。第２の閾値は、変換量子化値の大きさに関連付けられる。第１の閾値及び第２の閾値の値はプログラム可能であり、符号化の途中で変更されることがある。
【００１７】
[017]要約すると、本発明の実施の形態によれば、レート制御は、画像データのブロックの間に分配され、ブロック単位で課された割当量を設定することにより効率的に達成される。ある実施の形態では、ブロック内の変換量子化値であって、後にランレングス符号化される値であり、且つ、通常は画像忠実性にあまり寄与しない値に対応する当該値が、廃棄されて（符号化されず）、画像忠実性を著しく低下させることなく圧縮データの量が削減される。別の実施の形態では、「より小さな」変換量子化値（例えば、上述した第２の閾値を充足しない値）であって、通常は画像忠実性に著しく寄与することがない当該値が、廃棄されて（符号化されず）、同様に、画像忠実性を著しく低下させることなく圧縮されたデータの量が削減される。
【００１８】
[018]上述の目的及び利点は、本発明の多様な実施の形態のその他の目的及び利点と共に、種々の図面に示された以下の実施の形態の詳細な説明を読むことによって、当業者によって理解されるであろう。
【００１９】
[019]添付の図面は、本明細書に組み込まれ、また、本明細書の一部を形成するものであり、本発明の実施形態を明らかにするものであり、以下の説明と共に、本発明の原理を説明するために役立つものである。
【００２０】
[030]以下の説明において参照される図面は、特に断らない限り、正しい縮尺で描かれていないことを理解すべきである。
【発明の詳細な説明】
【００２１】
[031]本発明の種々の実施の形態を詳細に参照する。これら実施の形態の例は、添付図面に示されている。本発明をこれら実施の形態に関連して説明するが、これら実施の形態は本発明を当該実施の形態に限定することを意図していないことが理解されよう。一方、本発明は、特許請求の範囲に規定される本発明の精神と範囲に包含される代替物、改良物、及び均等物を網羅することが意図されている。さらに、以下の本発明の詳細な説明には、多数の特定の詳細が本発明の十分な理解が得られるように記載してある。しかし、本発明はこれらの特定の詳細な説明が無くとも実施され得ることが理解されよう。別の例では、周知の方法、手順、コンポーネント及び回路は、本発明の態様を不必要に曖昧にしないよう、詳細には記載しない。
【００２２】
[032]以下の詳細な説明の幾つかの部分は、コンピュータメモリ内のデータビットの演算についての手順、論理ブロック、処理、及び、その他の記号表現の観点から提示されている。これらの説明及び表現は、データ処理技術における当業者が自分の業績を他の当業者へ最も効果的に伝えるため使用する手段である。本明細書における手順、論路ブロック、プロセスなどは、所望の結果を導くステップ又は命令の首尾一貫したシーケンスであると考えられる。ステップは、物理量の物理的な操作を利用するものである。通常は、これらの量は、コンピュータシステムにおける格納、転送、結合、比較、及び、その他の操作可能な電気又は磁気信号の形式をとるが、必ずしもそうとは限らない。主として、一般的な用法の理由で、これらの信号をトランザクション、ビット、値、要素、シンボル、文字、フラグメント、画素などのように称することが、時には便利であることがわかっている。
【００２３】
[033]しかし、これら用語や類似した用語の全ては、適切な物理量と関連付けられるべきであり、これらの量に適用される便利なラベルに過ぎないということを念頭に置くべきである。特に断らない限り、以下の説明から明らかなように、本発明の全体を通して、「アクセス」、「保持」、「カウント」、「圧縮」、「伸長」、「符号化」、「復号化」、「増加」、「終了」、「変更」、「変換」、「量子化」、「受信」、「割当」、「選択」、「削減」などのような用語を利用した説明は、コンピュータシステム又は類似の電子計算装置の動作及びプロセス（例えば、図７及び図８のそれぞれのフローチャート７００及び８００）について言及していることが理解できる。コンピュータシステム又は類似の電子計算装置は、コンピュータシステムのメモリ、レジスタ、若しくは、その他の情報記憶装置、伝送装置、又は、表示装置内で物理的（電子）量として表現されたデータを操作し変換する。本発明は、他のコンピュータシステムと共に使用するのに十分適している。
【００２４】
[034]図１Ａは、本発明に係る実施の形態を実施し得るシステム１００のブロック図である。システム１００は、本発明による実施の形態のある機能を実施する実行プラットフォームのコンポーネントを示している。図１Ａに示すように、システム１００は、ホストインターフェイス１０１を介してグラフィックスプロセッサ１０５に接続されたマイクロプロセッサ１０２を備えている。ホストインターフェイス１０１は、マイクロプロセッサ１０２とグラフィックスプロセッサ１０５の間で渡されるデータ及びコマンドをそれぞれのフォーマットに変換する。マイクロプロセッサ１０２とグラフィックスプロセッサ１０５の両者は、メモリコントローラ１０６を介してメモリ１０７に接続されている。システム１００の実施の形態においては、メモリ１０７は共有メモリであり、そのためにメモリ１０７はマイクロプロセッサ１０２とグラフィックスプロセッサ１０５の両方のための命令及びデータを記憶する。共有メモリ１０７へのアクセスはメモリコントローラ１０６を経由する。共有メモリ１０６はまた、接続されたディスプレイ１０８を駆動する画素データを記憶するビデオフレームバッファを備えている。
【００２５】
[035]上述したように、本発明のあるプロセス及びステップは、一実施例では、一連の命令（例えば、ソフトウェアプログラム）として実現されており、当該一連の命令は、コンピュータシステム（例えば、システム１００）のコンピュータ読み取り可能なメモリ（例えば、メモリ１０７）内に存在し、システム１００のマイクロプロセッサ１０２及びグラフィックスプロセッサ１０５によって実行される。実行時には、命令は、システム１００に、後述されるような本発明の実施の形態の機能を実施させる。別の実施の形態では、本発明のあるプロセス及びステップは、ハードウェアで（例えば、グラフィックスプロセッサ１０５を使用して）実現される。
【００２６】
[036]さらに、図１Ａのコンポーネントは、別個のコンポーネントとして表されているが、幾つかのコンポーネントは、最新の半導体製造プロセスによって提供される高レベルの集積化を利用して構成される単一の集積回路デバイス（例えば、単一の集積回路ダイ）として実装可能である。例えば、ある実施の形態では、マイクロプロセッサ１０２、ホストインターフェイス１０１、グラフィックスプロセッサ１０５、及び、メモリコントローラ１０６は、単一の集積回路ダイとして製造される。
【００２７】
[0037]図１Ｂは本発明の代替的な実施の形態に係るシステム１２０を示している。システム１２０は、図１Ａのシステム１００と略類似したものである。しかしながら、システム１２０は、専用システムメモリ１２７を有するマイクロプロセッサ１０２と、専用グラフィックスメモリ１２６を有するグラフィックスプロセッサ１０５とを使用している。システム１２０において、ある実施の形態では、システムメモリ１２７はマイクロプロセッサ１０２上で実行するプロセス／スレッド用の命令及びデータを記憶しており、グラフィックスメモリ１２６はグラフィックスプロセッサ１０５上で実行するプロセス／スレッド用の命令及びデータを記憶している。グラフィックスメモリ１２６は、フレームバッファ内にディスプレイ１０８を駆動する画素データを記憶している。図１Ａのシステム１００と同様に、システム１２０の１個以上のコンポーネントが、単一の集積回路ダイとして集積化されていてもよい。
【００２８】
[038]図２は、本発明のある実施の形態に係るデータ符号化プロセス２２２及びデータ復号プロセス２２４におけるデータの流れを示すデータフロー図２００である。符号化プロセス２２２は、後により完全に説明する符号化方式を使用してデータ２２１を圧縮（符号化）する。図２の復号プロセス２２４は、圧縮データ２２３を伸長（再構成）して、再現データ２２５を生成する。重要な点は、本発明の実施の形態によれば、圧縮データ２２３の量が、後により十分に説明されるように、目標ファイルの中に収まるか、又は、利用可能な転送帯域幅を超えないことである。圧縮データ２２３は、その後に、取り出され、デコーダへストリーム化して送られる。或いは、圧縮データ２２３は、記憶するのではなく、又は、記憶と並行して、符号化されるにつれてデコーダへストリームかして送られる。
【００２９】
[039]図３は、本発明のある実施の形態に係る符号化プロセス２２２におけるステップを示すデータフロー図である。ある実施の形態では、符号化プロセス２２２が、実質的にＪＰＥＧに準拠する圧縮方式を使用して実施されるが、本発明はそれに限定されるものではない。
【００３０】
[040]符号化プロセス２２２は、離散コサイン変換（ＤＣＴ）３３１、量子化３３２、及び、ランレングス符号化３３３を含んでいる。ＤＣＴ３３１では、各ブロックのデータ２２１（図２）が、ＤＣＴ係数に変換される。各８×８のブロックのデータについて、６４個のＤＣＴ係数（１個のＤＣ係数及び６３個のＡＣ係数）が生成される。
【００３１】
[041]量子化３３２（図３）では、一部の周波数情報を本質的に廃棄して、より少ないビットの使用で画像を記述することができる。低周波ＤＣＴ係数は、比較的多数のビットを使用してより離散的に量子化され、高周波ＤＣＴ係数は比較的少数のビットを使用してより粗い基準で量子化される。
【００３２】
[042]量子化３３２の後、ランレングス符号化３３３（例えば、ハフマン符号化）が実行されて、量子化されたデータが符号化され、シリアル化される。ランレングス符号化中に、頻繁に繰り返される文字列は、最もよく現れる文字列がより短いコードを獲得するように、コードで置き換えられる。符号化されたデータは、ファイルに格納され、続いてファイルから読み取られ、デコーダへストリーム化して送られる。或いは、符号化されたデータは、データが符号化され次第、デコーダへストリーム化して送られる。
【００３３】
[043]重要な点は、本発明の実施の形態によれば、レート制御（例えば、目標ファイル又はビットストリームサイズ）がより確実に達成され、その結果、量子化３３２とランレングス符号化３３３とを繰り返す反復回数の削減が期待されることである。
【００３４】
[044]図４は、本発明のある実施の形態に係る符号化プロセス（例えば、図２及び図３の符号化プロセス２２２）におけるステップを示すデータフロー図である。図４の実施例では、画像４０１は、画像部４１０によって表された多数の画像部を有している。ある実施の形態では、画像部４１０は、多数のデータのブロックを含むマクロブロック、又はＭＣＵによって表現される。図４の実施例では、Ｙブロック４２０（例えば、輝度ブロック）と、Ｕブロック４２１及びＶブロック４２２（例えば、色差ブロック）が、画像部４１０に関連付けられている。しかし、本発明は、ＹＵＶフォーマットを使用することに制限されるものではない。その代わりに、例えば、ＲＧＢ（赤、緑、青）フォーマット、又は、ＣＭＹＫ（シアン、マゼンタ、イエロー、ブラック）フォーマットが使用されてもよい
【００３５】
[045]本実施の形態では、ブロック４２０、４２１及び４２２の各々は、８×８の配列のデータとして構成されている。一例として、Ｙブロック４２２を使用すると、各ブロック内のデータは、８×８の配列のＤＣＴ係数（ブロック４３１）に変換される。変換されたブロック４３１において、第１の値（例えば、ブロック４３１の左上隅にある値）はＤＣ値と呼ばれる（この値が平均輝度を設定する）。ブロック４３１内の残りの値はＡＣ値と呼ばれる。ＡＣ値はＤＣ値からの変動を表している。一般に、ブロック４３１内の値はＤＣＴ係数と呼ばれる。
【００３６】
[046]本実施の形態においては、ブロック４３１内のＤＣＴ係数が量子化される。ブロック４３２は、量子化されたＤＣＴ係数を示している。ブロック４３２内の変換量子化値は、次に、例えば、ランレングス符号化を使用して符号化され、ビットストリームにシリアル化される。結果として得られたデータは、次に、ファイルに書き込まれるか、又は、デコーダへストリーム化して送られる。
【００３７】
[047]ある実施の形態では、ブロック４３２内の変換され量子化されたデータは、図４に示すように、ジグザグ形式で読み取られる、すなわち走査される。しかしながら、本発明はそれに限定されるものではない。例えば、ブロック４３２内のデータは、代わりに、一行毎、又は、一列毎の読み取りが可能である。
【００３８】
[048]本発明の実施の形態によれば、割当量又は限界が、各ブロックに割り当てられる。割当量は、ブロック４３２から符号化可能なビット数を制限する。割当量又は限界は、ブロック４３２内の変換され量子化されたデータのランレングス符号化中に強制的に課される。ある実施の形態では、ブロック４３２内の値が読み取られ、符号化されるときに、各値と関連したビット数がカウントされる。そのカウントが割当量の限界に達したときに、ブロック４３２の符号化が終了する。ある実施の形態では、エンド・オブ・ブロック・コードが、ブロック４３２から符号化されたデータの最後を指示するためにビットストリームに挿入され、ブロック４３２内の残りの（符号化されていない）値が廃棄される。
【００３９】
[049]割当量は、特定の画像コンポーネントと関連する全ブロックに対して同一であってもよく、或いは、ブロック毎に変化してもよい。したがって、例えば、すべてのＹブロックは同じ割当量を有していてもよく、又は、異なる割当量を有していてもよい。また、特定のＭＣＵ又は画像部と関連した各ブロックが、同じ割当量を有していてもよく、又は、異なる割当量を有していてもよい。すなわち、例えば、Ｙブロック４２０、Ｕブロック４２１、及びＶブロック４２２は、全てが同じ画像部４１０と関連しているが、異なる割当量を有していてもよく、同じ割当量を有していてもよい。
【００４０】
[050]画像４０１のある部分と関連したブロックに、その画像の他の部分と関連したブロックに割り当てられた割当量より多い割当量が、割り当てられることが望ましいことがある。すなわち、画像４０１には、画像の他の領域より重要であると考えられる１個以上の領域が存在することがあり、比較的重要な領域に関連したブロックに、より多くの割当量を割り当てることが望ましい。例えば、肖像画像では、再現画像が、被写体の周辺の画像部分（例えば、特に、画像の境界）に余り注意が払われず、（典型的には画像の中心方向へ位置している）当該肖像画像の被写体をより正確に描写することが望ましい。図６Ａに関連してより詳細に後述するように、ユーザは、画像の中心又は（必ずしも中心ではない）その他の焦点を定義することができ、ブロックにはその点からの距離に応じた割当量が割り当てられる。
【００４１】
[051]図４の画像４０１全体を符号化するため利用可能な総割当量は、目標ファイル又はビットストリームのサイズ以下である。すなわち、ブロックに割り当てられた（ビット単位の）個別の割当量の累計は、目標ファイル又はビットストリームサイズ以下である。したがって、各ブロックはブロックそれぞれの割当量の範囲内で符号化されるので、画像４０１が圧縮されるときに、符号化された画像データはその画像用に割り付けられた記憶空間の量に適合する。
【００４２】
[052]本発明に係る実施の形態は、少なくとも幾つかの異なるアプローチを使用して実施することができる。一つのアプローチでは、ブロック毎の割当量がブロック毎に個別に課せられる。すなわち、ブロックには割当量が割り当てられ、そのブロックのランレングス符号化中に、符号化されるビット数がそのブロックだけに関してカウントされる。ブロックのランレングス符号化は、そのブロックのデータの全部が符号化されるか、又は、割当量限界に達するまで継続する。
【００４３】
[053]別のアプローチでは、累計カウントがブロックと次のブロックの間で保持され、割当量はそれに応じて増加される。第１のブロック内のデータがランレングス符号化されるときに、符号化されているビット数がカウントされる。第１のブロックのランレングス符号化は、データの全部がシリアル化されるか、又は、割当量限界に達するまで継続する。第１のブロックのランレングス符号化が終了すると、割当量は符号化される第２のブロックに割り当たられた割当量だけ増加される。第２のブロック内のデータがランレングス符号化されるときに、第１のブロックのカウントが中止されたところから継続する第２のブロック用のカウントを用いて、符号化されているビット数がカウントされる。
【００４４】
[054]上記のアプローチの何れかにおいて、ブロックの割当量が完全には消費されないことがある。すなわち、ブロック内の変換量子化値の全てが、割当量限界に達する前にランレングス符号化される状況がある。
【００４５】
[055]上記のアプローチのうちの後者では、使用されなかった第１のブロックの割当量の如何なる量も、第２のブロックのランレングス符号化中に適用される割当量へ自動的に繰り越される。
【００４６】
[056]上記のアプローチのうちの前者では、あるブロックの割当量の残りの部分を使用して、別のブロックの割当量を増加させることができる。例えば、あるブロックのランレングス符号化が終了すると、そのブロックの割当量の未使用部分を符号化すべき次のブロックの割当量に加算することができる。或いは、あるブロックの割当量の未使用部分を、その代わりに、蓄えておき、符号化する次のブロックに限らず他のブロックの何れかに与えることができる。例えば、上述したように、画像の一部分が別の部分より重要とみなされ得る場合に、その部分が、画像のその他の部分より多くの割当量を保有することが望ましいことがある。したがって、あるブロックからの割当量の未使用部分を、画像の比較的より重要な部分に関連したブロックの割当量に加算することができる。同様に、未使用割当量部を、その代わりに、予備として累積し、より重要であると考えられるブロックに、必要に応じて当該予備を利用することが可能である。
【００４７】
[057]あるタイプの画像コンポーネントに関連したブロックからの未使用割当量を、別のタイプの画像コンポーネントに関連したブロックの割当量に適用することができることに注意されたい。すなわち、例えば、Ｙブロックの符号化後に残存する割当量を、別のＹブロックの割当量、又は、Ｕブロック若しくはＶブロックの割当量に加算することができる。
【００４８】
[058]図５は、本発明のある実施の形態に係るレート制御を達成するため使用される割当量の実施例のグラフである。図５の実施例は、上述のアプローチに対応するものであり、当該アプローチでは、累計カウントが、あるブロックから次のブロックへと保持され、割当量がそれに応じて増加する。したがって、図５に示す（符号化されたビット数に関して表現された）割当量は、あるブロックから次のブロックへと累積する累計値である。実際上、ブロック１に割り当てられた割当量はＢ１であり、ブロック２に割り当てられた割当量はＢ２−Ｂ１であり、ブロック３に割り当てられた割当量はＢ３−Ｂ２であり、以下同様である。
【００４９】
[059]図５では、各ブロックに同じ割当量が割り当てられていることを示しているように見える。しかしながら、上述したように、本発明はそれに限定されるものではなく、ブロックには異なる割当量が割り当て可能である。
【００５０】
[060]ある実施の形態では、閾値が各ブロックの割当量の範囲内で設定される。図５の実施例では、ブロック１の割当量は、ビット単位で測定した場合に割当量限界Ｂ１より小さいスレッショルドＴ１を有する。閾値は、割当量限界までの余裕を本質的に定める。閾値は、符号化の途中で変更されることがあるプログラム可能な値である。
【００５１】
[061]ある実施の形態では、ブロックのランレングス符号化中に、符号化されたビット数が割当量の閾値（「第１の閾値」）に到達したときに、そのブロックの残りの符号化の際に、第２の閾値より「小さな」変換量子化値は符号化されない。このような実施の形態では、第２の閾値は、変換量子化値のそれぞれの大きさに対応する。したがって、例えば、第２の閾値によって指定された大きさより小さな変換量子化値は、符号化されたビット数が第１の閾値を超える場合に、符号化されない（例えば、その値がゼロに設定される）。或いは、第２の閾値を、変換量子化値を符号化するのに必要なビット数に対応させることも可能である。この場合には、例えば、第２の閾値を充足しないビット長を有する変換量子化値は、符号化されたビット数が第１の閾値を超える場合に、符号化されない。
【００５２】
[062]符号化されているブロック内の値の大きさに適用される第２の閾値はプログラム可能な値である。第２の閾値は、ブロックをランレングス符号化する途中で変更されることがある。例えば、第１の（割当量）閾値に達すると、第２の閾値を、符号化されたビット数が割当量限界に接近するにつれて増加させて、ブロック内の徐々に大きくなる変換量子化値を符号化せず、符号化前の値の中で最大の値用に割当量を残すことができる。或いは、第１の閾値に達した後に、第２の閾値を、割当量が予想ほど急速に消費されていない場合に、減少させることができる。第２の閾値値はまた、符号化が、あるブロックから次のブロックへ進むときに、変化させることが可能である。したがって、第２の閾値は、あるブロックと次のブロックとの間で異なることがある。
【００５３】
[063]図６Ａは、本発明のある実施の形態に従って圧縮することができる画像６０１を示している。上述したように、画像６０１のある部分に関連したブロックには、画像６０１の他の部分に関連したブロックに割り当てられた割当量より多い割当量が割り当てられることが望ましい。すなわち、画像の他の領域より重要であると考えられる画像の１個以上の領域が存在することがあり、比較的より重要な領域に関連したブロックにより多くの割当量を割り当てることが望ましいことがある。
【００５４】
[064]ある実施の形態では、位置６１５は、恐らくユーザによって、画像６０１の内部に指定される。位置６１５は、最も重要であるとみなされる画像６０１の領域に対応する。位置６１５は、画像６０１の内部において任意に特定することができる。デフォルト位置を、画像６０１の中央に指定することも可能である。
【００５５】
[065]ある実施の形態では、ブロックに割り当てられる割当量は、画像６０１内部のブロック位置の関数となっている。このような実施の形態では、ブロックの位置はそのブロックと位置６１５との間の距離によって定義される。したがって、例えば、異なる割当量が、画像部６１０の範囲内のブロックと画像部６１１の範囲内のブロックに、画像部（ＭＣＵ）６１０から位置６１５までの距離と画像部（ＭＣＵ）６１１から位置６１５までの距離とにそれぞれ応じて、割り当てられる。図６Ａの実施例では、画像部６１１内のブロックには、画像部６１１が画像部６１０より位置６１５に近いので、より多い割当量が割り当てられる。
【００５６】
[066]画像部６１１から位置６１５までの距離は、例えば、次式によって与えられる。
距離＝ｓｑｒｔ［（ｘ−ｘｃ）２＋（ｙ−ｙｃ）２］
ここで、式中、（ｘｃ，ｙｃ）は位置６１５に関連した座標であり、（ｘ，ｙ）は画像部６１１に関連した座標であり、「ｓｑｒｔ」は平方根を示す。そして、（ｘ，ｙ）にあるブロック用の割当量は、次式によって割り当てられる。
割当量＝ａ−ｂ＊ｓｑｒｔ［（ｘ−ｘｃ）２＋（ｙ−ｙｃ）２］
ここで、式中「ａ」及び「ｂ」はプログラム可能な定数である。「ａ」及び「ｂ」の値は、正値が割当量用に計算されるように、選択することができる。
【００５７】
[067]距離の計算を簡略化すると、以下の式を代用することができる。
距離＝ｃ＊ａｂｓ（ｘ−ｘｃ）＋ｄ＊ａｂｓ（ｙ−ｙｃ）
ここで、式中「ａｂｓ」は絶対値を示し、「ｃ」及び「ｄ」はプログラム可能な定数である。そして、（ｘ，ｙ）にあるブロックの割当量は、次式を用いて割り当てることができる。
割当量＝ｅ−ｃ＊ａｂｓ（ｘ−ｘｃ）−ｄ＊ａｂｓ（ｙ−ｙｃ）
ここで、式中「ｅ」もまたプログラム可能な定数であり、「ｃ」、「ｄ」及び［ｅ］は、正値が割当量用に計算されるように、選択することができる。「ｃ」及び「ｄ」の値は画像６０１の形状に応じて選択し得る。例えば、「ｃ」及び「ｄ」は、正方形の画像では同じであるが、長方形の画像では異なる。
【００５８】
[068]様々な値の「ａ」、「ｂ」、「ｃ」、「ｄ」及び「ｅ」を、異なる画像コンポーネントに適用し得る。すなわち、例えば、Ｙブロックの「ａ」、「ｂ」、「ｃ」、「ｄ」及び「ｅ」の値は、Ｕブロック又はＶブロックの「ａ」、「ｂ」、「ｃ」、「ｄ」及び「ｅ」と異なっていてもよい。距離計算は、その他の方法も使用可能である。また、ブロックに割り当てられる割当量のサイズは、そのブロックに関連した画像部と位置６１５との間の距離以外の基準を使用して決定することができる。
【００５９】
[069]図６Ｂは、本発明のある実施の形態に係るレート制御を達成するため使用される割当量の実施例のグラフである。図６Ｂに示す割当量は、累計割当量の実施例である（本例では、割当量は、あるブロックから次のブロックへと累積する累計値である）。図６Ａの実施例では、画像部内のブロックに割り当たられた割当量は、そのブロックに関連した画像部と図６Ａの位置６１５間の距離の関数となっている。
【００６０】
[070]図６Ｂの例示の割当量は、図６Ａの行６２０に対応する。行６２０は、画像部（ＭＣＵ）１〜１１を含むが、画像内の行には任意の数の画像部が存在していてもよい。割当量が累計割当量であるので、行６２０の画像部１のブロックに関連した割当量の限界は、一般的に、行６２０より前に符号化された行末の累計割当量と、画像部１のブロックに割り当てられた割当量との和と等しい（画像６０１は１行ずつ符号化されると仮定する）。行６２０内の連続する各画像部に対する割当量は、その画像部と位置６１５の間の距離の関数によって定まる量によって増加する。したがって、図６Ｂに示すように、累計割当量は位置６１５に近づくにつれてより急な勾配を有し、位置６１５までの距離が増加するにつれて勾配はより緩やかになる。
【００６１】
[071]図７は、本発明のある実施の形態に係るデータ圧縮用のコンピュータで実施される方法のフローチャート７００である。図８は、本発明の別の実施の形態に係るデータ圧縮用のコンピュータで実施される方法のフローチャート８００である。特定のステップがフローチャート７００及び８００に開示されているが、このようなステップは例示的なものである。すなわち、本発明は、フローチャート７００及び８００に列挙された種々の他のステップ、又は、ステップの変形を実行するように適合される。フローチャート７００及び８００内のステップは提示された順番とは異なる順番で行われてもよく、当該ステップは必ずしも図示された順序で実行される必要がないことを理解されたい。
【００６２】
[072]まず、図７を参照する。フローチャート７００はステップ７０２で始まる。ステップ７０２において、変換量子化値のブロック（例えば、図４のブロック４３２）がアクセスされる。
【００６３】
[073]図７のステップ７０３において、ブロックの割当量が計算される。割当量は、このブロックに割り当てられた割当量を含み、本明細書に既に説明したように、先に符号化された別のブロックの割当量からの残りの部分を含むこともある。
【００６４】
[074]ある実施の形態では、ブロック内の値はランレングス符号化される。ステップ７０４において、ブロック内の値がアクセスされ、その値に関連したビット数がカウントされる。
【００６５】
[075]ステップ７０６において、ステップ７０４からのカウントを使用して、ブロックに割り当てられた割当量を超えたか否かが決定される。残っている割当量がない場合、又は、残りの割当量がステップ７０４においてアクセスされた値を符号化するために十分でない場合に、フローチャート７００はステップ７０７へ進む。他の場合には、フローチャート７００はステップ７０８へ進む。
【００６６】
[076]ステップ７０７においては、本実施の形態では、ブロック（例えば、図４のブロック４３２）内の残りの値は符号化されない。実際上、残りの値は、エンド・オブ・ブロック・コードを、符号化されたデータに挿入することによって廃棄される。フローチャート７００は次にステップ７１６へ進む。
【００６７】
[077]図７のステップ７０８においては、ある実施の形態では、割当量内の第１の閾値に到達又は超過したか否かに関する判断が成される。上述したように、第１の閾値は割当量の限界までの余裕を設ける。第１の閾値に到達又は超過していない場合には、フローチャート７００はステップ７１２へ進む。他の場合には、フローチャート７００はステップ７１０へ進む。
【００６８】
[078]ステップ７１０において、第２の閾値が充足されたか否かに関する決定が成される。上述したように、第２の閾値はステップ７０４においてアクセスされた値に関連したサイズ（例えば、大きさ又はビット数）に対応する。ステップ７０４においてアクセスされた値が第２の閾値を充足しない場合、フローチャート７００はステップ７１４へ進む。他の場合には、フローチャート７００はステップ７１２へ進む。
【００６９】
[079]ステップ７１２において、ステップ７０４でアクセスされた値（「処理対象の値」）が符号化され、符号化されたビット数がカウントされる。カウントは、処理対象の値に関連したビット数と、処理対象の値より前に符号化されたブロック内の他の値に関連したビット数とを含む。このカウントを上記のブロック７０６で使用して、十分な割当量がブロック内の次の値を符号化するために残っているか否かが判定される。
【００７０】
[080]ステップ７１４において、処理対象のブロック内で最後の値であるか否かに関する判定が行われる。最後の値ではない場合には、フローチャート７００はステップ７０４へ戻り、符号化プロセスがブロック内の新しい値に対して開始される。他の場合には、フローチャート７００はステップ７１６へ進む。
【００７１】
[081]ステップ７１６において、ブロックが符号化されるべき最後のブロックであるか否かに関する判定が行われる。最後のブロックである場合には、フローチャート７００は終了する。他の場合には、フローチャート７００はステップ７１８へ進む。
【００７２】
[082]ステップ７１８において、ブロックの符号化後に割当量が残っている場合には、割当量の残りの部分が、変換量子化データ値をもつ別のブロック、恐らくは、符号化される次のブロックに割り当てられる割当量に加算される。或いは、割当量の残りの部分が蓄えられ、必要に応じて後に使用される。処理対象のブロックの符号化はこのように終了し、フローチャート７００は、次のブロックの符号化のためにステップ７０２へ戻る。
【００７３】
[083]次に図８を参照する。ステップ８０２において、画像データの第１のブロック（例えば、図４のブロック４３２）に関連した第１の複数の変換量子化値がアクセスされる。第１のブロックは画像内部の第１の位置にある。
【００７４】
[084]図８のステップ８０４において、第１のブロックのランレングス符号化中に符号化されたビット数がカウントされる。
【００７５】
[085]ステップ８０６において、第１のブロックの符号化が、第１のブロックに適用された割当量の限界に到達するまで継続する。すなわち、第１のブロックのランレングス符号化は、カウントが第１のブロックに適用されている割当量限界に到達した場合に終了し、割当量の限界に到達しない場合には、データの第１のブロックは完全に符号化される。
【００７６】
[086]ステップ８１０において、第１のブロックの符号化が終了すると、画像データの第２のブロックに関連した第２の複数の変換量子化値がアクセスされる。第２のブロックは、画像内部の第２の位置にある。
【００７７】
[087]ステップ８１２においては、ステップ８０６において言及した割当量の限界が増加され、第２のブロックを符号化するための新しい限界が設定される。新しい限界は、第１のブロックの符号化中に消費されなかった割当量の部分を含むことに注意されたい。
【００７８】
[088]ステップ８１４においては、ステップ８０４で開始されたカウントが、第２のブロックをランレングス符号化する間、継続される。第２のブロックのランレングス符号化は、カウントが新しい限界に到達した場合に終了し、他の場合には、データの第２のブロックが完全に符号化されるまで継続する。フローチャート８００は、このようにして、符号化すべきデータの各ブロックに対して継続する。
【００７９】
[089]フローチャート８００によって説明した方法は、上述した本発明の他の特長を包含するように拡張可能であることを理解されたい。例えば、ブロック内の変換量子化値が符号化され、符号化されたビット数がカウントされるときに、（そのブロックに適用されている割当量の限界の範囲内の）第１の閾値と、（符号化されている値のサイズに対応する）第２の閾値とを、上述したように、適用することができる。
【００８０】
[090]要約すると、本発明の実施の形態は、不必要な反復なしに、且つ、画像忠実性の著しい低下なしに、目標ファイル又はビットストリームサイズに画像データを効率的に圧縮する方法及びシステムを提供する。ある実施の形態では、ブロック内の変換量子化値であって、後にランレングス符号化のプロセスで符号化される値であり、一般に画像忠実性に余り寄与しない値に対応する値は、廃棄され（符号化されず）、画像忠実性を著しく低下させることなく、圧縮されたデータの量が削減される。別の実施の形態では、一般的に画像忠実性に殆ど寄与しない「より小さな」変換量子化値（例えば、前述の第２の閾値を充足しない値）が、廃棄され（符号化されず）、同様に、画像忠実性を保持しつつ圧縮データの量が削減される。
【００８１】
[091]本発明に係る実施の形態は、ハードウェア、ソフトウェア、又は、それらの組み合わせで実施することが可能である。例えば、画像の符号化中に使用されるあるタイプの情報を記憶して、当該情報を、必要とされる反復の回数を削減することによりその後の符号化の効率を高めるために、その後の画像の符号化中に続いて使用することができる。
【００８２】
[092]ＪＰＥＧ符号化に関して説明したが、本発明はそれに限定されるものではない。例えば、本発明に係る実施の形態は、ＭＰＥＧ（モーション・ピクチャー・エキスパート・グループ）符号化にも適用可能である。
【００８３】
大まかに要約すると、本書は、画像を圧縮する方法及びシステムを開示するものである。画像データのブロックに関連した複数の変換量子化値がアクセスされる。そのブロックは画像内部の位置に対応しており、ブロックのランレングス符号化中に符号化されたビット数のカウントが行われる。ブロックのランレングス符号化は、カウントが限界に到達した場合に終了する。
【００８４】
[093]以上、本発明の実施の形態を説明した。本発明を特定の実施の形態において説明したが、本発明は、このような実施の形態によって制限されるものとして解釈されるべきでなく、特許請求の範囲にしたがって解釈されるべきであることを理解すべきである。
【図面の簡単な説明】
【００８５】
【図１Ａ】本発明に係る実施の形態が実施されるシステムの一実施例のブロック図である。
【図１Ｂ】本発明に係る実施の形態が実施されるシステムの別の実施例のブロック図である。
【図２】本発明のある実施の形態に係る符号化及び復号プロセスにおけるデータの流れを示すデータフロー図である。
【図３】本発明のある実施の形態に係る符号化プロセスにおけるステップを示すデータフロー図である。
【図４】本発明のある実施の形態に係る符号化プロセスにおけるステップを示すデータフロー図である。
【図５】本発明のある実施の形態によるレート制御を達成するために使用される割当量の実施例のグラフである。
【図６Ａ】本発明のある実施の形態に係る圧縮され得る画像の説明図である。
【図６Ｂ】本発明のある実施の形態に係るレート制御を達成するため使用される割当量の実施例のグラフである。
【図７】本発明のある実施の形態に係るデータ圧縮方法のフローチャートである。
【図８】本発明の別の実施の形態に係るデータ圧縮方法のフローチャートである。
【図１Ａ】
2008516532.tif 000003
【図１Ｂ】
2008516532.tif 000004
【図２】
2008516532.tif 000005
【図３】
2008516532.tif 000006
【図４】
2008516532.tif 000007
【図５】
2008516532.tif 000008
【図６Ａ】
2008516532.tif 000009
【図６Ｂ】
2008516532.tif 000010
【図７】
2008516532.tif 000011
【図８】
2008516532.tif 000012
【国際調査報告】
2008516532.tif 000013