"多視点のカメラ画像から被写体の3次元形状モデルを復元する方法であって、各カメラの被写体シルエット画像から視体積交差法により復元されるVisualHullの表面に存在するボクセルのオブジェクトらしさに関する尤度を算出する算出ステップと、前記オブジェクトらしさに関する尤度をもとにVisualHullの整形を行う第1の整形ステップと、前記VisualHullの整形が収束するまで、前記算出ステップと前記第1の整形ステップを繰り返し適用する第1の収束ステップと、前記収束ステップのVisualHullから獲得される3次元形状モデルのテクスチャ状態を評価する評価ステップと、前記3次元形状モデルのテクスチャ状態の評価をもとに3次元形状モデルの整形を行う第2の整形ステップと、前記3次元形状モデルの整形が収束するまで、前記評価ステップと前記第2の整形ステップを繰り返し適用する第2の収束ステップと、を含むことを特徴とする3次元形状モデルを復元する方法。前記算出ステップは、前記VisualHullの表面に存在する各ボクセルを各撮影カメラ視点に投影し、撮影カメラ間における投影画素値の分散を算出し、前記分散を正規化することで前記オブジェクトらしさに関する尤度を算出することを特徴とする請求項1に記載の方法。前記第1の整形ステップは、3次元ボクセル空間における各ボクセル間の隣接関係を考慮したエネルギー関数を定義し、前記エネルギー関数を最小化する枠組みで、各ボクセルを被写体領域または背景領域のいずれかに割り当てることで被写体領域を決定し、背景領域を不要部として除去することで、整形を行うことを特徴とする請求項1または2に記載の方法。前記第1の収束ステップは、前記不要部の除去を適用する前後の3次元形状モデルを比較し、表面として指定したボクセルより内側のボクセルが削られていない場合を収束とすることを特徴とする請求項3に記載の方法。前記評価ステップは、各撮影カメラ視点で、前記3次元形状モデルをもとに生成される自由視点画像と、前記撮影カメラ画像との差分画像を抽出することを特徴とする請求項1から4のいずれか1項に記載の方法。前記第2の整形ステップは、各撮影カメラ視点において、前記差分画像の画素間での隣接関係を考慮したエネルギー関数を定義し、前記エネルギー関数を最小化する枠組みで、各画素を被写体領域または背景領域のいずれに割り当てるかを決定し、背景領域と判断される整形候補内に存在する画素の光線を探索し、前記3次元形状モデルとの交点を不要部として除去することで、前記3次元形状モデルの整形を行うことを特徴とする請求項5に記載の方法。前記第2の収束ステップは、前記不要部の除去を適用する前後の3次元形状モデルを比較し、削られるボクセル数が、一定数以下である場合を収束とすることを特徴とする請求項6に記載の方法。多視点のカメラ画像から被写体の3次元形状モデルを復元するためのコンピュータを、各カメラの被写体シルエット画像から視体積交差法により復元されるVisualHullの表面に存在するボクセルのオブジェクトらしさに関する尤度を算出する算出手段と、前記オブジェクトらしさに関する尤度をもとにVisualHullの整形を行う第1の整形手段と、前記VisualHullの整形が収束するまで、前記算出手段と前記第1の整形手段を繰り返し適用する第1の収束手段と、前記収束ステップのVisualHullから獲得される3次元形状モデルのテクスチャ状態を評価する評価手段と、前記3次元形状モデルのテクスチャ状態の評価をもとに3次元形状モデルの整形を行う第2の整形手段と、前記3次元形状モデルの整形が収束するまで、前記評価手段と前記第2の整形手段を繰り返し適用する第2の収束手段と、して機能させ、3次元形状モデルを復元することを特徴とするプログラム。しかしながら、非特許文献2に記載の提案方式等のほとんどの手法は、ボクセル単体のPhotoConsistencyのみに注目して除去するか否かを決定するため、最終的に獲得されるVisualHullの復元精度は、被写体のテクスチャ状態に大きく依存するという問題があった。また、特願2009-195334号では、マッチング誤差の影響により復元精度が低下するという問題が顕著であった。また、非特許文献3の手法では、最終的な復元結果は、ステレオマッチングの探索精度に大きく依存するため、被写体のテクスチャ変化が少ない領域では十分な復元精度が得られないという問題が残っている。また、非特許文献4の手法では、ボクセル間の隣接関係に基づくエネルギー関数が、単純にボクセル単体のエネルギー値の平均で定義されているため、ボクセル空間中の隣接関係を十分に考慮できているとは言えない。また、グラフカットの適用が一回に限定されているのに加え、適用結果を評価するプロセスが存在しないため、最終的に復元される3次元形状モデルに、背景領域が含まれる可能性が高いと考えられる。以上の問題点を踏まえ、本発明では、ボクセル空間中での連続性を十分に考慮するとともに、整形過程の3次元形状モデルをもとに、実カメラ視点で生成される自由視点画像の画質を評価するプロセスを導入することで、3次元形状モデルのテクスチャ状態を考慮したVisualHull高精度化方法およびプログラムを提供することを目的とする。上記目的を実現するため本発明による3次元形状モデル高精度化方法は、多視点のカメラ画像から被写体の3次元形状モデルを復元する方法であって、各カメラの被写体シルエット画像から視体積交差法により復元されるVisualHullの表面に存在するボクセルのオブジェクトらしさに関する尤度を算出する算出ステップと、前記オブジェクトらしさに関する尤度をもとにVisualHullの整形を行う第1の整形ステップと、前記VisualHullの整形が収束するまで、前記算出ステップと前記第1の整形ステップを繰り返し適用する第1の収束ステップと、前記収束ステップのVisualHullから獲得される3次元形状モデルのテクスチャ状態を評価する評価ステップと、前記3次元形状モデルのテクスチャ状態の評価をもとに3次元形状モデルの整形を行う第2の整形ステップと、前記3次元形状モデルの整形が収束するまで、前記評価ステップと前記第2の整形ステップを繰り返し適用する第2の収束ステップとを含む。また、前記算出ステップは、前記VisualHullの表面に存在する各ボクセルを各撮影カメラ視点に投影し、撮影カメラ間における投影画素値の分散を算出し、前記分散を正規化することで前記オブジェクトらしさに関する尤度を算出することも好ましい。また、前記第1の整形ステップは、3次元ボクセル空間における各ボクセル間の隣接関係を考慮したエネルギー関数を定義し、前記エネルギー関数を最小化する枠組みで、各ボクセルを被写体領域または背景領域のいずれかに割り当てることで被写体領域を決定し、背景領域を不要部として除去することで、整形を行うことも好ましい。また、前記第1の収束ステップは、前記不要部の除去を適用する前後の3次元形状モデルを比較し、表面として指定したボクセルより内側のボクセルが削られていない場合を収束とすることも好ましい。また、前記評価ステップは、各撮影カメラ視点で、前記3次元形状モデルをもとに生成される自由視点画像と、前記撮影カメラ画像との差分画像を抽出することも好ましい。また、前記第2の整形ステップは、各撮影カメラ視点において、前記差分画像の画素間での隣接関係を考慮したエネルギー関数を定義し、前記エネルギー関数を最小化する枠組みで、各画素を被写体領域または背景領域のいずれに割り当てるかを決定し、背景領域と判断される整形候補内に存在する画素の光線を探索し、前記3次元形状モデルとの交点を不要部として除去することで、前記3次元形状モデルの整形を行うことも好ましい。また、前記第2の収束ステップは、前記不要部の除去を適用する前後の3次元形状モデルを比較し、削られるボクセル数が、一定数以下である場合を収束とすることも好ましい。上記目的を実現するため本発明によるプログラムは、多視点のカメラ画像から被写体の3次元形状モデルを復元するためのコンピュータを、各カメラの被写体シルエット画像から視体積交差法により復元されるVisualHullの表面に存在するボクセルのオブジェクトらしさに関する尤度を算出する算出手段と、前記オブジェクトらしさに関する尤度をもとにVisualHullの整形を行う第1の整形手段と、前記VisualHullの整形が収束するまで、前記算出手段と前記第1の整形手段を繰り返し適用する第1の収束手段と、前記収束ステップのVisualHullから獲得される3次元形状モデルのテクスチャ状態を評価する評価手段と、前記3次元形状モデルのテクスチャ状態の評価をもとに3次元形状モデルの整形を行う第2の整形手段と、前記3次元形状モデルの整形が収束するまで、前記評価手段と前記第2の整形手段を繰り返し適用する第2の収束手段として機能させ、3次元形状モデルを復元する。本発明により、VisualHullの高精度化を実現でき、最終的に復元される3次元形状をもとに生成される自由視点映像を高画質化することが可能となる。本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。提案手法は、ボクセル空間中での連続性を考慮した整形、および各視点での自由視点画像の画質を考慮した整形を特徴とする。本発明によるフローチャートを図1に示す。ある時刻1フレーム分の多視点カメラ画像と、各視点のカメラパラメータ、および各カメラの被写体シルエット画像から視体積交差法で復元されるVisualHullを入力として、最終的に整形済みの3次元形状モデルを出力し、処理を終了する。以下、本フローチャートに基づいて説明する。ステップ1:VisualHull表面近傍のボクセルのオブジェクトらしさを算出する。図2に示すように、ボクセル空間内のVisualHull表面近傍を各カメラ視点に投影する。視点ii=1,...,Nに投影された、カメラ画像内の座標をviとし、この点での投影画素値は、特定の色空間における多次元ベクトルxviとして表される。色空間は例えば、RGB空間が挙げられる。オブジェクトらしさに関する尤度を算出するため、投影画素値の各カメラ視点での平均および分散を算出する。平均ベクトルuviは、で算出される。ここで、nvisviは、オクルージョンのない視点表面近傍のボクセルが見える視点の数を表し、Σは、オクルージョンのない視点で行われる。RGB空間の場合、平均ベクトルuviは、urvi、ugvi、ubviの3つの成分を有する。分散ベクトルσviは、で算出される。同様に、RGB空間の場合、分散ベクトルσ2viは、σ2rvi、σ2gvi、σ2bviの3つの成分を有する。この分散を正規化することにより、オブジェクトらしさに関する尤度を求める。なお、正規化とは、σ2vii=1,...,Nの最大値でσ2viを除算して、最大値を1.0にしたものである。以下の式に現れているσ2は、すべて正規化された後の分散を表している。ステップ2:ボクセル空間中でのエネルギー関数を定義する。エネルギー関数は、で定義される。ここでv=v1,...,vi,...,vNは、カメラ画像内の座標をviを表し、λvは正の定数であり、avは、ボクセル空間中の各ボクセルを背景領域または被写体領域のいずれかに割り当てるかをそれぞれ0または1で表している。Uv;avは、各ボクセル単体の尤度値のみに依存するデータ項であり、avで指定される領域に割り当てる場合のエネルギー値は、以下の式で与えられる。ここで、Σは視点ii=1,...,Nについて総和を取り、thvcは、一定の閾値である。上式はRGB空間の場合の式を示している。上式で、例えば、thvc=1.2とした場合、σc2=0.5であるとき、thvc-σc2=0.7、σc2=0.5であるため、a=1、つまり被写体領域に割り当てた方が、エネルギー値が低くなる。σc2=0.7であるとき、thvc-σc2=0.5、σc2=0.7であるため、a=0、つまり背景領域に割り当てた方が、エネルギー値が低くなる。つまり、分散が小さいとき、被写体領域に割り当てた方が、エネルギー値が低くなる。一方、Vv;avは、平滑化項であり、隣接ボクセル間の尤度値の差をもとに以下の式で算出される.ここで、disi,jはボクセル間のユークリッド距離を表し、κvは正の定数である。定数κvは隣接ボクセルの全組み合わせNvに関する期待値の演算子<>を用いて以下のように算出される。ステップ3:エネルギー最小化に基づくVisualHullの整形を行う。上記エネルギー値Ev;avが最小になるように、画素値に0または1を割り当てる。これにより、VisualHullの整形を行う。エネルギー値の最小化は、例えば、Graphcutのアルゴリズムを用いる。ここで、av=0、つまり背景領域に割り当てられたボクセルを不要部として除去する。ステップ4:収束判定を行う。ステップ3で得られたVisualHullとステップ1の入力のVisualHullとを比較して、表面近傍のボクセルより内側のボクセルが削れていない場合、または削れたボクセルの数が一定の閾値内になったかどうかで収束判定を行う。収束が十分でないとき、ステップ3で得られたVisualHullをステップ1の入力としてステップ1からステップ3を繰り返す。ステップ5:各カメラ視点において、ステップ3で得られたVisualHullから獲得された3次元形状モデルをもとに自由視点画像を生成し、自由視点画像と撮影画像との差分画像を算出する。以下のステップでは、3次元形状モデルのテクスチャ状態を評価することにより、3次元形状モデルの整形を行う。ステップ6:各撮影カメラ視点で、差分画像中でのエネルギー関数を定義する。各撮影カメラ視点において、前記差分画像の画素間での隣接関係を考慮したエネルギー関数を以下のように定義する。で定義される。ここでpは、差分画像の各画素を表し、λpは正の定数であり、apは、差分画像の各画素を背景領域または被写体領域のいずれかに割り当てるかをそれぞれ0または1で表している。Uv;apは、差分画像の各画素の尤度値のみに依存するデータ項であり、apで指定される領域に割り当てる場合のエネルギー値は、以下の式で与えられる。ここで、Σは差分画像の各画素について総和を取り、xcpiは、画素piでの画素値xr、xg、またはxbであり、thpcは、一定の閾値である。上式はRGB空間の場合の式を示している。一方、Vv;apは、平滑化項であり、隣接画素間の画素値の差をもとに以下の式で算出される.ここで、dispi,jは画素間のユークリッド距離を表し、κpは正の定数であり、ベクトルxpiは、画素piでの画素値ベクトルxr、xg、xbである。定数κpは隣接画素間の全組み合わせNvに関する距離の期待値の演算子<>を用いて以下のように算出される。ステップ7:エネルギー最小化に基づき、VisualHullの整形候補を特定する。上記エネルギー値Ev;apが最小になるように、画素値に0または1を割り当てる。これにより、VisualHullの整形候補を特定する。エネルギー値の最小化は、例えば、Graphcutのアルゴリズムを用いる。ステップ8:VisualHull整形候補に含まれる各画素の光線を探索し、3次元形状モデルとの交点を除去する。上記のステップ5から7は、各視点ii=1,...,Nのカメラ画像に行われる。ap=0、つまり背景領域に割り当てた画素の光線を探索し、3次元形状モデルとの交点を不要部として除去する。これをすべてのカメラ画像に対して行い、不要なボクセルを削る。ステップ9:収束判定を行う。ステップ8で得られた3次元形状モデルとステップ5の入力の3次元形状モデルとを比較して、表面近傍の内側のボクセルが削れていない場合、または削れたボクセルの数が一定の閾値内になったかどうかで収束判定を行う。収束が十分でないとき、ステップ8で得られた3次元形状モデルをステップ5の入力としてステップ5からステップ8を繰り返す。次に、本発明の処理結果を実験結果により示す。実験は、凹領域を含む被写体を含む多視点画像を対象に、視体積交差法で復元されるVisualHullに本発明の手法を適用した結果得られる3次元形状の精度を評価する。実験データとして、CGモデルを23視点に投影した画像と各視点のカメラパラメータ中心射影行列を用いた。図3は、多視点カメラ画像の例を示す。図3aは視点02からのカメラ画像を、図3bは視点06からのカメラ画像を示す。図4は、オリジナルの3次元形状モデルを示す。図5は、入力のVisualHullを示す。図6は、ステップ4を終了した時点で整形されたVisualHullを示す。図7は、最終的に整形された3次元形状モデルを示す。図4と図5を比較すると、視体積交差法のみで作成されたVisualHullは、物体の凹領域を復元できていないことが分かる。図4と図6を比較すると、本発明のステップ1から4の処理で、物体の凹領域が復元されていることが分かる。図6と図7を比較すると、本発明のステップ5から9の処理で、物体の凹領域がより正確に再現できていることが分かる。上記の実験結果を定量的に示す。表1は、オリジナルの3次元形状モデルに対するPrecision/Recall/F値を示す。ここで、Recallは誤って削られたボクセルの比率を示し、Precisionは、本来削るべきボクセルが削れていない比率を示す。F値は、RecallとPrecisionをもとに計算された、3次元形状モデルの正確さを表す指標である。表1によると、F値は、最終的に整形された3次元形状モデルが最も良い値を示し、本発明のステップ1から9を実行することにより、物体の凹領域が復元されていることが分かる。以上のように、本発明では、物体の凹領域の復元を行うことができ、VisualHullの高精度化を実現でき、最終的に復元される3次元形状をもとに生成される自由視点映像を高画質化することが可能となる。また、以上述べた実施形態は全て本発明を例示的に示すものであって限定的に示すものではなく、本発明は他の種々の変形態様および変更態様で実施することができる。従って本発明の範囲は特許請求の範囲およびその均等範囲によってのみ規定されるものである。"