时间:2024-05-04
文/李政浩
显微镜细胞计数是常用的微生物学、医学研究方法。细胞密度常常能够反映细胞培养情况或动物生理指标。传统的研究中,实验员必须频繁切换视野,然后手动地对镜下图像进行标注与计数。此过程通常占用较长的时间,造成样本活性降低等不好的影响。
为了更好的解决全自动细胞计数问题,本文针对镜下细胞图像,选用了Laplacian-of-Gaussian算子对镜下图像去燥并边缘提取得到预处理结果。预处理结果能够快速的定位边界,同时去除采集器噪声与样本污渍,从而更好地方便后续计数工作,提高后期细胞模板进行卷积效果。
实验结果表明,基于LoG算子的边缘提取算法具有计算量小,时间复杂度与空间复杂度低的特点,运行速度快,边缘定位准确;预处理后细胞计数准确,并且对高斯噪声具有较好的抗噪能力。
1.1.1 Gaussian算子
Gaussian算子是一个常用的平滑滤波算子。其中,二维高斯函数如下:
可以使用MATLAB中的滤波算子取样函数fspecial,使用方法如下:
>>fspecial('gaussian',[3,3],0.9);
图1:高斯平滑拉普拉斯二阶微分后的结果
在上述例中,能够获取一个3*3,σ=0.9的二维高斯函数模板。使用该方法对二维高斯函数进行空间取样,并对取样结果归一化,结果近似得到如下3*3卷积模板:
1.1.2 Laplace算子
Laplace算子是一个二阶微分算子,其与一阶微分算子(如sobel算子)相比,不具备方向性。在笛卡尔坐标系中,即为所有非混合二阶偏导数:
图2:显微镜下红细胞视野
图3:后处理后的镜下图像
将(2)转换到二维图像坐标系中,得到如下公式:
将算子做二阶差分进行离散化,此时,得到图像4邻域卷积模板如下:
1.1.3 LoG算子
LoG算子,即Laplacian-of-Gaussian(高斯-拉普拉斯)算子,其本质是先使用Gaussian算子对图像进行平滑,以去除一些图像噪声对边缘的影响;然后再使用Laplacian算子对图像进行二阶微分提取边缘。通过这两部操作,能够降低噪声对边缘的影响,同时尽可能保留原有的图像边缘。
在 Ubuntu 18.04,Python 3.7.2环境下,针对标准测试图像Lena(512*512,TIFF类型),总处理时间约为0.8秒,时间复杂度O(n2)。使用经典的Lena图像,运行效果如图1所示,其中左侧为原始图像;右侧为处理结果。
本文主要思路采用LoG算子对图像进行平滑与二阶微分。针对镜下细胞图像,经过处理后,即可良好的进行细胞计数工作。以下是比较与分析。
在细胞计数问题中,细胞的颜色信息并不重要。因此在处理前,我们需要对图像灰度化处理(如图2左一)。显微镜下图像常常包含噪声,包括采集噪声与目镜污渍。因此,我们需要对图像进行平滑处理。
算子在Laplace二阶微分边缘提取之前进行了高斯平滑处理,处理后得到如图2左三的图像。结果显示,边缘较为黯淡,我们需要对提取结果二值化,以更好地观察边缘。采用Otsu算法进行自动阈值分割,得到图2左四图像。
如2.1节中的结果显示,处理后的图像噪声较小,边缘清晰,但是放大看,在局部视野中依然有部分样本杂质未去除,如图3左一,图像中的杂质可能会对后续细胞计数操作造成影响。因此,我们能够采用图像处理中,常用的“先腐蚀,再膨胀”的处理方法。对模板中的像素先取最小值,再取最大值。处理后结果如图3左二所示;处理后的局部放大结果如图3左三所示。
本文探究了细胞自动计数问题的预处理方法以及结果,对于常规的显微镜镜下细胞图像而言,使用LoG算子处理后,既能够平滑采集器噪声与目镜污染,同时二阶微分的边缘也非常清晰。处理后的边缘经过Otsu分割后,能够得到清晰的白色边缘。
针对镜下的杂质,我们能够采用图像处理中常用的“先腐蚀,后膨胀”操作,快速的去除视野中的杂质,减小后续计数操作中可能带来的误差。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!