北京28开奖机器学习:人脸识别原理简介篇

编辑:凯恩/2018-11-26 15:16

  判断两张人脸图片的相似度,学术上叫做人脸对比,实际上是一对一的关系。而常说的人脸识别其实可以算是一个广义的概念,也可以是一对多的关系,即在多张图片中找到哪两个图片中的是相同的人,当然,这种场景也叫做人脸检索。

  基于深度学习的方法主要就是使用卷积神经网络了,卷积神经网络的基本原理就是用卷积核作为一个滑动“窗口”在图像矩阵上滑动,将与卷积核相类似的特征放大,然后再进行池化,池化的作用主要就是降低卷积层输出特征向量的规模。经过若干个卷积和池化层,最终可以输出类别,进行向量化表示等。

  一些神经网络可以在同一个网络中完成人脸识别过程,可以最终通过全连接层输出人脸的特征,当然也可以在网络中实现人脸对比。深度学习人脸识别的好处就是识别率会很高,缺点就是在CPU条件下运算速度会较慢,需要依靠GPU来加速计算。

  准确来说,人脸识别方法还有基于先验概率,基于经验等的分类方式,这里将其粗略地归纳在此处,即非深度学习方法的人脸识别传统方法。

  (1)人脸检测:一般采用haar,HOG特征,结合adaboost和SVM算法以取得较好的效果。

  (2)人脸校正:由于人脸识别主要有用的是人脸的轮廓,其肤色等相比之下并不重要,甚至某些因素(如光照)反而会成为干扰因素。人脸校正主要是将不同姿态的人脸进行所谓的“摆正”,也称之为人脸对齐,这样使得输出的人脸特征更具有可比性,北京28开奖这个基本原理是计算机图形学中仿射变换。除此之外,我们前面说过的光照等干扰因素也应该排除掉,故在此处也可以进行光照的归一化。

  (3)人脸识别:Haar,Hog,LBP算法本身就是用来提取图像特征的。例如提取人脸的LBP特征,将特征提取出来后可能还需要降维,一般结合PCA主成分分析的方法,也有用LDA算法来处理的。

  基于统计的方法好处是在CPU下运算较快,缺点是识别率相对较低,因为特征都是人工首先指定好的,并不像深度学习那样“自主”。

  余弦距离,欧氏距离,马氏距离,皮尔逊相关系数等,对于某些特定的场景还可能是汉明距离~~~

  例如google开源的某款人脸识别引擎,就采用了统计和深度学习结合的方法,使用基于统计的方法来定位人脸,使用深度学习来提取人脸特征,这样兼顾了速度和准确率。

  值得一提的是,在人脸识别过程之前,有些方法往往还有一些预处理,一般是高斯低通滤波器,主要是用于滤出高斯噪声,还有一些使图像更为平滑的预处理。

  开源的人脸识别库也不少,国内比较著名的有中科院山世光教授组的SeetaFace引擎,但是该代码在部署的时候会有些坑,训练方法也是闭源的。

  人脸识别是南方双彩CV方向的一个重要应用,南方双彩算法是学习人脸识别的必修课程。返回搜狐,查看更多