-
主要利用白细胞RGB图像中G颜色分量将白细胞的细胞核与背景分离,得到比较完整的细胞核图像。该流程主要分为5个步骤(如图 1所示):(1)对原图进行对比度拉伸,得到拉伸后的图像; (2)提取拉伸后图像的G颜色分量图像; (3)二值化G颜色分量图像,标记连通域,根据连通域面积进行粗分割,获得细胞核的二值图; (4)将G颜色分量的二值图像与粗分割得到的图像信息融合,得到完整细胞核图像; (5)在RGB颜色空间中显示结果图像。
-
利用颜色空间分割白细胞[13-16]的方法很多,大多数是提取H通道图像分割白细胞。本文中首次将C-Y颜色空间中的B-Y颜色分量用于分割白细胞图像。该流程主要分为7个步骤(如图 2所示):(1)将原图从RGB颜色空间直接转化为B-Y颜色分量图像; (2)得到B-Y颜色分量的二值化图像; (3)根据连通域的面积粗分割得到大概的白细胞图像; (4)开运算处理,像素点操作,分离边缘粘连部分; (5)进行面积筛选,去除粘连部分,得到白细胞图像; (6)用7×7的中值滤波器平滑图像边缘; (7)在原RGB图像上显示实验结果。
-
对比度拉伸,也称灰度拉伸,是一种简单的线性点运算。进行对比度拉伸的目的是扩展图像的直方图,使其充满整个灰度等级范围内。公式如下:
$ \boldsymbol{g}(x, y)=\frac{255}{D-A} \times[\boldsymbol{f}(x, y)-A] $
(1) 式中,f(x, y)为输入图像, g(x, y)为输出图像; A=min[f(x, y)], 是原图最小灰度级; D=max[f(x, y)], 是原图最大灰度级。
如果灰度图像中最小值A=0,最大值D=255,则图像没有什么改变。因此,针对本文中所使用数据集,经过多次实验,最终确定G通道图像A=88, D=250;B通道图像A=130, D=250;R通道图像A=50, D=255,此时效果最佳。结果如图 3所示。
-
本文中所使用的C-Y颜色空间,与其它颜色空间类似,都可以通过公式计算将图像从RGB颜色空间转为C-Y颜色空间。C-Y颜色空间包括R-Y, B-Y, G-Y 3个颜色分量和一个亮度分量Y[17]。定义颜色时,只需要3个颜色分量中的任意两个就行。
从RGB颜色空间到C-Y颜色空间需要一个3×3的矩阵,公式如下:
$ \left[\begin{array}{l}{\mathit{\boldsymbol{Y}}} \\ {\mathit{\boldsymbol{X}}} \\ {\mathit{\boldsymbol{Z}}}\end{array}\right]=\left[\begin{array}{ccc}{0.299} & {0.587} & {0.114} \\ {0.701} & {-0.587} & {-0.114} \\ {-0.299} & {-0.587} & {0.886}\end{array}\right]\left[\begin{array}{l}{\mathit{\boldsymbol{R}}} \\ {\mathit{\boldsymbol{G}}} \\ {\mathit{\boldsymbol{B}}}\end{array}\right] $
(2) (2) 式表示,C-Y颜色空间采用的是R-Y, B-Y两个颜色分量和亮度分量Y,而X, Z分别表示R-Y, B-Y的两个颜色分量。
$ S=\sqrt{ \mathit{\boldsymbol{X}}^{2}+\mathit{\boldsymbol{Z}}^{2}} $
(3) $ \theta=\left\{\begin{array}{l}{\tan ^{-1}\left[\begin{array}{c}{\boldsymbol{X}} \\ {\boldsymbol{Z}}\end{array}\right], (S \neq 0)} \\ {\text { undefined, }(S=0)}\end{array}\right. $
(4) (3) 式、(4)式中的S表示C-Y颜色空间的饱和度。当饱和度S=0时,R-Y, B-Y两个颜色分量重合,不能区分。
也可以通过下式将图像从C-Y颜色空间转换到RGB颜色空间:
$ \left[\begin{array}{l}{\boldsymbol{R}} \\ {\boldsymbol{G}} \\ {\boldsymbol{B}}\end{array}\right]=\left[\begin{array}{rrr}{0.1} & {0.1} & {0.0} \\ {0.1} & {-0.509} & {-0.194} \\ {0.1} & {0.0} & {0.1}\end{array}\right]\left[\begin{array}{l}{ \mathit{\boldsymbol{Y}}} \\ {\boldsymbol{X}} \\ {{\mathit{\boldsymbol{Z}}}}\end{array}\right] $
(5) -
为验证算法的正确性和稳定性, 对白细胞图像应用本文中的算法进行了实验。实验环境为Windows 7, Pentium 3.4GHz, 8GB, Python 3.6。本文中所采用数据集中的图像都为JPEG格式,分辨率为320×240。由于染色种类、时间差异和成像设备的不同,导致所数据集图像中细胞之间、细胞与背景之间色差较小,并且有不同程度的黑色边框,因此,使用本文中数据集分割起来更加困难。
-
本实验中采用参考文献[18]中分割算法和参考文献[19]中分割算法作为对比算法。参考文献[18]中先在图像中自动检测白细胞,利用灰度直方图分割细胞核,通过GrabCut算法迭代分割出细胞质,此方法延续了GrabCut算法速度快、精度高的特点,但是算法中还存在如何确定检测窗口的大小、提高自适性等问题。参考文献[20]中将图像中的颜色信息与阈值算法结合用于白细胞分割,方法简单、有效,但是对图像的颜色信息过于依赖。实验中使用参考文献[18]中分割算法、参考文献[19]中分割算法、本文中算法分别嗜酸性粒细胞、淋巴细胞、单核细胞和嗜中性粒细胞图像进行分割,将分割后的图像与专家手工标记的图像进行比较,实验结果如图 4所示。从实验结果可以看出,本文中算法对粘连细胞也有较好的分割性能。
本文中采取两种分割误差测量方法、准确度以及分割时间对3种分割方法进行评价,O是过分割率、U是欠分割率[20]、C是准确度:
$ O=\frac{O_{P}}{U_{P}+D_{P}} $
(6) $ U=\frac{U_{P}}{U_{P}+D_{P}} $
(7) $ C=1-O-U $
(8) 式中, OP是分割结果中应该包含但没有包含的像素点;UP是分割结果中不应该包含但包含的像素点;DP是手工分割结果中包含的全部像素点;其中下标P表示图像的像素点。表 1中给出了3种分割算法在嗜酸性粒细胞、淋巴细胞、单核细胞和嗜中性粒细胞4种细胞图像中的分割误差和准确度。
Table 1. Parameters for three image segmentation algorithms
algorithm in reference [18] algorithm in reference [19] our algorithm O/% U/% C/% O/% U/% C/% O/% U/% C/% eosinophils 18.61 0.30 81.09 2.39 3.93 93.68 2.18 3.49 94.33 lymphocytes 58.95 0.00 41.96 11.78 4.16 84.06 7.73 0.67 91.60 monocytes 6.71 0.21 93.08 0.00 14.44 85.56 1.10 1.18 97.72 neutrophils 44.09 0.00 55.91 0.49 27.17 72.34 0.54 0.79 98.67 section time/s 0.9340 0.3288 0.3152 从表 1中对于嗜酸性粒细胞、淋巴细胞、单核细胞和嗜中性粒细胞图像分割的准确度可以看出,本文中算法明显优于其它两种算法,对于单核细胞和嗜中性粒细胞图像分割的效果明显,但是对于粘连情况明显的淋巴细胞分割性能还需进一步优化。
基于RGB和C-Y颜色空间的白细胞分割
White blood cell segmentation based on RGB and C-Y color space
-
摘要: 为了解决血细胞图像中白细胞与其它细胞色彩接近、亮度不均匀等问题,采用了一种基于 C - Y 颜色空间的白细胞分割方法,将原来的 RGB 图像转化为 C - Y 图像,分离 C - Y 图像获得包含全部信息的 B - Y 颜色分量图像,再根据连通域面积筛选、开运算、像素点操作得到完整的白细胞图像;提取对比度拉伸后的 G 图像,阈值分割得到细胞核的大概位置,再用连通域面积筛选、开运算方法分割出完整的细胞核图像。结果表明,本文中的算法对嗜酸性粒细胞、淋巴细胞、单核细胞和嗜中性粒细胞图像都具有较好的分割精度,分别取得了94.33%,91.60%,97.72%,98.66%的准确率。本文中的算法能较完整地分割出白细胞,为后续分类研究奠定了基础。Abstract: In order to solve the problems of color approximation and uneven brightness between white blood cells and other cells in blood cell images, a white blood cell segmentation method based on C - Y color space was adopted. The original RGB image was transformed into C - Y image. C - Y image was separated to obtain B - Y color component image with all information. Secondly, a complete white blood cell image is obtained by screening the area of the connected region, opening operation and pixel operation. The contrast stretched G image was extracted. The approximate position of nucleus was obtained by threshold segmentation. And then, the complete nuclear image was segmented by area screening and open operation of connected domain. The results show that the algorithm in this paper has good segmentation accuracy for eosinophils, lymphocytes, monocytes and neutrophils, i.e., 94.33%, 91.60%, 97.72% and 98.66% respectively. The algorithm in this paper can segment white blood cells more completely. It lays a foundation for the follow-up classification research.
-
Table 1. Parameters for three image segmentation algorithms
algorithm in reference [18] algorithm in reference [19] our algorithm O/% U/% C/% O/% U/% C/% O/% U/% C/% eosinophils 18.61 0.30 81.09 2.39 3.93 93.68 2.18 3.49 94.33 lymphocytes 58.95 0.00 41.96 11.78 4.16 84.06 7.73 0.67 91.60 monocytes 6.71 0.21 93.08 0.00 14.44 85.56 1.10 1.18 97.72 neutrophils 44.09 0.00 55.91 0.49 27.17 72.34 0.54 0.79 98.67 section time/s 0.9340 0.3288 0.3152 -