Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5149288B2 - Composition of ANISOMETRIC texture (TEXTURE) (SYNTHESIS) - Google Patents
[go: Go Back, main page]

JP5149288B2 - Composition of ANISOMETRIC texture (TEXTURE) (SYNTHESIS) - Google Patents

Composition of ANISOMETRIC texture (TEXTURE) (SYNTHESIS) Download PDF

Info

Publication number
JP5149288B2
JP5149288B2 JP2009518111A JP2009518111A JP5149288B2 JP 5149288 B2 JP5149288 B2 JP 5149288B2 JP 2009518111 A JP2009518111 A JP 2009518111A JP 2009518111 A JP2009518111 A JP 2009518111A JP 5149288 B2 JP5149288 B2 JP 5149288B2
Authority
JP
Japan
Prior art keywords
pixel
texture
jacobian
isometric
sample
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.)
Expired - Fee Related
Application number
JP2009518111A
Other languages
Japanese (ja)
Other versions
JP2009543192A (en
JP2009543192A5 (en
Inventor
ルフェーブル シルバン
エイチ.ホッペ ユーグ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2009543192A publication Critical patent/JP2009543192A/en
Publication of JP2009543192A5 publication Critical patent/JP2009543192A5/ja
Application granted granted Critical
Publication of JP5149288B2 publication Critical patent/JP5149288B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/14Transformations for image registration, e.g. adjusting or mapping for alignment of images
    • G06T3/153Transformations for image registration, e.g. adjusting or mapping for alignment of images using elastic snapping
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00Two-dimensional [2D] image generation
    • G06T11/10Texturing; Colouring; Generation of textures or colours
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three-dimensional [3D] modelling for computer graphics

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
  • Magnetic Record Carriers (AREA)
  • Lubricants (AREA)

Abstract

An anisometric texture synthesis system and method for generating anisometric textures having a similar visual appearance as a given exemplar, but with varying orientation and scale. This variation is achieved by modifying the upsampling and correaction processes of the texture synthesis technique using a Jacobian field. The modified correaction process includes accessing only immediate neighbors of a pixel instead of non-local pixels. This constraint that only immediate neighbors be used also allows the generation of seamless anisometric surface textures. This is achieved by using indireaction maps containing indirection pointers that are used to jump from a set of pixels outside the boundary of a texture atlas chart to another chart. The system and method also includes an anisometric synthesis magnification technique that uses a Jacobian field to modify the magnification step of a synthesis magnification scheme and account for anisometry.

Description

本発明は、テクスチャ合成に関する。   The present invention relates to texture synthesis.

テクスチャ合成には、小さなサンプルイメージから大きなテクスチャを自動的に生成するステップが含まれる(テクスチャサンプルまたはテクスチャ見本と呼ばれる)。この見本ベースのテクスチャ合成は、見本を取得し、そうした見本に基づいて追加のコンテンツを生成することによって、見本に含まれるコンテンツよりはるかに大きなコンテンツを作成する。見本ベースのテクスチャ合成を使用すると、コンテンツの領域(expanse)全体を明示的に格納する必要がなくなる。代わりに、はるかに小さい見本から「その場で」コンテンツが生成される。   Texture synthesis involves automatically generating a large texture from a small sample image (called a texture sample or texture swatch). This sample-based texture synthesis creates content that is much larger than the content contained in the sample by taking the sample and generating additional content based on such sample. Using sample-based texture synthesis eliminates the need to explicitly store the entire content expanse. Instead, the content is generated “on the fly” from a much smaller sample.

従来、見本ベースのテクスチャ合成には、合成された各ピクセルの近傍(neighborhood)を見本の近傍と比較する修正のプロセスが含まれる。次に、合成されたピクセルが変更され、見本のコンテンツと互換可能な合成された近傍が再作成される。ピクセルごとに、ベストマッチング(best−matching)近傍が検出され、さらに現在のピクセルがベストマッチングピクセルに置き換えられる。ベストマッチング近傍は、小さなピクセル格子内のピクセルの色を比較することによって決定される。たとえば、ピクセルごとに、ピクセルの5×5の近傍が調べられ、近傍の誤差は5×5の近傍に含まれる個々のピクセルの赤、緑、および青(RGB:red,green,blue)カラーベクトルの誤差の合計である。   Traditionally, sample-based texture synthesis includes a modification process in which the neighborhood of each synthesized pixel is compared to the neighborhood of the sample. Next, the synthesized pixels are modified to recreate a synthesized neighborhood that is compatible with the sample content. For each pixel, a best-matching neighborhood is detected, and the current pixel is replaced with the best-matching pixel. The best matching neighborhood is determined by comparing the color of the pixels in the small pixel grid. For example, for each pixel, the 5 × 5 neighborhood of the pixel is examined, and the neighborhood error is the red, green, and blue (RGB: red, green, blue) color vector of the individual pixels contained in the 5 × 5 neighborhood. Is the sum of the errors.

テクスチャ合成は、等長的(isometric)でも非等長的(「等長的」ではないという意味)でもよい。等長的テクスチャ合成では、同じパターン、同じスケール、および同じ向きのテクスチャが生成される。一方、非等長的テクスチャ合成では、生成されるテクスチャ内でフィーチャ(feature)の向きの変化とローカルスケーリングが可能である。   Texture synthesis may be isometric or non-isometric (meaning not “isometric”). In isometric texture synthesis, textures with the same pattern, scale, and orientation are generated. On the other hand, in non-isometric texture synthesis, the orientation of features (features) and local scaling can be performed in the generated texture.

修正プロセスの実行中に、現在合成されているテクスチャ内の近傍が収集され、見本の近傍と比較される。非等長的合成を実行するために、現在の技術では収集された近傍を変形する。ヤコビアン逆行列(inverse Jacobian)は、色をフェッチする前に近傍の座標に適用される変換である。ヤコビアン逆行列は、アフィン変換を使用してピクセル近傍を変換する2×2の行列である。具体的に、ヤコビアンフィールドが指定された場合に、ピクセル近傍はヤコビアン逆行列を使用して変換される。ヤコビアン逆行列の補正を実行するために、ピクセル近傍の向きとスケールが変更される。つまり、近傍の元の点で色を取得せずに、新しい向きとスケーリングを使用して変換された新しい近傍の点のセットで色が取得される。   During the correction process, neighborhoods in the currently synthesized texture are collected and compared with the neighborhoods of the sample. In order to perform non-isometric synthesis, current techniques deform the collected neighborhood. The Jacobian inverse matrix (inverse Jacobian) is a transformation applied to neighboring coordinates before fetching colors. The Jacobian inverse matrix is a 2 × 2 matrix that transforms pixel neighborhoods using affine transformation. Specifically, when a Jacobian field is specified, pixel neighborhoods are transformed using a Jacobian inverse matrix. To perform the Jacobian inverse matrix correction, the orientation and scale of the pixel neighborhood is changed. That is, instead of obtaining a color at the original point in the neighborhood, a color is obtained with a new set of neighboring points transformed using the new orientation and scaling.

現在の非等長的テクスチャ合成技術にはいくつかの欠点がある。第1の欠点は、メモリコヒーレンシ(coherency)の欠如である。具体的には、一部の状況では変換された近傍が大きくなり、拡大される。これは、ピクセルの直接近傍(immediate neighbor)でなく遠く離れたピクセルにアクセスする可能性があることを意味する。このことによって、よりランダムなメモリアクセスが発生し、メモリアクセスにおいて効率の低下およびコヒーレンシの欠如が発生する可能性がある。   Current non-isometric texture synthesis techniques have several drawbacks. The first drawback is the lack of memory coherency. Specifically, in some situations, the transformed neighborhood becomes larger and enlarged. This means that it is possible to access pixels that are far away rather than the immediate neighbor of the pixel. This can result in more random memory accesses, which can result in reduced efficiency and lack of coherency in memory accesses.

第2の欠点は、修正プロセス実行中にアクセスされる非ローカルピクセルを再サンプリングする必要があることである。具体的には、変換後にピクセルの値を補間するプロセスでピクセルを再サンプリングする必要がある。この作業は、変換されたピクセルが広い領域に拡散されるために必要である。しかし、この再サンプリングのプロセスは非効率的であり、合成されたテクスチャで視覚的なぼやけ(visible blurring)が発生する可能性がある。   A second drawback is that non-local pixels that are accessed during the correction process need to be resampled. Specifically, it is necessary to resample the pixels in the process of interpolating the pixel values after conversion. This work is necessary for the transformed pixels to be spread over a large area. However, this resampling process is inefficient and visual blurring may occur in the synthesized texture.

第3の欠点は、テクスチャコヒーレンシの欠如である。サンプル同士の間隔が広く空いているため、修正プロセスは隣接するピクセルの値には依存しなくなる。このことによって、テクスチャコヒーレンシが大きく低下する可能性がある。こうしたインコヒーレンシ(incoherency)によって、修正プロセスの機能と効果が低下し、場合によってはプロセスが収束しない可能性もある。   A third drawback is the lack of texture coherency. Since the samples are widely spaced, the correction process does not depend on the value of adjacent pixels. This can significantly reduce texture coherency. Such incoherency reduces the functionality and effectiveness of the modification process, and in some cases the process may not converge.

別の現在の非等長的テクスチャ合成技術では、回転とスケールが異なる複数のバージョンの見本を表示し、こうした見本のバージョンの中から現在のピクセルで望ましいヤコビアンに基づいて選択する。しかし、こうしたアプローチでは、多くのバージョンの見本を格納し、分析するために、多くのメモリを使用する必要がある。さらに、テクスチャコヒーレンシの実現も困難である。   Another current non-isometric texture synthesis technique displays multiple versions of samples with different rotations and scales and selects from these sample versions based on the desired Jacobian at the current pixel. However, such an approach requires using a lot of memory to store and analyze many versions of the sample. Furthermore, it is difficult to realize texture coherency.

以下の解決手段では、後述の発明を実施するための最良の形態でより詳細に説明するいくつかの概念を簡略化した形で紹介する。以下に示す解決手段は、請求された主題の重要な機能または必須の機能を示すものではない。また、請求された主題の範囲を限定するために使用するものでもない。   In the following solution, some concepts explained in more detail in the best mode for carrying out the invention to be described later are introduced in a simplified form. The solutions presented below do not represent an important or essential function of the claimed subject matter. Nor is it used to limit the scope of the claimed subject matter.

本明細書で開示される非等長的テクスチャ合成のシステムおよび方法には、高い効率と最小のオーバーヘッドによる高品質の非等長的テクスチャの生成を可能にするいくつかの技術が含まれる。一般に、非等長的テクスチャ合成のシステムおよび方法は、外観は指定されたサンプルイメージまたは見本と同様であるが、向きとスケールが異なる新しいテクスチャを合成する。こうした向きとスケールは、ヤコビアンフィールドによって指定される。ヤコビアンは、特定の点の線形変換を表す2×2の行列である。本非等長的テクスチャ合成のシステムおよび方法を使用すると、平面内およびサーフェス(surface)上に合成されたテクスチャを生成することができる。   The non-isometric texture synthesis systems and methods disclosed herein include several techniques that enable the generation of high-quality non-isometric textures with high efficiency and minimal overhead. In general, non-isometric texture synthesis systems and methods synthesize new textures that are similar in appearance to a specified sample image or sample, but with different orientations and scales. These orientations and scales are specified by the Jacobian field. A Jacobian is a 2 × 2 matrix that represents a linear transformation of a particular point. Using this non-isometric texture synthesis system and method, it is possible to generate synthesized textures in a plane and on a surface.

非等長的テクスチャ合成のシステムおよび方法には、ピクセルの直接近傍のみにアクセスする合成スキームを使用するステップが含まれる。直接近傍のみを使用することによって、メモリとテクスチャの両方のコヒーレンシが向上する。さらに、修正プロセス実行中にアクセスされる非ローカルピクセルを再サンプリングする必要がなくなる。基盤となる合成プロセスは、見本のピクセル座標(色ではなく)に依存することが想定されている。したがって、合成されたテクスチャに直接色が含まれるのではなく、座標が含まれており、この座標のピクセルの色を見本からフェッチする必要がある。多くのテクスチャ合成スキームでこのアプローチが使用されている。   Non-isometric texture synthesis systems and methods include using a synthesis scheme that accesses only the immediate neighborhood of pixels. Using only direct neighbors improves both memory and texture coherency. Furthermore, there is no need to resample non-local pixels that are accessed during the modification process. It is assumed that the underlying compositing process depends on the sample pixel coordinates (not color). Therefore, the synthesized texture does not include color directly, but includes coordinates, and it is necessary to fetch the color of the pixel at this coordinate from the sample. Many texture synthesis schemes use this approach.

この設定では、指定されたピクセルの直接近傍にはそれぞれ見本内の座標がある。個々の近傍は、現在のピクセルを置き換える候補の予測に使用される。近傍にアクセスする前に非等長的変換を適用する代わりに、非等長的テクスチャ合成のシステムおよび方法では直接近傍にアクセスし、直接近傍から取得した見本座標に後で変換を適用することによって、現在のピクセルを置き換える適切な候補を予測する。このように、直接近傍のみにアクセスするが、変換は修正プロセス実行中に同等に適用される。   In this setting, each of the coordinates in the sample is in the immediate vicinity of the designated pixel. Individual neighbors are used to predict candidates that will replace the current pixel. Instead of applying non-isometric transformations before accessing neighborhoods, non-isometric texture synthesis systems and methods can access direct neighborhoods and later apply transformations to sample coordinates obtained from direct neighborhoods. , Predict suitable candidates to replace the current pixel. In this way, only the immediate neighborhood is accessed, but the transformation is equally applied during the modification process.

目標は、ピクセルpが指定された場合に、pの周辺にテクスチャの近傍が構築され、ベストマッチング修正プロセスを使用してこれを見本のそれ以外の近傍と比較することである。直接近傍は、方向コンポーネント(direction component)を使用することによって取得される。直接近傍の合成座標が取得されると、オフセットが適用され、ピクセル自体の合成座標であると本方法で予測する座標が取得される。   The goal is that if a pixel p is specified, a texture neighborhood is built around p and compared to the other neighborhoods in the sample using a best matching modification process. The direct neighborhood is obtained by using a direction component. When synthetic coordinates in the immediate vicinity are obtained, an offset is applied, and coordinates predicted by the present method are obtained as synthetic coordinates for the pixels themselves.

本合成スキームで直接近傍のみを使用するという事実によって、さらにシームレスな非等長的サーフェステクスチャの生成も可能になる。具体的には、三角形メッシュ(triangle mesh)として説明されるサーフェスおよびこのサーフェスのテクスチャドメインに関するパラメータ化が指定された場合は、パラメータ化によってメッシュサーフェスはチャートに区分され、各チャートはテクスチャドメインの領域にマップされる。目標は、テクスチャドメイン内のテクスチャを合成し、結果として得られるテクスチャサーフェスがユーザーの指定した外観を備えるようにすることである。もっと正確に言えば、サーフェス上のテクスチャを、サーフェスに関してユーザーが指定したヤコビアンフィールドに合わせる必要がある(回転とスケールの両方の点で)。難題の一部は、メッシュのパラメータ化によってサーフェスが互いに素な(disjoint)チャートに分解されること、およびサーフェステクスチャはこうしたチャートの境界に関してシームレスであるのが望ましいことである。こうしたシームレスなテクスチャを構成するためには、チャート境界に近いピクセルの合成近傍にそれ以外のチャートのサンプルを含める必要がある。こうした要件に対応するために、非等長的テクスチャ合成の方法では、無方向ポインタを使用することによって、1つのアトラスチャート境界から別のテクスチャアトラスチャートにジャンプする機能を提供する   The fact that only direct neighbors are used in this synthesis scheme also allows for the creation of a more seamless non-isometric surface texture. Specifically, if a parameterization is specified for a surface described as a triangle mesh and the texture domain of this surface, the parameterization partitions the mesh surface into charts, and each chart is an area of the texture domain Is mapped to The goal is to synthesize textures in the texture domain so that the resulting texture surface has a user-specified appearance. More precisely, the texture on the surface needs to match the Jacobian field specified by the user for the surface (in both rotation and scale). Part of the challenge is that the mesh parameterization breaks the surface into disjoint charts and that the surface texture is desirable to be seamless with respect to the boundaries of such charts. In order to construct such a seamless texture, it is necessary to include other chart samples in the vicinity of the synthesized pixels near the chart boundary. To accommodate these requirements, the non-isometric texture synthesis method provides the ability to jump from one atlas chart boundary to another by using an undirectional pointer.

各チャートの境界の外部にあるピクセルの小規模なセットについて、無方向ポインタを使用して別のチャートの内部にあるそれ以外のピクセルをポイントする。各チャートの周辺には小さな追加のスペース(すなわちガター(gutter))があり、こうした無方向ポインタに従って色を取得できる。こうしたシームレスなサーフェステクスチャを構成する機能は、非等長的修正スキームが固定された範囲の近傍にアクセスする機能を直接利用する。   For a small set of pixels that are outside the boundaries of each chart, use a nondirectional pointer to point to the other pixels that are inside another chart. There is a small additional space around each chart (i.e., a gutter), and colors can be obtained according to these non-directional pointers. The function of constructing such a seamless surface texture directly utilizes the function of accessing the vicinity of the range where the non-isometric modification scheme is fixed.

非等長的テクスチャ合成のシステムおよび方法には、さらに非等長的合成拡大技術も含まれる。合成拡大には、合成座標を使用して同じ見本の高解像度バージョンを取得するステップが含まれる。合成拡大は、サンプリングの不均一性(nonuniformities)たとえばパラメータ化のゆがみ(distortion))を隠すために使用できる。非等長的テクスチャ合成の方法は、ヤコビアンフィールドを含むように合成拡大スキームを変更する。こうしたヤコビアンは、合成拡大スキームの拡大のステップを変更し、非等長的に明らかにするために使用する。   Non-isometric texture synthesis systems and methods further include non-isometric synthesis expansion techniques. Composite magnification includes obtaining a high resolution version of the same sample using the composite coordinates. Synthetic expansion can be used to hide sampling non-uniformities, such as parameterized distortion. The non-isometric texture synthesis method modifies the synthesis magnification scheme to include a Jacobian field. These Jacobians are used to change the expansion step of the synthetic expansion scheme and make it unequal.

代替的実施形態が実現可能であり、特定の実施形態によっては、本明細書で説明するステップおよび要素を変更、追加、または削除できることに留意されたい。こうした代替的実施形態では、本発明の範囲を逸脱することなく、代替的ステップおよび代替的要素を使用でき、構造上の変更を適用することができる。   It should be noted that alternative embodiments are feasible, and that depending on the particular embodiment, the steps and elements described herein may be changed, added, or deleted. In such alternative embodiments, alternative steps and elements may be used and structural changes may be applied without departing from the scope of the present invention.

ここで図面を参照すると、すべての図面で類似の参照番号は対応する要素を表している。   Referring now to the drawings in which like reference numbers represent corresponding elements throughout.

以下に示す本非等長的テクスチャ合成の方法およびシステムの説明では、本明細書の要素となる添付の図面を参照する。こうした図面には、本非等長的テクスチャ合成の方法およびシステムを実施できる特定の実施例が説明のために示されている。請求された主題の範囲を逸脱することなく、それ以外の実施形態を利用できること、および構造上の変更を適用できることを理解されたい。   In the following description of the non-isometric texture synthesis method and system, reference is made to the accompanying drawings, which are elements of this specification. In the drawings, specific embodiments in which the present non-isometric texture synthesis method and system can be implemented are shown for purposes of illustration. It should be understood that other embodiments may be utilized and structural changes may be applied without departing from the scope of the claimed subject matter.

I.システムの概要
本非等長的テクスチャ合成のシステムおよび方法は、2次元(2−D)の平面上またはサーフェス上に合成されたテクスチャを生成するために使用できる。本非等長的テクスチャ合成システムおよび方法は、一般に、外観は指定されたサンプルイメージまたは見本と同様であるが、ヤコビアンフィールドによって指定された異なる向きとスケールによる新しいテクスチャを作成する。本明細書で説明する非等長的テクスチャ合成のシステムおよび方法を使用すると、平面またはサーフェスの両方において、シンプルで、効率的で、かつ高品質の2−Dの非等長的テクスチャ合成が可能になる。
I. System Overview The present non-isometric texture synthesis system and method can be used to generate textures synthesized on a two-dimensional (2-D) plane or on a surface. The non-isometric texture synthesis system and method generally creates a new texture that is similar in appearance to the specified sample image or sample, but with a different orientation and scale specified by the Jacobian field. The non-isometric texture synthesis system and method described herein enables simple, efficient, and high quality 2-D non-isometric texture synthesis in both planes and surfaces. become.

図1は、本明細書で開示された非等長的テクスチャ合成システムの例示的な実装を示すブロック図である。図1は、本非等長的テクスチャ合成システムを実装でき、使用できるいくつかの手法の1つを示しているにすぎないことに留意されたい。本非等長的テクスチャ合成のシステムは、これ以外のタイプの処理システム(たとえば、中央処理装置(CPU)またはマルチコア処理システム)に実装することもできる。   FIG. 1 is a block diagram illustrating an exemplary implementation of the non-isometric texture synthesis system disclosed herein. It should be noted that FIG. 1 only illustrates one of several approaches that can be implemented and used with this non-isometric texture synthesis system. This non-isometric texture synthesis system can also be implemented in other types of processing systems (eg, a central processing unit (CPU) or multi-core processing system).

図1を参照すると、本非等長的テクスチャ合成システム100はコンピューティングデバイス110(点線で示す)上で動作するように設計されている。本非等長的テクスチャ合成システム100は、さまざまなタイプの汎用または専用のコンピューティングシステム環境または構成(パーソナルコンピュータ、サーバーコンピュータ、ハンドヘルド、ラップトップ、またはモバイルコンピュータを含む)、あるいは通信デバイス(たとえば携帯電話やPDA)、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家庭用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、前述の任意のシステムまたはデバイスを含む分散コンピューティング環境などで動作できることに留意されたい。図1に示すコンピューティングデバイス110は、前述のいずれかおよびそれ以外のタイプのコンピューティングシステム環境または構成の任意の1つを表すように意図されているにすぎない。   Referring to FIG. 1, the non-isometric texture synthesis system 100 is designed to operate on a computing device 110 (shown in dotted lines). The non-isometric texture synthesis system 100 may include various types of general purpose or special purpose computing system environments or configurations (including personal computers, server computers, handhelds, laptops, or mobile computers), or communication devices (eg, portable). Distributed computing environment including telephones and PDAs), multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, and any of the systems or devices described above Note that it can work with The computing device 110 shown in FIG. 1 is only intended to represent any one of the foregoing and other types of computing system environments or configurations.

