JP3445152B2 - ボリューム・データ構成方法 - Google Patents
ボリューム・データ構成方法Info
- Publication number
- JP3445152B2 JP3445152B2 JP14741198A JP14741198A JP3445152B2 JP 3445152 B2 JP3445152 B2 JP 3445152B2 JP 14741198 A JP14741198 A JP 14741198A JP 14741198 A JP14741198 A JP 14741198A JP 3445152 B2 JP3445152 B2 JP 3445152B2
- Authority
- JP
- Japan
- Prior art keywords
- volume
- sub
- subvolume
- volumes
- rendering
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
Landscapes
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Description
ピュータ・システムに関するものであり、特に、コンピ
ュータ・システムにおける離散的オブジェクトのグラフ
ィック・ディスプレイに関するものである。
ダリングおよびピクセル・レンダリングの開発に続く、
コンピュータ・グラフィックスの1つの重要な分野であ
る。ボリューム・レンダリングまたは単に「ボリュー
ム」は、2次元グラフィックス装置上に表示される場合
の立体オブジェクトの内部の特性を示すために必要とさ
れる、ボリューム・データセットの直接のレンダリング
を意味する。ボリューム・データセットは体素の3次元
アレイである。これらの体素は、典型的には、規則的な
グリッド格子上に構成される。有限の距離で間隔をおく
標本ポイントとして体素は定義されてきた。各体素は位
置および値を持つ。体素位置は、3次元体素アレイ内の
位置x、yおよびzを指定する3タプルである。体素値は
その形式に依存する。例えば、体素は強度エレメントお
よびインデックス・エレメントを持つ場合がある。これ
らのエレメントは、通常、ボリューム・レンダリング・
プロセスにおいて異なる方法で取り扱われる。ボリュー
ムにおけるすべてのポイントに関する値の集合は、ボリ
ュームのスカラー・フィールドと呼ばれる。
によって生成され得るが、最も一般的には、3次元走査
またはサンプリング方法および数量モデリングによって
生成される。例えば、ボリューム・データセットは、磁
性共振画像形成(すなわちMRI)によって生成されるこ
とができる。この場合、3次元格子の各ポイントにおけ
る人間または動物の組織(ティッシュ)の密度が計算され
る。この情報のディスプレイが、密度変化によって表現
され、種々のタイプの組織の境界を示すことができる。
ボリューム・レンダリングは、このデータを2次元グラ
フィックス装置上に表示するプロセスである。
れる。ソース空間におけるボリューム・データセットの
一番最初の体素は、座標(x0,y0,z0)を持つ。x0、y0およ
びz0はボリューム・データセットにおけるすべてのx、y
およびzの最低値を表し、データセット・ボリュームに
おける原点とみなされる。通常、この原点体素に関する
座標は、(0,0,0)にセットされる。
タセットにおける画像の列、行およびスライス(厚み)に
対応する。ボリューム・データセットにおける最後の体
素は、ボリューム・データセットにおける原点ソース体
素に対して反対の斜め隅に位置する。その座標は(xu,
yu,zu)と名付けられる。xu、yuおよびzuはボリューム・
データセットにおけるすべてのx、yおよびz位置の最も
上の値を表す。
く、コンピュータ・システム資源に対する重圧となる。
例えば、MRIスキャナからの典型的なボリューム・デ
ータセットは6百70万以上の体素を含むこともあり、
一方、形状レンダリングに関する多角形データセット
は、典型的には、50万以下の多角形を含む。このよう
に、ボリューム・レンダリングを行う場合専用ハードウ
ェアによる加速の必要性が非常に高い。
ラフィックス・アルゴリズムを非常に迅速に実行するよ
うに設計されていて、その速度は典型的なコンピュータ
・ワークステーションにおけるプロセッサより非常に速
い。オンチップ・キャッシュはグラフィックス・ハード
ウェア・チップまたはプロセッサ・チップ上に物理的に
所在するRAMである。オンチップ・RAMは外部RA
Mより非常に廉価でありその実行速度は非常に速い。
の投影を基にしてレンダリングされた画像を見ることが
できなければならないことが多い。観察者の座標系は、
視認空間または画像空間と呼ばれる。それは、ボリュー
ム・データセットがどの方向から観察されそしてレンダ
リングされるかを記述する。かくして、ボリューム・レ
ンダリング・プロセスにおける重要なステップは、ソー
ス空間から視認空間へオリジナルのボリューム・データ
セットの3次元ボリューム変換である。必要とされる変
換の典型的なタイプは、ラスター・タイプのディスプレ
イ装置への投影のための入力ボリュームのズーム、パ
ン、回転および刈り込みを含む。一旦変換が行われれ
ば、ボリューム・レンダリング・パイプラインにおける
その他のステップに加えて、最近接または3線補間のよ
うな種々の再サンプリング技術が適用され、レンダリン
グのためのピクセル値が決定される。
上のピクセルから発する想像上の線分である。この投射
線上で離散的ステップを進め、各ステップにおいて投射
線に沿った標本ポイントが補間される。画像平面からボ
リュームまでの投射線に沿った標本ポイントは、投射線
がボリュームを出た後の投射線に沿った標本ポイントと
共に、レンダリングされる画像に寄与しない。ユーザに
よって要求される視認の観点によっては、ボリュームを
全く通過せず、レンダリングされる画像になにも貢献し
ない投射線が存在する。従来技術の典型的ボリューム・
レンダリング実施形態は、投射線がボリュームを通過し
ようとしまいと、あるいは投射線に沿った標本ポイント
がボリュームの範囲内にあろうとなかろうと関係なく、
投射線に沿ったすべての標本ポイントを処理する。レン
ダリング時間を減少させるため、ソフトウェアを使用し
てのみ可能であるもかかわらず、このような実施形態
は、しばしば、標本ポイントの位置を検査し追跡するた
め特別なハードウェア解決手段を必要とする。このよう
に、画像レンダリングには必要でない標本ポイントを検
査し追跡するため多くの時間およびシステム資源がレン
ダリング・プロセスにおいて無駄に使われている。これ
は、レンダリング・プロセスを非常に遅くさせ、ハード
ウェアに対する高価な支出を必要とする。
約的技術である。今日の最も強力なスーパーコンピュー
タだけが受容可能なレンダリング速度を達成することが
できる。受容可能なレンダリング速度を達成する上での
隘路の1つは、メイン・メモリにおけるボリューム・デ
ータセットの構造および検索である。ボリューム・デー
タセットは、スライスまたは画像のスタックからなる2
次元データ構造と見なされる。ボリューム・データセッ
トに関連する処理を行う場合の普通で自然な方法は、ス
ライス毎の処理である。
含む。典型的ボリューム・レンダリング・アルゴリズム
は、1度に最低限3つのスライスに関する処理を行う必
要がある。これは、ボリューム・データセットにおいて
相互に次の体素が異なるスライス上に存在するためであ
る。3つのスライスにおける体素の量は、典型的には、
今日実行可能なオンチップ・キャッシュに関するいかな
るデータ記憶サイズをも上回る。連続的なスライスを通
して互いに次にあるこれら体素は、メモリに線形に記憶
されていないため、これがまたキャッシュ効率を低下さ
せる。それに加えて、スライスがボリューム・データセ
ットの幅および高さ全体に及んでいるので、スライスに
関連する処理が、所望されるまたは所望されないデータ
を含むスライスを選択することを非現実的にさせる。大
部分の状況においてはほとんどあらゆるスライスが処理
対象の体素をいくつか含む。
観点からキャッシュ動作が効率的であるように改善され
たボリューム・レンダリング方法に対する必要性が当業
界に存在する。また、レンダリングの速度を向上させる
ためボリューム・データセットにおける所望のデータだ
けをプロセスする必要性が当業界に存在する。また、グ
ラフィックス・ハードウェアにおける外部RAMを必要
とすることなく、その代わりに小さいオンチップRAM
を利用することができる方法に対する必要性が当業界に
存在する。キャッシュ動作が効率的でなく、グラフィッ
クス・ハードウェアの効率も悪いスライス単位のボリュ
ーム・データセット処理を行わない方法もまた求められ
ている。メモリまたはディスクのような記憶媒体に線形
でかつキャッシュを十分活用できる小さいサイズでボリ
ューム・データセットを記憶することがまた必要とされ
ている。更に、レンダリング速度を向上させるため、1
回だけメモリまたはディスクからボリューム・データセ
ットを呼び出しそしてそれを処理するようなボリューム
・レンダリング方法に対する要求が当業界に存在する。
このように、明らかに、上記諸要求を充足するボリュー
ム・レンダリングのための改良されたデータ構成方法が
当業界において必要とされている。
キャッシュ効率の高い形態のボリューム・レンダリング
・システム処理を実現できるように、ボリューム・デー
タセットを小さいサブボリュームに分割するブロック化
と呼ばれるプロセスを使用してボリューム・データセッ
トを構成する。本発明の別の一面は、所望のデータを含
む場合にサブボリュームを選択して、ボリューム・レン
ダリング・システムによって該サブボリュームを処理す
る。本発明の更に別の一面は、呼び出された時1つのサ
ブボリューム全体がプロセッサ・キャッシュに十分収ま
るようなサイズにサブボリュームを構成する。本発明の
更に別の一面は、画像を効率的にレンダリングするため
専用グラフィックス・ハードウェアが小さいオンチップ
RAMだけを必要とすればよいような小さいサイズにサ
ブボリュームを構成する。本発明の更に別の一面は、キ
ャッシュ効率のため体素が記憶媒体に線形で記憶される
ようにサブボリュームの各体素タプルを線形アドレスに
変換する。本発明の更なる一面は、ボリューム・レンダ
リング・システムにおいて所望のデータを一度だけ用い
てサブボリュームを処理する。
ャッシュ効率のよいボリューム・レンダリングおよび効
率的グラフィックス・ハードウェアの設計および活用を
可能にするボリューム・レンダリング・データ構成方法
によって達成される。本発明は、ブロック化と呼ばれる
概念を使用する。ブロック化は、ボリューム・データセ
ットを一層小さいサブボリュームすなわち小さいブロッ
クに分割するプロセスである。これらサブボリュームす
なわちブロックは、オリジナルのボリュームに復元する
必要があるときは一緒に使用される。
継承する3次元ボリューム・データセットであり、ボリ
ューム・レンダリング・システムによってそのように取
り扱われる。各サブボリュームは、メイン・メモリまた
はディスク上に線形の形態で記憶される。これは、サブ
ボリュームにおける各体素タプルを線形アドレスに変換
することによって達成される。これは、サブボリューム
におけるすべての体素がメイン・メモリの連続部分に記
憶されることを意味する。使用コンピュータ・システム
および利用されているアプリケーション・ソフトウェア
の構成に基づいてサブボリュームが十分小さければ、サ
ブボリュームは呼び出された時キャッシュにうまく適合
する。典型的なサブボリュームのサイズは、キャッシュ
容量の約5%である。
憶されているデータに対してのみ効率的であるような形
態で設計される。ボリューム・レンダリング・システム
は、一度に1つのサブボリュームを処理する。サブボリ
ューム全体がキャッシュに適合するので、プロセッサ
は、各サブボリュームを処理する時データがメイン・メ
モリから到着するのを待つ必要は決してない。ボリュー
ム・レンダリング・システムは、最初のサブボリューム
の処理を終了すると、第2のサブボリュームを取り出し
処理を開始する。このように、各サブボリュームは処理
のため一度だけ呼び出されればよく、この結果レンダリ
ング速度が大幅に向上する。
は、専用グラフィックス・ハードウェアにかかる負荷を
緩和するという利点もある。小さいサブボリュームは、
そのようなグラフィックス・ハードウェアに関するキャ
ッシュが外部ではなくオンチップのものでよいようにさ
せ、チップ設計を簡単にし、チップ・キャッシュに関す
るRAMを大きくせずにすませる。サブボリュームのサ
イズは、アプリケーション・プログラムによって利用さ
れているコンピュータ・システムおよびグラフィックス
・ハードウェアの特定の構成に合うように変更するする
ことができる。
化および非オーバーラップ・ブロック化という2つの異
なる技術によって達成することができる。非オーバーラ
ップ・ブロック化技術では、各サブボリュームの基本サ
イズは6つの境界平面で規定され、それら平面の表面お
よびそれら境界平面で囲われた内部に体素が含まれる。
各サブボリュームは各サブボリュームにとってユニーク
な体素セットを保持する。この方法では、サブボリュー
ムの間の体素の重複はない。しかしながら、ボリューム
・データセットを通過して投影される投射線上の標本ポ
イントが非オーバーラップ・サブボリュームの境界の外
側に位置する可能性があり、ボリューム・レンダリング
・システムは、標本ポイントの補間および勾配計算を実
行するため、一度に複数のサブボリュームにアクセスし
なければならなくなる。このように、非オーバーラップ
・ブロック化技術では、場合によっては、処理されてい
るサブボリュームに加えて、最高26の周囲サブボリュ
ームを呼び出し、キャッシュに記憶する必要がある。こ
の技術は、オーバーラップ・ブロック化技術と比較して
グラフィックス・ハードウェアに比較的大きい負荷をか
ける。
サブボリュームの基本サイズは6つの境界平面で規定さ
れ、それら平面の表面およびそれら境界平面で囲われた
内部に体素が含まれる。境界平面およびその上に位置す
る体素は、隣接するサブボリュームによって共有され
る。次に、各サブボリュームは、6つの新しい境界平面
に位置する最高26の周囲サブボリュームから最も近い
体素を含むようにその基本サイズを拡張される。6つの
新しい境界平面は、オリジナルの6つの平面と平行であ
るが、y、yおよびzの各方向においてサブボリュームの
中心から1体素だけ離れて位置する。この結果、各サブ
ボリュームは、x、yおよびzの各方向において3つの体
素平面をその隣接サブボリュームと共有することにな
る。3つの共有された平面は、隣接するサブボリューム
の中間共通平面である。ボリューム・データセットの最
も外側に位置するサブボリュームの場合、ほとんどのサ
ブボリュームはサブボリュームのサイズ拡張に寄付でき
る体素を持たない。
ューム・レンダリング・システムは拡張されたサブボリ
ュームの1つだけを一度に必要とする。拡張サブボリュ
ームは、x、yおよびz方向の各々においてすぐに隣接す
る体素の3つの共有平面のすべてを含もので、サブボリ
ュームを通過する投射線の上にあって、サブボリューム
の基本サイズの外側に位置する標本ポイントのいずれを
も補間し、いずれの勾配も拡大サイズに含まれる体素を
活用して計算することができる。この技術では各グラフ
ィックス・ハードウェアに対する負荷は減少するが、サ
ブボリュームのサイズの拡張のためデータ記憶能力の負
荷は増加する。
の技術によってブロックに分割されると、ユーザが望む
レンダリングのためのデータを含む場合、アプリケーシ
ョン・プログラムはそのサブボリュームを選択する。ア
プリケーション・プログラムによって供給されサブボリ
ュームに記憶されているパラメータによって動的に選択
が行われる。選択されないサブボリュームは、ボリュー
ム・レンダリング・システムによって処理されない。実
行中のアプリケーション・プログラムがサブボリューム
を選択するパラメータを提供しない場合、ボリューム・
レンダリング・システムはすべてのサブボリュームを処
理する。サブボリュームの選択は、所望の画像に何も寄
付しないデータはボリューム・レンダリング・システム
によって処理されないので、レンダリング時間を大幅に
減少させる。ブロック化の後、ブロック化を利用するプ
リケーション・プログラムによって複数の正射投影法ま
たは透視図法などの種々の視認平面を生成することが可
能である。
考察された本発明の実施形態である。本記述は、本発明
をその記述に制限するものと見なされるべきものではな
く、本発明の一般的原理を記述する目的のためにのみこ
の記述は提示されている。
レンダリング・システムを含むコンピュータ・システム
のブロック図である。図1を参照すれば、コンピュータ
・システム100は処理エレメント102を含む。処理
エレメント102は、システム・バス104を経由して
コンピュータ・システム100のその他のエレメントと
通信する。キーボード106はユーザのコンピュータ・
システム100への情報の入力を可能にし、グラフィッ
クス・ディスプレイ110はコンピュータ・システム1
00のユーザへの情報の出力を可能にする。また、マウ
ス108が情報を入力するため使用され、記憶装置11
2はコンピュータ・システム100内のデータおよびプ
ログラムを記憶するために使用される。また、システム
・バス104に接続したメモリ116が、オペレーティ
ング・システム118および本発明のボリューム・レン
ダリング・システム120を含む。
って呼び出される時、線形形態でメモリ116に記憶さ
れたボリューム・データセットのサブボリュームが、シ
ステム・バス104を経由して処理エレメント102上
に配置されたキャッシュに書き込まれる。ボリューム・
レンダリング・システム120による処理から得られる
結果がシステム・バス104を経由してグラフィクス・
コントローラ114上のオンチップ・キャッシュに送ら
れる。次に、グラフィクス・コントローラ114が処理
されたデータをグラフィックス・ディスプレイ110に
送る。
グ・システムに関するボリューム・データ構成方法の流
れを示す。図2において、ブロック202はボリューム
・データセットをディスク記憶装置から取り出す。ブロ
ック204は、コンピュータ構成およびアプリケーショ
ン・プログラムに基づいてサブボリュームのブロック・
サイズを決定する。ブロック206において、ブロック
化技術が選択される。オーバーラップ・ブロック化技術
が選択されれば、制御はブロック208に移る。
ットをブロック204において決定されたサイズのサブ
ボリュームに分割する。各サブボリュームは、隣接サブ
ボリュームの直近周囲平面、エッジおよび隅から最も近
い体素を含むように拡張される(詳細は図5および図6
を参照して後述される)。従って、各サブボリューム
は、x、yおよびz方向において1体素だけ各隣接サブボ
リュームと重なる。
くにあるサブボリュームを作成する際、サブボリューム
がボリューム・データセットの境界の外側に広がるよう
に、サブボリュームのサイズが決定される。この状況
は、次のような3つの方法のうちの1つで取り扱われる
ことができる。第1は、すべてのサブボリュームがボリ
ューム・データセットの境界内に入るように、すべての
サブボリュームは決定したサイズより小さくすることが
できる。これは、最も好ましくないオプションである。
第2は、適合しないサブボリュームだけを決定サイズよ
り小さくする方法である。最後は、ボリューム・データ
セット境界の外側に出るタプル位置を、ゼロまたはその
他なにか重要でない値で埋める方法である。これは、本
発明の好ましい実施形態のための好ましいオプションで
ある。
技術が選択されれば、制御はブロック210に移る。ブ
ロック210は、ボリューム・データセットをブロック
204で決定されたサイズのサブボリュームに分割す
る。各サブボリュームは、他のいかなるサブボリューム
とも重ならない。従って、各サブボリュームは、ユニー
クな体素セットを保有する。
を線形アドレスkに変換する。これは、以下の公式を利
用することによって達成される。 k = x + (y * block_x_size) + (z * block_x_size * b
lock_y_size) block_x_sizeはサブボリュームのx方向における体素数
(幅)であり、block_y_sizeはサブボリュームのy方向に
おける体素数(高さ)である。例えば、サブボリューム
が、x方向において16体素幅、y方向において16体素
高、z方向において16体素の奥行きであったとすれ
ば、 座標(3,2,1)を持つ体素および座標(4,2,1)を持つ
体素は次のように線形アドレスを持つ。(3,2,1)につい
ては、k = 3 + (2*16)+(1 * 16 * 16) = 3 + 32 + 256
= 291 (4,2,1)については、k = 4 + (2*16)+(1 * 16 * 16) =
4 + 32 + 256 = 292 当業者に明らかなように、上記式を利用することによっ
て、サブボリュームにおける各体素はユニークなkアド
レスを持つことが保証され、体素間の線形関係が確立さ
れる。
レスを持つサブボリュームをメモリ116または記憶装
置112に記憶する。この形態で記憶される時1つのサ
ブボリューム内の体素は線形関係にある。ボリューム・
レンダリング・システムが処理のためにサブボリューム
を呼びだす時線形関係であるのでサブボリュームをキャ
ッシュに書き込むのが理想的となり、これにより処理時
間が大幅に向上する。
ン・プログラム122によって供給され、対象サブボリ
ュームが所望のデータを持つか否かを示すパラメータを
使用して各サブボリュームが実行時に選択される。これ
は、サブボリュームの中のデータが所望のものであるか
あるいは一定のタイプであるかを示す特定の値を持つ1
つまたは複数のビットを設定することによって達成でき
る。代替的方法としては、サブボリュームの内容に関す
る情報を持つ独立したデータ構造を使用することもでき
る。一旦選択されれば、使用されたパラメータは記憶さ
れ、新たなレンダリングに再利用されることもできる。
アプリケーション・プログラムが選択パラメータを供給
しない場合、ボリューム・レンダリング・システムはす
べてのサブボリュームを処理する。
ムに分割されたボリューム・データセットを示す。図3
において、ボリューム・データセット302は規則的格
子上に構成された体素を含む。ボリューム・データセッ
ト302の外側境界は、8つの境界体素を接続する直線
として示されている。境界体素306は境界体素の典型
である。サブボリューム304は図示されたすべてのサ
ブボリュームの典型であり、また、8つの境界体素を接
続している直線によって表現されている。サブボリュー
ム304のサイズは、コンピュータ・システムや利用さ
れているプログラム・アプリケーションの構成に基いて
決定される。サブボリューム304は、一定の体素数の
幅、一定の体素数の高さおよび一定の体素数の奥行きを
持つ。ボリューム・データセット302は、サブボリュ
ーム304によって代表されるいくつかのサブボリュー
ムに完全に分割される。サブボリューム308はボリュ
ーム・データセット302の外側に部分的に出ている。
本発明の好ましい実施形態において、ボリューム・デー
タセット302の外側に出るタプル位置は、ゼロまたは
他の重要でない値で埋められる。
術を2次元で示すものである。図4において、体素40
2は、図示されたすべての体素のうちの典型であり、ボ
リューム・データセットの範囲内に含まれたすべての体
素の一部分だけを表している。各体素タプルはユニーク
な(x,y,z)座標を持つ。記号図422に示されるようにz
方向の奥行きは紙の平面に垂直に延びる。サブボリュー
ム404、406、408、410、412、414、
416、418および420は、この2次元図における
4つの境界体素を接続している直線として示される外側
境界を持つ。404乃至420のサブボリュームの各々
は、6体素幅、6体素高および6体素奥行きであり、他
のサブボリュームと共通体素を全く持たないユニークな
体素セットを含む。
を2次元で表している。図5に示されるオーバーラップ
・ブロック化技術では、各サブボリュームの境界平面が
隣接サブボリュームと共有されるように、サブボリュー
ムが初期的に構成される。サブボリューム502、50
4、506、508、510、512、514、51
6、518 520 522および524は、6体素
幅、6体素高および6体素奥行きである。記号図588
に示されるようにz方向の奥行きは紙の平面に垂直に延
びる。これらのサブボリュームの各々は相互に重なるよ
うに拡張される必要がある。サブボリューム512およ
び514を例とすれば、サブボリューム512および5
14を構成する6つの境界平面の各々を取り上げ、各サ
ブボリューム中心から離れる方向に1体素各平面を拡張
して、追加体素を含む新しい6つの隣接平面を形成する
ことによって、サブボリューム512および514は重
ね合わさる。6つの平面内にあって、6つの新しい隣接
平面の交点によって形成される12のエッジおよび8つ
の隅に沿って位置する体素を含むすべての体素が拡張さ
れたサブボリューム538および540に含まれる。
図におけるポイントとして現れるz方向の線分を表すポ
イント542、544、546および548によって境
界づけされている。平面526および528は、x方向
における隣接平面である。平面530、532、534
および536は、y方向における隣接平面である。平面
526、528、530、532、534および536
は、図5のエッジとして現れる。平面526上に存在
し、平面530および534によって境界付けされるサ
ブボリューム502、504および506からの体素
は、拡張サブボリューム538に含められる。平面53
4上に存在し、平面526および528によって境界付
けされるサブボリューム506、514および522か
らの体素は、拡張サブボリューム538に含められる。
平面528上に存在し、平面530および534によっ
て境界付けされるサブボリューム518、520および
522からの体素は、拡張サブボリューム538に含め
られる。平面530上に存在し、平面526および52
8によって境界付けされるサブボリューム502、51
0および518からの体素は、拡張サブボリューム53
8に含められる。図5に示されていないz方向の2つの
隣接平面に関して同様の体素包含が発生することは同業
者に認められるであろう。同様にして、拡張サブボリュ
ーム540は、平面526、528、532および53
6上に存在し、平面550、552、554および55
6によって境界付けされる(この2次元図におけるポイ
ントとして現れるz方向の線分を表す)体素を含む。
リュームを通過する投射線に沿った標本ポイントを示し
ている。図6において、サブボリューム602および6
04が互いに隣接している。投射線606は、ボリュー
ム・データセットを通過するように画像平面上のピクセ
ルから投影されたもので、サブボリューム602および
604を通過している。投射線606は、入力ポイント
608でサブボリューム604に入り、出口ポイント6
10でサブボリューム604を出る。投射線606は、
入力ポイント612でサブボリューム602に入り、出
口ポイント614でサブボリューム602を出る。投射
線606上の標本ポイント616および618はサブボ
リューム604内に位置する。サブボリューム604が
所望のデータを含むものとして選択されたならば、ボリ
ューム・レンダリング・システムは、投射線606が発
する元のピクセルのレンダリングに役立つように標本ポ
イント616および618を処理する。サブボリューム
604が所望のデータを含むものとして選択されなかっ
たならば、サブボリューム604は無視される。
び628はサブボリューム602内に位置する。サブボ
リューム602が所望のデータを含むものとして選択さ
れたならば、ボリューム・レンダリング・システムは、
投射線606が発する元のピクセルのレンダリングに役
立つように標本ポイント626および628を処理す
る。サブボリューム602が所望のデータを含むものと
して選択されなかったならば、サブボリューム602は
無視される。
ブボリューム602または604のどちらの範囲内にも
ない。サブボリューム602および604のいずれかま
たは両者が所望のデータを含むものとして選択されたと
すれば、ボリューム・レンダリング・システムが勾配計
算を含め標本ポイント620を処理することができるよ
うにするため、両方のサブボリュームがメモリから呼び
だされキャッシュに書き込まれる必要がある。
が図5に関連して上述したオーバラップ・ブロック化技
術によってブロック化され、平面624がサブボリュー
ム602および604の間の共通の共有平面であるとす
れば、ポイント620はサブボリューム602の範囲に
含まれる。サブボリューム602は、メモリから呼び出
されキャッシュに書き込まれた後、勾配計算を含め標本
ポイント620を処理することができる。なぜなら、拡
張されたサイズのサブボリューム602がサブボリュー
ム602の中心から離れる方向において平面624から
1体素位置にあある平行平面に含まれる体素を含むから
である。
が含まれる。 (1)コンピュータ・システムの2次元グラフィックス
・ディスプレイ上にボリューム・データセットをレンダ
リングするためのキャッシュ効率の高いボリューム・デ
ータ構成方法であって、上記ボリューム・データセット
を記憶媒体から取り出すステップ(a)と、上記ボリュー
ム・データセットからサブボリュームを選択するステッ
プ(b)と、上記サブボリュームをボリューム・レンダリ
ング・システムによって処理するステップ(c)と、を含
む方法。 (2)上記サブボリュームのサイズが上記コンピュータ
・システム上に位置するプロセッサ・キャッシュより小
さく、上記プロセッサ・キャッシュが上記コンピュータ
・システム上に位置するグラフィクス・コントローラ・
キャッシュより小さい、上記(1)に記載の方法。 (3)上記サブボリュームのサイズが上記コンピュータ
・システム上に位置するグラフィクス・コントローラ・
キャッシュより小さく、上記グラフィクス・コントロー
ラ・キャッシュが上記コンピュータ・システム上に位置
するプロセッサ・キャッシュより小さい、上記(1)に
記載の方法。 (4)上記ステップ(b)が、上記サブボリュームの体素
タプルの各アドレスを線形アドレスに変換するステップ
(b1)と、上記サブボリュームの各体素タプルのデータを
上記線形アドレスの形態で記憶媒体に記憶するステップ
(b2)と、を更に含む上記(1)に記載の方法。
ョン・プログラムによって供給されたパラメータを上記
サブボリュームの各体素タプルのデータと共に記憶し
て、上記アプリケーション・プログラムが上記パラメー
タを利用して上記ボリューム・レンダリング・システム
による更なる処理のため上記サブボリュームを選択でき
るようにするステップ(b1)、を更に含む上記(1)に記
載の方法。 (6)上記ステップ(b)が、上記ボリューム・データセ
ットの6面を持つ上記サブボリュームを選択するステッ
プ(b1)と、上記サブボリューム内に該サブボリュームの
すぐ外側を囲む体素グループを含めて拡張サブボリュー
ムを生成するステップ(b2)と、を更に含み、上記追加体
素グループは6つの平面グループに含まれていて、上記
6平面グループの各々は、別の6平面グループの交差に
よって境界をつけられ、上記6平面グループの各々は上
記サブボリュームの上記6つの面の各々の対応する1つ
と平行していて、更に、上記6平面グループの各々は上
記サブボリュームの上記6つの面の各々の対応する1つ
に隣接しかつ上記サブボリュームの中心から離れる方向
に位置する、上記(1)に記載の方法。 (7)上記ステップ(b2)が、上記拡張サブボリュームの
体素タプルの各アドレスを線形アドレスに変換するステ
ップ(b2a)と、上記拡張サブボリュームの各上記体素タ
プルのデータを上記線形アドレスの形態で記憶媒体に記
憶するステップ(b2b)と、を更に含む上記(6)に記載
の方法。
ラフィックス・ディスプレイ上にボリューム・データセ
ットをレンダリングするためのキャッシュ効率の高いボ
リューム・データ構成方法であって、上記ボリューム・
データセットを記憶媒体から取り出すステップ(a)と、
上記ボリューム・データセットを各々がユニークな体素
セットを保有する複数のサブボリュームに分割するステ
ップ(b)と、上記複数のサブボリュームをボリューム・
レンダリング・システムによって処理するステップ(c)
と、を含む方法。 (9)上記ステップ(b)が、上記複数サブボリュームの
各々の体素タプルの各アドレスを線形アドレスに変換す
るステップ(b1)と、上記複数サブボリュームの各々の上
記体素タプル各々のデータを上記線形アドレスの形態で
記憶媒体に記憶するステップ(b2)と、アプリケーション
・プログラムによって供給されたパラメータを上記サブ
ボリュームの各体素タプルのデータと共に記憶して、上
記アプリケーション・プログラムが上記パラメータを利
用して上記ボリューム・レンダリング・システムによる
更なる処理のため上記複数サブボリュームから特定数の
サブボリュームを選択できるようにするステップ(b3)
と、を含む上記(8)に記載の方法。 (10)上記ステップ(b)が、各々が6面を持ち、相互
に隣接する各々が隣接関係の発生毎に上記6面の1つを
共有するような複数のサブボリュームに上記ボリューム
・データセットを分割するステップ(b1)と、上記サブボ
リューム内に該サブボリュームのすぐ外側を囲む体素グ
ループを含めて拡張サブボリュームを生成するステップ
(b2)と、を更に含み、上記追加体素グループは6つの平
面グループに含まれていて、上記6平面グループの各々
は、別の6平面グループの交差によって境界をつけら
れ、上記6平面グループの各々は上記サブボリュームの
上記6つの面の各々の対応する1つと平行していて、更
に、上記6平面グループの各々は上記サブボリュームの
上記6つの面の各々の対応する1つに隣接しかつ上記サ
ブボリュームの中心から離れる方向に位置する、上記
(8)に記載の方法。
ブボリュームへの分割によって、キャッシュ動作の効率
が向上し、従って、ボリューム・レンダリング速度が向
上する。また、グラフィックス・ハードウェアにおいて
外部RAMを必要とすることなく、サイズの小さいオン
チップRAMの活用という実装技術の向上が図られる。
システムを有するコンピュータ・システムのブロック図
である。
に関するボリューム・データ構成方法の概要を示す流れ
図である。
たボリューム・データセットを視覚的に表現したブロッ
ク図である。
覚表現したブロック図である。
表現したブロック図である。
過する投射線に沿った標本ポイントを示すブロック図で
ある。
12、414、416、418、420、502、50
4、506、508、510、512、514、51
6、518 520 522、602、604 サブ
ボリューム 306 境界体素306 402 体素 422、588 記号図 538、540 拡張サブボリューム 526、528、530、532、534、536、6
22、624 平面 606 投射線 608、612 入力ポイント 610、614 出口ポイント 616、618、620、626、628 標本ポイ
ント
Claims (2)
- 【請求項1】コンピュータ・システムの2次元グラフィ
ックス・ディスプレイ上にボリューム・データセットを
レンダリングするためのキャッシュ効率の高いボリュー
ム・データを構成する方法であって、コンピュータは、 (a)記憶媒体から前記ボリューム・データセットを取
り出すステップと、 (b)前記ボリューム・データセットから、6面を持つ
一つのサブボリューム全体を選択するステップと、 (c)前記選択された一つのサブボリュームの6面に平
行で、かつ該サブボリュームの中心から離れる方向に隣
接して位置する6つの隣接平面を算出するステップと、 (d)前記6つの隣接平面に含まれる体素を、前記選択
された一つのサブボリュームに含めることにより、拡張
サブボリュームを生成するステップと、 (e)前記拡張サブボリュームの体素タプルの各アドレ
スを、線形アドレスに変換して記憶媒体に記憶するステ
ップと、 (f)前記拡張サブボリュームを、ボリューム・レンダ
リング・システムにより前記ディスプレイ上にレンダリ
ングするステップと、 (g)前記ボリューム・データセットのそれぞれのサブ
ボリュームについて、前記(b)〜(f)のステップを
繰り返すステップと、を実行するようプログラムされている 、ボリューム・デ
ータを構成する方法。 - 【請求項2】コンピュータ・システムの2次元グラフィ
ックス・ディスプレイ上にボリューム・データセットを
レンダリングするためのキャッシュ効率の高いボリュー
ム・データを構成する方法であって、コンピュータは、 (a)記憶媒体から前記ボリューム・データセットを取
り出すステップと、 (b)前記ボリューム・データセットを、それぞれがユ
ニークな体素セットを含む複数のサブボリュームに分割
するステップであって、該複数のサブボリュームのそれ
ぞれが6面を持ち、他のサブボリュームと隣接している
サブボリュームが、該隣接している場所のそれぞれにお
いて、該6面のうちの1つの面を該他のサブボリューム
と共有するように、該ボリューム・データセットを分割
するステップと、 (c)前記複数のサブボリュームのそれぞれについて、
該サブボリュームの6面に平行で、かつ該サブボリュー
ムの中心から離れる方向に隣接して位置する6つの隣接
平面を算出するステップと、 (d)前記複数のサブボリュームのそれぞれについて、
前記6つの隣接平面に含まれる体素を該サブボリューム
に含めることにより、複数の拡張サブボリュームを生成
するステップと、 (e)前記複数の拡張サブボリュームのそれぞれについ
て、該拡張サブボリュームの体素タプルの各アドレス
を、線形アドレスに変換して記憶媒体に記憶するステッ
プと、 (f)1つの拡張サブボリューム全体がレンダリングさ
れた後に次の拡張サブボリュームのレンダリングが開始
されるように、前記複数の拡張サブボリュームのそれぞ
れを、ボリューム・レンダリング・システムにより前記
ディスプレイ上にレンダリングするステップと、 を実行するようプログラムされている 、ボリューム・デ
ータを構成する方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US865,757 | 1977-12-29 | ||
US08/865,757 US6144383A (en) | 1997-05-30 | 1997-05-30 | Volumetric data organization method that allows for cache efficient rendering speedups and efficient graphics hardware design |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH117541A JPH117541A (ja) | 1999-01-12 |
JP3445152B2 true JP3445152B2 (ja) | 2003-09-08 |
Family
ID=25346161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14741198A Expired - Fee Related JP3445152B2 (ja) | 1997-05-30 | 1998-05-28 | ボリューム・データ構成方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6144383A (ja) |
JP (1) | JP3445152B2 (ja) |
DE (1) | DE19806985B4 (ja) |
GB (1) | GB2325838B (ja) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6674430B1 (en) * | 1998-07-16 | 2004-01-06 | The Research Foundation Of State University Of New York | Apparatus and method for real-time volume processing and universal 3D rendering |
US6765570B1 (en) * | 1998-07-21 | 2004-07-20 | Magic Earth, Inc. | System and method for analyzing and imaging three-dimensional volume data sets using a three-dimensional sampling probe |
JP2001109905A (ja) * | 1999-10-01 | 2001-04-20 | Mitsubishi Electric Inf Technol Center America Inc | ボリューム・レンダリング・システムにおけるボリューム・データ・セットのレンダリング方法 |
CA2315302A1 (en) * | 2000-07-13 | 2002-01-13 | Paul A. Halmshaw | Three dimensional imaging system |
EP1330789B1 (en) * | 2000-10-30 | 2006-05-03 | Magic Earth, Inc. | System and method for analyzing and imaging three-dimensional volume data sets |
US7006085B1 (en) | 2000-10-30 | 2006-02-28 | Magic Earth, Inc. | System and method for analyzing and imaging three-dimensional volume data sets |
EP1344189B1 (en) * | 2000-12-18 | 2006-06-07 | LightSpace Technologies, Inc. | Rasterization of three-dimensional images |
US6690820B2 (en) * | 2001-01-31 | 2004-02-10 | Magic Earth, Inc. | System and method for analyzing and imaging and enhanced three-dimensional volume data set using one or more attributes |
CN100523869C (zh) * | 2001-01-31 | 2009-08-05 | 兰德马克绘图公司 | 用于分析和成像增强三维体数据集合的系统和方法 |
KR100441082B1 (ko) * | 2002-07-31 | 2004-07-21 | 학교법인연세대학교 | 가시 순차적 분할 렌더링 알고리즘을 이용한 3차원 텍스쳐기반의 볼륨 그래픽 구조 및 방법 |
JP2006518510A (ja) * | 2003-02-21 | 2006-08-10 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ボリューム視覚化用のキャッシュ |
US7154500B2 (en) * | 2004-04-20 | 2006-12-26 | The Chinese University Of Hong Kong | Block-based fragment filtration with feasible multi-GPU acceleration for real-time volume rendering on conventional personal computer |
US7609876B2 (en) * | 2004-10-22 | 2009-10-27 | Siemens Medical Solutions Usa, Inc. | Virtual grid alignment of sub-volumes |
JP4927580B2 (ja) * | 2007-01-31 | 2012-05-09 | 株式会社日立メディコ | 画像処理装置及びその方法 |
US20080232694A1 (en) * | 2007-03-21 | 2008-09-25 | Peter Sulatycke | Fast imaging data classification method and apparatus |
US8184120B2 (en) * | 2008-05-19 | 2012-05-22 | Siemens Aktiengesellschaft | Framework for processing and rendering large volume data |
CN101853518B (zh) * | 2010-05-28 | 2012-01-11 | 电子科技大学 | 基于各向异性体数据的错切变形体绘制方法 |
KR102038627B1 (ko) * | 2012-10-23 | 2019-10-30 | 삼성전자주식회사 | 자기공명영상 시스템 및 자기공명영상 방법 |
KR101967242B1 (ko) * | 2012-11-14 | 2019-04-09 | 삼성전자주식회사 | 자기공명영상 시스템 및 자기공명영상 방법 |
US11398072B1 (en) * | 2019-12-16 | 2022-07-26 | Siemens Healthcare Gmbh | Method of obtaining a set of values for a respective set of parameters for use in a physically based path tracing process and a method of rendering using a physically based path tracing process |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4685070A (en) * | 1984-08-03 | 1987-08-04 | Texas Instruments Incorporated | System and method for displaying, and interactively excavating and examining a three dimensional volume |
GB2190570B (en) * | 1986-04-14 | 1991-01-23 | Pixar | Method and apparatus for imaging volume data |
US4985856A (en) * | 1988-11-10 | 1991-01-15 | The Research Foundation Of State University Of New York | Method and apparatus for storing, accessing, and processing voxel-based data |
US5187660A (en) * | 1989-12-01 | 1993-02-16 | At&T Bell Laboratories | Arrangement for displaying on a display volumetric data |
FR2662525B1 (fr) * | 1990-05-25 | 1992-08-28 | Gen Electric Cgr | Procede de visualisation d'une partie de l'image d'une structure physique. |
US5201035A (en) * | 1990-07-09 | 1993-04-06 | The United States Of America As Represented By The Secretary Of The Air Force | Dynamic algorithm selection for volume rendering, isocontour and body extraction within a multiple-instruction, multiple-data multiprocessor |
US5557711A (en) * | 1990-10-17 | 1996-09-17 | Hewlett-Packard Company | Apparatus and method for volume rendering |
US5313567A (en) * | 1991-06-13 | 1994-05-17 | At&T Bell Laboratories | Arrangement for determining and displaying volumetric data in an imaging system |
US5255366A (en) * | 1991-11-25 | 1993-10-19 | Industrial Technology Research Institute | Address processing unit for a graphics controller |
JPH06223198A (ja) * | 1993-01-26 | 1994-08-12 | Hitachi Ltd | 光線追跡による画像生成装置及び方法 |
JPH0778266A (ja) * | 1993-06-25 | 1995-03-20 | Sony Corp | 画像処理装置 |
JPH07219847A (ja) * | 1994-01-31 | 1995-08-18 | Fujitsu Ltd | 情報処理装置 |
JP3527796B2 (ja) * | 1995-06-29 | 2004-05-17 | 株式会社日立製作所 | 高速3次元画像生成装置および方法 |
JP3203160B2 (ja) * | 1995-08-09 | 2001-08-27 | 三菱電機株式会社 | ボリューム・レンダリング装置及び方法 |
-
1997
- 1997-05-30 US US08/865,757 patent/US6144383A/en not_active Expired - Lifetime
-
1998
- 1998-02-19 DE DE19806985A patent/DE19806985B4/de not_active Expired - Fee Related
- 1998-05-12 GB GB9810156A patent/GB2325838B/en not_active Expired - Fee Related
- 1998-05-28 JP JP14741198A patent/JP3445152B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
GB2325838B (en) | 2002-01-16 |
US6144383A (en) | 2000-11-07 |
JPH117541A (ja) | 1999-01-12 |
DE19806985A1 (de) | 1998-12-03 |
DE19806985B4 (de) | 2005-03-17 |
GB9810156D0 (en) | 1998-07-08 |
GB2325838A (en) | 1998-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3445152B2 (ja) | ボリューム・データ構成方法 | |
US9972129B2 (en) | Compression of a three-dimensional modeled object | |
US5038302A (en) | Method of converting continuous three-dimensional geometrical representations into discrete three-dimensional voxel-based representations within a three-dimensional voxel-based system | |
EP0368425B1 (en) | Method and apparatus for storing, accessing, and processing voxel-based data | |
Sigg et al. | Signed distance transform using graphics hardware | |
US4987554A (en) | Method of converting continuous three-dimensional geometrical representations of polygonal objects into discrete three-dimensional voxel-based representations thereof within a three-dimensional voxel-based system | |
US5544283A (en) | Method and apparatus for real-time volume rendering from an arbitrary viewing direction | |
US8497861B2 (en) | Method for direct volumetric rendering of deformable bricked volumes | |
EP1074946B1 (en) | Detail-directed hierarchical distance fields for object modelling | |
US6608631B1 (en) | Method, apparatus, and computer program product for geometric warps and deformations | |
JP3030206B2 (ja) | グラフィック多角形をクリップ領域にクリップする方法および装置 | |
US6559843B1 (en) | Segmented ray casting data parallel volume rendering | |
EP1074947B1 (en) | Sculpturing objects using detail-directed hierarchical distance fields | |
US5561749A (en) | Modeling of surfaces employing polygon strips | |
JP3415768B2 (ja) | ボリューム・レンダリング事前クリッピング方法 | |
US8587592B2 (en) | Tile-based rendering apparatus and method | |
US9501811B2 (en) | Resizing an image | |
WO2004061598A2 (en) | System, method, and computer program product for near-real time load balancing across multiple rendering pipelines | |
JPH09510309A (ja) | 集積化したテクスチャメモリと補間論理回路 | |
JPH0627930A (ja) | 三次元画像フォント文字を作成、記憶、生成し、三次元タイプ設定を実施する方法及び装置 | |
JP3278623B2 (ja) | 地図3次元化システム,地図3次元化方法および地図3次元化用プログラムを記憶した記憶媒体 | |
Wald et al. | CPU volume rendering of adaptive mesh refinement data | |
US5870105A (en) | System and method for local storage of image data during object to image mapping | |
EP1447774B1 (en) | Method and apparatus for sampling on a non-power-of-two pixel grid | |
Yin et al. | Multi-screen Tiled Displayed, Parallel Rendering System for a Large Terrain Dataset. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20080627 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090627 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090627 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100627 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100627 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110627 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120627 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130627 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130627 Year of fee payment: 10 |
|
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: 20130627 Year of fee payment: 10 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |