(57)【要約】  外観（ｖｉｓｕａｌ  ａｐｐｅａｒａｎｃｅ）は指定された見本（ｅｘｅｍｐｌａｒ）と同様であるが、向きとスケールが異なる非等長的テクスチャを生成する非等長的テクスチャ合成のシステムおよび方法を提供する。こうした変化は、ヤコビアンフィールドを使用してテクスチャ合成技術のアップサンプリング（ｕｐｓａｍｐｌｉｎｇ）と修正のプロセスを変更することによって実現する。変更された修正プロセスには、非ローカル（ｎｏｎ−ｌｏｃａｌ）ピクセルでなくピクセルの直接近傍（ｉｍｍｅｄｉａｔｅ  ｎｅｉｇｈｂｏｒｓ）のみにアクセスするステップが含まれる。このように直接近傍のみを使用するという制約によって、シームレスな非等長的サーフェス（ｓｕｒｆａｃｅ）テクスチャの生成も可能になる。これは、テクスチャアトラスチャート（ａｔｌａｓ  ｃｈａｒｔ）の境界の外部にあるピクセルのセットから別のチャートにジャンプするために使用する無方向（ｉｎｄｉｒｅｃｔｉｏｎ）ポインタを含む無方向マップを使用することによって実現する。本システムおよび方法には、ヤコビアン（Ｊａｃｏｂｉａｎ）フィールドを使用して合成拡大（ｓｙｎｔｈｅｓｉｓ  ｍａｇｎｉｆｉｃａｔｉｏｎ）スキームの拡大のステップを変更し、非等長的に明らかにする（ａｃｃｏｕｎｔ  ｆｏｒ）非等長的合成拡大技術も含まれる。
2009543192.tif 000002
【特許請求の範囲】
【請求項１】
非等長的テクスチャを合成する方法であって、
ヤコビアンフィールドおよび前回の解像度レベルで合成されたピクセル座標イメージを入力するステップ（２００、２０５）と、
前回の解像度レベルで合成された前記ピクセル座標から処理されるピクセルの直接ピクセル近傍にアクセスするステップ（２１５）と、
前記ヤコビアンフィールドを使用して前記直接ピクセル近傍のピクセル座標を歪曲させ、前記非等長的テクスチャの合成に使用する非等長的歪曲合成テクスチャ近傍を形成するステップ（２２０）とを備えることを特徴とする方法。
【請求項２】
前記非等長的歪曲合成近傍を使用して見本テクスチャから候補となる少なくとも１つのピクセルを選択するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記候補となる少なくとも１つのピクセルを選択するステップは、修正技術を使用するステップ（２２５）をさらに備えることを特徴とする請求項２に記載の方法。
【請求項４】
前記修正技術はピクセルあたりの近傍マッチング修正技術（２２５）であることを特徴とする請求項３に記載の方法。
【請求項５】
前記非等長的合成テクスチャはサーフェス上に存在し、前記非等長的合成テクスチャを前記サーフェスに関する前記ヤコビアンフィールドに合わせるステップ（２２５）をさらに備えることを特徴とする請求項１に記載の方法。
【請求項６】
複数のテクスチャアトラスチャートを備えるテクスチャアトラスパラメータ化のパラメータテクスチャドメイン内で前記非等長的合成テクスチャを直接合成するステップと、
前記複数のテクスチャアトラスチャート間でジャンプする機能を提供する無方向ポインタを使用するステップとをさらに備えることを特徴とする請求項５に記載の方法。
【請求項７】
前記チャートの１つの内のチャート境界付近のピクセルのセットを選択するステップと、
前記無方向ポインタを使用して前記チャートの別の１つの内にある他のピクセルをポイントするステップとをさらに備えることを特徴とする請求項６に記載の方法。
【請求項８】
前記ヤコビアンフィールドと合成拡大技術を使用して前記非等長的合成テクスチャを改善し、拡大された高解像度の非等長的合成テクスチャを生成するステップ（２７０）をさらに備えることを特徴とする請求項１に記載の方法。
【請求項９】
レンダリング時にサーフェスシェーダ内で前記合成拡大技術を実行するステップをさらに備えることを特徴とする請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テクスチャ合成に関する。
【背景技術】
【０００２】
テクスチャ合成には、小さなサンプルイメージから大きなテクスチャを自動的に生成するステップが含まれる（テクスチャサンプルまたはテクスチャ見本と呼ばれる）。この見本ベースのテクスチャ合成は、見本を取得し、そうした見本に基づいて追加のコンテンツを生成することによって、見本に含まれるコンテンツよりはるかに大きなコンテンツを作成する。見本ベースのテクスチャ合成を使用すると、コンテンツの領域（ｅｘｐａｎｓｅ）全体を明示的に格納する必要がなくなる。代わりに、はるかに小さい見本から「その場で」コンテンツが生成される。
【０００３】
従来、見本ベースのテクスチャ合成には、合成された各ピクセルの近傍（ｎｅｉｇｈｂｏｒｈｏｏｄ）を見本の近傍と比較する修正のプロセスが含まれる。次に、合成されたピクセルが変更され、見本のコンテンツと互換可能な合成された近傍が再作成される。ピクセルごとに、ベストマッチング（ｂｅｓｔ−ｍａｔｃｈｉｎｇ）近傍が検出され、さらに現在のピクセルがベストマッチングピクセルに置き換えられる。ベストマッチング近傍は、小さなピクセル格子内のピクセルの色を比較することによって決定される。たとえば、ピクセルごとに、ピクセルの５×５の近傍が調べられ、近傍の誤差は５×５の近傍に含まれる個々のピクセルの赤、緑、および青（ＲＧＢ：ｒｅｄ，ｇｒｅｅｎ，ｂｌｕｅ）カラーベクトルの誤差の合計である。
【０００４】
テクスチャ合成は、等長的（ｉｓｏｍｅｔｒｉｃ）でも非等長的（「等長的」ではないという意味）でもよい。等長的テクスチャ合成では、同じパターン、同じスケール、および同じ向きのテクスチャが生成される。一方、非等長的テクスチャ合成では、生成されるテクスチャ内でフィーチャ（ｆｅａｔｕｒｅ）の向きの変化とローカルスケーリングが可能である。
【０００５】
修正プロセスの実行中に、現在合成されているテクスチャ内の近傍が収集され、見本の近傍と比較される。非等長的合成を実行するために、現在の技術では収集された近傍を変形する。ヤコビアン逆行列（ｉｎｖｅｒｓｅ  Ｊａｃｏｂｉａｎ）は、色をフェッチする前に近傍の座標に適用される変換である。ヤコビアン逆行列は、アフィン変換を使用してピクセル近傍を変換する２×２の行列である。具体的に、ヤコビアンフィールドが指定された場合に、ピクセル近傍はヤコビアン逆行列を使用して変換される。ヤコビアン逆行列の補正を実行するために、ピクセル近傍の向きとスケールが変更される。つまり、近傍の元の点で色を取得せずに、新しい向きとスケーリングを使用して変換された新しい近傍の点のセットで色が取得される。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
現在の非等長的テクスチャ合成技術にはいくつかの欠点がある。第１の欠点は、メモリコヒーレンシ（ｃｏｈｅｒｅｎｃｙ）の欠如である。具体的には、一部の状況では変換された近傍が大きくなり、拡大される。これは、ピクセルの直接近傍（ｉｍｍｅｄｉａｔｅ  ｎｅｉｇｈｂｏｒ）でなく遠く離れたピクセルにアクセスする可能性があることを意味する。このことによって、よりランダムなメモリアクセスが発生し、メモリアクセスにおいて効率の低下およびコヒーレンシの欠如が発生する可能性がある。
【０００７】
第２の欠点は、修正プロセス実行中にアクセスされる非ローカルピクセルを再サンプリングする必要があることである。具体的には、変換後にピクセルの値を補間するプロセスでピクセルを再サンプリングする必要がある。この作業は、変換されたピクセルが広い領域に拡散されるために必要である。しかし、この再サンプリングのプロセスは非効率的であり、合成されたテクスチャで視覚的なぼやけ（ｖｉｓｉｂｌｅ  ｂｌｕｒｒｉｎｇ）が発生する可能性がある。
【０００８】
第３の欠点は、テクスチャコヒーレンシの欠如である。サンプル同士の間隔が広く空いているため、修正プロセスは隣接するピクセルの値には依存しなくなる。このことによって、テクスチャコヒーレンシが大きく低下する可能性がある。こうしたインコヒーレンシ（ｉｎｃｏｈｅｒｅｎｃｙ）によって、修正プロセスの機能と効果が低下し、場合によってはプロセスが収束しない可能性もある。
【０００９】
別の現在の非等長的テクスチャ合成技術では、回転とスケールが異なる複数のバージョンの見本を表示し、こうした見本のバージョンの中から現在のピクセルで望ましいヤコビアンに基づいて選択する。しかし、こうしたアプローチでは、多くのバージョンの見本を格納し、分析するために、多くのメモリを使用する必要がある。さらに、テクスチャコヒーレンシの実現も困難である。
【課題を解決するための手段】
【００１０】
以下の解決手段では、後述の発明を実施するための最良の形態でより詳細に説明するいくつかの概念を簡略化した形で紹介する。以下に示す解決手段は、請求された主題の重要な機能または必須の機能を示すものではない。また、請求された主題の範囲を限定するために使用するものでもない。
【００１１】
本明細書で開示される非等長的テクスチャ合成のシステムおよび方法には、高い効率と最小のオーバーヘッドによる高品質の非等長的テクスチャの生成を可能にするいくつかの技術が含まれる。一般に、非等長的テクスチャ合成のシステムおよび方法は、外観は指定されたサンプルイメージまたは見本と同様であるが、向きとスケールが異なる新しいテクスチャを合成する。こうした向きとスケールは、ヤコビアンフィールドによって指定される。ヤコビアンは、特定の点の線形変換を表す２×２の行列である。本非等長的テクスチャ合成のシステムおよび方法を使用すると、平面内およびサーフェス（ｓｕｒｆａｃｅ）上に合成されたテクスチャを生成することができる。
【００１２】
非等長的テクスチャ合成のシステムおよび方法には、ピクセルの直接近傍のみにアクセスする合成スキームを使用するステップが含まれる。直接近傍のみを使用することによって、メモリとテクスチャの両方のコヒーレンシが向上する。さらに、修正プロセス実行中にアクセスされる非ローカルピクセルを再サンプリングする必要がなくなる。基盤となる合成プロセスは、見本のピクセル座標（色ではなく）に依存することが想定されている。したがって、合成されたテクスチャに直接色が含まれるのではなく、座標が含まれており、この座標のピクセルの色を見本からフェッチする必要がある。多くのテクスチャ合成スキームでこのアプローチが使用されている。
【００１３】
この設定では、指定されたピクセルの直接近傍にはそれぞれ見本内の座標がある。個々の近傍は、現在のピクセルを置き換える候補の予測に使用される。近傍にアクセスする前に非等長的変換を適用する代わりに、非等長的テクスチャ合成のシステムおよび方法では直接近傍にアクセスし、直接近傍から取得した見本座標に後で変換を適用することによって、現在のピクセルを置き換える適切な候補を予測する。このように、直接近傍のみにアクセスするが、変換は修正プロセス実行中に同等に適用される。
【００１４】
目標は、ピクセルｐが指定された場合に、ｐの周辺にテクスチャの近傍が構築され、ベストマッチング修正プロセスを使用してこれを見本のそれ以外の近傍と比較することである。直接近傍は、方向コンポーネント（ｄｉｒｅｃｔｉｏｎ  ｃｏｍｐｏｎｅｎｔ）を使用することによって取得される。直接近傍の合成座標が取得されると、オフセットが適用され、ピクセル自体の合成座標であると本方法で予測する座標が取得される。
【００１５】
本合成スキームで直接近傍のみを使用するという事実によって、さらにシームレスな非等長的サーフェステクスチャの生成も可能になる。具体的には、三角形メッシュ（ｔｒｉａｎｇｌｅ  ｍｅｓｈ）として説明されるサーフェスおよびこのサーフェスのテクスチャドメインに関するパラメータ化が指定された場合は、パラメータ化によってメッシュサーフェスはチャートに区分され、各チャートはテクスチャドメインの領域にマップされる。目標は、テクスチャドメイン内のテクスチャを合成し、結果として得られるテクスチャサーフェスがユーザーの指定した外観を備えるようにすることである。もっと正確に言えば、サーフェス上のテクスチャを、サーフェスに関してユーザーが指定したヤコビアンフィールドに合わせる必要がある（回転とスケールの両方の点で）。難題の一部は、メッシュのパラメータ化によってサーフェスが互いに素な（ｄｉｓｊｏｉｎｔ）チャートに分解されること、およびサーフェステクスチャはこうしたチャートの境界に関してシームレスであるのが望ましいことである。こうしたシームレスなテクスチャを構成するためには、チャート境界に近いピクセルの合成近傍にそれ以外のチャートのサンプルを含める必要がある。こうした要件に対応するために、非等長的テクスチャ合成の方法では、無方向ポインタを使用することによって、１つのアトラスチャート境界から別のテクスチャアトラスチャートにジャンプする機能を提供する
【００１６】
各チャートの境界の外部にあるピクセルの小規模なセットについて、無方向ポインタを使用して別のチャートの内部にあるそれ以外のピクセルをポイントする。各チャートの周辺には小さな追加のスペース（すなわちガター（ｇｕｔｔｅｒ））があり、こうした無方向ポインタに従って色を取得できる。こうしたシームレスなサーフェステクスチャを構成する機能は、非等長的修正スキームが固定された範囲の近傍にアクセスする機能を直接利用する。
【００１７】
非等長的テクスチャ合成のシステムおよび方法には、さらに非等長的合成拡大技術も含まれる。合成拡大には、合成座標を使用して同じ見本の高解像度バージョンを取得するステップが含まれる。合成拡大は、サンプリングの不均一性（ｎｏｎｕｎｉｆｏｒｍｉｔｉｅｓ）たとえばパラメータ化のゆがみ（ｄｉｓｔｏｒｔｉｏｎ））を隠すために使用できる。非等長的テクスチャ合成の方法は、ヤコビアンフィールドを含むように合成拡大スキームを変更する。こうしたヤコビアンは、合成拡大スキームの拡大のステップを変更し、非等長的に明らかにするために使用する。
【００１８】
代替的実施形態が実現可能であり、特定の実施形態によっては、本明細書で説明するステップおよび要素を変更、追加、または削除できることに留意されたい。こうした代替的実施形態では、本発明の範囲を逸脱することなく、代替的ステップおよび代替的要素を使用でき、構造上の変更を適用することができる。
【００１９】
ここで図面を参照すると、すべての図面で類似の参照番号は対応する要素を表している。
【発明を実施するための最良の形態】
【００２０】
以下に示す本非等長的テクスチャ合成の方法およびシステムの説明では、本明細書の要素となる添付の図面を参照する。こうした図面には、本非等長的テクスチャ合成の方法およびシステムを実施できる特定の実施例が説明のために示されている。請求された主題の範囲を逸脱することなく、それ以外の実施形態を利用できること、および構造上の変更を適用できることを理解されたい。
【００２１】
Ｉ．システムの概要
本非等長的テクスチャ合成のシステムおよび方法は、２次元（２−Ｄ）の平面上またはサーフェス上に合成されたテクスチャを生成するために使用できる。本非等長的テクスチャ合成システムおよび方法は、一般に、外観は指定されたサンプルイメージまたは見本と同様であるが、ヤコビアンフィールドによって指定された異なる向きとスケールによる新しいテクスチャを作成する。本明細書で説明する非等長的テクスチャ合成のシステムおよび方法を使用すると、平面またはサーフェスの両方において、シンプルで、効率的で、かつ高品質の２−Ｄの非等長的テクスチャ合成が可能になる。
【００２２】
図１は、本明細書で開示された非等長的テクスチャ合成システムの例示的な実装を示すブロック図である。図１は、本非等長的テクスチャ合成システムを実装でき、使用できるいくつかの手法の１つを示しているにすぎないことに留意されたい。本非等長的テクスチャ合成のシステムは、これ以外のタイプの処理システム（たとえば、中央処理装置（ＣＰＵ）またはマルチコア処理システム）に実装することもできる。
【００２３】
図１を参照すると、本非等長的テクスチャ合成システム１００はコンピューティングデバイス１１０（点線で示す）上で動作するように設計されている。本非等長的テクスチャ合成システム１００は、さまざまなタイプの汎用または専用のコンピューティングシステム環境または構成（パーソナルコンピュータ、サーバーコンピュータ、ハンドヘルド、ラップトップ、またはモバイルコンピュータを含む）、あるいは通信デバイス（たとえば携帯電話やＰＤＡ）、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家庭用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、前述の任意のシステムまたはデバイスを含む分散コンピューティング環境などで動作できることに留意されたい。図１に示すコンピューティングデバイス１１０は、前述のいずれかおよびそれ以外のタイプのコンピューティングシステム環境または構成の任意の１つを表すように意図されているにすぎない。
【００２４】
図１に示すように、コンピューティングデバイス１１０は、中央処理装置（ＣＰＵ）１２０、およびＣＰＵメモリ１３０を備えている。ＣＰＵ１２０は、高速バス（ａｃｃｅｌｅｒａｔｅｄ  ｂｕｓ）１５０を経由してビデオインターフェイス１４０と通信している。例として、このバス１５０は特に３−Ｄグラフィックスのスループットの要求に合わせて設計されたアクセラレーテッドグラフィックスポート（ＡＧＰ：Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）またはＰＣＩ  Ｅｘｐｒｅｓｓでもよいが、これらに限定はされない。
【００２５】
ビデオインターフェイス１４０は、グラフィックス処理装置（ＧＰＵ）１６０およびＧＰＵメモリ１７０を備えている。ＧＰＵ  １６０は、リアルタイムの３−Ｄグラフィックス表示を高速化するように設計されている。ＧＰＵ  １６０は、バス１５０を経由してＣＰＵ１２０にデータを転送することができる。非等長的テクスチャ合成システム１００は、ＧＰＵ  １６０およびＧＰＵメモリ１７０とも通信している。非等長的テクスチャ合成システム１００は、図１に破線で示されている。図１に示す実装では、システム１００にはＧＰＵ  １６０上に常駐する非等長的テクスチャ合成システムコード１８０、およびＧＰＵメモリ１７０上に常駐する非等長的テクスチャ合成データ１９０が含まれている。
【００２６】
ＩＩ．動作の概要
図２は、図１に示す本非等長的テクスチャ合成システム１００の一般的な動作を示す流れ図である。一般に、非等長的テクスチャ合成方法では、ピクセルの直接近傍とヤコビアンフィールドを使用して、見本イメージから非等長的合成テクスチャを生成する。非等長的テクスチャ合成方法は、平面上およびサーフェス上の両方で２−Ｄテクスチャを生成するために使用できる。
【００２７】
より具体的には、本非等長的テクスチャ合成方法は、初期設定（ｉｎｉｔｉａｌｉｚａｔｉｏｎ）イメージを入力するステップ（ボックス２００）で開始される。こうした初期設定イメージには、合成座標が含まれる。これは、前回の解像度レベル、すなわち多重解像度のアプローチによる最も粗いレベルの結果であり、通常はゼロのみが含まれている。初期設定イメージは、前回の解像度レベル、すなわち多重解像度のアプローチの最も粗いレベルにおけるイメージである。
【００２８】
さらにヤコビアンフィールドも入力される（ボックス２０５）。ヤコビアンフィールドは、イメージの向きとスケールを変更するために使用できる。ヤコビアン（通常は記号Ｊで表される）は、２つのベクトルを含む２×２の行列である。こうした２つのベクトルは、入力されたテクスチャのベクトルをイメージにどうマップすべきかを示している。ヤコビアンフィールドには、元のドメイン（この場合はテクスチャ）をイメージ上に作成するときにどう定義すべきかに関する導関数（ｄｅｒｉｖａｔｉｖｅ）情報が記録される。
【００２９】
前回の解像度レベルによるイメージのピクセル座標をアップサンプリングするステップによって、繰り返しのプロセスが開始される（ボックス２１０）。最初の繰り返しでは、アップサンプリングされるイメージは初期設定イメージである。後続の繰り返しでは、アップサンプリングされるイメージは前回の繰り返しの出力である。アップサンプリングによって、前回の解像度レベルより精細な解像度レベルである現在の解像度レベルが生成される。換言すると、多重解像度のアプローチで使用する粗いレベルから精細なレベルへのピラミッドで、一連の繰り返しによって解像度レベルは漸進的に精細になる。
【００３０】
ここで、処理の対象となるピクセルが選択され、処理の対象となるピクセルの直接近傍にアクセスする（ボックス２１５）。次に、ピクセルの直接近傍に格納された合成ピクセル座標がヤコビアンフィールドを使用して歪曲（ｗａｒｐ）される（ボックス２２０）。歪曲は、ヤコビアンフィールドによって指定されるように向きとスケールが変更されることを意味する。
【００３１】
歪曲された直接近傍の座標を使用して現在のピクセルの候補のセットが予測されると、新しい近傍が構築され、標準のテクスチャ合成の修正プロセスが適用される（ボックス２２５）。こうした修正プロセスに見本が入力される（ボックス２３０）。こうした修正のプロセスには、候補の近傍を現在のピクセルに関して計算された近傍と比較するステップが含まれる。ただし、こうした近傍のすべては、ゆがめられていない見本空間内にあることに留意されたい。
【００３２】
各繰り返しの出力は、合成されたイメージであり、そのピクセルには現在の解像度レベルにおける見本のピクセル座標が含まれる（ボックス２４０）。ここで、現在の解像度レベルが最も精細な（したがって最後の）解像度レベルであるかどうかの判断が行われる（ボックス２４５）。現在の解像度レベルが最も精細な解像度レベルでない場合は、もう一度繰り返しが実行される。この場合は、現在の解像度レベルが前回の解像度レベルになる。つまり、現在の解像度レベルで合成されたピクセル座標は、ここで前回の解像度レベルで合成されたピクセル座標になる（ボックス２５０）。ここで、前述のように最も精細な解像度レベルになるまで繰り返しが実行される（ボックス２５５）。
【００３３】
現在の解像度レベルが最も精細な解像度レベルである場合は、合成されたピクセル座標が取得される（ボックス２６０）。このように合成されたピクセル座標は、それ以外のアプリケーションで処理することができ、または対応する非等長的合成テクスチャを生成することもできる。こうした非等長的合成テクスチャを生成するために、まず、見本をサンプリングすることによって、合成されたピクセル座標が合成された色に変換される（ボックス２６５）。最終的に、こうした変換のプロセスから、結果として非等長的合成テクスチャが出力される（ボックス２７０）。
【００３４】
ＩＩＩ．動作の詳細
ここで、非等長的テクスチャ合成方法の詳細について説明する。図３は、図２に示す非等長的テクスチャ合成方法の特殊なケースについて、漸進的に解像度を高めた場合のインデックスマップが変遷する経過の例を示している。インデックスマップは合成テクスチャ座標のイメージであることに留意されたい。特に、図３はヤコビアンがどこでも２×２の恒等行列（ｉｄｅｎｔｉｔｙ  ２×２  ｍａｔｒｉｘ）に等しいという非等長的テクスチャ合成の特殊なケースである。インデックスマップは、そのピクセル値に見本イメージドメインを参照する座標が含まれるイメージである。このような座標は、色として視覚化できる。たとえば、図３を参照すると、座標（０，０）は黒３０１として、座標（１，０）は赤３０２として、座標（０，１）は緑３０３として、座標（１，１）は黄色３０４として視覚化され、間はすべて色が補間される。インデックスマップは、色を使用して見本内のピクセルカラーの位置を示すピクセル位置のカラーマップである。さらに、図３は６つの解像度レベルを備える例示的な実装の解像度レベルを示している。長い矢印で示すように、解像度レベルが次第に高くなるにつれて次第に解像度が精細になっている。
【００３５】
図３に示すように、非等長的テクスチャ合成方法は、解像度レベルが０でのゼロを含むイメージ（真っ黒なイメージ）３０５を使用するステップで開始される。図２に示す繰り返しのプロセスが実行され、結果として得られる第１のインデックスマップ３１０は解像度レベル１である。インデックスマップ間の短い矢印のそれぞれは、図２に示す１回の繰り返しプロセスを示すことに留意されたい。たとえば、ゼロを含むイメージ３０５と第１のインデックスマップ３１０の間にある短い矢印３１５は、本非等長的テクスチャ合成方法の１回の繰り返しプロセスが実行されたことを示している。
【００３６】
漸進的に精細になる解像度レベルでこうした繰り返しのプロセスを繰り返すことによって、解像度レベルが高くなり、新しいインデックスマップが生成される。具体的には、レベル１で繰り返しが実行されてレベル２の第２のインデックスマップ３２０が生成され、レベル２で繰り返しが実行されてレベル３の第３のインデックスマップ３２５が生成され、さらにレベル３で繰り返しが実行されてレベル４の第４のインデックスマップ３３０が生成される。レベル５の第５のインデックスマップ３３５とレベル６の第６のインデックスマップ３４０も、同様にして生成される。
【００３７】
図４は、図３に示すインデックスマップに対応するテクスチャイメージ（すなわち合成されたカラーイメージ）を示している。テクスチャイメージの色は、合成されたインデックスマップで指定される座標にある見本の色にアクセスすることによって取得される。第１のテクスチャイメージ４００は、第１のインデックスマップ３１０に対応する。同様に、第２のテクスチャイメージ４０５は第２のインデックスマップ３２０に対応し、第３のテクスチャイメージ４１０は第３のインデックスマップ３２５に対応し、第４のテクスチャイメージ４１５は第４のインデックスマップ３３０に対応し、第５のテクスチャイメージ４２０は第５のインデックスマップ３３５に対応し、さらに第６のテクスチャイメージ４２５（すなわち最終的な合成テクスチャ）は第６のインデックスマップ３４０に対応する。
【００３８】
図５は、図２、３、および４に示す本非等長的テクスチャ合成プロセスの例を示すブロック図であり、多重解像度のアプローチの前回の解像度レベル（レベルｌ−１）から現在の解像度レベル（レベルｌ）に移行している。図５は、多重解像度のアプローチの各レベルで（および繰り返しごとに）実行される２つの主要なプロセスを示している。たとえば、図３を参照すると、図５は第１のインデックスマップ３１０から第２のインデックスマップ３２０に移行するときにどのような処理が実行されるかを示している。
【００３９】
第１のインデックスマップ５００は数学的に項Ｓl-1で示されている。ただし、Ｓl-1は解像度レベルｌ−１（すなわち前回の解像度レベル）での合成座標出力である。見本５１０は数学的に項Ｅ［Ｓl-1］で示されている。ただし、Ｅ［Ｓl-1］は見本５１０を解像度レベルｌ−１での第１のインデックスマップ５００の関数として示している。合成出力はインデックスであり、項Ｅ［Ｓl-1］は座標項Ｓが指定された場合に見本Ｅ内の色の参照を示している。このように、合成プロセスによってインデックスマップが生成され、これは色Ｅ［Ｓl-1］に対応する。換言すると、Ｓは合成インデックスマップであり、Ｅ［Ｓl-1］はこうしたインデックスに対応する色である。
【００４０】
図５に示すように、解像度レベルごとに、第１のインデックスマップ５００で表されるピクセル座標がアップサンプリングされ、アップサンプリングされたピクセル座標を表す第２のインデックスマップ５２０が生成される。こうしたアップサンプリングによって、解像度レベルはレベルｌ−１（前回の解像度レベル）からレベルｌ（現在の解像度レベル）に変化する。次に、アップサンプリングされた座標が修正されて解像度レベルｌの修正ピクセル座標を表す第３のインデックスマップ５３０が生成される。
【００４１】
インデックスマップに対応するテクスチャイメージも、図５に示されている。具体的には、第１のテクスチャマップ５４０は第２のインデックスマップ５２０に対応し、第２のテクスチャマップ５５０は第３のインデックスマップ５３０に対応する。インデックスマップは数学的に項Ｓlで表されており、各テクスチャイメージは対応するインデックスマップの関数、すなわち項Ｅ［Ｓl-1］として表されている。
【００４２】
非等長的合成の修正プロセス
ここでは、本非等長的テクスチャ合成方法についてより詳細に説明する。前述のように、ヤコビアンフィールドを使用すると、ヤコビアンフィールドＪに従ってテクスチャのローカルな回転とスケーリングが可能になる。ヤコビアンフィールドは、本非等長的テクスチャ合成方法のアップサンプリングと修正の両方のプロセスを変更するために使用される。
【００４３】
それ以外の技術で実行されるように様々にゆがめられた複数のバージョンによる見本テクスチャを定義する代わりに、本非等長的テクスチャ合成方法では、近傍をマッチングする前に、合成された近傍Ｎsに非等長的歪曲を適用する。換言すると、合成された近傍がヤコビアンフィールドに従って回転され、スケーリングされる。
【００４４】
さらに、以下で説明するように、ピクセルの直接近傍のみが使用されることによって、テクスチャとメモリのコヒーレンシが向上する。基盤となる合成プロセスは、見本の色でなくピクセル座標に基づいている。つまり、合成されたテクスチャに直接色が含まれるのではなく、座標が含まれており、この座標のピクセルの色を見本からフェッチする必要がある。指定されたピクセルの直接近傍は、それぞれ見本内に座標が含まれる。個々の近傍は、現在のピクセルを置き換える候補の予測に使用される。近傍にアクセスする前に非等長的変換を適用する代わりに、非等長的テクスチャ合成のシステムおよび方法では直接近傍にアクセスし、後で変換を適用することによって、現在のピクセルを置き換える適切な候補を予測する。このように、直接近傍のみにアクセスするが、変換は修正プロセス実行中に同等に適用される。
【００４５】
目標は、ピクセルｐが指定された場合に、ｐの周辺にテクスチャの近傍が構築され、ベストマッチング修正プロセスを使用してこれを見本のそれ以外の近傍と比較することである。直接近傍は、方向コンポーネントを使用することによって取得される。直接近傍の合成座標が取得されると、オフセットが適用され、ピクセル自体の合成座標であると本方法で予測する座標が取得される。
【００４６】
非等長的テクスチャ合成では、近傍に関してすべての方向でループ処理を実行し、こうした位置の合成座標を取得し、さらに見本の色を参照するだけで、こうした近傍が構築される。このことによって、ピクセルｐの近傍が構成される。現在の非等長的アプローチでは、ヤコビアン逆行列を考慮することによって近傍のアクセスを変更する。この方法では、回転とスケーリングによってアクセスが引き延ばされるため、前述のいくつかの欠点がある。
【００４７】
本明細書で開示する非等長的テクスチャ合成方法は、ピクセルｐの直接近傍にのみアクセスする。ただし、直接近傍は方向コンポーネントを使用して取得される。したがって、本方法ではｐの８つの直接近傍の１つ（ただし、選択した方向で最も近いもの）に移動する。本方法では、遠く離れた非ローカルな位置（ピクセルｐに対して非ローカル）へのジャンプは許可されていない。直接近傍で合成座標が取得されると、オフセットが適用され、合成座標がｐ自体のものであると本方法で予測するものが取得される。このオフセットは、非等長的ゆがみを説明するためにヤコビアンによって変換される。
【００４８】
数学的には、非等長的テクスチャ合成方法では歪曲された合成近傍が次のように定義される。
Ｅ［Ｓ［ｐ＋φ（ｈａｔ）］−Ｊ（ｐ）φ（ｈａｔ）＋Δ］      （１）
ただし、
φ（ｈａｔ）＝φ／ｎｏｒｍ（φ）      （２）
および、φ＝Ｊ-1（ｐ）Δ
である。
【００４９】
直接近傍は、見本空間の近傍オフセットによって指定される。これは、式（１）ではΔである。さらに、φは合成空間のヤコビアン逆行列で変換された近傍のオフセットである。非等長的テクスチャ合成方法では、非ローカルピクセルを使用する代わりに、ベクトルの方向に注目し、ベクトルを正規化距離１に正規化する。ここで、本方法は３×３近傍内で８つの直接近傍のどれが本方法で調べようとする方向であるかを決定する。式（１）の項Ｓ［ｐ＋φ（ｈａｔ）］はこの近傍であり、項φ（ｈａｔ）はヤコビアンによって変換された近傍の位置の方向コンポーネントである。これで、アクセスする８つの近傍のどれかの位置が得られる。
【００５０】
次に、合成されたテクスチャはサンプリングすることが望ましい方向の直接近傍でアクセスされる。式（１）の次の項はＪ（ｐ）φ（ｈａｔ）である。この項は、特定のピクセルでのヤコビアンにヤコビアンで変換された近傍の位置の方向コンポーネントを乗じたものである。ｐの直接近傍から取得した合成テクスチャ座標からこの項を減じると、ｐ自体の合成座標の予測が得られる。最後に、式（１）で見本空間の近傍オフセットΔを加えることによって、ｐの見本空間の近傍オフセットΔでの合成座標が予測される。
【００５１】
直接近傍の合成座標Ｓ［ｐ＋φ（ｈａｔ）］がアクセスされる。こうした座標からＪ（ｐ）φ（ｈａｔ）を減じることによって、点ｐでの合成座標を予測する。さらに、こうした直接近傍を使用してｐでの合成座標が予測されると、この合成座標に見本空間のオフセット、デルタ（Δ）を加えることによって修正近傍座標が予測される。
【００５２】
デルタ（Δ）は近傍オフセットを表している。いくつかの実施形態では近傍は５×５の近傍であり、一方で他の実施形態では近傍は３×３の近傍であり、場合によっては点ｐの周辺の直交する４つの点である。例として、３×３の近傍の場合は、Δ＝（−１，−１），（−１，０），（−１，１），（０，−１），（０，０），（０，１），（１，−１），（１，０），（１，１）である。別の例として、直交する４つの点で構成される近傍は、Δ＝（１，−１）（−１，１）（−１，−１）（１，１）で構成される。
【００５３】
本非等長的テクスチャ合成方法では、ｐ＋Δの座標が予測される。４ピクセルの近傍は、Δ＝（１，−１）（−１，１）（−１，−１）（１，１）で構成される。重要な概念は、見本空間でｐの候補が取得されると、任意のオフセット、デルタ（Δ）を適用することによって、見本空間の別の位置での候補が得られることである。このようにして、見本空間内の４つの候補、すなわちデルタ（Δ）ごとに１つの候補が得られる。
【００５４】
さらに、デルタ（Δ）ごとに特定の数のピクセルの値が平均され、ｐ＋Δにおける外観のより優れた予測が得られる。これで、デルタ（Δ）のごとの特定数のピクセルの貢献（ｃｏｎｔｒｉｂｕｔｉｏｎ）を平均することによって、近傍の品質が向上する。いくつかの実施形態では、ピクセルの数は３に等しい。他の実施形態では、ピクセルの数は３に等しくても、３より多くても少なくてもよい。
【００５５】
非等長的合成のアップサンプリングプロセス
本非等長的テクスチャ合成方法のアップサンプリングプロセスも、ヤコビアンフィールドを使用して変更される。これで、粗い合成から精細な合成へと移行する間に、非等長的に説明するように個々のアップサンプリングパスを変更することによって、テクスチャコヒーレンシが維持される。個々の子ピクセルは親の合成座標を継承しており、ヤコビアンによるオフセットはヤコビアンと子の相対的な位置を乗じた値である。この概念は数学的に次の式で表される。
Ｓl［ｐ］：＝Ｓl-1［ｐ−Δ］＋Ｊ（ｐ）Δ，Δ＝（±１／２  ±１／２）T    （３）
【００５６】
式（３）は、ｐの合成Ｓl（すなわち子の合成座標）は、親に関する子の相対的な位置（Δ）をヤコビアンで変換した値を親の合成座標に加えたものに等しいことを示している（ただし、Ｓl-1は親を表す）。２ＤベクトルΔの各座標は＋１／２または−１／２であり、これは親ごとに２つの子を持つようなピラミッド構造があることを意味する。このように、個々の子の親に対する相対的な位置は、各座標に関して＋１／２または−１／２である。
【００５７】
図６は、本明細書で開示された非等長的テクスチャ合成の第１の結果の例を示している。具体的には、非等長的合成テクスチャ６００は、非等長的テクスチャ合成プロセスと見本６１０を使用して生成される。不均一な（一定でない）ヤコビアンフィールドが非等長的合成テクスチャ６００全体に渡って指定されている。これは、非等長的合成テクスチャ６００の中心で卵が大きくなっていく様子、また端で小さくなっていく様子に注目することによって理解できる。
【００５８】
図７は、本明細書で開示された非等長的テクスチャ合成プロセスの第２の結果の例を示している。非等長的合成テクスチャ７００は、非等長的テクスチャ合成プロセスと見本７１０を使用して生成される。この場合も、一定でないヤコビアンフィールドが合成テクスチャ７００全体に渡って指定されている。これは、見本７１０内でシマウマの縞が真っ直ぐで垂直に近い様子、また、非等長的合成テクスチャ７００内で変形され、回転されている様子に注目することによって理解できる。
【００５９】
サーフェステクスチャの合成
非等長的テクスチャ合成の１つの重要なアプリケーションは、サーフェステクスチャの生成である。ここで、非等長的テクスチャ合成方法に関するこうしたアプリケーションに固有のさまざまな改善や機能強化に関連付けながら、こうしたアプリケーションについて説明する。
【００６０】
ヤコビアンフィールドは、合成テクスチャをどう変形するかを指定する。サーフェスのケースでは、テクスチャがサーフェス上に表示される場合に、適正に見えるようにテクスチャを変形することが望まれる。図８は、サーフェステクスチャアプリケーションに使用するヤコビアンフィールドの導関数を示している。一般に、サーフェスはパラメータ化によって説明される。サーフェスＭはパラメータドメイン（ｐａｒａｍｅｔｒｉｃ  ｄｏｍａｉｎ）Ｄでパラメータ化され、２−Ｄにどう平面化すべきかを示す座標がサーフェス上にあることを意味する。これはテクスチャマッピングのプロセスであり、サーフェス上のすべての三角形について、イメージの一部がテクスチャドメインから取得される。サーフェス上のすべての点について、パラメータ化のヤコビアンフィールドを決定できる。これは、パラメータドメインがサーフェスにどうマップされるかを示している。サーフェスジオメトリは複雑になる可能性があるので、サーフェスは９１０に示すように複数のチャートにパラメータ化されるのが一般的である。換言すると、サーフェスは複数のチャートに分割され、こうしたチャートのそれぞれはテクスチャドメインに個々にマップされる。
【００６１】
図８からわかるように、必要となるもう１つの入力はテクスチャの向きである。この入力は、ユーザーが指定することも自動的に実行することもできる。ユーザーが指定する場合は、ユーザーはユーザーインターフェイスを使用してサーフェス上に向きを描くように要求される。図８に示すように、これは結局のところ、サーフェス上の各点でベクトルｔ（接線ベクトル（ｔａｎｇｅｎｔ  ｖｅｃｔｏｒ））とｂ（法線ベクトル（ｂｉｎｏｒｍａｌ  ｖｅｃｔｏｒ））を指定することになる。さまざまなタイプのユーザーインターフェイスを使用してこのタスクを実行できる。
【００６２】
図８に示す項ｂ（チルデ）８００とｔ（チルデ）８１０は、ベクトルｔとｂのパラメータ化による「プレイメージ（ｐｒｅ−ｉｍａｇｅｓ）」と呼ばれる。入力はｔとｂであり（ユーザー指定の場合も自動の場合も）、ｂ（チルデ）８００とｔ（チルデ）８１０は、こうしたベクトルｔとｂのパラメータドメインへのマップを指定するプレイメージである。サーフェステクスチャ合成時に使用する最後のヤコビアンは、ｂ（チルデ）８００とｔ（チルデ）８１０を見本Ｅの標準の軸
【００６３】
【数１】
2009543192.tif 000003
【００６４】
８２０と
【００６５】
【数２】
2009543192.tif 000004
【００６６】
８３０にマップするヤコビアンである。このように、サーフェスが指定された場合に、各点の２つベクトルｔとｂはユーザーインターフェイスを使用して、または自動的に指定される。次に、ｔとｂを使用して合成イメージのヤコビアンフィールドが計算される。これは、前述の非等長的テクスチャ合成方法の入力として使用される。
【００６７】
数学的に、目標はサーフェスベクトルｔとｂが見本の標準の軸
【００６８】
【数３】
2009543192.tif 000005
【００６９】
８２０と
【００７０】
【数４】
2009543192.tif 000006
【００７１】
８３０を使用してローカルに識別されるパラメータドメイン内で非等長的テクスチャ合成を行うことである。もう一度図８を参照すると、（ｔ  ｂ）＝ＪfＪ-1Ｉが示されている。ただし、Ｊfはサーフェスパラメータ化ｆ：Ｄ→Ｍの３×２のヤコビアンであり、Ｊは合成マップＳ：Ｄ→Ｅの望ましい２×２のヤコビアンである。したがって、Ｊは次の式で検出される。
Ｊ＝（ｔ  ｂ）+Ｊf＝（（ｔ  ｂ）T（ｔ  ｂ））-1（ｔ  ｂ）TＪf    （４）
ただし、“＋”は擬似逆行列（ｍａｔｒｉｘ  ｐｓｅｕｄｏｉｎｖｅｒｓｅ）を表す。（ｔ  ｂ）が直交する場合は（ｔ  ｂ）+＝（ｔ  ｂ）Tである。パラメータ化は区分線形（ｐｉｅｃｅｗｉｓｅ  ｌｉｎｅａｒ）であるため、Ｊfは個々の三角形内で区分的に一定である。これに対して、接空間（ｔ  ｂ）はピクセルごとに変化する。
【００７２】
図９は、本非等長的テクスチャ合成方法を使用してサーフェステクスチャ合成を実行した結果の例を示している。具体的には、見本９００は本非等長的テクスチャ合成への入力として使用され、非等長的合成テクスチャ９１０が生成される。前述のサーフェステクスチャ合成プロセスと後述の無方向マップを使用して非等長的サーフェステクスチャ９２０が生成される。
【００７３】
無方向マップ
現在の技術では、通常は不規則メッシュの頂点で色を合成することによって、サーフェス上のテクスチャを合成する。これに対して、本非等長的テクスチャ合成方法では、テクスチャアトラスパラメータ化のパラメータテクスチャドメイン内で直接テクスチャを合成する。サーフェステクスチャのパラメータ化されたチャートの不連続なアトラス上でシームレスなテクスチャを構成するために、チャート境界に近いピクセルの合成近傍には、それ以外のチャートのサンプルを含める必要がある。このように、非等長的テクスチャ合成の方法では、無方向ポインタを使用することによって、１つのアトラスチャート境界から別のテクスチャアトラスチャートにジャンプする機能が提供される。さらに、本方法には、チャートが連続的であることを確認する追加のステップが含まれる。これは、無方向マップを使用して実現される。
【００７４】
各チャートの境界の外部にあるピクセルの小規模なセットについて、無方向ポインタを使用して別のチャートの内部にある他のピクセルをポイントする。各チャートの周辺には小さな追加のスペース（すなわちガター）があり、こうした無方向ポインタに従って色を取得できる。
【００７５】
無方向ポインタは、非等長的修正スキームが固定された範囲（ｆｉｘｅｄ  ｅｘｔｅｎｔ）の近傍にアクセスする機能を利用する。それぞれのアクセスＳ［ｐ］をＳ［ｌ［ｐ］］で置き換えることによって、レベルごとの無方向マップｌを使用してチャート全体からサンプルが読み出される。こうした無方向マップは、サーフェスのパラメータ化のみに依存しており、チャートの境界全体を移動することによって事前に計算される。アトラス構築時に、各チャートの周辺に必要な２ピクセル幅の無方向ポインタのスペースが予約される。
【００７６】
図１０は、レベル１〜６の多重解像度合成ピラミッド１０００（第１のレベル１０１０、第２のレベル１０２０、第３のレベル１０３０、第４のレベル１０４０、第５のレベル１０５０、および第６のレベル１０６０を備える）を示している。図１０に示すように、すべての解像度レベルで同じアトラスパラメータ化を使用するため、ピラミッドの最も精細なレベルでは無方向ポインタ用に追加のガタースペースが予約される。具体的には、図１０に示すように、レベル４〜６（１０４０、１０５０、１０６０）では無方向ポインタ用にイメージの周辺のガタースペースが次第に増加している。
【００７７】
非等長的合成拡大
アトラス内でテクスチャを合成する上での１つの難題は、多くの場合、何らかのパラメータ化のゆがみが不可避であり、アンダーサンプリング領域が発生することである。こうした不均一なサンプリングを隠す１つの方法は、合成拡大スキームを使用することである。合成拡大では、合成座標を使用して同じ見本の高解像度バージョンにアクセスする。
【００７８】
少なくとも１つの現在の合成拡大スキームの背後にある主要な概念は、合成座標Ｓを使用してより高解像度の見本ＥHにアクセスすることである。具体的には、連続的な座標ｐのピクセル値は、次のように４つの最も近い合成ピクセルの組合せによって取得される。
【００７９】
【数５】
2009543192.tif 000007
【００８０】
ただし、ｗ（Δ）＝｜Δx｜・｜Δy｜はバイリニア補間（ｂｉｌｉｎｅａｒ  ｉｎｔｅｒｐｏｌａｔｉｏｎ）の重みである。サーフェステクスチャ合成では、目的は必ずしもより高解像度の見本ＥHに拡大することではなく、アンダーサンプリング領域で失われる細部を復元することである。
【００８１】
本非等長的テクスチャ合成方法は、前述の合成拡大スキームを変更することによって非等長的に明らかにする。換言すると、ヤコビアンが導入され、使用されることによって、前述の合成拡大スキームにおける拡大のステップを変更する。これは、次の式で表されるヤコビアンマップにアクセスすることによって実現する
【００８２】
【数６】
2009543192.tif 000008
【００８３】
非等長的合成拡大は、レンダリング実行時にサーフェスシェーダ（ｓｕｒｆａｃｅ  ｓｈａｄｅｒ）で実行でき、これによって若干コストが増大する。
【００８４】
図１１は、本非等長的合成拡大の例を示している。図１１に示すように、テクスチャサーフェスは馬の形１１００をしている。ヤコビアン情報を含む合成拡大を使用すると、テクスチャサーフェス１１００の一部１１１０が拡大される。中央のイメージ１１２０には、一部１１１０が合成拡大なしで表示されている。右のイメージ１１３０には、一部１１１０に合成拡大を適用したものが表示されている。
【００８５】
ＩＶ．例示的な動作環境
本非等長的テクスチャ合成のシステムおよび方法は、コンピューティング環境で動作するように設計されている。以下の記述は、本非等長的テクスチャ合成のシステムおよび方法を実装できる適切なコンピューティング環境を簡単かつ一般的に説明することを目的としている。
【００８６】
図１２は、本非等長的テクスチャ合成のシステムおよび方法を実装できる適切なコンピューティングシステム環境の例を示している。コンピューティングシステム環境１２００は適切なコンピューティング環境の１つの例にすぎず、本発明の使用または機能の範囲に関するいかなる制限を示すものでもない。また、コンピューティング環境１２００は、例示的な動作環境に示すコンポーネントの任意の１つまたは組合せに関して、いかなる依存性も要件もないと解釈されるものとする。
【００８７】
本非等長的テクスチャ合成のシステムおよび方法は、それ以外のさまざまな汎用または専用のコンピューティングシステム環境または構成にも適用できる。本非等長的テクスチャ合成のシステムおよび方法と使用するのに適した周知のコンピューティングシステム、環境、および／または構成の例には、パーソナルコンピュータ、サーバーコンピュータ、ハンドヘルド、ラップトップもしくはモバイルコンピュータ、または携帯電話やＰＤＡなどの通信デバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家庭用電子機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、前述の任意のシステムまたはデバイスを含む分散コンピューティング環境などが含まれるが、これらに限定はされない。
【００８８】
本非等長的テクスチャ合成のシステムおよび方法は、プログラムモジュールなどのコンピュータで実行可能な命令をコンピュータで実行する一般的なコンテクストで説明できる。一般に、プログラムモジュールには、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造体などがあり、特定のタスクを実行するものや、特定の抽象データ型を実装するものが含まれる。本非等長的テクスチャ合成のシステムおよび方法は、通信ネットワークを介してリンクするリモート処理装置でタスクを実行する分散コンピューティング環境でも実施できる。分散コンピューティング環境では、メモリ記憶装置を含むローカルとリモートの両方のコンピュータ記憶媒体にプログラムモジュールを格納できる。図１２を参照すると、本非等長的テクスチャ合成のシステムおよび方法を実施する例示的なシステムには、コンピュータ１２１０の形で汎用のコンピューティングデバイスが配置されている。
【００８９】
コンピュータ１２１０のコンポーネントには、処理装置１２２０（たとえば、中央処理装置ＣＰＵ：ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、システムメモリ１２３０、およびシステムメモリを含むさまざまなシステムコンポーネントを処理装置１２２０に接続するシステムバス１２２１が含めることができるが、それらに限定はされない。システムバス１２２１は、さまざまなバスアーキテクチャのいずれかを使用したメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含む各種バス構造のいずれでもよい。こうしたアーキテクチャには、例として、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、およびＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス（メザニン（Ｍｅｚｚａｎｉｎｅ）バスとも呼ばれる）が含まれるが、これらに限定はされない。
【００９０】
コンピュータ１２１０は、通常はさまざまなコンピュータ可読媒体を備えている。コンピュータ可読媒体は、コンピュータ１２１０からアクセスできる任意の使用可能な媒体でよい。また、揮発性と不揮発性の両方、および取り外し可能と不可能の両方の媒体が含まれる。例として、コンピュータ可読媒体にはコンピュータ記憶媒体および通信媒体を含めてもよいが、これらに限定はされない。コンピュータ記憶媒体には、コンピュータ可読の命令、データ構造、プログラムモジュール、またはそれ以外のデータなどの情報を記憶する任意の方法または技術で組み込まれた、揮発性と不揮発性、および取り外し可能と不可能の媒体が含まれる。
【００９１】
コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたはそれ以外のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ：ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ）またはそれ以外の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスクまたはそれ以外の磁気記憶装置、あるいは必要な情報を格納でき、コンピュータ１２１０からアクセスできるそれ以外の任意の媒体が含まれるが、これらに限定はされない。通信媒体は、通常、搬送波やそれ以外の搬送メカニズムなどの変調データ信号に含まれるコンピュータ可読の命令、データ構造、プログラムモジュール、またはそれ以外のデータなどを具体化したものであり、任意の情報伝達媒体を含んでいる。
【００９２】
「変調データ信号」という用語は、信号に含まれる情報を符号化するように１つまたは複数の特性を設定または変更された信号を意味することに留意されたい。通信媒体には、例として、有線ネットワーク、直接ワイヤ接続などの有線媒体と、音、ＲＦ、赤外線などの無線媒体が含まれるが、これらに限定はされない。上記の任意の組合せも、コンピュータ可読媒体の範囲内に含まれるものとする。
【００９３】
システムメモリ１２３０には、読み取り専用メモリ（ＲＯＭ：ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）１２３１やランダムアクセスメモリ（ＲＡＭ：ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）１２３２などの揮発性および／または不揮発性メモリという形をとるコンピュータ記憶媒体が含まれる。起動時などにコンピュータ１２１０の構成要素間の情報転送を支援する基本ルーチンを含む基本入出力システム１２３３（ＢＩＯＳ：ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）は、通常はＲＯＭ  １２３１に格納されている。ＲＡＭ  １２３２には、通常は処理装置１２２０から直ちにアクセスできる、かつ／または処理装置１２２０で現在動作しているデータおよび／またはプログラムモジュールが格納されている。例として、図１２にはオペレーティングシステム１２３４、アプリケーションプログラム１２３５、それ以外のプログラムモジュール１２３６、およびプログラムデータ１２３７が示されているが、これらに限定はされない。
【００９４】
コンピュータ１２１０には、さらにそれ以外の取り外し可能／不可能、揮発性／不揮発性のコンピュータ記憶媒体を含めてもよい。図１２には、単に例として、取り外し不可能な不揮発性の磁気媒体の読み出しまたは書き込みを行うハードディスクドライブ１２４１、取り外し可能な不揮発性の磁気ディスク１２５２の読み出しまたは書き込みを行う磁気ディスクドライブ１２５１、ＣＤ  ＲＯＭまたはそれ以外の光媒体などの取り外し可能な不揮発性の光ディスク１２５６の読み出しまたは書き込みを行う光ディスクドライブ１２５５を示している。
【００９５】
例示的なオペレーティング環境で使用できる上記以外の取り外し可能／取り外し不可能、揮発性／不揮発性のコンピュータ記憶媒体には、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭなどが含まれるが、これらに限定はされない。ハードディスクドライブ１２４１は、通常はインターフェイス１２４０などの取り外し不可能なメモリインターフェイスを介してシステムバス１２２１に接続し、磁気ディスクドライブ１２５１と光ディスクドライブ１２５５は、通常はインターフェイス１２５０などの取り外し可能なメモリインターフェイスを介してシステムバス１２２１に接続する。
【００９６】
図１２に示す前述のドライブとこれに対応するコンピュータ記憶媒体には、コンピュータ可読の命令、データ構造、プログラムモジュール、およびそれ以外のコンピュータ１２１０のデータを格納できる。たとえば、図１２を参照すると、ハードディスクドライブ１２４１には、オペレーティングシステム１２４４、アプリケーションプログラム１２４５、それ以外のプログラムモジュール１２４６、およびプログラムデータ１２４７が格納されている。こうしたコンポーネントは、オペレーティングシステム１２３４、アプリケーションプログラム１２３５、それ以外のプログラムモジュール１２３６、およびプログラムデータ１２３７と同じでもよいし、異なっていてもよいことに留意されたい。ここでは、オペレーティングシステム１２４４、アプリケーションプログラム１２４５、それ以外のプログラムモジュール１２４６、およびプログラムデータ１２４７には異なる番号を付けて、少なくとも別の複製であることを示している。ユーザーは、キーボード１２６２やポインティングデバイス１２６１（一般に、マウス、トラックボール、またはタッチパッドと呼ばれる）を使用してコンピュータ１２１０にコマンドや情報を入力できる。
【００９７】
それ以外の入力装置（図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、サテライトディッシュ（ｓａｔｅｌｌｉｔｅ  ｄｉｓｈ）、スキャナ、無線レシーバ、あるいはテレビジョンまたはブロードキャストビデオレシーバなどを含めてもよい。これらの入力装置およびそれ以外の入力装置は、多くの場合にシステムバス１２２１に接続されたユーザー入力インターフェイス１２６０を介して処理装置１２２０に接続するが、たとえば、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ：ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ）などのそれ以外のインターフェイスやバス構造によって接続してもよい。モニター１２９１またはそれ以外のタイプの表示装置も、ビデオインターフェイス１２９０などのインターフェイスを介してシステムバス１２２１に接続される。さらに、コンピュータには出力周辺インターフェイス１２９５を介して接続できるスピーカー１２９７やプリンタ１２９６など、モニター以外の出力周辺デバイスが含まれていてもよい。
【００９８】
コンピュータ１２１０は、リモートコンピュータ１２８０などの１台または複数台のリモートコンピュータへの論理接続を使用してネットワーク環境で動作できる。リモートコンピュータ１２８０は、パーソナルコンピュータ、サーバー、ルータ、ネットワークＰＣ、ピアデバイス、またはそれ以外の一般のネットワークノードでよい。通常は、コンピュータ１２１０に関連して上で説明したエレメントの多くまたはすべてが含まれるが、図１２にはメモリ記憶装置１２８１のみが示されている。図１２に示す論理接続には、ローカルエリアネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）１２７１とワイドエリアネットワーク（ＷＡＮ：ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）１２７３が含まれるが、それ以外のネットワークを含めてもよい。このようなネットワーキング環境は、オフィス、エンタープライズ規模のコンピュータネットワーク、イントラネット、およびインターネットではきわめて一般的である。
【００９９】
ＬＡＮネットワーキング環境で使用した場合、コンピュータ１２１０はＬＡＮ  １２７１にネットワークインターフェイスまたはアダプタ１２７０を介して接続する。ＷＡＮネットワーキング環境で使用する場合、コンピュータ１２１０は一般にインターネットなどのＷＡＮ  １２７３を介して通信を確立するためのモデム１２７２またはそれ以外の手段を備えている。モデム１２７２（内蔵でも外付けでもよい）は、ユーザー入力インターフェイス１２６０またはそれ以外の適切なメカニズムを使用してシステムバス１２２１に接続できる。ネットワーク環境では、コンピュータ１２１０またはその一部に関連して説明したプログラムモジュールをリモートメモリ記憶装置に格納できる。例として、図１２にメモリデバイス１２８１に常駐するリモートアプリケーションプログラム１２８５を示すが、これには限定されない。図示されたネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立するそれ以外の手段を使用してもよいことは理解されよう。
【０１００】
以上に示す発明を実施するための最良の形態は、例示と説明を目的として示されている。以上の教示に照らして、多くの変更や変形が可能である。本発明のすべてを記述する意図はなく、本明細書で説明された主題を開示された特定の形に限定する意図もない。本主題について、構造上の機能および／または方法論的な動作に固有の言語で説明してきたが、添付の請求項で定義された本主題は必ずしも前述の特定の機能または動作には限定されないことを理解されたい。むしろ、前述の特定の機能および動作は、本明細書に添付された請求項の例示的な実施の形態として開示されている。
【図面の簡単な説明】
【０１０１】
【図１】本明細書で開示された非等長的テクスチャ合成システムの例示的な実装を示すブロック図である。
【図２】図１に示す本非等長的テクスチャ合成システムの一般的な動作を示す流れ図である。
【図３】図２に示す本非等長的テクスチャ合成方法の特殊なケースについて、漸進的に解像度を高めた場合のインデックスマップ（インデックスマップは合成されたテクスチャ座標のイメージである）が変遷する経過の例を示す図である。
【図４】図３に示すインデックスマップに対応するテクスチャイメージ（すなわち合成されたカラーイメージ）を示す図である。
【図５】図３および４に示す本非等長的テクスチャ合成プロセスの特殊なケースの例を示すブロック図である。
【図６】本明細書で開示された非等長的テクスチャ合成プロセスの第１の結果の例を示す図である。
【図７】本明細書で開示された非等長的テクスチャ合成プロセスの第２の結果の例を示す図である。
【図８】サーフェステクスチャアプリケーションに使用するヤコビアンフィールドの導関数（ｄｅｒｉｖａｔｉｏｎ）を示す図である。
【図９】本非等長的テクスチャ合成方法を使用してサーフェステクスチャ合成を実行した結果の例を示す図である。
【図１０】多重解像度合成ピラミッド（ｍｕｌｔｉ−ｒｅｓｏｌｕｔｉｏｎ  ｓｙｎｔｈｅｓｉｓ  ｐｙｒａｍｉｄ）の複数のレベルを示す図である。
【図１１】本非等長的合成拡大スキームの例を示す図である。
【図１２】本非等長的テクスチャ合成のシステムおよび方法を実装できる適切なコンピューティングシステム環境の例を示す図である。
【図１】
2009543192.tif 000009
【図２】
2009543192.tif 000010
【図３】
2009543192.tif 000011
【図４】
2009543192.tif 000012
【図５】
2009543192.tif 000013
【図６】
2009543192.tif 000014
【図７】
2009543192.tif 000015
【図８】
2009543192.tif 000016
【図９】
2009543192.tif 000017
【図１０】
2009543192.tif 000018
【図１１】
2009543192.tif 000019
【図１２】
2009543192.tif 000020
【国際調査報告】
2009543192.tif 000021
2009543192.tif 000022