论文部分内容阅读
人脸识别是模式识别和计算机视觉领域非常活跃的研究课题,迄今为止,对于人脸特征的提取主要都是计算全局人脸特征,这样很容易产生在高维特征空间中特征向量对齐问题,并且容易湮没局部细节信息。故如先分割出局部图像(头发,眼角等),再提取局部图像特征,可提高人脸识别,年龄估计,性别估计等高层人脸应用的准确度。头发是人脸识别的一个重要局部特征,但是有关于它的检测,分析,用途在计算机视觉领域却研究不多。头发分析至少存在以下两个应用领域:身份验证及人脸检索。在某些情况下,头发也是个主要的线索特征--不同的发型及脸部区域的头发都可导致人脸识别出现误检,这时如果把分割的头发去除就可提高人脸检测率。同样的,当在进行相似人脸识别的时候,提取的头发也是个重要的单一特征,可利用分割的头发区分相似人脸。由于头发本身具有颜色多样性及形状变化性,故头发的分割及分析具有很大的困难。本文重点对头发分割分析研究,认真学习和理解一些具有代表性的人脸识别理论及方法,常用的图像分割算法和常用的图像分割评价。研究的主要内容及创新点包括以下几个方面:(1)研究了通用的图像分割算法,如阈值分割,聚类分割(k-means,模糊聚类分割),graph-cuts。(2)讨论了人脸检测的一些方法,介绍了Haar矩形特征和积分图像的概念,研究了Adaboost机器学习算法的基本原理,应用Adaboost算法和矩形特征构建了人脸检测级联分类器,以Intel公司开发的OpenCV(Open Source Computer Vision Library)作为基础函数库,利用Visual C++开发语言编程,实现了人脸图像的检测,测试了分类器的性能。(3)重点对头发的自动分割进行试验研究,并提出自己的算法框架。算法利用mean shift和混合高斯模型,结合颜色,纹理,头发位置特征来检测头发。方法分为三步。首先利用adaboost算法检测人脸及人眼,人脸及人眼的位置确定可进行人脸大小归一化及得到头发位置模板。其次,抽取头发特征向量并利用mean shift对头部区域所有像素进行聚类,得到许多个聚类区域(region),聚类区域分为三类:人脸region,头发region,环境region。最后,利用混合高斯模型依次判定聚类所得区域是否为头发区域,进而检测出头发。试验证明本文方法运行速度快,并可有效分割头发在简单背景下,同时在复杂的背景下也具有一定的分割有效性。