【文献】
向川 康博,反射・散乱の計測とモデル化,情報処理学会研究報告,2010年 6月15日,Vol.2010-CVIM-172 No.34,ISSN:1884-0930
(58)【調査した分野】(Int.Cl.,DB名)
前記テーブル変換部が、前記双方向散乱面反射率分布関数によって規定される出射位置の分布を確率分布型のテーブルに変換し、前記双方向散乱面反射率分布関数によって規定される出射方向の分布を強度分布型のテーブルに変換する請求項3記載の光学シミュレーション装置。
前記テーブル変換部が、前記双方向散乱面反射率分布関数によって規定される出射位置の分布を強度分布型のテーブルに変換し、前記双方向散乱面反射率分布関数によって規定される出射方向の分布を確率分布型のテーブルに変換する請求項3記載の光学シミュレーション装置。
前記テーブル変換部が、前記双方向散乱分布関数によって規定される出射方向を特定する第1出射角の分布を確率分布型のテーブルに変換し、前記出射方向を特定する前記第1出射角とは異なる第2出射角の分布を強度分布型のテーブルに変換する請求項6記載の光学シミュレーション装置。
前記テーブル変換部が、前記双方向散乱分布関数によって規定される出射方向を特定する第1出射角の分布を強度分布型のテーブルに変換し、前記出射方向を特定する前記第1出射角とは異なる第2出射角の分布を確率分布型のテーブルに変換する請求項6記載の光学シミュレーション装置。
前記テーブル変換部が、前記双方向反射率分布関数によって規定される出射方向を特定する第1出射角の分布を確率分布型のテーブルに変換し、前記出射方向を特定する前記第1出射角とは異なる第2出射角の分布を強度分布型のテーブルに変換する請求項9記載の光学シミュレーション装置。
前記テーブル変換部が、前記双方向反射率分布関数によって規定される出射方向を特定する第1出射角の分布を強度分布型のテーブルに変換し、前記出射方向を特定する前記第1出射角とは異なる第2出射角の分布を確率分布型のテーブルに変換する請求項9記載の光学シミュレーション装置。
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここで、一般的にシミュレーションを行う際に用いられる手法としてモンテカルロ法が知られている(特許文献5など参照)。モンテカルロ法は、確率変数で表現できる事象に対して、疑似乱数を用いて各変数による出力値の観測を多数回試行し、その結果から事象の近似解を求める計算方法である。
【0006】
たとえばdを変数とする
図19に示すような分布をモンテカルロ法でシミュレーションする場合、確率分布型のテーブルを用いる方式と強度分布型のテーブルを用いる方式とが考えられる。下表1は、
図17に示す分布を確率分布型のテーブルで表したものである。
【0007】
【表1】
ここで、たとえば光源から発せられる光線の強度分布をシミュレーションする場合を考える。光源から発せられる光線の強度の総和を1とし、100本の光線でシミュレーションする場合、光線1本あたりの強度は、0.01となる。そして、表1に示す10個のテーブルの各テーブルに対してそれぞれ10本の光線を割り当て、1〜10の乱数を発生させてシミュレーションを行った場合、光源から発せられる光線の強度分布は、
図19に示すような強度分布となる。
【0008】
一方、
図17に示すような強度分布を実現する方式として、強度分布型のテーブルを用いる方式がある。強度分布型のテーブルは、変数の値と対応する強度の分布とをテーブルにしたものである。下表2は、
図19の分布を強度分布型のテーブルで表したものである。
【0009】
【表2】
表2のテーブルを用いて、変数d(−4〜5)に対応する乱数を発生させてシミュレーションを行った場合も、
図19に示すような強度分布を得ることができる。
【0010】
ここで、たとえば変数dのサンプリング間隔を細かくし、強度分布の精度を上げようとした場合、上述した確率分布型のテーブルを用いた方式では、サンプリングの間隔が細かくなるのに応じて、テーブル数の行数が10のn乗のオーダーで増やす必要があり、テーブルを記憶しておくメモリなどの記憶媒体の容量が足りなくなるという問題がある。言い換えれば、メモリの容量が一定である場合には、変数のサンプリング間隔を細かくするとテーブルの分解能が足りなくなる。
【0011】
具体的には、たとえば
図20に示すような分布を確率分布型のテーブルで表す場合、上述したように分布の総和が1となるように規格化したとき、最小の確率は0.025単位となる。テーブル数を10のままテーブル化しようとすると、テーブルの分解能は0.1となるため、0.1単位以下を表現することができなくなる。
【0012】
一方、
図20に示す分布を強度分布型のテーブルで表した場合、下表3で表すことができるが、すなわち0.025単位で表すことができるが、テーブルの半分は光線の強度が0であり、シミュレーションの際には0の値のテーブルも全て参照する必要があるため、計算時間がかかるという問題がある。
【0013】
【表3】
そして、肌などの物体の光学特性をシミュレーションする場合、たとえばBSSRDF(Bidirectional Scattering Surface Reflectance Distribution Function)特性のような変数の数が多く、かつ変数の範囲が広い分布をシミュレーションする場合、上述したように、確率分布型のテーブルを用いたのでは、テーブル数に限界があるためシミュレーションの精度を上げることができない。一方、強度分布型のテーブルを用いたのでは無駄な計算が多くなり、計算コストが高くなってしまう。
【0014】
本発明は、上記の問題に鑑み、計算コストを抑制し、かつ高精度に物体からの出射光をシミュレーションすることができる光学シミュレーション装置および方法並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明の光学シミュレーション装置は、物体の光学特性を取得する光学特性取得部と、光学特性を確率分布型のテーブルと強度分布型のテーブルとを組み合わせたテーブルセットに変換するテーブル変換部と、物体の表面形状の情報を取得する表面形状情報取得部と、表面形状の情報とテーブルセットとに基づいて、物体からの出射光をシミュレーションするシミュレーション部とを備えたことを特徴とする。
【0016】
ここで、上記「物体の光学特性」は、物体を直接実測することによって得られた光学特性でもよいし、物体を数学的にモデル化したものをシミュレーションによって解析して得られた光学特性でもよい。
【0017】
また、上記本発明の光学シミュレーション装置において、シミュレーションによる出射光を結像させて画像を生成する画像生成部と、画像生成部によって生成された画像を表示部に表示させる表示制御部とを備えることができる。
【0018】
また、上記本発明の光学シミュレーション装置において、光学特性取得部は、物体の双方向散乱面反射率分布関数を光学特性として取得することができる。
【0019】
また、上記本発明の光学シミュレーション装置において、テーブル変換部は、双方向散乱面反射率分布関数によって規定される出射位置の分布を確率分布型のテーブルに変換し、双方向散乱面反射率分布関数によって規定される出射方向の分布を強度分布型のテーブルに変換することができる。
【0020】
また、上記本発明の光学シミュレーション装置において、テーブル変換部は、双方向散乱面反射率分布関数によって規定される出射位置の分布を強度分布型のテーブルに変換し、双方向散乱面反射率分布関数によって規定される出射方向の分布を確率分布型のテーブルに変換することができる。
【0021】
また、上記本発明の光学シミュレーション装置において、光学特性取得部は、物体の双方向散乱分布関数を光学特性として取得することができる。
【0022】
また、上記本発明の光学シミュレーション装置において、テーブル変換部は、双方向散乱分布関数によって規定される出射方向を特定する第1出射角の分布を確率分布型のテーブルに変換し、上記出射方向を特定する第1出射角とは異なる第2出射角の分布を強度分布型のテーブルに変換することができる。
【0023】
また、上記本発明の光学シミュレーション装置において、テーブル変換部は、双方向散乱分布関数によって規定される出射方向を特定する第1出射角の分布を強度分布型のテーブルに変換し、上記出射方向を特定する第1出射角とは異なる第2出射角の分布を確率分布型のテーブルに変換することができる。
【0024】
また、上記本発明の光学シミュレーション装置において、光学特性取得部は、物体の双方向反射率分布関数を光学特性として取得することができる。
【0025】
また、上記本発明の光学シミュレーション装置において、テーブル変換部は、双方向反射率分布関数によって規定される出射方向を特定する第1出射角の分布を確率分布型のテーブルに変換し、上記出射方向を特定する第1出射角とは異なる第2出射角の分布を強度分布型のテーブルに変換することができる。
【0026】
また、上記本発明の光学シミュレーション装置において、テーブル変換部は、双方向反射率分布関数によって規定される出射方向を特定する第1出射角の分布を強度分布型のテーブルに変換し、上記出射方向を特定する第1出射角とは異なる第2出射角の分布を確率分布型のテーブルに変換することができる。
【0027】
また、上記本発明の光学シミュレーション装置において、物体は肌とすることが好ましい。
【0028】
また、上記本発明の光学シミュレーション装置において、肌の表面構造をモデル化した肌表面モデルを電磁場光学を用いて解析することによって肌表面モデルの電場分布を算出する肌表面特性算出部と、肌の内部構造をモデル化した肌内部モデルを幾何光学を用いて解析することによって肌内部モデルの光の散乱特性を算出する肌内部特性算出部と、肌表面モデルの電場分布に基づいて肌表面モデルの光学特性を算出し、肌表面モデルの光学特性と肌内部モデルの光の散乱特性とを結合して肌全体の光学特性を算出する光学特性算出部とを備え、光学特性取得部は、光学特性算出部によって算出された肌全体の光学特性を取得することができる。
【0029】
また、上記本発明の光学シミュレーション装置において、光学特性取得部は、物体を実測した光学特性を取得することができる。
【0030】
また、上記本発明の光学シミュレーション装置において、画像生成部は、目標領域の設定を受け付け、シミュレーションを行う際、物体からの出射光を目標領域のみに入射させることができる。
【0031】
本発明の光学シミュレーション方法は、物体の光学特性を取得し、その光学特性を確率分布型のテーブルと強度分布型のテーブルとを組み合わせたテーブルセットに変換し、物体の表面形状の情報を取得し、表面形状の情報とテーブルセットとに基づいて、物体からの出射光をシミュレーションすることを特徴とする。
【0032】
本発明の光学シミュレーションプログラムは、物体の光学特性を取得する光学特性取得部と、光学特性を確率分布型のテーブルと強度分布型のテーブルとを組み合わせたテーブルセットに変換するテーブル変換部と、物体の表面形状の情報を取得する表面形状情報取得部と、表面形状の情報とテーブルセットとに基づいて、物体からの出射光をシミュレーションするシミュレーション部としてコンピュータを機能させることを特徴とする。
【発明の効果】
【0033】
本発明の光学シミュレーション装置および方法並びにプログラムによれば、物体の光学特性を取得し、その光学特性を確率分布型のテーブルと強度分布型のテーブルとを組み合わせたテーブルセットに変換する。そして、物体の表面形状の情報を取得し、その表面形状の情報と上述したテーブルセットとに基づいて、物体からの出射光をシミュレーションする。すなわち、一部のシミュレーションを確率分布型のテーブルを用いて行うことによって計算コストを抑制することができ、一部のシミュレーションを強度分布型のテーブルを用いて行うことによって高精度なシミュレーションを行うことができる。これにより、計算コストを抑制し、かつ高精度に物体からの出射光をシミュレーションすることができる。
【発明を実施するための形態】
【0035】
以下、本発明の光学シミュレーション装置および方法並びにプログラムの一実施形態を用いた肌シミュレーション画像表示システムについて、図面を参照しながら詳細に説明する。
図1は、本実施形態の肌シミュレーション画像表示システム1の概略構成を示すブロック図である。なお、
図1に示す光学シミュレーション装置の構成は、本発明の光学シミュレーションプログラムの一実施形態をコンピュータにインストールし、そのプログラムをコンピュータによって実行することにより実現されるものである。コンピュータにインストールされる光学シミュレーションプログラムは、CD−ROM(Compact Disc Read Only Memory)等の記録媒体に記憶されたものでもよいし、インターネット等のネットワークを介して配布されたものでもよい。
【0036】
本実施形態の肌シミュレーション画像表示システム1は、
図1に示すように、光学シミュレーション装置10と、表示装置20と、入力装置30とを備えている。
【0037】
光学シミュレーション装置10は、光学特性取得部11と、テーブル変換部12と、表面形状情報取得部13と、シミュレーション部14と、画像生成部15と、表示制御部16とを備えている。
【0038】
光学特性取得部11は、物体の光学特性を取得するものである。本実施形態の光学特性取得部11は、具体的には、肌の光学特性を取得するものである。
【0039】
そして、肌の光学特性は、肌に対して光を入射した場合におけるその光の反射特性、透過特性および散乱特性などを規定したものである。肌の光学特性は、実際の肌を実測することによって取得されたものでもよいし、肌をモデル化した肌モデルをシミュレーションによって解析することによって得られたものでもよい。肌モデルとは、人の肌を数学的にモデル化したものであり、肌の構造情報、光の屈折率、散乱係数および吸収係数などを設定することによって得られるものである。肌モデルは、予め設定していてもよいし、ユーザが入力装置30を用いて上述した構造情報や屈折率などの光学情報を入力することによって設定してもよい。
【0040】
具体的には、光学特性としては、BSSRDF(双方向散乱面反射率分布関数)特性、BSDF(Bidirectional Scattering Distribution Function)(双方向散乱分布関数)特性およびSVBRDF(Spatially Varying Bidirectional Reflectance Distribution Function)(双方向反射率分布関数)特性などがある。これらの光学特性は、既に公知なものであるが、以下、簡単に説明する。
【0041】
BSSRDF特性は、物体表面の反射特性を表すものであり、
図2Iに示すように、物体表面上の任意の位置に入射した光が、物体内部で散乱し、物体表面上の別の位置から出射することを考慮したものである。BSSRDF特性は、
図2IIおよび
図2IIIに示すように入射位置(ui,vi)および入射方向(φi,ψi)を入力として、
図2IVおよび
図2Vに示すように出射位置(ur,vr)および出射方向(φr,ψr)に出力される分布で与えられる。
【0042】
BSDF特性は、BRDF特性(Bidirectional Reflectance Distribution Function)とBTDF(Bidirectional Transmittance Distribution Function)(双方向透過率分布関数)特性とを合わせたものである。
【0043】
BRDF特性は、
図3Iに示すように、物体表面の反射特性を表すものであり、入射方向(φi,ψi)を入力として、出射方向(φr,ψr)に出力される分布で与えられる。BTDF特性は、
図3IIに示すように、物体表面の透過特性を表すものであり、入射方向(φi,ψi)を入力として、出射方向(φr,ψr)に出力される分布で与えられる。すなわち、BSDF特性も、入射方向(φi,ψi)を入力として、出射方向(φr,ψr)に出力される分布で与えられる。
【0044】
光学特性取得部11によって取得される肌の光学特性は、予め設定していてもよいし、ユーザが入力装置30を用いて任意に設定入力するようにしてもよい。また、複数の光学特性を予め設定しておき、その複数の光学特性の中からユーザが入力装置30を用いて選択するようにしてもよい。光学特性の選択については、たとえば表示装置20に選択画面を表示させ、その選択画面においてユーザが所望の光学特性を選択するようにしてもよい。なお、複数の光学特性としては、BSSRDF特性、BSDF特性およびBRDF特性などの異種の光学特性を設定してもよいし、たとえばBSSRDF特性について、異なる光学特性を有する複数のBSSRDF特性を設定するようにしてもよい。
【0045】
テーブル変換部12は、光学特性取得部11によって取得された肌の光学特性を確率分布型のテーブルと強度分布型のテーブルとを組み合わせたテーブルセットに変換するものである。
【0046】
具体的には、たとえば光学特性がBSSRDF特性である場合には、上述した出射位置(ur,vr)の分布を、確率分布型のテーブルに変換し、各出射位置(ur,vr)に対応する出射方向(φr,ψr)の分布を、強度分布型のテーブルに変換するものである。なお、逆に、出射位置(ur,vr)の分布を、強度分布型のテーブルに変換し、各出射位置(ur,vr)に対応する出射方向(φr,ψr)の分布を、確率分布型のテーブルに変換してもよい。
【0047】
また、光学特性が、BSDF特性およびBRDF特性である場合には、上述した出射方向(φr)の分布を、確率分布型のテーブルに変換し、各出射方向(φr)に対応する出射方向(ψr)の分布を、強度分布型のテーブルに変換するものである。また、逆に、出射方向(φr)の分布を、強度分布型のテーブルに変換し、各出射方向(φr)に対応する出射方向(ψr)の分布を、確率分布型のテーブルに変換してもよい。
【0048】
ここで、上述したBSSRFD特性を、確率分布型のテーブルと強度分布型のテーブルのテーブルセットに変換する方法について、具体的に説明する。なお、上述したように、BSSRDF特性は、入射位置(ui,vi)および入射方向(φi,ψi)を入力として、出射位置(ur,vr)および出射方向(φr,ψr)に出力される分布で与えられるが、ここでは、説明を分かりやすくするために、入射位置(ui,vi)および入射方向ψiによって変化しない光学特性とし、すなわち入射方向φiのみを考慮し、入射方向φiを0°〜30°の範囲で30°刻みとした場合を考慮するものとする。また、出射位置(ur,vr)をx方向およびy方向について-1〜1mmの範囲で1mm刻みとし、出射方向φrを0°〜90°の範囲で15°刻みとし、出射方向ψrを0°〜360°の範囲で60°刻みとした場合を考慮するものとする。上述したような定義から、ここでのBSSRDF特性は、入射方向φi=0°のときの出射位置(ur,vr)および出射方向(φr,ψr)の4次元の分布と、入射方向φi=30°のときの出射位置(ur,vr)および出射方向(φr,ψr)の4次元の分布とで与えられる。
【0049】
具体的には、入射方向φi=0°のときの出射位置(ur,vr)は、たとえば下表4のような分布で表すことができる。また、各出射位置(ur,vr)の各出射方向(φr,ψr)の光強度は、たとえば下表5のような分布で表すことができる。
図4は、各出射位置(ur,vr)の出射方向(φr,ψr)の光強度を3次元のグラフとして表したものである。
【0051】
【表5】
また、入射方向φi=30°のときの出射位置(ur,vr)は、たとえば下表6のような分布で表すことができる。また、各出射位置(ur,vr)の各出射方向(φr,ψr)の光強度は、たとえば下表7のような分布で表すことができる。
図5は、各出射位置(ur,vr)の各出射方向(φr,ψr)の光強度を3次元のグラフとして表したものである。
【0053】
【表7】
次に、表4および表5の分布を用いて、入射方向φi=0°のときの出射位置(ur,vr)の分布を確率分布型のテーブルに変換する。具体的には、表5の各出射位置(ur,vr)の各出射方向(φr,ψr)の光強度の分布を加算すると、下表8のような分布となる。すなわち、たとえば表5の(ur,vr)=(−1,1)の各出射方向(φr,ψr)の強度分布を全て加算すると、表8の(ur,vr)=(−1,1)の値である2.060887になる。また、表5の(ur,vr)=(0,0)の各出射方向(φr,ψr)の強度分布を全て加算すると、表8の(ur,vr)=(0,0)の値である8.476945になる。
【0054】
【表8】
そして、表8の全ての値の総和を求め、表8の各値をその総和で割って確率とし、小数点第2位までの値で表すと下表9のようになる。
【0055】
【表9】
表9の確率を10
2のテーブル数でテーブル化したものが、下表10の左表である。この表が、入射方向φi=0°のときの出射位置(ur,vr)の分布を確率分布型のテーブルに変換したものである。表10の左表は、出射位置(ur,vr)の確率分布を1〜100の乱数で表したテーブルである。
【0056】
また、表10の右表は、入射方向φi=0°の場合と同様にして、入射方向φi=30°のときの出射位置(ur,vr)の分布を確率分布型のテーブルに変換したものである。
【0057】
【表10】
次に、各出射位置(ur,vr)に対応する各出射方向(φr,ψr)の光強度の分布を、強度分布型のテーブルに変換する。この強度分布型のテーブルについては、表6と表7によって表される分布をそのままテーブル化すればよい。この強度分布型のテーブルでは、出射方向(φr,ψr)を乱数として所定の出射方向(φr,ψr)が決定され、その決定した出射方向(φr,ψr)の強度が決定される。
【0058】
なお、上記説明では、出射位置(ur,vr)の分布を、確率分布型のテーブルに変換し、各出射位置(ur,vr)に対応する出射方向(φr,ψr)の分布を、強度分布型のテーブルに変換する場合について説明したが、上述したように、逆に、出射位置(ur,vr)の分布を、強度分布型のテーブルに変換し、各出射位置(ur,vr)に対応する出射方向(φr,ψr)の分布を、確率分布型のテーブルに変換してもよい。
【0059】
出射方向(φr,ψr)の分布を確率分布型のテーブルに変換する方法としては、具体的には、各出射方向(φr,ψr)について、各出射位置の光強度の分布を加算することによって、上表8のur,vrをφr,ψrに置き換えたような光強度の分布を算出する。そして、出射方向(φr,ψr)毎の光強度の加算値を、加算値の総和によって除算することによって、上表9のur,vrをφr,ψrに置き換えたような確率の分布を算出する。そして、その確率をたとえば10
2のテーブル数でテーブル化することによって確率分布型のテーブルに変換するようにすればよい。
【0060】
なお、上述したように、光学特性がBSDF特性またはBRDF特性である場合には、出射方向(φr)の分布を確率分布型のテーブルに変換し、各出射方向(φr)に対応する出射方向(ψr)の分布を強度分布型のテーブルに変換したり、また、逆に、出射方向(φr)の分布を強度分布型のテーブルに変換し、各出射方向(φr)に対応する出射方向(ψr)の分布を確率分布型のテーブルに変換すればよいが、テーブルへの変換方法については、基本的には、上述したBSSRFD特性の場合と同じ手法を用いるようにすればよい。
【0061】
表面形状情報取得部13は、肌の表面形状の情報を取得するものである。肌の表面形状の情報は、実際の肌を実測することによって取得されたものでもよいし、肌をモデル化した肌モデルの表面形状の情報でもよい。肌モデルの表面形状の情報としては、たとえば肌理の整った肌を想定した平坦の面を用いるようにしてもよいし、毛穴および肌表面の凹凸を想定した凹凸面を用いるようにしてもよい。
図6に肌理の凹凸形状の一例、
図7に毛穴の凹凸形状の一例を示す。凹凸の大きさとしては、たとえばマイクロメートルオーダーからミリメートルオーダーの凹凸が設定される。表面形状の情報は、具体的には、3次元座標(x,y,z)で与えられるものである。また、後述する肌画像を生成する際には、3次元座標から各点の法線ベクトル(Nx,Ny,Nz)が算出される。
【0062】
表面形状情報取得部13によって取得される肌の表面形状の情報は、予め設定していてもよいし、ユーザが入力装置30を用いて任意に設定入力するようにしてもよい。また、複数の表面形状を予め設定しておき、その複数の表面形状の中からユーザが入力装置30を用いて選択するようにしてもよい。表面形状の選択については、たとえば表示装置20に選択画面を表示させ、その選択画面においてユーザが所望の表面形状を選択するようにしてもよい。
【0063】
シミュレーション部14は、テーブル変換部12によって生成された確率分布型のテーブルと強度分布型のテーブルからなるテーブルセットと、表面形状情報取得部13によって取得された肌の表面形状の情報とに基づいて、肌からの出射光をシミュレーションするものである。確率分布型のテーブルは、たとえば上表10で示したテーブルであり、強度分布型のテーブルは、たとえば表6および表7で示したテーブルである。
【0064】
画像生成部15は、シミュレーション部14におけるシミュレーションによる出射光を結像させて画像を生成するものである。
【0065】
肌画像の生成は、まず、
図8に示すように、シミュレーション空間に、光源100、肌モデル101、集光レンズ102および受光部103を設定する。そして、光源100から出射された平行光L1が肌モデル101に入射され、その平行光L1の入射によって肌モデル101から出射された出射光L2が集光レンズ102によって集光され、受光部103の受光面によって受光されるまでを計算することによって、受光部103の受光面に結像される肌画像をシミュレーションすることができる。シミュレーションの条件としては、たとえば光源100の発光面の大きさとして20mm四方が設定され、肌モデル101の光入射面の大きさとして20mm四方が設定され、集光レンズ102の大きさとして半径15mmが設定され、肌モデル101と集光レンズ102との間の距離として500mmが設定され、集光レンズ102と受光部103との間の距離として140mmが設定される。
【0066】
より具体的には、光源100から平行光L1を多数回出射させる。平行光L1の各光線が肌モデル101表面に到達したときの位置を幾何学的に計算することによって、各光線の入射位置が決定される。次に、各光線について、その光線の方向と肌モデル101の表面形状の法線ベクトルとを考慮することで、各光線の入射方向が決定される。そして、各光線の入射位置および入射方向に基づいて、テーブル変換部12によって生成されたテーブルセットを参照することによって、肌モデル101から出射される出射光の各光線の出射位置、出射方向および強度が決定される。具体的には、上述した例では、確率分布型テーブルを参照することによって出射光の各光線の出射位置が決定され、強度分布型テーブルを参照することによって出射方向および強度が決定される。そして、集光レンズ102を透過した出射光の各光線を受光部103の受光面に結像させることによって肌画像が生成される。
【0067】
なお、光線の出射方向を決定する際、予め設定された目標領域へのみ光線が入射されるように出射方向を決定するようにしてもよい。たとえば集光レンズ102の領域を目標領域としてもよい。目標領域については、ユーザが入力装置30を用いて任意に設定が可能である。
【0068】
なお、たとえば肌モデル101の光学特性がBSDF特性またはBRDF特性である場合には、入射光の各光線の入射方向に基づいて、テーブル変換部12によって生成されたテーブルセットを参照することによって、肌モデル101から出射される出射光の各光線の出射方向および強度が決定される。具体的には、たとえば確率分布型テーブルを参照することによって出射光の各光線の出射方向φrが決定され、強度分布型テーブルを参照することによって出射方向φrに対応する出射方向ψrおよび強度が決定される。なお、上述したように、逆に、確率分布型テーブルを参照することによって出射光の各光線の出射方向ψrを決定し、強度分布型テーブルを参照することによって出射方向ψrに対応する出射方向φrおよび強度を決定するようにしてもよい。
【0069】
表示制御部16は、画像生成部15によって生成された肌画像を表示装置20に表示させるものである。
【0070】
表示装置20は、液晶ディスプレイなどのモニタを備えたものである。表示装置20はタブレット端末のモニタであってもよい。すなわち、タブレット端末に対して光学シミュレーションプログラムをインストールして肌画像を表示させるようにしてもよい。
【0071】
入力装置30は、肌の光学特性および肌の表面形状の情報並びにシミュレーションの条件などの種々の情報の入力を受け付けるキーボードやマウスを備えたものである。また、上述したタブレット端末のタッチパネルによって表示装置20と入力装置30の両方を兼ねるようにしてもよい。
【0072】
次に、本実施形態の肌シミュレーション画像表示システム1の作用について、
図9に示すフローチャートを参照しながら説明する。
【0073】
まず、BSSRDF特性、BSDF特性およびBRDF特性などの肌の光学特性が光学特性取得部11によって取得される(S10)。
【0074】
そして、肌の光学特性はテーブル変換部12に出力され、テーブル変換部12は、入力された光学特性を、上述したように確率分布型のテーブルと強度分布型のテーブルとからなるテーブルセットに変換する(S12)。
【0075】
一方、表面形状情報取得部13によって肌の表面形状の情報が取得される(S14)。そして、テーブル変換部12において生成されたテーブルセットと表面形状情報取得部13によって取得された肌の表面形状の情報とがシミュレーション部14に出力される。
【0076】
シミュレーション部14は、上述したように肌の表面形状の情報に基づいて決定された各光線の入射方向および入射位置に基づいて、テーブル変換部12によって生成されたテーブルセットを参照することによって、肌モデルから出射される出射光の各光線の出射位置、出射方向および強度を決定する。そして、画像生成部15は、シミュレーションされた出射光の各光線を受光面に結像させた肌画像を生成する(S16)。
【0077】
画像生成部15によって生成された肌画像は表示制御部16に出力され、表示制御部16は、入力された肌画像を表示装置20に表示させる(S18)。
【0078】
上記実施形態の肌シミュレーション画像表示システム1によれば、物体の光学特性を取得し、その光学特性を確率分布型のテーブルと強度分布型のテーブルとを組み合わせたテーブルセットに変換する。そして、物体の表面形状の情報を取得し、その表面形状の情報と上述したテーブルセットとに基づいて、物体からの出射光をシミュレーションによって結像させて画像を生成し、その画像を表示させる。したがって、計算コストを抑制し、かつ高精度な光学シミュレーションによって画像を生成して表示させることができる。
【0079】
なお、上記実施形態においては、光学特性取得部11が、肌の光学特性としてBSSRDF特性、BSDF特性およびBRDF特性を取得するようにしたが、光学特性取得部11において肌モデルを設定し、その肌モデルを解析することによってBSSRDF特性をシミュレーションにより算出するようにしてもよい。以下、光学特性取得部11が、BSSRDF特性をシミュレーションによって算出する場合の具体例について説明する。なお、ここでは、肌モデルとして肌表面モデルと肌内部モデルとを設定し、肌表面モデルを電磁場光学を用いて解析し、肌内部モデルを幾何光学を用いて解析することによって肌全体のBSSRDF特性を算出する方法について説明する。この方法により、肌表面モデルの表面構造をより厳密に解析したBSSRDF特性を算出することができる。これにより肌表面のミクロ構造の変化を高精度に推定することができ、ミクロ構造の変化による微妙な肌の質感変化を評価することが可能になる。
【0080】
具体的には、光学特性取得部11は、
図10に示すように、肌表面特性算出部50と、肌内部特性算出部51とを備える。
【0081】
肌表面特性算出部50は、肌の表面構造をモデル化した肌表面モデルを電磁場光学を用いて解析することによって肌表面モデルの電場分布を算出するものである。肌表面モデルは、ユーザが入力装置30を用いて入力した肌の形状および屈折率などの情報に基づいて肌表面特性算出部50において生成するようにしてもよいし、予め生成された肌表面モデルを肌表面特性算出部50に記憶してもよい。
【0082】
肌表面モデルとしては、たとえば、角層の剥がれなどの肌荒れを想定した表面ミクロ構造を有する肌をモデル化した肌表面モデルを用いることができる。ここでいうミクロ構造とは、10マイクロメートル以下の構造であり、上述した肌の表面形状の凹凸情報よりも細かい構造である。具体的には、たとえば200nm〜800nmの範囲内のランダムな直径を有する複数の球を配列した構造を肌表面モデルとして用いることができる。球の配列方法としては、たとえば5μm四方の範囲内に55個の球をランダムな位置に配列するようにすればよい。
【0083】
図11は、肌荒れを想定した肌表面モデルの一例を示す図である。また、配列方法としては、規則性を有する配列としてもよい。球の大きさ、密度および配列方法については、ユーザが入力装置30を用いて任意に変更可能である。
図12は、
図11に示す肌表面モデルよりも球の密度を小さくしたものである。
【0084】
また、本実施形態では、球を用いるようにしたが、球に限らず、円柱、円錐および多面体などその他の構造体を配列するようにしてもよい。また、これらの複数の種類の構造体を予め設定しておき、ユーザが入力装置30を用いて任意に選択できるようにしてもよい。また、1種類だけでなく、複数種類の構造体を混合させるようにしてもよい。
【0085】
また、肌表面モデルは、球以外の構造体から生成するようにしてもよく、たとえば
図13に示すように、層状の構造体を積層して生成するようにしてもよい。
図13に示す肌表面モデルの方が実際の角層に近いモデルであると考えられる。また、複数の層状の構造体を積層する場合には、各層の形状を異なるものとしてもよい。各層の形状は、ユーザが任意に設定可能としてもよい。また、表面粗さの指標値(たとえば、算術平均粗さRa)などを用いて表面の凹凸形状を生成してもよい。
【0086】
また、肌表面モデルとしては、保湿されて角層が整った肌の表面構造をモデル化したものを用いるようにしてもよい。この場合、凹凸がない平坦な構造を有する肌表面モデルを用いるようにすればよい。
図14は、角層の整った肌を想定した肌表面モデルの一例を示す図である。また、肌表面モデルの屈折率は、たとえば肌の屈折率として一般的に知られているn=1.37に設定すればよい。また、皮脂が角層の表面を覆っていることを想定して、皮脂の屈折率であるn=1.5程度に設定するようにしてもよい。
【0087】
上述したような肌荒れを想定した肌表面モデルや角層の整った肌を想定した肌表面モデルなど複数の肌の状態を想定した肌表面モデルを生成するまたは予め記憶しておくことが望ましい。ユーザは、これらの複数の肌表面モデルの中から必要に応じて解析対象の肌表面モデルを選択することができる。この場合、複数の肌表面モデルから解析対象の肌表面モデルを選択するためのメニューを表示装置20に表示させ、ユーザが、そのメニュー表示の中から入力装置30を用いて解析対象の肌表面モデルを選択するようにしてもよい。
【0088】
肌表面特性算出部50は、上述したような肌表面モデルを電磁場光学を用いて解析するものである。具体的には、屈折率(誘電率)の空間分布からなる肌表面モデルに光を入射した場合における反射方向および透過方向についての電磁場の空間分布を算出するものである。たとえばFDTD法(Finite-difference time-domain method)を用いて解析を行うようにすればよい。FDTD法は、Maxwell方程式を直接差分化し、電磁場の空間分布の時間変化を計算する手法である。ただし、FDTD法に限らず、たとえば、有限要素法、境界要素法、その他一般的に知られている電磁場計算手法を用いることができる。
【0089】
また、電磁場光学を用いて解析する際、周期境界条件を用いるようにすれば、有限サイズ(たとえば5μm四方単位)の肌表面モデルを用いて、仮想的にmmオーダーの広い肌の領域を解析することができる。これにより計算コストを抑制することができる。
【0090】
また、有限サイズ(たとえば5μm四方単位)の肌表面モデルを用いて解析することによって離散化するデータを補間によって連続的に扱うようにしてもよい。これにより計算コストを抑制することができる。
【0091】
次に、肌内部特性算出部51は、肌の内部構造をモデル化した肌内部モデルを幾何光学を用いて解析することによって肌内部モデルの光の散乱特性を算出するものである。
【0092】
肌内部モデルは、肌表面モデルよりも大きいマクロ構造を有するものであり、ここでいうマクロ構造とは、相対的に肌表面モデルの凹凸構造よりも大きいサイズの構造であればよく、10マイクロメートルよりも大きい凹凸構造でもよいし、平坦な構造でもよい。肌内部モデルは、たとえばスリット光を用いた評価などといった既知の手法で肌内部の光学定数を見積もり、波長毎の散乱係数および吸収係数を設定することによって生成するようにすればよい。
【0093】
肌内部特性算出部51は、上述したような肌内部モデルを幾何光学を用いて解析するものである。具体的には、本実施形態においては、肌内部モデル(散乱体)の特性として、散乱係数μs、吸収係数μaおよび異方性散乱係数gを設定し、散乱係数μsの設定に従い、乱数を用いて光線が散乱を受けるまでの距離を求め、光を直進させる。そして、乱数を用いて散乱された光線の次の進行方向を定める。進行方向の確率分布は、下式に示すHenyey-Greenstein散乱関数の確率分布に基づいて与える。
【0094】
【数1】
そして、光線の伝搬にともなう光量の減衰を吸収係数μaによって与える。以上の過程を繰り返して計算し、肌内部モデル(散乱体)内で多重散乱する光の伝搬特性を肌内部モデルの光の散乱特性として算出する。なお、異方性散乱係数gは肌係数として一般的に用いられているg=0.9を用いるようにすればよい。
【0095】
光学特性算出部52は、肌表面特性算出部50によって算出された肌表面モデルの電場分布に基づいて肌表面モデルの光学特性を算出し、その算出した肌表面モデルの光学特性と肌内部特性算出部51によって算出された肌内部モデルの光の散乱特性とを結合して肌全体の光学特性を算出するものである。
【0096】
光学特性算出部52は、まず、肌表面モデルの電場分布に基づいて、光散乱角度分布を算出する。具体的には、本実施形態では、肌表面モデルの電場分布に基づいて、肌表面モデルのBSDF(Bidirectional Scattering Distribution Function:双方向散乱分布関数)を算出する。以下、BSDFの算出方法について、より具体的に説明する。
【0097】
肌表面特性算出部50におけるFDTD法による計算結果では、周期構造が回折格子となり回折次数で決まる特定の出射角に光が透過または反射される。なお、ここでいう周期構造とは、たとえば上記の肌表面モデルの例では、ランダムに球を配置した5μm四方の領域を単位構造として、この単位構造を平面内に繰り返して配置した構造のことである。
【0098】
光の入射角度の極座標表示を(θ0、φ0)および光の波長をλとすると、x,y方向の波数ベクトルkx0,ky0は、下式で表される。
【0099】
【数2】
x,y方向の回折次数をm,n、周期長をLとすると回折光のx,y方向の波数kxm,kynは、下式で表される。
【0100】
【数3】
そして、m,n次の回折光の散乱角度(θmn、φmn)は、下式により計算できる。
【0101】
【数4】
次に、各回折次数の光量は、FDTD法の計算結果から以下の方法で計算できる。
【0102】
FDTD法の計算結果から求められる所定のx,y平面の一面の電場の空間分布をE(x,y)とする。また、E(x,y)に対し、入射光の入射角度に依存した位相変化を補正した電場分布を、下式によりE'(x,y)として計算する。
【0103】
【数5】
そして、下式のようにE'(x,y)をフーリエ変換し、回折次数m,nの電場の振幅E(m,n)を計算する。
【0104】
【数6】
回折次数m,nの光量は、Imn = | E(m,n) |
2 として計算できる。
【0105】
以上の計算により、FDTD法による計算結果を散乱光の角度分布に変換することができ、その変換結果を肌表面モデルのBSDFとして取得することができる。BSDFとしては、空気層から肌へ光を入射した表面入射の場合のBSDF(f)と肌内部から空気層へ光を入射した場合のBSDF(b)とを算出する。
図15は、肌荒れを想定した肌表面モデルに対して0°の方向から光を入射した際のBSDFを表す図であり、
図16は、角層の整った肌を想定した肌表面モデルに対して0°の方向から光を入射した際のBSDFを表す図である。
図15および
図16における1画素の大きさは200mm
−1である。
【0106】
そして、光学特性算出部52は、肌内部特性算出部51によって算出された肌内部モデルの光の散乱特性に対して、上述したようにして算出した肌表面モデルのBSDFを付与することによって肌全体の光学特性としてBSSRDF特性を算出する。
図17は、光学特性算出部52における肌全体の光学特性の算出方法を模式的に示したものである。これにより肌全体の光学特性について、幾何光学での取り扱いが可能になる。
【0107】
なお、上記実施形態においては、肌内部モデルを一層の構成としたが、これに限らず、
図18に示すように、肌内部モデルを複数層から構成するようにしてもよい。肌内部モデルを複数層から構成する場合には、層毎に散乱係数および吸収係数などの光学定数を設定すればよい。たとえば表皮層と真皮層を想定して散乱係数および吸収係数をそれぞれ設定するようにしてもよい。具体的な散乱係数および吸収係数などの光学定数の値は、予め実験などによって計測されるものである。
【0108】
また、肌内部モデルを表皮層および真皮層から構成する場合、表皮層と真皮層との境界に、真皮乳頭層を想定した凹凸形状を設定するようにしてもよい。また、
図18に示す例では、2層から肌内部モデルを構成しているが3層以上でもよく、たとえば“多層構造皮膚ファントムを用いた皮膚疾患の再現と分光反射率解析,2012年日本光学会年次学術講演会,予稿集”に示されるように、9層から肌内部モデルを構成するようにしてもよい。このように多数の層から肌内部モデルを構成することによって、より実際の肌に近い構成とすることができる。
【0109】
また、上記の説明では、肌モデルを設定し、その肌モデルをシミュレーションによって解析することによって肌の光学特性を算出するようにしたが、肌モデルを用いることなく、実際の肌の光学特性を実測し、その実測された光学特性を光学特性取得部11が取得するようにしてもよい。
【0110】
実際の肌のBRDF特性の実測方法としては、まず、実際の肌に光を入射し、その光の入射方向を記憶する。肌への光の入射によって肌から出射された光をセンサによって受光し、出射光の出射方向および強度を記憶する。そして、入射光の入射方向、出射光の出射方向および強度からBRDF特性を算出するようにすればよい。なお、BRDF特性の実測方法としては、たとえば特開2009-162516号公報および特表2008-539439号公報に記載の方法などを用いることができる。
【0111】
また、BSSRDF特性は、たとえば半球状に配置された多面体ミラーにより48方向に光を分配するように設定された亀甲多面鏡を用いることによって実測することができる。具体的には、実際の肌に光を入射し、その光の入射位置と入射方向を記憶する。肌への光の入射によって肌から出射された光を亀甲多面鏡で分配する。その分配された反射光をカメラで撮像して画像とすることによって、出射方向ごとに出射位置に広がりを持つ反射光の強度を計測する。そして、入射光の入射位置、入射方向、出射位置、出射方向および反射光の強度からBSSRDF特性を算出するようにすればよい。なお、亀甲多面鏡を用いたBSSRDF特性の実測方法は、たとえば「CHIKA INOSHITA他、“Full-dimensional Sampling and Analysis of BSSRDF”、IPSJ Transaction on Computer Vision and Application Vol.5 119-123(July 2013)」に記載されている。