JP4106364B2 - フットプリントの解析および修正方法 - Google Patents

フットプリントの解析および修正方法 Download PDF

Info

Publication number
JP4106364B2
JP4106364B2 JP2004540605A JP2004540605A JP4106364B2 JP 4106364 B2 JP4106364 B2 JP 4106364B2 JP 2004540605 A JP2004540605 A JP 2004540605A JP 2004540605 A JP2004540605 A JP 2004540605A JP 4106364 B2 JP4106364 B2 JP 4106364B2
Authority
JP
Japan
Prior art keywords
footprint
resolution
size
texture
specified
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
JP2004540605A
Other languages
English (en)
Other versions
JP2005538475A (ja
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips NV
Koninklijke Philips Electronics NV
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 Koninklijke Philips NV, Koninklijke Philips Electronics NV filed Critical Koninklijke Philips NV
Publication of JP2005538475A publication Critical patent/JP2005538475A/ja
Application granted granted Critical
Publication of JP4106364B2 publication Critical patent/JP4106364B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

本発明は、広くは、コンピュータによって制御されるラスター表示装置において画像を表示するための方法に関する。特に、本発明は、記憶されている離散的な画像の再構成またはスケーリングのため、あるいは高品質のラスター表示素子上への表示の目的でそれらに透視投影を施すために必要とされる異方性フィルタ機構に関する。上記記憶されている離散的な画像は、以下でテクスチャと称される。特に、本発明は、ある解像度を有するテクスチャ要素を提供するグラフィックシステムにおいて、フットプリントによって接触された特定数のテクスチャ要素に応じて、フットプリントを解析および修正するための方法に関する。
「フットプリント」とは、オブジェクトの画素(ピクセル)の曲面上への透視投影である。「フットプリント」は、オブジェクトの矩形の画素(ピクセル)の、規則的なテクセル格子(テクスチャ要素の格子)への透視投影の曲面への近似結果を再現する凸状の四辺形表現でありうる。
オブジェクトの各画素(ピクセル)にテクスチャを組み合わせるにあたり、例えばOpenGLグラフィクスシステムなどの公知のグラフィクスシステムは、オブジェクトのピクセルのフットプリントが、関連する望ましい解像度を有する1つ以上のテクスチャ要素を持つように動作し、そのフットプリントは正方形によって近似される。ここでは、近似が常に、大きすぎる正方形または小さすぎる正方形によって実行され、フットプリントの形状が考慮されていないという欠点がある。
所望の解像度は、フットプリントの下に位置するテクセル格子のテクセルサイズに帰着する。さまざまなミップマップレベルが、所定のテクセルサイズのために存在する。適切な解像度(レベル)を有するミップマップが存在しないテクセルサイズに対応する解像度が選択された場合、テクスチャを多大な労苦を費やして計算しなければならない。
この先行技術から出発し、本発明の目的は、フットプリントを修正するための優れた方法を提供することにある。
この目的は、請求項1に記載の方法によって達成される。
本発明は、ある解像度を有するテクスチャ要素を提供するグラフィクスシステムにおいて、フットプリントに接触された特定数のテクスチャ要素に基づいてフットプリントを修正するための方法であって、
(a)上記フットプリントの寸法または形状を決定する工程と、
(b)上記テクスチャ要素の特定数と工程(a)で決定した寸法または形状とに基づいて、上記フットプリントに関連付けられるテクスチャ要素の解像度を特定する工程と、
(c)上記グラフィクスシステムが工程(b)で特定された解像度を有するテクスチャ要素を提供するか否かを決定し、
(c.1)上記グラフィクスシステムが工程(b)で特定された解像度を有するテクスチャ要素を提供する場合には、上記フットプリントを維持し、
(c.2)上記グラフィクスシステムが工程(b)で特定した解像度を有するテクスチャ要素を提供しない場合には、上記グラフィクスシステムによって提供されかつ各々の解像度を持つテクスチャ要素を選択し、上記フットプリントのサイズを縮小して、サイズ縮小後のフットプリントによって接触されるテクスチャ要素の数が上記特定数と本質的に等しいか、あるいは上記特定数よりも少なくなるようにする工程と、を含む方法を提供する。
従来技術によれば、等方性フィルタリングとも称されるフィルタ処理が実行されるが、この従来技術と異なり本発明は、特定の解像度を有し、従って特定のサイズを有する多数の利用可能なテクスチャ要素を、最適な方法でフットプリントへと分配することを教示するものであり、フットプリントを完全に囲んでいる四辺形、またはフットプリントに完全に含まれている四辺形によるフットプリントの「粗い」近似計算とは異なるものである。この方法は、フットプリントにテクスチャ要素が重ね合わされ、必要であれば、本発明に従ってフットプリントの解析および修正が実行され、テクスチャ要素のフットプリントへの最適な分配が得られる。
好ましい実施の形態によれば、本発明の方法は、種々の解像度を有するテクスチャ要素を提供するグラフィクスシステムにおいて使用され、上記特定した解像度よりも1つ下の解像度を有するテクスチャ要素が、工程(c.2)において選択される。好ましくは、グラフィクスシステムは、種々のレベルのミップマップの形式を持ち、種々の解像度を有するテクスチャ要素を提供する。
さらなる好ましい実施の形態によれば、解像度を決定する目的のため、工程(b)においてフットプリントを囲む長方形であって、この長方形の辺上にフットプリントの頂点が位置するような長方形が特定される。この長方形について、所望の数Pを達成するための適切なサイズすなわち解像度を有するテクスチャ要素が存在しないことが分かった場合には、上記実施の形態の好ましい発展においては、クランプボックスすなわちクランプ正方形が特定される。このクランプボックスは、グラフィクスシステムにおいて利用可能な解像度に応じて定められ、かつテクスチャ要素の上記数に応じて定められるものであり、続いてフットプリントのサイズがフットプリントの頂点をクランプボックスの各辺までずらすことによって縮小される。
上記長方形およびクランプボックスは、フットプリントの厚さパラメータまたは広がりパラメータに基づいて特定され、厚さパラメータはフットプリントの縦方向の変形を再現することが望ましい。
さらなる好ましい実施の形態によれば、フットプリントの辺が特定の寸法を超えているか否かの判断が、フットプリントの寸法または形状の決定の過程において行なわれ、超えている場合、フットプリントのサイズが、辺の寸法が上記特定の寸法以下になるまで縮小される。
このように、本発明の方法は、フットプリントの解析および修正のための新規な手法を提供し、一実施の形態によれば、ユーザによって制御することが可能である。
離散的なテクスチャ画像を取り出すため、フットプリントの領域に覆われた規則的なテクセル格子のすべての正方形の要素‐テクセル‐が、読み込まれて処理ユニットで処理されなければならない。本発明によれば、フットプリントによって接触されたテクセルの数、およびフットプリントの辺の長さの両者を制限することができる。本発明によれば、追加的な制御入力信号、すなわちより正確には性能パラメータPが、この目的のために提供される。このパラメータPは、ユーザによって提供することができる。フットプリントの辺の長さの制限は、最大辺長さを規定するさらなるパラメータEmaxによって決定される。このパラメータEmaxは、例えば規定値(hard-coded)でもよい。
本発明の利点は、制御入力信号Pを設定することによって、取り出され/再構成される画像の品質(使用されるテクセルの数が多い)と、処理速度(使用されるテクセルの数が少ない)との間の妥協が実現できる点にある。境界辺を制限することの利益は、以降のプロセスにおいてフットプリントのさらなる処理に必要とされるハードウェアの支出を、大きく低減できる点にある。そのような以降のプロセスには、例えば、フットプリントに覆われるテクセルの決定、および/またはこれら特定のテクセルの重み付けが含まれる。辺の長さをクランプすることによって、これらのプロセス工程に関連するハードウェアの支出を明確に低減することができる。
一般に、本発明の方法によって生成されたデータは、すべてのテクセル指向のラスタープロセスへと供給することができる。
本発明の好ましい実施の形態によれば、すでに述べたように、種々の解像度を有する複数のいわゆる画像マップ、すなわちミップマップとも称される画像マップが、フットプリントに関係付けられたテクスチャのために提供される。解像度を特定するため、フットプリントによって接触されるテクセル格子のテクセルのサイズが、フットプリントの寸法または形状に基づき、かつ表現しようとするフットプリントの所望の画像品質に基づいて決定される。このように決定されたテクセルサイズに基づき、複数の画像マップの中に、当該画像マップに関連するテクセルサイズが上記決定されたテクセルサイズに一致している画像マップが存在するか否かが確認される。もし存在する場合には、その画像マップがフットプリントを表現するために採用される。一方、そのような対応する画像マップが存在しない場合には、すでに説明したとおりフットプリントのサイズが縮小され、フットプリントの画像品質に応じ、所望の解像度よりも1つ下の解像度を有し、この解像度に対応したテクセルサイズを有している利用可能な画像マップが、フットプリントを表現するために選択される。
好ましくは、画像品質は、基本的にテクセル格子の中でフットプリントによって接触されるテクセルの数を示している性能パラメータPによって特定される。
上記好ましい実施の形態に従い、基本的に、フットプリントを表現するために使用されるテクセルの数を(性能パラメータPの設定に応じて)規制するための2つの手法および/または技法について説明する。テクスチャ画像を予めフィルタ処理してなる低い解像度のバージョン‐すなわちミップマップ‐が利用できる場合、適切なミップマップレベルが、厚さ情報に基づいて計算される。これにより、結果として、テクセル格子の正方形のテクセルのサイズが、間接的な方法で決定される。このレベルの計算は、フットプリントの実際の空間寸法および/または形状に基づいている。必要なレベルを有する予めフィルタ処理された画像マップ(ミップマップ)が利用できない場合、フットプリントの面積が、選択的な方法でフットプリントの境界(辺)を縮めることによって縮小される。この辺の縮小および/または面積の縮小は、形状、性能パラメータP、および次に利用可能な画像マップ(ミップマップ)のテクセルサイズに基づいて実行される。この次に利用可能な画像マップが元のベースマップそのものである場合は、最も好ましくない場合となる。
本発明のさらなる好ましい実施の形態によれば、自身の4つの頂点によって規定される四辺形の入力フットプリントが、最初に、面積および/または形状および/または各辺の空間的広がりに関して解析される。この解析は、
−時計回りまたは反時計回りのいずれかであるフットプリントの回転の方向を決定する工程、
−フットプリントの縦方向の変形の程度を表現する異方性厚さパラメータを計算する工程、
−フットプリントについて境界ボックスを決定する工程、
−元のフットプリントの線形縮小バージョンをクランプするクランプボックスであって、(縮小したフットプリントの)いずれの辺の水平幅および垂直高さも所定の限界を超えないようにするクランプボックスを生成する工程、
を含んでいる。この所定の限界は、辺についての上記最大長さ値Emaxに基づいて特定される。さらに、クランプボックスの寸法は、厚さパラメータによって決まり、クランプボックスによって覆われるテクセルの数が、性能パラメータPによって特定された限度を超えないように設定される。
入力フットプリントがひとたび前述のように解析されると、このようにして得られかつ解析された情報は、その後、評価され、可能な限り修正されたフットプリントを表す出力データを、関連付けられたミップマップレベルおよび関連付けられた倍率レベルとともに生成する。これは主に、元のフットプリントのすべての頂点の元の座標を、計算されたミップマップレベルによって特定される座標系へと変換することを含んでいる。必要であれば、フットプリントの頂点のクランプボックスへの投影がフットプリントのさらなる縮小をもたらす。
このように、本発明の長所は、入力フットプリントの座標が、
−辺の幅または辺の高さが、好ましくは、規定の最大長さEmaxを超えることがなく、
−フットプリントに覆われたテクセルの数が、ユーザによって予め定められたテクセルの数と等しいか、あるいはより少なく、
−0よりも大きいミップマップレベルによって縮小(scaling-down)が選択された場合、フットプリントの形状が保存され、かつ
−取り出された画像における空間的および時間的不連続性が回避される
ように修正される点にある。
本発明の好ましい実施の形態によれば、本発明の方法が、複数のフットプリントのより高速での処理を可能にするハードウェアパイプラインの形態のハードウェアに実装される。
本発明の好ましい実施の形態を、添付の図面を参照しつつ以下でより詳細に説明する。
本発明の好ましい実施の形態による方法の概要の前半を描いたフローチャート図である。 本発明の好ましい実施の形態による方法の概要の後半を描いたフローチャート図である。 テクスチャ空間における一例としてのフットプリントについて、頂点および辺ベクトルを示す図である。 フットプリントおよび当該フットプリントに関連する厚さパラメータを示す図である。 フットプリントの厚さに基づくクランプサイズの推移を描いた図である。 フットプリントの縮小の一例を示した図である。
図1を参照しつつ、好ましい実施の形態による本発明の方法の概要を以下に説明し、図1に示したプロセス段階のそれぞれについて、残りの図面を参照してさらに詳細に説明する。
本発明の方法は、ブロック100から出発し、このブロックで、フットプリントを表現しているデータが受信される。以下の説明において、用語「フットプリント」は常に、凸状の四辺形構造であって、正方形の画素の曲面上への透視投影の近似計算結果を表わして使用されている。
図1に示したフローチャートにおいて、長方形は、以下でより詳細に説明するが、主たるプロセス工程を表わしている。これらプロセス工程の結果は、図1で平行四辺形に図式化されているデータ構造に記憶される。これらが、次のプロセス工程のための入力信号として使用される。個々のプロセス工程について以下に詳細に説明するが、説明を分かりやすくするため、数学的ベクトル表示(太字で表わされている)を採用している。
ブロック100で、フットプリントを表現したデータがひとたび受信されると、ブロック102で、フットプリントの頂点を表現するベクトルviを得ることができ、ここでi=0、1、2、3である(好ましい実施の形態についての説明は、フットプリントが四辺形であるとの仮定に基づいている)。
ブロック102に存在するフットプリント情報は、続くブロック104において、フットプリント解析に使用される。このフットプリント解析は、一方では、フットプリントの回転方向dの確立につながり、これがブロック106に提供され、ブロック108に出力される。さらに、ブロック104でのフットプリント解析は、ブロック110に提供される厚さパラメータtをもたらす。ブロック110に存在する厚さパラメータt、およびブロック112に存在する外部からの性能パラメータPに基づいて、クランプサイズc0が計算され、ブロック116に提供される。性能パラメータPは、フットプリントによって接触および/または覆われるテクセルの数を特定している。
必要なミップマップレベルがブロック120で計算される。一方で、ブロック120で実行される計算は、外部パラメータとして、最大ミップマップレベルMmaxの指示をブロック122から受け取る。さらに、ブロック102に存在するフットプリントデータに基づき、ブロック124で境界ボックスが計算され、その寸法bmin、bmaxがブロック126に提供され、ミップマップレベルの計算のためにブロック120に供給される。次いで、ブロック120で計算されたミップマップレベルmがブロック128に提供され、ブロック130に出力される。
ブロック116に存在するクランプサイズc0、およびブロック128に存在するミップマップレベルmに基づき、ブロック132でミップマップ補正が実行される(項目Aおよび図1Bを参照)。ミップマップ補正が、ブロック134に提供される修正済みクランプサイズcmをもたらす。修正済みクランプサイズcmが、ブロック136へと供給され、フットプリントが、クランプサイズcmによって定められたクランプ長方形へと適合するよう縮小される。ブロック136で実行された計算が、一方で、ブロック138および140に提供される修正済みフットプリントデータv’iおよびスケーリングファクタfx、fyをもたらす。図1bにも見ることができるように、処理ステップ136は、修正済みクランプサイズcm に加え、ブロック102に存在するフットプリントデータ(項目Bを参照)、ならびにブロック124で計算された境界ボックスbmin、bmaxに関するデータ(項目Cを参照)を受け取る。
ブロック138に存在する修正済みフットプリントデータv’iおよびミップマップレベルmが、ブロック142へと供給され、受け取ったデータおよびブロック132で受信した情報に基づき、選択されたミップマップレベルへの変換が実行され、変更済み/変換済みフットプリントデータv* iがブロック144に備えられ、そのデータがブロック146に出力される。
さらに、ブロック140に存在するスケーリングファクタfx、fyに基づいて、ブロック148で厚さが低減される。ブロック148は、ブロック140からの入力に加えて、ブロック110に存在する厚さパラメータ(項目Dを参照)を受け取る。さらに、ブロック148は、ブロック150から、厚さtを低減するための適切なアルゴリズムを受け取る。このようにして、修正済みの厚さパラメータt’が、ブロック152で出力される。ブロック154に存在する倍率パラメータ、およびブロック152に存在する修正済みの厚さパラメータt’に基づき、拡大シフトすなわち倍率シフトがブロック156で計算され、倍率レベルr’がブロック158に供給される。ブロック160に存在するアルゴリズムと、ブロック158に供給された倍率レベルと、ミップマップレベルmとに基づき、選択されたミップマップレベルへの変換がブロック162で実行され、修正済み倍率レベルr*がセクション164で得られ、さらにブロック146に出力される。
図1の各ブロックを、以下でさらに詳細に説明する。
図2は、x軸およびy軸によって広がるテクスチャ空間中に配置された凸状のフットプリント200の例を示している。さらに、このテクスチャ空間には、複数の正方形のテクセル要素からなるテクセル格子が配置されており、そのいくつかにフットプリントが重なっている。図2には、頂点ベクトルv0〜v3ならびに辺(エッジ)ベクトルs0〜s3が示されている。本発明の方法においては、頂点ベクトルv0〜v3が入力データとしてもたらされる。
フットプリントを表現するための適切な詳細レベルを特定するために使用される重要なパラメータは、いわゆるフットプリントの「厚さ」tである。図3には、この厚さパラメータが四辺形のフットプリントについてさらに詳しく示されている。図3には、4つの頂点ベクトルv0〜v3が、対向する頂点v0およびv2ならびにv1およびv3をそれぞれつなぐ2つの高さベクトルh0およびh1とともに示されている。さらに、図3には、2つの厚さパラメータt0およびt1が描かれており、2つの厚さパラメータt0およびt1のうちの最小の1つによって決定される最終の厚さパラメータtが示されている。
図からわかるように、厚さパラメータt0は、頂点v1およびv3を通って延び、かつ高さベクトルh0と平行である2つの直線の間の間隔を規定する。同様に、厚さパラメータt1は、頂点v0およびv2を通って延び、かつ高さベクトルh1と平行である2つの直線の間の間隔を示している。
図3に描かれたパラメータに基づき、厚さパラメータtの計算が、以下の計算式に従って実行される。
Figure 0004106364
本発明の好ましい実施の形態によれば、頂点インデックスの回転の方向dを随意により計算してもよく、その回転方向を、その後の特定の辺属性の計算に使用することができる。さらに、フットプリントの表面積Aを計算してもよい。回転の方向dおよび面積Aは、以下の計算式に従って計算される。
d=sign(hz
A=F/2
ここで、Fは、h0およびh1によって広がる平行四辺形の面積である。
方向dは、時計回りの回転について+1の値を有し、半時計回りの回転について−1の値を有する。h0=0またはh1=0の場合、フットプリントは点または線に変質し、この場合、回転方向dは0である。
厚さパラメータtの決定、ならびに回転方向dおよび面積Aの最適な決定の後、続いてクランプサイズcが計算される。クランプサイズcは厚さパラメータtの推移にわたる線形関数であり、このクランプサイズは、設定可能な性能パラメータPと、結果としてもたらされる辺に関しパラメータEmaxによって規定される最大長さとの間に位置している。クランプサイズcは、t=Pの場合に値Pを有し、この設定において、結果としてフットプリントの最大面積A*が設定され、このときA*≒P2である。パラメータcの設定に基づき、初期クランプサイズc0の決定が、以下の計算式に従って実行される。
Figure 0004106364
厚さパラメータtに対するクランプサイズcの推移が図4にプロットされており、図からわかるように、クランプパラメータの値は、t=0についてc=Emaxであり、この値から始まって、t=Pで到達する値Pまで線形に減少する。この値にて、クランプパラメータcの値は値Pで一定を維持する。図4は、最下部の折れ線において、最初の境界値および/または最初のクランプサイズc0および/または厚さパラメータtに対するその推移を示している。図4において、最下部の折れ線は、ミップマップレベル0についてのクランプボックスの最初に計算されたサイズc0を示している。これは、使用すべき解像度の目安を表わしている。折れ線は以下の挙動を定性的に表わしている。より小さいt、すなわちより小さい面積を持つ狭いフットプリントでは、テクスチャのクランプサイズおよび好ましい解像度が大きくなり、テクスチャのテクセルサイズは、フットプリントのサイズに比例して小さくなる。Emaxによってもたらされる上方向へのクランプが、許容される最大の辺長さを確定させ、Pによってもたらされる下方向へのクランプが、プロセスの継続時間を制限する。Pの値が大きくなるに従い、フットプリントの面積の増加において、低い解像度へのジャンプがより遅く実行される。上側の折れ線cmは、ミップマップレベルmについての座標変換c0に相当する。mがmreqに等しくない場合、上側の折れ線が必要とされ、従って縮小が必要とされる。
必要なミップマップレベルmreqおよび必要なフットプリントのサイズの縮小計算を、図5を参照しつつ以下でより詳細に説明する。
最初に、表現しようとするフットプリントについて、ミップマップレベルがフットプリントの元の寸法および形状の中に存在し、そのミップマップレベルはフットプリントの縮小を回避するものであると仮定する。この場合、この最小ミップマップレベルによって、フットプリントのための境界ボックスのいかなる辺も、上記の方法で決定されたクランプサイズc0よりも大きくないことが確実である。フットプリント200に加え、さらに図5には、例として境界ボックス202が示されており、境界ボックス202ならびに必要とされるミップマップレベルmreqが以下の計算式に従って生成される。
Figure 0004106364
ここで、「ceil」という関数は、括弧内の項を次の整数値まで+∞の方向に増加させることを意味している。図5は、上記の計算式にて再現されたパラメータbminおよびbを表わしており、この計算式において再現されたパラメータbmaxは、座標系の原点からベクトルbの頂点まで延びるベクトルであるが、分かりやすくするため表示されていない。
適用すべきミップマップレベルmを得るため、必要とされるミップマップレベルが、以下の計算式に従って、入手可能な最高のレベル値Mmaxにクランプされる。
m=min(Mmax,mreq
一方、所望のミップマップレベルmが、境界ボックスによって特定されたミップマップレベルよりも小さく、すなわちmreqよりも小さいと見出された場合、フットプリントがクランプボックスに適合するようフットプリントのサイズを小さくする必要がある。クランプボックスは、以下の計算式に従って決定されるミップマップ補正されたクランプサイズcmに基づいて計算される。
m=max(P・2m,c+(2m−1)・Emax
補正されたクランプサイズcmのパラメータの推移も、図4にプロットされている。
図5には、補正されたクランプサイズcmに基づいて生成されたクランプボックス204が示されている。フットプリント200の縮小済みフットプリント206へのサイズの縮小は、元のフットプリントの頂点v0〜v3が頂点v0’〜v3’へと変換され、変換後の頂点がクランプボックス204の辺上へと配置されるように実行される。元の頂点の修正済み頂点への変換は、以下の計算式に従って実行される。
Figure 0004106364
ここで、fx、fyは、xおよびy方向についてのスケーリングファクタである。
最後のブロックにおいて、縮小されたフットプリントv’iの座標が、ミップマップレベルmへと移されなければならないが、これは、以下の計算式に従って実行される。
Figure 0004106364
さらに、本発明の方法は、複数のフットプリントを含むフットプリントの表示における時間的および空間的アーチファクトを回避するため、後にサブテクセルサイズを有するフットプリントの拡大に使用されるかもしれない厚さパラメータtに応じた倍率レベルの提供を準備してもよい。
厚さパラメータtがフットプリントのサイズの縮小によって変化すると、このパラメータtも設定されなければならない。厚さパラメータtが異方性の特性を持つため、上記計算式に基づいて、縮小された頂点ベクトルのための新しい厚さパラメータを生成することによって、厚さパラメータtを計算することができるが、多大な計算の労苦を必要とする。一方、好ましい実施の形態によれば、厚さパラメータtは、配向性(oriented)のスケーリングファクタfxおよびfy(方法t)を用いることによって、はるかに少ない労苦で近似的に決定される。すなわち、新たな設定厚さパラメータt’を決定するために以下の方法が利用できる。
Figure 0004106364
すでに説明したとおり、(2)に記載の方法が好ましい。
倍率レベルrは、倍率なしの最小厚さを表現する設定可能な倍率パラメータTによって制御される。倍率レベルは、以下の計算式に従って生成される。
Figure 0004106364
Tの値が大きくなると、表示しようとする画像が不鮮明になってゆくが、同時に、知覚されるアーチファクトは少なくなる。Tについては、値√2が好都合であることが証明されている。T=0が選択された場合、一切の拡大は実行されない。
上記の変更された厚さパラメータt’の決定方法と同様に、倍率レベルr’を選択されたミップマップレベルmへと変換するための3つの可能な方法(方法r)が考えられる。すなわち具体的には、
Figure 0004106364
である。
1)として述べた方法は、有効なフィルタサイズをすべてのミップマップレベルについて維持する。しかしながら、テクセルよりも小さいサイズを有するテクスチャ要素の補償は、ミップマップレベル0にのみ適用され、ミップマップレベルが高くなるにつれて、徐々に有効でなくなる。方法3)は、すべてのレベルにおいてTが一貫していることを保証する。しかしながら、有効なフィルタサイズは、2つのレベルの間で離散的に拡大することになり、さらに計算がより高価になる。結局のところ、好ましい方法2)は1)と3)の間の折衷案であり、従って、当然ながら実行が最も容易な方法である。
前述のとおり説明したパラメータを用いて、フットプリントの色を後続のプロセス工程で計算するようにしてもよい。この目的で、グラフィクスユニットのさらなるプロセス工程において決定されたパラメータが提供され、次いで、グラフィクスユニットはこのパラメータを用いて通常の手法でフットプリントの色を生成してもよい。
好ましい実施の形態に関する以上の説明においては、4つの辺を有するフットプリントに基づいて本発明を説明したが、本発明の手法は、原理的にあらゆるフットプリントへと展開が可能である。

Claims (7)

  1. ある解像度(m)を有するテクスチャ要素を提供するグラフィクスシステムにおいて、フットプリントに接触された特定数(P)のテクスチャ要素に基づいてフットプリント(200)を修正するための方法であって、
    (a)上記フットプリント(200)の寸法または形状を決定する工程(104)と、
    (b)上記テクスチャ要素の特定数(P)と工程(a)で決定した寸法または形状とに基づいて、上記フットプリントに関連付けられるテクスチャ要素の解像度(mreq)を特定する工程(114)と、
    (c)上記グラフィクスシステムが工程(b)で特定された解像度(mreq)を有するテクスチャ要素を提供するか否かを決定し、
    (c.1)上記グラフィクスシステムが工程(b)で特定された解像度(mreq)を有するテクスチャ要素を提供する場合(m=mreq)には、上記フットプリント(200)を維持し、
    (c.2)上記グラフィクスシステムが工程(b)で特定した解像度(mreq)を有するテクスチャ要素を提供しない場合(m≠mreq)には、上記グラフィクスシステムによって提供されかつ各々の解像度を持つテクスチャ要素を選択し、上記フットプリント(200)のサイズを縮小(136)して、サイズ縮小後のフットプリントによって接触されるテクスチャ要素の数が上記特定数(P)と本質的に等しいか、あるいは上記特定数(P)よりも少なくなるようにする工程(118)と、
    を含むことを特徴とする方法。
  2. 上記グラフィクスシステムは複数の解像度を有するテクスチャ要素を提供し、上記特定した解像度よりも1つ下の解像度を有するテクスチャ要素が工程(c.2)において選択されることを特徴とする請求項1に記載の方法。
  3. 上記工程(a)は、
    (a.1)上記フットプリント(200)の辺(s0、s1、s2、s3)が、特定された寸法(Emax)を超えるか否かを決定する工程と、
    (a.2)上記辺の寸法が上記特定された寸法を超える場合には、上記辺の寸法が上記特定された寸法以下になるまで、フットプリントのサイズを縮小する工程と、を有することを特徴とする請求項1または2に記載の方法。
  4. 上記グラフィクスシステムは、種々のレベル(m)のミップマップの形式を持ち、異なる解像度を有するテクスチャ要素を提供することを特徴とする請求項1ないし3のいずれか一項に記載の方法。
  5. 上記工程(b)は、
    上記フットプリント(200)を囲む長方形(202)であって、その辺上にフットプリント(200)の頂点(v0、v1、v2、v3)が位置している長方形(202)を特定する工程を含むことを特徴とする請求項1ないし4のいずれか一項に記載の方法。
  6. 上記工程(c.2)は、
    上記グラフィクスシステムが提供するテクスチャ要素の解像度に応じて、クランプボックス(204)を特定する工程と、
    上記フットプリント(200)の頂点(v0、v1、v2、v3)を上記クランプボックス(204)の辺上へとずらすことによって、上記フットプリント(200)のサイズを縮小する工程と、
    を含むことを特徴とする請求項1ないし5のいずれか一項に記載の方法。
  7. 上記長方形(202)および上記クランプボックス(204)が、上記フットプリント(200)の厚さパラメータ(t)に基づいて特定されることを特徴とする請求項5または6に記載の方法。
JP2004540605A 2002-09-13 2003-09-09 フットプリントの解析および修正方法 Expired - Fee Related JP4106364B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10242639A DE10242639A1 (de) 2002-09-13 2002-09-13 Verfahren zur Analyse und Modifikation eines Footprints
PCT/EP2003/010016 WO2004032060A1 (de) 2002-09-13 2003-09-09 Verfahren zur analyse und modifikation eines footprints

Publications (2)

Publication Number Publication Date
JP2005538475A JP2005538475A (ja) 2005-12-15
JP4106364B2 true JP4106364B2 (ja) 2008-06-25

Family

ID=31895970

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004540605A Expired - Fee Related JP4106364B2 (ja) 2002-09-13 2003-09-09 フットプリントの解析および修正方法

Country Status (9)

Country Link
US (1) US7221372B2 (ja)
EP (1) EP1537537A1 (ja)
JP (1) JP4106364B2 (ja)
KR (1) KR100633029B1 (ja)
CN (1) CN1327396C (ja)
AU (1) AU2003266371A1 (ja)
DE (1) DE10242639A1 (ja)
TW (1) TWI257590B (ja)
WO (1) WO2004032060A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4660254B2 (ja) * 2005-04-08 2011-03-30 株式会社東芝 描画方法及び描画装置
US7737988B1 (en) * 2005-11-14 2010-06-15 Nvidia Corporation Using font filtering engines for texture blitting
CN101604443B (zh) * 2009-07-29 2011-07-06 腾讯科技(深圳)有限公司 一种发射体运行轨迹的生成方法及装置
TWI476640B (zh) 2012-09-28 2015-03-11 Ind Tech Res Inst 時間資料序列的平滑化方法與裝置
KR102282189B1 (ko) 2014-07-02 2021-07-27 삼성전자 주식회사 밉맵 생성 방법 및 장치
KR102477265B1 (ko) * 2015-09-24 2022-12-13 삼성전자주식회사 그래픽스 프로세싱 장치 및 그래픽스 파이프라인의 텍스쳐링을 위한 LOD(level of detail)를 결정하는 방법
CN110390012B (zh) * 2018-04-13 2023-12-05 北京京东尚科信息技术有限公司 轨迹聚合方法、装置、存储介质及电子设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0813739B1 (en) * 1995-03-08 2003-05-14 Optical Disc Corporation Method and means for changing pit depth on an optical recordable medium
US5877771A (en) * 1996-07-12 1999-03-02 Silicon Graphics, Inc. Method and apparatus for supersampling based on the local rate of change in texture
US6097397A (en) * 1997-11-20 2000-08-01 Real 3D, Inc. Anisotropic texture mapping using silhouette/footprint analysis in a computer image generation system
US6879324B1 (en) * 1998-07-14 2005-04-12 Microsoft Corporation Regional progressive meshes
US7061500B1 (en) * 1999-06-09 2006-06-13 3Dlabs Inc., Ltd. Direct-mapped texture caching with concise tags
US6400370B1 (en) * 1999-09-10 2002-06-04 Intel Corporation Stochastic sampling with constant density in object space for anisotropic texture mapping
US6807290B2 (en) * 2000-03-09 2004-10-19 Microsoft Corporation Rapid computer modeling of faces for animation
US6766281B1 (en) * 2000-05-12 2004-07-20 S3 Graphics Co., Ltd. Matched texture filter design for rendering multi-rate data samples
US6850243B1 (en) * 2000-12-07 2005-02-01 Nvidia Corporation System, method and computer program product for texture address operations based on computations involving other textures
US20020126133A1 (en) * 2001-02-08 2002-09-12 3Dlabs Inc., Ltd. Fast anisotropic/anisotropy sensitive single MIPmap sampled filtering

