色彩空间变换和基于距离变换的分水岭算法在白细胞图像分割中的应用

2019-07-25 08:27赵晓晴刘景鑫张海涛胡笑含李大军李慧盈
中国医疗设备 2019年7期
关键词:白细胞滤波像素

赵晓晴,刘景鑫,张海涛,胡笑含,李大军,李慧盈

1. 吉林大学 计算机科学与技术学院,吉林 长春 130012;2. 吉林大学中日联谊医院 放射线科,吉林 长春 130033;3. 吉林大学第一医院 放射线科,吉林 长春 130021;4. 吉林省人民医院 消化内二科,吉林 长春 130021

引言

计算机辅助诊断已经成为现代生物医学工程领域研究的一大热点,该手段不仅可以达到检验检测结果的高度客观性,而且能够大大减轻医师的劳动强度,进一步提高病理检测的效率和诊断的准确性。血液中的白细胞是人体免疫系统抵御病菌的侵袭、治愈机体的受伤部位、抵御和消灭病原以及微生物的入侵方面机制的一道保障防线。利用图像分割算法对白细胞显微图像进行处理分析,自动识别白细胞,根据分割结果对其进行分类,并统计各类白细胞数目等信息诊断是否有疾病以及患病程度,所以对白细胞分割计数具有医学检验意义。

计算机图形图像处理技术被广泛应用于医学领域,为了更精确地提取图像特征信息,国内外学者提出了很多种改进方法。Ghosh等[1]根据白细胞核的形状特征,运用贝叶斯分类器对白细胞进行分类,其原理是利用数字图像处理中的数学形态学将血液细胞显微图像中的白细胞及其细胞核进行识别、提取和分类。Xie等[2]集合随机游动原理和神经网络原理提取细胞核结构,并且利用白细胞的形态特征对其进行分类。Chen等[3]提出了一种轮廓感知的全卷积神经网络(Full Convolutional Neural Network,FCN)[4]——DCAN,用于从组织学图像中分割腺体,以改善腺癌的自动诊断。它们还用轮廓模拟了损失,使得他们赢得了2015年MICCAI腺体分割挑战[5],证实了强化学习轮廓的优势。李舒等[6]结合医学专业知识分析白细胞特征,同时对血液细胞中的细胞核、细胞质和细胞膜进行分割,从而达到各个成分的分离,并且进一步实现了白细胞复原。最近,Xu等[7]提出了一种三分支网络来分割结肠组织学图像中的单个腺体。Mask R-CNN[8]被认为是自然图像实例分割中较好的技术,它使用Faster R-CNN[9]对对象边框进行分类,然后在每个框内应用FCN[4]分割单个图像。

目前,针对急性淋巴细胞白血病(Acute Lymphoblastic Leukemia,ALL)患者血液细胞显微图像的白细胞提取及粘连白细胞分割技术仍需进一步完善。本文提出了一种基于色彩空间转换的目标检测方法,提取图像中的白细胞,并使用基于距离变换的分水岭算法分析图像信息以分离粘连细胞,进一步优化分割结果。

1 实验方法

1.1 提取白细胞

提取白细胞作为ALL显微图像分割的第一步,就是将图像中的红细胞和血小板置为背景,白细胞置为前景。在血涂片中,白细胞与红细胞在颜色上存在差异,与血小板在大小上存在差异,利用该特点检测并提取白细胞。

1.1.1 中值滤波

在提取白细胞之前需要对图像进行中值滤波[10],在尽量保留白细胞边缘细节特征的条件下对显微图像中的噪声进行抑制,以提高后续图像分析和分割的有效性和可靠性。中值滤波作为非线性数字滤波器技术,需要检查输入信号中的采样并判断它是否代表了信号,使用奇数个采样组成的观察窗实现这项功能,即选取像素点的灰度值由其周围像素点灰度的中值来代替[11-12],见算法1。通过运用数理统计学中的中间值方法,对原始图形进行非线性信号处理,以降低噪声对图像的干扰,增大信噪比。

算法1中值滤波算法为:

Input: image X of size m×n, kernel radius r

Output: image Y as X

for i = r to m - r do

for j = r to n - r do

initialize list A[]

for a = i-r to i+r do

for b = j-r to j+r do

add X(a, b) to A[]

