一种交互式图像虚化方法及装置与流程

文档序号:11730139阅读:245来源:国知局
一种交互式图像虚化方法及装置与流程

本发明涉及计算机视觉技术领域,具体涉及图像的虚化方法。



背景技术:

在图像处理的过程中,虚化背景是一个经常出现的手法,因其能迅速突出主体而被广大摄影爱好者所熟知和使用。目前已经提出一些数字图像虚化处理方法,例如基于物体空间的景深渲染方法、基于图像空间的景深渲染方法等,基于物体空间的方法其计算作用于三维场景表示,并且直接在渲染管线中计算景深效果。基于图像空间的方法,也称之为后处理方法,是作用图像上,利用场景深度图的信息对清晰场景图像做模糊处理。

但是这些方法在处理图像的时候存在操作繁琐、计算量大、消耗内存多、处理粗糙等问题,虚化效果也不是特别逼真。



技术实现要素:

为了解决上述问题,本发明提出了一种交互式图像虚化方法及装置,通过人机交互,用户能够对图像虚化区域进行选择,达到良好的虚化效果。其具体方案如下:

一种交互式图像虚化方法,其特征在于,包括以下步骤:

a、获取双目摄像机拍摄的第一图像和第二图像;

b、根据第一图像和第二图像获取深度图;

c、选取第一图像中待虚化的背景区域;

d、根据所述深度图获取第一图像中待虚化背景区域的深度,确定第一图像中前景区域的最近深度和最远深度;

e、根据所述第一图像中前景区域的最近深度和最远深度确定虚化系数;

f、根据虚化系数对第一图像中的背景区域进行虚化处理,同时对第一图像中的前景区域进行后处理。

可选地,在步骤b之后还包括:

b1、深度图优化。

可选地,在步骤a中,所述第一图像由双目摄像机的左摄像机采集获取,所述第二图像由双目摄像机的右摄像机采集获取。

可选地,在步骤b中,所述根据第一图像和第二图像获取深度图,其获取深度图的方法包括以下步骤:

b1、对第一图像和第二图像进行分割,将第一图像和第二图像分成多块;

b2、利用分块之间的代价函数对第一图像和第二图像进行分块匹配;

b3、根据分块匹配的结果进行视差图计算;

b4、由视差图确定深度图。

可选地,在步骤b2中,所述利用分块之间的代价函数对第一图像和第二图像进行分块匹配,其分块匹配方法包括以下步骤:

b21、根据聚合代价函数计算分块区域聚合代价;

b22、根据分块区域聚合代价计算分块区域匹配代价;

b23、根据分块区域匹配代价对第一图像中的块状区域和第二图像中的块状进行分块匹配。

可选地,在步骤d中,根据所述深度图获取第一图像中待虚化背景区域的深度,确定第一图像中前景区域的最近深度和最远深度,其前景区域深度的计算方法为:

前景最近深度:

前景最远深度:

其中,u为第一图像中待虚化背景区域,其深度为zu,c为允许弥散圆直径,f为相机焦距,m为相机内参系数。

可选地,在步骤e中,根据所述第一图像中前景区域的最近深度和最远深度确定虚化系数,其虚化系数的计算方法为:

其中,cp为虚化系数,zu为像平面到镜面的距离,zp为点p在的聚焦点到到镜面的距离,n为相机内参。

可选地,在步骤f中,所述根据虚化系数对第一图像中的背景区域进行虚化处理,同时对第一图像中的前景区域进行后处理包括:

利用高斯模型和虚化系数对第一图像中的背景区域进行虚化处理;

利用直方图算法对第一图像中的前景区域进行对比度均衡化处理,同时利用retinex算法对前景区域进行增强。

本发明还提供了一种交互式图像虚化装置,包括:

图像获取模块,用于获取双目摄像机拍摄的第一图像和第二图像;

深度图获取模块,用于根据第一图像和第二图像获取深度图;

虚化区域确定模块,用于人机交互,用户根据需要选择待虚化的第一图像中的背景区域;

前景区域深度确定模块,用于根据所述深度图获取第一图像中待虚化背景区域的深度,并确定第一图像中前景区域的最近深度和最远深度;

