更改最近在研究脑影像处理技术,想把ICA的结果分割成多块,至少也要分为左右半球吧,结果网上连左右半球的脑mask都没找到(也可能是我不会百度),思考一下理论上不过是一半体素为0一半为1嘛,我可以搞个对应的三维数组出来再转换成nii格式吧,搜了一下几个关于数组的知识点,最终用python做出了潦草的半侧大脑蒙版,过程就不赘述,代码如下:
import nibabel as nib
import numpy as np
import math
def creathalfbrainm(x,y,z):
x=math.floor(x/2) #x为奇数的玩意适用,中间那一层被舍掉
x1=[0 for _ in range(x+1)] #x为偶数的玩意,可以自己改个判别语句,或者这行的+1删掉
x2=[1 for _ in range(x)]
X=np.append(x1,x2)
Y=X
for i in range(y-1):
Y=np.vstack((Y,X))
Y=Y.T #令人忍俊不禁的转置orz
Z=Y
for i in range(z-1):
Z=np.dstack((Z,Y))
nii_image=nib.Nifti1Image(out_array,np.eye(4))
nib.save(nii_image, 'halfbrain.nii.gz') #可自定义文件名及路径
return Z
故,想要(61,73,61)大小的半侧脑模版只需要输入:
creathalfbrainm(61,73,61)
最终会在运行目录生成halfbrain.nii.gz的mask文件(同时会返回对应三维数组)
nii文件结果如下咯:
那么赶紧试试这个玩意能不能蒙掉一侧大脑吧!
ICA结果图如下(DMN):
使用fsl处理:
fslmaths DMN.nii.gz -mas halfbrain.nii.gz half_DMN.nii.gz
最后代码警告+意外发现搞出来的是右侧大脑蒙版:
什么你问我另一侧怎么搞?
可以改改最上面代码“x1”、“x2”变量的位置,也可以用fsl:
fslswapdim R_halfbrain.nii.gz -x y z L_halfbrain.nii.gz
over~
(突然想到了爱乐团的《半面妆》,舒缓慵懒蛮好听的)