医学图像分割

一、本章目标

  • 了解医学图像的特点。
  • 了解图像分割的核心任务。
  • 了解U-Net 模型的结构与特点。
  • 会使用 TensorFlow 构建与训练 U-Net 模型。

图像分割(Image Segmentation)是计算机视觉领域的经典问题之一,是将数字图像细分为多个图像子区域(像素的集合)的过程。

本章包含如下一个实验案例。

眼底血管图像分割:使用U-Net模型完成眼底血管图像分割任务,并且对训练过程与结果进行可视化。

二、眼底血管图像分割

使用TensorFlow 构建U-Net模型,在眼底血管数据集上进行训练,实现图像分割,效果图 1所示。

207e462ac93740779e1a0aefce29548a.png

图1 眼底血管图像分割的效果

 

三、图像分割

图像分割用于预测图像中每个像素点所属的类别或实体。基于深度学习的图像分割主要分为三类,下面结合图 2 进行介绍。

3a2c1ed564494c338cb7eee5eb50801f.png

图2原始图像

 

1)语义分割

语义分割(Semantic Segmentation)就是按照“语义”为图像上的每个像素点打一个标签,是像素级别的分类任务,效果如图3所示。

b33a398b72a540b48ee883983811f07c.png

图3 语义分割的效果

2)实例分割

实例分割(Instance Segmentation)就是在像素级别分类的基础上,进一步区分具体类别上不同的实例,效果如图4所示。

2f75ed2be23a4b8eb157bddd8da4a665.png

图4 实例分割的效果

3)全景分割

全景分割(Panoramic Segmentation)是对图中的所有对象(包括背景)都要进行检测和分割,效果如图5所示。

a464cf0b5edd4b2e9683bc379b1f365a.png

图5 全景分割的效果

 3.1 语义分割

语义分割的目标是给定一幅RGB 彩色图(H,W,C=3)或灰度图(H,W,C=1),输出一个分割图谱,其中包括每个像素点的类别标注(高x宽x1),具体如图6所示。

63ef0f1c5ea24d3fb4796ce62430d867.png

图7 语义分割的目标

注意:在实际应用中,分割标注的分辦率需要与原始图像的分辨率相同。

图像中的目标可以划分为五类、Peron (人)、Purse (包)、 Plant/Grass (植物/草)(人行道),Buiding /Staeture( 建筑物)。

与标准分类做法相似,此处也需要创建 One-fot编码的目标类别标注,每种类别对应一个输出通道。图7中有5个类别,所以网络输出的通道数也为5。

 

1605c7ee6aa84983a0b6ef80ee0775bd.png

图7 语义分割输出的通道

每个通道只有0或1,以person 的通道为例,红色的1表示 person 的像素,其他像素均为0。不存在同一个像素点在两个及其以上的通道均为1的情况。

可以使用相关模块的 Argmax 函数找到每个像素点的最大索引通道值,像素分类结果如图7.8所示。

 

ab4651c2106e4c528bc41a1daaecb8c7.png

图7 像素分类结果

当有一层通道重叠至原始图像时,称为Mask,表示某一特定类别存在的区域。

3.2 全卷积神经网络 

全卷积神经网络(Fully Convolutional Netwvork, FCN)把普通卷积神经网络后面几个全连接都换成卷积层,最终得到一个二维的特征映射图,并使用Softmax 层获得每个像素点的分类信息,从而解决分割问题,如图9所示。

6213447ae5e54470a95a18595860d954.png

图9 全卷积神经网络

在卷积神经网络中,经过多次卷积和池化以后,得到的图像越来越小,分辨率越来越低,直到获得高维特征图。图像分割在得到高维特征图之后需要进行上采样,把图像放大到原图像的大小,完整的图像分割模型如图10所示。 

9b40e73822bc4a3aa96bfb4693e4f75e.png

图10 完整的图像分割模型

 

3.3 反巻积

反卷积(Deconvolution)的参数和卷积神经网络的参数一样,是在训练全卷积神经网络的过程中通过BP 算法得到的。

反卷积的参数利用卷积过程Filter的转置作为计算卷积前的特征图。

反卷积的运算过程如图11所示。

