JP5199424B2 - ランク−1格子による画像合成 - Google Patents

ランク−1格子による画像合成 Download PDF

Info

Publication number
JP5199424B2
JP5199424B2 JP2011173177A JP2011173177A JP5199424B2 JP 5199424 B2 JP5199424 B2 JP 5199424B2 JP 2011173177 A JP2011173177 A JP 2011173177A JP 2011173177 A JP2011173177 A JP 2011173177A JP 5199424 B2 JP5199424 B2 JP 5199424B2
Authority
JP
Japan
Prior art keywords
lattice
grid
rank
sampling
pixel
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.)
Active
Application number
JP2011173177A
Other languages
English (en)
Other versions
JP2012009053A (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.)
Nvidia ARC GmbH
Original Assignee
Mental Images GmbH
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 Mental Images GmbH filed Critical Mental Images GmbH
Publication of JP2012009053A publication Critical patent/JP2012009053A/ja
Application granted granted Critical
Publication of JP5199424B2 publication Critical patent/JP5199424B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06T15/06Ray-tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/12Indexing scheme for image data processing or generation, in general involving antialiasing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Description

関連出願への相互参照
本出願は、2005年6月23日出願の米国仮特許出願第60/693,232号の利益を主張し、その全体が参照によって本明細書に一体化される。
コンピュータプログラム付属書への参照
ソースコードリストを本明細書と共に提出する。その全体が本明細書に一体化されている。ソースコードリストは、本明細書中「付属書」と呼び、「1.1.1」や「1.1.1.1」の形式の参照番号で確認される章にまとめている。
技術分野
本発明は、概ね、動画および他の用途のための、デジタル演算システムにおける、およびデジタル演算システムによる画像合成のための方法とシステムに関し、特に、ランク−1格子による画像合成のための方法、システム、機器、コンピュータソフトウェア、およびディスプレイ技術に関する。
先行技術の説明
画像合成の使用は、動画ならびに他の商業的および科学的用途においてますます重要かつ広範になってきた。合成画像は、通常、画像要素すなわち画素と呼ばれる2次元配列のデジタル値を表す。従って、2次元の関数と通常みなされている。
画像合成は、情景から合成画像を作製するプロセスである。一般事項として、デジタル画像は、ラスタライゼーションによって生成される。また、3次元情景の写実的画像の場合は、レイトレーシングによって生成される。両方のアプローチは、元の関数を画素基底へと投影することで各画素について適切な色を決定することを目的とする。元の関数が離散した表現であることによって、以下記載のようにエイリアシングという問題が生じる。
特に、単一の画素の強度を算出するには、画素領域上で積分関数を必要とする。この積分は、しばしば非常に複雑で解析的に解くことができないため、解に対して数値的手法が必要である。そのような手法には、モンテカルロ法および準モンテカルロ法が含まれ得る。しかし、このような用途に使用される通常の数値的手法には、それ自体の制限と付随する問題とがある。
コンピュータグラフィックスに使用される他の演算的アプローチは、格子理論である。例えば、コンピュータグラフィックスに通常使用されるアキュミュレーションバッファは、レギュラーグリッドの構造を利用している。さらに、効率的なラスタライゼーション法は、このようなグリッドを利用して設計されてきた。特定の公知のサンプリング法は、フィボナッチ格子を採用しており、これはランク−1格子のタイプである。
迅速および効率的に生成され得て、画像合成および他のコンピュータグラフィックス用途の要請に容易に適合するランク−1格子を使用する方法、システム、機器、およびコンピュータソフトウェアを提供することが所望される。
アンチエイリアシング、ラスタライゼーション、および他のコンピュータグラフィックス機能に、ランク−1格子の効率的な適用を可能とする方法、システム、機器、およびソフトウェアを提供することも所望される。
発明の要旨
発明の局面は、特に画像合成の関連において、コンピュータ化された画像処理においてランク−1格子が使用される多くの技術を提供する。
発明の第一の局面は、画像合成に使用するランク−1格子を選択するために使用される技術に関する。多くの格子選択技術を記載し、その中には、最大化した最小距離によって2次元におけるコロボフ格子を捜索する技術が含まれ、準モンテカルロ理論で使用される
Figure 0005199424
−一様点集合の意味での最大限の一様性をそれにより達成している。さらに記載しているのは、格子基底の捜索のための技術、およびシフトしたランク−1格子の(t,m,s)−nets(ネット)への関係を解析するための技術である。
発明の別の局面は、ランク−1格子を使用して画像画素レイアウトを構成し、ラスタライゼーションスキームのベースとして画素レイアウトを使用するための技術を提供する。記載したラスタライゼーションスキームは、従来のラスタディスプレイを使用して実行され得る。さらに、ランク−1格子の構成を直接利用するラスタライゼーションスキームに基づく新たなディスプレイ技術を本明細書に記載する。
発明の別の局面は、ランク−1格子によるアンチエイリアシングのための技術を提供する。そこでは他のモンテカルロおよび準モンテカルロ点集合への収束に関して最大最小距離格子が比較される。エイリアシングの問題は、画素によって変わる。従って、発明の局面の記載には、ランク−1格子による適応的改良が含まれる。さらに、レイトレーシング環境における深度適応的フィルタ処理用スキームを記載している。
本発明が実施され得る通常のデジタル処理システムの概略図である。 本発明が実施され得る通常のパーソナルコンピュータ、または同様の計算装置の概略図である。 図3Aは、フィボナッチ格子およびその双対格子をそれぞれ図示する一組のグラフである。図3Bは、フィボナッチ格子およびその双対格子をそれぞれ図示する一組のグラフである。 本発明の第一の局面に従った全体の方法を図示するフローチャートである。 フィボナッチ格子L(34,21)の図である。 図6Aは、コロボフ格子L(8,1)を示す。図6Bは、コロボフ格子L(8,5)を示す。 点(2,4)から格子L(5,2)についての原点への距離の算出を図示するグラフである。 図8Aは、六角形格子の基本平行六面体を示す。図8Bは、基本平行六面体の半分を表す正三角形を示す。 図9Aは、単位正方形において選択された格子を図示する。図9Bは、実際の面積にスケーリングされた単位正方形において選択された格子を図示する。図9Cは、実際の面積において選択された格子を図示する。 図10Aは、画素あたり正確に1つの格子点を正確に得るため、シフトする前のスケーリングされたサンプリング格子を示す。図10Bは、画素あたり正確に1つの格子点を正確に得るため、シフトした後のスケーリングされたサンプリング格子を示す。 有効なシフトを有するmax−min−dist格子を記載する表を示す。 有効なシフトの条件下で捜索技術に従って生成された格子を記載する表を示す。 等距離平行線群で覆われた周期的に拡張された格子のグラフを示す。 そのミンコフスキー縮小基底を有する格子を図示するグラフを示す。 基底5における(0,2,2)−netを図示するグラフを示す。 基底bにおけるいくつかの(0,2,2)−netsについての格子パラメータを記載する表を示す。 発明の別の局面に従ったランク−1格子を使用するラスタライゼーション法のフローチャートを示す。 図18Aは、画素の強調とラスタグリッド上の線を図示するグラフである。図18Bは、画素の強調とラスタグリッド上の線を図示するグラフである。 図19Aは、画素の強調と格子グリッド上の線を図示するグラフである。図19Bは、画素の強調と格子グリッド上の線を図示するグラフである。 格子グリッド上の線のラスタライゼーションにおいて実施された単一のステップを記載する表である。 凸多角形についてのクロウのラスタライゼーションアルゴリズムに使用された変数を記載する表である。 24×24の解像度で格子L(576,155)上でラスタライズされた多角形を図示するグラフである。 図23Aは、異なる解像度における格子グリッド上のラスタライゼーションを示す図である。図23Bは、異なる解像度における格子グリッド上のラスタライゼーションを示す図である。 格子のセルを2つの三角形に分割することで、多角形のスムーシングを説明する図である。 最大最小距離格子を使用して構築されたラスタディスプレイを示す。 図26Aは、モノクロディスプレイ用の面光源のレイアウトを示す。図26Bは、ランク−1格子によるアンチエイリアシングのためのシステムにおけるカラーディスプレイのためのレイアウトを示す。 最大最小ランク−1格子L(64,19)のボロノイ図を示す。 図28Aは、モノクロディスプレイにおける六角形画素用の面光源のレイアウトを示す。図28Bは、カラーディスプレイ用のレイアウトを示す。 図29Aは、256個のセルをそれぞれ含む、4個のモジュールを備えるディスプレイの図を示す。図29Bは、256個のセルをそれぞれ含む、4個のモジュールを備えるディスプレイの図を示す。図31Aは、個別のモジュールの正方形レイアウトを示す。図31Bは、矩形レイアウトを示す。 ディスプレイモジュールがデマルチプレクサによってアドレス指定されるシステムの図を示す。 ディスプレイと画像のためのパラメータを記載する表を示す。 発明の別の局面に従ったランク−1格子によるアンチエイリアシングのための方法のフローチャートを示す。 ランク−1格子によるアンチエイリアシングを図示するために使用された無限大チェッカーボードの画像を示す。 4×4グリッドを有する画素サンプルの図を示す。 図35Aは、一様な4×4パターンを示す。図35Bは、各4×4層で1つのランダムサンプルを有してジッタを受けたグリッドを示す。 図36Aは、別のノイズを有する元の周波数の再構成を図示するグラフである。図36Bは、ノイズのみの復元を図示するグラフである。 n=2点に対するLarcher−Pillichshammer点集合を示す。図38Bは、ランダム化したLarcher−Pillichshammer点集合を示す。 図38Aは、n=16およびa=3についてのmax−min−dist格子を示す。図38Bは、同一のパラメータを有するランダム化した格子を示す。 図39Aは、max−min−dist格子L(252144,549)によって覆われた512×512の解像度を有するスクリーンの最初の5×5画素を示すグラフである。図39Bは、シフト(259,0)でシフトした格子を示す。 発明の別の局面に従ったランク−1格子による適応的改良のための方法を示す。 格子L(1048576,33919)のずれた基底において決定されたmax−min−dist格子L(8,5)を示す。 勾配基準の改良ジオメトリを示す。 勾配基準についての改良max−min−dist格子の配置図を示す。 B−スプライン次数についての決定関数のグラフを示す。 1画素半径と1.5画素半径の両方の台についてのサンプリング点の影響を説明する図を示す。 d=0について次数dおよびd+1の連続B−スプラインフィルタ間の補間を説明するグラフを示す。 図47Aは、副画素構成を知らずに傾斜対角線をレンダリングする図を示す。図47Bは、水平解像度を3倍化した後のレンダリングを示す。 1画素幅ボックスフィルタを使用すRGBデシメーションの図を示す。 無限大チェッカーボード画像をレンダリングするために使用された格子を説明する図である。 無限大チェッカーボード画像をレンダリングするために使用された格子を説明する図である。 無限大チェッカーボード画像をレンダリングするために使用された格子を説明する図である。
詳細な説明
本発明は、動画の表示または他の動的表示のため等の画像の、ランク−1格子を使用する画像の生成と合成に関する。本明細書中に記載の技術は、画像中の各画素について画素値が生成されるコンピュータグラフィックスシステムの一部として実施される。画素値は、シミュレートしたカメラの画面上に記録された情景における点を表す。コンピュータグラフィックスシステムは、選択された方法を使用して、画像についての画素値を生成するように構成されている。
次の検討では、そのような技術に従った方法、構成、システム、および表示技術を記載する。記載の方法とシステムが、独立構成で、またはネットワークを介して、Microsoft Windows(登録商標)、Linux、またはUnix(登録商標)のような通常のオペレーティングシステムに従って動作(またはエミュレート)するパーソナルコンピュータ(PC)や、同等の機器のような通常のコンピュータ装置を使用して、ソフトウェア、ハードウェア、または、ソフトウェアとハードウェアの組み合わせにおいて実施され得るということが当業者によって理解されよう。従って、以下および特許請求の範囲に記載の種々の処理手段および演算手段は、ソフトウェアおよび/あるいは、適切に構成されたデジタル処理機器または機器のネットワークのハードウェア要素において実施されることができる。処理は、特別用途のハードウェアまたは再構成可能なハードウェアを使用して、逐次にまたは並列的に実行されることが可能である。
発明に従った方法、機器、またはソフトウェア製品、図1に例示で図示するものなど(例えばネットワークシステム100)は、単独型、ネットワーク型であろうと、通常のPC102、ラップトップ104、ハンドヘルドコンピュータまたはモバイルコンピュータ106を含む携帯型または固定型であろうと、あるいはサーバー110およびストレージ112を含むこととなり得るインターネットまたは他のネットワーク108を介しようと、いずれかの広範な通常の演算機器およびシステム上で動作することができる。
通常のコンピュータソフトウェアおよびハードウェア実務に照らして、発明に従って構成されたソフトウェアアプリケーションが、例えば図2に示すようなPC102の内部で動作することができる。ここでプログラム指令は、CDROM116、磁気ディスク、または他のストレージ120から読み取られて、RAM114にロードされ、CPU118によって実行されることが可能である。通常のキーボード、スキャナ、マウス、または他の要素103を含む何らかの公知の機器または手段によって、データはシステムに入力されることが可能である。
本検討は、次のセクションに分けられる。
1.導入
2.ランク−1格子の選択
3.ランク−1格子上のラスタライゼーション
4.ランク−1格子によるアンチエイリアシング
5.ランク−1格子による適用的改良とフィルタ処理
6.結論
このようなセクション見出しは、次の検討の体系付けと明瞭性を提供するために使用されることに言及しておく。発明の範囲を規定または別に限定するような見出しの使用は意図していない。
1.導入
合成画像とは、画像要素すなわち「画素」と呼ばれ、それによって2次元の関数とみなされ得る2次元配列のデジタル値を意味する。本明細書で使用される用語「画像合成」は、情景から合成画像を作製するプロセスを意味する。
一般に、デジタル画像は、「ラスタライゼーション」として公知のプロセスによって生成される。または3次元情景の写実的画像の場合は、「レイトレーシング」として公知のプロセスによって生成される。両方のアプローチは、元の関数を画素基底へと投影することで各画素について適切な色を決定することを目的とする。元の関数が離散した表現であることによって、以下記載のようにエイリアシングという問題が生じる。
単一の画素Pの強度I(x)の算出には、画素領域に関する次の積分が必要となる。
Figure 0005199424
典型的には、この積分は非常に複雑であり、解析的に解くことができない。従って、数値的手法が使用されなければならない。積分は、不連続である可能性が非常に高いため、標準的なテンソル積求積法は、特に高次元において功を奏しない。元の関数の平方積分性(square integrability)によって、このような積分をいわゆる「モンテカルロ法」を用いて次元とは無関係に算出することができる。このアプローチは、積分
Figure 0005199424
を概算するための確率理論を使用する。ここで、I=[0,1)は、s次元単位立方体を表す。上記の積分の推定は、確率変数Yの構築に基づく。確率変数Yは、いわゆる「推定量」と言われ、その期待値
Figure 0005199424
は、所望の積分に対応する。なんらかの確率変数Xについて、
確率密度関数
Figure 0005199424
として
Figure 0005199424
を選択することで、所望の結果として、
Figure 0005199424
が得られる。nの独立同一確率分布の(i.i.d.)変数Yを考慮すると、中心極限定理によれば、総和
Figure 0005199424
が、大きいnについて分布した
Figure 0005199424
に漸近的になるとする。すると、3σ則
Figure 0005199424
は、積分1.2についての計算方法を
Figure 0005199424
によって提供する。
このことは、モンテカルロ法が、ランダムサンプリングと平均によって数値積分を実行することを意味する。3σ則によれば、近似誤差は、
Figure 0005199424
未満であり、大きいnついては高確率で、収束率は
Figure 0005199424
である。
をYの1つの実現(realization)yについてされた時間とする。モンテカルロアルゴリズムの計算コスト
Figure 0005199424
が、推定量の分散に依存するので、主要部の分離や、または効率を向上するためのジッタ処理等の様々な分散低減法が存在する。被積分関数の滑らかさまたは次元についての仮定が無いため、モンテカルロアルゴリズムは、標準的なテンソル積求積法の問題を克服する。しかし、この方法は、遅い収束のみを有し、コンピュータ上で実数の乱数がどのようにしても存在しない。モンテカルロ法の誤差限界について重要なサンプリング点の独立は、収束のためには必要ではないという事実を、準モンテカルロ法は利用する。その代わり、サンプリングパターンの一様な分布は重要な要因を表す。独立性、予測不可能性、および一様性が、単位区間上の実数乱数についての特性である一方、いわゆる準モンテカルロ点は、最初の2つの特性を放棄することによって決定論的に生成される。このような決定論的点は、実数乱数について可能なものよりはるかに一様である。このような構成の例は、ハマーズリー点集合または(t,m,s)−netsであり、これらは、以下に記載のように根基反転とランク−1格子に基づいている。
このような点集合は、単位立方体を一様に区分するという特性を共に有する。このような一様性は、次のように数式化されてきた。
定義1
Figure 0005199424
を任意の確率空間とし、
Figure 0005199424

