(57)【要約】【課題】目または口もとなどの局部について、局部的な異常変形を起こすことなく、計測された３次元データによりよく一致させること。【解決手段】ＣＰＵおよびメモリを有する処理装置を用いて、計測された３次元データに合わせて標準モデルＤＳを変形する方法であって、３次元データおよび標準モデルＤＳをメモリに格納しておき、ＣＰＵによって、３次元データを間引くために、３次元データの個数を削減するステップと、間引かれた３次元データの輪郭と標準モデルＤＳの輪郭との距離が小さくなるように標準モデルＤＳの全体を変形するステップと、標準モデルＤＳの全体を変形した後に、間引かれる前の３次元データから局所的に特徴を有する複数の部分領域ＢＲＹを選択するステップと、選択された複数の部分領域の３次元データを用いて、標準モデルＤＳの対応する部分のみを変形するステップと、を実行する。【選択図】図１２
2011008816.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵおよびメモリを有する処理装置を用いて、計測された３次元データに合わせて標準モデルを変形する方法であって、
前記３次元データおよび前記標準モデルを前記メモリに格納しておき、
前記ＣＰＵによって、
前記３次元データを間引くために、前記３次元データの個数を削減するステップと、
前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形するステップと、
前記標準モデルの全体を変形した後に、前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択するステップと、
選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形するステップと、を実行する、
ことを特徴とする標準モデルの変形方法。
【請求項２】
前記標準モデルには標準モデルを変形させるための制御点が定義されており、
前記部分領域ごとに、前記制御点、前記３次元データの個数を削減する削減率、または前記標準モデルの変形の度合を評価する評価関数の少なくとも１つを変更する、
請求項１記載の標準モデルの変形方法。
【請求項３】
計測された３次元データに合わせて標準モデルを変形することによって３次元モデルを生成するモデリング装置であって、
前記３次元データを間引くために、前記３次元データの個数を削減する手段と、
前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形する手段と、
前記標準モデルの全体を変形した後に、前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択する手段と、
選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形する手段と、
を有してなることを特徴とするモデリング装置。
【請求項４】
前記部分のみを変形する手段は、
前記部分領域ごとに、標準モデルを変形させるための前記標準モデルに定義された制御点、前記３次元データの個数を削減する削減率、または前記標準モデルの変形の度合を評価する評価関数の少なくとも１つを変更する、
請求項３記載のモデリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、標準モデルの変形方法およびモデリング装置に関し、例えばコンピュータグラフィックスの分野における３次元モデルの生成に利用される。
【背景技術】
【０００２】
近年において、映画やゲームなどに３次元ＣＧ（３次元コンピュータグラフィックス）の技術がしばしば用いられている。３次元ＣＧでは、仮想的な３次元空間内に３次元モデルやライトを配置して動かすので、表現の自由度が高い。
【０００３】
従来より、光切断法などによる非接触型の３次元計測装置が実用化されており、これを用いて計測を行うことにより、対象物の３次元データを比較的容易に作成することができる。しかし、計測によって得られた３次元データをそのまま３次元ＣＧに用いるには、得られたデータの間引きなどを行ってデータ量を減らすための処理が複雑であるなど、種々の問題がある。
【０００４】
この問題に対処するため、対象物の標準モデルを準備しておき、計測された３次元データに合わせて標準モデルを変形する方法が提案されている（特許文献１）。
【０００５】
この従来の方法では、計測によって得られた３次元データの３次元形状情報、つまり３次元に存在する点群をフィッティング対象として用い、それら３次元の点群に標準モデルの表面をフィッティングさせる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平５−８１３７７号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、上に述べた従来の方法においては、全体的な形状はほぼ一致するのであるが、局所的な特徴を一致させることは困難であった。
【０００８】
つまり、例えば、従来の方法によって人の頭部の３次元モデルを作成した場合に、できあがった３次元モデルは、頭部の全体的な形状は計測対象の人の頭部と一致するのであるが、目または口もとなどのように顔の表情に大きな影響を与える局所的な部分については、充分に一致するまでに至らない。そのため、人の細かい表情を表現することは困難であった。
【０００９】
本発明は、上述の問題に鑑みてなされたもので、目または口もとなどの局部について、局部的な異常変形を起こすことなく、計測された３次元データによりよく一致させることのできる方法および装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明に係る方法は、ＣＰＵおよびメモリを有する処理装置を用いて、計測された３次元データに合わせて標準モデルを変形する方法であって、前記３次元データおよび前記標準モデルを前記メモリに格納しておき、前記ＣＰＵによって、前記３次元データを間引くために、前記３次元データの個数を削減するステップと、前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形するステップと、前記標準モデルの全体を変形した後に、前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択するステップと、選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形するステップと、を実行する。
【００１１】
さらには、前記標準モデルには標準モデルを変形させるための制御点が定義されており、前記部分領域ごとに、前記制御点、前記３次元データの個数を削減する削減率、または前記標準モデルの変形の度合を評価する評価関数の少なくとも１つを変更する。
【００１２】
本発明に係る装置は、前記３次元データを間引くために、前記３次元データの個数を削減する手段と、前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形する手段と、前記標準モデルの全体を変形した後に、前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択する手段と、選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形する手段とを有してなる。
【００１３】
本発明において、フィッティングとは、標準モデルの変形処理、またはそれを含む一連の処理をいう。
【発明の効果】
【００１４】
本発明によると、目または口もとなどの局部について、局部的な異常変形を起こすことなく、計測された３次元データによりよく一致させることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明に係るモデリング装置を示すブロック図である。
【図２】モデリング装置の全体の処理の流れを示すフローチャートである。
【図３】変形処理を示すフローチャートである。
【図４】標準モデルの例を示す図である。
【図５】対象物から３次元データを取得する様子を示す図である。
【図６】概略の位置合わせの様子を示す図である。
【図７】輪郭および特徴点の抽出処理の様子を示す図である。
【図８】標準モデルの面と３次元データの点とを模式的に示す図である。
【図９】標準モデルの異常変形を防ぐための仮想バネを説明するための図である。
【図１０】対象物の３次元データおよび信頼性データを取得する方法の例を説明する図である。
【図１１】部分領域の抽出の例を示す図である。
【図１２】部分領域を用いて標準モデルの変形を行う方法の例を説明する図である。
【発明を実施するための形態】
【００１６】
図１は本発明に係るモデリング装置１を示すブロック図である。本実施形態においては、予め作成した標準モデルを人の頭部についての計測データ（３次元データまたは２次元画像）に基づいて変形する（フィッティングする）ことにより、人の頭部の３次元モデルを生成する例を説明する。
【００１７】
図１に示すように、モデリング装置１は、処理装置１０、磁気ディスク装置１１、媒体ドライブ装置１２、ディスプレイ装置１３、キーボード１４、マウス１５、および３次元計測装置１６などからなる。
【００１８】
処理装置１０は、ＣＰＵ、ＲＡＭ、ＲＯＭ、ビデオＲＡＭ、入出力ポート、および各種コントローラなどからなる。ＲＡＭおよびＲＯＭなどに記憶されたプログラムをＣＰＵが実行することにより、処理装置１０上に種々の機能が実現される。
【００１９】
磁気ディスク装置１１には、ＯＳ（Operating System) 、３次元モデルＭＬを生成するためのモデリングプログラムＰＲ、その他のプログラム、標準モデル（標準モデルデータ）ＤＳ、３次元データ（３次元計測データ）ＤＴ、３次元データＤＴの信頼性を示す信頼性データＤＲ、２次元画像（２次元計測データ）ＦＴ、生成された３次元モデルＭＬ、その他のデータなどが格納されている。これらのプログラムおよびデータは、適時、処理装置１０のＲＡＭにローディングされる。
【００２０】
なお、モデリングプログラムＰＲには、計測処理、概略位置合わせ、データ削減処理、変形処理、部分領域選択処理、およびその他の処理のためのプログラムが含まれる。
【００２１】
媒体ドライブ装置１２は、ＣＤ−ＲＯＭ（ＣＤ）、フロッピィディスクＦＤ、または光磁気ディスクなどの記録媒体にアクセスし、データまたはプログラムの読み書きなどを行うものである。記録媒体の種類に応じて適切なドライブ装置が用いられる。上に述べたモデリングプログラムＰＲは、これら記録媒体からインストールすることが可能である。標準モデルＤＳ、３次元データＤＴ、信頼性データＤＲ、および２次元画像ＦＴなども、記録媒体を介して入力することが可能である。
【００２２】
ディスプレイ装置１３の表示面ＨＧには、上に述べた種々のデータ、およびモデリングプログラムＰＲにより生成された３次元モデルＭＬ、その他のデータ（画像）が表示される。
【００２３】
キーボード１４およびマウス１５は、処理装置１０にデータを入力しまたは指令を与えるために用いられる。３次元計測装置１６は、例えば光切断法によって対象物の３次元データＤＴを得るためのものである。３次元計測装置１６によって直接的に３次元データＤＴを得ることも可能であり、また、３次元計測装置１６から出力されるデータに基づいて処理装置１０などで演算を行い、間接的に３次元データＤＴを得ることも可能である。
【００２４】
３次元データＤＴと同時に、必要に応じて同じ対象物について同じ視線上の２次元画像ＦＴを取得することも可能である。そのような３次元計測装置１６として、例えば特開平１０−２０６１３２号に示される公知の装置を用いることが可能である。
【００２５】
また、対象物の３次元データＤＴを取得する公知の他の方法として、対象物に対して視差を有して配置された複数のカメラを用いる方法などがある。それらのカメラから得られた視差を有する複数の画像から、立体写真法を用いて３次元データＤＴを演算により求めることができる。
【００２６】
この方法では、例えば３台のカメラを用いることにより、３次元データＤＴの各点の信頼性を判定するためのデータをも同時に取得することができる。すなわち、３台のカメラによる多眼視によって対象物を撮影し、３枚の画像を得る。これら３枚の画像について、互いの対応点を探索する。２枚の画像についての対応点に基づいて、３次元データＤＴが公知の計算により求められる。他の１枚の画像は、信頼性データＤＲを得るのに利用される。
【００２７】
例えば、図１０に示すように、３台のカメラＡ，Ｂ，Ｃを用い、対象物Ｑを撮影して３枚の画像ＦＡ，ＦＢ，ＦＣを取得する。各画像ＦＡ，ＦＢ，ＦＣについて、それぞれの画像面（ｕn ，ｖn ）が示されている（ｎ＝１，２，３）。３次元空間Ｍにある対象物Ｑ上の点ＱＰが、各画像面上の点ＰＡ，ＰＢ，ＰＣに投影されている。
【００２８】
ここで、点ＰＡ，ＰＢ，ＰＣの対応が求まるとすると、それらの対応から、３次元空間Ｍ’を再構成することができる。３次元空間Ｍ’において、点ＰＡ，ＰＢに対応する点ＱＰ’が求まる。理想的には、この再構成された３次元空間Ｍ’上の点ＱＰ’を画像面（ｕ3 ，ｖ3 ）に逆投影した点ＰＣ’と、元の３次元空間Ｍ上の点ＱＰを画像面（ｕ3 ，ｖ3 ）上に投影した点ＰＣとは、一致するはずである。
【００２９】
しかし、投影変換を正確に求めることは難しく、また対応を正確に求めることも難しいため、通常、これらは一致しない。そこで、これら点ＰＣ’と点ＰＣとのずれを誤差とし、信頼性の指標として用いる。
【００３０】
例えば、点ＰＣ’と点ＰＣとの誤差を、ずれた画素の数で示す。点ＰＣ’と点ＰＣとが同じ画素上にあれば、誤差は「０」である。１画素ずれていれば、誤差は「１」である。２画素ずれていれば、誤差は「２」である。このずれた画素数を信頼性データＤＲとして用いることができる。
【００３１】
信頼性データＤＲを判断する他の方法として、例えば特開昭６１−１２５６８６号に示される方法、その他の公知の方法を用いることも可能である。モデリング装置１は、パーソナルコンピュータまたはワークステーションなどを用いて構成することが可能である。上に述べたプログラムおよびデータは、ネットワークＮＷを介して受信することにより取得することも可能である。
【００３２】
次に、モデリング装置１の全体の処理の流れについて、フローチャートを参照しながら説明する。
【００３３】
図２はモデリング装置１の全体の処理の流れを示すフローチャート、図３は変形処理を示すフローチャート、図４は標準モデルＤＳ１の例を示す図、図５は対象物から３次元データＤＴを取得する様子を示す図、図６（Ａ）（Ｂ）は概略の位置合わせの様子を示す図、図７は輪郭および特徴点の抽出処理の様子を示す図、図８は標準モデルＤＳの面Ｓと３次元データＤＴの点Ｐとを模式的に示す図、図９は標準モデルＤＳの異常変形を防ぐための仮想バネを説明するための図、図１０は対象物の３次元データＤＴおよび信頼性データＤＲを取得する方法の例を説明する図である。
〔標準モデルの準備〕
図２において、まず、対象物についての標準モデルＤＳを準備する（＃１１）。本実施形態では対象物が人の頭部であるので、種々のサイズおよび形状を有した、頭部の全周についての複数の標準モデル群の中から、対象物の頭部に最もよく似た標準モデルＤＳ１を準備する。
【００３４】
標準モデルＤＳは、ポリゴンで定義された３次元形状モデル、または自由曲面で定義された３次元形状モデルのいずれでもよい。ポリゴンで定義された３次元形状モデルである場合は、各ポリゴンの頂点の３次元座標によって表面の形状が決まる。自由曲面で定義された３次元形状モデルである場合は、曲面を定義する関数、および各制御点の座標によって表面の形状が決まる。
【００３５】
なお、ポリゴンで定義された３次元形状モデルである場合に、各ポリゴンの頂点を「構成点」と記載する。また、標準モデルＤＳのフィッティングに際して、標準モデルを変形するために用いられる点を「制御点」と呼称する。制御点とポリゴンの構成点との位置関係は任意であり、制御点はポリゴンの面上に設定されていてもよく、ポリゴンの面から離れて設定されていてもよい。１つの制御点は複数の構成点（３〜１００程度）と関連付けられており、制御点の動きに合わせて関連付けられた構成点が移動する。標準モデルＤＳのフィッティングに際しては、これら複数の制御点を移動させることによって標準モデルＤＳ全体を変形する。３次元形状モデルが自由曲面で定義されている場合も、フィッティングに使用する制御点の配置は任意である。
【００３６】
制御点は、目尻、唇端などのように細かな形状を持つ部分、および、鼻、唇などのように急激な形状の変化を持つ部分には、高い密度で配置される。それ以外の部分には一様に配置される。
【００３７】
標準モデルＤＳには、ある方向から見た特徴的な輪郭ＲＫおよび特徴点ＴＴが設定される。輪郭ＲＫとして、例えば、目、鼻、口、または顎などに、瞼のライン、鼻のライン、唇のライン、または顎のラインなどが設定される。特徴点ＴＴとして、例えば、目や口の端部、鼻の頂部、顎の下端部のように、実際に特徴のある部分、または、それらの中間のようなそれ自体では特徴はないが位置的に特定し易い部分などが選ばれる。
【００３８】
図４に示す標準モデルＤＳ１では、顎のライン、唇のライン、および瞼のラインが輪郭ＲＫ１〜３として設定されている。図４で分かるように、輪郭ＲＫ１は、標準モデルＤＳ１をある方向から見たときに、その縁線となる部分である。また、図４に示す標準モデルＤＳ１では、設定された特徴点ＴＴの一部のみが実際に図に表されている。
〔３次元データの取得〕
次に、対象物の３次元計測を行い、３次元データＤＴを取得する（＃１２）。その際に、対象物の２次元画像ＦＴをも同時に取得しておく。また、上に述べたように、３次元データＤＴの各点についての信頼性を示す信頼性データＤＲ、または信頼性データＤＲを得るための情報を必要に応じて取得しておく。
【００３９】
例えば、図５に示すように、３次元計測装置１６を用いて、対象物である人の頭部を計測（撮影）する。これによって、３次元データＤＴおよび２次元画像ＦＴが取得される。
【００４０】
なお、対象物を計測して得た３次元データＤＴおよび／または２次元画像ＦＴを、「計測データ」と記載することがある。標準モデルＤＳの準備と３次元データＤＴの取得とはいずれが先でもよく、並行して進めてもよい。
〔概略の位置合わせ〕標準モデルＤＳと３次元データＤＴとの概略の位置合わせを行う（＃１３）。この処理では、標準モデルＤＳと３次元データＤＴとが概略一致するように、標準モデルＤＳの向き、サイズ、および位置を変更する。このとき、標準モデルＤＳを、Ｘ，Ｙ，Ｚのそれぞれの方向に個別に任意の倍率に偏倍することにより、それぞれの方向のサイズを３次元データＤＴによく合わせることができる。
【００４１】
例えば、図６（Ａ）に示すように、３次元データＤＴに対して、標準モデルＤＳを回転させ且つ各方向に偏倍することにより、図６（Ｂ）に示すように、３次元データＤＴとほぼ同じサイズの標準モデルＤＳａを得ることができる。なお、わかりやすくするために、図面上では位置を合わせていないものを示す。
【００４２】
概略の位置合わせの手法として、次に説明するように、（１）全体的概略位置合わせ、（２）局所的概略位置合わせ、の２つの手法がある。これらの手法のうち、（１）の手法は自動で行うことができる。（２）の手法は、その中の特徴点抽出を自動で行うことが困難であるので、一部手動で行う必要がある。概略位置合わせ後のフィッティングでは基本的に標準モデルＤＳの局所的な変形が行われることになるため、形状が合うことを重視する場合には（１）の手法が好適であり、アニメーションのように形状よりも位置が合って欲しいという場合には（２）の手法が好適である。また、特徴点抽出を行うことに慣れたユーザであれば、処理時間を短縮するために（２）の手法を用いることは効果的である。
〔全体的概略位置合わせ〕
全体的概略位置合わせでは、３次元データＤＴと標準モデルＤＳとの距離を最小とするように、標準モデルＤＳの位置、方向、およびサイズを変更する。
【００４３】
すなわち、次の（１）式に示すエネルギー関数ｅ（ｓｉ，αｉ，ｔｉ）が最小となるｓｉ，αｉ，ｔｉを導く。なお、ｆ（ｓｉ，αｉ，ｔｉ）は、３次元データＤＴと標準モデルＤＳとの距離に関連して定義されるエネルギー関数である。ｇ（ｓｉ）は、過剰な変形を避けるための安定化エネルギー関数である。
【００４４】
また、３次元計測装置１６によって３次元データＤＴを取得する際に同時に取得した２次元画像ＦＴを用い、２次元画像ＦＴ上でのパターンマッチングを用いて、位置、方向、およびサイズの初期値を与えてもよい。
【００４５】
【数１】
2011008816.tif 000003
【００４６】
但し、
Ｋ：３次元データの構成点の個数
ｄk ：３次元データの構成点と標準モデルの表面との距離
Ｗsc：偏倍安定化のウエイトパラメータ
Ｓ0 ：初期スケール
Ｓi ：各方向の偏倍量（但し、Ｓ3 は奥行き方向である）
αi ：標準モデルの各方向の回転
ｔi ：標準モデルの各方向への移動量
ここで、標準モデルＤＳ上の構成点は次の（２）式にしたがって移動し、それにともなって、３次元データＤＴの構成点と標準モデルＤＳの表面との間の距離ｄk が変化する。
【００４７】
【数２】
2011008816.tif 000004
【００４８】
また、３次元計測装置１６による計測（撮影）が一方向からに限られる場合に、奥行き方向（Ｚ方向）の偏倍量が正確に得られない場合がある。その場合には、３次元データＤＴの形状と標準モデルＤＳの形状に大きな違いはないとみなし、次の（３）式に示すように、Ｘ，Ｙ方向の偏倍量（Ｓ1,Ｓ2 ）によってＺ方向の偏倍量（Ｓ3 ）を補正する方法も考えられる。
【００４９】
【数３】
2011008816.tif 000005
【００５０】
但し、
γ：視線方向ｘ3 変形分へのウエイトパラメータ
〔局所的概略位置合わせ〕
上に述べた全体的概略位置合わせを自動で行った場合に、それがうまく合わなかったときに、手動で合わせることとなるが、ここに述べる局所的概略位置合わせは、手動での位置合わせの際にできるだけ簡単に行うための手法である。なお、自動でうまくいかなかった分は一旦リセットし、初めから手動でやり直す。
【００５１】
局所的概略位置合わせでは、３次元データＤＴ上の特徴的な線または点と、標準モデルＤＳ上の特徴的な線または点とを対応づけ、それらの距離を最小にするように標準モデルＤＳの位置、方向、およびサイズを変更する。なお、線と線とを対応付けた場合は、一方の線上の点とその点から他方の線上へ降ろした垂線のうち最短となる点とを特徴点とし、線上でこれらの点を複数点取得するものとする。
【００５２】
すなわち、３次元データＤＴ上の特徴点とそれに対応する標準モデルＤＳ上の特徴点との距離に対して、次の（４）式に示すエネルギー関数Ｅ（ｓｉ，αｉ，ｔｉ）が最小となるように、標準モデルＤＳのｔｉ，αｉ，ｓｉを導く。
【００５３】
【数４】
2011008816.tif 000006
【００５４】
但し、
ｋ：対応する特徴点の個数
Ｍk ：位置合わせ後の標準モデル上の特徴点
ｘ：位置合わせ前の標準モデル上の特徴点
Ｃk ：３次元データ上の特徴点
Ｓi ：標準モデルの各方向の偏倍量
αi ：標準モデルの各方向の回転
ｔi ：標準モデルの各方向への移動量
また、３次元計測装置１６による計測（撮影）が一方向からに限られる場合に、奥行き方向（Ｚ方向）のスケールが正確に得られない場合がある。その場合には、上に述べた全体的概略位置合わせの場合と同様に、次の（５）式を用いてＺ方向のスケールを補正する方法が考えられる。
【００５５】
【数５】
2011008816.tif 000007
【００５６】
〔輪郭・特徴点の抽出〕
３次元データＤＴまたは２次元画像ＦＴ上に、輪郭および特徴点を抽出する（＃１４）。標準モデルＤＳについての輪郭ＲＫおよび特徴点ＴＴを予め抽出しておいた場合には、それらと同じ位置に配置されるべき輪郭および特徴点を、３次元データＤＴ上に、またはそれに対応する２次元画像上に配置する（図７参照）。
【００５７】
標準モデルＤＳについての輪郭ＲＫおよび特徴点ＴＴが予め抽出されていない場合には、３次元データＤＴ上または２次元画像上への配置と合わせて標準モデルＤＳ上でも指定する。
〔データ削減〕
次に、計算量および誤差を削減するために、３次元データＤＴについてデータの削減を行い、必要且つ信頼性の高いデータのみを取り出す（＃１５）。データの削減を行うことによって、元の３次元データＤＴの形状を崩すことなく、計算量を減らすことができる。
【００５８】
データの削減に当たって、例えば、対象物の領域外のデータを除外し、不要なデータを除く。例えば、２次元画像ＦＴから顔の領域を判別し、その領域に対応した３次元データＤＴのみを残す。あるいは、対象物と背景との間の距離の相違を用いて領域を判別する。また、概略位置合わせの情報を用いて、顔の領域を抽出するなどの各種の方法がある。また、３次元データＤＴに信頼性データＤＲがある場合には、信頼性の高いもののみを残す。近隣にデータが多い場合はそのデータを間引き、密度を平均化する。
【００５９】
データを間引いて密度を平均化する場合は、次の（６）式で示される条件を満たす３次元データＤＴのみを採用する。
【００６０】
【数６】
2011008816.tif 000008
【００６１】
但し、
Ｐk ：構成点
Ｐ〜r ：既に採用された構成点
Ｒdet (x) ：構成点ｘの周囲の密度を表す関数
上の（６）式によると、注目されているデータＰｋについて、それまでに採用されて残っているデータＰｒとの間の距離が一定以上であれば、そのデータＰｋを採用する。
〔変形〕
標準モデルＤＳ全体の変形が行われる（＃１６）。ここでは、３次元データＤＴの各構成点と標準モデルＤＳの面との間の距離に関連して定義されたエネルギー関数ｅ1 を用いるとともに、それに加えて、標準モデルＤＳの特徴点と３次元データＤＴに対して指定された特徴点との間の距離に関連して定義されるエネルギー関数ｅ3 、標準モデルＤＳの輪郭と３次元データＤＴに対して指定された輪郭との間の距離に関連して定義されるエネルギー関数ｅ2 、および、過剰な変形を回避するために定義されたエネルギー関数ｅs を用い、それらを総合したエネルギー関数ｅを評価し、総合のエネルギー関数ｅが最小となるように標準モデルＤＳの面を変形させる。
【００６２】
なお、総合のエネルギー関数ｅとして、ｅ１，ｅ２，ｅ３，ｅｓの４つの関数を用いるのが一番望ましいが、ｅ１〜ｅ３のうち任意の２つだけを用いることも可能である。
次に、各エネルギー関数について順次説明する。
〔標準モデルと３次元データとの距離〕
図８において、３次元データＤＴを構成する点群の１つが点Ｐｋで示されている。標準モデルＤＳの面Ｓにおいて、点Ｐｋに最も近い点がＱｋで示されている。点Ｑｋは、点Ｐｋから面Ｓに垂線を下ろしたときの交点である。ここでは、点Ｐｋと点Ｑｋとの距離が評価される。
【００６３】
すなわち、３次元データＤＴの各点と標準モデルＤＳの面との差分エネルギーｅ1 は、データ削減後の３次元データＤＴ上の点Ｐｋと、それを標準モデルＤＳの面Ｓ上に投影した点Ｑｋとの二乗距離を用いて、次の（７）式によって算出される。
【００６４】
【数７】
2011008816.tif 000009
【００６５】
但し、
Ｔ1A：制御点群
Ｐk ：削減後の３次元データの構成点
Ｑk ：構成点からモデル表面への投影点
Ｋ：削減後の構成点の個数
ｄk ：構成点からモデル表面への投影方向，
ｄk ＝（Ｑk-Ｐk ）／｜Ｑk-Ｐk ｜
ρk ：構成点Ｐk の信頼性
w(ρk)：信頼性関数，w(ρk)＝１／（α＋ρk ）n 
Ｗ：Σw(ρk)
Ｌ：種々のエネルギーを同一単位で扱うための調整用スケール
〔標準モデル上の輪郭と計測データ上の輪郭との距離〕
ここでは、３次元データＤＴ上に指定された輪郭ＲＫ、または２次元画像ＦＴ上に指定された輪郭ＲＫと、標準モデルＤＳ上の輪郭ＲＫとの距離が評価される。
【００６６】
計測データの輪郭ＲＫが３次元データＤＴ上に指定される場合は、３次元データＤＴの輪郭ＲＫ上の点から標準モデルＤＳ上の対応する輪郭ＲＫへ垂線を降ろし、その垂線のうち最短のものを距離とする。なお、輪郭ＲＫ上では複数の点を指定する。
【００６７】
計測データの輪郭ＲＫが２次元画像ＦＴ上に指定される場合は、２次元画像ＦＴを撮影したカメラについてのカメラパラメータを用い、標準モデルＤＳの輪郭ＲＫを２次元画像ＦＴ上に投影する。２次元画像ＦＴの輪郭ＲＫ上の点から、標準モデルＤＳの対応する輪郭ＲＫへ垂線を降ろし、その垂線のうち最短のものを距離とする。なお、輪郭ＲＫ上では複数の点を指定する。
【００６８】
計測データの輪郭ＲＫが３次元データＤＴ上に指定される場合に、標準モデルＤＳの輪郭ＲＫ毎の差分エネルギーｅ2 は、それらの距離の二乗和を用いて次の（８）式によって計算される。
【００６９】
【数８】
2011008816.tif 000010
【００７０】
但し、  
Ｔ2A：制御点群
ｐk ：３次元データ上の輪郭点
ｑk ：３次元データ上の輪郭点から対応するモデル輪郭への垂足点
ｎ：１つのモデル輪郭に対応が付けられている３次元データの輪郭点数
ｄk ：計測データの輪郭点から対応するモデル輪郭線への投影方向，
ｄk ＝（ｑk-ｐk ）／｜ｑk-ｐk ｜
ｌ：種々のエネルギーを同一単位で扱うための調整用スケール
計測データの輪郭ＲＫが２次元画像ＦＴ上に指定される場合に、標準モデルＤＳの輪郭ＲＫ毎の差分エネルギーｅ2 ’は次の（９）式によって計算される。
【００７１】
【数９】
2011008816.tif 000011
【００７２】
但し、
Ｔ2A：制御点群
ｐk ：２次元画像上の輪郭点
ｑk ：２次元画像上の輪郭点から２次元画像上に投影された対応するモデル輪郭への垂        足点
ｎ：１つのモデル輪郭に対応が付けられている計測データの輪郭点数
ｄk ：２次元画像上の輪郭点から対応するモデル輪郭への投影方向，
ｄk ＝（ｑk-ｐk ）／｜ｑk-ｐk ｜
ｌ：種々のエネルギーを同一単位で扱うための調整用スケール
計測データの輪郭ＲＫを２次元画像ＦＴ上で指定する理由は、例えば３次元データＤＴがあいまいな場合に、３次元データＤＴ上に輪郭ＲＫを指定すると輪郭ＲＫそのものが不正確となるからである。したがって、それに代えて２次元画像ＦＴを用いて輪郭ＲＫを抽出するのである。
〔標準モデル上の特徴点と対応した計測データ上の特徴点との距離〕
計測データ上に特徴点ＴＴを設定することにより、３次元データＤＴ上に指定された特徴点ＴＴ、または２次元画像ＦＴ上に指定された特徴点ＴＴと、標準モデルＤＳ上の特徴点との距離が評価される。
【００７３】
３次元データＤＴ上の特徴点ＴＴと標準モデルＤＳ上の特徴点ＴＴとの差分エネルギーｅ3 は、対応する特徴点ＴＴの二乗距離を用いて次の（１０）式によって計算される。
なお、２次元画像ＦＴ上に特徴点ＴＴを指定した場合は、カメラパラメータを用いて標準モデルＤＳの特徴点ＴＴを２次元画像ＦＴ上に投影し、２次元画像ＦＴ上での差分エネルギーを計算する。
【００７４】
【数１０】
2011008816.tif 000012
【００７５】
但し、
Ｔ3A：制御点群
Ｆk ：計測データの特徴点
Ｇk ：計測データの特徴点に対応する標準モデル上の特徴点
Ｎ：計測データの特徴点と標準モデル上の特徴点との対応数
Ｌ：種々のエネルギーを同一単位で扱うための調整用スケール
〔過剰な変形を回避するための安定化エネルギー〕
上に述べた差分のエネルギーに加え、過剰な変形を回避するための安定化エネルギーｅs が導入される。
【００７６】
すなわち、変形に用いられる制御点の間が、図９に示す仮想バネ(elastic bar) ＫＢによってつながれているものとする。仮想バネＫＢの制約に基づいて、標準モデルＤＳの面Ｓの形状の安定化のための安定化エネルギーｅs が定義される。
【００７７】
なお、仮想バネは必ずしも制御点間に張られている必要はない。制御点と仮想バネとの関係が明確であればよい。
【００７８】
図９において、フィッティング対象である標準モデルＤＳの面Ｓの一部が示されている。面Ｓは、制御点群Ｕ＝｜ｕｉ，ｉ＝１…Ｎ｜で形成されている。隣接する制御点間には、仮想バネＫＢが配置されている。仮想バネＫＢは、制御点間に引っ張り力による拘束を与え、面Ｓの異常変形を防ぐ働きをする。
【００７９】
つまり、隣接する制御点ｕの間隔が大きくなった場合に、それに応じて仮想バネＫＢによる引っ張り力が大きくなる。例えば、点Ｑｋが点Ｐｋに近づく場合に、その移動にともなって制御点ｕの間隔が大きくなると、仮想バネＫＢによる引っ張り力が増大する。点Ｑｋが移動しても制御点ｕの間隔が変わらなければ、つまり制御点ｕ間の相対位置関係に変化がなければ、仮想バネＫＢによる引っ張り力は変化しない。仮想バネＫＢによる引っ張り力を面Ｓの全体について平均化したものを、安定化エネルギーｅs として定義する。したがって、面Ｓの一部が突出して変形した場合に安定化エネルギーｅs は増大する。面Ｓの全体が平均して移動すれば安定化エネルギーｅs は零である。
【００８０】
安定化エネルギーｅs は、仮想バネＫＢの変形の状態により、次の（１１）式により求められる。
【００８１】
【数１１】
2011008816.tif 000013
【００８２】
但し、
ＴsA：制御点群
Ｕ〜m,Ｖ〜m ：仮想バネの端点（制御点）の初期値
Ｕm,Ｖm ：変形後の仮想バネの端点
Ｌ0m：初期状態の仮想バネの長さ，
Ｌ0m＝｜Ｕ〜m −Ｖ〜m ｜
Ｍ：仮想バネの本数
ｃ：バネ係数
Ｌ：種々のエネルギーを同一単位で扱うための調整用スケール
したがって、バネ係数ｃを大きくすると、仮想バネＫＢは硬くなって変形し難くなる。
【００８３】
このような安定化エネルギー関数ｅs を導入することにより、面Ｓの形状変化に一定の拘束を設けることとなり、面Ｓの過度の変形を防ぐことができる。
〔総合のエネルギー関数〕
上に述べたように、各エネルギー関数ｅ1,ｅ2,ｅ3,ｅ4 について、それぞれ制御点群Ｔ1A, Ｔ2A, Ｔ3A, ＴsAが用いられる。ここでは、これらの制御点群Ｔ1A〜ＴsAは同じであるが、後述するように互いに異ならせることができる。これら制御点群ＴＡを用いて標準モデルＤＳの変形を行い、次の（１２）式に示す総合エネルギー関数ｅ（ＴＡ）を最小にする制御点群ＴＡを求める。
【００８４】
【数１２】
2011008816.tif 000014
【００８５】
但し、
ｅ1(Ｔ1A）: ３次元データの構成点とモデル表面との差分エネルギー
ｅ2 s （Ｔ2A）: モデル輪郭毎の計測データ上の輪郭との差分エネルギー
ｅ3(Ｔ3A）: 計測データの特徴点とモデル上の特徴点との差分エネルギー
ｅs(ＴSA）: 過剰な変形を回避するための安定化エネルギー
ｗi, c :それぞれのエネルギーのウエイトパラメータ
ＴＡ＝Ｔ1A＝Ｔ2A＝Ｔ3A＝ＴSA
〔繰り返し変形〕
実際には繰り返し変形を行う（＃１７）。つまり、制御点を動かして繰り返して変形を行う。ｎ回目の変形後の総合エネルギー関数をｅn(ＴＡ）とすると、次の（１３）式の条件が満たされたときに、総合エネルギー関数ｅn （ＴＡ）が収束したと判断する。
【００８６】
【数１３】
2011008816.tif 000015
【００８７】
さて、ここで、変形処理の全体的な流れを図３に沿って説明する。まず、計測データと標準モデルＤＳとの間で対応する点の組みを作成する（図８のＰｋとＱｋ）（＃２１）。
【００８８】
面Ｓを変形し（＃２２）、変形後の総合エネルギー関数ｅn(ＴＡ）を計算する（＃２３）。総合エネルギー関数ｅn(ＴＡ）が収束するまで（＃２４でイエス）、処理を繰り返す。
【００８９】
総合エネルギー関数ｅn(ＴＡ）の収束を判定する方法として、上に述べたように総合エネルギー関数ｅn(ＴＡ）が所定の値よりも小さくなったときを収束とする方法、前回の計算と比較べた変化の割合が所定値以下となったときに収束とする方法など、公知の方法を用いることが可能である。
〔異なる制御点の使用〕
上に述べた（１２）式では、フィッティング対象（３次元データＤＴの構成点、輪郭ＲＫ、特徴点ＴＴ）がそれぞれ異なるエネルギー関数ｅ1 〜ｅ4 について、同じ制御点群を使用したが、ここに示す例は、フィッティング対象毎、すなわちエネルギー関数毎に異なる制御点群を用いる。つまり、制御点群Ｔ1A, Ｔ2A, Ｔ3A, ＴsAを互いに異ならせる。
【００９０】
この場合には、総合エネルギー関数ｅ（ＴＡ）として上に示した（１２）式を用いることができる。但し、そこに用いられる制御点群Ｔ1A, Ｔ2A, Ｔ3A, ＴSAは、互いに異なっており、次に示す関係にある。
【００９１】
ＴＡ⊃Ｔ1A
ＴＡ⊃Ｔ2A
ＴＡ⊃Ｔ3A
ＴＡ＝ＴSA
すなわち、上に述べたように、特徴点は点であるので、特徴点同士のエネルギーに対しては、局所的な動きになってしまう。例えば、３次元データＤＴと標準モデルＤＳとの目の位置を合わせようとするときに、特徴点ＴＴが設定された部分のみが強く引っ張られ、いびつに変形する可能性がある。そのような場合に、全体的な動きとなるようにするのが好ましい。
【００９２】
一方、３次元データＤＴの構成点に対しては、目の横などは細かく動いてほしい。しかし、少数の制御点しか用いない場合には、構成点は細かく移動しない。そこで、３次元データＤＴの構成点については多数の制御点を用い、特徴点については少数の制御点を用いる。輪郭ＲＫについてはその中間の量とする。
【００９３】
例えば、輪郭ＲＫが急激に変化する部分については、制御点を細かくする。安定化エネルギーは全ての制御点に対してかける。このような制御点の選択は、標準モデルＤＳを準備する際に行う。
【００９４】
なお、制御点群Ｔ1A, Ｔ2A, Ｔ3A, ＴsAは互いに異なるのであるが、各制御点群に含まれる制御点は、互いに共通に用いられるものもある。
〔信頼性に応じたウエイトの変更〕
上に述べた（１２）式では、各情報についての信頼性が同等であるとして総合エネルギー関数ｅ（ＴＡ）を評価したが、ここに示す例は、それぞれの情報の信頼性に応じて重みを変更する。これによって、様々な情報の中からより信頼性の高い情報に重きを置いて判定することができる。
【００９５】
なお、それぞれの情報の信頼性は、３次元計測時、または輪郭・特徴点の自動抽出時に得られるものとする。この場合には、次の（１４）式に示す総合エネルギー関数ｅ（ＴＡ）を最小にする制御点群ＴＡを求める。
【００９６】
【数１４】
2011008816.tif 000016
【００９７】
但し、
ρi ：各エネルギー関数ｅi （ＴＡ）に関する情報の信頼性
Ｗ (ρi)：信頼性関数
ＴＡ＝Ｔ1A＝Ｔ2A＝Ｔ3A＝ＴSA
〔部分領域変形〕
ステップ＃１７までの処理によって、従来の技術に比べて、より精密な３次元モデルＭＬを得ることができる。しかし、ステップ＃１７までの処理は対象物全体を対象として行われているので、局所的に特徴を有する部分については必ずしも精密なフィッティングがなされているとは限らない。そこで、対象物のうち特徴のある部分またはステップ＃１７までの処理で十分なフィッティングがなされていない部分を３次元データＤＴから抽出し、抽出した３次元データＤＴのみを用いて、さらに標準モデルＤＳのフィッティングを行う（＃１８）。
【００９８】
図１１は部分領域ＢＲＹの抽出の例を示す図、図１２（Ａ）（Ｂ）（Ｃ）は部分領域ＢＲＹを用いて標準モデルＤＳの変形を行う方法の例を説明する図である。
【００９９】
図１１に示すように、３次元データＤＴから部分領域ＢＲＹを抽出する。各部分領域ＢＲＹａ、ＢＲＹｂ、ＢＲＹｃは、それぞれ、対象物の目およびその周辺、口およびその周辺、鼻およびその周辺を、３次元データＤＴより抽出して得られた３次元データである。また、各部分領域ＢＲＹは、必要に応じて、データ量を減らすためにデータ削減が行われる。データ削減の処理は、例えば、ステップ＃１５で行ったデータ削減と同様の手順で行う。後述する部分領域変形では、フィッティングの領域が部分領域ＢＲＹに限定されるので、（６）式の右辺をステップ＃１５のときよりも０に近くしてデータ削減率を低くし、これによって部分領域ＢＲＹの精密性を維持した場合であってもフィッティング処理に多くの時間を要さない。従って、部分領域ＢＲＹの範囲の広さ、要求する精密性、および処理時間などを考慮して、部分領域ＢＲＹごとにデータ削減率を設定することができる。部分領域ＢＲＹの抽出は、ステップ＃１２の処理のとき、つまり、３次元データＤＴを得たときに予め行っておいてもよいし、ステップ＃１７までの処理が完了した後に行ってもよい。
【０１００】
図１２に示すように、標準モデルＤＳ１ａ、ＤＳ１ｂは、標準モデルＤＳ１の部分領域変形の過程を示すものである。
【０１０１】
ステップ＃１８においては、ステップ＃１７までの処理で得られた図１２（Ａ）の標準モデルＤＳ１を、図１２（Ｂ）に示すように部分領域ＢＲＹａを用いてフィッティングし、標準モデルＤＳ１ａを得る。フィッティングは、ステップ＃１６で行ったように、変形ないし繰り返し変形と同様の手順で行われ、（７）式の制御点群Ｔ1A、点Ｐk 、点Ｑk 、（８）式および（９）式の制御点群Ｔ2A、点ｐk 、点ｑk 、（１０）式の制御点群Ｔ3A、点Ｆk 、点Ｇk 、（１１）式の制御点群ＴsA、点Ｕ〜m 、点Ｖ〜m 、または（１３）式のしきい値εなどについて、当該部分領域ＢＲＹに応じて好適な値を用いればよい。
【０１０２】
それぞれの部分領域ＢＲＹについて、順次、部分領域変形を行う（＃１９でイエス、＃１８）。各部分領域ＢＲＹごとに、制御点群などをそれぞれ異ならせてフィッティングを行う。これにより、各部分領域ＢＲＹごとに、標準モデルＤＳ１をさらに緻密にフィッティングさせることができる。
【０１０３】
例えば、図１２（Ｂ）に示す標準モデルＤＳ１ａを得た後、図１２（Ｃ）に示すように部分領域ＢＲＹｂを用いてフィッティングし、標準モデルＤＳ１ｂ（３次元モデルＭＬ）を得る。
【０１０４】
なお、各部分領域ＢＲＹは、他の部分領域ＢＲＹの一部と重なり、または他の部分領域ＢＲＹに含まれていてもよい。例えば、図１１に示すように、部分領域ＢＲＹａの一部と部分領域ＢＲＹｃの一部とが重なっていてもよいし、部分領域ＢＲＹｂについて部分領域変形を行った後に、上唇のみを新たな部分領域ＢＲＹとして抽出し、部分領域変形を行ってもよい。
【０１０５】
上に述べた実施形態によると、全体的に標準モデルＤＳのフィッティングを行った後、部分領域ＢＲＹを用いて部分的に標準モデルＤＳのフィッティングを行うので、目または口もとなどの局部について局部的な異常変形を起こすことなく、それらをよりよく一致させることができる。したがって、対象物により一層近い３次元モデルＭＬを生成することができる。
【０１０６】
上に述べた実施形態において、モデリング装置１の構成、回路、処理内容、処理順序、処理タイミング、係数の設定などは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【０１０７】
１  モデリング装置（３次元モデルの生成装置）
１０  処理装置
ＤＴ  ３次元データ（計測データ）
ＦＴ  ２次元画像（計測データ）
ＢＲＹ  部分領域
ＤＳ，ＤＳ１，ＤＳ１ａ  標準モデル
ＤＳ１ｂ  標準モデル（３次元モデル）
ＭＬ  ３次元モデル
ＴＡ  制御点群
Ｐk   構成点（点群）
Ｓ  面
ＰＲ  モデリングプログラム
【図１】
2011008816.tif 000017
【図２】
2011008816.tif 000018
【図３】
2011008816.tif 000019
【図４】
2011008816.tif 000020
【図５】
2011008816.tif 000021
【図６】
2011008816.tif 000022
【図７】
2011008816.tif 000023
【図８】
2011008816.tif 000024
【図９】
2011008816.tif 000025
【図１０】
2011008816.tif 000026
【図１１】
2011008816.tif 000027
【図１２】
2011008816.tif 000028
【手続補正書】
【提出日】平成22年9月3日(2010.9.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＣＰＵおよびメモリを有する処理装置を用いて、計測された３次元データに合わせて標準モデルを変形する方法であって、
前記３次元データおよび前記標準モデルを前記メモリに格納しておき、
前記ＣＰＵによって、
前記３次元データを間引くために、前記３次元データの個数を削減するステップと、
前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形するステップと、
前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択するステップと、
前記標準モデルの全体を変形した後に、選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形するステップと、を実行する、
ことを特徴とする標準モデルの変形方法。
【請求項２】
前記標準モデルには標準モデルを変形させるための制御点が定義されており、
前記部分領域ごとに、前記制御点、前記３次元データの個数を削減する削減率、または前記標準モデルの変形の度合を評価する評価関数の少なくとも１つを変更する、
請求項１記載の標準モデルの変形方法。
【請求項３】
計測された３次元データに合わせて標準モデルを変形することによって３次元モデルを生成するモデリング装置であって、
前記３次元データを間引くために、前記３次元データの個数を削減する手段と、
前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形する手段と、
前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択する手段と、
前記標準モデルの全体を変形した後に、選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形する手段と、
を有してなることを特徴とするモデリング装置。
【請求項４】
前記部分のみを変形する手段は、
前記部分領域ごとに、標準モデルを変形させるための前記標準モデルに定義された制御点、前記３次元データの個数を削減する削減率、または前記標準モデルの変形の度合を評価する評価関数の少なくとも１つを変更する、
請求項３記載のモデリング装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
本発明に係る方法は、ＣＰＵおよびメモリを有する処理装置を用いて、計測された３次元データに合わせて標準モデルを変形する方法であって、前記３次元データおよび前記標準モデルを前記メモリに格納しておき、前記ＣＰＵによって、前記３次元データを間引くために、前記３次元データの個数を削減するステップと、前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形するステップと、前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択するステップと、前記標準モデルの全体を変形した後に、選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形するステップと、を実行する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
本発明に係る装置は、前記３次元データを間引くために、前記３次元データの個数を削減する手段と、前記間引かれた３次元データの輪郭と前記標準モデルの輪郭との距離が小さくなるように前記標準モデルの全体を変形する手段と、前記間引かれる前の３次元データから局所的に特徴を有する複数の部分領域を選択する手段と、前記標準モデルの全体を変形した後に、選択された複数の部分領域の３次元データを用いて、前記標準モデルの対応する部分のみを変形する手段とを有してなる。