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

过实践找到肤色区间 ,建立起可操作性的肤色模型 ,这样就让肤色信息成为了人脸检测的核心方法。 不同肤色模型的建立基于不同的颜色空间 ,且为颜色空间的一个子空间。 主要的彩色空间有以下几种: 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。 到 135176。 之间,因此旋转角度小于 45176。 或大于 135176。 的区域为非人脸区域。 图像分割的目 的是把人脸的器 官与脸的其他部分分离开来,并保证每个器官的完整性。 在包含人脸的图像中,脸部比较明显而易辨别的特征主要是面部器官:眼睛、嘴、鼻子和眉毛。 鼻子往往与脸的反差不大,因此通常用鼻孔代替。 这几个面部特征在灰度图像中一般比周围区域暗。 尤其是眼睛和嘴在绝大部分情况下都清晰可见。 因此图像分割可以利用的特征是 : 灰度比周围区域暗的区域。 在设计中,为了减少图像分割这一步的运算量,对图像做了二值化处理。 分割的对象是黑白图像,分割简化为找出所有黑色的连通区域,它们都成为人脸器官的候选者。 从一幅图中,按一定规则划分出感兴趣的部分或区域 称为分割。 对于利用人脸各器官之间几何关系的人脸定位方法来说,分割算法是十分重要的。 在这里,感兴趣的部分是人脸的器官 (眼睛、嘴、眉毛、鼻子等等 )。 成功的分割算法能够有效地把人脸器官和脸的其他部分分离开来,并且保持器官的完整性。 设计 采用了基于边界的方法和基于区域的方法相结合的算法。 基于边界方法是提取边缘,利用边缘进行分割,该方法处理的像素数量比较少,各像素点间的相邻关系比较简单,处理速度比较快,但是,基于边界的方法是从局部特性来求图像整体的分割,因此在全局宏观性质上不如基于区域的方法。 基于区域的方法则是寻找互 相连接在一起、并有相同特征的像素所形成的区域,它是实现图像分割的一种重要方法。 在本系统中, 基于边界的方法主要用于前期矩形序列的产生,快速地得到包含人脸区域的外接矩形; 然后用基于区域的方法 ,, 全局考虑,对初始矩形序列进行区域归并, 得到最终的输出矩形。 算法的整体流程图如图 34 所示: 图 33 区域分割算法流程 输入的经过 肤色分割的图像 去噪声处理 提取边界 对边界的连通关系作处理 由边界的连通性和闭合性得到初始的一系列矩形 将初始的矩形序列进行归并处理 输出最终的矩形 基于肤色相似度的人脸检测与定位 12 人脸区域标记算法 在标记人脸之前,首先要对相似度图像进行二值化操作,这一部分已经在前面一章中介绍了。 接下来就要对人脸区域进行检测,标记 人脸的过程实际上是对得到的二值化图像进行人脸边界估计的过程。 估计人边界脸算法利用了人脸的结构特征: 1) 人脸左右边界肤色点个数约为人脸垂直方向最多肤色点个数的 ~ 倍; 2) 人脸上边界肤色点个数应该约为人脸区域宽度的 倍; 3) 人脸区域高。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。