図1に示すように、コンピューティングデバイス110は、中央処理装置(CPU)120、およびCPUメモリ130を備えている。CPU120は、高速バス(accelerated bus)150を経由してビデオインターフェイス140と通信している。例として、このバス150は特に3−Dグラフィックスのスループットの要求に合わせて設計されたアクセラレーテッドグラフィックスポート(AGP:Accelerated Graphics Port)またはPCI Expressでもよいが、これらに限定はされない。   As shown in FIG. 1, the computing device 110 includes a central processing unit (CPU) 120 and a CPU memory 130. The CPU 120 communicates with the video interface 140 via a high-speed bus (accelerated bus) 150. By way of example, the bus 150 may be, but is not limited to, an accelerated graphics port (AGP) or PCI Express specifically designed for 3-D graphics throughput requirements.

ビデオインターフェイス140は、グラフィックス処理装置(GPU)160およびGPUメモリ170を備えている。GPU 160は、リアルタイムの3−Dグラフィックス表示を高速化するように設計されている。GPU 160は、バス150を経由してCPU120にデータを転送することができる。非等長的テクスチャ合成システム100は、GPU 160およびGPUメモリ170とも通信している。非等長的テクスチャ合成システム100は、図1に破線で示されている。図1に示す実装では、システム100にはGPU 160上に常駐する非等長的テクスチャ合成システムコード180、およびGPUメモリ170上に常駐する非等長的テクスチャ合成データ190が含まれている。   The video interface 140 includes a graphics processing unit (GPU) 160 and a GPU memory 170. The GPU 160 is designed to speed up real-time 3-D graphics display. The GPU 160 can transfer data to the CPU 120 via the bus 150. The non-isometric texture synthesis system 100 is also in communication with a GPU 160 and a GPU memory 170. An isometric texture synthesis system 100 is shown in FIG. In the implementation shown in FIG. 1, system 100 includes unequal length texture synthesis system code 180 that resides on GPU 160 and unequal length texture synthesis data 190 that resides on GPU memory 170.

II.動作の概要
図2は、図1に示す本非等長的テクスチャ合成システム100の一般的な動作を示す流れ図である。一般に、非等長的テクスチャ合成方法では、ピクセルの直接近傍とヤコビアンフィールドを使用して、見本イメージから非等長的合成テクスチャを生成する。非等長的テクスチャ合成方法は、平面上およびサーフェス上の両方で2−Dテクスチャを生成するために使用できる。
II. Outline of Operation FIG. 2 is a flowchart showing a general operation of the non-isometric texture synthesis system 100 shown in FIG. In general, in an unequal length texture synthesis method, an unequal length synthesized texture is generated from a sample image using a direct neighborhood of pixels and a Jacobian field. Non-isometric texture synthesis methods can be used to generate 2-D textures both on a plane and on a surface.

より具体的には、本非等長的テクスチャ合成方法は、初期設定(initialization)イメージを入力するステップ(ボックス200)で開始される。こうした初期設定イメージには、合成座標が含まれる。これは、前回の解像度レベル、すなわち多重解像度のアプローチによる最も粗いレベルの結果であり、通常はゼロのみが含まれている。初期設定イメージは、前回の解像度レベル、すなわち多重解像度のアプローチの最も粗いレベルにおけるイメージである。   More specifically, the present non-isometric texture synthesis method starts with the step of inputting an initialization image (box 200). Such an initial setting image includes composite coordinates. This is the result of the previous resolution level, the coarsest level due to the multi-resolution approach, and usually contains only zeros. The default image is the image at the previous resolution level, the coarsest level of the multi-resolution approach.

さらにヤコビアンフィールドも入力される(ボックス205)。ヤコビアンフィールドは、イメージの向きとスケールを変更するために使用できる。ヤコビアン(通常は記号Jで表される)は、2つのベクトルを含む2×2の行列である。こうした2つのベクトルは、入力されたテクスチャのベクトルをイメージにどうマップすべきかを示している。ヤコビアンフィールドには、元のドメイン(この場合はテクスチャ)をイメージ上に作成するときにどう定義すべきかに関する導関数(derivative)情報が記録される。   A Jacobian field is also entered (box 205). Jacobian fields can be used to change the orientation and scale of the image. The Jacobian (usually represented by the symbol J) is a 2 × 2 matrix containing two vectors. These two vectors indicate how the input texture vector should be mapped to the image. In the Jacobian field, derivative information on how to define the original domain (in this case, a texture) on the image is recorded.

前回の解像度レベルによるイメージのピクセル座標をアップサンプリングするステップによって、繰り返しのプロセスが開始される(ボックス210)。最初の繰り返しでは、アップサンプリングされるイメージは初期設定イメージである。後続の繰り返しでは、アップサンプリングされるイメージは前回の繰り返しの出力である。アップサンプリングによって、前回の解像度レベルより精細な解像度レベルである現在の解像度レベルが生成される。換言すると、多重解像度のアプローチで使用する粗いレベルから精細なレベルへのピラミッドで、一連の繰り返しによって解像度レベルは漸進的に精細になる。   The iterative process is started by boxing the pixel coordinates of the image according to the previous resolution level (box 210). In the first iteration, the upsampled image is the default image. In subsequent iterations, the upsampled image is the output of the previous iteration. Upsampling generates a current resolution level that is a finer resolution level than the previous resolution level. In other words, with a coarse-to-fine pyramid used in the multi-resolution approach, a series of iterations gradually increases the resolution level.

ここで、処理の対象となるピクセルが選択され、処理の対象となるピクセルの直接近傍にアクセスする(ボックス215)。次に、ピクセルの直接近傍に格納された合成ピクセル座標がヤコビアンフィールドを使用して歪曲(warp)される(ボックス220)。歪曲は、ヤコビアンフィールドによって指定されるように向きとスケールが変更されることを意味する。   Here, the pixel to be processed is selected and the immediate vicinity of the pixel to be processed is accessed (box 215). Next, the synthesized pixel coordinates stored in the immediate vicinity of the pixel are warped using the Jacobian field (box 220). Distortion means that the orientation and scale are changed as specified by the Jacobian field.

歪曲された直接近傍の座標を使用して現在のピクセルの候補のセットが予測されると、新しい近傍が構築され、標準のテクスチャ合成の修正プロセスが適用される(ボックス225)。こうした修正プロセスに見本が入力される(ボックス230)。こうした修正のプロセスには、候補の近傍を現在のピクセルに関して計算された近傍と比較するステップが含まれる。ただし、こうした近傍のすべては、ゆがめられていない見本空間内にあることに留意されたい。   Once the current candidate set of pixels is predicted using the distorted immediate neighborhood coordinates, a new neighborhood is constructed and a standard texture synthesis modification process is applied (box 225). A sample is entered into such a modification process (box 230). The process of such modification includes comparing the candidate neighborhood with the neighborhood computed for the current pixel. Note, however, that all of these neighbors are in an undistorted sample space.

