一种显微镜自动聚焦算法

2018-06-01 10:59梁隆恺赵晶何勇军
哈尔滨理工大学学报 2018年2期

梁隆恺 赵晶 何勇军

摘 要:传统的自动聚焦算法时间复杂度高,计算现在的高清图像速度慢,导致聚焦效率低下。针对这一问题提出了一种新的聚焦方法。该方法在分析灰度值与图像清晰度之间关系的基础上,提出了灰度非零值统计函数和低灰度值统计函数来评价聚焦清晰度,具有运算量小,评价准确的优点。然后采用两种评价函数结合的方式实现了一种变步爬山搜索策略。该策略在远焦点位置采用灰度零值比较评价函数和大步长快速粗略搜索焦点,在近焦点位置采用低灰度值统计函数和小补偿精细搜索焦点。实验表明,所提出的方法在聚焦效率和清晰度两个方面都优于目前的方法。

关键词:自动聚焦;自动显微镜;变步爬山;灰度非零值统计法;低灰度值统计法

DOI:10.15938/j.jhust.2018.02.009

中圖分类号: TH742

文献标志码: A

文章编号: 1007-2683(2018)02-0046-07

Abstract:The traditional autofocus algorithm with high time complexity has slow speed of calculation for the current high-definition images that lead to low efficiency of the focusing. To solve this problem, we improve auto focusing by improving focusing evaluation and focus searching. First, two evaluation functions based on gray change, namely gray zero comparison method and low gray value statistics method, are put forwarded. Then the proposed evaluation functions are applied to realize the variable step climbing search strategy. The experimental results show that the proposed method in two aspects of focusing efficiency and clarity are better than current methods.

Keywords:automatic focusing; automatic microscope; variable step hill-climbing; gray nonzero statistics; low gray value statistics

0 引 言

传统的人工阅片方法给医生带来了繁重的劳动,而且容易造成误诊。近年来,随着仪器自动化、智能化的发展,自动阅片技术开始出现并迅速发展。该技术通过计算机控制显微镜连续移动并拍摄清晰的镜下图像,然后进行分析识别后列出异常细胞。由于引入了自动控制和机器学习,这一技术能协助医生诊断,有效降低医生的工作强度,提高医生的诊断精度。

自动阅片的首要任务是自动获取显微镜下细胞图像。包括两个重要的步骤:扫描和聚焦。扫描的目的在于控制显微镜平台移动,使得镜头遍历玻片上被扫描区域的各个位置。聚焦的目的在于控制平台上下移动以拍摄到清晰的图像。

本文将研究重点放在显微镜聚焦上。目前的方法主要可以分为两大类:第一类主动聚焦方法通过测量镜头与被拍摄物体之间距离,然后将镜头移动到焦点位置达到聚焦的目的。这类方法通常要依赖于测距方法,复杂度高、成本大且难以实现。第二类被动方法以图像信号为反馈,通过比较不同位置图像清晰度的变化趋势实现自动聚焦。随着图像处理技术的进步,被动聚焦技术被广泛应用于自动显微镜中。

影响显微镜聚焦算法的两个重要因素是清晰度评价函数[1-6]和焦点位置搜索方法。在清晰度评价函数方面,目前广泛使用的评价函数有绝对方差函数、灰度差分绝对值之和算子[7-10]、拉普拉斯算子[11]、能量谱方法[12]等评价函数。由于这些函数的计算量大,在使用高分辨率摄像头情况下聚焦的速度太慢,不能满足应用需求。在焦点搜索方法方面,典型的有爬山搜索法和全局搜索法。爬山法从初始位置移动,比较移动前后位置上图像的清晰度并始终朝着清晰度增加的方向移动,即“爬山”,直到清晰度开始降低停止。清晰度最高的点被视为焦点位置即“山顶”。全局搜索法则以一定的步长在一定的调焦范围从一端逐步搜索到另一端,找到图像清晰度最大的焦点位置。这两种方法存在的问题在于很难确定一个合理的搜索步长。步长过大,聚焦速度增加但聚焦精度降低,步长过小,聚焦精度较高但聚焦速度降低。事实上,在远焦点位置需要大步接近焦点,在近焦点位置需要小步精细搜索。

