【初心者向け】基礎&実践プログラミング

初心者がつまづきやすいところ、最短で実力が身につく方法をお伝えします。

【脳画像定量値】基本的な拡散定量値 (DTI/DKI/NODDI)

f:id:AIProgrammer:20201209201656p:plain

動かしながら学ぶ PyTorchプログラミング入門

動かしながら学ぶ PyTorchプログラミング入門

  • 作者:斎藤勇哉
  • 発売日: 2020/11/30
  • メディア: Kindle版

目次

目的

  • 脳画像解析における基本的な拡散定量値 (DTI/DKI/NODDI)を計算

導入

拡散MRIは、単に水分子の拡散状態をMRIの信号値で可視化した画像であるが、MRIの信号値は絶対量ではないので、この画像では群間比較のような相対評価はできない。そこで、拡散MRIから水分子の拡散状態を定量し、絶対量を計算する。定量方法はさまざまであり、次のような手法が提案されている。

  • 拡散テンソルイメージング (Diffusion Tensor Imaging: DTI)
    • Fractional Anisotropy (FA)
    • Mean Diffusivity (MD)
    • Axial Diffusivity (MD)
    • Radial Diffusivity (MD)
  • 拡散尖度イメージング (Diffusion Kurtosis Imaging: DKI)
    • Mean Kurtosis (MK)
    • Axial Kurtosis (AK)
    • Radial Kurtosis (RK)
  • 神経突起方位分散・密度イメージング (Neurite Orientation Dispersion and Density Imaging: NODDI)
    • Intracellular Volume Fraction (ICVF)
    • Orientation Dispersion Index (ODI)
    • Isotropic Volume Fraction (ISO)

以上の定量値は、我々が導入したMATLABで動作するソフトウェアで計算可能である。

ソフトウェアの処理

ソフトウェアが実行する処理は、次の通り。

  1. 渦電流(Eddy current)および頭の動きの補正
  2. デノイズ (Denoise)
  3. DTI定量値の計算
  4. DKI定量値の計算
  5. NODDI定量値の計算

準備するデータとディレクトリ構造

準備するデータとディレクトリ構造は、次の通り。AMICO/study/フォルダに被検者フォルダを作成する。ファイル名(拡張子を除く)は被験者フォルダと同じになるようにつける。

AMICO/
└── study
    ├── Subj001
    │   ├── Subj001.bval  # b-values file
    │   ├── Subj001.bvec  # b-vectors file
    │   └── Subj001.nii.gz  # Diffusion image
    ├── Subj002
    └── Subj003

実行

MATLABを起動し、準備した「AMICO」フォルダに移動する。AMICOフォルダをMATLABのCommand Windowにドラッグ&ドロップすることで、AMICOフォルダに移動できる。

f:id:AIProgrammer:20201209222747p:plain

「AMICO」フォルダに移動ができたら、次のコマンドを実行する。

noddi

実行すると、どこのディレクトリに対して処理をするのか問うウインドウが立ち上がるので、「AMICO」フォルダを指定。

f:id:AIProgrammer:20201209222811p:plain

これで、種々の処理が実行される。処理にかかる時間は約2~4時間程度。

f:id:AIProgrammer:20201209222828p:plain

結果

処理が完了すると、次のようなディレクトリ構造になる。

AMICO/
└── study
    └── Subj001
        ├── AMICO
        │   └── NODDI
        │       ├── drB010KAPR1_ICVF.nii.gz  # ICVF
        │       ├── drB010KAPR1_ISOVF.nii.gz  # ISOVF
        │       ├── drB010KAPR1_OD.nii.gz  # ODI
        ├── DKI
        │   ├── drB010KAPR1_Kaxi.nii.gz  # AK
        │   ├── drB010KAPR1_Kmean.nii.gz  # MK
        │   └── drB010KAPR1_Krad.nii.gz  # RK
        ├── DTI
        │   ├── drB010KAPR1_ad.nii.gz  # AD
        │   ├── drB010KAPR1_adc.nii.gz  # MD (ADC)
        │   ├── drB010KAPR1_colfa.nii.gz  # Colour-encoded FA
        │   ├── drB010KAPR1_fa.nii.gz  # FA
        │   └── drB010KAPR1_rd.nii.gz  # RD
        ├── Subj001.bval  # b-values file
        ├── Subj001.bvec  # b-vectors file
        ├── Subj001.nii.gz  # Diffusion image
        ├── drSubj001.nii.gz  # Preprocessed diffusion image
        └── maskdrSubj001.nii.gz  # Binary mask of preprocessed diffusion image

生成された定量値画像は、次の通り。

f:id:AIProgrammer:20201209201547p:plain


頑張れ!喝!!の代わりにB!ブックマークを押していただけるとただただうれしいです(^^)! ↓

動かしながら学ぶ PyTorchプログラミング入門

動かしながら学ぶ PyTorchプログラミング入門

  • 作者:斎藤勇哉
  • 発売日: 2020/11/30
  • メディア: Kindle版