赵利萍,周海英
(中北大学 计算机与控制工程学院,山西 太原030051)
在复杂的背景下实现目标识别[1]一直是视觉测量方面研究的难点之一,通常处理这类问题的方法大致分为两种:一种是直接识别目标,通常用的是模板匹配的方法;另一种是首先要运用一定的方法圈定一些区域作为假定的目标区域,再进一步选取更为准确的目标区域,而且通常把矩形不变量作为选取目标区域的特征[2,3]。这几种方法都是针对静态目标,计算量大,难以实现对目标的实时识别。
视觉注意系统在机器人视觉系统中的应用使得对动态目标的识别成为现实,它能够为机器人提供较为准确和直观的视觉信息[4,5]。视觉注意系统即是模拟人眼的选择性注意行为以及其预注意和注意不断循环的工作机制的系统[5]。预注意阶段:在视觉场的周边进行简单的计算以确定下一个凝视点的位置和下一个视网膜中央凹将执行的场景,这样就产生了一连串的中央凹图像;注意阶段:前边得到的中央凹图像将会经过注意处理,获得基于视觉基元的复杂特征信息。
Gallant等对猕猴V4区在Cartesian和non-Cartesian光栅刺激下的神经反应进行研究,揭示了Cartesian和non-Cartesian滤波器一起作用于该注意处理过程。本文是基于Cartesian和non-Cartesian在视觉注意机制方面作用的思想,提出了利用50个Cartesian和non-Cartesian滤波器构造一组视觉元素,以此获得中央凹图像的观测向量,进而组成注意序列的方法,来表征图像的特征集。因此比较当前场景的观测向量和经过训练的平均观测向量,用几个扫视就可以快速实时地实现移动机器人对目标的识别和判断。
人眼的形状近似为一球体,有三层薄膜包围着它,分别为角膜与巩膜、脉络膜和视网膜。人眼最里面的膜是视网膜,当眼睛适当地聚焦时,来自眼睛外部的光就会在视网膜上成像。眼睛中的光接收器主要有锥状体和杆状体,锥状体主要集中于视网膜的中央区域,称之为中央凹[7,8]。它对颜色高度敏感,并且可以高效地分辨图像的细节信息。机器视觉是用机器模拟人眼来进行测量和判断[4]。用移动机器人的摄像机来代替人眼,当摄像机对准图像时,即确定了此时的凝视点,绕光轴最高视力的小区域就是中央凹区域。
灰度形态学腐蚀算子
单尺度形态学梯度算子
式中:I⊕g——利用g对I进行膨胀,IΘg——利用g对I进行腐蚀。
该单尺度形态学梯度算子的性能优劣由结构元素g的大小来决定。如果g大的话就会边缘之间发生严重的互相影响,这就会造成该梯度的极大值同边缘不相一致的后果;但是,当g过于小时,该梯度算子对斜度边缘输出一个很小的结果 (虽然此时该梯度有较高的分辨率)。
为了使得大结构元素的优点和小结构元素的优点都被充分利用,就提出了多尺度形态学梯度算子。设Bi是一组大小为 (2 i+1)(2 i+1)的正方形结构元素,则多尺度形态学梯度算子定义为
则边缘检测后得到的矩形区域在原图中表示如图1所示。
图1 矩形区域在原图中的表示
It is high time for us to think about how to adjust our diplomatic working model and improve tactics that are of benefit to China.
在视觉注意的注意阶段,中央凹图像Xtv经过注意处理后,就得到一个关于其状态的观测向量ot。因此预注意和注意每循环一次就得到一个观测向量,为了得到目标或者场景的足够信息,就需要多次循环,这就会得到多个观测向量。将得到的多个向量按照观测的先后顺序排列起来形成的序列,就称为注意序列OT= (o1,…,oT)。其中视觉元素的选择是至关重要的。
生理神经表现的潜在可能性表明视觉元素是由Cartesian和non-Cartesian滤波器共同组成[9,10]。这里选取的是由30个Cartesian和20个non-Cartesian(包含5个concentric、5个polar、5个hyperbolic、5个旋转的hyperbolic)滤波器组成的视觉元素来进行实验的。
(1)Cartesian滤波器数学模型
(2)non-Cartesian滤波器数学模型
1)concentric filters
2)polar filters
3)hyperbolic filters
4)旋转的hyperbolic filters
其中,c是定向角,ω是频率,(i,j)分别表示像素在中央凹图像中的位置。
选择了视觉元素后,对中央凹图像进行注意处理。假设一共有M个不同的视觉元素,F代表视觉元素的滤波器组,Ωm代表第m个视觉元素值的集合。注意处理的过程如下:
假设视觉元素中滤波器函数的数学模型为
其中,F是由Cartesian和non-Cartesian滤波器组成,j)代表的是t时刻待处理中央凹图像的像素值,(i,j)代表像素X的位置,表的是该时刻图像像素通过滤波器后的响应。而且m和M需要满足的约束条件是
当滤波器为Cartesian滤波器时,最后响应取
当滤波器为non-Cartesian滤波器时,最后响应取
最后得到的 M个视觉元素值 [g1,…,gM]就组成了一个向量,称之为t时刻的观测向量:
在实验中研究这些滤波器的响应。当摄像头扫过这些物体时记录下的其前4个扫视所产生的图像如图2所示。
图2 前4个扫视图 (从上到下依次是目标1,目标2,场景1,场景2,场景3)
在此仔细观察一下所选的视觉元素中各滤波器对图2所示的目标或者场景的各扫视图像的响应——即观测向量,分别如图3中的 (a),(b),(c),(d),(e)所示。据观测,随着时间信号从一个中央凹到下一个中央凹时,所观测到的观测向量ot也在随之改变。
由此可知,经过预注意和注意的循环,通过对产生的一组中央凹图像Xf=进行视觉处理后,就可获得注意序列OT= (o1,…,oT),且注意序列能够对该目标或者场景的内容提供足够的信息。因而注意序列可以看作是与时空相关的一组包含关键视觉数据视觉元素值。显然,如果我们要使用注意序列来达到目标识别的任务的话,视觉元素的选择是相当重要的。
在实验中,我们用移动机器人带有的摄像头进行扫视来获取目标1(打印机)、目标2(盆栽)、场景1(含有目标1)、场景2(含有目标2)、场景3(其他)。把目标1和目标2作为当摄像头扫过场景1、2、3时需要识别的当前目标任务。首先要对目标1和目标2进行学习,摄像头对每个目标观察了No=5次,每次观察停止前都获得Nt=28个扫视图像。我们用目标的注意序列的平均观测向量Ti(i=1,2)来简单的描述该学习目标,Ti的数学表达式为
目标1、2的平均观测向量如图4所示。
摄像头随机对现场进行查看 (这里选取场景1,2,3),并计算该场景前n个扫视的平均观测向量Bj(n)(j=1,2,3)
然后通过计算需要识别的目标的平均观测向量Ti和当前场景的平均观测向量Bj(n)之间的欧式距离d(Bj(n),Ti)来评估我们所选取的视觉基元的识别效果。当所识别的目标1或者2的平均观测向量Ti与当前场景j的平均观测向量Bj(n)之间的欧式距离d(Bj(n),Ti)最小时,就认为该场景j中包含有目标i。
显然,扫视数量n是至关重要的。比如,开始时只有一个扫视 (即n=1),我们可以看到比较的目标和场景相差不太大,除非第一个中央凹图像包含有一个非常显著地特征。然而当进行更多的扫视后,即n增大时,d(Bj(n),Ti)将变得明显比其它的要小。图5的两幅图分别表示场景1、场景2、场景3当前平均观测向量和目标1(目标2)已学习的平均观测向量的欧氏距离d(Bj(n),Ti)相比较。从图5中可以看出第一个扫视后明显差距不大,随着n的增加,结果变得可区分了:从第4个扫视之后场景1(场景2)与目标1(目标2)的距离明显是最小的,因此我们认为机器人正在观察的场景1(场景2)中的物体就是目标1(目标2)。这样就将目标1(目标2)正确识别出来了,而且所需扫视数目很少。因此该方法可以满足我们对目标进行实时识别的需求。
图3 目标及场景前4次扫视的观测向量
图4 目标1,2的平均观测向量
图5 目标1,2与场景1,2,3的平均观测向量的距离
本文采用一组由50个Cartesian和non-Cartesian滤波器组成的视觉基元,来实现移动机器人对目标的识别。注意序列是由时空相关的视觉特征集构成的,每次观测都包含了该组视觉元素中所有滤波器的响应,因此当摄像头环顾周围时,与时间和空间相关的一组注意序列就产生了。实验结果表明,一个动态场景可以由注意序列有效地进行表达,而且带有摄像头的移动机器人可以用平均观测向量学习一个复杂的目标物体,并通过用几个扫视,用当前的观测向量和经过训练的平均观测向量作比较,以快速实时地实现对目标的识别判断。
[1]SHI Siqi.Study on object recognition based on contour feature[D].Xi’an:Xidian University,2012 (in Chinese). [史思琦.基于轮廓特征的目标识别研究 [D].西安:西安电子科技大学,2012.]
[2]YANG Heng,WANG Qing.A novel local invariant feature detection and description algorithm [J].Chinese Journal of Computers,2010,33 (5):935-944 (in Chinese).[杨恒,王庆.一种新的局部不变特征检测和描述算法 [J].计算机学报,2010,33 (5):935-944.]
[3]GU Yong,HE Mingxin.Research on beer bottle detection system based on machine vision [J].Computer Engineering and Design,2012,33 (1):248-253 (in Chinese). [顾勇,何明昕.基于机器视觉的啤酒瓶检测系统研究 [J].计算机工程与设计,2012,33 (1):248-253.]
[4]ZHANG Bo,LUO Haiyong,LIU Jiwei,et al.Multi-vision based passive target localization for multimedia sensor networks[J].Journal of Computer Research and Development,2010,47 (Suppl.):60-63 (in Chinese). [张波,罗海勇,刘翼伟,等.多媒体传感器网络中基于多视信息的被动目标定位算法[J].计算机研究与发展,2010,47 (增刊):60-63.]
[5]McIntyre S,Gugerty L,Duchowski A.Brake lamp detection in complex and dynamic environments:Recognizing limitations of visual attention and perception [J].Accident Analysis &Prevention,2012,45:588-599.
[6]Sagi D.The psychophysics of texture segmentation [J].Spatial Vision,1993,7 (1):83.
[7]WEI Xiaowen,SHI Xuli,ZHAO Ziwu.Compression Method based on human visual system [J].Digital Video,2010,34(10):23-25 (in Chinese). [魏小文,石旭利,赵子武.一种基于人眼视觉特性的压缩方法 [J].电视技术,2010,34(10):23-25.]
[8]LI Zhiqing,SHI Zhiping,LI Zhixin,et al.Space coding model based on structural similarity [J].Journal of Software,2012,21(10):2410-2419 (in Chinese).[李志清,施智平,李志欣,等.基于结构相似度的稀疏编码模型 [J].软件学报,2010,21(10):2410-2419.]
[9]Hara A,Watanabe M,Takahama T.Cartesian ant programming [C]//IEEE International Conference on Systems,Man,and Cybernetics.IEEE,2011:3161-3166.
[10]Moinet M,SerréP.Geometric transformation of a constrained object using a non-Cartesian method [J].International Journal of Product Development,2014,19 (1):156-172.