基于双目标识别和准直数学模型改进的光路自动准直方法

2022-11-26 03:56郭嘉富王拯洲段亚轩王力谢正茂
光子学报 2022年11期
关键词:光路光束光学

郭嘉富,王拯洲,段亚轩,王力,谢正茂

(1 中国科学院西安光学精密机械研究所,西安 710119)(2 中国科学院大学,北京 100049)

0 引言

聚变能源是一种取之不尽的清洁能源,而惯性约束核聚变(Inertial Confinement Fusion,ICF)是获得聚变能源的一个重要途径。由于ICF装置包含大量的光学、电学组件及复杂的机械结构,为确保系统每次运行时从振荡器发出的激光束能够稳定、精确地照射到微型靶丸上,都毫无例外地配置了光束自动准直系统[1]。

中国某大型激光装置共包含8路光束,每次物理实验8路光束都需要依次完成三个准直流程,分别是光路自准直、模拟光准直和光路对接准直。根据光路准直原理[2-4],光路准直单元模型主要包含以下步骤:1)判读或者识别准直图像的光学目标中心;2)将光学目标与基准的图像偏差转化为将光学目标中心移动到目标位置所需要调整的X、Y方向电机步数;3)移动X、Y方向电机;4)重复步骤1)~3),直到光学目标中心与基准的像素偏差小于误差阈值为止。

然而,随着物理实验的不断深入,大型激光装置光路对接准直流程开始面临一些新的问题:1)光学目标个数发生变化。以前的光路对接准直流程是先关闭模拟光源再引导主激光实现准直,对接准直图像中只有1个主激光目标。现在,为了减少主激光目标的漂移对准直精度的影响,不再关闭模拟光源,这使得一幅光路对接准直图像中同时包含模拟光和主激光两个光学目标。2)光路准直数学模型的变化。新的光路准直数学模型,不仅要体现出双光学目标的特点,还要改进收敛条件,即需要判断主激光中心与目标位置中心之间的距离是否小于给定的误差阈值,而不是直接用光学目标中心坐标与基准像素偏差和设定的误差阈值作比较。3)对准直效率和时间提出了新的要求。以前大型装置的对接准直流程是不同光路串行执行的,极大地影响了准直效率,并行准直是提高光路准直效率、降低准直时间最直接有效的手段。

分析光路对接准直图像的特征,将其应用于准直图像的双目标识别算法中是完成光路对接准直的关键和前提。光路对接准直图像具有以下特点:1)图像中包含模拟光目标和主激光目标2个光学目标;2)模拟光目标光束质量较好,为实心的圆形光斑,光学目标较小,光斑直径大约40个像素;3)主激光目标光束质量较差,光斑形状极其不规则,主要表现为光束存在不确定的纹理、边缘曲折、非连续、合计面积较大;4)主激光目标光强分布很不稳定,光斑形状、强弱、位置等会随时间变化;5)模拟光目标和主激光目标的大小、相对位置、强弱不确定,而且会随着光路准直过程发生变化。

结合光路对接准直图像的特点,对几种传统激光光斑识别算法和主流的基于深度学习的目标检测方法进行分析,寻求满足精度和效率等要求的双光学目标识别算法。传统的激光光斑检测方法主要包括重心法、Hough变换法[2]及圆拟合法[3-4]等。重心法直接将二值化图像的像素点代入质心公式计算光斑中心,该方法虽然原理简单,但容易受光斑形状的影响,且无法给出半径参数。1999年,杨耀全等[2]将Hough变换应用于激光光斑检测,通过将光斑的边缘像素点从图像空间映射到参数空间,得到圆形光斑的中心、半径等信息,但受限于参数空间离散化和投票机制等原因,该方法计算时间长、精度较差。2002年,孔兵等[3]根据最小二乘原理,利用圆来逼近激光光斑的轮廓,进行激光光斑检测。在此基础上,学者们不断对其进行改进[5-7]。该类方法对于圆形的规则光斑,拟合效果较好,但对于不规则光斑,如光路对接准直过程采集的主激光光斑,拟合效果较差。根据上述分析,传统的激光光斑检测方法鲁棒性差,而且只能处理单个光学目标,无法直接处理包含两个光学目标的准直图像。

近些年,随着卷积神经网络(Convolutional Neural Network,CNN)的再次兴起,基于深度学习的目标检测方法逐渐成为目标检测领域的主流方法。基于深度学习的目标检测可以分为单阶段目标检测和双阶段目标检测。双阶段目标检测起步于2014年,GIRSHICK R等[8]提出了R-CNN算法(Regions with CNN features),该算法通过对图像使用选择性搜索生成候选区域,将候选区域送入CNN进行特征提取,使用支持向量机(Support Vector Machine,SVM)对提取的特征进行分类,再利用边框回归对候选框位置进行修正,最终实现目标检测。受何恺明等[9]空间金字塔池化网络(Spatial Pyramid Pooling Networks,SPPNet)思想的启发,GIRSHICK R等又于2015年提出了Fast R-CNN[10]和Faster R-CNN[11]等模型,对R-CNN系列不断进行补充和完善,真正实现了端到端的目标检测。2015年,REDMON J等[12]提出了单阶段目标检测的经典算法:YOLO(You Only Look Once),使用一个CNN网络直接预测不同目标的类别与位置。此后,学者们在YOLO基础上不断改进[13-14],YOLO系列目标检测的精度和速度获得了很大提高。然而,由于高成本、保密性要求等方面的原因,获取足够多的光路对接准直图像具有很大的困难,在数据集较少的情况下,训练CNN模型具有很大的困难,这种情况下,基于深度学习的目标检测算法的精度势必会受到很大影响。此外,将上述方法应用于主激光目标和模拟光目标的识别还会伴随很大程度的计算冗余和性能浪费。因此,本文光路对准流程的双目标识别暂不考虑深度学习方法。