自动阅片系统的焦点范围宽,且处理的图片分辨率高,采集图片量大,因此需要快速的聚焦方法。影响聚焦速度的因素有两个,第一个因素是清晰度函数本身的运算复杂度较高,运算量较大;第二个因素是相机在不同时刻采集图像的图像有微弱变化(比如光照),导致同一个评价函数的值出现波动,而在远焦点位置,传统的评价函数变化缓慢,容易受图像变化的影响而变得起伏,这将影响爬山的方向,造成在一个位置来回移动,严重影响聚焦速度,甚至导致聚焦失败。因此,本文首先提出了两种高效清晰度评价函数,即灰度非零值统计函数和低灰度值统计函数。灰度非零值统计函数在远焦点位置不受图像采集的影响,而低灰度值统计函数在近焦点位置具有尖锐的峰形。此外,两种函数的时间复杂度都很低。在此基础上,提出了一种新的焦点搜索方法。该方法利用了提出的两种评价函数的优势,在远焦点位置采用灰度零值比较评价函数并采用较大步长快速向焦点方向移动,避免了图像采集带来的影响。在近焦点位置采用低灰度值统计函数并结合小步长精细搜索焦点位置。

1 现有的自动清晰度评价函数

清晰度评价函数作为衡量图像是否聚焦的标准,它的设计基础在于:聚焦图像比离焦图像包含更多的细节信息。然而,要想让计算机对图像清晰度进行比较,必须要找到一个直观比较的数值,这个数值能够反应在不同聚焦状态下图像质量的好坏。传统的清晰度评价函数主要分为3类:基于灰度变化、基于边缘检测、能量谱法。

1.1 基于灰度变化

在一张图片中,根据灰度变化的平均程度,计算出灰度平均值,在计算每个像素点的方差,方差和的值用来衡量照片的清晰度,公式如下

1.2 基于边缘检测

聚焦清晰图像应有较锐化的边缘,由于梯度算子具有各向同性和旋转不变性,可把图像中各不同走向的边缘和线条突出,离焦量越小图像边缘越锐化,所以图像灰度梯度可以用来评价图像的聚焦程度取图像中每一象素点的梯度值并进行汇总。具体有以下几种

1.2.1 灰度差分绝对值之和算子(SMD)

通过计算每个像素点在包含自身的2×2空间中,该点(x,y)与上方和右方相邻点差值的和值作为评价标准。

2 新提出的自动清晰度评价函数

2.1 灰度非零值统计函数(GZV)

如图1 (a)、(c)所示模糊的图像和清晰的图像时发现,模糊的图像细胞的细节都看不到,同时细胞比较暗淡,而清晰的图像,细胞细节明显,颜色比较深。在一张照片中每个像素点的灰度值都是在0~255之间,其灰度直方图如图1(b)、(d)所示。

对比模糊和清晰图像的灰度直方图可以看出,模糊图片的灰度值集中在150~220之间,而其它灰度值的像素个数为零,表明此时图像中细胞的灰度值更接近背景的灰度级,清晰图片的灰度值集中在50~220之间,而其它灰度值的像素个数为零,此时图像中观察到细胞颜色比较深的地方对应着较低的灰度值。

将灰度直方图中出现的像素个数不为零的灰度值称为灰度非零值。从模糊图像到清晰图像这种灰度零值的变化是有规律的,可以直观的看到在清晰图像中灰度非零值要多于模糊图像的灰度非零值。这种变化可以作为评价聚焦清晰的一个标准,其公式为:

利用GZV清晰度评价对连续40张从离焦到聚焦再到离焦的照片计算GZV函数后绘制出的聚焦曲线,如图2所示,图中横轴为显微镜平台沿Z轴方向移动的距离,纵轴为灰度非零值在一张照片中出现的个数。

2.2 低灰度值统计法(LGV)

对比图1 (a)、(c)两幅图片,清晰图像中的细胞明显比模糊图像中的细胞要黑,对应着灰度直方图中灰度值较低的区域。而清晰细胞的面积对应低灰度区域的面积。一张图片的灰度直方图总面积就是其图像像素点的总数。根据图像实际情况,选取一个阈值T,划分出一个有效信息的低灰度区域作为观察区域,如图1(d)中灰度值50~150之间的类三角形的区域。在图像清晰度变化时,对应区域面积的变化可以作为评价清晰的标准,公式为:

其中阈值的选取办法为,从焦点一侧开始以较小的步长移动至图像焦点另一侧直到图像完全模糊,统计每幅图像出现过最小的灰度值绘成曲线图,如图3所示,图中最小值为35左右,最大值为140,则阈值的选取范围为35至140之间。图4为选取不同阈值对同一图像沿Z轴方向移动的清晰度评价函数曲线。实验表明,阈值选取的越小,对图像的变化越敏感,但阈值的选取不是越小越好,阈值过小导致其聚焦可见区域变小。根据此图像曲线的情况,现阈值选取为80。

3 变步爬山法

传统的盲人爬山法从起始点开始以一个定长的步子去搜索最大值,然后将最大值点作为焦点所在位置。该方法无法预知山顶的大致位置,如果起始位置距离山顶较远,则一次聚焦的时间就会过长,在大量采集照片的时候,其效率会较低。因此,本文提出了一种改进的盲人爬山法,称为变步长爬山法。