各繰り返しの出力は、合成されたイメージであり、そのピクセルには現在の解像度レベルにおける見本のピクセル座標が含まれる(ボックス240)。ここで、現在の解像度レベルが最も精細な(したがって最後の)解像度レベルであるかどうかの判断が行われる(ボックス245)。現在の解像度レベルが最も精細な解像度レベルでない場合は、もう一度繰り返しが実行される。この場合は、現在の解像度レベルが前回の解像度レベルになる。つまり、現在の解像度レベルで合成されたピクセル座標は、ここで前回の解像度レベルで合成されたピクセル座標になる(ボックス250)。ここで、前述のように最も精細な解像度レベルになるまで繰り返しが実行される(ボックス255)。   The output of each iteration is a composite image whose pixels contain the sample pixel coordinates at the current resolution level (box 240). Here, a determination is made whether the current resolution level is the finest (and thus the last) resolution level (box 245). If the current resolution level is not the finest resolution level, another iteration is performed. In this case, the current resolution level becomes the previous resolution level. That is, the pixel coordinates synthesized at the current resolution level become the pixel coordinates synthesized at the previous resolution level (box 250). Here, as described above, the iteration is executed until the finest resolution level is reached (box 255).

現在の解像度レベルが最も精細な解像度レベルである場合は、合成されたピクセル座標が取得される(ボックス260)。このように合成されたピクセル座標は、それ以外のアプリケーションで処理することができ、または対応する非等長的合成テクスチャを生成することもできる。こうした非等長的合成テクスチャを生成するために、まず、見本をサンプリングすることによって、合成されたピクセル座標が合成された色に変換される(ボックス265)。最終的に、こうした変換のプロセスから、結果として非等長的合成テクスチャが出力される(ボックス270)。   If the current resolution level is the finest resolution level, the synthesized pixel coordinates are obtained (box 260). The pixel coordinates synthesized in this way can be processed by other applications or a corresponding non-isometric composite texture can be generated. To generate such an isometric composite texture, the synthesized pixel coordinates are first converted to a synthesized color by sampling a sample (box 265). Ultimately, such a conversion process results in a non-isometric composite texture being output (box 270).

III.動作の詳細
ここで、非等長的テクスチャ合成方法の詳細について説明する。図3は、図2に示す非等長的テクスチャ合成方法の特殊なケースについて、漸進的に解像度を高めた場合のインデックスマップが変遷する経過の例を示している。インデックスマップは合成テクスチャ座標のイメージであることに留意されたい。特に、図3はヤコビアンがどこでも2×2の恒等行列(identity 2×2 matrix)に等しいという非等長的テクスチャ合成の特殊なケースである。インデックスマップは、そのピクセル値に見本イメージドメインを参照する座標が含まれるイメージである。このような座標は、色として視覚化できる。たとえば、図3を参照すると、座標(0,0)は黒301として、座標(1,0)は赤302として、座標(0,1)は緑303として、座標(1,1)は黄色304として視覚化され、間はすべて色が補間される。インデックスマップは、色を使用して見本内のピクセルカラーの位置を示すピクセル位置のカラーマップである。さらに、図3は6つの解像度レベルを備える例示的な実装の解像度レベルを示している。長い矢印で示すように、解像度レベルが次第に高くなるにつれて次第に解像度が精細になっている。
III. Details of Operation Here, details of the non-isometric texture synthesis method will be described. FIG. 3 shows an example of the transition of the index map when the resolution is gradually increased in the special case of the non-isometric texture synthesis method shown in FIG. Note that the index map is an image of synthetic texture coordinates. In particular, FIG. 3 is a special case of non-isometric texture synthesis where the Jacobian is everywhere equal to a 2 × 2 identity 2 matrix. The index map is an image whose pixel values include coordinates that refer to the sample image domain. Such coordinates can be visualized as a color. For example, referring to FIG. 3, coordinates (0,0) are black 301, coordinates (1,0) are red 302, coordinates (0,1) are green 303, coordinates (1,1) are yellow 304 And colors are interpolated between them. An index map is a color map of pixel locations that uses color to indicate the location of the pixel color in the sample. In addition, FIG. 3 shows the resolution levels of an exemplary implementation with six resolution levels. As indicated by the long arrows, the resolution gradually becomes finer as the resolution level gradually increases.

図3に示すように、非等長的テクスチャ合成方法は、解像度レベルが0でのゼロを含むイメージ(真っ黒なイメージ)305を使用するステップで開始される。図2に示す繰り返しのプロセスが実行され、結果として得られる第1のインデックスマップ310は解像度レベル1である。インデックスマップ間の短い矢印のそれぞれは、図2に示す1回の繰り返しプロセスを示すことに留意されたい。たとえば、ゼロを含むイメージ305と第1のインデックスマップ310の間にある短い矢印315は、本非等長的テクスチャ合成方法の1回の繰り返しプロセスが実行されたことを示している。   As shown in FIG. 3, the non-isometric texture synthesis method starts with the step of using an image (black image) 305 containing zero with a resolution level of zero. The iterative process shown in FIG. 2 is performed and the resulting first index map 310 is at resolution level 1. Note that each short arrow between index maps represents a single iterative process shown in FIG. For example, a short arrow 315 between the image 305 containing zero and the first index map 310 indicates that one iteration process of the unequal length texture synthesis method has been performed.

漸進的に精細になる解像度レベルでこうした繰り返しのプロセスを繰り返すことによって、解像度レベルが高くなり、新しいインデックスマップが生成される。具体的には、レベル1で繰り返しが実行されてレベル2の第2のインデックスマップ320が生成され、レベル2で繰り返しが実行されてレベル3の第3のインデックスマップ325が生成され、さらにレベル3で繰り返しが実行されてレベル4の第4のインデックスマップ330が生成される。レベル5の第5のインデックスマップ335とレベル6の第6のインデックスマップ340も、同様にして生成される。   By repeating this iterative process at progressively finer resolution levels, the resolution level is increased and a new index map is generated. Specifically, the iteration is executed at level 1 to generate the second index map 320 at level 2, the iteration is executed at level 2 to generate the third index map 325 at level 3, and the level 3 Is repeated to generate a level 4 fourth index map 330. A fifth index map 335 at level 5 and a sixth index map 340 at level 6 are generated in the same manner.

図4は、図3に示すインデックスマップに対応するテクスチャイメージ(すなわち合成されたカラーイメージ)を示している。テクスチャイメージの色は、合成されたインデックスマップで指定される座標にある見本の色にアクセスすることによって取得される。第1のテクスチャイメージ400は、第1のインデックスマップ310に対応する。同様に、第2のテクスチャイメージ405は第2のインデックスマップ320に対応し、第3のテクスチャイメージ410は第3のインデックスマップ325に対応し、第4のテクスチャイメージ415は第4のインデックスマップ330に対応し、第5のテクスチャイメージ420は第5のインデックスマップ335に対応し、さらに第6のテクスチャイメージ425(すなわち最終的な合成テクスチャ)は第6のインデックスマップ340に対応する。   FIG. 4 shows a texture image (that is, a synthesized color image) corresponding to the index map shown in FIG. The color of the texture image is obtained by accessing the sample color at the coordinates specified in the synthesized index map. The first texture image 400 corresponds to the first index map 310. Similarly, the second texture image 405 corresponds to the second index map 320, the third texture image 410 corresponds to the third index map 325, and the fourth texture image 415 corresponds to the fourth index map 330. , The fifth texture image 420 corresponds to the fifth index map 335, and the sixth texture image 425 (ie, the final composite texture) corresponds to the sixth index map 340.

図5は、図2、3、および4に示す本非等長的テクスチャ合成プロセスの例を示すブロック図であり、多重解像度のアプローチの前回の解像度レベル(レベルl−1)から現在の解像度レベル(レベルl)に移行している。図5は、多重解像度のアプローチの各レベルで(および繰り返しごとに)実行される2つの主要なプロセスを示している。たとえば、図3を参照すると、図5は第1のインデックスマップ310から第2のインデックスマップ320に移行するときにどのような処理が実行されるかを示している。   FIG. 5 is a block diagram illustrating an example of the non-isometric texture synthesis process shown in FIGS. 2, 3, and 4, where the current resolution level from the previous resolution level (level 1-1) of the multi-resolution approach. (Level 1). FIG. 5 shows the two main processes that are performed at each level (and at each iteration) of the multi-resolution approach. For example, referring to FIG. 3, FIG. 5 illustrates what processing is performed when transitioning from the first index map 310 to the second index map 320.

第1のインデックスマップ500は数学的に項Sl-1で示されている。ただし、Sl-1は解像度レベルl−1(すなわち前回の解像度レベル)での合成座標出力である。見本510は数学的に項E[Sl-1]で示されている。ただし、E[Sl-1]は見本510を解像度レベルl−1での第1のインデックスマップ500の関数として示している。合成出力はインデックスであり、項E[Sl-1]は座標項Sが指定された場合に見本E内の色の参照を示している。このように、合成プロセスによってインデックスマップが生成され、これは色E[Sl-1]に対応する。換言すると、Sは合成インデックスマップであり、E[Sl-1]はこうしたインデックスに対応する色である。 The first index map 500 is mathematically indicated by the term S l-1 . However, S l-1 is a composite coordinate output at the resolution level l-1 (that is, the previous resolution level). The sample 510 is mathematically represented by the term E [S l-1 ]. However, E [S l−1 ] shows the sample 510 as a function of the first index map 500 at the resolution level l−1. The combined output is an index, and the term E [S l-1 ] indicates a color reference in the sample E when the coordinate term S is specified. Thus, an index map is generated by the synthesis process, which corresponds to the color E [S 1-1 ]. In other words, S is a composite index map, and E [S l-1 ] is a color corresponding to such an index.

図5に示すように、解像度レベルごとに、第1のインデックスマップ500で表されるピクセル座標がアップサンプリングされ、アップサンプリングされたピクセル座標を表す第2のインデックスマップ520が生成される。こうしたアップサンプリングによって、解像度レベルはレベルl−1(前回の解像度レベル)からレベルl(現在の解像度レベル)に変化する。次に、アップサンプリングされた座標が修正されて解像度レベルlの修正ピクセル座標を表す第3のインデックスマップ530が生成される。   As shown in FIG. 5, for each resolution level, the pixel coordinates represented by the first index map 500 are upsampled, and a second index map 520 representing the upsampled pixel coordinates is generated. By such up-sampling, the resolution level changes from level l-1 (previous resolution level) to level l (current resolution level). Next, the upsampled coordinates are modified to generate a third index map 530 representing the modified pixel coordinates at resolution level l.

インデックスマップに対応するテクスチャイメージも、図5に示されている。具体的には、第1のテクスチャマップ540は第2のインデックスマップ520に対応し、第2のテクスチャマップ550は第3のインデックスマップ530に対応する。インデックスマップは数学的に項Slで表されており、各テクスチャイメージは対応するインデックスマップの関数、すなわち項E[Sl-1]として表されている。 A texture image corresponding to the index map is also shown in FIG. Specifically, the first texture map 540 corresponds to the second index map 520, and the second texture map 550 corresponds to the third index map 530. The index map is mathematically represented by the term S l , and each texture image is represented as a function of the corresponding index map, ie the term E [S l−1 ].

非等長的合成の修正プロセス
ここでは、本非等長的テクスチャ合成方法についてより詳細に説明する。前述のように、ヤコビアンフィールドを使用すると、ヤコビアンフィールドJに従ってテクスチャのローカルな回転とスケーリングが可能になる。ヤコビアンフィールドは、本非等長的テクスチャ合成方法のアップサンプリングと修正の両方のプロセスを変更するために使用される。
Non-isometric synthesis correction process Here, the non-isometric synthesis method will be described in more detail. As described above, the use of a Jacobian field allows local rotation and scaling of the texture according to Jacobian field J. The Jacobian field is used to change both the upsampling and modification processes of the non-isometric texture synthesis method.

それ以外の技術で実行されるように様々にゆがめられた複数のバージョンによる見本テクスチャを定義する代わりに、本非等長的テクスチャ合成方法では、近傍をマッチングする前に、合成された近傍Nsに非等長的歪曲を適用する。換言すると、合成された近傍がヤコビアンフィールドに従って回転され、スケーリングされる。 Instead of defining sample textures with multiple versions that are variously distorted to be performed by other techniques, the present non-isometric texture synthesis method uses the synthesized neighborhood N s before matching neighborhoods. Apply non-isometric distortion to. In other words, the synthesized neighborhood is rotated and scaled according to the Jacobian field.

さらに、以下で説明するように、ピクセルの直接近傍のみが使用されることによって、テクスチャとメモリのコヒーレンシが向上する。基盤となる合成プロセスは、見本の色でなくピクセル座標に基づいている。つまり、合成されたテクスチャに直接色が含まれるのではなく、座標が含まれており、この座標のピクセルの色を見本からフェッチする必要がある。指定されたピクセルの直接近傍は、それぞれ見本内に座標が含まれる。個々の近傍は、現在のピクセルを置き換える候補の予測に使用される。近傍にアクセスする前に非等長的変換を適用する代わりに、非等長的テクスチャ合成のシステムおよび方法では直接近傍にアクセスし、後で変換を適用することによって、現在のピクセルを置き換える適切な候補を予測する。このように、直接近傍のみにアクセスするが、変換は修正プロセス実行中に同等に適用される。   Further, as will be described below, texture and memory coherency is improved by using only the immediate neighborhood of the pixels. The underlying compositing process is based on pixel coordinates rather than sample colors. That is, the color is not directly included in the synthesized texture, but the coordinate is included, and it is necessary to fetch the color of the pixel of this coordinate from the sample. Each direct neighborhood of the designated pixel contains coordinates in the sample. Individual neighbors are used to predict candidates that will replace the current pixel. Instead of applying non-isometric transformations prior to accessing the neighborhood, non-isometric texture synthesis systems and methods are suitable for replacing the current pixel by accessing the neighborhood directly and later applying the transformation. Predict candidates. In this way, only the immediate neighborhood is accessed, but the transformation is equally applied during the modification process.

目標は、ピクセルpが指定された場合に、pの周辺にテクスチャの近傍が構築され、ベストマッチング修正プロセスを使用してこれを見本のそれ以外の近傍と比較することである。直接近傍は、方向コンポーネントを使用することによって取得される。直接近傍の合成座標が取得されると、オフセットが適用され、ピクセル自体の合成座標であると本方法で予測する座標が取得される。   The goal is that if a pixel p is specified, a texture neighborhood is built around p and compared to the other neighborhoods in the sample using a best matching modification process. The direct neighborhood is obtained by using the directional component. When synthetic coordinates in the immediate vicinity are obtained, an offset is applied, and coordinates predicted by the present method are obtained as synthetic coordinates for the pixels themselves.

非等長的テクスチャ合成では、近傍に関してすべての方向でループ処理を実行し、こうした位置の合成座標を取得し、さらに見本の色を参照するだけで、こうした近傍が構築される。このことによって、ピクセルpの近傍が構成される。現在の非等長的アプローチでは、ヤコビアン逆行列を考慮することによって近傍のアクセスを変更する。この方法では、回転とスケーリングによってアクセスが引き延ばされるため、前述のいくつかの欠点がある。   In non-isometric texture synthesis, such neighborhoods are constructed by simply looping in all directions with respect to the neighborhood, obtaining the resultant coordinates for these locations, and then only referring to the sample color. This constitutes the neighborhood of pixel p. Current non-isometric approaches change neighborhood access by considering the Jacobian inverse. This method has some of the disadvantages described above because access is extended by rotation and scaling.

