JP2004038926A - テクスチャマップ編集 - Google Patents
テクスチャマップ編集 Download PDFInfo
- Publication number
- JP2004038926A JP2004038926A JP2003051178A JP2003051178A JP2004038926A JP 2004038926 A JP2004038926 A JP 2004038926A JP 2003051178 A JP2003051178 A JP 2003051178A JP 2003051178 A JP2003051178 A JP 2003051178A JP 2004038926 A JP2004038926 A JP 2004038926A
- Authority
- JP
- Japan
- Prior art keywords
- polygon
- image data
- data
- texture
- texture data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
【課題】3Dコンピュータモデルのためのテクスチャデータを編集する方法を提供する。
【解決手段】3Dコンピュータモデルとそれに適用されたテクスチャデータを表す画像を、ユーザが選択した観察方向から生成し、ユーザへ表示する。ユーザの指示に従って画像データへの変更がなされる。対応する変更がテクスチャデータになされる。ユーザが変更を希望しなかったテクスチャデータを保持し、元のテクスチャデータの品質を維持するため、処理は変更された画像データにのみ対応するテクスチャデータを修正するように実行され、ユーザが変更しなかった画像データに対応するテクスチャデータは修正されない。加えて、3Dコンピュータモデル内の、ユーザへ表示される画像の観察方向に対して斜角にある各ポリゴンを特定するための処理が実行される。特定されたポリゴンは、このポリゴンに対するテクスチャデータが変更されないよう、その後の処理から除外される。
【選択図】 図4a
【解決手段】3Dコンピュータモデルとそれに適用されたテクスチャデータを表す画像を、ユーザが選択した観察方向から生成し、ユーザへ表示する。ユーザの指示に従って画像データへの変更がなされる。対応する変更がテクスチャデータになされる。ユーザが変更を希望しなかったテクスチャデータを保持し、元のテクスチャデータの品質を維持するため、処理は変更された画像データにのみ対応するテクスチャデータを修正するように実行され、ユーザが変更しなかった画像データに対応するテクスチャデータは修正されない。加えて、3Dコンピュータモデル内の、ユーザへ表示される画像の観察方向に対して斜角にある各ポリゴンを特定するための処理が実行される。特定されたポリゴンは、このポリゴンに対するテクスチャデータが変更されないよう、その後の処理から除外される。
【選択図】 図4a
Description
【0001】
本発明は3次元(3D)コンピュータグラフィックスの分野に関し、より具体的にはテクスチャマッピング及びテクスチャマップデータの編集に関する。
【0002】
画像データ(カメラによって記録された”実”画像データ又は合成された画像データ)がコンピュータモデルの画像中で表面ディテールとして現れるように、画像データが3Dコンピュータモデルの表面上にマッピングされるテクスチャマッピングは広く知られ、また用いられている。例えば、その方法は、Foley, vanDam, Feiner及びHughes等による”コンピュータグラフィックスの原理及び実践(Computer Graphics Principles and Practice)”,Addison−Wesley PublishingCompany,第2版,セクション16.3.2,1997, ISBN 0201848406に記述されている。
【0003】
伝統的に、3Dコンピュータモデル上にマッピングされるべき画像を変更するには、テクスチャマップデータへのアクセス、表示及び変更が必要であった。しかし、変更の効果は変更されたテクスチャマップデータが3Dもデルの表面に適用され、3Dコンピュータモデルの1つ以上の画像が生成され、観察されるまで見ることができない。従って、所望の方法でのテクスチャマップ変更は困難かつ時間を消費するものでありうる。
【0004】
本発明はこれらの問題を念頭に置いてなされたものである。
本発明によれば、3Dコンピュータモデル用のテクスチャデータは、テクスチャデータを見て変更することによって編集されるのではなく、ユーザが選択した観察条件に従って生成される画像を見て変更し、そのテクスチャデータが適用された3Dコンピュータモデルを表示することによって編集される。画像データに対してなされた変更は対応するテクスチャデータを変更するために用いられる。この方法において、ユーザはどのテクスチャデータが変更される必要があるかを決定するために3Dコンピュータモデル上のテクスチャデータの効果を観察することが可能であり、また変更されるべきテクスチャデータの最良の眺めを表示する画像を生成するための制御を有するとともに、3Dコンピュータモデルのテクスチャデータになされた変更をリアルタイムで観察することができる。
【0005】
1つより多いテクスチャマップ中のテクスチャデータは、3Dコンピュータモデルのレンダリングされた1つの画像をユーザが修正すると、それに応じて変化しうる。
【0006】
画像データは、編集のために、その画像データがユーザの指示に従って生成されたアプリケーションから、2次元画像データ編集用のアプリケーションにエクスポートされ得る。このようにして、ユーザは画像データを任意の選択した編集アプリケーション、特にユーザが習熟した編集アプリケーションを用いて編集することが可能であり、ユーザは異なる編集アプリケーションの機能及びインタフェースを覚える必要がない。編集後、画像データはテクスチャデータを修正可能とするために元のアプリケーションへエクスポートされ得る。
【0007】
修正された後にユーザへ表示される画像データの全てに対応するテクスチャデータを変更する代わりに、変更された画像データにのみに対応するテクスチャデータを変更する(そして、ユーザによって変更されなかった画像データに対応するテクスチャデータは修正しない)ための処理を行うことができる。このようにして、テクスチャデータの品質を保持しながら、従って3Dコンピュータモデルの以後生成される画像の品質を保持しながら、ユーザが変更したくないテクスチャデータは保護される。
【0008】
テクスチャデータを修正するための処理は、3Dコンピュータモデル中のポリゴンの一部のみに行われる。例えば、ユーザが画像データを編集できるように、ユーザに表示されている画像の鑑賞方向(viewing direction)に対して斜角(oblique angle)にある各ポリゴンを特定するために処理を行うことができる。そして、特定されたポリゴンは、そのポリゴンに対するテクスチャデータが変更されないように除外される。
【0009】
説明として、画像の鑑賞方向に関して斜角にあるポリゴンは、比較的小さいサイズを有するように画像へ投影され、従ってユーザへ表示される際に比較的少数のピクセルを占有する。ピクセル数が少ないので、これらのピクセルはユーザが気づかずに編集されてしまうかもしれない。しかし、ユーザがそのピクセルに行ったいかなる変更も、そのポリゴン全体に対するテクスチャデータに影響を与えるであろう。その結果、この変更は異なる鑑賞方向から画像が生成された際には大きな画像領域に影響しうる。
【0010】
従って、斜めのポリゴンに対するテクスチャデータの修正を防止することによって、画像データの不注意な編集によるテクスチャデータの変更が回避され、テクスチャデータの品質が保持される。
本発明はさらに、プログラム可能な装置が上述した方法で動作するように設定するためのコンピュータプログラム製品をも提供する。
【0011】
本発明の実施形態を、ほんの一例として、同様の部分を示すために同様の参照数字を用いる添付図面に関して説明する。
図1を参照して、本発明の一実施形態は、1つ又はそれより多いプロセッサ、メモリ、グラフィックカード等を一般的な方法で含む、パーソナルコンピュータといった処理装置2と、一般的なパーソナルコンピュータモニタといったディスプレイ装置4、キーボード、マウス、タッチパッド、トラックボール等のユーザ入力装置6とを含む。
【0012】
処理装置2は、例えばディスク8といったデータ記憶媒体に格納されたデータとしての、及び/又は、例えばリモートデータベースからインターネットといった通信ネットワーク(図示せず)を介した伝送又は大気を通じた伝送、及び/又はキーボードといったユーザ入力装置を介したユーザ入力によって、処理装置2へ入力される信号10としての、プログラム命令入力に従って動作するようにプログラムされている。
【0013】
以下により詳細に説明されるように、このプログラム命令は、3Dコンピュータモデル及び当該モデル用のテクスチャマップデータを定義するデータを処理し、ユーザが選択した観察条件(viewing condition)に従って3Dコンピュータモデルの画像を生成し、そしてユーザによってなされた画像データへの変更に基づいてテクスチャマップデータを変更するように処理装置2を設定する命令を備える。以下に詳細に説明されるように、テクスチャマップデータの元の品質を維持するために、テクスチャマップのうち、ユーザが変更した画像データに対応する部分は変更されるが、変更された画像データに対応しない部分は変更されないことを確実にするために処理が行われる。本実施形態において、これはユーザが編集する3Dコンピュータモデルの画像のコピーを記憶し、記憶されたコピー画像とユーザが編集した後の変更画像とを比較し、2つの画像の差(変更された画像データを表す)をテクスチャマップデータへ適用することによって達成される。加えて、本実施形態においては、ユーザが編集した画像データが、編集された画像の観察方向から斜めにしか見えない3Dコンピュータモデル中のポリゴンに関するものであるかを判定するために処理が実行される。もしそうであれば、編集された画像データはそのポリゴンに対するテクスチャマップデータを変更するためには用いられない。これは、斜めに見えるポリゴンが、ユーザに編集される画像中の比較的少数の画素にのみマッピングされ、従ってそれら画素に対するいかなる変更もそのポリゴンの広い範囲に影響を与えうるからである。画素へのこのような変更は、ユーザによる画像データの意図しない編集によって引き起こされうる(なぜなら、少数のピクセルのみが関与するため)。従って、斜角にあるポリゴンに対するポリゴンに対するテクスチャデータではなく、十分に正面を向いたポリゴンに対するテクスチャデータのみが変更される。
【0014】
上で概要を説明した処理を実施することにより、望まない変更がテクスチャデータに伝播することなく、ユーザは容易かつ確実にテクスチャデータを変更することが可能である。プログラム命令によってプログラムされた際、処理装置2は処理動作を実行するための数多くの機能ユニットとして設定されたものと考えることができる。
【0015】
このような機能ユニット及びその相互接続の例を図1に示す。しかし、図1に示されるユニット及びその相互接続は概念的かつ理解を助けるための説明目的だけのために示されるものであり、処理装置2の1つ又は複数のプロセッサ、メモリ等が実際に設定されるユニットや接続を必ずしも表していない。
【0016】
図1に示される機能ユニットを参照して、中央制御部20はユーザ入力装置6からの入力を処理し、他の機能ユニットに対して制御及び処理を提供するように構成される。
【0017】
入力データインタフェース30は、ディスク32又は信号34といった、データ記憶媒体上の、処理装置2へ入力されるデータ記憶を制御するように構成される。3Dモデル記憶部40は、1つ又はそれより多いオブジェクトの3Dコンピュータモデルを規定する入力データを記憶するように構成される。
【0018】
テクスチャマップ記憶部50は、3Dコンピュータモデル記憶装置40に記憶される3Dコンピュータモデルのための1つ又は複数のテクスチャマップを規定する入力データを記憶するように構成される。
【0019】
一例として図2を参照すると、3Dモデル記憶部40に記憶されるデータは3Dオブジェクトの表面を表すポリゴンメッシュ200を規定する。本実施形態において、メッシュ200内の各ポリゴンは2次元3角形(planar triangle)である。
【0020】
テクスチャマップ記憶部50に記憶されるデータは複数のテクスチャマップを規定し、そのうちの3つ、210、220及び230が図2に示される。従来の方法において、各テクスチャマップは(画像が画像空間中の複数のピクセルから構成されるのと同様にして)、(u,v)テクスチャ座標空間において規定される複数のテクセル240からなる画像データ(実写画像又は合成画像のいずれか)を有する。代わりに、良く知られるように、テクスチャマップ210,220及び230中のテクスチャデータが、データを生成する手順によって定義されうる。
【0021】
ポリゴンメッシュ200中の各ポリゴンについて、テクスチャマップ210,220,230の1つ又は複数におけるテクスチャマップ座標が、ポリゴンの頂点に割り当てられる。これは、図2におけるポリゴン250について示されている(ここでは、一例として、テクスチャマップ座標が2つのテクスチャマップ210,220において定義されている)。
【0022】
再び図1を参照して、レンダラ60はユーザ入力装置6を用いてユーザによって定義された観察方向から3Dコンピュータモデル200の画像を生成するように構成される。この処理において、画像データ中のピクセル値は、ビューイングパラメータに基づいてこのピクセルにマッピングされたテクスチャマップ210,220,230からのテクスチャデータに基づいて生成される。レンダラ60が実行する処理は従来通りであるため、ここでの説明は行わない。
【0023】
中央制御部20の制御下にあるディスプレイコントローラ70は、処理装置2による処理の間、レンダラ60が生成した画像及びユーザへの指示を表示装置4を介して表示するように構成される。
【0024】
画像編集部80は、表示装置4上の画像及びこの画像に対してなされた変更を見ながら、1つ又は複数のユーザ入力装置6を用いてユーザが入力する指示に従って、レンダラ60が生成した画像を編集するように構成される。本実施形態において、画像編集部80は、図1における他の機能部品を規定するアプリケーション及びオペレーティングシステムとは別個の、処理装置2上で稼働するソフトウェアアプリケーションによって規定される。従って、例えば、画像編集部80はアドビ社のフォトショップ(登録商標)や類似のソフトウェアアプリケーションによって規定されうる。
【0025】
3Dモデル及びテクスチャマッププロセッサ90は、テクスチャマップ記憶部50に記憶されるテクスチャマップデータを、レンダラ60が生成した画像に対して画像編集部80が行う変更に従って変更するように構成される。
【0026】
画像記憶部100は、3Dモデル及びテクスチャマッププロセッサ90による処理で使用するために、レンダラ60が生成する元データ(すなわち、ユーザによってなんらかの変更がなされる前のデータ)のコピーを記憶するように構成される。
【0027】
図3を参照して、本実施形態において、3Dモデル及びテクスチャマッププロセッサ90は差分計算器120、ポリゴンセレクタ130、ポリゴンテスタ140、マスク生成器150及びテクスチャマップ編集器160を有する。
【0028】
差分計算器120はレンダラ60が生成し、画像記憶部100に記憶される元画像データと、画像編集部80が生成した編集画像データとを比較し、それらから差分画像(すなわち、画像編集部80によって値が変更されたピクセルに対応する位置を有するピクセルは値1にセットされ、画像編集部80によって値が変更されなかったピクセルに対応する位置を有するピクセルは値0にセットされる画像)を生成するように構成される。
【0029】
ポリゴンセレクタ130は、3Dコンピュータモデルを表すポリゴンメッシュ200中のどのポリゴン上に、画像編集部80が生成した編集画像データをマッピングするかを決定するように構成される。
【0030】
ポリゴンテスタ140は、ポリゴンセレクタ130によって特定されたポリゴンの各々について、そのポリゴンについてのテクスチャマップデータを更新するために、画像編集部80によって編集された画像データを使うべきである程度に、そのポリゴンが編集された画像の観察方向に関して十分正面を向いているか否か、又はユーザが対応する画像データに変更を加えても、そのポリゴンについてのテクスチャマップデータを変更する必要がない程度に、そのポリゴンが観察方向に関して斜角にあるか否かを判定するように構成される。
【0031】
マスク生成装置150は所与のポリゴンに対するポリゴンマスクを、差分計算器120によって生成された、このポリゴンにあてはまるとともに、変更された画像データを表す差分画像の中の画素に基づいて生成するように構成される。
【0032】
テクスチャマップ編集装置160はテクスチャマップ210,220,230内のテクスチャデータを、画像編集部80が生成した編集画像データ及びマスク生成装置150が生成したポリゴンマスクに基づいて修正するように構成される。
【0033】
再び図1を参照して、出力データインタフェース110は、装置2から、3Dモデル及びテクスチャマッププロセッサ90が生成した編集テクスチャマップデータを規定する出力データと、オプションで3Dモデル記憶部40からポリゴンメッシュ200を規定するデータを出力するように構成される。データは装置から、例えばディスク112といったデータ記憶媒体上のデータとして、及び/又は信号114として出力されうる。出力信号114を記録装置(図示せず)を用い(例えば、最初の記録を”マスター”として行った後、次の記録をそのマスター又はその子孫から行うことにより)直接的又は間接的に出力データの記録を行っても良い。
【0034】
今度は図4を参照して、本実施形態における処置装置2内部の機能部品が実行する処理動作を説明する。
ステップS4−2で、ユーザが1つ又は複数のユーザ入力装置6を用いて選択した3Dコンピュータモデルに関する観察方向に従って、3Dコンピュータモデルの画像を生成するため、レンダラ60は3Dモデル記憶部40に格納されるポリゴンメッシュ200を規定するデータ及び、テクスチャマップ記憶部50に格納されるテクスチャマップ210,220,230を規定するテクスチャデータを処理する。この処理は従来の方法で行われるため、ここでの説明は行わない。
【0035】
レンダラ60が生成した画像データはディスプレイコントローラ70によって表示装置4上に表示される。
図5を参照して、レンダラ60が生成し、表示装置4上でユーザに表示される画像データは、観察方向V(ここで、Vはユニットベクトル)からのポリゴンメッシュ200の画像260を規定する。
【0036】
画像260はテクスチャマップ210,220,230からのテクスチャデータを用いてレンダリングされたポリゴンメッシュ200を表す。その結果、ユーザは3Dコンピュータモデル上のテクスチャデータのエフェクトを任意の所望の観察方向Vから見ることができる。以下に説明するように、ユーザは画像260を規定する画像データを編集することができ、装置はテクスチャマップ210,220,230内の対応するテクスチャデータを自動的に変更する。
【0037】
このようにして、ユーザはテクスチャデータを編集するためにテクスチャマップ210,220,230を直接見る必要が無く、代わりにそのテクスチャデータを用いてレンダリングされた3Dオブジェクトの画像を見ることができる。そして、ユーザはそのテクスチャデータが有するエフェクトを3Dコンピュータモデル上で見ることができ、編集のためにそのテクスチャデータが最も良く描画される観察方向を選択することができる。
【0038】
再び図4を参照して、ステップS4−4で、ユーザ入力装置6を用いてユーザが入力する画像選択信号を受信すると、中央制御部20は画像データの最初のコピーを画像記憶部100へ記憶する。この記憶されたデータは、画像選択信号が生成された際に表示装置4に表示されていた画像を規定するデータである。
【0039】
加えて、中央制御部20は、画像編集部80がアクセスするために利用可能な画像データの2番目のコピーを作る。より具体的には、画像編集部80が本実施形態においては個別のアプリケーションによって規定されているため、中央制御部20は画像データの2番目のコピーを従来の方法でクリップボード(又は類似の共用データ記憶機構)に書き込む。このようにして、画像データは画像編集部80を規定するアプリケーションによるアクセスのためにエクスポートされる。
【0040】
ステップS4−6において、エクスポートされた画像データは、クリップボードから、画像編集部80を規定するアプリケーションへインポートされる。これは例えば従来の”ペースト”機能によって実行することができる。
【0041】
そして、画像データはユーザ入力装置6を用いるユーザによって入力された命令に従って編集される。画像データに対する変更は、表示装置4上でリアルタイムでユーザへ表示される。ユーザが画像データの編集が完了すると、編集された画像データは、画像編集部80を規定するアプリケーションからエクスポートすることにより、処理に利用することができるようになる。繰り返すが、これは従来の方法で画像データをクリップボード(又は同様の共用記憶機構)へセーブすることにより実施される。
【0042】
ステップS4−8において、編集された画像データは3Dモデル及びテクスチャマッププロセッサ90を規定するソフトウェアアプリケーションにインポートされ、ここでもこの処理は従来の方法で画像データをクリップボードから読み出すことにより実施される。
【0043】
そして、差分計算器120は、画像編集部80が生成した編集画像データと、レンダラ60が生成し、ステップS4−4で保存された、元画像データのコピーとを比較する。比較に基づいて、差分計算器120は元画像と同じ画素数を有し、画像編集部80によって値が編集された画素に対応する画素は値1にセットされ、画像編集部80によって値が変更されなかった画素に対応する画素は値0にセットされた差分画像を生成する。
【0044】
ステップS4−10で、ポリゴンセレクタ130は、ステップS4−6で生成された編集画像データがマッピングされるポリゴンメッシュ200中の各ポリゴンを特定するための処理を行う。
【0045】
説明として、図6を参照して、画像260中のピクセルにマッピングされる、ポリゴンメッシュ200中のポリゴンが、ユーザに表示され、ステップS4−6で編集される。これは図6においてポリゴン270について示されている。
【0046】
しかし、画像260は、ポリゴンメッシュ200中の個々のポリゴンではなく、テクスチャマップ210,220,230内のテクスチャデータから生成された3Dコンピュータモデルの表面ディテールを示している(その結果、ユーザはその画像データをポリゴンメッシュ200中のポリゴンを参照せずに編集することになる)。
【0047】
ステップS4−10で、ポリゴンセレクタ130は、ポリゴンメッシュ200中のどのポリゴンが、画像260のうち、ステップS4−6における処理によって修正された画像データ部分に対するテクスチャデータに寄与しているのかを割り出すための処理を行う。引き続く処理において、テクスチャマップ210,220,230内の、特定されたポリゴンについてのテクスチャデータが、ステップS4−6で画像データに対してなされた変更に基づいて修正される。
【0048】
本実施形態において、ポリゴンセレクタ130は、画像260内の各画素とポリゴンメッシュ200中のポリゴンとを関連づけ、ステップS4−6の処理で値が変更された画素に関連づけされたポリゴンメッシュ200中のポリゴンを選択することによって、ステップS4−10での処理を実行する。
【0049】
画像260内の各画素をポリゴンメッシュ200中のポリゴンとを関連づけするための処理は、従来の方法で行われる。この処理はポリゴンメッシュ200中の各ポリゴンに固有の色を割り当て、ステップS4−4で選択された画像と同一のビューイングパラメータを用い、従来のレンダリング処理を実行してポリゴンメッシュ200の画像を生成し、そして、画素の色をポリゴンメッシュ200中のポリゴンの色と照合し、生成された画像中の各画素をポリゴンメッシュ200中のポリゴンに割り当てるという処理を含む。
【0050】
その結果、画像260のうち、ステップS4−6の処理で変更された画素が特定され、引き続く処理のためのポリゴンを特定するため、ポリゴンメッシュ200中の対応するポリゴンのリストが作られる。
【0051】
ステップS4−12において、3Dモデル及びテクスチャマッププロセッサ90は、処理のため、ステップS4−10で特定された次のポリゴン(ステップS4−12が最初に実行される際には最初のポリゴンである)を選択する。
【0052】
ステップS4−14で、ポリゴンテスタ140は、ステップS4−12で選択されたポリゴンについてのテクスチャデータを修正するために、このポリゴンに対してステップS4−6で生成された編集画像データを使うべきか否かを判定するための処理を行う。
【0053】
図7は、テクスチャマップ210,220,230中の対応するテクスチャデータを修正するために、ポリゴンについての編集画像データを使うことが適切である場合及び、対応するテクスチャデータを修正するために、ポリゴンについての編集画像データを使うことが適切でない場合を示している。
【0054】
図7を参照すると、ポリゴンメッシュ200から2つのポリゴン280,290が拡大して示されている。各ポリゴン280,290は平面ポリゴンであり、各ポリゴンの面に垂直な法線ベクトルNが示されている。
【0055】
ポリゴン280は画像260においてポリゴン300へ投影し、ポリゴン290は画像260においてポリゴン310へ投影する。前に述べたように、ポリゴン300及び310は画像260においては不可視であり、代わりにポリゴン280,290に対応する、テクスチャマップ210,220,230からのテクスチャデータのみが、ポリゴン300,310によって規定される位置で可視である。
【0056】
画像260の観察方向Vとポリゴン280の法線ベクトルNとの間の角度は180度に近づき、その結果観察方向Vは実質的にポリゴン280の平面に垂直となる。一方、観察方向Vとポリゴン290の法線ベクトルNとの間の角度は180度よりもずっと小さく、結果としてポリゴン290の平面はポリゴン280の平面よりも観察方向Vに対してより斜角に存在することになる。
【0057】
この結果、画像260において、ポリゴン280が(ポリゴン300で規定される)比較的多数のポリゴンに投影するが、ポリゴン290は(ポリゴン310で規定される)比較的少数のポリゴンに投影する。
【0058】
従って、画像260中のポリゴン310で規定される領域中の画素へのいかなる変更も、ポリゴン290の大きな部分に影響するポリゴン290用テクスチャデータへの変更となりうる。これらの変更は画像260において目立たない(ポリゴン310が小さいため)が、その変更はポリゴン290の平面に対して垂直に近い、異なる観察方向においては非常に目立ち得る。
【0059】
加えて、画像260中のポリゴン310で規定される領域中の画素への変更は、ユーザが(ポリゴン300で規定される領域内の画素といった)隣接する領域中の画素の編集中に誤ってなされることもあり得る。
【0060】
これらの理由から、本実施形態において、ポリゴンテスタ140はステップS4−14で、画像260の観察方向Vに対して十分に正面を向いていないポリゴンを排除するための処理を行う。ステップS4−6で生成された編集画像データが排除されたポリゴンに対応するテクスチャマップ210,220,230中のテクスチャデータの変更に用いられないよう、排除されたポリゴンは引き続く処理から除外される。
【0061】
より具体的には、本実施形態において、ポリゴンテスタ140は、画像260の観察方向V(単位ベクトル)と、ポリゴンの法線ベクトルN(これも単位ベクトル)とのドット積(スカラ積としても知られる)を算出し、その結果を閾値(本実施形態ではcos135°の値に設定)と比較することでステップS4−12で選択されたポリゴンをテストする。従って、ポリゴンテスタ140は以下の不等式が満たされるか否かを判定する。
V・N≦cos(135°) ...(1)
【0062】
V・Nがcos(135°)よりも大きい場合、そのポリゴンは排除され、ステップS4−10で生成したリストから次のポリゴンを検討するために処理はS4−24へ進む。このようにして、ポリゴンはそれらが観察方向Vに関して後ろ向き(back−facing)であるか、それらが存在する平面が観察方向Vに対して45°を超える角度にある場合、排除される。
【0063】
一方、ステップS4−14でV・Nがcos(135°)以下である場合、そのポリゴンはテクスチャマップ210,220,230中のそのポリゴンに対するテクスチャデータをステップS4−6で生成した編集画像データを用いて更新すべき程度に、観察方向Vに対して十分正面を向いていることが判定される。その結果、この場合には処理はステップS4−16へ進む。
【0064】
ステップS4−16で、マスク生成器150はステップS4−8で生成した差分画像から、編集された画像データを表す画素(すなわち、値1を有する画素)であって、現在処理されているポリゴンに対応する画素(このような画素は上述したステップS4−10での処理結果として特定される)を選択する。選択された画素は、引き続く処理において用いるためのポリゴンマスクを規定する。
【0065】
ステップS4−18で、3Dモデル及びテクスチャマッププロセッサ90は現在検討中のポリゴンに対するテクスチャデータを与える次のテクスチャマップ210,220,230を選択する(ステップS4−18が最初に実行されるさいには最初のテクスチャマップとなる)。
【0066】
ステップS4−20において、テクスチャマップ編集器160は、現在検討中のポリゴンに対応するステップS4−18で選択されたテクスチャマップ中のテクスチャデータを、ステップS4−6で生成した編集画像データとステップS4−16で生成したポリゴンマスクに基づいて修正する。
【0067】
図8は、ステップS4−20においてテクスチャマップ編集器160が実行する処理動作を示す。
図8を参照して、ステップS8−2において、テクスチャマップ編集器160は、現在処理されているポリゴンの頂点の、ステップS4−6で生成した編集画像データにおける位置を割り出すための処理を実行する。より具体的には、本実施形態において、この処理は、画像260がレンダラ60によって最初に生成された際のビューイングパラメータによって規定される変換を用いて、ポリゴンの頂点をポリゴンメッシュ200の3D世界空間から画像260の2D空間へ投影する処理を含む。
【0068】
ステップS8−4からS8−10において、テクスチャマップ編集器160は現在処理されているテクスチャマップ内のテクスチャデータを、ステップS8−2で計算された頂点位置間に存在する、画像260からの編集画像データを用いて修正する。
【0069】
本実施形態において、この処理は従来のテクスチャマッピング処理を逆方向に、すなわちテクスチャマップから画像260ではなく、画像260からテクスチャマップへ実行することによって達成される。
【0070】
より具体的には、ステップS8−4で、テクスチャマップ編集器160は、画像260がテクスチャマップに、ステップS4−18で選択されたテクスチャマップが画像となるべく規定する。
【0071】
従って、図9を参照して、画像260中の画素データは、テクスチャマップ210内のテクスチャデータを更新するため、適切な位置でテクスチャマップ210にマッピングされるべきデータを規定する。図9はこれをポリゴンメッシュ200中のポリゴン320について、拡大して示している。
【0072】
テクスチャマップ210中で修正されるべきテクスチャデータは、画像データ260中の三角形320の頂点位置328,330,332(頂点位置328,330,332はステップS8−2で計算されている)の間に存在し、ステップS4−6での処理によって修正された画像データがマッピングされる、三角形320の頂点位置322,324,326の間に存在するテクスチャデータを含む(これらの位置は、3Dモデル記憶部40及びテクスチャマップ記憶部50中に従来の方法によって規定されている)。
【0073】
ステップS8−6において、テクスチャマップ210内の正しいデータの修正を実行するため、テクスチャマップ編集器160はステップS4−16で生成したポリゴンマスクをテクスチャデータとなるべく規定し、画像データ260からこのポリゴンマスクテクスチャデータ(今はテクスチャマップとなるべく規定されている)をテクスチャマップ210(今は画像となるべく規定されている)へマッピングする。このマッピングは頂点322,324及び326で規定されるポリゴンを変形されたテクスチャデータのための受容ポリゴン(recipient polygon)となるべく規定し、従来のテクスチャマッピングルーチンを用いて実施される。
【0074】
テクスチャマップ編集器160は、ポリゴンマスクテクスチャがマッピングされた、テクスチャマップ210のテクセル(texel)の記録を保存する。
【0075】
ステップS8−10で、テクスチャマップ編集器160は、ステップS4−6での処理によって画像データが修正されたか否かには関わらず、ステップS8−2で計算された頂点328,330,332の間に存在する全画素に対する画像データをテクスチャデータとなるべく規定し、(テクスチャマップとなるべく規定される)画像260からのデータを(画像となるべく規定される)テクスチャマップ210へ、頂点322,324及び326で規定されるポリゴンを変形されたテクスチャデータのための受容ポリゴンとなるべく規定し、従来のテクスチャマッピングルーチンを用いてマッピングする。
【0076】
テクスチャマップ編集器160は画像データが投影された、(ステップS8−6で決定された)ポリゴンマスク内部のテクセル上にマッピングされる場合には、テクスチャマップ210内に既に存在するテクスチャデータを、ステップS8−6でテクスチャマップへマッピングされた画像と置き換えるが、画像データがポリゴンマスクの外のテクセル上にマッピングされる場合には、テクスチャマップ210内の元のテクスチャデータを維持する。
【0077】
このようにして、ポリゴンマスクはステップS4−6で修正された画像データの部分を規定するため、テクスチャマップ210内のテクスチャデータは修正された画像データによって変更されるが、修正されていない画像データによっては変更されない。
【0078】
再度図4を参照して、ステップS4−22において、3Dモデル及びテクスチャマッププロセッサ90は、現在処理中のポリゴンに対するテクスチャデータを提供する他のテクスチャマップ210,220,230が存在するかどうかを判定する。ステップS4−18からS4−22は、ステップS4−12で選択されたポリゴンに対してテクスチャマップを提供する全てのテクスチャマップが上述のように処理されるまで繰り返される。
【0079】
ステップS4−24で、3Dモデル及びテクスチャマッププロセッサ90は、ステップS4−6で生成された編集画像データが投影する他のポリゴンが存在するか(すなわち、ステップS4−10で生成したリスト上に他のポリゴンが存在するか)を判定する。
【0080】
ステップS4−12からS4−24は、編集画像データがマッピングされる各ポリゴンが上述の方法で処理されるまで繰り返される。
【0081】
この処理の結果、テクスチャマップ210,220,230内に規定されるテクスチャデータは、ユーザが画像260へ行った変更に基づいて修正される。従って、ユーザは、任意の選択方向からの3Dコンピュータモデルの画像へ変更を加えることにより、テクスチャデータを編集することができる。
【0082】
上述の実施形態には、特許請求の範囲の範囲内で多くの変更をなすことが可能である。
例えば、上述の実施形態において、画像編集部80は独立したソフトウェアアプリケーション、即ちレンダラ60及び3Dモデル及びテクスチャマッププロセッサ90を規定するアプリケーションとは別個のアプリケーションによって規定されている。しかし、その代わりに、図1に示され、上述された1つ又はそれより多い他の機能ユニットと同様、レンダラ60、画像編集部80及び、3Dモデル及びテクスチャマッププロセッサ90を同一のアプリケーションで規定することが可能である。
【0083】
上述の実施形態において、画像データはステップS4−2で、ユーザが選択した3Dコンピュータモデルの観察方向に従って生成されている。加えて、ユーザは観察位置、カメラズーム等といった、その画像についての他のビューイングパラメータを選択しても良い。
【0084】
上述の実施形態において、編集された画像データをポリゴンについてのテクスチャデータを変更するために使用すべきであるか否かを判定するため、ステップS4−10で生成したリスト上の各ポリゴンをテストするための処理をステップS4−14で行っている。より具体的には、ステップS4−14でのテストにおいて、ポリゴンの平面が、編集画像データが生成された画像データ260の観察方向Vに対して十分に正面を向いていないと判定した場合、テクスチャデータに対する修正は行われない。しかし、ステップS4−14は必須ではなく、省略可能であり、その結果ステップS4−10で特定された全ポリゴンはステップS4−16からS4−22での処理を用いて処理される。
【0085】
上述の実施形態において、ステップS4−8及びS4−10で、ユーザによって編集されている画像データを編集されていない画像データと区別し、3Dコンピュータモデル中の、編集された画像データがマッピングされるポリゴンを特定するための処理が実施されている。引き続く処理において、ポリゴンのためのテクスチャデータは編集された画像データに基づいて修正されるが、演習されていない画像データに基づいては修正されない。しかし、ステップS4−8及びS4−10における処理は必須ではなく、省略可能である。引き続く処理においては、3Dコンピュータモデルのポリゴン毎に、そのポリゴンに対するテクスチャデータが修正されるべきであるかを判定するためにステップS4−14でテストされ、ポリゴンからテクスチャデータを修正すべき各ポリゴンについて、テクスチャデータはそのポリゴンに関連する全画像データ、すなわち、そのポリゴンについて編集された画像データ及び編集されていない画像データの両方に基づいて修正することができる。
【0086】
上述の実施形態において、あるポリゴンが、そのポリゴンについてのテクスチャデータに編集された画像データが適用されるべき、画像260の観察方向Vに関し、十分正面を向いているかを判定するためのテストがステップS4−14で、上述の等式(1)に従って実行される。しかし、他のテストを付加もしくはその代わりに行っても良い。例えば、処理は以下の不等式を満たすかどうかを判定するために実行される。
画像中の投影されたポリゴンの領域/ポリゴンメッシュの3D空間中のポリゴン領域≧閾値 …(2)
【0087】
ここで、画像260中の、投影されたポリゴンの領域はピクセル単位で測定され、またポリゴンメッシュ200の3D空間(すなわち、世界空間)中のポリゴン領域は、任意の、予め定められた単位で測定される。
不等式が満たされないことが判定された場合(すなわち、領域比が閾値以上である場合)、ポリゴンに対するテクスチャデータを修正するため、処理はステップS4−16からS4−22を通じて進行する。そうでない場合には、これらのステップは省略される。
【0088】
同様に、上述の等式(1)に加え、あるいはその代わりに、以下の不等式をステップS4−14において評価することができる。
画像中の投影されたポリゴンの領域/テクスチャマップ中の投影されたポリゴンの領域≧閾値 …(3)
ここで、画像260中の投影されたポリゴンの領域はピクセル単位で測定され、テクスチャマップ210,220,230中の対応する投影されたポリゴンはテクセル単位で測定される。
【0089】
領域比が等式(3)の閾値以上であることが判定された場合、編集された画像データに基づいてテクスチャデータを修正するため、ステップS4−16からS4−22が実行されるであろう。そうでない場合、これらのステップは省略されるであろう。
【0090】
上述の等式(2)及び(3)において、領域比はポリゴンと画像260の観察方向Vとの相対的な方向(relative orientation)を表す。これは、画像260中の投影されたポリゴンの領域(分子)は、ポリゴンの画像260の観察方向Vに対する角度に依存するためであり、一方で分母はポリゴンの向きに依存しない領域を表す。
【0091】
上述の実施形態、及び上述の等式(2)及び(3)を用いる変形例において、ステップS4−14での処理の結果は、ステップS4−16からS4−22における処理に関してそのまま維持されるか、処理を拒否されるポリゴンである。しかし、代わりに、そのポリゴンと観察方向Vとの相対的な方向の指標(measure)を等式(1)から(3)の1つ以上に従って計算するが、以後の処理においていかなるポリゴンも拒否しない(又は後ろ向きのポリゴンのみ拒否する)ための処理をステップS4−14において実行することができる。この場合ステップS8−10での処理は、変更すべき各テクセル値を対応する画像値に置き換える代わりに、ポリゴンと観察方向Vとの計算された相対的な方向に基づく値とテクセル値が置き換えられるように変更されるであろう。例えば、変更すべき各テクセル値は、計算された方向指標に従って決定される相対重みを用いて元のテクセル値及び対応する画像の値を重み付け平均した値と置き換えされても良い(重み付けは、ポリゴンの平面が観察方向Vに対して正面を向くほど、画像値の寄与を増やすように、またポリゴンの平面が観察方向Vに対して正面を向かなくなるほど、元のテクセル値の寄与を増やすように設定される)。
【0092】
上述の実施形態において、処理はプログラム命令によって定義される処理ルーチンを用いるコンピュータによって実行される。しかし、処理の一部又は全部をハードウェアを用いて実行することも可能である。
【図面の簡単な説明】
【図1】本発明の実施形態の構成要素を、処理装置の構成要素がプログラム命令によってプログラミングされた際、これら要素が内部に形成されると考えられる概念的な機能処理ユニットとともに模式的に示す図である。
【図2】図1の装置において記憶されるデータによって規定される3Dコンピュータモデル及びテクスチャマップの例を示すとともに、3Dコンピュータモデル内のポリゴン上にどのようにテクスチャがマッピングされるかを説明する図である。
【図3】図1の3Dモデル及びテクスチャマッププロセッサ要素が内部に構成されると考えられる概念的な機能処理ユニットを模式的に示す図である。
【図4a】
【図4b】図1の処理装置で実行される処理動作を示す図である。
【図5】図4のステップS4−2における画像データの生成及び表示を説明する図である。
【図6】編集された画像データがどのように3Dコンピュータモデル内のポリゴン上にマッピングされるかを説明する図である。
【図7】画像の小部分への変更がどのように3Dコンピュータモデル内の大きなポリゴン領域に影響を与えうるかの例を示す図である。
【図8】図4のステップS4−20で実施される処理動作を説明する図である。
【図9】図4のステップS4−20における、テクスチャマップデータを変更するための、編集画像データのテクスチャマップへのマッピングを説明する図である。
本発明は3次元(3D)コンピュータグラフィックスの分野に関し、より具体的にはテクスチャマッピング及びテクスチャマップデータの編集に関する。
【0002】
画像データ(カメラによって記録された”実”画像データ又は合成された画像データ)がコンピュータモデルの画像中で表面ディテールとして現れるように、画像データが3Dコンピュータモデルの表面上にマッピングされるテクスチャマッピングは広く知られ、また用いられている。例えば、その方法は、Foley, vanDam, Feiner及びHughes等による”コンピュータグラフィックスの原理及び実践(Computer Graphics Principles and Practice)”,Addison−Wesley PublishingCompany,第2版,セクション16.3.2,1997, ISBN 0201848406に記述されている。
【0003】
伝統的に、3Dコンピュータモデル上にマッピングされるべき画像を変更するには、テクスチャマップデータへのアクセス、表示及び変更が必要であった。しかし、変更の効果は変更されたテクスチャマップデータが3Dもデルの表面に適用され、3Dコンピュータモデルの1つ以上の画像が生成され、観察されるまで見ることができない。従って、所望の方法でのテクスチャマップ変更は困難かつ時間を消費するものでありうる。
【0004】
本発明はこれらの問題を念頭に置いてなされたものである。
本発明によれば、3Dコンピュータモデル用のテクスチャデータは、テクスチャデータを見て変更することによって編集されるのではなく、ユーザが選択した観察条件に従って生成される画像を見て変更し、そのテクスチャデータが適用された3Dコンピュータモデルを表示することによって編集される。画像データに対してなされた変更は対応するテクスチャデータを変更するために用いられる。この方法において、ユーザはどのテクスチャデータが変更される必要があるかを決定するために3Dコンピュータモデル上のテクスチャデータの効果を観察することが可能であり、また変更されるべきテクスチャデータの最良の眺めを表示する画像を生成するための制御を有するとともに、3Dコンピュータモデルのテクスチャデータになされた変更をリアルタイムで観察することができる。
【0005】
1つより多いテクスチャマップ中のテクスチャデータは、3Dコンピュータモデルのレンダリングされた1つの画像をユーザが修正すると、それに応じて変化しうる。
【0006】
画像データは、編集のために、その画像データがユーザの指示に従って生成されたアプリケーションから、2次元画像データ編集用のアプリケーションにエクスポートされ得る。このようにして、ユーザは画像データを任意の選択した編集アプリケーション、特にユーザが習熟した編集アプリケーションを用いて編集することが可能であり、ユーザは異なる編集アプリケーションの機能及びインタフェースを覚える必要がない。編集後、画像データはテクスチャデータを修正可能とするために元のアプリケーションへエクスポートされ得る。
【0007】
修正された後にユーザへ表示される画像データの全てに対応するテクスチャデータを変更する代わりに、変更された画像データにのみに対応するテクスチャデータを変更する(そして、ユーザによって変更されなかった画像データに対応するテクスチャデータは修正しない)ための処理を行うことができる。このようにして、テクスチャデータの品質を保持しながら、従って3Dコンピュータモデルの以後生成される画像の品質を保持しながら、ユーザが変更したくないテクスチャデータは保護される。
【0008】
テクスチャデータを修正するための処理は、3Dコンピュータモデル中のポリゴンの一部のみに行われる。例えば、ユーザが画像データを編集できるように、ユーザに表示されている画像の鑑賞方向(viewing direction)に対して斜角(oblique angle)にある各ポリゴンを特定するために処理を行うことができる。そして、特定されたポリゴンは、そのポリゴンに対するテクスチャデータが変更されないように除外される。
【0009】
説明として、画像の鑑賞方向に関して斜角にあるポリゴンは、比較的小さいサイズを有するように画像へ投影され、従ってユーザへ表示される際に比較的少数のピクセルを占有する。ピクセル数が少ないので、これらのピクセルはユーザが気づかずに編集されてしまうかもしれない。しかし、ユーザがそのピクセルに行ったいかなる変更も、そのポリゴン全体に対するテクスチャデータに影響を与えるであろう。その結果、この変更は異なる鑑賞方向から画像が生成された際には大きな画像領域に影響しうる。
【0010】
従って、斜めのポリゴンに対するテクスチャデータの修正を防止することによって、画像データの不注意な編集によるテクスチャデータの変更が回避され、テクスチャデータの品質が保持される。
本発明はさらに、プログラム可能な装置が上述した方法で動作するように設定するためのコンピュータプログラム製品をも提供する。
【0011】
本発明の実施形態を、ほんの一例として、同様の部分を示すために同様の参照数字を用いる添付図面に関して説明する。
図1を参照して、本発明の一実施形態は、1つ又はそれより多いプロセッサ、メモリ、グラフィックカード等を一般的な方法で含む、パーソナルコンピュータといった処理装置2と、一般的なパーソナルコンピュータモニタといったディスプレイ装置4、キーボード、マウス、タッチパッド、トラックボール等のユーザ入力装置6とを含む。
【0012】
処理装置2は、例えばディスク8といったデータ記憶媒体に格納されたデータとしての、及び/又は、例えばリモートデータベースからインターネットといった通信ネットワーク(図示せず)を介した伝送又は大気を通じた伝送、及び/又はキーボードといったユーザ入力装置を介したユーザ入力によって、処理装置2へ入力される信号10としての、プログラム命令入力に従って動作するようにプログラムされている。
【0013】
以下により詳細に説明されるように、このプログラム命令は、3Dコンピュータモデル及び当該モデル用のテクスチャマップデータを定義するデータを処理し、ユーザが選択した観察条件(viewing condition)に従って3Dコンピュータモデルの画像を生成し、そしてユーザによってなされた画像データへの変更に基づいてテクスチャマップデータを変更するように処理装置2を設定する命令を備える。以下に詳細に説明されるように、テクスチャマップデータの元の品質を維持するために、テクスチャマップのうち、ユーザが変更した画像データに対応する部分は変更されるが、変更された画像データに対応しない部分は変更されないことを確実にするために処理が行われる。本実施形態において、これはユーザが編集する3Dコンピュータモデルの画像のコピーを記憶し、記憶されたコピー画像とユーザが編集した後の変更画像とを比較し、2つの画像の差(変更された画像データを表す)をテクスチャマップデータへ適用することによって達成される。加えて、本実施形態においては、ユーザが編集した画像データが、編集された画像の観察方向から斜めにしか見えない3Dコンピュータモデル中のポリゴンに関するものであるかを判定するために処理が実行される。もしそうであれば、編集された画像データはそのポリゴンに対するテクスチャマップデータを変更するためには用いられない。これは、斜めに見えるポリゴンが、ユーザに編集される画像中の比較的少数の画素にのみマッピングされ、従ってそれら画素に対するいかなる変更もそのポリゴンの広い範囲に影響を与えうるからである。画素へのこのような変更は、ユーザによる画像データの意図しない編集によって引き起こされうる(なぜなら、少数のピクセルのみが関与するため)。従って、斜角にあるポリゴンに対するポリゴンに対するテクスチャデータではなく、十分に正面を向いたポリゴンに対するテクスチャデータのみが変更される。
【0014】
上で概要を説明した処理を実施することにより、望まない変更がテクスチャデータに伝播することなく、ユーザは容易かつ確実にテクスチャデータを変更することが可能である。プログラム命令によってプログラムされた際、処理装置2は処理動作を実行するための数多くの機能ユニットとして設定されたものと考えることができる。
【0015】
このような機能ユニット及びその相互接続の例を図1に示す。しかし、図1に示されるユニット及びその相互接続は概念的かつ理解を助けるための説明目的だけのために示されるものであり、処理装置2の1つ又は複数のプロセッサ、メモリ等が実際に設定されるユニットや接続を必ずしも表していない。
【0016】
図1に示される機能ユニットを参照して、中央制御部20はユーザ入力装置6からの入力を処理し、他の機能ユニットに対して制御及び処理を提供するように構成される。
【0017】
入力データインタフェース30は、ディスク32又は信号34といった、データ記憶媒体上の、処理装置2へ入力されるデータ記憶を制御するように構成される。3Dモデル記憶部40は、1つ又はそれより多いオブジェクトの3Dコンピュータモデルを規定する入力データを記憶するように構成される。
【0018】
テクスチャマップ記憶部50は、3Dコンピュータモデル記憶装置40に記憶される3Dコンピュータモデルのための1つ又は複数のテクスチャマップを規定する入力データを記憶するように構成される。
【0019】
一例として図2を参照すると、3Dモデル記憶部40に記憶されるデータは3Dオブジェクトの表面を表すポリゴンメッシュ200を規定する。本実施形態において、メッシュ200内の各ポリゴンは2次元3角形(planar triangle)である。
【0020】
テクスチャマップ記憶部50に記憶されるデータは複数のテクスチャマップを規定し、そのうちの3つ、210、220及び230が図2に示される。従来の方法において、各テクスチャマップは(画像が画像空間中の複数のピクセルから構成されるのと同様にして)、(u,v)テクスチャ座標空間において規定される複数のテクセル240からなる画像データ(実写画像又は合成画像のいずれか)を有する。代わりに、良く知られるように、テクスチャマップ210,220及び230中のテクスチャデータが、データを生成する手順によって定義されうる。
【0021】
ポリゴンメッシュ200中の各ポリゴンについて、テクスチャマップ210,220,230の1つ又は複数におけるテクスチャマップ座標が、ポリゴンの頂点に割り当てられる。これは、図2におけるポリゴン250について示されている(ここでは、一例として、テクスチャマップ座標が2つのテクスチャマップ210,220において定義されている)。
【0022】
再び図1を参照して、レンダラ60はユーザ入力装置6を用いてユーザによって定義された観察方向から3Dコンピュータモデル200の画像を生成するように構成される。この処理において、画像データ中のピクセル値は、ビューイングパラメータに基づいてこのピクセルにマッピングされたテクスチャマップ210,220,230からのテクスチャデータに基づいて生成される。レンダラ60が実行する処理は従来通りであるため、ここでの説明は行わない。
【0023】
中央制御部20の制御下にあるディスプレイコントローラ70は、処理装置2による処理の間、レンダラ60が生成した画像及びユーザへの指示を表示装置4を介して表示するように構成される。
【0024】
画像編集部80は、表示装置4上の画像及びこの画像に対してなされた変更を見ながら、1つ又は複数のユーザ入力装置6を用いてユーザが入力する指示に従って、レンダラ60が生成した画像を編集するように構成される。本実施形態において、画像編集部80は、図1における他の機能部品を規定するアプリケーション及びオペレーティングシステムとは別個の、処理装置2上で稼働するソフトウェアアプリケーションによって規定される。従って、例えば、画像編集部80はアドビ社のフォトショップ(登録商標)や類似のソフトウェアアプリケーションによって規定されうる。
【0025】
3Dモデル及びテクスチャマッププロセッサ90は、テクスチャマップ記憶部50に記憶されるテクスチャマップデータを、レンダラ60が生成した画像に対して画像編集部80が行う変更に従って変更するように構成される。
【0026】
画像記憶部100は、3Dモデル及びテクスチャマッププロセッサ90による処理で使用するために、レンダラ60が生成する元データ(すなわち、ユーザによってなんらかの変更がなされる前のデータ)のコピーを記憶するように構成される。
【0027】
図3を参照して、本実施形態において、3Dモデル及びテクスチャマッププロセッサ90は差分計算器120、ポリゴンセレクタ130、ポリゴンテスタ140、マスク生成器150及びテクスチャマップ編集器160を有する。
【0028】
差分計算器120はレンダラ60が生成し、画像記憶部100に記憶される元画像データと、画像編集部80が生成した編集画像データとを比較し、それらから差分画像(すなわち、画像編集部80によって値が変更されたピクセルに対応する位置を有するピクセルは値1にセットされ、画像編集部80によって値が変更されなかったピクセルに対応する位置を有するピクセルは値0にセットされる画像)を生成するように構成される。
【0029】
ポリゴンセレクタ130は、3Dコンピュータモデルを表すポリゴンメッシュ200中のどのポリゴン上に、画像編集部80が生成した編集画像データをマッピングするかを決定するように構成される。
【0030】
ポリゴンテスタ140は、ポリゴンセレクタ130によって特定されたポリゴンの各々について、そのポリゴンについてのテクスチャマップデータを更新するために、画像編集部80によって編集された画像データを使うべきである程度に、そのポリゴンが編集された画像の観察方向に関して十分正面を向いているか否か、又はユーザが対応する画像データに変更を加えても、そのポリゴンについてのテクスチャマップデータを変更する必要がない程度に、そのポリゴンが観察方向に関して斜角にあるか否かを判定するように構成される。
【0031】
マスク生成装置150は所与のポリゴンに対するポリゴンマスクを、差分計算器120によって生成された、このポリゴンにあてはまるとともに、変更された画像データを表す差分画像の中の画素に基づいて生成するように構成される。
【0032】
テクスチャマップ編集装置160はテクスチャマップ210,220,230内のテクスチャデータを、画像編集部80が生成した編集画像データ及びマスク生成装置150が生成したポリゴンマスクに基づいて修正するように構成される。
【0033】
再び図1を参照して、出力データインタフェース110は、装置2から、3Dモデル及びテクスチャマッププロセッサ90が生成した編集テクスチャマップデータを規定する出力データと、オプションで3Dモデル記憶部40からポリゴンメッシュ200を規定するデータを出力するように構成される。データは装置から、例えばディスク112といったデータ記憶媒体上のデータとして、及び/又は信号114として出力されうる。出力信号114を記録装置(図示せず)を用い(例えば、最初の記録を”マスター”として行った後、次の記録をそのマスター又はその子孫から行うことにより)直接的又は間接的に出力データの記録を行っても良い。
【0034】
今度は図4を参照して、本実施形態における処置装置2内部の機能部品が実行する処理動作を説明する。
ステップS4−2で、ユーザが1つ又は複数のユーザ入力装置6を用いて選択した3Dコンピュータモデルに関する観察方向に従って、3Dコンピュータモデルの画像を生成するため、レンダラ60は3Dモデル記憶部40に格納されるポリゴンメッシュ200を規定するデータ及び、テクスチャマップ記憶部50に格納されるテクスチャマップ210,220,230を規定するテクスチャデータを処理する。この処理は従来の方法で行われるため、ここでの説明は行わない。
【0035】
レンダラ60が生成した画像データはディスプレイコントローラ70によって表示装置4上に表示される。
図5を参照して、レンダラ60が生成し、表示装置4上でユーザに表示される画像データは、観察方向V(ここで、Vはユニットベクトル)からのポリゴンメッシュ200の画像260を規定する。
【0036】
画像260はテクスチャマップ210,220,230からのテクスチャデータを用いてレンダリングされたポリゴンメッシュ200を表す。その結果、ユーザは3Dコンピュータモデル上のテクスチャデータのエフェクトを任意の所望の観察方向Vから見ることができる。以下に説明するように、ユーザは画像260を規定する画像データを編集することができ、装置はテクスチャマップ210,220,230内の対応するテクスチャデータを自動的に変更する。
【0037】
このようにして、ユーザはテクスチャデータを編集するためにテクスチャマップ210,220,230を直接見る必要が無く、代わりにそのテクスチャデータを用いてレンダリングされた3Dオブジェクトの画像を見ることができる。そして、ユーザはそのテクスチャデータが有するエフェクトを3Dコンピュータモデル上で見ることができ、編集のためにそのテクスチャデータが最も良く描画される観察方向を選択することができる。
【0038】
再び図4を参照して、ステップS4−4で、ユーザ入力装置6を用いてユーザが入力する画像選択信号を受信すると、中央制御部20は画像データの最初のコピーを画像記憶部100へ記憶する。この記憶されたデータは、画像選択信号が生成された際に表示装置4に表示されていた画像を規定するデータである。
【0039】
加えて、中央制御部20は、画像編集部80がアクセスするために利用可能な画像データの2番目のコピーを作る。より具体的には、画像編集部80が本実施形態においては個別のアプリケーションによって規定されているため、中央制御部20は画像データの2番目のコピーを従来の方法でクリップボード(又は類似の共用データ記憶機構)に書き込む。このようにして、画像データは画像編集部80を規定するアプリケーションによるアクセスのためにエクスポートされる。
【0040】
ステップS4−6において、エクスポートされた画像データは、クリップボードから、画像編集部80を規定するアプリケーションへインポートされる。これは例えば従来の”ペースト”機能によって実行することができる。
【0041】
そして、画像データはユーザ入力装置6を用いるユーザによって入力された命令に従って編集される。画像データに対する変更は、表示装置4上でリアルタイムでユーザへ表示される。ユーザが画像データの編集が完了すると、編集された画像データは、画像編集部80を規定するアプリケーションからエクスポートすることにより、処理に利用することができるようになる。繰り返すが、これは従来の方法で画像データをクリップボード(又は同様の共用記憶機構)へセーブすることにより実施される。
【0042】
ステップS4−8において、編集された画像データは3Dモデル及びテクスチャマッププロセッサ90を規定するソフトウェアアプリケーションにインポートされ、ここでもこの処理は従来の方法で画像データをクリップボードから読み出すことにより実施される。
【0043】
そして、差分計算器120は、画像編集部80が生成した編集画像データと、レンダラ60が生成し、ステップS4−4で保存された、元画像データのコピーとを比較する。比較に基づいて、差分計算器120は元画像と同じ画素数を有し、画像編集部80によって値が編集された画素に対応する画素は値1にセットされ、画像編集部80によって値が変更されなかった画素に対応する画素は値0にセットされた差分画像を生成する。
【0044】
ステップS4−10で、ポリゴンセレクタ130は、ステップS4−6で生成された編集画像データがマッピングされるポリゴンメッシュ200中の各ポリゴンを特定するための処理を行う。
【0045】
説明として、図6を参照して、画像260中のピクセルにマッピングされる、ポリゴンメッシュ200中のポリゴンが、ユーザに表示され、ステップS4−6で編集される。これは図6においてポリゴン270について示されている。
【0046】
しかし、画像260は、ポリゴンメッシュ200中の個々のポリゴンではなく、テクスチャマップ210,220,230内のテクスチャデータから生成された3Dコンピュータモデルの表面ディテールを示している(その結果、ユーザはその画像データをポリゴンメッシュ200中のポリゴンを参照せずに編集することになる)。
【0047】
ステップS4−10で、ポリゴンセレクタ130は、ポリゴンメッシュ200中のどのポリゴンが、画像260のうち、ステップS4−6における処理によって修正された画像データ部分に対するテクスチャデータに寄与しているのかを割り出すための処理を行う。引き続く処理において、テクスチャマップ210,220,230内の、特定されたポリゴンについてのテクスチャデータが、ステップS4−6で画像データに対してなされた変更に基づいて修正される。
【0048】
本実施形態において、ポリゴンセレクタ130は、画像260内の各画素とポリゴンメッシュ200中のポリゴンとを関連づけ、ステップS4−6の処理で値が変更された画素に関連づけされたポリゴンメッシュ200中のポリゴンを選択することによって、ステップS4−10での処理を実行する。
【0049】
画像260内の各画素をポリゴンメッシュ200中のポリゴンとを関連づけするための処理は、従来の方法で行われる。この処理はポリゴンメッシュ200中の各ポリゴンに固有の色を割り当て、ステップS4−4で選択された画像と同一のビューイングパラメータを用い、従来のレンダリング処理を実行してポリゴンメッシュ200の画像を生成し、そして、画素の色をポリゴンメッシュ200中のポリゴンの色と照合し、生成された画像中の各画素をポリゴンメッシュ200中のポリゴンに割り当てるという処理を含む。
【0050】
その結果、画像260のうち、ステップS4−6の処理で変更された画素が特定され、引き続く処理のためのポリゴンを特定するため、ポリゴンメッシュ200中の対応するポリゴンのリストが作られる。
【0051】
ステップS4−12において、3Dモデル及びテクスチャマッププロセッサ90は、処理のため、ステップS4−10で特定された次のポリゴン(ステップS4−12が最初に実行される際には最初のポリゴンである)を選択する。
【0052】
ステップS4−14で、ポリゴンテスタ140は、ステップS4−12で選択されたポリゴンについてのテクスチャデータを修正するために、このポリゴンに対してステップS4−6で生成された編集画像データを使うべきか否かを判定するための処理を行う。
【0053】
図7は、テクスチャマップ210,220,230中の対応するテクスチャデータを修正するために、ポリゴンについての編集画像データを使うことが適切である場合及び、対応するテクスチャデータを修正するために、ポリゴンについての編集画像データを使うことが適切でない場合を示している。
【0054】
図7を参照すると、ポリゴンメッシュ200から2つのポリゴン280,290が拡大して示されている。各ポリゴン280,290は平面ポリゴンであり、各ポリゴンの面に垂直な法線ベクトルNが示されている。
【0055】
ポリゴン280は画像260においてポリゴン300へ投影し、ポリゴン290は画像260においてポリゴン310へ投影する。前に述べたように、ポリゴン300及び310は画像260においては不可視であり、代わりにポリゴン280,290に対応する、テクスチャマップ210,220,230からのテクスチャデータのみが、ポリゴン300,310によって規定される位置で可視である。
【0056】
画像260の観察方向Vとポリゴン280の法線ベクトルNとの間の角度は180度に近づき、その結果観察方向Vは実質的にポリゴン280の平面に垂直となる。一方、観察方向Vとポリゴン290の法線ベクトルNとの間の角度は180度よりもずっと小さく、結果としてポリゴン290の平面はポリゴン280の平面よりも観察方向Vに対してより斜角に存在することになる。
【0057】
この結果、画像260において、ポリゴン280が(ポリゴン300で規定される)比較的多数のポリゴンに投影するが、ポリゴン290は(ポリゴン310で規定される)比較的少数のポリゴンに投影する。
【0058】
従って、画像260中のポリゴン310で規定される領域中の画素へのいかなる変更も、ポリゴン290の大きな部分に影響するポリゴン290用テクスチャデータへの変更となりうる。これらの変更は画像260において目立たない(ポリゴン310が小さいため)が、その変更はポリゴン290の平面に対して垂直に近い、異なる観察方向においては非常に目立ち得る。
【0059】
加えて、画像260中のポリゴン310で規定される領域中の画素への変更は、ユーザが(ポリゴン300で規定される領域内の画素といった)隣接する領域中の画素の編集中に誤ってなされることもあり得る。
【0060】
これらの理由から、本実施形態において、ポリゴンテスタ140はステップS4−14で、画像260の観察方向Vに対して十分に正面を向いていないポリゴンを排除するための処理を行う。ステップS4−6で生成された編集画像データが排除されたポリゴンに対応するテクスチャマップ210,220,230中のテクスチャデータの変更に用いられないよう、排除されたポリゴンは引き続く処理から除外される。
【0061】
より具体的には、本実施形態において、ポリゴンテスタ140は、画像260の観察方向V(単位ベクトル)と、ポリゴンの法線ベクトルN(これも単位ベクトル)とのドット積(スカラ積としても知られる)を算出し、その結果を閾値(本実施形態ではcos135°の値に設定)と比較することでステップS4−12で選択されたポリゴンをテストする。従って、ポリゴンテスタ140は以下の不等式が満たされるか否かを判定する。
V・N≦cos(135°) ...(1)
【0062】
V・Nがcos(135°)よりも大きい場合、そのポリゴンは排除され、ステップS4−10で生成したリストから次のポリゴンを検討するために処理はS4−24へ進む。このようにして、ポリゴンはそれらが観察方向Vに関して後ろ向き(back−facing)であるか、それらが存在する平面が観察方向Vに対して45°を超える角度にある場合、排除される。
【0063】
一方、ステップS4−14でV・Nがcos(135°)以下である場合、そのポリゴンはテクスチャマップ210,220,230中のそのポリゴンに対するテクスチャデータをステップS4−6で生成した編集画像データを用いて更新すべき程度に、観察方向Vに対して十分正面を向いていることが判定される。その結果、この場合には処理はステップS4−16へ進む。
【0064】
ステップS4−16で、マスク生成器150はステップS4−8で生成した差分画像から、編集された画像データを表す画素(すなわち、値1を有する画素)であって、現在処理されているポリゴンに対応する画素(このような画素は上述したステップS4−10での処理結果として特定される)を選択する。選択された画素は、引き続く処理において用いるためのポリゴンマスクを規定する。
【0065】
ステップS4−18で、3Dモデル及びテクスチャマッププロセッサ90は現在検討中のポリゴンに対するテクスチャデータを与える次のテクスチャマップ210,220,230を選択する(ステップS4−18が最初に実行されるさいには最初のテクスチャマップとなる)。
【0066】
ステップS4−20において、テクスチャマップ編集器160は、現在検討中のポリゴンに対応するステップS4−18で選択されたテクスチャマップ中のテクスチャデータを、ステップS4−6で生成した編集画像データとステップS4−16で生成したポリゴンマスクに基づいて修正する。
【0067】
図8は、ステップS4−20においてテクスチャマップ編集器160が実行する処理動作を示す。
図8を参照して、ステップS8−2において、テクスチャマップ編集器160は、現在処理されているポリゴンの頂点の、ステップS4−6で生成した編集画像データにおける位置を割り出すための処理を実行する。より具体的には、本実施形態において、この処理は、画像260がレンダラ60によって最初に生成された際のビューイングパラメータによって規定される変換を用いて、ポリゴンの頂点をポリゴンメッシュ200の3D世界空間から画像260の2D空間へ投影する処理を含む。
【0068】
ステップS8−4からS8−10において、テクスチャマップ編集器160は現在処理されているテクスチャマップ内のテクスチャデータを、ステップS8−2で計算された頂点位置間に存在する、画像260からの編集画像データを用いて修正する。
【0069】
本実施形態において、この処理は従来のテクスチャマッピング処理を逆方向に、すなわちテクスチャマップから画像260ではなく、画像260からテクスチャマップへ実行することによって達成される。
【0070】
より具体的には、ステップS8−4で、テクスチャマップ編集器160は、画像260がテクスチャマップに、ステップS4−18で選択されたテクスチャマップが画像となるべく規定する。
【0071】
従って、図9を参照して、画像260中の画素データは、テクスチャマップ210内のテクスチャデータを更新するため、適切な位置でテクスチャマップ210にマッピングされるべきデータを規定する。図9はこれをポリゴンメッシュ200中のポリゴン320について、拡大して示している。
【0072】
テクスチャマップ210中で修正されるべきテクスチャデータは、画像データ260中の三角形320の頂点位置328,330,332(頂点位置328,330,332はステップS8−2で計算されている)の間に存在し、ステップS4−6での処理によって修正された画像データがマッピングされる、三角形320の頂点位置322,324,326の間に存在するテクスチャデータを含む(これらの位置は、3Dモデル記憶部40及びテクスチャマップ記憶部50中に従来の方法によって規定されている)。
【0073】
ステップS8−6において、テクスチャマップ210内の正しいデータの修正を実行するため、テクスチャマップ編集器160はステップS4−16で生成したポリゴンマスクをテクスチャデータとなるべく規定し、画像データ260からこのポリゴンマスクテクスチャデータ(今はテクスチャマップとなるべく規定されている)をテクスチャマップ210(今は画像となるべく規定されている)へマッピングする。このマッピングは頂点322,324及び326で規定されるポリゴンを変形されたテクスチャデータのための受容ポリゴン(recipient polygon)となるべく規定し、従来のテクスチャマッピングルーチンを用いて実施される。
【0074】
テクスチャマップ編集器160は、ポリゴンマスクテクスチャがマッピングされた、テクスチャマップ210のテクセル(texel)の記録を保存する。
【0075】
ステップS8−10で、テクスチャマップ編集器160は、ステップS4−6での処理によって画像データが修正されたか否かには関わらず、ステップS8−2で計算された頂点328,330,332の間に存在する全画素に対する画像データをテクスチャデータとなるべく規定し、(テクスチャマップとなるべく規定される)画像260からのデータを(画像となるべく規定される)テクスチャマップ210へ、頂点322,324及び326で規定されるポリゴンを変形されたテクスチャデータのための受容ポリゴンとなるべく規定し、従来のテクスチャマッピングルーチンを用いてマッピングする。
【0076】
テクスチャマップ編集器160は画像データが投影された、(ステップS8−6で決定された)ポリゴンマスク内部のテクセル上にマッピングされる場合には、テクスチャマップ210内に既に存在するテクスチャデータを、ステップS8−6でテクスチャマップへマッピングされた画像と置き換えるが、画像データがポリゴンマスクの外のテクセル上にマッピングされる場合には、テクスチャマップ210内の元のテクスチャデータを維持する。
【0077】
このようにして、ポリゴンマスクはステップS4−6で修正された画像データの部分を規定するため、テクスチャマップ210内のテクスチャデータは修正された画像データによって変更されるが、修正されていない画像データによっては変更されない。
【0078】
再度図4を参照して、ステップS4−22において、3Dモデル及びテクスチャマッププロセッサ90は、現在処理中のポリゴンに対するテクスチャデータを提供する他のテクスチャマップ210,220,230が存在するかどうかを判定する。ステップS4−18からS4−22は、ステップS4−12で選択されたポリゴンに対してテクスチャマップを提供する全てのテクスチャマップが上述のように処理されるまで繰り返される。
【0079】
ステップS4−24で、3Dモデル及びテクスチャマッププロセッサ90は、ステップS4−6で生成された編集画像データが投影する他のポリゴンが存在するか(すなわち、ステップS4−10で生成したリスト上に他のポリゴンが存在するか)を判定する。
【0080】
ステップS4−12からS4−24は、編集画像データがマッピングされる各ポリゴンが上述の方法で処理されるまで繰り返される。
【0081】
この処理の結果、テクスチャマップ210,220,230内に規定されるテクスチャデータは、ユーザが画像260へ行った変更に基づいて修正される。従って、ユーザは、任意の選択方向からの3Dコンピュータモデルの画像へ変更を加えることにより、テクスチャデータを編集することができる。
【0082】
上述の実施形態には、特許請求の範囲の範囲内で多くの変更をなすことが可能である。
例えば、上述の実施形態において、画像編集部80は独立したソフトウェアアプリケーション、即ちレンダラ60及び3Dモデル及びテクスチャマッププロセッサ90を規定するアプリケーションとは別個のアプリケーションによって規定されている。しかし、その代わりに、図1に示され、上述された1つ又はそれより多い他の機能ユニットと同様、レンダラ60、画像編集部80及び、3Dモデル及びテクスチャマッププロセッサ90を同一のアプリケーションで規定することが可能である。
【0083】
上述の実施形態において、画像データはステップS4−2で、ユーザが選択した3Dコンピュータモデルの観察方向に従って生成されている。加えて、ユーザは観察位置、カメラズーム等といった、その画像についての他のビューイングパラメータを選択しても良い。
【0084】
上述の実施形態において、編集された画像データをポリゴンについてのテクスチャデータを変更するために使用すべきであるか否かを判定するため、ステップS4−10で生成したリスト上の各ポリゴンをテストするための処理をステップS4−14で行っている。より具体的には、ステップS4−14でのテストにおいて、ポリゴンの平面が、編集画像データが生成された画像データ260の観察方向Vに対して十分に正面を向いていないと判定した場合、テクスチャデータに対する修正は行われない。しかし、ステップS4−14は必須ではなく、省略可能であり、その結果ステップS4−10で特定された全ポリゴンはステップS4−16からS4−22での処理を用いて処理される。
【0085】
上述の実施形態において、ステップS4−8及びS4−10で、ユーザによって編集されている画像データを編集されていない画像データと区別し、3Dコンピュータモデル中の、編集された画像データがマッピングされるポリゴンを特定するための処理が実施されている。引き続く処理において、ポリゴンのためのテクスチャデータは編集された画像データに基づいて修正されるが、演習されていない画像データに基づいては修正されない。しかし、ステップS4−8及びS4−10における処理は必須ではなく、省略可能である。引き続く処理においては、3Dコンピュータモデルのポリゴン毎に、そのポリゴンに対するテクスチャデータが修正されるべきであるかを判定するためにステップS4−14でテストされ、ポリゴンからテクスチャデータを修正すべき各ポリゴンについて、テクスチャデータはそのポリゴンに関連する全画像データ、すなわち、そのポリゴンについて編集された画像データ及び編集されていない画像データの両方に基づいて修正することができる。
【0086】
上述の実施形態において、あるポリゴンが、そのポリゴンについてのテクスチャデータに編集された画像データが適用されるべき、画像260の観察方向Vに関し、十分正面を向いているかを判定するためのテストがステップS4−14で、上述の等式(1)に従って実行される。しかし、他のテストを付加もしくはその代わりに行っても良い。例えば、処理は以下の不等式を満たすかどうかを判定するために実行される。
画像中の投影されたポリゴンの領域/ポリゴンメッシュの3D空間中のポリゴン領域≧閾値 …(2)
【0087】
ここで、画像260中の、投影されたポリゴンの領域はピクセル単位で測定され、またポリゴンメッシュ200の3D空間(すなわち、世界空間)中のポリゴン領域は、任意の、予め定められた単位で測定される。
不等式が満たされないことが判定された場合(すなわち、領域比が閾値以上である場合)、ポリゴンに対するテクスチャデータを修正するため、処理はステップS4−16からS4−22を通じて進行する。そうでない場合には、これらのステップは省略される。
【0088】
同様に、上述の等式(1)に加え、あるいはその代わりに、以下の不等式をステップS4−14において評価することができる。
画像中の投影されたポリゴンの領域/テクスチャマップ中の投影されたポリゴンの領域≧閾値 …(3)
ここで、画像260中の投影されたポリゴンの領域はピクセル単位で測定され、テクスチャマップ210,220,230中の対応する投影されたポリゴンはテクセル単位で測定される。
【0089】
領域比が等式(3)の閾値以上であることが判定された場合、編集された画像データに基づいてテクスチャデータを修正するため、ステップS4−16からS4−22が実行されるであろう。そうでない場合、これらのステップは省略されるであろう。
【0090】
上述の等式(2)及び(3)において、領域比はポリゴンと画像260の観察方向Vとの相対的な方向(relative orientation)を表す。これは、画像260中の投影されたポリゴンの領域(分子)は、ポリゴンの画像260の観察方向Vに対する角度に依存するためであり、一方で分母はポリゴンの向きに依存しない領域を表す。
【0091】
上述の実施形態、及び上述の等式(2)及び(3)を用いる変形例において、ステップS4−14での処理の結果は、ステップS4−16からS4−22における処理に関してそのまま維持されるか、処理を拒否されるポリゴンである。しかし、代わりに、そのポリゴンと観察方向Vとの相対的な方向の指標(measure)を等式(1)から(3)の1つ以上に従って計算するが、以後の処理においていかなるポリゴンも拒否しない(又は後ろ向きのポリゴンのみ拒否する)ための処理をステップS4−14において実行することができる。この場合ステップS8−10での処理は、変更すべき各テクセル値を対応する画像値に置き換える代わりに、ポリゴンと観察方向Vとの計算された相対的な方向に基づく値とテクセル値が置き換えられるように変更されるであろう。例えば、変更すべき各テクセル値は、計算された方向指標に従って決定される相対重みを用いて元のテクセル値及び対応する画像の値を重み付け平均した値と置き換えされても良い(重み付けは、ポリゴンの平面が観察方向Vに対して正面を向くほど、画像値の寄与を増やすように、またポリゴンの平面が観察方向Vに対して正面を向かなくなるほど、元のテクセル値の寄与を増やすように設定される)。
【0092】
上述の実施形態において、処理はプログラム命令によって定義される処理ルーチンを用いるコンピュータによって実行される。しかし、処理の一部又は全部をハードウェアを用いて実行することも可能である。
【図面の簡単な説明】
【図1】本発明の実施形態の構成要素を、処理装置の構成要素がプログラム命令によってプログラミングされた際、これら要素が内部に形成されると考えられる概念的な機能処理ユニットとともに模式的に示す図である。
【図2】図1の装置において記憶されるデータによって規定される3Dコンピュータモデル及びテクスチャマップの例を示すとともに、3Dコンピュータモデル内のポリゴン上にどのようにテクスチャがマッピングされるかを説明する図である。
【図3】図1の3Dモデル及びテクスチャマッププロセッサ要素が内部に構成されると考えられる概念的な機能処理ユニットを模式的に示す図である。
【図4a】
【図4b】図1の処理装置で実行される処理動作を示す図である。
【図5】図4のステップS4−2における画像データの生成及び表示を説明する図である。
【図6】編集された画像データがどのように3Dコンピュータモデル内のポリゴン上にマッピングされるかを説明する図である。
【図7】画像の小部分への変更がどのように3Dコンピュータモデル内の大きなポリゴン領域に影響を与えうるかの例を示す図である。
【図8】図4のステップS4−20で実施される処理動作を説明する図である。
【図9】図4のステップS4−20における、テクスチャマップデータを変更するための、編集画像データのテクスチャマップへのマッピングを説明する図である。
Claims (36)
- 複数のポリゴン及び当該ポリゴン用のテクスチャデータを含む三次元コンピュータモデルを規定するデータを、前記テクスチャデータをユーザの指示に従って修正するために処理装置において処理する方法であって、
ユーザが選択した観察方向に従って、前記三次元コンピュータモデルの画像を規定する、表示用画像データを生成する工程と、
前記生成された画像データを、ユーザの指示に従って修正して、編集画像データを生成する工程と、
前記編集画像データに基づいて前記テクスチャデータを修正する工程とを有することを特徴とする方法。 - 前記編集された画像データが、どの画像データが変更されたかを判定するため、表示用に生成された前記画像データに対応する未修整の画像データと比較され、
前記テクスチャデータが、変更されたものと判定された画像データに基づき、変更されていない画像データは基づかずに変更されることを特徴とする請求項1記載の方法。 - 前記テクスチャデータを修正するための前記処理工程が、
前記変更された画像データが前記三次元コンピュータモデル中のどのポリゴンに関連するかを判定する工程と、
前記変更された画像データが関連する前記三次元コンピュータモデル中のポリゴンに対する前記テクスチャデータを修正する工程とを更に有することを特徴とする請求項2記載の方法。 - 前記変更された画像データが関連するポリゴンに対する前記テクスチャデータを修正するための処理工程が、
前記変更された画像データが関連する各ポリゴンについてのポリゴンマスクであって、その各々が前記ポリゴンのどの部分が前記変更された画像データに関連するか及び、どの部分が変更されていない画像データに関連するかを規定するポリゴンマスクを規定するデータを生成する工程と、
前記ポリゴンマスク及び前記ポリゴンに対する前記変更された画像データに基づいて、前記変更された画像データが関連するポリゴンの各々に対する前記テクスチャデータを修正する工程とを有することを特徴とする請求項3記載の方法。 - 各ポリゴンマスクが前記画像データの座標系において規定され、
前記変更された画像データが関連するポリゴンに対する前記テクスチャデータを修正するための前記処理工程が、
前記ポリゴンに対する前記変更された画像データ及び前記変更されていない画像データ及び、前記ポリゴンに対する前記ポリゴンマスクを前記テクスチャデータにマッピングする工程と、
前記投影されたポリゴンマスクから、どのテクスチャデータが変更された画像データに関連するかを特定する工程と、
前記特定されたテクスチャデータを前記変更された画像データに基づいて変更する工程とを有することを特徴とする請求項4記載の方法。 - 前記表示用の画像データが生成された前記観察方向に関する各ポリゴンのそれぞれの方向の指標を判定するため、前記三次元コンピュータモデルからのポリゴンがテストされ、
前記テクスチャデータを修正するための前記処理工程において、前記テクスチャデータが前記判定された方向指標及び前記編集された画像データに基づいて修正されることを特徴とする請求項1乃至請求項5のいずれか1項に記載の方法。 - 前記テクスチャデータを修正するための処理工程において、
前記テクスチャデータが修正されるであろうポリゴンが、前記判定された方向指標に基づいて選択され、
前記テクスチャデータが前記選択されたポリゴンに対してのみ修正されることを特徴とする請求項6記載の方法。 - 前記方向指標が、前記ポリゴンの存在する平面が前記観察方向に対して垂直な所定の角度内であることを示す場合、当該ポリゴンが前記テクスチャデータが修正されるであろうポリゴンとして選択されることを特徴とする請求項7記載の方法。
- 各ポリゴンに対する前記それぞれの方向指標が、前記ポリゴン面に対する法線ベクトルと前記観察方向との間の角度に基づいて判定されることを特徴とする請求項6乃至請求項8のいずれか1項に記載の方法。
- 各ポリゴンに対する前記それぞれの方向指標が、前記生成された画像データにおける前記ポリゴンのサイズに基づいて判定されることを特徴とする請求項6乃至請求項8のいずれか1項に記載の方法。
- 各ポリゴンに対する前記それぞれの方向指標が、さらに前記ポリゴンの前記三次元コンピュータモデル中でのポリゴンサイズ又は、テクスチャデータ中での前記ポリゴンのサイズに基づいて判定されることを特徴とする請求項10記載の方法。
- 前記方向を判定するためにテストされる前記ポリゴンが、前記変更された画像が関連するポリゴンを含むが、前記変更された画像データが関連しないポリゴンを含まないことを特徴とする、請求項3に従属する請求項6乃至請求項11のいずれか1項に記載の方法。
- 修正されるべきテクスチャデータ値の各々が、元のテクスチャデータ値及び編集された画像データ値の組み合わせからなる値に置き換えされることによって修正され、前記元のテクスチャデータ値及び前記編集された画像データの相対的な寄与率が、前記対応するポリゴンの前記計算された方向指標に基づいて判定されることを特徴とする請求項6乃至請求項12のいずれか1項に記載の方法。
- 修正されるべきテクスチャデータ値の各々が、編集された画像データ値と置き換えされることによって修正されることを特徴とする請求項6乃至請求項12のいずれか1項に記載の方法。
- 表示用に生成される前記画像データが前記処理装置上で稼働する第1のソフトウェアアプリケーションからエクスポートされ、
前記エクスポートされた画像データが前記処理装置上で稼働する第2のソフトウェアアプリケーションによってインポートされるとともに、前記編集された画像データを生成するための処理が前記第2のソフトウェアアプリケーションによって実行され、
前記編集された画像データが、引き続く処理のために、前記第2のソフトウェアアプリケーションからエクスポートされ、前記第1のソフトウェアアプリケーションにインポートされることを特徴とする請求項1乃至請求項14のいずれか1項に記載の方法。 - 前記テクスチャデータを修正するための前記処理において、複数のテクスチャマップ中のテクスチャデータが、ある1つの画像からの前記編集された画像データに基づいて修正されることを特徴とする請求項1乃至請求項15のいずれか1項に記載の方法。
- 前記編集されたテクスチャデータを搬送する信号を生成する工程を更に有することを特徴とする請求項1乃至請求項16のいずれか1項に記載の方法。
- 前記信号の記録を直接又は間接的に生成する工程を更に有することを特徴とする請求項1乃至請求項17のいずれか1項に記載の方法。
- 複数のポリゴン及び当該ポリゴン用のテクスチャデータを含む三次元コンピュータモデルを規定するデータを、前記テクスチャデータをユーザの指示に従って修正するために処理する装置であって、
ユーザが選択した観察方向に従って、前記三次元コンピュータモデルの画像を規定する、表示用画像データを生成する手段と、
前記生成された画像データを、ユーザの指示に従って修正して、編集画像データを生成する手段と、
前記編集画像データに基づいて前記テクスチャデータを修正する手段とを有することを特徴とする装置。 - どの画像データが変更されたかを判定するため、前記編集された画像データを、表示用に生成された前記画像データに対応する未修整の画像データと比較する手段を更に有し、
前記テクスチャデータを修正するための手段が、前記変更された画像データに基づき、変更されていない画像データは基づかずに変更するように構成されることを特徴とする請求項19記載の装置。 - 前記テクスチャデータを修正するための前記手段が、
前記変更された画像データが前記三次元コンピュータモデル中のどのポリゴンに関連するかを判定し、
前記変更された画像データが関連する前記ポリゴンに対する前記テクスチャデータを修正することによって、前記テクスチャデータを修正するように構成されることを特徴とする請求項20記載の装置。 - 前記テクスチャデータを修正する前記手段が、
前記変更された画像データが関連する各ポリゴンについてのポリゴンマスクであって、その各々が前記ポリゴンのどの部分が前記変更された画像データに関連するか及び、どの部分が変更されていない画像データに関連するかを規定するポリゴンマスクを規定するデータを生成し、
前記ポリゴンマスク及び前記ポリゴンに対する前記変更された画像データに基づいて、前記変更された画像データが関連するポリゴンの各々に対する前記テクスチャデータを修正することによって、前記変更された画像データが関連するポリゴンに対する前記テクスチャデータを修正するように構成されることを特徴とする請求項21記載の装置。 - 前記テクスチャデータを修正するための手段が、
各ポリゴンマスクを前記画像データの座標系において規定し、
前記変更された画像データが関連するポリゴンに対する前記テクスチャデータを、
前記ポリゴンに対する前記変更された画像データ及び前記変更されていない画像データ及び、前記ポリゴンに対する前記ポリゴンマスクを前記テクスチャデータにマッピングし、
前記投影されたポリゴンマスクから、どのテクスチャデータが変更された画像データに関連するかを特定し、
前記特定されたテクスチャデータを前記変更された画像データに基づいて変更することによって修正するように構成されることを特徴とする請求項22記載の装置。 - 前記表示用の画像データが生成された前記観察方向に関する各ポリゴンのそれぞれの方向の指標を判定するため、前記三次元コンピュータモデルからのポリゴンをテストする手段を更に有し、
前記テクスチャデータを修正するための前記手段が、前記テクスチャデータを前記判定された方向指標及び前記編集された画像データに基づいて修正するように構成されることを特徴とする請求項19乃至請求項23のいずれか1項に記載の装置。 - 前記テクスチャデータを修正するための前記手段が、
前記テクスチャデータが修正されるであろうポリゴンを、前記判定された方向指標に基づいて選択し、
前記選択されたポリゴンに対してのみ前記テクスチャデータを修正することによって、前記テクスチャデータを修正するように構成されることを特徴とする請求項24記載の装置。 - 前記方向指標が、前記ポリゴンの存在する平面が前記観察方向に対して垂直な所定の角度内であることを示す場合、当該ポリゴンを前記テクスチャデータが修正されるであろうポリゴンとして選択するように前記テクスチャデータを修正するための前記手段が構成されることを特徴とする請求項25記載の装置。
- 前記ポリゴンをテストするための前記手段が、各ポリゴンに対する前記それぞれの方向指標を、前記ポリゴン面に対する法線ベクトルと前記観察方向との間の角度に基づいて判定するように構成されることを特徴とする請求項24乃至請求項26のいずれか1項に記載の装置。
- 前記ポリゴンをテストするための前記手段が、各ポリゴンに対する前記それぞれの方向指標を、前記生成された画像データにおける前記ポリゴンのサイズに基づいて判定するように構成されることを特徴とする請求項24乃至請求項26のいずれか1項に記載の装置。
- 前記ポリゴンをテストするための前記手段が、各ポリゴンに対する前記それぞれの方向指標を、さらに前記ポリゴンの前記三次元コンピュータモデル中でのポリゴンサイズ又は、テクスチャデータ中での前記ポリゴンのサイズに基づいて判定するように構成されることを特徴とする請求項28記載の装置。
- 前記ポリゴンをテストするための前記手段が、前記変更された画像が関連するポリゴンの前記方向を判定するが、前記変更された画像データが関連しないポリゴンの前記方向は判定しないように構成されることを特徴とする、請求項21に従属する請求項24乃至請求項29のいずれか1項に記載の装置。
- 前記テクスチャデータを修正するための手段が、修正されるべきテクスチャデータ値の各々を、元のテクスチャデータ値及び編集された画像データ値の組み合わせからなる値に置き換えることによって修正するように構成され、前記元のテクスチャデータ値及び前記編集された画像データの相対的な寄与率が、前記対応するポリゴンの前記計算された方向指標に基づいて判定されることを特徴とする請求項24乃至請求項30のいずれか1項に記載の装置。
- 前記テクスチャデータを修正するための手段が、修正されるべきテクスチャデータ値の各々を、編集された画像データ値と置き換えされることによって修正するように構成されることを特徴とする請求項24乃至請求項30のいずれか1項に記載の装置。
- 前記装置が第1及び第2のソフトウェアアプリケーションをインストールされるとともに、
表示用に生成される前記画像データを前記第1のソフトウェアアプリケーションからエクスポートし、
前記エクスポートされた画像データを前記第2のソフトウェアアプリケーションによってインポートするとともに、前記第2のソフトウェアアプリケーションを用いて前記編集された画像データを生成するための処理を実行し、
前記第2のソフトウェアアプリケーションから前記編集された画像データをエクスポートし、
引き続く処理のために、前記エクスポートされた編集画像データを前記第1のソフトウェアアプリケーションにインポートするように構成されることを特徴とする請求項19乃至請求項32のいずれか1項に記載の装置。 - 前記テクスチャデータを修正するための前記手段が、ある1つの画像からの前記編集された画像データに基づいて、複数のテクスチャマップ中の前記テクスチャデータを修正するように動作可能であることを特徴とする請求項19乃至請求項33のいずれか1項に記載の装置。
- プログラム可能な装置を、請求項1乃至請求項16の少なくともに1つに記載された方法を実行するように動作可能となるようにプログラミングするためのコンピュータプログラム命令を格納する記録媒体。
- プログラム可能な装置を、請求項1乃至請求項16の少なくともに1つに記載された方法を実行するように動作可能となるようにプログラミングするためのコンピュータプログラム命令を搬送する信号。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0204750A GB2386042A (en) | 2002-02-28 | 2002-02-28 | Texture map editing |
GB0204749A GB0204749D0 (en) | 2002-02-28 | 2002-02-28 | Texture map editing |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004038926A true JP2004038926A (ja) | 2004-02-05 |
Family
ID=27758842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003051178A Withdrawn JP2004038926A (ja) | 2002-02-28 | 2003-02-27 | テクスチャマップ編集 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7561164B2 (ja) |
EP (1) | EP1347418A3 (ja) |
JP (1) | JP2004038926A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006120158A (ja) * | 2004-10-19 | 2006-05-11 | Microsoft Corp | 3dにおけるハードウェアアクセラレートされたアンチエイリアジング(hardwareacceleratedanti−aliasing)のための方法 |
WO2012147303A1 (ja) * | 2011-04-25 | 2012-11-01 | Hayashi Mitsuo | 全方位画像編集プログラム及び全方位画像編集装置 |
JP2016528972A (ja) * | 2013-07-23 | 2016-09-23 | シロナ・デンタル・システムズ・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング | 3d輪郭データ収集及びう蝕検出のシステム、方法、並びにコンピュータプログラム |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6792205B2 (en) * | 2002-04-17 | 2004-09-14 | Mitsubishi Electric Research Laboratories, Inc. | Method for generating a textured range image |
GB2398469B (en) * | 2003-02-12 | 2005-10-26 | Canon Europa Nv | Image processing apparatus |
GB2400288B (en) * | 2003-04-02 | 2005-12-28 | Canon Europa Nv | Generating texture maps for use in 3D computer graphics |
GB0310504D0 (en) | 2003-05-07 | 2003-06-11 | Canon Europa Nv | Photographing apparatus,device and method for obtaining images to be used for creating three-dimensional model |
GB2405776B (en) * | 2003-09-05 | 2008-04-02 | Canon Europa Nv | 3d computer surface model generation |
GB2406252B (en) * | 2003-09-18 | 2008-04-02 | Canon Europa Nv | Generation of texture maps for use in 3d computer graphics |
US20070165045A1 (en) * | 2004-01-12 | 2007-07-19 | Allegorithmic | Method and tool for modifying a procedural map |
WO2005103921A2 (en) * | 2004-04-15 | 2005-11-03 | Edda Technology, Inc. | Interactive 3d data editing via 2d graphical drawing tools |
GB2415344B (en) * | 2004-06-14 | 2010-10-06 | Canon Europa Nv | Texture data compression and rendering in 3D computer graphics |
WO2006015781A1 (fr) * | 2004-08-10 | 2006-02-16 | Allegorithmic | Outil et procede de conception de maillage |
US20080246765A1 (en) | 2005-05-06 | 2008-10-09 | Desmond Grenfell | Method and apparatus for constraint-based texture generation |
US8990681B2 (en) | 2007-01-24 | 2015-03-24 | Bluebeam Software, Inc. | Method for aligning a modified document and an original document for comparison and difference highlighting |
US7907794B2 (en) * | 2007-01-24 | 2011-03-15 | Bluebeam Software, Inc. | Method for aligning a modified document and an original document for comparison and difference highlighting |
US8638334B2 (en) * | 2008-08-22 | 2014-01-28 | Adobe Systems Incorporated | Selectively displaying surfaces of an object model |
US8707150B2 (en) * | 2008-12-19 | 2014-04-22 | Microsoft Corporation | Applying effects to a video in-place in a document |
MX2012011815A (es) * | 2010-04-12 | 2012-12-17 | Fortem Solutions Inc | Mallas de proyeccion de camaras. |
KR101677633B1 (ko) * | 2010-07-12 | 2016-11-18 | 엘지전자 주식회사 | 사진 편집 방법 및 이를 이용하는 이동 단말기 |
US8334985B2 (en) * | 2010-10-08 | 2012-12-18 | Omron Corporation | Shape measuring apparatus and shape measuring method |
US9405433B1 (en) | 2011-01-07 | 2016-08-02 | Trimble Navigation Limited | Editing element attributes of a design within the user interface view, and applications thereof |
US8713519B2 (en) * | 2011-08-04 | 2014-04-29 | Trimble Navigation Ltd. | Method for improving the performance of browser-based, formula-driven parametric objects |
US8749580B1 (en) * | 2011-08-12 | 2014-06-10 | Google Inc. | System and method of texturing a 3D model from video |
US8890863B1 (en) * | 2011-08-12 | 2014-11-18 | Google Inc. | Automatic method for photo texturing geolocated 3-D models from geolocated imagery |
US9146660B2 (en) | 2011-08-22 | 2015-09-29 | Trimble Navigation Limited | Multi-function affine tool for computer-aided design |
US20150015574A1 (en) * | 2013-07-09 | 2015-01-15 | Nvidia Corporation | System, method, and computer program product for optimizing a three-dimensional texture workflow |
US9951767B2 (en) * | 2014-05-22 | 2018-04-24 | General Electric Company | Vibrational fluid mover active controller |
US10989542B2 (en) | 2016-03-11 | 2021-04-27 | Kaarta, Inc. | Aligning measured signal data with slam localization data and uses thereof |
EP3427008B1 (en) | 2016-03-11 | 2022-09-07 | Kaarta, Inc. | Laser scanner with real-time, online ego-motion estimation |
US11573325B2 (en) | 2016-03-11 | 2023-02-07 | Kaarta, Inc. | Systems and methods for improvements in scanning and mapping |
US11567201B2 (en) | 2016-03-11 | 2023-01-31 | Kaarta, Inc. | Laser scanner with real-time, online ego-motion estimation |
US10134174B2 (en) | 2016-06-13 | 2018-11-20 | Microsoft Technology Licensing, Llc | Texture mapping with render-baked animation |
WO2019099605A1 (en) | 2017-11-17 | 2019-05-23 | Kaarta, Inc. | Methods and systems for geo-referencing mapping systems |
WO2019165194A1 (en) * | 2018-02-23 | 2019-08-29 | Kaarta, Inc. | Methods and systems for processing and colorizing point clouds and meshes |
AU2018203327A1 (en) * | 2018-05-11 | 2019-11-28 | Canon Kabushiki Kaisha | System and method for processing a graphic object |
WO2020009826A1 (en) | 2018-07-05 | 2020-01-09 | Kaarta, Inc. | Methods and systems for auto-leveling of point clouds and 3d models |
US20220410002A1 (en) * | 2021-06-29 | 2022-12-29 | Bidstack Group PLC | Mesh processing for viewability testing |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5363483A (en) * | 1992-10-28 | 1994-11-08 | Intellution, Inc. | Updating objects displayed in a computer system |
JP3869876B2 (ja) | 1995-12-19 | 2007-01-17 | キヤノン株式会社 | 画像計測方法及び画像計測装置 |
US6081273A (en) | 1996-01-31 | 2000-06-27 | Michigan State University | Method and system for building three-dimensional object models |
WO2004089486A1 (ja) * | 1996-06-21 | 2004-10-21 | Kyota Tanaka | 3次元ゲーム装置及び情報記憶媒体 |
US5977982A (en) * | 1996-06-28 | 1999-11-02 | Avid Technology Inc. | System and method for modification of the visual characteristics of digital 3D objects |
US6137893A (en) | 1996-10-07 | 2000-10-24 | Cognex Corporation | Machine vision calibration targets and methods of determining their location and orientation in an image |
US5977983A (en) * | 1997-02-20 | 1999-11-02 | S3 Incorporated | Method and apparatus for adjusting graphics processing procedures based on a selectable speed/quality gauge |
US20020154132A1 (en) * | 1997-07-30 | 2002-10-24 | Alain M. Dumesny | Texture mapping 3d graphic objects |
EP0898245B1 (en) | 1997-08-05 | 2004-04-14 | Canon Kabushiki Kaisha | Image processing method and apparatus |
JPH11328441A (ja) | 1998-05-11 | 1999-11-30 | Hitachi Ltd | グラフィックス表示制御方法およびコンピュータグラフイックス |
US6281904B1 (en) | 1998-06-09 | 2001-08-28 | Adobe Systems Incorporated | Multi-source texture reconstruction and fusion |
US6563499B1 (en) | 1998-07-20 | 2003-05-13 | Geometrix, Inc. | Method and apparatus for generating a 3D region from a surrounding imagery |
US6271858B1 (en) * | 1998-10-16 | 2001-08-07 | Microsoft Corporation | Incremental update for dynamic/animated textures on three-dimensional models |
JP4025442B2 (ja) | 1998-12-01 | 2007-12-19 | 富士通株式会社 | 三次元モデル変換装置及び方法 |
JP2000268189A (ja) | 1999-03-18 | 2000-09-29 | Airemu Software Engineering Kk | 画像表示方法、画像表示装置およびそれを備えた遊技機並びにプログラムを記憶した記憶媒体 |
JP2000339499A (ja) | 1999-05-27 | 2000-12-08 | Mitsubishi Electric Corp | テクスチャマッピング・テクスチャモザイク処理装置 |
US6297834B1 (en) * | 1999-06-10 | 2001-10-02 | Hewlett-Packard Company | Direction-dependent texture maps in a graphics system |
EP1232480B1 (en) | 1999-11-23 | 2006-05-17 | Canon Kabushiki Kaisha | Image processing apparatus |
GB2358307B (en) | 1999-11-25 | 2004-03-24 | Canon Kk | Image processing apparatus |
US7728848B2 (en) | 2000-03-28 | 2010-06-01 | DG FastChannel, Inc. | Tools for 3D mesh and texture manipulation |
US7065242B2 (en) | 2000-03-28 | 2006-06-20 | Viewpoint Corporation | System and method of three-dimensional image capture and modeling |
GB0023681D0 (en) | 2000-09-27 | 2000-11-08 | Canon Kk | Image processing apparatus |
GB2369260B (en) | 2000-10-27 | 2005-01-19 | Canon Kk | Method and apparatus for the generation of composite images |
EP1204073B1 (en) | 2000-10-27 | 2007-01-31 | Canon Kabushiki Kaisha | Image generation method and apparatus |
GB2369541B (en) | 2000-10-27 | 2004-02-11 | Canon Kk | Method and aparatus for generating visibility data |
GB2377870B (en) | 2001-05-18 | 2005-06-29 | Canon Kk | Method and apparatus for generating confidence data |
GB2378337B (en) | 2001-06-11 | 2005-04-13 | Canon Kk | 3D Computer modelling apparatus |
GB0114157D0 (en) | 2001-06-11 | 2001-08-01 | Canon Kk | 3D Computer modelling apparatus |
GB0126526D0 (en) | 2001-11-05 | 2002-01-02 | Canon Europa Nv | Three-dimensional computer modelling |
-
2003
- 2003-02-24 EP EP03251096A patent/EP1347418A3/en not_active Withdrawn
- 2003-02-26 US US10/373,011 patent/US7561164B2/en not_active Expired - Fee Related
- 2003-02-27 JP JP2003051178A patent/JP2004038926A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006120158A (ja) * | 2004-10-19 | 2006-05-11 | Microsoft Corp | 3dにおけるハードウェアアクセラレートされたアンチエイリアジング(hardwareacceleratedanti−aliasing)のための方法 |
WO2012147303A1 (ja) * | 2011-04-25 | 2012-11-01 | Hayashi Mitsuo | 全方位画像編集プログラム及び全方位画像編集装置 |
JP5896424B2 (ja) * | 2011-04-25 | 2016-03-30 | 光雄 林 | 全方位画像編集プログラム及び全方位画像編集装置 |
US9692965B2 (en) | 2011-04-25 | 2017-06-27 | Mitsuo Hayashi | Omnidirectional image editing program and omnidirectional image editing apparatus |
JP2016528972A (ja) * | 2013-07-23 | 2016-09-23 | シロナ・デンタル・システムズ・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツング | 3d輪郭データ収集及びう蝕検出のシステム、方法、並びにコンピュータプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP1347418A3 (en) | 2005-11-23 |
EP1347418A2 (en) | 2003-09-24 |
US20030160785A1 (en) | 2003-08-28 |
US7561164B2 (en) | 2009-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004038926A (ja) | テクスチャマップ編集 | |
TWI584223B (zh) | 藉由追蹤物件及/或基元識別符的圖形處理增強之方法及系統,圖形處理單元及非暫時性電腦可讀媒體 | |
Zhang et al. | Visibility culling using hierarchical occlusion maps | |
KR101286318B1 (ko) | 렌더링된 그래픽 엘리먼트들을 위한 성능 메트릭들의 시각적 표현의 디스플레이 | |
EP1064619B1 (en) | Stochastic level of detail in computer animation | |
Schott et al. | A directional occlusion shading model for interactive direct volume rendering | |
US20070035545A1 (en) | Method for hybrid rasterization and raytracing with consistent programmable shading | |
US7528831B2 (en) | Generation of texture maps for use in 3D computer graphics | |
BRPI0300983B1 (pt) | método para proporcionar amostragem de textura controlável e dispositivo de co-processamento | |
JP2012505445A (ja) | 3dオブジェクトの3dモデルをレンダリングするための方法及びシステム | |
Boubekeur et al. | A flexible kernel for adaptive mesh refinement on GPU | |
CN104167015B (zh) | 一种基于表面信号拟合的着色器简化方法、装置及图形渲染方法 | |
US8466919B1 (en) | Re-rendering a portion of an image | |
US20030107572A1 (en) | Method and apparatus for reducing the polygon count of a textured, three dimensional model of an object | |
US6791544B1 (en) | Shadow rendering system and method | |
KR101100650B1 (ko) | 맵데이터를 이용한 간접조명 표현과 다층 변위매핑 시스템 및 그 방법 | |
US11341708B2 (en) | Graphics processing | |
CN113457161A (zh) | 画面展示方法、信息生成方法、装置、设备及存储介质 | |
US20060202990A1 (en) | Computer graphics system and method for rendering a computer graphic image | |
Shen et al. | Interactive visualization of three-dimensional vector fields with flexible appearance control | |
Ivo et al. | Improved silhouette rendering and detection of splat-based models | |
GB2350993A (en) | Generation of mixed semitransparent and opaque objects on a computer display screen. | |
Sommer et al. | Geometry and rendering optimizations for the interactive visualization of crash-worthiness simultations | |
US11908069B2 (en) | Graphics processing | |
Movania et al. | Real-time volumetric lighting for webgl |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20060509 |