《人脸识别原理及算法——动态人脸识别系统研究》—第3章3.3节基于模板的探测方法

简介:

本节书摘来自异步社区《人脸识别原理及算法——动态人脸识别系统研究》一书中的第3章3.3节基于模板的探测方法,作者 沈理 , 刘翼光 , 熊志勇,更多章节内容可以访问云栖社区“异步社区”公众号查看。

3.3 基于模板的探测方法
人脸识别原理及算法——动态人脸识别系统研究
人脸各局部特征可以用各种模板表示[54],不同于上述的参数化模型法,模板是基于图像的灰度值,匹配过程使用最佳相似值比较法。上述的眼睛模型对应这里的眼睛模板,鼻子模型对应鼻子模板,嘴巴模型对应嘴巴模板。

模板匹配方法相对简单,不需要复杂过程去提取模型特征,也不需要定义相应的模型能量函数。

3.3.1 模板表示
模板表示有以下几种类型。

全局模板,即整个人脸图像都看成是一幅模板。这种表示不具有旋转、偏移不变性,且对于人脸局部特征的提取没有帮助。对于同一个人的人脸图像,如稍有偏移、旋转、尺度变化等,都会得到不同的模板,因此,识别的精确度将会很低。
局部模板,即对于人脸图像的各局部特征,形成各模板表示,用于人脸局部特征的提取。因为人脸的局部特征,如眼睛、鼻子、嘴巴等,相对于整个人脸而言,其变化的幅度是较小的,即使整个人脸图像都有偏移,具体到某一个人脸特征,其变化幅度就比较小,从而识别的精度会好于全局模板方法。
形变模板,即用参数来表示模板,且参数可变,可用于人脸特征的提取,如3.2节所述。对人脸图像进行相应的数学变换,变换结果作为人脸图像的特征。根据不同的偏移参数、尺度参数以及旋转参数来调整数学变换过程中用到的参数,对应人脸图像的变化。
3.3.2 图像标准化
对于基于特征比较的图像识别方法,图像的尺度一致性是很重要的,因此在提取人脸图像的特征前,必须进行图像的标准化处理。依据两眼间距离大小,可以确定图像的尺度,进行标准化处理。当然,也可以根据其他条件来进行标准化处理,如鼻尖与两眼中点之间的距离、鼻子与嘴巴中点之间的距离等。这里考虑使用两眼之间的距离的情况。

1.眼睛的探测
先手工取得眼睛模板T,然后与待识图像区域I进行比较,所用公式如下:
screenshot
(3-11)

式中,I_T 为从I中取得并与T大小相同的区域;< >为求平均算子;I_T T表示像素点积;σ表示待比较区域的标准偏差。比较时,取C_N (y)最大值所在的位置作为眼睛区域。显然,使用这种方法,时间开销很大。如果对于其他特征区域都采用这种方法进行探测,则效率将很低。为此,R. Brunelli、T. Poggio等人[54]提出使用投影法进行人脸特征的提取。

2.投影法
设I(x,y)为待识图像,left[ {x_1 ,x_2 } right] times left[ {y_1 ,y_2 } right]为一矩形区域,则I(x,y)在矩形区域内的垂直投影可定义为
screenshot
(3-12)

同样水平投影可定义为
screenshot
(3-13)

实际应用时,要先提取图像的水平梯度与垂直梯度成分,为此可以对图像进行拉普拉斯变换或进行高斯变换,得到的水平梯度用于探测脸轮廓以及鼻子轮廓,垂直梯度用于探测头顶、鼻子及嘴区域。

(1)嘴区域及鼻子区域的探测

这两个区域的探测使用同样的方法。首先,将图像的垂直梯度成分作水平投影,如式(3-13)所示,所得到峰值区域,即为鼻子区域,所得到的谷底区域即为嘴部区域。同时鼻子区域的高度可以通过计算水平投影的峰值区域与平均值区域的差值得到,其宽度可以通过探测峰值区域的长度得到。同样,嘴部区域的高度与宽度也可用类似的方法探测到。局部区域投影如图3-2所示。


c4d995dd5cd1e53065b6c094a513ac644ca2cbb4

(2)眉毛区域的探测

眉毛区域的位置及厚度也可通过投影技术探测得到,如图3-3所示。如上所述,当眼睛区域的位置通过使用模板匹配法得到后,则眉毛区域的位置可以通过搜索眼睛区域上部的图像垂直梯度成分的投影空间得到,找到成对的并且形状最相似的峰值区域即为眉毛区域,从而眉毛区域的宽度与高度都可得到。

