一种基于GPU的移动端视频美颜的即时呈现方法技术

技术编号:13734915 阅读:66 留言:0更新日期:2016-09-21 23:35
本发明专利技术公开了一种基于GPU的移动端视频美颜的即时呈现方法,它包括图像获取步骤、图像处理步骤和图像融合步骤。本发明专利技术借助GPU的硬件加速特性,对本方法的多个子步骤进行处理,可以解决使用CPU时的效率低下问题,同时本方法提出并使用的各个子步骤都能很好的应用于GPU加速处理,在保证效率实时的同时,可以得到即时的效果呈现,应用于单幅图像的特效处理;同时,本发明专利技术提出一种易于理解且性能优异的图像去噪算法处理框架,利用基于图像积分图的快速图像去噪方案,保证计算速度与采样窗口的大小无关,同时很好的去除图像噪声如斑点的同时保持细节。

【技术实现步骤摘要】

本专利技术涉及一种基于GPU的移动端视频美颜的即时呈现方法
技术介绍
美颜方法通常由多个基础步骤组成,包括图像中外部光照及人体皮肤等噪声的去除、人体皮肤检测、人脸检测、祛斑、皮肤美白、图像融合等。图像去噪作为最基本也是最重要的一环,对后续的算法处理具有至关重要的作用,目前去噪的算法较多,通常包括高斯平滑、双线性滤波平滑、平均滤波平滑、基于块匹配的三维去噪等算法,其中各算法的性能和效果均有不同程度的差异,以及各自具有不同程度的局限性,这对于应用场景的算法选择上有较大的影响。例如,平均滤波平滑效率很高,但往往会过滤掉图像的更多细节如头发、睫毛、眉毛等人脸具有明显特征的区域;高斯平滑在滤波半径较小时效率较高但滤波半径较大时效率很低;双线性滤波平滑能很好的保留图像边缘细节但会产生混色现象;基于块匹配的三维去噪算法能很好的处理高斯白噪声但效率特别低下。因此,选择一种能在效率和效果上平衡的算法,对整体算法的结果是一种挑战,同时又需要很好的适用于相应的应用场景。皮肤检测与人脸检测,主要需要处理的是皮肤及人脸区域,保证在皮肤与非皮肤区域的接缝处无明显人工痕迹,这是由应用场景所决定的。当用于高分辨率图像时人脸检测算法的性能较低,这往往是由于需要进行金字塔逐层检测人脸区域,同时并不适用于其它皮肤区域如手臂、肩膀、脖颈等,因此选择一种适合的皮肤及人脸区域的检测算法,同时具备较高的性能,尤为重要。祛斑祛痘主要指皮肤区域的局部区域处理,通常的做法是人工手选区域进行祛除,不适用于图像的自动处理。皮肤美白与图像增强可以有多种处理方式,包括指数映射、对数映射、幂函数映射、线性加深、自动色阶等,其目的为将图像中较暗的区域进行增强处理,增强细节呈现效果,同时更好的保留较亮区域的细节变化,防止出现泛白现象。整体而言,由于美颜方法通常需要若干个子方法的相互衔接才能完成,因此各子方法的微弱变化也会对最后的效果产生较大的影响,选择合适的子方法并有效的组合在一起,同时满足效率较高且效果即时呈现,使其具有更好的应用前景,这是本专利技术将要解决的问题。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种基于GPU的移动端视频美颜的即时呈现方法,借助GPU的硬件加速特性,可以解决使用CPU时的效率低下问题,同时本方法提
出并使用的各个子步骤都能很好的应用于GPU加速处理,在保证效率实时的同时,可以得到即时的效果呈现。本专利技术的目的是通过以下技术方案来实现的:一种基于GPU的移动端视频美颜的即时呈现方法,它包括图像获取步骤、图像处理步骤和图像融合步骤;所述的图像获取步骤包括:输入视频,将所述视频按帧提取并作为图片序列;所述的图像处理步骤包括三个基于GPU硬件加速的逐像素独立执行的子步骤:图像的整体美化子步骤、图像的增强处理子步骤和生成图像的皮肤区域的遮罩处理子步骤;所述的整体美化子步骤包括以下子步骤:、S111:将输入图像的RGB颜色空间转化到YUV颜色空间,同时保留UV通道;S112:设置采样窗口大小,判断采样窗口的大小是否大于预设的阈值:如果是则使用积分图,否则使用盒子滤波;所述的使用积分图包括以下子步骤:S11211:生成亮度图像的积分图,包括一次项与二次项的积分图,其中迭代公式分别如下sumi,j=sumi,j-1+sumi-1,j-sumi-1,j-1+fi,j; sumsq i , j = sumsq i , j - 1 + sumsq i - 1 , j - sumsq i - 1 , j - 1 + f i , j 2 ; ]]>式中,sum表示直接和,sumsq表示平方和,f表示亮度值,保存上述得到的两幅积分图像;S11212:对于图像中的所有像素逐个处理,在以每个像素为中心的窗口中,分别计算此窗口中所有像素的均值和方差,计算公式如下: E = sum i + N , j + N - sum i + N , j - N - 1 - sum i - N - 1 , j + N + sum i - N - 1 , j - N - 1 ( 2 * N + 1 ) * ( 2 * N + 1 ) ]]> E s q = sumsq i + N , j + N - sumsq i 本文档来自技高网
...

