基于视觉的飞机操纵系统输入端位置测量技术

2023-02-28 05:47杜官明高敬博
测控技术 2023年2期
关键词:角点位姿测距

杜官明, 孙 瑾, 高敬博

(南京航空航天大学 民航学院,江苏 南京 210016)

飞行数据指记录下来的用于描述飞机运动状态和飞机各系统工作状态参数的集合,主要包括飞机设计数据、风洞数据和试飞数据等,也称飞行数据包,广泛应用于事件调查、飞行品质监控和飞机维修等领域,同时也是飞行模拟器研制中的关键数据。当前由于技术壁垒和价格因素,飞行数据包成为飞机设计、模拟器研制过程中的瓶颈。

飞机操纵系统输入端数据是飞行数据中的重要组成部分,目前主要由真机改造加装传感器获取,其中线性可变差动位移传感器[1](Linear Variable Differential Transformer, LVDT)是飞机驾驶杆位移测量中的常用设备,可实现对飞机操纵系统的动、静态特性的测试。LVDT传感器适应性良好、测量精度高,但是其作为一种接触式测量工具,安装时必须对飞机进行改装。例如,文献[2]和文献[3]通过将力传感器与线性位移传感器连接实现驾驶杆杆力和位移的测量。传统上对飞机进行改造加装传感器时需要对飞机驾驶舱中的一些部件进行拆除,同时要求不能改变飞机操纵系统的功能和特性。受驾驶舱空间限制,传统上对飞机进行改装的成本高、时间代价大,不可避免地会影响驾驶员的操纵感觉。

随着计算机技术的发展,计算机视觉技术作为一种非接触式的测量方式,在检测、识别和人机交互等方面得到广泛研究与应用。基于计算机视觉对飞机操纵系统输入端进行位置测量隶属于视觉测量范畴,目前视觉测距中广泛使用红外测距方式,其测量范围广、响应时间短。但由于黑色物质吸收红外线,因此无法对黑色物体精确测距。同时为获得精确测距,红外测距要求被测物体平面与光线垂直。针对飞机座舱环境,本文采用普通相机实现视觉测距。当前使用相机实现测距的方式主要有单目测距、双目测距和多目测距。其中,双目测距[4-5]往往使用深度相机来对目标进行深度测量和3D转换,深度相机测距范围有限并易受外界干扰。多目测距是双目测距的拓展,算法复杂度高,会影响实时性。相对而言,单目测距具有结构简单、运算速度快、成本低等优点。因此本文采用单目测距方式实现飞机操纵系统输入端的位置测量。

PnP(Perspective-n-Point)问题始于相机标定问题,为得到最优解并提高测距精度,Li等[6]提出RPnP算法解决抗噪能力不强的问题,Wang等[7]提出了相比于RPnP算法精度和稳定性更优的SRPnP算法。通过对PnP问题求解衍生出多种相机位姿估计算法,如POSIT算法[8]、EPnP算法[9]。本文将PnP问题应用于飞机操纵系统输入端位置测量,利用PnP问题将飞机操纵输入端的位移测量转换为相机位姿求解,最终实现基于视觉的无接触式数据采集方案。相较于加装传感器方式,所提出的方法无须对飞机进行改装,降低了数据采集成本,且不会影响飞机安全性能。

1 PnP问题

已知观察物体上n个特征点,且已知它们之间的相对位置,PnP问题就是从透视投影得到的n个图像点计算相机相对物体的位姿。PnP问题自提出以来就备受关注,其广泛应用于不同设备的姿态测量、无人机着陆、导弹导航定位和虚拟现实等领域。对于PnP问题的解决始于相机标定,通过利用多个控制点在三维场景中的坐标及其在图像中的透视投影坐标即可求解出相机坐标系与表示三维场景结构的世界坐标系之间的绝对位姿关系,包括绝对平移矩阵T和旋转矩阵R。即通过图像成像时的几何关系对图像坐标系和相机坐标系以及世界坐标系进行转换,其实质就是利用世界坐标系中的特征点及其二维图像所对应的投影来计算相机坐标系与世界坐标系之间的旋转矩阵R和平移矩阵T。

