一种基于显微镜图像的游丝藻类细胞统计方法
技术领域
本发明属于水生态环境监测技术领域,特别是涉及一种基于显微镜图像的游丝藻类细胞统计方法。
背景技术
利用显微镜和高清工业相机来采集藻类图像,然后通过深度学习检测模型识别出游丝藻类和它的像素坐标,需要设计一种图像模式识别方法来统计图像中游丝藻类的细胞个数。
专利公开号CN111443028A中提出了基于深度学习模型对藻类进行识别和统计的方法,该方法对游丝藻类进行统计时,深度学习检测模型容易造成漏检,导致了藻密度、生物量等性能指标与实际情况存在较大的偏差。
发明内容
为了克服现有技术存在的不足,本发明提供了一种基于显微镜图像的游丝藻类细胞统计方法。先通过深度学习模型识别出游丝藻类和它的位置坐标,然后截取出该藻类的图像数据,通过图像模式识别技术来统计出它的细胞个数。
为实现上述目的,本发明提供了如下方案:
一种基于显微镜图像的游丝藻类细胞统计方法,包括:
获取游丝藻类彩色细胞图像,基于所述彩色细胞图像,计算颜色显著性特征,并对所述颜色显著性特征进行二值化处理,得到颜色显著性特征二值图像;
基于所述颜色显著性特征二值图像,对游丝藻类细胞进行检测,得到检测结果,并对所述检测结果进行验证;
若在所述颜色显著性特征二值图像中未检测到完整的游丝藻类细胞,则选择灰度特征二值图像重新进行检测,得到检测结果,并继续对检测结果进行验证;
基于所述颜色显著性特征二值图像检测结果和所述灰度特征二值图像检测结果,统计所述游丝藻类细胞个数。
优选地,所述得到颜色显著性特征二值图像的过程包括:
首先对所述游丝藻类彩色细胞图像进行预处理操作,得到经过预处理的游丝藻类彩色细胞图像;
分别计算所述经过预处理的游丝藻类彩色细胞图像中R、G、B三个通道的像素均值;
遍历所述彩色细胞图像上所有的像素,计算所述彩色细胞图像上的像素值与均值之差,并以像素为单位计算颜色显著性特征的强度I;
基于所述颜色显著性特征的强度I对所述彩色细胞图像进行OTSU二值化处理,得到所述颜色显著性特征二值图像。
优选地,对所述游丝藻类彩色细胞图像进行预处理操作的过程包括:
对所述游丝藻类彩色细胞图像进行缩放处理,得到缩放后的彩色细胞图像;
对所述缩放后的彩色细胞图像进行双边滤波,得到经过预处理的游丝藻类彩色细胞图像。
优选地,所述对游丝藻类细胞进行检测的过程包括:
对所述颜色显著性特征二值图像进行旋转矫正;
在矫正后的二值图像上检测游丝藻类细胞的外轮廓,计算每个外轮廓的最小外接矩形,排除误检测数据。
优选地,对所述颜色显著性特征二值图像进行旋转矫正的过程包括:
设定颜色显著性特征二值图像中的阈值,基于设定的阈值计算图像的旋转角度;
基于计算出的旋转角度以及图像的宽和高,计算出旋转和平移矩阵;
基于所述旋转和平移矩阵将颜色显著性特征二值图像进行旋转矫正。
优选地,所述排除误检测数据的过程包括:
计算最小外接矩形的像素面积,删除像素面积低于设定阈值的最小外接矩形;
计算所述最小外接矩形的宽高比,删除不符合宽高比特征的最小外接矩形;
按所述最小外接矩形中心点坐标y的数值来对所有最小外接矩形排序,排序顺序为从小到大;
从第二个最小外接矩形开始,计算它与上一个最小外接矩形旋转角度的偏差,然后再计算它与下一个最小外接矩形旋转角度的偏差;若两个旋转角度偏差都低于设定的阈值,那么当前最小外接矩形不会被删除;反之,将对它进行删除操作;
然后通过判断前后最小外接矩形x方向的偏差来进一步排除误检测数据;
从所述第二个最小外接矩形开始,计算它与上一个最小外接矩形中心点坐标x方向上的偏差dx1,然后再计算它与下一个最小外接矩形中心点坐标x方向上的偏差dx2;
若dx1和dx2的绝对值都低于设定的阈值,则当前最小外接矩形不会被删除;反之,将对它进行删除操作;
若图像背景含有杂质干扰物时,将对最小外接矩形进行多项式曲线拟合,设定最小外接矩形与曲线的距离阈值,然后进一步排除杂质干扰物的影响;
计算所有最小外接矩形的中心点坐标,以中心点坐标来进行曲线拟合;
通过多项式方程ax3+bx2+cx+d=y拟合曲线参数a、b、c和d,采用最小二乘法对曲线进行拟合;
计算外接矩形中心点与拟合的曲线之间的距离,将曲线参数a、b、c和中心点坐标代入多项式方程,计算出满足当前中心点坐标使多项式方程成立时的参数d的数值d1,直接计算曲线拟合参数d与计算的d1之间的差值dd,其中dd=d-d1,若dd的绝对值小于设定的阈值,则该最小外接矩形在曲线上;反之,删除当前最小外接矩形,完成误检测数据的删除操作。
优选地,验证所述游丝藻类细胞检测的有效性包括:
通过最小外接矩形y坐标数值,找到第一个最小外接矩形rectS和最后一个最小外接矩形rectE;
通过最小外接矩形的宽、高和旋转角度,计算rectS和rectE的顶点坐标;
从rectS的顶点坐标中找出最小的y坐标值y1,然后从rectE的顶点坐标中找出最大的y坐标值y2,计算rectS和rectE在y方向的距离dy,其中dy=y2-y1;
计算dy与旋转后图像高的比值,若所述比值大于设定的阈值,则认为在二值图像上成功地提取出了游丝藻类细胞;反之,则认为游丝藻类细胞检测失败;其中所述设定的阈值为0.75。
优选地,将所述游丝藻类彩色细胞图像进行缩放,并转换为灰度图像,对所述灰度图像先进行高斯模糊化,然后通过CLAHE对比度受限的自适应直方图均衡化算法对所述灰度图像进行对比度拉伸操作,得到增强后的灰度图像;
在所述增强后的灰度图像上进行OTSU大律法二值化分割,得到所述灰度特征二值图像。
优选地,基于所述灰度特征二值图像进行形态学open操作,然后重新检测所述游丝藻类细胞,并验证所述游丝藻类细胞检测的有效性,直接统计检测到的最小外接矩形个数,得到图像上游丝藻类细胞的个数。
本发明的有益效果为:
1、本发明不需要在深度学习模型中直接检测游丝藻类细胞,减少了数据标注工作,提高了模型训练和模型优化的效率。采用的图像模式识别技术中,充分考虑了游丝藻类细胞的图像特征。通过颜色显著性特征与灰度特征相结合的方式,获得了比深度学习检测模型更加精确的统计结果;
2、本发明中提及的细胞统计方法,不仅可以应用于游丝藻类的细胞个数统计,还可以应用于伪鱼腥藻类的细胞个数统计,具有广泛的适用性;
3、游丝藻类细胞统计方法为独立的模块,便于算法后期的优化和维护。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的整体流程图;
图2是本发明实施例的得到颜色显著性特征二值图像流程图;
图3是本发明实施例的彩色图像预处理流程图;
图4是本发明实施例的计算颜色显著性特征二值图像流程图;
图5是本发明实施例的检测游丝藻类细胞流程图;
图6是本发明实施例的图像矫正流程图;
图7是本发明实施例的图像矫正效果图;
图8是本发明实施例的删除误检测最小外接矩形流程图;
图9是本发明实施例的验证游丝藻类细胞检测是否有效流程图;
图10是本发明实施例的计算灰度特征二值图像流程图;
图11是本发明实施例的灰度图像预处理流程图;
图12是本发明实施例的灰度图像二值化流程图;
图13是本发明实施例的游丝藻类细胞统计效果图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,本发明公开了一种基于显微镜图像的游丝藻类细胞统计方法,它包括以下步骤:
获取游丝藻类细胞彩色图像,基于所述彩色图像,计算颜色显著性特征,并对所述颜色显著性特征进行二值化处理,得到颜色显著性特征二值图像;
基于所述颜色显著性特征二值图像,对游丝藻类细胞进行检测,得到检测结果,并对所述检测结果进行验证;
若在所述颜色显著性特征二值图像中未检测到完整的游丝藻类细胞,则基于灰度图像提取藻类细胞二值图像,在此图像上重新检测游丝藻类细胞,得到检测结果,对检测结果进行验证。
基于所述颜色显著性特征二值图像检测结果和所述灰度特征二值图像检测结果,统计所述游丝藻类细胞个数。
参照图2,所述计算颜色显著性特征二值图像包括以下内容:
(1)首先对彩色图像进行预处理,降低图像中游丝藻类细胞颜色的色差;
(2)计算颜色显著性特征二值图像。
参照图3,所述彩色图像预处理模块包括以下内容:
(1)对图像进行缩放处理,提高整体运行效率;
(2)对缩放后的彩色图像进行双边滤波。
参照图4,所述计算颜色显著性特征二值图像包括:
(1)分别计算彩色图像R、G、B三个通道的像素均值,计算后的均值为meanR、meanG和meanB;
(2)遍历彩色图像上所有的像素,计算它的像素值与均值之差,例如:(r、g、b)表示一个彩色图像上一个像素的数值,分别计算r-meanR、g-meanG和b-meanB,计算后的数值依次表示为dr、dg和db;
(3)按像素为单位计算它的颜色显著性特征的强度I,具体计算公式为:I=dr*dr+dg*dg+db*db;
(4)颜色显著性特征的强度实际上是一个单通道的浮点图像数据,遍历图像上所有像素,找到最大值和最小值,并将它的数值归一化到0~255的范围内;
(5)对颜色显著性特征的强度图像数据进行OTSU二值化处理,二值图像中游丝藻类细胞为白色,对应的像素值为255,其它地方为黑色,像素值为0;
(6)在步骤(5)处理后的二值图像进行形态学open(开)处理,防止细胞间粘连。
参照图5,所述检测游丝藻类细胞包括:
(1)对二值图像进行旋转矫正,矫正后的图像中游丝藻类的细胞均为竖立状态,便于后面分析;
(2)在矫正后的二值图像上检测它的外轮廓;
(3)计算每个外轮廓的最小外接矩形;
(4)分析最小外接矩形,删除误检测数据。
参照图6,所述图像矫正模块包括:
(1)在本实施例中,将二值图像中数值为255的区域纳入统计,计算图像的旋转角度;
(2)根据步骤(1)计算的旋转角度、图像的宽和高,计算出旋转和平移矩阵;
(3)将二值图像和灰度图像进行旋转矫正。
参照图7,图像上游丝藻类经过旋转矫正处理后,细胞均呈现竖立状态。
参照图8,删除误检测最小外接矩形包括:
(1)计算最小外接矩形的像素面积,删除像素面积低于设定阈值的最小外接矩形;
(2)计算最小外接矩形的宽高比,在矫正后的二值图像上游丝藻类细胞的宽较小,高较大。删除不符合宽高比特征的最小外接矩形;
(3)游丝藻类的细胞排列较为紧密,因此,前后细胞对应的最小外接矩形的旋转角度偏差会较小,通过此特征也可以排除一些非细胞的最小外接矩形;
(4)按最小外接矩形中心点坐标y的数值来对所有最小外接矩形排序(从小到大);
(5)从第2个最小外接矩形开始,计算它与上一个最小外接矩形旋转角度的偏差,然后再计算它与下一个最小外接矩形旋转角度的偏差。如果两个旋转角度偏差都低于设定的阈值,那么当前最小外接矩形不会被删除;反之,将对它进行删除操作;
(6)经过以上处理后,还是会存在一些旋转角度相似的误检测数据,通过判断前后最小外接矩形x方向的偏差来进一步排除较明显的误检测数据;
(7)从第2个最小外接矩形开始,计算它与上一个最小外接矩形中心点坐标x方向上的偏差dx1,然后再计算它与下一个最小外接矩形中心点坐标x方向上的偏差dx2。如果dx1和dx2的绝对值都低于设定的阈值,那么当前最小外接矩形不会被删除;反之,将对它进行删除操作;
(8)在图像背景较干净,杂质干扰物较少的情况下,以上的处理方式可以获得较好的效果。为了应对杂质干扰物的影响,当检测的细胞个数较多时,例如:最小外接矩形的个数大于8个,我们将对最小外接矩形进行多项式曲线拟合,设定最小外接矩形与曲线的距离阈值,然后进一步排除杂质干扰物的影响;
(9)计算所有最小外接矩形的中心点坐标,以中心点坐标来进行曲线拟合;
(10)通过多项式方程ax3+bx2+cx+d=y来拟合曲线参数a、b、c和d,曲线拟合采用最小二乘法;
(11)计算外接矩形中心点与拟合的曲线之间的距离,删除距离较大的外接矩形;
(12)在本实施例中,采用一种简化的方法来计算外接矩形中心点与拟合曲线之间的距离。理论上如果中心点坐标在拟合的曲线上,那么将曲线参数a、b、c和d以及外接矩形中心点坐标(x1,y1)代入进去,多项式方程ax3+bx2+cx+d=y是成立的。因此,将曲线参数a、b、c和中心点坐标(x1,y1)代入多项式方程,计算出满足当前中心点坐标使多项式方程成立时的参数d的数值d1。直接计算曲线拟合参数d与计算的d1之间的差值dd(dd=d-d1),如果dd的绝对值小于设定的阈值,那么我们认为该最小外接矩形在曲线上;反之,删除当前最小外接矩形。
参照图9,所述验证游丝藻类细胞检测的有效性包括以下内容:
(1)统计最小外接矩形的个数,如果最小外接矩形的个数小于2个,那么认为游丝藻类细胞检测失败;
(2)由于最小外接矩形已经按y坐标排过序,因此,找到第一个最小外接矩形rectS和最后一个最小外接矩形rectE;
(3)通过最小外接矩形的宽、高和旋转角度,计算rectS和rectE的顶点坐标;
(4)从rectS的顶点坐标中找出最小的y坐标值y1,然后从rectE的顶点坐标中找出最大的y坐标值y2,计算rectS和rectE在y方向的距离dy(dy=y2-y1);
(5)计算dy与旋转后图像高的比值,如果比例大于设定的阈值(0.75),那么认为在该特征二值图像上成功地提取出了游丝藻类细胞。反之,则认为游丝藻类细胞检测失败。
如果在颜色显著性特征二值图像上没有检测到完整的游丝藻类细胞,那么将在灰度特征二值图像上重新进行检测。
参照图10,所述计算灰度特征二值图像包括以下内容:
(1)灰度图像预处理,增强灰度图像对比度;
(2)再增强后的灰度图像上进行二值化处理。
参照图11,所述灰度图像预处理包括以下内容:
(1)对图像进行缩放处理,提高运行效率;
(2)将缩放后的彩色图像数据转换成灰度图像;
(3)对灰度图像进行中值滤波去噪;
(4)采用CLAHE(对比度受限的自适应直方图均衡化)算法对图像进行对比度拉伸操作;
(5)由于CLAHE算法拉伸后的图像数据会存在较多噪点,需要通过高斯模糊化算法来进一步降噪。
参照图12,所述灰度图像特征提取包括以下内容:
(1)采用OTSU(大律)算法对灰度图像进行二值化处理,二值图像中游丝藻类细胞为白色,对应的像素值为255,其它地方为黑色,像素值为0;
(2)由于游丝藻类细胞密度较大,因此,需要对二值图像进行形态学open(开)操作,防止二值图像上细胞间(白色区域)出现粘连现象。
在灰度特征二值图像上,重新检测游丝藻类细胞和验证检测的效果。
直接统计检测到的最小外接矩形个数,它的个数就是图像上游丝藻类细胞的个数。
大部分游丝藻类细胞的颜色特征比较明显,本发明先采用颜色显著性特征来统计细胞个数;若此方法统计失败,再采用灰度特征来统计细胞个数,提高了游丝藻类细胞个数统计的精度。
参照图13,游丝藻类图像左上角深色数字为本发明统计的细胞个数,下方亮色的数字为人工统计的游丝藻类细胞个数。
以上所述的实施例仅是对本发明优选方式进行的描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。