基于自适应增量PCA算法的移动机器人场景识别
2015-04-25田文奇瞿心昱
田文奇,瞿心昱
(浙江交通职业技术学院机电学院,浙江杭州311112)
0 前言
基于计算机视觉的场景识别是实现人机交互的一种新的重要手段。通常的方法是先对摄像头读入的图像或视频信息进行场景的检测和定位,然后对检测到的场景进行跟踪并分割出较小的感兴趣区域,之后在此感兴趣区域中分割出准确的场景,最后使用预先通过训练样本训练好的分类器进行分类识别。已经有很多研究人员提出了自己不同的解决方法[1-6],但是其基本框架还是和上述的一致的。这个框架是目前各种视觉识别系统包括场景识别所普遍采用的,主要存在的问题是:分类器的学习需要大量训练数据,比如同一个场景,在不同光照不同角度,都需要大量样本进行训练,然而这些样本的收集是一件耗时耗力且困难的;分类器的学习是批量的、离线的,如果要添加新的场景,必须增加新的训练样本,重新训练,当类别很多时,重新训练是非常耗时的,因此可扩展性差;对于事先训练好的分类器,分类识别往往只停留在已训练的类别里,对未知新类别会错误分类到已有类别中,而不会知道是新类别,即对新情况适应性和鲁棒性差;场景特征只能从少量的初始样本里获得,这对于场景的准确特征表达往往是不够的,识别准确率不能得到提高。
为了解决这些问题,国内外各研究人员提出了不同的在线学习框架和学习算法,将样本的训练和测试同时进行,实时地、在线地更新训练结果和分类器。这样就使得训练分类器不需要收集大量训练数据,而是在系统使用的过程中实时在线训练,不断在运行中获得训练样本进行实时训练和学习,随时更新样本特征空间,不断提高识别的准确率,同时也能对未知类别实时检测和学习。Stephan KIRSTEIN 等[7]模拟了人脑的记忆结构,采用Gabor 滤波和分层结构来进行特征提取,然后采用在线向量量化算法(oVQ)和增量学习向量量化算法(iLVQ)对物体特征实现在线增量学习,在3 个小时内实现了对50 个物体的在线学习和准确识别。A PRONOBIS 等[8]采用修改的支持向量机算法进行移动机器人室内场景的增量学习。Peter M ROTH 等[9]采用增量主成分分析(PCA)对手持未知物体进行在线学习。另外还有些研究人员研究了在线PCA 算法对视觉物体,行为和场景进行在线学习[10-12]。D SKOCAJ 和A LEONARDIS 等[13]则提出了一种用于子空间增量学习的加权和鲁棒PCA 算法。
针对场景学习和识别,提出一种基于增量PCA的场景在线学习和识别方法。
1 自适应增量PCA 算法
算法流程如图1 所示。假设输入算法有n 个样本,算法有如下一些变量:当前的子空间,当前样本均值向量,当前系数向量,新样本,其重建投影,子空间更新,更新后的平均向量和更新后的系数向量。
在步骤n+1 时,当新样本输入,新的子空间可以通过计算主成分分析得到的系数向量,而不是高维重建,因为系数向量和重建图像包含相同的视觉变化,即在不同的坐标下,他们的本质是一样的,因此这个方法在计算上非常有效。
图1 自适应增量PCA 算法流程
在步骤n+1,新样本投影到当前子空间
重建得
计算误差向量
和扩展协方差矩阵
建立新的系数矩阵
求得下一步的系数矩阵为
更新的子空间为
上述在线主成分分析的问题是,在每一步增加了一个维度,因此,增加了计算和存储成本和冗余样本信息。因此,提出了自适应子空间的概念,来调整子空间上面的在线PCA 算法的更新策略。每一个新的场景图像可以分为3 种情况:(1)未知样本,新类;(2)与已学习类相似性较低的场景样本;(3)与已学习类相似度高的场景样本。设置两个阈值来区分3种情况:θclass,类间距离阈值;θdistance,类内距离阈值。更新策略分为3 种方法根据θclass和θdistance。如图2所示。
图2 自适应子空间更新策略结构图
如果‖r‖ >θclass,则通过在线PCA 算法计算新子空间U(n+1),且dim(U(n+1))=dim(U(n))+1,如果‖r‖<θclass,计算新样本投影和已有所有样本投影的欧式距离deuclidean 根据大小判断分成两个类别分别处理。
2 实验与讨论
实验设计用来执行提出在线学习和识别的场景。预处理场景图像作为样本输入分类器进行在线学习,每个样本60 ×45 像素,即2 700 的维数。Visual C ++ 6.0 环境和OpenCV 库用于本次在线场景识别实验,硬件环境为AS-R 移动机器人,如图3 所示。
图3 AS-R 移动机器人实验平台
使用105 个场景样本进行实验。初始化分类器用20 个两类样本,每类10 个样本。在线学习阶段一个新样本读入分类器进行下一步学习。该方法在重建误差等方面与离线PCA 比较结论如下。在线学习和识别开始于第21 个场景样本。在线学习过程的样本重建如图4 和图5 所示。
图4 一个类别的重建过程
图5 重建误差趋势
在图中可以看到,随着学习次数的增加,重建误差减少了,重建结果逐步改进。在离线PCA 中,样本不能重建,重建误差不能减少,逐渐重建效果得不到提高。因此,采用文中提出的自适应增量PCA 算法进行场景的在线识别,可以使得移动机器人场景识别在线进行,知识得到不断更新,遇到新情况不需要重新学习。随着知识在线积累,识别系统有更好的可扩展性、适应性和鲁棒性。
3 结束语
提出了一种基于自适应增量PCA 算法的移动机器人视觉场景识别。该方法可以使用相同的模式训练和学习阶段,从而实现新场景学习与识别。子空间更新策略是选择自动对应3 种不同的样本情况来衡量新样本之间的相似度并学习样本,这提高了适应能力。最后,进行了实验测试表明,该方法对实时场景知识更新、添加和积累有很好的适应性和鲁棒性。
[1]LIU M-Y,TUZEL O,VEERARAGHAVAN A,et al.Fast Object Localization and Pose Estimation in Heavy Clutter for Robotic Bin Picking[J].Int.J.of Robotics Research,2012,31(8):951-973.
[2]NIEUWENHUISEN M,STUCKLER J,BERNER A,et al.Shapeprimitivebased Object Recognition and Grasping[C].In Proc.7th German Conferenceon Robotics,2012.
[3]PAPAZOV C,HADDADIN S,PARUSEL S,et al.Rigid 3D Geometry Matching for Grasping of Known Objects in Cluttered Scenes[J].Int.J.of Robotics Research,2012,31(4):538-553.
[4]CHOI C,TAGUCHI Y,TUZEL O,et al.Votingbased Pose Estimation for Robotic Assembly Using a 3D Sensor[C].In Proc.IEEE Int.Conf.Robotics and Automation,2012.
[5]LI Y,WU X,CHRYSATHOU Y,et al.Consistently Fitting Primitives by Discovering Global Relations[J].ACM Trans.On Graphics,2011,30:52:1-52:12.
[6]杨全,王民.基于Euclidean 距离的手势识别[J].微计算机信息,2007(25):265-266.
[7]KIRSTEIN Stephan,WERSING Heiko,KORNER Edgar.A Biologically Motivated Visual Memory Architecture for Online Learning of Objects[J].Neural Networks,2008,21:65-77.
[8]PRONOBIS Andrzej,JENSFELT Patric.Large-scale Semantic Mapping and Reasoning with Heterogeneous Modalities[C]//2012 IEEE International Conference on Robotics and Automation RiverCentre,Saint Paul,Minnesota,USA,2012:3515-3522.
[9]ROTH Peter M,DONOSER Michael,BISCHOF Horst.Online Learning of Unknown hand Held Objects Via Tracking[C]//Int.Conf.on Computer Vision Systems,New York,2006.
[10]OZAWA Seiichi,PANG Shaoning,KASABOV Nikola.A modified Incremental Principal Component Analysis for On-line Learning of Feature Space and Classifier[C]//PRICAI 2004:Trends in Artificial Intelligence.Springer Berlin Heidelberg,2004:231-240.
[11]JIANG Xianhua,MOTAI Yuichi.Learning by Observation of Robotic Tasks Using on-line PCA-based Eigen Behavior[C]//Proceedings 2005 IEEE International Symposium on Computational Intelligence in Robotics and Automation,2005:391-396.
[12]ARTTAC M,JOGAN M,LEONARDIS A.Incremental PCA for On-line Visual Learning and Recognition[C]//In ICPR 2002,3:781-784.
[13]SKOCAJ D,LEONARDIS A.Weighted and Robust Incremental Method for Subspace Learning[C]//In Proc.IEEE Intern.Conf.on Computer Vision,2003,II,1494-1501.