基于红外图形的摄像法头部位置测量系统设计
2015-04-02查光东
杨 成,查光东
基于红外图形的摄像法头部位置测量系统设计
杨 成,查光东
(空军第一航空学院,河南 信阳 464000)
为了实现头部位置的精确测量,设计了一种由CCD固体摄像机和红外辐射器阵列组成的摄像法头部位置测量系统,通过软件对采集的图像信号进行处理解算出头部的位置。研究制定了光点分群和确定计算用三角形的策略,给出了头部位置坐标的计算方法。由于采用双摄像机和双红外二极管阵列图形,实现了对头部位置的大范围测量。应用结果表明,系统结构简单,可靠性高,头部位置测量范围和精度达到要求。
红外图形;摄像法;头部位置;图像处理;光点分群;探测视场;位置坐标
0 引言
在虚拟现实系统和头盔显示系统中,精确测量头部位置都是实现的关键技术。头部位置是指当观察者将眼睛对准观测的目标时,眼睛的视线方向相对于某个测量基准的位置,通常用视线与基准坐标系之间的方位、俯仰和横滚角的大小来衡量。由于测量装置常安装在头盔上,因此头部位置测量又称为头盔位置测量。目前常用的头部位置测量方法有光电法、电磁场法、超声波法和摄像法等。其中采用摄像法,通过图像识别测量头部位置的方法,具有系统硬件结构简单,没有光机活动部件,可靠性高,头部位置测量精度高,探测范围大等优点[1]。本文设计了一种采用摄像法的测量系统,基于对红外图形的采集、图像识别和解算,实现头部位置的测量,详细说明了探测系统的组成和测量原理。
1 测量系统组成
头部位置测量原理的2个明显的特征是:在头盔组件和基准装置(1个或多个装置)之间的介质以及用于传递信息的几何图形。这种传递可借助于光、声或电磁能来进行,最终结果是产生出电子装置中计算视线方向用的信号。本系统中采用摄像法实现头盔位置的测量,传递信息用红外光,几何图形为三角形。
1.1 系统组成
为实现对头部位置的测量定位,测量系统由安装在头盔上的红外辐射器阵列、2部摄像机、控制计算机、电源、控制盒和软件等组成,如图1所示。
图1 测量系统硬件组成
红外辐射器阵列通过安装板安装在头盔上,用于形成探测用的几何图形。头盔作为头部组件的安装支撑,辐射器安装板用于安装8个红外辐射二极管,组成辐射器阵列。整个头部组件是一个整体,可方便地从头部上取下来。
摄像机及安装架组成探测装置。2个CCD摄像机用于采集头部组件上红外辐射二极管的光线,以实现头盔位置的测量定位;摄像机安装架用于安装2个CCD摄像机,作为测量的基准,需要确保摄像机的安装精度,以保证头部位置的测量精度。
为减少可见光干扰,红外辐射器采用波长为940nm、5的红外发光二极管,共采用8个红外发光二极管,每4个为一组,从而组成2个三角形图形。每组中由外边的3个二极管组成一个等边三角形,作为探测用的几何图形,正中央的1个二极管用于计算矩心。摄像机采用西安维视公司的工业级CCD摄像机MV-VS030FM,配合宽视场镜头,波长范围为0.4~1mm,可探测波长为1mm以下的红外光,镜头前加有波长940nm的单边滤光镜。因此系统工作时,可见光被滤除无法进入摄像机中,达到很好的抗干扰和抗背景噪声的效果[2]。
控制计算机是头部位置测量系统的控制中心,由1台工控机(含显示器、键盘、鼠标等外设)、2块1394接口的图像采集卡组成。工控机主机是系统的基础硬件平台,采用研华610H工业控制计算机。2块图像采集卡完成CCD摄像机图像信号的采集、转换,将摄像机摄取的红外辐射二极管阵列的图像信号转换成视频格式,以便计算机处理计算。
控制盒用于系统中红外二极管的上电控制。
直流电源提供红外二极管工作所需的1.2V电压。
在测量系统中,软件用于完成硬件管理和摄像机设置、实时图像数据采集和处理、位置坐标计算、界面显示和工作状态控制等。软件采用VC++6.0高级语言开发设计。
1.2 系统工作原理
系统工作时,由控制盒接通1.2V电压驱动红外辐射器发光。CCD摄像机摄取红外二极管的图像,输出的视频图像信号经图像采集卡采集、转换后,送主处理器处理,首先计算出各个二极管光点在显示屏上成像的位置,再根据光点成像的位置与实际红外图形之间的关系,通过软件算法计算出头部视线的方位角、俯仰角和横滚角,最后将计算出的视线方位角、俯仰角和横滚角坐标送到显示器,以字符和图形方式提供给用户,并用于控制系统工作状态的转换。
2 头部位置的测量方法
采用摄像法测量头部位置的难点是需要确定图像识别算法,可以根据探测装置的结构和测量原理进行分析确定所需的算法[3]。根据测量的要求,系统中采用了双CCD摄像机和红外发光二极管阵列组成的双几何图形来实现头部位置测量。CCD固体摄像机摄取头盔上红外辐射器发光组成的几何图形,产生的图像信号经软件处理后解算出头部的位置。
2.1 头盔位置的测量原理
红外辐射器阵列发出的红外光线在摄像机CCD阵列上成像。由于摄像机位置固定,红外二极管在CCD阵列上成像的光点位置可计算出来。又由于摄像机镜头的焦距已知(为4.7mm),红外二极管为边长80mm的等边三角形,因此可解算出在摄像机坐标系中三角形中心处的法线向量,即向径的大小和方向。在三维坐标系中,知道了向量的向径,即可以求出向量相对于3个坐标轴的偏角,即头部的方位、俯仰和横滚角。最后经坐标转换,将在摄像机坐标系中求出的偏角转换到基准(摄像机安装架)坐标系,即可得到头部视线的方位、俯仰和横滚角。
2.2 头部位置坐标的解算
摄像机工作采集红外辐射器阵列的图像后,送显示器显示。采集的图像需要软件进行处理,进行光点分群,确定解算用的三角形,然后进行头部位置的计算。
2.2.1 图像的采集处理
图像采集处理是对摄像机摄取的辐射器阵列图像的采集、转换与处理[4],求出红外二极管发光在摄像机CCD阵列上形成的光点的数目、各个光点的坐标、光点直径大小,进行光点分群,找出一组解算用的完整三角形光点的坐标。
摄像机摄取辐射器阵列发光产生的图像,经采集卡采集后在屏幕上显示光点图像,屏幕上显示的光点的分布情况如图2所示。
图2 屏幕上显示的光点分布情况
首先找出所有采集到的光点:程序按照从上到下、从左到右的顺序扫描图像数据,若像素点的值(像素点的RGB值中的红色)为255,且连续4个像素点值均为255,则认为找到1个光点,接着搜索图像数据找出该光点的最大直径,最后记录光点直径、坐标和光点数量等数据。
搜索完一整幅图像数据后,找出所有光点,然后需进行光点聚类分群,从而形成解算用的完整三角形。光点分群策略根据组成红外二极管阵列的硬件结构以及摄像机位置、视场制定,其目标就是能够在头部转动的整个范围内都能确定唯一的计算用三角形。光点分群策略如下:
1)找到的光点数量为3个以下:没有三角形。
2)4个点:只有1个三角形。
3)8个点:有2个三角形,左边4个点组成1个三角形,右边4个点组成1个三角形。
4)5、6、7个点:只有1个三角形,另一个不完整。当有5、6或7个光点时,判断其中哪4个点组成一个完整的三角形的方法,是通过比较各光点之间在横向(即行方向)的最小距离得出。具体方法是:首先计算出屏幕最右边第一个点与最靠左边的4个点之间的最小距离,然后计算出最左边第1个点与最靠右边4个点之间的最小距离。找出2个最小距离后,比较这2个最小距离。若前者小于后者,则最靠右边4个点为1个三角形;反之,最靠左边4个点为1个三角形。其中,2点之间沿行方向的距离只需将2点的横坐标相减即可得出。
光点分群得到了完整的三角形。但有时会同时出现2个三角形,以及三角形所属位置的问题。因此,还需根据一定的策略确定解算用的三角形,才可用其进行解算,从而求出头部视线的方向角。
2.2.2 计算用三角形的确定
从探测系统原理可知,1台摄像机和1个辐射器阵列图形即可实现头部位置测量,但探测视场小。为扩大头部位置探测范围,系统中采用了双CCD摄像机、双辐射器阵列图形的方法,使头部位置探测视场最大化。其原理是先由1台摄像机探测1组辐射器阵列图形,解算头部位置。当使用者头部转动角度过大,超出摄像机视场时(指二极管组成的三角形从这台摄像机视场中移出时),另一个三角形可以进入摄像机视场,从而继续测量和计算;如果2个三角形都从这台摄像机的视场偏出时,则刚好能出现在另一台摄像机的视场中,由另一台摄像机“接力”进行采集和计算。因此,采用双摄像机和双二极管阵列图形可大大提高头部位置探测视场,也大大提高了头部允许探测的径向活动范围。
采用双摄像机和双辐射器阵列带来了二极管图形所属位置判断的难题。即当出现1个二极管三角形图形时,它是左侧的三角形还是右侧的三角形的问题。这需要通过一定的判据进行判断才能解决。探测图形出现的逻辑见表1。
表1 探测图形逻辑关系
通过详细分析,制定确定计算用三角形的策略:
1)在表1中,第7、8种情况较为简单。第7种情况,即当头部位置偏转角不大,2个摄像机中都有完整的三角形时,若只有1个三角形,以左侧摄像机中的三角形为主计算;若一侧有1个、另一侧有2个三角形,则以多的一侧中的左三角形计算。第8种情况为超限,即超出视场范围,则不计算。
2)第5、6种情况较为复杂。即当头部位置偏转角较大,只有1个摄像机中同时出现2个三角形时,若为左侧摄像机,则以左三角形为主;左三角形不完整时,切换到右三角形。若为右侧摄像机同时出现2个三角形时,则以右三角形为主,右三角形不完整时,切换到左三角形。依次完成接力。
3)第1~4种情况最复杂。即当头部位置偏转角很大,只有1个摄像机有1个完整三角形时,如何判断出它是哪一侧的三角形。具体又分为以下2种情况:
第1种情况为一侧的1个摄像机有1个完整三角形的光点,以及1~3个不完整三角形的光点时,则哪个三角形完整以哪个三角形计算。
第2种情况为一侧的1个摄像机有1个完整三角形的光点,且没有不完整三角形的光点时,如何判断出它是左侧还是右侧的三角形?由于红外发光二极管采用常亮方式工作,这样做使系统硬件电路非常简单,但并没有从辐射端区分出几何图形。因此,当只有一侧的1个摄像机有1个完整三角形的光点,且没有冗余的光点时,软件是无法区分出该三角形是左侧的还是右侧的阵列图形的。其解决的方法是与硬件配合,即与二极管三角形的安装、摄像机安装角度配合实现。二极管三角形和摄像机安装位置关系如图3所示。
图3 二极管三角形和摄像机安装位置关系
系统中CCD摄像机采用的是120°的宽视场镜头,相距为60cm,在50cm距离上,摄像机视场范围覆盖头部。2个二极管三角形平面之间为135°角。经计算和实验,当将2个摄像机镜头光轴都向内侧偏转22.5°时,可以保证当左摄像机出现完整的右三角形图案时,右摄像机完全没有光点;同理,当右摄像机出现完整的左三角形图案时,左摄像机完全没有光点。这样就保证了能判断出只有一侧的1个摄像机有1个完整三角形的光点且没有不完整三角形的光点时,它是左还是右侧的三角形。即只有一侧的1个摄像机有1个完整三角形时,左侧相机按右三角形计算,而右侧相机按左三角形计算。
2.2.3 头部位置坐标的解算
光点分群策略得到完整三角形和确定了解算用的三角形后,程序可根据头部位置定位算法计算出头部视线向量。头部位置的计算原理如图4所示。
图中头盔上的二极管、、组成1个等边三角形,为三角形中心;、、、是、、、在CCD摄像机成像平面上形成的光点位置,它们在成像平面坐标系中的坐标前面已求出(成像平面坐标系与摄像机坐标系相差1个镜头焦距的距离)。为摄像机镜头中心位置,也是摄像机坐标系的原点。
图4 头盔位置的计算原理
在图4中,、、、的坐标已求出,镜头焦距为已知,因此,可求出各成像光点与二极管之间连线的向径、、的大小和方向;又由于二极管三角形边长为已知的80mm,所以,可求解出、、各点到摄像机镜头中心的距离,进而求出、、各点在摄像机坐标系中的坐标,从而求出了三角形所在的平面。二极管安装在头盔上,随头部运动,所以三角形所在的平面的位置,就是头部的位置,其法线方向就是头部的视线方向。
实际计算方法如下:
、、点在摄像机坐标系中用来表示,设是二极管与对应图像连线上的单位矢量(从原点指向相应的二极管),则的坐标可通过式(1)获得[5]:
=v,=1,2,3 (1)
式中:为向量长度。只要求出就可求出、、各点的坐标。
由于用向量表示、、三个点之间的距离为:
D=ïêW-Wïê,≠(2)
将式(1)代入式(2)得到关于的3个如下形式的二次方程:
其中等式左边的3个根据三角形结构已经知道(=80mm),3个点积×根据光点的坐标也可算出,这样计算3个点坐标的问题变成求有3个未知量的3个二次方程组(4)的问题:
由于方程有多组解,最多8组[6]。为求出反映二极管实际位置的一组解,采用雅可比矩阵,通过牛顿迭代法对方程组进行求解,流程如图5所示。
求出k、k、k后,由公式(1)可得出多组、、点的坐标,根据三点与点之间的位置关系可以计算出点坐标。利用点坐标验证解的正确性,当点、镜头中心和光点成一条直线时则可以判定该解为真实解,其余的解应排除。
图5 方程求解流程
计算出、、点的坐标(1,1,1)、(2,2,2)、(3,3,3)之后,再计算出三角形法线在摄像机坐标系中3个坐标轴的分量、、,计算公式如下:
求得三角形的法线向量后,再根据三角形和头盔的位置关系,可以计算出头部视线向量,利用视线向量在摄像机坐标系求出方位角、俯仰角和横滚角,最后将计算出的角坐标转换到基准坐标系,就得到头部转动的方位角、俯仰角和横滚角。
2.3 测量结果分析
测量工作时的系统调试界面如图6所示。
图6 系统调试界面
当头部转动时,2台摄像机探测的图像同时显示在界面上。由于采用940nm红外光和滤光镜,可见光不进入摄像机,因此只显示红外二极管的光点,图中显示清晰的红外光点图像。下方有各光点的坐标、半径和计算出的头部位置角度等。
图中是头部向右转动一定角度时的图像,此时左侧摄像机图像中有1个完整三角形图案,右侧摄像机图像中有2个完整三角形图案。根据判据此时计算用的三角形为右摄像机中的左三角形。下方显示解算出的头部转动角,例如此时方位角为16.25°。
为保证测量精度和大的测量范围,系统中采取以下措施:测量前调整好摄像机亮度、对比度和焦距;采用精密机械加工保证二极管三角形的安装精度以及摄像机安装架的精度;选用高品质红外二极管保证成像光点尽量为圆形;为达到更好的效果矩心处的二极管安装时要高出三角形平面。
系统实现的测量范围方位为180°,俯仰和横滚各为90°,全视场范围内测量精度为0.5°。
3 结束语
在采用摄像法的头部位置测量系统设计中,通过对摄像机采集的红外二极管发光形成的图像进行处理,计算出三角形各个光点的位置,再通过计算得出三角形中心法线向量的向径,进行坐标转换求出头部视线位置,使头部位置测量精度高,且测量系统结构简单,易于实现。由于采用双摄像机、双红外辐射器阵列图形组成探测装置,通过运用光点分群策略,系统自动识别计算用的三角形图形,实现了在大角度时对头部位置的测量,大大扩展了头部位置的测量范围。并使扩大角度探测范围十分容易,例如只需增加2台摄像机并适当调整摄像机安装角,即可实现覆盖方位360°的探测视场。应用结果表明,系统结构简单,成本低,可靠性高,头部位置探测范围大,测量精度达到要求。
[1] Iran Moir, Allan Seabridge. 军用航空电子系统[M]. 吴汉平, 译. 北京: 电子工业出版社, 2008.
Iran Moir, Allan Seabridge.[M]. Wu Han-ping, Translation. BEIJING: Publishing House of Electronics Industry, 2008.
[2] 史光辉, 杨威. 用于图像拼接的电视摄像光学系统[J]. 中国光学, 2014, 7(4): 638-643.
Shi Guang-hui, Yang Wei. Optical system used to compose images in television photograph[J]., 2014, 7(4): 638-643.
[3] 崔璇, 辛云宏. 基于图像复原技术的红外小目标检测方法[J]. 红外技术, 2014, 36(7): 527-531.
Cui Xuan, Xin Yun-hong. A method for small infrared target detection based on the technique of image restoration[J]., 2014, 36(7): 527-531.
[4] 付冬梅, 唐升波. 基于改进的混合高斯模型的红外运动目标检测[J]. 红外技术, 2014, 36(8): 628-632.
Fu Dong-mei, Tang Sheng-bo. Infrared moving object detection based on improved Gaussian mixture model[J]., 2014, 36(8): 628-632.
[5] 闫龙. 基于图像的头盔瞄准系统虚拟仿真技术研究[J]. 计算机仿真, 2011, 28(6): 92-95.
Yan Long. Simulation technology research on HMS based OpenGL[J]., 2011, 28(6): 92-95.
[6] 周鑫, 朱枫. 关于P3P问题解的唯一性条件的几点讨论[J]. 计算机学报, 2003, 26(12): 1696- 1700.
Zhou Xin,Zhu Feng. A note on unique solution conditions of the P3P problem[J]., 2003, 26(12): 1696-1700.
Design of the Measuring System of the Head Position Based on the Video Recording Method
YANG Cheng,ZHA Guang-dong
(,464000,)
In order to realize the accurate measurement of the head position, a measuring system of head position based on the video recording method that is composed of a CCD solid camera and an infrared radiator array is designed. The head position is calculated by the software to deal with the sampling video. The grouping method of luminous points and the confirming tactics of the calculating triangle are discussed and the calculation method of the coordinates of head position is given. Because of adopting pairs of camera and pairs of infrared diode array, measurement of head position on a large scale is realized. Application indicates that the system structure is simple and its dependability is high. The measuring range and precision of the head position meet the requirement.
infrared figure,video recording method,position of head,figure process,grouping of luminous points,measuring field,position coordinate
TN216
A
1001-8891(2015)12-1005-06
2015-04-24;
2015-12-01.
杨成(1964-),男,浙江宁波人,学士,副教授,主要研究方向是光电技术应用。