from http://blog.csdn.net/sloanqin/article/details/48193119

1 Face++:http://www.faceplusplus.com.cn/tech_landmark/

其提供的技术服务有1:人脸检测(人脸检测追踪,人脸关键点检测) 2:人脸分析(微笑分析,性别年龄种族表情)3:人脸识别(1:1,1:N,大规模人脸搜索)。我需要关注的是这里的人脸关键点检测的实现。Face++为美图秀秀,美颜相机提供人脸关键点检测的技术服务。

2 Face++一个采访问题,能够了解人脸识别技术的整个流程。

CSDN移动:可否介绍一下,典型的人脸识别系统是什么样子的?

印奇:当今的人脸识别系统虽然包含无数细节和各种工程技巧,但大的系统框架不外乎如下图所示的流程:一张人脸图片输入后,需要先找到人脸的位置(人脸检测),然后在这个基础上定位人脸关键点的位置(如眼睛中心或嘴角等),每个系统关键提取的数量相差很大,有的只有左右眼睛中心两个点,有的可能多达近百个点。这些点的位置一是用来做人脸的几何校正,即把人脸通过缩放、旋转、拉伸等图像变化变到一个比较标准的大小位置。这样待识别的人脸区域会更加规整,便于后续进行匹配。同时,现在的实际系统一般也都配有人脸光学校正模块,通过一些滤波的方法,去除一些对光照更加敏感的面部特征。在做完这些预处理之后,就是从人脸区域提取各种特征,包括LBP、HOG、Gabor等。最终相关的特征会连接成一个长的特征向量(Feature Vector),然后匹配出人脸的相似度,根据相似度的大小,系统会判定两张图片到底是不是一个人。不难看出,人脸识别技术还是一个系统链条较长,较为有技术门槛的领域。因为这条流水线的每个环节可能都会严重影响最终系统性能,所以一个好的人脸识别技术公司需要在各个环节上追求细节,建立自己的技术优势,最终才有可能在最后的人脸识别精度上有出色的表现。

3 人类识别人脸用的是什么算法:http://www.zhihu.com/question/20154853

上面链接是知乎上面的讨论,有一个关于生物学方面的解释。

又一个Face++的专访:http://segmentfault.com/a/1190000000452539

通过下面这段话可以了解到目前的一些测试平台:

  1. 人脸检测(在照片中精准定位人脸位置的算法),在世界公开评测集FDDB 排名第一
  2. 人脸关键点检测(精准定位面部关键部门的位置),在世界公开评测比赛300-W排名第一。
  3. 在最重要的互联网图片人脸识别(Face recognition) 比赛LFW中,Face++团队更是力压Facebook人脸团队 (前face.com团队),获得世界第一。在极难识别的互联网新闻图片上,获得了97.3%的准确率。

Face++: Face++已经能够较为稳定地应对复杂的光照和人脸姿态,但过于极端的光照和姿态还是十分困难。Face++的全线技术都更新为大数据深度学习算法,通过收集的海量人脸照片,新型的神经网络算法可以通过大数据训练形成性能更好的人脸检测,人脸分析,和人脸识别技术。

所以我的感觉是技术实现的方式采用:深度学习与传统算法相结合,互补的方式,并注重深度学习方面的创新。Face++ 目前发布的两篇论文,关键点检测和人脸特征表示都是基于DCNN的技术。

SegmentFault: Face++的算法研发用到了C++、Matlab和Python?能比较下Matlab和Python在视觉算法研究方面的优势和不足么?

Face++: 优势是比较糙快猛,方便验证idea;落实到系统和实用级别,可能还是要采用C++。所以用matlab验证完idea后,用C++做实现。不妨申请下Face++的实习生。

4 阅读文献《人脸特征点定位研究与应用-吴证》

文中提到几种人脸关键点检测的方法:

1投影(五官灰度值较周围皮肤灰度值低)

2基于先验规则(先验知识指的是人脸比如眼睑、虹膜等一些已知的灰度、形状信息)

3基于几何形状(比如可变形模板,能够较好检测眼睛嘴唇特征形状,但是由于边缘不精确难以精确定位特征点,依赖初始参数大,容易陷入局部最小,计算时间长)(另外还有主动形状模型(ASM),主动表观模型(AAM))