9554af81806c4931813ef2b8cec823fe.png

图11 反卷积的运算过程

蓝色是反卷积层的输入,绿色是反卷积层的输出。

3.4 U-Net 模型

U-Net 模型的U形结构如图12所示,这是一个经典的全卷积神经网络。

 

f935de9febd8485eb3335b7dcb5d96c6.png

图 12 U-Net 模型的U形结构

U-Net 是医疗影像(如脑血管分割任务)中经常使用的模型。U-Net 模型结构的两个特点是U形网络结构和跳层连接。

U-Net 模型的左侧为降采样,右侧为上采样。上采样产生的特征图与降采样对应层产生的特征图进行连接操作。图7.12 中间的4个箭头表示有4次跳层连接。

图像分割的掩膜需要进行编码压缩,U-Net采用 RLE 压缩方式。

采用 RLE (Run-Length Encoding)形成长度编码,原理是将一个扫描行中的颜色值相同的相邻像素用一个计数值和那些像素的颜色值来代替。例如,aaabccccccddeee 可以用 3a1b6c2d3e来代替。拥有大面积、相同颜色区域的图像,使用RLE 压缩方法非常有效。

图像分割领域其他的神经网络模型有 SegNet( Semantic Segmentation )、DeconvNet 等。

四、代码实现

4.1 实验目标

(1)能够使用 OpenCV 对图像进行预处理。

(2)能够使用 TensorFlow 对数据进行增强操作。

(3)能够使用 TensorFlow 构建 U-Net模型。

(4)理解U-Net 模型的基本组成单元及工作机制。

(5)掌握模型训练过程中基本的调参方法。

4.2 代码

这次实验我大创项目以及Python课设做了一遍了,距今已经6个多月忘记差不多了,环境啥的我也不会搞。需要部分源码可以私聊,这里就不提供了。展示一下实验结果,如图13。

cc4325adeb1d422e8611bd858a6d57f4.png

图13 实验结果检测

当然,如果确实需要的话,点击链接就可以下载。 

 五、总结

在当今医疗技术飞速发展的时代,结合传统医学和现代技术,特别是深度学习领域的进步,为中医舌诊提供了新的发展机遇。基于深度学习的中医诊断舌象分割系统旨在通过计算机视觉技术实现对舌头图像的自动识别和分析,提高中医舌诊的准确性和客观性。

该系统的核心在于应用了全卷积网络(FCN)和U-Net模型。FCN模型能够实现图像的端到端学习,通过上采样操作恢复图像尺寸,进行像素级的分类。而U-Net模型则通过引入跳跃连接,有效地融合了不同深度特征,进一步提升了图像分割的准确度。这两种模型在综合应用到舌象分割任务中时,能有效提取舌象特征,为后续的舌诊提供精确的图像分析基础。

在实现过程中,我们以TensorFlow为基础构建模型,通过多层卷积、池化及上采样等操作搭建网络结构。同时,重点关注数据预处理环节,包括图像的归一化和调整大小,保证了数据输入的一致性和高质量。模型训练采用了Adam优化器和交叉熵损失函数,结合ModelCheckpoint回调函数,实现了模型训练过程中最优模型的保存和加载,确保了模型的有效性和稳定性。

除了深度学习模型的构建和训练,图像预处理技术在系统实现中同样发挥了重要作用。通过高斯模糊、阈值化处理等方法对输入图像进行降噪和增强,不仅减少了模型的计算负担,也提高了舌象分割的精度和可靠性。这一系列技术手段的应用,使得舌象分割系统能够更为准确地提取舌象特征,为中医诊断提供了强大的技术支持。

舌象分割系统的测试结果显示,该系统能够有效地对舌头图像进行分割和识别,与传统手工舌诊相比,展现了更高的准确性和一致性。该系统不仅为中医舌诊提供了新的技术手段,也促进了传统中医知识与现代科技的融合发展。

尽管取得了一定的成果,但系统仍然存在一些局限,例如对舌下静脉等细节特征的识别仍有提升空间。在未来的发展中,通过进一步优化模型结构和训练策略,结合更多中医诊断方法,我们相信,基于深度学习的中医诊断辅助系统将能够在实际应用中发挥更大的作用。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值