(57)【要約】      （修正有）【課題】  １つの画像ファイルでありながら、汎用のビューワプログラムで画像データを閲覧可能にし、尚且つ、ＲＡＷ画像データまで復元することを可能にする。【解決手段】  １コンポーネント当たり１２ビットのＣＣＤ−ＲＡＷ画像データを１コンポーネント当たり８ビットのデータに変換し、ＪＰＥＧ  Ｂａｓｅｌｉｎｅ符号化である非可逆符号化を行なう。この符号化データを復号し、各コンポーネントのビット数を８から１２ビットに増加させる。ＣＣＤ−ＲＡＷ画像データと、復号して得られた画像データとの差分である差分画像データを可逆符号化する。画像符号化データ生成部１１５で、非可逆符号化データのファイルフォーマットに許容されたアプリケーションデータセグメントに可逆符号化データを挿入した１つの画像データファイルを生成する。【選択図】  図１
2006173931.tif 000002
【特許請求の範囲】
【請求項１】
各コンポーネント当たりｍビットのＲＡＷ画像データを、各コンポーネント当たりｎ（ｎ＜ｍ）ビットで表わされる画像データとして符号化し、所定の記憶媒体に書き込む画像処理装置であって、
ＲＡＷ画像データをｎビットに変換し、汎用の非可逆符号化データを生成する第１の符号化手段と、
該第１の符号化手段で生成された符号化データを復号すると共に、各コンポーネントをｍビットに拡張する復号手段と、
該復号手段で得られた復号画像データと前記ＲＡＷ画像データとの差分である差分画像データを求め、当該差分画像データを可逆符号化する第２の符号化手段と、
前記第１の符号化手段で生成された汎用の非可逆符号化データ中に、前記第２の符号化手段で生成された可逆符号化データを、汎用の復号処理にてその情報を無視するための所定マーカを付加して挿入し、前記所定の記憶媒体に書き込むための１つの汎用の符号化画像データファイルを生成する画像ファイル生成手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記ＲＡＷ画像の画素のコンポーネントの並びはベイヤー配列であって、
前記第１の符号化手段は、
前記ベイヤー配列の１画素あたり４コンポーネントのデータを、通常のＲＧＢにおける１画素当たり３コンポーネントに変換する配列変換手段と、
該配列変換手段で得られたＲＧＢデータを、所定の色空間に変換する色空間変換手段と、
該色空間変換手段で変換して得られた各コンポーネントのビット数をｍビットからｎビットに削減するビット数削減手段と、
該ビット数削減手段で得られた、各ｍビットのコンポーネントをＪＰＥＧＢａｓｅｌｉｎｅ符号化するＪＰＥＧ−Ｂａｓｅｌｉｎｅ符号化手段とを備え、
前記復号手段は、
ＪＰＥＧＢａｓｅｌｉｎｅ復号するＪＰＥＧ−Ｂａｓｅｌｉｎｅ復号手段と、
復号して得られた各コンポーネントのビット数をｎビットからｍビットに増加させるビット数増加手段と、
該ビット数増加手段で増加した各コンポーネントで表わされる色空間を、ＣＣＤ−ＲＡＷの色空間と同じ空間に戻す逆色空間変換手段と、
該逆色空間変換手段で得られた画像データを、ベイヤー配列に戻す逆配列変換手段とを備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記配列変換手段は、ベイヤー配列の２×２の各コンポーネントをＣ１１、Ｃ１２、Ｃ２１、Ｃ２２と表現した場合、各画素毎のＣ１１のコンポーネントのデータ列と、Ｃ２１のコンポーネントのデータ列を連結した第１グループと、各画素毎のＣ１２のコンポーネントのデータ列とＣ２２のコンポーネントのデータ列を連結した第２グループとを生成することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記マーカは、ＪＰＥＧ  Ｂａｓｅｌｉｎｅ符号化で規定されるアプリケーションデータセグメントとすることを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記第２の符号化手段は、ＪＰＥＧ  Ｓｐａｔｉａｌ符号化手段であることを特徴とする請求項２または４に記載に画像処理装置。
【請求項６】
各コンポーネント当たりｍビットのＲＡＷ画像データを、各コンポーネント当たりｎ（ｎ＜ｍ）ビットで表わされる画像データとして符号化し、所定の記憶媒体に書き込む画像処理装置の制御方法であって、
前記撮像手段で撮像して得られた、ＲＡＷ画像データをｎビットに変換し、汎用の非可逆符号化データを生成する第１の符号化工程と、
該第１の符号化工程で生成された符号化データを復号すると共に、各コンポーネントをｍビットに拡張する復号工程と、
該復号工程で得られた復号画像データと前記ＲＡＷ画像データとの差分である差分画像データを求め、当該差分画像データを可逆符号化する第２の符号化工程と、
前記第１の符号化工程で生成された汎用の非可逆符号化データ中に、前記第２の符号化工程で生成された可逆符号化データを、汎用の復号処理にてその情報を無視するための所定マーカを付加して挿入し、前記所定の記憶媒体に書き込むための１つの汎用の符号化画像データファイルを生成する画像ファイル生成工程と
を備えることを特徴とする画像処理装置の制御方法。
【請求項７】
汎用の符号化画像データファイルを入力し、復号して所定の画像処理を行なう画像処理装置であって、
前記汎用の符号化画像データファイルを復号する第１の復号手段と、
該第１の復号手段で得られた各各コンポーネント当たりｎビットの画像データを、各コンポーネント当たりｍ（ｎ＜ｍ）ビットで表わされる画像データに変換するビット数増加手段と、
前記汎用の符号化画像データファイル中の、前記第１の復号手段の復号処理で非参照領域が存在し、尚且つ、当該領域に可逆符号化データが含まれている場合、当該可逆符号化データを差分画像の符号化データとして復号する第２の復号手段と、
前記第１、第２の復号手段で得られた画像データを統合し、撮像素子を有する所定の撮像装置のＲＡＷ画像データとして生成するＲＡＷ画像データ生成手段と、
生成されたＲＡＷ画像データに対して現像処理する現像手段と
を備えることを特徴とする画像処理装置。
【請求項８】
更に、前記ビット数増加手段で得られた１コンポーネント当たりｍビットの画像データを、ベイヤー配列に変換する配列変換手段を備え、
前記ＲＡＷ画像データ生成手段は、前記配列変換手段で得られた画像データと前記第２の復号手段で得られた差分画像データとを統合することを特徴とする請求項７に記載の画像処理装置。
【請求項９】
汎用の符号化画像データファイルを入力し、復号して所定の画像処理を行なう画像処理装置の制御方法であって、
前記汎用の符号化画像データファイルを復号する第１の復号工程と、
該第１の復号工程で得られた各各コンポーネント当たりｎビットの画像データを、各コンポーネント当たりｍ（ｎ＜ｍ）ビットで表わされる画像データに変換するビット数増加工程と、
前記汎用の符号化画像データファイル中の、前記第１の復号工程の復号処理で非参照領域が存在し、尚且つ、当該領域に可逆符号化データが含まれている場合、当該可逆符号化データを差分画像の符号化データとして復号する第２の復号工程と、
前記第１、第２の復号工程で得られた画像データを統合し、撮像素子を有する所定の撮像装置のＲＡＷ画像データとして生成するＲＡＷ画像データ生成工程と、
生成されたＲＡＷ画像データに対して現像処理する現像工程と
を備えることを特徴とする画像処理装置の制御方法。
【請求項１０】
汎用の符号化画像データファイルを入力し、復号して所定の画像処理を行なう画像処理装置として機能するコンピュータプログラムであって、
前記汎用の符号化画像データファイルを復号する第１の復号手段と、
該第１の復号手段で得られた各各コンポーネント当たりｎビットの画像データを、各コンポーネント当たりｍ（ｎ＜ｍ）ビットで表わされる画像データに変換するビット数増加手段と、
前記汎用の符号化画像データファイル中の、前記第１の復号手段の復号処理で非参照領域が存在し、尚且つ、当該領域に可逆符号化データが含まれている場合、当該可逆符号化データを差分画像の符号化データとして復号する第２の復号手段と、
前記第１、第２の復号手段で得られた画像データを統合し、撮像素子を有する所定の撮像装置のＲＡＷ画像データとして生成するＲＡＷ画像データ生成手段と、
生成されたＲＡＷ画像データに対して現像処理する現像手段
として機能することを特徴とするコンピュータプログラム。
【請求項１１】
請求項１０に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラなどのカラーフィルタアレイの画像を圧縮し、伸張する方法である。
【背景技術】
【０００２】
デジタルカメラの出荷台数は年々増加し、我々の生活にすっかり浸透してきた。かつてのデジタルカメラについては、画素数の多さが製品の価値を大きく決めていたが、昨今の製品については画素数だけでなく、動画撮影やダイレクトプリントなど、画素数以外の機能が求められてきており、機能の多様化が進んでいる。
【０００３】
この流れの中で、ＣＣＤから得られたベイヤー配列の画像データをそのまま記憶保存する構成、或いは、ロスレス圧縮するＲＡＷ圧縮機能が注目されている（特許文献１）。
【０００４】
このＲＡＷ圧縮は、ユーザがＰＣ上でその画像の露出等の現像処理を行なうことを許容するものであり、より高い精度の編集を望む上級者、プロユースに応える機能として注目されており、高級一眼レフタイプのデジタルカメラ等に標準機能として備わっていることが多い。
【特許文献１】特開２００１−０６０８７６
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、パーソナルコンピュータ（以下、ＰＣという）が普及し、デジタルカメラで撮像した画像データファイルをＰＣで管理することが行われている。通常のデジタルカメラで撮像した画像はＪＰＥＧ  Ｂａｓｅｌｉｎｅ符号化処理で符号化されている。ＪＰＥＧ  Ｂａｓｅｌｉｎｅ符号化データの閲覧プログラムは、インターネットのホームページ閲覧するブラウザプログラムが標準でサポートしていることからも理解できるように、撮像画像を確認するために格別なアプリケーションは不要である。
【０００６】
しかし、ＲＡＷ圧縮について考察すると、このＲＡＷ画像はＪＰＥＧ  Ｓｐａｔｉａｌといった汎用性の低い方式が多く利用されていて、デジタルカメラメーカが用意する独自のビューワプログラムでしか復号することできず、必然、そのような専用のビューワプログラムを利用しないと閲覧もできなし、編集することもできない。
【０００７】
つまり、編集するのではなく、単に閲覧したいという場合にも、専用のアプリケーションを起動する必要がある。また、第３者にＲＡＷ圧縮した画像ファイルを渡すにしても、その第３者が専用のビューワプログラムを所有していないと、その画像ファイルを確認することもできない。
【０００８】
本発明はかかる問題点に鑑みなされたものであり、１つの画像ファイルでありながら、ＲＡＷ画像データを生成することを可能にすると共に、汎用のビューワプログラムでその画像の閲覧を許容する技術を提供しようとするものである。
【課題を解決するための手段】
【０００９】
この課題を解決するため、例えば、本発明の撮像装置は以下の構成を備える。すなわち、
各コンポーネント当たりｍビットのＲＡＷ画像データを、各コンポーネント当たりｎ（ｎ＜ｍ）ビットで表わされる画像データとして符号化し、所定の記憶媒体に書き込む画像処理装置であって、
ＲＡＷ画像データをｎビットに変換し、汎用の非可逆符号化データを生成する第１の符号化手段と、
該第１の符号化手段で生成された符号化データを復号すると共に、各コンポーネントをｍビットに拡張する復号手段と、
該復号手段で得られた復号画像データと前記ＲＡＷ画像データとの差分である差分画像データを求め、当該差分画像データを可逆符号化する第２の符号化手段と、
前記第１の符号化手段で生成された汎用の非可逆符号化データ中に、前記第２の符号化手段で生成された可逆符号化データを、汎用の復号処理にてその情報を無視するための所定マーカを付加して挿入し、前記所定の記憶媒体に書き込むための１つの汎用の符号化画像データファイルを生成する画像ファイル生成手段とを備える。
【発明の効果】
【００１０】
本発明によれば、汎用の非可逆符号化データフォーマットに非可逆符号化データを収容し、尚且つ、非可逆符号化データの復号した際の画像データとＲＡＷ画像データとの差分画像データを可逆符号化し、その可逆符号化された差分画像データを汎用の復号処理では参照しないマーカを付加して挿入したファイルを生成することで、非可逆符号化データについては汎用のビューワで閲覧を許容し、必要に応じてＲＡＷ画像データを復元することが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面に従って本発明にかかる実施形態を詳細に説明する。
【００１２】
＜デジタルカメラの説明＞
図８は実施形態におけるデジタルカメラ（撮像装置）１００のブロック構成図ある。
【００１３】
図中、１は装置全体の制御を司るＣＰＵ、２はＣＰＵ１の処理手順（プログラム）を格納しているＲＯＭである。３はＣＰＵ１０１のワークエリアとして使用されるＲＡＭであり、撮像した生画像（ＣＣＤ−ＲＡＷデータ）を一時的に格納するＲＡＷバッファ３ａ、ＪＰＥＧ符号化する際の作業用の第１ＪＰＥＧバッファ３ｂ、差分バッファ（後述）３ｃ、第２ＪＰＥＧバッファ３ｃが予め確保されている。
【００１４】
４はシャッターボタン、メニュー選択、撮影モード等の指定を行なうための各種スイッチ、ダイヤルなどで構成される操作部である。５は外部装置と通信する接続するためのインタフェース（ＵＳＢインタフェース等）であって、一般にはＵＳＢインタフェースや無線インタフェースである。
【００１５】
６は撮像素子としてのＣＣＤ、７はＣＣＤ６から得られたアナログ画像信号をデジタル画像データに変換するＡ／Ｄコンバータである。実施形態では、このＡ／ＤコンバータはＣＣＤ６を構成する個々の検出素子のアナログ輝度信号を１２ビットに変換する。
【００１６】
８は、レンズや絞りを内蔵した光学ユニットであり、９はＡＦ、ＡＥ制御等のための焦点レンズの位置や絞り量を調整する駆動部の駆動制御を行なう光学ユニット駆動部である。
【００１７】
１０は、画像の圧縮符号化／復号処理等の処理を行なう画像処理回路、１１は液晶表示器等の表示部である。１２はメモリカードインタフェースであって、２０はそのインタフェース１２に接続するための書き込み可能で不揮発性で、脱着可能なメモリカードである。
【００１８】
上記構成において、操作部４を操作して各種撮影モードを選択し、シャッターボタンを押下することで、撮像画像が指定されたモードに従ってメモリカード２０に書き込まれることになる。
【００１９】
撮影モードには、幾つかの解像度、圧縮率の中から選択できるが、本実施形態で特徴的な撮影モードは、「ＪＰＥＧ＋ＲＡＷ」撮影モードにあるので、その点について説明することとする。また、ＡＦ、ＡＥ処理は公知の技術を利用するものとし、その説明は省略する。
【００２０】
実施形態におけるＣＣＤ６は、図２に示すように、各色成分の検出素子が配列した撮像部を有するものとする。この配列は、一般に、ベイヤー配列と呼ばれるものである。図２に示すように、通常の画像データの１画素が、２×２の検出素子で検出された信号で表現される。すなわち、コンポーネントＲ、Ｂについては１つずつ、Ｇ成分には２つの検出素子のデータで構成され、この４つのコンポーネントが１２ビットにＡ／Ｄ変換されることになる。このＡ／Ｄ変換直後のデータは１画素当たり４コンポーネントで、各コンポーネントが１２ビットのベイヤー配列の画像データとなる。このデータを実施形態ではＣＣＤ−ＲＡＷ（ＣＣＤ生）画像データと呼ぶ。
【００２１】
実施形態では、撮影モードが「ＪＰＥＧ＋ＲＡＷ撮影モード」が指定された場合、図３に示すように、通常のＪＰＥＧ符号化データ（ＪＰＥＧ非可逆符号化データ）内に、そのＪＰＥＧ符号化データの復号して得られた画像データとＣＣＤ−ＲＡＷ画像データとの差分データの可逆符号化（ＪＰＥＧ−Ｓｐａｔｉａｌ符号化）結果の符号化データを挿入し、１つの汎用フォーマットのファイル（ＪＰＥＧ構造のファイル）にし、メモリカード２００に格納する。
【００２２】
これにより、通常のＪＰＥＧファイルの構造を維持することで、既存の一般的なビューワプログラムや画像編集アプリケーションプログラムでもＪＰＥＧ符号化画像データについては、その画像を再生することを保証する。尚且つ、所定のアプリケーションを利用することで、プロユースに応えるＣＣＤ−ＲＡＷ画像データに戻しての現像処理等を行なえるようにする。
【００２３】
図１は本実施形態におけるデジタルカメラにおける撮像時の機能ブロック構成図である。この構成は、図８におけるＲＡＭ３、ＣＣＤ６、Ａ／Ｄコンバータ７、画像処理回路１０等のハードウェアを利用し、ＣＰＵ１、及び、ＣＰＵ１の処理手順（ＲＯＭ２に格納されているプログラム）によって実現される機能構成図である。
【００２４】
同図において、１０１は画像入力部であって、ベイヤー配列のＣＣＤ６からのＡ／Ｄ変換したＣＣＤ−ＲＡＷ画像データ（この段階ではベイヤー配列で各コンポーネントとも１２ビットのデータ）を入力するものである。入力したＣＣＤ−ＲＡＷデータは、ＲＡＭ３内に確保されたＲＡＷバッファ３ａに一時的に格納される。
【００２５】
配列変換部１０２は、ＲＡＷバッファ３ａに格納された画像をバイリニア補間処理等を行い、１画素分のデータ｛Ｒ、Ｇ１、Ｇ２、Ｂ｝を｛Ｒ、Ｇ、Ｂ｝形式のデータに変換する。単純には、Ｇ＝｛Ｇ１＋Ｇ２｝／２であるが、ＣＣＤの特性に応じて重み付け演算しても良い。
【００２６】
色変換部１０３は、ＲＧＢ色空間を所定の色変換（一般には、色空間ＲＧＢ→ＹＣｂＣｒ変換）が行われて、色域制限部１０４に出力される。色域制限部１０４は、色変換された画像データをｓＲＧＢ空間へ色域を圧縮し、ビット削減部１０５に出力する。ビット削減部１０５は、１２ビット精度の入力画像を８ビット化させて、ＪＰＥＧ符号化部１０６に出力する。
【００２７】
ＪＰＥＧ符号化部１０６は、国際標準方式のＪＰＥＧ  Ｂａｓｅｌｉｎｅ方式により圧縮符号化し、ｓＲＧＢ画像符号化データを生成して、第１ＪＰＥＧバッファ３ｂに出力（格納）すると共に、ＪＰＥＧ復号部１０８へ出力する。
【００２８】
ＪＰＥＧ復号部１０８は、ｓＲＧＢ画像符号化データをＪＰＥＧ  Ｂａｓｅｌｉｎｅ方式により復号して、ビット増加部１０９へ出力する。ビット増加部１０９は、復号された８ビット精度のｓＲＧＢ画像を１２ビット化（ＲＡＷのビット数と同じに）させて、平滑化部１１０へ出力する
平滑化部１１０は所定のローパスフィルタ等に従って、画像を平滑化させて逆色変換部１１１に出力する。逆色変換部１１１は、色変換部１０３の逆色変換を行う。この後、逆配列変換部１１２にて、ベイヤー配列形式の画像データ｛Ｒ、Ｇ１、Ｇ２、Ｂ｝（各１２ビット）を生成する。つまり、形式的なＣＣＤ−ＲＡＷデータを生成することになる。
【００２９】
差分画像生成部１１３は、逆配列変換部１１２から出力された画像データと、ＲＡＷバッファ１０３ａに格納されているＣＣＤ−ＲＡＷ画像データの同じ画素位置の差分値｛ΔＲ、ΔＧ１、ΔＧ２、ΔＢ｝を求め、その結果を差分バッファ３ｃに出力する。
【００３０】
逆配列変換部１１２から出力された復号結果の画像データは、ＲＡＷバッファ３ａに格納された画像データに基づいて生成された画像データであるので、差分値Δは十分に小さいものとなり、差分バッファ３ｃに格納するための各コンポーネントに用意するビット数は８ビットあれば十分である。
【００３１】
ＪＰＥＧ  Ｓｐａｔｉａｌ符号化部１１４は差分バッファ３ｃに格納された差分データをＪＰＥＧ Spatial符号化（可逆符号化）を行うが、その符号化結果を第２ＪＰＥＧバッファ３ｄに出力（格納）する。
【００３２】
ここで、ＪＰＥＧ  Ｓｐａｔｉａｌ  符号化部１１４について考察する。
【００３３】
差分画像生成部１１３で生成される差分画像の値は比較的小さな値になるものの、図２に示したベイヤー配列の差分画像となるので、隣接するコンポーネントの差分値間の相関性は低い。つまり、この並びのまま、圧縮符号化しても高い符号化効率を期待できない。この問題について、図４のように隣接画素をそれぞれ異なるコンポーネントと考え、２コンポーネント画像として圧縮することが考えられる。
【００３４】
しかし、ＪＰＥＧ  Ｓｐａｔｉａｌ符号化は、図５のように２次元方向の予測モードが存在し、一般的に、デジタルカメラなどの製品においては、入力されてきた画素を逐次処理する必要がある。つまり、図４のような画像に対して、２次元方向の予測を逐次処理により実施すると、縦方向の画素間の関連性が低いことから、高い符号化効率を期待できない。
【００３５】
そこで本実施形態においては、更に図６のように、コンポーネント毎に分離し、尚且つ、２つのコンポーネントを水平方向に連結したデータ６１、６２を生成する。実施形態でのＣＣＤ６の撮像素子の数は、その色成分を無視し、てＭ×Ｎ個であるとしたとき、データ６１、６２は共に、その垂直方向のデータ個数はＮ／２、水平方向がＭ個のデータで構成されることになる。図６のように並び替えると、ＪＰＥＧ  Ｓｐａｔｉａｌ符号化処理における予測値が十分に意味ある値となることが期待でき、高い圧縮率が期待できる。従って、実施形態における差分画像生成部１１３が差分を生成した際に得られる｛ΔＲ、ΔＧ１、ΔＧ２、ΔＢ｝は、図６に示すような配置関係にして差分バッファ３ｃに格納すれば良いことになり、ＪＰＥＧ  Ｓｐａｔｉａｌ  符号化部１１４はこのデータ６１、６２を符号化すれば良いことになる。
【００３６】
以上の結果、第１ＪＰＥＧバッファ３ｂには、ＪＰＥＧ  Baseline符号化で得られた通常のＪＰＥＧ符号化データが格納され、第２ＪＰＥＧバッファ３ｄにはＣＣＤ−ＲＡＷデータを完全に再構成するための可逆符号化データが格納されることになる。
【００３７】
画像符号化データ生成部１１５は、差分画像符号化データの第２ＪＰＥＧバッファ３ｄへの格納完了をトリガにし、第１ＪＰＥＧバッファ３ｂからｓＲＧＢ画像符号化データを取得し、ｓＲＧＢ画像符号化データの中に、アプリケーション・データ・セグメント（ＡＰＰｎ）を設定し、そこに第２ＪＰＥＧバッファ３ｄから差分画像符号化データを挿入して１つの符号化画像データファイルを生成（統合）する。生成されたファイルは画像符号化データ出力部１１６によってメモリカード２０の所定フォルダ内に格納する。図７は、アプリケーション・データ・セグメントを利用したＪＰＥＧファイルのファイル構造を示している。
【００３８】
ここで、アプリケーション・データ・セグメント（ＡＰＰｎ）（アプリケーション・マーカ・セグメントとも呼ばれる）は、ＪＰＥＧ規格によると、何らかの情報を挿入するために用意されているもので、通常のＪＰＥＧ伸長処理では無視される。従って、実施形態では、この特性を利用し、このアプリケーションデータセグメント部分に、差分符号化データを挿入（配置）するようにした。
【００３９】
この結果、実施形態で得られた画像ファイルを、一般的なＪＰＥＧ画像を閲覧するアプリケーションでオープンした場合には、差分符号化データは無視され、通常のＪＰＥＧ  Ｂａｓｅｌｉｎｅ復号処理で再現することが可能になる。また、マーカＡＰＰｎをも解析するプログラムを用意し、マーカＡＰＰｎで示される位置に差分符号化データであることを示す所定の情報の存在を挿入し、それを確認した場合に、後続して差分符号化データがあるものとして差分符号化データを復号して差分画像を生成し、ＪＰＥＧ  Ｂａｓｅｌｉｎｅ復号した画像に差分画像を合算することでＣＣＤ−ＲＡＷ画像データを生成することが可能になる。
【００４０】
なお、実施形態では、撮影モードが「ＪＰＥＧ＋ＲＡＷ撮影モード」である場合、メモリカード２０に画像ファイルを格納する際のファイル名の拡張子を“.cr2”とした（この拡張子は便宜的なものである）。ファイルの構造そのものはＪＰＥＧファイルとして認識されるので、一般のＪＰＥＧ閲覧アプリケーションであれば、ＪＰＥＧＢａｓｅｌｉｎｅ復号処理して再生することが可能である。拡張子は“.jpg”でも構わないが、“.cr2”としたのは、後述するＣＣＤ−ＲＡＷの現像処理アプリケーションによって、実施形態で説明した「ＪＰＥＧ＋ＲＡＷ」撮影モードで撮像した画像ファイルを効率良く検索できるようにするためである。また、拡張子を“.jpg”にした場合であっても、所定のアプリケーションデータセグメント部分に、上記実施形態での差分符号化データの挿入があることを示すための識別情報の存在の有無を判定する処理を付加すれば良いので、拡張子はなんでも構わないことになる。
【００４１】
＜ＰＣの現像アプリケーションの説明＞
次に、実施形態が適用するパーソナルコンピュータ（以下、ＰＣという）で実行する現像アプリケーションプログラムについて説明する。
【００４２】
先ず、ＰＣの構造を図１０に示す。図中、３００がＰＣ本体であって、３０１は装置全体の制御を司るＣＰＵ、３０２はＢＩＯＳ、ブートプログラムを記憶しているＲＯＭである。３０３はＣＰＵ３０１のワークエリアとして使用されるＲＡＭであり、ここにＯＳ、実施形態における現像アプリケーションプログラムがロードされ、ＣＰＵ３０１により実行されることになる。３０４は外部記憶装置としてのハードディスクドライブ（ＨＤＤ）であり、ここにはＯＳ３０４ａ，現像アプリケーションプログラム３０４ｂや、各種アプリケーションで作成されたファイルが格納されることになる。３０５はキーボード（ＫＢ）、マウス（登録商標）等のポインティングデバイス（ＰＤ）で構成される入力装置、３０６はＣＰＵ３０１からの要求により内部のビデオメモリに描画処理すると共にビデオメモリから読出した画像データをビデオ信号として表示装置（ＣＲＴ、液晶表示器等）３０７に出力する表示制御部である。３０８は外部インタフェースであって、ＵＳＢインタフェース、或いは、カードリーダ等のデバイスが接続するインタフェースである。この外部インタフェースにデジタルカメラ１００を接続、或いは、カードリーダ装置を介してメモリカード内の画像を読出し、ＨＤＤ３０４に一旦ファイルとして格納することになる。
【００４３】
図９は実施形態における現像アプリケーション３０４ｂを実行した場合の機能ブロック図である。この図を構成するのは、実施形態における現像アプリケーション３０４ｂを実行するＣＰＵ３０１でもあるが、画像現像装置のブロック構成図としても構わない。
【００４４】
画像入力部９０１では、外部インタフェース３０８に接続されたデジタルカメラから、或いは、不図示のカードリーダを介してメモリカードから、または、予め外部インタフェース３０８からＨＤＤ３０４に格納されたファイル（ファイル名“xxxxx.cr2”）を、そのＨＤＤ３０４からＲＡＭ３０４にロードする。分離部９０２は、ロードした画像ファイルを解析し、アプリケーションデータセグメントに記述されている差分画像符号化データの開始位置及び終端位置を検索することで、ＪＰＥＧ  ｂａｓｅｌｉｎｅ符号化データ（非可逆符号化データ）とＪＰＥＧ  Ｓｐａｔｉａｌ符号化データ（可逆符号化データ）とを分離し、ＪＰＥＧ  ｂａｓｅｌｉｎｅ符号化データはＪＰＥＧ  ｂａｓｅｌｉｎｅ復号部９０３に、ＪＰＥＧ  Ｓｐａｔｉａｌ符号化データはＪＰＥＧ  Ｓｐａｔｉａｌ復号部９０７に出力する。
【００４５】
ＪＰＥＧ  Ｂａｓｅｌｉｎｅ復号部９０３は、入力したｓＲＧＢの画像符号化データをＪＰＥＧ  Ｂａｓｅｌｉｎｅ復号する。この復号処理は、公知のものであり、この段階ではＲ、Ｇ、Ｂは８ビットで表現されている。ビット増加部９０４では、各成分を１２ビットに増加（４ビット上位方向にシフト）する。この後、平滑化部９０５で平滑化を行なう。この平滑化部９０５は、図１の平滑化部１１０と同じである。ベイヤー配列変換部９０６は、平滑化後の復号画像中の１画素｛Ｒ、Ｇ、Ｂ｝（各１２ビット）を、図２の配列に変換する。すなわち、｛Ｒ、Ｇ１、Ｇ２、Ｂ｝形式のデータを生成する。
【００４６】
一方、ＪＰＥＧ  Ｓｐａｔｉａｌ復号部９０７は、入力したＪＰＥＧ  Ｓｐａｔｉａｌ符号化データを復号し、差分画像データを生成する。復号した結果は、図６に示すデータ６１、６２が得られるが、データ６１、６２における、本来は１画素のデータとなるべきデータをまとめて、｛ΔＲ、ΔＧ１、ΔＧ２、ΔＢ｝を求める。
【００４７】
統合部９０８は、ベイヤー配列変換部９０６から出力されたベイヤー配列画像データと、ＪＰＥＧ  Ｓｐａｔｉａｌ復号部９０７で生成された差分画像の和を取ることで、ＣＣＤ−ＲＡＷ画像を復元する。
【００４８】
復元して得られたＣＣＤ−ＲＡＷ画像データは、現像処理部９１０に出力されるが、この際、操作者はキーボードやＰＤで構成される現像パラメータ入力部９０９で、現像パラメータを入力する。なお、現像パラメータは、別途ファイルとしてＨＤＤ３０４に記憶しておき、好みに応じて選択するようにしても構わない。
【００４９】
現像処理部９１０は、与えられた現像パラメータに従ってＣＣＤ−ＲＡＷ画像データに対して現像処理を行なう。ここで得られる現像後の画像データは、１画素４コンポーネント（Ｒ、Ｇ１、Ｇ２、Ｂ）であり、尚且つ、１コンポーネントが１２ビットであり、一般のＰＣ上では再生表示することはできない。そこで、配列変換部９１１にて、１画素３コンポーネントに変換する。そして、ｓＲＧＢ画像生成部９１２でｓＲＧＢ画像データを生成する。なお、この際には、１２ビットのままで出力するものであるが、各コンポーネントを８ビットに丸め処理を行なってもよい。出力部９１３は、このようにして得られた画像データをＨＤＤ３０４にファイルとして格納する。なお、出力部９１３では、操作者に指示指示に応じた圧縮画像ファイル（ＪＰＥＧｂａｓｅｌｉｎｅ符号化等）を出力するか、無圧縮のｂｍｐファイルを出力するかを選択可能とした。
【００５０】
以上、実施形態における現像アプリケーション３０４ｂの処理内容を説明したが、コンピュータプログラムの処理手順で示すと図１１のフローチャートのようになる。
【００５１】
先ず、ステップＳ１で符号化画像データファイルを読込み、ステップＳ２にてＪＰＥＧｂａｓｅｌｉｎｅ復号処理を行なう。ＪＰＥＧｂａｓｅｌｉｎｅ復号処理では、先に説明したように、アプリケーションデータセグメントＡＰＰｎは無視されるので、このステップＳ１、２の処理は、通常の閲覧プログラムや画像編集処理プログラムと変らない。
【００５２】
次いで、ステップＳ３ではビット数を増加する処理を行なう。実施形態では８ビットを１２ビットに変換する（上位方向に４ビットシフト処理）を行なうことになる。通常、ＣＰＵは８ビット（＝１バイト）の整数倍のビット数を処理単位とするので、１６ビットで演算しても構わない（上位４ビットは０にし、有効ビット数が１２ビットとすれば良い）。ステップＳ４では平滑化処理を行い、ステップＳ５ではベイヤー配列に変換し、その結果を一時的にＲＡＭ３０４に格納する。
【００５３】
この後、ステップＳ７に進んで、入力した（もしくは符号化画像データを再入力でも良い）符号化画像データ中のアプリケーションデータセグメントを検索し、ステップＳ８で差分画像符号化データが存在するか否かを判定する。この判定は、先に説明したように、、ＪＰＥＧｂａｓｅｌｉｎｅ復号画像とＣＣＤ−ＲＡＷ画像との差分データの存在を示す所定の識別情報が格納されているか否かで判定すればよいであろう。
【００５４】
もし、差分画像符号化データが存在しないと判定した場合には、ステップＳ１６に進み、ＣＣＤ−ＲＡＷ画像に復元することができない旨のメッセージを表示し、一時保存した画像データを破棄し、本処理を終了する。なお、現像処理だけでなく、各種画像編集までも行なう場合には、ステップＳ６で作成されたデータを破棄し、ステップＳ２で求めた復号画像に対して編集処理を行なうようにしても良い。
【００５５】
さて、差分画像の符号化データの存在が確かめられると、処理はステップＳ９に進み、その差分画像符号化データを復号処理（ＪＰＥＧ  Ｓｐａｔｉａｌ復号）を行なう。そして、ステップＳ１０にて、先のステップＳ６で一時保存した画像データと、ステップＳ９で復号した差分画像との統合（加算）処理を行う。この後、ステップＳ１１にて、現像パラメータの入力を待ち、現像パラメータが与えられるとステップＳ１２にてそのパラメータにしたがった現像処理を行なう。現像パラメータには幾つもの種類（ＡＷＢ、明るさ、トーンカーブ等）が存在するが、現像処理そのものは公知であるので、説明は省略する。
【００５６】
現像処理が完了すると、ステップＳ１３に進み、ベイヤー配列（１画素４コンポーネント）から通常のＲＧＢ（１画素３コンポーネント）に変換し、ステップＳ１４にてｓＲＧＢに変換し、最終的にステップＳ１５にて変換後のデータを新たな画像データファイルとしてＨＤＤやメモリカード等の記憶装置に出力する。なお、ステップＳ１４では、色変換先のユーザの指示に応じた種類に変換しても構わない。また、出力する際には、各コンポーネントを８ビット、１２ビットのいずれにするかを選択するようにしても良い。
【００５７】
以上であるが、図９または図１１はＰＣ上で実行するアプリケーションプログラムの機能図として説明したが、同処理をデジタルカメラ本体側に設けても構わない。
【００５８】
以上説明したように本実施形態によれば、汎用の符号化データの復号画像とＣＣＤ−ＲＡＷ画像データの差分画像データを可逆符号化し、その可逆符号化結果を、上記汎用の符号化データフォーマットで規定されているアプリケーションデータセグメント部分に挿入することで、１つの画像ファイルでありながら、汎用のビューワアプリケーションでの非可逆画像の復号を約束し、尚且つ、プロユースに応えるためにＣＣＤ−ＲＡＷ画像データを生成することが可能になる。
【００５９】
なお、実施形態では、ＣＣＤの光電変換素子の並びとしてベイヤー配列を例にしたが、他の配列でも構わない。また、実施形態では、可逆符号化データを挿入する非可逆符号化データとして、ＪＰＥＧ  ｂａｓｅｌｉｎｅ符号化データを例に説明したが、上記アプリケーションデータセグメントに相当する、通常は無視するデータ領域を確保するフォーマット（例えばＣＯＭマーカーセグメントなど、他のマーカーセグメント）が用意されている符号化であればよいので、上記実施形態で限定されるものではない。例えば、ＴＩＦＦフォーマットでも構わない。
【００６０】
また、可逆符号化としてランレングス符号化（例えばパックビッツ符号化）を採用しても構わないので、これについても上記実施形態で限定されるものではない。
【００６１】
また、実施形態では、ＣＣＤ−ＲＡＷ画像のビット精度が１２ビットであるものとして説明したが、通常扱うビット数（通常は８ビット）を超えるビット数（１０、１４、１６…ビット）であれば良いので、上記１２ビットに限定されない。特に、ＣＣＤ−ＲＡＷ画像データは何ビットであったのかを示す情報を、アプリケーションデータセグメントに記述するようにすると、将来、ＣＣＤ−ＲＡＷの各コンポーネントが１２ビットを超えたとしても、十分に対処できるようになる。
【００６２】
ＪＰＥＧの画像データの色域として、ｓＲＧＢ空間の例を示したが、Ａｄｏｂｅ  ＲＧＢ，ｓｃ−ＲＧＢなど、その他の色域でも構わない。
【００６３】
また、現像画像の色域として、ｓＲＧＢ空間の例を示したが、Ａｄｏｂｅ  ＲＧＢ，  ｓｃ−ＲＧＢなど、その他の色域でも構わない。さらにまた、差分画像符号化データの格納領域として、ＡＰＰマーカーセグメントを利用する方法を示したが、ＣＯＭマーカーセグメントなど、他のマーカーセグメントを利用しても構わない。
【００６４】
また、実施形態で説明した拡張子“.cr2”等の拡張子に関して、ＪＰＥＧファイルと認識せずにエラーを返すビューアもあるので、拡張子として“.jpg”や“.jpeg”を用いても構わない。
【００６５】
また、実施形態で説明したように、図９に係る処理は、パーソナルコンピュータ等の現像アプリケーションで実現しているものであるから、当然本発明はコンピュータプログラムをもその範疇とする。また、通常、コンピュータプログラムは、ＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体をコンピュータにセットし、システムにコピーもしくはインストールすることで実行可能になるわけであるから、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇にある。また、本発明はデジタルカメラ（撮像装置）に限らず、上述した他の同様の機能を備えた種々の画像処理装置に適用できることは言うまでもない。
【図面の簡単な説明】
【００６６】
【図１】本実施形態における撮像装置の機能ブロック構成図である。
【図２】撮像装置の撮像素子の配列を示す図である。
【図３】実施形態で生成される符号化画像データの構造を示す図である。
【図４】画像データの配列変換後のデータ構造の一例を示す図である。
【図５】予測符号化処理での参照画素と注目画素との位置関係を示す図である。
【図６】実施形態における画像データの配列変換後のデータ構造を示す図である。
【図７】実施形態で生成される画像データファイルの構造を示す図である。
【図８】実施形態における撮像装置のブロック構成図である。
【図９】実施形態における画像現像装置の機能ブロック構成図である。
【図１０】実施形態における画像現像装置として機能するパーソナルコンピュータの構造図である。
【図１１】現像アプリケーションの処理手順を示すフローチャートである。
【図１】
2006173931.tif 000003
【図２】
2006173931.tif 000004
【図３】
2006173931.tif 000005
【図４】
2006173931.tif 000006
【図５】
2006173931.tif 000007
【図６】
2006173931.tif 000008
【図７】
2006173931.tif 000009
【図８】
2006173931.tif 000010
【図９】
2006173931.tif 000011
【図１０】
2006173931.tif 000012
【図１１】
2006173931.tif 000013