虚化系数确定模块,用于根据所述第一图像中前景区域的最近深度和最远深度确定虚化系数;

虚化处理模块,用于根据虚化系数对第一图像中的背景区域进行虚化处理,同时对第一图像中的前景区域进行后处理。

可选地,还包括深度图优化模块,用于对获取的深度图进行优化。

本发明的优点如下:

1、采用人机交互的方式,用户可以对待虚化区域进行选择,增加用户的体验感;

2、利用图像的景深信息确定虚化参数,由于每个点所对应的景深不一样,虚化系数是由景深计算得出的,因此每个点的虚化强度不一样,从而进一步提高虚化精度,且计算量小,速度快。

3、图像虚化以后,对前景区域进行对比度均衡、增强等处理,使得虚化后的输出图像更加美观。

附图说明

为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明所提供的一种交互式图像虚化方法的一种具体实施方式的实施流程图。

图2为本发明所提供的一种交互式图像虚化装置的一种具体实施方式的实施流程图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明所提供的一种交互式图像虚化方法的一种具体实施方式的流程图,如图1所示,该方法包括:

步骤s101:获取双目摄像机拍摄的第一图像和第二图像;

本申请利用双目摄像机拍摄第一图像和第二图像,其中,第一图像由双目摄像机的左摄像机采集获取,所述第二图像由双目摄像机的右摄像机采集获取。但并不限定这一种图像采集方法,即也可以定义为第一图像由双目摄像机的右摄像机采集获取,所述第二图像由双目摄像机的左摄像机采集获取。

步骤s102:根据第一图像和第二图像获取深度图;

本申请对于获取深度图的方法不做限制,因为基于双目视觉生成深度图的方法有很多,例如基于稠密立体匹配的深度图获取方法和基于稀疏匹配的深度图获取方法。

步骤s103:选取第一图像中待虚化的背景区域;

本申请体现一种交互式虚化方法,即用户可以参与其中,用户可以根据需要对虚化的区域进行选择,实现交互功能。

步骤s104:根据所述深度图获取第一图像中待虚化背景区域的深度,确定第一图像中前景区域的最近深度和最远深度;

步骤s105:根据所述第一图像中前景区域的最近深度和最远深度确定虚化系数;

步骤s106:根据虚化系数对第一图像中的背景区域进行虚化处理,同时对第一图像中的前景区域进行后处理。

可见,本发明实施例1利用双摄像头进行图像拍摄,从获得的第一图像和第二图像中获取深度信息,用户对虚化区域进行选择,再通过前景区域的深度确定虚化系数,利用虚化系数对背景区域进行虚化处理,同时对前景区域也进行了后处理。也即,本发明实施例在对图像进行虚化的过程中,用户参与其中,实现了交互功能,增强了用户的体验感;通过利用图像的前景深度信息确定虚化参数,进一步提高虚化精度,计算量小,速度快;图像虚化以后,对前景区域进行对比度均衡、增强等处理,使得虚化后的输出图像更加美观。

本发明实施例2公开了另一种具体的交互式图像虚化方法,包括如下步骤:

步骤s201:获取双目摄像机拍摄的第一图像和第二图像,其中,第一图像由双目摄像机的左摄像机采集获取,所述第二图像由双目摄像机的右摄像机采集获取;

步骤s202:根据第一图像和第二图像获取深度图;

这里采用基于分块原理的深度图获取,包括以下步骤:

s2011:对第一图像和第二图像进行分割,将第一图像和第二图像分成多块;

s2012:利用分块之间的代价函数对第一图像和第二图像进行分块匹配;

具体方法如下:

s20121:根据聚合代价函数计算分块区域聚合代价;

s20122:根据分块区域聚合代价计算分块区域匹配代价;

s20123:根据分块区域匹配代价对第一图像中的块状区域和第二图像中的块状进行分块匹配。

s2013:根据分块匹配的结果进行视差图计算;

s1014:由视差图确定深度图。

步骤s203:深度图优化;

获取深度图之后,还可以对深度图进行优化,从而提高深度图的深度信息的准确性。

步骤s204和步骤s207与上一实施例中步骤s103和步骤s106一致,在此不再赘述;