相机成像模型如图1所示,相机坐标系是以相机为中心的XcYcZc坐标系,Zc轴为相机光轴;像平面坐标系是指在相机内所形成的xy像平面坐标系统,像平面与相机坐标系的XcYc平面平行,这样像平面原点就在相机光学轴上;图像坐标系是指在计算机内部数字图像所用的坐标系,即图1中uv坐标系,与像平面坐标系在同一平面上,不同之处是计算机图像坐标系u、v是以像素为单位的图像坐标系,像平面坐标系x、y是以物理单位(例如mm)表示的图像坐标系。像平面坐标系以图像内相机光轴与像平面的交点O为原点,该点在uv坐标系中坐标为(u0,v0),称为主点。该点一般位于图像中心处,但由于相机制造工艺等原因,会有所偏离。由图1相机的成像模型可知,世界坐标系与相机坐标系的关系为

(1)

式中:(Xc,Yc,Zc)为空间点P在相机坐标系中的坐标;[RT]为相机坐标系相对世界坐标系的旋转矩阵与平移矩阵;其中R为3×3矩阵,T为3×1矩阵。

图1 相机成像模型

由图1可知,相机与图像坐标系的关系为

(2)

式中:λ为比例因子,λ≠0;f为相机的焦距;p(x,y)为三维空间点P(Xw,Yw,Zw) 对应的图像投影点,即为光心Oc和P点的连线与图像平面的交点。将式(1)与式(2)结合可得到世界坐标系与像素坐标系的转换关系:

(3)

式中:(u0,v0)为主点坐标;f为相机的焦距;dx、dy为每一个像素在X轴和Y轴方向上的物理尺寸;fx=f/dx,fy=f/dy分别为x轴和y轴上的归一化焦距;(Xw,Yw,Zw)与(u,v)为空间点对应的3D坐标与其图像坐标系上的2D投影点;fx,fy,u0,v0为相机内参,可以通过对相机进行标定求出,定义相机内参数矩阵为

实际过程中,由于u轴和v轴不垂直产生畸变,内参数矩阵增加一个畸变因子s(Skew Parameter),所以相机的内参数矩阵K重新定义为

为提高测量精度,在对飞机操纵系统位置测量中通过对相机进行标定求得相机的畸变参数,对输入视频进行消畸变。

对R和T展开,可进一步得到:

(4)

通过对式(4)求解可以得到其旋转矩阵R和平移矩阵T,即得到相机相对于世界坐标系的位置和姿态,此为PnP问题的解。将相机固定,将世界坐标系原点设在飞机驾驶杆上,飞机驾驶杆的位姿信息则转换为通过PnP问题求解相机相对于世界坐标系的位置。

2 飞机操纵系统输入端位置视觉测量

通过上述分析,本文使用单目视觉位姿测量方法,将计算机视觉中的PnP问题应用于解决飞机操纵系统的数据采集,即通过飞机驾驶杆上的空间特征点与其所对应的图像点来计算相机空间位姿获得驾驶杆位移信息,为后续的飞机座舱建模和飞行模拟器构建提供数据支撑。以飞机驾驶杆为例,基于视觉的飞机操作系统输入端位置测量流程如图2所示。

图2 飞机操纵系统输入端位置视觉测量流程

对飞行员操纵飞机驾驶杆的情况进行视频采集,作为数据输入。为消除相机自身畸变,提高测量精度,且PnP问题求解需要相机内参作为参数输入,因此首先通过离线方式利用相机标定技术确定相机的内参和畸变参数。考虑到拍摄过程中驾驶舱内环境因素,例如光照、飞机抖动等影响因素,故需对采集的视频图像进行预处理,从而提高图像质量。然后在图像帧中提取驾驶杆上特征点。特征提取直接关系到测量结果的准确度和精度。考虑到二维码(QR Code)的易识别性和易获取性,通过在飞机驾驶杆表面固定一个随机生成的二维码,将飞机驾驶杆的位移测量转换为对二维码的跟踪识别和测量。对采集视频进行预处理后识别二维码,并进一步识别定位二维码的4个角点,作为PnP问题求解的特征点,通过4个特征点的3D和2D点对关系完成相机PnP位姿解算,得到旋转矩阵R和平移矩阵T,进而得到飞机驾驶杆的运动位移。

2.1 相机标定

