"多視点で撮影した画像データを取得する多視点画像データ取得手段と、前記取得した多視点画像データが示す多視点画像間での対応領域を検出して被写体の三次元形状データを生成する三次元形状データ生成手段と、前記三次元形状データを用いて、前記対応領域のうち光沢のある光沢画像領域を示す光沢領域データを生成する光沢領域生成手段と、前記三次元形状データと前記光沢領域データとを用いて前記多視点画像データの光源特性データを生成する光源特性データ生成手段とを有することを特徴とする画像処理装置。前記光沢領域生成手段は、前記多視点画像間での前記対応領域の画素値の差異に基づいて光沢領域データを生成することを特徴とする請求項1に記載の画像処理装置。前記光源特性データ生成手段は、前記光沢画像領域に対応する前記三次元形状データの一部に光沢性を示す特性値を付与する事を特徴とする請求項1又は2に記載の画像処理装置。前記光沢領域生成手段は、多視点画像の複数の部分画像において、対応する他の部分画像よりも画素値が高い画素を含む部分画像が存在する場合に、前記特性値を付与することを特徴とする請求項3に記載の画像処理装置。前記光源特性データは、光源の方向を示すデータであることを特徴とする請求項1から4のいずれかに記載の画像処理装置。前記生成した光源特性データと前記取得した多視点画像データとを用いて、被写体の三次元形状データを生成する第2の三次元形状生成手段をさらに有すことを特徴とする請求項1から5のいずれかに記載の画像処理装置。前記第2の三次元形状生成手段は、前記光源特性データと前記多視点画像データとを用いて前記対応領域の反射特性パラメータを算出する事を特徴とする請求項6に記載の画像処理装置。第2の三次元形状生成手段は、前記算出した反射特性パラメータを用いて前記三次元形状データを生成することを特徴とする請求項7に記載の画像処理装置。多視点で撮影した画像データを取得する多視点画像データ取得ステップと、前記取得した多視点画像データが示す多視点画像間での対応領域を検出して被写体の三次元形状データを生成する三次元形状データ生成ステップと、前記三次元形状データを用いて、前記対応領域のうち光沢のある光沢画像領域を示す光沢領域データを生成する光沢領域生成ステップと、前記三次元形状データと前記光沢領域データとを用いて前記多視点画像データの光源の特性データを生成する光源特性データ生成ステップとを有することを特徴とする画像処理方法。コンピュータを請求項1乃至8のいずれかに記載されている手段として機能させるためのプログラム。特許文献1記載の技術では、被写体の質感に関して完全拡散反射特性ランバート特性という仮定を置いている。完全拡散反射特性はマットな質感に対応する反射特性であり、見る方向によって色が変わらない事が特徴である。このような仮定は複数の角度から被写体を撮影しても色が変わらないため、対応領域の検出には適した仮定である。しかし光沢物体など完全拡散反射特性を持たない被写体に対しては、特定の角度から撮影すると物体表面での光源の反射、いわゆる光沢が画像に含まれる場合がある図2参照。この場合には、光沢が含まれる画像中の微小領域は他の画像中の微小領域と対応が付かず形状生成に用いられない。このように、特許文献1では、光沢が含まれる微小領域を有効に利用していなかった。本発明にかかる画像処理装置は、多視点で撮影した画像データを取得する多視点画像データ取得手段と、前記取得した多視点画像データが示す多視点画像間での対応領域を検出して被写体の三次元形状データを生成する三次元形状データ生成手段と、前記三次元形状データを用いて、前記対応領域のうち光沢のある光沢画像領域を示す光沢領域データを生成する光沢領域生成手段と、前記三次元形状データと前記光沢領域データとを用いて前記多視点画像データの光源特性データを生成する光源特性データ生成手段とを有することを特徴とする。多視点画像データ中の光沢が含まれる領域を有効に利用することができる。[実施例1]図1は、実施例1に係る画像処理装置の構成の例を示す図である。図1に示す画像処理装置は、多視点画像データ取得手段101と、カメラパラメータ取得手段102と、三次元形状データ生成手段103と、光沢領域生成手段104と、光源特性データ生成手段105と、データ出力手段106とを有する。これらの各手段は、画像処理装置の各構成を制御するCPUが、RAMをワークメモリとして使用してROMなどに格納されたOSや各種プログラムを実行することによって具現化されている。図1に示す各構成については、図4のフローチャートを参照しながら説明する。図1に示す画像処理装置を用いた処理のフローを図4に示す。図4に示すフローチャートは、画像処理装置のCPUが、RAMに読み出されたプログラムを実行することによって実現される。以降では図4のフローチャートに従って処理を説明する。本実施例では光源特性データが光源の方向として、多視点画像データ及びカメラパラメータから生成され、三次元形状データとともに出力される。なお、光源特性データは、例えば光源の方向を示すベクトルデータや、光源の位置の緯度経度を示すデータなどを用いることができる。また、自発光している物体照明器具等の他に反射している物体鏡に映った明かり等も光源に含まれる。ステップS401では多視点画像データ取得手段101は、多視点画像データを取得する。多視点画像データ取得手段101は複数の撮影位置で撮影した画像データを取得する手段である。多視点画像データ取得手段101は例えば図3aのような多眼カメラや、図3bのようなカメラアレイ、あるいは図3cのような撮影位置を変えながら撮影ができるビデオカメラで得られた画像データを取得する。図3cの場合はビデオカメラで撮影した動画の複数フレームを抽出した画像が多視点画像データとなる。図2は、カメラアレイで取得した多視点画像データの例を示している。図2中の撮影画像A、B、Cにおいて四角で囲った画像領域は被写体の同一部分に対応している。各カメラの撮影方向が異なるため、所定のカメラによる撮像画像には光沢が存在し、他のカメラによる撮像画像には光沢が存在しない場合が想定される。図2の場合ではカメラAによる撮影画像にだけ光沢が存在する例を示している。多視点画像データ取得手段101は取得した多視点画像データを三次元形状データ生成手段103及び光沢領域生成手段104に供給する。ステップS402ではカメラパラメータ取得手段102は、カメラパラメータを取得する。カメラパラメータ取得手段102は多視点画像の各々について、その撮影条件を示すパラメータを取得する手段である。カメラパラメータは、例えばカメラの画角、解像度、カメラの光学中心の位置、カメラの光軸を示すベクトル、及びカメラの上方向を示すベクトルである。図5は、カメラパラメータの例を示す図である。カメラの画角、解像度を取得するには画像撮影時のそれらの情報を画像データのヘッダ部分に記録するようにカメラを設定し撮影すればよい。またカメラ光学中心の位置、カメラの光軸を示すベクトル、カメラの上方向を示すベクトルを取得するには、カメラに内蔵されるジャイロセンサーの出力値を適宜変換して画像データのヘッダ部分に記録すればよい。ジャイロセンサーの他にもGPS情報からカメラ光学中心やカメラの方位を求めて、適宜変換して画像データのヘッダ部分に記録しても良い。カメラパラメータ取得手段は以上述べた多視点画像データのヘッダ部分に記録されたカメラパラメータを取得する。そして、取得したカメラパラメータを三次元形状データ生成手段103、光沢領域生成手段104、及び光源特性データ生成手段105に供給する。ステップS403では三次元形状データ生成手段103は、ステップS401で取得された多視点画像データとステップS402で取得されたカメラパラメータとから多視点画像間での対応領域を検出して被写体の三次元形状データを生成する。カメラパラメータが既知という条件の下、多視点画像から被写体の三次元形状データを生成する技術分野はMultiViewStereoと呼ばれており、多くの手法が知られている。例えばhttpvisionmiddleburyedumviewには数多くのMultiViewStereoに関するアルゴリズムが紹介されている。MutliViewStereoのアルゴリズムは本実施例の主眼ではないので、特許文献1記載の技術を代表例として簡単に説明する。特許文献1記載のアルゴリズムはまず各多視点画像データから特徴点を検出する。特徴点は画像の平坦画素値が一様でない部分であって、各特徴点の画像上での距離が近づきすぎないよう適宜間引かれて検出される。次に多視点画像データ中の任意の2枚の画像データについて対応する特徴点を検出する。具体的にはエピホーラ幾何に基づいて対応する特徴点の候補を計算し、特徴点候補の周辺の画像領域の類似度が高い場合に、かかる一組の特徴点を対応点とする。エピポーラ幾何に基づく対応点の候補の検出について図15を用いてその概略を述べる。一般的に片方の画像1で特徴点a1に射影される三次元空間上の点群はある三次元直線La1上に分布する。この三次元直線上のいずれかの点が実際に三次元空間上に実際に存在する点である。もう一方の画像2における前記直線すなわち、直線La1に対応する線がエピポーラ線である。画像2において、かかるエピポーラ線上に存在する特徴点が特徴点a1と対応する可能性があるため、対応点の候補として検出する。図15ではb1b2が対応点の候補として検出される。その後、光学中心2と対応点の候補b1b2とを結ぶ各直線と、特徴点a1に射影される直線La1との交点の各画像領域を用いて対応点を検出する。特許文献1記載の技術は上記の方法で対応点を検出した後、三角測量の原理で対応点の三次元空間における位置を求める。また特許文献1記載の技術は対応点の三次元空間における位置のみならず、三次元空間にかかる位置を中心とする微小な平面を仮定し形状推定の高度化を図っている。以上に加えて様々な工夫により高度な形状生成を実現している。さらに三次元空間中の点群からポリゴンを生成する手段も公知であり、MKazhdanらによるPoissonsurfacereconstructionが知られている。ステップS403で三次元形状データ生成手段103が生成するデータは、例えばポリゴンデータである。図6にポリゴンデータの例を示す。ポリゴンは三次元空間上での四角形の集合により構成されるとする。図6でPmVnで示される指標はm番目の四角形のn番目頂点の座標XYZを表す。本実施例では多視点画像データから三次元形状データとしてポリゴンデータを生成する例を示したが、被写体の形状がすでに分かっている場合には、ポリゴンデータを外部から取得してもよい。三次元形状データ生成手段103は生成したポリゴンデータを光沢領域生成手段104,光源特性データ生成手段105,及びデータ出力手段106に供給する。ステップS404では光沢領域生成手段104は、多視点画像データ中の光沢に対応する領域である光沢画像領域の光沢領域データを生成する。光沢領域生成手段104の動作を図7に示すフローチャートを用いて説明する。ステップS701では光沢領域生成手段104は、ポリゴン番号Nを0で初期化する。ステップS702では光沢領域生成手段104は、ポリゴン番号Nをインクリメントする。ステップS703では光沢領域生成手段104は、N番目のポリゴンに対応する多視点画像の部分画像群を生成する。例えば図2に示す被写体形状の一部201がN番目のポリゴンであるとする。公知の技術により、各カメラのカメラパラメータとポリゴンの頂点座標から各多視点画像におけるN番目のポリゴンに対応する部分画像を決定することができる。図2の例では202,203,204が部分画像群である。そして、これらの部分画像の画素値の差異に基づいて光沢領域が含まれているかを判定することになる。まず、ステップS704では各部分画像iの画素値の平均値Miを算出する。図2の例ではM1506M233M233となり、光沢が含まれる部分画像Aの画素値の平均値が高くなっている。ステップS705では各部分画像の画素値の平均値Miの平均値Mを計算する。図2の例ではM3でM389となる。ステップS706ではMiMCなるiが存在するかチェックを行う。Cは閾値であり、例えばC10と設定することができる。するとi1についてM1MCが成立するため、部分画像1は光沢が含まれていると判断される。従って、ステップS707に移行してポリゴン番号Nと多視点画像の番号i1を光源特性データ生成手段105に供給する。このように、光沢を含む部分画像は他の部分画像よりも画素値が高いため、ステップS706の判定を満たし出力される。ステップS708ではNが総ポリゴン数と等しいかを判定し、Nが総ポリゴン数と等しければ処理を終え、等しくなければステップS702に移行する。以上のフローが図4のステップS404の詳細である。ステップS405では光源特性データ生成手段105は、光源特性データを生成する。ステップS405の詳細フローを図8に示す。ステップS801では光沢領域生成手段104からポリゴン番号Nと画像番号iとを取得する。このポリゴン番号は光沢領域生成手段104によりi番目の多視点画像中の光沢領域であると判定されたものである。ステップS802では光源特性データ生成手段105は三次元形状データ生成手段103から図6で示されるような三次元形状データを取得する。ステップS803では光源特性データ生成手段105はカメラパラメータ取得手段102からカメラパラメータを取得する。ステップS804では光源特性データ生成手段105は番号Nのポリゴンに対応する法線ベクトルを生成する。N番目ポリゴンの4つの頂点をPNV1PNV2PNV3PNV4とする。PNV1~PNV4の各々は座標値XYZを要素として持つベクトルである。N番目ポリゴンの法線ベクトルはベクトルとベクトルの外積により算出することができる。ステップS805では光源特性データ生成手段105はカメラ視線ベクトルvを算出する。まずN番目ポリゴンの平均位置ベクトルをpとすると、p4によってpを計算する。次に画像番号iに対応するカメラ光学中心をcとすると、カメラ視線ベクトルvはvpcにより算出する。なお、カメラ光学中心は、カメラパラメータ取得手段102からカメラパラメータとして取得されている。ステップS806では光源特性データを生成する。本実施例では光源特性データは光源の方向を示すベクトルデータである。図9に示すように光の反射の法則からカメラ視線ベクトルvと法線ベクトルnが分かれば光源の方向qが算出できる。具体的にはqv2nにより光源の方向qを算出する。なおvnはvとnの内積である。次にステップS807で光源特性データ生成手段105は光源特性データqをデータ出力手段106に供給する。ステップS808ではポリゴン番号Nを質感データとしてデータ出力手段106に供給する。すなわち、光沢に対応する領域を質感データとしてデータ出力手段106に供給する。以上がステップS405の詳細フローである。ステップS406でデータ出力手段106は、三次元形状データ生成手段103から三次元形状データを取得し、また光源特性データ生成手段105から光源特性データと質感データとを取得し、それぞれ出力する。出力先はハードディスクやメモリーカード等の記憶装置やプリンタ、あるいはディスプレイなどが好適である。また形状データに質感データを統合する際には光沢性を示す特性値を付与することが好適である。例えば、図10に示すように、各ポリゴン毎に非完全拡散反射面を示すフラグ1ならば非完全拡散反射面。0ならば完全拡散反射面を追加して出力する事ができる。本実施例の場合においては、質感データとして光沢に対応する領域ポリゴン番号Nが光源特性データ生成手段105からデータ出力手段106に供給された場合に、図10に示すようなフラグを立てることができる。なお、図1に示す例においては、質感データとして光沢に対応する領域ポリゴン番号Nが光源特性データ生成手段105からデータ出力手段106に供給される例を説明した。しかしながら、例えば光沢領域生成手段104から質感データとして光沢に対応する領域ポリゴン番号Nがデータ出力手段106に供給されてもよい。以上のフローによって多視点画像データとカメラパラメータとから、三次元形状データとともに光源の方向を示す光源特性データを生成する事ができる。すなわち、従来の特許文献1の手法では、多視点画像データから三次元形状データのみを生成しているが、本実施例によれば、さらに光源特性データも生成することが可能となる。また本実施例が出力する三次元形状データにはポリゴン番号ごとに、かかるポリゴンが完全拡散面か非完全拡散面である事を示す情報を付与することができる。[実施例2]本実施例は実施例1を拡張し、光源特性データを利用してより精度の高い三次元形状と質感データを生成する。図11は本実施例にかかる画像処理装置の構成例を表す。図11に示す画像処理装置は、多視点画像データ取得手段1101と、カメラパラメータ取得手段1102と、三次元形状データ生成手段1103と、光沢領域生成手段1104と、光源特性データ生成手段1105と、データ出力手段1107とを有する。そして、図11に示す画像処理装置は、さらに第2の三次元形状データ生成手段1106を有する。多視点画像データ取得手段1101及びカメラパラメータ取得手段1102は、取得した多視点画像データ及びカメラパラメータを第2の三次元形状データ生成手段1106にも供給する。三次元形状データ生成手段1103は、生成した形状データを光源特性データ生成手段1105に供給する。光源特性データ生成手段は、生成した光源特性データを第2の三次元形状データ生成手段に供給する。第2の三次元形状データ生成手段1106は、三次元形状データ、光源特性データ、及び質感データをデータ出力手段1107に供給する。図12のフローチャートを用いて図11に示す画像処理装置の動作を説明する。ステップS1201~S1205は実施例1のS401~S405とそれぞれ同様である。本実施例ではステップS1205で光源特性データを生成した後に、第2の三次元形状データ生成手段1106が、ステップS1205で生成した光源特性データを利用して三次元形状データを、より高精度に生成する。第2の三次元形状データ生成手段の動作を図13のフローチャートを用いて説明する。ステップS1301では第2の三次元形状生成手段がカメラパラメータ、多視点画像データ、及び光源特性データを取得する。ステップS1302では多視点画像の特徴点を検出する。特徴点検出はソベルフィルター、ラプラシアンフィルターなどの微分フィルタを多視点画像に適用し、所定の閾値以上の値を有する画素を抽出する。ステップS1303では対応点の候補を求める。その方法は、先に述べたエピポーラ幾何に基づく対応点の候補の検出と同じである。次にステップS1304では対応点の候補から三次元空間上の点の座標値と初期法線を求める。図14は2つの異なる視点から撮影した画像1,2上の対応点の候補A1、A2と、対応点の候補A1,A2から導かれる三次元空間上の点Aの関係を示している。画像は各カメラの光軸と垂直に交わる仮想のスクリーン図14中の画像1、画像2に実際の物体が透視投影されたものと考える。すると、光学中心と対応点を結ぶ直線の交点が、対応点の候補A1,A2に射影されるべき三次元空間の点Aの位置となる。この時点において、対応点の候補A1,A2が本当に被写体の同一位置に対応しているかは不明であり、判定を行う必要がある。特許文献1では、対応点付近の画像が画像1と画像2で類似することを判定の条件としている。具体的には点Aを中心とする微小平面Aを考える。微小平面Aの大きさは画像上で例えば5x5画素の領域となるようカメラパラメータから定められる。微小平面の法線の向きは初期値として点Aから光学中心1に向かう方向を設定する。ステップS1305では法線の向き、及び質感パラメータを最適化により求める。まず特許文献1記載の法線の求め方を説明する。特許文献1では図16に示すように微小平面上にグリッド点Giを考える。このグリッド点Giを画像1,2に射影した点がg1i,g2iとする。各画像の点g1i,g2iにおける画素値をI1,I2とする。グリッド点として5x5の点を考えると、I1,I2は5x5画素の微小画像と考える事ができる。仮に対応点の候補A1,A2が本当に被写体の同一位置に対応するならば、微小画像I1,I2の相関は高くなるべきである。そのため特許文献1では微小画像同士の相関を最大化するような法線を最適化により求めている。最適化後の相関が高ければ、対応点の候補A1,A2は実際に被写体の同一位置に対応しているとして、点Aを被写体上の点として採用する。以上の説明は2視点で行ったが、3視点以上の場合でも同様に微小画像間の相関を最大化するよう法線を求める。以上が特許文献1記載の法線の求め方であるが、被写体がランバート面でない場合、被写体上の同一領域であっても、見る方向によっては光沢が含まれてしまい相関値が低くなる場合がある。このような場合、特許文献1では相関値が著しく低い画像は除外して法線の最適化を行うため、光沢が含まれる画像は実質的に形状の推定に用いられていない。非ランバート物体に光が当たったときの反射強度は図17に示すように観測する方向によって異なる。つまり、図17の各カメラは3次元空間上の同一の位置を見ているにも関わらず、撮影により得られる画素値は異なる。特に光源方向に対して正反射方向の近辺に位置する視点3、視点4では、視点1、視点2に比べて画素値が高い。特許文献1では視点1、視点2の微小画像の相関は高くなるが、視点3,4は光沢が含まれるため、相関が低くなり法線最適化の際に除外されてしまう。すると特許文献1では視点1と2から三角測量の原理で三次元空間上の点を求めることになるが、視点1と2では視差が小さいので位置の推定精度が低くなる。これに対して本件発明は光沢の影響も加味して画像の相関を求める。具体的には微小画像Iiを次式に従って補正したIiをもちいて画像の相関を求める。IiIiAcossθiここでθiは正反射方向とカメラ光軸のなす角度である。正反射方向はステップS1205で生成した光源方向qと、法線から求める。式1においてAは光沢の大きさを表すパラメータである。またsは反射光の角度的な広がりを表すパラメータである。式1の第2項はPhongモデルと呼ばれる公知のモデルである。ここで、光沢の大きさを表すパラメータAと反射光の角度的な広がりを表すパラメータsは、次のように求めることができる。図17を参照すると、正反射方向は、上述したように光源方向qと法線から求められている。この正反射方向に位置する視点3及び視点4の微小領域については、光沢が含まれていると考えられる。そこで、視点1または視点2の微小領域の画素値と、視点3及び視点4のそれぞれの画素値の差分を計算して、光沢の大きさを表すパラメータAと反射光の角度的な広がりを表すパラメータsを求めることができる。そして、本実施例では法線方向に加え、質感に関わるパラメータAとsを最適化のパラメータに追加して微小画像I間の相関を最大化する。このようにする事で、図18における視点1~4の全てを用いて被写体上の点を求めることができる。視点1~4は視差が大きいので、特許文献1に比べて位置の推定精度が高いという利点がある。また特許文献1に比べ光沢の大きさを表すパラメータAと反射光の角度的な広がりを表すパラメータsといった質感に関わるパラメータも求める事ができるという利点がある。ステップS1306では最適化の結果の相関値が低い場合には、対応点から生成した三次元空間上の点を除外し、相関値が高い場合には物体表面上の点として採用する。ステップS1307では公知の方法により点群、法線から三次元形状を生成する。これは実施例1と同様である。以上が実施例2におけるステップS1206で第2の三次元形状データ生成手段1106が行う処理の内容である。ステップS1207では三次元形状データ、光源特性データ及び質感データをデータ出力手段1107に供給し、出力を行う。なお本実施例で生成され出力される質感データは各点の最適化の際に生成された質感パラメータAおよびsである。すなわち、実施例1よりもより詳細な反射特性パラメータ質感パラメータを生成出力することができる。以上の処理により、光源特性データを利用して三次元形状を特許文献1に対してより高精度に求める事ができ、また被写体の質感パラメータも求める事が出来る。その他の実施例また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータまたはCPUやMPU等がプログラムを読み出して実行する処理である。"