[发明专利]一种基于CUDA的抠像合成方法在审
申请号: | 201710336870.X | 申请日: | 2017-05-14 |
公开(公告)号: | CN107194867A | 公开(公告)日: | 2017-09-22 |
发明(设计)人: | 姬庆庆;陈楠;肖创柏;高畅;杨祎 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06T3/00 | 分类号: | G06T3/00 |
代理公司: | 北京思海天达知识产权代理有限公司11203 | 代理人: | 沈波 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于CUDA的抠像合成方法。首先,利用色彩平衡算子对前景图像非绿色区域进行溢出平衡处理;然后利用基础遮罩算子生成一个遮罩,抠去纯色背景;接下来利用细节遮罩算子对基础遮罩进行增强。经过上述处理后,形成最终遮罩,与背景图像进行融合,输出合成后的图像。系统在抠像及合成阶段利用了GPU加速,进一步提高了拼接速度。实验结果表明,该方法能够有效的实现视频的实时抠像,帧率达到10帧,相比于传统CPU版本更能能够满足视频抠像的实时要求。 | ||
搜索关键词: | 一种 基于 cuda 合成 方法 | ||
【主权项】:
一种基于CUDA的抠像合成方法,其特征在于:首先,利用色彩平衡算子对前景图像非绿色区域进行溢出平衡处理;然后利用基础遮罩算子生成一个遮罩,抠去纯色背景;接下来利用细节遮罩算子对基础遮罩进行增强;经过上述处理后,形成最终遮罩,与背景图像进行融合,输出合成后的图像;在抠像及合成阶段利用了GPU加速,进一步提高了拼接速度;实验结果表明,该方法能够有效的实现视频的实时抠像,帧率达到10帧,相比于传统CPU版本更能能够满足视频抠像的实时要求;溢出平衡算法:溢出平衡算法用以针对前景图片中G>R的点,有nG=R,这样将绿色的点中G值降低,函数表达为:nG=F(G,R)=R(G>R)G(G≤R)]]>nG=F(G,R)=R(G>R)G(G≤R)---(1)]]>对溢出平衡算法进行改进:对于G<(B+R)/2,即区域3,说明像素点不为绿色,则进行保留处理;对于G>(B+R)/2,即区域1和2,说明像素点G值过高,则进行平衡处理,取新G=(R+B)/2,相当于(1)式中R变为(R+B)/2;其函数表达式为:nG=F(G,B,R)=R+B2(G>R+B2)G(G≤R+B2)---(2)]]>接下来再次进行改进,引入参数a,取值范围是0‑1;以B=R直线为对称轴,参数a决定∠ACD的大小,当a=1时,角ACD=0°,当a=0时,∠ACD=90°,即∠ACD=(1‑a)*90,由此可知直线AC斜率,得AC直线方程,即可区分区域1;参数a相当于改变了F(G,B,R)的取值变化与保留区域的大小;区域1:F(G,B,R)=a*R+(1‑a)*B;区域2:F(G,B,R)=(1‑a)*R+a*B;区域3:F(G,B,R)=G;当a=0.5时,与(2)式相同,因此函数表达式变为:为方便进行计算,将上面BR平面图转为BG平面图;途中横坐标表示G值(0‑255),纵坐标表示B值(0‑255),代表RGB颜色空间中的一个切面;输入(R,G,B)即源图像当前像素点,a即溢出平衡的参数spill,根据输入的R值可以在GB的平面直角坐标系中找到点C(R,R);根据a取得点A(R*(1‑a),0),点B((255‑R)*a+R,255)a即比例,使A点只能在0‑R范围,B点只能在R‑255范围内;由以上三个点可做出两条直线Line1:B=(G‑R*(1‑a))/a,Line2:B=(G‑R)/a+R;根据Line1,Line2,Line3(B=R)以及G=255,B=255,G=0,B=0这7条直线,将其划分为3个区域:根据输入的G,B值①若点(G,B)在区域1内,则新的G值nG=R*(1‑a)+B*a,R,B按比例的混合;②若点(G,B)在区域2内,则新的G值nG=R*a+B*(1‑a),R,B按比例的混合;③若点(G,B)在区域3内,则新的G值nG=G;不变;基础遮罩算法基础遮罩的作用是生成一个遮罩,用于抠去纯色背景:对于绿色背景的图像,背景中g‑b的值比较大,而前景中g‑b的值相对较小,以此能够分辨出前后景;引入背景样本点(R,G,B),此处考虑样本点为绿色,即G>R,G>B;此时有以下几种情况说明:g‑b<0:表明此像素点不为绿,则需要保留,即遮罩M需取255(白);0<g‑b<G‑B:表明此像素点绿色的程度在不绿与样本点之间,遮罩M需在0~255之间;G‑B<g‑b:表明此像素点比样本点更绿,则需要去除,即遮罩M需取0(黑);因此函数表达为:同理对g‑r的情况进行分析,得出下式:对于B轴,取H2=g,H2以上部分,即H2<b,g‑b<0,即M=白;H1与样本点有关,设取两个样本点highcolor,lowcolor,样本点G‑B:compare_a=ghigh‑bhigh+glow‑blow,记为G‑B;H1=g–k*(G‑B),此处引入参数k,用于修正用户所选取的样本点的偏差,H1以下部分,即b<H1(k*(G‑B)<g‑b),即M=黑;对于R轴同理,取C2=r,C1=g–k*(G‑R);细节遮罩算法细节遮罩的作用是根据图像亮度及样本点亮度,生成一个细节遮罩对基础遮罩进行增强;其实现方法是:输入值highcolor(rgb),lowcolor(rgb),当前像素点(rgb);根据亮度公式:亮度=0.29*r+0.59*g+0.12*b,得highcolor对应亮度luminhigh,lowcolor对应亮度luminlow,当前像素点亮度为lumin。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710336870.X/,转载请声明来源钻瓜专利网。
- 上一篇:一种机床排屑装置
- 下一篇:一种数控车床的废屑清洁装置