由于提出的方法是以视频的输入方式对飞机驾驶杆进行位置测量的,相机透镜制造精度和组装工艺的偏差会引入畸变,导致相机拍摄的原始图像发生失真。同时对PnP问题的求解需要相机内参作为原始参数输入,因此根据图2所示的流程图,首先需要对相机进行标定。

相机参数一般分为外部参数(空间位置、方向,即旋转矩阵和平移矩阵)和内部参数(焦距、光心、畸变系数等),相机标定过程就是计算相机的内外参数。

基于计算机视觉的飞机驾驶杆位置测量技术以相机作为数据采集设备,相机内参数对测量精度产生重要影响。如图3所示,本文采用张正友标定方法[10],从不同角度对标定块进行拍摄,通过MATLAB工具箱对标定块进行角点提取实现相机标定,获取相机内参和畸变系数。由于张正友标定法只关注了影响最大的径向畸变,其径向畸变模型为

(5)

(6)

图3 相机标定

式(6)转为矩阵形式为

(7)

将式(7)记作Dk=d,其中畸变系数k=[k1,k2]T,则可得:

k=(DTD)-1DTd

(8)

计算得到畸变系数k,通过求得的畸变系数在图像预处理过程中对输入视频逐帧消畸变,以提高后续测量精度。

2.2 特征点识别与提取

PnP问题求解需要3D空间点和对应2D图像点作为特征点对输入,特征点的识别和提取直接关系到测量的准确度和精度。通常PnP问题的求解至少需要3个特征点对以完成相机的姿态估计[11]。飞机驾驶舱中由于光照等环境影响会导致特征点不易识别或者识别精确度不高,会造成特征点难以提取。飞机的驾驶杆构造特殊,不易单独对某些特征点进行标记识别和获取。近年来二维码广泛应用,其具有识别快、准确度高的特点,本文通过在驾驶杆上固定一个随机生成的二维码,在二维码识别的基础上,提取二维码4个角点作为特征点。

基于二维码识别的特征提取流程如图4所示。首先对输入视频进行预处理,通过平滑滤波、灰度化和二值化消除冗余和噪声;再确定二维码位置和范围,对二维码进行二值化之后由轮廓提取找到面积最接近的3个点即是二维码的定位角点,如图4中点a、b、c。考虑到驾驶杆的转动,进一步确定3个定位角点的顺序位置。以3个定位角点中心坐标连线组成三角形,其中角度最大的就是二维码左上角的点即点a;再根据该点与其他两点的相对位置确定二维码左下c点和右上b点位置;最后根据确定位置的3个定位角点获得二维码范围及位置。考虑到二维码4个角点是对称分布的,故可由a、b、c三点确定二维码第4个特征角点的位置,并对第4个特征角点进行提取。

图4 二维码识别及角点特征提取流程

以二维码中心点为世界坐标系的原点,通过预先设定的二维码尺寸即可获得4个角点对应的3D空间坐标,然后通过二维码识别获取4个角点的2D图像坐标,最后获得4个特征点的3D-2D坐标匹配。

2.3 位姿解算

PnP问题的传统算法按照是否迭代分为两类:线性算法[12-13]和非线性迭代算法[14-15]。相较于线性算法,迭代法求解精度和稳定性都要高很多。因此选择非线性迭代算法来对相机位姿进行求解。

根据2.2节,通过二维码识别获得4个角点对应的3D空间点和2D图像点作为特征点对。根据式(4),由正交矩阵的性质,通过3个点对可以计算出对应的4个旋转矩阵R和平移矩阵T,即4个相机位姿。再将二维码第4个角点的3D空间坐标代入式(4),可以获得其在上述4个相机位姿下的4个对应2D投影(一个解对应一个投影),以投影误差最小的解对应的旋转矩阵R和平移矩阵T作为初值,然后通过列文伯格-马夸特(Levenberg-Marquardt,LM)最优化算法[16]求得最优变换矩阵R和T。

根据前述,将相机固定,如图5所示,将世界坐标系原点设在固定在飞机驾驶杆二维码的中心点上,通过对采集视频每帧进行求解可得到一个平移矩阵T,由最终求得的平移矩阵T可得知相机相对于二维码中心点的世界坐标,也就是飞机驾驶杆相对于相机的距离,即可求得飞机驾驶杆的位移。

