(57)【要約】【課題】１台のカメラにより対象物の３次元形状を精度高く復元することが可能な３次元形状復元装置を提供する。【解決手段】対象物・影集合分離手段１２が、複数の光源１０２−１〜４により構成された照明空間で撮影された画像から、対象物画像及びその影集合画像を分離する。３次元格子量子化データ生成手段１３，１４が、カメラ１０１と対象物画像、光源１０２−１〜４と影集合画像を用いたシルエット法により、対象物１００の３次元データをそれぞれ生成する。そして、ＡＮＤ領域抽出手段１５が、ＡＮＤ領域を抽出し、３次元形状データを復元する。また、影集合分離手段１６が影集合から光源１０２−１〜４に対応した影を分離し、３次元格子量子化データ生成手段１７がこの影に基づいて３次元データを生成し、ＡＮＤ領域抽出手段１８が、３次元格子量子化データ生成手段１３，１７により生成された３次元データから、精度の高い３次元形状データを復元する。【選択図】図１７
2008107877.tif 000002
【特許請求の範囲】
【請求項１】
対象物を含む画像から対象物の３次元形状を復元する３次元形状復元装置において、
複数の光源により構成された照明空間内で１台のカメラにより撮影されたカメラキャリブレーションパターンの画像を入力し、該カメラキャリブレーションパターン画像からカメラパラメータを算出するカメラパラメータ算出手段と、
前記照明空間内で１台のカメラにより撮影された対象物及びその影を含む対象物撮影画像を入力し、該対象物撮影画像から前記対象物の画像及び前記対象物の影のみから成る影集合画像を分離し、前記対象物撮影画像における対象物の２次元画像領域及び影集合の２次元画像領域を求める対象物・影集合分離手段と、
該対象物・影集合分離手段により求められた対象物の２次元画像領域、及び前記カメラパラメータ算出手段により算出されたカメラパラメータを用いて、対象物画像に基づく３次元立体領域を生成する第１の３次元データ生成手段と、
前記対象物・影集合分離手段により求められた影集合の２次元画像領域、及び前記カメラパラメータ算出手段により算出されたカメラパラメータを用いて、影集合画像に基づく前記光源に対応したそれぞれの３次元立体領域を生成する第２の３次元データ生成手段と、
前記第１の３次元データ生成手段により生成された対象物画像に基づく３次元立体領域、及び第２の３次元データ生成手段により生成された影集合画像に基づく光源に対応したそれぞれの３次元立体領域について、これらの３次元立体領域のデータに論理積の演算を施し、対象物画像及び影集合画像に基づく３次元立体領域を生成する第３の３次元データ生成手段とを備え、
該第３の３次元データ生成手段により生成された３次元立体領域から３次元形状を復元することを特徴とする３次元形状復元装置。
【請求項２】
請求項１に記載の３次元形状復元装置において、
さらに、前記第３の３次元データ生成手段により生成された３次元立体領域、及び前記光源の世界座標を用いて、前記光源から光をあてた場合の仮想影を光源毎に生成して３次元平面領域を求め、該光源毎の仮想影の３次元平面領域、及び前記影集合の２次元画像領域に対応する３次元平面領域を用いて、光源毎の影の３次元平面領域を生成する第４の３次元データ生成手段と、
該第４の３次元データ生成手段により生成された光源毎の影の３次元平面領域、及び前記光源の世界座標を用いて、光源及び影に基づく光源に対応したそれぞれの３次元立体領域を生成する第５の３次元データ生成手段と、
前記第１の３次元データ生成手段により生成された対象物画像に基づく３次元立体領域、及び第５の３次元データ生成手段により生成された光源及び影に基づく光源に対応したそれぞれの３次元立体領域を用いて、これらの３次元立体領域のデータに論理積の演算を施し、対象物の３次元立体領域を生成する第６の３次元データ生成手段とを備え、
該第６の３次元データ生成手段により生成された３次元立体領域から３次元形状を復元することを特徴とする３次元形状復元装置。
【請求項３】
請求項１または２に記載の３次元形状復元装置において、
前記対象物・影集合分離手段が、クロマキー処理により、対象物撮影画像から対象物画像及び影集合画像を分離することを特徴とする３次元形状復元装置。
【請求項４】
請求項１または２に記載の３次元形状復元装置において、
前記第１、第２及び第５の３次元データ生成手段が、対象物を囲むボクセル空間の世界座標を用いたシルエット法により、それぞれ３次元立体領域を生成することを特徴とする３次元形状復元装置。
【請求項５】
請求項１から４までのいずれか一項に記載の３次元形状復元装置において、
前記第４の３次元データ生成手段が、対象物・影集合分離手段により求められた影集合の２次元画像からその輪郭を抽出し、該抽出した輪郭についてその内部の画素を所定の領域に分解し、該所定の領域と前記第３の３次元データ生成手段により生成された３次元立体領域を２次元画像に射影した領域とにより論理積の演算を施し、光源毎の影の３次元平面領域を生成することを特徴とする３次元形状復元装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラが撮影した対象物の画像から３次元形状を復元する装置に関する。
【背景技術】
【０００２】
従来、「ｓｈａｐｅ  ｆｒｏｍ  ｓｈａｄｉｎｇ」と呼ばれている、画像の濃淡情報から対象物の形状を復元する手法が知られている。この手法は、照明条件や反射特性の正確な事前知識を必要とするが、実際にはこれらを得ることができない場合が多いことから、今のところ実験的な水準にとどまっている。また、従来の復元手法には、画像の投影変換を正射影で近似し、光源を無限遠方にある点光源とみなすことにより、陰影から形状を復元するものがある。このような単純化手法は、問題の定式化を簡単にするものであるが、仮定または近似により復元された形状には誤差が存在する。
【０００３】
これに対し、非特許文献１に記載の復元手法は、より一般的な条件を考慮した画像の投影変換モデルとして正射影ではなく透視投影を仮定し、対象物の表面上に陰影を生成する光源が、対象から有限の距離にある点光源であるとして、この一般的な条件を定式化したものである。すなわち、光源からの距離が等しい曲線についてその性質を調べ、これを用いて画像の濃淡からこの曲線を発展させる手法を定式化したものである。この手法を内視鏡画像へ応用した結果、胃壁の形状を良好に復元することでき、この手法の有効性が確認されている。
【０００４】
また、他の復元手法として、非特許文献２に記載されているように、複数台のカメラを用いて撮影された画像から、対象物のシルエットを抽出し、そのシルエットを用いて視体積交差法及びステレオマッチング法を行うことにより、対象物の３次元形状モデルを生成するものもある。また、特許文献１に記載の３次元形状復元手法もある。
【０００５】
【非特許文献１】岡谷貴之、“画像陰影からの形状復元に関する研究”、［online］、東京大学、［平成１８年９月２０日検索］、インターネット＜ＵＲＬ： http://www.fractal.is.tohoku.ac.jp/~okatani/pub/pdf/thesis.pdf＞
【非特許文献２】冨山仁博、片山美和、岩舘祐一、今泉浩幸、“視体積交差法とステレオマッチング法を用いた多視点画像からの３次元動オブジェクト生成手法”、映像情報メディア学会誌、５８、６、ｐｐ．７９７−８０６、２００４
【特許文献１】特開２００３−２７１９２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、前述の非特許文献１のように、対象物の陰影情報に基づいて形状を復元する手法では、対象物の表面形状を復元することはできるが、対象物全体の３次元形状を復元することができない。このため、ユーザが鑑賞できる範囲は対象物表面のみに限定され、視点の自由度が小さいという問題があった。
【０００７】
また、前述の非特許文献２のように、複数台のカメラにより撮影された画像に基づいて３次元形状を復元する手法では、複数台のカメラを同期するように設置する必要がある。このため、大きな手間と設備が必要になり、さらには空間的な制約があるという問題があった。
【０００８】
そこで、本発明は前記課題を解決するためになされたものであり、その目的は、１台のカメラにより対象物の３次元形状を精度高く復元することが可能な３次元形状復元装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明では、前記課題を以下の手段により解決する。すなわち、本発明による３次元形状復元装置は、対象物を含む画像から対象物の３次元形状を復元する３次元形状復元装置において、複数の光源により構成された照明空間内で１台のカメラにより撮影されたカメラキャリブレーションパターンの画像を入力し、該カメラキャリブレーションパターン画像からカメラパラメータを算出するカメラパラメータ算出手段と、前記照明空間内で１台のカメラにより撮影された対象物及びその影を含む対象物撮影画像を入力し、該対象物撮影画像から前記対象物の画像及び前記対象物の影のみから成る影集合画像を分離し、前記対象物撮影画像における対象物の２次元画像領域及び影集合の２次元画像領域を求める対象物・影集合分離手段と、該対象物・影集合分離手段により求められた対象物の２次元画像領域、及び前記カメラパラメータ算出手段により算出されたカメラパラメータを用いて、対象物画像に基づく３次元立体領域を生成する第１の３次元データ生成手段と、前記対象物・影集合分離手段により求められた影集合の２次元画像領域、及び前記カメラパラメータ算出手段により算出されたカメラパラメータを用いて、影集合画像に基づく前記光源に対応したそれぞれの３次元立体領域を生成する第２の３次元データ生成手段と、前記第１の３次元データ生成手段により生成された対象物画像に基づく３次元立体領域、及び第２の３次元データ生成手段により生成された影集合画像に基づく光源に対応したそれぞれの３次元立体領域について、これらの３次元立体領域のデータに論理積の演算を施し、対象物画像及び影集合画像に基づく３次元立体領域を生成する第３の３次元データ生成手段とを備え、該第３の３次元データ生成手段により生成された３次元立体領域から３次元形状を復元することを特徴とする。
【００１０】
また、本発明による３次元形状復元装置は、さらに、前記第３の３次元データ生成手段により生成された３次元立体領域、及び前記光源の世界座標を用いて、前記光源から光をあてた場合の仮想影を光源毎に生成して３次元平面領域を求め、該光源毎の仮想影の３次元平面領域、及び前記影集合の２次元画像領域に対応する３次元平面領域を用いて、光源毎の影の３次元平面領域を生成する第４の３次元データ生成手段と、該第４の３次元データ生成手段により生成された光源毎の影の３次元平面領域、及び前記光源の世界座標を用いて、光源及び影に基づく光源に対応したそれぞれの３次元立体領域を生成する第５の３次元データ生成手段と、前記第１の３次元データ生成手段により生成された対象物画像に基づく３次元立体領域、及び第５の３次元データ生成手段により生成された光源及び影に基づく光源に対応したそれぞれの３次元立体領域を用いて、これらの３次元立体領域のデータに論理積の演算を施し、対象物の３次元立体領域を生成する第６の３次元データ生成手段とを備え、該第６の３次元データ生成手段により生成された３次元立体領域から３次元形状を復元することを特徴とする。
【００１１】
この場合、前記対象物・影集合分離手段が、クロマキー処理により、対象物撮影画像から対象物画像及び影集合画像を分離することが好適である。
【００１２】
また、前記第１、第２及び第５の３次元データ生成手段が、対象物を囲むボクセル空間の世界座標を用いたシルエット法により、それぞれ３次元立体領域を生成することが好適である。
【００１３】
また、前記第４の３次元データ生成手段が、前記第４の３次元データ生成手段が、対象物・影集合分離手段により求められた影集合の２次元画像からその輪郭を抽出し、該抽出した輪郭についてその内部の画素を所定の領域に分解し、該所定の領域と前記第３の３次元データ生成手段により生成された３次元立体領域を２次元画像に射影した領域とにより論理積の演算を施し、光源毎の影の３次元平面領域を生成することが好適である。
【発明の効果】
【００１４】
以上のように、本発明によれば、１台のカメラにより対象物の３次元形状を精度高く復元することが可能な３次元形状復元装置を実現することが可能となる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を実施するための最良の形態について図面を用いて詳細に説明する。
図１は、本発明の実施の形態による３次元形状復元装置を用いて、対象物の３次元形状データを復元するために必要な照明空間を説明する図である。この照明空間は、対象物の３次元形状データを復元するために用意され、３次元形状データが復元される球である対象物１００、１台のカメラ１０１、及び４つの光源１０２−１〜４が設けられている。
【００１６】
図１７は、本発明の実施の形態による３次元形状復元装置の構成を示すブロック図である。この３次元形状復元装置１は、図１に示した照明空間を用いてカメラ１０１により撮影さたカメラキャリブレーション撮影画像及び対象物撮影画像から、対象物１００の３次元形状データを復元する装置であり、カメラパラメータ算出手段１１、対象物・影集合分離手段１２、３次元格子量子化データ生成手段（第１の３次元データ生成手段）１３、３次元格子量子化データ生成手段（第２の３次元データ生成手段）１４、ＡＮＤ領域抽出手段（第３の３次元データ生成手段）１５、影集合分離手段（第４の３次元データ生成手段）１６、３次元格子量子化データ生成手段（第５の３次元データ生成手段）１７、ＡＮＤ領域抽出手段（第６の３次元データ生成手段）１８、及び表面形状復元手段１９を備えている。
【００１７】
図２は、図１７に示す３次元形状復元装置１により実現される処理のフローチャートを示す図である。以下、図１７に示す３次元形状復元装置１の構成、及び図２に示すフローチャートについて詳細に説明する。
【００１８】
（１）撮影
まず、ユーザは、カメラ１０１により、カメラキャリブレーションパターン及び対象物を撮影する（ステップＳ２０１）。具体的には、３次元形状復元装置１がカメラ１０１のカメラパラメータを算出できるように、図１に示した照明空間にカメラキャリブレーションパターンを配置し、カメラ１０１により、カメラキャリブレーションパターンを撮影する。図３は、カメラキャリブレーションパターン撮影画像を示す図である。
【００１９】
そして、３次元形状復元装置１により３次元形状が復元される対象物１００の球を、図１に示した照明空間に配置し、カメラ１０１により、その対象物を撮影する。図４は、対象物撮影画像を示す図である。
【００２０】
（２）カメラパラメータ算出
カメラパラメータ算出手段１１は、カメラ１０１から図３に示したカメラキャリブレーション撮影画像、及びカメラ１０１から図４に示した対象物撮影画像を入力し、カメラパラメータを算出する（ステップＳ２０２）。カメラパラメータは、カメラ１０１の位置、向き、焦点距離、回転行列、平行移動ベクトル等により構成され、ここでは、以下の（１）〜（３）式に示すパラメータＡ，Ｒ，Ｔをいう。
【数１】
2008107877.tif 000003
ここで、世界座標とは、カメラキャリブレーションパターン上に構成される３次元座標であり、Ｘ−Ｙ軸による平面が地面になり、Ｚ軸がその地面と垂直になるように構成される。また、カメラ座標とは、カメラ１０１からみた２次元座標（画像座標）である。
【００２１】
（３）クロマキー処理による対象物と影集合との分離
対象物・影集合分離手段１２は、カメラ１０１から対象物撮影画像を入力し、クロマキー処理により、この対象物撮影画像から図５に示す対象物画像及び図６に示す影集合Ａ画像を抽出し、さらに、これらの対象物画像と影集合Ａ画像とを合成して図７に示す影集合Ｂ画像を生成する（ステップＳ２０３）。
【００２２】
具体的には、クロマキー処理により、対象物撮影画像における対象物及び影の色素値と背景の色素値とを用いて、これらの色素値に対してしきい値処理を施し、対象物及び影と背景との間の境界を特定する。そして、対象物及び影の画像に対して、対象物の色素値及び輝度と影の色素値及び輝度とを用いて、これらに対してしきい値処理を施し、対象物と影との間の境界を特定する。これにより、図５に示す対象物画像及び図６に示す影集合Ａ画像をそれぞれ抽出する。そして、これらを合成して図７に示す影集合Ｂ画像を生成する。ここで、図６の影集合Ａ画像では、対象物１００により隠れてしまった部分の影を抽出することができない。そこで、この隠れてしまった部分の影の抽出を行うために、図５に示す対象物画像と図６に示す影集合Ａ画像とを合成して、図７に示す影集合Ｂ画像を生成する。この影集合Ｂを、光源１０２によって発生した対象物１００の影集合とする。
【００２３】
（４）カメラと対象物によるシルエット法
３次元格子量子化データ生成手段１３は、カメラパラメータ算出手段１１からカメラパラメータを、対象物・影集合分離手段１２から対象物画像をそれぞれ入力し、シルエット法により、対象物画像に基づく３次元格子量子化データを生成する（ステップＳ２０４）。
【００２４】
具体的には、対象物画像における対象物１００の画像座標を（ｕｏｂｊｅｃｔ，ｖｏｂｊｅｃｔ）とし、この対象物１００の世界座標を（Ｘｏｂｊｅｃｔ，Ｙｏｂｊｅｃｔ，Ｚｏｂｊｅｃｔ）とし、世界座標において対象物１００を取り囲むボクセル空間を用意し、このボクセル空間の世界座標を（Ｘｂｏｘ，Ｙｂｏｘ，Ｚｂｏｘ）とする。この場合、カメラパラメータの（１）〜（３）式及び以下の（４）式を用いて、得られた（ｕ，ｖ）が（ｕｏｂｊｅｃｔ，ｖｏｂｊｅｃｔ）に含まれるときには、以下の（５）式に示すように、（Ｘｂｏｘ，Ｙｂｏｘ，Ｚｂｏｘ）が（Ｘｏｂｊｅｃｔ，Ｙｏｂｊｅｃｔ，Ｚｏｂｊｅｃｔ）に含まれることになる。このシルエット法による処理をボクセル空間における全てのボクセルに対して行い、対象物１００が存在すると考えられる、対象物画像に基づく３次元格子量子化データ（Ｘｏｂｊｅｃｔ，Ｙｏｂｊｅｃｔ，Ｚｏｂｊｅｃｔ）を生成する。
【数２】
2008107877.tif 000004
【数３】
2008107877.tif 000005
【００２５】
図８は、カメラと対象物によるシルエット法を説明する図である。図８の左図が真上から見た図であり、右図が斜め上から見た図である。左図では太線で囲まれた領域、右図ではカメラ１０１から伸びた錐体のうちのボクセル空間に含まれる領域が、それぞれ対象物画像に基づく３次元格子量子化データ（Ｘｏｂｊｅｃｔ，Ｙｏｂｊｅｃｔ，Ｚｏｂｊｅｃｔ）である。対象物１００は、この対象物画像に基づく３次元格子量子化データ（Ｘｏｂｊｅｃｔ，Ｙｏｂｊｅｃｔ，Ｚｏｂｊｅｃｔ）の領域内に存在する。
【００２６】
（５）光源と影集合によるシルエット法
３次元格子量子化データ生成手段１４は、カメラパラメータ算出手段１１からカメラパラメータを、対象物・影集合分離手段１２から影集合Ｂ画像をそれぞれ入力し、シルエット法により、影集合Ｂ画像に基づく光源毎の３次元格子量子化データを生成する（ステップＳ２０５）。
【００２７】
具体的には、影集合Ｂの画像座標を（ｕＳＨＡＤＯＷ，ｖＳＨＡＤＯＷ）とした場合に、カメラパラメータの（１）〜（３）式及び以下の（６）式を用いて、影集合Ｂの画像座標（ｕＳＨＡＤＯＷ，ｖＳＨＡＤＯＷ）を影集合Ｂの世界座標（ｘＳＨＡＤＯＷ，ｙＳＨＡＤＯＷ，０）に変換する。
【数４】
2008107877.tif 000006
【００２８】
そして、影集合Ｂの世界座標（ｘＳＨＡＤＯＷ，ｙＳＨＡＤＯＷ，０）と光源１０２−１〜４の世界座標（Ｘｌｉｇｈｔ＿Ｎ，Ｙｌｉｇｈｔ＿Ｎ，Ｚｌｉｇｈｔ＿Ｎ）とを結ぶ直線の式を、以下の（７）式により求める。尚、この光源１０２−１〜４の世界座標（Ｘｌｉｇｈｔ＿Ｎ，Ｙｌｉｇｈｔ＿Ｎ，Ｚｌｉｇｈｔ＿Ｎ）は、図１に示した照明空間により予め設定される値である。ここで、Ｎは、４つの光源１０２−１〜４の番号１〜４を示す。また、この直線とボクセル空間におけるボクセルとの間の交点を以下の（８）式により求める。このシルエット法による処理を、影集合Ｂを構成する全ての画素に対して行い、対象物１００が存在すると考えられる、影集合Ｂ画像に基づく光源毎の３次元格子量子化データ（ＸＳＨＡＤＯＷ＿Ｎ，ＹＳＨＡＤＯＷ＿Ｎ，ＺＳＨＡＤＯＷ＿Ｎ）を生成する。
【数５】
2008107877.tif 000007
【数６】
2008107877.tif 000008
【００２９】
図９は、光源と影集合Ｂによるシルエット法を説明する図である。図９の左図が光源１０２−１に対して前述の処理を行った様子を真上から見た図であり、右図が斜め上から見た図である。左図では太線で囲まれた領域、右図では光源１０２−１から伸びた錐体のうちのボクセル空間に含まれる領域（ボクセル空間内にあり、かつ光源１０２−１と影集合Ｂとを結ぶ直線の集合）が、影集合Ｂ画像に基づく光源１０２−１の３次元格子量子化データ（ＸＳＨＡＤＯＷ＿１，ＹＳＨＡＤＯＷ＿１，ＺＳＨＡＤＯＷ＿１）である。同様にして、光源１０２−２から伸びた錐体のうちのボクセル空間に含まれる領域（ボクセル空間内にあり、かつ光源１０２−２と影集合Ｂとを結ぶ直線の集合）が、影集合Ｂ画像に基づく光源１０２−２の３次元格子量子化データ（ＸＳＨＡＤＯＷ＿２，ＹＳＨＡＤＯＷ＿２，ＺＳＨＡＤＯＷ＿２）である。影集合Ｂ画像に基づく光源１０２−３の３次元格子量子化データ（ＸＳＨＡＤＯＷ＿３，ＹＳＨＡＤＯＷ＿３，ＺＳＨＡＤＯＷ＿３）、影集合Ｂ画像に基づく光源１０２−４の３次元格子量子化データ（ＸＳＨＡＤＯＷ＿４，ＹＳＨＡＤＯＷ＿４，ＺＳＨＡＤＯＷ＿４）についても同様である。対象物１００は、この影集合Ｂ画像に基づく３次元格子量子化データ（ＸＳＨＡＤＯＷ＿Ｎ，ＹＳＨＡＤＯＷ＿Ｎ，ＺＳＨＡＤＯＷ＿Ｎ）の領域内に存在する。
【００３０】
（６）影集合分離前のＡＮＤ領域の抽出
ＡＮＤ領域抽出手段１５は、３次元格子量子化データ生成手段１３から対象物画像に基づく３次元格子量子化データを、３次元格子量子化データ生成手段１４から影集合Ｂ画像に基づく光源毎の３次元格子量子化データをそれぞれ入力し、これら５つの３次元格子量子化データでＡＮＤ（論理積）演算を行い、対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データを生成する（ステップＳ２０６）。
【００３１】
３次元格子量子化データ生成手段１３，１４により生成された３次元格子量子化データは、それぞれ「少なくともこの３次元量子化データの中に対象物１００が存在する」ことを意味する対象物１００の３次元情報である。そこで、カメラ１０１と対象物１００とを結ぶ１つの錐体、及び、各光源１０２−１〜４と影集合Ｂとを結ぶ４つの錐体の合計５つの錐体に対し、ＡＮＤ領域を得ることにより、対象物画像及び影集合Ｂ画像に基づく（一層限定された対象物１００の）３次元格子量子化データ（ＸＭＯＤＥＬ，ＹＭＯＤＥＬ，ＺＭＯＤＥＬ）を生成する。
【００３２】
図１０は、影集合分離前のＡＮＤ領域を説明する図であり、前述のＡＮＤ演算を行った様子を真上から見た図である。図１０において太線で囲まれた領域が、対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データ（ＸＭＯＤＥＬ，ＹＭＯＤＥＬ，ＺＭＯＤＥＬ）である。対象物１００は、図１０に示したように、対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データ（ＸＭＯＤＥＬ，ＹＭＯＤＥＬ，ＺＭＯＤＥＬ）の領域内に存在する。
【００３３】
このように、対象物１００は、対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データ（ＸＭＯＤＥＬ，ＹＭＯＤＥＬ，ＺＭＯＤＥＬ）の領域内に存在するが、図１０によれば、対象物１００以外に多くの余分な領域が存在している。これは、それぞれの光源１０２−１〜４に対して影集合Ｂによるシルエット法を用いているからである。この余分な領域を除去し、一層精度高く対象物１００を復元するためには、図６に示した影集合Ａ画像の影集合から、各光源１０２−１〜４によって発生した影を分離し、光源１０２−１〜４にそれぞれ対応した影のみによるシルエット法を用いる必要がある。以下、詳細に説明する。
【００３４】
（７）影集合の領域分解
影集合分離手段１６は、対象物・影集合分離手段１２から対象物画像及び影集合Ａ画像を、ＡＮＤ領域抽出手段１５から対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データをそれぞれ入力する。そして、影集合Ａ画像から影集合Ａの輪郭を抽出し、その抽出した輪郭内の画素について領域を分解してラベリングする（ステップＳ２０７）。
【００３５】
具体的には、影集合Ａ画像において各画素の輝度値を微分し、近隣の画素における微分値の差と予め設定されたしきい値とを比較し、微分値が大きく変化する画素の箇所を影集合Ａの輪郭として抽出する。そして、その輪郭内部において各領域に分解してラベリングする。図１１は、領域分解された影集合Ａを説明する図である。図１１において、影集合Ａは、１〜９の番号にラベリングされた９つの領域に分解されている。
【００３６】
（８）影集合の分離
また、影集合分離手段１６は、ＡＮＤ領域抽出手段１５から入力した対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データに対し、光源１０２−１〜４のうちの１つの光源からそれぞれ仮想的に光をあてた場合の、光源毎の影座標（影の世界座標）を生成する（ステップＳ２０８）。
【００３７】
具体的には、まず、対象物画像及び影集合Ｂ画像に基づく３次元格子量子化データ（ＸＭＯＤＥＬ，ＹＭＯＤＥＬ，ＺＭＯＤＥＬ）に対し、光源１０２−１〜４のうちの１つの光源からそれぞれ仮想的に光をあてた場合の仮想影ａ〜ｄの世界座標（ｘｖｉｒｔｕａｌ＿ｓｈａｄｏｗ＿Ｎ，ｙｖｉｒｔｕａｌ＿ｓｈａｄｏｗ＿Ｎ，ｚｖｉｒｔｕａｌ＿ｓｈａｄｏｗ＿Ｎ）を、以下の（９）式により求める。
【数７】
2008107877.tif 000009
【００３８】
図１２は、（９）式により求めた仮想影画像を示す図である。仮想影ａは光源１０２−１から仮想的に光をあてた場合の影であり、同様に、仮想影ｂ，ｃ，ｄは光源１０２−２，３，４からそれぞれ仮想的に光をあてた場合の影である。
【００３９】
そして、仮想影ａ〜ｄの世界座標と、影集合分離手段１６により領域分解された影集合Ａの世界座標とを用いて、仮想影ａ〜ｂと領域分解された影集合Ａとの間でＡＮＤ演算を行い、それぞれＡＮＤ領域を抽出する。ここで、影集合分離手段１６により領域分解された影集合Ａの世界座標は、前述の（６）式に示したように、影集合Ａび２次元の画像座標及び前述の（１）〜（３）式のカメラパラメータに基づいて求められる。
【００４０】
また、抽出したＡＮＤ領域の画素数、及び影集合分離手段１６により分解された領域毎の画素数をそれぞれ求め、その分解領域の画像数におけるＡＮＤ領域の画素数の割合が予め設定されたしきい値以上の場合に、その分解領域におけるＡＮＤ領域を対象物１００の影とする。また、対象物１００により隠れてしまう欠損を補うために、対象物画像を用いてその対象物１００を前述の影に加える。これにより、光源１０２−１〜４に対応した影を影集合Ａから抽出することができ、対象物１００を加えた光源毎の影座標（ｘｓｈａｄｏｗ＿Ｎ，ｙｓｈａｄｏｗ＿Ｎ，ｚｓｈａｄｏｗ＿Ｎ）を得ることができる。ここで、対象物１００の世界座標は、前述の（６）式に示したように、対象物の２次元の画像画像及び前述の（１）〜（３）式のカメラパラメータに基づいて求められる。
【００４１】
図１３は、影集合Ａの分離の流れを説明する図である。図１３に示すように、領域分解された影集合Ａ及び仮想影ｄによるＡＮＤ演算、さらには分解領域毎にしきい値処理が施されてＡＮＤ領域が得られ、それに対象物１００が加えられて、光源１０２−４の影座標（ｘｓｈａｄｏｗ＿４，ｙｓｈａｄｏｗ＿４，ｚｓｈａｄｏｗ＿４）が得られる。同様にして、図１４に示すように、光源１０２−１，２，３の影座標（ｘｓｈａｄｏｗ＿１，ｙｓｈａｄｏｗ＿１，ｚｓｈａｄｏｗ＿１），（ｘｓｈａｄｏｗ＿２，ｙｓｈａｄｏｗ＿２，ｚｓｈａｄｏｗ＿２），（ｘｓｈａｄｏｗ＿３，ｙｓｈａｄｏｗ＿３，ｚｓｈａｄｏｗ＿３）がそれぞれ得られる。
【００４２】
（９）光源と影によるシルエット法
３次元格子量子化データ生成手段１７は、影集合分離手段１６から光源毎の影座標を入力し、シルエット法により、光源及び影に基づく光源毎の３次元格子量子化データを生成する（ステップＳ２０９）。
【００４３】
具体的には、影座標（影の世界座標）（ｘｓｈａｄｏｗ＿Ｎ，ｙｓｈａｄｏｗ＿Ｎ，ｚｓｈａｄｏｗ＿Ｎ）と光源１０２−１〜４の世界座標（Ｘｌｉｇｈｔ＿Ｎ，Ｙｌｉｇｈｔ＿Ｎ，Ｚｌｉｇｈｔ＿Ｎ）とを結ぶ直線の式を、以下の（１０）式により求める。また、この直線とボクセル空間におけるボクセルとの間の交点を以下の（１１）式により求める。このシルエット法による処理を、影座標を構成する全ての画素に対して行い、対象物１００が存在すると考えられる、光源及び影に基づく光源毎の３次元格子量子化データ（Ｘｓｈａｄｏｗ＿Ｎ，Ｙｓｈａｄｏｗ＿Ｎ，Ｚｓｈａｄｏｗ＿Ｎ）を生成する。
【数８】
2008107877.tif 000010
【数９】
2008107877.tif 000011
【００４４】
図１５は、光源と影によるシルエット法を説明する図である。図１５の左図が光源１０２−１に対して前述の処理を行った様子を真上から見た図であり、右図が斜め上から見た図である。左図では太線で囲まれた領域、右図では光源１０２−１から伸びた錐体のうちのボクセル空間に含まれる領域（ボクセル空間内にあり、かつ光源１０２−１と影ａとを結ぶ直線の集合）が、光源１０２−１及び影ａに基づく３次元格子量子化データ（Ｘｓｈａｄｏｗ＿１，Ｙｓｈａｄｏｗ＿１，Ｚｓｈａｄｏｗ＿１）である。同様にして、光源１０２−２から伸びた錐体のうちのボクセル空間に含まれる領域（ボクセル空間内にあり、かつ光源１０２−２と影ｂとを結ぶ直線の集合）が、光源１０２−２及び影ｂに基づく３次元格子量子化データ（Ｘｓｈａｄｏｗ＿２，Ｙｓｈａｄｏｗ＿２，Ｚｓｈａｄｏｗ＿２）である。光源１０２−３及び影ｃに基づく３次元格子量子化データ（Ｘｓｈａｄｏｗ＿３，Ｙｓｈａｄｏｗ＿３，Ｚｓｈａｄｏｗ＿３）、光源１０２−４及び影ｄに基づく３次元格子量子化データ（Ｘｓｈａｄｏｗ＿４，Ｙｓｈａｄｏｗ＿４，Ｚｓｈａｄｏｗ＿４）についても同様である。対象物１００は、この光源及び影に基づく光源毎の３次元格子量子化データ（Ｘｓｈａｄｏｗ＿Ｎ，Ｙｓｈａｄｏｗ＿Ｎ，Ｚｓｈａｄｏｗ＿Ｎ）の領域内に存在する。
【００４５】
（１０）影集合分離後のＡＮＤ領域の抽出
ＡＮＤ領域抽出手段１８は、３次元格子量子化データ生成手段１７から光源及び影に基づく光源毎の３次元格子量子化データを、３次元格子量子化データ生成手段１３から対象物画像に基づく３次元格子量子化データをそれぞれ入力し、これら５つの３次元格子量子化データでＡＮＤ演算を行い、対象物１００の３次元格子量子化データ（Ｘｍｏｄｅｌ，Ｙｍｏｄｅｌ，Ｚｍｏｄｅｌ）を生成する（ステップＳ２１０）。
【００４６】
図１６は、影集合分離後のＡＮＤ領域を説明する図であり、前述のＡＮＤ演算を行った様子を真上から見た図である。図１６において太線で囲まれた領域が、対象物１００の３次元格子量子化データ（Ｘｍｏｄｅｌ，Ｙｍｏｄｅｌ，Ｚｍｏｄｅｌ）である。図１６に示した影集合分離後のＡＮＤ領域と、図１０に示した影集合分離前のＡＮＤ領域とを比較すると、図１６のＡＮＤ領域の方が対象物１００である球の形状に近いことがわかる。
【００４７】
このように、影集合Ａから各光源１０２−１〜４に対応した影ａ〜ｄを分離し、その影によるシルエット法を用いることにより、対象物１００である球に近いＡＮＤ領域を得ることができる。つまり、一層正確な対象物１００の３次元格子量子化データを得ることができる。
【００４８】
（１１）表面形状の復元
表面形状復元手段１９は、ＡＮＤ領域抽出手段１８から対象物１００の３次元格子量子化データを入力し、離散的ＭＣ（Ｍａｒｃｈｉｎｇ  Ｃｕｂｅｓ）法を用いて、対象物１００の面を構成して表面形状を復元し、３次元形状データを生成する（ステップＳ２１１）。
【００４９】
以上のように、本発明の実施の形態による３次元形状復元装置１によれば、１台のカメラ１０１により撮影された対象物１００及びその影の画像の画像から、対象物１００の３次元形状を復元することができる。
【００５０】
また、本発明の実施の形態による３次元形状復元装置１によれば、対象物１００の影の画像から、光源１０２−１〜４に対応したそれぞれの対象物１００の影を分離して抽出する。そして、光源１０２−１〜４に対応したそれぞれの対象物１００の影から、一層精度の高い対象物１００の３次元形状を復元することができる。
【００５１】
つまり、３次元形状復元装置１が、１台のカメラ１０１により３次元形状を復元することができるから、複数台のカメラを用いる必要がない。また、ユーザは、復元された３次元形状を好きな位置や角度から鑑賞することができるから、視点の自由度が小さいという従来の問題を解決することができる。また、複数台のカメラを用いて前述の処理を行うことにより、さらに一層精度の高い対象物１００の３次元形状を復元することができる。
【００５２】
以上、実施の形態を挙げて本発明を説明したが、本発明は上記実施の形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。例えば、上記実施の形態では、対象物・影集合分離手段１２が、クロマキー処理により、対象物撮影画像から対象物画像及び影集合Ａ画像を抽出するようにしたが、クロマキー処理に限定されるものではない。要するに、対象物撮影画像から対象物画像及び影集合Ａ画像を抽出する処理であれば何でもよい。
【００５３】
また、３次元格子量子化データ生成手段１３，１４，１７が、ボクセル空間を用いたシルエット法により、３次元格子量子化データを生成するようにしたが、シルエット法に限定されるものではなく、３次元格子量子化データを生成する手法であれば何でもよい。
【図面の簡単な説明】
【００５４】
【図１】本発明の実施の形態における照明空間を説明する図である。
【図２】本発明の実施の形態による３次元形状復元処理のフローチャートを示す図である。
【図３】カメラキャリブレーションパターン撮影画像を示す図である。
【図４】対象物撮影画像を示す図である。
【図５】対象物画像を示す図である。
【図６】影集合Ａ画像を示す図である。
【図７】影集合Ｂ画像を示す図である。
【図８】カメラと対象物によるシルエット法を説明する図である。
【図９】光源と影集合Ｂによるシルエット法を説明する図である。
【図１０】影集合分離前のＡＮＤ領域を説明する図である。
【図１１】領域分解された影集合Ａを説明する図である。
【図１２】仮想影画像を示す図である。
【図１３】影集合Ａの分離の流れを説明する図である。
【図１４】影画像を示す図である。
【図１５】光源と影によるシルエット法を説明する図である。
【図１６】影集合分離後のＡＮＤ領域を説明する図である。
【図１７】本発明の実施の形態による３次元形状復元装置の構成を説明するブロック図である。
【符号の説明】
【００５５】
１  ３次元形状復元装置
１１  カメラパラメータ算出手段
１２  対象物・影集合分離手段
１３，１４，１７  ３次元格子量子化データ生成手段
１５，１８  ＡＮＤ領域抽出手段
１６  影集合分離手段
１９  表面形状復元手段
１００  対象物
１０１  カメラ
１０２  光源
【図１】
2008107877.tif 000012
【図２】
2008107877.tif 000013
【図３】
2008107877.tif 000014
【図４】
2008107877.tif 000015
【図５】
2008107877.tif 000016
【図６】
2008107877.tif 000017
【図７】
2008107877.tif 000018
【図８】
2008107877.tif 000019
【図９】
2008107877.tif 000020
【図１０】
2008107877.tif 000021
【図１１】
2008107877.tif 000022
【図１２】
2008107877.tif 000023
【図１３】
2008107877.tif 000024
【図１４】
2008107877.tif 000025
【図１５】
2008107877.tif 000026
【図１６】
2008107877.tif 000027
【図１７】
2008107877.tif 000028