(57)【特許請求の範囲】
【請求項１】
描画対象の物体の表面の微細凹凸を示す第一の情報を入力する第一の入力手段と、
高さ情報を入力する第二の入力手段と、
前記高さ情報に基づき、波長ごとに異なる高さの変更を前記第一の情報に施した前記波長ごとの第一の情報を生成し、描画するオブジェクトの面の傾きを表す情報として、前記波長ごとの第一の情報に基づき波長ごとの第二の情報を生成する生成手段と、
前記波長ごとの第二の情報に基づき、前記波長ごとのオブジェクトを描画する描画手段と、
前記波長ごとのオブジェクトを合成して、前記描画対象の物体の画像を生成する合成手段とを有する画像処理装置。
【請求項２】
前記高さ情報は、前記波長ごとの高さの最大値を示し、長波長ほど小さな高さの最大値を有し、短波長ほど大きな高さの最大値を有する請求項１に記載された画像処理装置。
【請求項３】
前記第一の情報は前記描画対象の物体の表面の相対的な高さを表す高さマップであり、前記第二の情報は法線マップである請求項1または請求項２に記載された画像処理装置。
【請求項４】
前記波長は、R成分の主波長、G成分の主波長、および、B成分の主波長を含む請求項1から請求項３の何れか一項に記載された画像処理装置。
【請求項５】
画像処理装置の第一の入力手段が、描画対象の物体の表面の微細凹凸を示す第一の情報を入力し、
前記画像処理装置の第二の入力手段が、高さ情報を入力し、
前記画像処理装置の生成手段が、前記高さ情報に基づき、波長ごとに異なる高さの変更を前記第一の情報に施した前記波長ごとの第一の情報を生成し、描画するオブジェクトの面の傾きを表す情報として、前記波長ごとの第一の情報に基づき波長ごとの第二の情報を生成し、
前記画像処理装置の描画手段が、前記波長ごとの第二の情報に基づき、前記波長ごとのオブジェクトを描画し、
前記画像処理装置の合成手段が、前記波長ごとのオブジェクトを合成して、前記描画対象の物体の画像を生成する画像処理方法。
【請求項６】
コンピュータを請求項1から請求項４の何れか一項に記載された画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内部散乱光を考慮して半透明物体を再現する画像処理に関する。
【背景技術】
【０００２】
近年、コンピュータグラフィクス（CG）分野において、物体表面だけでなく物体内部で光が散乱する半透明物体を描画する技術が発展した。ここで、特に人肌は、内部散乱光の再現のみでなく、表面の皺、毛穴などの再現も重要であるため、描画処理の難易度が高い。皺や毛穴などの表面形状を以下では「物体表面の微細凹凸(fine irregurality of an object surface: FIOS)」と呼ぶことにする。また、半透明物体は、白濁したガラスやプラスチック、濁った液体、生体細胞など、その内部で光の透過と散乱が生じる物体である。
【０００３】
内部散乱光の再現手法として、特許文献1に開示された方法が知られている。特許文献1は、複数点におけるサンプリングを行い、双方向散乱面反射率分布関数(BSSRDF)を用いて画素値を積分し、暈し処理を行う。画像値の波長チャネルごとに暈け量が異なる暈し処理を行って内部散乱光を再現する手法も知られている。また、FIOSの再現手法として、表面形状を表すバンプマップを用いる処理がある。CGにより人肌を再現する場合、通常、FIOSを再現した後、暈し処理を実行する。
【０００４】
図1により内部散乱光の影響を受けたFIOSをもつ半透明物体のアピアランスを説明する。図1は、半透明物体101に光が入射した場合の内部散乱光の拡がりを断面方向から示す。図1(a)に示すように、半透明物体101の表面に垂直な方向から光が入射した場合、出射光は短波長光Bに比べ長波長光Rが大きく拡がる特徴を示す。
【０００５】
一方、図1(b)は、半透明物体101に斜めに光が入射した場合を示す。斜めから入射した光は、入射方向に拡がる特徴をもつ。そのため、斜めにカットされた半透明物体101の右部（以下、カット部）は、本来ならば光が入射せずシャドウが生じる部分であるが、内部散乱光が出射するためカット部が明るくなる。このとき、より拡がり易い長波長光がカット部からより多く出射し、内部散乱光がない場合はシャドウ部であるカット部が内部散乱光によって赤くかつ明るく観察される。内部散乱光がない場合はシャドウ部であるカット部は、人肌の場合、皺や毛穴などのFIOSに相当する。
【０００６】
特許文献1の技術は、FIOSの影響を考慮せず一様に暈し処理を行うため、FIOSが赤くかつ明るくなる特徴を再現することができない。FIOSは半透明物体のアピアランスに大きく影響することから、この内部散乱光によりFIOSが赤くかつ明るくなる特徴（以下、明度上昇）を、忠実に再現する必要がある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表2006-506742号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、内部散乱光を考慮して半透明物体を再現することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１０】
本発明にかかる画像処理装置は、描画対象の物体の表面の微細凹凸を示す第一の情報を入力する第一の入力手段と、
高さ情報を入力する第二の入力手段と、
前記高さ情報に基づき、波長ごとに異なる高さの変更を前記第一の情報に施した前記波長ごとの第一の情報を生成し、描画するオブジェクトの面の傾きを表す情報として、前記波長ごとの第一の情報に基づき波長ごとの第二の情報を生成する生成手段と、
前記波長ごとの第二の情報に基づき、前記波長ごとのオブジェクトを描画する描画手段と、
前記波長ごとのオブジェクトを合成して、前記描画対象の物体の画像を生成する合成手段とを有する。
【発明の効果】
【００１１】
本発明によれば、内部散乱光を考慮して半透明物体を再現することができる。例えば、内部散乱光による物体表面の微細凹凸(FIOS)の明度上昇の再現が可能になる。
【図面の簡単な説明】
【００１２】
【図１】内部散乱光の影響を受けたFIOSをもつ半透明物体のアピアランスを説明する図。
【図２】実施例の画像処理装置として機能する情報処理装置の構成例を示すブロック図。
【図３】画像処理装置の処理構成例を説明する図。
【図４】描画処理における法線マッピング法の概要を説明する図。
【図５】法線マッピング処理を詳細に説明する図。
【図６】画像処理装置が実行する描画処理を説明するフローチャート。
【図７】高さ情報λ-hを説明する図。
【図８】法線マップ生成部による波長ごとの法線マップの生成処理を説明するフローチャート。
【図９】算出画像生成部による算出画像の生成処理を説明するフローチャート。
【図１０】陰影処理を説明する図。
【図１１】実施例2の画像処理装置の処理構成例を示すブロック図。
【図１２】画像処理装置が実行する描画処理を説明するフローチャート。
【図１３】内部散乱光の回り込みの概念で示す図。
【図１４】実施例3の高周波数エリアの選択処理を含む波長ごとの法線マップの作成処理を説明するフローチャート。
【発明を実施するための形態】
【００１３】
以下、本発明にかかる実施例の画像処理装置および画像処理方法を図面を参照して詳細に説明する。なお、実施例は特許請求の範囲にかかる本発明を限定するものではなく、また、実施例において説明する構成の組み合わせのすべてが本発明の解決手段に必須とは限らない。
【００１４】
近年、撮影画像に対して照明光を変更、追加するリライティングと呼ばれる画像処理手法が提案されている。リライティング処理は、対象物の形状情報を用いて、新たな照明環境下における描画処理を行う。特に人肌のリライティング処理を行う場合、内部散乱光の影響を考慮しないと、実際の人肌と異なる、不自然なアピアランスを生じる。
【００１５】
以下の実施例においては、内部散乱光が物体表面の微細凹凸(FIOS)のアピアランスに与える影響を考慮した半透明物体の再現手法を説明する。人肌の忠実な再現を行うため、人肌が撮影された画像領域に理想のFIOS形状（キメ）を付加し、実施例で説明する再現手法を適用すれば、人肌における忠実な内部散乱光の再現が可能になる。
【実施例１】
【００１６】
実施例1として、描画対象の物体の表面の微細凹凸(FIOS)を示す情報を波長に応じて変更する描画技術を用いる半透明物体の再現手法を説明する。
【００１７】
［装置の構成］
図2のブロック図により実施例の画像処理装置として機能する情報処理装置の構成例を示す。マイクロプロセッサ(CPU)201は、メインメモリ202をワークメモリとして、記憶部203に格納されたプログラムなどを実行し、各種演算処理を行い、システムバス206を介して後述する構成を制御する。メインメモリ202は、例えばランダムアクセスメモリ(RAM)やリードオンリメモリ(ROM)から構成される。
【００１８】
記憶部203は、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)であり、画像処理プログラム、描画対象の物体を表すデータや光源の特性データなどが格納される。入力部204は、キーボードやマウスなどであり、ユーザ操作やユーザ指示を入力するためのデバイスである。表示部205は、CPU201が生成した画像やユーザインタフェイス(UI)を液晶パネルなどのモニタ207に表示する。
【００１９】
コンピュータ機器である情報処理装置は、図示しないネットワークインタフェイスを備えていてもよい。その場合、有線または無線ネットワークを介してサーバ装置にアクセスし、サーバ装置から各種プログラムや特性データを取得したり、演算処理結果をサーバ装置に出力することができる。また、情報処理装置は、後述する画像処理を実現するプログラムを実行するタブレットやスマートフォンでもよく、その場合、モニタ207と入力部204は一体化されたタッチパネルとして提供される。
【００２０】
●画像処理装置
図3により画像処理装置の処理構成例を説明する。図3に示す処理構成は、CPU201が画像処理プログラムを実行することにより実現される。入力部301-305は、システムバス206を介して次の情報をそれぞれ入力する。
【００２１】
頂点情報の入力部301は、記憶部203などから描画対象の物体の形状を表す頂点情報を入力する。光源情報の入力部302は、記憶部203または入力部204などから光源情報を入力する。拡散色情報の入力部303は、記憶部203などから描画対象の物体の色を表す拡散色マップを入力する。FIOS情報の入力部304は、記憶部203などから、FIOSの第一の情報FIOS1として描画対象の物体の表面の相対的な高さを表す、詳細を後述する高さマップを入力する。高さ情報λ-hの入力部305は、記憶部203または入力部204などから、詳細を後述する高さ情報λ-hを入力する。
【００２２】
頂点処理部306は、入力された頂点情報に基づき頂点処理を行い、頂点処理結果を算出画像生成部308に出力する。法線マップ生成部307は、高さマップFIOS1と高さ情報λ-hに基づき、FIOSの第二の情報FIOS2として波長ごとの法線マップを作成し、それら法線マップFIOS2iを算出画像生成部308に出力する。
【００２３】
算出画像生成部308は、描画処理部309と画像合成部310を有する。描画処理部309は、頂点処理部306の頂点処理結果、光源情報、拡散色マップ、法線マップ生成部307から入力される波長ごとの法線マップFIOS2iに基づき、波長ごとに陰影処理を含む描画処理を行う。画像合成部310は、描画処理部309が作成した波長ごとのオブジェクトである陰影処理画像を合成した合成画像生成する。合成画像は、描画対象の物体を表す算出画像として出力部311から出力される。
【００２４】
［法線マッピング法の概要］
FIOSは微細であるため、ポリゴンを用いてFIOSを描画すれば膨大なデータ量の演算が必要になる。そのため、少ない演算量でFIOSを再現する手法が必要になる。法線マッピング法は、ポリゴンの代わりに法線方向を格納した画像データ（法線マップ）を用いることで疑似的にFIOSを再現する手法である。
【００２５】
図4により描画処理における法線マッピング法の概要を説明する。図4(a)に示すように、平面上において法線は常に上向きである。図4(b)に示すように斜面が含まれる場合、斜面上の法線と平面上の法線の間に傾きが発生する。図4(c)に示すように、斜面の法線を平面に割り当てると、斜面同様にシャドウが発生するため、平面ではあるが斜面が存在するようなアピアランスを与えることができる。言い替えれば、法線マップによって、描画するオブジェクトの面の傾きを表すことができる。また、法線マッピング処理によって描画されるオブジェクトの精度は、法線マップに格納される法線の数の密度に依存する。
【００２６】
図5により法線マッピング処理を詳細に説明する。FIOS情報は、例えば、描画対象の物体の基準面と同じ高さを示す値として「0.0」、基準面から最も高い位置を示す値として「1.0」を有する。高さマップFIOS1は、FIOS情報の値0.0から1.0を示すグレイスケールデータである。例えば、描画対象の物体のFIOSの底（最深部）を基準面とすればよい。あるいは、FIOSを除く描画対象の物体の平均的な表面を基準面としてFIOS情報を作成してもよい。この場合、FIOS情報が正負の値を有することになるので、FIOS情報の最小値（負値）を「0.0」として正規化を行うことで、最深部が「0.0」、最も高い位置が「1.0」を有するFIOS情報が得られる。
【００２７】
法線マップ生成部307は、高さマップFIOS1から高さの変化を取得し、高さの変化に基づくベクトル情報（法線の単位ベクトル）を各画素に格納した法線マップFIOS2を生成する。なお、高さマップから法線マップを作成する例を挙げたが、高さ情報λ-hが取得可能な情報に基づき法線マップを作成してもよいし、法線マップが直接入力されてもよい。
【００２８】
また、描画処理部309は、法線マップFIOS2と同様にベクトル情報を格納した照明マップを光源情報から生成する。照明マップの各画素は、光源を向き、入射光量に対応する長さを有するベクトルを格納する。法線マップFIOS2と照明マップの対応する画素のベクトルの内積をとると、描画すべき画素の輝度値が算出される。
【００２９】
［描画処理」
図6のフローチャートにより画像処理装置が実行する描画処理を説明する。入力部301は、描画対象の物体の形状を表す頂点情報を入力する(S601)。頂点処理部306は、入力された頂点情報に基づき頂点処理を行う(S602)。頂点処理には、頂点シェーダ、クリッピング、透視変換、ビューポート変換などのCG処理が含まれるが、それらの手法は既知であり、説明を省略する。
【００３０】
次に、入力部302は、光源情報を入力する(S603)。光源情報は、光源の波長ごとの明るさ情報である分光放射輝度と仮想空間上の光源位置を示す。入力部303は、描画対象の物体の色を表す拡散色マップを入力する(S604)。入力部304は、描画対象の物体のFIOS情報である高さマップFIOS1を入力する(S605)。入力部305は、高さ情報λ-hを入力する(S606)。なお、各情報の入力順は一例であり、上記に限定されず、任意の順に各情報を入力することができる。
【００３１】
図7により高さ情報λ-hを説明する。高さ情報λ-hは、波長と、高さマップの高さの最大値の関係を示す。図7(a)は高さ情報λ-hの一例であり、波長λiにおける高さマップの高さの最大値hを示すテーブル形式のデータである。例えば波長w1が赤(R)成分、波長w2が緑(G)成分、波長w3が青(B)成分に対応すると仮定するとw1＞w2＞w3の関係を有し、この場合、各波長に対応する高さの最大値の関係としてh1＜h2＜h3が設定される。つまり、高さ情報λ-hは、通常、長波長ほど小さな最大値hを有し、短波長ほど大きな最大値hを有する情報である。また、高さの最大値の関係としてh1=h2=h3を設定することで、不透明物体や半透明物体上の不透明物体による被覆部の明度上昇の処理を禁止することができる。
【００３２】
法線ベクトルの向きの変化は図4に示すように斜面の傾きに依存する。図7(b)に示すように、最大値hが小さく傾きが小さい場合、法線ベクトルの向きは、平面に垂直な向き（図7(b)の破線矢印）に近い分布を示す。一方、最大値hが大きく、傾きが大きい場合、法線ベクトルの向きは、より分散した分布を示す。従って、長波長光ほど、最大値hを小さく設定して法線ベクトルの向きの変化を小さくし、短波長光ほど、最大値hを大きく設定して法線ベクトルの向きの変化を大きくすることができる。言い替えれば、波長λに対して高さの最大値hの差を与えることで、後述する画素値の計算処理において（内部散乱光がない場合はシャドウ部である）FIOSの明度上昇を得る。
【００３３】
図7(c)は、図7(a)に示す高さ情報λ-hを用いて高さマップFIOS1iを生成する場合の高さマップFIOS1の値（横軸）と、高さマップFIOS1iの値（縦軸）関係を示す。なお、高さマップの値と高さの関係の定義はテーブル形式に限定されず、多項式などを用いて定義してもよい。
【００３４】
次に、法線マップ生成部307は、高さマップFIOS1と高さ情報λ-hを用いて、波長ごとの法線マップFIOS2を生成する(S607)。算出画像生成部308は、ステップS602からS607において入力または生成された情報を用いて、陰影処理を含む画素値の計算処理（描画処理）を行って波長λiごとのオブジェクトである陰影処理画像を描画する(S608)。そして、波長λiごとのオブジェクトである陰影処理画像を合成し(S609)、合成によって得た算出画像を出力部311を介して出力する(S610)。描画対象の物体を表す算出画像は、表示部205によってモニタ207に表示されたり、記憶部203などに格納されたりする。
【００３５】
●法線マップ生成部
図8のフローチャートにより法線マップ生成部307による波長ごとの法線マップの生成処理(S607)を説明する。法線マップ生成部307は、カウンタiを0に初期化し(S801)、高さ情報λ-hからi番目の波長λiおよび高さの最大値hiを取得する(S802)。例えば、図7(a)に示す高さ情報λ-hが入力された場合、最初は波長w1および最大値h1が取得される。続いて、法線マップ生成部307は、最大の高さを最大値hiとした波長λiの高さマップFIOS1iを作成し(S803)、高さマップFIOS1iに基づき波長λiの法線マップFIOS2iを作成する(S804)。なお、法線マップFIOS2iのヘッダ情報として対応する波長λiが記録される。
【００３６】
次に、法線マップ生成部307は、カウンタiをインクリメントし(S805)、カウント値iと高さ情報λ-hの波長数Nを比較することで、波長ごとの法線マップの生成処理を終了するか否かを判定する(S806)。つまり、i≦Nであれば処理をステップS802に戻して次の波長λiの法線マップを作成し、i＞Nであれば波長ごとの法線マップの生成処理を終了する。
【００３７】
●算出画像生成部
図9のフローチャートにより算出画像生成部308による算出画像の生成処理(S608-S609)を説明する。算出画像生成部308において、描画処理部309は、光源情報に基づき照明マップを生成し(S901)、カウンタiを0に初期化する(S902)。続いて、描画処理部309は、法線マップFIOS2iのヘッダ情報から波長λiを取得し(S903)、入力された拡散色マップから、波長λiに対応する拡散色マップを抽出する(S904)。そして、頂点処理結果、照明マップ、波長λiに対応する拡散色マップおよび法線マップFIOS2iを用いて陰影処理を含む描画処理を行い、波長λiのオブジェクトである陰影処理画像を生成する(S905)。
【００３８】
波長ごとの陰影処理画像は、例えば、R成分、G成分またはB成分のグレイスケール画像に相当する。ただし、波長λiは、R成分、G成分またはB成分の主波長に限られず、三波長以上あればよく、波長λiの各陰影処理画像を合成することでフルカラー画像を得ることができればよい。
【００３９】
図10により陰影処理を説明する。図10(a)は波長w1、w2、w3の拡散色を示す。なお、前述したように波長はw1＞w2＞w3の関係にある。図10(b)は波長w1、w2、w3に対応する法線マップFIOS2iを示す。上述したように、各波長に対応する高さはh1≦h2≦h3の関係を有するため、法線マップFIOS2iにおいて、波長w3のベクトルの向きの変化に比べて、波長w1のベクトルの向きの変化は小さい。図10(c)はステップS905において作成される陰影処理画像を示す。長波長光になるほどベクトルの向きの変化が小さい法線マップFIOS2iを使用することで、波長w3のFIOSの明度に比べて、波長w1におけるFIOSの明度が増加し、図10(c)に示すような、明度上昇が得られる。
【００４０】
次に、描画処理部309は、カウンタiをインクリメントし(S906)、カウント値iと法線マップFIOS2の数Nを比較することで、描画処理を終了するか否かを判定する(S907)。つまり、i≦Nであれば処理をステップS902に戻して、次の波長λiの描画処理を行い、i＞Nであれば描画処理を終了する。描画処理が終了すると、画像合成部310は、波長λiの各陰影処理画像を合成したカラー画像を算出画像として生成し(S908)、算出画像の生成処理が終了する。
【００４１】
このように、（内部散乱光がない場合はシャドウ部である）FIOSの明度上昇により、FIOSが赤くかつ明るくなる特徴を再現することができ、内部散乱特性をもつ半透明物体をより忠実に再現することが可能になる。
【００４２】
上記では、第一の表面微細凹凸情報として入力した高さマップFIOS1を、第二の表面微細凹凸情報である波長ごとの法線マップFIOS2iに変換する例を説明したが、第一および第二の表面微細凹凸情報は高さマップや法線マップに限定されない。例えば、カメラや測距装置などによって測定された距離情報など、FIOS情報を含む情報であれば使用可能である。また、FIOS1からFIOS2iへの変換も、高さマップの高さを変更する方法だけでなく、波長ごとに異なる暈し処理をFIOS1に施す方法も利用可能である。
【実施例２】
【００４３】
以下、本発明にかかる実施例2の画像処理装置および画像処理方法を説明する。なお、実施例2において、実施例1と略同様の構成については、同一の符号を付して、その詳細な説明を省略する場合がある。
【００４４】
実施例1の処理を行うと、FIOSの形状が波長ごとに異なるため、光沢の大きさや形状が波長ごとに多少異なって合成後に色ずれとして表れる場合がある。実施例2においては、光沢部の計算を一つの法線マップから別途行いし、光沢部の画像と陰影処理画像の合成を行うことで、光沢部における色ずれを解消する。
【００４５】
図11のブロック図により画像処理装置の処理構成例を示す。実施例2の画像処理装置の構成は、図3に示す構成に、光沢画像計算部321と光沢画像合成部322を加えたものである。光沢画像計算部321は、法線マップ生成部307から取得した一つの法線マップFIOS2iと、描画処理部309から取得した照明マップを用いて光沢画像を描画し、光沢画像を光沢画像合成部322に出力する。
【００４６】
光沢画像合成部322は、算出画像生成部308から入力される陰影処理画像の合成画像と光沢画像計算部321から入力される光沢画像を合成した算出画像を生成する。なお、陰影処理画像の合成画像に既に光沢部がある場合、光沢画像合成部322は、当該光沢部を削除するなどの処理を行った後、陰影処理画像の合成画像に光沢画像を合成する。
【００４７】
図12のフローチャートにより実施例2の画像処理装置が実行する描画処理を説明する。ステップS601-S609の処理は実施例1と同様であり、詳細説明を省略する。光沢画像合成部322は、法線マップ生成部307が作成した法線マップFIOS2iの一つおよび照明マップを取得し(S621)、それらを用いて光沢画像を描画する(S622)。
【００４８】
次に、光沢画像合成部322は、算出画像生成部308から入力される陰影処理画像の合成画像と光沢画像計算部321から入力される光沢画像を合成した算出画像を生成し(S623)、算出画像を出力部311を介して出力する(S624)。算出画像は、表示部205によってモニタ207に表示されたり、記憶部203などに格納されたりする。このように、光沢部の色ずれを解消することができる。
【実施例３】
【００４９】
以下、本発明にかかる実施例3の画像処理装置および画像処理・方法を説明する。なお、実施例3において、実施例1、2と略同様の構成については、同一の符号を付して、その詳細な説明を省略する場合がある。
【００５０】
実施例3として、内部散乱光の影響が顕著に表れる、FIOSの空間周波数が高周波数になるエリア（以下、高周波数エリア）に選択的に半透明物体の再現手法を適用する手法を説明する。図13により内部散乱光の回り込みの概念で示す。図13(a)はFIOSの空間周波数が高周波数の半透明物体（以下、高周波数物体）における内部散乱光の回り込みを示し、図13(b)はFIOSの空間周波数が低周波数の半透明物体（以下、低周波数物体）に対する内部散乱光の回り込みを示す。
【００５１】
図13(a)に示すように、高周波数物体の内部における光の移動距離は短い。一方、図13(b)に示すように、低周波数物体の内部における光の移動距離は長い。吸収される光の量は、光の移動距離に応じて増加するため、高周波数物体から出射する光量は多く、低周波数物体から出射する光量は少なくなる。そのため、図13(b)に示す低周波数物体においては、明度上昇を必要とするほどの内部散乱光の出射はない。従って、内部散乱光の影響をより顕著に受ける高周波数エリアへの、半透明物体の再現手法の選択的な適用が効果的と言える。
【００５２】
図14のフローチャートにより高周波数エリアの選択処理を含む波長ごとの法線マップの作成処理(S607)を説明する。カウンタiの初期化(S801)後、法線マップ作成部307は、FIOS情報（例えば高さマップFIOS1）に基づき高周波数エリアを抽出する(S811)。続いて、高さ情報λ-hからi番目の波長λiおよび高さの最大値hiを取得し(S802)、抽出した高周波数エリアについて、波長λiの高さマップFIOS1iを作成する(S812)。ステップS805、S806の処理は実施例1と同様であり、詳細説明を省略する。
【００５３】
ステップS806の判定結果がi＞Nになると、法線マップ作成部307は、高周波数エリアとして抽出しなかった非抽出エリアについて、所定の高さ（例えば、基準面の高さ）を示す情報を各波長λiの高さマップFIOS1iに設定する(S813)。そして、各波長λiの高さマップFIOS1iに基づき各波長λiの法線マップFIOS2iを作成し(S814)、波長ごとの法線マップの生成処理を終了する。
【００５４】
このように、高周波数エリアについて波長ごとに最大の高さが異なり、非抽出エリアについて高さ情報が一致した高さマップFIOS1iが作成される。従って、内部散乱光の影響が顕著に表れる、FIOSの空間周波数が高周波数になるエリアに選択的に半透明物体の再現手法を適用することができる。
【００５５】
［変形例］
例えば、光源が長波長光を含まない場合や、拡散色マップに長波長域の色が含まれない場合、明度上昇は観察されないか、観察されても極く僅かな場合がある。そのような場合の明度上昇の再現処理の負荷を低減するために、法線マップ生成部307は、拡散色マップや光源情報から波長ごとの法線マップFIOS2iを作成するか否かを決定してもよい。波長ごとの法線マップFIOS2iを作成しない場合、法線マップ生成部307は、高さマップFIOS1に対応する法線マップFIOS2を出力する。
【００５６】
また、上記では、描画対象の物体が半透明物体であることを前提に説明を行った。半透明物体の一部が不透明物体に覆われている場合、不透明物体によって被覆されていない半透明物体の非被覆部が実施例1-3の再現手法の適用範囲である。その場合の被覆部は、当該再現手法の適用範囲外としてもよいし、波長ごとの法線マップFIOS2iを作成しないエリアとして、非被覆部と同様の再現手法を適用してもよい。
【００５７】
また、描画対象の物体の表面に浅い角度（入射角90度に近い角度）で光が入射する場合、アピアランスに対する内部散乱光の影響は、反射光のそれに比べて小さくなる。従って、実施例3における高周波数エリアと同様に、描画対象の物体の表面に入射する照明光の入射角が所定角度未満のエリア（低入射角エリア）を抽出することも有効である。この場合、抽出エリアについて波長ごとに最大の高さが異なり、非抽出エリアについて高さ情報が一致した高さマップFIOS1iが作成され、各波長λiの高さマップFIOS1iに基づき各波長λiの法線マップFIOS2iが作成される。従って、内部散乱光の影響が顕著に表れる、低入射角エリアに選択的に半透明物体の再現手法を適用することができる。
【００５８】
［その他の実施例］
本発明は、上述の実施形態の一以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける一以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、一以上の機能を実現する回路（例えば、ASIC）によっても実現可能である。
【符号の説明】
【００５９】
304 … 入力部、307 … 法線マップ生成部、309 … 描画処理部、310 … 画像合成部
【図１】
0006792335.tif 000002
【図２】
0006792335.tif 000003
【図３】
0006792335.tif 000004
【図４】
0006792335.tif 000005
【図５】
0006792335.tif 000006
【図６】
0006792335.tif 000007
【図７】
0006792335.tif 000008
【図８】
0006792335.tif 000009
【図９】
0006792335.tif 000010
【図１０】
0006792335.tif 000011
【図１１】
0006792335.tif 000012
【図１２】
0006792335.tif 000013
【図１３】
0006792335.tif 000014
【図１４】
0006792335.tif 000015