APP下载

激光模拟射击高精度命中环数算法研究

2023-01-30李长桢

激光与红外 2022年12期
关键词:参考点光斑畸变

周 鹏,李长桢,郑 毅,韩 隆

(华北光电技术研究所,北京 100015)

1 引 言

近年来,随着激光技术的快速发展,光电设备在模拟训练器材中的应用越发成熟,以激光打靶来代替实弹射击的激光模拟射击广泛应用于竞技射击、军事训练以及仿真射击娱乐项目中[1-3]。

激光模拟射击自动报靶系统中命中环数的采集方式分为基于光电传感式和基于图像处理两种类型。光电传感式报靶系统采用安装在靶上的光电传感器阵列探测激光,自动报靶速度快,但其报靶精度与光电传感器密度相关,精度越高所需要光电传感器密度越高,而成本也越高,还存在抗干扰能力差、安装复杂、维护困难等缺点[4-5]。图像处理式报靶采用高清摄像技术采集靶面图像,通过图像处理算法对靶面图像进行处理,计算出命中环数,从而完成报靶,其报靶精度高,且系统硬件成本低,安装维护方便,能够在复杂光线环境下稳定运行[6]。

图像处理式报靶系统通过计算图像中激光光斑中心与靶环中心之间的距离来确定命中环数,其结果是否准确可靠取决于是否能够准确找到图像中靶环的中心和激光光斑的中心。文献[7]中以10环小圆内所有像素点坐标值的平均值作为靶环的中心,通过图像相减来提取激光光斑,并采用灰度重心法计算其中心,进而计算出命中环数;文献[8]在确定靶环中心时通过提取环线进行圆拟合得到圆心作为靶环中心,通过图像相减来提取激光光斑,以光斑轮廓的最大内接圆表示光斑区域,圆心为光斑中心,进而计算出命中环数。这些方法在光斑形状规则、亮度均匀,且图像没有畸变的情况下,计算结果是准确可靠的。但是在实际应用中,光斑形状不规则、亮度不均匀、杂光等会影响光斑中心计算精度,并且摄像机镜头的光学畸变和拍摄角度的问题会使采集到的靶面图像有畸变,在畸变的图像中使用上述方法进行计算,得到靶环中心和光斑中心会存在较大误差,对于一些报靶精度要求很高的应用场景如竞技射击运动中,这样的误差超出了允许范围,计算出的结果不能代表运动员的真实射击成绩。针对上述问题,本文提出一种高精度命中环数算法,利用参考点来确定靶环中心,根据光斑实际情况改进光斑中心算法,通过图像中参考点与实际参考点位置对应关系来校正靶面图像中畸变的点,得到准确的光斑中心及靶环中心,进而计算出准确的命中环数,提高了命中环数的精度。

2 命中环数误差来源

2.1 激光模拟射击系统

本文所述算法实际应用的激光模拟射击系统主要由仿真激光枪、靶、摄像机、主机和显示终端组成,如图1所示。系统工作时,仿真激光枪在发射激光的同时通过无线传输的方式发射同步信号,主机接收到同步信号后给控制摄像机采集靶面图像,然后对图像进行处理,通过命中环数算法计算出激光光斑命中的环数,在显示终端的上显示命中环数与命中点位置并语音报靶。

图1 激光模拟射击系统示意图Fig.1 Laser simulation shooting system

摄像机置于靶面正后方的封闭腔体中,且靶面不能透过环境光,只能透过激光器发出的激光,所以摄像机只能采集到的图像中只有激光光斑而没有靶环,因此需要在靶面上设置参考点,通过参考点来建立靶面坐标系,以此确定靶环中心及激光光斑中心在靶面上的位置,从而计算出命中环数。靶面图案及参考点位置如图2所示,靶面上共有8个参考点,为靶面上一正方形的四个顶点和四边中点,靶环区域位于正方形中央,并且靶环中心与正方形中心重合。

图2 靶面示意图Fig.2 Target

2.2 图像畸变

摄像机通过镜头在图像传感器上所成的像为倒立缩小的实像,可将其简化为小孔成像模型,物体P在像平面上成倒立的实像P′,为了便于分析,假设将像平面移至物方,所成像为正立的实像P″,大小与P′相等,如图3所示。

图3 小孔成像模型示意图Fig.3 The pinhole imaging model

