基于图像处理的异常细胞检测方法研究
2020-11-10陈紫薇原松梅
陈紫薇, 原松梅
(哈尔滨工业大学 建筑学院, 哈尔滨150001)
0 引 言
细胞是组成人体结构的基本单位,在医学检测中,细胞的检测结果是诊疗病情的重要依据。 目前的细胞检测方法有使用薄层制片技术的核TBS 诊断系统,但是更多的还是依靠专家阅片,判断标准往往根据医生的医术水平和个人意见而定,因此具有较强的主观性和不确定性[1]。 细胞核是控制细胞生命活动的中心,异常细胞的细胞核一般存在形态变化,核占比会发生变化。
计算机图像处理技术的快速发展使其应用延伸到各个领域,将计算机图像处理技术应用于生物医学领域能极大地提高病情诊断的精准性,提高医用显微技术处理分析的效率[2]。 医学细胞图像处理是医用图像处理领域一个热门的课题。 本文提出通过形态学运算、图像分割等图像处理相关操作,计算细胞核占比,进而判断细胞是否存在异常。
1 图像处理相关算法
1.1 形态学运算
腐蚀操作与膨胀操作是形态学的两个基本运算,腐蚀与膨胀组合又会形成开运算和闭运算。 腐蚀能够造成图像边缘收缩,可以用来消除小的目标物。 腐蚀的原理如图1 所示。
图1 腐蚀操作原理图Fig. 1 Schematic diagram of corrosion operation
使用白色3×3 模板,对白色目标区域进行遍历操作,背景黑部分为(0),背景白部分为(1),模板与覆盖区域做“与”操作,若结果全为1,则腐蚀后像素点为白,否则为黑,黑色的部分更易获得,最终表明白色区域收缩。
膨胀能够将目标的边缘向外扩张,可用于填补区域孔洞及消去区域的细小颗粒噪声。
膨胀的原理如图2 所示。
图2 膨胀操作原理图Fig. 2 Schematic diagram of expansion operation
膨胀操作同样是使用3×3 的白色模板对白色目标区域进行操作遍历操作,背景黑部分为(0),背景白部分为(1),模板与覆盖区域做“与”操作,若结果不全为0,则膨胀后相应点为1,最终表明白色目标区域明显扩大了。
开运算是对图像先做腐蚀操作再做膨胀操作的组合运算。 开运算能放大空洞,消除小物体。 开运算的原理如图3 所示。
图3 开运算操作原理Fig. 3 Operating principle of open operation
闭运算是对图像先做膨胀操作再做腐蚀操作的组合运算。 闭运算能填补小型空洞,联通两个区域[3]。 闭运算的原理如图4 所示。
图4 闭运算操作原理Fig.4 Operation principle of closed operation
顶帽操作是基于开运算的操作,使用开运算将峰顶消去,再用原图与开运算后的操作结果做异或运算,进而得到被去掉的部分。 顶帽操作就是开运算消去图像中的较亮区域,即封顶,因此也叫白色顶帽。
1.2 图像分割算法
图像分割就是将图像分割成不同区域,特性包括:灰度、颜色和纹理等,最终获得一个或多个感兴趣区域的技术。 图像分割方法可分为:阈值分割,边缘分割和区域分割[4]。
基于阈值的分割是依据阈值对不同物体进行分割。 最大类间方差法,也称大津法,是公认的无需手动选取阈值的最佳方法。 大津法的基本思路是,首先设一个能将图像分为两组的阈值K,能够使两组类间方差最大的K 值即为所求分割阈值。 大津法的具体原理为:对于M ×N 大小的图像f(x,y),灰度级取值范围为[0 ~L - 1],记p(k)为灰度值k 的出现频率,则有:
设用灰度值t 为阈值分割前景与背景,设属于前景的像素占比为w0(t),则前景部分所占比例,即灰度级t 之前的所有灰度级百分比之和为:
设前景像素个数N0,总图像像素个数与前景部分所占比例之积为:
设背景部分像素占比为w1(t),则背景部分所占比例,即灰度级t 至m 之间的所有灰度级百分比之和为:
设背景部分像素个数为N1,为总图像像素个数与背景部分所占比例之积:
前景灰度均值为t 之前所有灰度级的加权平均值为:
背景灰度均值为灰度级t 至灰度级m 之间所有灰度级的加权平均值:
总灰度均值为前景灰度均值与背景灰度均值的加权平均值:
由公式(9)可知,组间方差越小,则组内的相约越相似,组间方差越大,则两组差别越大,组间方差与组内方差之比越大,则分割效果越好。 因此使组间方差与组内方差之比最大的t 值即为所求阈值。大津法的缺点是不能反映图像的空间结构,因此有时其分割结果与人眼判断存在不同[5]。
基于边缘的分割算法主要依靠边缘检测算法,通过获取并计算图像边缘灰度级或是结构突然改变之处进行图像的分割。 边缘检测算法的基本思想是:先检测不连续的点,然后将点连接成边,先确定边缘像素,并连接这些像素,进而构成边界。 实现边缘检测主要依靠各种算子,如sobel 算子和canndy算子。
基于区域的分割则是将每个像素划分到相应的区域之中。 区域生长算法作为基于区域的分割算法代表,目前应用较为广泛。 区域生长算法的原理是:将性质相似的像素集合成区域,从一组生长点开始,将生长点邻域性质相似的像素点与生长点合并成新的生长点,迭代生长点至不能生长为止。 实际应用区域生长算法时需要解决3 个关键问题:(1)选取一组能代表区域的种子生长点;(2)确定生长准则,使相邻像素能在生长过程中与生长点合并;(3)制定生长过程停止条件。
2 异常细胞检测方法设计与实现
异常细胞检测方法思路为:从本地读入图像,对图像进行预处理操作,包括将彩色图像转换为灰度图像,并对灰度图像做形态学滤波,使用大津法获得灰度阈值,生成二值图像。 使用手动选择的方法确定生长点,并将目标细胞存入数组。 对每个生长点使用生长算法,得到每个联通的细胞区域。 对于每个细胞,计算总体面积,对细胞和掩码图做顶帽操作,利用大津法确定分离细胞核和细胞质的灰度阈值,获得二值图像,计算细胞核面积以及核占比。
异常细胞检测方法的实现使用matlab,运行环境为windows 10。
3 实验结果
对于输入的细胞图像,本方法能较好的分离细胞核并计算核占比,详细的实验结果如图5 ~9所示:
图5 原图Fig. 5 Original figure
图6 形态学操作滤波结果Fig. 6 Results of morphological operation filtering
图7 二值化图像Fig. 7 Binarization image
图8 细胞核图像Fig. 8 Nuclear image
图9 细胞核占比计算Fig. 9 Nuclear proportion calculation
4 结束语
本文根据图像分割等原理,结合细胞检测这一实际需求,提出了使用图像处理相关算法检测异常细胞的方法,利用形态学运算、大津阈值分割法和区域生长算法实现了细胞分割,通过掩模区域相关操作,计算出细胞核的占比,进而判断细胞是否异常。本检测方法的优越性在于使用较为简单的人机交互(手动选择生长点)即可实现细胞核占比的自动计算。
本方法还有如下需改进之处:(1)使用先膨胀后腐蚀的方法可以省去去噪步骤;(2)阈值分割后,会残留许多噪声,使用开运算可以去除;(3)大津法是基于最小二乘法的阈值分割法,计算量很大,可用分水岭算法代替,也可使用梯度算子检测边缘。