本明細書で開示する非等長的テクスチャ合成方法は、ピクセルpの直接近傍にのみアクセスする。ただし、直接近傍は方向コンポーネントを使用して取得される。したがって、本方法ではpの8つの直接近傍の1つ(ただし、選択した方向で最も近いもの)に移動する。本方法では、遠く離れた非ローカルな位置(ピクセルpに対して非ローカル)へのジャンプは許可されていない。直接近傍で合成座標が取得されると、オフセットが適用され、合成座標がp自体のものであると本方法で予測するものが取得される。このオフセットは、非等長的ゆがみを説明するためにヤコビアンによって変換される。   The non-isometric texture synthesis method disclosed herein accesses only the immediate neighborhood of pixel p. However, the direct neighborhood is obtained using the direction component. Therefore, the method moves to one of the eight immediate neighbors of p (but the closest in the selected direction). In this method, jumps to distant non-local locations (non-local with respect to pixel p) are not allowed. When the composite coordinates are obtained in the immediate vicinity, an offset is applied, and what is predicted by this method that the composite coordinates are of p itself is obtained. This offset is transformed by the Jacobian to account for unequal length distortion.

数学的には、非等長的テクスチャ合成方法では歪曲された合成近傍が次のように定義される。
E[S[p+φ(hat)]−J(p)φ(hat)+Δ] (1)
ただし、
φ(hat)=φ/norm(φ) (2)
および、φ=J-1(p)Δ
である。
Mathematically, in the non-isometric texture synthesis method, a distorted synthesis neighborhood is defined as follows.
E [S [p + φ (hat)] − J (p) φ (hat) + Δ] (1)
However,
φ (hat) = φ / norm (φ) (2)
And φ = J −1 (p) Δ
It is.

直接近傍は、見本空間の近傍オフセットによって指定される。これは、式(1)ではΔである。さらに、φは合成空間のヤコビアン逆行列で変換された近傍のオフセットである。非等長的テクスチャ合成方法では、非ローカルピクセルを使用する代わりに、ベクトルの方向に注目し、ベクトルを正規化距離1に正規化する。ここで、本方法は3×3近傍内で8つの直接近傍のどれが本方法で調べようとする方向であるかを決定する。式(1)の項S[p+φ(hat)]はこの近傍であり、項φ(hat)はヤコビアンによって変換された近傍の位置の方向コンポーネントである。これで、アクセスする8つの近傍のどれかの位置が得られる。   The direct neighborhood is specified by the neighborhood offset of the sample space. This is Δ in equation (1). Furthermore, φ is the offset of the neighborhood transformed by the Jacobian inverse matrix of the composite space. In the non-isometric texture synthesis method, instead of using non-local pixels, attention is paid to the direction of the vector, and the vector is normalized to the normalized distance 1. Here, the method determines which of the 8 direct neighbors within the 3 × 3 neighborhood is the direction to be examined by the method. The term S [p + φ (hat)] in equation (1) is this neighborhood, and the term φ (hat) is the directional component of the neighborhood position transformed by the Jacobian. This gives the location of any of the eight neighbors to access.

次に、合成されたテクスチャはサンプリングすることが望ましい方向の直接近傍でアクセスされる。式(1)の次の項はJ(p)φ(hat)である。この項は、特定のピクセルでのヤコビアンにヤコビアンで変換された近傍の位置の方向コンポーネントを乗じたものである。pの直接近傍から取得した合成テクスチャ座標からこの項を減じると、p自体の合成座標の予測が得られる。最後に、式(1)で見本空間の近傍オフセットΔを加えることによって、pの見本空間の近傍オフセットΔでの合成座標が予測される。   The synthesized texture is then accessed in the immediate vicinity of the direction it is desired to sample. The next term in equation (1) is J (p) φ (hat). This term is the Jacobian at a particular pixel multiplied by the directional component of the nearby position transformed by the Jacobian. If this term is subtracted from the synthesized texture coordinates obtained from the immediate neighborhood of p, a prediction of the synthesized coordinates of p itself is obtained. Finally, by adding the neighborhood offset Δ of the sample space in the equation (1), the composite coordinates at the neighborhood offset Δ of the sample space of p are predicted.

直接近傍の合成座標S[p+φ(hat)]がアクセスされる。こうした座標からJ(p)φ(hat)を減じることによって、点pでの合成座標を予測する。さらに、こうした直接近傍を使用してpでの合成座標が予測されると、この合成座標に見本空間のオフセット、デルタ(Δ)を加えることによって修正近傍座標が予測される。   Directly adjacent composite coordinates S [p + φ (hat)] are accessed. The composite coordinates at the point p are predicted by subtracting J (p) φ (hat) from these coordinates. Further, when the composite coordinates at p are predicted using such direct neighbors, the corrected neighbor coordinates are predicted by adding the sample space offset, delta (Δ), to the composite coordinates.

デルタ(Δ)は近傍オフセットを表している。いくつかの実施形態では近傍は5×5の近傍であり、一方で他の実施形態では近傍は3×3の近傍であり、場合によっては点pの周辺の直交する4つの点である。例として、3×3の近傍の場合は、Δ=(−1,−1),(−1,0),(−1,1),(0,−1),(0,0),(0,1),(1,−1),(1,0),(1,1)である。別の例として、直交する4つの点で構成される近傍は、Δ=(1,−1)(−1,1)(−1,−1)(1,1)で構成される。   Delta (Δ) represents the neighborhood offset. In some embodiments, the neighborhood is a 5 × 5 neighborhood, while in other embodiments the neighborhood is a 3 × 3 neighborhood, and in some cases, four orthogonal points around the point p. For example, in the case of a 3 × 3 neighborhood, Δ = (− 1, −1), (−1,0), (−1,1), (0, −1), (0,0), ( 0, 1), (1, -1), (1, 0), (1, 1). As another example, a neighborhood composed of four orthogonal points is composed of Δ = (1, −1) (−1, 1) (−1, −1) (1, 1).

本非等長的テクスチャ合成方法では、p+Δの座標が予測される。4ピクセルの近傍は、Δ=(1,−1)(−1,1)(−1,−1)(1,1)で構成される。重要な概念は、見本空間でpの候補が取得されると、任意のオフセット、デルタ(Δ)を適用することによって、見本空間の別の位置での候補が得られることである。このようにして、見本空間内の4つの候補、すなわちデルタ(Δ)ごとに1つの候補が得られる。   In this non-isometric texture synthesis method, the coordinates of p + Δ are predicted. The neighborhood of 4 pixels is constituted by Δ = (1, −1) (−1, 1) (−1, −1) (1, 1). An important concept is that once a candidate for p is obtained in the sample space, a candidate at another location in the sample space is obtained by applying an arbitrary offset, delta (Δ). In this way, four candidates in the sample space, ie one candidate for every delta (Δ), are obtained.

さらに、デルタ(Δ)ごとに特定の数のピクセルの値が平均され、p+Δにおける外観のより優れた予測が得られる。これで、デルタ(Δ)のごとの特定数のピクセルの貢献(contribution)を平均することによって、近傍の品質が向上する。いくつかの実施形態では、ピクセルの数は3に等しい。他の実施形態では、ピクセルの数は3に等しくても、3より多くても少なくてもよい。   In addition, the value of a specific number of pixels per delta (Δ) is averaged, resulting in a better prediction of the appearance at p + Δ. This improves the quality of the neighborhood by averaging the contribution of a specific number of pixels per delta (Δ). In some embodiments, the number of pixels is equal to three. In other embodiments, the number of pixels may be equal to 3, more or less than 3.

非等長的合成のアップサンプリングプロセス
本非等長的テクスチャ合成方法のアップサンプリングプロセスも、ヤコビアンフィールドを使用して変更される。これで、粗い合成から精細な合成へと移行する間に、非等長的に説明するように個々のアップサンプリングパスを変更することによって、テクスチャコヒーレンシが維持される。個々の子ピクセルは親の合成座標を継承しており、ヤコビアンによるオフセットはヤコビアンと子の相対的な位置を乗じた値である。この概念は数学的に次の式で表される。
l[p]:=Sl-1[p−Δ]+J(p)Δ,Δ=(±1/2 ±1/2)T (3)
Up-sampling process for non-isometric synthesis The up-sampling process of this non-isometric texture synthesis method is also modified using a Jacobian field. Thus, during the transition from coarse synthesis to fine synthesis, texture coherency is maintained by changing the individual upsampling paths as described unequal. Each child pixel inherits the parent's composite coordinates, and the Jacobian offset is a value obtained by multiplying the relative position of the Jacobian and the child. This concept is mathematically expressed by the following formula.
S l [p]: = S l−1 [p−Δ] + J (p) Δ, Δ = (± 1/2 ± 1/2) T (3)

