(57)【要約】【課題】直交変換における減算の回数を減らして画像圧縮処理を高速化する。【解決手段】１次元ＤＣＴをＣｈｅｎの高速１次元ＤＣＴに従って行う。ステップＰ１ではｆ（０）＋ｆ（７）を演算し、ステップＰ２ではｆ（０）＋ｆ（３）＋ｆ（４）＋ｆ（７）を演算する。ステップＰ３ではｆ（０）＋ｆ（１）＋ｆ（２）＋ｆ（３）＋ｆ（４）＋ｆ（５）＋ｆ（６）＋ｆ（７）を演算する。この演算結果に０．７０７１を乗じるとともに１０２４×０．７０７１を減算することによって直流成分の１次元ＤＣＴ係数Ｆ（０）を求める。ステップＰ４ではｆ（１）＋ｆ（６）を演算し、ステップＰ５ではｆ（１）＋ｆ（２）＋ｆ（５）＋ｆ（６）を演算する。ステップＰ６ではｆ（０）−ｆ（１）−ｆ（２）＋ｆ（３）＋ｆ（４）−ｆ（５）−ｆ（６）＋ｆ（７）を演算し、この演算結果に０．７０７１を乗じることによって交流成分の１次元ＤＣＴ係数Ｆ（４）を求める。生データｆ（０）、ｆ（１）、ｆ（２）・・・ｆ（７）からそれぞれ１２８を減算せず、ステップＰ３においてのみ、１２８に関する減算を行うので、減算の回数が大幅に減少する。【選択図】        図３
2004166048.tif 000002
【特許請求の範囲】
【請求項１】
複数のデジタルの画素データから成る画像データを入力する画像データ入力手段と、
前記画像データに対して直交変換を施すことにより、複数の異なる空間周波数の直交変換係数に変換し、前記直交変換係数のうち直流成分の直交変換係数に対応した数値のみから一定値を減算する直交変換手段と、
を備えることを特徴とする画像圧縮装置。
【請求項２】
前記画像データがｎ×ｎの２次元マトリクスの画素データにより構成されることを特徴とする請求項１に記載の画像圧縮装置。
【請求項３】
前記直交変換手段が、前記２次元マトリクスのｘ方向に沿って第１の１次元直交変換を施した後、前記２次元マトリクスのｙ方向に沿って第２の１次元直交変換を施すことを特徴とする請求項２に記載の画像圧縮装置。
【請求項４】
前記直交変換手段が、前記第１の１次元直交変換により得られた直流成分の直交変換係数に対応した数値のみから前記一定値を減算することを特徴とする請求項３に記載の画像圧縮装置。
【請求項５】
前記直交変換手段が、前記第２の１次元直交変換により得られた直流成分の直交変換係数に対応した数値のみから前記一定値を減算することを特徴とする請求項３に記載の画像圧縮装置。
【請求項６】
前記直交変換が離散コサイン変換であることを特徴とする請求項１に記載の画像圧縮装置。
【請求項７】
前記画素データがそれぞれ２５５を最大値とするデジタルデータで表され、前記一定値が１２８に基づいて得られることを特徴とする請求項１に記載の画像圧縮装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばデジタルカメラに設けられ、撮像素子を介して得られた画像データに対して圧縮処理を施す装置に関する。
【０００２】
【従来の技術】
従来デジタルカメラにおいて、撮像素子を介して得られた画像データに対して、ＪＰＥＧアルゴリズムに従って圧縮処理を施すものが知られている。この圧縮処理では、レッド（Ｒ）、グリーン（Ｇ）およびブルー（Ｂ）の画像データが輝度データと色差データに変換され、次いで輝度データから一定値（例えば１２８）が減算されて、ＤＣＴ処理（離散コサイン変換処理）が施される（例えば非特許文献１）。輝度データについて１２８が減算されるのは、隣接画素における輝度データとの差分値の絶対値を小さくして、演算される数値を低減し、演算速度を速めようとするためである。
【０００３】
【非特許文献１】
貴家仁志・村松正吾共著「マルチメディア技術の基礎，ＤＣＴ入門」、ＣＱ出版社、１９９７年９月２０日発行、ｐ．１０８−１１１
【０００４】
【発明が解決しようとする課題】
圧縮処理は、画像を（８×８）画素のマトリクスに分割して行われる。したがって、１つのマトリクスに関して、１２８の減算が６４回行われる。
【０００５】
本発明者は、減算の回数をさらに減らすことを試みた。すなわち本発明の目的は、減算の回数を減らして画像圧縮処理をさらに高速化することを目的としている。
【０００６】
【課題を解決するための手段】
本発明に係る画像圧縮装置は、複数のデジタルの画素データから成る画像データを入力する画像データ入力手段と、画像データに対して直交変換を施すことにより、複数の異なる空間周波数の直交変換係数に変換し、直交変換係数のうち直流成分の直交変換係数に対応した数値のみから一定値を減算する直交変換手段とを備えることを特徴としている。
【０００７】
画像データはｎ×ｎの２次元マトリクスの画素データにより構成される。この場合、直交変換手段は例えば、２次元マトリクスのｘ方向に沿って第１の１次元直交変換を施した後、２次元マトリクスのｙ方向に沿って第２の１次元直交変換を施す。そして直交変換手段は、第１の１次元直交変換により得られた直流成分の直交変換係数に対応した数値のみから一定値を減算してもよい。これにより減算回数は、２次元直交変換に関して１／ｎに減少する。
【０００８】
直交変換手段は、第２の１次元直交変換により得られた直流成分の直交変換係数に対応した数値のみから一定値を減算してもよい。すなわち、この場合、第１の直交変換の後は一定値の減算は行わない。これによれば減算回数は、２次元直交変換に関して１／ｎ２に減少する。
【０００９】
直交変換は、例えば離散コサイン変換である。
画素データがそれぞれ２５５を最大値とするデジタルデータで表されるとき、一定値は１２８に基づいて得られる。
【００１０】
【発明の実施の形態】
以下、本発明の実施形態を図面を参照して説明する。
図１は、本発明の第１の実施形態である画像圧縮装置を備えたデジタルカメラの電気的および光学的な構成を概略的に示すブロック図である。このデジタルカメラは単一の撮像素子（ＣＣＤ）１０を備えている。撮像素子１０の受光面には、例えばベイヤー配列に従って配列されたレッド（Ｒ）、グリーン（Ｇ）およびブルー（Ｂ）のカラーフィルタが設けられている。撮影レンズ１１の光軸上には、赤外カットフィルタ１２と光学ローパスフィルタ１３と撮像素子１０がこの順に配設されている。したがって撮影レンズ１１を通過した光線は、赤外線とノイズ成分を除去されて撮像素子１０に入射し、撮像素子１０ではアナログの電気信号である画像信号が発生する。
【００１１】
この画像信号は、相関二重サンプリング回路（ＣＤＳ）とＡＤ変換器（ＡＤＣ）を備えたアナログ信号処理回路１４において、ノイズ成分を除去されるとともにデジタルの画像データに変換される。デジタルの画像データは、デジタル信号処理回路１５において、後述する種々の画像処理を施される。
【００１２】
デジタル信号処理回路１５において処理された画像データはメモリ１６に格納される。画像データはメモリ１６から読み出され、圧縮処理を施されて、ＰＣカード１７に静止画像として記録される。静止画像の画像データは、ＬＣＤ表示回路１８において所定の処理を施され、液晶表示装置（ＬＣＤ）１９においてカラー画像として表示される。また、デジタル信号処理回路１５から出力された画像データはＬＣＤ表示回路１８に直接入力され、液晶表示装置１９ではモニタ画像が動画として表示される。
【００１３】
図２はデジタル信号処理回路１５において実行される画像処理の手順を示す図である。デジタル信号処理回路１５に入力された画像データ（生データ）は、ステップＳ１においてホワイトバランス調整される。ステップＳ２ではＧ補間が実行され、ＲとＢの画素に関してＧの画素データが補間により求められる。ステップＳ３ではＲＢ補間が実行され、ＲとＢの画素データが欠落している画素について、ＲとＢの画素データがそれぞれ補間によって求められる。これにより、全ての画素について、Ｒ、Ｇ、Ｂの画素データが求められる。
【００１４】
ステップＳ４では、ステップＳ３の処理結果として得られた画素データに色補正マトリクスが施され、カラーフィルタの特性によって生じる誤差が除去される。ステップＳ５では色補正マトリクスが施された画素データに対してガンマ補正が施される。ステップＳ６ではＲＧＢ／ＹＵＶ変換が実行され、Ｒ、Ｇ、Ｂの画素データは、下記（１）、（２）および（３）式に従ってＹ（輝度）、Ｕ（＝Ｂ−Ｙ）およびＶ（＝Ｒ−Ｙ）データに変換される。
【００１５】
Ｙ＝０．２９９Ｒ＋０．５８７Ｇ＋０．１１４Ｂ−１２８                                            ・・・（１）
Ｕ＝−０．１６８Ｒ−０．３３１Ｇ＋０．５Ｂ                                                      ・・・（２）
Ｖ＝０．５Ｒ−０．４１８７Ｇ−０．０８１３Ｂ                                                      ・・・（３）
【００１６】
ステップＳ７では輪郭強調が実行され、ステップＳ８ではＪＰＥＧアルゴリズムに従って画像圧縮が実行される。このようにして得られたＪＰＥＧ画像データは上述したようにＰＣカード１７に記録される。
【００１７】
図３および図４を参照して、画像圧縮における直交変換を説明する。本実施形態において直交変換は２次元離散コサイン変換（２次元ＤＣＴ）であり、下記（４）式に従って実行される。なおｘ方向は、図４において水平方向であり、右向きが正である。ｙ方向は、図４において垂直方向であり、下向きが正である。すなわち画素データｆ（０，０）は画像データＤ１の左上隅に位置する１８５であり、画素データｆ（７，７）は右下隅に位置する１１２である。また図４の例において、画素データは８ビットすなわち最大値が２５５のデジタルデータである。
【００１８】
【数１】
2004166048.tif 000003
【００１９】
８×８の２次元マトリクスの画素データにより構成される画像データＤ１に２次元ＤＣＴを施すことによって、６４個の異なる空間周波数の２次元ＤＣＴ係数Ｆ（ｕ，ｖ）が得られる。これらの２次元ＤＣＴ係数のうち、Ｆ（０，０）は直流成分であり、残りの６３個の２次元ＤＣＴ係数は交流成分である。
【００２０】
２次元ＤＣＴは、２次元マトリクスのｘ方向に１次元ＤＣＴを施した後、ｙ方向に１次元ＤＣＴを施すことによって実行される。１次元ＤＣＴは、図３に示す手順（Ｃｈｅｎの高速１次元ＤＣＴ）によって計算される。なお図３において、ｆ（０）は画像データＤ１の左端の画素データであり、ｆ（１）、ｆ（２）、ｆ（３）・・・ｆ（７）はｆ（０）から右方向に向かって並んでいる。Ｆ（０）は直流成分の１次元ＤＣＴ係数である。Ｆ（１）は最も低い空間周波数の１次元ＤＣＴ係数であり、空間周波数はＦ（２）、Ｆ（３）、Ｆ（４）・・・Ｆ（７）の順に高くなる。実線の矢印は加算を意味し、点線の矢印は減算を意味する。また矢印に隣接して表示した０．７０７１等の数値は、その数値を掛けて加算または減算することを意味する。
【００２１】
すなわち、ステップＰ１ではｆ（０）＋ｆ（７）が演算され、ステップＰ２ではｆ（０）＋ｆ（３）＋ｆ（４）＋ｆ（７）が演算される。ステップＰ３ではｆ（０）＋ｆ（１）＋ｆ（２）＋ｆ（３）＋ｆ（４）＋ｆ（５）＋ｆ（６）＋ｆ（７）が演算される。この演算結果に０．７０７１を乗じるとともに１０２４（＝１２８×８）×０．７０７１を減算することによって、直流成分の１次元ＤＣＴ係数Ｆ（０）が求められる。
【００２２】
同様にして、ステップＰ４ではｆ（１）＋ｆ（６）が演算され、ステップＰ５ではｆ（１）＋ｆ（２）＋ｆ（５）＋ｆ（６）が演算される。ステップＰ６ではｆ（０）−ｆ（１）−ｆ（２）＋ｆ（３）＋ｆ（４）−ｆ（５）−ｆ（６）＋ｆ（７）が演算され、この演算結果に０．７０７１を乗じることによって交流成分の１次元ＤＣＴ係数Ｆ（４）が求められる。
【００２３】
図４の例において、画像データＤ１から中間データＤ２を求める方法を説明する。画像データＤ１の最上段に位置する１８５、１７７、１７２、・・・１５０の画素データに対してｘ方向に１次元ＤＣＴを施すと、２０９、６６、６、・・・−１の１次元ＤＣＴ係数が得られる。２段目に位置する１８３、１７３、１６７、・・・１４７の画素データに対してｘ方向に１次元ＤＣＴを施すと、１８４、６６、１４、・・・３の１次元ＤＣＴ係数が得られる。このようにして、画像データＤ１において各段の１次元マトリクスの画素データにそれぞれ１次元ＤＣＴを施すと、８×８の２次元マトリクスの１次元ＤＣＴ係数により構成される中間データＤ２が得られる。
【００２４】
従来、１次元ＤＣＴに先立ち、生データすなわち画像データＤ１の全ての画素データから１２８を減算しており、図４の例では、最上段の画素データは、５７、４９、４４、・・・２２に変換されてから１次元ＤＣＴを施されていた。これに対して本実施形態では、生データから１２８を減算することはなく、ステップＰ３の後、直流成分の１次元ＤＣＴ係数Ｆ（０）を求める際に、１０２４（＝１２８×８）×０．７０７１が減算される。すなわちステップＰ３の後に初めて、ｆ（０）〜ｆ（７）にそれぞれ含まれていた１２８に対応する値が減算される。一方、交流成分の１次元ＤＣＴ係数Ｆ（１）、Ｆ（２）、・・・Ｆ（７）に関しては、これらを求める過程において、それぞれ減算が４回行われ、生データに含まれていた１２８に対応した成分は消去されている。したがって１次元ＤＣＴ係数を求める直前では、１２８に関連した減算は行われない。
【００２５】
ｘ方向の１次元ＤＣＴによって中間データＤ２が得られると、次に、中間データＤ２に対してｙ方向に１次元ＤＣＴが施される。この１次元ＤＣＴの計算手順はｘ方向の１次元ＤＣＴと基本的に同じであるが、ｙ方向の１次元ＤＣＴの後、１／４が乗じられる。すなわち、例えば最左列に位置する２０９、１８４、１６７、・・・８６の画素データに対してｙ方向に１次元ＤＣＴを施した後、各数値にそれぞれ１／４を乗じることによって、２２３、４１、−７、・・・−５の１次元ＤＣＴ係数が得られる。このようにしてｙ方向に１次元ＤＣＴを施して得られた結果は、生データに対応する２次元ＤＣＴ係数である。
【００２６】
図５は、画像データの圧縮処理を示すフローチャートである。
８×８の２次元マトリクスの画素データＹ（ｘ，ｙ）が入力され、ステップＳ１１においてｙ座標が０に定められる。すなわち２次元マトリクスの最上段の８個の画素データが選択される。ステップＳ１２ではｘ方向の１次元ＤＣＴが実行され、Ｆ（０，ｙ）、Ｆ（１，ｙ）、Ｆ（２，ｙ）、・・・Ｆ（７，ｙ）が求められる。ステップＳ１３では、（５）式に従って減算が行われ、１次元ＤＣＴ係数の直流成分Ｆ（０，ｙ）が求められる。
Ｆ（０，ｙ）＝Ｆ（０，ｙ）−１０２４×０．７０７１                                                          ・・・（５）
【００２７】
ステップＳ１４ではｙ座標が１だけ加算される。ステップＳ１５ではｙ座標の値が８よりも小さいか否かが判定される。ｙ座標の値が８に達していないとき、ステップＳ１２へ戻り、次の段に関して１次元ＤＣＴが実行される。このようにして１次元ＤＣＴが繰り返し実行され、ステップＳ１５においてｙ座標の値が８以上であると判定されると、ステップＳ１６へ進んでｙ方向の１次元ＤＣＴが実行される。
【００２８】
ステップＳ１６ではｘ座標が０に定められる。すなわち２次元マトリクスの最左列の８個の画素データが選択される。ステップＳ１７ではｙ方向の１次元ＤＣＴが実行され、２次元ＤＣＴ係数Ｆ（ｘ，０）、Ｆ（ｘ，１）、Ｆ（ｘ，２）、・・・Ｆ（ｘ，７）が求められる。ステップＳ１８では、ｘ座標が１だけ加算される。ステップＳ１９ではｘ座標の値が８よりも小さいか否かが判定される。ｘ座標の値が８に達していないとき、ステップＳ１７へ戻り、次の段に関して方向の１次元ＤＣＴが実行される。このようにして１次元ＤＣＴが繰り返し実行され、ステップＳ１９においてｘ座標の値が８以上であると判定されると、ステップＳ２０へ進む。
【００２９】
ステップＳ２０では、８×８の２次元マトリクスの２次元ＤＣＴ係数の各要素に対して、所定の量子化テーブルを用いて量子化が実行され、量子化ＤＣＴ係数が得られる。ステップＳ２１では、量子化ＤＣＴ係数に対してエントロピー符号化が実行され、これにより圧縮データが得られる。
【００３０】
以上のように本実施形態では、ｘ方向の１次元ＤＣＴにより得られた直流成分の１次元ＤＣＴ係数に対応した数値のみから１０２４×０．７０７１を減算するように構成されている。すなわち８×８の画素データに対する２次元ＤＣＴにおいて、１２８に関する減算は合計８回行われるだけである。したがって、従来のように生データを構成する６４個の画素データからそれぞれ１２８を減算する場合と比較して、減算の回数は１／８に減少する。
【００３１】
図６は、第２の実施形態における画像データの圧縮処理を示すフローチャートである。第２の実施形態では、１２８の減算を行う対象が第１の実施形態と異なる。
【００３２】
ステップＳ３１ではｙ座標が０に定められ、ステップＳ３２ではｘ方向の１次元ＤＣＴが実行される。ステップＳ３３ではｙ座標が１だけ加算される。ステップＳ３４ではｙ座標の値が８よりも小さいか否かが判定され、ｙ座標の値が８に達していないとき、ステップＳ３２へ戻り、次の段に関して１次元ＤＣＴが実行される。ステップＳ３２においてｙ座標の値が８以上であると判定されると、ステップＳ３５へ進んでｙ方向の１次元ＤＣＴが実行される。このように本実施形態では、ｘ方向の１次元ＤＣＴの処理の間に１２８に関する減算は実行されない。
【００３３】
ステップＳ３５ではｘ座標が０に定められる。ステップＳ３６ではｙ方向の１次元ＤＣＴが実行される。ステップＳ３７ではｘ座標が１だけ加算され、ステップＳ１９ではｘ座標の値が８よりも小さいか否かが判定される。ｘ座標の値が８に達していないとき、ステップＳ３６へ戻り、次の段に関して１次元ＤＣＴが実行される。ステップＳ３８においてｘ座標の値が８以上であると判定されると、ステップＳ３９へ進み、（６）式に従って減算が行われ、２次元ＤＣＴ係数の直流成分Ｆ（０，０）が求められる。
Ｆ（０，０）＝Ｆ（０，０）−８１９２×０．５                                                        ・・・（６）
【００３４】
ステップＳ４０では、８×８の２次元マトリクスの２次元ＤＣＴ係数の各要素に対して量子化が実行され、量子化ＤＣＴ係数が得られる。ステップＳ４１では、量子化ＤＣＴ係数に対してエントロピー符号化が実行され、これにより圧縮データが得られる。
【００３５】
以上のように本実施形態では、ｘ方向の１次元ＤＣＴにより得られた直流成分の１次元ＤＣＴ係数に対しては１２８の減算を実行せず、ｙ方向の１次元ＤＣＴにより得られた直流成分の２次元ＤＣＴ係数に対応した数値のみから８１９２×０．５を減算している。すなわち本実施形態では、２次元ＤＣＴにおいて、１２８に関する減算は１回行われるだけである。したがって、従来と比較して減算の回数は１／６４に減少する。
【００３６】
なお上記２つの実施形態は直交変換として２次元ＤＣＴを例にとったが、本発明は、２次元ＤＣＴ以外の直交変換においても適用可能である。
【００３７】
【発明の効果】
以上のように本発明によれば、画像データに対する直交変換において減算の回数を大幅に減らし、画像圧縮処理を高速化することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態である画像圧縮装置を備えたデジタルカメラの電気的および光学的な構成を示すブロック図である。
【図２】デジタル信号処理回路において実行される画像処理の手順を示す図である。
【図３】１次元ＤＣＴの計算手順を示す図である。
【図４】画像データと中間データと２次元ＤＣＴ係数の各２次元マトリクスを示す図である。
【図５】画像データの圧縮処理を示すフローチャートである。
【図６】第２の実施形態における画像データの圧縮処理を示すフローチャートである。
【符号の説明】
１０  撮像素子
【図１】
2004166048.tif 000004
【図２】
2004166048.tif 000005
【図３】
2004166048.tif 000006
【図４】
2004166048.tif 000007
【図５】
2004166048.tif 000008
【図６】
2004166048.tif 000009