基于OpenCV的绿幕背景视频抠图.pdf
《基于OpenCV的绿幕背景视频抠图.pdf》由会员分享,可在线阅读,更多相关《基于OpenCV的绿幕背景视频抠图.pdf(4页珍藏版)》请在咨信网上搜索。
1、人们利用绿幕背景处理制造出来的假象和幻觉,被称为影视特效。电影摄制者利用特效完成一些科幻镜头,这一切离不开绿幕背景视频抠图。对视频背景处理的研究可以帮助人们避免在危险环境中进行拍摄工作,同时电影摄制者利用它们来减少电影的制作成本1。以开源的计算机视觉库OpenCV2为基础,对视频进行抠图研究,包括视频背景的抠除替换和视频前景检测的研究。针对抠图替换,首先提取视频中的每一帧进行图像分割,制作图像掩膜,进行前景和背景的填充,最后实现视频抠图。针对前景检测,使用帧差法,先将不断获取的连续两帧转到灰度空间后进行后帧与前帧的减法运算,所得结果再进行阈值二值化,最后实现前景运动对象的准确检测。1系统理论基
2、础视频背景抠图的实质就是图像抠图,视频可以采用对视频的每一帧都使用图像抠图的方法。对于图像抠图,也可以将其理解成为对图像的分割,既可以是将图像分割成为若干区域,也可以是将图像的前景与背景分离。1.1绿幕视频背景抠图原理绿幕背景视频抠图过程中,输入一段以物理蓝屏为背景的视频,即原视频Vi,原视频包含了所有目标候选帧,再读入替换背景的图像Ii,采用制作掩膜的方法寻找到视频帧中前景Ft,也就是除去图像中的绿幕部分,可称之为背景,用Bt表示。掩膜实质效果为将背景置为白色,前景置为黑色。有了掩膜后,再制作一张空白的图像Io,接着将掩膜黑色区域对应的视频帧中前景区域获取像素点的值赋到空白图像Io上,掩膜白
3、色区域对应的替换背景图像Ii获取像素点的值赋到空白图像Io上。由此,视频中的一帧背景便替换完成,这样视频每读入一帧,便进行这样的转换。最终目的就是整个视频背景替换完成。1.2基于阈值的图像分割基于阈值的图像分割的基本原理是用一个或几个阈值将图像的灰度级分为几个部分,认为属于同一个部分的像素是同一个物体。将像素分为两类为二值图像,因此,两类像素的图像分割也称为图像的二值化处理3。阈值选取的图像分割方法是提取目标物体与背景在灰度上的差异,把图像分为具有不同灰度级的目标区域和背景区域的组合。阈值分割4是最常见的并行的直接检测区域的分割方法,它用一个或几个阈值将图像的整个灰度范围分为两段或多段,灰度级
4、属于同一段的像素构成性质相同的区域,其中包含了目标区域。阈值分割法主要有两个步骤:确定进行正确分割的阈值。将图像的所有像素的灰度级与阈值进行比较,以进行区域划分,达到目标与背景分离的目的。在这一过程中,正确确定阈值是关键,只要能确定一个合适的阈值就可以完成图像的准确分割,其基本原理的数学模型描述为:设(x,y)是二维数字图像的平面坐标,图像灰度级的取值范围是G=0,1,2,L-1(习惯上0代表最暗的像素点),位于坐标点(x,y)上的像素点的灰度级表示为f(x,y)。设tG为分割阈值,B=b0,b1代表一个二值灰度级,并且b0,b1 G。于是图像函数f(x,y)在阈值t 上的分割结果可以表示为公
5、式(1):ft(x,y)=b0 f(x,y)?(1)阈值分割法实际就是按某个准则函数求最优阈值t*的过程。设灰度级为i 的像素点个数为m i,则图像的像素点的收稿日期:2 0 2 3 年2 月5 日;修回日期:2 0 2 3 年9 月2 7 日基金项目:国家级大学生创新创业项目(2 0 1 8 1 0 7 9 2 0 2 6);教育部产学合作协同育人项目(2 0 2 0 0 2 1 6 8 0 3 2);天津城建大学教育教学改革与研究重点项目(J G-Z D-2 2 0 3 8,J G-Z D-2 2 0 3 5)1 8总数目M 为公式(2):M=i=0L-1mi(2)灰度级i 的出现概率pi
6、 为公式(3):pi=mi/M(3)亦可写为公式(4):Pi=miM=mii=oL-1mi(4)如果一幅图像含有两个以上不同类型的区域,则可以使用多个灰度阈值进行分割。阈值法分为全局阈值法和局部阈值法两种。全局阈值法指利用全局信息(例如整幅图像的灰度直方图)对整幅图像求出最优分割阈值,可以是单阈值,也可以是多阈值,阈值分割法的结果很大程度上依赖于对阈值的选择,因此该方法的关键是如何选择合适的阈值6。设一副图像的像素总数为n,灰度级为L,第k个灰度级rk的像素数为nk,计算图像灰度直方图可表示为公式(5):pk=nkn,k=0,1,.,L-1(5)式(5)子中pk表示灰度级的概率分布率。根据像素
7、的灰度值,利用阈值T将图像中的像素划分为两类,记为C1和C2,C1由灰度值在范围0,T内的像素构成,C2由灰度值在范围T+1,L-1内的像素构成。2W,2B,2T分别代表类内方差、类间方差、总体方差。阈值t 的分割质量由下列3个准则函数衡量,见公式(6):=2B2W,k=2T2W,=2B2T(6)式子中有2W=020+1212B=0(0-T)2+1(1-T)2=01(0-1)22T=2W+2B,0=i=0tPi,1=1-0T=i=0L-1i pi,t=i=0tipi,0=t0,1=T-t1-0求取最优阈值t*的表达式通过求类间方差的最大值得到公式(7):t*=argmaxt G2B(7)2系统
8、设计2.1设计方案基于OpenCV开源的计算机视觉库,将设计划分为可执行的步骤,按照步骤再利用OpenCV中API对目标进行处理分析,最后得出结果。划分的主要流程步骤如图1所示。流程图所示关于设计的步骤主要有以下几步:通过OpenCV内置函数在开发环境中导入视频、背景图像。播放视频的同时获取视频的每一帧将视频拆解为一张张的图像。对获取的图像转化到 HSV 色彩空间后利用阈值法进行分割,制作图像的掩膜。由掩膜找到视频帧的前景,以及背景图像中需要填充的背景像素点,对新建立的空白图像进行填充。重复三、四两步,直至视频播放结束。2.2设计开发平台实验的开发环境操作系统为Windows7和VS2015,
9、计算机型号华硕 x550v,CPU 型号 Intel四核 3.2GHz,程序基于OpenCV3.0用C+实现。2.3实验数据实验采用两段视频作实验分析。一段是视频帧大小(像素)为1280720,前景为人,人物身着黑色服装演讲,背景为纯绿幕的一段视频长度35秒的视频,视频中由于光照的原因,使得背景上出现些许的阴影。另一段是视频帧大小(像素)为1280720,前景是蝴蝶,蝴蝶为黄色,视频内容为蝴蝶飞舞。背景为纯绿幕长度为22秒。其蝴蝶可到达图像中的任意像素点。实验所用两段视频内容截取的某一帧如图2中(a)和(b)所示:2.4色彩空间转化模块设计在对图像进行阈值分割之前,需要将图像从RGB色彩空间转
10、化到HSV色彩空间7。HSV在数学上定义为在RGB空间中的颜色的R,G和B的坐标的变换。设(r,g,b)分别是一个颜色的红、绿和蓝坐标,它们的值是在0到1之间的实数。设max等价于r,g和b中的最大者。设min等于这些值中的最小者。要找到在HSV空间中的(h,s,v)值,这里的h0,360)是角度的色相角,而 s,v0,1 是饱和度和亮度。转化由计算机完成,通过公式(8)(9)(10)分别求取图像的色调H、饱和度S、亮度I,得出HSV空间图像,完成空间转化,可进行图像分割。H,S,V的计算为:h=0if max=min60 g-bmax-min+0,if max=r and g b60 g-b
11、max-min+360,if max=r and g b60 b-rmax-min+120,if max=g60 r-gmax-min+240,if max=b(8)s=0,if max=0max-minmax=1-minmax,otherwise(9)v=max(10)2.5帧分割与掩膜制作分割过程想要的是前景的轮廓,保留前景去除背景。而保留前景的目的主要是为了制作掩膜,最后通过掩膜找图1设计流程图2视频素材(a)素材一(b)素材二热点技术基于OpenCV的绿幕背景视频抠图19热点技术基于O p e n C V 的绿幕背景视频抠图总数目M 为公式(2):m=m i(2)灰度级i 的出现概率p
12、 i 为公式(3):p i =m i l/M(3)亦可写为公式(4):-晋S(4)如果一幅图像含有两个以上不同类型的区域,则可以使用多个灰度阈值进行分割。阈值法分为全局阈值法和局部阈值法两种。全局阈值法指利用全局信息(例如整幅图像的灰度直方图)对整幅图像求出最优分割阈值,可以是单阈值,也可以是多阈值,阈值分割法的结果很大程度上依赖于对阈值的选择,因此该方法的关键是如何选择合适的阈值。设一副图像的像素总数为n,灰度级为L,第k 个灰度级r?的像素数为n,计算图像灰度直方图可表示为公式(5):p k=,k=0.L-1(5)式(5)子中p?表示灰度级的概率分布率。根据像素的灰度值,利用阈值T 将图像
13、中的像素划分为两类,记为C 1 和C 2,C 1 由灰度值在范围 0,T 内的像素构成,C 2 由灰度值在范围 T+1,L-1 内的像素构成。2,?分别代表类内方差、类间方差、总体方差。阈值t 的分割质量由下列3 个准则函数衡量,见公式(6):A-#.k-#n=#(6)式子中有8=0?8 G+w?8 8=w?(?-?)2+o?(?-?=w?o?(?-?8=8+8 6,0 0=F,o l=1-?r=S i m.=m=,=求取最优阈值t*的表达式通过求类间方差的最大值得到公式(7):t=a t g e c?(7)2 系统设计开始加鞋视拼加载成功获取视频触图像R G B E H S V分割制作拽顾进
14、行育景填竞显示填充图像播放结结束图1 设计流程2.1 设计方案基于O p e n C V 开源的计算机视觉库,将设计划分为可执行的步骤,按照步骤再利用O p e n C V 中A P I 对目标进行处理分析,最后得出结果。划分的主要流程步骤如图1 所示。流程图所示关于设计的步骤主要有以下几步:通过O p e n C V 内置函数在开发环境中导入视频、背景图像。播放视频的同时获取视频的每一帧将视频拆解为一张张的图像。对获取的图像转化到 H S V 色彩空间后利用阈值法进行分割,制作图像的掩膜。由掩膜找到视频帧的前景,以及背景图像中需要填充的背景像素点,对新建立的空白图像进行填充。重复三、四两步,
15、直至视频播放结束。2.2 设计开发平台实验的开发环境操作系统为W i n d o w s 7 和V S 2 0 1 5,计算机型号华硕x 5 5 0 v,C P U 型号I n t e l 四核3.2 G H z,程序基于O p e n C V 3.0 用C+实现。2.3 实验数据实验采用两段视频作实验分析。一段是视频帧大小像素)为1 2 8 0 7 2 0,前景为人,人物身着黑色服装演讲,背景为纯绿幕的一段视频长度3 5 秒的视频,视频中由于光照的原因,使得背景上出现些许的阴影。另一段是视频帧大小(像素)为1 2 8 0 7 2 0,前景是蝴蝶,蝴蝶为黄色,视频内容为蝴蝶飞舞。背景为纯绿幕长
16、度为2 2 秒。其蝴蝶可到达图像中的任意像素点。实验所用两段视频内容截取的某一帧如图2 中(a)和(b)所示:(a)素材一(b)素材二图2 视频素材2.4 色彩空间转化模块设计在对图像进行阈值分割之前,需要将图像从R G B 色彩空间转化到H S V 色彩空间。H S V 在数学上定义为在R G B空间中的颜色的R,G 和B 的坐标的变换。设(r,g,b)分别是一个颜色的红、绿和蓝坐标,它们的值是在0 到1 之间的实数。设m a x 等价于r,g 和b 中的最大者。设m i n 等于这些值中的最小者。要找到在H S V 空间中的(h,s,v)值,这里的h(0,3 6 0)是角度的色相角,而s,
17、v e 0,1 是饱和度和亮度。转化由计算机完成,通过公式(8)(9)(1 0)分别求取图像的色调H、饱和度S、亮度I,得出H S V 空间图像,完成空间转化,可进行图像分割。H,S,V 的计算为:-Lm k-m m+3 6 0,i f m a x=r a n d g b(8)。yb-r4 1 0 0 f m e-。6 0(9)v =m a x(1 0)2.5 帧分割与掩膜制作分割过程想要的是前景的轮廓,保留前景去除背景。而保留前景的目的主要是为了制作掩膜,最后通过掩膜找1 9到前景图像像素。基于这种思想,通过分割算法将前景置为黑色,由于背景不需要,所以将背景置为白色。可以找出背景颜色在HSV
18、空间中的阈值范围。找到阈值范围后通过式(7)求取该范围内最优阈值,再由式(1)循环遍历图像中所有像素点,将处于阈值范围内像素点置为白色,不在阈值范围内像素点置为黑色。实验进行两幅图的此方法的分割测试,如图3所示。从中可以看出,前景中还是存在着细小的白色斑点。需要通过图像的腐蚀和高斯模糊来消除这些细小斑点。要进行图像背景融合得先完成图像掩膜制作,掩膜作用是通过其找到对应的背景像素点和前景像素点。对视频进行帧分割之后,需要去除噪声污染,即对图像进行腐蚀操作后再进行高斯滤波。腐蚀和高斯模板操作均为33模板,完成后效果如图4所示,可以看出图3中出现的白点噪声已消除。2.6背景抠图融合设计图像融合方法并
19、不只是简单地图像叠加,获取图像中需要的像素点再进行像素点的填充,最后完成图像融合。融合过程可以简化为图 5 样式,关键点在于掩膜的制作和边缘像素的填充,填充时为了使效果更加理想,需要对掩膜进行腐蚀和高斯滤波。融合效果如图6所示。2.7前景检测设计实验在进行背景抠图的同时,还对前景进行了测试检测,目的是与背景的抠图进行横向比较,熟悉前景背景在图像处理中的差别。实验所采用的方法为帧差法。2.7.1帧差法原理帧差法原理帧差法是用当前帧和某固定帧的绝对值差来提取运动目标9。固定帧选取的原则是场景中不存在运动目标。假设获取的某固定帧(背景帧)为Ib,存在运动目标的当前帧为Ic。采用帧差法提取目标有个前提
20、假设:运动目标和背景的灰度或者颜色相差较多,并且背景变化很小,甚至没有变化。则背景帧和当前帧所对应像素的灰度差值的绝对值为:Iad=abs(Ic-Ib)(11)在有些场合中,仅采用一帧图像来表示背景会有些不靠谱,因此大多数时候会采用若干帧图像的均值来表示背景。方法为Ib1,Ib2,.,Ibn是采集的n帧背景图,用均值来表示背景的方法如公式(12):Ib=1ni=1nIbi(12)有些时候,由于背景的变化。比如说光照的变化等。不论是把固定某一帧还是某几帧均值作为背景,都可能会把背景检测成前景,这时就需要背景帧能跟随场景的变化而变化,即具有学习能力,有公式(13):Ibt=(1-)Ib(t-1)+
21、It(13)其中Ibt是t时刻的背景帧,It是当前t时刻不包含运动区域的图像帧,是学习率。除此之外,也可以利用三帧的帧差来提取运动目标的,原理和两帧类似。2.7.2帧差法实现帧差法实现帧差法流程图如图7所示:将图像转化到灰度空间,是将三通道图像转化为单通道图像,原理公式如式14所示:Gray=R 0.299+G 0.587+B 0.114(14)按照式(14)将R、G、B单三通道按比例归一化到0,1之间得到灰度图像。后续步骤涉及的色彩空间转化、图像滤波、获取视频帧等图像操作原理与前文描述原理相同。实验在进行二值阈值化处理时,只有当阈值合适的时候,前景的检测才会出现预期效果。经过实验发现,当阈值
22、取中间值,算法准确确定前景对象,并对其进行了矩形绘制。图8中(a)是原始视频,(b)是当阈值合适时,此处取阈值22的前景检测效果。2.8GUI设计GUI 采用的是 Qt5.8.0 版本进行制作,Qt 中配置了OpenCV以后便可以进行OpenCV对图像的所有操作。由于图3分割素材(a)素材一分割图(b)素材二分割图图4图像掩膜(a)素材一掩膜(b)素材二掩膜图5融合过程图7帧差法流程图6融合效果(a)素材一背景融合(b)素材二背景融合图8帧差法检测(a)原始帧(b)正确检测20通信与信息技术 2 0 2 3 年第6 期(总第2 6 6 期)到前景图像像素。基于这种思想,通过分割算法将前景置为黑
23、色,由于背景不需要,所以将背景置为白色。可以找出背景颜色在H S V 空间中的阈值范围。找到阈值范围后通过式(7)求取该范围内最优阈值,再由式(1)循环遍历图像中所有像素点,将处于阈值范围内像素点置为白色,不在阈值范围内像素点置为黑色。实验进行两幅图的此方法的分割测试,如图3 所示。从中可以看出,前景中还是存在着细小的白色斑点。需要通过图像的腐蚀和高斯模糊来消除这些细小斑点。(a)素材一分割图(b)素材二分割图图3 分割素材要进行图像背景融合得先完成图像掩膜制作,掩膜作用是通过其找到对应的背景像素点和前景像素点。对视频进行帧分割之后,需要去除噪声污染,即对图像进行腐蚀操作后再进行高斯滤波。腐蚀
24、和高斯模板操作均为3 3 模板,完成后效果如图4 所示,可以看出图3 中出现的白点噪声已消除。(a)素材一掩膜(b)素材二掩膜图4 图像掩膜2.6 背景抠图融合设计图像融合方法并不只是简视频帧单地图像叠加,获取图像中需要的像素点再进行像素点的填建立掩膜背景图像充,最后完成图像融合。融合过程可以简化为图5 样式,关掩膜前景掩膜背景键点在于掩膜的制作和边缘像空白图像素的填充,填充时为了使效果更加理想,需要对掩膜进行腐融合图像蚀和高斯滤波。融合效果如图图5 融合过程6 所示。(a)素材一背景融合(b)素材二背景融合图6 融合效果2.7 前景检测设计实验在进行背景抠图的同时,还对前景进行了测试检测,目
25、的是与背景的抠图进行横向比较,熟悉前景背景在图像处理中的差别。实验所采用的方法为帧差法。2.7.1 帧差法原理帧差法是用当前帧和某固定帧的绝对值差来提取运动目标。固定帧选取的原则是场景中不存在运动目标。假设获取的某固定帧(背景帧)为I,存在运动目标的当前帧为I。采用帧差法提取目标有个前提假设:运动目标和背景的灰度或者颜色相差较多,并且背景变化很小,甚至没有变化。则背景帧和当前帧所对应像素的灰度差值的绝对值为:l a d =a b s(I e-I b)(1 1)在有些场合中,仅采用一帧图像来表示背景会有些不靠谱,因此大多数时候会采用若干帧图像的均值来表示背景。方法为I 是采集的n 帧背景图,用均
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 OpenCV 背景 视频
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。