步骤s205:根据所述深度图获取第一图像中待虚化背景区域的深度,确定第一图像中前景区域的最近深度和最远深度,其中,第一图像中前景区域的最近深度和最远深度采用以下计算方法:

前景最近深度:

前景最远深度:

其中,u为第一图像中待虚化背景区域,其深度为zu,zu从步骤s102中得到的深度图中获取,c为允许弥散圆直径,f为相机焦距,m为相机内参系数。

步骤s206:根据所述第一图像中前景区域的最近深度和最远深度确定虚化系数,其中,虚化系数的计算方法为:

其中,cp为虚化系数,zu为像平面到镜面的距离,zp为点p在的聚焦点到到镜面的距离,n为相机内参。

可见,本发明实施例2在实施例1的基础上进一步公开了一种通过图像分割原理获取深度图的方法,同时对深度图进行优化,最终获取到边缘轮廓清晰且与原图匹配度高的深度图,进一步提高虚化精度。

本发明实施例3公开了另一种具体的交互式图像虚化方法,包括如下步骤:

步骤s301:获取双目摄像机拍摄的第一图像和第二图像,其中,第一图像由双目摄像机的右摄像机采集获取,所述第二图像由双目摄像机的左摄像机采集获取;

步骤s302:根据第一图像和第二图像获取深度图;

这里利用分块之间的代价函数对第一图像和第二图像进行分块匹配,其分块匹配方法包括以下步骤:

步骤s3021:利用简单的线性迭代聚类算法对第一图像和第二图像进行分割,将第一图像和第二图像分成多块;

步骤s3022:利用分块之间的代价函数对第一图像和第二图像进行分块匹配,具体步骤为:

步骤s30221:计算分块区域聚合代价cd(s):

其中,s为图像分割的区域,p为区域内s一点,pd∈u(p,d),即pd为p领域内一点,β∈[0,1]。ei(p,pd)和eg(p,pd)的值为:

ei(p,pd)=min(|il(p)-ir(pd)|,ti)

eg(p,pd)=min(|il′(p)-ir′(pd)|,tg)

其中,il(p)、ir(pd)分别为第一图像点p的像素值和第二图像点pd的像素值,il′(p)、ir′(pd)分别为il(p)、ir(pd)的水平梯度,ti,tg为常数;

步骤s30222:计算分块区域匹配代价函数c(si,r,sj,l):

其中,分别为第二图像中的块状区域si,r的边缘像素密度函数和第一图像中的块状区域sj,l的边缘像素密度函数,区域边缘像素密度函数计算方式为:

其中,s,t为图像中同一条边缘的节点,n为块s的边缘点数量,is、it分别为点s和点t的像素值。

步骤s30223:分块匹配:对于第二图像中的块状区域si,r,如果最小区域匹配代价函数值则该块在第一图像中匹配的块为sk,l,m为分块数量。

步骤s3023:根据分块匹配的结果计算视差图dorigin,计算方法为:

dorigin=|xl-xr|

其中,xl,xr为第一图像和第二图像的对应匹配块的横坐标总和,即

其中,l,r分别为第一、第二图像的对应匹配块内的像素点数量,xi,l、xi,r为第一、第二图像中像素点的横坐标。

步骤s3024:由视差图dorigin确定深度图d:

其中,wp,j=|ip-ij|,ip、ij分别为点p和点j的像素值,j为p邻域内的点。

步骤s303:在获取深度图之后,可以深度图进行优化,获得更加准确的而深度信息,其优化方法具体步骤为:

步骤s3031:对参考图像进行域变换:作为算法的第一步,首先对参考图像进行一维等距变换:

其中,ω为原始图像域,x为原始域ω中的点,为变换域,u为变换域ωw中的点,c为图像图层维度,ik为图像i第k维的亮度信息,σs和σr是滤波因子。相比与处理二维图像的双边滤波,一维数据的滤波速度更快、所需资源更少,而等距变换保证了一维滤波的有效性。另外,可以看出ct(u)是递增函数。

需要说明的是,这里的参考图像指代双目左摄像头所获取的第一图像和第二图像中的一张,两者中选取一张作为参考图像。