Figure 0005199424
の空ではない部分集合とする。
Figure 0005199424
の場合、Xのn要素の点集合Pは、
Figure 0005199424
−一様と呼ばれる。
ここで、
Figure 0005199424
の場合は、
Figure 0005199424
であり、他の場合はゼロである。
既知の
Figure 0005199424
−一様な点集合の例には、根基反転ベース、デカルト積中点法からの点、およびランク−1格子が含まれる。確率空間
Figure 0005199424
を使用して、この定義は、コンピュータグラフィックスについても適用される。ここで、
Figure 0005199424
は、ボレル集合に対応し、λsは、s次元ルベーグ測度に対応する。
準モンテカルロ法は、原理的には、モンテカルロ法に似ているように見えるが、数値積分についての決定論的点を使用する。このことは、積分1.2が次の
Figure 0005199424
ように近似していることを意味する。
Figure 0005199424
−一様性によって、L上の決定論的誤差限界は、次のように得ることができる。
定理1
Figure 0005199424
を任意の確率空間とし、
Figure 0005199424
をXの区分とし、ここで
Figure 0005199424
について
Figure 0005199424
であるとする。すると、任意の
Figure 0005199424
−一様点集合
Figure 0005199424
およびX上の任意の関数fについて、
Figure 0005199424
を得る。
上記の検討は、単一の画素の強度に適用される。同時に全画素を算出すること
Figure 0005199424
は、積分近似問題であり、典型的には、パラメータ積分へと一般化することで対処されている。確率場についてのモンテカルロ法の一般化によって、いわゆる「従属(dependent)テストの方法」がもたらされる。全体の関数は、次のように推定され、
Figure 0005199424
計算上のコストは、
Figure 0005199424
である。準モンテカルロ法を考慮すると、定理1は、パラメータ積分へと一般化されてきた。
定理2
Figure 0005199424
を任意の確率空間とし、
Figure 0005199424
をXの区分とし、ここで
Figure 0005199424
について
Figure 0005199424
であるとする。すると、任意の
Figure 0005199424
−一様点集合
Figure 0005199424
およびX上の任意の関数fについて、
Figure 0005199424
を得る。
格子Lは、
Figure 0005199424
における離散部分集合である。
Figure 0005199424
これは、加法と減法のもとで閉じている。例えば、規則的な軸平行グリッドは、1つのタイプの単純な格子を表す。
Figure 0005199424
における各格子(lattice)は、
Figure 0005199424
として、
Figure 0005199424
の全整数一次結合を考慮することで、一式の一次独立ベクトル
Figure 0005199424
から生成されることが可能である。
Figure 0005199424
ベクトル
Figure 0005199424
は、格子の1つの基底である。これらは格子を生成するので、生成作用素ベクトルとも言われている。基底ベクトルの数sからLの次元が得られる。
基底の行列式の絶対値は、正確に言えば、列ベクトルが
Figure 0005199424
によって形成されている「生成作用素」行列Bは、s次元の体積の基本平行六面体に対応し、
Figure 0005199424
これは、基底ベクトルと原点によって結合されている。基本平行六面体
Figure 0005199424
によって、同じ体積かつ方向の格子セルへと分割され得る。
Figure 0005199424
基底は、特定の格子について固有ではないが、その行列式
Figure 0005199424
は、不変量を表す。これは、対応する基底行列の行列式が格子行列式に等しい場合、一式の一次独立ベクトルは、格子Lを生成することを意味する。
列ベクトル(B−1は、双対(dual)または極性(polar)格子Lの基底を構築する。これは、
Figure 0005199424
によって定義される。
Figure 0005199424
の行列式は、Lの行列式の逆数から現れる。次の双対格子
Figure 0005199424
の解釈は、以下に記載のスペクトルテストに有用である。双対格子
Figure 0005199424
における各点hは、以下の特性を保持するように一式の(s−1)次元の超平面
Figure 0005199424
を規定する。Lにおける各点は超平面の1つの上に存在し、各超平面は、Lの少なくとも1つの点を含み、このような超平面は平行であって等距離であり、そのような距離は、
Figure 0005199424
に等しい、という特性である。
図3Aは、双対格子点
Figure 0005199424
の一群の超平面を含むフィボナッチ格子200を示し、図3Bは、その双対格子210を示す。
格子理論における典型的な問題は、以下に記載する最接近点問題および最短ベクトル問題である。最接近問題は、例えば、変調と量子化の両方に格子が適用される通信理論において生じる。最短ベクトル問題は、例えば、乱数生成作用素の質を評価するために使用されてきた。この問題の他の応用は暗号化において見られる。以下に記載の別の問題は、格子規定縮小および格子基底について関連する捜索という問題である。他の格子問題には、接吻数を決定することまたはボロノイ関連(Voronoi−relevant)ベクトルを見つけることが含まれる。
2.画像合成に使用するランク−1格子の選択
本発明の局面は、画像合成においてランク−1格子を使用する技術を提供する。図4は、本発明に従った方法220を図示するフローチャートである。工程221において、生成されるべき合成画像の画素に対応する最大化した最小距離関数に応じて、ランク−1格子が選択される。工程222において、選択されたランク−1格子に応じて画素値が計算される。工程223において、計算された画素値に基づいて、表示制御電子出力信号が生成される。
次に、特にランク−1格子を選択するための技術について格子を詳細に説明する。そのような技術には、最大化した最小距離による2次元コロボフ格子の捜索のための技術が含まれ、これにより、
Figure 0005199424
−一様点集合という意味での最大の一様性を達成している。
本明細書に記載の発明の別の局面に従ったランク−1格子の応用の中には、「格子基底」、すなわち、選択されたランク−1格子によって規定された部分空間を生成し得る一式の一次独立のベクトルを必要とするものもある。従って次の検討には、格子基底の捜索のための技術が含まれる。さらに、シフトしたランク−1格子(shifted rank−1 lattice)の(t,m,s)−netsとの関連を分析している。
Figure 0005199424
における格子Lの「ランク」は、Lを生成するために必要なベクトルの最小数と規定される。1つだけのs次元生成作用素ベクトル
Figure 0005199424
を仮定すると、
Figure 0005199424
は、s次元格子を記載する。このようにして、この格子は「ランク−1−格子」として既知である。
「コロボフ格子」は、s次元ランク−1格子の一例を提供する。その生成作用素ベクトルは、形態
Figure 0005199424
を有している。nは点の数であり、コロボフ格子が、タプル(n,a)すなわち
Figure 0005199424
によって一意的に決定されるということである。
それによって、mod1演算は、1周期パターンとなる単位正方形へ格子を制限する。このことは、ランク−1格子が原点に対象な点であることを意味する。このような格子の1つの利点は、s次元空間を充填するため継ぎ目無くタイル張りされることが可能な点、および非常に迅速に生成され得る点である。
2次元コロボフ格子を表す「フィボナッチ格子」は、ランク−1格子の別の例である。フィボナッチ数列F:=Fk−1+Fk−2、F:=F:=1とする、に基づいて、点の数が、
Figure 0005199424
と設定され、生成作用素ベクトルがg=(1,Fk−1)と規定される。
図5は、n=F=34点および生成作用素ベクトル
Figure 0005199424
を有する単位正方形上のフィボナッチ格子230を示す。ランク−1格子の質は、整数生成作用素ベクトル
Figure 0005199424
によって大きく影響される。コロボフ形態の格子は、2次元の他の格子とあまり異ならないが、生成作用素ベクトルの選択を1つのパラメータへ減少させる。そのため、このような格子は、所定の特性を有する2次元格子についての捜索に関する本検討において特に興味深い。
以下に詳細に記載するように、ランク−1格子は、アンチエイリアシングおよびラスタライゼーションに関連して適用される。本検討は、どういう種類のランク−1格子を使用すべきかに関しての問題を扱う。
ランク−1格子の生成作用素ベクトル
Figure 0005199424
は、得られる点集合が低食い違いであるように選択され得る。その場合、この点集合の成分は、「優良格子点」と呼ばれる。例えば、s=2についてのフィボナッチ格子、およびその生成作用素ベクトルがコロボフ形態である格子は低食い違いのものである。しかし、優良格子点についての明白な構成はほとんど存在しない。
上述のように、ランク−1格子は、
Figure 0005199424
−一様な点集合である。ランク−1格子のこのような特性は、基本平行六面体によって生じたIの区分
Figure 0005199424
を考慮することによって理解が可能である。この意味においての最大一様性は、全サンプル点P間で、相互の最小距離
(数75)
Figure 0005199424
を最大化することによって達成され得る。それによって、単位円環面上でユークリッドノルムが計算される。
従って、ランク−1格子は、いわゆる「max−min−dist−特性」を特徴とし、本明細書中コロボフ形態
Figure 0005199424
で使用されており、捜索によって特定される。コロボフ形態の格子は、タプル(n,a)によって一意的に決定されるため、このことは、固定した数の点nについての捜索が、2つの格子点間の最小距離が単位円環上で最大に達するような
Figure 0005199424
について行われることを意味する。2つの格子点間の最小距離が増大するにつれ、得られる格子は、六方格子にさらに近づき、それによって、点集合の一様な分布が増加する。
図6Aは、a=8かつn=1であるL(8,1)についてのコロボフ格子240を示す。図6Bは、a=8かつn=5であるL(8,5)についてのコロボフ格子250を示す。図6A格子240について、点は、単位正方形の対角線上に存在する一方で、図6B格子240に示すmax−min−dist格子の点は、さらに一様に分布している。
2つの格子点間の最小距離を計算するタスクは、格子理論の周知の問題に関連している。「最接近点問題」は、所与の格子Lおよび所与の入力点
Figure 0005199424
について
Figure 0005199424
となるようなベクトル
Figure 0005199424
を見つけることにある。
格子Lにおける最小距離を計算することは、最接近点問題の簡単な修正によって達成され得る、Lにおける最短ベクトルの決定に対応する。そのため、ベクトルv≠0のみが考慮される。そして、原点に対する最接近点が、最短ベクトルすなわちLにおける最小距離を生じる。最接近点捜索法は、規則的構造を有しない格子について文献中に記載されてきた。しかし、ランク−1格子が特別な構造を提供し、低次元について考慮されるだけであるため、そこに存在する方法はランク−1格子に対しては適切ではない。以下の検討において、周期的かつ規則的構造およびこのような格子の適用の両方を利用する、格子捜索についてのいくつかのアプローチを記載する。
では、単位正方形上のランク−1格子についての捜索のための技術を記載する。付属書のセクション2.1.1は、所与の
Figure 0005199424
について、全ての可能な格子
Figure 0005199424
を考慮する単位正方形上での基本的捜索のためのコードリストを記載する。a>nについての値は、これらは、剰余演算によって格子
Figure 0005199424
を生み出すため考慮される必要はない。さらに、n>3を仮定すると、単位正方形の2つの対角線上に格子点が存在するため、a=1およびa=n−1は捜索から除かれる。a=0は、原点へと崩壊する格子を生じるであろう。従って、同様に無視される。
max−min−dist格子についてのパラメータaの選択は、一意的ではなく、すなわち、同一の最大最小距離となるいくつかの可能性が存在する。従って、集合
Figure 0005199424
が、それまでに求めた集合
Figure 0005199424
を格納するために使用される。
各格子について、アルゴリズムは、最短ベクトルの長さを全格子点
Figure 0005199424
に関して繰り返すことで決定する。式2.3に従うと、格子は、単位円環面上で規定されているが、§2.1.1コードリストにおける全計算は、浮動小数点の不正確さによる丸め誤差を回避するため整数計算にて実行される。このことは、本検討が[0,1)の代わりに[0,n)上の整数格子
=(i,a・i mod n) (2.4)
に主眼を置いていることを意味する。
剰余演算のため、格子L(n,a)⊂[0,n)は周期的である。最短ベクトルを求めるため、次に格子点
Figure 0005199424
から原点までの距離が計算される。単位円環上の計算は、i>n−iまたはa・i>n−a・i mod nの場合、異なる象限からの点
Figure 0005199424
を考慮することが必要である。
Figure 0005199424
図7は、格子L(5,2)についての上記技術を図示するグラフ260を示す。点
Figure 0005199424
の原点への距離を算出するため、周期性により、点(0,5)が新たな原点として取られる。新たな原点を使用することは、点(0,0)における第一象限の原点に対する点
Figure 0005199424
のユークリッドノルムの計算に対応する。
原点までの格子点
Figure 0005199424
の距離は、平方ユークリッドノルム
Figure 0005199424
によって算出される。平方とその総和の両方は、計算中に整数オーバーフローを生じることがあるが、次のように処理される。
・変数についてのデータタイプは、特にタプル(n,a)については正整数型(UINT)であるように、また、ユークリッドノルム計算に含まれる実体については符号無し倍長精度整数型(ULLINT)であるように、いずれか選択される。

Figure 0005199424
の場合は、x についての整数オーバーフローが生じるであろう。

Figure 0005199424
が、2つの要素の総和について当てはまり、
Figure 0005199424
であるので、
Figure 0005199424
の場合は、オーバーフローが明らかである。
最後の2つの場合において、§2.2.1コードは、次の格子点へと進む。式2.4における乗算a・imodnも、オーバーフローに関して問題がある可能性がある。従って、繰り返し計算される増量総和
Figure 0005199424
へと分解され、
Figure 0005199424
によって剰余演算が内部forループの各繰り返しにおいて適用される。
一旦最短ベクトルが求められると、その長さが、それまでの最大最小距離maxmindistを有するベクトルの長さと比較され、関連するパラメータaを可能であれば記憶する。しかし、新たなmaxmindistが、§2.2.1コードリストにおけるmindistについての初期値であるMAX_ULLINTにならないことを確実にするため、ブーリアンフラグnoOverflowが最初に真に設定されるまでこれはなされない。新たなmaxmindistが古いもの以上かどうかによって、ベクトル
Figure 0005199424
は、新たな値を格納する前にクリアされる。
§2.2.1コードリストの複雑度は、O(n)であり、これでは、格子捜索が大きなnについて実行されるとき非常に遅いことがわかる。従って、捜索領域を制約することが望ましい。まず、検討がなされるaの数をさらに減らすことが可能である。
Figure 0005199424
が捜索問題に対して有効な解である場合は、対称のため同じmax−min−distを有する
Figure 0005199424
も有効な解である。従って、aの範囲を2からn/2とすれば充分である。
さらに、「球の詰め込み」問題であるため、最短ベクトルの長さを決定するためには、全格子点に関して繰り返す必要はない。「球の詰め込み」は、全部または一部を互いに接しつつ重ならない球または2次元においては円の配置を求めることを意味する。この場合、円は、格子点を中心としており、その半径は、互いにちょうど接触するように選択される。これは、r=mindist/2によって達成される。従って、最大最小距離を求めることは、球の詰め込み問題なのである。球の詰め込みに関しては、(2次元における)基本平行六面体の体積に対する球の体積の比率を最大化する必要がある。
Figure 0005199424
ここで、Bは基底行列である。六方格子が、
Figure 0005199424
における球の詰め込み問題を解決するので、最も大きい最大最小距離がこのようなタイプの格子において達成される。従って、原点の周囲で半径lを有する円の外側である格子点を検討する必要はない。ここでlは、六方格子における2点間の距離である。この量は、次のようにして評価することができる。
各格子セルすなわち基本平行六面体は、2つの正三角形に分割される。格子は、nの面積に渡る。従って各n格子セル(各点について1つ)は、
Figure 0005199424
の面積を有する。従って、正三角形の面積Aはn/2である。このようにして、求める量である三角形の辺の長さlを計算することができる。
Figure 0005199424
図8Aおよび8Bは、上述のプロセスを要約した1対の図である。図8Aは、六方格子の基本平行六面体270を示す。図8Bに示すように、基本平行六面体の半分は、正三角形280を表す。hは三角形の高さを示す。lは、1つの三角形辺の長さを表す。
こうして、§2.2.1コードリストの外側forループが、
Figure 0005199424
で停止され得る。組み合わせて、基本捜索アルゴリズムの複雑度がO(n)から
Figure 0005199424
へと減らされた。
これまでは、L(n,a)における最小距離の最大化を別として、格子パラメータaに条件が課されなかった。nとaが互いに素である(これらの最大公約数が1であることを意味する)ことを要すると、すなわち、
gcd(n,a)=1
であるとすると、得られる格子点は、各座標軸上で等距離に階層化するであろう。従って、最小距離は、
Figure 0005199424
に制限され得る。しかし、この条件は、所与の
Figure 0005199424
についての最大最小距離格子を求めることに関して制約を表す。
nによっては、基本捜索アルゴリズムが非常に膨大な数のmax−min−dist格子を生じるものもある。可能な格子の数を減らすために、§2.2.1コードリストは、第2の最短ベクトルの距離も最大化されるように拡張されている。この場合、第3の最短ベクトルは、なんら改善をもたらさないことを考慮している。
今度は重み付けしたノルムの使用を検討する。これまでの点の検討は、単位正方形上のmax−min−dist格子についての捜索に主眼を置いてきた。得られる格子点は、例えば、1つの象限上で数値積分に共されてよい。以下にさらに記載する技術において、格子は、通常正方形的スケーリングではないコンピュータスクリーン全体を覆って使用される。しかし、単に
Figure 0005199424
を矩形領域にスケーリングすると、
Figure 0005199424
−一様に関して点の一様な分布とはならない可能性がある。非一様分布を図9A−Cに示す。図9Aは、単位正方形に選択された、n=786432点を有する格子を図示するグラフ290を示す。図9Bは、実際の領域にスケーリングされた、単位正方形における格子を図示するグラフ300を示す。図9Cは、実際の領域における格子を図示するグラフ310を示す。
従って、原点までの格子点の距離を計算する場合に、実際の領域の大きさを考慮する必要がある。そのため、ユークリッド・ノルムが、重み付けノルムに取って代えられる。従って、記載の方法が、あたかも単位正方形上で実行されるが、領域サイズを補正するため2つの倍率で修正された平方ユークリッドノルム
Figure 0005199424
を有している。このような倍率は、x−解像度(Resolution)およびy−解像度の両方を、これらの最大公約数(gcd)で割ることで得られる。
Figure 0005199424
倍率の導入は、基本捜索アルゴリズムにわずかな修正しかもたらさない。付属書の§2.1.2は、実際の領域サイズを考慮した拡張された捜索を含むコードリストを示す。§2.1.2コードリストは、任意の領域サイズ上での捜索と上記の改善とを包含する。§2.1.2コードリストにおけるドットは、§2.1.1コードリストの改変されていない部分を表す。
上述のように、記載の格子の1つの使用は、ディスプレイスクリーン全体をサンプリングすることである。xRes×yResのスクリーン解像度で格子点の数n=xRes・yResを仮定すると、各画素をサンプリングしていない状況、すなわち、なんらサンプリングされないままの画素が存在する状況に遭遇する可能性がある。図10Aは、この状況を図示するグラフ320を示す。図10Aにおいて、格子
Figure 0005199424
が[0,5)にスケーリングされ、スクリーンを解像度5×5でサンプリングしている。画素(0,1)が欠けている一方で画素(0,0)は2つのサンプルを含む。
同様に、
Figure 0005199424
として、格子点の数がn=xRes・yRes・αと設定されると、画素当たり同数のサンプルが常には達成されないであろう。さらに一般的には、区間
Figure 0005199424
ごとに、同数の点
Figure 0005199424
を得ることが望ましい。ここで、xResおよびyResはスクリーン解像度とする。
この問題に対しては、多くの解が存在する。解は、一般に全体の格子の有効なシフトについての捜索を有する。ここで、「有効」とは、シフトした格子について、上記の式で記載している区間ごとに同数の格子点が存在することを意味である。丸め誤差を回避するためには、[0,1)の代わりに[0,n)上で再度計算が実行されよう。
格子が周期性であることより、最大限1画素幅のシフトを考慮すると充分であり、基本平行六面体において捜索するよりも容易である。捜索領域(すなわち1画素)は、格子点の低次元投影を見ることで離散化される。このようなことが、各座標軸を等しく階層化する意味で完全である場合は、2つの格子点間の距離は、それぞれ、x軸上でxRes/n、y軸上でyRes/nである。このことは、1画素内において、
Figure 0005199424
投影された格子点がx軸上に、および
Figure 0005199424
投影された格子点がy軸上に存在することを意味する。このような投影による離散化は、図10Aグラフ320の左下隅の小グリッドによってハイライト表示しており、検討されるべきシフトを表している。次に、3つの重要な捜索戦略を検討する。
所与のmax−min−dist格子L(n,a)について理想的には有効なシフト
Figure 0005199424
が求められる。そのため、全ての可能なシフトが繰り返し処理され、画素あたりの格子点の数がカウントされる。その後、画素(0,0)における点の数が、他のカウント入力と比較される。これらの1つが第一の画素の格子点の数と等しくない場合は、すぐに比較が中止されることがあり、次の格子シフトへ切り替えがなされる。手順は、有効なシフトが見つかれば即停止し、[0,n)上でシフトを戻す。付属書の§2.1.3は、所与の格子についての捜索シフトのコードリストを示す。
図10Bは、グラフ330を示し、ここで
Figure 0005199424
のシフトが、
格子L(25,7)に加えられた後、[0,1)から[0,5)へとスケーリングされた。このシフトが加えられた後、正確に画素あたり1つの格子点が存在する。しかし、格子シフトは、非常に少ないnについてしか見つけることができず、nが大きくなるにつれ、有効なシフトが存在するであろう確率が小さくなる。図11は、有効なシフトが見つかった最大最小距離格子のいくつかとその元になるスクリーン解像度を列挙する表340を示す。
このように、捜索するための異なる方法が必要である。1つの可能性は、まず、少なくとも1つの有効なシフトを含むことになる格子に対するaの集合を捜索し、次に、このような候補間でmax−min−dist捜索を実行する。しかし、所与の
Figure 0005199424
について最もmax−min−dist格子
Figure 0005199424
に近似する格子
Figure 0005199424
を捜索するので、次の戦略が極めて良いことがわかった。第一のステップにおいて、aのリスト
Figure 0005199424
がL(n,a)における最小距離に関してヒープソートを使用してソートされる。その後、ソートされたリストが降順で渡され、シフト捜索が各aについて実行される。それによって有効なシフトを有する最初のaが所望の結果を生じる。この捜索戦略の実行は、付属書の§2.1.4に記載のコードリストに組み込まれている。
§2.1.4コードリストにおいて、画素あたりの格子点の数が再度カウントされる。1つの画素が、n/(xRes.yRes)点を超えて保持すると、処理は、次の格子シフトへとすぐに切り替わることができる。この場合、1の画素は、n/(xRes.yRes)サンプルまでは確実に含まないであろうからである。§2.1.4コードリストのドットは、前のコードリストと変わらない部分を表す。
3つの入れ子forループのため、§2.1.4コードリストは、O(n)の複雑度を有し、大きいnについては非常に遅い。しかし、シフトの捜索は、ループ(1)および(2)を交換することでかなり短縮することができる。その意味は、捜索領域を異なる順序で通過するということである。これは、少なくとも1つのシフトのy成分が、全ての検討した場合においてゼロであるという所見に基づいている。図12は、§2.1.4コードリストから得られる格子をリストする表350を示す。図12表において、最初のシフトが見つかった後にシフト捜索を停止しないことで非ゼロy成分を有するシフトが得られた。ループ(1)と(2)を切り替えたにもかかわらず、格子L(4194304,182183)を計算するのに、Intel Pentium(登録商標)4,2.8GHzで概ね5日かかった。
画素あたり同数の格子を達成しているが、得られた格子の大部分は最大最小距離特性を満足しないであろうことを念頭に置くべきであるが、可能な限り良く近似するであろう。
次に、ランク−1格子の選択において、いわゆる「スペクトルテスト」の使用を検討する。「スペクトルテスト」は、タプル(a,c,m,X)および漸化式
Figure 0005199424
によって規定される線形合同法乱数生成器の質を評価する。ここで、
Figure 0005199424
は、法であり、
Figure 0005199424
は、乗数であり、
Figure 0005199424
は、増分であり、
Figure 0005199424
は、開始値である。0と1との間の数は、
Figure 0005199424
によって与えられる。
全てのt>0について、周期mの数列
Figure 0005199424
に基づいて、スペクトルテストは、全m点の集合
Figure 0005199424
を解析する。これは、連続して重複するt−タプルの{u,u,...}によって形成され、それにより全ての可能な開始値を考慮する。理論を単純化するため、スペクトルテストは、c≠0で全周期mの線形合同数列が存在すること、またはmが素でありc=0で周期長がm−1であること、のいずれかを仮定する。常にm点が存在することを確実とするため、後者の場合には点集合に原点が追加される。これは、X=0は開始値として除外されなければならないからである。ここで、上記の点集合は、
Figure 0005199424
と記載することができる。
点集合Lによって生成されたパターンが格子構造を有することがわかるであろう。t=2かつc=0についての集合は、2次元コロボフ格子を生じる。一般に、c=0についてのLは、生成作用素ベクトル(1,a,a,...,at−1)modmを有するランク−1格子によって生成された点集合に対応する。2次元において格子点は、多くの異なる一群から選択され得る少数の平行線によって囲まれ得る。高次元において、複数群の線は、複数群の超平面に一般化される。スペクトルテストの目標は、超平面間の最大距離の逆数として定義されるt次元の精度vを、全点を取り囲む全複数群の平行な(t−1)次元超平面を考慮して決定することである。次の検討において、式2.17の格子へ双対である格子の最短ベクトルの長さに、vが対応することが得られるであろう。このことは、スペクトルテストが、max−min−dist格子の捜索に適用され得ることを意味する。
線形合同乱数生成器のパラメータcは、Lの全要素の相対距離が維持されるようにシフトをもたらすのみであるため、スペクトルテストになんら影響しない。このことは、漸化式
Figure 0005199424
を分解すると理解できる。ここで、γ=(1+a+...+at−1)cは一定である。従って、c=0と設定することができ、このことは、格子をコロボフ形式で直接扱うことを意味する。
捜索しているのは2次元のmax−min−dist格子であるため、2次元の点集合
Figure 0005199424
を検討し、Lの点を囲む平行直線の全群を考慮して、vすなわち線間の最大距離の逆数を計算することで充分である。まず、式2.18に隠されているmodm−演算が
Figure 0005199424
と記載することでmod1に置換される。
次に、集合Lを周期的に拡張することにより、すなわち
Figure 0005199424
全体を2次元超立方体のコピー
Figure 0005199424
で覆うことで、mod1−演算が処理される。これを、図13のグラフ300に図示する。ここで点集合
Figure 0005199424
が周期的に拡張され、ここで、周期的に拡張された格子が等距離の平行線の一群で覆われる。集合2.21は、
Figure 0005199424
であるので、(x,k,k)を(x+km,0,k−ak)に変更することによりさらに単純化され得、これにより変数kをゼロに設定する。このようにすることで、上記の点集合を
Figure 0005199424
によって記述されるようにすることができる。
集合2.22は、
Figure 0005199424
を満たす元の集合2.19のm点を含むことが理解されるであろう。
今度は、
Figure 0005199424
の全点を覆う複数群の線間で隣接する平行線間の最大距離を求めることが望まれる。このような一群を、含まれる線全てに垂直な非ゼロベクトルu=(u,u)で規定することができる。そして、特定の線上の点の集合は、
Figure 0005199424
によって記述することができ、ここでqは、各線についての固有の定数である。線は、原点を通る線の1つと等距離であるため、今度は
Figure 0005199424
が、一群の全ての線を規定するようにuの長さを調節することが可能である。このことは、q=1について、原点から線への最小距離として隣接する線間の距離を計算することができることを意味する。すなわち、
Figure 0005199424
コーシーの不等式によると、
Figure 0005199424
j=1,2に対して、x=u/(u +u )は、
Figure 0005199424
のため、式2.25において最小を生じる。
従って、隣接線間の距離は、
Figure 0005199424
である。
Figure 0005199424
が最小の場合、距離は最大に達する。この理由によって、2次元的精度vは、点集合2.22の全要素を覆う一群の超平面
Figure 0005199424
を規定する最短ベクトル
Figure 0005199424
の長さに対応する。このようなベクトル
Figure 0005199424
は、次の条件を満足しなければならない。すなわち、
Figure 0005199424
逆に、条件4を充足する任意の非ゼロ整数ベクトル
Figure 0005199424
を考慮すると、対応する一群の線は、
Figure 0005199424
の全要素を覆うであろう。というのは、全整数y,yについて内積
Figure 0005199424
が整数となるからである。従って、スペクトルテストは、最小値
Figure 0005199424
を求める必要がある。ここで、u=mx−axおよびu=xは、
Figure 0005199424
であるため、基本合同式のパラメトリックおよび一般解である。
最小値
Figure 0005199424
を求めるため、この問題は、全非ゼロ整数ベクトル(x,x)に関して、2次形式
Figure 0005199424
を最小化するさらに一般的な問題として定式化される。ここで、
Figure 0005199424
は任意の非特異行列である。w11=m,w12=0,w21=−aおよびw12=1は、式2.28の特別の形態を生じる。
付属書のセクション2.1.5に2次元精度vの値を決定する方法のコードリストを記載する。これには「ユークリッドステップ」が包含されており、これは高次元に関する2次元スペクトルテストの単純化を表し、縮小2値2次形式(reduced binary quadratic form)の「ガウスの概念」に基づいている。合同式u+au≡0に対する全整数解が、整数x,xについて、w11−aw12=w21+aw22≡0およびdet(W)=mとなるような行列Wであるとして、u=x11+x21およびu=x12+x22の形式を取ることを証明することができる。さらに、Wが条件
Figure 0005199424
を満足する場合、(u,u)=(w11,w12)は、u21+u22を、全非ゼロ整数解に関して最小化する。
§2.1.5コードリストにおける方法は、上述のように、式2.29に示す2次形式を、(w11,w12)がu21+u22の最小解を表すまで縮小することで、このような考慮を利用している。
は、
Figure 0005199424
の全要素を覆う一群の線を規定する最短ベクトルの長さであるため、および条件2により、2次元精度は、
Figure 0005199424
における、すなわち、
Figure 0005199424
に双対である格子において、最短ベクトルの長さとみなすこともできる。すなわち、
Figure 0005199424
である。
Figure 0005199424
における各点uは、
Figure 0005199424
における各点が線のうちの1つの上にあるように、平行で等距離の一式の線を規定するため、最短ベクトル
Figure 0005199424
は、最大距離を有する線群を規定する。
Figure 0005199424
を1つおきに選択することで、線は互いにさらに接近することとなる。次いで、一群の中から2つの隣接する線が選択され、それぞれの1つの格子点は、第1の線上に一方の固定した点
Figure 0005199424
があり、
Figure 0005199424
に最接近している第2の線上に他方の点
Figure 0005199424
があるようにされている。そして、
Figure 0005199424
および
Figure 0005199424
間の距離は、2つの隣接する線間の距離が増加するにつれて減少する。従って、
Figure 0005199424
における最短ベクトルも、
Figure 0005199424
における最短ベクトルを示す。実際のところ、vすなわち
Figure 0005199424
における最短ベクトルの長さは、何らかの倍率によっては
Figure 0005199424
における最短ベクトルの長さと等しい。このことは、
Figure 0005199424
の基底Bおよび
Figure 0005199424
の基底
Figure 0005199424
を考慮することで証明できる。
Figure 0005199424
を、
Figure 0005199424
のミンコフスキー縮小基底であるとする。すると、(B−1の列ベクトルは、双対格子
Figure 0005199424
の基底を表す。ここで、
Figure 0005199424
がBの行列式とすると、
Figure 0005199424
の基底行列の逆は、
Figure 0005199424
によって計算できる。
従って、
Figure 0005199424
の基底行列は、
Figure 0005199424
である。
双対格子の基底ベクトルの長さを計算すると、
Figure 0005199424

Figure 0005199424
の違いは1/mの係数によるだけであることがわかる
Figure 0005199424

双対格子の基底ベクトルは、
Figure 0005199424
の両方を±90°回転することから得られ、
Figure 0005199424
これは、双対格子の格子点間の相対距離が
Figure 0005199424
のものに対応することを意味する。
Figure 0005199424
が、
Figure 0005199424
における最短ベクトルであり、
Figure 0005199424

Figure 0005199424
において同様である。
逆に、双対格子
Figure 0005199424
において最短ベクトルを求める場合は、その長さは、mで乗算した
Figure 0005199424
における最短ベクトルの長さを生じる。この事実は、§2.1.1コードリストで記載したように、単位正方形上でのmax−min−dist格子の捜索に利用される。全格子点に関して繰り返して最小距離を計算する代わりに、2次元スペクトルテストが適用される。[0,m)が計算されるので、2次元精度は、求められていた量を提供する。他の基本捜索法は、付属書の§2.1.6に記載のコードリストに示すように変わりはない。
スペクトルテストは、vを決定するために数サイクルを必要とするのみであるので、§2.1.1法が上述の最適化を組み込む場合であっても、§2.1.6コードリストに記載の方法は§2.1.1に記載の方法よりもはるかに速い。しかし、§2.1.5の方法を使用することで、§2.1.6の方法は単位正方形に制約される。
次に格子についての基底を捜索する方法を記載する。以上までにおいては、発明の記載は、格子捜索のための方法に重点を置いてきた。次にさらに詳細に記載するように、発明の局面には、ランク−1格子上のラスタライゼーションと適応的サンプリングが含まれる。従って、所与の格子について良好な基底を選択することが必要である。所与の基準に従って格子基底を決定するプロセスは、「縮小」と呼ばれる。本目的のため、基底ベクトルができる限り短い場合が有利であり、合理的に六方格子セルが得られる。しかし、一般的事項として、2つの最短ベクトルを単純に選択することが可能である。これらは、必ずしも基底を形成しないからである。
この問題は、次のように定式化されてきた。行ベクトルである基底
Figure 0005199424
は、
Figure 0005199424
が、全ての
Figure 0005199424
について、および全ての
Figure 0005199424
について該当する場合は、「エルミート縮小(Hermite reduced)」されていると言われる。この意味は、同一の格子の全生成行列の対応する数列が辞書式の順序であるリストにおいて数列
Figure 0005199424
が、最初の要素である場合、生成行列Gが縮小されるということである。このように縮小された基底において、最初の基底ベクトルは、最短非ゼロ格子ベクトルに一致する。エルミート縮小基底は各格子について存在するが、明確な構成は既知ではない。
ここで記載している基底捜索においては、それほど厳密ではない縮小基準が使用される。基底
Figure 0005199424
が、
1.gがLにおける最短非ゼロベクトルであり、
2.
Figure 0005199424
について、(g,...,g)がLの基底に拡張され得るようなLにおいてgが最短ベクトルである場合に、この基準に従って縮小される。
このようないわゆる「ミンコフスキー縮小基底」は、常に最短非ゼロ格子ベクトルを含む。
使用され得るさらに他の縮小方法が存在し、それには「Korkine−Zolotareff縮小」および「LLL−縮小」が含まれる。縮小法の選択は、根本的な問題に依存する。ミンコフスキー縮小基底を求める問題はNP困難であるが、本目的のためには、2次元の場合に制限されており、ランク−1格子の特別な構造を利用することができることから、この縮小を使用することで充分である。
2次元において、ミンコフスキー縮小基底を求めるには、最短非ゼロ格子ベクトル
Figure 0005199424
について捜索が最初に実行される。その後、次の基底ベクトル
Figure 0005199424
が、
Figure 0005199424
に一次独立である、Lにおいて2番目に最短の格子ベクトルを捜索することで決定される。このようなことが、基本捜索法を修正することで行われ得る。所与の格子L(n,a)について、上述の式2.5のようにmindist(x)を計算するため、全格子点
Figure 0005199424
が繰り返される。最短ベクトルと第2最短ベクトルの両方の長さが、必要であれば基底ベクトルを更新するためにチェックされる。しかし、第2基底ベクトルを更新する前に、これが、ミンコフスキー縮小基底の条件が保持されるように第1基底ベクトルに一次独立であることを確認する必要がある。2つの2次元基底ベクトルの行列式の簡単な計算は、整数オーバーフローを生じることがあるため、このテストについては特別な注意が払われる必要がある。定義により、2つのベクトル
Figure 0005199424
は、
x=λ・y
となるスカラーλ≠0が存在するとき、一次従属である。
換言すれば、これは、一方のベクトルが他方の倍数である場合は一次従属であるという意味である。このことは、
Figure 0005199424
に対して、2つの得られるベクトル
Figure 0005199424
が等しく、さらに、sgn(x)=sgn(y)およびsgn(x)=sgn(y)またはsgn(x)≠sgn(y)およびsgn(x)≠sgn(y)である場合に該当する。
付属書のセクション2.2.1には、2つの基底ベクトルの一次独立性をチェックするコードリストを記載している。ベクトル成分の符号が含まれていない場合は、§2.2.1コードリストは、例えば、一次従属としてベクトル(1,1)および(1,−1)を取るであろう。図14は、格子L(25,7)と基底捜索アルゴリズムから得られた2つの基底ベクトルを図示するグラフ370を示す。図15に示すように、
Figure 0005199424
である。
付属書のセクション2.2.2は、捜索がミンコフスキー縮小基底について行われたコードリストを示す。計算は、常に[0,n)上で実行され、そのため基底ベクトルも[0,n)上で得ることを記憶に留めておくべきである。シフトした格子に関しては、基底捜索アルゴリズムは、同じように適用され得る。これは、シフトは、全格子の平行移動(translation)を表すだけであり、基底に影響しないためである。
次に、ランク−1格子に関連して(0,m,2)−netsの使用を記載する。発明の本説明は、スクリーン全体をセクションにおいてサンプリングする点に関して、シフトした格子についての1つの動機を既に記載してきた。図10Bグラフ330の格子を近づいて見てみる。図15は、図10Bのグリッド構造の改良を図示するグラフ380を示し、
Figure 0005199424
だけシフトされた格子
Figure 0005199424
を示す。格子点は、低次元投影において精細なグリッド構造を完全に充填する。これは、このような線上に別の格子点を有しないx軸およびy軸に投影された中空格子点によって示される。さらに、各区分
Figure 0005199424
も、正確に1つの格子点を含む。従って、格子は、階層化とラテンハイパーキューブサンプリング点の両方の特徴を有する。
これは、(0,m,2)−またはさらに一般的に(t,m,s)によって定式化できる。基本区間は、
Figure 0005199424
によって規定される。ここで
Figure 0005199424
は次元であり、
Figure 0005199424
は、基底を表し、
Figure 0005199424
は整数である。Eの体積は、

Figure 0005199424
によって与えられる。
2つの整数
Figure 0005199424
について、体積
Figure 0005199424
の各基本区間が正確にb点を含む場合、s次元におけるb点の有限の点集合は、基底bにおける(t,m,s)−netと呼ばれる。比較的小さいtの値によってさらに良好な一様な分布が確保されるため、tは優良性パラメータと呼ばれる。
このような定義に留意し、図15グラフ380に示す格子は、各要素の体積bt−m=50−2=1/25が正確に1つの格子点を含むので、基底5における(0,2,2)−netを表す。このような観測は、格子
Figure 0005199424
についての全ての可能なシフトの捜索をすることとなり、基底2における(0,m,2)−netについてこれらをテストする。すなわち、各基本区間の体積2−m=1/nが、正確に1点を含むかをチェックする。検討された格子は、条件gcd(n、a)=1を充足する必要があると考えられよう。そうでなければ、完全な1次元投影を得ることが可能ではないであろうからである。しかし、上述の格子はいずれも基底2における(0,m,2)−netではないことが判明した。ということは(0,m,2)−netsは、ランク−1格子をシフトすることでは簡単には求めることができないことを意味する。それでもなお、基底bが素であり、シフトした格子L(b,a)についてgcd(b,a)=1の場合は、図15グラフ380に示す格子についての場合が該当するように、m=2についての(0,m,2)−netsが容易に得られる。これは、このとき必然的に1つの格子点のみを含む体積1/bの3つの異なる基本区間の
Figure 0005199424
が存在するからである。図16は、基底bにおけるいくつかの(0,2,2)−netsをさらにリストする表390を示す。
3.ランク−1格子上のラスタライゼーション
ラスタディスプレイは、通常、スクリーン全体を表現する画像要素(画素)のマトリクスから形成される。画像を正確にレンダリングするために、ラスタライザは、適切な色を画素の集合へ割り当てることで、直交グリッド上で頂点によって記述される、線、三角形、または円のような数学的理想的プリミティブを近似する。ラスタライザは、スクリーン空間における2次元頂点をスクリーン上の画素へと変換する。現在のアプローチにおいては、画素は通常、整数ラスタ(integral raster)[0,...,ResX)×[0,...,ResY)上の正方形として表現される。
本局面は、ランク−1格子に基づくラスタライゼーション技術に関する。この方法によると、ラスタライゼーションは、矩形グリッド上ではなくランク−1格子の格子セル上で実行される。すなわち、画素レイアウトがランク−1格子によって構成される。図17は、発明のこの局面に従った方法400のフローチャートである。
工程401において、ランク−1格子は、生成されるべき合成画像における点に対応する最大化した最小距離関数に従って選択される。工程402において、直交座標における点pが、ランク−1格子の基底へと変換される。工程403において、変換された点が該当する格子セルが決定される。工程404において、直交座標が、ランク−1格子座標へと変換される。工程405において、ランク−1格子座標が、画像をラスタライズするために使用される。
次の検討において、線についてのスキャン変換技術であるデジタル微分解析機(DDA)に関連して、および凸多角形についてのラスタライゼーション技術であるクロウのアルゴリズムに関連して、ラスタライゼーション技術を記載する。記載の技術は、従来のラスタディスプレイで実行することができる。さらに、以下に記載のように、この技術は、ディスプレイ技術の新たな概念のベースを形成もする。
線についてのスキャン変換技術は、2次元ラスタ上に引かれた理想的直線を最もよく近似するような画素の座標を算出することに基づいている。線は、典型的には、始点、終点、幅によって、および別のスタイル特性によって特徴付けられる。本検討は、1画素の幅を有し、別の特性がなく、アンチエイリアシングがない線に主眼を置く。
線をスキャン変換する最も簡単な技術は、関数
Figure 0005199424
のテイラー級数展開に基づくデジタル微分解析機(DDA)である。
ラスタライゼーションが整数格子上で実行されるので、線の端点は整数座標と考えられる。所与の対の(整数)点P=(x,y)およびP=(x,y)について、直線は、
Figure 0005199424
によって明確に記述することができる。
式3.1を使用して、線上の点(t+τ,P(t+τ))は、その先行点(t,P(t))から増分的に計算することができる。
Figure 0005199424
その始点から終端へと増分的に線を引くため、ラスタライゼーションプロセスは、nステップに離散化されなければならない。ここでn=max{|x−x|,|y−y|}である。これは、理想的線を近似する画素座標が
Figure 0005199424
によって増分的に算出されることを意味する。例えば、|Δx|>|Δy|の場合、n=|x−x|である。従って、xは、各ステップにおいて±1だけ増加し、一方で、yは、割合
Figure 0005199424
だけ増加する。座標を計算した後、理想的線に最も近い画素
Figure 0005199424
が着色される。視覚化のため、画素は、2つの隣接する格子線によって形成されたセルの中央におけるサンプルと解釈される。図18Aは、画素(2,2)がラスタグリッド上で強調されているグラフ410を示す。図18Bは、整数端点(0,0)と(3,1)を有する線のラスタライゼーションを説明するグラフ420を示す。ラスタライゼーションプロセスは、n=3、dx=3およびdy=1であるので、連続的に画素
Figure 0005199424
を強調する。付属書のセクション3.1.1に、DDAについてのソースコードリストを記載する。
上記の検討において、従来のラスタディスプレイに関してDDAを記載してきた。発明の局面に従って、ラスタライゼーションが実行される基底を変更することにより、ラスタライゼーション技術はランク−1格子に変換される。このように変更することは、ラスタライザが、直交座標系から対応するランク−1格子の基底によって形成された座標系へと切り換わることを意味する。従って、発明の局面に従って、ラスタライゼーションプロセスが、画素上でこれ以上動作するのではなく、格子セル上で動作することが理解されるであろう。
視覚化のために、各格子セルは、ミンコフスキー縮小格子基底によって結合された基本平行六面体の中央におけるサンプルと解釈される。各セル(x,y)は、格子座標において、すなわち、格子基底によって形成された座標系においてアドレス指定される。格子座標の使用は、図19Aおよび図19Bに図示する。図19Aは、格子グリッド上で格子セル(0,2)の強調を図示するグラフ430を示す。図19Bは、max−min−dist格子L(576,155)上で(1,3)から(7,14)へ延びる線のラスタライゼーションを図示するグラフ440を示す。図19Bにおける強調された(影付きの)格子セルは、スキャン変換された線を表す。
できるだけ簡単にかつラスタライゼーションが実行される格子を独立して線を特定するため、スキャン変換技術は、その端点が単位正方形上の直交座標で与えられると仮定する。格子座標は、このような点を格子基底に変換することで、および変換された点が該当する格子セルを決定することで得られる。このような2つの格子セルの座標が、次に線の始点と終点を規定する。付属書のセクション3.1.2に、ランク−1格子上でのDDAラスタライゼーションのためのソースコードリストを記載している。図20は、表450を示し、この表は、図19Bにおける(1,3)から(7,14)に至る線のラスタライゼーションのための§3.1.2コードリストによって実行された単一のステップを記載する。図20表450の最終行には、理想的線を近似する格子セルが含まれる。
図19Bにおいて、理想的線は、点
Figure 0005199424
によってもともとは規定される。格子座標における変換は、
Figure 0005199424
を生じる。
Figure 0005199424
が、格子セル(1,3)内に存在し、
Figure 0005199424
が、(7,14)内に存在するので、線は、始点(1,3)と終点(7,14)によって認識される。
直交座標における点(x,y)と、
Figure 0005199424
を有する格子基底
Figure 0005199424
を仮定すると、
Figure 0005199424
であり、ここで、(u,v)は、格子基底における点(x,y)の座標を表す。基底行列
Figure 0005199424
は特異ではないので、座標(u,v)は、
Figure 0005199424
の結果である。
これは、付属書セクション3.1.3に記載のコードリストにおいてインプリメントされる。同リストは、さらにシフトした格子の座標系への変換を取り扱う。格子シフトは、基底に影響を与えることなく全体の格子を平行移動するだけであるので、シフトベクトル
Figure 0005199424
も、格子基底へと変換される。次に、変換されたシフトは、(u,v)へと適用される。格子座標中の点(u,v)が属する格子セル(c,c)は、その成分の端数を切り捨てること、すなわち
Figure 0005199424
で算出される。
この技術は、付属書のセクション3.1.4に記載のコードリストにおいてインプリメントされるdetermineLatticeCellと呼ばれる方法と同じである。線の始点と終点の両方が一旦格子座標へ変換されると、ラスタライゼーションが上述の§3.1.1コードリストと同様に実現される。唯一の違いは、線上の次の点(xi+1,yi+1)の算出にある。
Figure 0005199424
の代わりに、
Figure 0005199424
が計算される。分母は変化することが無いので、分子(nominator)のみが各ステップで累算されなければならない。除算は、強調されるべき格子セルを決定するために実行されるのみである。このようにして、切り捨て誤差の蓄積を回避することができる。|Δy|>|Δx|を仮定すると、n=|Δy|ということになる。
Figure 0005199424
その場合、yは、各ステップにおいてちょうどsgn(Δy)だけ増分されなければならない。それ故、上記アルゴリズムにおいて、ynomはyによって、ydenomは1によって初期化される。同じことが
Figure 0005199424
の場合に当てはまる。
図19Bグラフ390に示す線へ§3.1.2コードを適用することで、Δx=7−1=6;Δy=14−3=11;n=max{6,11}=11,xnom=1・11=11,xdenom=11,ynom=3およびydenom=1を得る。
基本平行六面体の中央として格子セルを表現することにより、0.5が§3.1.2コードにおいてxi+1とyi+1の両方に加えられる。すなわち、
Figure 0005199424
である。理想的線に最も近似する格子セルの座標は、§3.1.1に記載のコードに類似して、すなわち
Figure 0005199424
によって認識される。
次に、格子基底ラスタライゼーション技術をクロウのアルゴリズムに関して記載する。一式の頂点と辺で与えられた多角形を充填する画素を求めることで多角形はラスタライズされる。クロウのアルゴリズムは、頂点が整合が取れた順序であり、変換されるべき多角形が凸であることを仮定している。しかし、各多角形は、凸多角形に分解できるので、この要件は制限を呈しない。
クロウのアルゴリズムは、水平走査線と垂直走査線の両方におけるコヒーレンスを活用する。水平走査線を底部から頂部まで繰り返し、アルゴリズムは、各走査線においていずれの画素が多角形の内部であるかを、水平コヒーレンスについての増分ジョルダンテスト(incremental Jordan test)によって決定する。ジョルダンテストは、多角形の内部からの任意の光線は、多角形の辺に奇数回交差するというジョルダン曲線定理に基づいている。凸多角形のみが考慮されるので、現在の左辺と右辺上に点VscanLeftおよびVscanRightによって境界が成された、走査線当たり唯一の区間が存在する。このような点が、DDAアプローチにより垂直コヒーレンスを利用することで求められる。
この技術は、最小y値を有する頂点botを求めることで開始される。いまだ考慮されていない頂点が存在する限り、アルゴリズムは、適切な左辺Vleft→VnextLeftおよび右辺Vright→VnextRightを決定することで進行する。ここで開始において、Vleft=Vright=botである。上方に走査する間、このような辺が現状の走査線に渡っており、かつ適切な区間が引かれたかがチェックされる。標準画素表示のためのクロウのアルゴリズムを、付属書の§3.2.1のコードリストに記載する。そこでは、頂点が反時計回りの順であることを仮定している。図21は、§3.2.1コードリストに使用された変数の説明を記載する表420を示す。
ランク−1格子上の凸多角形をラスタライズするために、上述と同じアプローチが使用される。これは、直交座標系ではなく、特定のランク−1格子L(n,a)の基底によって結合された座標系の中で、アルゴリズが実行されるということを意味する。従って、L(n,a)のミンコフスキー縮小基底の第1の基底ベクトルbが水平座標軸に対応し、第2の基底ベクトルbが垂直座標軸に対応する。ラスタライゼーションアルゴリズムは、頂点の配列とこの配列のサイズとを引数として取る。
§3.1.2に記載のコードリストによると、反時計回りの順であるべき頂点は、直交座標系で正方形上で与えられていると仮定している。このような頂点を格子基底に変換した後、§3.2.1のコードリストと同じ方法で、1つの例外に至るまでラスタライゼーションをインプリメントすることができる。すなわち基本的ラスタライゼーションアルゴリズムは§3.2.4におけるコードリストに示したのと同じままである。最小y−値を有する頂点botを求めた後、アクティブな辺Vleft→VnextLeftおよびVright→VnextRightを維持することで、アルゴリズムは上方に走査する。頂点が反時計回りの順であるという仮定によって、VnextLeftおよびVnextRightの指数(indices)が、li=(li+n−1)modnおよびri=(ri+1)modnによって計算される。しかし、頂点は、元々直交座標系の単位正方形上で特定されるので、この順序は、格子基底において変更する可能性がある。直交座標変換後、なお頂点が整合が取れたままの順序であるとしても、現状の多角形区間を引くとき、確実に
Figure 0005199424
とするため、VscanLeftおよびVscanRightを交換する必要があり得る。これは、付属書のセクション3.2.2に記載のコードリスト中、
lx=ceil(l.m.X);
rx=ceil(r.m.X);
が、
lx=l.m_X<r.m_X?ceil(l.m_X):ceil(r.m_X);
rx=l.m_X<r.m_X?ceil(r.m_X):ceil(l.m_X);
に変更されなければならないことを意味する。さらに、drawPixel(x,y)ではなくdrawLatticeCell(x,y)を呼ぶ必要がある。
図22は、単位正方形上で
Figure 0005199424
によって規定された多角形のグラフ470を示す。格子L(576,155)の基底へ変換した後、多角形は、
Figure 0005199424
によって特定される。図23Aおよび23Bは、さらに高解像度でレンダリングされた同一の多角形を表示するグラフ480および490を示す。
ランク−1格子上でのラスタライゼーションの原理は、この章で例としてDDAとクロウのアルゴリズムを考慮して記載してきたが、他のラスタライゼーションアルゴリズムにも適用することができ、例えば、線についてのブレゼンハムアルゴリズムや多角形についてのy−xラスタライゼーションアルゴリズムのようなものである。このようなラスタライゼーションアプローチの1つの欠点は、ほぼ垂直である辺やある程度水平である辺は、格子セルの形状のため非常にギザギザに見えるということである。そのような問題に対する1つの可能な解決は、従来のラスタディスプレイでなされたアンチエイリアシングにある。基本平行六面体を近くで見ると他の可能性が見えてくる。格子セルをその短い方の対角線に沿って(すなわち2つの三角形へ)分割することでドロネー三角形分割を使用し、全体の解像度を2倍とすることができ、それによりかなり滑らかな辺となる。これを図24に示し、ここでこのアプローチが図23Aに示す多角形に適用されたグラフ500を示す。
上述のように、記載の技術は新たなディスプレイ技術のための基礎を提供する。最初のコンピュータモニターは、ディスプレイ上の指定された点間の経路に直接沿って電子ビームを動かすことで画像を作製した。従って、このようなベクトルディスプレイは、鮮明で滑らかな線を作製することができた。しかし、ワイヤフレームを描くのみで複雑度が限定された情景を表示できたのみであった。オシロスコープのような科学機器に通常使用されるものさえ、ラスタディスプレイに置き換わってきた。そのようなディスプレイは、このラスタ上の正方形として表現される画素の矩形グリッドで通常構成される。ベクトルディスプレイと比較すると、画像は走査線アルゴリズムによって作製される。さらに、画素は、個別にアドレス指定がなされ、CRTディスプレイの場合は、個別の赤色、緑色、および青色の燐によって着色がさなれ得る。
矩形グリッド上でラスタライズする代わりに、ラスタライゼーションは上述のように格子点上で実行することができる。この方法は、ソフトウェアソリューションによって従来のラスタディスプレイ上でシミュレートすることができるが、次の方法で現在のグラフィックスハードウェア上で実行することさえできる。ラスタライザが、矩形格子上で動作できるだけであるので、情景は、第一のステップにおいて格子基底に変換されなければならず、これは、実際には矩形格子のねじれに対応する。このようなフレームの変更の後、グラフィックスハードウェア上で通常どおりラスタライゼーションを実行することができる。ラスタライズされた情景を表示するため、得られた画像は、画素基底に変換し直されなければならない。このような手順によれば、あたかもラスタライゼーションがランク−1格子上で直接に実行されたかのような同一の結果を生じる。
このような考慮に基づいて、我々は、新たな概念のディスプレイ技術を導入する。正方形画素の行列ではなく、ラスタディスプレイは格子セルの行列と考えられ、すなわち、単一の画像要素は、ランク−1格子点のドロネー三角形分割(すなわちボロノイ図)によって得られたセルとして表現される。このことは、最大化された最小距離によって選択されたランク−1格子としてラスタディスプレイが概念化されているということを意味する。従って、画素の数が増大すると、画像要素は六角形グリッドに近似する。ランク−1格子によって画素レイアウトを構成することで、以下に記載のように、従来の矩形グリッドのように比較的小さい波動ベクトルを特徴とするランク−1格子のフィルタ特性を、ディスプレイは利用する。従って、周波数が増大するにつれフーリエ係数が減少する関数は、特別に良好な方法で近似することができる。任意数nの点、正確には格子セルについてランク−1格子が利用可能であるので、画素の数は自由に選択され得る。図25は、256格子セルから構成されるディスプレイモジュールのレイアウト510を図示する。
この概念は、技術的に様々な方法で実行することができる。第1の実施には、点光源のディスプレイが含まれ、例えば、図25の小さい黒ドットで示した、各格子セルの中央に配列されているRGB−LEDである。ランク−1格子が最大最小距離によって選択されるので、RGB−LEDは、最適な方法でスクリーン上に分布している。第2の実施には、単一の画素要素をカバーする面光源のディスプレイが構成されている。これは、薄膜トランジスタ(TFT)ディスプレイおよび液晶ディスプレイ(LCD)技術をそれぞれ産み出し、これらは、例えば有機発光ダイオード(OLED)によって実現することができる。
上述のように、ランク−1格子ディスプレイの全体の解像度は、格子セルをその短い方の対角線で分割することで2倍にすることができ、それにより、図24グラフ500に示すようにエイリアシングアーチファクトを減少させる。この原理は、面光源のレイアウトを適合することでハードウェアにおいて直接実現される。これを、モノクロディスプレイ520およびカラーディスプレイ530について図26Aおよび26Bに示す。
以上までは、ランク−1格子のドロネー三角形分割によって生じたセルによって画素レイアウトは決定されてきた。
Figure 0005199424
におけるドロネー三角形分割へ双対であるボロノイ線図によって、
Figure 0005199424
が、各格子点を集中としたほぼ六角形セルに区切られ得る。図27は、最大最小距離ランク−1格子L(64,19)のボロノイ図540を示す。この意味で画素レイアウトを構成すると、実質的に六角形画素格子となる。例えば、自然の原理として、複眼中の個眼または網膜中の視覚センサーはこのように配列されている。六角形画素の概念は、六角形画像処理の関連で既に研究されてきており、例えば、SmartSlabLEDパネルに使用されている。
記載の画素レイアウトの1つの長所は、曲線状の物体を滑らかに表示することである。これは、全ての隣接体が互いから一様な距離を有する、すなわち整合性が取れて接続されているという事実に基づく。このような画素レイアウトにより、ディスプレイに使用される基本色の数に画素の数を適合することで、カラーディスプレイが簡単に実現できる。これは、画素の総数が
画素の数・カラーセル
によって計算されるということを意味する。
図28Aは、モノクロディスプレイ用の六角形画素のための面光源のレイアウト550を示す。図28Bは、カラーディスプレイ用の六角形画素のための面光源のレイアウト560を示す。
第3の実施において、センサーすなわち電荷結合素子(CCD)カメラのフォトサイトのレイアウトが、ドロネー三角形分割またはボロノイ図のいずれかで得られたランク−1格子セルの形態を取る。
第4の実施において、ランク−1格子パターンは、プロジェクタ技術に使用される。例として、デジタルライトプロセッシング(DLP)集積回路のヒンジ付け微小ミラーは、このような様式で配列されている。
第5の実施において、記載したパターンは、ディスプレイレイアウトとパララックスバリアの両方を実現するため、3Dモードが可能である3Dディスプレイに関して適用することができる。例えば、シャープLL−151−3Dモニター、およびwww.sharpsystems.comに開示された他のモニターである。
ランク−1格子は、継ぎ目無くタイル張りされ得るため、それぞれが同数の格子セルを有するkモジュールのディスプレイを構成することが可能である。図29Aおよび図29Bは、発明のこの局面に従ったディスプレイ570および580を示す。「2ディスプレイ」において、ディスプレイモジュールについてのセルの数は、2のべき乗であるように選択される。このようなタイプのディスプレイモジュールは、デマルチプレクサによって単一のセルが簡単にアドレス指定されるという長所を有する。モジュールの数kが同様に2のべき乗へ設定された場合、単一のモジュールは同じように制御され得る。図30は、発明のこの局面に従ったシステム590の図である。同じレイアウトで同じ数の格子セルの小モジュールを製作することで、所望の解像度のディスプレイへ簡単に組み立てることができ、このようなディスプレイは、経済的に製造されることが可能である。
さらに一般的には、2ディスプレイの概念は、コンピュータ技術の全局面に完全に適合する。メモリレイアウト、キャッシュライン、アドレス指定等の利用である。このスキームに従った画像の記憶は、2ディスプレイの利点から同様に恩恵を受ける「2画像」の概念へと導かれる。従って
Figure 0005199424
メモリ要件は、ページング(メモリ配置)に理想的に適合する。別の例として、2...2画像として一連のテクスチャを記憶することによっては非常に効率的に実行できるMipMappingを当然にサポートする。
図31は、いくつかの2ディスプレイモジュールおよび画像についてのパラメータをそれぞれ列挙する表600を示す。列挙されたサイズは、最大最小距離ランク−1格子がそれに従って選択された単一のモジュールについて提案された解像度を表す。
4.ランク−1格子によるアンチエイリアシング
図32は、ランク−1格子によるアンチエイリアシングについての発明の別の局面に従った方法610のフローチャートを示す。ステップ611において、ランク−1格子は、生成されるべき合成画像の点に対応する最大最小距離関数に従って選択される。ステップ612において、選択されたランク−1格子は、モンテカルロまたは準モンテカルロのいずれかの点集合へのその収束に関して比較される。ステップ613において、この比較の結果に基づいてアンチエイリアシング関数が適用される。次の検討では、方法についての理論的基礎を発展させ、アンチエイリアシングに関する本発明の別の局面を記載する。
図33は、無限大のチェッカーボードの合成された画像620を示す。これは、ランク−1格子についての技術を発展させ説明するために使用されてきた。無限大の「現実の」チェッカーボードを仮定すると、理想的には、水平線においてハーフグレーへと平均化される、滑らかで連続的な画像が認められるであろう。しかし、コンピュータによって生成された合成画像はデジタル信号である。コンピュータは、有限の精度の離散値を記憶することができるのみであるため、コンピュータ生成画像は必然的に離散的であるはずでもある。従って、画像を生成する際、典型的に非周期性であり不連続である信号が、デジタル信号に変換されなければならない。
チェッカーボードの画像を生成するため、元の信号をサンプリングする必要がある。連続から離散へのこのような遷移によって生成物(アーチフアクト)が生じることがある。例えば、ジャギーやモアレパターンの形態である。このような影響は「エイリアス」として知られている。連続信号aを表示する一般のプロセスは、特定の位置においてaのサンプルを集めることで開始される。すなわち、サンプルパターンsはaで乗算される。得られた信号bは、サンプリング位置においてスパイクを有するゼロ値関数からなる。元の信号を復元するため、bは、再構成フィルタrに畳み込まれ、信号c=b*rを得る。ディスプレイ上で信号を再生するため得られた信号cは、フレームバッファメモリ域を反映する一式のサンプルでリサンプリングされる。最終的に、ディスプレイ再構成フィルタを有するrの畳み込みが、実際に表示される信号を与える。実際に、サンプリングされた信号bは、各単一の画素について直接再構成され、それにより、リサンプリングステップが省略される。
次の検討では、エイリアシングに関する信号処理理論の概説から始める。概説の後、ランク−1格子によるアンチエイリアシングの説明が続く。これには、テストパターンの収束の比較が含まれる。次に、ランク−1格子による適応的サンプリングの方法を説明する。さらに、ランク−1格子のフィルタ特性を説明し、レイトレーシング環境における深度適応的フィルタ処理のための方法を提供する。以下に記載のように、この方法は、カメラと対象の間の距離に応じて適切な再構成フィルタを自動的に選択する技術を提供する。最後に、RGB−デシメーションと呼ばれるフィルタ処理技術を取り入れるClear−Type技術によって、パターン付けされたディスプレイ上でランク−1格子によるアンチエイリアシングが試される。
1次元連続信号の理想的サンプリングおよび再構成を以下に検討する。2次元の場合は、1次元の場合と非常に類似し、その複雑度のみが異なる。「理想的サンプリングと再構成」とは、連続帯域制限信号が一様にサンプリングされ、元の信号が最終的に再取得されるように再構成されるという意味である。
理想的サンプリングと再構成は、次の式
Figure 0005199424
に要約することができ、ここで、それぞれ、fは元の信号または関数であり、sは一様なサンプリング関数、およびrは再構成フィルタである。既述のように、信号fは、帯域制限されている必要がある。この要件の理由は、一様にサンプリングされた信号のフーリエ変換が、周波数空間で周期性となるからである。関数fは、
Figure 0005199424
の場合は、帯域制限されるべきと言われる。ここで、F(ω)は、f(x)のフーリエ変換である。これは、fのスペクトル
Figure 0005199424
が有限台を有するという意味である。周波数ωは、fについてのカットオフ周波数と呼ばれる。ω=∞の場合は、関数fは帯域制限されない。
第1のステップにおいて関数fは、次の式
Figure 0005199424
に与えられるように、シャー関数によって一様にサンプリングされる。サンプリングは、fとシャー関数を乗算することによりなされる。
Figure 0005199424
(x)のフーリエ変換を計算するため、畳み込み定理に従って、f(x)およびs(x)のフーリエ変換は、周波数空間に畳み込まれなければならない。
Figure 0005199424
畳み込み積分を計算すると、
Figure 0005199424
を得る。
従って、f(x)のフーリエ変換は、繰り返し周期1/Δxを有するf(x)のスペクトルの周期的繰り返しである。
Figure 0005199424
の場合は、F(ω)のコピーは重ならないであろう。従って、
Figure 0005199424
に対して
F(ω)=ΔxF(ω)が成り立つ。しかし、
Figure 0005199424
の場合は、F(ω)の周期的繰り返しは、重なり累積するであろう。f(x)をその離散サンプルから再構成するためには、F(ω)の周期的繰り返しのため、逆フーリエ変換
Figure 0005199424
を行うことは充分ではない。
Figure 0005199424
は、
Figure 0005199424
における以外はゼロである信号となるであろう。従って、F(ω)のセンターコピーは、隔離される必要がある。
Figure 0005199424
の場合、
Figure 0005199424
について
Figure 0005199424
であるため、F(ω)は、F(ω)をボックススペクトル
Figure 0005199424
で乗算することで復元することができる。
周波数空間において、再構成は、
Figure 0005199424
によって実行される。
ボックススペクトルの逆フーリエ変換がsinc−関数となり、f(x)をsinc−関数
Figure 0005199424
で畳み込むことで時間空間のf(x)が再構成される。
しかし、これは、
Figure 0005199424
の場合のみに有効である。サンプリング周波数が低すぎる場合、すなわち
Figure 0005199424
の場合は、ボックスフィルタ処理がF(ω)ではなくω’≠0についてF(ω)+F(ω’)を除去するであろう。これはF(ω)がそのサンプルから復元不可能となる「エイリアス」と言われるなんらかの別のエネルギーが、F(ω)に加えられていることを意味する。このような考慮がシャノンのサンプリング定理に要約されている。
定理3(1次元一様サンプリング定理)
連続関数fは、カットオフ周波数ωでfが帯域制限され、かつ
Figure 0005199424
の場合、サンプリング周波数
Figure 0005199424
でその一様サンプルから完全に再構成することができる。
簡単には、定理は、帯域制限された関数fは、ωのスペクトルにおいてサンプリング周波数が最大周波数ωの少なくとも2倍高い場合、その一様サンプルから完全に再構成されることを記述している。ωは「ナイキスト周波数」としても既知である。本明細書において、用語「アンダーサンプリング」は、ナイキスト周波数未満のサンプリングのことである。信号が、ナイキスト周波数を超えてサンプリングされる場合は「オーバーサンプリングされる」と言う。再構成フィルタは、時間空間で計算されるか周波数空間で計算されるかに依存する。時間空間においては、正確にサンプリングした信号をsinc−関数で畳み込む必要がある。一方で、周波数空間においては、F(ω)をボックススペクトルで乗算する必要がある。
サンプリング定理が充足される場合でも、再構成された信号中に生成物が生じる場合がある。例えば
Figure 0005199424
を周波数空間において使用された再構成フィルタとすると、ωを超えるエネルギーが総計F(ω)となるので、明らかにF(ω)・R(ω)≠F(ω)である。このような場合、使用される用語は「再構成エラー」である。不適切なサンプリング率によるエイリアシングに対して拙劣な再構成フィルタであるからである。
しかし、コンピュータグラフィックスで使用される関数については通常該当しないが、サンプリング定理は連続関数を扱うことを考慮する必要がある。このことを、チェッカーボードをレンダリングする簡単な例によって実証する。
図33に表示されたチェッカーボード画像620は、各画素の中央に配置された1つのサンプルおよび512×512の解像度で一様にサンプリングされた。従って、サンプルパターンは、図35Aに示した格子670のような規則的グリッドを表す。サンプリング定理の点では、これは、pが2画素間の空間を表すとして、1/pのサンプリング周波数を有することを意味する。サンプリング定理を満たすため、1/pは、信号におけるカットオフ周波数の2倍高い必要がある。しかし、チェッカーボードは、多くの明瞭な辺を提供するので、信号空間においてコンパクトな台を伴う信号を有するが、これは周波数空間において同時にコンパクトな台を有することができないという問題が生じる。これは、信号が帯域制限されることができず、周波数がますます高くなるということを意味する。従って直接表現できない周波数>1/pが存在し、これが図33に示すようにエイリアシスとなる。次の検討において、アンチエイリアシングについてのさまざまな技術を、異なるサンプリングとフィルタ処理スキームを比較することで説明する。
上述のように、有限幅の信号は通常、コンピュータグラフィックスで扱われる必要があるので、大半の場合
Figure 0005199424
を特徴とする。合成画像を生成するには、各画素について単一の色を何とか決定する必要がある。f(x)をできるだけ正確に再構成するための1つのアプローチは、画素xに現れている全ての多角形片の面積を解析的に算出し、得られる面積比に従ってそれらの色を平均化することである。しかし、このアプローチは、計算が高価であり、また場合によっては、現れている面積の解析的表現の欠如により不可能であることがわかっている。従って代替のアプローチは、数値解を使用することである。これは、画素あたりのサンプリング点の数Nを選択し、これらのサンプルからxにおける多角形片の面積を推定することでなされ得る。サンプルは、画素あたり1回よりも高い周波数で取られるので、本明細書では記載したサンプリングを「スーパーサンプリング」と言う。1つの通常のスーパーサンプリングスキームは、各画素内でサンプリングパターンとしてn×nグリッドを使用し、サンプルを比例的に重み付けることで1つの値に平均化することである。これは、「画素積分(pixel integral)」と記載することができる。
Figure 0005199424
この場合、サンプリング関数
Figure 0005199424
は、微細な一様グリッドを表し、再構成フィルタ
Figure 0005199424
は、各サンプルを等しく1/Nで重み付ける。
1次元の場合をつぶさに見ると、スーパーサンプリング中に生じていることが明らかになる。
Figure 0005199424
を、各画素の中央において1つのサンプルを取るサンプリング関数とし、pは画素中央間の距離であるとする。サンプリング定理によると、周波数
Figure 0005199424
を超える任意のエネルギーは、再構成された信号において適切に表現できず、そのためエイリアシングとなる。画素あたりNサンプルを取ることは、サンプリング周波数N/pとしてサンプリング関数
Figure 0005199424
を適用することを意味する。サンプリング定理によると、新たなナイキスト周波数は、
Figure 0005199424
である。各画素に1色が表示できるので、スーパーサンプリングされた信号を、カットオフ周波数
Figure 0005199424
を有する完全ローパスフィルタ
Figure 0005199424
で再構成する必要がある。画素レートで再構成された信号をリサンプリングする前に、新たなエイリアシングを防ぐためローパスフィルタが適用される。画素ラスタに対して正確に帯域制限された信号を得るために、カットオフ周波数
Figure 0005199424
を有してローパスフィルタG(ω)が選択される。このようにして得られた信号を画素レートでリサンプリングし、ディスプレイ再構成フィルタで復元することが可能である。既述のように、画像関数が画素レートでのみサンプリングされる場合、
Figure 0005199424
を上回る任意のエネルギーは、エイリアシスとなる。その後の再構成とローパスフィルタ処理を伴って、サンプリング周波数
Figure 0005199424
でスーパーサンプリングする効果は、
Figure 0005199424
を下回る任意のエネルギーでは、エイリアシスとなることが防がれるということである。従って、以前はエイリアシングに寄与していた範囲
Figure 0005199424
からのエネルギーが、スーパーサンプリングされた画像において正確に処理された。構成により
Figure 0005199424
であるので、再構成フィルタ
Figure 0005199424
は、通常、実際には適用されない。それに代えて、ローパスフィルタが単独で配置される。時間空間における完全な再構成フィルタは、無限の台を有するsinc−関数によって与えられる点に留意することは重要である。従って、我々は、新たな再構成誤差を導入し得る、ボックス−、ガウス−、または打ち切り(truncated)sinc−フィルタのような近似を扱わなければならない。
今までは、画素積分を解くため古典的なテンソル積アプローチが使用されてきた。各画素は、n×nグリッドでサンプリングされる。そのようなサンプルパターンをさらに良く見極めると、n×nサンプリング点がnのみのように挙動する傾向にある。図34に示すサンプリンググリッド630は、16点ではなく、各水平走査線に1つ、4点のみでサンプリングすれば充分であったことを示す。上述のスーパーサンプリング法の別の欠点は、レンダリング時間がnに関して2次式的に増加するという点である。あるいは、サンプリング点は、各画素においてランダムに配置され得る。このアプローチは、「確率論的スーパーサンプリング(stochastic super sampling)」として既知である。次の章では、1つの可能性のあるランダムサンプリングパターンを分析する。これは、独立同一確率分布の(i.i.d.)(疑似)乱数に基づく。
そのようなランダムサンプリングパターンの1つの重要な特性は、高度に構造化されたエイリアシングアーチファクトがノイズに変わるという点である。人間の目は、エイリアシングよりノイズに対して敏感ではないので、得られる画像は、いまだ誤差を含んでいるにもかかわらず、より良く見えるであろう。ノイズが低周波のものである場合は、さらに構造化されたアーチファクトとなるので注意が払われなければならない。積分のためにi.i.d.乱数を使用することで、各画素色の期待値が算出される。従って、我々は、上述のパラメトリックモンテカルロ法によって画素積分を全画素について同時に評価する。ランダムサンプリング分布に加えて、次の章では、2つの準モンテカルロ点集合、すなわちLarcher−Pillichshammer点およびランク−1格子も提供する。これらは、アンチエイリアシングのために特に有用である。さらに以下では、このようなサンプリングパターンが使用されて、図33のチェッカーボード620のアンチエイリアシングされた画像を算出し、以下に導入した誤差ノルムに従ってこれらの収束を比較する。
既述のように、境界縁、テクスチャ不連続等は、レンダリングされるべき合成画像において高周波を生じる。従って、通常、帯域制限されていない信号を扱う必要がある。入力データをプリフィルタ処理することで、帯域制限された信号を得ることができる。このように、上述のようなサンプリング定理は、単純な方法で実行することができる。しかし、複雑な形状、テクスチャ、シェーディングモデル、モーションブラー、等は、プリフィルタ処理がほぼ不可能となる。従って、通常のレンダリングシステムは、スーパーサンプリングによってエイリアシングアーチファクトを減少させる。
本明細書で使用された基本的テストパターンは、各画素内に1またはn×mサンプルを有する規則的グリッドによって与えられる。このようなサンプリングパターンは既に詳細に上述してきた。サンプリング理論は一様格子に基づいているからである。各画素の中央の1つのサンプルを取ることは、一般にエイリアシングを導入する。また、画素あたりn×nグリッドを使用しても、帯域制限されていない信号の場合はエイリアシングを回避することができない。しかし、このサンプリングスキームは、付属書のセクション4.2.1に記載のコードリストに示すようにインプリメントしやすい。さらに、グラフィックスハードウェアにおいては、同時に各画素を統合するアキュミュレーションバッファによって効率的に実現されやすい。しかし、n点は、各次元において必要とされ、テンソル積求積法の複雑度は、2次元の場合のサンプル数に2次式的に増大する。換言すると、サンプルの数および収束率は次元に依存し、これは「次元の呪い」として知られている。
「ジッタードグリッド」サンプリングは、モンテカルロ推定量の変動を減少させる1つの技術である。この技術には、s=2について、同サイズのn層(サブ領域)へ単位立方体を分解し、各サブ領域内の1つのランダムなサンプルを取ることが含まれる。この技術の例を、図35Aおよび図35Bに示す格子640と650に図示する。そのような目的のため、層の数nは、因数分解されなければならない。これは、任意に選択したnが、
Figure 0005199424
の完全な除算を生じるという意味である。層化することにより、純粋にランダムなサンプルについて起こり得るように、サンプルは一箇所に集まることができない。従って、全体の単位立方体に渡ってサンプルの一様な分布が改善される。付属書のセクション4.2.2に、単位立方体内でn×mサンプルを有するパターンを生成するソースコードを記載する。さらに、ジッタ処理は、エイリアシングアーチファクトをノイズと交換するが、これは1次元の場合に容易に見られる。
Larcher−Pillichshammer点集合は、基底b=2において(0,m,2)−netを形成する。これは上述のように、この点集合が、低食い違いのn=2点の点集合からなり、体積2−mの各基本区間が正確に1つの点を含むことを意味する。このサンプルパターンは、基底b=2における(0,1)−列であるLarcher−Pillichshammer根基逆関数に基づいている。t>0については、無限点列は、基底bにおける(t,s)−列と規定され、
Figure 0005199424
の場合は、ベクトル
Figure 0005199424
は、(t,m,s)−netを形成する。Larcher−Pillichshammer根基逆関数は、付属書のセクション4.2.3に記載のコードリストによって計算される。成分i/bを、基底bにおける(t,s)列の最初のb点に加えることで、(t,m,s+1)−netが生じる。我々の場合、n=2mとして成分1/nを加えることで、Larcher−Pillichshammer根基逆関数から(0,m,2)−netが拡張される。これを、付属書のセクション4.2.4に記載のコードリストに示す。
別の準モンテカルロサンプリングパターンとして、上述のmax−min−dist格子が適用される。層化に対して、nの因数分解が必要な場合は、ランク−1格子は任意数の点について生成され得るためサンプリングレートに制限が無い。画素サンプリングとスクリーン全体のサンプリングの両方に関心があるため、上述のシフトした格子の使用もなされる。格子パラメータとして、上記の格子捜索技術から結果が使用される。付属書のセクション4.2.5に記載のコードリストは、max−min−dist格子とシフトした格子の両方を作製する。max−min−dist格子の場合、xとy−解像度についてパラメータは1に設定されなければならない。さらに、shiftXとshiftYはゼロでなければならない。
これまでモンテカルロと準モンテカルロ積分を記載してきた。これら2つの技術の組み合わせによって、いわゆる乱列化準モンテカルロ積分が得られる。この技術は、全ての2乗可積分関数についてバイアスの無い推定値を提供し、従来の準モンテカルロ積分とほぼ同様に速い。乱数スクランブルは、ランダム化された点集合がそのネット特性を維持し、一様に[0,1)上に分布するような方法で(t,m,s)−netをランダム化する。2次元の場合、単位正方形は、1つの座標軸についてbの等体積に分割される。これらの体積は、各レベルの反復で1つのランダム順列と置換される。その後、分割と順列ステップが、x−およびy−座標軸について実施されている全手順とともに各体積について再帰的に繰り返される。付属書のセクション4.2.3は、説明した技術を効率的にインプリメントするコードリストを記載する。パラメータrが乱数整数によって与えられ、点集合は、XOR−演算によってランダム化される。ランダム化されたLarcher−Pillichshammer点集合が、付属書のセクション4.2.6のコードリストに記載のコードリストによって生成される。コードリスト§4.2.5の格子パターンは、各格子点に1を法とするランダムシフトを単に加えることでランダム化される。すなわち、
Figure 0005199424
である。付属書のセクション4.2.7は、説明した演算を実行するためのコードリストを記載する。さらに以下に、このようなサンプリングパターンが、それらの収束に関して比較される。
テストパターンの収束を解析するために、2つの誤差ノルム、すなわちL−およびH−ノルムが使用される。グレースケール画像f(x,y)のL−ノルムは、次の
Figure 0005199424
ようにして計算される。例えば、p=1は、1−ノルムを生じる。
Figure 0005199424
p=2は、Lノルム(ユークリッドノルム)を生じる。
Figure 0005199424
そして、P=∞は、無限大ノルムを生じる。
Figure 0005199424
微分(derivatives)のエネルギーを加えることでH−Sobolevノルムには、さらにノイズおよび画像の縁が考慮される。
Figure 0005199424
対応するテスト画像へ収束した基準画像の誤差ノルムを算出することで評価がなされる。その後、x軸上にサンプルの数を、y軸上に画素ノルムを有して得られた値が誤差グラフにプロットされる。
次に、それらの収束に関して上記したテストパターンの比較を行う。サンプリングパターンはそれぞれ、画素ごとに、方形スクリーンの全体に適用される。テスト情景は、図33に示すような無限に拡張するチェッカーホードからなる。これは簡単なレイキャスターから生成される。サンプルパターンに従って、各画素についてn個の光線がカメラから発射され、最も近い交点が決定される。無限平面で表現されたチェッカーボードと光線の交点が存在する場合は、ヒットポイントのx−およびz−座標を追加することでが色が決定される。2を法とする総計がゼロである場合は、色値として0.75が返され、その他の場合は0.25が返される。ボックスフィルタは、本例全体に渡って再構成フィルタとしている。このフィルタは、sinc関数の粗近似であるだけであるので、上述の時間空間における理想的再構成フィルタであるにしても、再生誤差が導入され得る点に留意すべきである。
上記したように、テストパターンは誤差グラフによって比較される。画素あたりのサンプリング点の数の増加について、テスト画像に対する基準画像の誤差ノルムが計算される。その後、得られる値は誤差グラフに図示され、こうしてx−軸上にサンプルの数が、y−軸上に誤差ノルムが表示される。両軸は、指数目盛である。各画素あたり256×256サンプルを有するジッタを受けたグリッドサンプリングパターンを適用することで、基準画像が算出された。画像は、なおエイリアシングアーチファクトを含んでいる。このことは、再構成フィルタの選択によって幾分かは説明される。しかし他方で、画素あたりのサンプルの数をなお増加することによっては、状況は大きく変わらないであろう。基準画像は、こうして不正確な画像へと収束される。これは、積分が解析的に実施されたとしても間違った積分が計算されてきたという事実による。
チェッカーボードの水平線の方に歩くと、チェッカーボードの単一のセルが徐々に小さくなる。従って、多数のセルが水平線近くの1つの画素に含まれる。画素に関して積分すると、結果はハーフグレーであると予測される。しかし、白と黒の、正確にはダークグレーとライトグレーのセルは、1つの画素において必ずしも同じ面積(area)をカバーしないため、1つの色が他の色に勝る可能性がある。異なるテストパターンを比較する場合、このような考慮に留意を保つことが重要である。
第1に、テストパターンは、一様、ジッタを受けた格子、max−min−dist格子、ランダム化された格子、Larcher−Pillichshammer、およびランダム化されたLarcher−Pillichshammerを含む各画素について適用される。各画素について、n個の光線がカメラからスクリーンへと発射され、得られる色値がボックスフィルタによって平均化される。その後、ランダム化されたサンプリングパターンは、各画素について再作製されなければならない。H誤差ノルムのカーブを見ると、一様なグリッドが、最も悪い結果を提供することがわかった。チェッカーボードセルの縁は、画像信号に高周波数を導入するので、チェッカーボードは帯域制限されていない。さらに、サンプリングについて規則的パターンが使用される場合は、信号における構成は、サンプリング点における構成と組み合わされる。このことは、エイリアシングアーチファクトとそれによる高い誤差ノルムを説明する。サンプルの数を増加すると、上述のようにエイリアシングを弱めるだけである。
ジッタを受けたサンプリングは、さらに良好な結果を生み出す。これは、そのフーリエ変換を検討することによって説明することができる。微小な「クリアゾーン」を周囲に有して原点にスパイクが存在する。従って高周波は弱められる。さらに、攪乱されたエイリアシングアーチファクトは、通常はノイズに変化する。max−min−dist格子についての初期誤差ノルムは、一様でジッタを受けたグリッドの値にほぼ等しいにもかからず、誤差は、サンプルの数が増加すると非常に速く減少する。Larcher−Pillichshammerサンプリングパターンの誤差曲線とmax−min−dist格子がほぼ一致して、同一の値に収束する点も見ることができる。このような2つの点集合は、低食い違いを有するという重要な特性を共有する。実際、それらの食い違いは、より良好に一様に分布したサンプリング点を有し、規則的かつジッタを受けたグリッドの食い違いよりもさらに小さい。
しかし、max−min−dist格子についてgcd(n,a)=1が該当する点に注意することが重要である。このような種類の格子と、nがaと互いに素では必ずしもない(すなわちgcd(n,a)=1が捜索アルゴリズムにおいてチェックされない)格子を比較することで、後者がより悪い結果を提供することがわかる。これは、互いに素の特性が、格子点の完全な低次元投影を確実とし、これによりラテンハイパーキューブ特性を提供するという事実のためである可能性がある。
次に乱列化準モンテカルロ点を考えると、ランダム化した格子とランダム化したLarcher−Pillichshammerサンプリングパターンの両方が、これらの決定論的初期誤差よりも小さい初期誤差を有することが理解されるであろう。しかし、誤差曲線がすぐにほとんど一致することがわかってきた。また、両方のランダム化した点集合は、それらの誤差ノルムに関して非常に類似して挙動する。しかし、ランダム化したLarcher−Pillichshammer点が、ランダム化したmax−min−dist格子よりもわずかに良好な結果に到達することがわかってきた。決定論的な、およびランダム化した点集合は、それらの収束に関してほとんど違いが無いにもかかわらず、これらのパターンによって生成された画像は、特に比較的小さいサンプリングレート(<32)について外観に関して互いに区別される。
Figure 0005199424
に対して、決定論的および乱列化準モンテカルロサンプリングパターンは、同じ結果を提供する。すなわち、これらは同一の画像に収束する。
次に、(ランダム化した)max−min−dist格子およびLarcher−Pillichshammer点が、全体の方形スクリーン(xRes=yRes)上で使用される。すなわち、これらのサンプリングパターンが、[0,1)から[0,xRes)×[0,yRes)へとスケーリングされる。画素あたり特定の数nのサンプルを得るため、サンプリング点の数は、xRes・yRes・nと選択されなければならない。テスト画像は、上記のスキームに類似して作製される。各画素についてのサンプリング方法が呼び出されてその方法の中でサンプリング点について繰り返す代わりに、全サンプリング点が一度繰り返されて、各点についていずれの画素に属するかが決定される。これに関して、1つのバッファが色値を蓄積し、別のバッファが各画素についてヒットの数を格納する。全サンプリング点を処理した後、これら2つのバッファは、ボックス再構成フィルタに関して各画素について色値を平均するために使用される。
画素あたりの1つのサンプリングパターンを有する誤差グラフを、スクリーン全体についての誤差グラフと比較すると、後者の全体の誤差が前者をはるかに凌ぎ、また比較的高いレベルで収束するということがわかるであろう。決定論的サンプリングパターンが、画素基底に適用されると、隣接する画素が同じようにサンプリングされる。max−min−dist格子のランダム化は、各画素内での格子パターンのランダムシフトをもたらす。パターン自体は、同じままである。すなわち各画素は、同じではあるがランダムにシフトした格子でサンプリングされる。全体のスクリーンについて1つのパターンを使用することで、このような関連性は消失する。従って各画素は、一様に画素を必ずしもカバーするわけではない異なる点によってサンプリングされる。これにより、特に低サンプリングレートについて画像は非常にノイジーとなる。画素あたりに適用された、ランダム化されたLarcher−Pillichshammer点を考慮すると、選択されたランダム化によって点のネット構造が保たれていることは覚えておくべきである。従って、隣接する画素は、さらに一様にサンプリングされる。ランダム化されたLarcher−Pillichshammer点が、スクリーン全体にスケーリングされた場合は、これは、もはや当てはまらない。これは、非常にノイジーとなる縁において通常顕著である。
スクリーン全体をサンプリングしても、画素あたりのサンプリング点の数nは、なお興味あるものである。各画素内にnサンプルを得るためには、xRes・yRes・nサンプルが生成されるべきである点は既述してきた。n=2点についてのLarcher−Pillichshammerパターンが、基底b=2において(0,m,2)−netを表すので、スクリーン解像度は、2のべき乗として選択されなければならない。サンプリング点の数が、n=1についてxRes・yRes・n=2に等しい場合は、各画素は、体積
Figure 0005199424
の基本区間として取られ得る。n>1について、各画素は、体積
Figure 0005199424
のn個の基本区間を含む。従って、各画素は同数の点によってサンプリングされる。しかしこのことは、上述の、図39Aおよび39Bに示したグラフ720および730に図示したmax−min−dist格子については該当する必要はない。これらの図は、グラフ720においてはmax−min−dist格子L(262144,549)で、グラフ730においてはシフト(259,0)でシフトした格子L(262144,549)で、カバーされた512×512の解像度の最初の5×5画素のスクリーンを示す。2点を含む画素や1点のみを含む画素もあるので、合計512・512点に対して全くサンプリングされていない画素が存在するはずである。従って、xRes×yResの解像度についてのxRes・xRes・nサンプリング点は、画素あたり平均n個の点が存在することのみを意味する。このことは、上述のように画素あたり同数の格子点を確保するシフトした格子について捜索するモチベーションを提供する。付属書のセクション2.1.4におけるコードリストによって生成された有効なシフト
Figure 0005199424
を伴う格子L(262144,37303)について得られるチェッカーボードを比較すると、シフトした格子は、純粋なmax−min−dist格子よりも優れているように見える。しかしシフトした格子は、xRes・yRes・1サンプリング点の数について遜色があるのみであるにしても、純粋なmax−min−dist格子よりもはるかに収束が悪いということがわかってきた。従って、シフトした格子L(1048576,10235)で生成されたチェッカーボードは、スクリーン全体をmax−min−dist格子L(10488576,33919)でサンプリングすることで生成されたものよりも多くのエイリアシングアーチファクトを含む。これは、シフトした格子が、最大最小距離という点で理想的ではないという事実に基づいている可能性がある。というのは、上述のように、そのmin−distが最大限の可能な最小距離とおそらくは等しくない有効なシフトを提供する最初の格子が選ばれているからである。従って、純粋なmax−min−dist格子のみが比較のために使用された。
スクリーン全体をサンプリングする場合、決定論的およびランダム化したサンプリングパターンの誤差曲線は、ランダム化したmax−min−dist格子の初期値を別として、完全に一致するということに気付いてきた。ランダムシフトは、格子セル内で効果を有するのみである(すなわち、シフトは基本平行六面体に有効に含まれる)ので、全格子に対してわずかな寄与をするのみであり、従って画素へほんの微小なレベルのノイズを生じる。しかし、上記したようにともかく画像は非常にノイジーであるため、ランダム化による別のノイズはほとんど注目されない。
比較的低いサンプリングレートにおいて、max−min−dist格子は、Larcher−Pillichshammer点よりもさらに多くのエイリアシングを生じる。ランク−1格子は、実際に一様であるため、すなわち規則的であるか、またはLarcher−Pillichshammer点と比較してある程度周期的なサンプリングパターンであるため、パターンにおける構造が、水平線近くの高周波を規則的にサンプリングすることができ、そのためエイリアシングとして現れる新たな構造が生成される。従って、Larcher−Pillichshammer点は、限界においてmax−min−dist格子よりもわずかに良好なアンチエイリアシングを行う。
今までのところ、テストパターンの収束は、H−ノルムによって評価されてきた。L−ノルムが、代わりに選択されることも可能であった。L−ノルムは、非常に類似する結果を提供するが、縁のエネルギーを反映しないため低い誤差レベルにおいてである。結局、テストパターンは基準画像に収束するが、これは実際には間違った積分の数値的近似を表す。しかし、理想的な再構成フィルタを使用しない点が考慮されなければならない。Larcher−Pillichshammerおびmax−min−dist格子サンプリングパターンは、最速の収束レートを示し前者は後者を凌ぐ。
5.ランク−1格子による適応的改良とフィルタ処理
次に、ランク−1格子による適応的改良とフィルタ処理のための技術を記載する。図40は、発明のこの局面に従った方法740のフローチャートを示す。ステップ741において、生成されるべき合成画像における点に対応してランク−1格子が最大化した最小距離関数に従って選択される。ステップ742において、格子がディスプレイスクリーン全体にスケーリングがなされる。ステップ743において、初期サンプリングパターンとして格子を使用して低解像度で画像がサンプリングされる。ステップ744において、レンダリングされるべき画像の初期近似が、初期サンプリングパターンを使用して算出される。ステップ745において、改良基準が格子基底において評価されるように各格子点について改良基準が評価される。ステップ746において、サンプリング点が改良される必要があり得る画像の各画素について、改良テストを評価するため評価の結果が使用される。ステップ747において、サンプリングパターンが所定の基準に従って適応的に改良される。
直前の検討において、スクリーン全体をサンプリングすることで、画像合成のため最大最小距離を提供するランク−1格子が使用された。得られる画像を考慮すると、単一の画素がライトグレーまたはダークグレーのチェッカーボードセルで完全にカバーされる大きな領域が、カメラの近傍には存在し、その一方で水平性線近傍には多数のチェッカーボードセルが1つの画素内に該当していることに気付くことができる。一般化すると、一定であるかまたはゆっくり変化する値を含むコンピュータグラフィックスに多くの信号が存在する。その結果、そのような領域においては、少数のサンプルを使用するだけでレンダリングされるべき画像の良好な近似を得ることができる。他方、チェッカーボードの水平線近傍の場合と同様、領域によっては明瞭な縁と値の変化を特徴とするものもある。そのような複雑な領域においては、エイリアシングを制限するためサンプリングレートが増加されなければならない。これは、対応する信号をなんらかの基準に従って「適応的に改良した」「初期サンプリングパターン」によって、低解像度で第1にサンプリングすることで達成され得る。
比較的高いサンプリングレートを必要とする複雑な領域を決定するためには、近傍のサンプルの集合、いわゆる「改良テストジオメトリ」が、信号の局部帯域幅を典型的には推定しようとするなんらかの改良テストに関して評価される。一般的には、改良テストは、画像空間および物体空間基準に分かれ得る。画像ベースの改良テストは、画像の局部強度値に基づく。最も簡単な形態で改良テストジオメトリのサンプルの強度が比較される。別のテストにおいて、差がユーザー規定の閾値を超える場合は、微小正方形を形成する4個のサンプルの最大および最小強度値が比較され、改良が示唆される。別のテストには、例えば、局部コントラストや強度統計が含まれる。また、なんらかの物体ベースの改良テストが存在し、それには、光線が特定の物体を交差するときや、全情景を包含するボックスの境界付けを行うとき、各サンプルの特徴付けを行うことにより、情景中の物体についての別の情報が含まれている。改良テストが、さらにサンプルが必要であると示唆する場合は、アルゴリズムは、新たなサンプリング点を生成することでサンプリングパターンを改良する。新たなサンプルを配置するいくつかの方法が開発されており、そのうち最も簡単なものは、ランダム改良パターンにある。通常、試験と改良のこのサイクルは、所定の基準に合うまで繰り返される。
本発明の局面は、ランク−1格子が展開されることによる、適応的改良のための方法を提供する。初期サンプリングパターンとして、最大最小距離ランク−1格子がスクリーン全体にスケーリングされる。通常、レンダリングされるべき画像の初期近似は、第1のパスにおいて、初期サンプリングパターンによって算出される。その後、サンプリング点がおそらく改良される必要のある各画素について、改良テストが評価される。我々は、スクリーン全体をサンプリングするため、任意の画素(x,y)について、いずれの格子点が属するかを直接言及することはできない。従って改良基準は、各画素については各格子点について以外には適用されない。すなわち、対応する基準は格子基底において評価される。従って、第1のレンダリングパスには、格子点バッファにおける画像の計算がある。これは、各サンプリング点について光線をカメラから情景中に発射した結果が、バッファの対応する場所に格納されるという意味である。
nをサンプリング点の数とし、サイズnのフロートアレイとして点バッファを選択すると、サンプリング点
Figure 0005199424
についての得られた値は、位置buf[i]に格納され、これにより逆に添字iによる任意の格子点
Figure 0005199424
に関する強度を特定しやすくなる。付属書のセクション4.3.2に記載のコードリストに使用された3つの可能性のある改良基準は、次の比較を備える。
・格子セル{x+Λ}(セクション1.2参照)のコーナーによって形成された、区間A=[a1,b1)×[a2,b2)についての関数f(x1,x2)の局部変動
Figure 0005199424
・格子セル{x+Λ}のコーナーについて関数の上限と下限の差
Figure 0005199424
または
・中心差によって算出された勾配(階調)
Figure 0005199424
、正確には閾値Tに対する
Figure 0005199424
ノルム。
任意のサンプリング点xについて改良テストがサンプリングパターンの改良を指示すること(すなわち改良テストが所定の閾値を超えること)を仮定すると、改良パターンは、初期サンプリングパターンの格子セル構造を利用することで、別の最大最小距離ランク−1格子として選択される。これは、xに属する格子セル{x+Λ}内で最大最小ランク−1格子L(m,a)を決定することによって、改良パターンが特定されることを意味する。従って、mは初期サンプリングパターンに加えられた追加のサンプルの数を表す。これを、図41の格子750に示す。改良パターンが、初期サンプリングパターン(すなわち初期ランク−1格子)の基底に依存するので、格子L(m,a)は、ずれた(sheared)基底において捜索されなければならない。
従って、付属書2.1.2に記載のコードリストに類似して、重み付けしたノルムによって実際の領域を捕捉することで[0,m)上で捜索がなされる。そのため、上述のように、格子点
Figure 0005199424
は、原点への距離を算出する前に、初期最大最小ランク−1格子の基底
Figure 0005199424
に変換されなければならない。任意の点(x,y)について変換は、
Figure 0005199424
によって与えられる。従って、点(x,y)の重み付けしたノルムは、
Figure 0005199424
によって算出される。
Figure 0005199424
は、上述の結果を生じる矩形領域を捕捉する。
基底ベクトルは負の値も取り得るため、§2.1.2の重み付けしたノルムを、上記式のさらに一般化した重み付けしたノルムと交換することは充分ではない。オーバーフローテストにも影響するので、アルゴリズムは、代わりに倍長精度整数型(long long integers)に適合しなければならない。しかし、正方形が計算されているので、uとvの絶対値が取られ得る。従って、オーバーフローテストにおけるMAXOPのみが、
Figure 0005199424
に設定されなければならない。これは、付属書のセクション4.3.1に記載のコードリストに示す。
上述の改良基準は、改良max−min−dist格子の配置の仕方を示唆する。3つの場合全ては、実際のところ帰納的(recursive)コロボフフィルタを共通に有するので、アンカー点xと一致するとき添字j=0を有する格子点は放棄される。最初の2つの場合においては、改良テストジオメトリには、対応するサンプリング点xに固定された格子セル{x+Λ}の4個のコーナーがある。従って、改良パターンは、図41の格子750に示すように、正確にその格子セルの内部に配置される。勾配(階調)基準を使用して、改良テストジオメトリは、
Figure 0005199424
によって与えられる。これは、点xについて図42に示す改良ジオメトリ760に示されている。ここで、改良パターンは、改良パターンの格子点がxを中心とするように点
Figure 0005199424
に固定されている。勾配基準のための改良max−min−dist格子の配置は、図43の格子770に示す。この原理の1つの特別な場合は、いわゆる「
Figure 0005199424
サンプリングスキーム」によって表される。これは、係数
Figure 0005199424
でスケーリングされ、
Figure 0005199424
の角度だけ回転させた一様な格子の階層を利用するものである。このサンプリング技術が、物体空間において再帰的に動作するので、画像空間における点サンプルの繰り返し計算に適応されてきた。
付属書のセクション4.3.2は、1つのレベルの改良についてランク−1格子による適応的改良のため記載された方法をインプリメントするコードリストを示す。引数として、初期サンプリングパターン、初期max−min−dist格子(スクリーン解像度に合わされていない格子)、および改良パターン(refLattice)を採用する。これらのパラメータは、初期化法によって事前に計算されている。初期サンプリングパターンの各点についての第1のループにおいて、光線を情景に発射することにより強度値が点バッファに格納される。各サンプリング点についての第2のパスにおいて、選択された改良基準が評価され、得られた値が所定の閾値を超える場合は新たなサンプルを生成する。このようなサンプルが初期サンプリングパターンのコピーに追加される。1つのレベルの改良のみが考慮されるので、比較的粗なレベルで既に作製されてきたサンプルを除外するためには、特別の配慮がなされなくてもよい。初期最大最小距離ランク−1格子の全点に渡って繰り返した後、改良されたサンプリングパターンは、画像空間における最終画像を算出するために使用される。
改良基準を評価するため、改良ジオメトリに属する点の値が、点バッファからそのx座標を介してアクセスされる。これにより、付属書のセクション4.3.1.1、4.3.1.2、および4.3.1.3に示すソースコードインプリメンテーションが生じる。ここで
Figure 0005199424
は、実際のサンプリング点を表し、(b1x,b1y)および(b2x,b2y)は、初期max−min−dist格子の基底ベクトルである。
格子点
Figure 0005199424
についての対応する基準がサンプリングパターンの改良を示唆するときは、新たなサンプルが
Figure 0005199424
によって生成される。ここで、初期サンプリングパターンは、L(n,a)を特徴とし、改良パターンは、
Figure 0005199424
によって与えられる。改良パターンを
Figure 0005199424
(勾配基準)に集中させる場合は、
Figure 0005199424
であり、それ以外の場合は、s=0およびs=0である。これは、付属書のセクション4.3.1.4に記載のコードリストによってインプリメントされる。付属書のセクション4.3.2には、本明細書に記載の適応的改良技術を例示するコードリストを記載している。
チェッカーボード情景が、3個の異なる強度値{0.25,0.75,1.0}のみを特徴とするので、T=0.25の閾値は、良好な選択を表す。アプローチの結果を見ると、新たなエイリアシングアーチファクトが水平線に現れていることがわかってきた。これは、チェッカーボードの水平線近傍の場合と同様、情景の「複雑な」領域に継ぎ目無くタイル張りする改良パターンの規則的構造によって説明することができる。このようなエイリアシング効果を制限する1つの可能性は、初期サンプリングパターンの格子セル内に改良パターンの格子点をランダムにシフトすることにある。従って隣接する格子セルは、同一のサンプリングパターンによってそれ以上には改良されない。例えば画像は、スクリーン全体にスケーリングされたmax−min−dist格子L(2097152,193293)を使用して計算されてきた。初期サンプリングパターンとして格子L(1048576,33913)および格子L(1048576,33913)内でランダムにシフトされた格子L(11,4)を採用して、§4.3.2コードリストが画像に適用された。改良テストとして、変動基準が適用された。改良の後、初期パターンは、679452によって総数1728028サンプリング点に拡張された。各画素は、画素あたり最大48サンプルで平均6.6点にてサンプリングされた。サンプリングレートは、値の変化がシャープな領域のみで増加するので、改良された画像の質は、同時に比較的少数のサンプリング点を使用することにより改善された。しかし、改良パターンがランダムにシフトされなかった場合は、得られた画像に新たなエイリアシングアーチファクトが現れたであろうことに注意すべきである。
上述のように、エイリアシングは、ナイキストレートを下回って信号をサンプリングした結果である。サンプリングの後、信号は再構成され媒体(TFT、CRT等)に投影される。再構成誤差は、信号が不正確にそのサンプルから復元されている場合に生じる。既に検討してきたように、時間空間における理想的な再構成フィルタは、sinc−関数によって与えられる。しかし、この関数は無限台を有する。従って近似はボックス様であり、実際には代わりにガウスまたは三角フィルタが使用される。
以上までは、一様サンプリングに重点を置いて検討してきた。非一様サンプルによるアンチエイリアシングも検討されているので、非一様な再構成も考慮する必要がある。関数法、変形法、反復法を含むいくつかのアプローチが使用されてきた。最も簡単なアプローチは、適切な再構成フィルタのコピーを、一様サンプリングされた信号の場合とちょうど同じく、再サンプル点に関して配置することである。これは局部フィルタ処理と言われている。フィルタはいくつかの基準について設計されている。まず第一に、フィルタは信号スペクトルの中央のコピーをあまり弱めてはいけない。他方でフィルタは、スペクトルのレプリカから追加のエネルギーの影響をできる限り減少させなければならない。さらに再構成フィルタは正規化、すなわち、
Figure 0005199424
されなければならない。ここでp(x)はフィルタ関数である。換言すれば、各サンプルは、全フィルタ応答の総計が1となるフィルタによって重み付けされている。これは、重み付けした積分が実行されることを意味している。文献においては、非一様キュービックB−スプライン、ガウスの差分、およびMitchell and Netravaliフィルタのようないくつかのフィルタが提案されてきた。
次の検討は、ランク−1格子のフーリエ変換に基づいて、そのような格子がサンプリングされるべき信号上でフィルタとして働くことを示す。距離パラメータによって適切なBスプラインフィルタを自動的に選択する方法が提供される。最後に、Clear Type技術によるTFT−スクリーン上でのアンチエイリアシングを検討する。
合成画像を生成する場合、各画素について色値が決定されなければならない。これは、画素積分を計算することでなされる。上記でわかるように、パラメトリック積分が実行される。
Figure 0005199424
ここで、g(y)は画像関数を特定し、yは画像における画素をパラメータ化する。
Eを、周波数の増加に従ってそのフーリエ係数が減少する一式の関数とする。
Figure 0005199424
がランク−1格子によって積分される場合は、このサンプリングパターンは、元にある関数上でフィルタ効果を有する(すなわち高周波をフィルタ処理する。)。これは、数値的に積分する場合に微小な誤差限界が存在することを意味する。積分誤差は、
Figure 0005199424
によって表現することができる。この誤差は、
Figure 0005199424
のフーリエ級数展開を使用して明確に計算することができる。ここで
Figure 0005199424
は、
Figure 0005199424
において評価されたfのフーリエ係数を表す。式4.12にf(x,y)のフーリエ級数展開を挿入することで、
Figure 0005199424
が導かれる。これについて今のところノルムを無視している。
Figure 0005199424
のフーリエ級数展開が完全に収束する
Figure 0005199424
という仮定のもとで、式4.13における総和の順序は、次の
Figure 0005199424
のように変更することができる。こうして我々が格子を扱っているという事実を利用することができる。
Figure 0005199424
の場合は、
Figure 0005199424
であり、なんらかの整数kについて
Figure 0005199424
であることを思い出すと、式4.14中の総和について
Figure 0005199424
である。従って、積分誤差は、
Figure 0005199424
として算出される。誤差は、双対格子
Figure 0005199424
の点において評価されると、f(x,y)のフーリエ係数のみに依存すると理解されよう。フーリエ級数係数が
Figure 0005199424
の増加に伴って減少する、すなわち
Figure 0005199424
の場合は、誤差は、
Figure 0005199424
で限界とされる。従って、格子は良好なフーリエ特性によりフィルタとして作用する。B−スプライン再構成フィルタと組み合わせると、エイリアシングアーチファクトはかなり弱められる。1つの実施例において、テスト関数Z
Figure 0005199424
が、スクリーン全体にスケーリングされたmax−min−dist格子L(1048576,33919)によってサンプリングされた。再構成フィルタとして増加する次数(degree)
Figure 0005199424
のB−スプラインフィルタBが使用された。
第1の画像において関数は、1/2半径(radius)のボックスフィルタに対応する、次数0のB−スプラインフィルタによって再構成された。第2、第3、および第4の画像において、フィルタB、B、およびBが適用された。Bは、画素半径1の三角フィルタであり、Bは、半径3/2の2次B−スプラインフィルタに対応する。Bは、2画素(半径)の台を有する3次B−スプラインフィルタである。従って、これら全てのフィルタは、コンパクトな台を有するという特性を共有する。台によって1つのサンプリング点は、数画素に影響することがある。対応する重み付けを総和すると1となり、これは、1つのサンプリング点のエネルギーが完全にそれらの画素間に分散されているという意味である。次数が上がるにつれ、それに応じて−スプラインフィルタの台が上がり、エイリアシングアーチファクトがますます抑制される。しかし、フィルタ処理カーネルの台が増大すると画像にぼやけが導入されもすることにも注意すべきである。
図33の一様にサンプリングされたチェッカーボードを見ると、エイリアシングアーチファクトが水平線近傍でさらに明確になってくることがわかるであろう。光線のチェッカーボードとのヒットポイントがカメラから遠ざかるにつれて、さらに多くのチェッカーボードセルが単一の画素をカバーする。換言すれば、信号周波数が水平線に向かって増大する。上述のように、サンプリングレートを増大することで完全にアーチファクチトを除去することは可能ではない。というのは、一方では、信号は、典型的には帯域制限されておらず、他方には、間違った積分が計算されている可能があるからである。時間空間において理想的再構成フィルタは無限台を有するので、ポストエイリアシングを減少するためには、三角、ガウス、またはB−スプラインのような、sinc−関数を近似する適切なフィルタを注意深く選択する必要がある。
先行するアプローチにおいては、いずれのフィルタを選択すべきかについての決定は、レンダリングの前になされてきた。すなわち、同一の再構成フィルタが各画素に適用されてきた。上述のように、カメラの距離が遠くなるにつれ、sinc−フィルタへの近似がさらに良好になるはずである。例えば、r>0.5画素半径のガウス−フィルタを選択することでエイリアシングアーチファクトが減少しても、同時に、全画像はぼやけるであろう。この問題は、可能性のあるエイリアシングのレベルへフィルタ選択を適合することで解決することができる。これは、各サンプリング点について、フィルタ処理の必要度に応じて(すなわち、カメラからヒットポイントまでの光線の長に応じて)再構成フィルタが選択されることを意味する。従って、1つの画素は、異なるフィルタによって影響されることがある。再構成フィルタとして、次数kのベーシス(basis)B−スプライン関数が選択される。すなわちCox−de−Boor帰納式
Figure 0005199424
によって与えられた、最大の多項式の次数d=k−1のベーシスB−スプライン関数が選択される。元の定義において、パラメータiは、ノット列の要素tの添字を特定する。我々は、t=iを設定するので、実際には一様B−スプラインを使用する。最終章で記載するように、このようなフィルタ関数は、コンパクトな台suppNi,k=[i,i+k)を有し、影響を及ぼす画素間に1つのサンプリング点の寄与を完全に分配する。さらにこれらは、最大の連続性を有し、すなわちCk−2連続である。B−スプライン関数は、付属書のセクション4.4.1に記載のコードリストに例示するように簡単な方法でインプリメントすることができる。
各画素の中央にフィルタカーネルを固定することが望ましいため、上記プロセス中のパラメータiは、
Figure 0005199424
に設定され、それにより台を[i,i+k)から[−k/2,k/2)へシフトする。1つのサンプリング点(x,y)の重みを半径方向の2次元フィルタカーネルによって計算するため、B−スプラインベーシス関数が、
Figure 0005199424
について呼び出される。ここで、
Figure 0005199424
が整数グリッド上の画素をパラメータ化する。すなわち(m+0.5,n+0.5)は、画素中央のことである。サンプリング点(x,y)の重みwについて、これは、
Figure 0005199424
を意味する。ここで、kは、特定される余地がある唯一のパラメータである。テスト情景の画像が、発射光線
Figure 0005199424
によって合成されると、パラメータλは、光線起点から平面(すなわちチェッカーボード)へその方向に沿った距離を測定する。ここで、Oは、光線起点であり、
Figure 0005199424
は、正規化された光線方向である。従って光線−平面交差から得られるこのパラメータtは、次数(degree)、正確には選択すべきB−スプラインの次数(order)についての測度として使用され得る。付属書のセクション4.4.2は、本検討に従ったソースコードを記載する。
B−スプライン次数の選択についての1つの単純な経験則は、d(λ)=λ・log(λ)・kとして
Figure 0005199424
によって与えられ、これをk=0.025について図44のグラフ780に示す。この決定関数を適用することで、カメラ近くで鮮明で同時に水平線近くでぼやけている画像が得られる。これは、sinc関数へのフィルタカーネルの近似が、tの増加につれフィルタサポートの増加によっても改善するからである。付属書のセクション4.3.3は、上述のようにスクリーン全体のサンプリングを仮定した、本検討に従ったフィルタ処理スキームについてのソースコードを提供する。ソースコードは、全サンプリング点に関して繰り返され、各点についてカメラからスクリーンへ1つの光線を発射する。光線がチェッカーボードと交差する場合は、サンプリング点の重みが式4.18に従って計算され、ヒットポイントの重み付けされた色がアキュミュレーションバッファ(accBuffer)に蓄積される。第2のバッファ(countBuffer)は、重みを蓄積するのみである。各画素についての最終的な色を算出するため、重み付けされた色値の総計が、最終的にフィルタ重みの総計で除算される。
上記のアルゴリズムにおける可変オフセットは、対応するサンプリング点(x,y)がその台(サポート)に存在する可能性がある画素を決定するために使用される。半径方向の2次元フィルタカーネルの場合は、サンプル(x,y)は、
Figure 0005199424
として、サンプルが属する画素
Figure 0005199424
の周囲の隣接する
Figure 0005199424
における全画素に影響することがある。これを、図45のグラフ790に示し、ここで、中央の正方形は、1−画素と1.5−画素半径の両方のフィルタカーネルについてのサンプルによって影響される可能性がある1組の画素を規定する。
上述してきたようにフィルタカーネルの次数は、その台のサイズを決定し、レンダリングアルゴリズムの動作時間に大きく影響する。従って我々は、特定の定数(付属書のセクション4.4.3のコードリストで7に設定されている)で次数を固定した。しかし、この定数およびB−スプライン次数の計算の両方は、レンダリングされるべき情景に依存する。
記載のフィルタ処理スキームの1つの欠点は、フィルタカーネル間で滑らかな遷移が存在しないという点である。これは、フィルタ次数を表す異なる領域が互いに鮮明に分離されている場合に特に顕著である。滑らかな遷移を達成するため、次数dとd+1の連続するフィルタの重みが線形的に補間される。すなわち、
Figure 0005199424
である。
Figure 0005199424
として、補間パラメータ
Figure 0005199424
は、次数dのB−スプラインが選択される閾値λへのλの接近度についての情報を提供する。γが増加すると、λがλd+1に近づくため、同時にwの影響が減少することでwd+1の影響も増加する。次数0と1のB−スプライン間の補間について、図46におけるグラフ800にこれを示す。付属書のセクション4.4.4のコードリストは、式4.19および4.20に従ったフィルタカーネル間の補間を取り込むことで、セクション4.4.3に記載のコードリストの適応的フィルタ処理スキームを拡張している。サンプル(x,y)が存在する台における画素の近傍を決定するため、可変オフセットが再び使用される。我々は、台の半径に関して大きさが異なる次数dとd+1の2つのフィルタカーネル間で補間するので、近傍
Figure 0005199424
を考慮しなければならない。2つのフィルタカーネルの半径間の差が、ちょうど
Figure 0005199424
に等しいので。従って、近傍
Figure 0005199424
に関して繰り返すと充分であり、これは、付属書のセクション4.4.4に記載のコードリストで2つの入れ子のforループによって達成される。2つのforループ内のif−else文は、異なるサイズのフィルタカーネルを考慮している。
Figure 0005199424
の場合は、サンプリング点(x,y)の重みwは、wd+1で与えられ、一方でt<=rの場合は、wとwd+1の間で補間が必要である。
チェッカーボード画像に戻って、1つのサンプリング点の寄与が1を超えていないこと、すなわち1に対する1つのサンプル総計についての重みを確認するため、各ヒットポイントにおける色がハーフグレーに設定される。その後、付属書のセクション4.4.4および4.4.3に記載の両方のコードリストは、水平線でぼやけている一様なグレーの無限面となるはずである。
ここで、ClearType技術が本発明に関連するため検討する。画像が単一の正方形を表すと考えられるCRTディスプレイに対して、TFT(薄膜トランジスタ)またはLCD(液晶表示)ディスプレイの単一画素は、3つの分かれた「副画素」、赤、緑、および青のものから構成される。人の目は、このような三重子を1画素として認識する。ClearType技術は、水平スクリーン解像度を3倍とするため、そのように直接アドレス可能な副画素を利用する。これは、水平線輝度解像度が、副画素解像度すなわち3倍の水平線スクリーン解像度によって与えられることを意味する。しかし、各副画素は、輝度源を表すのみではなく、その色によっても特徴付けられる。従って輝度解像度は、異なる色チャンネル上で3倍化される。「従来の」画像合成は、各画素についての光が、スクリーン上の単一のスポットから発する(すなわち3つの色、赤、緑、および青が重なり合う)ことを想定しているが、ClearTypeは、アンチエイリアシングについての異なる構造を考慮に入れる。ClearTypeは、LCDスクリーンのようなパターン付けされたディスプレイ上で文字の可読性を改善するため、アンチエイリアシングについての技術として導入された。同様の技術は、ビデオディスプレイの有効水平解像度を2倍とするため、AppleIIパーソナルコンピュータにおいて既に使用されていた。しかしClearTypeに対して、この副画素技術は、2つの副画素(すなわち緑と紫のもの)の1つの単一画素を構成した。
従来は、画素は、「オン」または「オフ」のいずれかであり、図47Aに示す線部分810であるように、このことが傾斜のついた線がすっかりギザギザに見える理由である。標準的なアンチエイリアシング手順では、このような縁をぼやかすようにする。ClearTypeは、図47Bに示す線部分820に示すように、隣接画素の一部を使用することで副画素構造を利用し、副画素の既存のパターンを拡張する。しかし、副画素の色を無視すると、色の不均衡による色縁が生じることとなる。ClearTypeは、知覚エラーメトリックによる色誤差と空間解像度の間のトレードオフをバランスさせる。これは、個別の副画素の輝度値を選択するため、フィルタ処理技術は人の視覚系のモデルをベースとして発展していることを意味する。得られる9個のフィルタ(入力と副画素色の組み合わせごとに1つ)は、TFTまたはLCDディスプレイ上で再構成するとき知覚した誤差を最小化する。実時間インプリメンテーションを達成するため、9フィルタ法は、さらに簡単化されて、いわゆる「RGBデシメーション」が生まれている。入力画像の各色チャンネルをローパスフィルタによって前フィルタ処理した後、同一色の副画素の空間的場所にサンプルが取られる。すなわち副画素の変位を考慮してサンプリング(変位サンプリング)が実施される。RGBデシメーションの原理を、図48に明示する。同図は、各出力副画素に集中した1画素幅ボックスフィルタを備えるローパスフィルタ830を図示する。LCDやTFTディスプレイの中には、R−G−BではなくB−G−Rで副画素を配列するものもあるので、このアルゴリズムをインプリメントすると、ディスプレイ装置のRGB順序付けを処理する必要がある。さらに、我々は、CRTディスプレイが、副画素レベルでアドレス可能ではないことに留意しなければならない。従って、ClearType技術は、TFTまたはLCDディスプレイ上でのみ有効である。ClearTypeがアンチエイリアシングの局面を取り込んでいるため、それでもCRTディスプレイの画質をわずかに改善もする。
次のコードリストは、元々はフォントレンダリングの強調のため、スクリーン全体をサンプリングすることでチェッカーボードをレンダリングするために設計されており、ClearType技術をインプリメントする。これは、サンプリング点の数が、少なくとも3・num・ResX・ResYでなければならないことを意味する。ここで、numは、副画素あたりの所望数のサンプルを表す。適切なmax−min−distサンプリングパターンを生成するため、我々は、3倍水平解像度について重み付けしたノルムを用いて説明しなければならない。これは、付属書のセクション2.1.2に記載したコードリストでインプリメントされる。深度適応的フィルタ処理について最後のセクションに記載したように、クリアタイプレンダリングアルゴリズムは、重み付けした色値を累積するアキュミュレーションバッファ(tmpBuffer)、およびフィルタ重みを累積するための付加バッファ(countBuffer)を利用する。両方のバッファは、3倍水平解像度で初期化される。このような2つのバッファによって、チェッカーボードは副画素解像度でレンダリングされる。このようにして、TFTまたはLCDスクリーンの各画素の赤および緑の副画素値が同じ場所において算出され、その後これらは表示される。このことは、赤と緑の副画素値をあたかも緑の副画素として同一場所に表示するかのように算出する、標準的アンチエイリアシングには当てはまらない。その結果、赤と青成分がそれぞれ右と左に画素の3分の1シフトするのでぼやけが生じる。フィルタは、各出力副画素に固定されている5個の副画素幅のボックスフィルタ
(数378)
Figure 0005199424
からの結果を重み付ける。局部色バランスをなお維持しつつサイドの副画素のエネルギーを減少するため、このフィルタはRGBデシメーションについて選択された。RGBデシメーションの実施の後、各画素にその3つの副画素の色を割り当てることにより我々は画素解像度に戻る。換言すれば、TFTディスプレイは、このステップで副画素レベルで直接アドレス指定される。これは、最後の入れ子のforループでなされる。
無限大チェッカーボード画像へClearTypeアルゴリズムを適用する際に、フィルタ処理技術がチェッカーボード画像に見られる色エイリアシングを抑制し、滑らかな縁を生成することがわかった。ClearTypeは水平解像度の増大のみをするので、水平線の縁の近くでは、ほぼ垂直のものよりもさらに滑らかに見えることがわかった。しかし、信号周波数がカメラからの距離の増加に伴い増大するので、水平解像度を3倍化することでは、水平線近くのエイリアシングアーチファクトを補正することができない。
図49−51は、無限大チェッカーボード画像をレンダリングするために使用される格子をいくつか例示する一連の図を示す。図49は、
Figure 0005199424
であり、
Figure 0005199424
である一式の格子840を示す。図50は、512×512にスケーリングされ、
Figure 0005199424
である一式の格子850を示す。図51は、ResX×ResYの解像度として、gcd(n,a)=1である一式の格子860を示す。
6.結論
2次元ランク−1格子に関して本明細書に発明の様々な局面を記載してきた。しかし、発明の範囲をこのような特別な場合に限定する意図はない。例えば、本明細書中に記載の技術は、s次元(s>2)における最大最小距離ランク−1格子についての捜索に拡張されてよい。さらに、本明細書中に記載のスペクトルテストは、任意の領域における最大最小距離ランク−1格子の捜索をする目的のため単位正方形以外の領域に拡張されてよい。アンチエイリアシングに関して、格子の規則的構造による特定画像の水平線におけるエイリアシングを回避するため、ディスプレイスクリーン全体をサンプリングするためのいくつかの格子の使用に、記載した技術は拡張されてよい。本明細書に記載した適応的改良アルゴリズムは、いくつかのレベルの改良に拡張されてよい。また、特に水平線特定画像におけるB−スプラインフィルタにより生じたぼやけを制するため、適応的フィルタ処理方法に異法性フィルタ処理が含まれることがある。
前述の記載には、当業者が発明の実施を可能とする詳細が含まれ、説明は本質的に例示的であり、その多くの修正および改変が、このような教示の利益を有する当業者に明白であると認識されるべきである。従って、本明細書の発明は、本明細書に添付の特許請求の範囲によってのみ規定され、特許請求の範囲は先行技術によって許容される限り広く解釈されることを意図している。
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424

Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424
Figure 0005199424

Claims (20)

  1. ディスプレイスクリーンに対応する画素の行列から画像のラスタ表示が形成されるコンピュータグラフィックスディスプレイシステムにおいて、
    仮想スクリーン空間における2次元頂点をディスプレイスクリーン上の画素へと変換するラスタライザを備え、
    前記ラスタライザが、前記画素に対応する最大化した最小距離(max−min−dist)関数に従ってランク−1格子を選択し、選択されたランク−1格子の格子点またはセルの上で前記画像のラスタライゼーションを実行し、
    前記ラスタライゼーションが、直交座標における点を前記ランク−1格子の基底に変換し、変換された点に該当する格子セルを決定し、それにより、前記直交座標をランク−1格子座標に変換し、前記ランク−1格子座標を用いて前記画像をラスタライズする処理を含む、ことを特徴とするコンピュータグラフィックスディスプレイシステム
  2. 前記ラスタライゼーションが、線分の端点を形成する第1および第2の点のそれぞれについて前記格子セルを決定し、次いでデジタル微分解析機(DDA)を端点の格子座標に適用して、前記ランク−1格子における線分をラスタライズする処理を含む、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  3. 前記ラスタライゼーションが、前記ランク−1格子において、一式の頂点と辺によって与えられる凸多角形を充填するための画素を求める処理を含む、請求項に記載のコンピュータグラフィックスディスプレイシステム。
  4. 前記ラスタライザが、前記ラスタライゼーションの後に、前記格子セルをその短い方の対角線に沿って2つの三角形に分割することにより解像度を2倍にするアンチエイリアシング処理を行う、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  5. 前記ラスタライザが、最初に、前記ディスプレイスクリーンの矩形格子のねじれに対応して、合成されるべき情景を前記格子基底に変換し、次に、前記ラスタライゼーション実行、その後、前記情景を表示するため、前記ラスタライゼーションによって得られた画像前記格子基底へと戻して変換する処理を行う、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  6. 前記ラスタライゼーションによって、ラスタ表示が前記格子セルの行列として表され、単一の画像要素がランク−1格子点のドロネー三角形分割によって生じたセルとして表される、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  7. 前記ラスタライゼーションによって、ラスタ表示が前記格子セルの行列として表され、単一の画像要素がボロノイによって生じたセルとして表される、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  8. 前記ディスプレイスクリーンが、各格子セルの中央に配列された点光源を備える、請求項に記載のコンピュータグラフィックスディスプレイシステム
  9. 前記ディスプレイスクリーンが、単一の画像要素をカバーする面光源を備える、請求項に記載のコンピュータグラフィックスディスプレイシステム
  10. 複数の面光源を備えるディスプレイスクリーンが、前記格子セルをその短い方の対角線に沿って分割することにより解像度を増加し、それにより、エイリアシングアーチファクトを減少させる、請求項に記載のコンピュータグラフィックスディスプレイシステム
  11. ボロノイ図を利用して、前記格子セルが各格子点を中心とする6角形に区切られている、請求項10に記載のコンピュータグラフィックスディスプレイシステム
  12. 前記ディスプレイスクリーンが、複数の感光センサー素子を有するデジタルカメラを含み、前記感光センサー素子が、ドロネー三角形分割またはボロノイ図のいずれかによって生じたランク−1格子セルレイアウトに従って配列される、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  13. 前記ディスプレイスクリーンが、複数の光生成または光反射素子を有するデジタルプロジェクタを含み、前記光生成または光反射素子が、ドロネー三角形分割またはボロノイ図のいずれかによって生じたランク−1格子セルレイアウトに従って配列される、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  14. 前記ディスプレイスクリーンが、複数の光生成または光反射素子を有する3次元ディスプレイシステムを含み、前記光生成または光反射素子が、ドロネー三角形分割またはボロノイ図のいずれかによって生じたランク−1格子セルレイアウトに従って配列される、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  15. 前記ディスプレイスクリーンが、画素を有するディスプレイデバイスを含み、前記画素が少なくとも1つのランク−1格子に従って配列される、請求項1に記載のコンピュータグラフィックスディスプレイシステム
  16. 前記ディスプレイデバイスが、同数の格子セルを有するk個のディスプレイモジュールを備え、各ディスプレイモジュールのセル数を2のべき乗として選択することで、一つの格子セルデマルチプレクサによってアドレス指定され、かつ、ディスプレイモジュールの個数kを2のべき乗として選択することで、一つのディスプレイモジュールデマルチプレクサによってアドレス指定される、請求項15に記載のコンピュータグラフィックスディスプレイシステム
  17. 前記ディスプレイデバイスが、2のべき乗で表される解像度を有する2 ディスプレイを含む、請求項16に記載のコンピュータグラフィックスディスプレイシステム
  18. 前記ラスタライザが、前記ラスタライゼーションの後に、前記選択されたランク−1格子の細分化を含むアンチエイリアシングを実行し、該アンチエイリアシングが、
    前記ランク−1格子を前記ディスプレイスクリーン全体にスケーリングし、画像を低解像度でサンプリングするための初期サンプリングパターンを形成し、初期サンプリングパターンを用いて、描画されるべき画像の初期近似値を計算し、前記細分化の基準がランク−1格子の格子基底内に求まるように、各格子点について前記初期近似値を評価し、評価結果に基づいて、サンプル点を細分化する必要がある画像の各画素について細分化基準を求め、該細分化基準に適合するように、サンプリングパターンを細分化する処理を含む、請求項1記載のコンピュータグラフィックスディスプレイシステム。
  19. 前記画像の初期近似が格子点バッファにおいて計算され、かつ、前記細分化されたサンプリングパターンが、前記初期サンプリングパターンの格子セル構造を利用して、第2の最大最小距離ランク−1格子として選択され、さらに、前記細分化されたサンプリングパターンが、任意のサンプリング点に対応する前記格子セル内で最大最小ランク−1格子を決定することによって認識され、前記第2のランク−1格子の細分化基準が、格子基底のねじれを算入して決定される、請求項18に記載のコンピュータグラフィックスディスプレイシステム。
  20. 前記アンチエイリアシングが、さらに、
    パラメータが初期化法によってあらかじめ計算されている、前記初期サンプリングパターン、スクリーン解像度にスケーリングされていない初期ランク−1格子、および前記細分化されたサンプリングパターンを、入力引数として利用し、
    その後、前記初期サンプリングパターンの各点についての第1の反復において、仮想の光線を情景に発射することによって、点バッファにおける強度値を格納し、
    その後、各サンプリング点についての第2の反復において、前記選択された細分化基準を評価し、得られた値が所定の閾値を超える場合は新たなサンプルを生成し、これらのサンプルを前記初期サンプリングパターンのコピーに加え、
    その後、前記初期ランク−1格子の全ての点に関して反復した後、前記細分化されたサンプリングパターンを使用して、画像空間中の最終画像を算出する処理を含む、請求項18に記載のコンピュータグラフィックスディスプレイシステム。
JP2011173177A 2005-06-23 2011-08-08 ランク−1格子による画像合成 Active JP5199424B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US69323205P 2005-06-23 2005-06-23
US60/693,232 2005-06-23

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008518498A Division JP4981798B2 (ja) 2005-06-23 2006-06-23 ランク−1格子による画像合成

Publications (2)

Publication Number Publication Date
JP2012009053A JP2012009053A (ja) 2012-01-12
JP5199424B2 true JP5199424B2 (ja) 2013-05-15

Family

ID=37595946

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2008518498A Active JP4981798B2 (ja) 2005-06-23 2006-06-23 ランク−1格子による画像合成
JP2011173177A Active JP5199424B2 (ja) 2005-06-23 2011-08-08 ランク−1格子による画像合成

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2008518498A Active JP4981798B2 (ja) 2005-06-23 2006-06-23 ランク−1格子による画像合成

Country Status (5)

Country Link
EP (1) EP1908017A2 (ja)
JP (2) JP4981798B2 (ja)
AU (1) AU2006261874B2 (ja)
CA (1) CA2609286A1 (ja)
WO (1) WO2007002592A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11170254B2 (en) 2017-09-07 2021-11-09 Aurora Innovation, Inc. Method for image analysis
US11334762B1 (en) 2017-09-07 2022-05-17 Aurora Operations, Inc. Method for image analysis

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8259106B2 (en) 2002-05-15 2012-09-04 Mental Images Gmbh Low-dimensional rank-1 lattices in computer image synthesis
GB2459024B (en) * 2008-04-03 2011-01-26 Nvidia Corp Low-dimensional rank-1 lattics in computer image synthesis
US20150202464A1 (en) * 2014-01-23 2015-07-23 Mitsubis Multi-Criteria Optimization in Particle Beam Dose Optimization
US10388059B2 (en) 2016-10-03 2019-08-20 Nvidia Corporation Stable ray tracing
GB2599185B (en) * 2021-03-23 2022-08-24 Imagination Tech Ltd Intersection testing in a ray tracing system
CN117726774B (zh) * 2024-02-07 2024-04-30 芯瑞微(上海)电子科技有限公司 基于线产生算法的三角形光栅化方法、装置以及相关设备

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4973111A (en) * 1988-09-14 1990-11-27 Case Western Reserve University Parametric image reconstruction using a high-resolution, high signal-to-noise technique
JP2594212B2 (ja) * 1993-01-14 1997-03-26 株式会社エイ・ティ・アール通信システム研究所 画像の適応的かつ階層的格子表現生成装置
US6678406B1 (en) * 2000-01-26 2004-01-13 Lucent Technologies Inc. Method of color quantization in color images
US7432935B2 (en) * 2002-11-19 2008-10-07 Mental Images Gmbh Image synthesis methods and systems for generating sample points in a graphics scene
JP2002328211A (ja) * 2000-07-28 2002-11-15 Matsushita Electric Ind Co Ltd 反射板及びその製造方法、並びにそれを用いた表示装置
US8253754B2 (en) * 2001-01-16 2012-08-28 Microsoft Corporation Sampling-efficient mapping of images
JP2003132353A (ja) * 2001-10-29 2003-05-09 Pasuko:Kk 中心線生成プログラム
CA2495277A1 (en) * 2002-05-15 2003-11-27 Mental Images Gmbh Evaluating integrals using stratification of integration domain using rank-1 lattices
US7589729B2 (en) * 2002-05-15 2009-09-15 Mental Images Gmbh Image synthesis by rank-1 lattices
JP2004022565A (ja) * 2002-06-12 2004-01-22 Nippon Telegr & Teleph Corp <Ntt> 受光素子及びそれを用いたカラーセンサ装置
US7006110B2 (en) * 2003-04-15 2006-02-28 Nokia Corporation Determining a coverage mask for a pixel
US20050093894A1 (en) * 2003-10-30 2005-05-05 Tretter Daniel R. Generating an displaying spatially offset sub-frames on different types of grids

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11170254B2 (en) 2017-09-07 2021-11-09 Aurora Innovation, Inc. Method for image analysis
US11334762B1 (en) 2017-09-07 2022-05-17 Aurora Operations, Inc. Method for image analysis
US11748446B2 (en) 2017-09-07 2023-09-05 Aurora Operations, Inc. Method for image analysis

Also Published As

Publication number Publication date
JP2012009053A (ja) 2012-01-12
JP4981798B2 (ja) 2012-07-25
EP1908017A2 (en) 2008-04-09
JP2009501966A (ja) 2009-01-22
CA2609286A1 (en) 2007-01-04
WO2007002592A3 (en) 2008-11-20
AU2006261874A1 (en) 2007-01-04
WO2007002592A2 (en) 2007-01-04
AU2006261874B2 (en) 2010-09-02

Similar Documents

Publication Publication Date Title
JP5199424B2 (ja) ランク−1格子による画像合成
US7589729B2 (en) Image synthesis by rank-1 lattices
US7692661B2 (en) Method of creating and evaluating bandlimited noise for computer graphics
US10924727B2 (en) High-performance light field display simulator
AU7697498A (en) Texture mapping in 3-d computer graphics
JP2013518336A (ja) 入力画像から増加される画素解像度の出力画像を生成する方法及びシステム
US7672476B2 (en) Bandlimited noise for computer graphics
JP2006526834A (ja) ボリューム・レンダリング用の適応画像補間
Dimitrijević et al. Comparison of spherical cube map projections used in planet-sized terrain rendering
Kang et al. Terrain rendering with unlimited detail and resolution
Lansdale Texture mapping and resampling for computer graphics.
JP4749470B2 (ja) 画像合成の方法、コンピュータグラフィックシステム及びコンピュータプログラム
JP2004527836A (ja) 細分表面における滑らかな特徴線の生成
JP2023054783A (ja) 流動現象の視覚化およびシミュレーションのための方法ならびにシステム
Manson et al. Analytic rasterization of curves with polynomial filters
Fajardo et al. Stochastic Texture Filtering
US7656408B1 (en) Method and system for animating a border
Reach et al. Bandlimited OLAP cubes for interactive big data visualization
Kolář et al. Repeatable texture sampling with interchangeable patches
Goss et al. Study of supersampling methods for computer graphics hardware antialiasing
Kosloff et al. Fast filter spreading and its applications
Becher et al. Accelerating GPU rendering of 2D visualizations using resolution scaling and temporal reconstruction
US7689057B2 (en) Method of bandlimiting data for computer graphics
Manson et al. Bilinear accelerated filter approximation
Sharma et al. Zooming digital images using modal interpolation

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120925

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130207

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

Free format text: PAYMENT UNTIL: 20160215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5199424

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250