(58)【調査した分野】(Int.Cl.,DB名)
前記断面におけるボクセルが前記関心領域に含まれない場合、前記関心領域に含まれるボクセルに設定された不透明度よりも高い不透明度が、前記関心領域に含まれないボクセルに設定される
請求項1乃至3のいずれか1つ記載の可視化装置。
【発明を実施するための形態】
【0010】
図1に、本発明の実施の形態に係る可視化装置100の機能ブロック図を示す。本可視化装置100は、領域設定部101と、ボリュームデータ格納部102と、関心領域データ格納部103と、二次元画像データ処理部104と、三次元画像データ処理部105と、画像データ格納部106と、重畳表示処理部107と、表示部108とを有する。
【0011】
ボリュームデータ格納部102は、処理の対象となる臓器などのボリュームデータを格納する。ボリュームデータは、CTやMRIで観測された臓器などの断面画像を、三次元空間に所定のスライス幅の間隔で配置したデータである。ボリュームデータにおいて、断面画像のピクセルに相当する単位をボクセルと呼び、ボクセルには輝度値が設定されている。なお、輝度値については例えば255階調に正規化されているものとする。
【0012】
領域設定部101は、ユーザの指示に応じて、又は所定のアルゴリズムに応じて、ボリュームデータにおいて、関心領域を設定する処理を行い、関心領域を特定するデータを関心領域データ格納部103に格納する。
【0013】
二次元画像データ処理部104は、例えばユーザによって指定された断面の二次元画像データを生成するものであって、変換部1041と、第1データ格納部1042と、断面設定部1043と、断面画像生成部1044とを有する。
【0014】
変換部1041は、輝度値をRGBA(Red Green Blue Alpha)形式のデータに変換する処理を行い、処理結果を第1データ格納部1042に格納する。断面設定部1043は、ユーザなどの指示に応じてボリュームデータにおいて表示対象の断面を設定する。断面画像生成部1044は、第1データ格納部1042に格納されているデータを用いて、設定された断面についての断面画像のデータを生成し、画像データ格納部106に格納する。
【0015】
また、三次元画像データ処理部105は、関心領域において設定断面以下の部分について三次元画像データを生成するものであって、色データ生成部1051と、不透明度算出部1052と、第2データ格納部1053と、ボリュームレンダリング部1054とを有する。
【0016】
色データ生成部1051は、関心領域における各ボクセルについて色データを生成し、第2データ格納部1053に格納する。不透明度算出部1052は、関心領域におけるボクセルの輝度値の出現頻度に応じて各輝度値に対して不透明度を算出し、第2データ格納部1053に格納する。ボリュームレンダリング部1054は、第2データ格納部1053に格納されたデータを用いて、設定された断面以下の部分についてボリュームレンダリングを行って、生成された三次元画像データを画像データ格納部106に格納する。
【0017】
重畳表示処理部107は、画像データ格納部106に格納されているデータを用いて、断面画像と関心領域における三次元画像とを重ねて表示部108に表示する。
【0018】
次に、
図2乃至
図14を用いて、可視化装置100の処理内容を説明する。まず、領域設定部101は、ボリュームデータにおいて関心領域の設定を行い、関心領域を特定するためのデータを関心領域データ格納部103に格納する(ステップS1)。関心領域の設定については、ユーザが手動で領域を設定したり、ユーザが観測したい輝度領域の範囲を閾値で指定する方法のほか、Region Growing法などによって設定する方法が用いられる。
【0019】
そして、二次元画像データ処理部104は、ボリュームデータ格納部102及び関心領域データ格納部103に格納されているデータを用いて、二次元画像データ生成処理を実行し、生成された二次元の断面画像データを画像データ格納部106に格納する(ステップS3)。この処理については、
図3乃至
図5を用いて説明する。
【0020】
変換部1041は、ボリュームデータ格納部102に格納されているボクセルの輝度値を、RGBA形式のデータに変換して、第1データ格納部1042に格納する(ステップS11)。
【0021】
本実施の形態では、ボクセルの輝度値を例えば256階調のグレースケールの色データに変換する。また、不透明度を表すα値については、関心領域内のボクセルについては背景が透過するように、例えば0(透明)を設定し、関心領域外のボクセルについては背景が透過しないようにするため、例えば255(不透明)を設定する。逆に、α値を透明度とした場合には、関心領域内のボクセルについては背景が透過するように、例えば255(透明)を設定し、関心領域外のボクセルについては背景が透過しないようにするため、例えば0(不透明)を設定する。本実施の形態では、不透明度または透明度のいずれをα値として使用しても良い。
【0022】
そして、断面設定部1043は、例えばユーザの指示に従って、断面位置の設定を行う(ステップS13)。断面設定部1043は、設定された断面位置のデータを、断面画像生成部1044及び三次元画像データ処理部105に出力する。
【0023】
その後、断面画像生成部1044は、設定された断面位置でスライスした断面画像のデータを生成し、画像データ格納部106に格納する(ステップS15)。
【0024】
例えば、CTやMRIから得られる断面画像が例えば
図4に示すような画像であり、関心領域が、
図4の画像においておおよそ白部分に設定されている場合には、ステップS15では
図5のような断面画像が生成される。
図5において関心領域(
図4のおおよそ白部分)には、背景の灰色が透過しているが、関心領域外においては、
図4と同様の画像が含まれている。
【0025】
図2の処理の説明に戻って、三次元画像データ処理部105は、関心領域データ格納部103及びボリュームデータ格納部102に格納されているデータを用いて、三次元画像データ生成処理を実行し、生成された三次元画像データを画像データ格納部106に格納する(ステップS5)。この処理については、
図6乃至
図9を用いて説明する。
【0026】
まず、三次元画像データ処理部105は、ボリュームデータ格納部102から、関心領域データ格納部103に格納されている関心領域を特定するためのデータに基づき、関心領域内のボリュームデータを抽出する(ステップS21)。
【0027】
そして、三次元画像データ処理部105における色データ生成部1051は、関心領域における色データを生成し、第2データ格納部1053に格納する(ステップS23)。この処理については、抽出されたボリュームデータに含まれる各ボクセルの輝度値をそのまま採用しても良いが、より立体的な画像を生成するため、例えば光源を設定してPhongシェーディング等のシェーディングの結果を用いる。例えば、Phongシェーディングにおける拡散反射は、以下のように表される。
【0028】
ここでi,j,kはx軸、y軸、z軸それぞれの座標値を表し、Nは法線ベクトルを表し、Lは光源の方向ベクトルを表し、f(i,j,k)は座標(i,j,k)の輝度値を表すものとする。そうすると、色データC(i,j,k)は、以下のように表される。
C(i,j,k)=dot(N
i,j,k,L)×f(i,j,k)
dot(X,Y)は、ベクトルXとベクトルYの内積を表す。
【0029】
ここで法線ベクトルNは、周囲のボクセルの輝度値の勾配から算出する。
【0030】
【数1】
grad f(i,j,k)=((f(i+1,j,k)−f(i+1,j,k))/2,(f(i,j+1,k)−f(i,j+1,k))/2,(f(i,j,k+1)−f(i,j,k+1))/2)
【0031】
また、不透明度算出部1052は、関心領域における輝度値の出現頻度に応じた不透明度を、各輝度値に対して算出し、算出結果を第2データ格納部1053に格納する(ステップS25)。
【0032】
本実施の形態では、関心領域において出現頻度の高い輝度値には低い不透明度を、出現頻度の低い輝度値には高い不透明度を割り当てる。これによって、関心領域における断面でより大きな面積を占めるであろう部分が、立体的な画像にて示されるようになるので、ユーザにとっては関心領域における内部構造が可視化されたように見える。
【0033】
但し、医療画像のようなノイズの多い画像について出現頻度を単純にカウントすると、
図7に示すような不連続な分布を示すことがある。そこで、滑らかな出現頻度の分布を求めるため、例えばParzen Windowを用いる。Parzen Windowは階級の幅に依存しない度数分布を得る手法で、ノイズが載った観測値に対して滑らかな分布を得ることができることで知られている。但し、Parzen Windowの代わりに、多項式近似や混合ガウス分布を用いてもよい。
【0034】
例えば、
図7に示すような分布が得られて
Parzen Windowを用いて求めた輝度値の出現確率分布は、
図8に示すようになる。
Parzen Windowは、i=1,...,n個の観測値x
iが与えられているとき、以下で示すような式で表される。
【0035】
但し、f
p(x)は輝度値xが観測される出現確率を表し、K(z)はカーネル関数であり、例えばGaussianカーネルを用いる。hは、バンド幅を表し、例えば5を用いている。
【0037】
そして、出現確率が高い輝度値については不透明度を低くし、出現確率が低い輝度値については不透明度を高く設定する。すなわち、
図8に示すような出現確率分布の場合には、
図9に示すような不透明度の設定を行う。具体的には、輝度値xに対する不透明度f
αは以下のように表される。
【0038】
【数3】
なお、f
α_maxは出現確率の最大値を表す。なお、不透明度ではなく透明度を算出するようにしても良い。
【0039】
そして、ボリュームレンダリング部1054は、設定された断面位置以下の部分について、色データ及び不透明度データを用いてボリュームレンダリングを実行し、処理結果を画像データ格納部106に格納する(ステップS27)。そして処理は呼び出し元の処理に戻る。
【0040】
各ボクセルの色C(i,j,k)と、不透明度f
αとを用いてボリュームレンダリングを行うが、その代表的な手法にレイキャスティング法がある。レイキャスティング法はスクリーン上の各画素から視線に対応するレイ(ray)を飛ばし、交差するボクセルの値を重畳していくことで、スクリーン上のピクセル値を求める手法である。視点から近い順から交差するボクセルをv
0,v
1,...,v
mとした場合、ピクセル値は次のように表される。
【0041】
【数4】
なお、f
viは、ボクセルv
iの輝度値を表す。
【0042】
このようにすれば、関心領域における三次元画像データが生成される。
【0043】
図2の処理の説明に戻って、重畳表示処理部107は、画像データ格納部106に格納されている断面画像データとボリュームレンダリング結果とを重畳させて、表示部108に表示させる(ステップS7)。
【0044】
断面画像にはα値が設定されているので、当該断面画像に対してボリュームレンダリング結果をα値で合成する(αブレンディング)。上で述べたように、関心領域外の領域は不透明なので断面画像のみが表示され、関心領域は透明なのでボリュームレンダリングの結果が表示されるようになる。
【0045】
CTやMRIでの測定結果が例えば
図10に示すような状態であるとする。そして、関心領域を
図11に示すように肺の部分に設定すると、本実施の形態によれば
図12に示すような画像が表示部108に表示される。このように肺の中の構造が可視化される。なお、関心領域の一部を拡大すると、
図13に示すような画像が得られる。一方、
図13と同様な範囲について、
図10の画像を拡大すると、
図14に示すような画像が得られる。このように、
図12や
図13のような表示がなされれば、ユーザは、関心領域内の構造を理解しやすくなる。
【0046】
以上本発明の実施の形態を説明したが、本発明は実施の形態に限定されない。例えば、処理フローについては、処理結果が変わらない限り、ステップの順番を入れ替えたり、複数ステップを並列に実行するようにしても良い。
【0047】
図1に示した可視化装置100の機能ブロック構成は、プログラムモジュールと対応しない場合もある。データ格納部の構成についても、ファイル構成とは一致しない場合もある。
【0048】
上で述べた実施の形態では、どのような断面についても断面画像を生成できるようにボリュームデータ全体についてRGBA形式のデータを生成するが、断面位置を先に指定して、断面部分のみRGBA形式のデータを生成するようにしても良い。
【0049】
さらに、可視化装置100は、1台のコンピュータではなく、複数のコンピュータで構成される場合もある。
【0050】
なお、上で述べた可視化装置100は、コンピュータ装置であって、
図15に示すように、メモリ2501とCPU(Central Processing Unit)2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【0051】
以上述べた本実施の形態をまとめると、以下のようになる。
【0052】
本実施の形態に係る可視化方法は、(A)三次元ボリュームデータにおいて設定された関心領域内に含まれるボクセルの輝度値毎に当該輝度値の出現頻度に応じた不透明度又は透明度を設定し、(B)関心領域内に含まれるボクセルの輝度値に応じた色データ及び不透明度又は透明度を用いて、三次元ボリュームデータに対して設定された断面以下の部分について三次元画像データを生成し、(C)断面におけるボクセルのデータから生成された断面画像と、三次元画像データとを重畳させて表示する処理を含む。
【0053】
輝度値の出現頻度に応じた不透明度又は透明度を設定することで、関心領域内部の構造を明かすような画像が表示されるようになる。
【0054】
また、上で述べた三次元画像データの生成が、ボリュームレンダリングで行われる場合もある。
【0055】
さらに、上で述べた生成する処理が、関心領域内に含まれるボクセルの輝度値に基づきシェーディングを行って色データを生成する処理を含むようにしても良い。より立体的な構造が得られるようになる。
【0056】
さらに、上で述べた断面におけるボクセルには、当該ボクセルの輝度値に応じた色データと、当該ボクセルが前記関心領域内であれば透明を表すα値又は関心領域外であれば不透明を表すα値とが設定されている場合もある。この場合、上で述べた表示する処理が、α値を用いて、断面画像と、三次元画像データとを重畳させるようにしても良い。これによって、断面のうち関心領域内のみ三次元画像が表示されるようになる。
【0057】
なお、上で述べた設定する処理において、輝度値の出現頻度が高いほど透明になり、輝度値の出現頻度が低いほど不透明になるように、不透明度又は透明度を設定するようにしても良い。これによって内部構造が分かるようになる不透明度又は透明度が設定されるようになる。
【0058】
また、上で述べた設定する処理において、輝度値の出現頻度の分布を滑らかな出現確率分布に変換し、出現確率が高いほど透明になり、出現確率が低いほど不透明になるように、不透明度又は透明度を設定するようにしても良い。平滑化すれば自然な形で不透明度又は透明度が設定される。
【0059】
なお、上で述べたような処理をコンピュータに実行させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROMなどの光ディスク、光磁気ディスク、半導体メモリ(例えばROM)、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、RAM等の記憶装置に一時保管される。
【0060】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0061】
(付記1)
三次元ボリュームデータにおいて所定の関心領域に含まれるボクセルの輝度値毎に当該輝度値の出現頻度に応じた不透明度を設定し、前記関心領域に含まれるボクセルの輝度値に応じた色データ及び設定した前記不透明度を用いて、前記三次元ボリュームデータに対して設定された断面以下の部分について三次元画像データを生成するデータ処理部と、
前記断面におけるボクセルのデータから生成された断面画像と、前記三次元画像データとを重畳させて表示する表示処理部と、
を有する可視化装置。
【0062】
(付記2)
前記データ処理部が、ボリュームレンダリングを行って前記三次元画像データを生成する
付記1記載の可視化装置。
【0063】
(付記3)
前記データ処理部が、
前記関心領域に含まれるボクセルの輝度値に基づきシェーディングを行うことにより、色データを生成する
付記1又は2記載の可視化装置。
【0064】
(付記4)
前記断面におけるボクセルが前記関心領域に含まれない場合、前記関心領域に含まれるボクセルに設定された不透明度よりも高い不透明度が、前記関心領域に含まれないボクセルに設定される
付記1乃至3のいずれか1つ記載の可視化装置。
【0065】
(付記5)
前記データ処理部が、
前記輝度値の出現頻度が高いほど透明になり、前記輝度値の出現頻度が低いほど不透明になるように、前記不透明度を設定する
付記1乃至4のいずれか1つ記載の可視化装置。
【0066】
(付記6)
前記データ処理部が、
前記輝度値の出現頻度の分布を滑らかな出現確率分布に変換し、
出現確率が高いほど透明になり、出現確率が低いほど不透明になるように、前記不透明度又は透明度を設定する
付記1乃至4のいずれか1つ記載の可視化装置。
【0067】
(付記7)
コンピュータに、
三次元ボリュームデータにおいて所定の関心領域に含まれるボクセルの輝度値毎に当該輝度値の出現頻度に応じた不透明度を設定させ、
前記関心領域に含まれるボクセルの輝度値に応じた色データ及び設定した前記不透明度を用いて、前記三次元ボリュームデータに対して設定された断面以下の部分について三次元画像データを生成させ、
前記断面におけるボクセルのデータから生成された断面画像と、前記三次元画像データとを重畳させて表示させる
可視化プログラム。
【0068】
(付記8)
コンピュータが、
三次元ボリュームデータにおいて所定の関心領域に含まれるボクセルの輝度値毎に当該輝度値の出現頻度に応じた不透明度を設定し、
前記関心領域に含まれるボクセルの輝度値に応じた色データ及び設定した前記不透明度を用いて、前記三次元ボリュームデータに対して設定された断面以下の部分について三次元画像データを生成し、
前記断面におけるボクセルのデータから生成された断面画像と、前記三次元画像データとを重畳させて表示する
可視化方法。