使用变步爬山法,当起始位置距离山顶较远时,选用大步长迅速靠近,当靠近山顶位置时,采用小步长保证精确度。变步爬山法采用灰度非零值统计法和低灰度值统计法这两种清晰度评价函数来进行聚焦。其中灰度非零值统计法的特点在于,针对不同细胞照片清晰度函数的取值都在0至255之间,因此可以根据当前位置对应的清晰度值来确定距离山顶的大致长度。

变步长爬山法的步长一共有3种:

第一种情况是在焦点附近的位置,用较小的步长S,并采用低灰度值统计法找到焦点位置。

第二种情况是在远离焦点但是依然能够看到图像的區域,采用灰度零值比较法,用较大的步长S2去找到焦点位置。

第三种情况是在离焦点更远的地方,只能隐约看到图像的区域,采用灰度零值比较法,用更大的步长S1去找到可见图像的区域。

聚焦爬山路线如图6所示。聚焦起点使用GZV计算得出步长为S2,向焦点方向移动,再次使用GZV计算得出步长为S1,继续移动并使用GZV计算得出,此时的位置已靠近焦点位置,接下来选用LGV函数作为清晰度评价函数,步长大小变为S,继续移动,知道发现越过峰顶,立刻反向移动,结束聚焦。聚焦流程如图7所示。

4 实验与分析

结合细胞识别项目的要求,清晰度评价函数应该满足:

1)单峰性:在聚焦点两侧,图像聚焦函数单调递减。变步爬山法仅能实现单峰的曲线极点搜索,所以单峰是精准对焦的前提。

2)精准性:评价函数的极点应精准对应聚焦焦点。

3)尖锐性:尖锐性越好,能灵敏地刻画图像差异[13]。

4)高效性:计算时间开销较短,能为聚焦提高效率。

4.1 实验环境

本实验基于我们开发的DNA倍体分析系统,其结构如图8所示,具体设备包括:

①德国UEYE高清数码摄像机②数码摄像机适配器③电动载物台④控制遥杆⑤显微镜⑥显微镜光源盒⑦控制盒。

计算机运行环境:CPU:i5-4460s,内存:8G,操作系统:Windows 7,编程语言VC++,图片大小2048×2048。连续的80张照片从离焦到聚焦再到离焦,其照片对应Z轴间隔为10个步长单位,如图9所示。

细胞DNA显微分光图像自动分析仪结构如图10所示,包括显微成像系统,高清数码摄相机,计算机,三维移动平台以及一些辅助配套装置。计算机通过两个端口分别控制CMOS摄像机和控制盒,控制盒可以控制平台的移动和聚焦。

系统工作原理,首先光源通过滤光片照射置于载物平台上的玻片,图像通过显微镜由数码摄像机采集,然后将图像通过USB上传至计算机,计算机计算图像的清晰度后通过移动Z轴改变平台到显微镜物镜的距离,最终移动到一个清晰图像的位置。

在显微镜对细胞标本进行扫描的时候由于摄像头可视范围有限的原因不能一次将整个细胞标本的图像采集下来,所以需要进行多次采集才能将整个细胞标本的图像获取然后进行图像分析。扫描时的移动是通过移动电动载物台来实现摄像头的相对移动,移动所使用的是X轴电机和Y轴电机。

4.2 清晰度评价函数

图11为由自动显微镜下获取的连续80张照片计算得到的评价函数曲线。从图中进行单峰性、精准性、尖锐性的比较。

单峰性比较:灰度非零值统计法的出现局部极大值,单峰性较差;低灰度统计法和灰度方差算子法在较大的区域(240~700)都没有出现局部极大值,单峰性较好;拉普拉斯、灰度差分绝对值之和算子以及Roberts梯度算子在较小的区域(380~600)没有出现局部极大值,单峰性一般。

精准性比较:图中除了灰度非零值统计法在焦点位置出现多个点精准性较差以外,其余函数在焦点位置均相同且只有一个点,精准性好。

尖锐性比较:灰度非零值统计法、拉普拉斯、灰度差分绝对值之和算子以及Roberts梯度算子这四种函数的尖锐性一般,在焦点附近变化程度一般;灰度差分绝对值之和算子变化较为明显;低灰度统计法变化最为明显。

表1为几种清晰度评价函数处理照片的时间。表格是针对每个清晰度评价函数单独进行时间测试的结果,80张图片已经事先加载到内存中,计算时间仅为计算用时。根据表格所示,进行高效性比较。

高效性比较:灰度非零值统计法和低灰度统计法用时最短,灰度差分绝对值之和算子用时最长,其余函数用时相似。所以灰度非零值统计法和低灰度统计法高效性最好。

4.3 实验总结