【技术保护点】
一种基于GPU的移动端视频美颜的即时呈现方法,其特征在于:它包括图像获取步骤、图像处理步骤和图像融合步骤;所述的图像获取步骤包括:输入视频,将所述视频按帧提取并作为图片序列;所述的图像处理步骤包括三个基于GPU硬件加速的逐像素独立执行的子步骤:图像的整体美化子步骤、图像的增强处理子步骤和生成图像的皮肤区域的遮罩处理子步骤;所述的整体美化子步骤包括以下子步骤:S111:将输入图像的RGB颜色空间转化到YUV颜色空间,同时保留UV通道;S112:设置采样窗口大小,判断采样窗口的大小是否大于预设的阈值:如果是则使用积分图,否则使用盒子滤波;所述的使用积分图包括以下子步骤:S11211:生成亮度图像的积分图,包括一次项与二次项的积分图,其中迭代公式分别如下:sumi,j=sumi,j‑1+sumi‑1,j‑sumi‑1,j‑1+fi,j;sumsqi,j=sumsqi,j-1+sumsqi-1,j-sumsqi-1,j-1+fi,j2;]]>式中,sum表示直接和,sumsq表示平方和,f表示亮度值,保存上述得到的两幅积分图像;S11212:对于图像中的所有像素逐个处理,在以每个像素为中心的窗口中,分别计算此窗口中所有像素的均值和方差,计算公式如下:E=sumi+N,j+N-sumi+N,j-N-1-sumi-N-1,j+N+sumi-N-1,j-N-1(2*N+1)*(2*N+1)]]>Esq=sumsqi+N,j+N-sumsqi+N,j-N-1-sumsqi-N-1,j+N+sumsqi-N-1,j-N-1(2*N+1)*(2*N+1)VAR=Esq-E2]]>式中,E表示均值,VAR表示方差;i和j分别表示相对于图像左上角的垂直和水平方向的坐标,N表示窗口半径;所述的使用盒子滤波的计算公式如下:E=Σm=-NNΣn=-NNfi+m,j+n(2*N+1)*(2*N+1)]]>Esq=Σm=-NNΣn=-NNfi+m,j+n2(2*N+1)*(2*N+1)VAR=Esq-E2]]>式中,E表示均值,VAR表示方差;m和n分别表示垂直和水平方向与当前像素位置的相对距离;S113:图像去噪:对于每一个像素,在得到基于此像素为中心的窗口的均值和方差后,根据得到的均值和方差进行平滑滤波,所述的平滑滤波的校正方式为:k=VARVAR+β+ϵ]]>fi,j=E*(1‑k)+fi,j*k式中,β表示调节的参数值,其值越大,表示平滑的程度越大,则去除的噪声越大;∈是一个接近于0的小数,其目的是为了防止被除数为0时的异常;从对像素值进行校正的公式中可以得出,当调节的参数值越大时,该像素值越接近E;S114:对图像进行锐化处理,对图像的纹理细节进行补偿提升,处理公式为:Si,j=fi,j+fi,j-1+fi,j+1+fi-1,j+fi+1,j-fi,j*44*α]]>式中,S表示锐化后的图像,α表示锐化的程度,即4‑邻域拉普拉斯梯度对像素值的贡献百分比,α值越大,锐化程度越大;S115:图像锐化处理之后,再与去噪前RGB转换得到的UV通道合并成YUV图像;S116:将步骤S115得到的YUV图像再次转换回RGB颜色空间,以供后续进一步处理;所述的图像的增强处理子步骤采用非线性图像增强,对图像进行整体美白处理,通过提升图像的暗部细节的同时保持亮度细节的方式实现,首先将图像归一化至[0,1]的范围内,然后采用指数函数映射的方法进行处理:fi,j=fi,jp]]>式中,p表示美白的程度;所述的生成图像的皮肤区域的遮罩处理子步骤包括以下子步骤:S121:检测图像的皮肤区域:使用阈值处理,首先划分出皮肤与非皮肤的粗选区域,通常人的皮肤区域的RGB统计值为[a,b,c],其中a、b、c为对多张图像的皮肤与非皮肤区域进行统计分类而得到的一组值,检测时当图像的像素值大于统计值时则划分为皮肤区域,否则为非皮肤区域,得到一个皮肤区域的初步检测;S122:得到皮肤区域的遮罩后,对遮罩作进一步的细化处理:采用指定窗口大小的高斯模糊进行遮罩处理,高斯函数的二维公式如下:f(x,y)=12πσ2e-x2+y22σ2]]>式中,x和y分别表示垂直和水平方向与当前操作像素的相对距离,σ表示标准差;所述的图像融合步骤包括:在图像处理步骤完成后,根据得到的皮肤区域的遮罩分别对整体美白后的图像及整体去噪后的图像进行逐像素融合,整合公式为:Finali,j=Bi,j*(1‑αi.j)+Fi,j*αi.j式中,B表示整体去噪后的图像,F表示整体美白后的图像,α表示得到的皮肤区域的遮罩,Final表示图像融合结果;完成融合后得到最后的结果图像,将结果图像按照序列进行输出。...