综合上述分析,为满足大型激光装置对光路对接准直图像处理、光路准直数学模型变化、光路准直效率和时间等方面的要求,本文主要从以下三个方面进行改进:1)在传统光斑目标检测方法的基础上进行改进,实现双光学目标识别;2)构建新的多光路、双目标自动准直数学模型。在原有的大型激光装置中,8路光束的自动准直都是采用相同的电机单元准直模型[15-16],该单元准直模型存在明显的不足之处是:一是原有的数学模型中准直图像的光学目标是唯一的;二是原有数学模型仅针对单个光束;三是原有数学模型中没有体现针对多个光学目标的识别算法。3)提高准直效率,降低准直时间。对于光路准直效率和时间来说,大型激光装置要求8路准直时间小于5 min,其中每一幅图像处理时间必须小于1 s,本文从数学模型和准直模式两个方面进行优化,对多个光路进行并行准直,以减少光路准直的时间。

针对以上需求,本文提出了基于双目标识别和准直数学模型改进的光路自动准直方法。首先,提出基于圆拟合的双光学目标识别算法,实现了光路对接准直图像中主激光目标和模拟光目标的识别;其次,构建新的多光路、双目标自动准直数学模型,为光路准直中各个准直参数的标定和计算提供指导;最后,通过对多个光路进行并行准直,提高光路对接准直流程的效率。

1 理论背景

1.1 基于最小二乘法圆拟合的双目标识别算法

基于圆拟合的双目标识别算法主要步骤为:1)预处理;2)BLOB区域图像裁剪及边缘检测;3)基于最小二乘圆拟合法进行目标识别。设其中一路光路对接准直图像f(x,y),它是尺寸大小为1600×1200的8位BMP图像。

1.1.1 预处理

1)二值化

为便于统计准直图像的特征信息,使用最大类间方差法(OTSU)将原始图像f(x,y)进行二值化处理,表示为

式中,OTSU表示最大类间方差法,(x,y)表示图像坐标。

2)数字形态学处理

光路对接准直图像中包含两个光学目标,两个目标具有不同的特点:模拟光目标为光束质量较好的圆形光斑;主激光目标为纹理不规则、边缘曲折、非连续、面积较大的光斑。为了便于对模拟光目标和主激光目标进行识别,需要将包含不规则纹理的主激光目标合并为一个面积更大的、较完整的连通域。合并通过膨胀运算完成,膨胀采用的结构单元如矩阵B所示

对二值化图像进行膨胀处理,表示为

3)BLOB区域特征信息提取

二进制大对象(Binary Large Object,BLOB)区域,是指图像中具有相似特征(如纹理、颜色等),且在空间上是相互连通的像素集合,即连通域。通过BLOB分析可将目标物体与背景分离,进而提取物体特征参数,例如重心、面积、水平/垂直方向上的尺寸等等。

本文使用的目标识别方法需要对不同的BLOB区域进行裁剪和边缘检测,因此重点关注每个BOLB区域的水平/垂直方向尺寸和重心。BLOB特征信息提取表示为

式中,BlobRecognize为BLOB特征提取函数,对于每个BLOB来说,参数/特征信息提取的结果包括:area(面积)、centerx(中心坐标x方向)、centery(中心坐标y方向)、lenx(x方向轴长)、leny(y方向轴长)、fit_radius(拟合圆半径)。一幅准直图像每个BLOB区域的特征信息存储在链表中,BLOB区域和链表相同,用blobcount表示,每个BLOB区域的面积、X、Y方向轴长、中心坐标表示为

式中,endsNumber为链表对应的线段表个数,即行数,pPoint[k].x为水平线段表起始位置,pPoint[k+1].x为水平线段表终点位置,point_sum为BLOB区域包含的像素个数。

1.1.2 BLOB区域裁剪和边缘检测

对每个BOLB区域进行边缘检测之前,需要将每个BLOB区域从原始尺寸的fdilate(x,y)图像中裁剪出来。由于经过二值化和膨胀运算,fdilate(x,y)图像的每个BLOB区域尺寸比原先尺寸大。因此,所选择的BLOB区域裁剪范围是BLOB区域水平和垂直轴长的2倍。对于每个BLOB区域来说,裁剪图像表示为

式中,i表示BLOB区域编号,满足0<i<blobcount,blobcount表示BLOB区域个数表 示 第i个BLOB区域。紧接着对每一个BLOB区域裁剪图像用Sobel算法进行边缘检测,边缘检测函数表示为

1.1.3 基于最小二乘圆拟合法的目标识别

使用基于最小二乘圆拟合的目标识别基本思路为:1)统计每幅裁剪图像fiblob_cut(x,y)中BLOB区域对应像素的灰度值之和sum_all;2)将每一个BLOB区域边缘检测后的图像fisobel_cut(x,y)作为输入数据,使用FitCircle算法,拟合出每个BLOB区域边缘对应的圆心和半径;3)统计每个BLOB区域裁剪图像fiblob_cut(x,y)中位于拟合圆内像素的灰度值之和sum_inner;4)计算每个BLOB区域对应的圆拟合系数fit_ratio=sum_inner/sum_all;5)从所有BLOB区域中搜索面积最大的两个BLOB区域,作为主激光目标和模拟光目标的候选目标;6)比较候选目标的圆拟合系数和BLOB区域数目,圆拟合系数较大且BLOB数目较少的为模拟光目标,圆拟合系数较小且BLOB数目较大的为主激光目标。

