(57)【要約】本発明は、２次元のディスプレイ上へのボリュームデータ集合のレンダリングのための方法に関する。本発明の方法によれば、ボクセル値の勾配ベクトルが算出され、勾配ルックアップテーブルへのインデクスに置き換えられる。これによってレンダリングの間に必要とされるメモリの量とメモリアクセスの数を削減する。２次元の投影面上の各点について、前記ボリュームへ光線が投射される。次いで前記ボリュームデータは個々の光線に沿って離散的なサンプル点においてサンプリングされる。レンダリングの間、各サンプル位置における隣接するボクセルの８個の勾配ベクトルが前記ルックアップテーブルから取得される。本発明は、適切なインデクスを選択する前に前記勾配にディザリングを適用することを提案する。補間のため、真の勾配値の回復が達成される。かくして、勾配の離散化によって引き起こされる明暗縞のような画像のアーティファクトは回避される。
2004519045.tif 000002
【特許請求の範囲】
【請求項１】
ボクセル値の勾配ベクトルが、隣接するボクセルの勾配ベクトルの間の補間によってボリューム内の任意のサンプル位置において計算され、前記勾配ベクトルは、各ボクセルに割り当てられた勾配インデクスによってルックアップテーブルから取得される、２次元のディスプレイ上にボリュームデータ集合をレンダリングする方法であって、前記勾配ベクトルにディザリングが適用されることを特徴とする方法。
【請求項２】
前記ディザリングは、前記勾配インデクスの割り当ての間各ボクセル位置において前記勾配ベクトルに適用されることを特徴とする、請求項１に記載の方法。
【請求項３】
前記ディザリングは、前記勾配ベクトルの各成分にランダム的な値を加算することにより適用されることを特徴とする、請求項１に記載の方法。
【請求項４】
前記ルックアップテーブルは、単位領域に均一に分散された正規化された勾配ベクトルを含むことを特徴とする、請求項１に記載の方法。
【請求項５】
前記補間のステップの後、前記サンプル位置において前記勾配ベクトルの再正規化が実行されることを特徴とする、請求項１に記載の方法。
【請求項６】
ボリュームデータ集合の予備処理は、
各ボクセル位置における勾配ベクトルを算出するステップと、
各ベクトル成分にランダム的なノイズを加算することにより前記勾配ベクトルをディザリングするステップと、
前記ディザリングされた勾配データを勾配ルックアップテーブル中の対応するベクトルと照合することにより、各ボクセルに勾配インデクスを割り当てるステップと、
各ボクセルについて勾配インデクスを保存するステップと、
を有することを特徴とする、請求項１に記載の方法を実行するコンピュータプログラム。
【請求項７】
２次元のディスプレイ上への前記ボリュームデータのレンダリングは、
２次元のディスプレイ中の各ピクセルについて光線を設定するステップと、
前記ボリューム内に前記光線に沿ってサンプル点を決定するステップと、
各前記サンプル点において隣接するボクセル値の補間によってサンプル値を計算するステップと、
各前記サンプル点において、それぞれの勾配インデクスに従って前記勾配ルックアップテーブルから取得される隣接する勾配ベクトルの補間によって勾配ベクトルを計算するステップと、
各前記サンプル点について色及び不透明度値を算出するステップと、
前記色及び不透明度値をピクセル値に合成するステップと、
を有することを特徴とする請求項６に記載の方法。
【請求項８】
プログラムにより制御された処理部を持つコンピュータシステムのためのビデオグラフィクスアダプタであって、請求項１に記載の方法に従って動作するプログラムを持つことを特徴とするビデオグラフィクスアダプタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ボクセル値の勾配ベクトルが隣接するボクセルの勾配ベクトルの補間によってボリューム内の任意のサンプル位置において計算され、前記勾配ベクトルは、各ボクセルに割り当てられた勾配インデクスによってルックアップテーブルから取得される、２次元のディスプレイ上にボリュームデータ集合をレンダリングする方法に関する。
【０００２】
更に本発明は、前記方法を実行するコンピュータプログラムに関する。
【０００３】
【従来の技術】
ボリュームレンダリング（ｖｏｌｕｍｅ ｒｅｎｄｅｒｉｎｇ）は、コンピュータグラフィックスの重要な分野である。これは例えば、磁気共鳴映像法（ＭＲＩ）により生成された診断用ボリューム画像のようなボリュームデータ集合の、２次元の表示装置に表示される場合に固体の内部の特性を示す直接レンダリングに関連するため、医学の応用に関してはとりわけ重要である。ＭＲＩにおいては、３次元のグリッドの各点において、人間の組織の陽子密度が磁気共鳴信号から再構成される。この等距離のボクセル（ｖｏｘｅｌ）のボリュームデータ集合は、ＭＲＩデータにおける密度変化に対応する種々のタイプの組織の境界を示すボリュームレンダリングによって表示されることができる。
【０００４】
ボリュームレンダリングは計算的に極めて要求の厳しいものであるという事実のため、効果的なアルゴリズムの開発のために近年多くの努力が為されてきた。ボリュームデータ集合は通常非常に大きい。典型的なＭＲＩ画像は百万個以上のボクセルを含み得る。このことは、莫大なメモリの必要性のためシステムリソースに付加的な酷使を課す。
【０００５】
ボリュームレンダリングの方法は例えば、「１９９８ Ｅｕｒｏｇｒａｐｈｉｃｓ／Ｓｉｇｇｒａｐｈ Ｗｏｒｋｓｈｏｐ Ｏｎ Ｇｒａｐｈｉｃｓ Ｈａｒｄｗａｒｅ」（リスボン、１９９８年８月）のプロシーディング中の、Ｍｅｉｓｓｎｅｒらによる「Ｖｉｚａｒｄ ＩＩ， Ａ ＰＣＩ−Ｃａｒｄ ｆｏｒ Ｒｅａｌ−Ｔｉｍｅ Ｖｏｌｕｍｅ Ｒｅｎｄｅｒｉｎｇ」と題された論文中に説明されている。該論文中に提案されたアルゴリズムは以下に説明される。
【０００６】
レンダリングされるべきボリュームデータ集合は離散的なボクセルを有する。各ボクセルは従って、３次元のグリッド上に固有のｘ、ｙ、ｚ位置を持つ。空間的な該位置に加えてボクセルは、例えばＭＲＩ画像中の陽子密度を反映する空間強度分布を定義するボクセル値によって特徴付けられる。
【０００７】
ボリュームデータ集合を２次元のディスプレイにレンダリングするために、目の位置、視線方向等のようなビューイングパラメータ（ｖｉｅｗｉｎｇ ｐａｒａｍｅｔｅｒ）に依存する投影面（ｖｉｅｗ ｐｌａｎｅ）が定義される。前記投影面上の各点について、前記ボリュームに光線が投射される。次いで前記ボリュームデータは、各個々の光線に沿って離散的なサンプル点においてサンプリングされる。これらのサンプル点においてサンプル値を生成するため、前記グリッドの８個の隣接するボクセルが三重線形補間（ｔｒｉｌｉｎｅａｒｌｙ ｉｎｔｅｒｐｏｌａｔｅｄ）される。
【０００８】
色値が前記投影面上の各ピクセル（ｐｉｘｅｌ）について計算される必要がある。それ故、強度の最も激しい変化の方向及び大きさを与える勾配ベクトルが必要とされる。前記勾配ベクトルはそのため空間中の等画像強度「面」に直交し、表示される個体の明確な境界を視覚化するために利用されることができる。前記勾配ベクトルは、光源に対するそれぞれの面の方向に依存する反射光強度を計算するために利用される。前記勾配の方向及び前記サンプル値から、各サンプル位置において色及び不透明度が算出される。これらの値は前記光線に沿って累積され、最後に前記投影面上のそれぞれのピクセルについての色値を与えるように構成される。
【０００９】
各サンプル位置における前記サンプル値の算出のための上述した三重線形補間は、８個の隣接するボクセルにアクセスすることを必要とする。６個の最近接のものの差異による勾配ベクトルの算出のため、３２個のボクセル値にアクセスする必要がある。現在のコンピュータハードウェア上では、３２個の値に並行してアクセスすることは実行可能ではない。なぜならこのような方法では勾配ベクトルの算出に時間が掛かりすぎるからである。それ故、上述の論文の著者は、各ボクセルについて前記勾配を予め算出することを提案する。ボリュームデータ集合自体の３倍のメモリの量を必要とする各ボクセル位置における全ての勾配を保存しておくのではなく、勾配のテーブルが生成される。次いで、ルックアップテーブル内の最も近い勾配へのインデクスを選択することにより、各ボクセルについて前記勾配テーブルへのインデクスのみが保存される。各サンプル位置における勾配は次いで、各サンプル位置における８個の勾配のルックアップを実行し、返却された勾配のｘ、ｙ、ｚ成分を補間することにより算出されることができる。前記ルックアップテーブル中の制限された数の勾配は画質に影響を及ぼすが、十分に大きなルックアップテーブルを作成することにより、メモリ要件と画質との間の良いトレードオフが依然として達成され得る。
【００１０】
この方法によって、時間を浪費する最近接のものの差異による勾配の算出がレンダリングの間に完全に回避されるため、フレームレートのかなりの増加が達成される。
【００１１】
【発明が解決しようとする課題】
この知られた方法の欠点は、勾配値の離散化（ｄｉｓｃｒｅｔｉｚａｔｉｏｎ）が、最終的な画像における望ましくない明暗縞（ｉｎｔｅｎｓｉｔｙ ｂａｎｄ）に帰着することである。ひどく減少された画質に導くこれらの明暗縞の出現は、前記ルックアップテーブル中の制限された数の勾配ベクトルに基づく。
【００１２】
本発明の一般の目的は、ボリュームレンダリングの上述の方法を改善することにある。
【００１３】
更に、本発明の目的は、最終的な画像における明暗縞の出現が回避される、ボリュームレンダリングの効果的な方法を提供することにある。
【００１４】
【課題を解決するための手段】
本発明によれば、前記勾配ベクトルにディザリング（ｄｉｔｈｅｒｉｎｇ）を適用することにより上述した問題及び欠点が回避される、上述のように規定された種類のボリュームレンダリングの方法が開示される。
【００１５】
本発明の一態様によれば、各サンプル点における勾配ベクトルにディザリングを適用することが可能である。このことは例えば、それぞれの勾配ベクトルの各成分に疑ランダム値を加算することによって為されることができる。結果として、前記ルックアップテーブル中の一定のインデクス値に対応する投影面上の各ピクセルについて、異なる強度値が得られる。該強度値は平均値の周囲にランダム的に分散される。この方法によって、明暗縞の出現は効果的に回避される。しかしその代わりに、ディザリングのため結果の画像は、依然として完全に満足のいくものではない、ある程度のノイズの出現を持つ。
【００１６】
それ故本発明の他の態様によれば、勾配インデクスの割り当ての間に前記勾配ベクトルへディザリングを適用することも可能である。この場合、ランダム的な値が予備算出ステップの間に勾配成分に加算され、レンダリング速度の更なる増加に帰着する。更に、各サンプル位置における勾配ベクトルの算出のため、隣接する勾配値の平均化が実行される。隣接する勾配のディザリングのため、前記サンプル位置における真の勾配ベクトルは少なくとも部分的に回復される。これによって望ましくない明暗縞は、画像に不自然なノイズを生成することなく、殆ど完全に除去される。本発明のこの態様の基本的な発想は、それぞれのサンプル位置における元の勾配の回復は、隣接するグリッド位置における異なるディザリングされた勾配値の結合によって達成されるということである。かくして、前記ルックアップテーブル中の勾配の離散化の欠点は、レンダリングの間の付加的な計算ステップの必要なく、本発明の方法によって効果的に克服される。
【００１７】
本発明により定義されるボリュームレンダリングの方法を用いて、単位領域に均一に分散された正規化された勾配ベクトルを含むルックアップテーブルを利用することは有用である。このようにして、各ボクセルに割り当てられた前記勾配値の平均角度誤差は最小化されることができる。なぜなら、前記ルックアップテーブルは空間の全ての方向に等確率で勾配ベクトルを含むからである。これは明らかに、勾配ベクトルの３次元ベクトル空間の全体をカバーするための最適な方法である。光の反射及び光の透過の計算のためには、前記ルックアップテーブルを正規化された勾配に制限することで十分である。なぜならそれぞれの面の勾配のみが必要とされるからである。更に、正規化された勾配のみを利用して動作することにより、相当量のメモリが節約される。
【００１８】
本発明によれば、ディザリングの適用の後且つ前記ルックアップテーブルへの対応するインデクスが各ボクセルへ割り当てられる前に、前記勾配ベクトルが正規化される。これにより、前記勾配テーブルに保存された最も近い勾配方向が選択される。
【００１９】
隣接するボクセルの勾配ベクトルの補間の後に各サンプル点において前記勾配ベクトルを再正規化することは有用である。これは、各ベクトル成分の三重線形補間の後、結果の勾配ベクトルはもはや正規化されないからである。
【００２０】
本発明の方法を実行するコンピュータプログラムは、
各ボクセル位置における勾配ベクトルを算出するステップと、
各ベクトル成分にランダム的なノイズを加算することにより前記勾配ベクトルをディザリングするステップと、
前記ディザリングされた勾配データを勾配ルックアップテーブル中の対応するベクトルと照合することにより、各ボクセルに勾配インデクスを割り当てるステップと、
各ボクセルについて勾配インデクスを保存するステップと、
を有する、ボリュームデータ集合の予備処理を実行する。２次元のディスプレイ上での前記ボリュームデータの実際のレンダリングのために、かようなコンピュータプログラムは、
２次元のディスプレイ中の各ピクセルについて光線を設定するステップと、
前記ボリューム内に前記光線に沿ってサンプル点を決定するステップと、
各前記サンプル点において隣接するボクセル値の補間によってサンプル値を計算するステップと、
各前記サンプル点において、それぞれの勾配インデクスに従って前記勾配ルックアップテーブルから取得される隣接する勾配ベクトルの補間によって勾配ベクトルを計算するステップと、
各前記サンプル点について色及び不透明度値を算出するステップと、
前記色及び不透明度値をピクセル値に合成するステップと、
を有する。かようなコンピュータプログラムは有利にも、標準的なコンピュータグラフィクスのタスクが可能な、いずれの一般的なコンピュータハードウェア上に実装されることができる。特に医療用画像装置の画像再構築及び表示ユニットは、本発明の方法を実行するプログラムを用意に備えることができる。前記コンピュータプログラムは、ＣＤ−ＲＯＭ又はディスクのような適切なデータ担体でこれらの装置に提供されることができる。代わりに、インターネットサーバからユーザによってダウンロードされることもできる。
【００２１】
本発明のコンピュータプログラムを、例えばパーソナルコンピュータ用のビデオカードのような、専用のグラフィクスハードウェア装置に組み込むことも可能である。典型的なパーソナルコンピュータの単一のＣＰＵは通常、対話型フレームレートでのボリュームレンダリングを実行することができないため、このことはとりわけ適切である。本発明の方法は例えば、従来のＰＣ用のＰＣＩビデオカードのボリュームレンダリングのアクセラレータに実装されても良い。今日のＰＣＩハードウェアは、上述したアルゴリズムの利用によって対話型フレームレートを発揮するために要求される容量と速度を持つ。
【００２２】
以下の図は本発明の好適な実施例を開示する。しかしながらこれらの図は、本発明の限定を規定するものとしてではなく、説明の目的のためにのみ意図されたものであることは理解されるべきである。
【００２３】
【発明の実施の形態】
図１は、ボリュームレンダリングの最初に実行される、ボリュームデータ集合の予備処理のブロック図を示す。ブロック１において、単位領域上に均一に分散されている所定の数の正規化された勾配ベクトルの算出において、勾配ルックアップテーブルが初期化される。前記ベクトルの成分は保存され、インデクス値が前記テーブル中の前記勾配ベクトルのそれぞれに割り当てられる。ブロック２は、前記ボリュームデータ集合の最初のボクセルを取得し、ブロック３へ出力する。ブロック３は、前記ボクセルにおける勾配ベクトルを、６個の最近接のものの差異により算出する。ブロック４において、前のステップにおいて計算された前記勾配ベクトルにディザリングが適用される。このことは好ましくは、該勾配ベクトルのｘ、ｙ、ｚ成分に疑ランダムな数を加算することにより為されることができる。ブロック５は、前記ディザリングされた勾配に最も近い、前記ルックアップテーブル中で最も合致するベクトルのインデクスを決定する。次いでブロック６において、該インデクスが現在のボクセルについて保存される。ブロック３における勾配ベクトルの計算から始まる全体の処理は、前記ボリュームデータ集合の各ボクセルについて繰り返される。ブロック７は、予備処理されるべき前記データ集合中のボクセルがまだあるか否かをチェックする。そうである場合、ボクセルの集合全部について前記ルックアップテーブルへのインデクスが決定されるまで、ブロック８において次のボクセルが選択され、ブロック３に出力される。
【００２４】
その後、前記ボリュームデータ集合の実際のレンダリングが実行される。これは図２に図示されている。ブロック９において、目の位置、視線の方向、ビューアップベクトル（ｖｉｅｗ ｕｐ ｖｅｃｔｏｒ）等のようなビューイングパラメータに依存して、前記投影面の位置が算出される。次いで、前記投影面上の各点について、前記ボリュームに光線が投射される。ブロック１０は処理されるべき３つの光線の最初のものを得る。ここでサンプリングが前記光線に沿って行われなければならない。ブロック１１において、各光線上の最初のサンプル点が決定される。ブロック１２におけるサンプル位置における前記勾配ベクトルの計算のため、図１において示された（ブロック１）予備処理の間にセットアップされた勾配のテーブルへのルックアップが、８個の隣接するボクセルについて実行される。ブロック１３において、前記隣接するボクセルに割り当てられたインデクスに従って、前記ルックアップテーブルから前記勾配が取得される。これらの勾配ベクトルは、前記サンプル位置における勾配ベクトルを得るため、ブロック１４において三重線形補間される。上述したように前記補間は、勾配インデクスの割り当ての前に前記予備処理の間に適用されたランダム的なディザリングのため、前記サンプル位置における真の勾配値の部分的な回復に帰着する。正規化されたベクトルの補間の後、結果のベクトルはもはや単位長さを持たず、それ故再正規化される必要がある。これはブロック１５で行われる。実際の光線に対応する前記２次元のディスプレイ中の該点についての色値が計算される必要がある。このことはブロック１６において、各サンプル位置において色及び不透明度値を算出することによって為される。これらの値は前記光線に沿って累積され、前記光線の全体がサンプリングされた後に最終的な色値を構成する。前記サンプリングは前記線光線に沿った全てのサンプル点について継続される。ブロック１７は前記光線上に残った点があるか否かをチェックする。そうである場合、ブロック１８は次のサンプル点を取得し、該サンプル点をブロック１２へ出力する。点が残っていない場合、ブロック１９は前記投射面に残った光線があるか否かをチェックする。そうである場合、ブロック２０は処理されるべき次の光線を取得し、該光線をブロック１１に出力する。全体の前記投射面の処理の後、該レンダリングはブロック２１で終了する。ブロック２１はコンピュータプログラムにおけるサブルーチンのリターンコマンドに相当する。
【００２５】
図３は本発明の方法を実行するコンピュータシステムを示す。該システムは、システムバス２３を通して前記コンピュータシステムの他の素子と通信する、中央処理素子２２を含む。ランダムアクセスメモリ素子２４はバス２３に接続される。メモリ２４は、前記コンピュータシステム上で実際に実行される、オペレーティングシステム及びアプリケーションプログラムのようなコンピュータプログラムを保存する。プログラムの実行の間処理素子２２は、命令、コマンド及びデータをメモリ素子２４から読み込む。データ及び実行可能なプログラムコードの長期保存のため、ハードディスクドライブのような大容量記憶装置がバス２３に接続される。キーボード２６及びマウス２７は、前記コンピュータシステムのユーザが、情報を入力し前記コンピュータシステムを対話的に制御することを可能とする。同様にシステムバス２３には、システムバス２３の対応するスロットにはめ込まれるべきコネクタ素子２９を持つ、ビデオグラフィクスアダプタ２８が接続される。ビデオグラフィクスアダプタ２８は、グラフィクスアダプタ２８の他の素子と前記コンピュータシステムのコンポーネントとの間の通信のためのインタフェース素子３０を含む。更に、グラフィクスアクセラレータ素子３１及びグラフィクスメモリ素子３２が前記グラフィクスアダプタに接続される。これらは適切なデータ接続３３によって相互接続される。メモリ素子３２は読み取り専用でありランダムアクセスであるメモリを有し、同様に本発明のコンピュータプログラム及びレンダリングされるべきボリュームデータ集合の一部を保存するために利用される。グラフィクスアクセラレータ３１は、本発明の方法に従ってボリュームレンダリングを実行するマイクロプロセッサ又はマイクロコントローラである。グラフィクスアダプタ２８は更に、コンピュータモニタに接続されているビデオ信号生成器３４を含む。該モニタはＣＲＴ又はＬＣＤ表示装置であっても良い。該生成器は、ビデオグラフィクスアダプタ２８の素子によってレンダリングされるボリュームデータ集合の２次元表示のためのビデオ信号を生成する。
【００２６】
本発明の幾つかの実施例が適宜示され説明されたが、添付された請求項に記載された本発明の精神及び範囲から逸脱することなく、多くの変更及び修正がこれに為されても良いことは理解されるべきである。
【図面の簡単な説明】
【図１】本発明によるボリュームデータ集合の予備処理を説明するブロック図を示す。
【図２】本発明の方法による２次元のディスプレイ上へのボリュームデータ集合のレンダリングを説明するブロック図を示す。
【図３】本発明の方法によって動作するビデオグラフィクスカードを伴うコンピュータシステムを示す。
【図１】
2004519045.tif 000003
【図２】
2004519045.tif 000004
【国際公開パンフレット】
2004519045.tif 000005
2004519045.tif 000006
2004519045.tif 000007
2004519045.tif 000008
2004519045.tif 000009
2004519045.tif 000010
2004519045.tif 000011
2004519045.tif 000012
2004519045.tif 000013
2004519045.tif 000014
2004519045.tif 000015
2004519045.tif 000016
2004519045.tif 000017
【国際調査報告】
2004519045.tif 000018
2004519045.tif 000019