一种基于肤色模型的皮肤识别方法技术

技术编号:9463113 阅读:61 留言:0更新日期:2013-12-19 00:39
本发明专利技术涉及一种基于肤色模型的皮肤识别方法,步骤如下:1)对图像进行人脸识别,获取人脸区域;2)对步骤1)获取的人脸区域进行均值计算,获取平均肤色;3)根据步骤2)获取的平均肤色计算当前图像的肤色概率映射表;4)根据步骤3)获取的肤色概率映射表对当前图像进行肤色识别,并获得当前图像的肤色概率的结果图。本发明专利技术通过使用人脸检测后的肤色均值来构建肤色模型,能够适应各种条件下拍照的图片,应用范围实现更广的覆盖。并且本发明专利技术所述的方法不需要进行训练数据的积累,极易进行实施;不需要与庞大的训练数据进行比对,运行效率提高。通过肤色模型进行识别,识别准确率高,克服在过亮或过暗的情况下,皮肤识别不准确的不足。

【技术实现步骤摘要】
【专利摘要】本专利技术涉及,步骤如下:1)对图像进行人脸识别,获取人脸区域;2)对步骤1)获取的人脸区域进行均值计算,获取平均肤色;3)根据步骤2)获取的平均肤色计算当前图像的肤色概率映射表;4)根据步骤3)获取的肤色概率映射表对当前图像进行肤色识别,并获得当前图像的肤色概率的结果图。本专利技术通过使用人脸检测后的肤色均值来构建肤色模型,能够适应各种条件下拍照的图片,应用范围实现更广的覆盖。并且本专利技术所述的方法不需要进行训练数据的积累,极易进行实施;不需要与庞大的训练数据进行比对,运行效率提高。通过肤色模型进行识别,识别准确率高,克服在过亮或过暗的情况下,皮肤识别不准确的不足。【专利说明】
本专利技术涉及图像识别方法,更具体地说,涉及。
技术介绍
皮肤识别的目标是从图像中自动地识别人体的皮肤区域,并且根据识别出的皮肤区域进行美容美化操作。而现有技术中,对图像中人体的皮肤识别存在误识别率高、需要构建数据库的时间久和步骤麻烦、实现复杂、程序运行效率低等不足。中国专利技术专利申请201110185739.0公开了一种模式识别和图像处理
中的一种光照自适应的人体肤色检测方法,通过收集训练数据库,用训练数据库来训练基础肤色模型和光照模型,并用基础肤色模型对待检测图像的像素点进行筛选,从光照模型中找出一个和待检测图像最接近的光照模型,用该模型对待检测图像和基础肤色模型进行修正,修正后的待检测图像经修正后的基础肤色模型检测后输出。但上述专利技术的技术方案主要是根据数据库来构建肤色模型,必然存在有很大的局限性。当软件定义的数据库中的训练数据都偏于黑暗的情况时,偏亮的照片的皮肤检测得到的较黑的部分就会被自动识别为皮肤,导致误识别率;当软件定义的数据库中的训练数据都偏于明亮的情况时,偏暗的照片的皮肤检测得到的结果是会有很大部分不被识别,误识别率更高;当软件定义的数据库中的训练数据偏平衡的时候,较暗或者较亮的皮肤都不会被识别出来。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种识别率高、实现简单高效、运行效率高的。本专利技术的技术方案如下:,步骤如下:I)对图像进行人脸识别,获取人脸区域;2)对步骤I)获取的人脸区域进行均值计算,获取平均肤色;3)根据步骤2)获取的平均肤色计算当前图像的肤色概率映射表;4)根据步骤3)获取的肤色概率映射表对当前图像进行肤色识别,并获得当前图像的肤色概率的结果图。作为优选,步骤2)具体为:2.1)初始化原始皮肤模型;2.2)计算整个图像的颜色均值,作为初始皮肤的阈值;2.3)根据步骤2.2)获取得的初始皮肤的阈值计算人脸区域的平均肤色。作为优选,步骤2.1)中,初始化原始皮肤模型的步骤如下:2.1.1)创建肤色模型,大小为256*256 ;2.1.2)依次对肤色模型进行赋值,具体伪代码如下; 预设临时变量AlphaValue、nMax、1、j为整数类型。 肤色模型变量为SkinModelFor( i=0; i<2 5 6; i+十) { 判断i是否大于128,如果大于128,则AlphaValue为255,否则为i*2; 计算获得nMax的值,计算公式为nMax = min(256, AlphaValue*2);For(j=0;j<n M ax ;j++) {计算对应位置的肤色模型的值,计算公式为SkinModelQ] =AlphaValue - (J/2); }For(j=n M ax.j <2 5 6 ;j+十) { 初始对应位置的肤色模 型的值为0; } }o作为优选,步骤2.2)具体为:2.2.1)遍历整个图像的像素点,将红色通道、绿色通道、蓝色通道的颜色值累加,得到颜色累加值;2.2.2)将颜色累加值除以像素点的总数,得到红色通道、绿色通道、蓝色通道的均值,作为初始皮肤的阈值。作为优选,步骤2.3)具体为:2.3.1)根据如下公式计算平均肤色的黑白值:GRAYl=0.299*RED+0.587*GREEN+0.114*BLUE其中,GRAYl为灰度图的当前像素点的灰度值;RED、GREEN、BLUE分别为图像的当前像素点的红、绿、蓝通道的颜色值;2.3.2)将步骤2.3.1)中的黑白值作为阈值,用来排除人脸区域非皮肤的部分;并依次遍历人脸区域里的像素点的颜色值,根据如下公式获得平均肤色:skin=SkinModel;其中,skin为经过皮肤模型的颜色映射后的皮肤值;SkinModel为步骤2.1)的初始化原始皮肤模型;red为红色通道的颜色值;blue为蓝色通道的颜色值。作为优选,步骤3)所述的肤色概率映射表通过如下步骤获取:3.1)创建肤色概率映射表,大小为256*256 ;3.2)依次对肤色概率映射表进行赋值,具体伪代码如下;【权利要求】1.,其特征在于,步骤如下: .1)对图像进行人脸识别,获取人脸区域; .2)对步骤1)获取的人脸区域进行均值计算,获取平均肤色;. 3)根据步骤2)获取的平均肤色计算当前图像的肤色概率映射表; .4)根据步骤3)获取的肤色概率映射表对当前图像进行肤色识别,并获得当前图像的肤色概率的结果图。2.根据权利要求1所述的基于肤色模型的皮肤识别方法,其特征在于,步骤2)具体为: .2.1)初始化原始皮肤模型; . 2.2)计算整个图像的颜色均值,作为初始皮肤的阈值; .2.3)根据步骤2.2)获取得的初始皮肤的阈值计算人脸区域的平均肤色。3.根据权利要求2所述的基于肤色模型的皮肤识别方法,其特征在于,步骤2.1)中,初始化原始皮肤模型的步骤如下: .2.1.1)创建肤色模型,大小为256*256 ; .2.1.2)依次对肤色模型进行赋值,具体伪代码如下; 4.根据权利要求3所述的基于肤色模型的皮肤识别方法,其特征在于,步骤2.2)具体为: 2.2.1)遍历整个图像的像素点,将红色通道、绿色通道、蓝色通道的颜色值累加,得到颜色累加值; 2.2.2)将颜色累加值除以像素点的总数,得到红色通道、绿色通道、蓝色通道的均值,作为初始皮肤的阈值。5.根据权利要求4所述的基于肤色模型的皮肤识别方法,其特征在于,步骤2.3)具体为: .2.3.1)根据如下公式计算平均肤色的黑白值:GRAYl=0.299*RED+0.587*GREEN+0.114*BLUE 其中,GRAYl为灰度图的当前像素点的灰度值;RED、GREEN、BLUE分别为图像的当前像素点的红、绿、蓝通道的颜色值; .2.3.2)将步骤2.3.1)中的黑白值作为阈值,用来排除人脸区域非皮肤的部分; 并依次遍历人脸区域里的像素点的颜色值,根据如下公式获得平均肤色: skin=SkinModel; 其中,skin为经过皮肤模型的颜色映射后的皮肤值;SkinModel为步骤2.1)的初始化原始皮肤模型;red为红色通道的颜色值;blue为蓝色通道的颜色值。6.根据权利要求5所述的基于肤色模型的皮肤识别方法,其特征在于,步骤3)所述的肤色概率映射表通过如下步骤获取: .3.1)创建肤色概率映射表,大小为256*256 ; .3.2)依次对肤色概率映射表进行赋值,具体伪代码如下; 预设临时变量 1、j、SkinR本文档来自技高网
...

【技术保护点】
一种基于肤色模型的皮肤识别方法,其特征在于,步骤如下:1)对图像进行人脸识别,获取人脸区域;2)对步骤1)获取的人脸区域进行均值计算,获取平均肤色;3)根据步骤2)获取的平均肤色计算当前图像的肤色概率映射表;4)根据步骤3)获取的肤色概率映射表对当前图像进行肤色识别,并获得当前图像的肤色概率的结果图。

【技术特征摘要】

【专利技术属性】
技术研发人员:张伟傅松林张长定
申请(专利权)人:厦门美图网科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1