基于以上思路,将基于圆拟合的目标识别算法模型化,识别过程主要分为圆拟合算法、圆拟合系数计算、圆拟合系数比较3个步骤。另外,针对特殊情况下主激光目标和模拟光目标圆拟合系数差别较小的问题,增加了新的特征参数——BLOB区域数目,作为基于圆拟合的双目标识别算法的补充,以保证识别算法的有效性。

1)基于最小二乘的圆拟合算法

通过边缘检测,每个BLOB区域边缘图像(x,y)中边缘像素的灰度值为255,其他灰度值都为0。设边缘点个数为N,将所有边缘点的X和Y方向坐标保存在数组p,q中,每一个边缘坐标可表示为(pj,qj),其中p(j)=x,q(j)=y,0≤j<N。圆拟合公式表示为

式中,圆心坐标a,b和半径r,与特征信息提取结果的对应关系为:a=fit_centerx(i),b=fit_centery(i),r=fit_radius(i)。

2)圆拟合系数计算

3)圆拟合系数比较

BLOB区域从所有BLOB区域中搜索面积最大的两个BLOB区域,作为主激光目标和模拟光目标的候选目标,表示为

式中,area(i)表示第i个BLOB区域的面积,m、n分别为面积最大的和面积第二大的BLOB区域对应的区域编号。

确定两个候选目标之后,比较对应的圆拟合系数fit_ratio,圆拟合系数较大的是模拟光目标,目标识别标志为1,圆拟合系数较小的是主激光目标,目标识别标志为2,对应的数学表达式为

4)BLOB区域数目统计

当准直图像中模拟光目标为较为标准的圆形,而主激光目标为不规则的光斑时,上述基于圆拟合的双目标识别算法能取得不错的效果。然而,对于一些特殊情况,例如,当模拟光源输出不稳定以及光路传输中光学元件干扰较强时,准直CCD探测到的模拟光目标是一个不规则的实心目标。此时,根据上述方法求得的圆拟合系数相差很小,目标识别效果会受到很大影响。这就需要结合其他特征进行综合判断,以提升特殊情况下目标识别的准确率。

进一步分析两个光学目标的特征发现两个光学目标对应的二值图像包含的连通域个数是不同的。模拟光目标是一个实心的、目标区域连续、区域中心无孔洞的光学目标,只包含一个连通域,而主激光目标是一个非实心的、目标区域不连续、区域中心包含许多空洞的光学目标,包含多个连通域。定义BLOB区域数目=候选目标的目标区域中包含的连通域数目,其中目标区域指的是候选目标在二值图像中对应的区域,目标区域的尺寸、重心等信息由本文1.1.1(3)BLOB特征提取结果决定。

根据以上分析,将BLOB区域数目作为圆拟合系数的补充,并将两个特征参数结合,共同作为基于圆拟合的双目标识别方法的判决参数,以确保目标识别方法具有较高的准确率,即

式中,BLOBcount(i)表示第i(i=1,2)个候选目标的目标区域 所 含BLOB区域 的 数 目。fit_ratio较大且BLOBcount较小的为模拟光目标,识别标志置为1;fit_ratio较小且BLOBcount较大的为主激光目标,识别标志置为2。

经过步骤(1)到步骤(4),实现了对1幅准直图像的模拟光目标和主激光目标的识别。由于大型激光装置的8路光束都需要对接准直,将8路图像的目标识别结果表示为

式中,k表示光路编号,式(13)中Basexy、Centerxy和fit_flag的所有元素构建成一个8×6的矩阵。该矩阵不仅包含了8幅准直图像的主激光中心和模拟光中心(1~4列),也包含了目标识别标志(第5~6列)。该算法是一个基于多光路的双目标识别算法,因此适用于大型激光装置8路光路对接准直流程中的双目标识别。将8路光束对应的光路对接准直图像双目标识别函数表示为

式中,输入I为8幅1600×1200图像,输出值分别为模拟光中心Basexy、主激光中心Centerxy和目标识别标志fit_flag,其中Basexy、Centerxy和fit_flag都是8×2矩阵。

1.2 多光路、双光学目标光路准直数学模型

双光学目标光路准直数学模型就是以准直图像fk(x,y)(k=1,2,…8)为输入,在对光学目标进行成功识别的前提下,将主激光目标中心Centerxy与目标位置中心Targetxy的像素偏差量ΔPixelxy转化为X、Y方向电机需要调整的步数ΔStepxy,重复图1中的步骤①到⑦,直到每路光束的主激光中心位置与目标位置之间距离Δr都小于误差阈值δ2,多光路光束的准直任务才算完成。双光学目标光路准直数学模型如图1所示。

图1 双光学目标光路对接准直数学模型Fig.1 Dual-target optical docking alignment mathematical model

1)光学目标识别函数,如步骤①所示。其中,fk(x,y)为准直图像,k表示光路编号,Basexy为模拟光目标中心,Centerxy为主激光目标中心。

