摘要:在综合国内外对眼动数据处理研究的基础上,提出新的眼动数据处理算法。首先对原始眼动数据进行预处理,通过删除空白数据、消除噪声数据、转换数据格式将眼动坐标数据、飞机坐标数据进行坐标转换;然后将预处理后的数据利用离散傅立叶变换得到最佳距离值指导聚类,进而得到最佳注视序列;最后用最佳注视序列指导眼动数据的聚类。该算法提高了眼动数据的处理效率及准确度,有助于利用眼动数据处理算法开展眼动应用研究。
关键词:管制员; 错忘漏; 眼动实验; 数据处理算法;
Abstract:Based on the research of eye-movement data processing at home and abroad,a new eyemovement data processing algorithm is proposed.Firstly,the original eye-movement data is preprocessed,and the eye-movement coordinate data and aircraft coordinate data are transformed.Secondly,the best distance obtained by DFT is used to guide the clustering of the preprocessed data,and then the best gaze sequence is obtained.Finally,the best gaze sequence is used to guide the clustering of eye-movement data.All of them improves the efficiency and accuracy of eye-movement data processing,which is helpful for the application of eye-movement data processing algorithm.
Keyword:controller; error forgetting; eye-movement experiment; data processing algorithm;
目录
1眼动数据处理算法……………………………………………………………………………1
1.1原始眼动数据的预处理……………………………………………………………………………2
1.2坐标线性转换及注视行为确定……………………………………………………………………………2
2改进的基于密度的眼动数据聚类算法……………………………………………………………………………3
3聚类算法步骤……………………………………………………………………………4
4结论……………………………………………………………………………5
文内图表……………………………………………………………………………6
图1注视点距离阈值简图……………………………………………………………………………6
图2改进后密度聚类算法聚类效果图……………………………………………………………………………6
图3其他密度聚类算法聚类效……………………………………………………………………………6
参考文献……………………………………………………………………………7
,由于"错、忘、漏"原因导致的不安全事件时有发生[1].对管制员工作进行有效的实时监控可以有效减少管制员的工作失误,提高航空飞行效率和安全系数。眼睛是管制员获取的信息主要途径,利用眼动追踪设备对管制员的眼动行为进行追踪及记录成为研究管制员人为因素的可靠方法,也是研究其信息加工过程的有效手段。由于在眼动数据处理方面缺乏方便有效的方法,前期研究对眼动指标的分析往往事倍功半,探索一种针对眼动数据的数据处理算法十分必要。眼动研究最主要的设备就是眼动仪,目前市场上主流眼动仪的采样率为30Hz、60Hz、120Hz等,采样率为60Hz的眼动仪,1min采集3600个数据,实验时长30min内可以产生108 000个采样数据。在基于眼动仪的实验中往往需要多名被试,实验数据量成倍增加。在处理眼动数据过程中,如果缺乏行之有效的方法,处理效率就会大大降低。针对眼动数据的特点及其研究者本身的需求,设计不同的眼动数据处理算法,是眼动研究的前提。
国内研究中,眼动数据处理主要是注视区域划分方法和聚类算法。传统的注视区域划分方法主要有两种,一是通过对视野平面的划分,注视点落在的部分就认为注视该区域。二是通过对实验录像的回放,逐帧分析注视点位置,确定每个注视点的注视目标。最常用的聚类算法K means是一个十分快的算法,在该算法中找到最优聚类K值是个难题。K means是一种迭代算法,在算法开始时,必须指定一个数K.随机选择K个聚类中心,将每一个数据分配到最接近的质心,重新计算每个簇的质心,重新迭代,直到算法终止[2].施卢丹[3]设计了眼动数据快速聚类方法,对驾驶人注视点位置进行聚类分析,首先选择一些"聚集点"作为参考点,然后将其划分到与它最近的"聚类点"所代表的类,再用这些类的均值代替初始"聚集点",过程如此循环,直至分成的类再没有变化为止,划分出驾驶人注视区域。国威等[4]设计了模糊聚类传递闭包聚类方法,首先标准化被试的眼动数据,然后建立初始数据矩阵,采用绝对值倒数法构造模糊相似矩阵,并用P检验法进行显著性检验,判断检验聚类结果是否合适。
在国外,对于眼动数据的处理也有了一定的发展。在早期的研究中,Hacisalihzade等[5]通过马尔可夫建模来模拟实验过程中被试的视觉注视状态,收集被试的眼动数据,将注视序列转化为特征字符串,以此来研究并量化眼动注视序列的相似性。Elhelw等[6]则通过离散时间的马尔可夫链来研究被试的注视序列,通过分析眼跳运动来检查不同观察者组的视觉行为的动力学,发现注视数据能够揭示最吸引观察者注意的图像特征。Dempere-Marco等[7]则基于马尔可夫模型来分析视觉搜索的动态行为,从而提出了两个评价行为的专家模型。
国内外对于眼动数据处理虽然已经做过了很多研究,但是仍然缺乏简便有效的眼动数据处理算法。眼动数据是基于时间的一系列眼动指标的序列,本文旨在研究一种眼动数据处理算法,再利用该算法进行模拟管制的相关研究。
1 眼动数据处理算法
1.1 原始眼动数据的预处理
对数据进行处理之前,先对原始数据进行必要的清洗、转换、离散和归约等一系列预处理,以达到挖掘算法进行知识获取研究所要求的最低规范和标准[8].
被试追踪飞机的整个实验过程中,飞机位置所在的屏幕位置并非整个屏幕。即被试观察飞机以外的区域时记录的数据对后期的研究没有意义,故当噪声数据处理,可以进行消除。
原始眼动数据具有不完整性、含噪声、数据格式不符合要求等特点。数据质量低时,数据处理结果会不理想,需要进行数据预处理,提高数据质量,进而提高数据处理的质量。
结合原始眼动数据的特点及其后期数据处理算法的需求,对原始眼动数据利用Matlab软件进行预处理。预处理步骤为:(1)删除空白数据;(2)消除噪声数据;(3)转换数据格式。
1.2 坐标线性转换及注视行为确定
本研究需要分析飞机在眼动仪系统中的位置,即需要知道被试眼睛观察屏幕的时候哪些时间是在追踪飞机。然而模拟机导出的是飞机的地理坐标、眼动仪导出的是眼睛的屏幕坐标,需要将两个坐标进行坐标转换。
本文是基于模拟管制,关注的范围较小,且两个坐标系中的点和直线存在一一对应关系,综合比较各种坐标转换模型的优劣,对飞机的地理坐标采用仿射转换模型进行转换。仿射转换数学模型为
式中:a1,b2分别为x,y方向的伸缩比例;a2,b1分别为x,y方向的旋转参数;a0,b0分别为x,y方向的平移量。新旧坐标系的点和直线在仿射变换前后存在一一对应关系。
假设(x,y)为飞机所在地理坐标系O XY中的坐标,(xN,yN)为被试的注视点位置所在屏幕坐标系O XNYN中的屏幕坐标。将(x,y)转换为(xN,yN),应用仿射转换关系求出转换参数,得到将地理坐标转换为屏幕坐标的转换关系[9]为
通过转换关系得到的值与记录的实际值相减,差值绝对值大于1.654,则视为不准确的数据。
依据文献[10],本文将100ms视为最短注视时间。管制模拟机的刷新频率为1s,远低于眼动设备的采样频率,因此,可以认为,在100ms的条件下,被试观察的是静态图像,连续6帧观察同一目标,记录为一次注视数据。由于每架飞机均附带标牌信息,当被试对标牌进行注视时,也应该认为被试在关注这架飞机。
2 改进的基于密度的眼动数据聚类算法 常用的密度聚类如DBSCAN主要的目标是寻找被低密度区域分离的高密度区域。利用此方法对眼动数据聚类时虽然能划分出聚类点,即各个注视点的集合,但是无法得到注视点的时间序列。为此,改进基于密度的聚类算法。
图1 注视点距离阈值简图
在聚类之前首先要计算注视点距离阈值,见图1.所用的眼动仪精度为0.5°,实验过程中被试眼睛距离屏幕约为65cm,因此可以根据tan 0.5=X/65cm得到屏幕上误差距离X值约为0.567 246 4cm.实验中所使用的电脑屏幕宽度约为50cm,显示器分辨率为1366px,可以得到阈值Y约为15.497 17px.假定某一被试的注视点序列为{n1,n2,…,nN},注视点与注视点之间的距离阈值为δ,满足小于距离阈值δ的注视点密集度阈值为ε。经过上述计算机对样本实验数据的反复测试,将距离阈值δ取值为255个像素点,密集度阈值ε取值为150比较合适。
3 聚类算法步骤
Step 1.计算每一组注视点对之间的欧式距离,并将其存储在一个矩阵中。
Step 2.将傅立叶逆变换得到的最佳距离值的第一个注视点作为参考值,按照注视点序列生成顺序从中选取未被标记过的注视点作为开始点(与参考值一致),将其标记为已用。在Step 1存储的距离矩阵未被标记过的注视点中检索与开始点的欧式距离小于距离阈值δ的点,将其和开始点归为一类。本文称这些注视点为开始点的一次邻近点,设其序号组成集合A0,A0中包含的元素个数为M1.
Step 3.在距离方阵中分别检索未被标记过的注视点且与开始点的一次邻近点欧氏距离值小于δ的点,得到M1个序号集合,此步骤记为开始点的二次邻近点,设其为A1,A2,…,Am1.
Step 4.求出A0,A1,A2,…,Am1的并集,并集中最终的元素个数记为M2,M2≥M1.若M2<ε,则认为其尚未达到聚类的要求,对这M2个注视点不做任何处理;若M2≥ε,则认为其满足聚类的要求,将这M2个注视点标记为已用,记录下这M2个注视点和起始注视点的序号,并取这些点的坐标均值作为该处聚类中心的坐标值。
Step 5.重复Step 2~Step 4,按注视点产生顺序遍历距离方阵可以得到最终的若干个类内注视点的集合及各类的集合元素个数。
为了直观展现算法改进后的聚类效果,选取几段眼动数据分别利用改进后的密度聚类算法及其他密度聚类算法进行聚类测试。其中在选取的测试数据中插入10%的噪声数据,测试结果如图2、图3所示。
图2 改进后密度聚类算法聚类效果图
图3 其他密度聚类算法聚类效果图
图中黑色的点代表的是噪音点,不同的灰色区域代表着不同的聚类簇。由图2、图3可知,两种算法都可以对几段眼动数据进行聚类,但有些许差别。仔细分析聚类效果图可以发现,对于几段眼动数据的聚类中,改进后的聚类能更好地消除边界噪声,聚类后数据离散程度小。对于在测试数据中插入10%的噪声数据两种聚类算法的聚类效果差异显著。图2中,噪声数据被标记为黑色,改进后的密度聚类算法能有效识别噪声数据,不对噪声数据进行聚类。图3中,某些噪声数据也被标记形成了聚类簇,抗噪声数据干扰能力较弱。通过对比分析可知,改进后的密度聚类算法聚类效果理想,抗噪声数据干扰能力强。
4 结论
本文利用Matlab软件对眼动数据进行预处理,然后提出改进的基于密度的眼动数据聚类算法。通过在测试数据中插入10%的噪声数据检验改进的聚类算法的效果,结果显示改进后的密度聚类算法能有效识别噪声数据,不对噪声数据进行聚类。本算法提高了眼动数据的处理效率及准确度,有助于利用眼动数据处理算法开展眼动应用研究。
参考文献
[1]孙金峰,张咫千,姚东宾。从上海虹桥机场跑道入侵事件谈飞行冲突的[J].科技创新与应用,2016(34):292.
[2]刘鑫朝。聚类算法的研究及其应用[D].长沙:长沙理工大学,2006.
[3]施卢丹。高速公路特长隧道驾驶人眼动注视特性研究[D].西安:长安大学,2011.
[4]国威,潘晓东,邓其,等。驾驶员隧道段夜间行车动视点特征模糊聚类评价[J].公路工程,2013(6):97-101.
[5]HACISALIHZADE S S,STARK L W,ALLEN J S.Visual perception and sequences of eye movement fixations:a stochastic modeling approach.IEEE Transactions on Systems,Man and Cybernetics,1992,22(3):474-481.
[6]ELHELW M,NICOLAOU M,CHUNG A,et al.A gaze-based study for investigating the perception of visual realism in simulated scenes[J].ACM Transactions on Applied Perception,2008,5(1):1-20.
[7]DEMPERE-MARCO L,HU X,MACDONALD S L S,et al.The use of visual search for knowledge gathering in image decision support[J].IEEE Transactions on Medical Imaging,2002,21(7):741-754.
[8]李晓菲。数据预处理算法的研究与应用[D].成都:西南交通大学,2006.
[9]蔡亚敏。模拟管制过程中的动态目标视觉注视转移特征研究[D].天津:中国民航大学,2015.
[10]靳慧斌,王丹,王松涛。民航管制员的注视及遗忘特征研究[J].科学技术与工程,2016(16):295-300.