医療画像データからメッシュを作成する方法
By K.Yoshimi
CTやMRIなどの医療画像から、メッシュを作成し、構造解析や流体解析を行う場面が増えてまいりました。
メッシュを作成する1つの方法として、医療画像から形状を三角形メッシュで抽出してから、STL形式などで出力し、 それに対して、汎用メッシャーでメッシュを作成する方法がよく使用されます。
また、別の方法として、医療画像から直接にボリュームメッシュを作成する方法もあります。
今回は、2つ目の「医療画像から直接にボリュームメッシュを作成する」方法について、 オープンソースの3D Slicerを使用する例を、チュートリアル形式で紹介します。
3D Slicerは、医療やバイオメカニクスの分野で画像解析や可視化を行うために広く利用される 無料のオープンソースソフトウェアです。
今回は、3D Slicerの拡張機能である、Slicer Segment Mesherを紹介します。
3D Slicerのインストール
まず、3D Slicerのホームぺージから、最新版の3D Slicerをダウンロードしてください。
インストールはインストーラーを起動し、指示にしたがうとインストールされます。
SegmentMesherのインストール
早速、3D Slicerを起動しましょう。続けて
View > Extension Manager
から、Extension Managerを開きます。
下図のように、Install Extensionsタブで、SegmentMesherを検索ボックスに入力し、検索されたSegementMesherをクリックします。
下記のように表示されますので、Installボタンをクリックして、インストールを実行します。
インストールを実際に反映させるために、Restartボタンをクリックし、3D Slicerを再起動する必要があります。
SegmentMesherの使い方
3D Slicerを起動
Slicer Segment Mesherがインストールされた3D Slicerを起動します。
今回は、画面の表示の配置をFour-Upに変更します。
サンプルデータの読み込み
次に、Download Sample Dataモジュールを開き、下図に示すように、MRHeadを選択し、頭部のデータを読み込みます。
頭部のセグメンテーション
まず、頭部のセグメンテーションから始めます。
アイコンをクリックして、Segment Editorモジュールを開きましょう。
最初に、Addボタンをクリックして、新しいsegmentを追加します。
Thresholdエフェクトを使用して、初期のセグメンテーションを行います。 Threshold Rangeの下限に30を設定し、Applyすると下図のように、セグメンテーションされることが確認されます。
続けて、Smoothingエフェクトを使用して、セグメントにスムージングを掛けます。 kernel sizeには、6mmを設定し、Applyしましょう。
病巣を模擬したセグメンテーション
次に、病巣を模擬する新しいsegmentを追加します。
PaintエフェクトのSphere brushを有効にし、球体ブラシを設定します。 球体ブラシの径を**6%**にし、黄色のスライスビューにおいて、頭部の適当な位置をクリックし、病巣を模擬するセグメンテーションを作成します。
これでセグメンテーションは終了です。
Segment Mesherモジュールを開きます。
それでは、作成したセグメンテーションにしたがって、Segment Mesherでメッシュを作成しましょう。
下図のように、Segment Mesherを開きます。
Segmentation > Segment Mesher
Segment to Meshで、全てのセグメントを選択します。
Output ModelにCreate new Modelを設定し、Applyをクリックすると、メッシュ生成が開始します。
メッシュ生成が終了したら、Displayを展開し、Yellow Slice ClippingとKeep only whole cells when clippingにチェックを入れます。
これによって、黄色のスライスビューのスライドバーを移動するとメッシュ断面が表示され、メッシュを確認することができます。
もっと細かいメッシュを作成する場合は、**Feature scaling (increase for coarser mesh)**の値を小さくし(例えば、0.50)、 再度、Applyします。
今度は先程より、メッシュ生成に時間がかかります。
メッシュ作成が完了すると、以下のようにメッシュが細かくなっていることが分かります。
メッシュの出力
作成されたメッシュは、vtk形式やvtu形式でで出力することができます。
以上で、医療用画像から直接に、ボリュームメッシュを作成することができました。
この出来上がったメッシュを、汎用メッシャーに渡すことにより、メッシュをスムージングなどで さらに修正・編集し、また、解析ソルバーへの設定を行い、解析ソルバーに渡すことができます。