人脸边缘检测方法研究与仿真
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人脸边缘检测方法研究与仿真
作者:牛同壮屈美娟
来源:《电脑知识与技术》2012年第04期
摘要:边缘检测是人脸表情识别的重要环节之一,该文通过分析常用边缘检测算法,如Roherts算子、Sobel算子、Prewitt算子、Canny算子、Laplacian算子、Log算子,实现了一套运用nsharp滤波算子、Canny边缘检测算子综合处理人脸表情识别的边缘检测方案,并运用日本JAFFE表情库,通过MATLAB仿真实验验证了这种方法的有效性。
关键词:边缘检测;表情识别;微分算子;Matlab
中图分类号:TP18文献标识码:A文章编号:1009-3044(2012)04-0863-03
Research and Simulation of Facial Edge Detection Method
NIU Tong-zhuang1, QU Mei-juan2
(1.Xi’an Technoloical University ,Xi’an 710032,China;2. Computer Science and E ngineering Institute, Xi’an Technoloical University , Xi’an 710032,China)
Abstract:Edge detection is one of most essential basic technology in Image Processing area.This paper analyz some commonly used edge detection algorithms,such as Roherts operator, Sobel operator, Prewitt operator, Canny operator, Laplacian operator and Log operator. It achieve a new proposal to detect edge in facial expression recognition joining nsharp filtering operator and Canny edge detection.The MATLAB simulation experiment prove the effectiveness on Japanese JAFFE expression library.
Key words: edge detection;expression recognition;dfferentialoperator;Matlab
人脸表情是人类情感的主载体之一,它含有丰富的人体行为信息。通过脸部表情能够表达人微妙的情绪反应以及对应的心理状态[1],人脸表情识别技术随着人们对表情信息的日益重视而受到关注,现已成为人们研究的热点。基于几何特征提取是一个快速、直接、有效的人脸表情识别方法,运用基于几何特征提取的方法进行表情识别时,首先要对图像进行边缘检测,确定嘴、眉毛、鼻子、眼睛等人脸表情显著特征的形状、位置、大小、距离等[2]。人脸表情边缘检测是这一系列工作的基础,因此,采用有效的边缘检测算法实现人脸表情边缘检测是至关重要的。
1边缘检测综述
边缘检测强调的是图像对比度(contrast)[3],利用物体和背景在某种图像特征上的差异来实现检测,这些差异包括灰度、颜色或纹理特征。因此,边缘检测的实质就是检测图像特征发生变化的位置。常用的微分边缘检测算法主要是基于图像强度的一阶和二阶导数,这种计算对噪声很敏感,噪声存在可能会使检测到的边缘变宽或在某些点处发生间断,因此需要采用滤波器滤除噪声。
1.1中值滤波
中值滤波是线性空间滤波的一种实现方式[5]。它是基于排序统计理论的一种能有效抑制噪声的非线性信号处理技术[6]。这种滤波器的优点是运算简单、速度快,在滤除叠加白噪声和长尾叠加噪声方面显示了极好的性能。同时在一定的条件下,可以克服线性滤波器所带来的图像细节模糊,而且对滤除脉冲干扰及图像扫描噪声极其有效。另外,中值滤波器很容易自适应化,从而可以进一步提高其滤波性能。因此,它非常适应于一些线性滤波器无法胜任的数字图像处理应用场合[7]。
中值滤波器是把邻域中的像素按灰度级进行排序,然后选择该组中的中间值作为输出像素值的一种邻域运算[6]。具体步骤:1)将模板在图像中移动,并将模板中心与图像中某个像素的位置重合;2)读取模板各个对应像素的灰度值;3)将这些灰度值从小到大排成一列;4)找出这些值单排在中间的一个;5)将这个中间值赋给对应模板中心位置的像素。
1.2算法分析
常用的微分边缘检测算子分为一阶微分算子和二阶微分算子,一阶微分算子有Roherts算子、Sobel算子、Prewitt算子、Canny算子,二阶微分算子有Laplacian算子、Log算子,各种算子都是基于对图像导数分割原理进行的实例化计算,其中:Roberts算子边缘定位准,但是对噪声敏感,适用于边缘明显且噪声较少的图像分割;Sobel算子是一种离散型的差分算子,它用来运算图像亮度函数梯度的近似值,但是Sobel算子并没有将图像的主题与背景严格地区分开来;Prewitt算子对噪声有抑制作用,抑制噪声的原理是通过像素平均来实现;Canny算子是一个具有滤波,增强,检测的多阶段的优化算子,在进行处理前,先利用高斯平滑滤波器来平滑图像以
非极大值抑制和滞后阈值处理包括边缘数据岭,即边缘强度。非极大值抑制的作用是沿顶脊选取特征点。首先假设顶脊点大于上限阈值,把阈值处理后的输出设为白色直到峰值小于下限阈值(lower threshold)。然后,把阈值处理后的输出设为黑色直到峰值大于上限阈值(upper threshold)。滞后阈值处理需要两个阈值,即上限阈值和下限阈值。当非极大值抑制所定义的边缘点大于上限阈值时开始处理,标记为边缘点(通常为白色,取值为255),形成边缘线的第一点。然后查找该点的相邻点以确定它们是否大于下限阈值,如图3所示。任何大于下限阈值的相邻点都标记为边缘点,然后再查找它的相邻点以确定它们是否大于下限阈值。利用这种方式,第一个确定的边缘点(大于上限阈值)成为一个用于查找的种子点(seed point),它的相邻点