2)计算主激光目标中心和模拟光中心的偏差量Δxy,如步骤②所示。

3)计算准直目标位置Targetxy,Targetxy的数值是模拟光目标中心Basexy与同轴偏差值Offsetxy之和,如步骤③所示,Offsetxy表示主激光束与模拟光束X方向和Y方向的偏差,可通过实验标定获得。

4)计算将主激光中心Centerxy移动到目标位置Targetxy的像素偏差值ΔPixelxy,如步骤④所示。

在光路对接准直过程中,主要调整主激光中心Centerxy,但由于模拟光束存在一定的漂移现象,模拟光目标中心Basexy不是固定不变的,是随着时间在小范围内变化的。因此,目标位置是一个动态变化的值,等于模拟光目标中心Basexy与像素偏差Offsetxy之和。

5)计算将主激光中心Centerxy移动到目标位置Targetxy所需调整的电机步数Stepxy,如步骤⑤所示。Ratioxy为XY方向电机移动步数与CCD相机的像素移动数之间的比例系数,当该比例系数大于0时,表示电机移动方向与主激光目标移动方向相同;当系数小于0时,则表示两者移动方向相反。

6)单束光路准直结果判断。单束光路准直成功需要满足两个条件:1)主激光中心位置Centerxy与目标位置Targetxy之间距离Δr小于误差阈值δ2,即Δr<δ2,Δr计算如步骤⑥所示;2)每束光路的准直循环次数小于20,即AACount<20。

上述单束光路准直成功的条件如步骤⑦表示,式中,AACount表示准直循环次数,AAResultk表示准直结果,Success表示准直成功,值为1,Fail表示准直失败,值为0,k表示光路编号,取值范围1~8。

7)8路光束准直结果判断。对整个装置的光路对接准直流程来说,需要8路光束中的每1路都准直成功,才能确保整个装置的准直流程是成功的,即整个装置的光路对接准直结果是8路准直结果的与操作,如步骤⑧所示。

对于一个光束收敛线程来说,由于系数标定误差以及电机移动过程刚性震荡的影响,需要多次移动X、Y电机才能将主激光中心移动到目标位置。

2 数据处理过程

基于圆拟合的双目标识别算法主要步骤为:1)预处理;2)BLOB区域图像裁剪和边缘检测;3)基于最小二乘圆拟合法的目标识别。数据处理流程如图2所示。

图2 数据处理流程Fig.2 Data processing flow

2.1 预处理

本文双目标识别算法的预处理过程,主要包括二值化、数字形态学处理和BLOB区域特征信息提取等步骤。

2.1.1 二值化

在光路对接准直流程中,光路对接准直图像是用准直CCD采集获得的。选择一幅CCD采集图像作为圆拟合算法的输入图像,原始图像如图3所示。使用最大类间方差法对原始图像进行二值化处理,结果如图4所示。由于模拟光束质量较好,模拟光目标二值化之后只有一个连通域,相反,由于主激光光束质量较差、分布极为不均匀,其二值化图像包含4个连通域。

图3 原始图像Fig.3 Original image

图4 二值化图像Fig.4 Binary image

2.1.2 数字形态学处理

根据本文1.1.1小节,为了将包含4个连通域的主激光目标作为同一个光学目标进行识别,需要对其进行数字形态学处理(膨胀运算),结果如图5所示。相比二值化图像中的光学目标,主激光目标由原来的4个BLOB区域合并成2个BLOB区域,如图5(b)所示。而模拟光目标由于本身连通性较好,经过膨胀处理后也是一个完整的BLOB区域,面积相比原二值化图像有所增加。主激光目标1次膨胀运算结果图5(b)所示。经过5次膨胀运算后,整幅图像处理结果如图5(c)所示,主激光目标完全被合并成一个完整的连通区域,如图5(d)所示。

图5 连通域合并运算结果Fig.5 The result of merging connected domains

虽然多次膨胀运算可以将主激光目标完全合并为一个更完整的目标,但需要付出很大的时间代价,例如:1次膨胀运算用时最短0.359 s,经过5次膨胀运算用时2.781 s。为了提高图像识别效率,本文选择只进行1次膨胀运算,结果如图5(a)、(b)所示。

2.1.3 BLOB区域特征信息提取

BLOB分析是将预处理后的图片通过形态学处理和连通性标记分析,提取出目标的特征参数,依据参数进行目标识别[17]。本文需要统计的BLOB特征参数主要包括:面积、中心坐标、XY方向轴长等。以本次实验为例,经过膨胀运算处理后,共检测到3个BOLB区域,每个BLOB区域的特征信息统计如表1所示。

表1 每个BLOB区域的特征信息统计Table 1 Properties information statistics of each BLOB region

BLOB区域基本特征标识了每个BLOB的面积大小、位置坐标,以及每个BLOB所在矩形区域四个角的坐标信息,为目标识别的后续步骤做好准备。

2.2 BLOB区域裁剪和边缘检测

每个BLOB区域的裁剪,是以BLOB区域的中心坐标和XY方向轴长为基准进行的,其中裁剪图像XY方向尺寸为XY方向轴长的两倍。BLOB区域的裁剪尺寸比轴向尺寸大,是因为二值化处理之后,每个BLOB区域比原始灰度图像面积小,特别是原始图像的边缘过渡区域一般处于BLOB区域边缘的外围。因此,为保证裁剪区域包含原始图像完整的目标信息,选择BLOB区域裁剪范围为原有BLOB区域的水平和垂直方向的2倍。

