nnunet入门之二 (MRI图像分割)_nnunet mri,2024大数据开发网络编程总结篇

77 阅读2分钟

MIC-DKFZ/nnUNet
选择Linux环境运行该项目,Windows环境需要更改较多的参数,暂不支持。

安装环境

可以查看另一篇

数据处理

因为开源的MRI数据一般是4D的,即把所有模态拼接起来,可以用nnUNet的转换命令;私人数据一般是存放3D的不同模态,可以按照本文私人数据集(3D)的方式处理,也可以将所有模态拼接起来,用nnUNet的转换命令。

  1. 开源数据集(4D)

1.1 文件夹目录

└─Task01_BrainTumour
   │  dataset.json
   │  
   ├─imagesTr
   │      BRATS_001_0000.nii.gz
   │      BRATS_001_0001.nii.gz
   │      BRATS_001_0002.nii.gz
   │      BRATS_001_0003.nii.gz
   │      BRATS_002_0000.nii.gz
   │      BRATS_002_0001.nii.gz
   │      BRATS_002_0002.nii.gz
   │      BRATS_002_0003.nii.gz
   │      BRATS_003_0000.nii.gz
   │      BRATS_003_0001.nii.gz
   │      BRATS_003_0002.nii.gz
   │      BRATS_003_0003.nii.gz
   │      BRATS_004_0000.nii.gz
   │      BRATS_004_0001.nii.gz
   │      BRATS_004_0002.nii.gz
   │      BRATS_004_0003.nii.gz
   │      BRATS_005_0000.nii.gz
   │      BRATS_005_0001.nii.gz
   │      BRATS_005_0002.nii.gz
   │      BRATS_005_0003.nii.gz
   │      ...
   ├─imagesTs
   │      BRATS_485_0000.nii.gz
   │      BRATS_485_0001.nii.gz
   │      BRATS_485_0002.nii.gz
   │      BRATS_485_0003.nii.gz
   │      BRATS_486_0000.nii.gz
   │      BRATS_486_0001.nii.gz
   │      BRATS_486_0002.nii.gz
   │      BRATS_486_0003.nii.gz
   │      ...
   └─labelsTr
          BRATS_001.nii.gz
          BRATS_002.nii.gz
          BRATS_003.nii.gz
          BRATS_004.nii.gz
          BRATS_005.nii.gz
          ...

1.2 json文件信息

nnUNet/nnunet/dataset_conversion/utils.py里面的函数generate_dataset_json可以生成相应任务的json文件。

{ 
"name": "BRATS", 
"description": "Gliomas segmentation tumour and oedema in on brain images",
"reference": "https://www.med.upenn.edu/sbia/brats2017.html",
"licence":"CC-BY-SA 4.0",
"release":"2.0 04/05/2018",
"tensorImageSize": "4D",
"modality": { 
	 "0": "FLAIR", 
	 "1": "T1w", 
	 "2": "t1gd",
	 "3": "T2w"
 }, 
 "labels": { 
	 "0": "background", 
	 "1": "edema",
	 "2": "non-enhancing tumor",
	 "3": "enhancing tumour"
 }, 
 "numTraining": 484, 
 "numTest": 266,
 "training":[{"image":"./imagesTr/BRATS\_001.nii.gz","label":"./labelsTr/BRATS\_001.nii.gz"},{"image":"./imagesTr/BRATS\_002.nii.gz","label":"./labelsTr/BRATS\_002.nii.gz"},{"image":"./imagesTr/BRATS\_003.nii.gz","label":"./labelsTr/BRATS\_003.nii.gz"},{"image":"./imagesTr/BRATS\_004.nii.gz","label":"./labelsTr/BRATS\_004.nii.gz"},{"image":"./imagesTr/BRATS\_005.nii.gz","label":"./labelsTr/BRATS\_005.nii.gz"},...],
 "test":["./imagesTs/BRATS\_485.nii.gz","./imagesTs/BRATS\_486.nii.gz",...]
 }


1.3 转换数据

nnUNet_convert_decathlon_task -i /xxx/Task01_BrainTumour

转换的数据存在nnUNet_raw_data_base/nnUNet_raw_data/Task001_BrainTumour,此时imagesTrimagesTs里的文件名加了后缀"_0000", "_0001", "_0002", "_0003"

注意:此处Task01_BrainTumour变为Task001_BrainTumour。 2. 私人数据集(3D)

直接转换数据,将数据存放到nnUNet_raw_data_base/nnUNet_raw_data/Task001_BrainTumour

2.1 文件夹目录

└─Task001_BrainTumour
   │  dataset.json
   │  
   ├─imagesTr
   │      BRATS_001.nii.gz
   │      BRATS_002.nii.gz
   │      BRATS_003.nii.gz
   │      BRATS_004.nii.gz
   │      BRATS_005.nii.gz
   │      ...
   ├─imagesTs
   │      BRATS_485.nii.gz
   │      BRATS_486.nii.gz
   │      ...
   └─labelsTr
          BRATS_001.nii.gz
          BRATS_002.nii.gz
          BRATS_003.nii.gz
          BRATS_004.nii.gz
          BRATS_005.nii.gz
          ...

2.2 json文件信息

nnUNet/nnunet/dataset_conversion/utils.py里面的函数generate_dataset_json可以生成相应任务的json文件。

{ 
"name": "BRATS", 
"description": "Gliomas segmentation tumour and oedema in on brain images",
"reference": "https://www.med.upenn.edu/sbia/brats2017.html",
"licence":"CC-BY-SA 4.0",
"release":"2.0 04/05/2018",


![img](https://p9-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/8bcaab709c724769aee794200e9e3256~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5py65Zmo5a2m5Lmg5LmL5b-DQUk=:q75.awebp?rk3s=f64ab15b&x-expires=1771252573&x-signature=B2cSrNHECeYcTz1cSvlOji1KXhA%3D)
![img](https://p9-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/d609e8cbd2de4249b5170c19fa9238f9~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5py65Zmo5a2m5Lmg5LmL5b-DQUk=:q75.awebp?rk3s=f64ab15b&x-expires=1771252573&x-signature=LLQMBLC5jERG2Ey76vfIKCoWjlc%3D)

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以戳这里获取](https://gitee.com/vip204888)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**