式(3)は、pの合成Sl(すなわち子の合成座標)は、親に関する子の相対的な位置(Δ)をヤコビアンで変換した値を親の合成座標に加えたものに等しいことを示している(ただし、Sl-1は親を表す)。2DベクトルΔの各座標は+1/2または−1/2であり、これは親ごとに2つの子を持つようなピラミッド構造があることを意味する。このように、個々の子の親に対する相対的な位置は、各座標に関して+1/2または−1/2である。 Equation (3) shows that the composite S l of p (ie, the child's composite coordinates) is equal to the parent's composite coordinates plus the Jacobian transformed relative position (Δ) of the child with respect to the parent. (Where S l-1 represents a parent). Each coordinate of the 2D vector Δ is + ½ or −½, which means that there is a pyramid structure with two children per parent. Thus, the relative position of each child relative to its parent is +1/2 or -1/2 for each coordinate.

図6は、本明細書で開示された非等長的テクスチャ合成の第1の結果の例を示している。具体的には、非等長的合成テクスチャ600は、非等長的テクスチャ合成プロセスと見本610を使用して生成される。不均一な(一定でない)ヤコビアンフィールドが非等長的合成テクスチャ600全体に渡って指定されている。これは、非等長的合成テクスチャ600の中心で卵が大きくなっていく様子、また端で小さくなっていく様子に注目することによって理解できる。   FIG. 6 shows an example of a first result of the non-isometric texture synthesis disclosed herein. Specifically, the unequal length composite texture 600 is generated using the unequal length texture synthesis process and a sample 610. A non-uniform (non-constant) Jacobian field is specified throughout the non-isometric composite texture 600. This can be understood by paying attention to how the egg grows at the center of the non-isometric composite texture 600 and how it becomes smaller at the edge.

図7は、本明細書で開示された非等長的テクスチャ合成プロセスの第2の結果の例を示している。非等長的合成テクスチャ700は、非等長的テクスチャ合成プロセスと見本710を使用して生成される。この場合も、一定でないヤコビアンフィールドが合成テクスチャ700全体に渡って指定されている。これは、見本710内でシマウマの縞が真っ直ぐで垂直に近い様子、また、非等長的合成テクスチャ700内で変形され、回転されている様子に注目することによって理解できる。   FIG. 7 illustrates an example of a second result of the non-isometric texture synthesis process disclosed herein. The non-isometric composite texture 700 is generated using a non-isometric texture synthesis process and a sample 710. Also in this case, a non-constant Jacobian field is designated over the entire synthetic texture 700. This can be understood by paying attention to how the zebra stripes are straight and nearly vertical in the sample 710 and are deformed and rotated in the non-isometric composite texture 700.

サーフェステクスチャの合成
非等長的テクスチャ合成の1つの重要なアプリケーションは、サーフェステクスチャの生成である。ここで、非等長的テクスチャ合成方法に関するこうしたアプリケーションに固有のさまざまな改善や機能強化に関連付けながら、こうしたアプリケーションについて説明する。
Surface Texture Synthesis One important application of non-isometric texture synthesis is the generation of surface textures. Such applications will now be described in connection with various improvements and enhancements specific to such applications for non-isometric texture synthesis methods.

ヤコビアンフィールドは、合成テクスチャをどう変形するかを指定する。サーフェスのケースでは、テクスチャがサーフェス上に表示される場合に、適正に見えるようにテクスチャを変形することが望まれる。図8は、サーフェステクスチャアプリケーションに使用するヤコビアンフィールドの導関数を示している。一般に、サーフェスはパラメータ化によって説明される。サーフェスMはパラメータドメイン(parametric domain)Dでパラメータ化され、2−Dにどう平面化すべきかを示す座標がサーフェス上にあることを意味する。これはテクスチャマッピングのプロセスであり、サーフェス上のすべての三角形について、イメージの一部がテクスチャドメインから取得される。サーフェス上のすべての点について、パラメータ化のヤコビアンフィールドを決定できる。これは、パラメータドメインがサーフェスにどうマップされるかを示している。サーフェスジオメトリは複雑になる可能性があるので、サーフェスは910に示すように複数のチャートにパラメータ化されるのが一般的である。換言すると、サーフェスは複数のチャートに分割され、こうしたチャートのそれぞれはテクスチャドメインに個々にマップされる。   The Jacobian field specifies how to deform the composite texture. In the surface case, it is desirable to deform the texture so that it looks correct when the texture is displayed on the surface. FIG. 8 shows the derivative of the Jacobian field used for the surface texture application. In general, a surface is described by parameterization. The surface M is parameterized in the parameter domain D, meaning that there are coordinates on the surface that indicate how 2-D should be planarized. This is a texture mapping process, where for every triangle on the surface, a portion of the image is taken from the texture domain. A parameterized Jacobian field can be determined for every point on the surface. This shows how the parameter domain is mapped to the surface. Since surface geometry can be complex, it is common for a surface to be parameterized into multiple charts as shown at 910. In other words, the surface is divided into a plurality of charts, each of which is individually mapped to a texture domain.

図8からわかるように、必要となるもう1つの入力はテクスチャの向きである。この入力は、ユーザーが指定することも自動的に実行することもできる。ユーザーが指定する場合は、ユーザーはユーザーインターフェイスを使用してサーフェス上に向きを描くように要求される。図8に示すように、これは結局のところ、サーフェス上の各点でベクトルt(接線ベクトル(tangent vector))とb(法線ベクトル(binormal vector))を指定することになる。さまざまなタイプのユーザーインターフェイスを使用してこのタスクを実行できる。   As can be seen from FIG. 8, another input required is the texture orientation. This input can be specified by the user or performed automatically. If specified by the user, the user is required to draw an orientation on the surface using the user interface. As shown in FIG. 8, this ultimately results in specifying vectors t (tangent vector) and b (normal vector) at each point on the surface. You can perform this task using various types of user interfaces.

図8に示す項b(チルデ)800とt(チルデ)810は、ベクトルtとbのパラメータ化による「プレイメージ(pre−images)」と呼ばれる。入力はtとbであり(ユーザー指定の場合も自動の場合も)、b(チルデ)800とt(チルデ)810は、こうしたベクトルtとbのパラメータドメインへのマップを指定するプレイメージである。サーフェステクスチャ合成時に使用する最後のヤコビアンは、b(チルデ)800とt(チルデ)810を見本Eの標準の軸   The terms b (tilde) 800 and t (tilde) 810 shown in FIG. 8 are called “pre-images” by parameterizing the vectors t and b. Inputs are t and b (whether user specified or automatic), and b (tilde) 800 and t (tilde) 810 are pre-images that specify the mapping of these vectors t and b to the parameter domain. . The last Jacobian used for surface texture synthesis is the standard axis of sample E for b (tilde) 800 and t (tilde) 810.

Figure 0005149288
Figure 0005149288

820と 820 and

Figure 0005149288
Figure 0005149288

830にマップするヤコビアンである。このように、サーフェスが指定された場合に、各点の2つベクトルtとbはユーザーインターフェイスを使用して、または自動的に指定される。次に、tとbを使用して合成イメージのヤコビアンフィールドが計算される。これは、前述の非等長的テクスチャ合成方法の入力として使用される。 Jacobian to map to 830. Thus, when a surface is specified, the two vectors t and b for each point are specified using the user interface or automatically. Next, the Jacobian field of the composite image is calculated using t and b. This is used as an input for the above-mentioned non-isometric texture synthesis method.

数学的に、目標はサーフェスベクトルtとbが見本の標準の軸   Mathematically, the goal is a standard axis with sample surface vectors t and b

Figure 0005149288
Figure 0005149288

820と 820 and

Figure 0005149288
Figure 0005149288

830を使用してローカルに識別されるパラメータドメイン内で非等長的テクスチャ合成を行うことである。もう一度図8を参照すると、(t b)=Jf-1Iが示されている。ただし、Jfはサーフェスパラメータ化f:D→Mの3×2のヤコビアンであり、Jは合成マップS:D→Eの望ましい2×2のヤコビアンである。したがって、Jは次の式で検出される。
J=(t b)+f=((t b)T(t b))-1(t b)Tf (4)
ただし、“+”は擬似逆行列(matrix pseudoinverse)を表す。(t b)が直交する場合は(t b)+=(t b)Tである。パラメータ化は区分線形(piecewise linear)であるため、Jfは個々の三角形内で区分的に一定である。これに対して、接空間(t b)はピクセルごとに変化する。
Using 830 to perform non-isometric texture synthesis within a locally identified parameter domain. Referring once again to FIG. 8, (t b) = J f J −1 I is shown. Where J f is the 3 × 2 Jacobian of the surface parameterization f: D → M, and J is the desired 2 × 2 Jacobian of the composite map S: D → E. Therefore, J is detected by the following equation.
J = (t b) + J f = ((t b) T (t b)) -1 (t b) T J f (4)
However, “+” represents a pseudo inverse matrix. When (t b) is orthogonal, (t b) + = (t b) T. Since the parameterization is piecewise linear, J f is piecewise constant within each triangle. On the other hand, the tangent space (tb) changes for each pixel.

図9は、本非等長的テクスチャ合成方法を使用してサーフェステクスチャ合成を実行した結果の例を示している。具体的には、見本900は本非等長的テクスチャ合成への入力として使用され、非等長的合成テクスチャ910が生成される。前述のサーフェステクスチャ合成プロセスと後述の無方向マップを使用して非等長的サーフェステクスチャ920が生成される。   FIG. 9 shows an example of the result of performing surface texture synthesis using this non-isometric texture synthesis method. Specifically, the sample 900 is used as an input to the non-isometric texture synthesis, and an unequal-length synthetic texture 910 is generated. An isometric surface texture 920 is generated using the surface texture synthesis process described above and the non-directional map described below.

無方向マップ
現在の技術では、通常は不規則メッシュの頂点で色を合成することによって、サーフェス上のテクスチャを合成する。これに対して、本非等長的テクスチャ合成方法では、テクスチャアトラスパラメータ化のパラメータテクスチャドメイン内で直接テクスチャを合成する。サーフェステクスチャのパラメータ化されたチャートの不連続なアトラス上でシームレスなテクスチャを構成するために、チャート境界に近いピクセルの合成近傍には、それ以外のチャートのサンプルを含める必要がある。このように、非等長的テクスチャ合成の方法では、無方向ポインタを使用することによって、1つのアトラスチャート境界から別のテクスチャアトラスチャートにジャンプする機能が提供される。さらに、本方法には、チャートが連続的であることを確認する追加のステップが含まれる。これは、無方向マップを使用して実現される。
Undirected maps Current technology synthesizes textures on surfaces, usually by combining colors at the vertices of an irregular mesh. On the other hand, in this non-isometric texture synthesis method, the texture is directly synthesized in the parameter texture domain of the texture atlas parameterization. In order to construct a seamless texture on the discontinuous atlas of the parameterized chart of the surface texture, it is necessary to include other chart samples near the composite of pixels near the chart boundary. Thus, the non-isometric texture synthesis method provides a function of jumping from one atlas chart boundary to another texture atlas chart by using a non-directional pointer. In addition, the method includes an additional step of confirming that the chart is continuous. This is achieved using a non-directional map.

各チャートの境界の外部にあるピクセルの小規模なセットについて、無方向ポインタを使用して別のチャートの内部にある他のピクセルをポイントする。各チャートの周辺には小さな追加のスペース(すなわちガター)があり、こうした無方向ポインタに従って色を取得できる。   For a small set of pixels that are outside the boundaries of each chart, use a non-directional pointer to point to other pixels that are inside another chart. There is a small additional space (ie gutter) around each chart, and colors can be obtained according to these non-directional pointers.

無方向ポインタは、非等長的修正スキームが固定された範囲(fixed extent)の近傍にアクセスする機能を利用する。それぞれのアクセスS[p]をS[l[p]]で置き換えることによって、レベルごとの無方向マップlを使用してチャート全体からサンプルが読み出される。こうした無方向マップは、サーフェスのパラメータ化のみに依存しており、チャートの境界全体を移動することによって事前に計算される。アトラス構築時に、各チャートの周辺に必要な2ピクセル幅の無方向ポインタのスペースが予約される。   Non-directional pointers use the ability to access the vicinity of a fixed extent with a fixed isometric modification scheme. By replacing each access S [p] with S [l [p]], samples are read from the entire chart using the directional map l for each level. These non-directional maps rely only on surface parameterization and are pre-computed by moving across the chart boundaries. At the time of constructing the atlas, a space for a non-directional pointer having a width of 2 pixels necessary for each chart is reserved.

図10は、レベル1〜6の多重解像度合成ピラミッド1000(第1のレベル1010、第2のレベル1020、第3のレベル1030、第4のレベル1040、第5のレベル1050、および第6のレベル1060を備える)を示している。図10に示すように、すべての解像度レベルで同じアトラスパラメータ化を使用するため、ピラミッドの最も精細なレベルでは無方向ポインタ用に追加のガタースペースが予約される。具体的には、図10に示すように、レベル4〜6(1040、1050、1060)では無方向ポインタ用にイメージの周辺のガタースペースが次第に増加している。   FIG. 10 illustrates a level 1-6 multi-resolution synthesis pyramid 1000 (first level 1010, second level 1020, third level 1030, fourth level 1040, fifth level 1050, and sixth level. 1060). As shown in FIG. 10, because the same atlas parameterization is used at all resolution levels, additional gutter space is reserved for non-directional pointers at the finest level of the pyramid. Specifically, as shown in FIG. 10, at levels 4 to 6 (1040, 1050, 1060), the gutter space around the image is gradually increased for non-directional pointers.

非等長的合成拡大
アトラス内でテクスチャを合成する上での1つの難題は、多くの場合、何らかのパラメータ化のゆがみが不可避であり、アンダーサンプリング領域が発生することである。こうした不均一なサンプリングを隠す1つの方法は、合成拡大スキームを使用することである。合成拡大では、合成座標を使用して同じ見本の高解像度バージョンにアクセスする。
Non-isometric synthesis expansion One challenge in synthesizing textures within an atlas is that some parameterization distortion is often inevitable and undersampling regions occur. One way to hide such non-uniform sampling is to use a synthetic magnification scheme. Composite enlargement uses composite coordinates to access a high resolution version of the same sample.

少なくとも1つの現在の合成拡大スキームの背後にある主要な概念は、合成座標Sを使用してより高解像度の見本EHにアクセスすることである。具体的には、連続的な座標pのピクセル値は、次のように4つの最も近い合成ピクセルの組合せによって取得される。 The main concept behind at least one current composite magnification scheme is to use the composite coordinates S to access a higher resolution sample E H. Specifically, the pixel value of the continuous coordinate p is obtained by the combination of the four closest synthesized pixels as follows.

Figure 0005149288
Figure 0005149288

ただし、w(Δ)=|Δx|・|Δy|はバイリニア補間(bilinear interpolation)の重みである。サーフェステクスチャ合成では、目的は必ずしもより高解像度の見本EHに拡大することではなく、アンダーサンプリング領域で失われる細部を復元することである。 However, w (Δ) = | Δ x | · | Δ y | is the weight of bilinear interpolation (bilinear interpolation). In surface texture synthesis, the goal is not necessarily to scale to a higher resolution sample E H , but to restore details lost in the undersampling region.

本非等長的テクスチャ合成方法は、前述の合成拡大スキームを変更することによって非等長的に明らかにする。換言すると、ヤコビアンが導入され、使用されることによって、前述の合成拡大スキームにおける拡大のステップを変更する。これは、次の式で表されるヤコビアンマップにアクセスすることによって実現する   This unequal length texture synthesis method is made unequal by changing the synthesis expansion scheme described above. In other words, the Jacobian is introduced and used to change the expansion step in the synthetic expansion scheme described above. This is achieved by accessing the Jacobian map represented by

Figure 0005149288
Figure 0005149288

非等長的合成拡大は、レンダリング実行時にサーフェスシェーダ(surface shader)で実行でき、これによって若干コストが増大する。 Non-isometric synthesis expansion can be performed with a surface shader when rendering is performed, which adds some cost.

図11は、本非等長的合成拡大の例を示している。図11に示すように、テクスチャサーフェスは馬の形1100をしている。ヤコビアン情報を含む合成拡大を使用すると、テクスチャサーフェス1100の一部1110が拡大される。中央のイメージ1120には、一部1110が合成拡大なしで表示されている。右のイメージ1130には、一部1110に合成拡大を適用したものが表示されている。   FIG. 11 shows an example of this non-isometric synthesis expansion. As shown in FIG. 11, the textured surface has a horse shape 1100. When using synthetic magnification including Jacobian information, a portion 1110 of the texture surface 1100 is magnified. In the central image 1120, a part 1110 is displayed without the composition enlargement. In the image 1130 on the right, an image obtained by applying composite enlargement to a part 1110 is displayed.

IV.例示的な動作環境
本非等長的テクスチャ合成のシステムおよび方法は、コンピューティング環境で動作するように設計されている。以下の記述は、本非等長的テクスチャ合成のシステムおよび方法を実装できる適切なコンピューティング環境を簡単かつ一般的に説明することを目的としている。
IV. Exemplary Operating Environment The present isometric texture synthesis system and method are designed to operate in a computing environment. The following description is intended to provide a simple and general description of a suitable computing environment in which the present isometric texture synthesis system and method may be implemented.

図12は、本非等長的テクスチャ合成のシステムおよび方法を実装できる適切なコンピューティングシステム環境の例を示している。コンピューティングシステム環境1200は適切なコンピューティング環境の1つの例にすぎず、本発明の使用または機能の範囲に関するいかなる制限を示すものでもない。また、コンピューティング環境1200は、例示的な動作環境に示すコンポーネントの任意の1つまたは組合せに関して、いかなる依存性も要件もないと解釈されるものとする。   FIG. 12 illustrates an example of a suitable computing system environment in which the present isometric texture synthesis system and method may be implemented. The computing system environment 1200 is only one example of a suitable computing environment and is not intended to indicate any limitation as to the scope of use or functionality of the invention. Neither should the computing environment 1200 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the exemplary operating environment.

本非等長的テクスチャ合成のシステムおよび方法は、それ以外のさまざまな汎用または専用のコンピューティングシステム環境または構成にも適用できる。本非等長的テクスチャ合成のシステムおよび方法と使用するのに適した周知のコンピューティングシステム、環境、および/または構成の例には、パーソナルコンピュータ、サーバーコンピュータ、ハンドヘルド、ラップトップもしくはモバイルコンピュータ、または携帯電話やPDAなどの通信デバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家庭用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、前述の任意のシステムまたはデバイスを含む分散コンピューティング環境などが含まれるが、これらに限定はされない。   The non-isometric texture synthesis system and method can be applied to a variety of other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments and / or configurations suitable for use with the present non-isometric texture synthesis system and method include personal computers, server computers, handhelds, laptops or mobile computers, or Includes communication devices such as mobile phones and PDAs, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, any of the aforementioned systems or devices Examples include, but are not limited to, distributed computing environments.

本非等長的テクスチャ合成のシステムおよび方法は、プログラムモジュールなどのコンピュータで実行可能な命令をコンピュータで実行する一般的なコンテクストで説明できる。一般に、プログラムモジュールには、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造体などがあり、特定のタスクを実行するものや、特定の抽象データ型を実装するものが含まれる。本非等長的テクスチャ合成のシステムおよび方法は、通信ネットワークを介してリンクするリモート処理装置でタスクを実行する分散コンピューティング環境でも実施できる。分散コンピューティング環境では、メモリ記憶装置を含むローカルとリモートの両方のコンピュータ記憶媒体にプログラムモジュールを格納できる。図12を参照すると、本非等長的テクスチャ合成のシステムおよび方法を実施する例示的なシステムには、コンピュータ1210の形で汎用のコンピューティングデバイスが配置されている。   The system and method for non-isometric texture synthesis can be described in the general context of computer-executable instructions such as program modules. Generally, program modules include routines, programs, objects, components, data structures, and the like, including those that perform specific tasks and those that implement specific abstract data types. The non-isometric texture synthesis system and method may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be stored in both local and remote computer storage media including memory storage devices. With reference to FIG. 12, an exemplary system for implementing the present isometric texture synthesis system and method includes a general-purpose computing device in the form of a computer 1210.

コンピュータ1210のコンポーネントには、処理装置1220(たとえば、中央処理装置CPU:central processing unit)、システムメモリ1230、およびシステムメモリを含むさまざまなシステムコンポーネントを処理装置1220に接続するシステムバス1221が含めることができるが、それらに限定はされない。システムバス1221は、さまざまなバスアーキテクチャのいずれかを使用したメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含む各種バス構造のいずれでもよい。こうしたアーキテクチャには、例として、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、EISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカルバス、およびPCI(Peripheral Component Interconnect)バス(メザニン(Mezzanine)バスとも呼ばれる)が含まれるが、これらに限定はされない。   The components of the computer 1210 may include a processing unit 1220 (eg, a central processing unit CPU), a system memory 1230, and a system bus 1221 that connects various system components including the system memory to the processing unit 1220. Yes, but not limited to them. The system bus 1221 may be any of various bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. These architectures include, for example, the ISA (Industry Standard Architecture) bus, the MCA (Micro Channel Architecture) bus, the EISA (Enhanced ISA) bus (VEC), and the VESA (Video Electronics Standard bus). A mezzanine bath), but is not limited thereto.

