(57)【特許請求の範囲】
【請求項１】
画像データを圧縮符号化して第２の符号化データを生成する画像符号化装置であって、
前記画像データを第１の圧縮方式により圧縮符号化して第１の符号化データを生成する第１の圧縮符号化手段と、
前記第１の圧縮方式とは異なる第２の圧縮方式で使用される複数のハフマンテーブルを保持する記憶手段と、
前記第１の符号化データのデータサイズの、前記画像データのデータサイズに対する比率に基づいて、前記記憶手段に保持された前記複数のハフマンテーブルのうちのいずれかを選択する符号化パラメータ選択手段と、
前記画像データを前記符号化パラメータ選択手段が選択したハフマンテーブルを使用して前記第２の圧縮方式により圧縮符号化して前記第２の符号化データを生成する第２の圧縮符号化手段と、
を備えることを特徴とする画像符号化装置。
【請求項２】
前記第１の圧縮符号化手段と前記第２の圧縮符号化手段は、同一の画像データからそれぞれ異なる前記第１及び第２の符号化データを生成することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記第２の圧縮方式は、画像データのＪＰＥＧ圧縮符号化を含むことを特徴とする請求項１又は２に記載の画像符号化装置。
【請求項４】
前記符号化パラメータ選択手段は、前記比率と、前記複数のハフマンテーブルそれぞれに対応して予め設定された複数の閾値とを比較し、この比較結果に基づいて前記選択を行うことを特徴とする請求項１〜３のいずれか１項に記載の画像符号化装置。
【請求項５】
前記符号化パラメータ選択手段は、前記比率が小さいほど、短い符号を割り当てる傾向が強いハフマンテーブルを選択することを特徴とする請求項１〜４のいずれか１項に記載の画像符号化装置。
【請求項６】
前記第１の圧縮方式は、画像データの予測符号化及びハフマン符号化を含むことを特徴とする請求項１〜５のいずれか１項に記載の画像符号化装置。
【請求項７】
撮像素子から得られた１つの画像データに関するＲＡＷデータ及びＪＰＥＧデータの同時記録モードにおいて、前記第１の圧縮符号化手段及び前記第２の圧縮符号化手段は、前記第１及び第２の符号化データの生成を行うことを特徴とする請求項２に記載の画像符号化装置。
【請求項８】
前記記憶手段は、前記第２の圧縮方式で使用される複数の量子化テーブルをさらに保持し、
前記符号化パラメータ選択手段は、前記比率に基づいて、前記記憶手段に保持された前記複数の量子化テーブルのうちのいずれかを選択することを特徴とする請求項１〜７のいずれか１項に記載の画像符号化装置。
【請求項９】
前記符号化パラメータ選択手段が選択可能な複数の量子化テーブルは、前記比率に応じた画像データの低周波成分と符号化時に発生するブロックノイズとの関係に基づき決められることを特徴とする請求項８に記載の画像符号化装置。
【請求項１０】
画像データを圧縮符号化して第２の符号化データを生成する画像符号化方法であって、
第１の圧縮符号化手段が、前記画像データを第１の圧縮方式により圧縮符号化して第１の符号化データを生成する第１の圧縮符号化ステップと、
符号化パラメータ選択手段が、前記第１の符号化データのデータサイズの、前記画像データのデータサイズに対する比率に基づいて、記憶手段に保持された、前記第１の圧縮方式とは異なる第２の圧縮方式で使用される複数のハフマンテーブルのうちのいずれかを選択する符号化パラメータ選択ステップと、
第２の圧縮符号化手段が、前記画像データを前記符号化パラメータ選択ステップで選択したハフマンテーブルを使用して前記第２の圧縮方式により圧縮符号化して前記第２の符号化データを生成する第２の圧縮符号化ステップと、
を備えることを特徴とする画像符号化方法。
【請求項１１】
請求項１０に記載の画像符号化方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムを記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを符号化し、記録媒体に記録する、画像符号化装置及び画像符号化方法に関するものである。
【背景技術】
【０００２】
電子カメラ等の画像処理装置において撮像素子によって取得された画像データは、デジタルデータにＡ／Ｄ変換され、多くの場合は必要な画像処理を行った後にＪＰＥＧ符号化等の非可逆圧縮変換を施され、ＪＰＥＧ画像データとして記録媒体に格納される。これにより、記憶容量が限られている記録媒体に、多くの画像データを効率的に格納することが可能になる。
【０００３】
一方、より画像品質を重視したい場合においては、電子カメラ等の画像処理装置内部では一切の画像処理を行うことなく、撮像素子から得られる全ての情報（以下、「ＣＣＤ−ＲＡＷデータ」とも呼ぶ）に可逆圧縮変換を施して記録媒体に記録する。そして、記録された画像データ（以下、「圧縮ＲＡＷデータ」とも呼ぶ）に対して、電子カメラのメーカ等が提供するコンピュータソフトウェア等により、より高品位な画像処理を行うことで、ユーザは、画像品質のより優れた画像を得ることができる。このような場合は、圧縮ＲＡＷデータの１つ１つに対応させてＪＰＥＧ画像データを同時に記録することで、ユーザが撮影現場で記録画像を確認したり、そのまま記録画像としてデータ保存やプリントアウトしたりできるようになっている。
【０００４】
電子カメラは、ＣＣＤ−ＲＡＷデータから圧縮ＲＡＷデータやＪＰＥＧ画像データを生成するために、種々の符号化パラメータに基づいてＣＣＤ−ＲＡＷデータを符号化する。符号化パラメータは、例えば、電子カメラがハフマン符号化のために使用するハフマンテーブルの種類や、量子化のために使用する量子化テーブルの種類などを示す。使用される符号化パラメータの種類によって、圧縮ＲＡＷデータやＪＰＥＧ画像データの圧縮率は変化する。なお、ハフマンテーブルは、どのような値にどのような符号を割り当てるかを示す。
【０００５】
従来の電子カメラは、多くの場合、即ち、圧縮率が最大となるように好適な符号化パラメータを複数の符号化パラメータの中から選択して適用することで、記録媒体への効率的な画像の記録を行っている。例えば、特許文献1においては、記憶手段に保持されている複数の符号化パラメータによる符号化を１つずつ試み、圧縮率が最大となった符号化パラメータを採用する技術が提案されている。
【特許文献１】特開２００１−３２６９３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献1の従来技術では、記憶手段に保持されている複数の符号化パラメータの数だけ符号化を試みなくてはならず、１つの画像データあたりの処理時間が長くなる。そのため、装置のレスポンスの低下、連写速度／連写コマ数の低下が発生するという問題があった。
【０００７】
本発明は、このような状況に鑑みてなされたものであり、画像符号化装置が使用する圧縮効率がよい符号化パラメータを高速に選択する技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の問題点を解決するために、本発明による画像符号化装置は、画像データを圧縮符号化して第２の符号化データを生成する画像符号化装置であって、前記画像データを第１の圧縮方式により圧縮符号化して第１の符号化データを生成する第１の圧縮符号化手段と、前記第１の圧縮方式とは異なる第２の圧縮方式で使用される複数のハフマンテーブルを保持する記憶手段と、前記第１の符号化データのデータサイズの、前記画像データのデータサイズに対する比率に基づいて、前記記憶手段に保持された前記複数のハフマンテーブルのうちのいずれかを選択する符号化パラメータ選択手段と、前記画像データを前記符号化パラメータ選択手段が選択したハフマンテーブルを使用して前記第２の圧縮方式により圧縮符号化して前記第２の符号化データを生成する第２の圧縮符号化手段と、を備えることを特徴とする。
【００１０】
また、本発明による画像符号化方法は、画像データを圧縮符号化して第２の符号化データを生成する画像符号化方法であって、第１の圧縮符号化手段が、前記画像データを第１の圧縮方式により圧縮符号化して第１の符号化データを生成する第１の圧縮符号化ステップと、符号化パラメータ選択手段が、前記第１の符号化データのデータサイズの、前記画像データのデータサイズに対する比率に基づいて、記憶手段に保持された、前記第１の圧縮方式とは異なる第２の圧縮方式で使用される複数のハフマンテーブルのうちのいずれかを選択する符号化パラメータ選択ステップと、第２の圧縮符号化手段が、前記画像データを前記符号化パラメータ選択ステップで選択したハフマンテーブルを使用して前記第２の圧縮方式により圧縮符号化して前記第２の符号化データを生成する第２の圧縮符号化ステップと、を備えることを特徴とする。
【００１２】
さらなる本発明の特徴は、以下本発明を実施するための最良の形態および添付図面によって明らかになるものである。
【発明の効果】
【００１３】
以上説明したように、本発明によれば、画像符号化装置が使用する圧縮効率が良い符号化パラメータを高速に選択することが可能になる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面に沿って、本発明を好適な実施形態に従って詳細に説明する。
【００１５】
［第１の実施形態］
第１の実施形態では、撮像装置が、ＪＰＥＧ画像データの圧縮率に基づいて、圧縮ＲＡＷデータを生成するための符号化パラメータを選択する技術を説明する。
【００１６】
図１は、画像符号化装置、画像復号化装置それぞれの機能を有する画像処理装置として本実施形態で撮像装置を用いた場合に、この撮像装置の概略構成を示す図である。同図により、撮像装置１００において本画像の可逆圧縮・記録の際に符号化回路におけるハフマン符号・復号回路を利用して、撮像素子により撮影された画像データを一切の画像処理を施さずに可逆圧縮・記録する場合について説明する。また、ＲＡＷデータに関連付けられ、同時記録されるＪＰＥＧ画像は、撮像素子により撮影された画像データに所定の処理を施した後に符号化回路により非可逆圧縮されるものとする。この同時記録されるＪＰＥＧ画像を閲覧することにより、ＲＡＷデータを現像処理しなくとも、すぐに画像の内容を把握することが可能になる。
【００１７】
１０は撮影像を光学的に結像させる撮像レンズ、１２は撮影像をアナログの電気信号に変換する撮像素子（ＣＣＤ）、１４は撮像素子１２のアナログ信号出力をデジタル信号に変換するＡ／Ｄ変換器である。ここで、Ａ／Ｄ変換器１４から出力されたデジタルデータを、以下ではＣＣＤ−ＲＡＷデータとする。尚、撮像素子は、ＣＭＯＳ等でもよく、ＣＭＯＳの場合も同様にＲＡＷデータが得られる。
【００１８】
１６はＤ／Ａ変換器、１８はＴＦＴ  ＬＣＤ等からなる画像表示部である。メモリ４０に書き込まれた表示用の画像データはＤ／Ａ変換器１６を介してデジタルデータからアナログデータに変換され、画像表示部１８により表示される。
【００１９】
２０はメモリカードやハードディスク等の記録媒体であり、撮影された画像データ等は記録媒体２０に記録される。
【００２０】
３０は画像処理回路であり、撮影、あるいは記録されたＣＣＤ−ＲＡＷデータに対して所定の画素補間処理や色変換処理等の現像処理やリサイズ処理を行う。
【００２１】
４０は撮影した画像データを一時的に格納するためのメモリであり、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記録容量備えている。例えば、Ａ／Ｄ変換器１４から出力された画像のデジタルデータがメモリ制御回路５０、画像処理回路３０を介して、あるいは直接メモリ制御回路５０を介して、メモリ４０に書き込まれる。
【００２２】
５０はメモリ制御回路であり、Ａ／Ｄ変換器１４、Ｄ／Ａ変換器１６、記録媒体２０、画像処理回路３０、メモリ４０、ＤＰＣＭ変換回路８０、符号化回路６０へのデータフローを制御する。
【００２３】
６０は画像データを圧縮・伸長する符号化回路であって、ＤＣＴ変換回路６２、量子化回路６４、ＭＵＸ（データセレクタ）６６、ハフマン符号・復号回路６８で構成される。データセレクタ６６は、ＪＰＥＧ符号化・復号化する場合か、ＣＣＤ−ＲＡＷデータを可逆圧縮・伸長する場合かで切り替えを行う。
【００２４】
７０はＭＵＸ（データセレクタ）で、ＪＰＥＧ符号化・復号化する場合か、ＣＣＤ−ＲＡＷデータを可逆圧縮・伸長する場合かで切り替えを行う。
【００２５】
８０は、符号化回路６０のハフマン符号・復号回路６８を利用してＣＣＤ−ＲＡＷデータの可逆圧縮伸長処理を行うために、ＣＣＤ−ＲＡＷデータに対してＤＰＣＭ変換を行う回路である。ＤＰＣＭ変換回路８０は、情報源のエントロピーを小さくし、ハフマン符号化における符号化効率を高めるために、ＣＣＤ−ＲＡＷデータのＤＰＣＭ変換（予測符号化）を行う。ＤＰＣＭ変換回路８０は、例えば、１０ビットのＣＣＤ−ＲＡＷデータに対しＤＰＣＭ変換（予測符号化）、及び１１ビットのＤＰＣＭデータに対して逆ＤＰＣＭ変換を行う。
【００２６】
ＤＰＣＭ変換は、画像情報が周辺画素との相関関係が強いことを利用して、画像情報を隣接画素（左隣の画素）の画素データと符号化を行う画素の画素データとの差分値に変換する。これにより、情報源のエントロピーを減少させることで、ハフマン符号化における符号化効率を高めることができる。本実施形態では、図２に示すようなＣＣＤカラーフィルタ配列を考慮して、常に２画素左隣の画素データとの差分値を算出する。従って、ＤＰＣＭ変換回路８０は入力されたＣＣＤ−ＲＡＷデータと、２つ前に入力されたＣＣＤ−ＲＡＷデータとの差分を求めるような構成となっている。
【００２７】
９０はモードダイアルスイッチ９２による設定に従い、またＲＯＭ９６（読み出し専用メモリ）に格納された内容に従い、撮像装置１００全体及び撮像装置１００を構成する各回路の動作制御を行うシステム制御回路である。
【００２８】
９２はモードダイアルスイッチで、電源オフ、撮影モード、再生モード等の各機能モードを切り替え設定することができる。
【００２９】
９６は読み出し専用メモリ（ＲＯＭ）で、システム制御回路５０が使用するプログラム及び、符号化回路６０に設定する量子化テーブル、ハフマンテーブルが予め記憶されている。ＲＯＭ９６に格納された量子化テーブルは、メモリ４０に一旦転送され、メモリ制御回路５０を介して、符号化パラメータ格納メモリ２００に保持される。
【００３０】
２００は、符号化パラメータ格納メモリであり、ハフマン符号・復号回路６８で使用されるハフマンテーブルを格納している。また、量子化回路６４にて、使用される量子化テーブル値を格納している。
【００３１】
可逆圧縮時のハフマン符号化におけるＤＰＣＭデータの性質とハフマンテーブルの関係について、図３、図４を用いて説明する。図３は、画像データをＪＰＥＧ符号化した場合に、圧縮率が高い場合について説明した図である。横軸にＤＰＣＭデータの予測差分値の絶対値を取り、実線を予測差分値の絶対値の発生頻度、破線をハフマンテーブルの符号長とする。画像の圧縮率は、α＝（符号化後の画像データサイズ）／（符号化前の画像データサイズ）によって、定義される。
【００３２】
一般に、圧縮率が高い画像データの場合、画像データの画素間の相関が高いため、予測差分値の絶対値が小さいところに発生頻度が偏っている。そこで、小さい予測差分値の絶対値に短い符号長、大きい予測差分値の絶対値に長い符号長を割り当てるようなハフマンテーブルを適用すると、ハフマン符号化データが小さくなる。
【００３３】
図４は、画像データをＪＰＥＧ符号化した場合に、圧縮率が低い場合について説明した図である。一般に、符号化後の圧縮率が低い画像データの場合、画像データの各画素の相関が低いために、予測差分値の絶対値が小さいものから大きいものまでなだらかな発生頻度で分布している。そのため、小さい予測差分値の絶対値から大きい予測差分値の絶対値まで、それほど大きな差のない符号長を割り当てるハフマンテーブルを適用すると、ハフマン符号化データは小さくなる。
【００３４】
第１の実施形態において、ＣＣＤ−ＲＡＷデータからＪＰＥＧ画像データ及び圧縮ＲＡＷデータを生成する手順を、図５のフローチャート、及び、図６のグラフを用いて説明する。なお、ハフマンテーブルは、予め統計的に算出されており、前述のとおり、ＲＯＭ９６から、システム制御回路９０、メモリ４０を介して、符号化パラメータ格納メモリ２００に保持されているとする。
【００３５】
まず、撮像されてメモリ４０に格納されている画像データ（ＣＣＤ−ＲＡＷデータ）がメモリ制御回路５０によって取得され、符号化回路６０へ送られる（Ｓ１０１）。
【００３６】
このとき、システム制御回路９０は、データセレクタ７０及び、データセレクタ６６に対して、ＣＣＤ−ＲＡＷデータからＪＰＥＧ画像データを生成するための信号を送信する。そのため、符号化回路６０は、ＤＣＴ変換回路６２、量子化回路６４、ハフマン符号・復号回路６８を介してＪＰＥＧ符号化処理を行う。符号化データ（ＪＰＥＧ画像データ）は、メモリ制御回路５０を経由して、メモリ４０に格納される（Ｓ１０２）。
【００３７】
次に、システム制御回路９０は、Ｓ１０２で生成されたＪＰＥＧ画像データから、符号化に使用された量子化テーブルの値を取得する。「量子化テーブルの値」とは、量子化ステップの大きさを示す値であり、この値が大きいほどＪＰＥＧ画像データの圧縮率は高くなる。システム制御回路９０は、取得した量子化テーブルの値に基づいて、圧縮率−ハフマン変換係数ｋを選択する（Ｓ１０３）。詳細は図６を参照して後述するが、量子化テーブルの値が大きいほど、ｋの値は小さくなる。
【００３８】
次に、システム制御回路９０は、Ｓ１０２で生成されたＪＰＥＧ画像データの圧縮率α（ＪＰＥＧ画像データのサイズ／ＣＣＤ−ＲＡＷデータのサイズ）を算出する（Ｓ１０４）。
【００３９】
次に、システム制御回路９０は、ハフマンテーブル選択値ｈ＝ｋ×αに基づき、符号化パラメータ格納メモリからハフマンテーブルを選択する（Ｓ１０５）。図６を参照して、詳細を説明する。
【００４０】
図６のグラフは、横軸は圧縮率αであり左から右へ行くほど圧縮率は低くなる（αの値は大きくなる）。また、縦軸は、圧縮率から求められるハフマンテーブル選択値ｈであり、上から下に行くほど、絶対値が小さい予測差分値に短い符号長、絶対値が大きい予測差分値に長い符号長を割り当てる傾向にある。ここでは、Ｓ１０２で使用され得る量子化テーブルが、Ｑ０、Ｑ１、Ｑ２の三種類あるものとする。Ｑ０は、量子化ステップが小さい量子化テーブル、Ｑ１は、量子化ステップが中程度の量子化テーブル、Ｑ２は、量子化ステップが大きい量子化テーブルとする。
【００４１】
ここで、圧縮率が大きい（αが小さい）ほど、ＣＣＤ−ＲＡＷデータは低周波成分の多い画像データであると推定される。そのため、圧縮ＲＡＷデータを生成するために、絶対値が小さい予測差分値に特に短い符号を割り当てるハフマンテーブルが使用されることが好ましい。
【００４２】
しかし、ＪＰＥＧ画像データの圧縮率は、ＣＣＤ−ＲＡＷデータは低周波成分の量だけではなく、量子化ステップの大きさによっても変化する。同じＣＣＤ−ＲＡＷデータであれば、量子化ステップが小さいほど、圧縮率も小さくなる（αが大きくなる）。そこで、量子化テーブルの値に基づいて前述の圧縮率−ハフマン変換係数ｋを選択することにより、図６のグラフに示すように、ハフマンテーブル選択値ｈを算出する。
【００４３】
図６では、量子化テーブルがＱ１であり、αの値がＡであるので、ハフマンテーブル選択値は、Ｈ２とＨ３の中間値となるため、選択されるハフマンテーブルは、Ｐ２となる。なお、図６のＨ０〜ＨＮは、ハフマンテーブルＰＮを選択するための閾値であり、その間隔は任意である。また、閾値の数も任意であり、閾値の数が多いほど、システム制御回路９０は、多くのハフマンテーブルからハフマンテーブルを選択できる。
【００４４】
次に、Ｓ１０１と同様に、メモリ制御回路５０は再度ＣＣＤ−ＲＡＷデータをメモリ４０から取得し、符号化回路６０に送る。そして、符号化回路６０は、Ｓ１０５で選択したハフマンテーブルを用いて、ＣＣＤ−ＲＡＷデータを圧縮し、圧縮ＲＡＷデータを得る（Ｓ１０６）。このとき、システム制御回路９０は、データセレクタ７０及び、データセレクタ６６に対して、ＲＡＷ可逆圧縮（符号化）を行う信号を送信する。
【００４５】
以上説明したように、本実施形態によれば、撮像装置１００は、まず、ＣＣＤ−ＲＡＷデータをＪＰＥＧ符号化する。そして、得られたＪＰＥＧ画像データの圧縮率に基づいてハフマンテーブルを選択し、ＣＣＤ−ＲＡＷデータを符号化する。撮像装置１００は、得られたＪＰＥＧ画像データの圧縮率が大きいほど、ＣＣＤ−ＲＡＷデータは低周波成分の多い画像データであると推定し、絶対値が小さい予測差分値に特に短い符号を割り当てるハフマンテーブルを選択する。反対に、撮像装置１００は、得られたＪＰＥＧ画像データの圧縮率が小さい場合ほど、予測差分値の絶対値の大小に関わらず、比較的均等な長さの符号を割り当てるハフマンテーブルを選択する。
【００４６】
これにより、撮像装置１００は、どのハフマンテーブルを使用するかについて試行錯誤する必要が無くなり、高速にハフマンテーブルを選択しつつも、画像データを比較的効率的に符号化することが可能になる。
【００４７】
ここで、Ｓ１０３の処理を省略し、量子化テーブルの値に関わらず同じ圧縮率−ハフマン変換係数ｋが使用されても、本実施形態の効果はある程度得られる。
【００４８】
［第２の実施形態］
第１の実施形態では、撮像装置１００は、ＣＣＤ−ＲＡＷデータから生成されたＪＰＥＧ画像データの圧縮率に基づいて、ＲＡＷ可逆圧縮のためのハフマンテーブルを選択した。第２の実施形態では、撮像装置１００は、ＣＣＤ−ＲＡＷデータから生成された圧縮ＲＡＷデータの圧縮率に基づいて、ＪＰＥＧ符号化のための量子化テーブル及びハフマンテーブルを選択する。
【００４９】
第２の実施形態において、ＣＣＤ−ＲＡＷデータから圧縮ＲＡＷデータ及びＪＰＥＧ画像データを生成する手順を、図７のフローチャート、及び、図８のグラフを用いて説明する。なお、量子化テーブル及びハフマンテーブルは、予め統計的に算出されており、ＲＯＭ９６から、システム制御回路９０、メモリ４０を介して、符号化パラメータ格納メモリ２００に保持されているとする。
【００５０】
まず、撮像されてメモリ４０に格納されている画像データ（ＣＣＤ−ＲＡＷデータ）がメモリ制御回路５０によって取得され、符号化回路６０へ送られる（Ｓ２０１）。
【００５２】
このとき、システム制御回路９０は、データセレクタ７０及び、データセレクタ６６に対して、ＣＣＤ−ＲＡＷデータから圧縮ＲＡＷデータを生成するための信号を送信する。そのため、符号化回路６０は、ＤＰＣＭ変換回路８０、ハフマン符号・復号回路６８を介してＲＡＷ可逆圧縮処理を行う。符号化データ（圧縮ＲＡＷデータ）は、メモリ制御回路５０を経由して、メモリ４０に格納される（Ｓ２０２）。
【００５３】
次に、システム制御回路９０は、Ｓ２０２で生成された圧縮ＲＡＷデータの圧縮率α（圧縮ＲＡＷデータのサイズ／ＣＣＤ−ＲＡＷデータのサイズ）を算出する（Ｓ２０３）。
【００５４】
次に、システム制御回路９０は、Ｓ２０３で算出された圧縮率αから、ＪＰＥＧ画像を生成するのに好適な量子化テーブルを選択する（Ｓ２０４）。一般に、圧縮率が高い画像データは、画像データの画素間の相関が高いたく、低周波成分を多く含む。このような低周波成分を多く含む画像データの場合、人間の目はノイズを敏感に感じる傾向がある。よって、圧縮率が高い画像データの場合、符号化時に発生するブロックノイズ等を軽減させるために、システム制御回路９０は、値の小さな量子化テーブルを選択する。反対に、圧縮率が低い場合は、システム制御回路９０は、値の大きな量子化テーブルを選択する。図８では、圧縮率が低い（αが大きい）場合には、量子化ステップの大きな量子化テーブルＱ２が選択され、圧縮率が高い（αが小さい）場合は、量子化ステップの小さな量子化テーブルＱ０が選択されるグラフが示される。また、圧縮率α＝Ａにおいては、量子化テーブル選択値は、Ｕ１とＵ２の中間値となるため、選択される量子化テーブルは、Ｑ１となる。
【００５５】
圧縮ＲＡＷデータの圧縮率が低い（αが大きい）画像は、ＪＰＥＧ画像の圧縮率も低くなる傾向にある。そのため、αが大きい場合にＪＰＥＧ符号化に使用する量子化テーブルの値を大きくし、αが小さい場合に量子化テーブルの値を小さくすることで、生成されるＪＰＥＧ画像データのサイズのばらつきを抑制できる。
【００５６】
次に、システム制御回路９０は、Ｓ２０３で算出された圧縮率αから、ＪＰＥＧ画像を生成するのに好適なハフマンテーブルを選択する（Ｓ２０５）。ハフマンテーブルの選択方法及び、ハフマンテーブルＨ１〜ＨＮの性質は、第１の実施形態と同様なため、説明は省略する。図８では、圧縮率がαのとき、ハフマンテーブル選択値は、Ｈ２とＨ３の中間値となるため、選択される量子化テーブルは、Ｐ２となる例を示している。
【００５７】
次に、Ｓ２０１と同様に、メモリ制御回路５０は再度ＣＣＤ−ＲＡＷデータをメモリ４０から取得し、符号化回路６０に送る。そして、符号化回路６０は、Ｓ２０４で選択した量子化テーブル及びＳ２０５で選択したハフマンテーブルを用いて、ＣＣＤ−ＲＡＷデータをＪＰＥＧ符号化し、ＪＰＥＧ画像データを得る（Ｓ２０６）。このとき、システム制御回路９０は、データセレクタ７０及び、データセレクタ６６に対して、ＪＰＥＧ符号化を行う信号を送信する。
【００５８】
以上説明したように、本実施形態によれば、撮像装置１００は、まず、ＣＣＤ−ＲＡＷデータをＲＡＷ可逆圧縮する。そして、得られた圧縮ＲＡＷデータの圧縮率に基づいて量子化テーブル及びハフマンテーブルを選択し、ＣＣＤ−ＲＡＷデータをＪＰＥＧ符号化する。
【００５９】
これにより、撮像装置１００は、どの量子化テーブルやハフマンテーブルを使用するかについて試行錯誤する必要が無くなり、高速に量子化テーブル及びハフマンテーブルを選択しつつも、画像データを比較的効率的にＪＰＥＧ符号化することが可能になる。
【００６０】
［第３の実施形態］
第３の実施形態では、撮像装置１００は、画像表示部１８に表示する表示用画像データをＪＰＥＧ符号化し、その圧縮率に基づいて、記録媒体２０に記録するための画像データをＪＰＥＧ符号化するためのハフマンテーブルを選択する。図９を参照して、第３の実施形態を説明する。
【００６１】
撮像装置１００のシャッター（不図示）がレリーズされるとＳ３０６に進み、そうでない場合、Ｓ３０２に進む（Ｓ３０１）。
【００６２】
Ｓ３０２で、撮像装置１００は、表示用画像データをメモリ４０から取得して符号化回路６０へ送る。表示用画像データは、所定のフレームレート（例えば、毎秒３０フレーム）で撮像素子１２から取得され、画像処理回路３０によって画像表示部１８での表示用に画像処理され、メモリ４０に格納されているものである。
【００６３】
次に、符号化回路６０は、Ｓ３０２で取得した表示用画像データをＪＰＥＧ符号化する（Ｓ３０３）。
【００６４】
次に、システム制御回路９０は、Ｓ３０３で得られたＪＰＥＧ画像データの圧縮率αを算出し（Ｓ３０４）、圧縮率αに基づいてハフマンテーブルを選択する（Ｓ３０５）。ハフマンテーブルの選択処理は、第１の実施形態及び第２の実施形態と同様のため、説明を省略する。
【００６５】
このようにして、シャッター（不図示）がレリーズされるまで、Ｓ３０２〜Ｓ３０５の処理が繰り返し実行され、選択されたハフマンテーブルが更新される。
【００６６】
Ｓ３０６では、撮像されてメモリ４０に格納されている画像データ（ＣＣＤ−ＲＡＷデータ）がメモリ制御回路５０によって取得され、符号化回路６０へ送られる。
【００６７】
次に、符号化回路６０は、Ｓ３０６で取得した画像データを、Ｓ３０５で選択したハフマンテーブルを用いてＪＰＥＧ符号化し、得られたＪＰＥＧ画像データをメモリ制御回路５０を介して記録媒体２０に格納する（Ｓ３０７）。Ｓ３０７では、ＪＰＥＧ符号化ではなく、ＲＡＷ可逆圧縮が行われても構わない。
【００６８】
以上説明したように、本実施形態によれば、撮像装置１００は、シャッター（不図示）がレリーズされるまで、所定のフレームレートで取得される表示用画像データをＪＰＥＧ符号化する。そして、得られたＪＰＥＧ画像データの圧縮率に基づいてハフマンテーブルを逐次選択し更新する。シャッター（不図示）がレリーズされると、撮像装置１００は、選択したハフマンテーブルを用いてＣＣＤ−ＲＡＷデータをＪＰＥＧ符号化する。
【００６９】
即ち、撮像装置１００は、得られたＪＰＥＧ画像データの圧縮率を目安にしてハフマンテーブルを選択する。
【００７０】
これにより、撮像装置１００は、どのハフマンテーブルを使用するかについて試行錯誤する必要が無くなり、高速にハフマンテーブルを選択しつつも、画像データを比較的効率的にＪＰＥＧ符号化することが可能になる。
【００７１】
［その他の実施形態］
上述した各実施の形態の処理は、各機能を具現化したソフトウェアのプログラムコードを記録した記憶媒体をシステム或は装置に提供してもよい。そして、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによって、前述した実施形態の機能を実現することができる。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスクなどを用いることができる。或いは、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることもできる。
【００７２】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現されるだけではない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含まれている。
【００７３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した各実施の形態の機能が実現される場合も含むものである。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施形態における撮像装置の概略図である。
【図２】撮像素子のカラーフィルタ配列を示す図である。
【図３】可逆圧縮時のハフマン符号化におけるＤＰＣＭデータの性質と適用するべきハフマンテーブルの関係を示した図である。
【図４】可逆圧縮時のハフマン符号化におけるＤＰＣＭデータの性質と適用するべきハフマンテーブルの関係を示した図である。
【図５】第１の実施形態において、ＪＰＥＧ画像データの圧縮率に基づいてＲＡＷ可逆圧縮のためのハフマンテーブルを選択する処理の流れを示すフローチャートである。
【図６】第１の実施形態において、ハフマンテーブルを選択するためのグラフを示す図である。
【図７】第２の実施形態において、圧縮ＲＡＷデータの圧縮率に基づいてＪＰＥＧ符号化のための量子化テーブル及びハフマンテーブルを選択する処理の流れを示すフローチャートである。
【図８】第２の実施形態において、量子化テーブル及びハフマンテーブルを選択するためのグラフを示す図である。
【図９】第３の実施形態において、表示用画像データから生成されたＪＰＥＧ画像データの圧縮率に基づいて、記録用のＪＰＥＧ画像データを生成するためのハフマンテーブルを選択する処理の流れを示すフローチャートである。
【符号の説明】
【００７５】
１０：撮影レンズ、１２：ＣＣＤ撮像素子、１４：Ａ／Ｄ変換器、１６：Ｄ／Ａ変換器、１８：画像表示部、２０：記録媒体、３０：画像処理回路、４０：メモリ、５０：メモリ制御回路、６０：符号化回路、６２：ＤＣＴ変換回路、６４：量子化回路、６６：ＭＵＸ、６８：ハフマン符号・復号回路、７０：ＭＵＸ、８０：ＤＰＣＭ変換回路、９０：システム制御回路、９２：モードダイアルスイッチ、９６：メモリ（ＲＯＭ）、１００：撮像装置
【図１】
0004682102.tif 000002
【図２】
0004682102.tif 000003
【図３】
0004682102.tif 000004
【図４】
0004682102.tif 000005
【図５】
0004682102.tif 000006
【図６】
0004682102.tif 000007
【図７】
0004682102.tif 000008
【図８】
0004682102.tif 000009
【図９】
0004682102.tif 000010