每个BLOB区域裁剪和边缘检测结果如图6所示,图6(a)~(c)分别为每个BLOB的裁剪结果,BLOB1区域裁剪区间为[133∶236,87∶182],尺寸为104×96,面积1959,中心坐标(185,135);BLOB2区域的裁剪区间为[324∶407,412∶507],尺寸为84×96,面积674,中心坐标(366,460);BLOB3区域裁剪[359∶372,437∶448],尺寸为14×12,面积36,中心坐标(366,443)。从裁剪图像可以看出,BLOB1和BLOB2面积最大,为候选模拟光目标和主激光目标,BLOB3面积最小,虽然属于主激光目标的一部分,但只能看作一般的离散目标,不参与后续基于圆拟合的目标识别。事实上,在真实的自动准直流程和目标识别过程中,由于CCD噪声和存在坏点的原因,离散目标经常存在,是需要舍弃掉的。

图6 每个BLOB区域裁剪和边缘检测结果Fig.6 Cropping and edge detecting results of each BLOB region

对每一个BLOB区域裁剪图像采用Sobel算子进行边缘检测,每个BLOB区域的边缘检测结果分别如图6(d)~(f)所示,每个BLOB区域的图像裁剪和边缘检测流程如图7所示。由于本文的目标识别算法对处理时间做出了要求(小于1 s),为减少边缘检测的时间,本文只对每个BLOB区域裁剪图像进行边缘检测,实际边缘检测区域大小只占原始图像大小的0.95%。通过实验对比,对1600×1200的二值化图像进行边缘检测,边缘检测用时0.469 s,对三个BLOB区裁剪图像进行边缘检测总共用时0.094 s,处理时间减少为原来的20.04%。

图7 每个BLOB区域图像裁剪和边缘检测示意图Fig.7 Cropping and edge detection schematic of each BLOB region

2.3 基于最小二乘圆拟合法目标识别

基于最小二乘圆拟合法的目标识别主要包含3个步骤:1)圆拟合;2)拟合系数计算和BLOB区域数目统计;3)圆拟合系数及BLOB区域数目比较。

2.3.1 基于最小二乘圆拟合

经过图像裁剪和边缘检测后,将每个BLOB区域的边缘点坐标分别记录在数组中,数组长度表示每幅裁剪图像中灰度值为255的像素个数。X、Y坐标值是在原始图像(1600×1200)中的绝对坐标,在圆拟合过程中不需要经过坐标变换,可以简化运算步骤。依据式(7)~(8),使用基于最小二乘法的圆拟合方法,获得每个BLOB区域边缘对应的圆心和半径,每个BLOB区域的圆拟合过程和目标识别结果如图7和表2所示。

表2 候选目标的目标识别结果Table 2 Object recognition results of candidate targets

图7主要展示对两个候选目标的识别,其中第③列为边缘检测结果,第④列为圆拟合结果,浅蓝色为使用最小二乘法拟合的圆环。在第①行第④列,可以看出模拟光目标的边缘圆环和拟合圆环相似度非常高,两个圆环基本上是重叠在一起的,拟合圆心和半径分别为(184.60,134.63)和25;在第②行第④列,主激光目标的边缘曲线和拟合圆环形状是完全不同的,只有重心坐标基本上是重合的,其中拟合圆心和半径分别为(362.30,461.29)和19.25,这是因为主激光目标是形状不规则、分布不均匀的光学目标,各个边缘点不符合圆环的坐标分布。

2.3.2 拟合系数计算和BLOB区域数目统计

为了利用圆拟合结果定量描述两个目标的分布特征,将每个BLOB区域的拟合圆环与BLOB区域的二值化图像叠加在一起,如图7第⑤列所示,通过观察发现,模拟光目标所有灰度值为255的像素基本都位于拟合圆环以内,而主激光目标却只有一部分位于拟合圆内。参考式(9),圆拟合系数=(BLOB区域拟合圆环内灰度值255的像素个数)/(BLOB区域灰度值为255的总像素个数)。于是BLOB1区域的圆拟合系数=1888/1959=0.9638,BLOB2区域的圆拟合系数=485/674=0.7196。

类比2.2节的裁剪方法,将两个候选目标对应的目标区域分别从二值图中(图4)裁剪出来。将目标区域所包含的连通域的个数记为该候选目标的BLOB区域数目,统计结果如图8所示,BLOB1的区域数目=1,BLOB2区域数目=4。

图8 BLOB区域数目统计Fig.8 Statistics of BLOB region number

2.3.3 圆拟合系数及BLOB区域数目比较

比较两个候选目标的圆拟合系数和BLOB区域数目,由于fit_ratio1>fit_ratio2且BLOBcount1<BLOBcount2,因此将BLOB1对应的目标识别标志记为1,目标识别结果为模拟光目标;将BLOB2对应的目标识别标志记为2,目标识别结果为主激光目标。两个候选目标的目标识别结果如表2所示。

准直CCD图像经过预处理、图像裁剪和边缘检测、拟合系数计算和BLOB区域数目统计、圆拟合系数和BLOB区域数目比较等过程,就可以完成对模拟光目标和主激光目标的识别。

3 实验结果分析

