本发明涉及计算机视觉技术领域,尤其涉及一种视频与三维场景融合的方法、装置、电子设备和存储介质。
背景技术:
基于视频融合的增强现实系统为人们迅速、直观地理解多路视频图像提供了很好的途径,在视频监控、城市的虚拟仿真、机器人的远程操控等领域应用广泛。虚实融合技术对于减少gis虚拟场景和真实视频图片间的视觉差异,实现视觉感官虚实无缝结合,并提高真实沉浸式视觉体验具有重要作用。其中,基于视频投影的虚实融合方法因无须人工干预和离线融合、不需为被投影的纹理预先指定顶点纹理且场景还原真实度高等优势,成为三维场景虚拟融合中最常用的方法。
然而,当视频流之间存在重叠区域时,纹理映射之后会出现明显的拼缝现象,需要对投影后的视频纹理进行进一步的融合处理。目前,常用的几种视频图像融合方法包括平均值法,最大值法,最大分辨率法,渐入渐出法等。其中,渐入渐出法是最常用的融合方法。但渐入渐出法对于纵向坐标有较大差异的纹理图像进行融合时,在拼接处仍会有明显的拼缝现象。
技术实现要素:
本发明提供一种视频与三维场景融合的方法、装置、电子设备和存储介质,用以解决现有技术中融合后的拼接处存在明显拼缝的缺陷。
本发明提供一种视频与三维场景融合的方法,包括:
确定三维场景模型中每一顶点的纹理坐标;
从多个待融合视频帧中获取每一纹理坐标对应的纹理值;
基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;
其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
根据本发明提供的一种视频与三维场景融合的方法,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重计算函数为非线性函数。
根据本发明提供的一种视频与三维场景融合的方法,每一待融合视频帧中的任一重叠纹理坐标的纹理值权重是基于如下步骤确定的:
基于所述任一重叠纹理坐标与所述重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重;
将1与所述任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重之间的差值,作为另一待融合视频帧中所述任一重叠纹理坐标的纹理值权重。
根据本发明提供的一种视频与三维场景融合的方法,所述基于所述任一重叠纹理坐标与所述重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重,具体包括:
基于所述任一重叠纹理坐标的横坐标,分别与所述重叠区域中的最大纹理横坐标和最小纹理横坐标之间的差值,确定横向权重;
基于所述任一重叠纹理坐标的纵坐标,分别与所述重叠区域中的最大纹理纵坐标和最小纹理纵坐标之间的差值,确定纵向权重;
基于所述横向权重和所述纵向权重,确定所述任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重。
根据本发明提供的一种视频与三维场景融合的方法,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重是采用如下公式计算得到的:
其中,d2为纹理值权重,(x,y)为重叠纹理坐标,xmax和xmin为所述重叠区域中的最大纹理横坐标和最小纹理横坐标,ymax和ymin为所述重叠区域中的最大纹理纵坐标和最小纹理纵坐标。
根据本发明提供的一种视频与三维场景融合的方法,所述确定三维场景模型中每一顶点的纹理坐标,具体包括:
对所述三维场景模型进行投影纹理映射,得到所述三维场景模型中每一顶点的纹理坐标。
根据本发明提供的一种视频与三维场景融合的方法,所述对所述三维场景模型进行投影纹理映射,得到所述三维场景模型中每一顶点的纹理坐标,具体包括:
基于所述三维场景中每一顶点的模型坐标,以及投影机的位置和投影角度,确定所述三维场景模型中每一顶点的纹理坐标。
本发明还提供一种视频与三维场景融合的装置,包括:
纹理坐标计算单元,用于确定三维场景模型中每一顶点的纹理坐标;
纹理值查询单元,用于从多个待融合视频帧中获取每一纹理坐标对应的纹理值;
视频场景融合单元,用于基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;
其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述视频与三维场景融合的方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述视频与三维场景融合的方法的步骤。
本发明提供的视频与三维场景融合的方法、装置、电子设备和存储介质,基于重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重,并结合每一待融合视频帧中重叠纹理坐标的纹理值以及纹理值权重确定得到两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值,在待融合图像的重叠区域在纵向上纹理值存在较大差异时,可以减轻纵向拼接处的拼接缝隙。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的视频与三维场景融合的方法的流程示意图;
图2为本发明提供的纹理值权重计算函数与渐入渐出法的纹理值权重计算函数的对比示意图;
图3为本发明提供的投影纹理映射方法的流程示意图;
图4为本发明提供的视频与三维场景融合的装置的结构示意图;
图5为本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于视频融合的增强现实系统为人们迅速、直观地理解多路视频图像提供了很好的途径,在视频监控、城市的虚拟仿真、机器人的远程操控等领域应用广泛。目前,将视频与三维场景进行融合,更多的是将视频简单的嵌入到三维场景中,很少考虑视频所处的空间位置和空间信息,真实感不足,无法达到实际应用的效果。同时在视频增强的三维场景渲染过程中,当加载大规模的三维模型和视频数据时,场景显示速度会变慢,从而大大影响场景的显示效率,这是因为视频影像的数据量往往较大且需要实时动态更新,需要消耗系统很多的资源。综上所述,如何将多个视频与三维场景按照正确的空间位置和信息进行融合,提高真实感,并且提高场景显示的效率,是当前多视频与三维场景融合技术中亟待解决的两大问题,对此展开相关的研究工作,具有重要的现实意义和应用价值。
针对前一个提高真实感的问题,虚拟融合技术是解决这一问题的关键环节之一。虚实融合技术对于减少gis虚拟场景和真实视频图片间视觉差异,实现视觉感官虚实无缝结合,并提高真实沉浸式视觉体验具有重要作用。近年来,国内外学者对视频与三维虚拟场景的融合方法进行了大量的研究,主要分为基于视频投影的虚实融合方法、基于视频图像变形的虚实融合方法以及基于视频图片重建的虚实融合方法3大类。其中,基于视频投影的虚实融合方法因无须人工干预和离线融合、不需为被投影的纹理预先指定顶点纹理且场景还原真实度高等优势,成为三维场景虚拟融合中最常用的方法。
基于直接视频投影的虚实融合方法是美国sarnoff公司的stephenhsu等提出的以实时视频流作为纹理投影到模型上的方法,使用纹理映射方法计算模型表面的颜色。美国sarnoff公司h.s.sawhney等提出了videoflashlights系统。南加州大学的ulrichneumann等在ieeevr上阐述了增强虚拟环境ave(augmentedvirtualenvironment)系统的概念,同样使用了实时视频增强虚拟场景的思想。三维场景中模型的纹理生成方式通常有两种:一是通过软件或程序直接为模型的顶点指定相应纹理坐标,从而使纹理映射到模型表面;二是通过视点矩阵、投影矩阵等参数的设置来自动生成纹理坐标。
然而,在将多路视频同时映射到三维模型上时,由于视频获取过程中,视频采集设备本身参数不可能完全相同,另外存在光照、视野、角度等差异,使得待拼接视频帧在重叠区域会有差异,造成纹理映射之后会出现明显的拼接缝隙,所以需要对视频纹理做融合处理。目前,常用的几种融合方法包括平均值法,最大值法,最大分辨率法,渐入渐出法等。其中,平均值法是指对待融合的两幅图像,将其重叠区域的像素值进行平均,非重叠区域的值保留原图像的像素值,该方法虽然简单,但效果不好,容易造成融合图像出现带状问题。最大值法是指重叠区域不再是对两幅待拼接的图像进行平均,而是通过比较待拼接图像对应点像素值大小进行融合,容易出现重叠区域不流畅等问题。多分辨率法效果不错但是运算时间太长。渐入渐出法是在图像重叠区域内使用线性加权过渡函数将两幅图像的纹理值进行加权得到融合后图像的纹理值,以实现重叠区域边界的平滑过渡。目前,渐入渐出法是最常用的融合方法。但利用渐入渐出法进行融合时,对于纵坐标有较大差异的纹理,融合后的纵向拼接处仍会有明显的拼接缝隙,融合效果欠佳。
对此,本发明实施例提供了一种视频与三维场景融合的方法。图1为本发明实施例提供的视频与三维场景融合的方法的流程示意图,如图1所示,该方法包括:
步骤110,确定三维场景模型中每一顶点的纹理坐标。
具体地,获取待融合视频纹理的三维场景模型,以及该模型中每一顶点的纹理坐标。其中,可以通过软件或程序直接为模型的顶点指定相应的纹理坐标,也可以通过视点矩阵、投影矩阵等参数的设置来自动生成纹理坐标,本发明实施例对此不作具体限定。根据每一顶点关联的纹理坐标,可以知晓从纹理图像中的哪一部分采样,并利用采样得到的颜色给对应的顶点着色。
步骤120,从多个待融合视频帧中获取每一纹理坐标对应的纹理值;其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中该重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中该重叠纹理坐标的纹理值权重是基于该重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
具体地,将多个待融合视频帧作为纹理图像,基于每一纹理坐标,从多个待融合视频帧中获取每一纹理坐标对应的纹理值。其中,待融合视频帧为多路需要投影映射到三维场景模型中的视频图像,纹理值为对应纹理坐标处的纹理颜色。
在将多个待融合视频帧同时映射到三维场景模型上时,由于视频获取过程中,视频采集设备本身参数不完全相同,另外还存在光照、视野、角度等差异,使得多个待融合视频帧在重叠区域中的纹理存在较大差异。因此,对于重叠区域内的纹理坐标,在获取其对应的纹理值时,需要进行融合处理。其中,若任一纹理坐标位于任意两个待融合视频帧的重叠区域内,则称该纹理坐标为重叠纹理坐标。对于两个待融合视频帧的重叠区域内的任一重叠纹理坐标,其对应的纹理值是基于每一待融合视频帧中该重叠纹理坐标的纹理值以及纹理值权重进行加权求和得到的。其中,任一待融合视频帧中重叠纹理坐标对应的纹理值权重是指该待融合视频帧的重叠纹理坐标处的纹理值,在计算融合后的纹理值时所占的比重。而非重叠区域的纹理坐标,可以直接根据该纹理坐标从对应的视频帧中采样获取纹理值。例如,可以采用如下公式获取每一纹理坐标的纹理值:
其中,i(x,y)为纹理坐标(x,y)对应的纹理值,i1和i2为两个待融合视频帧,i1(x,y)为待融合视频帧i1中纹理坐标(x,y)位置的纹理值,i2(x,y)为待融合视频帧i2中纹理坐标(x,y)位置的纹理值,d1和d2为待融合视频帧i1和i2中纹理坐标(x,y)对应的纹理值权重。
在确定每一待融合视频帧中任一重叠纹理坐标对应的纹理值权重时,常规的渐入渐出法通常只考虑重叠纹理坐标的横坐标与重叠区域边界的横向距离,从而为两个待融合视频帧的重叠纹理坐标处的纹理值线性地分配权重。渐入渐出法通常采用如下公式计算任一待融合视频帧中重叠纹理坐标对应的纹理值权重:
其中,w1为任一待融合视频帧中重叠纹理坐标(x,y)对应的纹理值权重,xmin和xmax为重叠区域内的最小横坐标和最大横坐标。
然而,两个待融合视频帧的重叠区域既可能存在横向上的纹理差异,也可能存在纵向上的纹理差异,对于存在纵向上纹理差异的待融合视频帧,常规的渐入渐出法的融合效果欠佳,融合后的纵向拼接处仍存在较明显的拼缝现象。针对该问题,本发明实施例在为两个待融合视频帧的重叠纹理坐标处的纹理值分配权重时,同时考虑了横向差异和纵向差异。具体而言,对于任一待融合视频帧,可以基于重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定该待融合视频帧的重叠纹理坐标处的纹理值对应的权重。根据重叠纹理坐标与重叠区域边界的横向距离和纵向距离所确定得到的权重,既可以保证融合后的图像在横向上平滑过渡,还可保证在纵向上平滑过渡,克服纵向拼接处存在明显拼接缝隙的问题。
步骤130,基于每一纹理坐标的纹理值,对三维场景模型的每一顶点进行着色,得到融合后的三维场景模型。
具体地,基于每一纹理坐标的纹理值,可以利用glsl(openglshadinglanguage,opengl着色语言)顶点着色器对三维场景模型的每一顶点进行着色,得到与多路视频融合后的三维场景模型。
本发明实施例提供的方法,基于重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重,并结合每一待融合视频帧中重叠纹理坐标的纹理值以及纹理值权重确定得到两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值,在待融合图像的重叠区域在纵向上纹理值存在较大差异时,可以减轻纵向拼接处的拼接缝隙。
基于上述实施例,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重计算函数为非线性函数。
具体地,在计算任一待融合视频帧中的任一重叠纹理坐标的纹理值权重时,可以采用非线性函数作为纹理值权重的计算函数。图2为本发明实施例提供的纹理值权重计算函数与渐入渐出法的纹理值权重计算函数的对比示意图,如图2左图所示,本发明实施例提供的纹理值权重计算函数为非线性函数,因此两个待融合视频帧中的重叠纹理坐标的纹理值权重变化更平缓,而图2右图所示的渐入渐出法的纹理值变化更急剧,对于重叠区域纹理差异较大的两个待融合视频帧而言,本发明实施例提供的纹理值权重计算函数所确定的纹理值权重,能够更好地适应两个待融合视频帧重叠区域的纹理转换,进一步减轻重叠区域的纹理差异带来的拼接痕迹。
本发明实施例提供的方法,通过将非线性函数作为任一待融合视频帧中的任一重叠纹理坐标的纹理值权重计算函数,可以进一步减轻重叠区域的纹理差异带来的拼接痕迹。
基于上述任一实施例,每一待融合视频帧中的任一重叠纹理坐标的纹理值权重是基于如下步骤确定的:
基于任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重;
将1与该待融合视频帧中该重叠纹理坐标的纹理值权重之间的差值,作为另一待融合视频帧中该重叠纹理坐标的纹理值权重。
具体地,在设置权重时,权重通常满足权重之和为1,且每一权重的值处在[0,1]区间内的条件,即权重d1、d2满足d1 d2=1,且0≤d1≤1,0≤d2≤1。因此,为了简便运算,降低计算复杂度,从而提高图像融合的效率,可以首先基于任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重,然后利用权重之和为1的规则,将1与该待融合视频帧中该重叠纹理坐标的纹理值权重之间的差值,作为另一待融合视频帧中该重叠纹理坐标的纹理值权重。
基于上述任一实施例,基于任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重,具体包括:
基于该重叠纹理坐标的横坐标,分别与重叠区域中的最大纹理横坐标和最小纹理横坐标之间的差值,确定横向权重;
基于该重叠纹理坐标的纵坐标,分别与重叠区域中的最大纹理纵坐标和最小纹理纵坐标之间的差值,确定纵向权重;
基于横向权重和纵向权重,确定该待融合视频帧中该重叠纹理坐标的纹理值权重。
具体地,在计算任一待融合视频帧中重叠纹理坐标的纹理值权重时,综合考虑横向权重和纵向权重。其中,横向权重是指在横向上,计算重叠纹理坐标的纹理值时,该待融合视频帧中重叠纹理坐标处的纹理值所占的比重;纵向权重是指在纵向上,计算重叠纹理坐标的纹理值时,该待融合视频帧中重叠纹理坐标处的纹理值所占的比重。结合该待融合视频帧重叠纹理坐标处的纹理值在横向上的比重和纵向上的比重,可以兼顾重叠区域在横向上的平滑过渡和纵向上的平滑过渡。
其中,确定横向权重时,可以基于该重叠纹理坐标的横坐标与重叠区域中的最大纹理横坐标之间的差值,以及该重叠纹理坐标的横坐标与重叠区域中的最小纹理横坐标之间的差值确定得到;确定纵向权重时,可以基于该重叠纹理坐标的纵坐标与重叠区域中的最大纹理纵坐标之间的差值,以及该重叠纹理坐标的纵坐标与重叠区域中的最小纹理纵坐标之间的差值确定得到。此处,重叠区域的最大纹理横坐标、最小纹理横坐标、最大纹理纵坐标和最小纹理纵坐标是指该待融合视频帧的重叠区域内任一点在横向上所能达到的最大的横坐标、最小的横坐标,以及任一点在纵向上所能达到的最大的纵坐标和最小的纵坐标。
需要说明的是,本发明实施例不对横向权重的确定步骤和纵向权重的确定步骤的执行顺序做具体限定,横向权重的确定步骤可以在纵向权重的确定步骤之前或之后执行,也可以与纵向权重的确定步骤同步执行。
基于上述任一实施例,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重是采用如下公式计算得到的:
其中,d2为纹理值权重,(x,y)为重叠纹理坐标,xmax和xmin为重叠区域中的最大纹理横坐标和最小纹理横坐标,ymax和ymin为重叠区域中的最大纹理纵坐标和最小纹理纵坐标。
具体地,首先计算重叠纹理坐标的横坐标与重叠区域的最大纹理横坐标的差值xmax-x、重叠纹理坐标的横坐标与重叠区域的最小纹理横坐标的差值x-xmin、重叠纹理坐标的纵坐标与重叠区域的最大纹理纵坐标的差值ymax-y以及重叠纹理坐标的纵坐标与重叠区域的最小纹理纵坐标的差值y-ymin。分别构建计算横向权重和纵向权重的非线性函数:
根据上述非线性函数计算得到横向权重
基于上述任一实施例,步骤110具体包括:
对三维场景模型进行投影纹理映射,得到三维场景模型中每一顶点的纹理坐标。
具体地,投影纹理映射是自动生成纹理坐标的一种方式,用于将纹理映射到物体上,就像使用投影仪将幻灯片投影到墙上一样。这种纹理映射的方式不需要指定纹理坐标,只需通过视点矩阵和投影矩阵等参数的设置来实现纹理坐标和顶点坐标的实时对应。相比其他的纹理映射方法,投影纹理映射方法具有以下优点:一是不需要预先计算设定纹理坐标,纹理与空间顶点可自动进行匹配;二是可有效地避免纹理扭曲现象。因此,本发明实施例对三维场景模型进行投影纹理映射,以获得三维场景模型中每一顶点的纹理坐标。
基于上述任一实施例,对三维场景模型进行投影纹理映射,得到三维场景模型中每一顶点的纹理坐标,具体包括:
基于三维场景中每一顶点的模型坐标,以及投影机的位置和投影角度,确定三维场景模型中每一顶点的纹理坐标。
具体地,投影纹理映射的过程,是根据投影机(projector)的位置、投影角度和模型顶点的模型坐标,求出每个顶点所对应的纹理坐标。整个过程类似于opengl图形管线中的模型顶点变换为窗口坐标,顶点从模型坐标空间转换到世界坐标空间,然后从世界坐标空间转换到投影机空间,再从投影机空间转换到指定的投影平面上,最终可求得顶点的纹理坐标。不同于模型顶点变换的是,纹理坐标需要偏移矩阵将结果值归一化到[0,1]空间中。图3为本发明实施例提供的投影纹理映射方法的流程示意图,如图3所示,在通过投影纹理映射计算纹理坐标时,首先将模型顶点从模型坐标系转换到世界坐标系,然后再转换到投影坐标系,再转换到投影剪裁坐标系,最后将获取的投影顶点坐标归一化到[0,1]区间,得到纹理坐标。具体可采用如下公式计算模型顶点的纹理坐标:
vw=minv×mmv×(vx,vy,vz,vw)t
(s,t,r,q)t=n×pp×mpv×vw
其中,vw为顶点在世界坐标系下的坐标,通过它可以将顶点坐标从摄像机坐标系转换到投影坐标系,minv为摄像机视图矩阵的逆矩阵,mmv为摄像机模型视图变换矩阵,(vx,vy,vz,vw)t为顶点在模型坐标系下的坐标,(s,t,r,q)t为纹理坐标系下的坐标,pp为投影变换矩阵,mpv为投影视图变换矩阵。
n为归一化矩阵,其值大小可以为
还可以利用glsl顶点着色器实现上述投影纹理映射,其中顶点的模型坐标(vx,vy,vz,vw)t由gl_vertex表示,摄像机模型视图矩阵mmv由gl_modelviewmatrix表示,minv、pp、mpv矩阵需要以一致性变量的形式在程序中传入顶点着色器。顶点着色器在计算纹理坐标以后,可以通过变量gl_texcoord[i]输入到片元着色器中,进行纹理查询与颜色计算操作,其中i表示纹理通道的编号。
下面对本发明提供的视频与三维场景融合的装置进行描述,下文描述的视频与三维场景融合的装置与上文描述的视频与三维场景融合的方法可相互对应参照。
基于上述任一实施例,图4为本发明实施例提供的视频与三维场景融合的装置的结构示意图,如图4所示,该装置包括:纹理坐标计算单元410、纹理值查询单元420和视频场景融合单元430。
其中,纹理坐标计算单元410用于确定三维场景模型中每一顶点的纹理坐标;
纹理值查询单元420用于从多个待融合视频帧中获取每一纹理坐标对应的纹理值;
视频场景融合单元430用于基于每一纹理坐标的纹理值,对三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;
其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
本发明实施例提供的装置,基于重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重,并结合每一待融合视频帧中重叠纹理坐标的纹理值以及纹理值权重确定得到两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值,在待融合图像的重叠区域在纵向上纹理值存在较大差异时,可以减轻纵向拼接处的拼接缝隙。
基于上述任一实施例,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重计算函数为非线性函数。
本发明实施例提供的装置,通过将非线性函数作为任一待融合视频帧中的任一重叠纹理坐标的纹理值权重计算函数,可以进一步减轻重叠区域的纹理差异带来的拼接痕迹。
基于上述任一实施例,该装置还包括纹理值权重确定单元,用于:
基于任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重;
将1与该待融合视频帧中该重叠纹理坐标的纹理值权重之间的差值,作为另一待融合视频帧中该重叠纹理坐标的纹理值权重。
基于上述任一实施例,基于任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中该重叠纹理坐标的纹理值权重,具体包括:
基于该重叠纹理坐标的横坐标,分别与重叠区域中的最大纹理横坐标和最小纹理横坐标之间的差值,确定横向权重;
基于该重叠纹理坐标的纵坐标,分别与重叠区域中的最大纹理纵坐标和最小纹理纵坐标之间的差值,确定纵向权重;
基于横向权重和纵向权重,确定该待融合视频帧中该重叠纹理坐标的纹理值权重。
基于上述任一实施例,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重是采用如下公式计算得到的:
其中,d2为纹理值权重,(x,y)为重叠纹理坐标,xmax和xmin为重叠区域中的最大纹理横坐标和最小纹理横坐标,ymax和ymin为重叠区域中的最大纹理纵坐标和最小纹理纵坐标。
基于上述任一实施例,纹理坐标计算单元410具体用于:
对三维场景模型进行投影纹理映射,得到三维场景模型中每一顶点的纹理坐标。
基于上述任一实施例,对三维场景模型进行投影纹理映射,得到三维场景模型中每一顶点的纹理坐标,具体包括:
基于三维场景中每一顶点的模型坐标,以及投影机的位置和投影角度,确定三维场景模型中每一顶点的纹理坐标。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communicationsinterface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行视频与三维场景融合的方法,该方法包括:确定三维场景模型中每一顶点的纹理坐标;从多个待融合视频帧中获取每一纹理坐标对应的纹理值;基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的视频与三维场景融合的方法,该方法包括:确定三维场景模型中每一顶点的纹理坐标;从多个待融合视频帧中获取每一纹理坐标对应的纹理值;基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的视频与三维场景融合的方法,该方法包括:确定三维场景模型中每一顶点的纹理坐标;从多个待融合视频帧中获取每一纹理坐标对应的纹理值;基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种视频与三维场景融合的方法,其特征在于,包括:
确定三维场景模型中每一顶点的纹理坐标;
从多个待融合视频帧中获取每一纹理坐标对应的纹理值;
基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;
其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
2.根据权利要求1所述的视频与三维场景融合的方法,其特征在于,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重计算函数为非线性函数。
3.根据权利要求1或2所述的视频与三维场景融合的方法,其特征在于,每一待融合视频帧中的任一重叠纹理坐标的纹理值权重是基于如下步骤确定的:
基于所述任一重叠纹理坐标与所述重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重;
将1与所述任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重之间的差值,作为另一待融合视频帧中所述任一重叠纹理坐标的纹理值权重。
4.根据权利要求3所述的视频与三维场景融合的方法,其特征在于,所述基于所述任一重叠纹理坐标与所述重叠区域边界的横向距离和纵向距离,确定任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重,具体包括:
基于所述任一重叠纹理坐标的横坐标,分别与所述重叠区域中的最大纹理横坐标和最小纹理横坐标之间的差值,确定横向权重;
基于所述任一重叠纹理坐标的纵坐标,分别与所述重叠区域中的最大纹理纵坐标和最小纹理纵坐标之间的差值,确定纵向权重;
基于所述横向权重和所述纵向权重,确定所述任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重。
5.根据权利要求4所述的视频与三维场景融合的方法,其特征在于,任一待融合视频帧中的任一重叠纹理坐标的纹理值权重是采用如下公式计算得到的:
其中,d2为纹理值权重,(x,y)为重叠纹理坐标,xmax和xmin为所述重叠区域中的最大纹理横坐标和最小纹理横坐标,ymax和ymin为所述重叠区域中的最大纹理纵坐标和最小纹理纵坐标。
6.根据权利要求1所述的视频与三维场景融合的方法,其特征在于,所述确定三维场景模型中每一顶点的纹理坐标,具体包括:
对所述三维场景模型进行投影纹理映射,得到所述三维场景模型中每一顶点的纹理坐标。
7.根据权利要求6所述的视频与三维场景融合的方法,其特征在于,所述对所述三维场景模型进行投影纹理映射,得到所述三维场景模型中每一顶点的纹理坐标,具体包括:
基于所述三维场景中每一顶点的模型坐标,以及投影机的位置和投影角度,确定所述三维场景模型中每一顶点的纹理坐标。
8.一种视频与三维场景融合的装置,其特征在于,包括:
纹理坐标计算单元,用于确定三维场景模型中每一顶点的纹理坐标;
纹理值查询单元,用于从多个待融合视频帧中获取每一纹理坐标对应的纹理值;
视频场景融合单元,用于基于每一纹理坐标的纹理值,对所述三维场景模型的每一顶点进行着色,得到融合后的三维场景模型;
其中,两个待融合视频帧的重叠区域内的任一重叠纹理坐标对应的纹理值是基于每一待融合视频帧中所述任一重叠纹理坐标的纹理值以及纹理值权重确定得到的;任一待融合视频帧中所述任一重叠纹理坐标的纹理值权重是基于所述任一重叠纹理坐标与重叠区域边界的横向距离和纵向距离确定的。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述视频与三维场景融合的方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述视频与三维场景融合的方法的步骤。
技术总结