(57)【要約】【課題】  色空間の異なる画像データを合成する場合においても、色再現の不具合なく容易に合成できる画像処理システムを提供することを課題とする。【解決手段】  互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出手段と、第１及び第２の画像の対応点の画素値を基に第１の画像と第２の画像とを共通の色空間に変換する変換手段と、共通の色空間において第１の画像及び第２の画像を合成する合成手段とを有することを特徴とする画像処理システムが提供される。【選択図】        図１
2005130281.tif 000002
【特許請求の範囲】
【請求項１】
互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出手段と、
前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換手段と、
前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成手段と
を有することを特徴とする画像処理システム。
【請求項２】
さらに、前記抽出した対応点の座標変換パラメータを推定する推定手段を有し、
前記合成手段は、前記座標変換パラメータを基に前記第１の画像及び前記第２の画像を合成することを特徴とする請求項１記載の画像処理システム。
【請求項３】
前記変換手段は、前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像の色空間の関係を推定し、前記第１の画像と前記第２の画像とを共通の色空間に変換することを特徴とする請求項１又は２記載の画像処理システム。
【請求項４】
前記共通の色空間は、前記第１及び第２の画像の色空間を包含する色空間であることを特徴とする請求項１〜３のいずれか１項に記載の画像処理システム。
【請求項５】
前記共通の色空間におけるビット数は、前記第１及び第２の画像を構成する画素のビット数よりも多いことを特徴とする請求項４記載の画像処理システム。
【請求項６】
互いに重複部分を有する第１の画像及び第２の画像の位置ずれを推定する位置ずれ推定手段と、
前記位置ずれを基に前記第１の画像及び前記第２の画像の色空間を推定する色空間推定手段と
を有することを特徴とする画像処理システム。
【請求項７】
さらに、前記第１及び第２の画像の色空間を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換手段を有する請求項６記載の画像処理システム。
【請求項８】
さらに、前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成手段を有することを特徴とする請求項７記載の画像処理システム。
【請求項９】
前記位置ずれ推定手段は、前記第１の画像及び前記第２の画像の対応点を抽出して位置ずれを推定することを特徴とする請求項８記載の画像処理システム。
【請求項１０】
前記色空間推定手段は、前記第１の画像と前記第２の画像の色空間の関係を推定することを特徴とする請求項６〜９のいずれか１項に記載の画像処理システム。
【請求項１１】
互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出ステップと、
前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換ステップと、
前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成ステップと
を有することを特徴とする画像処理方法。
【請求項１２】
互いに重複部分を有する第１の画像及び第２の画像の位置ずれを推定する位置ずれ推定ステップと、
前記位置ずれを基に前記第１の画像及び前記第２の画像の色空間を推定する色空間推定ステップと
を有することを特徴とする画像処理方法。
【請求項１３】
互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出ステップと、
前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換ステップと、
前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成ステップと
をコンピュータに実行させるためのプログラム。
【請求項１４】
互いに重複部分を有する第１の画像及び第２の画像の位置ずれを推定する位置ずれ推定ステップと、
前記位置ずれを基に前記第１の画像及び前記第２の画像の色空間を推定する色空間推定ステップと
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理技術に関し、特に互いに重複部分を有する複数の画像を合成する画像処理技術に関する。
【背景技術】
【０００２】
従来、画像の一部が重複する複数の画像から画角の広いパノラマ画像を合成する方法としては、画像の重複する領域内の同一な点が一致するように幾何変換を施して２つの画像をつなぎ合せる方法が知られている（例えば、本出願人が提案した下記の特許文献１）。
【０００３】
一方、このようにして合成される画像データの色は撮影された元の画像データの色空間に基づいて決定されるが、元の画像データの色空間が異なる場合には重複する領域内の同じ被写体において画像データが異なるので合成する際の色をいかにして決めるかは公知の方式がない。
【０００４】
ここで色空間とは画像データをRGBなど複数チャンネルのデジタルデータとして表現する際に表現できる色の範囲であり、比較的広い色空間に基づいた画像データと狭い色空間に基づいた画像データとを比較すると、比較的広い色空間に基づいた画像データは広い色の範囲で再現性良く色を再生できるが、彩度の低い色の範囲においては狭い色空間に基づいた画像データに比べて再現性が劣る。また、比較的狭い色空間に基づいた画像データは色空間の範囲を超える彩度の高い色の区別が付かないといったトレードオフがある。このような色空間の性質に従い、例えば、人物画像の場合には肌色の再現性を重視するために比較的狭い色空間に基づいて画像を記録し、風景画像として非常に鮮やかな花などを含むようなシーンの場合には比較的広い色空間に基づいて画像を記録した方がよい。しかしながら、このように異なる色空間で記録された画像を色空間を考慮することなく合成すると同じ色でも異なる画像データで記録されているので異なった色として合成されてしまう。
【０００５】
このような問題点を解決するためには、ICCプロファイル等を用いて合成する元の画像データに対応する色空間をそれぞれ共通の色空間に変換を行い、別の画像データとして保存し、所望の合成を行う必要がある。
【０００６】
しかしながら、以上の処理はユーザにとって非常にわずらわしいだけでなく、元の画像データの色空間をユーザが画像データごとに把握しておく必要があり、実際に画像データを記録した色空間と処理で対応付けた色空間とが食い違うと所望の合成画像が得られないという問題がある。また、画像合成を行う際に、色の不具合なく画像データを合成するために、元の画像データの色空間を変換して一旦保存する際の共通の色空間を適切に定める必要があるが、このような処理を行うには色の管理に関するハイレベルの知識、経験が要求される。
【０００７】
【特許文献１】特開平9-321972号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、色空間の異なる画像データを合成する場合においても、色再現の不具合なく容易に合成できる画像処理技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明の画像処理システムは、互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出手段と、前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換手段と、前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成手段とを有することを特徴とする。
また、本発明の画像処理システムは、互いに重複部分を有する第１の画像及び第２の画像の位置ずれを推定する位置ずれ推定手段と、前記位置ずれを基に前記第１の画像及び前記第２の画像の色空間を推定する色空間推定手段とを有することを特徴とする。
また、本発明の画像処理方法は、互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出ステップと、前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換ステップと、前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成ステップとを有することを特徴とする。
また、本発明の画像処理方法は、互いに重複部分を有する第１の画像及び第２の画像の位置ずれを推定する位置ずれ推定ステップと、前記位置ずれを基に前記第１の画像及び前記第２の画像の色空間を推定する色空間推定ステップとを有することを特徴とする。
また、本発明のプログラムは、互いに重複部分を有する第１の画像及び第２の画像の対応点を抽出する抽出ステップと、前記第１及び第２の画像の対応点の画素値を基に前記第１の画像と前記第２の画像とを共通の色空間に変換する変換ステップと、前記共通の色空間において前記第１の画像及び前記第２の画像を合成する合成ステップとをコンピュータに実行させるためのプログラムである。
また、本発明のプログラムは、互いに重複部分を有する第１の画像及び第２の画像の位置ずれを推定する位置ずれ推定ステップと、前記位置ずれを基に前記第１の画像及び前記第２の画像の色空間を推定する色空間推定ステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１０】
色空間の異なる第１及び第２の画像を共通の色空間で合成することにより、色再現の不具合なく、容易に第１及び第２の画像を合成することができる。
【００１１】
また、第１及び第２の画像の位置ずれを推定することにより、第１及び第２の画像の色空間を推定することができる。
【発明を実施するための最良の形態】
【００１２】
図２は、本発明の実施形態の画像処理システムの構成例を示す。１００はデジタルカメラ、２００は記録媒体、３００は汎用のコンピュータ（PersonalComputer、以下、ＰＣと称す）である。デジタルカメラ１００は被写体を撮影して取得したデジタル画像データ（以下、画像データと称す）を記録媒体２００に記録する。なお、本実施形態においては、デジタルカメラ１００は画像データを記録する際の色空間を複数の色空間から選択可能である。記録媒体２００はデジタルカメラ１００、ＰＣ３００に装着、脱着可能なコンパクトフラッシュ（Ｒ）カード、光ディスク等の記録媒体である。ＰＣ３００は不図示の処理部、ＣＲＴ、液晶ディスプレイなどの表示部、キーボード、マウスなどの入力部、ハードディスク、ＲＡＭなどの記憶部よりなり、記憶部に記憶されたアプリケーションプログラムを実行することにより所望のアプリケーションを実行する。ＰＣ３００は記録媒体２００を装着した状態で記録媒体２００に記録された画像データをＰＣ３００の記憶部に読み込み可能となる。以後、本実施形態では以上のような構成を前提にアプリケーションプログラムにおいて実行される画像処理システムについて説明する。また、本実施形態ではデジタルカメラ１００で撮影した異なる色空間の画像データを合成して一つの画像データを生成する場合について説明する。
【００１３】
まず、本実施形態のアプリケーションプログラムで合成される画像データをデジタルカメラで撮影、記録する方法について説明する。
【００１４】
図３にデジタルカメラ１００の構成例を示す。
１０１は撮像手段であり、撮像レンズ、CCD等の撮像素子、撮像素子の出力信号のゲインを調整するゲイン調整回路、ゲイン調整後の撮像素子の出力信号をデジタル信号に変換するＡ/Ｄ変換回路、出力されたデジタル信号を一時記憶するメモリ等より構成され、撮像素子からの信号をデジタル画像データとして出力する。
【００１５】
１０２は露出調整手段であり、撮像手段１０１で出力された画像データの所定部分の輝度に基づき、画像データが適正な明るさになるように所定のプログラム線図に従いシャッター速度と絞り値を決定し、撮像手段１０１の撮像素子の露光時間と撮影レンズの絞りを制御する。
【００１６】
１０３は白バランス補正手段であり、撮像手段１０１で出力された画像データの白バランスの調整を行う。
【００１７】
１０４は画素補間手段であり、撮像素子の各画素に対してＲＧＢ３つの各チャンネルの画素値を撮像素子の色フィルタ配列に応じて補間し、カラー画像データを出力する。
【００１８】
１０５は色補正手段であり、画素補間手段１０４で出力されたカラー画像データを色再現特性が所望の特性になるように色補正を行う。
【００１９】
１０６は色空間符号化手段であり、RGB成分からなる画像データを所定の色空間の画像データに変換する。
【００２０】
１０７は画像圧縮手段であり、ＪＰＥＧ等の所定の方式により画像データを圧縮する。
１０８は記録再生手段であり、圧縮された画像データに対し、所定の付帯情報を追加し、所定の形式に従った画像データとし、記録媒体２００に記録したり、記録された画像データから不図示の液晶モニタ等への表示用の画像の再生等を行う。
【００２１】
以下、撮像時の画像記録の動作を説明する。
ユーザが被写体を撮影するためにデジタルカメラ１００の不図示のシャッターボタンを押すと、撮像手段１０１の出力により露出調整手段１０２で撮像手段１０１の撮像素子の露光時間と撮影レンズの絞りが制御され、撮像手段１０１からデジタル画像データが出力される。
【００２２】
白バランス補正手段１０３は撮像手段１０１から出力された画像データに対して平均値の計算等の統計的な解析を行い、画像データから算出された所定の統計量が所定の値になるように白バランスの調整を行うための係数を求める。このとき、デジタルカメラの白バランスのモードが複数の光源に対応するために複数設定可能な場合は、各モードに応じて統計量の目標値があり、それぞれのモードに最適な係数が求まる。これらの係数はＲＧＢ各チャンネルに対して求める。
【００２３】
画素補間手段１０４は白バランス補正手段１０３で求まった係数を用いて撮像手段１０１から出力されるデジタル画像データからＲＧＢ３チャンネルのカラー画像データを補間する。本実施形態における撮像手段１０１の撮像素子の色フィルタの配列例を図４に示す。図４に示すように各画素位置においては、実際にはＲＧＢの内、1つのチャンネルの画素値しか得られないので、フィルタの色と異なるチャンネルの画素値は補間により求める必要がある。このとき、フィルタの色がＧの画素位置においては、Ｇチャンネルの画素値を求める場合には、画素値にＧチャンネルに対応した係数を積算した値が出力値となる。また、ＲまたはＢチャンネルの画素値を求める場合には、隣接する２つの画素の画素値に各チャンネルに対応した係数を積算し、平均した値が出力値となる。また、フィルタの色がＲまたはＢの画素位置においては、フィルタと同色のチャンネルの画素値を求める場合には、画素値に各チャンネルに対応した係数を積算した値が出力値となる。また、フィルタと異なる色のチャンネルの画素値を求める場合には、隣接する４つの画素の画素値に各チャンネルに対応した係数を積算し、平均した値が出力値となる。
【００２４】
色補正手段１０５では画素補間手段１０４の出力であるカラー画像データに対して、以下の（式１）に示すマトリクス演算により色補正の処理を行う。
【００２５】
Ｃ’＝  ＡＣ  （式１）
【００２６】
ここで、Ｃ=（R,G,B）t、Ｃ’＝（R',G',B'）t（ｔは転置を表す）で、それぞれ色補正前後のRGB値を表す。また、Ａは３行３列のマトリクスであり、主に画像データの色相の補正を行う。本色補正手段１０５においては、デジタルカメラ１００が用意した複数の色空間の中から一つの色空間（以後、基本色空間とする）で所望の色再現特性が得られるものとする。
【００２７】
次に、色空間符号化手段１０６は入力のRGB値に対し、ユーザがデジタルカメラ１００の不図示のボタンにより指定した所定の色空間にRGB値を符号化する。例えば基本色空間をIEC 61966-2-1に記載されているsRGB色空間と想定し、基本色空間に画像データを符号化する場合は、IEC 61966-2-1の記載に従いRGB値を出力する。ここで、入力RGB値の（0,0,0）、（1,1,1）、（1,0,0）、（0,1,0）、（0,0,1）がそれぞれ黒、白、赤、緑、青を表すものとすると、RGB各チャンネルに対して画像データをディスプレイの電圧-輝度特性（γ特性）に合わせることを主目的としたγ変換を行い、さらに0〜１の範囲外のものに対しては0〜１に収まるようにクリッピング（0以下の値を0に、1以上の値を1にする）し、出力bit数（sRGBの場合8bit）に合せて正規化し、出力する。また、基本色空間以外の色空間、例えば基本色空間に対して赤、緑、青の色度座標の異なる色空間に符号化する場合は、まず、入力RGB値を基本色空間から別の色空間に以下の（式２）に示すマトリクス演算により変換を行う。
【００２８】
Ｃ’’＝  A’Ｃ’  （式２）
【００２９】
ここで、Ｃ’＝（R',G',B'）t、Ｃ’’＝（R'',G'',B''）t（ｔは転置を表す）で、それぞれ色空間変換前後のRGB値を表す。また、Ａ’は３行３列のマトリクスであり、基本色空間からユーザが指定した別の色空間への対応を表す変換マトリクスである。そして、基本色空間への符号化処理と同様にしてRGB各チャンネルに対して画像データをディスプレイの電圧-輝度特性（γ特性）に合わせることを主目的としたγ変換を行い、さらに0〜１の範囲外のものに対しては0〜１に収まるようにクリッピング（0以下の値を0に、1以上の値を1にする）し、出力bit数（sRGBの場合8bit）に合せて正規化し、出力する。
【００３０】
色空間符号化手段１０６から出力された画像データは画像圧縮手段１０７により所望の画質、圧縮率に応じて圧縮され、記録再生手段１０８に出力される。記録再生手段１０８は、圧縮された画像データとともに例えば撮影時の日時、撮影モード、焦点距離などの情報を付帯情報として所定の画像フォーマットに従い１つの画像データとして記録媒体２００に記録する。
【００３１】
以上説明したようなデジタルカメラ１００においては、通常パノラマ画像を撮影する場合は、露出、白バランス、色空間などを同一にして撮影することが好ましい。しかしながら、撮影する被写体に対して最適な色空間で撮影を行うことにより、より好適な画像を得ることができる。例えば、パノラマ撮影において、シーンの左側に花や新緑など彩度の高い被写体を含む場合は画像データを比較的広い色空間で記録し、シーンの右側に人物などを含む場合は画像データを比較的狭い色空間で記録するのが好ましい。以下、このような２つの画像データを合成する方法について説明する。
【００３２】
図１に本発明の実施形態の画像処理システムを実行するアプリケーションプログラムのアルゴリズムを示す。以後、図１に示したアルゴリズムを基に、第１の画像データと第２の画像データを合成する場合の動作を説明する。
【００３３】
まず、アプリケーションプログラムが起動するとユーザはアプリケーションプログラムの不図示のファイル読み込みステップから合成したい第１の画像データおよび第２の画像データに相当するファイル名を不図示の入力部から入力し、第１の画像データおよび第２の画像データをＰＣ３００の記憶部に読み込む。（Ｓ３０１）
【００３４】
画像データがＪＰＥＧ等の方式により圧縮されている場合は画像データを所定の解凍方式にしたがって解凍し、ＲＧＢ各３チャンネルからなる画像データとする。図５（ａ）、（ｂ）にそれぞれ合成する第１の画像データ、第２の画像データの例を示す。
【００３５】
次に、入力された第１の画像データおよび第２の画像データの重複する領域における同一被写体の対応関係を対応点として抽出する。（Ｓ３０２）
【００３６】
以下、本実施形態では対応点抽出の方法としてテンプレートマッチングを用いる場合について対応点抽出の動作について説明する。テンプレートマッチングは基本的に画像の画素値を入力する複数の画像において最も相関の高い部分同士を対応付ける方法であるが、第１の画像データと第２の画像データは色空間が異なるので同じ被写体部分であっても相関が高くならない可能性がある。そこで、本実施形態ではまず、入力された第１の画像データおよび第２の画像データのＲＧＢ値を輝度値に変換する。ＲＧＢ値の輝度値への変換には、例えば、各画素を構成するＲＧＢ値の平均値を擬似的な輝度値として出力する方法を用いる。次に、輝度値に変換された第１の画像から所定の領域をテンプレート切り出し領域として設定する。ここで図５に示すように第１の画像、第２の画像は左、右の順に並んでいるので図６（ａ）のように第１の画像の水平方向の右端から３割、垂直方向の１割から９割を第１の画像におけるテンプレート切り出し領域Ｔとする。なお、このテンプレート切り出し領域Ｔはユーザが不図示の入力部から指定するようにしてもよい。そしてこの領域Ｔを分割したブロック単位で画像サイズの１割程度の大きさの小領域ｔを切り出す。次に、切り出した全テンプレートについて第２の画像中から対応点を抽出する。まず、切り出したテンプレートに対応する点を探索する所定の領域を第２の画像から設定する。ここでは、図７（ａ）、（ｂ）のように、第２の画像の水平方向の左端からテンプレートの第１の画像中の位置から±１割の位置を探索領域Ｓとする。この範囲設定は入力画像の重複領域が水平方向で５割以下で、垂直方向では±１割以上はずれないという条件に基づく。入力画像の想定される重複条件が異なる場合は、この対応点抽出の探索範囲の設定を変えれば良い。図７においては、第１の画像の領域ｔをテンプレートとした場合の探索領域Ｓを示している。この探索領域Ｓ内でテンプレートを平行にずらしていき、第１の画像と第２の画像の輝度値の差分が計算される。そして、差の絶対値の総和が最小となる位置を対応点位置とする。そして、求められた結果に対する信頼性の判定を行う。信頼性の判定は最小値となった差の絶対値の総和の最小値が第１の所定の閾値以下、差の絶対値の総和の２番目に小さい値と最小値との差が第２の所定の閾値以上あった時に対応点に信頼性があると判定し、対応点の第１および第２の画像中の座標を記憶部に格納しておく。なお、ここでは、差の絶対値の総和が最小となる位置を対応点位置としたが、例えば相関演算を行って、相関値が最大となる位置を対応点位置としてもよい。また、輝度値に対する相関に基づいて対応点抽出を行ったが、輝度の微分値を用いてもよい。また、テンプレートマッチングに基づいて対応点抽出を行ったが、それぞれの画像中から特徴点を抽出し、特徴量の相関に基づいて対応点抽出を行ってもよい。また、２つの画像をディスプレイ上に表示し、画像中の同一な点をカーソル等で指定して抽出してもよい。
【００３７】
次に、抽出された対応点位置から座標変換のパラメータを推定する。（Ｓ３０３）
第１の画像に対して第２の画像の幾何的位置関係を以下の式３のように定式化する。この関係は２つの画像が面内回転、平行移動、変倍の関係にあるとの想定に基づく。式３で第１の画像中の点（ｘａ，ｙａ）は第２の画像中の点（ｘｂ，ｙｂ）に対応する。
【００３８】
ｘｂ＝ Ａ・ｘａ＋Ｂ・ｙａ＋Ｃ，ｙｂ＝−Ｂ・ｘａ＋Ａ・ｙａ＋Ｄ  （式３）
【００３９】
この時の座標変換パラメータＡ、Ｂ、Ｃ、Ｄを（式３）の関係が成立するようにＳ３０２で抽出された対応点の組を用いて最小自乗法により推定する。
【００４０】
次に、抽出された対応点位置から第１の画像および第２の画像の色空間を推定する。（Ｓ３０４）
【００４１】
以下、本実施形態では色空間を推定する方法について詳細を説明する。
前述したデジタルカメラ１００の色空間符号化手段１０６の処理から、異なる色空間で記録された画像データの関係は以下に説明するようになる。第１の画像データおよび第２の画像データがＲＧＢ各８bitの整数型データで0〜255の値を保持しているものとする。まず、ディスプレイの電圧-輝度特性（γ特性）に合った画像データを元の特性に戻すために逆γ変換をテーブル参照により行う。このとき用いるテーブルはＲＧＢ各チャンネルで同一のものであり、0〜255の各入力値に対して所望の変換を行うための出力値が用意されている。但し、γ変換での変換精度を維持するため、出力値は0〜1023の10bitのＲＧＢ値として出力するようにする。すなわち、（0,0,0）、（1023,1023,1023）、（1023,0,0）、（0,1023,0）、（0,0,1023）がそれぞれ黒、白、赤、緑、青を表すものとする。このとき、逆γ変換された第１の画像データと第２の画像データの関係は式４のようになる。
【００４２】
Ｃ２＝  Ａ１２Ｃ１  （式４）
【００４３】
ここで、Ｃ１＝（R１,G１,B１）t、Ｃ２＝（R２,G２,B２）t（ｔは転置を表す）で、それぞれ第１の画像データおよび第２の画像データの逆γ変換後のRGB値を表す。また、Ａ１２は第１の画像データと第２の画像データの色空間の関係を表す３行３列のマトリクスである。例えば、Ａ１２が単位行列の場合は第１の画像データと第２の画像データの色空間は同じであることになる。
【００４４】
デジタルカメラ１００の色空間符号化手段１０６で符号化する色空間が例えば、｛Ｓ１、Ｓ２、Ｓ３、．．．、ＳＬ｝のＬ種類であるとすると、式４の色空間変換マトリクスの種類は単位行列を含むＮ＝Ｌ（Ｌ−１）＋１通りとなる。これらのマトリクスはあらかじめ第１の画像の色空間と第２の画像の色空間とが対応付けられており、これをＭK（Ｋ＝１，...，Ｎ）とすると、Ｓ３０２で抽出された第１の画像中の逆γ変換後のＲＧＢ値をＣ１k＝（R１k,G１k,B１k）t、第２の画像中の逆γ変換後のＲＧＢ値をＣ２k＝（R２k,G２k,B２k）t（但し、ｋ＝１，...，ｎ；ｎは抽出された対応点の組の数）とするとき、式５のeKを算出する。
【００４５】
eK＝Σ｛Ｃ２k−ＭKＣ１k｝（Ｋ＝１，...，Ｎ）  （式５）
（但し、Σはｋ＝１，...，ｎの総和）
【００４６】
そして、最も小さいeKの値を算出した際のマトリクスＭKに対応付けられた色空間を第１の画像の色空間、第２の画像の色空間として推定する。
【００４７】
なお、本実施形態では対応点として抽出された画素のRGB値をもとに色空間を推定したが、Ｓ３０３で推定した座標変換パラメータを用いて色空間を推定してもよい。以下、この方法について説明する。まず、各入力画像での座標値が重複部にあるかどうかをＳ３０３で推定した座標変換パラメータを用いて判定する。すなわち、第１の画像の各座標値を式３に従い第２の画像の座標値に変換し、この座標値が第２の画像の領域内かどうかを判定する。次に、重複部内にあると判定された画素のＲＧＢ値を第１の画像、第２の画像についてそれぞれ前述のＣ１k、Ｃ２kとする。以降の色空間推定処理は前述した方法で行えばよい。なお、画素のサンプリングは全画素でもよいし、任意の間隔で行ってもよい。また、ＲＧＢ値としては、座標変換パラメータにより得られる対応点の座標をもとに近辺のＲＧＢ値それぞれの平均値を用いてもよい。
【００４８】
以上説明したように、本実施形態では、重複部分から抽出した対応点や座標変換パラメータなど、画像間の位置ずれを用いて画像の色空間を推定することが特徴である。
【００４９】
次に、第１の画像または第２の画像を共通の色空間に変換する。（Ｓ３０５）
本実施形態では、デジタルカメラ１００の色空間符号化手段１０６で符号化する色空間がＳ１⊂Ｓ２⊂．．．⊂ＳＬのように包含関係にある場合を前提として考えると、共通の色空間を第１の画像の色空間または第２の画像の色空間のうち、広い色空間とする。したがって、狭い方の色空間で記録された画像を広い色空間に変換する。例えば、第１の画像の色空間が第２の画像の色空間より広い場合には第２の画像データを第１の画像の色空間の画像データに変換する。この場合には、式６に従い、変換する。
【００５０】
Ｃ３＝  ＭＣ２  （式６）
【００５１】
ここで、Ｃ2＝（R2,G2,B2）t、Ｃ3＝（R3,G3,B3）t（ｔは転置を表す）で、それぞれ第２の画像データにおける色変換前後のRGB値を表す。また、Ｍは第２の画像データの色空間を第１の画像データの色空間に変換するため、プログラムにあらかじめ記憶されているの３行３列のマトリクスである。なお、それぞれの色空間が完全に包含関係にない場合には、第１の画像の色空間および第２の画像の色空間を包含するような広い共通の色空間に第１の画像データと第２の画像データを変換するようにすればよい。
【００５２】
次に、共通の色空間に変換された２つの画像データをＳ３０３で推定した座標変換パラメータを用いて合成する。（Ｓ３０６）
【００５３】
まず、合成画像の画像領域を設定する。ここでは、画像領域の設定は第１の画像の座標系を基準に行い、図８の破線で示した領域のように設定する。すなわち、合成画像の左端は第１の画像の左端座標とし、右端は第２の画像の右上端、右下端の画素を第１の画像の座標に変換して求めた座標のうち大きい方の座標とする。ここで、第２の画像の座標を第１の画像の座標に変換するには以下の式７により行う。これは式３の逆変換に相当する。逆変換のパラメータをＡ′、Ｂ′、Ｃ′、Ｄ′とすると、次式が成立する。
【００５４】
ｘａ＝Ａ′・ｘｂ＋Ｂ′・ｙｂ＋Ｃ′，ｙａ＝−Ｂ′・ｘｂ＋Ａ′・ｙｂ＋Ｄ′（式７）
【００５５】
但し、Ａ′＝Ａ／（Ａ2＋Ｂ2），Ｂ′＝−Ｂ／（Ａ2＋Ｂ2），Ｃ′＝（−ＡＣ＋ＢＤ）／（Ａ2＋Ｂ2），Ｄ′＝（−ＢＣ−ＡＤ）／（Ａ2＋Ｂ2）である。また、合成画像の上端は第１の画像の上端座標値および第２の画像の右上端、左上端の画素を第１の画像の座標に変換して求めた座標のうち小さい方の座標値、下端は第１の画像の下端座標値および第２の画像の右下端、左下端の画素を第１の画像の座標に変換して求めた座標のうち大きい方の座標値とする。但し、以上の説明で画像の右側および下側をそれぞれの座標系の正の方向とした。そして、継ぎ目の位置を重複部の中心となるように図８の破線φで示したように設定する。すなわち、第１の画像の右端座標値と、第２の画像の左上端、左下端の画素を第１の画像の座標に変換して求めた座標のうち小さい方の座標値との平均値を継ぎ目の位置とする。さらに、求めた合成画像の領域に対してそれぞれ画素値を求める。そして、つなぎ目φを中心に左側の領域に対してはＳ３０４で逆γ変換を行った出力である第１の画像データのＲＧＢ値、右側の領域に対してはＳ３０５の出力である第２の画像データのＲＧＢ値を合成画像のＲＧＢ値とする。なお、画像合成の方法においては、画像が重複する領域では以上２つのＲＧＢ値の平均値をＲＧＢ値としてもよい。また、特開平9-321972に提案されているような階調補正を行って合成する方式と組合せてもよい。
【００５６】
なお、本実施形態においては、Ｓ３０５で一旦、共通の色空間に画像を変換し、Ｓ３０６で合成を行うようにしたが、画像合成を行う際に共通の色空間に変換する必要のある画像データに関してＲＧＢ値を取得する際に随時、共通の色空間への変換を行うようにしてもよい。
【００５７】
次に、ユーザが保存するファイル名を指定すると、Ｓ３０６で合成された共通の色空間での画像データは所定の出力用の色空間に変換され、指定したファイル名に従いＰＣ３００の記憶部または記録媒体２００に記録、保存される。（Ｓ３０７）
【００５８】
例えば、保存する画像データへの色空間への変換は以下の式８のように行われる。
【００５９】
Ｃ５＝  Ａ５Ｃ４  （式８）
【００６０】
ここで、Ｃ４＝（R4,G4,B4）t、Ｃ５＝（R5,G5,B5）t（ｔは転置を表す）で、それぞれ色変換前後のRGB値を表す。また、Ａ５は共通色空間の画像データを保存する色空間に変換するための３行３列のマトリクスである。そして、RGB各チャンネルに対して画像データをディスプレイの電圧-輝度特性（γ特性）に合わせることを主目的としたγ変換をテーブル参照により行う。このとき用いるテーブルはＲＧＢ各チャンネルで同一のものであり、0〜1023の各入力値に対して所望の変換を行うための出力値が0〜255の８bitの値として用意されている。
【００６１】
なお、保存する画像データの色空間としては第１ないし第２の画像データの色空間の両方の色再現範囲を包含するような色空間がより好ましい。この場合、本実施形態では、保存する色空間を合成画像の色空間とすればよいので、出力用の色空間への変換（式８の変換）が必要でないことはいうまでもない。
【００６２】
また、本実施形態における入力画像、合成画像は、本実施形態で行う処理によって色空間が推定されたものであるので、元の入力画像や合成保存する画像の付帯情報として画像データとともに色空間の情報を記録してもよい。
【００６３】
以上説明したように、本実施形態では、第１の画像と前記第１の画像と重複部分を有する第２の画像との対応点を抽出し、前記抽出した対応点の座標変換を行うためのパラメータを推定して、前記推定したパラメータに基づいて前記第１の画像と第２の画像を合成する画像処理システムであって、前記第１の画像と第２の画像の色空間を推定して、前記推定した色空間を用いて前記第１の画像と第２の画像の画素値を共通の色空間に変換し、前記共通の色空間において第１の画像と第２の画像を合成するようにしたので、異なる色空間の画像データの合成においても色の不具合が生じることなく合成画像データが得られる。
【００６４】
また、共通色空間の色再現範囲がそれぞれ元の画像データの色空間の色再現範囲を包含するようにしたので元の画像の色再現を損なうことなく画像を合成できる。さらに、本実施形態では共通色空間のビット数が元の画像データの色空間のビット数よりも多いのでビット落ちによる変換誤差も小さくできる。
【００６５】
以上の実施形態では、２枚の画像データの合成について説明したが、３枚以上の画像データの合成についても本発明は応用できることはいうまでもない。
【００６６】
以上の実施形態では、デジタルカメラ１００で被写体を撮影した画像データの合成について説明したが、合成する元の画像データはComputerGraphics技術によりPCなどの計算機によって生成された画像でもよい。
【００６７】
また、以上の実施形態では、複数の画像から画角の広いパノラマ画像を合成する場合において元の画像の色空間を推定する方法を示したが、重複する部分を有する複数の画像に対して色空間を推定する方法において広く適用できる。
【００６８】
以上説明したように、本実施形態によれば、第１の画像と前記第１の画像と重複部分を有する第２の画像との対応点を抽出し、前記抽出した対応点の座標変換を行うためのパラメータを推定して、前記推定したパラメータに基づいて前記第１の画像と第２の画像を合成する画像処理システムであって、前記第１の画像と第２の画像の色空間を推定して、前記推定した色空間を用いて前記第１の画像と第２の画像の画素値を共通の色空間に変換し、前記共通の色空間において第１の画像と第２の画像を合成するようにしたので、色空間の異なる画像データを合成する場合においても、色再現の不具合なく容易に合成できる。
【００６９】
本実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００７０】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【００７１】
【図１】本発明の実施形態の画像処理システムのアプリケーションプログラムのアルゴリズムを示す図である。
【図２】本発明の実施形態の画像処理システムの構成を示す図である。
【図３】本発明の実施形態のデジタルカメラの構成を示す図である。
【図４】本発明の実施形態のデジタルカメラの色フィルタの構成を示す図である。
【図５】入力画像の一例を示す図である。
【図６】対応点抽出でのテンプレートの切り出し方法を示す図である。
【図７】対応点抽出での探索領域の設定方法を示す図である。
【図８】画像合成方法を説明する図である。
【符号の説明】
【００７２】
１００  デジタルカメラ
１０１  撮像手段
１０２  露出調整手段
１０３  白バランス補正手段
１０４  画素補間手段
１０５  色補正手段
１０６  色空間符号化手段
１０７  画像圧縮手段
１０８  記録再生手段
２００  記録媒体
３００  コンピュータ
【図１】
2005130281.tif 000003
【図２】
2005130281.tif 000004
【図３】
2005130281.tif 000005
【図４】
2005130281.tif 000006
【図５】
2005130281.tif 000007
【図６】
2005130281.tif 000008
【図７】
2005130281.tif 000009
【図８】
2005130281.tif 000010