Also Published As

Publication number Publication date
DE10242639A1 (de) 2004-03-25
CN1682246A (zh) 2005-10-12
JP2005538475A (ja) 2005-12-15
US7221372B2 (en) 2007-05-22
US20050156940A1 (en) 2005-07-21
KR100633029B1 (ko) 2006-10-11
AU2003266371A1 (en) 2004-04-23
WO2004032060A1 (de) 2004-04-15
CN1327396C (zh) 2007-07-18
EP1537537A1 (de) 2005-06-08
TWI257590B (en) 2006-07-01
KR20050046775A (ko) 2005-05-18
TW200404266A (en) 2004-03-16

Similar Documents

Publication Publication Date Title
JP6563048B2 (ja) スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整
EP2564376B1 (en) Tessellation of patches of surfaces in a tile based rendering system
US6219070B1 (en) System and method for adjusting pixel parameters by subpixel positioning
JP5451767B2 (ja) 補間強化シーム操作に基づく画像サイズ変更方法及びシステム
CN107256573B (zh) 基于图块的计算机图形
US7586496B1 (en) Shorter footprints for anisotropic texture filtering
JP4522996B2 (ja) テクスチャマッピングにおける適応リサンプリングのためのシステム
KR20190129013A (ko) 그래픽 처리
US8330767B2 (en) Method and apparatus for angular invariant texture level of detail generation
JP2000182038A (ja) 歪まされた情報からの遠近法的矯正デ―タの生成方法及びこれに用いる装置並びにコンピュ―タプログラム製品
JP2006244426A (ja) テクスチャ処理装置、描画処理装置、およびテクスチャ処理方法
US7221372B2 (en) Method of analyzing and modifying a footprint
US11158110B1 (en) Graphics texture mapping
US10089782B2 (en) Generating polygon vertices using surface relief information
JPH0771936A (ja) 画像処理装置及びその方法
JP4198087B2 (ja) 画像生成装置および画像生成方法
US20140327689A1 (en) Technique for real-time rendering of temporally interpolated two-dimensional contour lines on a graphics processing unit
KR20130079819A (ko) 절차적 방법에 의해 생성된 지형 데이터를 편집하는 방법
WO2005004064A1 (en) Selection of a mipmap level
US6400370B1 (en) Stochastic sampling with constant density in object space for anisotropic texture mapping
US20020175923A1 (en) Method and apparatus for displaying overlapped graphical objects using depth parameters
JPH11126261A (ja) テクスチャマッピング方法及びその装置
JP2005513655A (ja) 表示用画像を表現するコンピュータグラフィックシステムおよび方法
US7158143B2 (en) Fast algorithm for anisotropic texture sampling
JP4009289B2 (ja) フットプリントに係るテクセルのカラー値をカラー計算するための重み付けファクタを決定する方法

Legal Events

Date Code Title Description
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: 20080318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080331

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: 20110404

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110404

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20110404

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110404

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20110404

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20120404

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120404

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120404

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120404

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130404

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130404

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140404

Year of fee payment: 6

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