本文档主要基于Pytorch-Medical-Segmentation-master进行2D医学图像分割任务的开展
背景介绍医学影像是研究借助于某种介质(如X射线、电磁场、超声波等)与人体相互作用, 从而用图像的方式将人体内部的器官组织结构、密度表现出来,作为相关人员进行诊断的重要依据之一。
由于医学影像除了人眼最为敏感的形状结构特征以外,还包含了大量其他维度的容易被人眼所忽略的信息(如标准方差、能量、复杂灰度、共生矩阵特征等),而利用人工智能技术,可以将这些高维信息进行加工处理,辅助医疗诊断等工作。
算法原理 核心代码解析 数据处理 环境要求- torch=1.7.1
- torchio=0.18.79
- python=3.7
- 深度学习环境的搭建可以参考这里
train
├──image
├── source_1.jpg
├── source_2.jpg
├── source_3.jpg
├── source_4.jpg
└── ...
├──label
├── label_1.jpg
├── label_2.jpg
├── label_3.jpg
├── label_4.jpg
└── ...
- 保证进行2D医学图像分割所使用数据集的输入与标签格式一致,包括不限于".jpg"格式,只需要设置U-net中输入图片的通道数与您所使用的图片通道数一致即可。
#可以查看所使用图片的通道数
img = Image.open('image_path')
print(len(img.split()))
- 在hparam.py中配置相关训练参数
in_class = 1 #代表输入网络中的通道数为1
- 在main.py中调整输入通道数(line 94)
#根据您的数据集通道数进行修改 model = Unet(in_channels=hp.in_class, classes=hp.out_class+1) #表明输入U-net中的通道数为1 model = Unet(in_channels=hp.in_class+2, classes=hp.out_class+1) #表明输入U-net中的通道数为3
- 也可以预处理训练图片将’RGB’模式转换为’L’灰度图模式,通道数变为1,则不用修改line94。
from PIL import Image
import os
pic_path = 'train/label/'#需要修改的图片路径
save_path = 'train/labels/'#保存图片路径
pic_name = os.listdir(pic_path)#获取原路径下的图片
for i in range(len(pic_name)):
name = pic_name.pop()
print(name)
img = Image.open(pic_path + name).convert('1')#转换图片
img.save(save_path + name)
- 浅谈医学图像处理
- 医学影像到底是什么?
- 医疗是什么?AI医疗概念解析AI
- AI医学影像技术展望
[1] Risheng Wang, Tao Lei, Ruixia Cui, Bingtao Zhang, Hongying Meng, Asoke K. Nandi. Medical Image Segmentation Using Deep Learning: A Survey[J]. IET Image Processing, 2022. [2] Chen C, Zhou K. An Effective Deep Neural Network for Lung Lesions Segmentation from COVID-19 CT Images[J]. IEEE Transactions on Industrial Informatics, 2021. [3] Chen C, Zhang T, et al. Pathological lung segmentation in chest CT images based on improved random walker[J]. Computer Methods and Programs in Biomedicine, 2021, 200: 105864.