经过数据处理,完成了光路对接准直过程中主激光目标和模拟光目标的识别,接下来还需要对该目标识别算法的准确率和识别精度进行验证。为了与原型装置参数测量系统运行环境保持一致,软件部署在Win XP环境下,开发工具选用VC++6.0,计算机硬件参数为:CPU型号Intel(R)Core(TM)i5 CPU M 450,内存4G。本章节包含以下几个方面:1)光学目标中心识别精度分析;2)目标识别算法重复精度分析;3)光路自动准直处理时间性能提升分析。

3.1 目标识别算法对于光学目标中心的识别精度分析

目标识别算法的主要实验指标:一是两个光学目标的识别准确率;二是识别算法对两个光学目标中心的识别精度。两个目标的识别准确率,是相对于不同的图像来说的,本文将其放在3.2节进行分析。对于两个光学目标中心的识别精度来说,由于本文目标识别算法对于每个BLOB区域获得了两个中心,即BLOB区域中心和圆拟合中心,这就需要将每个区域的BLOB区域中心和圆拟合中心与标定中心进行比较,选择最佳中心点。每个BLOB区域的标定中心与模拟光中心和主激光目标中心比较结果如表3所示。

其中,模拟光中心和主激光中心的标定方法为:对于模拟光目标来说,标定中心X=(上边缘坐标+下边缘坐标)/2,标定中心Y=(左边缘坐标+右边缘坐标)/2,边缘坐标是指上升沿/下降区间峰值50%位置对应的坐标值。对于主激光目标来说,由于光斑分布不均匀,经过形态学处理后对应多个连通域,本文选择其中面积最大的连通域内的灰度峰值点作为主激光目标的标定中心。

根据以上标定方法,每个目标的BLOB区域中心与标定中心的误差如表3第4列所示,每个目标的圆拟合中心与标定中心误差如表3第6列所示。其中,模拟光目标和主激光目标圆拟合中心与标定中心的误差小于3个像素,最大值误差为2.79。模拟光目标和主激光目标BLOB区域中心与标定中心的误差不全部小于3个像素,最大误差值为5.81。因此,根据准直实验对于误差精度的要求,选择圆拟合中心作为光路准直过程中两个目标的中心。

3.2 目标识别算法重复精度分析

为了验证基于圆拟合的双目标识别算法的重复精度,在同一个准直流程中,对不同时间、不同光路的准直图像进行目标识别操作,统计和分析该目标识别算法的识别精度、识别时间、识别准确率等参数,以确定该算法的重复精度。表4统计了8路光路图像的目标识别结果,每路2幅图像,共16幅图像。其中前8幅图像对应的模拟光目标和主激光目标裁剪结果如图9所示。

图9 8幅图像对应的模拟光目标和主激光目标裁剪结果Fig.9 The cropping results of analog laser target and main laser target corresponding to the 8 images

表4 16幅准直图像目标识别结果统计Table 4 Statistic of target recognition of 16 alignment images

从表4的统计结果可以知道,16幅准直图像的目标识别时间最长为1.484 s,最短0.656 s,平均准直时间为0.952 s,小于1 s,16幅准直图像的目标识别全部成功,满足目标识别准确率大于90%的要求。

根据3.1节的分析,识别误差只需要比较模拟光/主激光目标的圆拟合中心与标定中心即可。另外,从表4还可以看出,模拟光目标X方向的识别误差最大值为3.20,Y方向为-4.00,X方向和Y方向的识别误差平均值分别为-1.85和-2.60。主激光目标X方向的识别误差最大值为-3.30,Y方向为-5.03,X方向和Y方向的识别误差平均值分别为2.40和-1.63。平均识别误差都小于3个像素,满足准直流程对于目标识别精度的要求。整体来说,模拟光目标的识别误差较小,而主激光目标的识别误差较大,因此,降低主激光目标的识别误差,是本文识别算法后续的研究目标。

通过以上分析,本文目标识别算法不仅实现了模拟光目标和主激光目标的识别,而且能够满足识别不同图像对于重复精度的要求,是光路对接准直流程用于光学目标判读的一个非常有效的方法。

3.3 光路自动准直处理时间性能提升分析

光路对接准直流程需要在打靶实验前完成,因此不仅对目标识别有准确度和精度的要求,对准直流程的时间也提出了要求。影响准直流程处理时间的要素主要有两类:1)目标识别算法的处理时间;2)8路准直流程所消耗的时间。

减少目标识别算法的处理时间,主要从两个方面进行:1)减少数字形态学处理的时间;2)减少边缘检测的时间。针对1),本文在2.1.2小节已经指出,为保证图像识别效率,选择采用1次膨胀运算。针对2),由于目标识别算法处理时间小于1 s,为节省边缘检测的时间,本文将各个BLOB区域从整幅图像中裁剪出来,再进行边缘检测。以本次实验选择的图像(对应表5中的Img1)为例,实际边缘检测区域大小只占原始图像大小的0.95%。对1600×1200的二值化图像全图进行边缘检测,用时0.469 s,若只对BLOB区域进行边缘检测仅用时0.094 s,处理时间减少为原来的20.04%。

表5 目标识别算法时间分析Table 5 Time analysis of object recognition algorithm

表5统计了5幅不同的准直图像在不同条件下膨胀和边缘检测的时间。从表中可以看出,如果选择1次膨胀处理,平均膨胀时间0.312 s,选择5次膨胀处理的平均处理时间为1.947 s。此外,对裁剪图像进行边缘检测,平均时间为0.113 s,对整张图进行边缘检测的平均时间为0.775 s,整个图像的目标识别时间(包括预处理、边缘检测、圆拟合等过程)最大提升比例为82.82%,总提升比例的平均值为76.53%。对于整个目标识别时间而言,最长时间1.237 s,最短0.656 s,平均目标识别时间0.972 s,满足准直流程中对于目标识别时间小于1 s的要求。

