JP3290954B2 - 高速透視図ボリュームレンダリングのための光線変換方法 - Google Patents

高速透視図ボリュームレンダリングのための光線変換方法

Info

Publication number
JP3290954B2
JP3290954B2 JP14741298A JP14741298A JP3290954B2 JP 3290954 B2 JP3290954 B2 JP 3290954B2 JP 14741298 A JP14741298 A JP 14741298A JP 14741298 A JP14741298 A JP 14741298A JP 3290954 B2 JP3290954 B2 JP 3290954B2
Authority
JP
Japan
Prior art keywords
value
ray
source
matrix
voxel
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
JP14741298A
Other languages
English (en)
Other versions
JPH117546A (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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH117546A publication Critical patent/JPH117546A/ja
Application granted granted Critical
Publication of JP3290954B2 publication Critical patent/JP3290954B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ・シ
ステムに関し、具体的にはコンピュータ・システム内の
離散オブジェクトのグラフィックス・ディスプレイに関
する。さらに具体的にいうと、本発明は、コンピュータ
・システムにおけるグラフィックス・ディスプレイのた
めのボリューム・データセットのボリュームレンダリン
グおよび高速な透視図ボリュームレンダリングのための
光線変換方法(ray transform method)に関する。
【0002】
【従来の技術】ボリュームレンダリングはコンピュータ
グラフィックスの重要な部分であり、幾何レンダリング
およびピクセル・レンダリングの開発に追従してきた。
ボリュームレンダリングはボリューム・データセットを
直接レンダリングすることを基準とし、2Dグラフィッ
クス装置に表示される時にソリッド・オブジェクト(固
定物体)の内部の特徴を表示する。ボリューム・データ
セットは、ヴォクセル(voxel)の3次元配列である。
ヴォクセルは、有限距離で分離されたサンプル点として
定義されてきた。各ヴォクセルは位置および値を有す
る。ヴォクセル位置は、3Dヴォクセル配列のx、y、
z位置を特定する3要素集合体である。ヴォクセル値は
その形式に依存する。たとえば、ヴォクセルは輝度要素
および索引要素を有することができる。これらの要素は
通常、ボリュームレンダリング処理において様々に扱わ
れる。ボリュームのすべての点についての値の集まり
が、ボリュームのスカラー・フィールドと呼ばれる。
【0003】ボリューム・データセットは非常に多くの
手段により生成されるが、3D走査またはサンプリング
のいくつかの方法、また数値モデリングによるのが最も
一般的である。たとえば、ボリューム・データセット
は、磁気共鳴映像法(MagneticResonance Imaging)、
すなわちMRIにより生成することができ、人間の密度
または動物の組織が3Dグリッドのそれぞれの点で計算
される。この情報の表示は密度変化によって示されるの
で、組織の多様な種類の境界を示すこととなる。ボリュ
ームレンダリングは、2Dグラフィックス装置上にこの
データを表示する処理である。
【0004】座標(0,0,0)を有するボリューム・データ
セットの一番最初のヴォクセルは、ボリューム・データ
セットの原点と考えられる。この3座標は、順番にボリ
ューム・データセットにおける画像の列、行、スライス
に対応する。
【0005】ボリューム・データセットは非常に大きい
ので、システム資源に重い負荷をかける。たとえば、M
RI走査による通常のボリューム・データセットは、67
0万ヴォクセルまたはそれ以上を含むことができるのに
対し、幾何レンダリングのためのポリゴン・データセッ
トは通常50万より少ないポリゴンを含む。よって、ボリ
ュームをレンダリングするときは、ハードウェア・アク
セラレーションについて非常に大きいニーズが存在す
る。
【0006】ボリュームレンダリングには、多様なオル
ソグラフィック(orthographic)および透視投影(persp
ective projection)からレンダリングされた画像を見る
ことができる必要性がしばしば存在する。長期間にわた
ってこのようなレンダリングを見てみると、観察者にと
ってはオルソグラフィック・ビューより透視図(perspec
tive view)の方がより見やすいことが研究により明らか
になった。また、透視レンダリングはしばしば、オルソ
グラフィック・レンダリングより空間的認識について良
い視覚的な合図を与える。よって、ボリュームレンダリ
ング処理における主要なステップは、オルソグラフィッ
クまたは透視レンダリングについて最初のボリューム・
データセットの3D空間的なボリューム変換である。オ
ルソグラフィックまたは透視レンダリングのために必要
とされる変換の通常の種類には、出力のラスタ型表示装
置への投影のため入力ボリュームの拡大縮小、移動、回
転を含むことができ、ずらし(shear)さえも含むこと
ができる。一度変換がなされると、最近傍補間(nearest
neighbor interpolation)または3次元線形補間(tril
inear interpolaition)のような、多様な再サンプリン
グ技術が適用されなければならず、これによりレンダリ
ングのためのピクセル値が決定される。
【0007】ボリューム・データセットの透視図(persp
ective view)は、観察者により近くある物体より観察者
からより遠くに離れた物体をより小さく描写することに
より理解されるのが通常である。幾何物体は、モデル・
ビュー変換が実行された後、幾何物体の頂点のx、y、
z位置をwすなわち同次座標で除算することにより、透
視的にレンダリングされる。さらに、同次座標wは、透
視の歪みの程度を調整する。
【0008】以下のステップを通して、幾何物体および
ボリュームのヴォクセルが変換され、透視図に描写され
る。次のような行列積を考慮し、最初に座標(x,y,z)を
有するソース空間の頂点が同次座標に変換される。
【0009】
【数1】
【0010】オルソグラフィック・モデルビュー行列
は、透視行列で乗算され、次のような組み合わせ行列を
得る。
【0011】
【数2】
【0012】透視行列において、aP=(2*zNear)/(ri
ght−left)、fP=(2*zNear)/(top−bottom)、iP=
(right+left)/(right−left)、jP=(top+botto
m)/(top−bottom)、kP=(zFar+zNear)/(zFar−z
Near)、oP=(2*zFar*zNear)/(zFar−zNear)であ
る。(left,bottom,-zNear)および(right,top,-zNear)
は、近くの切り取り面上の点を特定し、ウィンドウの左
下方および右上方にマップされ、観察者の視点は(0、0、
0)に位置されていると仮定する。遠くの切り取り面の位
置は、-zFarにより特定される。zNearおよびzFarの両方
とも、「正」でなければならない。
【0013】ソース空間の頂点をソース空間から宛先空
間へ変換するため、行列形式におけるソースの頂点は、
組み合わせ行列で乗算され、以下のような宛先空間を作
る。
【0014】
【数3】
【0015】行列積を実行すると、宛先空間における頂
点のx'、y'、z'、w'が以下のように導き出される。
【0016】
【数4】 x’=(a*x)+(e*y)+(i*z)+m y’=(b*x)+(f*y)+(j*z)+n z’=(c*x)+(g*y)+(k*z)+o w’=(d*x)+(h*y)+(l*z)+p
【0017】次に、宛先空間における頂点(x'、y'、z'、
w')が、同次座標「w」により除算され、以下のように
透視の歪みを調整する。
【0018】
【数5】 x’=x’/w’ y’=y’/w’ z’=z’/w’ w’=w’/w’=1
【0019】座標x'およびy'は、もし望む場合には最後
のレンダリングのためにさらに調整され、フレームバッ
ファに送られる。
【0020】2つのマッピング・アプローチが、このよ
うな変換のために使用されてきた。前方マッピング。ア
プローチは、上記に記述したように使用され、ソースの
頂点を求め、それを変換行列を介して変換し、宛先空間
に適合させる。後方マッピング・アプローチ、すなわち
逆変換アプローチは、それぞれの宛先の頂点が逆変換行
列を介して変換され、ソース空間から再サンプリングさ
れる。前方マッピングは、ソース空間が時々宛先空間よ
り小さくなるので、レンダリングにおいて「穴」を残す
という危険を生じさせる。逆変換は、「光線投射(ray c
asting)」すなわちZ方向に進行するという技術に向い
ており、サンプル点がより大きい宛先空間からより小さ
いソース空間へ戻されるので、「穴」の問題を取り除
く。
【0021】透視図におけるボリューム・データセット
をレンダリングする幾何透視方法は、非常に計算が徹底
しており、行うのに最も困難である。ボリューム・デー
タセットのサイズが通常大きいために、3D空間的変換
および透視レンダリングは、非常にシステム資源に負担
をかける。よって当該技術分野において継続的な課題
は、処理の最適化である。最適な解決方法に適応したハ
ードウェアおよびソフトウェアの両方が有益である。浮
動小数点を用いる3D空間的変換および透視レンダリン
グの現在の方法は、とりわけ除算および時には乗算が必
要な時に、非常に高価である。またそれぞれのサンプル
点の繰り返し計算も、レンダリングする時間の点で非常
にコストがかかる。
【0022】3Dテクスチャマッピング技術は、透視図
を作るのに改良されるボリュームレンダリングの限られ
た形式を支援する。ボリュームのスライスがマップされ
たそれぞれのテクスチャが、2Dスケールまたは拡大縮
小操作により調整され、透視を得るためにZ方向に進む
時に物体のサイズを減少させる。しかし、このアプロー
チはあまり正確でない。
【0023】
【発明が解決しようとする課題】よって、当該技術分野
においては、品質または正確さにおいては妥協を少なく
する光線変換アプローチを使用することにより、今まで
の典型的な幾何学的透視および3Dテクスチャマッピン
グ方法の欠陥に打ち勝つ3D空間的変換および透視図ボ
リュームレンダリングの方法が必然的である。また、透
視図をレンダリングするのに必要とされる浮動小数点計
算の数、特に除算および乗算を減少させる透視図ボリュ
ームレンダリング方法が必然的である。さらに、加算お
よび減算のような高速な整数計算、シフトやマスクのよ
うな他の簡単なCPU命令を利用する必然性も存在す
る。また、処理の繰り返し計算を取り除く必然性も存在
する。当該技術分野においてハードウェアおよびソフト
ウェア両方の最適化技術の利用の必然性も存在する。レ
ンダリングされた画像の「穴」を取り除く透視図ボリュ
ームレンダリングへアプローチする逆変換を利用する必
然性も存在する。従って、当該技術分野のこれらのおよ
び他の必然性を満足する高速な透視図ボリュームレンダ
リングのための改良された方法が必要なことは明らかで
ある。
【0024】
【課題を解決するための手段】本発明のある側面は、3
D空間的変換および透視図ボリュームレンダリングのた
めに光線変換アプローチを利用することである。
【0025】本発明の他の側面は、3D空間的変換およ
び透視図ボリュームレンダリングのについて組み合わせ
逆行列および宛先の画像点からの値を符号化するため、
浮動小数点形式よりむしろ、16ビットのスカラーと1
6ビットの小数部を有する32ビット固定小数点形式
(16.16形式と呼ぶ)を使用することにより、透視図を
レンダリングするのに必要な浮動小数点計算の数を減少
させることである。
【0026】本発明の他の側面は、16.16形式のzベク
トル値i,j,kを整数に変換することにより光線変換
に沿って次のサンプルポイントを取得し、整数加算を実
行することによりZ方向に進行することである。
【0027】本発明のさらなる側面は、変換された行列
の値(x'、y'、z')を右に16ビットシフトすることによ
り、ソース空間のスタートの近傍位置を決定し、スター
トの近傍位置を表すソース空間の整数値を作ることであ
る。
【0028】本発明の他の側面は、16.16形式の変換さ
れた行列の値にマスク操作を用い、浮動小数点の値の小
数部を含む前もって計算された参照テーブルへの索引と
して16ビットの小数部分を利用することである。
【0029】本発明の側面は、今日のCPUにおけるよ
り大きなキャッシュを利用して参照テーブルへのコール
を処理し、パフォーマンスを最適化することである。
【0030】本発明の側面は、3D空間的変換および透
視図レンダリングへの非常に多岐にわたるアプローチを
利用することにより、今日のCPUにおける整数および
浮動小数点の両方のパイプラインを利用することができ
ることである。
【0031】本発明の上記および他の側面は、3D空間
的変換および透視図ボリュームレンダリングのための光
線変換方法において達成される。方法は、光線投射と対
になった後方マッピングすなわち逆変換アプローチを用
いる。所望の透視図のため、光線は投影面から投影の中
央、すなわち視点(eye point)に収束する。それぞれの
光線は独立にアドレスされ、それ自身のユニークな変換
行列を有する(これを光線変換(ray transform)と呼
ぶ)。それぞれのユニークな光線変換はオルソグラフィ
ック・モデルビュー行列と組み合わされ、透視ボリュー
ムレンダリングのための高速なオルソグラフィック光線
進行命令を生成する。
【0032】最初に、開始宛先ヴォクセルのサンプル点
が決定される。次に、オルソグラフィック・モデルビュ
ー行列の逆行列が、開始宛先ヴォクセルのサンプル点の
(X,Y)ピクセル位置に関連するユニークな光線変換行列
と組み合わされ、組み合わせ逆行列を得る。次に、サン
プル点は、宛先ヴォクセルのサンプル点の行列に組み合
わせ逆行列を掛けることにより、宛先空間からソース空
間へ変換される。
【0033】この行列積の結果である変換されたサンプ
ル点の値は、32ビットの固定小数点形式に符号化さ
れ、これは16ビットのスカラーと16ビットの小数か
ら構成される(これを16.16形式と呼ぶ)。当該技術分
野の当業者には、24ビットのスカラーと24ビットの
固定小数部を有する48ビット固定小数点形式、または
32ビットのスカラーと32ビットの小数部を有する6
4ビットの固定小数点形式、または8/24のような上
記の混合された組み合わせも用いることができることは
明らかである。16.16形式は、次のように示される
【0034】
【表1】
【0035】たとえば、8.9という数は、次のように
符号化され保管される。8.9に65536を掛け、小数部
分は落とされ、32ビットレジスタに保管される。この
例では、「.9」部分が0.9x65536=58982として符
号化され、整数の小数部分に現れる。当該技術分野の当
業者には、この光線変換の方法が、値を符号化するため
に16.16形式を用いる必要がないことは明らかである。
光線変換方法は、通常の手段を用いて機能する。すなわ
ち16.16形式は、本発明の好ましい実施形態において使
用されるものである。
【0036】それぞれの逆変換された点(x',y',z')につ
いて、最近傍または3次元線形補間の再サンプリング技
術のどちらかを選択することができ、レンダリングのた
めのピクセル値を確立する。どちらかの技術を用い、最
初のステップが、(i,j,k)により表される開始近傍点を
決定する。これは、組み合わせ行列および最初の点の計
算から変換されたサンプル点x',y',z'の値にシフト操作
を施すことにより達成される。変換されたサンプル点は
右に16ビットシフトされ、16.16形式の小数部分が切
り捨てられる。これが、スタートの近傍ヴォクセル点を
表すソース空間における整数値を生じさせる。
【0037】最近傍技術について、ソース空間における
最も近い近傍ヴォクセル点を決定する1つの方法は、変
換されたサンプル点(x'、y'、z')を整数値に丸めることに
よりなされる。たとえば、(8.2、6.5、9.6)が変換された
サンプル点(x'、y'、z')の値とすると、丸めた後の値は
(8、7、10)となる。しかし、最近傍ヴォクセルを決定する
より効率的な方法は、それぞれのx'、y'、z'要素に0.5
を加算し、結果のx'、y'、z'値を切り捨てることである。
上の例では、0.5が最初の変換されたサンプル点(x'、
y'、z')の値に加算され、(8.7、7.0、10.1)となる。これら
の値のそれぞれを切り捨てると、前述したように(8、7、1
0)となる。この手順の有利な点は、丸め込む操作におい
ては光線に沿ってそれぞれのサンプル点を求め比較しな
ければならないことの代わりに、光線の一番目の空間位
置が0.5だけオフセットされていることである。光線
に沿ったすべての他の点が線形関係にあるために、この
一番目の点を基準とする。一度0.5が加算されると、
それぞれ連続するサンプル点x'、y'、z'値のそれぞれを簡
単に切り捨てることにより、最近傍ヴォクセルが決定さ
れる。
【0038】この技術は、本発明の好ましい実施形態に
おいて記述され、最近傍のソース空間のヴォクセル点を
決定する前に、それぞれの変換されたサンプル点x'、y'、
z'に最初に0.5が加算される。変換されたサンプル点
(x'、y'、z')を囲む近傍を構成する8のソース空間のヴォ
クセルが求められ、サンプル点に最も近いヴォクセルが
取得される。この最近傍のソース空間のヴォクセルに関
連する値が、光線に沿った最初の変換されたサンプル点
(x'、y'、z')をレンダリングするのに使用されるピクセル
値を決定するのに用いられる。光線に沿ってZ方向に進
み、次のサンプル点が決定される。この進行処理は、変
換されたサンプル点の行列計算からのZベクトル値i,
j,kを16.16形式で整数に変換し、その後これらの整
数値を光線の最初に変換されたサンプル点(x'、y'、z')に
加算することにより達成される。整数値を現在の変換さ
れたサンプル点に加算する処理は、光線に沿って連続す
る変換されたサンプル点の残りを取得するまで繰り返さ
れる。その後、次の光線の開始宛先ヴォクセルのサンプ
ル点が前と同じように求められる。この同じやり方で、
ボリュームについての光線のすべてが、レンダリングの
ために処理される。
【0039】3次元線形補間技術では、変換されたサン
プル点(x'、y'、z')が含まれる近傍を構成する8のソース
ヴォクセルが決定される。次に、dx,dy,dzにより表され
るデルタx、デルタy、デルタzの値が計算される。こ
れらのデルタ値は、8のソースヴォクセルの近傍内にお
ける変換されたサンプル点のx、y、z方向における変
位を表す。これらの値は、16.16形式に保管された値の
下位の少数部分をマスクすることより変換されたサンプ
ル点(x'、y'、z')の小数部を取得し、小数部参照テーブル
にアクセスすることにより取得される。その後アンカー
値がポインタ演算での使用のために計算され、最適化処
理を助ける。最後に3次元線形補間方法が適用され、変
換されたサンプル点(x'、y'、z')を含む8の近傍のソース
ヴォクセルからの値を混合し、光線に沿って最初の変換
されたサンプル点をレンダリングするのに適用されるべ
き混合値を取得する。光線に沿ってZ方向に進むと、次
の変換されたサンプル点が、整数加算を使用し3次元線
形補間方法を適用して上述したのと同じ方法によって求
められる。この処理は、光線に沿ったサンプル点の残り
について繰り返される。その後、開始宛先ヴォクセルの
次の光線のサンプル点が、前と同じように決定される。
整数加算が、この第2の光線に沿った変換されたサンプ
ル点の残りについて使用され、3次元線形補間が適用さ
れ、レンダリングのための値を取得する。この同じやり
方で、ボリュームの光線のすべてが、レンダリングのた
めに処理される。
【0040】
【発明の実施の形態】図1は、本発明のボリュームレン
ダリング・システムを含むコンピュータシステムのブロ
ック図である。図1を参照すると、コンピュータ・シス
テム100は処理要素102を含む。処理要素102
は、システムバス104を介してコンピュータ・システ
ム100の他の要素を通信を行う。キーボード106
は、ユーザーがコンピュータ・システム100に情報を
入力することを可能にし、グラフィックス・ディスプレ
イ110はコンピュータ・システム100がユーザーに
情報を出力することを可能にする。またマウス108
は、情報を入力するのに用いられ、記憶装置112はコ
ンピュータ・システム100のデータおよびプログラム
を保管するのに用いられる。メモリ116はシステムバ
ス104に接続され、オペレーティングシステム118
および本発明のボリュームレンダリング・システム12
0を含む。
【0041】図2は、本発明の高速透視図ボリュームレ
ンダリングのための光線変換方法のブロック図を示す。
図2を参照すると、入力後、ブロック202が図3をコ
ールし、本発明が使用する参照テーブルを初期化する。
ブロック204が、以下に示すように本発明の光線変換
行列に使用される値を初期化する。
【0042】
【数6】
【0043】ブロック206が、開始宛先ピクセル位置
(X、Y)から求められるべき最初の光線を得る。ブロック
208が、この特定の「X」および「Y」の光線につい
て光線変換行列におけるZベクトルのiRおよびjR要素を
初期化する。ここで以下に示す式の「距離」は、投影の
中央、すなわち観察者の視点から近くの投影面を示す。
【0044】
【数7】 iR=X/距離 jR=Y/距離
【0045】その後ブロック210が、逆オルソグラフ
ィック・モデルビュー行列に光線変換行列を掛け、組み
合わせ逆行列を以下のようにして作る。
【0046】
【数8】
【0047】次にブロック212が、組み合わせ逆行列
からのZベクトル値を整数に変換する。これは、浮動小
数点形式の3つのZベクトル要素iC、jC、kCに65536を
掛けることにより達成され、これにより値は16.16形式
に変換される。これらの値は、後に整数加算を行うこと
により、Z方向を進行するのに使用される。
【0048】ブロック214において、ユーザーはピク
セル値を決定するのに使用する補間技術を選択する。ユ
ーザーが最近傍技術を選択した場合、その後制御はブロ
ック216に渡り、図4をコールし、最近傍技術を実行
する。もしブロック214で選択された補間技術が3次
元線形補間の場合、制御はブロック218へ渡り、図5
をコールして3次元線形補間技術を実行する。制御が図
4または図5のどちらかから戻った後、制御はボリュー
ムレンダリング・システム120(図1)に戻る。
【0049】図3は、参照テーブルの初期化のブロック
図を表したものである。図3を参照すると、ボリューム
レンダリング・システム120(図1)がdx、dy、dzを
計算するのに使用される小数部参照テーブルを、ブロッ
ク302が初期化する。テーブルは、以下のC言語のプ
ログラミングコードから導き出される。
【0050】
【数9】for(i=0;i<65536;i++) fixedPointLUT[i]=(float)i/65536.0;
【0051】例えば、i=1の時、小数部参照テーブル
に保管される値は、1/65536=0.0000である。またi=3
2768の時、小数部参照テーブルに保管される値は32768/
65536=0.5000である。i=65535の時、小数部参照テー
ブルに保管される値は65535/65536=0.9999である。
【0052】ブロック304は、ピクセル位置の計算に
使用されるY方向参照テーブルを初期化する。テーブル
は以下のC言語によるプログラミングコードから導き出
される。
【0053】
【数10】for(i=0;i<HEIGHT;i++) yStrideLUT[i]=i*WIDTH;
【0054】たとえば、ボリューム・データセットが幅
256ヴォクセルで、高さが128ヴォクセル、深さが
64ヴォクセルの場合、i=1では、Y参照テーブルに
保管される値は、1*256=256である。i=64では、保
管される値は64*256=16384である。i=127では、保管
される値は127*256=32512である。
【0055】ブロック306は、ピクセル位置計算に使
用されるZ方向参照テーブルを初期化する。テーブルは
以下のC言語によるプログラミングコードから導き出さ
れる。
【0056】
【数11】for(i=0;i<DEPTH;i++) zStrideLUT[i]=i*WIDTH*HEIGHT;
【0057】たとえば、ボリューム・データセットが幅
256ヴォクセルで、高さが128ヴォクセル、深さが
64ヴォクセルの場合、i=1では、Z参照テーブルに
保管される値は、1*256*128=32768である。i=32で
は、保管される値は32*256*128=1048576である。i=6
5では、保管される値は65*256*128=2129920である。初
期化が完了した後、図3は図2へ戻る。
【0058】図4は、最近傍技術のブロック図を示す。
図4を参照すると、ブロック402はブロック206
(図2)で選択された最初の光線に沿って最初のサンプ
ル点を得る。ブロック404は、ブロック210(図
2)で決定された組み合わせ逆行列を用い、宛先空間に
おけるヴォクセル点(x、y、z)から、ソース空間における
光線の最初に変換されたサンプル点(x'、y'、z')を、以下
の行列積を実行することにより計算する。
【0059】
【数12】
【0060】0.5がそれぞれのx'、y'、z'要素に加算さ
れる。またそれぞれの要素は、65536を掛けることによ
り16.16形式に変換される。
【0061】ブロック406において、ソース空間の開
始近傍点(i、j、k)が、変換されたサンプル点x'、y'、z'の
値の小数部分を切り捨てることにより決定される。これ
は、16.16形式の値を右に16ビットシフトすることに
より行われる。
【0062】ブロック408は、変換されたサンプル点
をレンダリングするのに用いられる値を決定する。これ
は、jの値についてはY方向の参照テーブル、kの値に
ついてはZ方向に参照テーブルをアクセスし、x要素に
ついて計算されたiの値を用い、ソースのボリューム・
データセットへのポインタによって達成される。C言語
のプログラミングコードによると以下のようになる。
【0063】
【数13】result=srcVolume[zStrideLUT[k]+yStride
LUT[j]+i];
【0064】ここで「result」は、変換されたサンプル
点をレンダリングするのに使用される最も近いソース空
間のヴォクセルの値である。ブロック410が、この変
換されたサンプル点について取得された結果について合
成処理を実行し、このサンプル点に対応するピクセル位
置(X、Y)をレンダリングするために使用されるピクセル
値を決定する。当該技術分野の当業者には、それぞれの
サンプル点が処理される時にそれぞれのサンプル点を合
成するのではなくて、この合成処理が光線のすべてのサ
ンプル点が求められた後でも実行することができるとい
うことが明らかであろう。
【0065】ブロック412は、求めるべき光線に沿っ
て、まだサンプル点が存在するかどうかを判断する。も
し存在すれば、ブロック414が求めるべき光線に沿っ
た次のサンプル点を取得する。光線に沿ってサンプル点
からサンプル点へと進むのは、ブロック212で決定さ
れた値、およびx’、y’、z’値を使用して簡単な整
数加算により行われる。その後制御はブロック406に
戻り、ブロック406、408,410のステップが繰
り返される。ブロック412で、もし答えが「いいえ」
の場合、これは現在の光線に沿ったサンプル点がもう存
在しないことを意味するので、その後制御は416に戻
り、さらに処理するべき光線が存在するかどうかを判断
する。もしブロック416の答えが「はい」であれば、
制御は図2のブロック206に戻り、次の光線を得る。
ブロック416で答えが「いいえ」であれば、これは処
理すべき光線がもはや存在しないということなので、図
4は図2へ戻る。
【0066】図5は、3次元線形補間のブロック図を示
す。図5を参照すると、ブロック502が、ブロック2
06(図2)で選択された最初の光線に沿って最初のサ
ンプル点を得る。ブロック504は、ブロック210で
決定された組み合わせ逆行列を使用し、以下に示すよう
に行列積を実行することにより、宛先空間の(x、y、z)ヴ
ォクセル点からソース空間における光線の最初に変換さ
れたサンプル点(x'、y'、z')を計算する。
【0067】
【数14】
【0068】またそれぞれの要素は、65536を掛けるこ
とにより16.16形式に変換される。
【0069】ブロック506で、ソース空間の開始近傍
点(i,j,k)が、変換されたサンプル点x'、y'、z'の値の小
数部分を切り捨てることにより決定される。これは、1
6.16形式を右に16ビットシフトすることにより達成さ
れる。
【0070】ブロック508は、dx,dy,dzの値を計算す
る。これらはデルタ値であって、これは8のソースヴォ
クセルで囲まれた近傍内における変換されたサンプル点
のx、y、z方向の変位を表す。これらの値は、16.16
形式の値の下位の小数部分を「and」操作でマスクし、
小数部参照テーブルをアクセスすることにより計算され
る(以下の式を参照)。
【0071】
【数15】 dx = fixedPointLUT[x'&Oxffff]; dy = fixedPointLUT[y'&Oxffff]; dz = fixedPointLUT[z'&Oxffff];
【0072】ブロック510は、最初のボリューム・デ
ータセットにおけるデータをポイントするアンカー値
(anchor value)を計算する。このアンカー値は、ポ
インタ演算に使用され、より容易なコンパイルを考慮し
て計算を最適化する。
【0073】ブロック512は図9の3次元線形補間の
方法を適用する。変換されたサンプル点(x'、y'、z')を含
む8の近傍ソース空間のヴォクセルの値が、光線につい
て変換されたサンプル点(x'、y'、z')に対応するピクセル
(X、Y)をレンダリングするのに使用される。
【0074】ブロック514は、この変換されたサンプ
ル点について得られた結果について合成処理を実行し、
このサンプル点に対応するピクセル位置(X、Y)をレンダ
リングするのに使用されるピクセル値を決定する。当該
技術分野の当業者には、それぞれのサンプル点が処理さ
れる時にそれぞれのサンプル点を合成するのではなく、
この合成処理が光線のすべてのサンプル点が求められた
後でも実行することができることが明らかであろう。
【0075】ブロック516は、求めるべき光線に沿っ
てまだサンプル点が存在するかどうかを判断する。もし
存在すれば、ブロック518が求めるべき光線に沿って
次のサンプル点を取得する。光線に沿ったサンプル点か
らサンプル点へと進むのは、ブロック212(図2)で
決定された値、およびx’、y’、z’値を使用して簡
単な整数加算により達成される。その後制御はブロック
506に戻り、ブロック506,508,510,51
2のステップが繰り返される。ブロック516で答えが
「いいえ」であれば、これは現在の光線に沿ったサンプ
ル点がもう存在しないということを意味するので、後制
御はブロック520に渡り、処理すべきさらなる光線が
存在するかどうかを判断する。もしブロック520の答
えが「はい」であれば、制御は図のブロック206へ戻
り、次の光線を得る。ブロック520の答えが「いい
え」であれば、これは処理すべきさらなる光線が存在し
ないということなので、図5は図2に戻る。
【0076】図6は、ソース空間におけるボリューム・
データセットの2D表示を示す。図6を参照すると、ソ
ース空間におけるボリューム・データセットの簡略化さ
れた2D表示が、ヴォクセルとサンプル点の間の組み合
わせ逆変換行列の関係を例示するのに用いられる。キー
602は、ソース空間のi,j,k方向を表し、j方向は紙
の平面から手前へ垂直に伸びている。ソース空間のボリ
ューム・データセット604は、グリッド線の交点に位
置するヴォクセルを有する。ヴォクセル606は、ボリ
ュームデータセット604のすべてのヴォクセルの典型
的なものである。
【0077】図7は、透視レンダリングの変換後の宛先
すなわちビュー空間における図6のボリューム・データ
セットの2D表示を示す。図7を参照すると、組み合わ
せ変換行列の操作が、ボリューム・データセット604
(図6)に適用され、結果として透視レンダリングの宛
先すなわちビュー空間のボリューム・データセットにつ
いて示される方向の変化をもたらす。キー702は、宛
先すなわちビュー空間のx、y、z方向を表し、y方向
は紙の表面から手前へと垂直に伸びている。組み合わせ
行列の操作の結果として、ユーザーが所望する透視図に
ついて、投影の中央704が確立される。ビュー・ベク
トル708は、投影の中央704から発する多くのビュ
ー・ベクトルの典型的なものである。画像面710は、
紙の平面から外に垂直に伸び、投影の中央704からあ
る距離だけ離れたところで確立される。
【0078】図8は、組み合わせ逆行列により変換され
た後の、ソース空間における図7のボリューム・データ
セットの2D表示を表す。図8を参照すると、組み合わ
せ逆行列の操作が、ボリューム・データセット604に
適用されている。キー602はソース空間におけるi,
j,k方向を表し、k方向は紙の平面から垂直に伸び
る。また画像面710(図7)が、宛先すなわちビュー
空間のボリューム・データセット604と持っていた関
係を保持して、ソース空間に持ち込まれる。光線は、画
像面710に沿ったピクセル位置を通って投影の中央7
04から投じる。ピクセル812および光線814は、
画像面710に沿ったピクセルの典型的なものであり、
光線は投影の中央704から発するこれらピクセルから
投じる。
【0079】光線814に沿って位置づけされるのは、
サンプル点816、818、820、822であり、ボ
リューム・データセット604の中に入っている。数種
類のうちのある補間技術が、それぞれのサンプル点を囲
む近傍のヴォクセルからサンプル点816、818、8
20、822の値を導き出すのに適用されなければなら
ない。最近傍補間および3次元線形補間は、3D空間的
変換に適用されるこのような技術である。他の光線に沿
ったサンプル点も、同様に処理される。当該技術分野の
当業者には、図6から8に示された2D描写の概念が、
3次元においても同様にあてはまることがわかるだろ
う。
【0080】図9は、3D空間的変換後のサンプル点を
レンダリングするためのピクセル値を決定する3次元線
形補間技術の3D表示を示す。図9を参照すると、キー
932はソース空間のi,j,k方向を表す。変換サン
プル点918が、ソース空間のサンプル点(x',y',z')で
ある。902,904,906,908,910,91
2,914,916は、変換されたサンプル点(x'、y'、
z')918を含むソース空間の8ヴォクセルを表わす。d
x距離934は、x’の16.16形式の値の下位の小数部分
をマスクし、小数部参照テーブル302(図3)をアク
セスすることにより決定される。dy距離936は、y’
の16.16形式の値の下位の小数部分をマスクし、小数部
参照テーブル302(図3)をアクセスすることにより
決定される。dz距離938は、z’の16.16形式の値の
下位の小数部分をマスクし、小数部参照テーブル302
(図3)をアクセスすることにより決定される。
【0081】補間は、ヴォクセル902,904,90
6,908を含む面により定義される最初のスライスを
求めることにより始まる。点920の値は、ヴォクセル
904と902の間の差を求め、これにdx距離934の
値を掛け、その結果をヴォクセル902の値に加算する
ことにより補間される。これは、以下の式により表わさ
れる。ここで、P920、P904、、は、その位置に
おけるそれぞれのヴォクセルの値を表わす。
【0082】
【数16】P920=((P904−P902)*d
x)+P902
【0083】同様に、点922の値は、ヴォクセル90
6と908の間の差を求め、これにdx距離934の値
を掛け、その結果をヴォクセル908に加算することに
より決定される。
【0084】同様のやり方で、点924の値が、点92
2と920の間の差を求め、これにdy距離936の値
を掛け、その結果を点920の値に加算することにより
決定される。
【0085】上記と同じ手順が、次のスライスに対して
続き、ヴォクセル910,912,914,916を含
む面により定義される。点926,928,930の値
が、上記で示された点920,922,924と同じや
り方で決定される。
【0086】変換されたサンプル点918に対応するピ
クセルをレンダリングするのに使用される最後の値は、
点930と924の差を求め、これにdz距離938の
値を掛け、その結果を点924の値に加算することによ
り決定される。この処理が、光線に沿ったそれぞれのサ
ンプル点およびレンダリングされるべきボリュームのす
べての光線について繰り返される。
【0087】本発明の好ましい実施形態を記述したが、
当該技術分野の当業者には、本発明の構成および幅広い
異なる実施形態において変更することができることがわ
かる。ここでの開示および説明は例示的なものであり、
本発明のいかなる限定を意図するものではない。
【0088】本発明は例として次の実施態様を含む。
【0089】(1)コンピュータ・システム(100)の2
Dグラフィックス表示(110)におけるボリューム・デー
タセット(604)をレンダリングするための方法であっ
て、ボリューム・データセットの高速透視図ボリューム
レンダリングのための光線変換方法は、(a)x値、y
値、z値、w値を有する同次座標として光線(814)の開
始宛先ヴォクセルを表現するステップと、(b)所望の透
視図について投影面の距離の値を決定するステップと、
(c)iR要素およびjR要素を有するZベクトルを含む光線
変換行列であって、X要素、Y要素を有するピクセル位
置に関連する光線変換行列を生成するステップと、(d)
前記iR要素および前記jR要素を除き前記光線変換行列の
すべての値を初期化するステップ(204)と、(e)前記ピク
セル位置の前記X要素を前記iR要素の前記距離の値で除
算し、前記ピクセル位置の前記Y要素を前記jR要素の前
記距離の値で除算することにより、前記光線変換行列の
前記Zベクトルの前記iR要素および前記jR要素を初期化
するステップ(208)と、(f)同次座標を有する逆オルソグ
ラフィック・モデルビュー行列を生成するステップと、
(g)前記逆オルソグラフィック・モデルビュー行列に前
記光線変換行列を掛けて、組み合わせ逆行列を作るステ
ップ(210)と、(h)前記同次座標として表現される前記開
始宛先ヴォクセルに前記組み合わせ逆行列を掛けて、
x'座標値、y'座標値、z'座標値を有する逆変換され
たサンプル点(918)を作るステップ(404,504)と、(i)前
記逆変換されたサンプル点(918)の前記x'座標値、前記
y'座標値、前記z'座標値のそれぞれに0.5を加算す
るステップ(404)と、(j)開始近傍点を決定するステップ
(406)と、(k)前記開始近傍点を囲む8のソースヴォクセ
ルの近傍を決定するステップと、(l)ソース値を有する
最近傍ソースヴォクセルであって、前記8のソースヴォ
クセルの近傍から前記開始近傍点に関連する最近傍ソー
スヴォクセルを決定するステップと、(m)前記逆変換さ
れたサンプル点(918)のレンダリング処理において使用
されるソース値であって、前記最近傍ソースヴォクセル
の前記ソース値を前記逆変換されたサンプル点(918)に
割り当てるステップ(408)と、を含む光線変換方法。 (2)上記(1)の方法において、ステップ(i)から(m)
を、(i)開始近傍点を決定するステップ(506)と、(j)そ
れぞれがソース値を有する前記8のソースヴォクセルの
近傍であって、前記開始近傍点を囲む8のソースヴォク
セルの近傍を決定するステップと、(k)デルタx値を決
定するステップ(508)と、(l)デルタy値を決定するステ
ップ(508)と、(m)デルタz値を決定するステップ(508)
と、(n)前記逆変換されたサンプル点のレンダリング処
理において使用される前記逆変換されたサンプル点の混
合ソース値であって、前記8のソースヴォクセルの近傍
の前記ソース値、前記デルタx値、前記デルタy値、前
記デルタz値の3次元線形補間を介して前記逆変換され
たサンプル点(918)の混合ソース値を決定するステップ
と、に置き換えることからなる上記(1)の方法。
【0090】(3)上記(1)、(2)の方法におい
て、前記開始近傍点を決定するステップは、第1の前も
って定義されたビット数を有するスカラー部分および第
2の前もって定義されたビット数を有する小数部分を有
する固定小数点形式に、前記逆変換されたサンプル点(9
18)の前記x'座標値、前記y'座標値、前記z'座標値を
符号化するステップと、前記逆変換されたサンプル点(9
18)の前記x'座標値、前記y'座標値、前記z'座標値の
それぞれを前記前もって定義されたビット数だけ右にシ
フトし、整数要素i、整数要素j、整数要素kを有する
前記開始近傍点を作るステップと、を含む上記(1)、
(2)の方法。
【0091】(4)上記(3)の方法において、前記第
1の前もって定義されたビット数および第2の前もって
定義されたビット数が16である上記(3)の方法。
【0092】(5)上記(1)の方法において、ステッ
プ(a)の前に、(a1)Y方向参照テーブルおよびZ方向参
照テーブルを生成するステップ(202)、とを含み、ステ
ップ(m)の後に、(m1)前記逆変換されたサンプル点(918)
に割り当てられた前記ソース値を合成するステップ(41
0)と、を含む上記(1)の方法。
【0093】(6)上記(5)の方法において、ステッ
プ(l)はさらに、(l1)前記Y方向参照テーブルおよび前
記Z方向参照テーブルにアクセスすることにより前記最
近傍ソースヴォクセルを決定するステップ、を含む上記
(5)の方法。
【0094】(7)上記(2)の方法において、ステッ
プ(a)の前に、(a1)小数部参照テーブル、Y方向参照テ
ーブル、Z方向参照テーブルを生成するステップ(202)
と、を含み、ステップ(n)の後に、(n1)前記逆変換され
たサンプル点(918)の前記混合ソース値を合成するステ
ップ(514)と、を含む上記(2)の方法。
【0095】(8)上記(7)において、ステップ(k),
(l),(m),(n)はさらに、(k1)前記逆変換されたサンプル
点(918)の前記x’座標値をマスクし、前記小数部参照
テーブルにアクセスすることにより前記デルタx値を決
定するステップ(508)と、(l1)前記逆変換されたサンプ
ル点(918)の前記y’座標値をマスクし、前記小数部参
照テーブルにアクセスすることにより前記デルタy値を
決定するステップ(508)と、(m1)前記逆変換されたサン
プル点(918)の前記z’座標値をマスクし、前記小数部
参照テーブルにアクセスすることにより前記デルタz値
を決定するステップ(508)と、(n1)前記Y方向参照テー
ブルおよび前記Z方向参照テーブルにアクセスすること
により前記混合ソース値を決定し、3次元線形補間を支
援するステップと、を含む上記(7)の方法。
【0096】(9)上記(1)の方法はさらに、(n)前
記組み合わせ逆行列のZベクトル要素をiC値、jC値、kC
値に分離し、前記iC値、前記jC値、前記kC値のそれぞれ
に65536を掛けることにより前記Zベクトル要素を整数
値に変換してiF値、jF値、kF値を作るステップ(212)
と、(o) 前記iF値を前記x'座標値に加算し、前記jF値
を前記y'座標値に加算し、前記kF値を前記z'座標値に
加算することにより、前記光線(814)に沿って次の変換
されたサンプル点を導き出すステップ(414)と、(p)前記
次の変換されたサンプル点について、ステップ(k)から
(m)を繰り返すステップと、(q)前記光線(814)に沿って
前記次の変換されたサンプル点のすべてが処理されるま
で、ステップ(o)および(p)を繰り返すステップと、(r)
すべての前記次の光線が処理されるまで、次の光線の次
の開始宛先ヴォクセルを取得し、ステップ(a)から(q)を
繰り返すステップ(206、402)と、を含む上記(1)の方
法。
【0097】(10)上記(2)の方法はさらに、(o)
前記組み合わせ逆行列のZベクトル要素をiC値、jC値、
kC値に分離し、前記iC値、前記jC値、前記kC値のそれぞ
れに65536を掛けることにより前記Zベクトル要素を整
数値に変換してiF値、jF値、kF値を作るステップ(212)
と、(p)前記iF値を前記z’座標値に加算し、前記jF値
を前記y’座標値に加算し、前記kF値を前記z’座標値
に加算することにより、前記光線(814)に沿って次の変
換されたサンプル点を導き出すステップ(518)と、(q)前
記次の変換されたサンプル点について、ステップ(k)か
ら(n)を繰り返すステップと、(r)前記光線(814)に沿っ
て前記次の変換されたサンプル点のすべてが処理される
まで、ステップ(p)および(q)を繰り返すステップと、
(s)すべての前記次の光線が処理されるまで、次の光線
の次の開始宛先ヴォクセルを取得し、ステップ(a)から
(r)を繰り返すステップと、を含む。
【0098】
【発明の効果】本発明によると、光線変換アプローチを
使用することにより、高速かつ正確なボリュームレンダ
リングを行うことができる。
【0099】本発明によると、浮動小数点計算の数を減
らすことにより高速な処理が達成され、逆変換アプロー
チを行うことにより正確なレンダリング処理を行うこと
ができる。
【図面の簡単な説明】
【図1】本発明によるボリュームレンダリング・システ
ムを有するコンピュータ・システムのブロック図。
【図2】本発明による3D空間的変換方法のブロック図
【図3】参照テーブルの初期化のブロック図。
【図4】最近傍補間技術のブロック図。
【図5】3次元線形補間技術のブロック図。
【図6】ソース空間におけるボリューム・データセット
の2D表示。
【図7】変換後の宛先すなわちビュー空間における図6
のボリューム・データセットの2D表示。
【図8】逆変換後のソース空間における図7のボリュー
ム・データセットの2D表示。
【図9】3D空間的変換後のサンプルポイントのレンダ
リングのためのピクセル値を決定するための3次元線形
補間技術の3D表示。
【符号の説明】
100 コンピュータ・システム 110 2Dグラフィックス表示装置 604 ボリューム・データセット 814 光線 918 逆変換されたサンプル点
フロントページの続き (72)発明者 ラッセル・ヒュオンダー アメリカ合衆国80525コロラド州フォー ト・コリンズ、ウィンターストーン・コ ート 2201 (72)発明者 バーソルド・リヒテンベルト アメリカ合衆国80525コロラド州フォー ト・コリンズ、セージブラッシュ・ドラ イブ 2720 (56)参考文献 特開 平6−282660(JP,A) 特開 平9−50537(JP,A) 特表 平8−502842(JP,A) 米国特許5101475(US,A) 米国特許5566282(US,A) Barthold Lichtenb elt,Design of a hi gh performance vol ume visualization system,Proceedings of the 1997 SIGGRAP H/Eurographics wor kshop on Graphics hardware,米国,ACM Pr ess,111−119,本願出願後発行文献 (58)調査した分野(Int.Cl.7,DB名) G06T 15/00 200 JICSTファイル(JOIS) WPI/L(QUESTEL)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】コンピュータ・システムの2Dグラフィッ
    クス表示におけるボリューム・データセットをレンダリ
    ングするための、ボリューム・データセットの高速透視
    図ボリュームレンダリングの光線変換方法であって、 (a)光線の少なくとも1つの宛先ヴォクセルを、x
    値、y値、z値およびw値を持つ同次座標として表現す
    るステップと、 (b)所望の透視図について投影面の距離値を求めるス
    テップと、 (c)X要素およびY要素を持つピクセル位置に関連す
    る光線変換行列であって、iR要素およびjR要素を持つZ
    ベクトルを含む光線変換行列を生成するステップと、 (d)前記iR要素および前記jR要素を除き、前記光線変
    換行列のすべての値を初期化するステップと、 (e)前記iR要素については前記ピクセル位置の前記X
    要素を前記距離値で除算することにより、前記jR要素に
    ついては前記ピクセル位置の前記Y要素を前記距離値で
    除算することにより、前記光線変換行列の前記Zベクト
    ルの前記iR要素および前記jR要素を初期化するステップ
    と、 (f)同次座標を有する逆オルソグラフィック・モデル
    ビュー行列を生成するステップと、 (g)前記逆オルソグラフィック・モデルビュー行列に
    前記光線変換行列を掛けて、組み合わせ逆行列を作るス
    テップと、 (h)前記同次座標として表現された前記少なくとも1
    つの宛先ヴォクセルに前記組み合わせ逆行列を掛けて、
    x'座標値、y'座標値およびz'座標値を持つ逆変換さ
    れたサンプル点を生成するステップと、 (i)前記逆変換されたサンプル点の前記x'座標値、
    前記y'座標値および前記z'座標値のそれぞれに0.5
    を加算するステップと、 (j)開始近傍点を求めるステップと、 (k)前記開始近傍点を囲む8個のソースヴォクセル近
    傍を求めるステップと、 (l)前記8個のソースヴォクセル近傍から、前記開始
    近傍点に関連する最近傍ソースヴォクセルであってソー
    ス値を持つ最近傍ソースヴォクセルを求めるステップ
    と、 (m)前記最近傍ソースヴォクセルの前記ソース値を前
    記逆変換されたサンプル点に割り当て、該ソース値を、
    該逆変換されたサンプル点のレンダリング処理で使用す
    るステップと、 を含む光線変換方法。
  2. 【請求項2】コンピュータ・システムの2Dグラフィッ
    クス表示におけるボリューム・データセットをレンダリ
    ングするための、ボリューム・データセットの高速透視
    図ボリュームレンダリングの光線変換方法であって、 (a)光線の少なくとも1つの宛先ヴォクセルを、x
    値、y値、z値およびw値を持つ同次座標として表現す
    るステップと、 (b)所望の透視図について投影面の距離値を求めるス
    テップと、 (c)X要素およびY要素を持つピクセル位置に関連す
    る光線変換行列であって、iR要素およびjR要素を持つZ
    ベクトルを含む光線変換行列を生成するステップと、 (d)前記iR要素および前記jR要素を除き、前記光線変
    換行列のすべての値を初期化するステップと、 (e)前記iR要素については前記ピクセル位置の前記X
    要素を前記距離値で除算することにより、前記jR要素に
    ついては前記ピクセル位置の前記Y要素を前記距離値で
    除算することにより、前記光線変換行列の前記Zベクト
    ルの前記iR要素および前記jR要素を初期化するステップ
    と、 (f)同次座標を有する逆オルソグラフィック・モデル
    ビュー行列を生成するステップと、 (g)前記逆オルソグラフィック・モデルビュー行列に
    前記光線変換行列を掛けて、組み合わせ逆行列を作るス
    テップと、 (h)前記同次座標として表現された前記少なくとも1
    つの宛先ヴォクセルに前記組み合わせ逆行列を掛けて、
    x'座標値、y'座標値およびz'座標値を持つ逆変換さ
    れたサンプル点を生成するステップと、 (i)開始近傍点を求めるステップと、 (j)前記開始近傍点を囲み、それぞれがソース値を持
    つ8個のソースヴォクセル近傍を求めるステップと、 (k)デルタx値を求めるステップと、 (l)デルタy値を求めるステップと、 (m)デルタz値を求めるステップと、 (n)前記8個のソースヴォクセル近傍の前記ソース
    値、前記デルタx値、前記デルタy値、前記デルタz値
    の3次元線形補間を介して前記逆変換されたサンプル点
    の混合ソース値を求め、該逆変換されたサンプル点の混
    合ソース値を、該逆変換されたサンプル点のレンダリン
    グ処理で使用するステップと、 を含む光線変換方法。
  3. 【請求項3】コンピュータ・システムの2Dグラフィッ
    クス表示におけるボリューム・データセットをレンダリ
    ングするための、ボリューム・データセットの高速透視
    図ボリュームレンダリングの光線変換方法であって、 (a)光線の開始宛先ヴォクセルを、x値、y値、z値
    およびw値を持つ同次座標として表現するステップと、 (b)所望の透視図について投影面の距離値を求めるス
    テップと、 (c)X要素およびY要素を持つピクセル位置に関連す
    る光線変換行列であって、iR要素およびjR要素を持つZ
    ベクトルを含む光線変換行列を生成するステップと、 (d)前記iR要素および前記jR要素を除き、前記光線変
    換行列のすべての値を初期化するステップと、 (e)前記iR要素については前記ピクセル位置の前記X
    要素を前記距離値で除算することにより、前記jR要素に
    ついては前記ピクセル位置の前記Y要素を前記距離値で
    除算することにより、前記光線変換行列の前記Zベクト
    ルの前記iR要素および前記jR要素を初期化するステップ
    と、 (f)同次座標を有する逆オルソグラフィック・モデル
    ビュー行列を生成するステップと、 (g)前記逆オルソグラフィック・モデルビュー行列に
    前記光線変換行列を掛けて、組み合わせ逆行列を作るス
    テップと、 (h)iC値、jC値、kC値を持つ、前記組み合わせ逆行列
    のZベクトル要素を抽出するステップと、 (i)前記同次座標として表現された前記光線の前記開
    始宛先ヴォクセルに前記組み合わせ逆行列を掛けて、
    x’座標値、y’座標値およびz’座標値を持つ逆変換
    されたサンプル点を生成するステップと、 (j)前記逆変換されたサンプル点の前記x'座標値、
    前記y'座標値、前記z'座標値のそれぞれに0.5を加
    算するステップと、 (k)開始近傍点を求めるステップと、 (l)前記開始近傍点を囲む8個のソースヴォクセル近
    傍を求めるステップと、 (m)前記8個のソースヴォクセル近傍から、前記開始
    近傍点に関連する最近傍ソースヴォクセルであってソー
    ス値を持つ最近傍ソースヴォクセルを求めるステップ
    と、 (n)前記最近傍ソースヴォクセルの前記ソース値を前
    記逆変換されたサンプル点に割り当て、該ソース値を、
    該逆変換されたサンプル点のレンダリング処理で使用す
    るステップと、 (o)前記iC値を前記x’座標値に加算し、前記jC値
    を前記y'座標値に加算し、前記kC値を前記z'座標値
    に加算することにより、前記光線に沿って次の変換され
    たサンプル点を導き出すステップと、 (p)前記次の変換されたサンプル点について、前記ス
    テップ(l)からステップ(n)を繰り返すステップ
    と、 (q)前記光線に沿って前記次の変換されたサンプル点
    のすべてが処理されるまで、前記ステップ(o)および
    (p)を繰り返すステップと、 を含む光線変換方法。
  4. 【請求項4】コンピュータ・システムの2Dグラフィッ
    クス表示におけるボリューム・データセットをレンダリ
    ングするための、ボリューム・データセットの高速透視
    図ボリュームレンダリングの光線変換方法であって、 (a)光線の少なくとも1つの宛先ヴォクセルを、x
    値、y値、z値およびw値を持つ同次座標として表現す
    るステップと、 (b)所望の透視図について投影面の距離値を求めるス
    テップと、 (c)X要素およびY要素を持つピクセル位置に関連す
    る光線変換行列であって、iR要素およびjR要素を持つZ
    ベクトルを含む光線変換行列を生成するステップと、 (d)前記iR要素および前記jR要素を除き、前記光線変
    換行列のすべての値を初期化するステップと、 (e)前記iR要素については前記ピクセル位置の前記X
    要素を前記距離値で除算することにより、前記jR要素に
    ついては前記ピクセル位置の前記Y要素を前記距離値で
    除算することにより、前記光線変換行列の前記Zベクト
    ルの前記iR要素および前記jR要素を初期化するステップ
    と、 (f)同次座標を有する逆オルソグラフィック・モデル
    ビュー行列を生成するステップと、 (g)前記逆オルソグラフィック・モデルビュー行列に
    前記光線変換行列を掛けて、組み合わせ逆行列を作るス
    テップと、 (h)iC値、jC値、kC値を持つ、前記組み合わせ逆行列
    のZベクトル要素を抽出するステップと、 (i)前記同次座標として表現された前記光線の前記開
    始宛先ヴォクセルに前記組み合わせ逆行列を掛けて、
    x’座標値、y’座標値およびz’座標値を持つ逆変換
    されたサンプル点を生成するステップと、 (j)開始近傍点を求めるステップと、 (k)前記開始近傍点を囲み、それぞれがソース値を持
    つ8個のソースヴォクセル近傍を求めるステップと、 (l)デルタx値を求めるステップと、 (m)デルタy値を求めるステップと、 (n)デルタz値を求めるステップと、 (o)前記8個のソースヴォクセル近傍の前記ソース
    値、前記デルタx値、前記デルタy値、前記デルタz値
    の3次元線形補間を介して前記逆変換されたサンプル点
    の混合ソース値を求め、該逆変換されたサンプル点の混
    合ソース値を、該逆変換されたサンプル点のレンダリン
    グ処理で使用するステップと、 (p)前記iC値を前記x'座標値に加算し、前記jC値
    を前記y'座標値に加算し、前記kC値を前記z'座標値
    に加算することにより、前記光線に沿って次の変換され
    たサンプル点を導き出すステップと、 (q)前記次の変換されたサンプル点について、前記ス
    テップ(k)からステップ(o)を繰り返すステップ
    と、 (r)前記光線に沿って前記次の変換されたサンプル点
    のすべてが処理されるまで、前記ステップ(p)および
    (q)を繰り返すステップと、 を含む光線変換方法。
JP14741298A 1997-05-30 1998-05-28 高速透視図ボリュームレンダリングのための光線変換方法 Expired - Fee Related JP3290954B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US865,756 1997-05-30
US08/865,756 US6014143A (en) 1997-05-30 1997-05-30 Ray transform method for a fast perspective view volume rendering

Publications (2)

Publication Number Publication Date
JPH117546A JPH117546A (ja) 1999-01-12
JP3290954B2 true JP3290954B2 (ja) 2002-06-10

Family

ID=25346157

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14741298A Expired - Fee Related JP3290954B2 (ja) 1997-05-30 1998-05-28 高速透視図ボリュームレンダリングのための光線変換方法

Country Status (4)

Country Link
US (1) US6014143A (ja)
JP (1) JP3290954B2 (ja)
DE (1) DE19807053B4 (ja)
GB (1) GB2325836B (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6008813A (en) * 1997-08-01 1999-12-28 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Real-time PC based volume rendering system
GB2329810B (en) * 1997-09-29 2002-02-27 Science Res Foundation Generation and use of compressed image data
JP3597360B2 (ja) * 1997-11-17 2004-12-08 株式会社リコー モデリング方法および記録媒体
US6266053B1 (en) * 1998-04-03 2001-07-24 Synapix, Inc. Time inheritance scene graph for representation of media content
US6720964B1 (en) * 1998-08-27 2004-04-13 Ati International Srl Method and apparatus for processing portions of primitives that are being rendered
US6771263B1 (en) * 1998-10-13 2004-08-03 Gmd-Forschungszentrum Informationstechnik Gmbh Processing volumetric image data with shadows
US6297799B1 (en) * 1998-11-12 2001-10-02 James Knittel Three-dimensional cursor for a real-time volume rendering system
GB2358980B (en) * 2000-02-07 2004-09-01 British Broadcasting Corp Processing of images for 3D display
US7110026B2 (en) * 2001-07-03 2006-09-19 Logitech Europe S.A. Image tagging for post processing
JP4109224B2 (ja) * 2004-07-01 2008-07-02 ザイオソフト株式会社 展開画像投影方法、展開画像投影プログラム、展開画像投影装置
JP4213135B2 (ja) * 2005-04-22 2009-01-21 ザイオソフト株式会社 展開画像投影方法、展開画像投影プログラム、展開画像投影装置
US20070046661A1 (en) * 2005-08-31 2007-03-01 Siemens Medical Solutions Usa, Inc. Three or four-dimensional medical imaging navigation methods and systems
US7999807B2 (en) * 2005-09-09 2011-08-16 Microsoft Corporation 2D/3D combined rendering
US7522164B2 (en) * 2006-03-28 2009-04-21 International Business Machines Corporation Using self-adjustable three-dimensional matrix to simplify the construction of a complex 3D scene
KR100834374B1 (ko) 2006-07-11 2008-06-02 엠텍비젼 주식회사 모델/뷰 역행렬 조건적 생성 방법 및 이를 이용한 그래픽처리 장치
US20090040220A1 (en) * 2007-02-05 2009-02-12 Jonathan Gibbs Hybrid volume rendering in computer implemented animation
US20080232694A1 (en) * 2007-03-21 2008-09-25 Peter Sulatycke Fast imaging data classification method and apparatus
JP5394620B2 (ja) * 2007-07-23 2014-01-22 ジーイー・メディカル・システムズ・グローバル・テクノロジー・カンパニー・エルエルシー 超音波撮像装置および画像処理装置
KR100924122B1 (ko) * 2007-12-17 2009-10-29 한국전자통신연구원 픽셀 단위 처리 요소 기반의 광선 추적 장치 및 방법
US9390557B2 (en) * 2011-08-11 2016-07-12 Siemens Aktiengesellschaft Floating volume-of-interest in multilayer volume ray casting
US9201899B2 (en) * 2011-10-14 2015-12-01 Panasonic Intellectual Property Management Co., Ltd. Transposition operation device, integrated circuit for the same, and transposition method
US10290145B2 (en) * 2017-06-30 2019-05-14 International Business Machines Corporation Image space-based particle generation modeling
JP6544472B1 (ja) * 2018-09-06 2019-07-17 大日本印刷株式会社 レンダリング装置、レンダリング方法、及びプログラム
KR20210030147A (ko) * 2019-09-09 2021-03-17 삼성전자주식회사 3d 렌더링 방법 및 장치
JP6874932B1 (ja) * 2020-10-16 2021-05-19 エッジコーティックス ピーティーイー. リミテッド 集積回路上での量子化されたスケーリングの準備および実行

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313567A (en) * 1991-06-13 1994-05-17 At&T Bell Laboratories Arrangement for determining and displaying volumetric data in an imaging system
GB2270243B (en) * 1992-08-26 1996-02-28 Namco Ltd Image synthesizing system
JPH06290276A (ja) * 1993-02-15 1994-10-18 Philips Electron Nv 3次元場面の映像化用配置及び方法
US5515484A (en) * 1993-10-06 1996-05-07 Silicon Graphics, Inc. Method and apparatus for rendering volumetric images
US5519401A (en) * 1993-11-01 1996-05-21 Loral Corporation Programmed radar coordinate scan conversion
US5787889A (en) * 1996-12-18 1998-08-04 University Of Washington Ultrasound imaging with real time 3D image reconstruction and visualization

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Barthold Lichtenbelt,Design of a high performance volume visualization system,Proceedings of the 1997 SIGGRAPH/Eurographics workshop on Graphics hardware,米国,ACM Press,111−119,本願出願後発行文献

Also Published As

Publication number Publication date
US6014143A (en) 2000-01-11
JPH117546A (ja) 1999-01-12
DE19807053A1 (de) 1998-12-03
GB2325836B (en) 2001-08-15
GB2325836A (en) 1998-12-02
DE19807053B4 (de) 2005-03-17
GB9810151D0 (en) 1998-07-08

Similar Documents

Publication Publication Date Title
JP3290954B2 (ja) 高速透視図ボリュームレンダリングのための光線変換方法
US6747660B1 (en) Method and system for accelerating noise
JP3203160B2 (ja) ボリューム・レンダリング装置及び方法
Wilson et al. Direct volume rendering via 3D textures
KR101923562B1 (ko) 가변 렌더링 및 래스터화 파라미터 하에서 가변 뷰포트에 대하여 오브젝트를 효율적으로 리렌더링하는 방법
EP1703470B1 (en) Depth image-based modeling method and apparatus
US5224208A (en) Gradient calculation for texture mapping
US6369818B1 (en) Method, apparatus and computer program product for generating perspective corrected data from warped information
JPH1186007A (ja) プリミティブにより覆われるピクセルの割合を求める方法
US10593096B2 (en) Graphics processing employing cube map texturing
JPH07152923A (ja) テクスチャ処理されたオブジェクトをレンダリングする方法及び装置
JP2793466B2 (ja) 画像の可変拡大方法及びその装置
US20050237336A1 (en) Method and system for multi-object volumetric data visualization
JPH117545A (ja) ボリューム・レンダリング事前クリッピング方法
US5491769A (en) Method and apparatus for variable minification of an image
JP2008059582A (ja) 省エネのためのlod値計算方法とこれを利用した3次元レンダリングシステム
US5926183A (en) Efficient rendering utilizing user defined rooms and windows
JPH117542A (ja) ボリューム・データセットの3d空間的変換方法
US5821942A (en) Ray tracing through an ordered array
KR100313846B1 (ko) 바이리니어밉매핑에서의상세도(lod)계산방법및장치
JPH11185052A (ja) 3次元コンピュータグラフィックスのテクスチャマッピング座標計算装置および方法
KR100392516B1 (ko) 보간되지 않은 볼륨 데이터의 실시간 렌더링 방법
CN118229770B (zh) 三维坐标映射方法、装置、存储介质及计算机设备
KR100914915B1 (ko) 저비용의 뷰-체적 클리핑 방법 및 장치
US7768512B1 (en) System and method for rasterizing primitives using direct interpolation

Legal Events

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

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

Free format text: PAYMENT UNTIL: 20090322

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100322

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100322

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110322

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120322

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130322

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130322

Year of fee payment: 11

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

Year of fee payment: 11

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

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees