(57)【特許請求の範囲】
【請求項１】
対象物体を所定の視点から見た画像に対して異なる複数の空間周波数の画像を表す周波数成分画像データを生成し、三次元モデル上へとマッピングすることによって三次元画像を生成する画像生成方法であって、
画像を受け取る画像情報入力手段によって、前記対象物体に対して複数の視点から見たときの複数の画像データを入力する画像情報入力ステップと、
前記画像情報入力ステップにおいて入力された複数の画像データそれぞれに対して、抽出手段によって異なる複数の空間周波数の周波数成分画像データを抽出するステップであって、前記入力された複数の画像データに対してサブサンプリング動作を実行することによって低い空間周波数を表す低周波数成分画像データを抽出するとともに、高い空間周波数を表す高周波数成分画像データを抽出する抽出ステップと、
前記抽出ステップにおいて抽出された前記低周波数成分画像データと前記高周波数画像データとを、合成手段によって前記対象物体に対して生成された三次元モデル上へとマッピングすることによって合成する画像合成ステップとを備えることを特徴とする画像生成方法。
【請求項２】
前記抽出ステップにおいて、前記高周波数成分画像データは、前記画像情報入力ステップにおいて入力された前記複数の画像データより前記低周波数成分画像データを減算することによって求められることを特徴とする請求項１に記載の画像生成方法。
【請求項３】
前記画像合成ステップは、
前記画像情報入力手段によって受け取られた画像データから、前記対象物体に対する視点の相対位置を決定するステップと、
前記複数の画像データおよび前記決定された位置から、前記対象物体の表面を表すモデル・データを決定するステップと、
前記位置データおよび前記対象の表面の前記モデル・データを使用して前記投影を実行するステップと
を含むことを特徴とする請求項１又は２に記載の画像生成方法。
【請求項４】
前記受け取られた画像データの前記複数の視点の相対位置を示す位置データの決定が、視点の相対位置および方向を決定するために前記画像内の特徴をマッチングすることを特徴とする請求項３に記載の画像生成方法。
【請求項５】
前記三次元モデルデータ生成が、前記複数の受け取られた画像データのそれぞれについて、
前記画像データのうちで前記対象物体に対応する部分を決定するステップと、
前記画像データの前記部分の周囲の決定および前記画像の視点を示す位置データを使用して前記三次元モデルデータを生成するステップとを含むことを特徴とする請求項３又は４に記載の画像生成方法。
【請求項６】
周波数成分画像データの生成が、周波数成分画像データが生成される空間周波数のそれぞれについて、
前記画像データの対応する部分に関する空間周波数情報を表す前記周波数成分画像データを決定するために、前記周波数成分画像データの前記投影の各部分を使用するステップを含むことを特徴とする請求項１乃至５のいずれか１項に記載の画像生成方法。
【請求項７】
画像の異なる空間周波数の周波数成分画像データの生成が、異なる空間周波数について異なる形で周波数成分画像データの投影の前記対応する部分から生成されることを特徴とする請求項６に記載の画像生成方法。
【請求項８】
周波数成分画像データの前記生成が、さらに、前記複数の画像データのそれぞれについて、前記視点からの前記対象物体の表面の部分の相対可視性を示す可視性データを決定するステップと、
周波数成分画像データの前記投影の部分を前記可視性データに関連付けるステップと、
前記複数の視点からの前記対象物体の画像データの周波数成分画像データを決定するために、前記投影の部分に関連する前記可視性データを使用するステップとを含むことを特徴とする請求項６又は７に記載の画像生成方法。
【請求項９】
前記異なる空間周波数の少なくとも１つの周波数成分画像データの前記生成が、前記空間周波数の前記画像の各部分について、前記画像データの前記部分に関連する前記可視性データによって重みを付けられた、前記画像の前記部分の周波数成分画像データの投影の対応する部分の加重平均を計算することによって生成されることを特徴とする請求項８に記載の画像生成方法。
【請求項１０】
前記異なる空間周波数の少なくとも１つの周波数成分画像データの生成が、前記空間周波数の前記画像データの各画素について、最高の可視性を示す可視性データに関連する周波数成分画像データの投影の前記対応する部分を選択することによって生成されることを特徴とする請求項８に記載の画像生成方法。
【請求項１１】
前記複数の視点からの対象物体の画像を表す画像データを生成する方法であって、請求項１乃至１０のいずれか１項に記載の画像生成方法に従って、前記複数の視点からの対象物体の画像データの複数の異なる空間周波数を表す周波数成分画像データを生成するステップと、
前記周波数成分画像データを使用して、前記対象物体の前記画像データを生成するステップとを含むことを特徴とする画像生成方法。
【請求項１２】
前記複数の視点からの画像データが、前記対象物体を囲む立方体の表面からの画像を含むことを特徴とする請求項１１に記載の画像生成方法。
【請求項１３】
選択された視点からの対象の画像の画像データを生成する方法であって、請求項１１又は１２に従ってテクスチャ・マップ・データを生成するステップと、
前記選択された視点から知覚される前記三次元モデルデータによって定義される３次元モデルの投影を決定するステップと、
前記テクスチャ・マップ・データを使用して前記モデルの前記投影をテクスチャ・レンダリングするステップとを含むことを特徴とする画像生成方法。
【請求項１４】
選択された視点からの対象の前記生成された画像データを出力するステップをさらに含むことを特徴とする請求項１３に記載の画像生成方法。
【請求項１５】
対象物体を所定の視点から見た画像に対して異なる複数の空間周波数の画像を表す周波数成分画像データを生成し、三次元モデル上へとマッピングすることによって三次元画像を生成する画像生成装置であって、
前記対象物体に対して複数の視点から見たときの複数の画像データを受け取る画像情報入力手段と、
前記画像情報入力手段によって入力された複数の画像データそれぞれに対し、異なる複数の空間周波数の周波数成分画像データを抽出する手段であって、前記周波数成分画像データに対してサブサンプリング動作を実行することによって低周波数成分画像データを抽出するとともに、高周波数成分画像データを抽出する抽出手段と、
前記抽出手段によって抽出された前記低周波数成分画像データ及び前記高周波数成分画像データを、前記対象物体に対して生成された三次元モデル上へとマッピングすることによって合成する画像合成手段と
を備えることを特徴とする画像生成装置。
【請求項１６】
前記抽出手段は、前記高周波数成分画像データを、前記画像情報入力手段によって入力された画像データより、前記低周波数成分画像データを減算することによって演算されるように構成されていることを特徴とする請求項１５に記載の画像生成装置。
【請求項１７】
前記画像合成手段は、
前記複数の受け取られた画像データから、前記画像データによって表される対象物体の視点の相対位置を決定する手段と、
前記複数の画像データおよび前記対象物体の表面を表すモデル・データを決定するモデリング手段と、
前記位置データおよび前記対象物体の表面の前記モデル・データを使用して前記投影を実行する手段と
を備えることを特徴とする請求項１５又は１６のいずれか１項に記載の画像生成装置。
【請求項１８】
前記相対位置を決定する手段が、前記入力された画像データの前記複数の視点の相対位置を示す位置データを、視点の相対位置および向きを決定するために前記画像内の特徴をマッチングすることによって決定するように構成されることを特徴とする請求項１７に記載の画像生成装置。
【請求項１９】
前記モデリング手段が、画像データのうちで対象物体に対応する部分を決定することと、前記画像データの前記部分の周囲の決定および前記画像の視点を示す位置データを使用して三次元モデル・データを生成することを特徴とする請求項１７又は１８に記載の画像生成装置。
【請求項２０】
前記異なる空間周波数の周波数成分画像データを、前記画像の対応する部分に関する前記空間周波数の空間周波数情報を表す周波数成分画像データを決定するために、ある周波数の周波数成分画像データの前記投影の各部分を使用することによって生成することを特徴とする請求項１５乃至１９のいずれか１項に記載の画像生成装置。
【請求項２１】
前記画像の異なる空間周波数の周波数成分画像データを、異なる空間周波数について異なる形で周波数成分画像データの投影の前記対応する部分から生成することを特徴とする請求項２０に記載の画像生成装置。
【請求項２２】
前記視点からの前記対象物体の表面の部分の相対可視性を示す可視性データを決定する手段と、
前記周波数成分画像データの前記投影の部分を前記可視性データに関連付ける手段と、
前記複数の視点からの前記対象物体の画像の周波数画像情報を表す周波数成分画像データを決定するために、前記投影の部分に関連する前記可視性データを使用する処理手段とを備えることを特徴とする請求項２０又は請求項２１に記載の画像生成装置。
【請求項２３】
前記処理手段が、前記空間周波数の前記画像の各部分について、画像データの前記部分に関連する前記可視性データによって重みを付けられた、前記画像の前記部分の周波数成分画像データの投影の対応する部分の加重平均を計算することによって、周波数成分画像データを生成するように配置されることを特徴とする請求項２２に記載の画像生成装置。
【請求項２４】
前記処理手段が、前記空間周波数の前記画像データの各画素について、最高の可視性を示す可視性データに関連する周波数成分画像データの投影の前記対応する部分を選択することによって、周波数成分画像データを生成するように配置されることを特徴とする請求項２２に記載の画像生成装置。
【請求項２５】
選択された視点からの対象物体の画像データを生成する画像生成装置であって、請求項１５乃至２４のいずれか１項に記載の画像生成装置を含み、前記対象物体のモデルをテクスチャ・レンダリングするためのテクスチャ・マップ・データを生成するマップ生成手段と、
前記選択された視点から知覚される３次元コンピュータ・モデルの投影を決定する手段と、
前記マップ生成手段によって生成されたテクスチャ・マップ・データを使用して前記投影をテクスチャ・レンダリングする手段とを備えることを特徴とする画像生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本願は、画像を生成する方法および装置に関する。具体的には、本願は、他の視点からの同一の物体の複数の画像から、選択された視点からの物体の画像を生成する方法および装置に関する。
【０００２】
【従来の技術】
２次元画像を複数の周波数バンドに分割し、異なる周波数バンドの画像を別々に処理することが既知である。同一の物体の複数の異なるビューから３次元物体の画像を生成する時には、３次元物体の画像データを類似する形で処理できることが望ましい。
【０００３】
２次元画像の既知の処理を拡張する方法の１つが、
使用可能な２次元画像からのデータを物体の表面に投影することと、
低バンド・テクスチャ付きの表面を得るために、３次元物体の表面にわたって生成されたテクスチャをぼかすことと、
対応する高バンド・テクスチャ付きの表面を得るために、元のテクスチャ付きの表面を減算することと、
異なるバンドについて異なる空間情報を使用してテクスチャ付きの表面をブレンディングすることと
によって画像を処理することである。
【０００４】
【発明が解決しようとする課題】
しかし、効率的で一貫性のある形でモデルの表面のテクスチャのブラー動作を実行する方法は既知でない。したがって、選択された視点からの３Ｄ物体の画像の空間周波数画像データを生成する代替方法が必要である。
【０００５】
【課題を解決するための手段】
本発明によれば、対象物体を所定の視点から見た画像に対して異なる複数の空間周波数の画像を表す周波数成分画像データを生成し、三次元モデル上へとマッピングすることによって三次元画像を生成する画像生成方法であって、画像を受け取る画像情報入力手段によって、前記対象物体に対して複数の視点から見たときの複数の画像データを入力する画像情報入力ステップと、前記画像情報入力ステップにおいて入力された複数の画像データそれぞれに対して、抽出手段によって異なる複数の空間周波数の周波数成分画像データを抽出するステップであって、前記入力された複数の画像データに対してサブサンプリング動作を実行することによって低い空間周波数を表す低周波数成分画像データを抽出するとともに、高い空間周波数を表す高周波数成分画像データを抽出する抽出ステップと、前記抽出ステップにおいて抽出された前記低周波数成分画像データと前記高周波数画像データとを、合成手段によって前記対象物体に対して生成された三次元モデル上へとマッピングすることによって合成する画像合成ステップとを備えることを特徴とする画像生成方法が提供される。
【０００７】
本発明によれば、対象物体を所定の視点から見た画像に対して異なる複数の空間周波数の画像を表す周波数成分画像データを生成し、三次元モデル上へとマッピングすることによって三次元画像を生成する画像生成装置であって、前記対象物体に対して複数の視点から見たときの複数の画像データを受け取る画像情報入力手段と、前記画像情報入力手段によって入力された複数の画像データそれぞれに対し、異なる複数の空間周波数の周波数成分画像データを抽出する手段であって、前記周波数成分画像データに対してサブサンプリング動作を実行することによって低周波数成分画像データを抽出するとともに、高周波数成分画像データを抽出する抽出手段と、前記抽出手段によって抽出された前記低周波数成分画像データ及び前記高周波数成分画像データを、前記対象物体に対して生成された三次元モデル上へとマッピングすることによって合成する画像合成手段とを備えることを特徴とする画像生成装置が提供される。
【０００８】
本発明のさらなる態様および実施形態は、以下の説明および図面から明白になる。
【０００９】
【発明の実施の形態】
これから第１の実施形態を説明するが、第１の実施形態では、同一の視点に対応する生成され投影された複数の画像を組み合わせて、画像に現れる物体の３Ｄコンピュータ・モデルのテクスチャ・レンダリング用の合成テクスチャ・マップを生成する。
【００１０】
［第１の実施形態］
図１を参照すると、本発明の実施形態は、パーソナルコンピュータ等の処理装置２を含み、処理装置２は、１つまたは複数のプロセッサと、メモリと、グラフィックス・カードなどを、通常のパーソナル・コンピュータ・モニタなどの表示装置４と、キーボード、マウスなどのユーザ入力装置６と、プリンタ８と共に通常の形で含む。
【００１１】
処理装置２は、たとえば、ディスク１２などのデータ記憶媒体に保管されたデータとして、及び／又は、たとえばリモート・データベースから、インターネットなどの通信ネットワーク（図示せず）を介する伝送によって、または大気を介する伝送によって処理装置２に入力される信号１４として、及び／又は、キーボードなどのユーザ入力装置６を介してユーザによって入力される、プログラミング命令入力に従って動作するようにプログラムされる。
【００１２】
下で詳細に説明するように、プログラミング命令には、処理装置２に、異なる視点から記録された対象物体の複数の画像を定義する入力データを処理するように構成されるようにならせる命令が含まれる。入力データは、入力画像が記録された位置および向きを識別するデータを生成するために処理される。これらの計算された位置および向きと画像データを使用して、対象物体の３次元コンピュータ・モデルを定義するデータを生成する。
【００１３】
プログラミング命令によってプログラムされた時に、処理装置２は、効果的に、処理動作を実行するための複数の機能ユニットにより構成されている。そのような機能ユニットおよびそれらの相互接続の例が、図１に示されている。しかし、図１に示されたユニットおよび相互接続は、概念的であり、理解を助けるためにのみ例示のために示されたものであり、必ずしも処理装置２のプロセッサ、メモリなどが構成される正確なユニットおよび接続を表してはいない。
【００１４】
図１に示された機能ユニットを参照すると、中央コントローラ２０は、ユーザ入力装置６からの入力を処理し、他の機能ユニットに対する制御および処理も提供する。メモリ２４が、中央コントローラ２０および他の機能ユニットによる使用のために設けられる。
【００１５】
データ・ストア２６には、たとえばディスク２８などの記憶装置に保管されたデータとして、処理装置２に送信される信号３０として、またはユーザ入力装置６を使用することによって、処理装置２に入力される入力データが保管される。入力データによって、異なる位置および向きで記録された１つまたは複数の物体の複数のカラー画像が定義される。さらに、本実施形態では、入力データに、画像を記録したカメラに固有のパラメータすなわち、アスペクト比、焦点距離、主点（光学軸が結像面と交差する点）、一次半径方向ひずみ係数、およびスキュー角（画素グリッド上の軸の間の角度。軸が正確に直交しない場合があるので）を定義するデータも含まれる。
【００１６】
入力画像を定義する入力データは、たとえば、画像を記録したディジタル・カメラから画素データをダウンロードすることによるか、スキャナ（図示せず）を使用して写真をスキャンすることによって生成することができる。固有のカメラ・パラメータを定義する入力データは、ユーザがユーザ入力装置６を使用することによって入力することができる。
【００１７】
位置決定モジュール３２は、入力データ・ストア２６によって受け取られた入力画像を処理して、画像によって表される物体の画像データがそこから得られたカメラ視点の相対位置および向きを決定する。本実施形態では、これが、入力画像に存在する特徴の識別およびマッチングと、これらの一致を使用するカメラ・ビューの相対位置の計算によって、達成される。
【００１８】
表面モデラ３４は、入力画像を定義するデータと、画像が記録された位置および向きを定義するデータとを処理して、画像内の物体の実際の表面を表す３Ｄコンピュータ・ワイヤ・メッシュ・モデルを定義するデータを生成する。本実施形態では、この３Ｄモデルによって、モデリングされる対象物体の表面を表す複数の三角形が定義される。
【００１９】
表面テクスチャラ３６は、表面モデラ３４によって作られる表面モデルへのレンダリングのために、入力画像データからテクスチャ・データを生成する。具体的に言うと、本実施形態では、表面テクスチャラ３６が、入力画像データを処理して、対象物体を囲む箱から見られた対象物体の６つのビューを含む６つのテクスチャ・マップを生成する。これらの生成されたテクスチャ・マップは、その後、表面モデルのテクスチャ・レンダリングに使用され、その結果、任意の視点からのモデリングされた対象物体の画像を生成できるようになる。入力画像データからこれらのテクスチャ・マップを生成する表面テクスチャラ３６の処理は、後で詳細に説明する。
【００２０】
表示プロセッサ４０は、中央コントローラ２０の制御の下で、表示装置４を介してユーザに指示を表示する。さらに、中央コントローラ２０の制御の下で、表示プロセッサ４０は、表面モデラ３４によって生成された表面モデルを処理し、表面モデル上に表面テクスチャラ３６によって作られたテクスチャ・データをレンダリングすることによって、ユーザが選択した視点からの物体の３Ｄコンピュータ・モデルの画像も表示する。
【００２１】
プリンタ・コントローラ４２は、中央コントローラ２０の制御の下で、選択され、表示装置４に表示された物体の３Ｄコンピュータ・モデルの画像のハード・コピーを、プリンタ８によって印刷させる。
【００２２】
出力データ・ストア４４は、表面モデラ３４および表面テクスチャラ３６によって生成された表面モデルおよびテクスチャ・データを保管する。中央コントローラ２０は、たとえばディスク４６などの記憶装置上のデータとして、または信号４８としての、出力データ・ストア４４からのデータの出力を制御する。
【００２３】
表面モデラ３４によって作られた表面モデル上でのレンダリングのためのテクスチャ・データを生成する、表面テクスチャラ３６の構造および処理を、これから詳細に説明する。
【００２４】
＜カノニカル・テクスチャ・マップ＞
異なる視点から記録された対象物体の複数の画像が使用可能である時には、これによって、対象物体の表面的な外見に関する大量のデータがもたらされる。画像が異なる視点から記録される場合に、これらの画像が、対象物体の異なる部分のデータ量の変化をもたらす。というのは、これらの部分が、画像内で異なる量だけ可視になるからである。物体の外見のモデルを作成するためには、これらの画像を処理して、テクスチャ・データを生成し、その結果、対象物体の一貫性のあるテクスチャ・モデルを作成できるようにする必要がある。
【００２５】
本実施形態では、これが、表面テクスチャラ３６によって達成され、表面テクスチャラ３６は、表面モデラ３４によって作られた表面モデルをレンダリングするためのテクスチャ・データを生成するために、異なる視点から記録された対象物体の入力画像データを処理する。本実施形態では、このテクスチャ・データに、６つのテクスチャ・マップが含まれ、６つのテクスチャ・マップには、対象物体を中心とする立方体の６面からの対象物体のビューが含まれる。
【００２６】
図２は、例示的な対象物体５６を囲む６つのテクスチャ・マップ５０〜５５の位置および向きの例示的な図である。本実施形態では、６つのテクスチャ・マップに、上５０、下５１、前５２、後５３、左５４、および右５５からの物体のビューである、物体の６つのカノニカル・ビューのテクスチャ・マップが含まれる。
【００２７】
６つのカノニカル・ビュー５０〜５５には、３対の平行な画像面５０および５１、５２および５３、５４および５５が含まれ、これらは、モデルの座標系の原点を中心とし、３対の画像面のそれぞれが、めいめいの座標系の３つの座標軸の１つに沿って整列される。カノニカル・ビューが物体の中心から等間隔になり、各画像面から見られた物体の範囲が、範囲内の画素の閾値数を超えないように、表面モデラ３４によって作成される対象物体のモデル５６のサイズに対して相対的な物体からの距離が選択されるように、カノニカル・ビュー５０〜５５の視点の相対位置が選択される。本実施形態では、閾値が、５１２画素に設定される。その後、モデルのテクスチャ・マップのそれぞれが、定義された画像面への対象物体５６の透視投影によって定義される。
【００２８】
６つのカノニカル・ビュー５０〜５５のそれぞれの画像データを決定した後に、任意の視点からの対象物体のモデル５６の画像データを、通常のテクスチャ・レンダリング技法を使用して生成することができ、ここで、モデル５６の表面の各部分のテクスチャ・レンダリング・データが、カノニカル・ビュー５０〜５５の選択された部分を使用して生成される。
【００２９】
この形で対象物体のモデルのテクスチャ・データを生成することによって、必要なテクスチャ・マップの数が、６つのカノニカル・ビュー５０〜５５に制限される。さらに、カノニカル・ビューのそれぞれが、実世界の物体の投影のビューに対応するので、カノニカル・ビュー５０〜５５は、対象物体の現実的なビューを表さなければならず、したがって、実世界の画像の圧縮に最適化されたＪＰＥＧなどの標準画像圧縮アルゴリズムによる圧縮に適する。
【００３０】
対象物体のモデルの生成された画像では、６つのカノニカル・テクスチャ・マップのどれからでもテクスチャ・レンダリング・データが入手される可能性があるので、テクスチャ・マップのすべてが互いに一貫性を有する形で、すべてのテクスチャ・マップを生成することが必要である。したがって、対象物体の画像の異なる部分が、異なるビューからのテクスチャ・マップを使用してレンダリングされる、この形では、顕著な境界が生じない。どの３Ｄ物体でも、６つのカノニカル・ビュー５０〜５５のすべてからの対象物体の表面のすべてが、単一の入力画像で可視ではないので、表面テクスチャ３６で、６つのカノニカル・ビュー５０〜５５のテクスチャ・マップを生成するのに使用可能な複数の画像からの画像データを組み合わせることが必要である。
【００３１】
使用可能な入力画像から６つの一貫性のあるテクスチャ・マップの組を生成できるようにする、表面テクスチャラ３６による処理の詳細を説明する前に、概念的な機能処理ユニットに関する表面テクスチャラ３６の構造を、これから説明する。
【００３２】
＜表面テクスチャラの構造＞
図３は、本発明の本実施形態に従った表面テクスチャラ３６の概略ブロック図である。本実施形態では、表面テクスチャラ３６に、重み決定モジュール５８と、テクスチャ・マップ決定モジュール５９が含まれる。
【００３３】
６つのカノニカル・テクスチャ・マップ５０〜５５を生成するのに使用される使用可能な画像データの部分を選択するために、表面テクスチャラ３６は、データが入手された視点を識別する位置決定モジュール３２によって生成された位置データと、表面モデラによって出力された３Ｄモデル・データを使用する。この位置データおよび３Ｄモデル・データは、重み決定モジュール５８によって処理され、重み決定モジュール５８は、まず、モデル化される対象物体の表面の諸部分が使用可能な画像のそれぞれでどの範囲まで可視であるかを決定する。その後、重み決定モジュール５８は、この決定を使用して、対象物体のモデルの表面の各部分のテクスチャ・データを生成するために使用可能な入力画像を使用するための相対的な優先度を識別する重み関数データを生成する。
【００３４】
この重み関数データは、テクスチャ・マップ決定モジュール５９に渡され、テクスチャ・マップ決定モジュール５９は、位置決定モジュール３２によって生成された位置データ、表面モデラ３４によって生成されたモデル・データ、および入力データ・ストア２６に保管された使用可能な画像データと共に重み関数データを処理して、カノニカル・ビュー５０〜５５の６つの一貫性のあるテクスチャ・マップの組を生成する。
【００３５】
＜重み関数データの生成＞
対象物体のモデルの異なる部分のテクスチャ・データを生成するための異なる入力画像の使用の相対的な優先度を示す重み関数データを生成する重み決定モジュール５８の処理を、これから図４〜９、図１０Ａ、および図１０Ｂを参照して詳細に説明する。
【００３６】
図４は、重み決定モジュール５８の処理の流れ図である。
【００３７】
まず、重み決定モジュール５８は、表面モデラ３４によって生成された３Ｄモデルの三角形のそれぞれが入力データ・ストア２６内の画像のそれぞれで可視である範囲を示すデータを決定する（Ｓ４−１）。
【００３８】
特定の入力画像のどれについても、表面モデラ３４によって生成された３次元モデルの三角形によって表される対象物体のある部分が可視でなくなることは、不可避である。しかし、同一の三角形が、他の画像で可視になる可能性がある。したがって、３Ｄモデルの表面の各部分の現実的なテクスチャ・データは、画像データの異なる項目のうちで、対象物体の表面の対応する部分が可視である部分を使用することによってのみ生成することができる。したがって、各画像内でどの三角形が可視であるかを決定することによって、テクスチャ・マップを生成するための情報の潜在的なソースを識別することができる。
【００３９】
さらに、各三角形が使用可能な画像内でどの程度まで可視であるかを決定することも有用である。このようにすることで、テクスチャ・マップの諸部分を生成する画像データの好ましいソースとして、三角形が、可視ではあるが、鋭角でまたは遠い距離から見られる画像ではなく、三角形が、たとえばクローズ・アップ画像で、明瞭に可視である画像を選択することが可能になる。
【００４０】
図５は、表面モデラ３４によって生成された３Ｄモデル・データおよび位置決定モジュール３２によって決定された入力画像の位置データを使用して、入力画像内の三角形の可視性を決定するための重み決定モジュール５８の処理の詳細を示す流れ図である。
【００４１】
まず（Ｓ５−１）、重み決定モジュール５８が、位置決定モジュール３２によって位置データが生成された最初のビューを選択する。
【００４２】
その後、重み決定モジュール５８が、表面モデラ３４によって生成された３Ｄモデルの最初の三角形を選択する（Ｓ５−２）。
【００４３】
重み決定モジュール５８が、その後（Ｓ５−３）、処理中の位置データによって定義される視野から見られる、処理中の三角形の可視性値を決定する。
【００４４】
本実施形態では、これが、処理中の画像の位置データによって定義される視野から見られる、表面モデラ３４によって生成される３Ｄモデルをレンダリングために、通常のＯｐｅｎＧＬ呼出しを使用することによって達成される。生成された画像データは、可視性値の計算に使用される。
【００４５】
具体的に言うと、まず、選択された位置データによって定義される視点から見られた３Ｄモデルの三角形のすべてを、Ｚバッファリングを使用可能にして単一の色を使用してレンダリングする。このＺバッファ・データは、深さマップと同等である。その後、処理中の三角形を、Ｚバッファリングを使用不能にして異なる色（第２の色）を使用して再レンダリングする。その後、選択された三角形を、Ｚバッファに既に存在する深さ値を使用するように、Ｚバッファリングを再度使用にして、第３の色を使用して再レンダリングする。再レンダリングの時に、ｇｌＰｏｌｙｇｏｎＯｆｆｓｅｔ  ＯｐｅｎＧＬ関数を使用して、位置データによって定義されるカメラ視点に向かって三角形をわずかにシフトして、エイリアス効果を防ぐ。
【００４６】
現在選択されている位置データによって定義される視点から見られた、処理中の三角形の可視性値は、第２および第３の色でレンダリングされた画像の画素の数を計算することによって決定される。
【００４７】
具体的に言うと、生成された画像データに第２の色に対応する画素がある場合に、これらは、現在選択されている三角形のうちで、他の三角形によってさえぎられる部分であり、したがって、選択された三角形は、位置データによって定義される視点からは部分的に隠される。定義された視点から知覚される三角形の可視性値が以下の式に基づいて計算され、その三角形についてセットされる。ここで、
【００４８】
【数１】
0003782709.tif 000002
ただし、閾値は、本実施形態では０．７５にセットされる値である。
【００４９】
したがって、このようにすることで、三角形の全体が画像内で可視である場合に、１の可視性値が、三角形および位置データに関連付けられる。三角形が、処理中の位置データによって定義される位置から見られた時に他の三角形によってわずかにさえぎられるだけの場合すなわち、第２もしくは第３のいずれかの色でレンダリングされた画素の総数に対する第３の色でレンダリングされた画素の分数が、閾値より大きいが１より小さい場合には、１未満の値の可視性値が、画像位置の三角形に関連付けられる。総数に対する第３の色でレンダリングされた画素の分数が、閾値未満の場合には、０の可視性値が、位置データによって定義される位置から見られた三角形に割り当てられる。
【００５０】
前に説明した、レンダリングによる三角形とＺバッファに保管された値を使用する三角形とに色を付ける重み決定モジュール５８の処理によって、２つの小さい隣接する三角形が選択された視点で同一画素に写像される場合であっても、三角形を処理できるようになる。具体的に言うと、三角形の深さが、画像の同一部分に対応する三角形について類似する場合に、ｇｌＰｏｌｙｇｏｎＯｆｆｓｅｔ呼出しが、選択された視点から同一の距離の他の三角形の前に第２の色をレンダリングする効果を有する。したがって、選択された三角形の可視性を決定する時に、三角形は、定義された視点により近い他の三角形によってさえぎられ、単に画像の同一部分への同一距離の三角形のレンダリングによってさえぎられるのでない場合に限って、より低い可視性値を与えられる。
【００５１】
選択されたビューの三角形の可視性値を決定した後に、重み決定モジュール５８は、この可視性値を使用して、選択された視点での三角形の可視性スコアを計算し、保管する（Ｓ５−４）。
【００５２】
上で述べた形で可視性値を計算することによって、モデル内の三角形が選択された視点からさえぎらるまたはさえぎられない程度を示す値が決定される。しかし、他の要因も、テクスチャ・データを生成するための特定部分画像データの使用が好ましくなる可能性がある範囲に影響する。たとえば、クローズ・アップ画像は、物体のテクスチャに関するより多くの情報を含む傾向があり、したがって、テクスチャ・データの生成のための好ましいソースになる可能性がある。特定の画像がテクスチャ・データの生成のための使用に好ましいかどうかを決定できるもう１つの要因が、画像の部分がどの程度の斜角で見られるかである。したがって、本実施形態では、ビューでの三角形の可視性スコアを、次式を使用して重み決定モジュール５８によって決定する。
【００５３】
【数２】
0003782709.tif 000003
ここで、θは、選択された三角形の重心の法線に対する、処理中の位置データによって識別される画像面を定義するカメラの光心からの光線の入射の角度であり、距離は、選択された三角形の重心とカメラの光心の間の距離である。
【００５４】
したがって、この形で、本実施形態では、オクルージョンの量、ビューの斜角、および画像面とモデリングされる三角形の間の距離のすべてが、可視性スコアに影響する。他の実施形態としては、これらの要因の一部だけを使用するか、特定の要因により大きい重みをおくかのいずれかが可能である。
【００５５】
特定の視点から知覚される特定の三角形の可視性スコアを計算し、保管した後に、重み決定モジュール５８は、データが保管されたばかりの三角形が、表面モデラ３４によって生成されたモデル・データによって識別される最後の三角形であるかどうかを決定する（Ｓ５−５）。そうではない場合には、重み決定モジュール５８は、表面モデラ３４によって生成されたデータ・モデルの次の三角形を選択（Ｓ５−６）し、その後、その、次の三角形について、可視性値を決定し（Ｓ５−３）、可視性スコアを計算し、保管する（Ｓ５−４）。
【００５６】
重み決定モジュール５８が、可視性スコアが保管された三角形が表面モデラ３４によって生成された３Ｄモデル・データの最後の三角形であると決定する時には、重み決定モジュール５８は、入力データ・ストア２６に保管された入力画像の位置を定義する現在選択されている位置が、位置決定モジュール３２によって生成された位置データの組の最後であるかどうかを決定する（Ｓ５−７）。そうでない場合には、重み決定モジュール５８は、位置データの次の組を選択し（Ｓ５−８）、その新しい位置から知覚される三角形のそれぞれの可視性スコアを生成し、保管する（Ｓ５−２〜Ｓ５−７）。
【００５７】
したがって、このようにして、重み決定モジュール５８は、入力データ・ストア２６の入力画像データの視点に対応する視点のそれぞれから知覚される、すべての三角形の可視性スコアを生成し、保管する。
【００５８】
図４に戻って、位置決定モジュール３２によって生成された位置データに対応するカメラ・ビューのそれぞれから知覚される三角形のそれぞれについて可視性スコアを保管した後に、重み決定モジュール５８は、隣接する三角形にまたがるスコアの滑らかな変動を保証するために、各ビューで知覚された三角形の可視性スコアの変更（Ｓ４−２）に進む。
【００５９】
本発明の本実施形態では、可視性スコアが、テクスチャ・レンダリング・データを生成するために入力データ・ストア２６に保管される異なる入力画像の部分の使用に関する相対的な優先度を示す重み関数の生成に使用される。異なる入力画像からの画像データの選択が、テクスチャ・データの生成に異なる入力画像が使用される場合の顕著な境界の作成をもたらさないようにするために、連続的で適度に滑らかな重み関数を生成する重み関数データを生成し、その結果、異なるソースからの画像データが互いにブレンディングされるようにする必要がある。本実施形態では、３Ｄモデル・データを形成する三角形が、かなり異なるサイズを有する可能性があるので、そのような重みづけ関数の生成の第１ステージは、三角形サイズのこの変動を考慮するために、モデルの諸区域にまたがって重みづけ値の平均をとることである。
【００６０】
図６は、特定の視点から知覚される三角形に関連する可視性スコアを変更する、重み決定モジュール５８の詳細な処理の流れ図である。重み決定モジュール５８は、入力データ・ストア２６に保管されている画像データのビューのそれぞれに対応する三角形に関連する可視性スコア・データの組のそれぞれについて図６に示された処理を繰り返し、その結果、位置決定モジュール３２によって決定された位置データによって識別される各視点から知覚される隣接する三角形に関連する可視性スコア・データが、モデルの表面にわたって比較的滑らかに変動するようにする。
【００６１】
まず（Ｓ６−１）、重み決定モジュール５８が、表面モデラ３４から出力された３Ｄモデル・データによって識別される最初の三角形を選択する。
【００６２】
重み決定モジュール５８は、その後（Ｓ６−２）、処理中の視点から知覚された三角形の可視性の保管された可視性スコアに、０がセットされているかどうかを決定する。そうである場合には、可視性スコアの変更は行われない（Ｓ６−３）。これによって、処理中の視点から完全にさえぎられるか実質的にさえぎられると決定された三角形に関連する可視性スコアが、０の可視性スコアに関連付けられたままになり、したがって、その後に、テクスチャ・マップ・データの生成に使用されないことが保証される。
【００６３】
重み決定モジュール５８が、処理中の三角形の可視性スコアが０と等しくないと決定する（Ｓ６−２）場合には、重み決定モジュール５８は、標準的な方法を使用して、３Ｄ頂点から三角形の表面積を決定する（Ｓ６−４）。重み決定モジュールは、その後（Ｓ６−５）、総表面積が閾値を超えるかどうかを決定する。本実施形態では、閾値が、６つのカノニカル・ビュー５０〜５５によって定義される境界ボックスの長さの５％の自乗と等しくなるようにセットされる。
【００６４】
重み決定モジュール５８が、総表面積がこの閾値を超えないと決定する場合に、重み決定モジュールは、検討中の三角形と２つの頂点を共有する３Ｄモデル・データを有する、検討中の三角形に隣接する三角形を選択する（Ｓ６−６）。重み決定モジュール５８は、選択された三角形および選択された三角形に隣接する三角形の総表面を計算して（Ｓ６−４、Ｓ６−５）、処理中の三角形に対する視点に対応する画像面へのこれらの区域の投影の画素数が閾値を超えるかどうかをもう一度決定する。この処理は、選択された三角形に対応する総表面積が閾値を超えるまで繰り返される。
【００６５】
閾値を超えると決定される時に、重み決定モジュール５８は、中央の三角形に初期の改訂された可視性スコアとしてセットし（Ｓ６−７）、ここで、初期の改訂されたスコアは、表面によって重みづけされた現在選択されている三角形のすべてに関係する可視性スコアの平均に等しい。
【００６６】
通常は最大の未変更の重みの１０％にセットされる閾値が、この改訂された初期可視性スコアから減算される。三角形に関連する負の値は、すべて０にセットされる。この閾値によって、低い重みに関連する三角形が、０の可視性スコアに関連付けられるようになる。カメラ位置の計算の誤差、それ故の可視性スコアの計算の誤差が、表面が実際には可視でない三角形に低い重みを関連づける可能性がある。このようにして可視性スコアを減らすことによって、そのような誤差が、生成されるテクスチャ・マップ・データに後続の誤差を導入しないことが保証される。その後、三角形に関する最終的な改訂された可視性スコアを保管する。
【００６７】
図７および図８は、三角形のサイズとは無関係に滑らかなスコアの変動を保証するために可視性スコアを改訂するためのモデルの区域の処理の例示的な図である。
【００６８】
図７は、９つの三角形を含むモデルの区域の例示的な図であり、これらの三角形のそれぞれは、めいめいの三角形の中に示された数に対応する可視性スコアに関連する。
【００６９】
図７の中央の数１．０を有する中央のクロス・ハッチングされた三角形に対応する三角形が最初に処理される時に、三角形の面積が決定される。この面積が、閾値未満と決定される場合に、図７では陰付きの三角形である隣接する三角形が、選択され、クロス・ハッチングされた三角形および陰付きの三角形に対応する面積が、決定される。
【００７０】
この値が、閾値より大きい場合には、三角形に対する、面積によって重みづけされた平均が決定され、このスコアから閾値を引き、負の値に０をセットした後に、最終的な値が、中央の三角形の改訂された可視性スコアとして保管される。
【００７１】
図８は、三角形の可視性スコアのすべてが処理され、必要な場合に変更された後の、図７に示されたものと同一の区域に対応するモデルの区域の例示的な図である。図７および図８の三角形に関連する値を比較することによってわかるように、図７で三角形が０に関連する場合には必ず、その三角形が、図８で０に関連するままになっている。しかし、残りの三角形にまたがる変動は、図７に示された変動よりなだらかである。というのは、これらの新しいスコアが、図７の可視性スコアの面積によって重みづけされた平均に対応するからである。
【００７２】
図６に戻って、三角形について改訂された可視性スコアを決定した後に、重み決定モジュール５８は、ある視点から見られた、モデル内の三角形に関する可視性スコアのすべてを処理したかどうかを決定する（Ｓ６−８）。そうでない場合には、重み決定モジュール５８は、処理のために次の三角形を選択する（Ｓ６−９）。
【００７３】
したがって、このようにして、三角形に関連する可視性スコアのすべてが処理され、その結果、可視性スコアが、モデルの表面にわたって徐々に変化し、モデルのうち、可視性スコアが生成された視点から実質的に可視ではない全ての部分には０を与える。
【００７４】
図４に戻って、モデルの全体にわたる可視性スコアの滑らかな変動を保証するために必要であった、すべてのビューのすべての三角形の可視性スコアを修正した後に、重み決定モジュール５８は、すべてのビューのすべての三角形の重み関数データを計算し（Ｓ４−３）、その結果、定義された視点のそれぞれから見られたモデルの表面の可視性を示す滑らかな重み関数を生成できるようにする。
【００７５】
単一のビューに関するモデルの重み関数データを生成する重み決定モジュール５８の処理を、図９、図１０Ａ、および図１０Ｂを参照して詳細に説明する。この処理は、他のビューについて繰り返され、その結果、すべてのビューの重み関数データが生成される。
【００７６】
図９は、可視性スコアが決定され、修正された、位置決定モジュール３２によって出力された位置データの１組によって定義されるビューの表面モデラ３４から受け取られた３Ｄモデル・データによって定義されるモデルの表面の重み関数データを生成する重み決定モジュール５８の処理の流れ図である。
【００７７】
まず、重み決定モジュール５８が、モデルの最初の三角形を選択する（Ｓ９−１）。重み決定モジュール５８が、その後（Ｓ９−２）、選択された三角形の頂点のそれぞれについて、その頂点を共有する、モデル内の三角形に関連する最小の可視性スコアをセットする。この最小可視性スコアが、これらの頂点に対応するモデルの点の重み関数データとして保管される。
【００７８】
重み決定モジュール５８は、その後（Ｓ９−３）、選択された三角形の辺のそれぞれについて、現在選択されている三角形と、その共通の辺を共有する隣接する三角形のうちでより小さい可視性スコアをセットする。これらの値が、識別された辺のそれぞれの中点に関連する重みを定義する重み関数データとして保管される。
【００７９】
重み決定モジュール５８は、その後（Ｓ９−４）、選択された三角形の重心に関連する重み関数データとして、現在選択されている三角形に関連する可視性スコアを、重み関数データとして保管する。表面モデラ３４によって生成されたモデルの三角形のそれぞれの頂点、辺、および重心について重み関数データを割り当てることによって、後で説明するように、物体のモデルの表面の全体の値を、モデルの表面の残りの点を補間することによって決定することができる。
【００８０】
図１０Ａは、それぞれが可視性スコアに関連する三角形の選択の例示的な例である。
【００８１】
図１０Ｂは、０．５の可視性スコアに関連する、図１０Ａの三角形の頂点、辺、および重心に関連する重み関数の例である。
【００８２】
図１０Ｂからわかるように、重み関数が共通の辺または頂点を有する三角形に関連するスコアの最小値になるように、三角形の頂点および辺の重み関数データを選択することによって、０の可視性スコアを有する三角形に隣接する三角形の辺または頂点に関連する重み関数に、すべて０がセットされることが保証される。
【００８３】
各三角形の重心、辺、および頂点に重み関数データを関連付けることによって、三角形の辺にその後に関連付けられる重み値を、三角形の頂点が同一の値に関連する場合であっても変更できることが保証される。したがって、たとえば図１０Ｂでは、三角形の底辺の中央部分に、０．５の値が関連し、三角形の底辺の２つの頂点の両方に、０が関連する。単純な重み関数が使用され、三角形の辺に沿った位置に関連する重みが、頂点に割り当てられた重みだけによって決定される場合には、この変更を行うことができない。
【００８４】
図９に戻って、現在検討中の三角形の頂点、辺、および重心について重み関数データを決定し、保管した後に、重み決定モジュール５８は、現在検討中の三角形が、表面モデラ３４によって生成されたモデルの最後の三角形であるかどうかを決定する（Ｓ９−５）。
【００８５】
そうでない場合には、次の三角形を選択し（Ｓ９−６）、新たに選択された三角形について、重み関数データを決定し、保管する（Ｓ９−２〜Ｓ９−４）。
【００８６】
したがって、このようにすることで、モデル化される物体の表面にまたがって滑らかに変化し、モデルのうちで重み関数に関連する視点から可視でないすべての部分について０になる重み関数を生成するための重み関数データが、生成される。
【００８７】
図４に戻って、位置決定モジュール３２によって生成された位置データに対応するカメラ・ビューのそれぞれについて重み関数データを決定した後に、この重み関数データが、重み決定モジュール５８によってテクスチャ・マップ決定モジュール５９に出力され（Ｓ４−４）、その結果、テクスチャ・マップ決定モジュール５９が、生成されたモデルのテクスチャ・マップを生成するのに使用される画像データの部分を選択するのに、計算された重み関数データを使用できるようになる。
【００８８】
＜テクスチャ・マップの生成＞
通常のテクスチャ・レンダリング技法を使用すると、カノニカル・ビュー５０〜５５のそれぞれから知覚される投影された画像に対応する画像データを生成することが可能になり、対象物体のモデルの表面が、画像データについて位置決定モジュール３２によって出力された位置データに対応するカメラ視点から記録されたものとして識別される入力画像データを使用してテクスチャ・レンダリングされる。
【００８９】
出力重み関数データからの、カノニカル・ビュー５０〜５５のそれぞれから見られたモデルの表面の計算された重み関数に従ってテクスチャ・レンダリングされたモデルの表面の投影に対応する、投影された画像を生成するために従来の技法を使用することも可能である。
【００９０】
上で説明したように、重み決定モジュール５８によって生成され出力された重み関数データは、定義された視点からのモデルの表面の諸部分の相対的な可視性を表すように計算される。したがって、重み関数の投影された画像は、カノニカル・ビューのそれぞれについてテクスチャ・マップのテクスチャ・データを生成するための、対応する視点からの画像データの投影の対応する部分の使用の相対優先度を示す。したがって、これらの投影された重み関数画像（以下ではカノニカル信頼画像と称する）を使用して、カノニカル・ビュー５０〜５５の出力テクスチャ・マップを生成するためにブレンディングされる、投影された画像データの部分を選択することができる。
【００９１】
図１１は、入力データ・ストア２６に保管された画像データ、位置決定モジュール３２によって出力された位置データ、表面モデラ３４によって生成された３Ｄモデル・データ、および重み決定モジュール５８によって出力された重み関数データから、カノニカル・ビュー５０〜５５のそれぞれのカノニカル・テクスチャ・マップを生成する、テクスチャ・マップ決定モジュール５９の概念的機能モジュールの概略図である。
【００９２】
本出願人は、画像内でハイライトおよび影などの高周波数の詳細を維持しながらグローバルな照明効果を平均化するために異なる形で画像をブレンディングすることによって、対象物体のモデルの現実的なテクスチャの生成を達成できることを認識した。
【００９３】
したがって、本発明の本実施形態によれば、テクスチャ生成モジュール５９に、入力データ・ストア２６に保管された画像データから低周波数画像情報を抽出する低周波数画像生成モジュール６０と、高周波数カノニカル画像投影および低周波数カノニカル画像投影を生成する画像投影モジュール６２と、カノニカル信頼画像を生成する信頼画像生成モジュール６４と、ブレンディングされた高周波数カノニカル画像および低周波数カノニカル画像を生成するために高周波数カノニカル投影および低周波数カノニカル投影とカノニカル信頼画像を処理する加重平均フィルタ６６およびブレンディング・モジュール６８と、高周波数画像と低周波数画像を組み合わせ、カノニカル・ビュー５０〜５５のそれぞれのテクスチャ・マップとして組み合わされた画像を出力する出力の再組合せモジュール７０が含まれる。
【００９４】
６つのカノニカル・ビューのそれぞれに投影される、入力データ・ストア２６に保管された入力画像のそれぞれの高周波数カノニカル投影および低周波数カノニカル投影を生成するために、まず、入力データ・ストア２６内の画像データの各項目を、低周波数画像生成モジュール６０に渡す。
【００９５】
このモジュール６０は、各画像のブラーおよびサブサンプリングを行うことにより、従来の方法でビューのそれぞれの画像データを処理することによって、低周波数画像の組を生成する。本実施形態では、ブラー動作が、ガウス・ブラー動作を実行することによって達成され、ガウス・ブラー動作では、ブラー半径が、６つのカノニカル・ビュー５０〜５５によって定義される物体境界ボックスの中央に配置され、境界ボックスの対角線の長さの５％の辺を有する立方体の投影のサイズになるように選択される。このようなブラー半径の選択によって、半径が画像解像度とは独立しており、画像が対象物体のクローズ・アップである（大きい半径）か対象が画像内で小さく見える（小さい半径）かに応じて変化することが保証される。
【００９６】
これらの低周波数画像は、入力データ・ストア２６に保管された元の画像データのコピー、位置決定モジュール３２によって決定された画像のそれぞれの位置データ、および表面モデラ３４によって生成されたモデルの３Ｄモデル・データと共に、画像投影モジュール６２に渡される。
【００９７】
入力データ・ストア２６からの入力画像のそれぞれについて、画像投影モジュールは、画像に関連する位置データおよび表面モデラ３４によって出力された３Ｄモデル・データを使用して、標準的なテクスチャ・レンダリング技法を使用することによって、６つのカノニカル・ビュー５０〜５５から知覚される入力画像の計算された投影を決定する。
【００９８】
同じようにして、画像投影モジュール６２は、低周波数画像生成モジュール６０によって処理された画像データに対応する低周波数画像のそれぞれについて、６つのカノニカル・ビュー５０〜５５の６つの低周波数カノニカル投影を生成する。
【００９９】
各画像の６つの高周波数カノニカル画像投影は、画像投影モジュール６２によって差分動作を実行することにより決定される。すなわち画像投影モジュール６２は、指定されたカノニカル・ビューから見られた画像の低周波数カノニカル画像投影をそのビューの生画像データの対応する画像投影から引く処理を行う。
【０１００】
その後、６つのカノニカル・ビューのそれぞれの各画像の低周波数カノニカル投影および高周波数カノニカル投影が、後で説明する処理のために、加重平均フィルタ６６およびブレンディング・モジュール６８に渡される。
【０１０１】
このようにして、入力データ・ストア２６からの画像データを処理することによって、この画像の処理によって、互いに一貫性がある各画像の高周波数カノニカル投影および低周波数カノニカル投影が生成されることを保証することができる。対照的に、ブラー動作が、入力データ・ストア２６に保管された画像データから作成されたカノニカル画像投影に対して実行される場合には、これらの生成された投影の画素データが、通常は元の画像データの異なる領域に依存するので、ブラー動作が、６つのすべてのカノニカル画像にまたがって一貫性を有しなくなり、したがって、生成されるテクスチャ・マップに誤差が導入される。
【０１０２】
信頼画像生成モジュール６４は、表面モデラ３４からの３Ｄモデル・データおよび重み決定モジュール５８からの重み関数データを受け取るように配置される。信頼画像生成モジュール６４は、３Ｄモデル・データおよび重み関数データを処理して、入力データ・ストア２６内の各入力画像の視点に対応する視点に関連する重み関数のそれぞれについて、６つのカノニカル・ビュー５０〜５５のカノニカル信頼画像の組を生成する。
【０１０３】
具体的に言うと、重み関数が保管された三角形のそれぞれが、まず、三角形の各辺の中点を他の２つの辺の中点に連結し、各辺の中点のそれぞれを三角形の重心に連結することによって処理される。これらの定義された小さい三角形のそれぞれが、６つのカノニカル・ビューに投影され、各小さい三角形の投影の各部分に対応する点の値が、これらの小さい三角形の頂点に関連する重み関数データから、標準ＯｐｅｎＧＬ「スムーズ・シェーディング」補間を使用して補間される。
【０１０４】
したがって、このようにすることで、６つのカノニカル・ビューのそれぞれについて、重み関数のそれぞれについてカノニカル信頼画像が生成される。このようにして生成されたカノニカル信頼画像の画素値は、それぞれ、テクスチャ・マップ・データを生成するために重み関数が生成された視点を表す画像データのカノニカル投影の対応する部分の使用の相対的案優先度を表す。これらのカノニカル信頼画像は、加重平均フィルタ６６およびブレンディング・モジュール６８に渡され、その結果、６つのカノニカル・ビューのテクスチャ・データを、テクスチャ・マップ・データの部分を生成するための好ましいソースを識別するデータを使用して生成することができるようになる。
【０１０５】
したがって、低周波数画像生成モジュール６０、画像投影モジュール６２、および信頼画像生成モジュール６４による画像データおよび重み関数データの処理の後に、加重平均フィルタ６６およびブレンディング・モジュール６８が、入力データ・ストア２６に保管された画像データの各項目について、指定された画像から導出された投影された画像の諸部分がテクスチャ・データの生成に好ましい程度を識別する６つのカノニカル信頼画像の組と、画像データの項目に対応する高周波数画像または低周波数画像のいずれかの６つの投影の組を受け取る。加重平均フィルタ６６およびブレンディング・モジュール６８は、これから詳細に説明するように、カノニカル・ビューのそれぞれについて、信頼画像および関連する低周波数カノニカル投影および高周波数カノニカル投影の処理を交互に行う。
【０１０６】
＜低周波数カノニカル投影の処理＞
図１２は、入力データ・ストア２６に保管された入力画像の組のそれぞれの、指定されたカノニカル・ビューの低周波数カノニカル投影および関連するカノニカル信頼画像の処理の流れ図である。
【０１０７】
まず（Ｓ１２−１）、加重平均フィルタ６６が、最初の低周波数カノニカル投影およびそれに関連する位信頼画像を選択する。これは、加重平均フィルタ６６によって生成される初期低周波数カノニカル画像の基礎にされる。加重平均フィルタ６６は、同一のカノニカル・ビューの次の低周波数投影を、その投影に関連する信頼画像と共に選択する（Ｓ１２−２）。
【０１０８】
加重平均フィルタ６６は、その後（Ｓ１２−３）、新しい低周波数カノニカル画像として、画像内の画素ごとに、次式を使用して信頼スコアによって重みを付けられた、現在の低周波数カノニカル画像と選択された低周波数カノニカル投影の加重平均を含むカノニカル画像を決定する。
【０１０９】
【数３】
0003782709.tif 000004
ここで、Ｃは、カノニカル画像について処理中の画素に関連する現在の信頼スコアであり、Ｃｉは、選択された投影に関連する信頼画像の画素に関連する信頼スコアである。
【０１１０】
その後、カノニカル画像内の画素の信頼スコアを、処理される最新の投影の信頼スコアを現在の信頼スコアに加算することによって更新する。すなわち、新しい信頼スコアＣnewは、次式によって計算される。
【０１１１】
Ｃnew＝Ｃold＋Ｃｉ
ここで、Ｃoldは、現在の画素に関連する信頼スコアの前の信頼スコアであり、Ｃｉは、処理中の投影内の現在の画素の信頼スコアである。
【０１１２】
加重平均フィルタ６６は、その後（Ｓ１２−４）、最新の選択された低周波数カノニカル投影が、現在計算中のカノニカル・ビューの最後の低周波数カノニカル投影であるかどうかを決定する。そうでない場合には、加重平均フィルタ６６は、決定された組み合わされた画像を使用して、次の信頼画像および関連する低周波数画像投影を使用して新しい組み合わされた画像を生成する処理に進む（Ｓ１２−２〜Ｓ１２−４）。
【０１１３】
加重平均フィルタ６６が、指定されたカノニカル・ビュー５０〜５５の最後の低周波数カノニカル投影を処理したと決定する時（Ｓ１２−４）には、加重平均フィルタ６６は、ブレンディングされたカノニカル低周波数画像として、加重平均フィルタ６６によって処理された最後の投影された画像の加重平均を使用して生成された画像を出力する（Ｓ１２−５）。
【０１１４】
したがって、このようにして、加重平均フィルタ６６が、カノニカル・ビュー５０〜５５のそれぞれについて、カノニカル信頼画像内のモデルの表面テクスチャを最もよく表すものとして識別される画像の部分を示す信頼スコアによって重みを付けられた低周波数カノニカル投影のそれぞれを組み合わせることによって、低周波数画像の生成を可能にする。低周波数画像は、グローバル照明効果によって影響される表面の平均ローカル色を表す。加重平均フィルタ６６によるこの処理によって、モデルの諸部分が最も簡単に見られる画像により大きい重みが置かれ、これらのグローバル照明効果が最適の使用可能な画像にまたがって平均される場合に、カノニカル低周波数画像の生成が可能になり、カノニカル低周波数画像に、現実的な外見と自然な色合いが見えるようにする。
【０１１５】
＜高周波数カノニカル投影の処理＞
図１３は、カノニカル・ビュー５０〜５５のうちの１つのカノニカル高周波数画像を生成するための、カノニカル信頼画像および関連する高周波数カノニカル投影の処理の流れ図である。この処理は、カノニカル・ビュー５０〜５５のそれぞれについて繰り返される。
【０１１６】
高周波数カノニカル画像を生成するためのブレンディング・モジュール６８の処理は、カノニカル投影およびカノニカル画像の画素の加重平均を決定するのではなく、この実施形態ではブレンディング・モジュール６８がカノニカル画像データ画像データとして、最も大きい信頼スコアに関連する画素データを選択することを除いて、加重平均フィルタ６６の処理のそれと同一である。
【０１１７】
具体的に言うと、初期の高周波数投影および関連する信頼画像が初期高周波数カノニカル画像および関連する信頼画像になるように選択し（Ｓ１３−１）、処理のために次の投影および信頼画像を選択し（Ｓ１３−２）た後に、ブレンディング・モジュール６８は、現在の高周波数カノニカル画像内の画素を更新する（Ｓ１３−３）。
【０１１８】
これは、ブレンディング・モジュール６８が、画像内の画素ごとに、処理中の高周波数カノニカル投影内の対応する画素の画素データまたは現在の高周波数カノニカル画像の画素データのいずれかを選択することによって達成される。選択は、画素ごとに、処理中の高周波数投影に関連する信頼画像内の対応する画素が、現在のカノニカル画像内の画素に関連する信頼スコアより高い信頼スコアを有するかどうかを決定することによって行われる。最高のスコアに関連する画素データが、カノニカル画像の画素データとして使用される。更新されたカノニカル画像内の画素に関連する信頼スコアには、カノニカル画像に関連する信頼画像または現在処理中の投影のいずれかによって識別される画素の信頼スコアの大きい方がセットされる。
【０１１９】
ブレンディング・モジュール６８は、カノニカル・ビューの高周波数画像投影のすべてが処理されたかどうかを決定する（Ｓ１３−４）。そうでない場合には、次の投影および信頼画像を使用して、生成される高周波数カノニカル画像を更新する（Ｓ１３−２〜Ｓ１３−４）。すべてのカノニカル投影を処理した時に、最終的なカノニカル画像を出力する（Ｓ１３−５）。
【０１２０】
したがって、このようにすることで、高周波数カノニカル画像の各画素が、その画素の信頼スコアのうちの最も大きい信頼スコアに関連する、使用可能な高周波数画像投影からの画素データに対応する場合に、使用可能な高周波数画像投影のすべてを使用して、高周波数カノニカル画像が生成される。信頼スコアは、画像データを生成するための画素の選択の相対的なよさを示すので、高周波数カノニカル画像は、高周波数カノニカル画像の各部分の最良の使用可能な画素データのパッチワークに対応する。
【０１２１】
したがって、このようにすることで、６つのカノニカル・ビュー５０〜５５の６つの低周波数カノニカル画像と、６つの高周波数カノニカル画像が、それぞれ加重平均フィルタ６６およびブレンディング・モジュール６８によって生成される。カノニカル低周波数画像では、グローバル照明効果が、投影に関連するカノニカル信頼画像によって識別される画像の部分の使用の相対的な優先度に比例して、使用可能な低周波数カノニカル投影の間で平均される。高周波数カノニカル画像では、高周波数カノニカル投影が、上で説明した形で選択されて、異なる高周波数カノニカル投影が組み合わされる時に、カノニカル画像内の高周波数の詳細およびコントラストが維持されることが保証される。
【０１２２】
６つのカノニカル低周波数画像および６つのカノニカル高周波数画像が、その後、カノニカル・ビュー５０〜５５のそれぞれについて、再組合せ出力モジュール７０によって受け取られ、再組合せおよび出力モジュール７０が、各ビューの高周波数画像および低周波数画像を加算することによって、単一のカノニカル・テクスチャ・マップを生成する。組み合わされたカノニカル・テクスチャ・マップは、表面モジュール３４によって生成された３Ｄモデル・データと共に、出力データ・ストア４４での保管のために、再組合せおよび出力モジュール７０によって出力される。
【０１２３】
出力カノニカル・テクスチャ・マップは、３次元モデル・データによって識別される三角形のそれぞれをテクスチャ・マップの１つと関連付けることによって、表面モデラ３４によって生成されたモデルの画像表現をテクスチャ・レンダリングするのに使用することができる。本実施形態では、各三角形をテクスチャ・レンダリングするためのテクスチャ・データの選択が、三角形が最大の可視性スコアを有するマップを、使用されるマップとして選択することによって決定され、ここで、可視性スコアは、図５に関して前に説明したのと同一の形で、カノニカル・ビュー５０〜５５のそれぞれについて計算される。表面モデラ３４によって生成されたモデルをテクスチャ・レンダリングするためのテクスチャ座標は、選択されたカノニカル・ビュー５０〜５５への三角形の投影によって暗黙のうちに定義される。
【０１２４】
その後、対象物体のモデルの画像を、表示装置４での表示のために、出力データ・ストア４４に保管された出力カノニカル・テクスチャ・マップおよび３Ｄモデル・データを使用して、すべての視点について得ることができ、生成された画像のハード・コピーは、プリンタを使用して作ることができる。出力データ・ストア４４に保管されたモデル・データおよびテクスチャ・マップは、記憶装置４６および４８にデータとして出力することもできる。
【０１２５】
［第２の実施形態］
本発明の第１の実施形態では、異なる視点から記録された対象物体の複数の画像を定義する入力データを処理して、対象物体のモデルを囲む立方体のビューである６つのカノニカル・テクスチャ・マップを含むテクスチャ・データを生成する画像処理装置について説明した。このようにしてテクスチャ・マップを生成することによって、必要なビューの総数が６個に制限されることが保証されるが、モデル内のすべての三角形がカノニカル・ビューのうち、少なくとも一つで可視になることは保証されない。その結果、モデルのある部分が、モデルの表面の異なる部分に対応する表面情報を使用してテクスチャ・レンダリングされる可能性がある。本発明の本実施形態では、３Ｄモデルのすべての三角形が、対象物体の対応する部分を表す画像データが使用可能である場合に、対象物体の表面の対応する部分のテクスチャ・データを使用してレンダリングされることを保証するテクスチャ・データを生成する画像処理装置について説明する。
【０１２６】
本発明の本実施形態に従った画像処理装置は、表面テクスチャラ３６が、修正された表面テクスチャラ８０によって置換されることを除いて、前述の第１の実施形態の画像処理装置と同一である。
【０１２７】
図１４は、修正された表面テクスチャラ・モジュール８０の概念的機能モジュールの概略ブロック図である。修正された表面テクスチャラ８０には、カノニカル・ビュー決定モジュール８２、前の実施形態の表面テクスチャラ３６の重み決定モジュール５８と同一の重み決定モジュール５８、および修正されたテクスチャ・マップ決定モジュール８６が含まれる。
【０１２８】
本実施形態では、カノニカル・ビュー決定モジュール８２が、表面モデラ３４によって出力された３Ｄモデル・データから、３Ｄモデルの表面の部分が６つの初期カノニカル・ビューから可視でないかどうかを決定するように配置される。そうであると決定される場合には、カノニカル・ビュー決定モジュール８２は、これらの三角形のテクスチャ・データを保管するためのカノニカル・ビューのさらなる組の定義に進む。これらのビュー定義は、テクスチャ・マップ決定モジュール８６に渡される。修正されたテクスチャ・マップ決定モジュール８６は、初期カノニカル・ビューおよびこれらの追加のカノニカル・ビューのカノニカル・テクスチャ・マップ・データを生成し、これらが、表面モデラ３４によって生成されたモデルの表面のテクスチャ・レンダリングに使用される。
【０１２９】
本発明の本実施形態によるカノニカル・ビュー決定モジュール８２の処理を、カノニカル・ビュー決定モジュール８２の処理の流れ図である図１５を参照して、これから説明する。
【０１３０】
まず（Ｓ１５−１）、カノニカル・ビュー決定モジュール８２が、表面モデラ３４によって生成されたモデルの最初の三角形を選択する。カノニカル・ビュー決定モジュール８２は、その後（Ｓ１５−２）、前の実施形態に関して前に説明したように可視性値が重み決定モジュール５８によって生成されるのに類似する形で、６つのカノニカル・ビューのそれぞれから知覚される三角形の可視性値および可視性スコアを生成する。
【０１３１】
カノニカル・ビュー決定モジュール８２は、その後（Ｓ１５−３）、処理中の三角形に関連する可視性値が、閾値より大きく、その三角形がビューの少なくとも１つで少なくとも実質的に可視であることが示されるかどうかを決定する。本実施形態では、この閾値に０がセットされ、その結果、ビューの１つで少なくとも７５％可視であるすべての三角形が、実質的に可視として識別される。
【０１３２】
カノニカル・ビュー決定モジュール８２が、処理中の三角形が可視である、すなわち、少なくとも１つのビューで０より大きい可視性値を有すると決定する場合には、カノニカル・ビュー決定モジュールは、使用可能なカノニカル・ビューから、前に説明した形で生成される最大の可視性スコアが三角形に関連付けられるビューを選択する。選択された三角形が最も可視であるカノニカル・ビューを識別するデータを、保管する。したがって、このようにして、後に使用される三角形をレンダリングするためのテクスチャ・データのカノニカル・ビューを識別するデータが、生成される。
【０１３３】
カノニカル・ビュー決定モジュール８２は、その後（Ｓ１５−５）、現在選択されている三角形が、表面モデラ３４によって生成された３Ｄモデルの最後の三角形に対応するかどうかを決定する。そうでない場合には、カノニカル・ビュー決定モジュール８２は、次の三角形の選択に進み、その、次の三角形の可視性値および可視性スコアを決定する（Ｓ１５−６〜Ｓ１５−５）。
【０１３４】
カノニカル・ビュー決定モジュール８２が、三角形のすべてが処理されたと決定する（Ｓ１５−５）時には、カノニカル・ビュー決定モジュール８２は、最良のビューを識別するデータが、すべての三角形について保管されたかどうかを決定する（Ｓ１５−７）。
【０１３５】
そうでない場合には、カノニカル・ビュー決定モジュール８２は、最良ビュー・データが保管されていない三角形のリストを生成し、保管し（Ｓ１５−８）、カノニカル・ビュー決定モジュール８２は、その後、最良ビュー・データが既に保管された三角形なしで、６つのカノニカル・ビューでのこれらの残りの三角形の可視性の確立に進む（Ｓ１５−１〜Ｓ１５−７）。この処理は、すべての三角形について最良ビュー・データが保管されるまで繰り返される。
【０１３６】
カノニカル・ビュー決定モジュール８２が、すべての三角形について最良ビュー・データを保管したと決定する（Ｓ１５−７）時には、カノニカル・ビュー決定モジュール８２は、三角形のそれぞれについて、その三角形が最も可視であるカノニカル・ビューを、三角形不可視カノニカル・ビューの生成されたリストと共に含むビュー定義データを出力する（Ｓ１５−９）。これらのリストおよび、三角形を最もよく表現すると識別されたビューが、出力され、修正されたテクスチャ・マップ決定モジュール８６に渡される。
【０１３７】
修正されたテクスチャ・マップ決定モジュール８６は、３Ｄモデル・データ、重み関数データ、画像データ、および位置データを処理する時に、第１の実施形態に関して説明したものと同一の形で、６つの元のカノニカル・ビューを生成する。
【０１３８】
しかし、テクスチャ・マップ決定モジュール８６は、さらに、カノニカル・ビュー決定モジュール８２によって出力されたリストによって、元の６つのカノニカル・ビューで可視でないと識別される三角形について、他の三角形なしで６つのカノニカル・ビューでカノニカル・ビュー決定モジュール８２によって生成された三角形のリストによって識別される三角形の投影に対応するさらなるテクスチャ・マップを生成する。これらの追加のカノニカル・ビューは、修正されたテクスチャ・マップ決定モジュール８６の画像投影モジュール６２によって生成された画像データの高周波数カノニカル投影および低周波数カノニカル投影と、カノニカル・ビュー決定モジュール８２によって出力された三角形のリストによって識別される三角形だけのカノニカル投影である追加のカノニカル信頼画像から生成される。これらの追加の信頼画像は、第１の実施形態に関して前に説明したものと同一の形で、重み決定モジュール５８によって生成された重み関数データを使用してリスト内で識別された三角形について計算される。
【０１３９】
したがって、このようにして、追加のテクスチャ・マップが、モデルの表面のうちで元の６つのカノニカル・ビューに現れない部分について生成される。これらの部分的な追加のテクスチャ・マップは、主カノニカル・ビューに類似する形で生成されるので、これらも、画像の部分の投影を表し、標準的な画像圧縮技法を使用する圧縮に適する。
【０１４０】
元のカノニカル・ビューを、これらの追加のカノニカル・ビューと共に使用して、各三角形のレンダリングに使用されるテクスチャ・マップが、カノニカル・ビュー決定モジュール８２によって出力されるリストおよび最良のビューを識別するデータを使用して選択される場合に、モデルのテクスチャ・レンダリングに使用することができる。
【０１４１】
［第３の実施形態］
本発明の第３の実施形態を、これから説明する。第１の実施形態では、関連する信頼画像内の対応する画素の最高の信頼スコアに関連する画素に対応する画素データを選択するブレンディング・モジュール６８について説明した。そのような選択システムに関する問題は、異なる画像ソースからの画素データの選択を表す境界が、生成されるテクスチャ・マップ・データ内に現れる可能性があることである。加重平均フィルタ６６によって実行されるものなどの平均化動作を実行するというこの問題に対する明白な解決策は、テクスチャ・マップ・データ内のコントラストが失われるので、望ましくない。本実施形態では、ブレンディング・モジュール６８が、画像コントラストを維持しながら、テクスチャ・マップ・データ内で顕著な境界が生じないようにする形で高周波数カノニカル投影を処理するように配置される。
【０１４２】
図１６は、本発明の本実施形態による、ブレンディング・モジュール６８によるカノニカル信頼画像および関連する高周波数カノニカル画像投影の処理の流れ図である。
【０１４３】
まず（Ｓ１６−１）、ブレンディング・モジュール６８が、カノニカル高周波数画像を生成するカノニカル・ビューの高周波数カノニカル投影の最初の１つを選択し、選択された最初の高周波数投影に対応する画像を、初期カノニカル高周波数画像としてセットする。
【０１４４】
ブレンディング・モジュール６８は、その後（Ｓ１６−２）、そのカノニカル・ビューの次の高周波数カノニカル投影と、それに関連するカノニカル信頼画像を処理のために選択する。
【０１４５】
その後（Ｓ１６−３）、カノニカル高周波数画像の最初の画素を選択し、ブレンディング・モジュール６８は、その後（Ｓ１６−４）、高周波数カノニカル画像内の選択された画素について、現在の高周波数カノニカル画像内の画素と、処理中の高周波数カノニカル投影内の対応する画素内との間の差分値を決定する。
【０１４６】
本実施形態では、高周波数カノニカル投影およびカノニカル高周波数画像に、カラー・データが含まれる場合には、この差分値は、選択された高周波数カノニカル投影および生成中のカノニカル高周波数画像の対応する画素の赤チャネル、緑チャネル、および青チャネルのそれぞれの対応する値の間の差分の合計を決定することによって計算することができる。
【０１４７】
一方、処理中の画像にグレイ・スケール・データが含まれる場合には、この差分値を、カノニカル高周波数画像の画素と、処理中の高周波数カノニカル投影の対応する画素との間の差分を計算することによって決定することができる。
【０１４８】
より一般的に、カラー・データが処理される本発明のさらなる実施形態で、処理中の高周波数カノニカル投影と生成中のカノニカル高周波数画像の対応する画素の赤チャネル、緑チャネル、および青チャネルの値の適当な関数を使用して、画素の差分値を生成できることを了解されたい。
【０１４９】
処理中の画素の差分値を決定した後に、ブレンディング・モジュール６８は、画素に関連する信頼スコアおよび決定された画素の差分値から、選択された画素のブレンド関数を決定する（Ｓ１６−５）。
【０１５０】
本実施形態では、このブレンド関数が、まず、決定された画素の差分値に依存する勾配Ｇを選択することによって決定される。具体的に言うと、本実施形態では、値Ｇが、次式によって計算される。
【０１５１】
【数４】
0003782709.tif 000005
ここで、Ｄは、決定された画素の差分値であり、Ｄ0は、重みづけ係数が画像間で検出された差分に起因して変更される範囲を固定するブレンド定数である。本実施形態では、差分値Ｄが、それぞれが０から２５５まで変化する３つのカラー・チャネルについてカラー画像データから計算される場合、Ｄ０の値には６０がセットされる。
【０１５２】
現在のカノニカル高周波数画像内の処理中の画素と、処理中の高周波数カノニカル投影内の対応する画素との間の加重平均を計算するための初期重みづけ分数は、次式を計算することによってセットされる。
【０１５３】
【数５】
0003782709.tif 000006
ここで、Ｃｉ／（Ｃ＋Ｃｉ）は、選択された高周波数カノニカル投影に関連する信頼画像内の処理中の画素に関連する相対信頼スコアであり、カノニカル画像によって画素に関連付けられた信頼スコアに対する処理中の現在の画像内の画素に関連する信頼スコアＣｉの比率であり、Ｇは、画素の決定された差分値Ｄを使用して決定される勾配である。
【０１５４】
最終的な重みづけ分数は、次式によって重みづけ値Ｗをセットすることによって決定される。
【０１５５】
Ｗ0＜０の場合、Ｗ＝０
Ｗ0＞１の場合、Ｗ＝１
０≦Ｗ0≦１の場合、Ｗ＝Ｗ0
図１７は、このようにして計算される最終的な重みづけ値Ｗが、処理中の画素の相対信頼スコアＣｉ／（Ｃ＋Ｃｉ）および画素の決定された差分値Ｄに応じて変化する形を示す、生成されるブレンド関数のグラフである。
【０１５６】
図示のグラフでは、実線７２が、Ｄが高い値に等しい場合、たとえば、Ｄが０と７６５の間の範囲であるこの実施形態では、７００を超える値の場合の、重みづけ値のＷを計算するためのグラフを示す。したがって、このグラフでは、特定のソースの相対信頼スコアが低い場合に、０の重みづけ値が選択され、高い画素信頼スコアの場合に、１の重みづけ値が選択されることが示されている。中間の画素信頼スコアの場合、中間の重みづけ係数が決定され、この重みづけ係数は、信頼スコアが増えるにつれて増える。
【０１５７】
図１７の破線７４は、ある画素に関する第１画像および第２画像の画像データの間の差分の計算された値Ｄが、ブレンド定数Ｄ0以下である場合のブレンド関数を示す図である。この場合、ブレンド関数は、重みづけ値に画素の画素相対信頼スコアに等しい値をセットする関数からなる。
【０１５８】
Ｄの中間の値の場合、ブレンド関数は、実線７２と破線７４の間で変化する。閾値がそれを下回るか上回る場合に０または１の重みづけ値が出力され、Ｄの減少につれて減少し、増加する。したがって、Ｄが減少するにつれて、相対信頼スコアのうちで、０または１以外の重みづけ値が出力される部分の比率が、増える。
【０１５９】
図１６に戻って、最終的な重みづけ値Ｗを決定した後に、ブレンディング・モジュール６８は、検討中の画素のブレンディングされた画素データの計算および保管（Ｓ１６−６）に進む。本実施形態では、画像データにカラー画像データが含まれる場合、計算されるブレンディングされた画素データが、次式によって３つのカラー・チャネルのそれぞれについて決定される。
【０１６０】
新しい画素値＝Ｗ×［選択された画像の画素値］＋（１−Ｗ）×［カノニカル画像の画素値］
その後、ブレンディングされた画素に関連する信頼値も、カノニカル画像内の画素に関連する現在の信頼スコアと処理中の投影内の画素の信頼スコアのうちの大きい方を画素の新しい信頼スコアとして選択し、保管することによって、更新される。
【０１６１】
このようにして、高周波数カノニカル画像の画素の画素データを計算することの効果は、画素データが、差分データと、選択された高周波数カノニカル投影の処理される画素に関連する信頼データとの両方に依存するようになることである。具体的に言うと、画素の差分データが小さい（すなわち、ブレンド定数Ｄ0以下）の場合に、関連するカノニカル画像の画素の相対信頼スコアに比例する加重平均に対応する計算された画素データが、使用される。差分データが大きい（すなわち、ブレンド定数Ｄ0を超える）場合には、１対の閾値が、差分データの実際の値に基づいて設定される。その後、画素データが、関連するカノニカル画像の画素の相対信頼スコアに応じて、２つの異なる形で生成される。相対信頼スコアが、これらの閾値の両方より大きいか両方より小さい場合に、カノニカル画像の元の画素データまたは選択された高周波数カノニカル投影の画素データのいずれかだけが、合成画像データとして使用される。相対信頼スコアが、閾値の間にある場合には、元の画素データと選択された投影からの画素データの加重平均が使用される。
【０１６２】
生成された画素データを保管した後に、ブレンディング・モジュール６８は、現在検討中の画素が、カノニカル画像の最後の画素であるかどうかを決定する（Ｓ１６−７）。そうでない場合には、非線形平均フィルタが、次の画素を選択し（Ｓ１６−８）、次の画素に関する、差分値の決定（Ｓ１６−４）、ブレンド関数の決定（Ｓ１６−５）、および画素データの計算および保管（Ｓ１６−６）を繰り返す。
【０１６３】
画素に関して生成された画素データおよび改訂された信頼スコアを保管した後に、ブレンディング・モジュール６８が、ブレンディングされた画素データが、高周波数カノニカル画像のすべての画素について保管されたと決定する（Ｓ１６−７）場合に、ブレンディング・モジュール６８は、選択された高周波数カノニカル投影および関連する信頼画像が、処理される最後の高周波数カノニカル投影および信頼画像であるかどうかを決定する（Ｓ１６−９）。そうでない場合には、次の高周波数カノニカル投影を選択し（Ｓ１６−２）、この新たに選択された投影およびそれに関連する信頼画像を使用して、カノニカル高周波数画像を更新する（Ｓ１６−３〜Ｓ１６−６）。
【０１６４】
ブレンディング・モジュール６８が、カノニカル高周波数画像の更新に使用された最新の高周波数カノニカル投影が、最後の高周波数カノニカル投影であると決定する時に、ブレンディング・モジュール６８は、カノニカル・ビュー５０〜５５の高周波数画像として、最終的な高周波数投影によって更新された高周波数カノニカル画像を出力する（Ｓ１６−１０）。
【０１６５】
本出願人は、詳細を表すデータを含む高周波数画像データからの画素の加重平均を決定することによる合成画像データ生成の望ましくない効果が、画像のうちで、ソース・データの異なる項目が大きく異なる区域で生じることを認識した。したがって、たとえば、ハイライトが、あるソース画像のある点で発生するが、別のソース画像の同一の点で発生しない場合に、画像にまたがる平均が、ハイライトのコントラストの消失をもたらす。２つの画像のハイライトが、２つのソース画像内の異なる点で発生する場合には、平均によって、合成画像の別の部分での「ゴースト」ハイライトの生成ももたらされる可能性がある。同様に、ソース・データの異なる項目が、大きく異なる場合に、他の望ましくない影響が、影の点で発生し、この場合、平均動作が、画像が均一に照らされて見え、したがって平坦に見えるようにするという傾向を有する。
【０１６６】
ソース画像の間の差の区域が異なり、異なるソース画像内の対応する点が類似する外見を有する場合には、平均動作によって、明白な画像品質の劣化は生じない。したがって、合成画像のそのような区域にわたって平均を実行することによって、ソース画像から得られる合成画像の区域の間の境界を目立たなくするように、画像データの異なるソースに付加された相対重みを変更できる手段が提供される。
【０１６７】
したがって、本発明の本実施形態によれば、重みづけ係数が、画素の信頼データと差分データの両方に基づいて選択され、その結果、加重平均フィルタ６６で発生する信頼データだけに比例する重みづけ係数に対して相対的に、ブレンディング・モジュール６８内で、ソース画像の間の差分が大きいと決定される場合に、好ましいソース・データに与えられる重みづけが増やされ、より好ましくないデータに与えられる対応する重みづけが減らされる。
【０１６８】
したがって、信頼データと差分データの両方が大きい場合に、より大きい重みを特定のソースに与えるか、好ましいソース・データだけを使用して、合成画像データを生成する。これらの区域は、高周波数画像の詳細およびハイライトまたは影の区域に対応するので、結果の生成されるデータの詳細およびコントラストが維持される。
【０１６９】
画像データの異なるソースの間の差が小さい区域では、信頼データに比例する重みづけ値が、全く変更されないかごくわずかに変更され、その結果、異なる画像から生成された画像データの部分の間の境界が、これらの区域にまたがって最小化される。したがって、このようにすることで、元の高周波数ソース・データのコントラストおよび詳細のレベルを維持しながら、合成画像のうちでソース・データの異なる項目から生成される部分の間の明白な境界が最小化された、合成画像データを得ることができる。
【０１７０】
上記の実施形態では、対象物体の画像の組を、その対象物体の表現を生成するための３Ｄモデル・データおよびテクスチャ・レンダ・データを生成するのに使用されるものとして説明した。しかし、ある物体の画像を使用して得られるテクスチャ・レンダ・データは、たとえば、第２の物体の表現を生成するのに使用することができる。ある物体について得られたモデルと、第２の物体から導出されたテクスチャの混合を使用して、異なる物体からのテクスチャの適用によってモデルの外見を変更する方法を確立することができる。
【０１７１】
具体的に言うと、任意の数のビューからの第１の物体の信頼画像を、前に説明したのものに類似する形で生成することができる。異なる物体のソース画像を、そのソース画像が生成されたかのように信頼画像を使用して処理することができる。この形でのソース画像の処理によって、ソース画像のテクスチャが第１の物体の表面にわたって滑らかにブレンディングされたテクスチャ・データが生成される。
【０１７２】
したがって、たとえば、複数の信頼画像を、モデルのビューについて生成することができる。複数の視点からモデルの１側面に向かって見られたモデルの信頼画像を、たとえば木目などの第１テクスチャの画像と関連付けることができる。モデルの残りの信頼画像を、たとえば大理石などの第２テクスチャに関連付けることができる。生成された信頼画像を用いてこれら２つのソース画像を処理することによって、モデルの１側面が木目のテクスチャを有して現れ、他の側面が大理石のテクスチャを有して現れ、これら２つのテクスチャがモデルの表面にわたって滑らかにブレンディングされたテクスチャ・データが生成される。
【０１７３】
一方では、限られた数のテクスチャ画像だけを使用するのではなく、信頼画像が生成された視点から見られた異なる物体の画像を使用することができる。したがって、たとえば、第１物体のモデルの画像を、複数の視点について、前に説明したように生成することができる。第２物体の信頼画像を、これらの対応する視点について生成することができ、第２物体のテクスチャ・データを、第２物体の信頼画像を使用して第１物体の画像を処理することによって得ることができる。
【０１７４】
図面に関して説明した本発明の実施形態には、コンピュータ装置およびコンピュータ装置内で実行される処理が含まれるが、本発明は、本発明を実行するように適合された、コンピュータ・プログラム、具体的には担体上または担体内のコンピュータ・プログラムにも拡張される。プログラムは、ソースまたはオブジェクト・コードの形式、もしくは、本発明に従った処理を実行する用途に適した他の形式のいずれでもよい。担体は、プログラムを担持することができるあらゆる実体または装置である。
【０１７５】
たとえば、担体には、ＲＯＭ、たとえばＣＤ−ＲＯＭまたは半導体ＲＯＭなどの記憶媒体、もしくは、たとえばフロッピ・ディスクまたはハード・ディスクなどの磁気記録媒体を含めることができる。さらに、担体は、電気ケーブルまたは光ケーブルを介するか無線または他の手段によって伝えることができる電気信号または光学信号などの伝送可能な担体とすることができる。
【０１７６】
プログラムが、ケーブルもしくは他の装置または手段によって直接に伝えることができる信号で実施される時に、担体は、ケーブルもしくは他の装置または手段によって構成される。
【０１７７】
一方、担体を、プログラムが組み込まれる集積回路とすることができ、その集積回路は、関連する処理を実行するためまたはその実行に使用するために適合される。
【図面の簡単な説明】
【図１】本発明の第１の実施形態の概略ブロック図である。
【図２】例示的対象物体を囲む６つのテクスチャ・マップの位置および向きの例示的な図である。
【図３】図１の表面テクスチャラの概略ブロック図である。
【図４】図３の重み決定モジュールの処理の流れ図である。
【図５】入力画像内の物体の表面の諸部分の可視性を決定するための処理の流れ図である。
【図６】スコアの比較的滑らかな変動を保証するための可視性スコアの処理の流れ図である。
【図７】スコアの滑らかな変動を保証するモデルの区域の処理の例示的な図である。
【図８】スコアの滑らかな変動を保証するモデルの区域の処理の例示的な図である。
【図９】重み関数データの生成の流れ図である。
【図１０Ａ】関連する可視性スコアに関する三角形の選択の例示的な例である。
【図１０Ｂ】生成された重み関数データの例示的な例である。
【図１１】テクスチャ・マップ決定モジュールの概略ブロック図である。
【図１２】低周波数カノニカル投影の処理の流れ図である。
【図１３】高周波数カノニカル投影の処理の流れ図である。
【図１４】本発明の第２の実施形態による表面テクスチャラの概略ブロック図である。
【図１５】図１４の表面テクスチャラのカノニカル・ビュー決定モジュールの処理の流れ図である。
【図１６】本発明の第３の実施形態による高周波数カノニカル投影の処理の流れ図である。
【図１７】生成されたブレンド関数を示すグラフである。
【図１】
0003782709.tif 000007
【図２】
0003782709.tif 000008
【図３】
0003782709.tif 000009
【図４】
0003782709.tif 000010
【図５】
0003782709.tif 000011
【図６】
0003782709.tif 000012
【図７】
0003782709.tif 000013
【図８】
0003782709.tif 000014
【図９】
0003782709.tif 000015
【図１０Ａ】
0003782709.tif 000016
【図１０Ｂ】
0003782709.tif 000017
【図１１】
0003782709.tif 000018
【図１２】
0003782709.tif 000019
【図１３】
0003782709.tif 000020
【図１４】
0003782709.tif 000021
【図１５】
0003782709.tif 000022
【図１６】
0003782709.tif 000023
【図１７】
0003782709.tif 000024