在镜头没有畸变的情况下,物平面上的所有物点与像平面对应像点的连线交于小孔中心点O,成像的过程即为物平面上的上的物点以中心O为基准,投影成像平面上的像点,所以摄像机成像过程是单点透视投影[9],摄像机拍摄靶面时将靶面经过透视变换,生成另一个平面图像。如图4所示,当正方形ABCD所在平面与光轴OZ垂直时,也即物平面与像平面平行,此时像平面上投影生成的四边形A′B′C′D′仍为正方形,只是大小发生变化而没有出现变形,这种投影称为正投影。

图4 透视投影示意图Fig.4 Perspective projection

但是在实际应用中,此激光模拟射击系统基于成本的限制和安装维护便利性的考虑,摄像机与靶均采用较为简单的结构进行安装固定。由于没有光学基准面,安装时无法确保摄像机光轴对准靶环中心且像平面与靶面平行,会使得摄像机拍摄到的靶面图像存在透视变形,即四边形A′B′C′D′不再是正方形,表现为“近大远小”,透视变形是造成图像畸变的原因之一。

造成图像畸变的另一个原因是镜头的光学畸变。镜头光学畸变属于非线性畸变[10-11],主要有径向畸变、偏心畸变和薄棱镜畸变。其中径向畸变是指所成像点相对于理想像点位置发生径向偏移,是共轴球面光学系统中的一种像差,光学系统设计时就存在,对图像的影响最为显著;偏心畸变和薄棱镜畸变是由于透镜在制造、装配过程中存在误差而产生的,通常情况下对图像影响较小,本文主要考虑径向畸变。

径向畸变的大小与像点到光轴即图像中心的大小有关,图像中心处无畸变,随着所成像由中心向边缘移动,径向畸变就会越来越大。当像点相对于理想像点位置朝着图像中心方向移动时,会产生负畸变,也叫桶形畸变,如图5(b)所示,多出现在广角镜头中,并且镜头视场角越大,图像畸变也越大;反之,当像点对于理想像点位置朝着远离图像中心方向移动时,则会产生正畸变,也叫枕形畸变,如图5(c)所示,一般出现在长焦镜头中。

图5 径向畸变示意图Fig.5 Radial distortion

在透视变形与镜头光学畸变的共同作用下,摄像机拍摄到的靶面图像会出现非线性畸变。这种非线性畸变会导致图像上靶环中心的定位存在误差,并且图像中靶环中心到光斑中心的距离与真实距离不再是简单的线性对应关系,若以此直接计算命中环数,最后得到的结果与真实命中环数会存在较大误差。

2.3 光斑中心定位

除了图像畸变会对计算得到的命中环数产生影响外,光斑中心定位是否准确也会影响命中环数结果。常用的光斑中心定位算法有灰度重心法、圆拟合法和高斯拟合法等[12]。灰度重心法适用于光斑清晰且分布均匀的情况,其优点是计算速度快,但对于分布不均匀的光斑,使用这种方法将产生较大误差。圆拟合法计算速度快、精度高,但抗干扰能力较差,当噪声存在时,会导致光斑中心定位精度降低,噪声较大甚至会产生错误结果。高斯拟合法适用于激光实际光强分布符合高斯分布的情况,对于较为理想的光斑其计算精度高,其缺点是计算耗时,实时性差。

3 命中环数算法

为了消除由于图像畸变和光斑中心定位误差对命中环数的影响,提高命中环数精度,本文提出一种高精度命中环数算法,算法流程如图6所示。

图6 命中环数计算流程Fig.6 Calculation process of hit rings

①对原始靶面图像进行高斯滤波降噪的预处理,然后设置阈值对图像行进二值化处理;

②利用角点检测算法计算出8个参考点坐标;

③在命中判别区域中利用改进的灰度重心法计算光斑中心坐标;

④利用中点参考点计算出透视投影变换系数,对原始靶面图像进行透视变形校正,得到校正后的参考点坐标和光斑中心坐标;利用8个参考点计算出径向畸变系数,对透视变形校正后的靶面图像进行径向畸变校正,得到无畸变的参考点坐标、光斑中心坐标和靶环中心坐标;

⑤通过无畸变靶面图像上参考点之间的像素距离与实际靶面上参考点之间的距离对应关系,计算出实际靶面上光斑中心到靶环中心的距离,根据环数规则计算出命中环数。

3.1 光斑中心计算

