基于改进U-Net的宫颈细胞核图像分割

阅读: 评论:0

基于改进U-Net 的宫颈细胞核图像分割
张 权,  陆小浩,  朱士虎,  金玫秀,  王 通
(江苏师范大学 物理与电子工程学院, 徐州 221116)通讯作者: 朱士虎摘 要: 原始的U-Net 采用跳跃结构结合高低层的图像信息, 使得U-Net 模型有良好的分割效果, 但是分割结果在宫颈细胞核边缘依然存在分割欠佳、过分割和欠分割等不足. 由此提出了改进型U-Net 网络图像分割方法. 首先将稠密连接的DenseNet 引入U-Net 的编码器部分, 以解决编码器部分相对简单, 不能提取相对抽象的高层语义特征.然后对二元交叉熵损失函数中的宫颈细胞核和背景给予不同的权重, 使网络更加注重细胞核特征的学习. 最
后在池化操作过程中, 对池化域内的像素值分配合理的权值, 解决池化层丢失信息的问题. 实验证明, 改进型U-Net 网络使宫颈细胞核分割效果更好, 模型也越鲁棒, 过分割和欠分割比率也越少. 显然, 改进型U-Net 是更有效的图像分割方法.关键词: 深度学习; 卷积神经网络; 改进型U-Net; 宫颈细胞核分割; 图像信息处理
引用格式:  张权,陆小浩,朱士虎,金玫秀,王通.基于改进U-Net 的宫颈细胞核图像分割.计算机系统应用,2021,30(4):39–45. /1003-3254/7862.html
Cervical Nucleus Segmentation Based on Improved U-Net
ZHANG Quan, LU Xiao-Hao, ZHU Shi-Hu, JIN Mei-Xiu, WANG Tong
(School of Physics and Electronic Engineering, Jiangsu Normal University, Xuzhou 221116, China)
起重安装Abstract : The original U-Net integrates a jumping structure with high-level and low-level image information, which makes the U-Net model perform well in segmentation, but the results still present poor segmentation, over-segmentation,and under-segmentation at the edges of cervical nucleus. Then an improved U-Net network for image segmentation is proposed. First, the densely connected DenseNet is introduced into the encoder of U-Net to solve the problem that the encoder is too simple
to extract abstract high-level semantic features. Then different weights are given to the cervical nucleus nuclei and background in the binary cross-entropy loss function, so that the network pays more attention to the learning of nuclear characteristics. Finally, during the pooling operation, reasonable weights are assigned to the pixel values in the pooling domain to avoid losing information in the pooling layer. Experimental results reveal that the improved U-Net network can behave better in cervical cell segmentation with a more robust model, and the proportions of over-segmentation and under-segmentation are also smaller.
Key words : deep learning; Convolutional Neural Network (CNN); improved U-Net; cervical nuclear segmentation; image information processing
宫颈癌作为一种十分恶性的肿瘤, 严重影响着广大女性的身体健康. 近年来, 宫颈癌在女性患癌比例中较高, 发病率也在逐渐升高, 同时, 宫颈癌也成为
女性癌症中死亡率较高的疾病, 由此, 研究如何论断和宫颈癌成为全世界的重要课题. 然而病理医生观察一张影像要从很多的正常细胞中鉴别出是否
计算机系统应用 ISSN 1003-3254, CODEN CSAOBN
E-mail: Computer Systems & Applications,2021,30(4):39−45 [doi: 10.15888/jki.csa.007862] ©中国科学院软件研究所版权所有.
Tel: +86-10-62661041
① 基金项目: 江苏省现代教育技术研究课题(2017-R-54486)
Foundation item: Research Project of Modern Educational Technology in Jiangsu Province (2017-R-54486)收稿时间: 2020-08-11; 修改时间: 2020-09-03; 采用时间: 2020-09-11; csa 在线出版时间: 2021-03-30
发生癌变, 这本身就相当困难, 再加之患者人数相对众多, 拥有医学病理知识的医生数不足, 且医生存在主观判断和客观疲劳等诸多因素, 使得医疗市场对自动阅片、判读患者病症是否异常的诊断技术尤为迫切. 近些年来, 机器学习、深度学习与人工智能等专业词汇, 无论在科研界亦或是寻常生活中, 无不被时常提起. 在这些技术的加持下, 数字影像技术得到了快速发展, 尤其是医学影像技术的发展十分迅猛.高清的医学图像使得医生能够高质量地阅片, 相比以前影像质量, 大大降低了误诊率. 再加上通过TBS 规则和宫颈癌细胞观察, 不同的宫颈癌细胞与正常的宫颈细胞在细胞核部分有比较明显的差异[1]. 这说明, 宫颈细胞核本身包含了大量可以判别异常的特征. 正是基于此, 运用深度学习技术, 围绕以医学图像中宫颈细胞细胞核为分割对象来展开相关研究[2],成为医学影像论断的研究热点.
1  研究现状
早期的宫颈细胞筛查多是通过细胞学检测的方法,通过采用液基制片方式处理宫颈细胞, 接着采取细胞学检测的方法判断宫颈细胞是否癌变[3]. 随后, 大多数研究者对于宫颈细胞的研究多是采用传统图像分割,如水平集分割等手段[4], 或是基于宫颈细胞图像特点的人工设计特征加以机器学习分类器来识别和检测宫颈癌变细胞. 然而, 传统分割方式存在分割精度不够, 人工设计特征不够完善导致分类器效果不佳等问题也反映出这些方式的局限性. 为了自动高效地筛查和识别宫颈细胞, 深度学习(deep learning)技术被提出了, 依托于大数据和高速硬件算力的支持下, 取得了高速的发展, 相较于传统机器学习而言, 深度学习拥有强大的特征表征和学习能力, 文中正是运用此特点来对宫颈癌变细胞的细胞核进行分割识别.
2015年, U-Net网络结构被提出来, U-Net网络是基于全卷积神经网络(Fully Convolutional Nerual network, FCN)的一种语义分割网络[5,6]. 经过这些年发展完善, U-Net成为比较经典的分割网络, 具备很多优势. 首先,从设计上来说, 它相对对称的网络结构优秀且有效的点在于结合了深浅层特征. 其次U-Net为弥补高层语义特征分辨率不足的问题, 采用了上采样高低信息融合的操作使通道信息互接, 而不是FCN中对应特征图信息的简单相加. 不仅如此, U-Net还在每层上采样信息融合后, 用两层卷积提取两种特征信息, U-Net的这种做法使得高层语义特征信息与低层高分辨率特征信息更加杂糅, 更加抽象, 并且相较于未融合低层信息的网络多了高分辨率的低层信息. 由于U-Net的这些特点使其得到的分类定
位结果更加准确, 边缘分割效果更好.
但是经过实践证明, U-Net还是存在一些问题. 其一, 在U-Net编码器部分, 使用的是原始网络层数较少、结构较为简单的卷积神经网络, 这样简单的网络在分类任务上效果不太理想, 难以提取图像中一些更为抽象的高层特征且不能够充分利用全图像的信息,编码网络的不足会使得最终的分割结果不够精准. 其二, 由于宫颈细胞细胞核大小不一且占据图像中较小部分, 原始的网络难以实现对细胞核特征的学习. 其三,在进行池化操作时容易丢失数据, 导致U-Net的分割效果不如人意, 针对这些问题有必要对U-Net进行改进, 力求改善或解决存在的问题.
2  存在问题与解决思路
由以上分析可见, U-Net网络主要存在3个问题,分别是U-Net编码器相对简单、损失函数Loss不够优秀、池化层丢失信息, 就这3个问题提出如下解决思路.
(1)因原始U-Net编码器部分相对简单, 导致不能提取相对抽象的高层语义特征用于分割定位, 将稠密连接的DenseNet引入U-Net的编码器部分, 使得网络能够提取更为抽象的语义信息和融合各通道信息, 便于提升后续解码器的分割效果.
(2)通过分析宫颈细胞核数据特征, 提出一种改进的Loss损失函数的方法来优化网络. 通过对在宫颈细胞
核和背景的二分类问题中使用的二元交叉熵损失函数给予两个目标不同的权重, 使网络更加注重任务目标细胞核特征的学习, 还引入了交并比(Dice)来强化网络对于宫颈细胞核边缘和分割细节的学习, 提升了分割边缘和细节的效果.
(3)进一步通过对传统池化层的改进, 使得一定程度上弥补了原始池化层丢失信息的不足, 从而得到了更好的分割效果.
3  改进型U-Net
基于上述解决思路, 针对U-Net编码器相对简单、
计算机系统应用2021 年 第 30 卷 第 4 期
损失函数Loss 不够优秀、池化层丢失信息, 提出以下具体解决方案.
3.1  网络改进
原始的U-Net 网络在编码器部分使用的是较为简单的提取特征网络, 又由于医学图像数据较少, 较深的网络难以训练, 较复杂的网络容易过拟合. 所以采用网络各层信息充分融合的DenseNet 中DenseBlock 改造原始U-Net 的编码器部分[7]
.
Huang 等在文献[8]中提出了一种称为DenseNet 的新型架构, 相比于ResNet 进一步利用近路连接的效果将所有层直接互连在一起. 在这种新颖的架构中, 每层的输入由所有较早层的特征映射组成, 其输出传递给每个后续层. 特征映射与深度级联聚合. DenseBlock 结构图如图1所示. 在传统卷积神经网络中, 假设有L 层, 那么它就会有L 个连接, 但是在DenseNet 中会有L (L +1)/2个连接. 简单说就是每层输入是前面所有层网络的输出. 如图1所示: x 0是输入Input, 此时H 1的输入是x 0 (Input), H 2的输入是x 0和x 1 (x 1是H 1的输出), 以此类推. DenseNet 公式如式(1):
[x 0,x 1,···,x l −1]式中, 代表0到l –1层各层输出的特征图(feature map)作通道合并的concatenation 操作.H l 操作中包括批规范化(batch normalization), 激活函数ReLU 和大小为3×3的卷积.
Input
x 0
x 1
x 2
x 3
珊瑚姜
x 4
H 1
H 2
H 3
H 4
图1    DenseNet 中DenseBlock 结构图
DenseNet 设计有以下几个优点及其原因: (1)网络相对于GoogLeNet 更窄[9], 相对于ResNet 参数更少,这是由于DenseBlock 的设计中, 每个卷积层输出的feature map 数量都比较少(一般小于100), 而不像其他网络动辄几百上千. 由于稠密连接的原因, 使得它减小参数的同时又能够更有效地利用特征. (2) DenseNet 这种连接方式相当于每层都直接连接input 和Loss, 这
样就会让特征和梯度传递更加有效, 缓解梯度消失问题, 而且分类时可以直接用到前面低层的特征.
使用DenseBlock 组成DenseNet 结构如图2所示,图中包含3个DenseBlock, 每个DenseBlock 中特征图大小统一, 方便作通道连接操作.
Input
Prediction
Dense Block 1
Dense Block 2Dense Block 3
“Horse”
图2    DenseNet 结构图
将DenseNet 来替换原始的U-Net 编码器部分, 使其能够提取和利用更加抽象有用的图像特征, 具体使用见下文实验中模型结构介绍.
3.2  损失函数改进
原始的U-Net 网络将输出值通过Softmax 分类器得到与原图尺寸一样的预测Mask 标签图, 这张图的每一个像素位置都是该位置是否是细胞核的概率值. 网络通过预设的损失函数, 计算预测图与Mask 标注图之间的差异, 再通过反向传播, 相应的梯度优化方式, 迭代更新出U-Net 中各个卷积核的最佳权值参数.
图像分割任务从单个像素的角度看, 是一个分类任务. 对于神经网络中分类任务常用交叉熵损失函数,文中研究的目标是分割出宫颈细胞中的细胞核部分,除了核其他都是背景, 这是一个二分类问题, 所以使用二元交叉熵作为网络的损失函数. 公式如式(2):
ˆy
i 式中, 和y i 分别是在第i 个像素位置上网络模型预测的值和人工标注的值. 分析医学图像数据, 特别是针对宫颈细胞图, 所要分割的细胞核目标相比背景所占比例较小, 这样就会导致作为像素级分类的该任务中, 训练样本像素类别极其不平衡. 此时作为损失函数的二
元交叉熵就会给予背景更多的累积Loss, 这样导致网络在训练学习中就会学到更多的背景特征, 而对目标细胞核的特征就会有所损失, 这是设计网络所不愿意看到的. 所以针对这个问题, 对损失函数作些修
改, 设置两个超参数, 分别给细胞核和背景相应的Loss 部分加上不同的权重. 公式如式(3):式中, α表示细胞核权重值, β表示细胞质、杂质等背
2021 年 第 30 卷 第 4 期
计算机系统应用
景的权重值, 这两个超参数在训练过程中的验证集上作修整(一般取的α是β的3倍). 设置时, 一般会将α值相较于β值设置大一些, 使得网络学习更多的细胞核特征.
电话控制器虽然加了权值的二元交叉熵损失函数使得网络更多的关注细胞核的特征, 但是它只考虑到单像素分类问题, 没有考虑到全局信息, 所以在损失叠加回传的时候, 网络更为关注那些损失值很大的像素点, 这样分割出来的结果使得细胞核边界相对模糊, 形状和真实标注有较大差异, 细胞核边界分割效果不佳.
所以考虑到分割的边缘效果问题, 采用图像分割中常用的分割评价标准IoU 作为Loss 函数的一部分指导网络去关注分割边缘. IoU 的表达式如式(4)所示.由于该式不可导不能直接作为网络的损失函数使用,所以对其进行简单修改得到Soft-Dice 作为间接损失函数. 公式如式(5).
ˆy i y i 式(5)中, 和分别是在第i 个像素位置上网络模型预测的值和人工标注的值. 该式计算的是分类概率图与真实标注图所有像素点的误差, 能够最大限度衡量分类概率图之间的相似性, 使得细胞核分割的结果变得相对清晰, 且分割的形状与真实形状差异变小, 分割效果提升.
为了更好地发挥上述两种Loss 的各自优势和弥补其各自的不足
, 把两种Loss 函数按一定的线性方式进行组合, 组合成最终的合并Loss, 公式如式(6).
γδ式(6)中, 为了简化Soft-Dice 的计算, 所以对其取对数进行计算, 又因为它是衡量两个分布之间的相似程度的, 所以用一减去它的值作为回传损失. 式中是带权重的二元交叉熵损失函数的系数, 是式子后一项的系数, 这两个系数作为超参数在训练时的验证集上作修整(一般分别取0.6和0.4). 该式结合了二元交叉熵损失函数与网络预测图和真实标注Mask 图之间的重合率Soft-Dice 损失函数, 所以在训练网络
中最小化该损失函数, 等价于提高每个像素点分类准确率, 同时也提高网络预测图与真实标注Mask 图之间的重合率.
U-Net 网络最终输出结果是一个与原图大小一致的概率图, 图上每一个像素点的值代表它是否属于细胞核的概率值, 为了得到一个与真实标注一样形式的二值图, 需要在网络输出部分添加一个阈值, 该阈值在网络训练过程中的验证集上获得, 当像素点的值高于该阈值时设为1, 相反设为0, 再把每个像素值乘以255, 就可以得到目标分割图了.
3.3  池化层改进
基于卷积神经网络的特征提取网络中, 池化层用来减少参数、缓解过拟合现象、增大感受野范围和提高部分泛化能力等, 但是池化无可避免地会使网络丢失特征信息. 并且常用的平均池化相当于池化域内像素权值一样, 使得每个像素重要性一致, 这与真实情况不符, 不能很好地反映全局特征. 除此之外, 最大值池化会将非最大的池化域内所有信息都丢失, 这也是不稳妥的做法.
所以基于以上的考虑, 在一定要使用池化操作的前提下, 将池化操作进行改进, 使得其对池化域内的像素值分配合理的权值, 充分考虑和利用好特征值, 使网络提取的特征更能表现出全局性. 改进的池化算法公式如式(7):
µi j µi j 式(7)中
, 表示池化因子, 通过它优化平均池化操作,使得池化域内各个像素值按其重要性分配到合理的权值, 让网络中特征图经过池化层时, 提取的图像特征可以更加准确. 池化因子计算公式如式(8):
F i j 式(8)中, c 代表池化操作大小的边长, 代表卷积特征图中大小为c ×c 池化域中对应的像素值, a 代表该池化域内像素值总和, 是标准差. 这样的计算考虑到了池化域内所有值的重要性, 避免了平均池化弱化特征和最大池化丢失特征的问题, 进而提高了宫颈细胞核分割的准确性. 池化举例比较如图3所示.
4  实验
为验证改进型U-Net, 进行实验的平台是基于Python 的深度学习库PyTorch [10]. 使用的软硬件环境参数如下: CPU 为Intel Core i7-6700HQ 、GPU 为单卡
计算机系统应用
2021 年 第 30 卷 第 4 期
GTX960M、内存为8 GB、操作系统环境为Windows 10企业版2016长期服务版、编程语言为Anaconda3的Python3.6.
图3    池化举例
手动皂液器4.1  网络结构
原始的U-Net网络由于编码器部分, 层数较少结构较为简单, 所以对U-Net特征提取部分采用通道信息融合更为优秀的DenseNet网络中DenseBlock模块.原始的DenseNet网络结构图见表1. 表中k值代表每个DenseBlock中每层输出的特征图feature map个数.由于DenseBlock设计, 后面几层是前面所有层作通道连接得到, 会使得后面几层通道特别多, 所以在每个DenseBlock中的3×3卷积前用一个1×1的卷积层(bottleneck layer)来降维和融合各通道信息(默认输出通道是4k个). 为了进一步压缩参数, 在每两个Dense-Block之间也加了一个1×1卷积(translation layer), 默认减少一半通道.
考虑到实验环境和实验数据相对不充足的原因,选用DenseNet-121来作为改进U-Net的编码器部分. 修改方式如下: 首先把原始DenseNet-121的classification layer去掉, 用1×1的卷积替换, 输出是大小为32×32的特征图, 个数是输入通道数的一半, 并且使用改进的池化层替换原始的最大值池化和均值池化.这样就完成了改进型U-Net网络的编码部分, 后部的反卷积和跳跃结构保留, 修正矩阵大小, 以适应网络前层的修改.
表1    DenseNet网络结构表
层名称输出尺寸DenseNet-121(k=32)
卷积层512×5127×7卷积, 步长为2
池化层256×2563×3改进的池化层, 步长为2 DenseBlock 1256×256
电厂脱硫滤布[
1×1卷积
3×3卷积
]
×6 Transition layer 1
256×2561×1卷积
128×1282×2改进的池化层, 步长为2 DenseBlock 2128×128
[
1×1卷积
3×3卷积
]
×12 Transition layer 2
128×1281×1卷积
64×642×2改进的池化层, 步长为2 DenseBlock 364×64
[
1×1卷积
3×3卷积
]
×24 Transition layer 3
64×641×1卷积伤流液
32×322×2改进的池化层, 步长为2 DenseBlock 432×32
[
1×1卷积
3×3卷积
]
×16编码器
最后一层
32×32
1×1卷积, 通道数是前层
输出1024的一半512
4.2  模型实验
实验流程图如图4所示.
(1)图像预处理: 对数据集图像进行裁剪、图像位深、直方图均衡化和高斯滤波等.
(2)训练数据集增强: 分别应用3种翻转、3种旋转、平移、缩放和随机裁剪等.
(3)训练U-Net图像分割模型: 将划分好的训练集数据经过预处理和数据增强后, 与对应的标注图成对的送入U-Net网络进行学习, 训练网络数据时, 当训练集中的Loss值不断减小至较小值, 且变化趋于稳定时,说明该网络已经收敛, 保存此过程中精确度最高的模型权重为Best Model. 训练模型实验流程图如图5所示.
在本实验中, 使用DenseNet改进U-Net编码器部分的网络, 并且采用改进的损失函数和池化层操作, 用DenseNet-121在ImageNet上的预训练权重初始化网络编码器部分的参数训练网络. 将学习率(learning rate)设置为自适应衰减学习率[11], 初始为0.01, 每100次迭代学习率降低0.1. 使用带动量的梯度下降方
2021 年 第 30 卷 第 4 期计算机系统应用

本文发布于:2023-06-15 17:47:58,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/2/139430.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:网络   分割   特征   细胞核   信息   图像
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图