(57)【要約】  【課題】量子化値を画像処理の単位で変更でき、また、量子化値の変更処理を簡単化する。  【解決手段】画像処理部１０１は、デジタル画像信号に対して、画像の拡大縮小処理等を行う。画像処理後の画像データがＤＣＴ部１０２、量子化部１０３可変長符号化／復号化部１０４によってＪＰＥＧ符号化される。符号１０５のデータの並びは、画像処理部１０１の処理によって規定されるものである。符号並べ替え・量子化テーブル調整部１０８により並べ替えを行い、符号１０９を出力する。符号１０９は、符号化フォーマット例えばＪＰＥＧで規定されている正規の処理方向でもって復号した場合に所望の画像が得られる。量子化値を調整するために、可変長符号置き換えテーブルによる符号の置き換えでもって、量子化値が相違する可変長符号同士の変換を行う。【選択図】図２
2009004878.tif 000002
【特許請求の範囲】
【請求項１】
画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化を行う画像処理方法において、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化ステップと、
上記画像処理部の処理単位の領域毎に量子化値を調整すると共に、上記画像処理部の処理方向から上記符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更ステップと
を有する画像処理方法。
【請求項２】
上記並べ替え・量子化値変更ステップは、少なくとも１つの符号は可変長符号と量子化値とから新たな量子化値に対応する可変長符号へ直接置き換えを行うことで量子化値を変更する請求項１記載の画像処理方法。
【請求項３】
上記係数データは、直流係数成分と交流係数成分とからなり、
上記符号化ステップは、上記直流係数成分を前値差分符号化する際に、上記正規の処理方向における前値との差分を符号化する請求項１記載の画像処理方法。
【請求項４】
上記直流係数成分の符号のみ可変長符号から直流係数成分値を求め、差分対象符号化単位の新たな量子化値による符号の復号値との差分を新たな量子化値で量子化、可変長符号化する請求項１記載の画像処理方法。
【請求項５】
上記正規の処理方向における前値を事前符号化によって求めると共に、事前符号化によって符号長を求め、上記符号長に基づいて量子化値の初期値を設定する請求項１記載の画像処理方法。
【請求項６】
画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化を行う画像処理方法をコンピュータによって実行させるプログラムにおいて、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化ステップと、
上記画像処理部の処理単位の領域毎に量子化値を調整すると共に、上記画像処理部の処理方向から上記符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更ステップと
を有する画像処理方法のプログラム。
【請求項７】
画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化を行う画像処理装置において、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化部と、
上記画像処理部の処理単位の領域毎に量子化値を調整すると共に、上記画像処理部の処理方向から上記符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更部と
を有する画像処理装置。
【請求項８】
撮像素子によって撮影された画像データに対して画像処理を行う画像処理部と、画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化する符号化部を有する撮像装置において、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化部と、
上記画像処理部の処理単位の領域毎に量子化値を調整すると共に、上記画像処理部の処理方向から上記符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更部と
を有する撮像装置。
【請求項９】
画像データを符号化部で所定の符号化単位で符号化を行う画像処理方法であって、
変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化ステップと、量子化値変更ステップとを有する画像処理方法において、
上記量子化値変更ステップは、少なくとも１つの符号は可変長符号と量子化値とから新たな量子化値に対応する可変長符号へ直接置き換えを行うことで量子化値を変更する画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像信号の圧縮等に適用可能な画像処理装置、画像処理方法および画像処理プログラム、並びに撮像装置に関する。
【背景技術】
【０００２】
画像の歪みを補正する処理、色収差を補正する処理、画像のサイズを拡大または縮小する処理等の画像処理がデジタルスチルカメラ等の撮像装置においてしばしばなされる。また、画像処理で発生した画像データをＪＰＥＧ（Joint Photographic Experts Group) 、ＭＰＥＧ(Moving Picture Experts Group Phase)等の圧縮符号化によって圧縮することが通常なされている。これらの圧縮符号化においては、マクロブロックと称される画像の単位で符号化を行うようにしている。
【０００３】
このように、画像処理の単位が整数個のマクロブロック、すなわち、符号化ブロックからなり、符号化ブロックの配列が符号化で規定されている順序と異なる場合には、後で符号化するデータの分をメモリに保管しておく必要がある。その結果、一時保管用のメモリが必要とされる問題がある。
【０００４】
上述したように、画像サイズ変換のような画像処理を行う場合に、圧縮符号化の符号化単位で画像データを切り出して符号化する時に、メモリからの読み出しを高速に行う必要が生じたり、大容量のメモリを必要とする問題が生じる。
【０００５】
このような高速読み出し処理および大容量メモリを必要とする問題点を解決することができる符号化装置が下記の特許文献１によって提案されている。
【０００６】
【特許文献１】特開２００６−２３８４０７号公報
【０００７】
かかる特許文献１に記載の符号化装置の処理の流れを図１８に示す。画像処理部１０１は、撮像素子からの撮像信号に基づいて形成されたデジタル画像信号に対して、画像の回転処理、リサイズと称される解像度の変換による画像の拡大縮小処理、トリミング処理等を施す。画像処理に適したブロックサイズによる画像処理単位、画像処理順序により、記憶媒体に記録された撮像結果を順次切り出して実行される。
【０００８】
画像処理部１０１からの画像データが（８×８）画素のブロック単位でＤＣＴ(Discrete Cosine Transform：離散コサイン変換) 部１０２において、空間領域から周波数領域へ変換される。ＤＣＴ部１０２からの係数データが量子化部１０３において量子化される。量子化部１０３の出力が可変長符号化部１０４に供給され、エントロピー符号化によって情報量が圧縮される。これらのＤＣＴ部１０２、量子化部１０３および可変長符号化部１０４によって、ＪＰＥＧ符号化装置が構成される。
【０００９】
可変長符号化部１０４の出力に得られる符号１０５のデータの並びは、画像処理部１０１の処理によって規定されるものである。これに対してＪＰＥＧの符号化処理は、マクロブロックによる符号化処理単位を順次ラスタ走査順に符号化処理することがフオーマットにより規定されている。したがって、画像処理の順序の並びを有する符号１０５を復号した場合に、所望の画像と異なった画像になってしまう。
【００１０】
この問題を解決するために、大容量のバッファメモリを使用しないで、符号並べ替え部１０６により並べ替えを行い、並べ替え後の符号１０７を出力する。符号１０７は、例えば記憶媒体に記録される。この符号１０７は、符号化フォーマット例えばＪＰＥＧで規定されている正規の処理方向でもって復号した場合に所望の画像が得られる。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上述した符号化方法において、量子化方法が所定のものである場合には、符号化中に符号１０７の符号量を制御することができない問題があった。例えばＪＰＥＧの場合では、量子化テーブルを可変することができないように規定されている。また、符号並べ替えによって符号量が変化するが、その変化を考慮して量子化テーブルを規定するものではなかった。さらに、符号量を制御するために、符号１０７を復号して再度符号化すると、処理時間が長くなったり、処理に必要なメモリ量が増加する問題があった。
【００１２】
したがって、この発明の目的は、量子化テーブルや量子化スケールを含めた量子化値が一つと規定されている場合でも、複数の量子化値を用いて符号量を細かく調整でき、また、復号および再符号化を行わないでも符号量の調整が可能で、さらに、並べ替えの処理と同時に符号量を調整することができる画像処理装置、画像処理方法および画像処理プログラム、並びに撮像装置を提供することにある。
【課題を解決するための手段】
【００１３】
上述した課題を解決するために、この発明は、画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化を行う画像処理方法において、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化ステップと、
画像処理部の処理単位の領域毎に量子化値を調整すると共に、画像処理部の処理方向から符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更ステップと
を有する画像処理方法である。
また、この発明は、画像データを符号化部で所定の符号化単位で符号化を行う画像処理方法であって、
変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化ステップと、量子化値変更ステップとを有する画像処理方法において、
量子化値変更ステップは、少なくとも１つの符号は可変長符号と量子化値とから新たな量子化値に対応する可変長符号へ直接置き換えを行うことで量子化値を変更する画像処理方法である。
【００１４】
この発明は、画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化を行う画像処理方法をコンピュータによって実行させるプログラムにおいて、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化ステップと、
画像処理部の処理単位の領域毎に量子化値を調整すると共に、画像処理部の処理方向から符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更ステップと
を有する画像処理方法のプログラムである。
【００１５】
この発明は、画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化を行う画像処理装置において、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化部と、
画像処理部の処理単位の領域毎に量子化値を調整すると共に、画像処理部の処理方向から符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更部と
を有する画像処理装置である。
【００１６】
この発明は、撮像素子によって撮影された画像データに対して画像処理を行う画像処理部と、画像処理部によって処理した画像データを符号化部で所定の符号化単位で符号化する符号化部を有する撮像装置において、
画像処理部から出力されるデータ順で変換を行い、変換によって発生した係数データを量子化し、量子化係数を可変長符号化する符号化部と、
画像処理部の処理単位の領域毎に量子化値を調整すると共に、画像処理部の処理方向から符号化で規定された正規の処理方向へ並べ替えを行う並べ替え・量子化値変更部と
を有する撮像装置である。
【発明の効果】
【００１７】
この発明においては、例えば画像処理単位でもって量子化値を調整することによって、細かな単位でもって符号量を制御することができる。ＪＰＥＧのような符号化後に量子化値を変更するので、単一の量子化値を使用することが規定されている符号化方法であっても、規定に反しないで符号量を細かく調整することができる。また、符号量制御のために、可変長符号と量子化値とから新たな量子化値に対応する可変長符号へ直接置き換えを行うことによって、復号および再符号化の処理を行わないようにできるので、処理時間が長くなること、使用するメモリ量が増大することを回避することができる。さらに、並べ替えと同時に符号量を調整する場合、並べ替えのために得た情報を有効に利用して符号量の調整の精度を高くすることができる。
【発明を実施するための最良の形態】
【００１８】
この発明の一実施形態について説明すると、図１は、この発明による撮像装置例えばデジタルスチルカメラの一実施形態の構成を示す。図１において、参照符号１がレンズ装置を示し、参照符号２がＣＣＤ（Charge Coupled Device)、ＣＭＯＳ(Complementary Metal Oxide Semiconductor) 等の撮像素子を示す。撮像素子２に対しては、例えばBayer 配列の三原色カラーフィルタが設けられており、撮像素子２の出力として三原色信号が得られる。この三原色信号がＡ／Ｄコンバータ３によってデジタル信号へ変換される。
【００１９】
Ａ／Ｄコンバータ３からのデジタル撮像信号がＬＳＩ(Large Scale Integrated Circuit ：大規模集積回路) の構成とされたデジタル処理のカメラ信号処理部４に入力される。カメラ信号処理部４では、ホワイトバランス補正処理、補間処理、フィルタリング処理、マトリクス演算処理、ガンマ補正処理、輝度信号（Ｙ）生成処理、色差信号（Ｃｒ，Ｃｂ）生成処理等を行う。カメラ信号処理部４によって生成された画像信号がディスプレイ５に供給され、撮像画像が表示される。また、カメラ信号処理部４からの画像データがサイズ変換、圧縮処理等を受けて内部または外部のストレージ９に記憶される。
【００２０】
ホワイトバランス補正処理は、被写体の色温度環境の違い、カラーフィルタによる感度の違いによる各色間のアンバランスが補正する。補間処理は、存在していない色信号を補間する処理である。フィルタリング処理は、高域周波数補正処理であり、輪郭強調のための処理である。マトリクス演算処理は、撮像信号をｓＲＧＢへ変換する処理である。ガンマ補正処理によって、表示装置が有する非線形特性の逆補正を予め行うことで、最終的にリニアな特性が実現される。
【００２１】
輝度信号生成処理は、ガンマ補正されたＲＧＢ信号を所定の合成比で合成することによって輝度信号を生成する。色差信号生成処理ブロックは、ガンマ補正されたＲＧＢ信号を所定の合成比で合成することによって色差信号を生成する。生成された色差信号が帯域制限の処理を受け、色差信号ＣｂおよびＣｒが生成される。
【００２２】
カメラ信号処理部４の出力（Ｙ，Ｃｒ，Ｃｂ）がサイズ変更等の画像処理を行う画像処理部６に入力され、例えば画像サイズが等倍、拡大または縮小される。画像処理部６の出力データが例えばＪＰＥＧの符号化／復号化部７に入力される。符号化／復号化部７は、ＤＣＴと量子化逆量子化器と可変長符号化／復号化器とから構成されている。なお、画像処理部６は、撮像信号に対して直接的に画像処理を施す場合に限らず、ストレージ９に記録されている符号化データを符号化／復号化部７において復号した画像データに対して画像処理を施す場合もある。
【００２３】
ＤＣＴでは、（８×８）画素のブロック単位にＤＣＴ演算がなされ、ＤＣ(Direct Current ：直流) 係数成分およびＡＣ(Alternate Current：交流) 係数成分からなるＤＣＴ係数成分が得られる。ＤＣ係数成分およびＡＣ係数成分が量子化テーブルによって量子化される。量子化されたＤＣ係数成分は、直前のブロックのＤＣ係数成分との差分値が符号化される。但し、区切りを示す所定の値のコードである区切りコードが挿入された直後は、ＤＣ係数成分の値自体が符号化される。また、区切りコードの長さは、量子化テーブルを変更しても変わらないため、区切りコード以外の符号量変化が全体の符号量変化となる。区切りコードの挿入の有無では、区切りコードがない方が量子化前のＤＣ係数値が小さくなるのが通常であり、このため区切りコード分を除いて比較しても符号量は小さくなることが多い。量子化されたＡＣ係数成分の場合には、ブロック内でジグザクスキャンによって並べ替えた後に可変長符号化される。量子テーブルを変化させる場合でも、同じＤＣＴブロックのＤＣ係数成分およびＡＣ係数成分に対しては同一の量子化テーブルでもって量子化がなされる。
【００２４】
なお、同じＤＣＴブロックのＤＣ係数成分およびＡＣ係数成分に対しては異なる量子化テーブルでもって量子化を行ってもよいが、ＤＣＴブロック数が画像内にある程度の数があればＤＣＴ内で変化させなくても十分符号量の制御が可能であり、また、管理が煩雑になるので、ここでは、同一の量子化テーブルを用いる。
【００２５】
符号化／復号化部７によって圧縮された圧縮画像データが並べ替え・量子化値調整（変更）部８に供給される。並べ替え・量子化値調整部８は、ＪＰＥＧで規定された正規の処理方向へ圧縮画像データを並べ替えると共に、量子化値を符号量を一定とするために変更する。ここで、正規の処理方向とは、ＪＰＥＧで復号した場合に元の画像が得られる符号化の順序を意味する。また、量子化値は、ＪＰＥＧの場合では、量子化テーブルを意味する。量子化テーブルと量子化スケールを組み合わせて量子化を行う場合には、量子化テーブルおよび量子化スケールが量子化値である。符号化画像データがストレージ９に記憶される。なお、符号化／復号化部７が復号処理を行う場合には、ストレージ９の読み出しデータを逆量子化し、逆量子化出力を逆ＤＣＴするようになされる。
【００２６】
上述したデジタルスチルカメラの信号処理等を制御するために、ＣＰＵ(Central Processing Unit) １１が備えられている。カメラ信号処理部４、画像処理部６、符号化／復号化部７、並べ替え回路８、ストレージ９は、ＣＰＵバス１２を介してＣＰＵ１１と接続され、ＣＰＵ１１によって制御可能な構成とされている。ＣＰＵ１１には、ユーザが操作するスイッチ、ＧＵＩ(Graphical User Interface)等のキー１３の出力が入力される。さらに、ＣＰＵバス１２に対してプログラム等が格納されているＲＯＭ１４およびＣＰＵ１１の作業用のメモリとしてのＲＡＭ１５が接続されている。ＲＡＭ１５には、ＣＰＵ１１の制御によって画像データが蓄積可能とされている。なお、図１の構成では、簡単のため、ストレージ９から読み出された圧縮画像データをデコードしてディスプレイ５に表示するための構成については省略されている。
【００２７】
この発明は、上述したデジタルスチルカメラの構成中で、画像処理部６、符号化／復号化部７、並べ替え・量子化値（ＪＰＥＧでは上述したように量子化テーブル）調整部８における処理において、高速の処理および大容量メモリを不要とするものである。なお、この一実施形態におけるＪＰＥＧは、符号化単位としてのマクロブロックのサイズが（１６×８）画素であり、マクロブロックが（８×８）画素の輝度（Ｙ）ブロックの２個と、それぞれが（８×８）画素の色差（Ｃｒ，Ｃｂ）ブロックとから構成されている。色差データの水平方向の画素の間隔は、輝度データの２倍とされている。したがって、１画素当たりの平均ビット数は、（Ｙ＝８ビット、Ｃｒ＝４ビット，Ｃｂ＝４ビット）の１６ビットとなる。輝度データおよび二つの色差データは、分離してそれぞれ処理の対象とされる。色差データの処理は、輝度データと同様であるので、以下の説明では、輝度データの処理について説明する。
【００２８】
最初に、この発明の処理の概略について図２を参照して説明する。画像処理部１０１は、撮像素子からの撮像信号に基づいて形成されたデジタル画像信号、または記憶媒体から読み出されたデジタル画像信号に対して、リサイズと称される解像度の変換による画像の拡大縮小処理、画像の回転処理、色収差補正処理、画像歪み補正処理、カメラ信号処理、白黒反転処理、色空間変換処理、フィルタリング処理等の画像処理を行う。画像処理に適したブロックサイズによる画像処理単位、画像処理順序により、記憶媒体に記録された撮像結果が順次切り出される。
【００２９】
画像処理部１０１からの画像データが（８×８）画素のブロック単位でＤＣＴ部１０２において、空間領域から周波数領域へ変換される。ＤＣＴ部１０２からの（８×８）の係数データが量子化部１０３に対してジグザクスキャンの順序で出力され、量子化部１０３において量子化される。量子化は、係数データを量子化テーブル内の量子化値でそれぞれ除算し、除算結果を四捨五入する処理である。量子化値は、（８×８）の係数データに対して同一ではなく、各係数データに対して適切な値の量子化値が使用される。しかしながら、この明細書においては、発明の理解を容易とするために、単一の値の量子化値からなる量子化テーブルが使用されるものとする。
【００３０】
量子化部１０３の出力が可変長符号化／復号化部１０４に供給され、エントロピー符号化によって情報量が圧縮される。例えばゼロランとレベルとに応じた可変長符号が割り当てられる。これらのＤＣＴ部１０２、量子化部１０３および可変長符号化／復号化部１０４によって、ＪＰＥＧエンコーダが構成される。
【００３１】
可変長符号化／復号化部１０４の出力に得られる符号１０５のデータの並びは、画像処理部１０１の処理によって規定されるものである。これに対してＪＰＥＧ等の符号化処理は、マクロブロックによる符号化処理単位を順次ラスタ走査順に符号化処理することがフオーマットにより規定されている。したがって、画像処理の順序の並びを有する符号１０５を復号した場合に、所望の画像と異なった画像になってしまう。
【００３２】
この問題を解決するために、大容量のバッファメモリを使用しないで、符号並べ替え・量子化値調整部１０８により並べ替えを行い、符号１０９を出力する。符号１０９は、例えば記憶媒体に記録される。この符号１０９は、符号化フォーマット例えばＪＰＥＧで規定されている正規の処理方向でもって復号した場合に所望の画像が得られる。
【００３３】
符号化処理についてより具体的に図３を参照して説明する。簡単のために、ＤＣＴブロックが（４×４）画素からなるものとしている。ＤＣＴ部１０２によって、（４×４）の係数データが得られる。左上コーナーにＤＣ成分値（例えば８）が存在する。
【００３４】
量子化部１０３によって量子化値（例えば３の値）でもって各係数データが除算され、除算結果が四捨五入されることで量子化係数が得られる。量子化係数が例えばジグザグスキャンの順序で順に出力されると共に、ゼロの数が計数される。その結果、レベルとゼロの数（ゼロラン）との組合せのデータが得られる。
【００３５】
レベルとゼロの数との組合せのデータが可変長符号化部１０４に供給される。可変長符号化部１０４が備えるハフマンテーブルが参照されて可変長符号（ハフマン符号）が得られる。
【００３６】
図３に示される一連の処理がＪＰＥＧの符号化である。符号量を調整する一つの方法として、図４に示すように復号化を行う方法がある。上述した符号化により得られた可変長符号を可変長復号化部１１１によって復号する。復号の結果、レベルとゼロの数（ゼロラン）との組合せのデータが得られる。逆量子化部１１２は、量子化と逆の処理、すなわち、各係数データに対して（３）を乗じる。その結果、（４×４）のＤＣＴ係数成分が得られる。
【００３７】
量子化部１０３は、符号量を調整するために、異なる値の量子化値例えば（４）の量子化値によって各係数データを除算し、除算結果を四捨五入して量子化係数が得られる。量子化値が（３）に対して（４）へ増大されているので、量子化係数がより小さくなる。量子化係数が例えばジグザグスキャンの順序で順に出力されると共に、ゼロの数が計数される。その結果、レベルとゼロの数との組合せのデータが得られる。
【００３８】
レベルとゼロの数との組合せのデータが可変長符号化部１０４に供給される。可変長符号化部１０４が備えるハフマンテーブルが参照されてハフマン符号が得られる。例えば量子化テーブルを順に増加（または減少）させて、発生する可変長符号の符号量が割り当て符号量以下になるように、復号化と再符号化とが繰り返しなされ、最適な量子化テーブルが求められる。
【００３９】
このように、ＤＣＴ係数データを使用して復号化および再符号化によって、例えば１画面の符号量をほぼ割り当て符号量とする方法は、処理時間が長くなったり、復号化のためのメモリを必要とする問題がある。
【００４０】
復号化および再符号化を行わないで量子化テーブルを調整する方法として、図５に示すように、可変長符号置き換えテーブル１２１を使用するものが好ましい。可変長符号置き換えテーブル１２１による符号の置き換えでもって、量子化値が相違する可変長符号同士の変換を行うことができる。この符号の置き換え処理は、並べ替え・量子化値調整部８においてなされる。
【００４１】
図５に示す例は、図３および図４を参照して説明した量子化値が（３）の可変長符号を量子化値（４）の可変長符号へ変換する例である。この場合には、可変長符号を復号し、再符号化することが不要であり、処理時間を短縮化することができる。但し、可変長符号置き換えテーブル１２１を使用できるのは、ＡＣ係数成分であり、ＤＣ係数成分は、可変長符号置き換えテーブル１２１を使用した量子化値の変更ができない。ＡＣ係数成分とＤＣ係数成分に対する符号化処理は、並列的になされる。ＤＣ係数成分に対する符号化処理については後述する。
【００４２】
可変長符号置き換えテーブル１２１の作成方法について図６および図７を参照して説明する。なお、図７の例は、複数の量子化値（３）と（４）とを量子化値（５）へ変換する場合である。最初のステップＳ１０１において、符号量などから新規の量子化値を決定する。例えば後述するように、並べ替えのための必要とされる事前符号化で得られた符号長の情報を利用して初期的な量子化値の値が設定される。
【００４３】
ステップＳ１０２において、量子化値変更前のすべてのブロックのハフマン符号をすべて列挙する。図７には、ステップＳ１０２に対応して列挙された元のハフマン符号の一例が示されている。各ハフマン符号の意味については、テーブルＴＢＬに示されている。
【００４４】
ステップＳ１０３では、以前に同一量子化値で且つ同一ハフマンテーブルのブロックを処理したか否かが判定される。若し、判定結果が肯定であれば、ステップＳ１０４に処理が移り、次のブロックが処理対象とされる。
【００４５】
ステップＳ１０３の判定結果が否定であれば、ステップＳ１０５において、ブロックの量子化値を読み出し、新規の列に量子化値変更前の変更前ハフマン符号に対応する値を作成する。図７には、ステップＳ１０５に対応して、作成された量子化値変更前の変更前ハフマン符号に対応する値（１，２，３，４，５，６）（テーブルＴＢＬ参照）が示されている。
【００４６】
ステップＳ１０６において、変更前ハフマン符号に対応する値を変更前量子化値（３）で逆量子化する。図７には、ステップＳ１０６に対応して、逆量子化の結果の値（３，６，９，１２，１５，１８）が示されている。
【００４７】
ステップＳ１０７において、変更前ハフマン符号に対応する値を変更後量子化値（５）によって量子化する。図７には、ステップＳ１０７に対応して、量子化係数（１，１，２，２，３，４）が示されている。
【００４８】
ステップＳ１０８において、変更後の量子化値で量子化した値を変更後ハフマン符号で符号化する。図７には、ステップＳ１０８に対応して、量子化係数（１，１，２，２，３，４）を変更後ハフマン符号で符号化した結果が示されている。
【００４９】
ステップＳ１０９において、すべてのブロックについて処理が終了したか否かが判定される。処理が終了したと判定されると、可変長符号置き換えテーブル作成処理が終了する。そうでない場合には、ステップＳ１０４にて次のブロックへ処理が移行する。
【００５０】
上述した処理は、量子化値が（３）の場合であるが、量子化値が（４）の場合の処理の例が図７に示されている。すなわち、ステップＳ１０５において、量子化値変更前の変更前ハフマン符号（元の符号）に対応する値が作成される。
【００５１】
ステップＳ１０６において、変更前ハフマン符号に対応する値が変更前の量子化値（４）によって逆量子化される。ステップＳ１０７において、変更前ハフマン符号に対応する値を変更後の量子化値（５）で量子化する。ステップＳ１０８において、変更後の量子化値で量子化した値を変更後ハフマン符号で符号化する。
【００５２】
上述したように作成された可変長符号置き換えテーブルの各欄の意味が図８Ａに示され可変長符号置き換えテーブルの参照方法が図８Ｂに示されている。元の符号の列は、変更前符号を意味する。量子化値３および量子化値４は、変更前の量子化値である。残りの符号が変更後の符号である。
【００５３】
図８Ｂに示すように、例えば変更前の量子化値が量子化値４で、元の符号が（１００）の場合、変更後の新しい符号が（０１１）である。
【００５４】
ＪＰＥＧは、係数データを一つの量子化テーブルで量子化する符号化方法である。しかしながら、ＪＰＥＧ符号化後には、図９に示すように、１枚の画像を例えば３個の領域Ａ，Ｂ，Ｃに分割する場合に、各領域の量子化テーブルを個々に設定することができる。各領域は、画像処理の単位であり、各領域のデータは、並べ替えの対象のデータである。そして、最終的には、領域Ａ，Ｂ，Ｃそれぞれを図６での一つのブロックとして処理して図６の処理を行い、図８の変換テーブルを作成し、図８のテーブルでの変換や後述する図１３の処理を行うことで、領域Ａ，Ｂ，Ｃそれぞれで用いた複数の量子化テーブルが一つに変更されて符号化の規格に合った符号化データが形成される。
【００５５】
画像全体で発生する符号量をほぼ一定とする符号化方法の一例について説明する。例えば領域Ａ、Ｂ、Ｃからなる画像をＪＰＥＧで符号化し、発生した可変長符号を上述したように作成された可変長符号置き換えテーブルを使用して設定された量子化値に対応するものに変更する。例えば領域Ａを量子化値４で符号化した結果、符号量の余裕がなくなったので、領域Ｂを量子化値５で符号化する。領域ＡおよびＢの符号化の結果、符号量に余裕が生じたので、領域Ｃを量子化値３で符号化する。最後に、領域Ａ，Ｂ，Ｃそれぞれを図６での一つのブロックとして処理し、領域Ａ，Ｂ，Ｃそれぞれで用いた複数の量子化値を一つの量子化値５に変更する。
【００５６】
このように量子化値を変更する処理について図１０のフローチャートを参照して説明する。最初のステップＳ２０１において、画像の一部分を初期量子化値で符号化する。画像の一部分は、各画像処理の単位の領域より小さな領域である。ステップＳ２０２において、発生した符号量がその画像の一部分に割り当てられた符号量より大きいか否かが判定される。
【００５７】
符号量が大きいと判定されると、ステップＳ２０３において、量子化値が大きくされる。一方、符号量が大きくないと判定されると、ステップＳ２０４において、量子化値が小さくされる。このようにして、画像の一部分を符号化した結果の符号量に基づいて適切な量子化値が決定される。
【００５８】
ステップＳ２０５において、ある領域例えば領域ＡがステップＳ２０３またはＳ２０４において決定された量子化値でもって符号化される。
【００５９】
ステップＳ２０６において、全領域Ａ、Ｂ、Ｃを符号化したか否かが判定される。全ての領域を符号化したと判定されると、処理が終了する。全ての領域を符号化していないと判定されると、処理がステップＳ２０２に戻る。
【００６０】
処理終了後それぞれの領域を図６での１つのブロックとして処理して図６の処理を行い、図８の変換テーブルを作成し、図８のテーブルでの変換や後ほど説明する図１３の処理を行うことで、領域Ａ，Ｂ，Ｃそれぞれで用いた複数の量子化テーブルが一つに変更されて符号化の規格に合った符号化データが形成される。
【００６１】
上述したＡＣ係数成分に対する符号化方法においては、画像処理単位と対応する領域単位で量子化値を変更している。量子化値の変更に代えてハフマン符号化のためのハフマンテーブルを変更しても良い。また、量子化値とハフマンテーブルの両方を変更しても良い。すなわち、図１１に示すように、画像全体が６個の領域からなる場合、各領域が量子化値（例えば３または４）とハフマンテーブル（テーブルＡまたはＢ）との組合せでもって符号化される。
【００６２】
複数の量子化値を用いて符号化するときに、どのような変換係数分布をとるかの統計情報（ヒストグラムなど）を取得することにより量子化後の量子化係数分布が予想できるため、ハフマン符号の符号割り当ての一般的方法である、よく発生する量子化係数に短いハフマン符号を割り当てることにより全体の符号量を少なくすることができる。
【００６３】
量子化値およびハフマンテーブルを変更する場合に使用できる可変長符号置き換えテーブルの一例を図１２に示す。量子化値のみを変更する場合に使用する可変長符号置き換えテーブル（図８）と同様に、元の符号の列は、変更前符号を意味する。量子化値３/huffmanＡは、変更前の量子化値３およびハフマンテーブルＡを意味する。量子化値４/huffmanＡは、変更前の量子化値４およびハフマンテーブルＡを意味する。量子化値４/huffmanＢは、変更前の量子化値４およびハフマンテーブルＢを意味する。残りの符号が変更後の符号である。
【００６４】
また、発生しない符号部分は、符号が無しとされる。さらに、二つのハフマンテーブルＡおよびＢの両方に同じ符号が存在する場合には、ハフマンテーブルＡおよびＢの両方に値が入る。例えば変更前の量子化値およびハフマンテーブルが量子化値４/huffmanＡで、元の符号が（１１０）の場合、新しい符号が（１０１）となる。
【００６５】
上述した符号化処理は、ＡＣ係数成分に対するものである。ＤＣ係数成分は、隣接する直前のブロックのＤＣ係数成分との差分がハフマン符号化される。以下にＤＣ係数成分に対する符号化について説明する。
【００６６】
上述したＡＣ係数については、可変長符号置き換えテーブルによって量子化値変換後の可変長符号を得ることができるが、ＤＣ係数は、そのような符号の置き換えを適用することができない。図１３に示すように、例えばハフマン符号（１００）を可変長復号化（処理および回路の何れかによる）１３１によって復号し、例えば３の復号結果が得られる。逆量子化１３２によって差分値１２が得られる。量子化値変更前の前置復号値例えば１との加算１３３がなされ、ＤＣ係数値１３が復号される。
【００６７】
次に、量子化値変更後の前置復号値がＤＣ係数値から減算される。例えば量子化値の変更によって前置復号値が１から２に変化すると、減算１３４において（１３−２＝１１）の減算がなされ、差分値１１が得られる。量子化１３５によって差分値が量子化され、量子化出力（２）が得られる。量子化出力が可変長符号化１３６によって可変長符号化され、ハフマン符号（０１１）が得られる。
【００６８】
ＤＣ係数値の場合では、量子化値の変更の結果、前値復号値が変化する場合があるので、ＤＣ係数値まで復号し再符号化する処理が必要である。さらに、並べ替え処理と関連するＤＣ係数成分の処理について説明する。
【００６９】
この発明の一実施の形態では、画像処理に供する画像処理単位、画像処理順序で、復号化、画像処理、符号化を繰り返した後、１画面分の符号化データを並べ直して記録することにより、画像処理結果を一時保持するバッファメモリを小容量化することができる。図１４Ａに示すように、９個のマクロブロック１〜３、７〜９、１３〜１５による第１の画像処理単位ＡＲ１を画像処理により生成した後、残るマクロブロック４〜６、１０〜１２、１６〜１８による第２の画像処理単位ＡＲ２を画像処理により生成したとする。この場合には、符号化は、第１の画像処理単位ＡＲ１、第２の画像処理単位ＡＲ２を例えばＪＰＥＧによって順次符号化することになり、矢印で示すように、各画像処理単位ＡＲ１、ＡＲ２のマクロブロックをそれぞれラスタ走査する順序により符号化して符号化データを生成することになる。
【００７０】
これに対して、図１４Ｂに示すように、これら画像処理単位ＡＲ１、ＡＲ２による１つの画像をＪＰＥＧによって符号化する場合、各マクロブロックを示す数字の順序により、この１つの画像のマクロブロックをラスタ走査する順序で符号化データを生成することになる。したがって、図１４Ａに示す順序のデータを復号した結果の画像は、原画像と異なったものとなる。
【００７１】
この発明の一実施の形態では、図１４Ａに示す順序により得られる符号化データを、並べ替え・量子化値調整部８において、図１４Ｂに示す順序に並べ直して出力する。ＪＰＥＧによる符号化では、直前マクロブロックのＤＣ係数値を前置保持し、続くマクロブロックでは、この前置保持したＤＣ係数値との差分値が可変長符号化される。したがって、図１４Ａに示す例では、マクロブロック７、１３のそれぞれのＤＣ係数値と、マクロブロック３、９のそれぞれのＤＣ係数値との差分値が求められ、各差分値が可変長符号化される。同様に、マクロブロック４、１０、１６のそれぞれのＤＣ係数値と、マクロブロック１５、６、１２のＤＣ係数値との差分値が可変長符号化される。
【００７２】
なお、ＪＰＥＧの規格では、ＪＰＥＧデータのブロック毎の区切りに区切りコードが挿入されるように規定されている。可変長符号化されている１ブロック分のＪＰＥＧデータがバイトの整数倍の長さとなるようにスタッフィングビットが付加され、その後に区切りコード（１６ビット）が付加される。最小符号化単位としてのＪＰＥＧ  ＭＣＵ(Minimum Coded Unit)は、マクロブロックに対応して発生したデータである。ハフマン符号化がなされているので、ＪＰＥＧ  ＭＣＵは、可変ビット長を有する。区切りコードは、並びに替え単位の区切りを示している。この区切りは、ＥＣＳ(Entropy Coded Segment) と称される。したがって、並べ替えは、ＥＣＳ単位でなされる。ＪＰＥＧデータのＤＣ（直流）係数は、前のブロックのＤＣ係数との差分のデータを伝送するようにしており、区切りコードの次のＤＣ係数のデータは、差分ではなく、ＤＣ係数の値そのものとされている。
【００７３】
この発明の一実施の形態では、スタッフィングビットと区切りコードとを挿入しないようにして、画像処理単位毎に、画像処理結果を符号化処理するようになされる。しかしながら、これに限らず、スタッフィングビットおよび／または区切りコードを挿入するようにして、並べ替え部における並べ替え時、スタッフィングビット、区切りコードを削除するようにしてもよい。また、区切りコードを設けた場合、直後のマクロブロックでは、ＤＣ係数値がそのままＤＣ係数に符号化処理されることになる。これによりこの場合、ＤＣ係数の処理が別途必要になるが、例えば記録して保持したＤＣ係数値によりダミーのマクロブロックを作成し、このダミーのマクロブロックとの連続により符号化データを生成した後、ダミーのマクロブロックによる符号化データを削除する等により実行することができる。因みに、このダミーのマクロブロックは、並べ直した符号化データにおいて、処理対象のマクロブロックの直前のマクロブロックの実際の画像データを適用するようにしてもよい。
【００７４】
これに対して画像処理単位ＡＲ１、ＡＲ２を１つの画像として符号化する場合、マクロブロック７、１３は、水平方向の走査終了端である右端（図面に向って）のマクロブロック６、１２のＤＣ係数値との差分値によりＤＣ係数値が符号化され、第２の画像処理単位ＡＲ２の水平方向への走査開始端側のマクロブロック４、１０、１６では、第１の画像処理単位ＡＲ１の水平方向への走査終了端側、マクロブロック３、９、１５のＤＣ係数値との差分値によりＤＣ係数値が符号化される。
【００７５】
したがって、単に画像処理の順序により得られるマクロブロック単位の符号化データを１画面まとめた符号化の順序により並べ直し、さらには制御コードを設定し直しただけでは、正しく復号することが困難になる。
【００７６】
したがって、画像処理単位のマクロブロックをラスタ走査の順序により符号化する際に、このラスタ走査における各水平方向の走査終了端のマクロブロックで、検出されるＤＣ係数値を取得して記録し、隣接するマクロブロックにおける符号化の際に、前置保持したＤＣ係数値に代えて記録したＤＣ係数値を使用する。なお、隣接するマクロブロックは、並べ替えた後において、隣接するマクロブロックである。
【００７７】
図１４の例では、マクロブロック１〜３、７〜９、１３〜１５による第１の画像処理単位ＡＲ１を符号化する際に、水平方向の走査終了端のマクロブロック６、１２、１８のＤＣ係数値を記録して保持する。続く第２の画像処理単位ＡＲ２を符号化する場合、記録して保持したマクロブロック３、９、１５のＤＣ係数値を使用して水平方向への走査開始端のマクロブロック４、１０、１６の符号化を行う。
【００７８】
図１５は、並べ替えに適した符号の出力方法を示す。符号化部２０１は、ＪＰＥＧの符号化を行う。画像処理部からの画像データ２１１として処理単位ＡＲ１の例えばマクロブロック７、８、９が符号化部２０１に対して入力される。左端のマクロブロックのＤＣ係数値との差分を形成するために必要なマクロブロックのＤＣ係数値２１２が入力される。例えばマクロブロック６のＤＣ係数値が入力される。符号化部２０１において、マクロブロック７のＤＣ係数値と、マクロブロック３のＤＣ係数値の代わりのマクロブロック６のＤＣ係数値との差分が演算され、差分が可変長符号化される。
【００７９】
マクロブロック７以外の左端のマクロブロック１のＤＣ係数値との差分を形成するために、前の画像の水平方向の走査終了端のマクロブロックのＤＣ係数値が必要とされ、マクロブロック１３のＤＣ係数値との差分を形成するために、マクロブロック１２のＤＣ係数値が必要とされる。画像の先頭のマクロブロック１の場合では、例えば差分を形成せずに値自身が伝送される。したがって、処理単位ＡＲ１およびＡＲ２の符号化に先行して、マクロブロック６、１２および１８の符号化が先行してなされる。
【００８０】
符号化部２０１からは、並べ替え前の符号２１３と、並べ替え前の符号長２１４と、画像右端のＤＣ係数値２１５とが出力される。符号長２１４は、３個のマクロブロック例えばマクロブロック７，８，９の符号長である。画像右端のＤＣ係数値２１５は、例えばマクロブロック９のＤＣ係数値である。この画像右端のＤＣ係数値は、次の画像処理単位ＡＲ２の左端に位置するマクロブロック４，１０，１６のＤＣ係数値の符号化に使用される。
【００８１】
上述したように、画像処理単位による符号化を開始する前に、右端のマクロブロック６、１２を符号化してマクロブロック６、１２のＤＣ係数値を取得して保持するようになされる。
【００８２】
図１６は、符号並べ替えと符号化時に必要なＤＣ係数値の事前取得の処理を示すものである。図１６の例では、画像処理単位が（２×３）マクロブロックの大きさとされ、３個の画像処理単位によって１枚の画像が構成されている。画像処理部からは、Ａ１，Ａ２，Ａ３，Ａ４，・・・の順序のデータ系列２２１が入力される。符号化部でＪＰＥＧ符号化がなされ、並べ替え前の符号が並べ替えによって、ＪＰＥＧで規定された正規の符号順序のデータ系列２２２が形成される。
【００８３】
データ系列２２２において、丸で囲んだマクロブロックＢ１，Ｃ１，Ａ４，Ｂ４，Ｃ４のそれぞれのＤＣ係数値を予測符号化するためには、事前に四角で囲んだマクロブロックＡ３，Ｂ３，Ｃ３，Ａ６，Ｂ６のＤＣ係数値が取得されている必要がある。この例では、左端のマクロブロックＡ４の符号化のためにマクロブロックＣ３のＤＣ係数値が必要とされるので、右端に位置するマクロブロックＣ３は、事前に符号化しておくことが必要となる。
【００８４】
このように、画像の水平走査の終端（右端）に位置する符号化単位としてのマクロブロックを事前に符号化（ＤＣＴ化、量子化、可変長符号化）するようになされる。ＤＣ係数値の予測符号化のためには、量子化および可変長は不要である。しかしながら、この右端に位置する複数のマクロブロックを事前に符号化して符号長を取得すると、符号長からそのマクロブロックが属する画像の発生符号量を推定することが可能となる。この推定結果に基づいて、量子化値の初期値を設定することができる。
【００８５】
図１７は、ＣＰＵ１１の制御によりなされるＤＣ係数値の処理手順を示すフローチャートである。処理手順を開始すると、ステップＳ３０１からステップＳ３０２に移り、画像処理単位による繰り返しの符号化処理ではＤＣ係数値を検出できないマクロブロック（ＭＣＵ）について、ストレージ９、符号化／復号化部７の制御により符号化データを復号して画像データを生成し、この画像データを画像処理部８により画像処理する。また処理結果による画像データを符号化／復号化部７により符号化処理し、これにより画像処理単位による繰り返しの符号化処理ではＤＣ係数値を用意できないマクロブロックのＤＣ係数値を事前に検出する。
【００８６】
続いてＣＰＵ１１は、順次、画像処理単位で復号化処理、画像処理して画像データをバッファメモリに格納する。ステップＳ３０３において、画像処理結果を格納するバッファメモリから、ラスタ走査の順序により１マクロブロック分の画像データが符号化／復号化部７に入力され、ステップＳ３０４において、ＤＣＴ処理がなされ、ステップＳ３０５において、ＤＣＴにより得られる係数データが量子化される。
【００８７】
ステップＳ３０６において、処理中のマクロブロックが画像処理単位の水平方向の走査開始端に位置するものか否かが判定される。ステップＳ３０６の判定結果が肯定であると、ステップＳ３０６からステップＳ３０７に処理が移る。ステップＳ３０７において、ステップＳ３１０の処理でＤＣ差分値の計算対象である前置保持によるＤＣ係数値が記録して保持したＤＣ係数値に置き換えられた後、ステップＳ３０８に処理が移る。ステップＳ３０６の判定結果が否定であると、処理がステップＳ３０６からステップＳ３０８に移る。
【００８８】
ステップＳ３０８において、処理中のマクロブロックが画像処理単位の水平方向の走査終了端か否かが判定される。ステップＳ３０８の判定結果が肯定であると、ステップＳ３０９において、ステップＳ３０５で検出されたＤＣ係数値が記録されて、処理がステップＳ３１０に移る。ステップＳ３０８の判定結果が否定であると、処理がステップＳ３０８からステップＳ３１０に移る。
【００８９】
ステップＳ３１０において、ステップＳ３０５で量子化されたＤＣ係数値から前のＤＣ係数値が減算され、差分値が生成される。ステップＳ３１１において、このステップＳ３１０で計算した差分値と、ステップＳ３０５で量子化したＡＣ値に係る係数データとがハフマン符号化される。ステップＳ３１２において、全てのマクロブロックについて処理が完了したか否かが判断される。ステップＳ３１２の判定結果が否定であると、ステップＳ３１２からステップＳ３０３に処理が戻る。ステップＳ３１２の判定結果が肯定であると、処理手順を終了する（ステップＳ３１３）。
【００９０】
以上、この発明の実施の形態について具体的に説明したが、この発明は、上述の実施の形態に限定されるものではなく、この発明の技術的思想に基づく各種の変形が可能である。例えばデジタルスチルカメラにおける画像処理としては、並べ替え時に復号化された画
像を１８０度回転させる処理を行っても良い。回転の処理の場合では、ＤＣ成分係数値を保持するマクロブロックは、各水平方向の走査における走査終了端のマクロブロックのみではなく、水平走査開始端側のマクロブロックである場合もある。
【００９１】
また、この発明は、デジタルスチルカメラに限らず、ＪＰＥＧまたはＭＰＥＧの符号化装置を備える画像記録装置、パーソナルコンピュータ、ＰＤＡ(Personal Digital Assistants) 、画像送信装置、携帯端末、携帯電話等に適用することができる。
【図面の簡単な説明】
【００９２】
【図１】この発明が適用された撮像装置の構成を示すブロック図である。
【図２】この発明による符号化および並べ替えの処理の流れを説明するための略線図である。
【図３】ＪＰＥＧ符号化処理を説明するための略線図である。
【図４】復号化および再符号化によって量子化値を変更する処理の一例を説明するための略線図である。
【図５】可変長符号置き換えテーブルによって量子化値を変更する処理の一例を説明するための略線図である。
【図６】可変長符号置き換えテーブルの作成方法の一例を説明するためのフローチャートである。
【図７】可変長符号置き換えテーブルの作成方法の一例を説明するための略線図である。
【図８】可変長符号置き換えテーブルの説明に使用する略線図である。
【図９】領域ごとに量子化値を変更する処理を説明するための略線図である。
【図１０】領域ごとに量子化値を変更する処理を説明するためのフローチャートである。
【図１１】領域ごとに量子化値およびハフマンテーブルを変更する処理を説明するための略線図である。
【図１２】量子化値およびハフマンテーブルを変更する場合の可変長符号置き換えテーブルの説明に使用する略線図である。
【図１３】ＤＣ係数成分に関して量子化値を変更する処理を説明するための略線図である。
【図１４】並べ替えの処理を説明するための略線図である。
【図１５】並べ替えに適した符号の出力方法を説明するための略線図である。
【図１６】並べ替え処理とＤＣ係数成分の符号化の処理を説明するための略線図である。
【図１７】ＤＣ係数成分の符号化処理を説明するためのフローチャートである。
【図１８】先に提案されている符号化および並べ替えの処理の流れを説明するための略線図である。
【符号の説明】
【００９３】
２  撮像素子
４  カメラ信号処理部
６  画像処理部
７  符号化／復号化部
８，１０８  並べ替え・量子化値調整部
１１  ＣＰＵ
【図１】
2009004878.tif 000003
【図２】
2009004878.tif 000004
【図３】
2009004878.tif 000005
【図４】
2009004878.tif 000006
【図５】
2009004878.tif 000007
【図６】
2009004878.tif 000008
【図７】
2009004878.tif 000009
【図８】
2009004878.tif 000010
【図９】
2009004878.tif 000011
【図１０】
2009004878.tif 000012
【図１１】
2009004878.tif 000013
【図１２】
2009004878.tif 000014
【図１３】
2009004878.tif 000015
【図１４】
2009004878.tif 000016
【図１５】
2009004878.tif 000017
【図１６】
2009004878.tif 000018
【図１７】
2009004878.tif 000019
【図１８】
2009004878.tif 000020