コンピュータ1210は、通常はさまざまなコンピュータ可読媒体を備えている。コンピュータ可読媒体は、コンピュータ1210からアクセスできる任意の使用可能な媒体でよい。また、揮発性と不揮発性の両方、および取り外し可能と不可能の両方の媒体が含まれる。例として、コンピュータ可読媒体にはコンピュータ記憶媒体および通信媒体を含めてもよいが、これらに限定はされない。コンピュータ記憶媒体には、コンピュータ可読の命令、データ構造、プログラムモジュール、またはそれ以外のデータなどの情報を記憶する任意の方法または技術で組み込まれた、揮発性と不揮発性、および取り外し可能と不可能の媒体が含まれる。   Computer 1210 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 1210. Also included are both volatile and non-volatile media and both removable and non-removable media. By way of example, computer readable media may include, but is not limited to, computer storage media and communication media. Computer storage media is volatile and non-volatile, and removable and non-removable, incorporated in any method or technique for storing information such as computer-readable instructions, data structures, program modules, or other data Media.

コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリまたはそれ以外のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD:digital versatile disk)またはそれ以外の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスクまたはそれ以外の磁気記憶装置、あるいは必要な情報を格納でき、コンピュータ1210からアクセスできるそれ以外の任意の媒体が含まれるが、これらに限定はされない。通信媒体は、通常、搬送波やそれ以外の搬送メカニズムなどの変調データ信号に含まれるコンピュータ可読の命令、データ構造、プログラムモジュール、またはそれ以外のデータなどを具体化したものであり、任意の情報伝達媒体を含んでいる。   Computer storage media include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassette, magnetic tape, This includes, but is not limited to, a magnetic disk or other magnetic storage device, or any other medium that can store the necessary information and that is accessible from computer 1210. A communication medium embodies computer-readable instructions, data structures, program modules, or other data typically included in a modulated data signal, such as a carrier wave or other transport mechanism, and provides any information transmission. Contains media.

「変調データ信号」という用語は、信号に含まれる情報を符号化するように1つまたは複数の特性を設定または変更された信号を意味することに留意されたい。通信媒体には、例として、有線ネットワーク、直接ワイヤ接続などの有線媒体と、音、RF、赤外線などの無線媒体が含まれるが、これらに限定はされない。上記の任意の組合せも、コンピュータ可読媒体の範囲内に含まれるものとする。   It should be noted that the term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. Examples of communication media include, but are not limited to, wired media such as a wired network and direct wire connection, and wireless media such as sound, RF, and infrared. Any combination of the above should also be included within the scope of computer-readable media.

システムメモリ1230には、読み取り専用メモリ(ROM:read only memory)1231やランダムアクセスメモリ(RAM:random access memory)1232などの揮発性および/または不揮発性メモリという形をとるコンピュータ記憶媒体が含まれる。起動時などにコンピュータ1210の構成要素間の情報転送を支援する基本ルーチンを含む基本入出力システム1233(BIOS:basic input/output system)は、通常はROM 1231に格納されている。RAM 1232には、通常は処理装置1220から直ちにアクセスできる、かつ/または処理装置1220で現在動作しているデータおよび/またはプログラムモジュールが格納されている。例として、図12にはオペレーティングシステム1234、アプリケーションプログラム1235、それ以外のプログラムモジュール1236、およびプログラムデータ1237が示されているが、これらに限定はされない。   The system memory 1230 includes computer storage media in the form of volatile and / or nonvolatile memory such as read only memory (ROM) 1231 and random access memory (RAM) 1232. A basic input / output system 1233 (BIOS: basic input / output system) including a basic routine for supporting information transfer between components of the computer 1210 at the time of startup or the like is normally stored in the ROM 1231. The RAM 1232 stores data and / or program modules that are normally accessible immediately from the processing unit 1220 and / or that are currently operating on the processing unit 1220. As an example, FIG. 12 shows an operating system 1234, an application program 1235, other program modules 1236, and program data 1237, but is not limited thereto.

コンピュータ1210には、さらにそれ以外の取り外し可能/不可能、揮発性/不揮発性のコンピュータ記憶媒体を含めてもよい。図12には、単に例として、取り外し不可能な不揮発性の磁気媒体の読み出しまたは書き込みを行うハードディスクドライブ1241、取り外し可能な不揮発性の磁気ディスク1252の読み出しまたは書き込みを行う磁気ディスクドライブ1251、CD ROMまたはそれ以外の光媒体などの取り外し可能な不揮発性の光ディスク1256の読み出しまたは書き込みを行う光ディスクドライブ1255を示している。   The computer 1210 may further include other removable / non-removable, volatile / nonvolatile computer storage media. FIG. 12 shows, by way of example only, a hard disk drive 1241 that reads or writes a non-removable non-volatile magnetic medium, a magnetic disk drive 1251 that reads or writes a removable non-volatile magnetic disk 1252, and a CD ROM. In addition, an optical disk drive 1255 for reading from or writing to a removable non-volatile optical disk 1256 such as an optical medium is shown.

例示的なオペレーティング環境で使用できる上記以外の取り外し可能/取り外し不可能、揮発性/不揮発性のコンピュータ記憶媒体には、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROMなどが含まれるが、これらに限定はされない。ハードディスクドライブ1241は、通常はインターフェイス1240などの取り外し不可能なメモリインターフェイスを介してシステムバス1221に接続し、磁気ディスクドライブ1251と光ディスクドライブ1255は、通常はインターフェイス1250などの取り外し可能なメモリインターフェイスを介してシステムバス1221に接続する。   Other removable / nonremovable, volatile / nonvolatile computer storage media that can be used in an exemplary operating environment include magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tapes, solid state RAM Including, but not limited to, a solid state ROM. The hard disk drive 1241 is typically connected to the system bus 1221 via a non-removable memory interface such as interface 1240, and the magnetic disk drive 1251 and optical disk drive 1255 are typically connected via a removable memory interface such as interface 1250. To the system bus 1221.

図12に示す前述のドライブとこれに対応するコンピュータ記憶媒体には、コンピュータ可読の命令、データ構造、プログラムモジュール、およびそれ以外のコンピュータ1210のデータを格納できる。たとえば、図12を参照すると、ハードディスクドライブ1241には、オペレーティングシステム1244、アプリケーションプログラム1245、それ以外のプログラムモジュール1246、およびプログラムデータ1247が格納されている。こうしたコンポーネントは、オペレーティングシステム1234、アプリケーションプログラム1235、それ以外のプログラムモジュール1236、およびプログラムデータ1237と同じでもよいし、異なっていてもよいことに留意されたい。ここでは、オペレーティングシステム1244、アプリケーションプログラム1245、それ以外のプログラムモジュール1246、およびプログラムデータ1247には異なる番号を付けて、少なくとも別の複製であることを示している。ユーザーは、キーボード1262やポインティングデバイス1261(一般に、マウス、トラックボール、またはタッチパッドと呼ばれる)を使用してコンピュータ1210にコマンドや情報を入力できる。   The above-described drive and the corresponding computer storage medium shown in FIG. 12 can store computer-readable instructions, data structures, program modules, and other computer 1210 data. For example, referring to FIG. 12, the hard disk drive 1241 stores an operating system 1244, an application program 1245, other program modules 1246, and program data 1247. Note that these components can either be the same as or different from operating system 1234, application programs 1235, other program modules 1236, and program data 1237. Here, different numbers are assigned to the operating system 1244, the application program 1245, the other program modules 1246, and the program data 1247 to indicate at least another copy. A user can enter commands and information into the computer 1210 using a keyboard 1262 and a pointing device 1261 (commonly referred to as a mouse, trackball or touch pad).

それ以外の入力装置(図示せず)には、マイクロフォン、ジョイスティック、ゲームパッド、サテライトディッシュ(satellite dish)、スキャナ、無線レシーバ、あるいはテレビジョンまたはブロードキャストビデオレシーバなどを含めてもよい。これらの入力装置およびそれ以外の入力装置は、多くの場合にシステムバス1221に接続されたユーザー入力インターフェイス1260を介して処理装置1220に接続するが、たとえば、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB:universal serial bus)などのそれ以外のインターフェイスやバス構造によって接続してもよい。モニター1291またはそれ以外のタイプの表示装置も、ビデオインターフェイス1290などのインターフェイスを介してシステムバス1221に接続される。さらに、コンピュータには出力周辺インターフェイス1295を介して接続できるスピーカー1297やプリンタ1296など、モニター以外の出力周辺デバイスが含まれていてもよい。   Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, wireless receiver, or television or broadcast video receiver. These and other input devices are often connected to the processing unit 1220 via a user input interface 1260 connected to the system bus 1221, for example, a parallel port, game port, or universal serial bus You may connect by other interfaces and bus structures, such as (USB: universal serial bus). A monitor 1291 or other type of display device is also connected to the system bus 1221 via an interface, such as a video interface 1290. Further, the computer may include an output peripheral device other than the monitor, such as a speaker 1297 and a printer 1296 that can be connected via the output peripheral interface 1295.

コンピュータ1210は、リモートコンピュータ1280などの1台または複数台のリモートコンピュータへの論理接続を使用してネットワーク環境で動作できる。リモートコンピュータ1280は、パーソナルコンピュータ、サーバー、ルータ、ネットワークPC、ピアデバイス、またはそれ以外の一般のネットワークノードでよい。通常は、コンピュータ1210に関連して上で説明したエレメントの多くまたはすべてが含まれるが、図12にはメモリ記憶装置1281のみが示されている。図12に示す論理接続には、ローカルエリアネットワーク(LAN:local area network)1271とワイドエリアネットワーク(WAN:wide area network)1273が含まれるが、それ以外のネットワークを含めてもよい。このようなネットワーキング環境は、オフィス、エンタープライズ規模のコンピュータネットワーク、イントラネット、およびインターネットではきわめて一般的である。   Computer 1210 can operate in a network environment using logical connections to one or more remote computers, such as remote computer 1280. The remote computer 1280 may be a personal computer, server, router, network PC, peer device, or other common network node. Typically, many or all of the elements described above in connection with computer 1210 are included, but only memory storage device 1281 is shown in FIG. The logical connection shown in FIG. 12 includes a local area network (LAN) 1271 and a wide area network (WAN) 1273, but other networks may be included. Such networking environments are very common in offices, enterprise-scale computer networks, intranets, and the Internet.

LANネットワーキング環境で使用した場合、コンピュータ1210はLAN 1271にネットワークインターフェイスまたはアダプタ1270を介して接続する。WANネットワーキング環境で使用する場合、コンピュータ1210は一般にインターネットなどのWAN 1273を介して通信を確立するためのモデム1272またはそれ以外の手段を備えている。モデム1272(内蔵でも外付けでもよい)は、ユーザー入力インターフェイス1260またはそれ以外の適切なメカニズムを使用してシステムバス1221に接続できる。ネットワーク環境では、コンピュータ1210またはその一部に関連して説明したプログラムモジュールをリモートメモリ記憶装置に格納できる。例として、図12にメモリデバイス1281に常駐するリモートアプリケーションプログラム1285を示すが、これには限定されない。図示されたネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立するそれ以外の手段を使用してもよいことは理解されよう。   When used in a LAN networking environment, the computer 1210 connects to the LAN 1271 through a network interface or adapter 1270. When used in a WAN networking environment, the computer 1210 typically includes a modem 1272 or other means for establishing communications over the WAN 1273 such as the Internet. A modem 1272 (which may be internal or external) can be connected to the system bus 1221 using a user input interface 1260 or other suitable mechanism. In a network environment, program modules described in connection with computer 1210 or portions thereof may be stored in a remote memory storage device. As an example, FIG. 12 shows a remote application program 1285 resident in the memory device 1281, but is not limited thereto. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.

以上に示す発明を実施するための最良の形態は、例示と説明を目的として示されている。以上の教示に照らして、多くの変更や変形が可能である。本発明のすべてを記述する意図はなく、本明細書で説明された主題を開示された特定の形に限定する意図もない。本主題について、構造上の機能および/または方法論的な動作に固有の言語で説明してきたが、添付の請求項で定義された本主題は必ずしも前述の特定の機能または動作には限定されないことを理解されたい。むしろ、前述の特定の機能および動作は、本明細書に添付された請求項の例示的な実施の形態として開示されている。   The best mode for carrying out the invention described above is shown for the purpose of illustration and description. Many modifications and variations are possible in light of the above teaching. It is not intended to be exhaustive or to limit the subject matter described herein to the particular forms disclosed. Although the subject matter has been described in language specific to structural features and / or methodological operations, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. I want you to understand. Rather, the specific features and acts described above are disclosed as example implementations of the claims appended hereto.

本明細書で開示された非等長的テクスチャ合成システムの例示的な実装を示すブロック図である。FIG. 2 is a block diagram illustrating an example implementation of the non-isometric texture synthesis system disclosed herein. 図1に示す本非等長的テクスチャ合成システムの一般的な動作を示す流れ図である。It is a flowchart which shows the general operation | movement of this non-isometric texture synthesis system shown in FIG. 図2に示す本非等長的テクスチャ合成方法の特殊なケースについて、漸進的に解像度を高めた場合のインデックスマップ(インデックスマップは合成されたテクスチャ座標のイメージである)が変遷する経過の例を示す図である。In the special case of this non-isometric texture synthesis method shown in FIG. 2, an example of the transition of the index map (index map is an image of synthesized texture coordinates) when the resolution is gradually increased is shown. FIG. 図3に示すインデックスマップに対応するテクスチャイメージ(すなわち合成されたカラーイメージ)を示す図である。It is a figure which shows the texture image (namely, the synthesized color image) corresponding to the index map shown in FIG. 図3および4に示す本非等長的テクスチャ合成プロセスの特殊なケースの例を示すブロック図である。FIG. 5 is a block diagram illustrating an example of a special case of the non-isometric texture synthesis process shown in FIGS. 3 and 4. 本明細書で開示された非等長的テクスチャ合成プロセスの第1の結果の例を示す図である。FIG. 6 is a diagram illustrating an example of a first result of an isometric texture synthesis process disclosed herein. 本明細書で開示された非等長的テクスチャ合成プロセスの第2の結果の例を示す図である。FIG. 6 is a diagram illustrating an example of a second result of the non-isometric texture synthesis process disclosed herein. サーフェステクスチャアプリケーションに使用するヤコビアンフィールドの導関数(derivation)を示す図である。FIG. 6 is a diagram showing a Jacobian field derivative used in a surface texture application. 本非等長的テクスチャ合成方法を使用してサーフェステクスチャ合成を実行した結果の例を示す図である。It is a figure which shows the example of the result of having performed surface texture synthesis | combination using this non-isometric texture synthesis method. 多重解像度合成ピラミッド(multi−resolution synthesis pyramid)の複数のレベルを示す図である。FIG. 6 is a diagram illustrating a plurality of levels of a multi-resolution synthesis pyramid. 本非等長的合成拡大スキームの例を示す図である。FIG. 4 illustrates an example of this non-isometric synthesis expansion scheme. 本非等長的テクスチャ合成のシステムおよび方法を実装できる適切なコンピューティングシステム環境の例を示す図である。FIG. 2 illustrates an example of a suitable computing system environment in which the present isometric texture synthesis system and method may be implemented.