3.4 光路对接并行准直性能提升分析

大型激光装置光路准直的三大准直流程之间有严格的先后顺序,依次是光路自准直、模拟光准直和光路对接准直。在原先的光路对接准直流程中,8路光束都采用串行准直的方法,即依次执行光路1、光路2至光路8的单元准直模型,当8路单元准直模型全部执行完毕,光路对接准直流程才算完成。单元准直模型[14-15]如图10所示,主要包含图像采集、光学目标识别、偏差与电机步数计算、准直结果判断4部分。串行准直虽然控制流程相对简单,但是严重降低了光路对接准直的效率。8路光路对接准直完成时间大约需要5 min,完成三大准直流程时间大于15 min,这就导致大型激光装置实验的准备时间长、实验效率低。

图10 单元准直模型Fig.10 The unit alignment model

为了提高光路对接准直的效率,本文将8路光束依次串行准直改进为8路光束并行准直,并行光路对接准直流程如图11所示。对整个8路光束来说,每1路启动一个光束准直线程,共8个线程,每个线程对应一个单元准直模型的执行过程。当8路线程都执行完毕,统计最终的准直结果。

图11 并行光路对接准直Fig.11 Parallel optical docking alignment

为说明并行光路对接准直在性能上的提升,在相同硬件条件下,将串行准直和并行准直进行比较。假设启动光束准直线程用时4 s,图像采集时间1 s,目标识别时间3 s,电机运动时间3 s,平均准直循环次数5次,统计8路准直结果时间6 s,那么对于并行准直来说,光路对接准直时间为45 s;对于串行准直来说,光路对接准直用时290 s。通过比较可以看出,并行光路对接准直对于准直效率的提升是十分明显的。

需要进一步说明的是,本文对于光路对接准直的性能提升不仅体现在并行准直性能提升,还体现在目标识别算法性能提升。目标识别算法性能提升措施有:1)图像裁剪,减少参与运算的像素个数;2)选取最优的结构单元,通过一次膨胀就能有效实现主激光目标各个非连续区域的合并,避免将分布不均匀的主激光目标当作多个目标进行处理,从而提高目标识别的准确率。原始图像尺寸为640×480,目标识别算法的识别时间是3.469 s,现有图像虽然尺寸增加为1600×1200,但经过性能提升后平均处理时间仅0.9722 s。由此可见,本文提出的目标识别算法和并行准直两个改进措施,对于大型激光装置准直性能的提升是极其明显的。

4 实验验证

本节通过实验来验证本文提出的基于双目标识别和准直数学模型改进的光路自动准直方法对大型激光装置光路对接准直流程的性能提升作用。

4.1 激光参数诊断平台

某原型装置的光束控制与参数诊断系统是一个多功能、高准确度的激光参量诊断平台。该平台是一个包含光学取样组件、探测元器件、伺服系统、监视系统、控制系统等子系统的闭环调控监视系统[18],用来精密诊断原型装置输出激光光束特性,包括能量、近场、远场、时间波形等。大型激光装置光路自动准直系统需要完成三个准直流程,分别是光路自准直、模拟光准直和光路对接准直流程。在利用模拟光源成功准直后端光束之后,再利用光路对接准直系统对前端光束进行调整。光路对接准直流程涉及到的仪器/设备如表6所示。

表6 光路对接准直流程控制设备统计Table 6 Statistics of optical docking alignment control devices

4.2 光路自动准直软件

大型激光装置对于光路自动准直流程的控制,是通过光路自动准直软件实现的。光路对接准直流程共包含8个步骤:1)关闭准直模拟光;2)测试自动准直的所有服务;3)打开三倍频模拟光源激光器;4)打开三倍频模拟光源激光器光闸;5)调整三倍频模拟光源亮度(照明);6)移动电机到准直位置;7)准直CCD采集图像求中心,调整BM6到目标位置;8)关闭三倍频模拟光源激光器。在选择准直次序时,准直开始项目的次序一定要小于等于准直结束项目的次序。而且只有前面的准直项目运行成功,才能运行后面的准直项目。当成功执行“采集准直CCD求中心,调整BM6到目标位置”步骤后,光路对接准直成功。成功时的软件界面如图12所示。

图12 光路对接准直成功时的软件界面Fig.12 The software interface when the optical docking alignment is successful

4.3 双光学目标识别算法与多光路准直数学模型的关系

为了说明双光学目标识别在光路对接准直流程中的识别效果,图13对8路光束在准直开始阶段和准直成功阶段的双光学目标识别结果进行了比较。在准直开始和准直成功阶段,需要分别采集8路光束的准直图像。图中第1、3列分别对应开始阶段和成功阶段采集的准直图像。准直图像采集完成后,使用本文提出的双光学目标识别算法识别得到模拟光目标和主激光目标的参数信息,然后将参数用于光路对接准直的后续流程。图13的第2、4列分别对应8路光束开始阶段和成功阶段准直图像的目标识别结果。红色“+”为模拟光目标Basexy的标识,绿色“+”为主激光目标Centerxy的标识,蓝色“+”为目标位置Targetxy的标识,数字表示对应目标的坐标。图13最下方为多光路准直数学模型与光学目标识别算法的关系说明。

