实现SEEG电极触电的自动分割

目录

 

事先准备

操作步骤

一、图像数据预准备

二、数据导入及预准备

补充知识


事先准备

  • 数据:植入电极前的MRI(20年4月)、植入电极后的CT(20年9月)

 

  • 软件:ContactSegmentation_SYSU、3D Slicer

 

操作步骤

声明:一定要看“User Manuals for ContactSegmentation_SYSU"和fsppt

一、图像数据预准备

一开始所给数据没带.dcm后缀,想用3D Slicer export一遍(export的路径不能带中文),后来重新给的MRI就是dcm格式的,只需将文件夹重命名为“MR_T1”就好

1.1.1 import带目标dicom的文件夹

1.1.2  load目标series 

 1.1.3 在“data”Module下导出series

路径不能带中文!!!

 

数据没带.dcm后缀,解决方法一:用3D Slicer export一遍,变成dicom(export的路径不能带中文),和1.1类似;方法二:将文件后缀加上.dcm,就可以变成dicom格式

选OJESTMVN文件夹(带有188个文件)
SeriesNumber:5

 

1.3.1 FreeSurfer入门(将.dcm→brainmask.mgz)

看PPT:freesurfer--第10次--用Freesurfer进行预处理1.0--page10

过程:

1、找到freesurfer的工作目录。

打开Terminal,输入命令:

cd $SUBJECTS_DIR

pwd检查当前工作目录;

2、手动找到mysubjectdata文件夹,并在里面新建文件夹“huang_xuping",然后将“MR_T1"文件夹放入“huang_xuping"

3、Terminal输入命令:

cd huang_xuping
继续输入以下命令:
dcmunpack -src . -scanonly huang.log

dcmunpack:意为“文件打包”,表示对MR_T1的dicom序列进行打包整理,生成一个文本文件,筛选出符合freesurfer输入要求的dicom文件。
-src:是“source”是所写,表示需要访问的源文件,后面接“.”或者完整路径。
. :表示指定当前dicom文件所在路径。
-scanonly scan.log:表示浏览并生成文本文件scan.log,“scan.log”是文件名称,可以自行更改。

上述命令用于筛选出符合freesurfer输入要求的dicom文件,将用时2-5分钟,耐心等待,不能关闭终端窗口。

结果

 

4、进入MR_T1文件夹,再接着进入ScalarVolume_17文件夹:

cd MR_T1
cd ScalarVolume_17

再输入命令:

recon-all -all -i IMG0001.dcm -s  surf_huang

第二个‘-all’表示进行全部的重建过程; ‘IMG0001.dcm’表示符合要求的dcm文件之一;‘surf_huang’表示重建结果的文件夹名称

等待8-30个小时即可得到重建结果,结果在“surf_huang”中

结果在surf_huang文件夹中会生成八个子文件夹:label、mri、scripts、stats、surf、tmp、touch、trash ,如下图所示:

各个文件夹的包含关系如下:

1.3.2 将得到的brainmask.mgz  export 成‘FsBrainmask’

brainmask.mgz位于mri文件夹:

打开3D Slicer,从“data” load  brainmask.mgz

 再export成dicom格式:

二、数据导入及预准备

  • 所用的软件为ContactSegmentation_SYSU
  • Mac所用数据存放位置 MR_T1:FirstLYL→Presurgery-T1202004A→MR_T1           CT:FirstLYL→CT             FsBrainmask:FirstLYL→FsBrainmask

 2.1 数据导入与预处理

2.1.1 选择dicom类型,导入MR_T1(MR_T1里面应该直接是dicom文件!!!不能有ScalarVolume!!!否则无法配准!!!其他文件夹的导入同理

2.1.2 先将导入的dicom进行最近邻插值,对三维体数据进行重建。再进行RAS坐标变换

2.1.3 对CT和brainmask.mgz分别重复2.1.1-2.1.2

2.1.4 选择nii类型,导入MNI标准脑文件avg152T1.nii,重复2.1.2

2.2 图像配准

2.2.1 将CT配准到MRI上

Fixed Volume: MR_T1
Moving Volume: CT
InitialRadius: 0.005
MaxInterations: 1000

右边红框是配准结果

2.2.2 将FsBrainmask(大脑掩膜)配准到regCT(已配准的CT)上

Fixed Volume: regCT
Moving Volume: FsBrainmask
InitialRadius: 0.005
MaxInterations: 1000

右边红框是配准结果

2.2.3 将MRI配准到标准脑上

Fixed Volume: avg152T1
Moving Volume: MR_T1
InitialRadius: 0.0001
MaxInterations: 3000

右边红框是配准结果

三、分割电极

输入待分割的电极数,并点“segmentation”,等半天就会出电极分割的结果了,还有分割过程的数据

补充知识

括号内的是3D Slicer界面的各平面简称

1.冠状面(R)Coronal section,又称额状面。从左右方向,沿人体的长轴将人体纵切为前、后两部分的切面。这种提法只是为了在临床中将器官位置描述的更具体

2.矢状面(Y)Sagittal section,把人体分成左右两面的解剖面。

3.水平位(G)Transverse section,又称横断位,即左右、前后构成的面为水平位

标题

 

 

SEEG数据预处理的Python代码可以包括以下步骤: 1. 导入必要的Python库,如numpy、pandas、matplotlib和mne等。 2. 读取SEEG数据,可以使用MNE库中的函数mne.io.read_raw_edf()或mne.io.read_raw_brainvision()。 3. 对数据进行预处理,包括去除噪声、滤波、重采样等,可以使用MNE库中的函数mne.filter.filter_data()和mne.io.Raw.resample()等。 4. 对数据进行分段,可以使用MNE库中的函数mne.Epochs()。 5. 对数据进行特征提取,如计算功率谱密度、时频分析等,可以使用MNE库中的函数mne.time_frequency.psd_multitaper()和mne.time_frequency.tfr_multitaper()等。 6. 可以对数据进行可视化展示,如绘制原始信号、功率谱密度图、时频图等,可以使用matplotlib库中的函数进行绘制。 以下是一个示例代码,仅供参考: ```python import numpy as np import pandas as pd import matplotlib.pyplot as plt import mne # 读取SEEG数据 raw = mne.io.read_raw_edf('seeg_data.edf') # 去除噪声和滤波 raw.filter(l_freq=1, h_freq=100) # 重采样 raw.resample(1000) # 分段 events = mne.find_events(raw) epochs = mne.Epochs(raw, events, tmin=0, tmax=1, baseline=None) # 特征提取 psd, freqs = mne.time_frequency.psd_multitaper(epochs) tfr, freqs, times = mne.time_frequency.tfr_multitaper(epochs) # 可视化展示 raw.plot() plt.show() plt.plot(freqs, np.mean(psd, axis=0)) plt.xlabel('Frequency (Hz)') plt.ylabel('Power (dB)') plt.show() tfr.plot() plt.show() ``` 注意:以上代码仅供参考,具体需要根据实际数据进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值