图5 二维码识别结果及位姿解算

3 实验分析

实验在波音737飞行模拟器上进行,图6为波音737飞行模拟器驾驶舱图片,本次实验便是在其中的驾驶杆上进行。视频采集采用GoPro相机,图像分辨率为1280像素×720像素,其空间实验过程中使用搭载Intel i5-4590 CPU的PC机,该CPU主频为3.3 GHz,编程环境采用MATLAB与OpenCV库接口。

图6 波音737飞行模拟器驾驶舱

图7为基于视觉的飞机操纵系统输入端位置测量系统的装置示意图,本实验将红外测距仪与相机通过固定装置安装在波音737飞行模拟器驾驶舱的头顶板上,此位置能够在飞行员操纵飞机驾驶杆时很好地测量飞机驾驶杆的运动情况。

图7 视觉测量系统装置示意图

在波音737飞行模拟器中,当飞行员推拉驾驶杆时,驾驶杆产生了位移,通过拉杆和摇臂的传递,将位移传递给操纵负荷的连接杆,此时操纵负荷的拉/压传感器会产生力信号,位移传感器产生位移信号。计算机根据驾驶杆的位移量和飞机当时的飞行高度和速度值,计算出所需的驾驶杆力,该力信号经控制器转换成电枢电流,于是在电机中产生电磁转矩,再经传动机构传到驾驶杆上与外力矩相平衡,系统便处于一种新的平衡状态。故本实验在飞行员操纵驾驶杆时,波音737飞行模拟器能够通过位移传感器输出飞机驾驶杆的位移。如图7所示,为保证实验时操纵驾驶杆输出位移与视觉测距的一致性,实验前将飞机驾驶杆做俯仰运动的行程与操纵载荷的行程之间的映射进行调整,将飞机驾驶杆行程与操纵机构的传动比换算为在飞机驾驶杆上的视觉测量点P1与飞机驾驶杆底部中心点M的水平距离,即为操纵飞机驾驶杆时模拟器输出的位移。为验证该方法,使用基恩士IL-600红外测距仪进行测量对比,其测量范围为200~1000 mm,精度为0.1 mm。

而实验通过红外测距仪测距计算得到飞机驾驶杆的位移如图7所示,已知红外测距仪到飞机驾驶舱水平面的距离为h1,相机到水平面的距离为h2,由几何关系可得飞机驾驶杆位移MN=L为

(9)

由式(9)可求出使用红外测距仪时飞机驾驶杆的位移,同理也可求出本文方法测得飞机驾驶杆的位移。

对飞机驾驶杆在不同运动位置的测量结果与方法进行实验对比,结果如表1所示。

由表1可知红外测距仪的平均测量误差为4.58 mm,本文方法测量平均误差为1.93 mm。不难看出本文方法所测得的飞机驾驶杆的位移精度更高,且红外测距仪测量结果易受驾驶舱复杂环境和驾驶杆运动状态的影响。

表1 红外测距与视觉测距实验数据

采集飞机驾驶杆连续运动视频450帧,每隔30帧的测量误差曲线图如图8所示,证明了本文方法具有较高的检测精度。原始视频帧率为30 f/s,经过测量后其帧率为27 f/s,也证明所提出的方法满足实时性要求。

图8 红外测距仪与本文所提出方法测距误差比较

4 结束语

本文提出了一种基于视觉的飞机操纵系统输入端位置测量方法。利用计算机视觉技术,通过PnP问题将飞机操纵输入端的位移测量转换为相机位姿求解。相比传统的加装传感器的飞行数据采集方式,基于视觉的测量方式属于无接触式数据采集方法,无须对飞机进行改装和加装传感器,极大地降低了采集成本,同时不会影响飞机安全性能。通过实验也验证了所提测量方法的有效性。

猜你喜欢
角点位姿测距
类星体的精准测距
基于FAST角点检测算法上对Y型与X型角点的检测
浅谈超声波测距
基于边缘的角点分类和描述算法
基于共面直线迭代加权最小二乘的相机位姿估计
基于CAD模型的单目六自由度位姿测量
基于圆环模板的改进Harris角点检测算法
小型四旋翼飞行器位姿建模及其仿真
基于PSOC超声测距系统设计
相对差分单项测距△DOR