由此可知,使用模板匹配技术以及人脸图像梯度成分的投影技术,可以探测得到人脸的局部特征,如眉毛的厚度,位置坐标,眉毛的弧度(可以粗略地加以描述),鼻子区域的位置及宽度,嘴部区域的位置、长度以及宽度,眼睛区域的位置,眼睛的旋转角度(相对与水平方向),两眼间距离等。


2bc8e0d14adcd76674c1e64ee14bdadb7e447909

3.3.3 方法的优缺点
使用模板匹配方法,通过构建人脸各局部特征的模板,如眼睛模板、鼻子模板、嘴巴模板等,可以细化人脸各局部特征,对于探测人脸的轮廓位置有较好的效果。但是,因为各模板的构成要素是图像的像素值,受光照、形变、尺度等外界因素干扰,需要较好的进行预处理。总之,该方法具有如下优点。

特征探测较准确。同模型匹配算法类似,使用局部特征进行探测,可以得到较好的探测结果,因为局部特征提取的参数受形变影响小,而且个体之间的差异较大,能够得到较好的探测结果。
全局匹配,不需要事先确定模板的初始位置。匹配过程可以在整个探测图像空间范围内进行,不需要事先确定模板的初始化位置。如果同时利用眼睛模型、嘴巴模型以及鼻子模型进行探测,则探测精度会更高,而且也不会得到局部优化的结果。
相较于模型匹配,该方法有以下缺点:受光照、尺度及图像旋转等因素的影响,需要先进行标准化处理。图像灰度容易受形变、光照、尺度等因素的影响,因此,需要对匹配图像进行相应的数学变换,以消除形变影响。标准化处理结果的好坏,算法的选择都对最终的匹配结果有影响。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

相关文章
|
25天前
|
机器学习/深度学习 算法 计算机视觉
YOLOv3的算法原理是怎么样的
YOLOv3的算法原理是怎么样的
|
25天前
|
存储 算法
【软件设计师】常见的算法设计方法——递推法
【软件设计师】常见的算法设计方法——递推法
|
2天前
|
机器学习/深度学习 算法 C语言
详细介绍递归算法在 C 语言中的应用,包括递归的基本概念、特点、实现方法以及实际应用案例
【6月更文挑战第15天】递归算法在C语言中是强大力量的体现,通过函数调用自身解决复杂问题。递归涉及基本概念如自调用、终止条件及栈空间管理。在C中实现递归需定义递归函数,分解问题并设定停止条件。阶乘和斐波那契数列是经典应用示例,展示了递归的优雅与效率。然而,递归可能导致栈溢出,需注意优化。学习递归深化了对“分而治之”策略的理解。**
12 7
|
2天前
|
机器学习/深度学习 存储 算法
【机器学习】深入探索机器学习:线性回归算法的原理与应用
【机器学习】深入探索机器学习:线性回归算法的原理与应用
|
3天前
|
存储 缓存 算法
LRU(Least Recently Used)算法原理
LRU(Least Recently Used)算法原理
4 0
|
3天前
|
机器学习/深度学习 传感器 算法
基于Mediapipe深度学习算法的手势识别系统【含python源码+PyqtUI界面+原理详解】-python手势识别 深度学习实战项目
基于Mediapipe深度学习算法的手势识别系统【含python源码+PyqtUI界面+原理详解】-python手势识别 深度学习实战项目
|
7天前
|
算法 数据可视化 数据挖掘
最佳加油站选择算法:解决环路加油问题的两种高效方法|LeetCode力扣134
最佳加油站选择算法:解决环路加油问题的两种高效方法|LeetCode力扣134
|
7天前
|
算法 数据挖掘 定位技术
算法必备数学基础:图论方法由浅入深实践与应用
算法必备数学基础:图论方法由浅入深实践与应用
|
7天前
|
存储 算法 数据挖掘
【贪心算法经典应用】哈夫曼编码原理与算法详解 python
【贪心算法经典应用】哈夫曼编码原理与算法详解 python
|
10天前
|
存储 算法
数据结构和算法——散列表的性能分析(开放地址法的查找性能、期望探测次数与装填因子的关系、分离链接法的查找性能)
数据结构和算法——散列表的性能分析(开放地址法的查找性能、期望探测次数与装填因子的关系、分离链接法的查找性能)
11 0