【信息科学与控制工程】
目标跟踪系统在军事、工业领域应用广泛,一般分为自动、半自动两种工作模式。自动跟踪不依赖于操作员,由设备自动完成目标搜索、识别、定位、控制等任务;半自动跟踪则属于“人在回路”,在目标搜索、目标选取、模式切换、参数调整等环节,需要操作员通过半自动跟踪装置进行人机交互、决策控制[1]。
随着目标机动性和环境背景复杂性的不断提升,对目标跟踪系统性能提出了更高要求,而目前典型目标跟踪系统的自动化、智能化水平相对较低,尤其是自动跟踪模式下的启动、运行、退出等环节仍需人工干预。如何进行高效人机交互、综合发挥人、机优势已成为目标跟踪领域的重要研究方向和发展趋势[2-3]。
本研究将多点触控技术作为半自动装置引入目标跟踪系统,增强了操作直观性,减轻了人工操作负担,人员决策结果能够及时、准确、全面地传递给跟踪系统,提升了目标跟踪系统的性能。
目前,常用半自动跟踪装置包括操纵杆、轨迹球、鼠标等类型[2-3]。存在的不足主要包括:第一,操纵杆、轨迹球只能输出高低、方位两个自由度的线性控制量,由于目标角度一般是非线性变化,半自动跟踪对人员技能要求很高,操作员需要经过长时间训练才能保持跟踪的快速性和平稳性,在目标面积小、信号弱、角速度大、机动性强等情况下尤其不利;第二,操纵杆、轨迹球虽然能通过伺服系统带动探测器转动,使目标尽量保持在视场中部,以便于自动跟踪处理器锁定目标。但当视场内同时出现多个目标时,操作员的决策意图和人工经验难以传递给自动跟踪处理器,目标的选取、切换功能只能由自动跟踪处理器自主完成,使得半自动到自动的切换过渡过程存在失败、反复的风险;第三,部分半自动跟踪系统中引入了鼠标作为操控装置[4],能进行单点操作,不能直接控制伺服系统,应用条件限制较多。显见,上述半自动装置未能充分发挥人手功能,人机交互效率较低。
多点触控技术于1992年由IBM和Bell south提出[4],其基本方法是将一个或更多的手指手势映射成计算机或电子设备的操作响应,利用人手的高度灵活性,降低操作难度,提高人机交互的协作性、智能性和自然性。
目前,触控屏主要有电容屏、电阻屏、红外线触控屏等[4],基本原理是通过手指在屏幕上直接触碰,导致屏幕的状态发生变化,进而根据屏幕状态的变化数据检测手指在触控屏上的触点和动作。通过手势设计及手势识别算法,可以利用多个手指、多种手势实现特定功能。触控精度一般取决于触控屏分辨率、像素密度PPI(Pixels Per Inch,即每英寸的像素数量,典型值为180、300),触控响应速度取决于触控点数、触控算法复杂度、处理器性能等因素。
表1对比了操纵杆、轨迹球、鼠标、多点触控屏的功能特点,可以发现,多点触控屏在直观性、快速性、灵活性方面有着较大优势。虽然目前多点触控主要用于生活消费领域,在目标跟踪领域应用相对较少,但可以预见,其军事应用前景十分广阔。
表1 半自动跟踪装置特点
半自动装置操纵杆轨迹球鼠标多点触控屏动作灵敏度中低高中操作快速性低低高高操作直观性中中高高操作稳定性高高低中占用空间大中小中
如图1,多点触控式半自动跟踪系统利用多点触控屏替代了传统显示屏,在显示输出功能的基础上增加了手势输入功能。作为备用,系统保留了传统半自动装置。
图1 多点触控式半自动跟踪系统组成结构框图
系统通过目标探测器采集目标及背景信息,实时传输至自动跟踪处理单元,由其提取目标信息后控制伺服控制器,进而通过云台带动目标探测器实现自动跟踪;操作员根据多点触控装置的显示信息,可进行目标搜索、跟踪、切换、参数设置等工作,其手势信号也可用以直接控制伺服机构实现云台手动调转。
为提高半自动跟踪的效能,需要对触控手势进行定义,实现不同任务条件下人机的协调配合。多点触控相关功能设计如表2所示。
表2 多点触控功能设计
序号应用时机功能设计1视场内无目标手动控制云台,大范围扫描、搜索2视场内多目标人工甄别、选取目标3目标信号弱小增强显示,人工指定目标4目标真假难辨人工甄别,标记假目标,指定真目标5目标角速度大人工提供目标运动趋势,为“自动跟踪”提供决策依据6目标类型识别困难人工经验判定目标类型,为“自动跟踪”提供决策依据
目标搜索阶段,利用多点触控可直接控制云台,实现对方位角、高低角、视场倍率、转动速度等参量的控制;对视场内同时出现的多个目标,可人工甄别、选取目标,并将目标的区域信息、运动特性等传递给自动跟踪处理单元;对于弱小目标,为便于操作员观察、判断,可实现帧间信号累积、放大显示;对于假目标,可以进行手动标记,或强制切换;多点触控可将目标运动趋势、目标类型等人工经验或结论,作为先验信息及时传递给自动跟踪处理单元,提高自动处理过程的准确性、快速性[5-7]。
多点触控手势需要符合操作员直观习惯,也需要具备很好的稳定性、可靠性。目前,主流触控平台(Windows、iOS、Android等操作系统)手势分为单点触控手势和多点触控手势两种。单点触控手势主要有单击、双击、拖拽、轻弹、按压等;多点触控手势有旋转、捏、展开、按压并单击、按压并拖拽等[8-10]。
针对目标跟踪系统功能特点,遵循实用性原则,本系统设计了以下5种触控手势。
单点手势只利用一个触控点点击目标的中心位置,一般用于选取成像面积较小的点状目标,主要用于目标物理尺寸小、距离远、部分遮挡等情形。如图2,分为“单点点击”和“单点滑动”两种类型。
图2 单点触控手势示意图
“单点点击”手势的输出是点击位置(x0,y0),响应区域是以(x0,y0)为圆心的一个圆形区域,其半径R由系统提前设定,其数学描述为:
(x-x0)2+(y-y0)2≤R2
(1)
在“单点点击”的基础上,“单点滑动”手势是单点触控后保持按压,并朝某个方向(一般是目标运动方向)直线滑动一段距离后释放。其输出包括(x0,y0)及一个滑动向量(β,l)(滑动角度和滑动距离),作为先验知识传递至自动跟踪处理单元。
在目标搜索、伺服调试等模式下,“单点滑动”输出可直接控制云台转动,滑动方向和滑动距离分别对应云台转动方向和角度量(或速度量)。
如图3,两点触控手势包括“两点点击”、“两点滑动”、“两点放大”等3种类型。一般用于选取具有少量像素、两指能够同时选取边缘的目标,既可指定目标所在位置特征和区域特征,还可实现放大观察,便于人工准确判别目标类型。
图3 两点触控手势示意图
“两点点击”手势是两个触控点同时点击,用来框取目标全部像素。其输出是两个触控点位置[(x1,y1),(x2,y2)],响应区域是以[(x1,y1),(x2,y2)]为对角点的矩形区域(横纵方向与显示区域一致),其数学描述为:
(2)
与“单点滑动”类似,“两点滑动”的两个触控点同向滑动一段距离,输出包括[(x1,y1),(x2,y2)]和滑动向量(β,l)。
在“两点点击”的基础上,“两点放大”的两个触控点同时向上述矩形区域外侧滑动一段距离,可对指定区域进行放大显示,用于对弱小目标的观察、选取。
放大显示后的矩形中心与原矩形中心相同,放大倍率由手势释放时两个触控点的位置确定。可利用触控手势在放大显示矩形区域选取目标,也可双击放大显示区域取消放大,恢复正常显示。
如图4,三点触控手势包括“三点点击”和“三点滑动”两种类型。可用于选取具有较大面积、边缘清晰、整体形状接近圆形的目标,如装备试验常用的热气球、拖靶、旋翼无人机等。
图4 “三点触控”手势示意图
“三点点击”输出为三个触控点[(x1,y1),(x2,y2),(x3,y3)],响应区域为三个触控点的外接圆形,数学描述为:
(x-x0)2+(y-y0)2≤R2
(3)
其中:(x0,y0)为外接圆圆心,R为半径,均由方程组(4)解得。
(4)
与“单点滑动”类似,“三点滑动”的三个触控点同向滑动一段距离,输出包括[(x1,y1),(x2,y2),(x3,y3)]和滑动向量(β,l)。
如图5,四点触控手势包括“四点点击”和“四点滑动”两种类型。“四点点击”的响应区域一般是以4个触控点[(x1,y1),(x2,y2),(x3,y3),(x4,y4)]为顶点的凸四边形(特别的,如果3点共线,响应区域为三角形;如果4点共线,响应区域为指定宽度的矩形)。可用于选取具有较大面积、边缘清晰且角点较多、整体形状接近矩形的目标,如装甲车辆、导弹(侧视)等。
图5 “四点触控”手势示意图
为描述上述响应区域,需将4个触控点按序构成链表输出,为避免凹四边形,需对4个点进行共线判断,对其组合进行凸四边形判断[8,9]。
与“单点滑动”类似,“四点滑动”输出包括滑动向量。特别的,多点滑动过程中,多个触控点的按下时机、滑动方向、滑动距离、释放时刻可能存在一定差异,为提高系统的稳健性和准确性,选取4个滑动角度中最接近的3个,计算平均值作为滑动方向输出;选取4个滑动距离中最接近的3个,计算平均值作为滑动距离输出。
如图6,五点触控手势包括“五点点击”和“五点滑动”两种类型。“五点点击”响应一般是以5个触控点[(x1,y1),(x2,y2),(x3,y3),(x4,y4),(x5,y5)]为顶点的凸五边形(2点以上共线情况处理方法与四点触控类型)。主要用于与探测器距离短、成像面积大、边缘角点多、形状不规则的目标。“五点滑动”响应输出的滑动方向和滑动距离分别为5组数据中最接近的3组的平均值。
图6 “五点触控”手势示意图
上述手势分别采用1~5个触控点,覆盖了主要的单手动作类型。相对于1~2点触控,3~5点触控主要用于较大目标,通过较多的触控点,可以相对精细的描述目标边缘,可以排除干扰,缩小自动跟踪的搜索范围,提高目标检测、跟踪的快速性和准确性。
系统触控屏采用DELL S2240T,采用分辨率为1 920×1 080、300PPI,点距为0.248 mm,最大支持10点触控;触控屏通过“HDMI/VGA+USB2.0”连接自动跟踪处理单元;自动跟踪处理单元主处理器采用Xilinx ZYNQZC7035 FPGA,通过千兆网连接探测器(50 Hz帧频采集图像),软件开发环境为基于Petalinux的嵌入式操作系统。
为准确识别上述手势,避免手指颤抖造成虚点触控等情况,采用触控字典、链表法[8],流程如图7。
图7 目标选取触控手势实现流程框图
初始化阶段建立一个空的触控点字典链表。有触控动作时,锁定并获取所有触控点,将新增触控点与触控字典内容逐个比较,距离过近的点判为无效,达到消除抖动的目的,有效触控点加入触控点字典,包括触控点的按下时间、是否移动、移动距离;为解决触控点时机不一致的问题,设计了触发器和计时器,前一个触控点触发之后,一定时间范围内,统计有效点数,确定触控手势点数[9,10];触控点滑动时,判断滑动动作的一致性,从而决定滑动是否有效,若是,则计算滑动角度和距离,若否,则只作为点击手势;触控点释放后,从字典移除该点。
为兼顾显示功能和触控功能,采用重叠显示方法,触控面板置于顶层。触控点数和滑动效果改变后,及时进行区域/动作绘制或消除,更新显示,定时输出触控信息。
触控功能包括探测器控制、云台控制、跟踪模式控制等3部分。其中,探测器控制包括探测器模式及参数设置等功能;云台控制包括云台连接状态、暂停、复位、云台手动/自动控制模式切换等功能。跟踪模式包括自动/半自动模式切换、自动跟踪模式设置等功能[11]。
在半自动跟踪模式下,可利用前文的手势进行目标选取。不同手势的触控效果如图8所示,由于“两点放大”手势及滑动类手势的耗时主要取决于触控按下的持续时间,随机性强,这里仅给出点击类手势的响应平均耗时(从“启动触控记录线程”至“更新触控显示信息”),如表3所示。
图8 触控操作效果示例图
表3 点击类手势响应平均耗时
序号触控手势平均耗时/ms1单点点击1.272两点点击1.463三点点击1.894四点点击2.455五点点击3.52
实验结果表明,上述系统操作直观、响应高效、性能稳定,适用于弱小目标判读、多目标筛选/切换、真假目标辅助指定等环节;系统输出的目标位置信息、轮廓信息、运动信息能为自动跟踪信号处理、跟踪控制提供可靠的决策依据。
本研究将多点触控技术引入目标跟踪系统,可充分利用多点触控技术特征,弥补现有半自动跟踪装置的不足。工程实践表明本系统方案可行、实用,易于推广(如红外、微光、雷达、声纳等目标跟踪系统),在具体工程条件(如车载、舰载、机载等环境)下应用应进一步考虑增强系统的稳定性和可靠性。
[1] 张贤椿,王军,郭治.半自动跟踪系统中的操纵手满意建模[J].兵工学报,2009,309(4):497-502.
[2] 付强,王春平.基于半实物仿真的半自动跟踪技术开发平台[J].四川兵工学报,2012,33(8):69-70,80.
[3] 付强,王春平.基于模拟聚类的半自动跟踪技术研究[J].计算机与数字工程,2012,40(9):140-142.
[4] 越石健司,黑伬理.触摸屏技术与应用[M].北京:机械工业出版社,2011.
[5] 张忖.基于MultiTouch的数字展示系统的设计与实现[D].武汉:华中科技大学,2007.
[6] TOM V,PELI T,LEUNG M,et al.Morphology-based algorithm for point target detection in infrared backgrounds[C]//Proc.SPIE.[S.l.]:[s.n.],1993,1954:2-11.
[7] SUN X D,FANG G ZH.Infrared small targets detection based on MRF model[J].Procedia Engineering,2012,29:420-424.
[8] 赵杰阳.多点触控手势识别算法的研究与设计[D].北京:北京工业大学,2012.
[9] 王晓庆.多点触控系统触摸指令智能解析算法的研究与实现[D].青岛:中国海洋大学,2012.
[10] 方成艳,孔伟青,邓秀勤.多点触控手势识别算法的研究[J].软件工程师,2014(11):27-30.
[11] 夏卫政,徐进廷,黄坤,等.基于微分几何的固定翼无人机过顶跟踪地面目标制导方法[J].兵工自动化,2018,37(12):30-33.