4基于统计的方法(该方法的思想是将特征部位看做一类模式,然后使用大量的特征部位样本和非特征部位样本进行训练,然后构造分类器,该类方法主要有PCA(主成分分析)、SVM、ANN(神经网络)、AdaBoost、模板匹配

5基于小波和小波包

5 机器学习的封装好的库:

这里有关于库的介绍:http://www.chinacloud.cn/show.aspx?id=21150&cid=16

theano:妹纸目前推荐我用这个库,python封装的。知乎上有不少人用这个,但是统一的评论是调试不方便。theano,教程比较基础,安装非常简单,几个指令可以搞定,不过用他来做开发实在太麻烦,建议配合keras使用,非常赞。

Theano   

主页:http://deeplearning.net/software/theano/

Github网址:https://github.co

还有一些库比如:matconvnet、Lasagne、opencv、nolearn、keras、caffe

最新的kaggle比赛中很多人用的是nolearn + lasagne,这两个库也是基于Theano作为核心建立的。

dlib:

http://matthewearl.github.io/2015/07/28/switching-eds-with-python/

http://blog.csdn.net/qingnianzhi/article/details/47322627

6 目前我的打算

我的目的:实现对人脸的关键点定位

学习思路:打算通过深度学习的方式来进行关键点检测,首先在ufldl上学习深度学习的入门知识,然后在网络的博客上找别人用python写的人脸检测的算法,最后自己基于C++实现,然后app中java调用。

比如链接:http://blog.csdn.net/qingnianzhi/article/details/46912383#comments

人脸识别,人脸关键点检测算法相关推荐

  1. dilb人脸识别+68关键点检测

    **简单的人脸识别 记个笔记 ** # 导入库 import cv2.cv2 as cv2 import numpy as np import dlib import matplotlib.pyplo ...

  2. 基于matlab活体检测,人脸识别中活体检测算法综述.PDF

    人脸识别中的活体检测算法综述 SIGAI 2018.9.19 原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的. 1. 什么是活体检测? --> 判断捕捉到的 ...

  3. 人脸数据库大全(包括人脸识别、关键点检测、表情识别,人脸姿态等等)

    搞计算机视觉的人,对人脸技术并不陌生.在做实验的时候需要各种数据集进行训练,却往往苦于找不到合适的数据集,这篇文章将给大家带来一点福音. 目前为止最全的是人脸数据库总结: The Color FERE ...

  4. Python | 人脸识别系统(人脸识别、活体检测、背景模糊、关键点检测)

    本博客为人脸识别系统项目简介 项目GitHub完整源代码地址:Su-Face-Recognition: A face recognition for user logining 一.运行环境 本系统能 ...

  5. 基于PCA 人脸识别/人脸识别算法/人脸检测程序源码MATLAB ELM+PCA人脸识别 PCA人脸识别matlab代码 基于PCA算法的人脸识别

    1.基于PCA的人脸识别代码 2.MATLAB ELM+PCA人脸识别 2.基于PCA的人脸识别(matlab)(采用PCA算法进行人脸识别,通过抽取人脸的主要成 分,构成特征脸空间,识别时将测试图像 ...

  6. Tensorflow2实现人脸关键点检测算法PFLD——一个精度高,速度快,模型小的人脸关键点检测模型

    1. 前言 最近,学了人脸关键点检测算法,发现一个比较好的人脸关键点检测模型,打算学一学,让我们来看看算法是如何实现的吧! 论文地址:https://arxiv.org/pdf/1902.10859. ...

  7. CV之FR之MTCNN:基于TF框架利用MTCNN算法检测并对齐人脸图像进(人脸识别/人脸相似度)而得出人脸特征向量从而计算两张人脸图片距离案例应用之详细攻略

    CV之FR之MTCNN:基于TF框架利用MTCNN算法检测并对齐人脸图像进(人脸识别/人脸相似度)而得出人脸特征向量从而计算两张人脸图片距离案例应用之详细攻略 目录 基于TF框架利用MTCNN算法检测 ...

  8. 人脸定点:关键点检测方法汇总

    相关博客:  http://blog.csdn.net/yang_xian521/article/details/7468571  http://blog.sina.com.cn/s/blog_6d8 ...

  9. 人脸识别(7)---国内人脸识别技术 十大算法公司排名

    国内人脸识别技术 十大算法公司排名 科技特讯11月18日讯:1.云从科技 背靠"计算机视觉之父",中科院实验室创业团队创立云从科技 云从科技团队成员除了来自中科大的校友外,还来自中 ...

  10. HyperLandmark-开源人脸106点关键点检测SDK,北京智云视图科技

    原 HyperLandmark-开源人脸106点关键点检测SDK 2018年07月19日 15:25:44 lsy17096535 阅读数:3260 </div><div class ...

最新文章

  1. linux rm 提示io异常,Hadoop异常 java.io.IOException: Job status not available
  2. 在Java中有类似.NET的NotImplementedException吗?
  3. Java虚拟机详解(七)------虚拟机监控和分析工具(1)——命令行
  4. 进程环境之环境表【转】
  5. android和linux操作系统的区别
  6. js检查元素是否包括在数组中
  7. 知识蒸馏在推荐精排中的应用与实践
  8. 数据仓库专题(16)-分布式数据仓库实践指南-目录篇
  9. 华三模拟器(路由器)实现ipsec穿越NAT实验
  10. MySQL的字符集和校对规则,你都会了吗?
  11. 微信小游戏保存图片到本地
  12. Android学习|动画——逐帧、补间、属性动画
  13. 【安路FPGA】FPGA开发日记(一)
  14. 关于开发语言个人随想
  15. 处女座与小姐姐(三)
  16. 如何释放磁盘空间在您的Mac
  17. linux系统访问bitlocker分区,BitLocker 操作命令
  18. icomoon字体图标的使用与引用
  19. python编辑距离正则匹配_(C/C++学习)33.编辑距离和正则表达式匹配分析
  20. python扇贝每日一句api_扇贝简易爬虫

热门文章

  1. wine安装lingoes
  2. leetcode算法题--学生分数的最小差值
  3. leetcode算法题--旋转链表
  4. wxpython问卷调查界面_调查问卷使用说明书,问卷就要这么设计!
  5. 【跃迁之路】【678天】程序员高效学习方法论探索系列(实验阶段435-2018.12.23)...
  6. 项目开发之git配置
  7. 电力“十三五”蓝图发布 新能源迎发展机遇
  8. 将 Shiro 作为应用的权限基础 五:密码的加密/解密在Spring中的应用
  9. Spring和shiro整合 logout 配置方式
  10. 架构师课程之-haproxy专业级负载均衡软件权威讲解