【技术特征摘要】
1.一种基于GPU的移动端视频美颜的即时呈现方法,其特征在于:它包括图像获取步骤、图像处理步骤和图像融合步骤;所述的图像获取步骤包括:输入视频,将所述视频按帧提取并作为图片序列;所述的图像处理步骤包括三个基于GPU硬件加速的逐像素独立执行的子步骤:图像的整体美化子步骤、图像的增强处理子步骤和生成图像的皮肤区域的遮罩处理子步骤;所述的整体美化子步骤包括以下子步骤:S111:将输入图像的RGB颜色空间转化到YUV颜色空间,同时保留UV通道;S112:设置采样窗口大小,判断采样窗口的大小是否大于预设的阈值:如果是则使用积分图,否则使用盒子滤波;所述的使用积分图包括以下子步骤:S11211:生成亮度图像的积分图,包括一次项与二次项的积分图,其中迭代公式分别如下:sumi,j=sumi,j-1+sumi-1,j-sumi-1,j-1+fi,j; sumsq i , j = sumsq i , j - 1 + sumsq i - 1 , j - sumsq i - 1 , j - 1 + f i , j 2 ; ]]>式中,sum表示直接和,sumsq表示平方和,f表示亮度值,保存上述得到的两幅积分图像;S11212:对于图像中的所有像素逐个处理,在以每个像素为中心的窗口中,分别计算此窗口中所有像素的均值和方差,计算公式如下: E = sum i + N , j + N - sum i + N , j - N - 1 - sum i - N - 1 , j + N + sum i - N - 1 , j - N - 1 ( 2 * N + 1 ) * ( 2 * N + 1 ) ]]> E s q = sumsq i + N , j + N - sumsq i + N , j - N - 1 - sumsq i - N - 1 , j + N + sumsq i - N - 1 , j - N - 1 ( 2 * N + 1 ) * ( 2 * N + 1 ) V A R = E s q - E 2 ]]>式中,E表示均值,VAR表示方差;i和j分别表示相对于图像左上角的垂直和水平方向的坐标,N表示窗口半径;所述的使用盒子滤波的计算公式如下: E = Σ m = - N N Σ n = - N N f i + m , j + n ( 2 * N + 1 ) * ( 2 * N + 1 ) ]]> E s q = Σ m = - N N Σ n = - N N f i + m , j + n 2 ( ...

【专利技术属性】
技术研发人员:赖守波余刚韩志宏
申请(专利权)人:成都索贝数码科技股份有限公司
类型:发明
国别省市:四川;51

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

1