基于肤色相似度的人脸检测与定位毕业设计(论文)(编辑修改稿)内容摘要:

and Pattern Recognition)等重要国际会议上每年都有大量关于人脸检测的论文,占有关人脸研究论文的近 1/3之多。 本文研究的主要内容 本课题致力于完成 Visual C++ 平台下的人脸检测与定位系统,人脸检测定位的算法限制于基于肤色相似度算法。 要完成的工作包括相似度的计算,图像的二值化,垂直直方图和水平直方图的获取,人脸特征(眼睛、嘴和鼻子)的提取。 本课题着重于肤色模型相似度在人脸检测与定位中的应用,对增加人脸检测与定位的准确率的研究有一定的指导意义。 基于肤色相似度的人脸检测与定位 4 第 2 章 基于肤色模型的人脸检测 人脸检测方法 人脸检测传统的方法多是在亮度空间进行,仅有灰度信息的变化 ,没有任何区域或比例的限制,所以 必须做多尺度空间的全搜索,计算量非常大,而利用色度信息则可大大降低搜索区域,其中肤色信息是最为直接有效的。 而且在人脸区域中,肤色一定是占主导地位的像素色彩值。 肤色虽然因人而异 ,但很多研究表明肤色在色彩空间中的一定范围内还是呈聚类特性的,特别是在排除了光照亮度和在经过变换的色彩空间中。 所以利用肤色这一线索可以排除掉在灰度图像中很像人脸而对应到彩色图像中根本不是肤色的区域,这在人脸检测中会起到积极的作用。 目前人脸检测方法主要可以分为以下 4 类: 1) 基于知识的方法: 利用人脸的几何形状以及脸部器官的比例对称关系来定位 人脸; 2) 基于特征的方法:直接利用人脸信息如肤色特征、轮廓特征、纹理特征等; 3) 基于模板的方法:使用模板在待测图像中逐点扫描计算匹配度,根据匹配度来判断有无人脸; 4) 基于外观的方法:如神经网络法、支持向量机法、特征脸法等。 上述的各种方法都存在自身的优缺点和适用领域,很多学者在各自所面临的问题范围内不断探索,也发明了许多卓有成效的检测算法。 但各种检测算法都存在效率与性能上的矛盾,也即在正确率、鲁棒性能方面更好的算法往往会花费更多的时间及系统消耗。 在本文的设计中提出了一种基于肤色相似度的人脸检测与定位的方法, 采用 了脸部皮肤之间相似度的方法以及二值化方法 , 使用了基于边界方法和基于区域方法相结合的算法 , 提取了眼睛、嘴和鼻子等关键特征 , 最终较好地实现了人脸的检测与定位。 下面就介绍这种方法。 基于肤色的人脸检测 色彩空间的选择 根据计算机色彩理论,对一种颜色而言,在计算机中有不同的表达式,这样就形成了各种不同的色彩空间,当然各种色彩空间只不过是颜色在计算机内的不同的表达形式而已, 在具体的色彩空间中通过实践找到肤色区间 ,建立起可操作性的肤色模型 ,这样就让肤色信息成为了人脸检测的核心方法。 不同肤色模型的建立 基于不同的颜色空间 ,且为颜色空间的一个子空间。 主要的彩色空间有以下几种: RGB 格式(红、绿、蓝三基色模型)、 HIS 格式(色度、饱和度、亮度模型)和 YCbCr(YUV)格式。 对于彩色空间来说, RGB 是最常用的颜色表示系统,但是人脸肤色在这一系统中的分布非常广泛,因此不适合表示人脸区域,往往需要转换到其他的彩色空间。 在该文的设计中采用了 YCbCr(YUV)格式。 这种色彩空间是以演播室质量标准为目标的CCIR601 编码方案中采用的彩色表示模型,被广泛地应用在电视的色彩显示等领域中。 安徽工程科技学院毕业设计(论文) 5 其优点将在下一节介绍。 通过下面的转换公式,可以将像素由 RGB 空间转换到 YCbCr空间。 Y=++ Cb=++128 ( 21) Cr=+128 我们将统计采集到的多幅图像人脸区域像素 RGB值,按上式进行转换,统计在 CbCr空间的分布概率,保留概率大于 ,得到肤色分布区域。 最终,我们得到的肤色范围是: Cb∈ [90, 125], Cr∈ [135, 165]。 将肤色范围内的像素 置 1, 其余置 0,得到分割后的二值图像,实现人脸的初步定位。 肤色模型 肤色是人脸一个重要而明显的特征,利用肤色模型可以快速排除非肤色区域,大大减小搜索空间,提高人脸检测的效率。 考虑到肤色等色彩信息经常受到光源颜色、图像采集设备的色彩的偏差等因素的影响,而在整体上偏离本质色彩而向某一方向移动,即我们通常所说的色彩偏冷、偏暖,照片偏黄、偏蓝等等,这种现象在艺术照片中更为常见。 为了抵消这种整个图像中存在着的色彩偏差 ,我们将整个图像中所有像素的亮度 (是经过了非线性 Y校正后的亮度 )从高到低进行排列,取前 5% 的像素,如果这些像素的数目足够多 (例如,大于 100),我们就将它们的亮度作为“参考白” (Reference White),也即将它们的色彩的 R、 G、 B 分量值都调整为最大的 255。 整幅图像的其他像素点的色彩值也都按这一调整尺度进行变换。 这是构成我们实际利用肤色模型的主要部分。 这一非线性分段色彩变换得到的肤色模型属于色彩空间中的聚类模型,这一类肤色模型的建立首先要选取一种合适的色彩空间,我们注意到 YCbCr 色彩空间具有如下优点: 1) YCbCr 色 彩格式具有人类视觉感知过程相类似的构成原理; 2) CbCr 色彩格式被广泛的应用在电视显示等领域中,也是许多视频压缩解码,如MPEG,JPEG 等标准中普遍采用的颜色表示格式; 3) YCbCr 色彩格式具有与 HIS 等其他一些颜色格式相类似的将色彩中的亮度分量分离出来的优点; 4) 相比 HIS 等其他一些色彩格式, YCbCr 色彩格式的计算过程和空间坐标表示形式比较简单; 5) 实验结果表明在 YCbCr 色彩空间中肤色的聚类特性比较好。 在 YCbCr 色彩空间中,肤色聚类事两头尖的纺锤形状,也就是在 Y 值较大和较小的部分,肤色聚类区域也随之缩减。 由此可见,在值较大和较小的部分,肤色聚类区域也随之缩减。 由此可见,在 Y 值不同的地方,我们 对 CbCr 子平面 进行 投影,得到的结果是不同的,由此得到结论,简单地排除 Y 分类,按照传统地做法在三维的 CbCr 子平面中寻求肤色的聚类区域是不可行的,我们必须考虑 Y 值不同造成的影响,从而对YCbCr 色彩格式进行非线性分段色彩变换。 首先应用肤色模型进行人脸的初定位,接着提出了一种基于肤色区域分割方法得到包含人脸区域在内的一系列矩形区域,从而进行了定位。 基于肤色相似度的人脸检测与定位 6 人脸 肤色 相似度 的 计算 该文设计的是基于人脸肤色模型 , 利 用相似度方法 , 对人脸区域进行了检测和定位。 我们定义 r=R/(R+G+B),b=B/(R+G+B),这样把三维的 RGB 降为二维。 而在这个二维平面上,肤色区域服从高斯分布。 我们可以采用训练的方法来计算得到一个分布中心,此过程主要生成可用于识别的参数。 通常,在已有的样本训练集基础上确定某个判定规则,使得按此规则对被识别对象进行分类所造成的错误识别率最小或者结果期望最大。 开始训练命令,打开 bmp 格式的图像后计算每幅图像的像素数 CrList 和 CbList,然后查询总的图像数 count 用于将当前数据库内的所有用户图片 进行训练, 最后对每幅图像求训练平均,得到可供识别比对的训练基。 训练的过程如图所示: N Y N Y 图 21 训练流程图 这样训练以后,得到了 Cb 和 Cr 的均值为 和 ,落在肤色范围内 ,验证了理论的正确性。 同样也得到了肤色 信息的均值 M 和方差 C, 为下一步计算相似度做了准备。 然后根据所考察的像素离中心远近得到肤色的相似度,得到与原图相似的分布图,均值 M 和方差 C 如下: M=E(x),C=E((xM)(xM)T),其中 x=[r,b]T 相似度计算公式为: P(r,b)=exp[(xm)TC1(xm)] ( 22) 关于相似度软件的实现纯粹是公式的实现,在这就不做说明了。 再按照一定的规则对该图二值化, 通过设置合适的阈值(关于最佳阈值的设置将在下一章中介绍),可将图像变成只有 0 和 1 的二值图像,这样做的目的是为了减小计算量,加快处理速度,同时,还可将目标从背景中分离出来,有效的突出了目标。 训练开始 读取用户数量以及对应的图像数 读取下一个用户的信息 读取下一幅图像 转成灰阶形式 全部图 对每个人求 训练平均 保存训练基 全部用户 安徽工程科技学院毕业设计(论文) 7 二值化流程如下: 图 22 二值化流程图 按这种方法就可以对输入的 bmp 图像 23 进行处理, 图 23 原图 其相似度计算结果如图 24 示: N N Y 找到第一个像素的位置 其灰度值 阈 值 灰度值= 0 灰度值= 1 查找下个像素 结束 基于肤色相似度的人脸检测与定位 8 图 24 相似度图 可以给出二值化图 25 示: 图 25 二值化图 以及垂直直方图 26 示: 图 26 垂直直方图 水平直方图 27 示: 安徽工程科技学院毕业设计(论文) 9 图 27 水平直方图 至此完成了相似度的计算和图像的二值化,以及两种直方图的提取,那么下一章节将在此基础之上进行人脸区域的标记和人脸特征(眼睛、鼻子、嘴巴)的提取。 基于肤色相似度的人脸检测与定位 10 第 3 章 相似度 基础上的人脸特征定位 在 上一章 得到的人脸区域基础上,对原图像进行灰度计算,将可能的眼睛区域分割成小图像块标定人眼中心,从而在眼睛确定的情况下把鼻子和嘴巴提取出来。 总体流程如下: 图 31 人脸检测与定位的总体流程 下面将介绍人脸标记和眼睛、鼻子、嘴巴定位的算法及其流程。 人脸检测与定位算法 人脸区域分割算法 人脸区域分割的系统结构如图 32 所示: 图 32 人脸区域分割系统 在图 32 中, 输出的一系列矩形将取代原来的整幅图像作为人脸检测算法的输入。 这些矩形应该满足以下条件: 1) 矩形系列中应该尽可能地包含待检测图像中的全部人脸对于距离较近或者是有接触的多个人脸,分割后得到的肤色区域自然距离较近或者是连在一起,这时可以用一个矩形区域覆盖它们。 不漏检、不降低正确率是肤色分割处理的前提,也是人脸区域分割算法的首要前提。 据前面对肤色模型的分析,无论什么样的肤色模型都存在判断失误,所以算法输出的一系列矩形应该尽量包含所有 的人脸区域。 2) 矩形系列应该少包含非肤色区域相对整幅图像,经过肤色分割预处理后的这一系列矩形的大小要明显小于原来的整幅图像,这是肤色分割预处理能够提高人脸检测算图像中的肤色和非肤色象素点 包含人脸区域在内的一系列矩形区 人脸区域分割算法 打开位图 图像灰度化 计算相似度 图像二值化 标记人脸 眼睛 定位 安徽工程科技学院毕业设计(论文) 11 法时间效率的主要原因, 也是肤色分割预处理能够降低误报率的关键。 对于可能的人脸区域来说, 其相对于水平方向的旋转角度在 45176。 到 13。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。