灰度非零值统计函数的聚焦函数曲线在峰值附近不够敏感,并且函数存在极大值不利于最后的聚焦,但是其函数计算用时少。如果增大步长即可避免极大的出现,同时与其他函数相比单调区间最大,在离焦点较远的地方依然能够实现聚焦。灰度方差算子法的聚焦函数曲线明显要好于其他几种,焦点位置的敏感度较高,但是其计算量大,用时过多,严重影响聚焦效率。拉普拉斯、灰度差分绝对值之和算子以及Roberts梯度算子的聚焦函数曲线基本相似,后两者计算所消耗时间相差不大,拉普拉斯用时更多。由于这三种函数本身计算的是图像边缘的能量,函数计算较为复杂,因此计算效率会比较低。低灰度值统计法的聚焦函数曲在峰值附近敏感度高于其他函数,且其单调性好。计算时间仅次于灰度非零值统计函数。

通过实验对比发现,传统的清晰度评价函数优点是在焦点附近位置敏感度高,缺点是计算时间长,且敏感区间过小。当聚焦起始位置距离焦点稍远时,由于其较远位置单调性差,从而导致聚焦失败。现针对这两个问题提出了变步爬山法.变步爬山法的聚焦分为细聚焦和粗聚焦两个阶段,其中粗聚焦又分为长距离聚焦和近距离聚焦两个部分。两个阶段的函数选取首要条件是计算速度快,其中粗聚焦阶段,初始位置到焦点的距离非常远,且要快速靠近焦点,所以这部分步长比较大,因此要求函数单调区间大,且在较大步长情况下不存在极值点。精细聚焦阶段,距离焦点位置较近,使用小步长来保证聚焦的精确度,因此要求函数在焦点附近敏感度高。

结合以上指标分析发现,低灰度值统计法和灰度非零值统计函数满足条件。其中低灰度值统计法与其他方法相比唯一的区别就是计算复杂度较低,且聚焦精度较好,因此可将此函数作为细聚焦的最优函数。而对于粗聚焦阶段,聚焦步长较大,灰度非零值统计函数的聚焦函数曲线便不会出现极大值,只有最大值,并且其单调区间较大,因此可作为粗聚焦的最优函数。

5 结 论

本文针对DNA倍体分析系统对聚焦速度的要求,从清晰度评价函数的计算速度和聚焦搜索策略两方面进行了提升。清晰度评价函数方面,提出了速度更快的低灰度值统计法和灰度非零值统计函数,在搜索策略方面,采用了改进的变步爬山法。通过实验证明,它的效率与传统的聚焦函数相比有明显的提升。下一步的工作是运用机器学习让计算机自动计算低灰度值统计法的阈值。

参 考 文 献:

[1]祝世平,房建成.一种新的能量谱-熵图象清晰度评价函数[J].北京航空航天大学学报,1999,25(6):720-723.

[2]陈木旺.浅谈共聚焦显微技术[J].光学仪器,2013,35(1):44-47.

[3]孙学俊,闫喜中,郝赤.激光共聚焦扫描显微镜技术简介及其应用[J].山西林业大学学报,2016,36(1):1-14.

[4]ZHANG Xiangfen,WU Hongfeng,MA Yan.A New Auto-focus Measure Based on Medium Frequency Discrete Cosine Transform Filtering and Discrete Cosine Transform[J].Applied and Computational Harmonic Analysis, 2016(3):430-437.

[5]CHEN Rudi, BEEK Peter van.Improving the Accuracy and Low-light Performance of Contrast-basedast-based865515000343″ Ltering and Discrete [J].Pattern Recognition Letters,2015,4(56):30-37.

[6]SUN M L,ZONG G H,YU Z W.Automatic Focusing System of Micro to Vision Based on Image Analysis[J]. Journal of Beijing University of Aeronautics and Astronautics, 2005,31(2):192-196.

[7]吳振峰,左洪福.光学显微镜自动聚焦技术研究[J].光学仪器,2000,22(4):9-12.

[8]曹茂永,孙农亮.离焦模糊图象清晰度评价函数的研究[J].仪器仪表学报,2001,22(3):259-260.

[9]卢洋,鄢志丹,崔芳芳,等.光学显微镜聚焦系统设计[J].化工自动化及仪表,2013(11):1399-1430.

[10]翟永平,刘云辉,周东翔,等.稀疏图像内容情况下显微镜自动聚焦算法[J].软件学报,2012(5):1281-1294.

[11]徐培凤,李正明,孙俊.基于图像的自动曝光算法研究[J].光学仪器,2005(2):59-61.

[12]姜志国,韩冬兵,袁天云,等.基于全自动控制显微镜的自动聚焦算法研究[J].中国图像图形学报,2004,9(4):17-23.

[13]周贤,姜威.基于图像边缘能量的自动聚焦算法[J].光学技术,2006,32(2):213-218.

(编辑:温泽宇)