Claims (20)

非等長的テクスチャを合成する方法であって、
ピクセルにおけるヤコビアンフィールドと、前の解像度レベルでの合成されたピクセル座標イメージとを入力するステップと、
調べる方向を選択するステップと、
見本空間の近傍オフセットと前記ピクセルにおけるヤコビアン逆行列とを使用して、合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルを定めるステップと、
前記合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルを、1の正規化距離に正規化するステップと、
前記合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルの前記正規化距離に基づいて、前記ピクセルの8つの直接近傍のうちのどれにアクセスすべきかを決定するステップと、
前の解像度レベルでの前記合成されたピクセル座標イメージから処理中の前記ピクセルに対し前記の選択された方向において最も近い、前記8つの直接ピクセル近傍のうちの1つにアクセスするステップであって、前記合成されたピクセル座標イメージが、ピクセル色を直接含まず、前記ピクセル色が見本テクスチャにおいて取り出されるピクセル座標を含む、ステップと、
前記ピクセルにおける前記ヤコビアンフィールドを使用して前記直接ピクセル近傍のピクセル座標を歪曲させ、前記非等長的テクスチャの合成に使用する歪曲させたピクセル座標を形成するステップと、
を実行するプロセッサを有する汎用計算デバイスを使用することを含む、方法。
A method of synthesizing non-isometric textures,
Inputting a Jacobian field in pixels and a synthesized pixel coordinate image at a previous resolution level;
A step of selecting the direction to be examined;
Determining a neighborhood offset vector transformed with the Jacobian inverse matrix of the composite space using the neighborhood offset of the sample space and the Jacobian inverse matrix at the pixel;
Normalizing a neighborhood offset vector transformed with a Jacobian inverse of the composite space to a normalized distance of 1;
Determining which of the eight immediate neighbors of the pixel to access based on the normalized distance of a neighborhood offset vector transformed with a Jacobian inverse of the composite space;
Accessing one of the eight direct pixel neighborhoods closest in the selected direction to the pixel being processed from the synthesized pixel coordinate image at a previous resolution level; The synthesized pixel coordinate image includes pixel coordinates that do not directly include a pixel color, and wherein the pixel color is retrieved in a sample texture;
And forming the Jacobian using field to distort the direct pixel neighborhood of the pixel coordinates, the distorted pixel coordinates were used for the synthesis of the anisometric texture in the pixel,
Using a general-purpose computing device having a processor for performing.
請求項1に記載の方法であって、前記歪曲させたピクセル座標を使用して前記見本テクスチャから候補となる少なくとも1つのピクセルを選択するステップをさらに含む、方法。The method of claim 1, further comprising selecting at least one candidate pixel from the sample texture using the distorted pixel coordinates . 請求項2に記載の方法であって、前記候補となる少なくとも1つのピクセルを選択するステップは、修正技術を使用するステップをさらに含む、方法。  The method of claim 2, wherein selecting the candidate at least one pixel further comprises using a correction technique. 請求項3に記載の方法であって、前記修正技術はピクセル当たりの近傍マッチング修正技術(225)である、方法。  4. The method of claim 3, wherein the correction technique is a per-pixel neighborhood matching correction technique (225). 請求項1から4のいずれかに記載の方法であって、前記非等長的合成テクスチャはサーフェス上に存在し、前記非等長的合成テクスチャを前記サーフェス上で前記ヤコビアンフィールドに合わせるステップをさらに含む、方法。  5. The method according to claim 1, wherein the non-isometric composite texture is present on a surface, and the step of fitting the non-isometric composite texture to the Jacobian field on the surface is further included. Including. 請求項5に記載の方法であって、
複数のテクスチャアトラスチャートを有するテクスチャアトラスパラメータ化のパラメータテクスチャドメインにおいて前記非等長的合成テクスチャを直接合成するステップと、
前記複数のテクスチャアトラスチャート間でジャンプする機能を提供する無方向ポインタを使用するステップと、
をさらに含む、方法。
6. A method according to claim 5, wherein
Directly synthesizing the non-isometric composite texture in a parameter texture domain of a texture atlas parameterization having a plurality of texture atlas charts;
Using a non-directional pointer that provides the ability to jump between the plurality of texture atlas charts;
Further comprising a method.
請求項6に記載の方法であって、
前記チャートの1つの内のチャート境界付近のピクセルのセットを選択するステップと、
前記無方向ポインタを使用して前記チャートの別の1つの内部にある他のピクセルをポイントするステップと、
をさらに含む、方法。
The method of claim 6, comprising:
Selecting a set of pixels near a chart boundary in one of the charts;
Using the non-directional pointer to point to another pixel within another one of the chart;
Further comprising a method.
請求項1から7のいずれかに記載の方法であって、前記ヤコビアンフィールドと合成拡大技術を使用して前記非等長的合成テクスチャを強化して、拡大された高解像度の非等長的合成テクスチャを生成するステップをさらに含む、方法。  8. A method as claimed in any preceding claim, wherein the non-isometric composite texture is augmented using the Jacobian field and composite magnification technique to augment the non-isometric composite texture. The method further comprising generating a texture. 請求項8に記載の方法であって、レンダリング時にサーフェスシェーダ内で前記合成拡大技術を実行するステップをさらに含む、方法。  9. The method of claim 8, further comprising performing the synthesis magnification technique in a surface shader during rendering. コンピュータ実行可能命令が格納されエンコードされたコンピュータ読み取り可能記憶媒体であって、前記コンピュータ実行可能命令は、見本を使ってサーフェスにテクスチャを合成するためのものであり、
ピクセルにおけるヤコビアンフィールドを指定するステップと、
調べる方向を方向コンポーネントに基づいて選択するステップと、
見本空間の近傍オフセットと前記ピクセルにおけるヤコビアン逆行列とを使用して、合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルを定めるステップと、
前記合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルを、1の正規化距離に正規化するステップと、
前記前記合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルの前記正規化距離に基づいて、前記ピクセルの8つの直接近傍のうちのどれにアクセスすべきかを決定するステップと、
処理中の前記ピクセルに対し前記方向コンポーネントの方向において最も近い、前記8つの直接ピクセル近傍のうちの1つにアクセスするステップであって、前記合成されたピクセル座標イメージが、ピクセル色を直接含まず、前記ピクセル色が見本テクスチャにおいて取り出されるピクセル座標を含む、ステップと、
前記ヤコビアンフィールドを使用して前記ピクセルおよびその直接ピクセル近傍のアップサンプリングされたピクセル座標を歪曲させるステップと、
前記ピクセルおよび近傍のピクセルの座標の回転およびスケーリングを可能にするため、前記歪曲させたアップサンプリングされたピクセル座標を前記ヤコビアンフィールドを使用して修正するステップと、
パラメータドメインを前記サーフェスにマッピングすることによって、前記パラメータドメインにわたって前記サーフェスをパラメータ化するステップと、
を含む、コンピュータ読み取り可能記憶媒体。
A computer-readable storage medium having stored and encoded computer-executable instructions, said computer-executable instructions for synthesizing a texture on a surface using a sample;
Specifying a Jacobian field in pixels;
Selecting a direction to examine based on the direction component;
Determining a neighborhood offset vector transformed with the Jacobian inverse matrix of the composite space using the neighborhood offset of the sample space and the Jacobian inverse matrix at the pixel;
Normalizing a neighborhood offset vector transformed with a Jacobian inverse of the composite space to a normalized distance of 1;
Determining which of the eight direct neighbors of the pixel to access based on the normalized distance of a neighborhood offset vector transformed with a Jacobian inverse of the composite space;
Accessing one of the eight direct pixel neighbors closest to the pixel being processed in the direction of the directional component, wherein the synthesized pixel coordinate image does not directly contain a pixel color. The pixel color includes pixel coordinates retrieved in a sample texture;
Distorting the upsampled pixel coordinates of the pixel and its immediate pixels using the Jacobian field;
Modifying the distorted upsampled pixel coordinates using the Jacobian field to allow rotation and scaling of the coordinates of the pixels and neighboring pixels;
Parameterizing the surface across the parameter domain by mapping a parameter domain to the surface;
A computer readable storage medium comprising:
請求項10記載のコンピュータ読み取り可能記憶媒体であって、前記テクスチャを前記サーフェス上においてどのように向けるべきかについての入力を受けるステップをさらに含み、前記入力は、(a)前記サーフェス上の各点における接線ベクトル、(b)前記サーフェス上の各点における従法線ベクトル、のうちの少なくとも1つを含む、コンピュータ読み取り可能記憶媒体。  11. The computer readable storage medium of claim 10, further comprising receiving input as to how the texture should be directed on the surface, the input comprising: (a) each point on the surface. A computer readable storage medium comprising at least one of: (b) a normal vector at each point on the surface. 請求項11記載のコンピュータ読み取り可能記憶媒体であって、見本の標準軸に関し前記接線ベクトルと前記従法線ベクトルとをローカルに特定するステップをさらに含む、コンピュータ読み取り可能記憶媒体。  12. The computer readable storage medium of claim 11, further comprising the step of locally identifying the tangent vector and the binormal vector with respect to a standard axis of a sample. 請求項10記載のコンピュータ読み取り可能記憶媒体であって、無方向ポインタを使用して、パラメータ化されたチャートの不連続アトラスから前記サーフェス上でシームレスなテクスチャを形成するステップを更に含む、コンピュータ読み取り可能記憶媒体。A computer-readable storage medium of claim 10, using a non-directional pointer, further comprising forming a seamless texture on the surface of discrete atlas parameterized chart, computer readable Possible storage medium. 請求項13記載のコンピュータ読み取り可能記憶媒体であって、
前記不連続なアトラスの前記パラメータ化されたチャートの各々のものの周辺の追加スペースのガターを形成するステップと、
前記ガターにおいて前記無方向ポインタを使用して別のチャートの内部にある他のピクセルにポイントするステップと、
をさらに含む、コンピュータ読み取り可能記憶媒体。
A computer readable storage medium according to claim 13, comprising:
Forming a gutter of additional space around each of the parameterized charts of the discontinuous atlas ;
Using the non-directional pointer in the gutter to point to other pixels within another chart;
A computer-readable storage medium further comprising:
請求項14記載のコンピュータ読み取り可能記憶媒体であって、合成拡大技術を使用するステップをさらに含み、前記合成拡大技術は、前記見本のより高い解像度バージョンを得るために前記ヤコビアンフィールドによって変更される、コンピュータ読み取り可能記憶媒体。  15. The computer readable storage medium of claim 14, further comprising using a synthetic magnification technique, the synthetic magnification technique being modified by the Jacobian field to obtain a higher resolution version of the sample. Computer readable storage medium. 非等長的合成テクスチャを見本から合成するための、コンピュータにより実行される方法であって、
ピクセル(p)におけるヤコビアンフィールドJ(p)と、前の解像度レベルでの初期化イメージとを入力するステップと、
前記前の解像度レベルでピクセル座標をアップサンプリングして、前記前の解像度レベルよりもより高い解像度を有する現解像度レベルを発生するステップと、
合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルとしてφを定め、ここでφ=J-1(p)Δであり、Δは見本空間近傍オフセットであり、J-1(p)はピクセル(p)のヤコビアン逆行列である、ステップと、
前記合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルを、1の正規化距離に正規化するステップと、
前記合成空間のヤコビアン逆行列で変換された近傍オフセット・ベクトルの前記正規化距離に基づいて、ピクセル近傍を形成する前記ピクセルの8つの直接近傍のうちのどの1つにアクセスすべきかを決定するステップと、
処理中の前記ピクセルに対し選択された方向において最も近い、前記ピクセルの前記8つの直接ピクセル近傍のうちの1つにアクセスするステップと、
前記ヤコビアンフィールドを使用して前記ピクセル近傍の前記アップサンプリングされたピクセル座標を歪曲させるステップと、
前記見本と前記歪曲させたアップサンプリングされたピクセル座標とを使用して前記非等長的合成テクスチャを得るステップと、
を実行するプロセッサを有するコンピュータを使用することを含む、方法。
A computer-implemented method for synthesizing a non-isometric composite texture from a sample comprising:
Inputting a Jacobian field J (p) at pixel (p) and an initialization image at a previous resolution level;
Up-sampling pixel coordinates at the previous resolution level to generate a current resolution level having a higher resolution than the previous resolution level;
Define φ as the neighborhood offset vector transformed with the Jacobian inverse matrix of the composite space, where φ = J −1 (p) Δ, Δ is the sample space neighborhood offset, and J −1 (p) is the pixel A step that is an inverse Jacobian of (p);
Normalizing a neighborhood offset vector transformed with a Jacobian inverse of the composite space to a normalized distance of 1;
Determining which one of the eight direct neighbors of the pixel to form a pixel neighborhood to access based on the normalized distance of a neighborhood offset vector transformed with a Jacobian inverse matrix of the composite space When,
Accessing one of the eight direct pixel neighborhoods of the pixel that is closest in a selected direction to the pixel being processed;
Distorting the upsampled pixel coordinates near the pixel using the Jacobian field;
Obtaining the non-isometric composite texture using the sample and the distorted upsampled pixel coordinates;
Using a computer having a processor to perform.
請求項16記載の方法であって、前記ピクセルおよび近傍のピクセルの座標の回転およびスケーリングを可能にするため、前記歪曲させたアップサンプリングされたピクセル座標を前記ヤコビアンフィールドを使用して修正するステップをさらに含む、方法。  17. The method of claim 16, wherein modifying the distorted upsampled pixel coordinates using the Jacobian field to allow rotation and scaling of the coordinates of the pixels and neighboring pixels. Further comprising a method. 請求項17記載の方法であって、
ラメータドメインにわたってーフェスをパラメータ化するステップと、
前記パラメータドメインを前記サーフェスにマッピングするため前記サーフェスのあらゆる点について前記パラメータドメインのヤコビアンフィールドを決定するステップと、
をさらに含む、方法。
The method of claim 17, comprising:
A step of parameterizing the sub Fesu over parametric meter domain,
Determining a Jacobian field of the parameter domain for every point on the surface to map the parameter domain to the surface;
Further comprising a method.
請求項18記載の方法であって、無方向マップを使用して前記サーフェスにシームレスな非等長的合成テクスチャを形成するステップをさらに含む、方法。  19. The method of claim 18, further comprising forming a seamless non-isometric composite texture on the surface using an undirected map. 請求項19記載の方法であって、前記見本のより高い解像度バージョンを得るよう前記非等長的合成テクスチャにおける非等長性を明らかにするため、前記ヤコビアンフィールドを使用して合成拡大技術を変更するステップをさらに含む、方法。  20. The method of claim 19, wherein the synthesis expansion technique is modified using the Jacobian field to account for unequality in the non-isometric composite texture to obtain a higher resolution version of the sample. The method further comprising the step of:
JP2009518111A 2006-06-30 2007-05-11 Composition of ANISOMETRIC texture (TEXTURE) (SYNTHESIS) Expired - Fee Related JP5149288B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/428,311 2006-06-30
US11/428,311 US7733350B2 (en) 2006-06-30 2006-06-30 Anisometric texture synthesis
PCT/US2007/011379 WO2008005103A1 (en) 2006-06-30 2007-05-11 Anisometric texture synthesis

