脳画像formatの変換で一番利用されているのはDICOMからNIfTIの変換であり、dcm2niixがよく用いられています。今回MRIcloudを利用するにあたって、NIfTIからANALYZE formatへの変換が必要となったため、FreeSurferのmri_convertコマンドを利用しました。
ANALYZE formatへの変換に限らず、CUIで簡単に操作できるため、方法について記載します。
ANALYZE formatについて
ANALYZE formatはMayo Clinicで開発されたファイル形式です。
ヘッダーファイル(.hdr)とイメージファイル(.img)のペアで構成されています。近年はNIfTI formatの方が採用されていますが、ANALYZE formatでしか読み込めないケースもあります。
ANALYZE formatへの変換はMATLABやPythonを利用する方法もありますが、dcm2niiを利用する方法が最も簡便だと考えていました。しかし、後継であるdcm2niixに開発が移行しており公式サイトにも以下のように記載があります。
Important note: dcm2nii is obsolete. While I hope it is generally robust and useful, active development has moved to dcm2niix. In general, dcm2niix is typically better suited for modern DICOM images. On the other hand, dcm2nii is useful for archival studies with legacy proprietary format that predated DICOM. This software is provided under the BSD 2-Clause license.
https://people.cas.sc.edu/rorden/mricron/dcm2nii.html
しかし、dcm2niixではNIfTI→ANALYZEの変換はできません。また、MacOS Catalina以降では下記のようにセキュリティに引っかかって起動できません。MRIcroGL/dcm2niixのインストールについては該当ページをご参照ください。
mri_convertコマンド
コマンドは公式サイト:mri_convertを参考にしています。
mgz → NIfTIなどの1:1での変換では下記のコマンドで変換が可能です。
mri_convert 【入力するファイル】 【出力するファイル】
例:mgz format を NIfTI format(test001.mgzをtest001.nii)に変換する。
mri_convert test001.mgz test001.nii
この場合 Current directryに変換後のファイルが出力されます。
多対一での変換の際は、変換のファイル形式を指定した上で、PATHを指定して変換しています。
mri_convert –in_type 【入力するフォーマット】 –out_type 【出力するフォーマット】 【入力するファイルのPATH】 【出力するファイルのPATH】
特にANALYZE formatを変換する際は、ANALYZE format自体に左右の指定がないため –out_orientationで設定を行います。入出力のフォーマットの指定はサイトの”Specifying the Input and Output File Types”を参照してください。
mri_convert –in_type 【入力するフォーマット】 –out_type 【出力するフォーマット】 –out_orientation 【出力する画像の方向】 【入力するファイルのPATH】 【出力するファイルのPATH】
例:NIfTI formatをANALYZE format (test001.niiをtest001.img, test001.hdr, test001.mat)に変換する。
mri_convert –in_type nii –out_type analyze –out_orientation RAS /Users/hal0328/freesurfer/TestSubject/test001.nii /Users/hal0328/freesurfer/TestSubject/test001_analyze/test001.img
ここで用いている–out_orientationは3文字の文字列で規定されます。
文字列の1番目は列を増やす方向、2番目は行を増やす方向、3番目はスライスを増やす方向です。
文字列に使用できる文字はR, L, P, A, I, Sで、Right or Left, Posterior or Anterior, Inferior or Superiorの組み合わせで指定できます。NIfTIの撮像方向に合わせ、出力先のANALYZE formatで上下左右の反転が起きないよう指定してください。
–out_orientationを RAS とLASにしてANALYZE formatを出力し、MRIcroGLで確認するとNIfTI→ANALYZEでLASでは左右が反転してしまっているのがわかります。前後方向や頭尾方向は一致しています。
test001.nii (NIfTI format)をMRIcroGLで表示。
test001RAS.imgとtest001LAS.img (ANALYZE format)をMRIcroGLで表示。
解説は以上です。スクリプトを書けば、複数ファイルの変換を一括で行うことも可能です。
コメント