关注公众号

关注公众号

手机扫码查看

手机查看

喜欢作者

打赏方式

微信支付微信支付
支付宝支付支付宝支付
×

水平集活动轮廓模型(一)

2020.6.22

菌落计数,是微生物实验中基本又耗时的一项操作。近年来,出现一些自动菌落计数仪,为常规菌落检测提供了方便。但对一些复杂情况,例如菌落表面皱褶严重、边缘轮廓模糊、菌落颜色与培养基颜色非常接近、菌落生长在含有网格的滤膜上等等(下图1),一般菌落计数仪就无法实现计数统计。     

这是因为,菌落计数的核心问题,首先要将一个个菌落从培养基背景中分割提取出来,然后才能进行计数。目前的分割技术,主要是基于边缘的分割方法和基于区域的分割方法两类。基于边缘的分割方法,如边缘梯度法或通过霍夫变换的边界检测等,是根据菌落边缘的梯度信息进行检测;但对菌落边缘模糊、表面凹凸梯度信息丰富的情况就完全不适用。基于区域的图像分割法,常用的有阈值分割法,但对菌落颜色与培养基颜色非常接近的情况,是完全无能为力的。

201372413360.jpg

图1 复杂情况下的菌落图像    

为解决上述复杂情况下的菌落统计,迅数_科技团队历经两年攻关,在深入研究目前国际上最前沿的基于水平集活动轮廓模型的图像分割技术基础上,结合具体问题进行大胆尝试、改进和创新,终于成功开发出一系列针对不同菌落特点的分割统计方法。

1、基于水平集活动轮廓模型的图像分割方法     

基于水平集活动轮廓模型的图像分割方法,是将水平集方法和活动轮廓模型结合起来,在极小化能量泛函的过程中活动轮廓不断逼近分割目标,直到活动轮廓线停止进化时分割完成。由于该方法具有抗噪性强、数值求解稳定性好、分割边界光滑连续、可以处理拓扑结构复杂的情况等优点,成为目前国际上最前沿的图像分割技术之一。     该方法的基本原理,是把曲线或曲面嵌入高一维水平集函数中,用一个高维函数来表达低维曲线或曲面的演化过程(下图2)。

201372413373.jpg

      图2 水平集活动轮廓模型的基本原理
建立具有闭合曲线长度和面积平滑约束项的二维能量泛函(即CV模型):                           201372311849.jpg    

上式中,I(x,y)是图像中各象素点的灰度、cocb分别是菌落轮廓线内部和外部的平均灰度值。上式的前两项用于控制菌落轮廓曲线的光滑性,后两项驱动该轮廓线向实际菌落轮廓收缩,极小化该能量泛函即完成对菌落图像的分隔。
2、水平集活动轮廓模型的快速算法     

基于CV模型的图像分割方法,具有抗噪性强、分割边界光滑连续、可以处理结构复杂的情况等优点。但在实际应用中存在一个重要问题,就是计算速度慢。传统的水平集活动轮廓模型分割方法,由于涉及水平集函数的构造、以及每次迭代都需要求解偏微分方程,导致运算量大、计算速度极慢,难以实际采用。为此,迅数_科技团队首先研究解决CV模型的计算速度问题。   

定义图像离散网格区域为D,目标区域为Ω,背景区域为D\Ω,网格点x=(x1x2)∈Ω。定义两个链表,内部区域邻接链表(Lin)和外部区域邻接链表(Lout),用于表示轮廓线如下:
                              201372311522.jpg                               201372311651.jpg     

其中201372311728.jpg是点x的4邻域点。当轮廓线C确定下来,链表LinLout也唯一确定,如图3所示。比较图3(a)和3(b),当点A从链表Lout移到链表Lin后,点A由外部区域点(exterior point)变为内部区域点(interior point),轮廓线在A点向外扩展了一个像素点,实现了曲线的演化。同理B点从链表Lin中移到链表Lout中,即实现曲线的收缩。这一快速曲线演化方法,无需求解PDE,计算速度大大提高。


推荐
关闭