Publications (3)

Publication Number Publication Date
JP2009543192A JP2009543192A (en) 2009-12-03
JP2009543192A5 JP2009543192A5 (en) 2010-07-01
JP5149288B2 true JP5149288B2 (en) 2013-02-20

Family

ID=38876133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009518111A Expired - Fee Related JP5149288B2 (en) 2006-06-30 2007-05-11 Composition of ANISOMETRIC texture (TEXTURE) (SYNTHESIS)

Country Status (8)

Country Link
US (1) US7733350B2 (en)
EP (1) EP2036046B1 (en)
JP (1) JP5149288B2 (en)
KR (1) KR101354819B1 (en)
CN (1) CN101573730B (en)
AT (1) ATE549704T1 (en)
RU (1) RU2419881C2 (en)
WO (1) WO2008005103A1 (en)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8385669B2 (en) * 2009-03-04 2013-02-26 Microsoft Corporation Scalable mutable tiled multi-resolution texture atlases
JP4776705B2 (en) * 2009-03-06 2011-09-21 株式会社東芝 Image processing apparatus and method
KR101105241B1 (en) * 2010-02-25 2012-01-13 고려대학교 산학협력단 Adaptive distance field synthesis apparatus and method based on distance value
JP5562075B2 (en) * 2010-03-09 2014-07-30 カルソニックカンセイ株式会社 Method and apparatus for creating surface processing data
JP5616198B2 (en) * 2010-11-16 2014-10-29 三菱プレシジョン株式会社 Method and apparatus for generating appearance display image of same feature having different level of detail
EP2646984B1 (en) 2010-11-29 2018-04-11 Thomson Licensing Method and device for reconstructing a self-similar textured region of an image
IN2014CN00655A (en) * 2011-08-01 2015-04-03 Google Inc
US9007373B2 (en) * 2011-10-12 2015-04-14 Yale University Systems and methods for creating texture exemplars
CN103164867A (en) * 2011-12-09 2013-06-19 金耀有限公司 Three-dimensional figure data processing method and device
US9384711B2 (en) 2012-02-15 2016-07-05 Microsoft Technology Licensing, Llc Speculative render ahead and caching in multiple passes
US9153062B2 (en) 2012-02-29 2015-10-06 Yale University Systems and methods for sketching and imaging
US9149309B2 (en) 2012-03-23 2015-10-06 Yale University Systems and methods for sketching designs in context
US9235925B2 (en) * 2012-05-31 2016-01-12 Microsoft Technology Licensing, Llc Virtual surface rendering
US9177533B2 (en) 2012-05-31 2015-11-03 Microsoft Technology Licensing, Llc Virtual surface compaction
US9230517B2 (en) 2012-05-31 2016-01-05 Microsoft Technology Licensing, Llc Virtual surface gutters
US9286122B2 (en) 2012-05-31 2016-03-15 Microsoft Technology Licensing, Llc Display techniques using virtual surface allocation
CN102740025B (en) * 2012-06-08 2016-04-06 深圳Tcl新技术有限公司 The processing method of menu color of screen and device
US9307007B2 (en) 2013-06-14 2016-04-05 Microsoft Technology Licensing, Llc Content pre-render and pre-fetch techniques
US9984440B2 (en) * 2013-06-18 2018-05-29 Adobe Systems Incorporated Iterative patch-based image upscaling
CN103473750B (en) * 2013-08-02 2017-12-15 毕胜 The method for rendering fabric border anastomosing and splicing
EP2902973B1 (en) * 2014-02-03 2018-06-27 Thomson Licensing Method and device for processing a geometry image of a 3d scene
US9779512B2 (en) 2015-01-29 2017-10-03 Microsoft Technology Licensing, Llc Automatic generation of virtual materials from real-world materials
CN104811622B (en) * 2015-04-30 2017-03-15 努比亚技术有限公司 Image color implantation method and device
GB2537922B (en) 2015-04-30 2019-01-16 Univ Cape Town Systems and methods for synthesising a terrain
US10217187B2 (en) 2015-06-05 2019-02-26 Qatar Foundation For Education, Science And Immunity Development Method for dynamic video magnification
KR102510821B1 (en) 2016-02-05 2023-03-16 삼성전자주식회사 Method and apparatus for processing image and recording medium thereof
CN108010095B (en) * 2017-11-14 2021-06-04 创新先进技术有限公司 Texture synthesis method, device and equipment
US11721064B1 (en) 2020-12-11 2023-08-08 Meta Platforms Technologies, Llc Adaptive rate shading using texture atlas
US11544894B2 (en) 2021-02-26 2023-01-03 Meta Platforms Technologies, Llc Latency-resilient cloud rendering
US11676324B2 (en) 2021-03-30 2023-06-13 Meta Platforms Technologies, Llc Cloud rendering of texture map
CN113205570B (en) * 2021-04-30 2024-04-19 阿波罗智联(北京)科技有限公司 Electronic map-based electronic zebra crossing generation method and device

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5097427A (en) * 1988-07-06 1992-03-17 Hewlett-Packard Company Texture mapping for computer graphics display controller system
CA2078930C (en) 1991-09-24 1999-08-03 Raphael L. Levien Register mark
JPH05145735A (en) * 1991-10-16 1993-06-11 Fuji Xerox Co Ltd Image processor provided with insert synthesizing function
DE69330578T2 (en) * 1992-04-29 2002-06-13 Canon K.K., Tokio/Tokyo Method and device for filling an image
JP2800618B2 (en) * 1993-02-09 1998-09-21 日本電気株式会社 Voice parameter coding method
US5471572A (en) * 1993-07-09 1995-11-28 Silicon Graphics, Inc. System and method for adding detail to texture imagery in computer generated interactive graphics
US5680528A (en) 1994-05-24 1997-10-21 Korszun; Henry A. Digital dressing room
JP2930092B2 (en) * 1994-11-15 1999-08-03 日本電気株式会社 Image coding device
US5774129A (en) * 1995-06-07 1998-06-30 Massachusetts Institute Of Technology Image analysis and synthesis networks using shape and texture information
JP4004561B2 (en) 1995-07-27 2007-11-07 富士フイルム株式会社 Image processing method and apparatus
US5872867A (en) * 1995-08-04 1999-02-16 Sarnoff Corporation Method and apparatus for generating image textures
US5784498A (en) * 1996-01-11 1998-07-21 Xerox Corporation System and method for synthesizing background texture in an image
US6075905A (en) * 1996-07-17 2000-06-13 Sarnoff Corporation Method and apparatus for mosaic image construction
US5974198A (en) 1996-08-26 1999-10-26 Adobe Systems Incorporated Adjustment layers for composited image manipulation
FR2756399B1 (en) * 1996-11-28 1999-06-25 Thomson Multimedia Sa VIDEO COMPRESSION METHOD AND DEVICE FOR SYNTHESIS IMAGES
US6456288B1 (en) * 1998-03-31 2002-09-24 Computer Associates Think, Inc. Method and apparatus for building a real time graphic scene database having increased resolution and improved rendering speed
US6434265B1 (en) * 1998-09-25 2002-08-13 Apple Computers, Inc. Aligning rectilinear images in 3D through projective registration and calibration
US6525744B1 (en) 1999-03-11 2003-02-25 Massachusetts Institute Of Technology Correspondence between n-dimensional surface: vector fields that are defined by surfaces and that generate surfaces which preserve characteristics of the defining surfaces
US6919895B1 (en) * 1999-03-22 2005-07-19 Nvidia Corporation Texture caching arrangement for a computer graphics accelerator
GB9908179D0 (en) * 1999-04-09 1999-06-02 Univ Cambridge Tech Magnetic materials
US6392655B1 (en) 1999-05-07 2002-05-21 Microsoft Corporation Fine grain multi-pass for multiple texture rendering
US6674915B1 (en) * 1999-10-07 2004-01-06 Sony Corporation Descriptors adjustment when using steerable pyramid to extract features for content based search
JP3262772B2 (en) * 1999-12-17 2002-03-04 株式会社ナムコ Image generation system and information storage medium
US6593933B1 (en) * 2000-01-13 2003-07-15 Microsoft Corporation Block-based synthesis of texture in computer rendered images
US6888544B2 (en) * 2000-03-17 2005-05-03 Hewlett-Packard Development Company, L.P. Apparatus for and method of rendering 3D objects with parametric texture maps
US7088375B1 (en) 2000-04-27 2006-08-08 Adobe Systems Incorporated Grouping layers in composited image manipulation
US7002591B1 (en) * 2000-08-23 2006-02-21 Nintendo Co., Ltd. Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system
US6768492B2 (en) * 2000-10-06 2004-07-27 Microsoft Corporation Texture tiling with adjacency information
JP4404547B2 (en) * 2000-10-19 2010-01-27 バイオカルテイス・エス・エイ Method and apparatus for microcarrier identification operation
JP4570764B2 (en) * 2000-12-01 2010-10-27 本田技研工業株式会社 Motion information recognition system
US6879717B2 (en) 2001-02-13 2005-04-12 International Business Machines Corporation Automatic coloring of pixels exposed during manipulation of image regions
GB0105103D0 (en) * 2001-03-01 2001-04-18 Superscape Ltd Texturing method and Apparatus
US6919903B2 (en) * 2001-03-02 2005-07-19 Mitsubishi Electric Research Laboratories, Inc. Texture synthesis and transfer for pixel images
US7023447B2 (en) * 2001-05-02 2006-04-04 Eastman Kodak Company Block sampling based method and apparatus for texture synthesis
US7126578B1 (en) * 2001-05-17 2006-10-24 Adobe Systems Incorporated Combining raster and vector data in the presence of transparency
US7136072B2 (en) 2001-08-03 2006-11-14 Hewlett-Packard Development Company, L.P. System and method for performing texture synthesis
US6700585B2 (en) * 2001-08-03 2004-03-02 Hewlett-Packard Development Company, L.P. System and method for synthesis of parametric texture map textures
US6762769B2 (en) * 2002-01-23 2004-07-13 Microsoft Corporation System and method for real-time texture synthesis using patch-based sampling
US20030189579A1 (en) * 2002-04-05 2003-10-09 Pope David R. Adaptive enlarging and/or sharpening of a digital image
US6825850B2 (en) * 2002-10-30 2004-11-30 Microsoft Corporation System and process for optimal texture map reconstruction from multiple views
US7149368B2 (en) * 2002-11-19 2006-12-12 Microsoft Corporation System and method for synthesis of bidirectional texture functions on arbitrary surfaces
WO2004055724A2 (en) 2002-12-18 2004-07-01 Philips Intellectual Property & Standards Gmbh Multi-resolution processing of image strips
US7088870B2 (en) * 2003-02-24 2006-08-08 Microsoft Corporation Image region filling by example-based tiling
JP3906170B2 (en) * 2003-03-07 2007-04-18 株式会社東芝 Apparatus, method and program for synthesizing high-dimensional texture
RU2239673C1 (en) * 2003-05-07 2004-11-10 Научно-исследовательский институт физики им. В.А. Фока Санкт-Петербургского государственного университета Method for isolation of nanotubes from carbon-containing material
US7596284B2 (en) * 2003-07-16 2009-09-29 Hewlett-Packard Development Company, L.P. High resolution image reconstruction
US7110000B2 (en) * 2003-10-31 2006-09-19 Microsoft Corporation Synthesis of progressively-variant textures and application to arbitrary surfaces
US7259767B2 (en) * 2004-04-30 2007-08-21 Calgary Scientific Inc. Image texture segmentation using polar S-transform and principal component analysis
RU2298022C2 (en) * 2005-07-20 2007-04-27 Александр Львович Буянов Composite material capable of forming hydrogel, and hydrogel
TW200746655A (en) * 2005-11-18 2007-12-16 Sony Corp Encoding device and method, decoding device and method, and transmission system

Also Published As

Publication number Publication date
CN101573730B (en) 2012-07-18
US7733350B2 (en) 2010-06-08
KR101354819B1 (en) 2014-01-22
ATE549704T1 (en) 2012-03-15
JP2009543192A (en) 2009-12-03
EP2036046A1 (en) 2009-03-18
KR20090030276A (en) 2009-03-24
CN101573730A (en) 2009-11-04
RU2419881C2 (en) 2011-05-27
RU2008152361A (en) 2010-07-10
WO2008005103A1 (en) 2008-01-10
EP2036046B1 (en) 2012-03-14
EP2036046A4 (en) 2010-12-01
US20080001962A1 (en) 2008-01-03

Similar Documents

Publication Publication Date Title
JP5149288B2 (en) Composition of ANISOMETRIC texture (TEXTURE) (SYNTHESIS)
CA2297916C (en) Texture mapping in 3-d computer graphics
JP3466661B2 (en) Image processing apparatus and method
US8289323B2 (en) Drawing processing apparatus, texture processing apparatus, and tessellation method
US9076258B2 (en) Stylizing animation by example
US9824431B2 (en) Image synthesis apparatus, image synthesis method, and recording medium
US7742060B2 (en) Sampling methods suited for graphics hardware acceleration
US7038678B2 (en) Dependent texture shadow antialiasing
US8373802B1 (en) Art-directable retargeting for streaming video
JP2005228320A (en) High-speed visualization method, apparatus, and program for 3D graphic data based on depth image
US11989807B2 (en) Rendering scalable raster content
JP2005516315A (en) Efficient display updates from object graphics changes
CN119053986A (en) Locking mechanism for image classification
CN119301630A (en) Super-resolution enlargement
US11776179B2 (en) Rendering scalable multicolored vector content
JP2006244426A (en) Texture processing device, picture drawing processing device, and texture processing method
JP3629243B2 (en) Image processing apparatus and method for rendering shading process using distance component in modeling
US7400330B2 (en) Magnification of indirection textures
US7256796B1 (en) Per-fragment control for writing an output buffer
US8004515B1 (en) Stereoscopic vertex shader override
CN114820974A (en) H5-based map editor, editing method, and computer-readable medium
CN117333361A (en) Method, apparatus and computer readable medium for interpolation processing
WO2025122724A1 (en) Shape and illumination using neural object decomposition via brdf optimization in-the-wild
CN111080764A (en) Method, device and equipment for synthesizing body texture
JP2006524384A (en) Method and system for filling in a parallelogram

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090903

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20091008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100511

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120305

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120604

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120611

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120905

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121031

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121129

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees