(57)【特許請求の範囲】
【請求項１】
任意のシーンについてのコンピュータグラフィックス画像を、光線追跡法によって生成する画像処理装置であって、
デバイスの分光特性を示すデバイス特性データを入力するデバイス特性データ入力手段と、
前記シーン内におけるオブジェクトの情報を示すオブジェクトデータを入力するオブジェクトデータ入力手段と、
前記デバイス特性データに基づき、前記分光特性を特徴づける波長を追跡対象波長として決定する波長決定手段と、
前記オブジェクトデータに基づいて前記追跡対象波長の光線に対する光線追跡を行うことによって、前記シーンにおける画素ごとの分光放射輝度を算出する光線追跡手段と、
前記画素ごとの分光放射輝度を色信号に変換して前記コンピュータグラフィックス画像を生成する色変換手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記デバイス特性データは、前記デバイスが備えるカラーフィルタの分光特性を示し、
前記波長決定手段は、前記カラーフィルタの分光特性において、フィルタ透過率がピークとなる波長を中心とした所定範囲の第１の波長域から、前記追跡対象波長を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記波長決定手段は、前記カラーフィルタの分光特性において、フィルタ透過率の変化が所定の閾値以上である第１の波長域から、前記追跡対象波長を抽出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記波長決定手段は、前記第１の波長域において、前記追跡対象波長を等間隔で抽出することを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
前記波長決定手段は、該第１の波長域とは異なる第２の波長域において、該第１の波長域における前記追跡対象波長の抽出間隔よりも大きな間隔で、前記追跡対象波長を抽出することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記デバイスは、前記シーンと合成する実写映像を撮影する撮像装置であることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記デバイスは、前記コンピュータグラフィックス画像を表示するディスプレイであることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項８】
前記オブジェクトデータは、前記シーン内におけるオブジェクトの位置および大きさ、分光反射特性および分光透過特性の情報を含むことを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
デバイス特性データ入力手段、オブジェクトデータ入力手段、波長決定手段、光線追跡手段、および色変換手段、を有し、任意のシーンについてのコンピュータグラフィックス画像を、光線追跡法によって生成する画像処理装置における画像処理方法であって、
前記デバイス特性データ入力手段が、デバイスの分光特性を示すデバイス特性データを入力し、
前記オブジェクトデータ入力手段が、前記シーン内におけるオブジェクトの情報を示すオブジェクトデータを入力し、
前記波長決定手段が、前記デバイス特性データに基づき、前記分光特性を特徴づける波長を追跡対象波長として決定し、
前記光線追跡手段が、前記オブジェクトデータに基づいて前記追跡対象波長の光線に対する光線追跡を行うことによって、前記シーンにおける画素ごとの分光放射輝度を算出し、
前記色変換手段が、前記画素ごとの分光放射輝度を色信号に変換して前記コンピュータグラフィックス画像を生成する
ことを特徴とする画像処理方法。
【請求項１０】
コンピュータ装置で実行されることにより、該コンピュータ装置を請求項１乃至８のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光線追跡法を用いて画像を生成する画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
近年、コンピュータグラフィックス(以下、CG)が様々な分野で利用されている。CGは設計やデザインの分野でも広く利用されており、このような分野では、より実物に忠実な画像を生成する技術が要求されている。実物に忠実な画像をCGを用いて取得する技術として、光線追跡法を利用した方法が提案されている(例えば、特許文献１参照)。また、上記のようなCGを、デジタルカメラやデジタルビデオカメラ等で撮影した実写画像と合成することにより、今までにない新しい映像表現が可能になりつつある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2011-17541号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
実物に忠実なシーンをCGで再現し、実写画像と合成するためには、該シーンが実物に忠実なことだけでなく、実写画像を撮影したデバイスの特性も加味した上で、画像を合成することが重要となる。
【０００５】
しかしながら上記特許文献１に記載の方法では、デバイスの特性については特に考慮されないため、実写画像とCGを合成して一つのシーンとして適切に構築するには、さらなる調整が必要となる。
【０００６】
また、特許文献１に記載の方法も含め、一般的な光線追跡法では、光を波長に依存しない一様な光線として扱う。したがって、例えばオブジェクトを透過する光の屈折のように、波長によって異なる振る舞いをする物理現象を正しく再現することができない、という問題があった。
【０００７】
本発明は上述した問題を解決するために、デバイスの特性を考慮した光線追跡を行うことで、シーンを忠実に再現したコンピュータグラフィックス画像を効率良く生成することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するための一手段として、本発明の画像処理装置は以下の構成を備える。
【０００９】
すなわち、任意のシーンについてのコンピュータグラフィックス画像を、光線追跡法によって生成する画像処理装置であって、デバイスの分光特性を示すデバイス特性データを入力するデバイス特性データ入力手段と、前記シーン内におけるオブジェクトの情報を示すオブジェクトデータを入力するオブジェクトデータ入力手段と、前記デバイス特性データに基づき、前記分光特性を特徴づける波長を追跡対象波長として決定する波長決定手段と、前記オブジェクトデータに基づいて前記追跡対象波長の光線に対する光線追跡を行うことによって、前記シーンにおける画素ごとの分光放射輝度を算出する光線追跡手段と、前記画素ごとの分光放射輝度を色信号に変換して前記コンピュータグラフィックス画像を生成する色変換手段と、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、デバイスの特性を考慮した光線追跡を行うことで、シーンを忠実に再現したコンピュータグラフィックス画像を効率良く生成することができる。
【図面の簡単な説明】
【００１１】
【図１】オブジェクトの透過特性を説明する模式図、
【図２】第１実施形態における装置構成例を示すブロック図、
【図３】第１実施形態における論理構成例を示すブロック図、
【図４】第１実施形態における画像生成処理を示すフローチャート、
【図５】第１実施形態におけるデバイス特性データ例を示す図、
【図６】第１実施形態における光線追跡処理を示すフローチャート、
【図７】第１実施形態における色変換処理を示すフローチャート、
【図８】第２実施形態における論理構成例を示すブロック図、
【図９】第２実施形態におけるデバイス特性データの作成処理を示すフローチャート、である。
【発明を実施するための形態】
【００１２】
以下、本発明に係る実施形態について、図面を参照して説明する。なお、以下の実施の形態は特許請求の範囲に関る本発明を限定するものではなく、また、本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１３】
＜第１実施形態＞
本実施形態においては、デジタルカメラで撮影された実写映像との合成対象となるシーンのコンピュータグラフィックス画像(CG)を、光線追跡(レイトレーシング)によって生成する処理について説明する。このとき、該デジタルカメラにおけるカラーフィルタの分光特性に基づいて、光線追跡を行う波長(追跡対象波長)を決定することを特徴とする。
【００１４】
まず、波長によって異なる光の振る舞いについて、図１を用いて説明する。光はオブジェクトにあたると、その表面で反射する光と透過する光に分離する。オブジェクトを透過する光は、その波長λに応じた分光屈折率によって屈折角が変化する。例えば図１に示すように、視点を開始点として、分光屈折率ｎ1(λ)の空間を通過した光線が分光屈折率ｎ2(λ)のオブジェクト101を透過する場合を考える。このとき、オブジェクトに対する光線の入射角をφとすると、屈折角θ(λ)は以下の(1)式で示される。
【００１５】
θ(λ)＝sin-1{(ｎ1(λ)/ｎ2(λ))sinφ}      ・・・(1)
このように屈折角は光の波長λの関数になるため、光線追跡法によって追跡する光の経路が波長λによって変化することになる。従って、図１でオブジェクト101を透過した光がさらに分光屈折率ｎ3(λ)のオブジェクト102を透過する等、あるシーンにおける光の透過を忠実に再現するためには、光を分光として扱い、複数の光線から色を再現する必要がある。また、正確に色を再現するためには、光源から発せられる光の全ての波長に対して追跡計算を行う必要がある。しかし、全ての波長に対して光線追跡計算を行うことは、計算量が余りにも膨大となってしまうため現実的には不可能である。そこで、全波長域から所定間隔おきに抽出した波長について光線追跡を行って、色再現を行うことが一般的である。
【００１６】
●装置構成
本実施形態における画像処理装置の構成例について、図２を用いて説明する。図２に示すように本実施形態の画像処理装置は、CPU201、RAM202、外部記憶装置203、汎用インターフェイス(以下、単にI/F)204、ROM205、モニタ206、メインバス207を備える。I/F204は、不図示の光ディスク装置やネットワーク装置等を、メインバス207に接続する。以下、CPU201がROM205に格納された各種ソフトウェア(コンピュータプロラム)を動作させることで実現する各種処理について説明する。
【００１７】
まずCPU201は、ROM205に格納されている画像処理アプリケーションを起動し、RAM202に展開する。続いて、外部記憶装置203に格納されている各種データや、I/F204に接続された不図示の分光測定器や外部記憶装置から入力されるデータ等が、CPU201からの指令に基づき、メインバス207経由でRAM202に転送される。さらに、画像処理アプリケーションにしたがって、RAM202に格納されているデータにCPU201からの指令に基づく各種演算が施され、該演算結果をメインバス207経由でモニタ206に表示したり、外部記憶装置203に格納したりする。
【００１８】
以下、上記構成において、CPU201からの指令に基づき画像処理アプリケーションが画像を生成してモニタ206に表示するまでの画像処理について、詳細に説明する。
【００１９】
図３は、本実施形態における画像処理装置301の論理構成を示すブロック図であるが、同図に示す各構成は、上述したように画像処理アプリケーションとして実現される。
【００２０】
図３において、デバイス特性データ入力部302は、対象デバイス、すなわちシーンへの合成対象となる実写映像を撮影した撮像デバイスの分光特性データを、デバイス特性データ309として入力する。オブジェクトデータ入力部303は、シーンを構成する各オブジェクトの情報(配置、形状、色や質感等)を、オブジェクトデータ308として入力する。尚、デバイス特性データ入力部302およびオブジェクトデータ入力部303で入力されるデータは、ROM205や外部記憶装置203、I/F204を介して接続される他の手段によって入力されても良い。分光放射輝度算出部304は、デバイス特性データ入力部302及びオブジェクトデータ入力部303から入力された各種データに基づき、CPU201からの指示に従って、シーンのCG画像における各画素の分光放射輝度307を算出する。色変換部305は、分光放射輝度算出部304で算出された分光放射輝度307に基づき、CPU201からの指示に従ってシーンのCG画像における各画素の色信号値(例えばRGB等)を算出し、画像データ306として出力する。画像データ306は、外部記憶装置203等の記憶領域に格納されるとともに、モニタ206に表示される。
【００２１】
●デバイス特性データ
ここで、本実施形態におけるデバイス特性データ309の詳細について、図５を用いて説明する。図５は、対象デバイスであるデジタルカメラにおけるR,G,Bの各カラーフィルタの分光透過率を示すデータであり、この波長域において抽出された特定の波長が、デバイス特性データ309として予めテーブル形式で保持されている。図５の横軸は波長[nm]、縦軸は分光透過率[％]を示し、R,G,Bそれぞれの波長帯の光を透過するフィルタが存在することを示している。本実施形態では、光線追跡法を適用する光線の波長（追跡対象波長）を、このデバイス特性データとして示された分光特性に基づいて決定する。具体的には図５に点線で示すように、R,G,Bそれぞれの透過波長域において、フィルタ透過率(すなわちフィルタ感度)が最も高いピーク部分から所定範囲(第１の波長域)で、追跡対象波長をより細かく抽出する。したがって相対的に、フィルタ感度が低い範囲(第２の波長域)では追跡対象波長の抽出数が少なくなる。
【００２２】
ここで従来の光源追跡法によれば、追跡対象波長は全波長域から等間隔で抽出しており、例えば380〜730nmの可視域において、10nm間隔で36波長を追跡対象波長として抽出し、分光計算を行っていた。対して本実施形態では、例えばRフィルタの透過ピークである600〜730nmの第１の波長域については5nm間隔で追跡対象波長を抽出し、他の第２の波長域では30nm間隔で抽出する。このように、分光特性に応じて追跡対象波長の抽出間隔を変更することによって、従来の等間隔による抽出を行う場合と比べて、追跡対象波長の全体数は減らしながらも、フィルタのピーク近傍については逆に増やすことができる。したがって、全体としての演算量を削減しつつ、よりデバイス特性を反映したレンダリングを行うことが可能となる。
【００２３】
本実施形態では、光線追跡に用いる追跡対象波長を以上のように予め決定し、デバイス特性データ309としてそれぞれの透過率とともにルックアップテーブル(LUT)形式で保持している。実際には、デバイス特性データ309は例えば外部記憶装置203に保持されている。なお、デバイス特性データ309としては、複数種類のデバイスに対応したものがそれぞれ保持されており、後述するように、シーンのCGに反映させるべき対象デバイスについてのデバイス特性データ309が選択的に参照される。
【００２４】
以降で説明する光線追跡計算では、デバイス特性データ309として保持された波長ごとに、演算を行う。
【００２５】
●シーンCG画像の生成処理
以下、本実施形態の画像処理装置301において、実写映像との合成対象となるシーンのCG画像を作成する画像生成処理について、図４のフローチャートを用いて説明する。
【００２６】
まずS401で、シーンのCGがその特性を再現すべき対象デバイスを、例えば不図示のUIより指定する。ここで指定する対象デバイスとは、該シーンに合成される実写映像を撮影するデジタルカメラの機種名を指し、該機種名に応じたデバイス特性データ309が予め保持されているものとする。なお、デバイス特性データ309が特定できれば、機種以外の名称、たとえばカラーフィルタ名称等を指定しても良い。
【００２７】
次にS402では、デバイス特性データ入力部302から、S401で指定された対象デバイスのデバイス特性データ309を読み込み、RAM202に格納する。そしてS403で、オブジェクトデータ入力部303からオブジェクトデータ308を入力する。ここでオブジェクトデータ308とは、CGとして生成する当該シーンに含まれるオブジェクトの位置や大きさ、反射特性等を示すデータである。
【００２８】
次にS404で、当該シーンのCGとしての出力画像を順次走査して、分光放射輝度の算出対象となる画素を決定する。なお、この対象画素の選択順は任意である。
【００２９】
以下、S405〜S407で分光放射輝度算出部304において、上記S404で選択された対象画素についての分光放射輝度を算出する。まずS405で、上記S402で読み込まれたデバイス特性データ309に保持された波長群から、光線追跡の対象となるひとつの波長を追跡対象波長として設定する。なお、この追跡対象波長の選択順は任意である。そしてS406で、対象画素における追跡対象波長の放射輝度を算出する。この放射輝度の算出の際にオブジェクトデータ308を用いた光線追跡を行うが、その詳細については後述する。そしてS407では、デバイス特性データ309に保持された全波長について、放射輝度の算出が終了したか否か、すなわち、当該対象画素についての分光放射輝度の算出が終了したか否かを判定する。未終了であればS405に戻って次の追跡対象波長を決定し、処理を継続する。
【００３０】
一方、全波長についての処理が終了していればS408に進み、シーンの出力画像の全画素について、分光放射輝度の算出が終了したか否かを判定する。終了していなければS404に戻って次の対象画素を決定し、処理を継続する。全画素についての処理が終了していればS407に進み、色変換部305において、出力画像の各画素について分光放射輝度から色信号値を算出することで、画像データ306が生成される。この画像データ306がすなわち、実写合成の対象となるシーンのCG画像である。なお、色信号値の算出方法の詳細については後述する。
【００３１】
●放射輝度算出処理
以下、上記S406における追跡対象波長の放射輝度の算出処理について、図６を用いて詳細に説明する。上述したように、追跡対象波長の放射輝度の算出には光線追跡法を用いる。この手法によれば、本実施形態であればデジタルカメラに相当する視点が画角内の各方向から受け取るはずの光線を、仮想的に光源まで追跡することでCG画像の描画を行う。詳細には、視点から描画する各画素の方向へ直線を伸ばし、オブジェクトとの交差の有無を数学的に判定する。そして、反射や透過により発生した光線について、再帰的に探索を繰り返し、光源と交差した場合に計算を終了する。すなわち本実施形態では、図６のフローチャートに示す処理を再帰的に実行することで複数の光線(発射光線)を追跡し、光線ごとに算出した放射輝度の平均により、対象画素における追跡対象波長の放射輝度を算出する。
【００３２】
なお、図６では波長λの単色光についての放射輝度算出処理を説明するが、実際には図４のS405〜S407のループ処理で示されるように、同様の処理をデバイス特性データ309として入力された波長毎に行う。これにより、デバイス特性データ309として予め設定された各追跡対象波長についての放射輝度が算出され、当該対象画素についての分光放射輝度が得られる。
【００３３】
まずS601で、追跡の開始点から飛ばした波長λの光線がシーンにおいて交差する点を探索する。ここで追跡の開始点は、当該フローチャートが初回の実行であれば対象画素であり、再帰実行であれば光線とオブジェクトとの交点である。なお、この探索はオブジェクトデータ308に基づいて行われるが、探索方法は任意であり、例えば、シーン内の全てのオブジェクトについて順次交差判定を行って、追跡の開始点に最も近い交点を求めれば良い。
【００３４】
次にS602で、S601で探索された光線と交差する点が、光源との交差であるか、またはその他のオブジェクトとの交差であるかを判定する。光線が光源と交差している場合にはS603に移行し、光線の強度と光源の光源特性データから、追跡対象波長λについての放射輝度を算出して、当該波長についての処理を終了する。ここで光源特性データとは、光源の配光特性や分光放射輝度等であり、RAM202等に予め保持されているとする。詳細には、光線の強度をＰ0(λ)、光線と光源のなす角をθ、光源からθ方向の配光特性をＱ(θ)、光源の分光放射輝度をＳ(λ)とすると、光線の分光放射輝度Ｅ0(λ)は以下の(2)式によって示される。
【００３５】
Ｅ0(λ)＝Ｐ0(λ)*Ｑ(θ)*Ｓ(λ)      …(2)
一方、光線が光源以外のオブジェクトと交差している場合にはS604に移行し、まず、光線が交差したオブジェクトの分光特性(分光反射特性および分光透過特性)を、オブジェクトデータ308から取得する。
【００３６】
次にS605で、光線とオブジェクトとの交点から飛ばす光線数(発射光線数)を決定する。この発射光線数は任意に決定して構わないが、数が多いほどノイズの少ない画像が得られる。以下、発射光線数に応じた回数分、S606及びS607の処理をループする。
【００３７】
S606では、発射光線の方向および強度を算出する。光線の方向は発射光線数に応じて均等に分布すれば良く、該交点に対する反射光の強度Ｐr(λr)、透過光の強度Ｐt(λt)はそれぞれ、以下の(3),(4)式によって示される。なお、下式において、Ｐ0(λi)はオブジェクトと交差する前の光線の強度、ｆrはオブジェクトの反射特性、ｆtはオブジェクトの透過特性である。
【００３８】
Ｐr(λr)＝Ｐ0(λi)*ｆr(ｘ,ωi,λr,ωr)    …(3)
Ｐt(λt)＝Ｐ0(λi)*ｆt(ｘ,ωi,λt,ωt)    …(4)
ここで、オブジェクトの反射特性および透過特性について説明する。一般に、オブジェクトの反射特性は双方向反射率分布関数(BRDF：Bidirectional Reflectance Distribution Function)ｆrで表される。オブジェクト上の位置ｘにおいて、ある方向ωiから入射する光の波長をλi、強度をLiとし、ある方向ωrに反射する光の波長をλr、強度をdＬrとすると、反射特性ｆrは以下の(5)式で示される。
【００３９】
ｆr(ｘ,ωi,λr,ωr)＝{dＬr(ｘ,λr,ωr)}／{Ｌi(ｘ,λi,ωi)(ωr・ｎ)dω}      …(5)
一般に、反射光の強度分布はオブジェクトの表面形状に依存し、オブジェクト表面が平滑なほど、鏡面反射方向すなわちωi＝ωr方向の反射強度が高くなり、それ以外の拡散反射方向への反射強度は小さくなる。
【００４０】
尚、オブジェクトの反射特性ｆrの取得方法としては、オブジェクトデータ308以外の、外部記憶装置203等に記憶されているデータを入力しても良いし、I/F204に接続された分光測定器で測定したデータを直接入力しても良い。また、反射特性ｆrのデータ形式としては、オブジェクトへの光の入射角と反射角に対応した反射率が得られれば、任意であって良い。例えば、上記(3)式のように一意の関数として入力しても良いし、一般に拡散反射は等方的に分布するため、ωi＝45°,ωr＝0°の反射特性を拡散反射に適用し、鏡面反射は別途LUTにする等、分割して入力しても良い。
【００４１】
また、オブジェクトの透過特性は双方向透過率分布関数(BTDF：Bidirectional Transmittance Distribution Function)ｆtで表される。オブジェクト上の位置ｘにおいて、ある方向ωiから入射する光の波長をλi、強度をＬiとし、ある方向ωtに透過する光の波長をλt、強度をdＬtとすると、透過特性ｆtは以下の(6)式で示される。
【００４２】
ｆt(ｘ,ωi,λt,ωt)＝{dＬt(ｘ,λt,ωt)}／{Ｌi(ｘ,λi,ωi)(ωt・ｎ)dω}      …(6)
一般に、透過光の強度分布は分光屈折率に依存するため、ωtが上記式(1)を満たす場合に、透過強度が最大になる。尚、オブジェクトの透過特性ｆtの取得方法としても、オブジェクトデータ308以外の、例えば外部記憶装置203等に記憶されているデータを入力しても良い。また、透過特性ｆtのデータ形式も、オブジェクトへの光の入射角と屈折角に対応した透過率が得られれば、任意であって良い。例えば、上記(4)式のように一意の関数として入力しても良いし、ωi＝ωr＝0°の透過特性をωtが(1)式の屈折角θに等しい場合に適用し、それ以外の透過は別途LUTにする等、分割して入力しても良い。
【００４３】
以上のようにS606で発射光線の方向と反射光および透過光の強度Ｐr(λr),Ｐt(λt)が算出されると、次にS607で図６のフローチャートに示す処理を再帰的に呼び出すことによって、当該発射光線に対する光線追跡処理が行われる。このS607の処理はすなわち、再帰処理によって最終的に交差するオブジェクトがなくなり、当該発射光線についての放射輝度が光源特性データに基づいてS603で算出された時点で、終了する。このように、発射光線についてS607の再帰処理によって最終的に上記(2)式で算出された放射輝度Ｅ0(λ)が、当該発射光線についての放射輝度Ｅn(λ)となる。
【００４４】
そして、S608で全ての発射光線について上記S606及びS607による光源追跡が終了したと判定されると、次にS609において、各発射光線の放射輝度Ｅn(λ)の平均を算出する。この平均放射輝度値が、対象画素における追跡対象波長λについての放射輝度Ｅx(λ)である。すなわち、光線の総数をＮ、各発射光線の分光放射輝度をＥn(λ)(nは0〜N-1までの整数)とすると、対象画素における追跡対象波長λの放射輝度Ｅx(λ)は、以下の(7)式で算出される。なお、(7)式においてΣはn=0からN-1までの整数に関する総和を示す。
【００４５】
Ｅx(λ)＝(1/Ｎ)・ΣＥn(λ)      …(7)
以上、S406では図６に示す処理を再帰的に実行することによって、対象画素における追跡対象波長λの単色光線を追跡し、その放射輝度Ｅx(λ)を算出する。本実施形態では、上述したようにこの放射輝度算出処理をデバイス特性データ309が保持する各波長について行うことで、波長λごとの分光放射輝度Ｅx(λ)を取得する。
【００４６】
●色信号値算出処理
以下、上記S407における画素ごとの色信号値の算出処理について、図７を用いて詳細に説明する。尚、本実施形態では最終的にsRGB形式の色信号値を出力するとして説明するが、Adobe RGB等の他形式による色信号値であっても構わない。
【００４７】
まずS701で、視覚特性として、例えばCIEXYZ表色系の等色関数ｘ(λ),ｙ(λ),ｚ(λ)を取得する。次にS702で、上記S405で算出した、画素ごとの分光放射輝度Ｅx(λ)を取得する。そしてS703で、取得した視覚特性ｘ(λ),ｙ(λ),ｚ(λ)と分光放射輝度Ｅx(λ)から、以下の(8)〜(10)式によりCIEXYZ値(Ｘout,Ｙout,Ｚout)を算出する。
【００４８】
0005808180.tif 000002
【００４９】
0005808180.tif 000003
【００５０】
0005808180.tif 000004
【００５１】
そしてS704において、出力画像の色信号値を算出する。ここでは出力画像をsRGB形式とするるため、出力信号Ｒout,Ｇout,Ｂoutを以下の(11)〜(13)式によって算出する。
【００５２】
0005808180.tif 000005
【００５３】
0005808180.tif 000006
【００５４】
0005808180.tif 000007
【００５５】
以上、図４に示す画像生成処理によって、合成対象シーンのCGである出力画像が形成される。
【００５６】
以上説明したように本実施形態によれば、シーンにおけるオブジェクトデータを利用した光線追跡を、デバイスの分光特性に応じて設定された光線波長について行う。これにより、一般的な等間隔で抽出された波長を用いた光線追跡を行う場合に比べて、より少ない波長数による演算で、シーン内におけるオブジェクトの色を、あたかも該デバイスで撮影したように再現することができる。したがって、該シーンを、該デバイスで撮影された実写映像との合成に適したCGとして生成することができる。
。
【００５７】
なお本実施形態では、対象デバイスとしてデジタルカメラを例として説明したが、もちろん他のデバイスであっても構わない。例えば、対象デバイスをディスプレイとした場合、デバイス特性データはディスプレイのカラーフィルタ、およびバックライトの特性となる。このとき、本実施形態に基づいてシーン画像の色決定を行うと、ディスプレイ上で最も広色域となるようにレンダリングさせることができる。
【００５８】
＜第２実施形態＞
以下、本発明に係る第２実施形態について、特に第１実施形態と異なる個所について説明する。第２実施形態は、上述した第１実施形態に対し、図３に示したデバイス特性データ入力部302の動作、および、デバイス特性データ309の内容が異なる。
【００５９】
図８に、第２実施形態における画像処理装置の構成例を示すが、デバイス特性データ生成部901を除き、他の構成については上述した図３と同様であるため、説明を省略する。デバイス特性データ生成部901は、予め保持された詳細なデバイス特性データ309に基づき、分光放射輝度算出部304に入力すべきデバイス特性データを生成する。
【００６０】
以下、第２実施形態におけるデバイス特性データの生成方法について、図９のフローチャートを用いて説明する。まず、第２実施形態におけるデバイス特性データ309としては、上記図５に示すようなフィルタの分光透過率を示す詳細なデータを有している。例えば可視光域となる380〜730nmにおいて0.1nmおきのフィルタの分光透過率を有しているものとする。第２実施形態ではこのような詳細なデバイス特性データ309に基づき、光線追跡法の演算に適用する追跡対象波長を決定する。なお、第２実施形態におけるデバイス特性データ309としては、上記可視光域内の0.1nm刻みの例に限らず、もちろんその他の波長域・刻み幅であっても構わない。
【００６１】
デバイス特性データ生成部901はまずS1001において、デバイス特性データ309を読み込んでRAM202へ格納する。そしてS1002で、該読み込んだデバイス特性データ309の中から、透過率がピークを示す波長(以下、ピーク波長)を求める。このピーク検出には、Savitzky-Golayアルゴリズム等の一般的なピーク検出アルゴリズムを用いることができるが、他の方法を用いても構わない。
【００６２】
次にS1003では、S1002で得られたピーク波長に基づき、例えばピーク波長を中心に1nm刻みで前後5波長分を、追跡対象波長として決定する。
【００６３】
なお、追跡対象となる波長決定の方法としては上述した方法に限定されず、デバイス特性における特徴的な部分を示す波長を決定できれば、他の方法を適用することももちろん可能である。まず、追跡対象波長の抽出範囲をフィルタ透過率が0でない範囲に限定することも有効である。また、ピーク波長周辺以外にも、透過率の変化の大きい波長域から追跡対象波長を抽出することも有効である。例えば、フィルタ透過率が0でない波長範囲を所定の波長間隔で参照し、隣り合う参照波長の透過率変化が所定の閾値以上(例えば0.1以上)であれば、両波長とも追跡対象波長に設定すれば良い。この場合、隣り合う参照波長の透過率変化が0.1以下である部分については、該参照波長の間隔よりも大きい間隔で、追跡対象波長を抽出する。
【００６４】
以上説明したように第２実施形態によれば、詳細なデバイス特性データに基づき、光線追跡に適用する波長を柔軟に決定可能とすることで、実写合成の対象となるシーンのCGをより柔軟に生成することが可能となる。
【００６５】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはCPUやMPU等）がプログラムを読み出して実行する処理である。
【図１】
0005808180.tif 000008
【図２】
0005808180.tif 000009
【図３】
0005808180.tif 000010
【図４】
0005808180.tif 000011
【図５】
0005808180.tif 000012
【図６】
0005808180.tif 000013
【図７】
0005808180.tif 000014
【図８】
0005808180.tif 000015
【図９】
0005808180.tif 000016