Cascaded pose regression
最近再看face alignment的相关文章,目前比较流行的算法都是基于(Cascaded pose regression,CPR)[1]的框架上做的,该算法之所以流行的原因是简单高效。CPR分为训练和检测两个部分,首先介绍检测流程:
face alignment的目的是估计向量face shape,该向量由组成,其中K表示landmark的个数,由于每个landmark有横纵两个坐标,将所有的坐标连接起来构成长度为2K的向量即face shape。CPR检测流程如上所示,一共有T个stage,在每个stage中首先进行特征提取ft,这里使用的是shape-indexed features,也可以使用诸如HOG、SIFT等人工设计的特征,或者其他learning based features,可以通过查阅最新的cvpr文章进行了解,然后通过训练得倒的regressor R估计得到upadate vector 即增量ΔS,把ΔS加到前一个stage的shape上得到新的shape,这样通过不断的迭代即可以得到最终的shape。我感觉直白一些就是说通过不断的递归,使初始的shape朝着ground truth shape不断的靠近。
接下来是训练流程
首先是输入,N表示样本的个数,I表示图像,Si表示ground truth shape,剩下的那个参数表示initial shape,这个shape如何选取呢?从training data中随机的选取20个其他人脸的ground truth shape作为样本的initial shape 则训练样本的数量=原有的样本个数×20,即data augmentation 目的是为了enlarge training data和improve gengeralization ability。
接下来开始训练,每个stage中对于每个样本先通过ground truth shape与当前的shape相减计算得出ΔS,在第一个stage时,当前的shape为initial shape,然后进行特征提取得倒ft,之后通过loss function选择误差最小的regressor,如何建立regressor和ΔS,就需要看paper了,比如SDM,LBF,ERT等等,我会在之后的博客中分享。
最后利用特征ft 和regressor得倒ΔS加到上一个stage的shape上得到当前stage的shape,然后用于下一个stage的求解。
通过T个stage的训练将所有的regressor保存起来用于检测。
由上可以看出CPR中主要的操作是向量相加,不仅有效而且计算复杂度较低,所以近年来在face alignment中广泛应用。
参考文献
[1]Dollár, P., Welinder, P., Perona, P.: ‘Cascaded pose regression’. Proc.
IEEE Conf. Computer Vision and Pattern Recognition, 2010
Cascaded pose regression的更多相关文章
- 机器学习--详解人脸对齐算法SDM-LBF
引自:http://blog.csdn.net/taily_duan/article/details/54584040 人脸对齐之SDM(Supervised Descent Method) 人脸对齐 ...
- 人脸识别技术大总结1——Face Detection & Alignment
搞了一年人脸识别,寻思着记录点什么,于是想写这么个系列,介绍人脸识别的四大块:Face detection, alignment, verification and identification(re ...
- 人脸识别技术大总结(1):Face Detection & Alignment
http://blog.jobbole.com/85783/ 首页 最新文章 IT 职场 前端 后端 移动端 数据库 运维 其他技术 - 导航条 - 首页 最新文章 IT 职场 前端 - Ja ...
- 源自http://www.cnblogs.com/sciencefans/p/4394861.html
人脸识别的四大块:Face detection, alignment, verification and identification(recognization),本别代表从一张图中识别出人脸位置, ...
- 手势估计- Hand Pose Estimation
http://blog.csdn.net/myarrow/article/details/51933651 1. 目前进展 1.1 相关资料 1)HANDS CVPR 2016 2 ...
- paper 154:姿态估计(Hand Pose Estimation)相关总结
Awesome Works !!!! Table of Contents Conference Papers 2017 ICCV 2017 CVPR 2017 Others 2016 ECCV 20 ...
- DensePose: Dense Human Pose Estimation In The Wild(理解)
0 - 背景 Facebook AI Research(FAIR)开源了一项将2D的RGB图像的所有人体像素实时映射到3D模型的技术(DensePose).支持户外和穿着宽松衣服的对象识别,支持多人同 ...
- (转)Awesome Human Pose Estimation
Awesome Human Pose Estimation 2018-10-08 11:02:35 Copied from: https://github.com/cbsudux/awesome-hu ...
- ICCV 2017论文分析(文本分析)标题词频分析 这算不算大数据 第一步:数据清洗(删除作者和无用的页码)
IEEE International Conference on Computer Vision, ICCV 2017, Venice, Italy, October 22-29, 2017. IEE ...
随机推荐
- JStorm学习
一.简介 JStorm是一个分布式实时计算引擎.JStorm是一个类似于Hadoop MapReduce的系统,用户按照指定的接口实现一个任务,然后将这个任务交给JStorm系统,JStorm将这个任 ...
- iOS 内存管理策略
内存管理策略(memory Management Policy) NSObject protocol中定义的的方法和标准命名惯例一起提供了一个引用计数环境,内存管理的基本模式处于这个环境中.NSObj ...
- git 更新远程分支
使用git的时候,有时候会出现远端更新了一个分支,但是从本地想checkout一个远程分支时,会出现如下错误: fatal: git checkout: updating paths is incom ...
- [HTML5] Show Images of Differing Resolutions Depending on the Viewport Width with srcset
For small viewports, we want to save bandwidth and we may be dealing with slow speeds; so it's very ...
- 浅析怎样学好C语言
今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生.都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email.一部电影都是用一连串的 ...
- Effective C++ 条款15、16 在资源管理类中提供对原始资源的访问||成对使用new 与 delete要采取相同形式
1.在资源管理类中提供对原始资源的访问 前几个条款很棒,它们是对抗资源泄露的壁垒,但很多APIs直接指向 资源,这个时候,我们需要直接访问原始资源. 这里,有两种方法解决上述问题,我们 ...
- C#模拟登录Twitter 发送私信、艾特用户、回复评论
这次做成了MVC程序的接口 private static string UserName = "用户名"; private static string PassWord = &qu ...
- 【python】How to change the Jupyter start-up folder
Copy the Jupyter Notebook launcher from the menu to the desktop. Right click on the new launcher and ...
- mysql语句:SET NAMES UTF8
一直以来只知道mysql_query("SET NAMES UTF8");是设定数据库编码的,但是一直不清楚“SET NAMES UTF8”是什么. 直到今天才知道 SET NAM ...
- Arcgis Engine(ae)接口详解(5):IGeometry几何高级操作
IPoint point = new PointClass(); point.PutCoords(, ); //ITopologicalOperator接口用于几何对象的几何操作 ITopologic ...