基于图像处理的荧光显微神经丝运动跟踪研究∗

2018-11-16 06:59涂雪滢袁亮
关键词:轮廓滤波聚类

涂雪滢,袁亮

(新疆大学机械工程学院,新疆乌鲁木齐830047)

0 引言

神经丝广泛存在于动物的成熟神经元中,神经丝过量表达会导致骨骼肌萎缩,造成瘫痪或者死亡,比如肌萎缩性侧索硬化症(ALS)、幼稚型脊柱肌肉萎缩症(ISMA).因此研究神经丝蛋白质的运动特性,对医学上神经元退化型疾病的诊断及治疗有至关重要的作用[1].九十年代后期,跟踪算法开始广泛运用于运动、交通、生物、医学等各个领域.这些跟踪算法通常可以分为两大类:一类是通过分析视频图片,利用图像处理技术对目标进行定位;另一类是基于滤波手段,对视频中的目标进行数据关联.

2005年,Yang[2]等人根据卡尔曼滤波算法提出了一种可靠的跟踪大量频繁出现和消失的密集反平行粒子运动的技术,这种算法跟踪成本较低,效率较高,预测结果稳定,但是它只适合于零均值白噪声的系统,也就是线性高斯系统.2007年,李培华[3]提出了一种改进的Mean Shift跟踪算法,该算法首先对颜色进行聚类分析,定义了一种新的颜色模型,并推导了一种相似性度量来比较目标和候选目标的颜色模型之间的相似程度,但该算法在追踪颜色相近的目标时效果较差.2012年,YUAN[4]等人改进传统依靠粒子滤波跟踪神经丝蛋白质的方法,提出了一种基于限制粒子位置与方向的新算法,该方法减少了系统运算时间,提高了跟踪效率.2013年,袁亮[5]等人利用马尔可夫随机场图形标签识别出包含运动神经丝蛋白质的轴突块,并细化神经丝首尾端点,从而提高了跟踪精度.2016年,巨刚[6]等人提出了一种基于核函数算法、粒子滤波、改进重采样法等多种方法融合的粒子滤波新算法来实现对神经丝的自动跟踪.2018年,袁亮[7]等人运用特征融合的粒子滤波算法对神经丝进行跟踪.

为了减轻人工工作量,克服人们主观因素的干扰,避免人工误差,将图像处理技术应用于神经丝蛋白质的运动跟踪,一次性自动完成神经丝的定位与路径检测,能够极大地提高跟踪精度和效率.因此,本文重点研究了单一场景下的单个目标——神经丝蛋白质的自动连续跟踪.设计了基于图像处理技术的神经丝蛋白质自动跟踪系统,对神经丝运动视频图像进行数字图像处理,对其颜色直方图与轮廓特征进行提取和分析研究,从而对神经丝蛋白质进行跟踪.与传统的基于粒子滤波的跟踪算法相比,该方法具有更高的跟踪精度与跟踪效率.

1 图像预处理与图像分割

在神经丝蛋白质的跟踪算法中,图像预处理与图像分割具有影响整个系统性能的重要作用.主要是对图像进行预先处理,包括去除图像中多余的信息和分割出所需部分的区域.在多数情况下,神经丝蛋白质的视频图像中会存在大量干扰信息,主要包括以下几个方面:

1.在神经丝蛋白质图像中,除了目标神经丝蛋白质外,在检测区域还存在其它神经丝蛋白质.如图1(a)所示;

2.当两条及以上神经丝蛋白质经过同一条通道时,目标神经丝蛋白质和干扰神经丝蛋白质发生“重叠”现象.如图1(b)所示;

3.当神经丝蛋白质图像中两条通道交错时,目标神经丝蛋白质与干扰神经丝蛋白质发生交错.如图1(c)所示;

4.当神经丝蛋白质在运动过程中发生停顿与折返时,目标神经丝蛋白质的形态产生“畸变”.如图1(d)所示.

图1 神经丝跟踪过程中的难点

这些干扰信息往往会对跟踪结果造成影响.对于图1(a),有多条神经丝蛋白质,如不分割图像,机器可能将干扰神经丝蛋白质错认成目标神经丝蛋白质;而对于图1(b),实际是目标神经丝蛋白质与干扰神经丝蛋白质发生重叠,可能将其识别为一条神经丝蛋白质;对于图1(c),当两条神经丝蛋白质发生交错时,很容易识别错目标神经丝;而在图1(d)中,神经丝蛋白质形态的“畸变”会导致丢失跟踪目标.在总体图像中,含有神经丝蛋白质的区域只占很小一部分,对整张图像进行特征提取与目标识别将会大大增加计算量,降低识别效率.综上所述,为提高算法的效率以及准确率,有必要优先进行图像的预处理和图像分割工作.

1.1 灰度处理

通常情况下,实验获取的图像是RGB图像.但是神经丝蛋白质本身不具有任何颜色信息,即颜色不能作为识别神经丝的特征信息.使用RGB图像反而会增加计算量,降低识别效率.因此,本文直接使用基于荧光显微镜录制的经过标记的神经丝的运动视频,视频为灰度视频,拆分为图像后可直接进行后续工作,不需要再做灰度处理.而普通视频中获取到的神经丝蛋白质图像具有颜色差异,需要先将图像转化为灰度图像.