end for

end for

sort A[] then Y(i ,j) = A[A.size/2]

end for

end for

1.1.2 图像色彩空间转换

在计算机视觉和图像处理领域,色彩空间指的是组织色彩的特定方式。一个色彩空间由颜色模型和映射函数构成,颜色模型能代表像素的值,而映射函数将颜色映射到可以被代表的所有颜色的集合。RGB是应用最广泛的色彩空间,其模型结构如图1所示。

图1 RGB色彩空间模型

HSV色彩空间是基于人类对颜色的感知而提出来的颜色空间。H、S、V、分别代表色调(Hue)、色彩饱和度(Saturation)和明度(Value),它是一种将RGB色彩空间中的点在倒圆锥体中的表示方法。HSV色彩空间圆锥模型如图2所示。

图2 HSV色彩空间模型注:圆锥组成的子集代表HSV颜色空间中的每一个元素,在圆锥的顶点处,V=0,H和S无定义,代表黑色;圆锥的顶面中心处V=255,S=0,H无定义,代表白色。

彩色图像一般用RGB三个分量表示,同时与亮度有关,当图像亮度发生变化,三个分量随之变化,因此RGB色彩空间更加适合于显示系统,并不适合于血液细胞显微图像处理。而HSV则与人眼的色彩感知相近,本文采用HSV颜色空间,对亮度和色彩分别进行处理,其中亮度与图像的色彩信息无关,而色调和饱和度则与人的感知密切相关。实验中的色彩空间转换方法,算法如下:

1. if R=max, H=(G-B)/(max-min)

if G=max, H=2+(B-R)/(max-min)

if B= max, H=4+(R-G)/(max-min)

2. H=H×60

if H<0, H=H+360

3. V=max(R, G, B)

4. S=(max-min)/max

根据算法2对血液细胞显微图像进行色彩空间转换,并提取两个色彩空间中的R、G、B、H、S、V六个分量,如图3所示。RGB空间的三个分量没有完全地将红细胞、血小板和白细胞区分开,而HSV空间的三个分量更适合于血液细胞的边缘检测和分割。

图3 RGB和HSV色彩空间分量提取结果注:a是滤波后的原始图像;b~d是R、G、B分量提取结果;e~g是H、S、V分量提取结果。

1.1.3 白细胞检测

由于HSV颜色空间的三个分量对血液细胞显微图像更为敏感,实验基于HSV色彩图像检测并提取白细胞,见算法3:基于cv2.inRange函数滤除红细胞;基于cv2.bitwise_and函数将RGB图像中的背景和红细胞置黑,突出白细胞和血小板;基于cv2.threshold函数二值化提取结果;基于cv2. findContours函数标记前景轮廓,并依照面积升序排列轮廓;滤除面积小于6000像素点的血小板,以进一步突出白细胞。

图像中的白细胞呈紫色,所以将(H,S,V)三元组的阈值设置为(125,43,46)~(155,255,255),该色带区间的像素点突出了白细胞和血小板。将提取结果二值化后进行前景轮廓标记,并以面积为依据升序排列轮廓。遍历所有轮廓,面积大于6000像素点的前景视为白细胞,进行提取,否则视为血小板。

1.2 分离粘连白细胞

分水岭算法是一种数学形态学图像分割方法[13],最初用来处理简单的二值图像,随后被用作灰度图像分割。分水岭算法的计算速度较快,对微弱边缘有较好的分割效果,所以本文采用分水岭算法分割粘连细胞[14],并将其与距离变换[15]结合使用。

1.2.1 距离变换

距离变换是针对二值图像的一种变换。在二维空间中,一幅二值图像可以认为仅仅包含目标和背景两种像素,目标像素值为1,背景像素值为0。距离变换的结果不是另一幅二值图像,而是一幅灰度级图像,即距离图像,图像中每个像素的灰度值为该像素与距其最近的背景像素间的距离。

距离变换算法有欧式距离和非欧式距离两类,由于非欧式距离往往不满足精度要求,实验中采用欧式距离变换算法。二维数组AM×N=[aij]可以表示一个大小为M×N的二值图像,其中目标点的像素为aij=1,背景点的像素为aij=0。假设背景像素集合是B={(x,y)|aij=0},目标像素集合是F={x,y|aij=1},则对A集合里面所有像素点(i,j)按照公式(1)进行计算就是实验中采用的距离变换。公式(2)解释了欧式距离计算方法。

