8.3次元画像の構築

【概要】

 医用画像における3次元画像は,連続的に得た多数の2次元スライス画像を3次元的に再構成し,それを画像として2次元表示したものである.3次元再構成の方法で,現在一般に用いられているものにボクセル法という手法である.ボクセル法では,スライス画像の各ピクセル(pixel,画素)を3次元的なボクセル(voxel,体積素)として扱い,これをスライス画像ごとに積み木のように積み上げることで3次元構造が表現される.ボクセル法によってコンピュータ内部に構築された3次元物体を2次元の画像として投影表示する方法には,CG(コンピュータグラフィックス)の手法が利用されている.その手法の中で最も代表的でアルゴリズムにレイトレーシング法(光線追跡法)がある.図1をみてみよう.

図1 網目を覗くレイトレーシング

 

 図1はレイトレーシングアルゴリズムの原理を表している.ある部屋の中で網戸のついている窓からその景色を眺める様子を想像してみよう.この網戸を通して外の景色を眺める様子をCGに応用した手法がレイトレーシング法である.網戸の格子をモニター上の1画素と考え,そしてその先にコンピュータ内部で構築された3次元物体があると考えれば良い.つまり,レイトレーシング法では,その物体に向かって視点(カメラ)から視線(投影線,光線)を送り,視線上にある物体の色情報(あるいは濃淡情報)を,視線上の網戸の格子点の画素値とする方法である.こうすることで網戸上に3次元物体の2次元画像が投影されることになる.ただし,CGにおけるレイトレーシング法は,光線と物体が最初に交わる交点を求め,その点での反射,屈折などを考慮し,物体の表面のみを表示する方法とされている.このように物体の表面のみを表示する方法を特にサーフェイスレンダリングと言う.

 レイトレーシングアルゴリズムを応用することで,臨床でよく利用されている3次元医用画像の投影像を作成することができる.特に医用画像では物体の表面情報だけでなく内部情報も重要な意味をもつ.そのため医用3次元画像から投影像を作成するときは,物体の内部情報も考慮して投影像を作成するのが通常である.図2をみてみよう.

図2 医用画像における光線追跡

 

 図2は断層像群をつきぬけるように光線を伸ばしている様子を示している.この光線上にあるボクセルの密度を積算(レイキャスティング)してゆき,半透明度な投影像を生成する方法をボリュームレンダリングと言う.ボリュームレンダリングでは各ボクセルに透明度というパラメータを設定することで,物体の内部も表示可能にしている.ボリュームレンダリングに対してサーフェイスレンダリングでは,光線が断層像群で最初に当たる画素値を投影面上の画素値とした画像になる.このほかに医用画像の3次元表示法としてよく利用されるものに,最大値投影法(Maximum Intensity Projection: MIP),平均値投影法がある.MIPは,一本の光線が通る断層像群中の画素の中で最も高い画素値を投影面上の画素値とする方法である.平均値投影法は,光線が通る画素の平均画素値を投影面上の画素値とする方法である.また,3次元表示ではないが,立体構造の任意断面を再構成する方法として多断面再構成法(MPR:Multi Planar reconstruction)があり,3次元の医用画像を表示する方法として良く利用されている.これらの表示法は,特にCT画像やMR画像を表示するためによく用いられている.

 

演習8-1: 3次元画像を作ってみよう!

使用する画像:頭部ファントムを撮影したCT画像(512×512×30画素Tif形式)

      

      頭部ファントム          使用する画像を3次元表示した一例  

方法: 

1.画像を表示する.

ファントムの断層像30枚が開く.

⇒キーボードの「.」で一枚下の画像を,「,」で一枚上の画像を表示することができる.

2.投影像を作成する.Scion Imageでは3つの投影法が用意されている.

⇒「Stacks」→「Project]を選択する.

 設定画面

⇒用意されている3つの投影法(Projection Mtdhod)

・Nearest Point法: それぞれの投影線上で,指定した範囲の値をもつピクセルのうち,投影面に最も近いピクセルの値を投影値とする方法.サーフェイスレンダリングを行うことができる.

・Brightness Point法: それぞれの投影線上で,指定した範囲の値を持つピクセルのうち,最も大きな(明るい)値を投影値とする方法.最大値投影像(MIP像)を作成することができる.

・Mean Value法: それぞれの投影線上で,指定した範囲の値を持つピクセルすべての値の平均値を投影値とする方法.平均値投影像を作成することができる.

指定する範囲はLower Transparency BoundとUpperTransparency Boundの設定値で決定できる.

*)Scion Imageではスタックに積み重なっている画像を一覧表示することもできる.実行方法は「Stacks」→「Make Montage」を選択すればよい.
考察: 

・投影法の違いによる結果画像を比較しながら,各投影像の特徴を考えてみよう.

 

演習8-2: 補間を行ってから3次元画像を作ってみよう!

使用する画像: 演習8-1で使用した画像

方法: 

演習8-1の方法1と2の間に次の処理を行う.あとは同じ.

⇒「Special」→「Load Macros」を選択し,Scion Imageフォルダ内の”Macros”内の”Stacks.txt”を選択する.

⇒「Special」→「Replicate Slices」を選択し,設定値を決定する.

この操作により,指定した枚数だけスライス画像が複製され,その画像がスライス間に挿入されることになる.

考察: 
・なぜ補間処理が必要なのか考えてみよう.

 

演習8-3: 2値画像で3次元画像を作ってみよう!

使用する画像: 演習8-1で使用した画像

方法: 

演習8-2で挿入した方法を実行する前に各スライス画像を2値化する.例えば,骨の領域を抽出するように2値化する.あとは同じ.

考察: 
・2値画像での投影結果像を比較し,2値画像ではどの投影法が最も有用でありそうか理由を付して考えてみよう.

 

演習8-4: MPR像を作ってみよう

使用する画像: 演習8-1で使用した画像 

⇒適度に補間を行ってから使用する.

方法: 

1.見たい断面を決定する = 直線のROIを設定する

 直線ROIの設定例

2.「Stacks」→「Reslice」を選択する. Slice Spacingは0.025.

*)現在のScion Imageでは,スタックに対して垂直方向の断面像を再構成する機能しか提供されていない.

考察: 
・MPR法の有用性について考えてみよう.

 

演習8-5: Vomule-Oneで3次元画像を作ってみよう

使用する画像: 胸部CT画像,頭部MRA画像 

方法: 

1.Volume-Oneを起動する. ⇒スタート→プログラム→Volume-One

2.画像を表示する.

  ⇒File→Import→Raw Format

2918A: 胸部CT画像, bm0001: 頭部MRA画像 である.

次のようにwidth, heightなどを合わせる.(guessボタンを数回押すと自動で合う)

胸部CT画像の場合は、画像を開いた後、Edit->Channel->Swap Bytesを実行する

3.スケールを調節する.

  ⇒Edit→Resize→Scale

4.レンダリング方法を選択する.

  ボリュームレンダリング:
   ⇒Visualization→Render→Volume→Composite

  MIP:
   ⇒Visualization→Render→Volume→Composite

 

5.血管,骨,などの領域だけを表示するように調節してみる(WW,WLを調節).

@の画面内で,マウス右ボタンをクリックしたまま動かすと,WL,WWの変更ができる.

Aの画面内
  マウス左ボタンをクリックしたまま動かす: 回転
  マウス中ボタンをクリックしたまま動かす: 拡大縮小
  マウス右ボタンをクリックしたまま動かす: 移動