Nipyのメモ

Nipyについてまとめていきます。

Nipy

構造的および機能的なニューロイメージングデータの解析

機能的MRI(fMRI)画像データの解析のためのライブラリ

主な機能

  1. 脳機能画像データの入出力と、ファイルパラメータの取得
  2. 脳機能画像データの形状変換
  3. 脳機能画像データの空間的前処理
  4. 血流動態モデルの作成
  5. 一般線型モデルの計算
  6. 脳機能解析アルゴリズム(主成分分析など)

インストール方法

pip install nipy

Nipyの使い方

データの入出力のサンプルです。

データを読み込む

#サンプルデータ
from nipy.testing import anatfile
#Nipy
import nipy
from nipy.core.api import Image

#サンプルデータを読み込む
img = nipy.load_image(anatfile)

#指定のファイルを読み込む
target_image = nipy.load_image("ファイル名")

header情報を取得する


header = target_img.header

print(header)

データを取得する


#データにアクセスする
data = target_img.get_data()
print(data)
print(data.shape)

出力

取得したデータをshapeで確認すると以下のようになりました。
(128, 128, 35, 288)

(x, y, z, volume)の形で、格納されていることが分かります。

coordmap

#座標情報などのファイルの基本パラメータの取得
coord = target_img.coordmap

print(coord.function_domain.coord_names)
print(coord.function_range.coord_names)
print(coord.function_domain.name)
print(coord.function_range.name)

出力

(‘i’, ‘j’, ‘k’)
(‘aligned-x=L->R’, ‘aligned-y=P->A’, ‘aligned-z=I->S’)
voxels
aligned

affine

print(img.affine)

配列arrayからイメージを作る

#arrayからイメージを作る
import nipy
import numpy as np
from nipy.core.api import Image, vox2mni

rawarray = np.zeros((43, 128, 128))
arr_img = Image(rawarray,vox2mni(np.eye(4)))

#ファイルの保存
newimg = nipy.save_image(arr_img, 'newmyfile.nii')

活性化マップをプロット

おすすめ