以光路S1为例,准直开始阶段光学目标识别结果为:模拟光目标中心Basexy=(507.24,245.86),主激光目标中心Centerxy=(264.50,253.90)。根据图1双光学目标光路对接准直数学模型,在同轴偏差Offsetxy=(122.00,57.00)条件下,主激光目标对应的准直目标位置Targetxy=(629.24,302.86)。将主激光目标调整到目标位置Targetxy对应的像素差值ΔPixelxy=(364.74,48.96),对应的BM6电机移动步数ΔStepxy=(-91.18,14.00)。同理,在准直成功阶段光学目标识别结果为:Basexy=(507.24,245.86),Centerxy=(633.10,299.50)。此时Targetxy=(629.24,302.86),ΔPixelxy=(-3.86,3.36),ΔStepxy=(0.94,1.10)。需要说明的是,在准直成功阶段,ΔPixelxy已经小于4,满足对接准直流程对误差的要求,这说明光束收敛过程(调整BM6电机将主激光中心移动到目标位置)已经完成,光路对接准直已经成功。另外,每路光束的光束收敛过程不是执行1次就能完成的,本次实验平均每路执行4次光束收敛才完成了8路光束的自动准直,8路光束至多运行目标识别算法32次。由此也间接说明,本文提出的双光学目标识别算法的重复精度是十分有效的。

为了进一步说明多光路准直数学模型的计算过程,图14用图例直观展示了图13准直开始阶段和准直成功阶段多光路准直数学模型相关参数的变化过程。

图14 从上到下分为3部分,第1部分对应准直开始阶段,第2部分对应准直成功阶段,第3部分对应数学模型的计算过程。红色框标识的是光学目标识别算法的输出参数,包括模拟光目标中心Basexy和主激光目标中心Centerxy,黑色框标识的是预先标定的参数,包括轴向偏差值Offsetxy以及电机步数与图像像素之间的比例系数Ratioxy,绿色框标识的是光束收敛过程的重要参数,包括主激光对应的目标位置Targetxy,以及将主激光中心移动到目标位置的像素偏差值ΔPixelxy及其对应的电机移动步数ΔStepxy。

对比准直开始阶段和准直成功阶段会发现,它们的Basexy是相同的,Centerxy是不同的,这说明经过光束收敛过程,模拟光的位置保持不变,而主激光目标的位置在发生改变。此外,准直开始阶段的Centerxy和Targetxy对应的ΔPixelxy和ΔStepxy都很大。准直成功阶段的Centerxy和Targetxy对应的ΔPixelxy很小,全部小于4个像素,对应的电机移动步数ΔStepxy也很小,这说明经过光束收敛过程,主激光目标中心Centerxy已经逐步调整到目标位置Targetxy,大型激光装置的光路对接准直流程已经顺利完成。

对图13、图14进行分析可以看出,多光路准直数学模型与光学目标识别算法的关系为:后者为前者提供输入参数。除此之外,两者的关系还具备以下特点:1)多光路数学模型将双光学目标识别算法和并行准直结合,为识别算法提供应用场景;2)两者都是为了保证光路对接准直流程的顺利进行;3)多光路准直数学模型的矩阵化表示方式能够为更多光路大型激光装置的光路自动准直提供理论指导。

图14 光路对接准直流程中准直数学模型运算过程说明Fig.14 Alignment mathematical model illustration of optical docking alignment process

本节对本文提出的目标识别算法进行了实验验证,得出以下结论:1)该目标识别算法能够顺利完成光路对接准直流程的双光学目标识别,充分说明该算法的可行性和可靠性;2)多光路准直数学模型的输入为双光学目标识别算法的输出,多光路准直数学模型为双光学目标识别算法提供应用场景;3)目标识别算法性能提升和并行准直优化,这说明目标识别算法和并行准直两个改进措施,对于大型激光装置的性能提升是十分巨大的。

总之,本文提出的基于圆拟合的双光学目标识别算法,满足了大型激光装置光路对接准直过程对精度和效率的要求。本文改进的数学模型将双光学目标识别和多光路准直有机结合,对大型激光装置光路对接准直流程的成功具有指导意义。

5 结论

本文提出了基于双目标识别和准直数学模型改进的光路自动准直方法。针对光路对接准直图像的特点,在传统光斑目标检测方法的基础上进行改进,提出基于圆拟合的双光学目标识别算法;构建了新的多光路、双目标自动准直数学模型,新模型不仅体现了多光路、双光学目标的特点,还改进了收敛条件,能够为光路准直中各个准直参数的标定和计算提供指导;最后,优化准直流程的调度,通过对多个光路进行并行准直,提高光路对接准直流程的效率。实验结果表明:本文提出的基于圆拟合的双光学目标识别算法,识别误差精度小于3个像素,处理时间小于1 s,能够满足大型激光装置光路对接准直过程对于精度和效率的要求。本文构建的基于多光路、双目标自动准直数学模型,对于光路对接准直流程的成功具有指导意义,本文提出的光路自动准直方法,对于更多光路大型激光装置的光路自动准直也具有一定的参考价值。

猜你喜欢
光路光束光学
气球上的五星期(九) 光束与金矿
滑轮组的装配
光学常见考题逐个击破
诡异的UFO光束
自制立体光路显示仪
通天之光路
激光探索
浅谈汽车前照灯近光光束垂直偏移的检测及调整
光学遥感压缩成像技术
Endress+Hauser 光学分析仪WA系列