摄像机拍摄到的光斑图像如图7(a)所示,中央亮斑亮度均匀但其周围有散斑,因此不能直接采用灰度重心法计算光斑中心。通过对图像分析可知,图像中散斑像素的灰度值约为中央亮斑像素灰度值的80 %。为了提取出清晰且均匀的光斑,将光斑所在区域最大像素灰度值的85 %作为阈值对图像进行二值化处理,处理完得到的光斑图像如图7(b)所示。

图7 激光光斑示意图Fig.7 Laser spot

然后利用灰度重心法计算光斑中心坐标,公式如下:

(1)

其中,M、N为图像各分区的宽高像素数;G(i,j)为图像二值化后像素点的值,取值为0或1。

3.2 图像畸变校正

用摄像机采集靶面图像的过程可分解为如下步骤,首先真实的靶面经过透视投影,在摄像机图像传感器所在平面上形成有透视变形的靶面图像,此图像再经过镜头径向畸变作用,得到畸变后的靶面图像,然后再经过图像传感器数字化、离散化处理,最终得到一幅有畸变的靶面图像。因此,在校正图像畸变时,可分为两步,先校正透视变形,然后校正径向畸变。

透视变形校正是将畸变图像上的各点经过透视投影,变换到与实际靶面平行的一个平面上,这个平面与实际靶面的投影关系为正投影,由于正投影不改变图形的形状,所以通过此透视投影即可消除透视变形。

设物平面上一点Q在物平面坐标系上的坐标为(x,y),其齐次坐标为(x,y,1),经透视投影后得到点Q′,点Q′的齐次坐标为(x0,y0,w),点Q′在像平面坐标系的坐标为(x′,y′),则透视投影变换可表示为:

(2)

变换矩阵中的a33代表缩放因子,可令a33=1,将(2)式展开可得

(3)

由此式可将透视投影中两个平面上的点的坐标进行相互转换[13]。

由公式(3)可知,透视投影变换中一个点对可以产生两个方程,要想求解8个未知的变换系数,需要不共线的4个点对提供8个方程来进行求解。因为图像存在径向畸变,畸变图像中的8个参考点不再是正方形的顶点和各边中点,根据径向畸变的特性,作为各边中点的参考点距离图像中心距离更近,径向畸变也越小。因此,在校正透视变形时用各边中点的参考点进行计算,误差更小。

MA=U

(4)

其中M为8阶方阵,A为投影变换系数组成的列向量,U为投影变换后的参考点坐标组成的列向量,则:

A=M-1U

(5)

由此可以求解出投影变换系数,再将畸变图像中光斑中心点、图像中心和其余参考点的坐标代入公式(3),即可求出经过投影变换后的对应点坐标。

在经过透视变形校正的图像中,以图像中心为径向畸变中心点,径向畸变模型[14-16]如下:

(6)

(7)

其中,Spixel为像元的实际尺寸。根据理想共轴球面光学系统垂轴放大率公式[17],可计算出对应的无畸变理想像高rui为

(8)

其中,f为镜头焦距;l为靶面到摄像头的距离,即物距,当靶环中心与图像中心重合时,r为实际靶面上参考点到靶环中心的距离,若靶环中心与图像中心不重合,计算r时需要将靶环中心与畸变中心的偏移量一起纳入计算。

将各参考点的畸变像高rdi与无畸变像高rui以及畸变中心点代入公式(6),采用最小二乘法求解出径向畸变系数k1、k2、k3。再利用公式(6),可求解出经过透视变形校正的图像中各点(u′,v′)经过径向畸变正后的坐标(xu,yu),公式如下:

(9)

由此可计算出在无畸变图像中各参考点、光斑中心点和靶环中心的坐标。

3.3 命中环数计算

在无畸变靶面图像中,将坐标原点移至靶环中心,设此时光斑中心的坐标为(xL,yL),在实际靶面上光斑中心到靶环中心的距离LLT为

(10)

真实的子弹打在靶面上会产生一个弹孔,命中环数是根据弹孔边缘与靶环中心最近的距离来计算,激光模拟射击在计算命中环数时需要以光斑中心为圆心、与真实子弹弹孔直径相等的圆来模拟弹孔,计算出准确的命中环数。因此,计算环数时还需要用光斑中心到靶环中心的距离LLT减去弹孔的半径,再判断这个距离属于几环区域,从而得到准确的命中环数。以下图8所示为例,虽然光斑中心在2环与三环之间,但激光射击后产生的“弹孔”已经跨过3环线,因此此次射击的命中环数为3环。