1.2 图像滤波

从视频采集到的图像当中,由于多种因素干扰,图像中往往存在噪声,对于后续的目标识别与分割工作会造成很大干扰,严重影响对神经丝蛋白质轮廓的提取.因此需要提前对原始图像进行滤波处理,降低噪声对后续工作的影响[8].在原始图片中存在的噪声主要分为两类:一类是脉冲噪声,可以采用中值滤波对原始图像进行初步降噪;另一类是高斯噪声,可以选用低通滤波器进行图像滤波.经过处理的图像不仅大大降低了噪声,而且保全了神经丝边缘信息,提高了后续工作的准确度.

1.3 图像分割

为了更好地观察神经丝蛋白质的图像特性,需要将包含神经丝蛋白质的图像部分分割出来,以便进行特征提取.对于神经丝蛋白质视频图像,神经丝蛋白质在表面荧光剂的作用下成亮色,因此在成像时,神经丝蛋白质与背景形成对比.基于这种特性,一般采用阈值分割法来分割出特定的神经丝蛋白质.将整幅图像以t作为阈值进行二值化处理[9],然后在该图像中,以神经丝部分为中心选取一个最大的矩形连通域A1,在矩形连通域的基础上长宽各加x个像素值,以确保得到的连通域B1中包含整个神经丝蛋白质,该连通域即为包含所须检测神经丝蛋白质的部分,然后在该区域中进行特征提取的计算[10].

对于连续运动的神经丝蛋白质,每一帧都在变化.为了使跟踪结果具有更高的鲁棒性,我们采用图像关联检测法,即对每帧中的目标神经丝作关联处理.取第1帧中目标神经丝的连通域B1,得到其坐标函数B1=(mA+x)+(nA+x),在第2帧图像中,选取坐标函数为C1=(mA+x+y)×(nA+x+y)的矩形连通域C1为检测区域,重复上述阈值分割的办法得到包含目标神经丝的最大连通域A2,对其长宽各加x个像素值,得到进行特征提取的区域B2.此处x、y值视具体神经丝蛋白质运动视频的分辨率来确定,mA、nA为连通域A1的长和宽.对于存在多个神经丝蛋白质干扰的视频图像,该方法直接锁定目标神经丝,具有更高的效率和准确度.

2 特征提取

对于神经丝蛋白质视频图像,在表面荧光剂的作用下,神经丝蛋白质成亮色,因此可以分析其颜色与轮廓特征,将神经丝蛋白质从背景中分割出来.基于这种特性,本文提出了一种K-均值聚类算法和主动轮廓模型算法相结合的图像分割算法.

2.1 K-均值聚类算法

K-均值聚类算法[11]是一种根据图像信息中数字信息的共同特征来集中相似信息的算法,将各个对象迭代收敛到据其最近的对象的中心,步骤如下:

(2)对图像中像素点Am进行聚类,若则其中m为图像像素点个数,n为迭代次数;

在K-均值聚类算法中,聚类数k的值直接影响最终结果,因此首先应确定聚类数k.假设图像信息中有p个特征,利用间隙统计法[11,12],得到间隙曲线的函数Gap(k)=E(lnWk)−lnWk,其中E为期望值,Wk=为相异度,权值.取满足Gap(k)≥Gap(k+1)−σ(k+1)的k值作为最佳聚类数.

采用间隙统计法对神经丝蛋白质图片进行分析,得到结果如图2(a)和图2(b)所示.可以看出,在k=3时,间隙值最大,因此取最佳聚类数为3.

图2 间隙统计法曲线

2.2 主动轮廓模型

动轮廓模型[13]也称为Snake模型,广泛应用于图像处理技术中.主动轮廓模型由外部约束力引导,受到图像中属性力的作用,锁定图像中的边缘曲线,将snake模型拉向线条和边缘等特征.Snake曲线v(s)的能量定义为

式中Eint为内部约束力能量[14],Eimage为图像的属性力能量,Eimage+Econ统称为外部能量.内部约束力能量可定义为

其中,α代表曲线内部存在的牵引力,β代表了曲线的弯曲程度.当Esnake取得极值时,则有

Snake轮廓曲线是能量曲线,当曲线在力的作用下迭代收敛到最小值时,得到目标的轮廓曲线.

在本文中,采用如下步骤对神经丝蛋白质图像进行分割.

1.保存图像的一份副本,在该副本上使用K-means聚类算法对图像进行初步分割,如图3(b);

2.对聚类后的目标进行二值化,得到神经丝蛋白质的初始轮廓图,如图3(c);

3.对初始轮廓进行去除噪点、孔洞填充、去除毛刺等工作,提取出包围面积最大的轮廓,如图3(d);

4.将该轮廓的点坐标作为snake模型的初始坐标,代入到原图中,如图3(e);

5.在原图上应用snake模型,收敛出连续而平滑的轮廓曲线,此时所对应的轮廓线即为神经丝蛋白质的边界,如图3(f).

图3 神经丝轮廓特征提取步骤

实验发现本文提出的图像分割算法对神经丝蛋白质的分割可以达到很好的效果.

3 实验结果与分析

神经丝蛋白质跟踪实验所用图像来源于美国俄亥俄州立大学Anthony Brown教授实验室在荧光显微镜下录制的真实视频.使用基于K-means聚类分割算法和主动轮廓模型算法融合的方法对拆分后的神经丝蛋白质视频图像进行处理,得到神经丝蛋白质的轮廓特征,并通过其轮廓对蛋白质进行跟踪处理,得到神经丝蛋白质的运动路径.取两组神经丝蛋白质视频图像进行蛋白质跟踪实验,第1组选取单目标神经丝的跟踪,取帧(07,10,15,20,25,28,30,40,44)为研究对象;第2组选取多目标下单个神经丝蛋白质跟踪实验,取帧(36,40,45,52,55,65,70,75,81)为研究对象.图4(a)是单目标神经丝蛋白质跟踪结果,图4(b)是多目标下神经丝蛋白质跟踪结果.

图4 神经丝蛋白质跟踪结果

从图4(a)中可以看到,视频第40帧图像中的神经丝蛋白质产生了畸变,普通的粒子滤波跟踪方法会在第40帧丢失跟踪目标[6].而本文基于图像处理的方法,应用灰度直方图、K-means聚类分割和主动轮廓模型算法,直接将神经丝蛋白质从背景中分离出来,神经丝蛋白质的畸变对该方法不产生影响.实验结果表明,该方法能够有效的识别出视频中运动的神经丝蛋白质,从而达到跟踪的目的.从图4(b)中可以看出,当图像中存在多个神经丝蛋白质时,普通跟踪算法无法连续识别目标神经丝蛋白质,而本文基于图像分割的方法,直接提取出包含目标神经丝蛋白质的图像部分进行检测,在大大减少后续工作计算量的同时,也提高了算法的精确度.结果表明,在多个神经丝蛋白质干扰的复杂情况下,本文的跟踪方法仍能够有效的识别出目标神经丝,比一般跟踪算法具有更高的鲁棒性和可靠性.

为了对实验的跟踪结果进行跟踪性能的数值化分析,本文使用人工标记的方法与本文使用的方法、普通粒子滤波跟踪算法对神经丝蛋白质在连续帧之间的首端移动的像素距离进行比较,结果表明:普通粒子滤波跟踪在第1到第8帧之间跟踪距离有较大出入,在第36到第42帧之间丢失跟踪目标,存在较大误差.而本文使用方法的计算结果表明该移动距离非常接近手动标记获得的像素距离,在跟踪的准确度上明显优于普通粒子滤波的方法,在神神经丝干扰导致普通粒子滤波跟踪算法在个别帧粒子分散、跟踪不稳定、造成较大误差[5].而图像处理跟踪算法基于图像分割与图像关联检测的方法,锁定目标神经丝蛋白质进行跟踪,基本不受干扰,如图5所示.

图5 人工标记和图像处理方法、粒子滤波方法所得到的连续帧间像素距离

图6 显示出了相应的跟踪误差值.从图6(a)与图6(b)对比得到,第一组视频中基于粒子滤波的跟踪方法在第6到第9帧误差较大,在丢失目标前后出现巨大跟踪错误,而基于图像处理的跟踪方法误差较小,接近人工标记的结果.对比图6(c)与图6(d),第二组视频中基于粒子滤波的跟踪方法的跟踪误差平均大于基于图像处理的跟踪方法.实验结果表明,与普通粒子滤波算法相比,基于图像处理技术的跟踪算法准确度更高.

图6 图像处理方法和粒子滤波方法的跟踪误差

4 结论

该项目构建了适应于视频中荧光显微下神经丝蛋白质运动目标检测的图像采集软件系统,通过MATLAB拆分视频获得每一帧神经丝蛋白质图像,研究了适合于该图像的预处理方法.采用间隙统计法对神经丝蛋白质图片进行分析处理,将目标聚成3类,使用K-means聚类分割算法逐次收敛出不同类别的对象的中心.通过处理初始轮廓提取出包围面积最大的轮廓,利用主动轮廓模型将初始轮廓迭代收敛为神经丝蛋白质的轮廓.通过每一帧蛋白质的位置坐标,得到神经丝蛋白质的运动路径,从而达到跟踪的目的.系统能够有效的提取出视频中的神经丝蛋白质,实现实时跟踪,减少了运算时间,提高了跟踪效率.

猜你喜欢
轮廓滤波聚类
OPENCV轮廓识别研究与实践
基于实时轮廓误差估算的数控系统轮廓控制
基于K-means聚类的车-地无线通信场强研究
基于EKF滤波的UWB无人机室内定位研究
高速公路主动发光轮廓标应用方案设计探讨
基于高斯混合聚类的阵列干涉SAR三维成像
基于Spark平台的K-means聚类算法改进及并行化实现
一种GMPHD滤波改进算法及仿真研究
基于改进的遗传算法的模糊聚类算法
基于自适应Kalman滤波的改进PSO算法