步骤s3032:通过设置适宜的阈值,提取参考图像中的边缘信息。结合空间差与色彩差之和小于阈值的属于同一区域,处于阈值附近的点即为图像的边缘信息。对于二维图像,交替进行横向与纵向的一维扫描,即可得到完整的图像边缘信息。具体如下:

步骤s30321:提取横向的边缘信息并对深度图滤波:

定义边缘阈值λ:对于点u处的函数值,认为在包含值区域[ct(u)-λ,ct(u)+λ]并连续的点属于同一区域。如果存在点p和点q使得以下不等式成立:

则认为点p和点q是该区域的边界点。对于深度图中对应的点pd和点qd之间的像素点进行均值处理:

重复此过程,直到所有横向像素处理完毕。

其中,点p和点q是在深度图中对应的点pd和点qd由下转换关系计算得到:

其中,(x,y)为深度图中的点的坐标,(x,y)为原图像中的点的坐标,k为相机内参矩阵,由相机标定得到。

步骤s30232:提取纵向边缘信息并对深度图进行滤波。与步骤s30321方法类似,将输入图像进行转置处理,可以使用相同的函数得到图像的纵向边缘信息,并对深度图进行相应的滤波。

步骤s30233:更新阈值,重复进行横向滤波和纵向滤波,直到达到停止条件,输出优化后的深度图dout。由此得到的深度图会更加平滑、更加自然。

通过采用以上方案,能够得到与源图像对应的深度图,该深度图轮廓清晰且能够与源图像高度匹配。

步骤s304:用户根据需要选取第一图像中待虚化的背景区域;

步骤s305:根据所选的需要虚化区域,确定出所述第一图像中前景区域的深度,这里前景区域的深度的获取方法与实施例2一致,不再赘述;

步骤s306:根据前景区域的最近深度和最远深度,确定虚化系数cp,这里计算方法与实施例2一致,不再赘述;

步骤s307:对第一图像中的背景区域进行虚化处理,对前景区域进行后处理。这里利用高斯模型对背景进行虚化,然后对前景图像进行对比度均衡化、增强等后处理。具体如下:

步骤s3071:以第一图像ir(p)为基础,利用高斯模型对背景进行虚化:

其中,i(p)为点p虚化后的像素值,g(p)为高斯函数:

其中,(u,v)为点p邻域内一点的坐标,δ(dout(p+(u,v))为一个脉冲函数:

高斯方差计算如下:

其中,cp为虚化系数,ps为图像像元尺寸。

步骤s3072:本实施例利用直方图算法对前景进行对比度均衡化处理,同时,利用retinex算法对前景图像进行增强。

步骤s3073:输出处理后的图像。

可见,本发明实施例3在实施例2的基础上进一步详细公开了在图像虚化过程中,深度图获取及优化的方法,以及一种具体利用虚化系数结合高斯模型进行背景图像虚化处理的方法,同时利用具体的算法对前景图像进行对比度均衡化处理、增强,使得虚化后的输出图像更加美观。

基于上述一种交互式图像虚化方法,本发明实施例4还公开了一种交互式图像虚化装置,参见图2所示,包括以下组成部分:

图像获取模块100,用于获取双目摄像机拍摄的第一图像和第二图像;

深度图获取模块200,用于根据第一图像和第二图像获取深度图;

虚化区域确定模块300,用于人机交互,用户根据需要选择待虚化的图像区域;

前景区域深度确定模块400,用于确定图像前景区域的最近深度和最远深度;

虚化系数确定模块500,用于根据所述图像前景区域的最近深度和最远深度确定虚化系数;

虚化处理模块600,用于根据虚化系数对图像中的背景区域进行虚化处理,同时对图像中的前景区域进行后处理。

进一步地,还可以包括:

深度图优化模块700,用于对获取的深度图进行优化。

本实施例的交互式图像虚化装置用于实现前述的交互式图像虚化方法,因此交互式图像虚化装置中的具体实施方式可见前文中的交互式图像虚化方法的实施例部分,例如,图像获取模块100,深度图获取模块200,虚化区域确定模块400,前景区域深度确定模块500,虚化系数确定模块600,虚化处理模块700分别用于实现上述交互式图像虚化方法中步骤s101,s102,s103,s104,s105,s106,深度图优化模块700对应实施例2中的步骤s203,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种交互式图像虚化方法及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1