图8 环数计算示意图Fig.8 Hit rings calculation

4 实验结果与分析

为了验证本文算法的精度与可靠性,设计并进行了如下实验。

激光器采用波长650 nm的半导体激光器,功率为5 mW,激光器与目标靶之间距离为10 m,出射激光打到靶上的光斑直径约3 mm,模拟直径为4.5 mm的铅弹。目标靶采用10 m气步枪靶,1环为直径45.5 mm的圆,环间距2.5 mm,环线宽度0.1~0.2 mm,9环为直径5.5 mm圆,10环为中心处直径0.5 mm的点。靶环图案印刷在透明有机玻璃板一面上,在靶环四周预留8个透光区域,其中心角点作为参考点,参考点组成的正方形边长为180 mm,除参考点区域外其余部分均不透光,仅能透过激光器发出的激光,靶板安装在封闭腔开口处,如图9所示。

图9 靶板及其安装示意图Fig.9 Target plate and its installation

采集图像所用摄像机为黑白的工业相机,其像元大小为4.8 μm,镜头为广角镜头,焦距4 mm,摄像机安装在封闭腔内部、靶板的正后方,图像中心对准靶环中心且光轴垂直于靶面,相机与靶板之间的距离为159 mm。摄像机与电脑相连,采集到图像后传输至电脑,用MATLAB编写的命中环数算法程序进行处理计算,采集到的靶面图像如图10所示。

图10 摄像机采集到的靶面图像Fig.10 Target image captured by camera

激光器射击15次,原始靶面图像直接计算出的命中环数、本文算法计算出的命中环数与实际命中环数结果如表1所示。

从表1中数据可以看出,15次射击中,本文算法计算出的命中环数有14次与实际命中环数一致,仅有1次比实际命中环数小0.1环;而用原始靶面图像直接计算的命中环数结果仅有10次与实际命中环数一致,在命中环数不一致的5次中,有4次比实际命中环数小0.1环,1次小0.2环。由此可知,本文算法的命中环数结果更接近真实命中环数。与环数对应的光斑中心到靶环中心距离如表2所示。

表1 命中环数结果对比Tab.1 Comparison of hit rings

表2 光斑中心到靶环中心距离结果对比Tab.2 Comparison of the distance between the center of the spot and the center of the target rings

从表2中数据可知,在每次射击中,本文算法得到的光斑中心到靶环中心的距离与实际值的距离误差均小于直接用原始靶面图像计算得到的距离与实际值的距离误差,本文算法距离误差最大值为0.0661 mm,而直接用原始靶面图像计算的距离误差最大值为0.4763 mm,也就说明本文算法得到的光斑中心到靶环中心的距离更接近于实际值。此外,由于靶板和摄像机的安装误差,导致靶环中心与图像不重合,使得光斑在靶面不同方向上的距离误差大小不一致,总体上,越靠近靶环中心,距离误差越小。

由以上实验结果可知,本文算法能够有效地消除图像畸变和光斑中心定位带来的误差,提高命中环数精度,其命中环数达到0.1环级别,光斑中心在靶面上的定位精度达到0.1 mm级,能代表真实射击命中环数。

5 结 论

本文通过对命中环数误差来源分析,针对由于图像畸变和光斑中心定位误差而造成命中环数计算结果与实际值偏差较大的问题,提出一种高精度命中环数算法。算法通过参考点确定靶环中心,采用带阈值处理的灰度重心法计算光斑中心,利用参考点对畸变图像进行透视变形校正和径向畸变校正,消除因图像畸变而带来的计算误差,最后计算出准确的射击命中环数。实验结果表明,本文算法相比于不考虑图像畸变的环数计算结果更为准确,精度更高,能有效提高命中环数精度,其命中环数达到0.1环级别,光斑中心在靶面上的定位精度达到0.1 mm级,能代表真实射击成绩,在激光模拟射击中具有实用意义。

猜你喜欢

参考点光斑畸变
FANUC 0i-MF数控系统参考点建立与调整
几何特性对薄壁箱梁畸变效应的影响
有趣的光斑
有趣的光斑
夏末物语
数控机床返回参考点故障维修
在Lightroom中校正镜头与透视畸变
基于参考点预测的动态多目标优化算法
大光斑1064nmQ开关Nd:YAG激光治疗黄褐斑的临床研究
波纹钢腹板连续刚构桥扭转与畸变的试验研究