1.2.2 分水岭分割算法

分水岭算法是把数字图像映射为地形地貌图,地形图中的海拔高度用原图像中的像素点的灰度值来表示,利用边界点将其划分成山和盆地,然后使用浸水模型[16]对图像进行分割:首先找出图像中所有的局部极小值点;然后从极小值点开始将地表匀速浸入水中,随着水量的增加,积水盆地开始慢慢向外扩张,在积水盆地交集处构建水坝,预防两个积水盆地汇合在一起,当整个地形完全被水浸没后,这时的水坝就形成了分水岭。基于距离变换的分水岭分割算法如算法4:使用cv2.cvtColor函数将目标图像变换成灰度图像;阈值化处理;使用cv2.morphologyEx函数进行重建的开闭操作,消除细小边界;距离变换;使用cv2.watershed函数求出基于距离变换的分水岭分割结果。

基于距离变换后的分水岭算法对粘连细胞的分割有较好的效果,但过分割现象仍然存在,如图4所示。

图4 基于距离变换的分水岭算法对粘连细胞的分割结果注:a~c分割结果较好;d中出现了过分割现象。

2 实验结果与分析

实验算法在Ubuntu 16.04操作系统下,基于Pycharm Community IDE,采用Python 3.0语言进行编写和测试。实验数据来源于意大利米兰大学提供的公开血液样本显微图像数据集——ALL_IDB1,该数据集针对急性淋巴细胞白血病。

2.1 中值滤波

研究所使用的血液细胞显微图像大小为1712×1368,根据图像尺寸选取(25,25)、(27,27)、(29,29)三种结构元素进行中值滤波。滤波后的显微图像如图5所示。以图中标记处为例,图c处理结果较为理想,保留了细胞边界的细节特征,同时滤除了血涂片制作过程中产生的噪声,所以实验中采用(27,27)结构元素进行滤波预处理。

图5 中值滤波预处理结果注:图a是原始血液细胞显微图像;图b~d是分别是结构元素(25,25)、(27,27)、(29,29)的滤波结果。

2.2 白细胞检测与提取

将急性淋巴细胞白血病血液细胞显微图像转换至HSV颜色空间后,进行白细胞检测与提取结果如图6所示。HSV色彩空间的血液细胞显微图像中的白细胞和红细胞在颜色上有显著差异,对于周围只有红细胞和血小板的白细胞分割结果较好,但是不能准确地分割粘连白细胞,见图6d标记处。

图6 白细胞提取过程注:a是滤波后图像;b是转换至HSV色彩空间后的结果;c是白细胞检测结果;d是过滤背景后的图像;e是白细胞提取后的结果。

2.3 粘连白细胞分割

采用基于距离变换的分水岭算法分割粘连白细胞,并标记细胞边界,分割结果如图7所示。

图7 粘连细胞分割结果注:第一行是滤除背景的粘连细胞图像,第二行是分割并标记边界后的细胞图像。a~c分割结果较精确;图d~f在标记处产生过分割。

3 总结与应用前景

本文提出了使用色彩空间变换方法,将RGB色彩空间的ALL血液细胞显微图像转换至HSV色彩空间,根据颜色阈值检测并提取白细胞,并采用基于距离变换的分水岭算法分割粘连细胞,得到了较为精确的结果,但是仍然存在过分割现象。

在未来的工作中,将会研究适用于大数据处理的深度学习技术,通过该技术提取高维数据中的特征信息[17-18]。希望能够研究一种更加快速的血液细胞显微图像分割方法,能够达到较好的分割结果,同时减少过分割现象,从而应用于现代医学影像处理。

猜你喜欢
白细胞滤波像素
像素前线之“幻影”2000
白细胞
心力衰竭患者白细胞介素6、CRP表达水平与预后的相关性探讨
“像素”仙人掌
基于EKF滤波的UWB无人机室内定位研究
白细胞降到多少应停止放疗
白细胞减少是免疫力降低了吗?
高像素不是全部
一种GMPHD滤波改进算法及仿真研究
基于自适应Kalman滤波的改进PSO算法