好文回顾:
好久没有推送一些精彩的文章,不知道大家有没有很渴望来一场学术交流,增强人工智能领域的学习动力,有很多的您刚加入,有很多的您是这方面的专家。希望大家可以共同去学习,相互交流,激发深入的创新之门。
今天给大家带来的是一篇简单的目标识别算法综述性文章,希望有兴趣的您继续阅读下去,谢谢!
视觉目标识别,又称关于视觉图像的模式识别, 旨在利用图像处理与模式识别领域的理论和方法,确定图像中是否存在感兴趣的目标, 如果存在则为目标赋予合理的解释,并且还要确定其位置。计算机视觉理论的奠基者,英国神经生理学家Marr认为,视觉要解决的问题可归结为“What is Where”,即“ 什么东西在什么地方”。因此计算机视觉的研究中,目标识别是最基本的研究问题之一。其研究主要包括基于视频图像的目标识别和基于静态图像的目标识别,本文这次主要来讨论基于静态图像的目标识别。
近年来,目标识别技术受到越来越多的重视,在很多领域得到极大发展和应用。包括安防领域的人脸识别、行人检测、智能视频分析等;交通领域的交通场景目标识别、车辆计数、逆行检测、车牌检测和识别;以及互联网领域的基于内容的图像检索、相册自动归类等。所以,图像目标识别具有重要的研究意义,且其研究成果具有非常广阔的应用前景
目前,国内外有很多针对目标识别的研究进展分析,但大多是针对空间目标、空中目标的雷达目标识别及机场跑道目标的遥感目标识别,针对地面图像目标识别的综述文献还较少。本文针对图像目标识别的国际常用有效算法进行分析, 并对其发展趋势进行展望。
1 目标识别系统
目标识别可理解为计算机对图像特征分析,然后对目标概念理解过程。目标识别系统主要分为如图1所示几个部分。
输入图像可能存在视角变化、光照变化和遮挡等问题,使目标识别具有挑战性。为了比较不同算法的性能,通常使用共同标准数据库,如目前目标识别研究主要使用的Caltech系列数据库、PASCAL VOC数据库和ImageNet数据库。
预处理的目的是在最小限度影响目标本质特征条件下,通过对图像的颜色、亮度和大小等表观特征进行处理,以便于提取正确的目标特征,减少后续识别算法的复杂度并提高效率。主要有图像增强、灰度化、二值化、归一化等数字图像处理操作。
特征生成指用数值形式将能够充分表示的特征表达出来,目的是尽量获取图像真实特征,滤除虚假特征。特征生成影响着识别算法的准确性和实时性, 需要解决提取什么特征这一问题,主要有底层特征、 中层特征和高层特征三种方案。
模型构建的主要目的是通过提取相同类别目标的共同之处、区分异类别目标的不同之处,对特征及特征间的空间结构进行高效处理、存储和利用,是设计整个识别系统的关键所在。模型构建按照统计结构可以分为生成模型(Generative Model)和判别模型(Discriminative Model)。
模型训练是在目标特征和模型确定后,在指定训练图像集进行学习训练、将得到的目标模型参数作为目标识别的重要依据。模型训练按训练方法的不同可以分为有监督、无监督和半监督三种训练方式,按分类器的不同主要有支持向量机SVM、KNN、 神经网络 NNs(Neural Networks) 和随机森林等。
目标检测是利用样本集训练出的模型与测试图像提取出的模型进行匹配,获取测试图像的目标种类及位置信息,是整个识别系统的最后步骤。目标搜索则是其中关键,直接影响识别系统的性能。目前,主要的目标搜索方法有基于滑动窗口的搜索方法和基于图像分割的搜索方法。
在目标识别系统基本框架下,采用不同模型衍生出不同的识别算法,通常使用准确性、实时性和鲁棒性对不同算法进行评价。准确性指目标识别算法对目标物体识别检测的准确率,衡量算法性能,通常使用平均正确率 AP(Average Precision)进行评估,实时性指目标识别算法从一幅图像中识别出目标的所需时间,决定算法应用前景,鲁棒性通常表现为目标识别算法所选用分类器对特性或参数扰动的不敏感性,其主要影响因素为训练集样本。
2 典型识别算法及其进展
2.1 词袋模型及其进展
词袋 BOW(Bag-Of-Words) 模型, 也称为特征袋 BOF(Bag-Of-Feature) 模型,起初只应用于文本分析,通过对文本中的单词频率建模来描述文档。Csurka等人将BOW 首次引入计算机视觉后,在目标识别、场景分析等领域得到广泛应用。
BOW模型通常利用SIFT 等底层特征, 对特征点或特征区域进行描述, 提取得到图像特征矢量。然后通过聚类、求质心等方法矢量量化所有训练样本库图像的特征矢量,得到的质心即为BOW中的词,进而形成词袋或词典。接着借助统计直方图方法分析描述目标样本的词的特征矢量频率,则直方图信息为训练分类器时的输入。最后,对测试图像采取相同的方法进行特征提取,求出与特征矢量相对应的词在图像目标中出现频率, 也使用直方图进行描述, 并将其输入到已训练的分类器中, 即可得到最终的识别结果。
BOW模型由于忽略了目标的空间位置、丢失目标的几何结构等信息,因此影响其目标的描述能力,但文献中却巧妙将其利用到人体识别中。该文提出因为人的姿态变化和遮挡的位置信息会使特征向量不一致,如果直接忽略位置信息,则即使不同位置的人体姿态变化也可以用一致的特征表示,人体遮挡后可见的部分也可构造特征表示,因此获得较好的处理目标形变和部分遮挡能力。
由于BOW模型简单,对噪声影响不敏感且不需要分割图像等优点,使基于词袋框架结构的识别算法得到研究人员的广泛关注,并在其框架基础上提出稀疏编码、混合生成判别模型等新的方法。其中空间金字塔匹配模型,在第n层,粗糙的将图像划分成4^n个子图像,然后对每个子图像均建立BOW模型并串联起来,结果作为第n层图像表示空间金字塔模型与稀疏编码方法相结合,将BOW模型的发展推进一个新的阶段,成为视觉目标识别最常用算法之一。
2.2 梯度方向直方图模型及其进展
梯度方向直方图HOG模型是2005年CVPR会议上,法国国家计算机科学及自动控制研究所的Dalal和Tringgs等人提出的一种解决人体目标检测的图像描述子。该方法使用HOG特征来表达人体,提取人体的外形信息和运动信息,形成丰富的特征集。HOG 的主要思想为在一副图像中,局部目标的表象和形状能够被梯度或边缘的方向密度分布很好地描述。
HOG的生成概括为先将图像分成小的连通区域cell, 然后采集cell中各像素点的梯度的或边缘的方向直方图,再将这些直方图组合起来则构成特征描述器。其具体流程如图2 所示。采用Gamma校正法对输入图像进行颜色空间归一化,可以提高检测器对光照和阴影影响的鲁棒性。计算图像每个像素大小和方向
的梯度,主要是为了捕获轮廓信息,同时进一步弱化光照变换的干扰。然后将图像划分成若干细胞单元格,并以细胞为单位统计图像梯度方向直方图,这样能够保持图像中目标的姿势和外观的弱敏感性。为了能够进一步地对光照、阴影和边缘进行压缩,将各个细胞单元格组合形成大的块,以此为单位进行对比度归一化,得到的块向量即为HOG描述符。 最 后 将 检 测 窗口中所 有 重 叠 的 块 进行HOG特征的收集,并将它们结合成最终的特征向量供分类使用。
Dalal等人提出的基于HOG行人检测算法选用判别模型, 采用监督学习方式训练SVM分类器,在目标检测阶段使用滑动窗口法进行目标搜索。HOG与SVM相结合,因其具有关照不变性、模型可视性和相对较高的识别精度,在目标识别中得到广泛应用。但其也存在实时性差、很难处理遮挡 角度变换和旋转问题
等缺点。
针对这些问题, 研究人员就行了大量努力。局部二值模式LBP与HOG结合的识别算法,通过对底层HOG特征进行改进,比较有效的解决了遮挡问题,使目标识别准确性显著提高;在HOG特征提取阶段,使用三维球面坐标系替换二维直角坐标系,建立的HOG描述符可以取得较好的旋转不变性,但仍未解决视角变换问题。为此, 有文献使用多角度SIFT算法,并通过构建经纬度模型进
行仿射特征提取,成功解决了视觉变换问题, 但多角度SIFT算法的引进带来巨大运算量,降低了识别的实时性。
2.3 可变部件模型及其进展
Pedro Felzenszwalb教授为了在特征描 述 阶 段 定 义 物 体 形 变,提 出 了 可 变 部 件 模 型DPM。DPM可以理解为HOG的扩展,其思路大体与HOG一致———先计算梯度方向直方图,然后用SVM训练得到物体的梯度模型,用其对图像进行识别。
DPM使用星型结构的部件模型。此模型由一个根滤波器、一系列部件滤波器以及相应的可变形模型构成。根滤波器包含目标的整体信息,而部件滤波器采用高分辨率的细节建模。星型模型在图像特定位置和尺度的得分, 等于根滤波器的得分加上各个部件的得分的总和。每个部件的得分等于此部件在所有空间位置的得分的最大值,而部件在某位置的得分等于部件滤波器在此位置的得分减去此位置的变形代价。变形代价衡量了部件偏离其理想位置的程度,即部件偏离与根滤波器的最优相对位置程度。通过定位每个部件和定量部件之间的相对位置关系,DPM 模型容许目标出现较大程度的外观形变。DPM 模型采用多组件结构,一类目标模型可以同时包含正面、斜面和侧面等组件,多组件结构克服了视觉变换的挑战。
Pedro提出的基于 DPM 识别算法,使用判别分类器完成目标识别,采用半监督学习训练隐变量支持向量机 LSVM,即目标位置作为隐变量,将其放入SVM 的目标函数进行优化,以判别训练方法获取物体的最优位置,在目标检测阶段使用滑动窗口法进行目标搜索。因DPM模型不仅具有HOG的关照不变性、 模型可视性等优点,还能很好的处理遮挡、非刚性可变和视角变换问题, 大大提高了识别正确率,使 DPM 模型成为这几年最为流行的图像目标检测算法。虽然 DPM 算法相对其他算法具有较高的准确性,但研究人员一直致力于得到更高的识别性能。有文献在DPM 模型基础上同时引入上下 文 学 习 和 空 间 混 合 建 模,并 提 出 一 种 数 据 分 解 算 法,较 大 地 提 高 了AP值, 成为PASCAL 2011的目标识别冠军。但基于DPM 识别算法也具有实时性差、不具有旋转不变性等缺点,为了提高识别实时性, 研究人员进行了大量努力。
Pedro文献中采用级联思想加速目标搜索,在保持准确率的同时使识别速度提高了十倍, 对PASCAL 2007的平均识别达到一秒以内。杨扬则采取分割位置提示加速目标搜索,即先对测试图像进行快速分割,再对分割出的各个部分进行识别检测。
2.4 人工神经网络模型及其进展
科研人员通过对人类大脑的神经网络构成以及工作原理探索,建立了基于视觉系统结构的人工神经网络 ANN模型。在 ANN 识别系统中, 研究人员选择Gabor滤波器对图像进行预处理。为了获取图像角落和轮廓等基础特征, 图像块被选取为特征输入,然后由多层滤波器构成的神经网络提取出目标显著性特征。在训练过程中,ANN 使用分层无监督学习方法:即通过无监督训练初始化第一层神经元,将其输出数据作为下一层神经元输入,并使用相同方法进行训练。为了获取更好的训练效果,通常在经过设计的无监督训练神经网络层后, 将其输出通过一次有监督误差方向传播 BP算法训练。
在目标识别领域最典型的 ANN 是卷积神经网络 CNN,CNN 主要包
括卷积层和汇聚层。其中卷积层是核心,将整个输入图像与大小固定的滤波器进行卷积,然后卷积层得到的信息传递到汇聚层,通过对特征图中Patch的最大值、平均值提取,对数据进行降采样。CNN 通过利用其各层网络之间的位置共享,可以降低计算参数的数量,同时通过挖取数据的空间相关性,使其能够自动提取图像的相关特性。
在很多 ANN 设计中采用了BP算法,通过将实际输出与标注不相符的误差输出向输入层方向传播,修正各个卷积层单元的权重。深度神经网络的应用,大大提高了图像目标识别的平均正确率,成为目标识别领域的热点。基于 ANN 的目标识别算法具有精度高、有一定不变性等优点,但也具有算法结构复杂、 实时性差等缺点。
为了加速神经网络分类器的搜索速度, 有文献将每个图像分割成小的子图像,然后对每个子图像使用快速神经网络单独测试。有文献创新地将 DPM 模型与深度学 习CNN融 合, 使AP值 提 高 近 十 个 百 分点,大幅度提高了识别准确性。然而,深度学习的引进,提高准确性的同时也降低了实时性。Girshick等人为此继续进行研究,使用已训练的特征提取器替换 DPM 模型中的标准图像特征, 提高了 DPM 模型与CNN 结合识别算法的实时性。
3 识别算法发展方向
视觉目标识别技术的理论和算法在大量研究人员的不懈努力下取得了一系列进展。以BOW、HOG和DPM 等模型理论为核心, 衍生出多种算法。在第2节分析的典型识别算法及其发展基础上, 本文接下来讨论目标识别算法的发展方向。
视觉目标识别技术得到更广泛的应用,需满足准确、高效和普适三个要求。与之相对应, 即是识别算法的准确性、实时性和鲁棒性,因此识别算法的发展将体现在这三个方面。
3.1 提高目标识别准确性
目前,以深度神经网络为代表的识别算法在目标识别准确性上达到了较高的水平。但对于战场车辆识别等准确性要求高的应用环境,其准确性仍需提高。对此,有以下两种准确性提高思路。
( 1)融合现有模型。分析当前主流算法模型,没有一种现有的算法能同时较好地克服部分遮挡、视角变换、目标形变、场景复杂和图像旋转等挑战, 均会出现漏检和误检等情况。通过提取出其各自所擅长难点的关键,然后进行模型融合优势互补,使新模型能够克服更多的挑战, 进而提高目标识别准确性。例如, DPM模型不具有旋转不变性,可以考虑融入球坐标系 HOG 描述符。同时, 其使用多组件克服视角变换、 弹簧模型克服非刚性形变等优点也可以考虑融入神经网络模型等。
( 2)研究深度学习。深度学习模仿人脑对图像目标的提取理论, 是目标识别领域的新星。但其存在的模型解释性差, 缺少结构约束等问题, 影响目标识别的准确性。深度学习在视觉皮层和函数论等方面有其理论依据, 但对中间的特征变换缺乏自然解释。研究其变量之间因果关系, 对其结构进行合理约束, 无疑对深度学习的识别准确性提高有促进作用。
3.2 增强识别算法实时性
随着摄像器材的升级,高清图像时代的到来使目标识别所需时间成倍增长,且识别算法复杂,检测目标耗时较长,难以满足视频监控等一系列应用的要求。对此, 有以下三种实时性增强思路。
( 1)优化目标搜索策略。现在识别算法为了追求高的准确性, 主要采用简单且漏检概率小的滑动窗口法搜索目标, 但其计算量大、 效率低、 实时性差。因此, 通过删除冗余计算, 降低计算量等方法优化目标搜索策略, 可以提高识别算法实时性。例如使用级联等思想优化滑动窗口搜索策略。
( 2)减小目标识别区域。识别目标的时间不仅与检测算法相关, 还与图像大小有关, 即搜索窗口的数目很大程度影响识别系统的实时性。然而检测一幅图像, 其目标区域通常只占整幅图像的一部分, 探测器在背景部分浪费大量时间。因此先对图像感兴趣区域快速提取, 再对减小后的区域进行识别, 可以缩短目标搜索时间, 增强实时性。例如可以根据Cheng等人提出的似物性检测理论先进行似物性检测, 后进行目标识别。
( 3)应用多线程并行处理。随着硬件技术的发展, 多线程计算机已经进入人们生活, 但是大多识别算法程序并没充分利用这一资源。在特征提取、 目标搜索等阶段, 通过设计应用并行程序, 可以数倍提高识别速率, 提高实时性。
3.3 改善分类器鲁棒性
现存识别算法普遍存在分类器鲁棒性较差问题, 而其主要影响因素为训练样本集的大小。对此, 有分类器训练优化和分类器反馈学习两种鲁棒性改善思路。
( 1)分类器训练优化。由于识别算法的计算强度高,学习效率低限制了训练样本集的大小。对此, 通过降低分类器计算强度,可以提高初始训练样本集大小,进而来获取鲁棒性和准确性的提升。例如有文献通过对滤波器的修改,快速舍弃无关特征,减少后期运输量,加快训练速度,从而获得好的检测性能。
( 2)分类器反馈学习。目前的模型训练大多需要标记样本, 而样本的人工标记花费较大, 使得大规模训练样本集难以得到。于是, 从对标记样本进行扩展思路, 可以考虑在目标识别过程中对分类器进行反馈学习。即将目标识别结果作为输入对分类器进行训练, 分类器边检测边学习, 突破训练样本数量少、 场景单一等缺点, 改善分类器的鲁棒性。
4 结束语
目标识别是计算机视觉研究的基本问题, 在人工智能等领域具有非常广阔的实际应用前景。本文大致介绍了目标识别的挑战、 数据库、 评估参数和识别系统, 并详细地阐述了典型识别算法及其进展。以此为基础, 对识别技术的发展进行展望, 阐释了提高目标识别准确性、 增强识别算法实时性和改善分类器鲁棒性是视觉目标识别算法未来研究的重点。
本文摘自于总参陆航部驻洛阳军事代表局的包睿。