rokoko

1、传统机器学习算法

有三步:图像预处理、特征提取、特征分类

1.1图像预处理

  • 输入图片
  • 图像去噪(均值滤波、中值滤波、维纳滤波)
  • 人脸检测
  • 尺度、灰度归一化(对图片色彩信息,图片尺寸大小进行处理,在保证人脸关键特征前提下减少运算量)
  • 直方图均衡化(使图像效果增加)

1.2特征提取(在保证图片原有信息的前提下提取出有用信息,有防止维度过高,因此有了特征降维,特征分解)

(1)几何特征提取,如面部的几何特征:眼睛,嘴巴,眉毛。

(2)频率的提取,用Gabor小波变换。

(3)运行特征提取,用光流法。

  1.2.1Gabor特征提取

  Gabor小波函数可以描述纹理特征。

  1.2.2局部二值算法(LBP)

  通过计算图像中包含的每个像素与局部邻域的店在亮度上的序关系,然后对二值序关系进行编码形成局部二值模式,最后采用多区域直方图作为图像的特征描述。基于此提出了完全局部二值法,会有维数灾难,LDP算法(局部定向模式),对光照有很好的鲁棒性,计算量少,LPQ(局部向量化)基于短时傅里叶变换,在特征提取是性能稳定。https://blog.csdn.net/q123456789098/article/details/52748918                https://www.cnblogs.com/xqy1205/p/7729572.html

  1.2.3.1ASM/AAM

  • 主动形状模型(ASM),用于提取表情轮廓上的特征点(68个),这一模型主要利用全局形状模型来匹配人脸初始形状,再建立局部纹理模型,从而较为精确地获取目标轮廓特征。先AAM建模,然后AAM拟合。获取人脸动态序列初始帧的68个表情特征点的位置信息为获得动态信息,使用光流法跟踪初始表情帧定位的特征点,得到表情变化到峰值时的特征点位置差,作为表情特征。
  • 主动外观模型(AAM),克服了ASM的全局特征的缺点,将局部纹理特征融入其中,同时利用了形状与纹理特征。

 

  1.2.3.2ASM\AAM的改善

  1. 将PRFR(特征响应增强算法与AAM融合,用以坚持脸部各器官等局部边缘的特征点)
  2. 基于人脸各个表情器官改进ASM算法,定位出人脸的118各特征点,大致将人脸各器官轮廓显示出来。
  3. 将AAM与SVM分类器进行级联,从而提高识别率。

  

  1.2.4光流法

  光流法是图像序列中的图像亮度/灰度的运动,即空间物体表面上点的运动速度再视觉传感器成像平面上的表达利用。

  光流是图像中统一像素点在前后帧之间形成的运动矢量,光流实际基于两个假设,亮度恒定,即被跟踪目标像素的运动过程应该保持亮度不变。空间平滑性假设,即运动物体引起的光流场变化应该是连续平滑的,即物体运动速度缓慢且平滑。如果满足这两个条件可以用光流法计算稀疏光流,实现表情特征点的跟踪。

  光流法基于局部约束,假设以某一点为中心的一个小区域邻域上运动矢量保持恒定,对区域内不同的点加权最小二乘法进行光流估计。

 

 

  1.2.5Haar-like特征提取

  该算法有几个矩阵区域构成的特征模型,这些区域有相同的大小与形状,定义为黑色区域的像素值之和减去白色区域的像素值之和。该算法对图像计算有更高效的运算速度。提高融合该算法与Adaboost算法,首先用Haar-like得到最原始特征,计算整个图片的特征值,然后Adaboost进行训练,提取出不同的特征,构造成特征子空间。

 

 

 

 

 

  1.2.6特征点跟踪法

Gabor小波对多尺度、多方向纹理特征变换有很好的鲁棒性,能更好地检测其变化,但是对光照强弱不敏感。作用于全局特征,耗费内存巨大。LBP算法存储空间较少,计算效率高,但是对有噪声的图片特征提取率低,同时只考虑图片中心与邻域的像素特征,忽略差值幅度,会导致部分有用的特征信息丢失。对于表情识别特征提取,Harr更有优势,因其描述的是面部局部灰度变化,当全局区域光照稳定,Harr被证明更具优势,因其描述的是面部的局部灰度变化,当全局区域光照稳定,Harr能提取到更多的面部运动单元变化信息。

 

 

 

 

 

1.3特征分类算法(特征提取完成后,为了降低计算机计算量,当维数过高还需进行特征降维,PCA降维法,LDA降维法,此外,要选择合适的分类器对特征进行分类,提高分类器将待识别表情成功预测成人脸表情)

  1.3.1K-NN算法

  1.3.2SVM算法

注意松弛系数,还有惩罚系数,http://deelmind.cn/2018/01/29/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0-SVM/#more

  1.3.3Adaboost算法

噪声影响分类结果,对样本的训练时间长,最终结果受制于弱分类器的选择。

  1.3.4贝叶斯分类

 SVM应用相对更加广泛,SVM再训练集训练模型,然后用训练好的模型对测试集进行分类,而KNN没有训练过程,仅度量训练数据之间的欧式距离,以此实现分类。Adaboost是通过对训练样本的重采样,解决训练样本不足造成的训练精度低,用Adaboost来增强SVM的分类能力。

 

2.深度学习算法

  2.1CNN

  2.2DBN

  2.3主要算法优化及发展方向

  2.4常用应用框架

 

 

fwkNG;E

 

 

  

 

分类:

技术点:

相关文章: