1. 目的
2. Boundary-Based Registration (BBR)とは
3. コマンド
4. 目的使用例
4.1. 目的前準備
4.2. 目的Boundary-Based Registration: BBB
1. 目的
- Boundary-Based Registration (BBR) に基づいた構造MRIと拡散MRIの位置合わせをFSLで実装
2. Boundary-Based Registration (BBR)とは
Doug Greve氏によって開発されたEPI画像(拡散MRIや機能的MRI)用の位置合わせツールで、EPI画像と構造MRI画像(例:T1WI)との位置合わせで、灰白質・白質境界(Boundary)を頼りに位置合わせをする。以下のウェブサイトに、詳細な説明と分かりやすい図がある。
3. コマンド
Boundary-Based Registration (BBR) に基づいた構造MRIと拡散MRIの位置合わせをFSLで実装するには、epi_reg
を用いる。
epi_reg
のヘルプは、以下の通り。
クリックして展開
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 | Usage: epi_reg [options] --epi=<EPI image> --t1=<wholehead T1 image> --t1brain=<brain extracted T1 image> --out=<output name> Optional arguments --fmap=<image> : fieldmap image ( in rad /s ) --fmapmag=<image> : fieldmap magnitude image - wholehead extracted --fmapmagbrain=<image> : fieldmap magnitude image - brain extracted --gdc=<image> : Gradient-distortion corection warpfield --wmseg=<image> : white matter segmentation of T1 image --echospacing=<val> : Effective EPI echo spacing (sometimes called dwell time ) - in seconds --pedir=< dir > : phase encoding direction, dir = x /y/z/-x/-y/-z --weight=<image> : weighting image ( in T1 space) --nofmapreg : do not perform registration of fmap to T1 (use if fmap already registered) --noclean : do not clean up intermediate files - v : verbose output -h : display this help message e.g.: epi_reg --epi=example_func --t1=struct --t1brain=struct_brain --out=epi2struct --fmap=fmap_rads --fmapmag=fmap_mag --fmapmagbrain=fmap_mag_brain --echospacing=0.0005 --pedir=-y Note that if parallel acceleration is used in the EPI acquisition then the *effective* echo spacing is the actual echo spacing between acquired lines in k-space divided by the acceleration factor. |
基本的な使い方は、以下の通り。
1 | epi_reg --epi=<b=0画像(spin- echo EPI)> --t1=<頭蓋除去前の3D-T1WI> --t1brain=<頭蓋除去後の3D-T1WI> --echospacing=< echo spacing時間(sec)> --pedir=<位相エンコード方向> --out=<出力画像> |
4. 目的使用例
4.1 目的前準備
次のファイルを準備する。
1 2 3 4 5 6 | . ├── CSF_GM_WM_seg.nii.gz:FASTで作成したCSF, GM, WMのセグメント ├── DWI.nii.gz:拡散MRI画像(b≠0) ├── DWI_b0.nii.gz:拡散MRIのb=0画像(spin- echo EPI) ├── T1_skull_stripped.nii.gz:頭蓋除去後の3D-T1WI └── T1w.nii.gz:頭蓋除去前の3D-T1WI |
頭蓋除去とFASTを用いたCSF, GM, WMのセグメントは、以下の記事を参考にするとよい。
また、拡散MRIからb値ごとに画像を抽出する方法は、以下の記事を参考にするとよい。
4.2. 目的Boundary-Based Registration: BBB
ここで、構造MRI(3D-T1WI)空間にあるCSF, GM, WMのセグメント(CSF_GM_WM_seg.nii.gz)を、拡散MRIの空間に移動させることを考える。
そのために、まずBBBを使って拡散MRIのb=0画像(spin-echo EPI)を、構造MRI(3D-T1WI)に位置合わせする。
この時、echo spacing時間( sec)--echospacing
と位相エンコード方向--pedir
を前もって調べておく必要がある。これらの情報は、dcm2niix
を用いてDICOM形式からNIfTI形式に変換する際に出力されるJSONファイルに記載されている。dcm2niix
の使い方は、以下の記事を参考にするとよい。
準備ができたら、以下のようにepi_reg
コマンドを実行して、拡散MRIから構造MRIへ位置合わせする変換行列を生成する。
1 | epi_reg --epi=DWI_b0.nii.gz --t1=T1w.nii.gz --t1brain=T1_skull_stripped.nii.gz --echospacing=0.0380544 --pedir=-y --out=DWI2T1w |
次に、先ほどの変換行列(拡散MRI空間→構造MRI空間)の逆変換行列(構造MRI空間→拡散MRI空間)を生成する。
1 | convert_xfm -omat T1w2DWI.mat -inverse DWI2T1w.mat |
逆変換行列(構造MRI空間→拡散MRI空間)を構造MRI空間にいるCSF, GM, WMのセグメント(CSF_GM_WM_seg.nii.gz)に適用することで、セグメントを拡散MRI空間に移動させる。このとき、-applyxfm
と-interp nearestneighbour
としていることに注意する。FLIRTの使い方の詳細はこちら。
1 | flirt - in CSF_GM_WM_seg.nii.gz -ref DWI_b0.nii.gz -out CSF_GM_WM_seg_DWIspace.nii.gz -init T1w2DWI.mat -applyxfm -interp nearestneighbour |
処理前後のセグメントの様子をみてみる。
1 2 3 | fsleyes DWI.nii.gz \ CSF_GM_WM_seg.nii.gz -cm random \ CSF_GM_WM_seg_DWIspace.nii.gz -cm random |
軸位断で後頭葉付近を拡大してみる。