人体发现算法
1. 计算机视觉:随机森林算法在人体识别中的应用
摘 要
人体识别是计算机视觉领域的一大类热点问题,其研究内容涵盖了人体的监测与跟踪、手势识别、动作识别、人脸识别、性别识别和行为与事件识别等,有着非常广泛的应用价值。随机森林以它自身固有的特点和优良的分类效果在众多的机器学习算法中脱颖而出。随机森林算法的实质是一种树预测器的组合,其中每一棵树都依赖于一个随机向量,森林中的所有的向量都是独立同分布的。本文简单介绍了随机森林的原理,并对近几年来随机森林在姿势识别和人脸识别中的应用进行讨论。
1.人体识别概述
人体识别是计算机视觉领域的一大类热点问题,其研究内容涵盖了人体的监测与跟踪、手势识别、动作识别、人脸识别、性别识别和行为与事件识别等。其研究方法几乎囊括了所有的模式识别问题的理论与技术,例如统计理论,变换理论,上下文相关性,分类与聚类,机器学习,模板匹配,滤波等。人体识别有着非常广泛的应用价值。
绝大多数人脸识别算法和人脸表情分析算法在提取人脸特征之前,需要根据人脸关键点的位置(如眼角,嘴角)进行人脸的几何归一化处理。即使在已知人脸粗略位置的情况下,人脸关键点精确定位仍然是一个很困难的问题,这主要由外界干扰和人脸本身的形变造成。
当前比较流行的算法有:基于启发式规则的方法、主成分分析(PCA)、独立元分析(ICA)、基于K-L 变换、弹性图匹配等。
2.随机森林综述
随机森林顾名思义,使用随机的方式建立一个森林,森林里面有很多的决策树组成,随机森林的每一棵决策树之间是没有关联的。在得到森林之后,当有一个新的输入样本进入的死后,就让森林的每一棵决策树分别进行一下判断,看看这个样本应该属于哪一类(对于分类算法),然后看看哪一类能被选择最多,就预测这个样本为那一类。
随机森林是一种统计学习理论,其随机有两个方面:首先是在训练的每一轮中,都是对原始样本集有放回的抽取固定数目的样本点,形成k个互不相同的样本集。第二点是:对于每一个决策树的建立是从总的属性中随机抽取一定量的属性作分裂属性集,这样对于k个树分类器均是不相同的。由随机生成的k个决策树组成了随机森林。
对于每一个决策树来讲,其分裂属性是不断的选取具有最大信息增益的属性进行排列。整个随机森林建立后,最终的分类标准采用投票机制得到可能性最高的结果。
下图是随机森林构建的过程:
图1 随机森林构建过程
3.随机森林在人体识别中的应用
3.1 随机森林应用于姿势识别
以[1]一文来讨论,论文中所涉及到的人体识别过程主要分为两步,首先是,身体部位标记:对于从单张景深图像中对人体进行分段,并标记出关键节点。之后进行身体关节定位,将标记的各个人体部分重新映射到三维空间中,对关键节点形成高可靠的空间定位。
图2 深度图像-身体部位标记-关节投影
文的最主要贡献在于将姿势识别的问题转化成了物体识别的问题,通过对身体不同部位的空间位置的确定来实现,做到了低计算消耗和高精确度。在身体部位标记的过程中,将问题转化成了对每个像素的分类问题,对于每个像素点,从景深的角度来确定该点的局域梯度特征。该特征是点特征与梯度特征的良好结合。
举个例子,对于不同点的相同属性值的判别,如下图,图a中的两个测量点的像素偏移间均具有较大的景深差,而图b中的景深差则明显很小。由此看出,不同位置像素点的特征值是有明显差别的,这就是分类的基础。
图3 景深图像特质示例
文中对于决策树的分裂属性的选择来说。由于某两个像素点、某些图像特征选取的随意性,将形成大量的备选划分形式,选择对于所有抽样像素对于不同的分裂属性划分前后的信息熵增益进行比较,选取最大的一组ψ=(θ, τ)作为当前分裂节点。(信息增益与该图像块最终是否正确地分类相关,即图像块归属于正确的关键特征点区域的概率。)
图4 决策时分类说明
决策树的建立后,某个叶子节点归属于特定关键特征点区域的概率可以根据训练图像最终分类的情况统计得到,这就是随机森林在实际检测特征点时的最重要依据。
在人体关节分类中,我们由形成的决策森林,来对每一个像素点的具体关节属性进行判断,并进行颜色分类。随机森林这种基于大量样本统计的方法能够对由于光照、变性等造成的影响,实时地解决关键特征点定位的问题。
如图所示,是对于景深图像处理后的结果展示。
图5 姿势识别处理结果
应该这样说,这篇文章在算法的层面对随机森林没有太大的贡献。在划分函数的形式上很简单。这个团队值得称道的地方是通过计算机图形学造出了大量的不同体型不同姿势的各种人体图像,用作训练数据,这也是成为2011年CVPR Best Paper的重要原因。正是因为论文的成果运用于Kinect,在工业界有着巨大的作用,落实到了商用的硬件平台上,推动了随机森林在计算机视觉、多媒体处理上的热潮。
3.2 随机森林应用于人脸识别
基于回归森林的脸部特征检测通过分析脸部图像块来定位人脸的关键特征点,在此基础上条件回归森林方法考虑了全局的脸部性质。对于[2]进行分析,这篇论文是2012年CVPR上的论文,本文考虑的是脸部朝向作为全局性质。其主要描述的问题是如何利用条件随机森林,来确定面部10个关键特征点的位置。与之前不同的是,在随机森林的基础上,加入了面部朝向的条件约束。
图6 脸部10个特征点
对于面部特征标记的问题转化成了对大量图像块的分类问题。类似于人体识别中的局域梯度特征识别。本文中,对于每一个图像块来说,从灰度值、光照补偿、相位变换等图像特征,以及该图像块中心与各个特征点的距离来判断图像块的位置特征。在决策树的分裂属性确定过程,依然使用“最大信息熵增益”原则。
图7 条件随机森林算法说明
文中提出了更进一步基于条件随机森林的分类方法,即通过设定脸部朝向的约束对决策树分类,在特征检测阶段能够根据脸部朝向选择与之相关的决策树进行回归,提高准确率和降低消耗。此论文还对条件随机森林,即如何通过脸部朝向对决策进行分类进行了说明,但这与随机森林算法没有太大关系,这里就不再继续讨论了。随机森林这种基于大量样本统计的方法能够对由于光照、变性等造成的影响,实时地解决关键特征点定位的问题。
另一篇文章[3]对于脸部特征标记,提出了精确度更高、成本更低的方法。即,基于结构化输出的随机森林的特征标记方式。文中将面部划分为20个特征点,对于各个特征点来说,不仅有独立的图像块分类标记,还加入了例如,点4,对于其他嘴唇特征点3,18,19的依赖关系的判断。这样的方法使特征点标记准确率大大增加。
该方法依然是使用随机森林的方法,有所不同的是引入了如式中所示的与依赖节点之间的关系。对于决策树的建立依然是依赖信息熵增益原则来决定,叶子节点不仅能得到特征的独立划分还会得到该特征对依赖特征的贡献,最终特征节点的判断会综合原始投票及空间约束。
图8 脸部特征标记
图9 决策树依赖关系
例如当对下图中人脸特征点进行分类时,使用简单的随机森林方法,经过判断会将各个点进行标注,可以看到 红色的点,标注出的鼻子特征。如果利用依赖节点进行判断,鼻子的点会被局限在其他鼻子特征点的周围,进行叠加后,得到了这个结果。显然,对于此节点的判断,利用结构输出的方式,准确度更高了。
图10 结构化输出结果
4.随机森林总结
大量的理论和实证研究都证明了RF具有很高的预测准确率,对异常值和噪声具有很好的容忍度,且不容易出现过拟合。可以说,RF是一种自然的非线性建模工具,是目前数据挖掘算法最热门的前沿研究领域之一。具体来说,它有以下优点:
1.通过对许多分类器进行组合,它可以产生高准确度的分类器;
2.它可以处理大量的输入变量;
3.它可以在决定类别时,评估变量的重要性;
4.在建造森林时,它可以在内部对于一般化后的误差产生不偏差的估计;
5.它包含一个好方法可以估计遗失的资料,并且,如果有很大一部分的资料遗失,仍可以维持准确度。
6.它提供一个实验方法,可以去侦测变量之间的相互作用;
7.学习过程是很快速的;
8.对异常值和噪声具有很好的容忍度,且不容易出现过拟合;
随机森林的缺点:
1.对于有不同级别的属性的数据,级别划分较多的属性会对随机森林产生更大的影响,所以随机森林在这种数据上产出的属性权值是不可信的;
2.单棵决策树的预测效果很差:由于随机选择属性,使得单棵决策树的预测效果很差。
参考文献:
[1] Shotton, J.; Fitzgibbon, A.; Cook, M.; Sharp, T.; Finocchio, M.; Moore, R.; Kipman, A.; Blake, A., “Real-time human pose recognition in parts from single depth images,”Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on , vol., no., pp.1297,1304, 20-25 June 2011
[2] Dantone M, Gall J, Fanelli G, et al. Real-time facial feature detection using conditional regression forests[C]//Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on. IEEE, 2012: 2578-2585.
[3] Heng Yang, Ioannis Patras, “Face Parts Localization Using Structured-output Regression Forests”, ACCV2012, Dajeon, Korea.
本文转自:http://dataunion.org/12046.html,仅供学习交流
2. 人体行为识别有哪些算法
人体行为识别前已有的方法主要分为三大类:基于模板的方法,基于概率统计的方法和基于语义的方法。
模板匹配是一种较早用在人体运动识别上的方法,将运动图像序列转化为一个或一组静态的模板,通过将待识别样本的模板与已知的模板进行匹配获得识别结果。在行为识别中,基于模板匹配的算法可以分为帧对帧匹配方法和融合匹配方法。主要方法有:运动能量图像(MEI)和运动历史图像(MHI),基于轮廓的平均运动形状(MMS)和基于运动前景的平均运动能量(AME)等。
概率统计方法进行运动识别是把运动的每一种静态姿势定义为一个状态或者一个状态的集合,通过网络的方式将这些状态连接起来,状态和状态之间的切换采用概率来描述。主要有隐马尔科夫模型HMM, 最大熵马尔科夫模型(MEMM),条件随机场(CRF)等。
3. 人体追踪,人体追踪
在很多交互场景中,机器需要通过识别人体位置的移动去实时追踪活动中的人体,人体追踪就可用于视频中连续的追踪人体的位置以及移动方向,用于实现对人体的跟随。
同时人在移动过程中,可能会短暂被其他物体遮挡,使得图像中人体图像丢失,
阅面科技的人体识别算法可以实现在跟踪过程中短暂跟踪中断后恢复追踪。
4. 人体标准体重计算公式
一、世卫计算方法:
男性:(身高cm-80)×70﹪=标准体重
女性:(身高cm-70)×60﹪=标准体重
标准体重正负10﹪为正常体重
标准体重正负10﹪~ 20﹪为体重过重或过轻
标准体重正负20﹪以上为肥胖或体重不足
超重计算公式
超重%=[(实际体重-理想体重)/(理想体重)]×100%
二、不同年龄算法
标准体重法
标准体重(千克) = 年龄 x 8 + 8 ( 7 - 16 岁 )
轻度肥胖:超过标准体重 20% - 30 %
中度肥胖:超过标准体重 30% - 50 %
重度肥胖:超过标准体重 50% 以上
BMI 法
体重指数 BMI = 体重(千克) / 身高(米)的平方即 kg/m2
年龄 BMI 值
年龄 正常超重轻度肥胖 中度肥胖重度肥胖
低于 6岁 15-18 18-
6- 11 岁 16-19 19-21 21-23 23-27 27-
三、简单计算方法
1、计算方法一:
体质指数=体重(千克) ÷ 身高(米)的平方 kg/m^2
算式写法: BMI = 体重 / (身高)^2
正常体重 : 体重指数 = 18.5 - 25 (中国体质标准:正常范围 18.5~23.9,超重24.0~27.9,肥胖≥28.0)
超重 : 体重指数 = 25 - 30
轻度肥胖 : 体重指数 > 30
中度肥胖 : 体重指数 > 35
重度肥胖 :体重指数 > 40
2、计算方法二:
标准体重=身高(m)×身高(m)×标准系数(女性20,男性22)
标准体重正负10﹪为正常体重
标准体重正负10﹪~ 20﹪为体重偏重或偏轻
标准体重正负20﹪以上为肥胖或体重不足
3、计算方法三:
标准体重(kg)=身高(cm)-105
例如,一个身高170厘米的男子,他的标准体重应该是:170(厘米)-105=65(千克)。凡是超过标准体重10%者为偏重,超过20%以上者为肥胖;低于标准体重10%者为偏瘦,低于20%以上者为消瘦。
注意:上述计算方法只适用于成年人。 对儿童,老年人,或者身高过于矮小的人士并不适用。
4、布洛卡公式:
身高在165厘米以下者:标准体重(kg)=身高(cm)-100
身高在165厘米以上者:标准体重(kg)=身高(cm)-110
5、适合亚洲人标准体重的计算公式:
日本京都大学桂教授在布洛卡公式的基础上,提出了下列计算公式:
标准体重(kg)=[身高(cm)-100]×0.9
注意:这一公式的计算结果适合于亚洲人的具体情况。
6、专门针对以南北地区划分的中国人的公式:
北方人理想体重(kg)=[身高(cm)-150]×0.6+50;
南方人理想体重(kg)=[身高(cm)-150]×0.6+48。
(4)人体发现算法扩展阅读:
标准体重是反映和衡量一个人健康状况的重要标志之一。过胖和过瘦都不利于健康,也不会给人以健美感。不同体型的大量统计材料表明,反映正常体重较理想和简单的指标,可用身高体重的关系来表示。
BMI指数(英文为Body Mass Index,简称BMI),是用体重千克数除以身高米数的平方得出的数字,是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。当我们需要比较及分析一个人的体重对于不同高度的人所带来的健康影响时,BMI值是一个中立而可靠的指标。
5. 几种人体运动检测算法的比较分析
引言人体运动分析是目前一个研究热点,在智能安全监控系统、体育运动分析、医疗诊断等领域具有广泛的应用前景。它主要涉及计算机视觉、模式识别、图像处理以及人工智能等领域,是跨学科的研究课题。其研究核心是从视频中检测和跟踪人体,获取人体运动数据,以此为基础重建人体的三维运动,进而描述和理解人体运动。其中人体运动目标检测的检测效果直接影响后期的目标识别、跟踪及行为理解等工作,因此运动人体检测技术是计算机视频图像处理中最基础、最关键的技术,对运动检测算法进一步研究具有深远意义。人体运动检测是指在输入视频图像中确定运动人体的位置、尺度大小和姿态的过程[1]。目前采用比较多、比较经典的人体运动检测方法有时间差分法、背景减除法、光流法等。笔者扼要阐述OGHMs法的理论依据,在现有算法的基础上,引入图形学的腐蚀运算,应用于最后获得的检测结果,实验证明腐蚀运算的引入使最终的运动检测效果更好。同时对其他几种常用的方法进行介绍和实际应用,根据得到的实验结果,对这几种方法以及OGHMs法进行分析和比较,并指出其优点和不足。所有的实验都是