三维漫游方法及装置与流程

专利2022-05-09  42


本发明涉及图像处理技术领域,尤其涉及一种三维漫游方法及装置。



背景技术:

由于网页端硬件性能和带宽的限制,无法展示高精度的场景模型。目前使用的全景三维融合技术,使用面数较低的模型提供基础的几何形状,使用高分辨率的全景图片贴附模型实现更好的材质。

三维漫游中从场景中的一个位置切换到场景中的相邻位置时,现有做法是直接切换。这种切换方式不能从当前场景自然、平滑地切换到目标场景,给用户带来的体验比较生硬,用户难以感受到两个场景之间的关系,漫游效果较差。



技术实现要素:

本发明提供一种三维漫游方法及装置,用以解决现有技术中三维漫游过渡生硬的缺陷,实现更自然的三维过渡,提高漫游效果。

本发明提供一种三维漫游方法,包括:

在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;

根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。

根据本发明提供的一种三维漫游方法,所述获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息包括:

确定所述场景模型在当前相机位置的可见区域和/或不可见区域;

获取下一相机位置的待贴赋的全景图片;

根据所述场景模型在下一相机位置的深度信息,确定所述场景模型在下一相机位置的可见区域和/或不可见区域。

根据本发明提供的一种三维漫游方法,所述将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中包括:

将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,在两个相机位置间漫游的过程中,以将所述下一相机位置的全景图片贴赋于所述场景模型中。

根据本发明提供的一种三维漫游方法,所述将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,包括:

对于均可见区域和/或均不可见区域,对当前相机位置和下一相机位置的全景图片做差值变换,根据差值变换结果进行全景贴赋;

对于只有其中一个相机位置可见的区域,使用可见相机位置的全景图片贴赋所述场景模型。

根据本发明提供的一种三维漫游方法,所述对当前相机位置和下一相机位置的全景图片做差值变换包括:计算两张全景图片的颜色值之差,使当前相机位置的图像颜色渐变到下一相机位置的图像颜色。

本发明还提供一种三维漫游装置,包括:

获取可见性模块,用于获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;

全景贴赋模块,用于根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。

根据本发明提供的一种三维漫游装置,所述获取可见性模块还用于:

确定所述场景模型在当前相机位置的可见区域和/或不可见区域;

获取下一相机位置的待贴赋的全景图片;

根据所述场景模型在下一相机位置的深度信息,确定所述场景模型在下一相机位置的可见区域和/或不可见区域。

根据本发明提供的一种三维漫游装置,所述全景贴赋模块还用于:

将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,在两个相机位置间漫游的过程中,以将所述下一相机位置的全景图片贴赋于所述场景模型中。

本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述三维漫游方法的步骤。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述三维漫游方法的步骤。

本发明提供的一种三维漫游方法及装置,通过获取模型区域在相邻位置的可见信息和/或不可见信息,以反映相机移动过程中,模型区域在视野中的变化情况,然后基于可见信息和/或不可见信息将下一相机位置的全景图片贴赋于预加载的场景模型中,在未增加硬件成本以及渲染开销未明显增长的前提下,实现更自然的全景三维过渡,提高了漫游效果。

附图说明

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

图1是本发明实施例提供的三维漫游方法的流程示意图;

图2是本发明实施例提供的获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息的流程示意图;

图3是本发明实施例提供的三维漫游装置的结构示意图;

图4是本发明实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1为本发明实施例提供的三维漫游方法的流程示意图,如图1所示,该方法包括:

步骤110,在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息。

具体地,场景模型用三维建模工具生成。作为点和其他信息集合的数据,三维模型可以手工生成,也可以按照一定的算法生成。

把相机360度拍摄的一组或多组照片拼接成一个全景图像贴赋于场景模型上,最大限度保留了场景的真实性,使用者通过控制浏览的方向,可左可右、可上可下观看场景,能够全面展示场景模型范围内的所有景致。

由于相机处于空间中的不同位置会导致场景模型的部分区域可见或者不可见,所以为更全面地反映相机移动过程中,模型区域在视野中的变化情况,贴赋更正确的全景材质,需要获取当前相机位置以及下一相机位置的场景模型的可见信息和/或不可见信息。

步骤120,根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。

具体地,在全景漫游过程中,通过切换相机的位置,同时贴赋更新的全景图片,以营造三维空间的立体观看体验,使用户身临其境。在当前相机位置完成全景图片贴赋,如果直接贴赋获取的下一张全景图片,就会出现场景切换不自然的问题。因此,根据获取的场景模型在相邻位置上的可见信息和/或不可见信息,在场景模型上贴赋相应的全景图片。

本发明实施例提供的方法,通过获取模型区域在相邻位置的可见信息和/或不可见信息,以反映相机移动过程中,模型区域在视野中的变化情况,然后基于可见信息和/或不可见信息,在相机移动的漫游过程中,同时将下一相机位置的全景图片以不同的策略贴赋于预加载的场景模型中。在未增加硬件成本以及渲染开销未明显增长的前提下,实现更自然的全景三维过渡,提高了漫游效果。

基于上述实施例,图2为获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息的流程示意图,如图2所示,步骤110包括:

步骤210,确定所述场景模型在当前相机位置的可见区域和/或不可见区域;

步骤220,获取下一相机位置的待贴赋的全景图片;

步骤230,根据所述场景模型在下一相机位置的深度信息,确定所述场景模型在下一相机位置的可见区域和/或不可见区域。

具体地,根据相机位置相对场景模型的深度即可获得场景模型在当前相机位置的可见区域和/或不可见区域。场景中各点相对于相机的距离可以用深度图来表示,即深度图中的每一个像素值表示场景中某一点与相机之间的距离,与普通的rgb三通道彩色图像的像素点一一对应。深度图像是物体的三维表示形式,通过立体照相机或者tof(timeofflight,飞行时间)照相机或者建模软件渲染提前获取,或者通过图形学的方法实时获取。

机器视觉系统获取场景深度图技术可分为被动测距传感和主动深度传感两大类。被动测距传感是指视觉系统接收来自场景发射或反射的光能量,形成有关场景光能量分布函数,即灰度图像,然后在这些图像的基础上恢复场景的深度信息。一种获取深度图的方法是使用两个相隔一定距离的相机同时获取场景图像来生成深度图;另一种获取深度图的方法是一个相机在不同空间位置上获取两幅或两幅以上图像,通过多幅图像的灰度信息和成像几何来生成深度图。

获得的深度图可以分为两类,第一类深度图显示与照相机的距离成正比例的亮度,较近的表面较暗,其他表面较亮;第二类深度图示出了与标称焦平面的距离相关的亮度,靠近焦平面的表面较暗,远离焦平面的表面更亮。

通过渲染深度图,得到全景图中三维物体之间的遮挡关系,对于不同的模型区域,将其投影到2d平面上,即可得到其在当前相机位置下的可见区域和不可见区域。通常解决可见性的方法有画家算法,newell算法或深度缓冲算法等。

画家算法将渲染场景中的多边形根据深度进行排序,然后按照顺序进行绘制,可以达到将不可见区域覆盖的效果。但是画家算法不能解决对于整体互相重叠导致难以排序的情况下的可见性问题。切分多边形的newell算法,通过将场景内的多边形进行切割成多个多边形,再重新排序可以实现在上述整体重叠情况下,获取物体之间的正确可见性。深度缓冲算法根据逐个像素的信息解决深度冲突的问题,并且抛弃了对于深度渲染顺序的依赖。

基于上述任一实施例,步骤120中根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中包括:

将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,在两个相机位置间漫游的过程中,以将所述下一相机位置的全景图片贴赋于所述场景模型中。

具体地,不同的贴赋策略包括:对于均可见区域和/或均不可见区域,对当前相机位置和下一相机位置的全景图片根据相机在两个位置的移动距离做差值变换,根据差值变换结果进行全景贴赋;对于只有其中一个位置可见的区域,使用可见位置的全景图片贴赋所述场景模型。

需要说明的是,对于均可见区域,两张全景图在同一模型区域的颜色值不一定相同,为减小两张全景图片在该区域的像素点的差异性,达到平滑过渡的视觉效果,本发明的一个实施例采用差值变换方法,通过计算两张全景图片的像素颜色值之差,作为正确全景图片的像素值贴赋于预加载的场景模型上,可以实现从当前全景图上的像素颜色渐变到下一张的全景图片的像素颜色。

对于均不可见区域,由于当前全景图片以及下一相机位置的全景图片在该模型区域的部分不会出现在下一相机位置的视野范围中,所以该区域像素颜色值的变化不会影响三维漫游过程中的平滑过渡,所以在此处不必进行其他特殊的操作,与均可见区域采用相同的全景贴赋策略即可,并且该部分的计算消耗很少,不会影响性能。

对于当前相机位置不可见且下一相机位置可见的模型区域,由于当前相机位置的模型区域不可见,所以当前全景图片在该区域的贴赋是错误的,如果同样采用差值方式,由错误的颜色值过渡到正确的颜色值,并不会达到平滑过渡的效果,所以在此种情形下,仅考虑下一相机位置的全景图片,直接将其贴赋在场景模型上,以保证场景过渡中颜色值变化的正确性。

对于当前相机位置可见且下一相机位置不可见的模型区域,由于当前相机位置已经完成全景贴赋,在下一相机位置该区域不可见,像素颜色值不会影响在相机切换过程中,颜色值的过渡效果,所以针对的此类情况,不用采取特殊的处理方式,将其与上一类情况合并,均贴赋可见位置的全景图片。

下面对本发明提供的三维漫游装置进行描述,下文描述的三维漫游装置与上文描述的三维漫游方法可相互对应参照。

图3为本发明实施例提供的三维漫游装置的结构示意图,如图3所示,该装置包括:获取可见性模块310和全景贴赋模块320。

获取可见性模块310,用于获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息。

具体地,场景模型用三维建模工具生成。作为点和其他信息集合的数据,三维模型可以手工生成,也可以按照一定的算法生成。

把相机360度拍摄的一组或多组照片拼接成一个全景图像贴赋于场景模型上,最大限度保留了场景的真实性,使用者通过控制浏览的方向,可左可右、可上可下观看场景,能够全面展示场景模型范围内的所有景致。

由于相机处于空间中的不同位置会导致场景模型的部分区域可见或者不可见,所以为更全面地反映相机移动过程中,模型区域在视野中的变化情况,获取当前相机位置以及下一相机位置的场景模型的可见信息和/或不可见信息。

全景贴赋模块320,用于根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。

具体地,在全景漫游过程中,通过移动切换相机的位置,同时贴赋更新的全景图片,以营造三维空间的立体观看体验,使用户身临其境。在当前相机位置完成全景图片贴赋,如果直接贴赋获取的下一张全景图片,就会出现场景切换不自然的问题。因此,根据获取的场景模型在相邻位置上的可见信息和/或不可见信息,在场景模型上贴赋相应的全景图片。

本发明实施例提供的装置,通过获取模型区域在相邻位置的可见信息和/或不可见信息,以反映相机移动过程中,模型区域在视野中的变化情况,然后基于可见信息和/或不可见信息将下一相机位置的全景图片贴赋于预加载的场景模型中。在未增加硬件成本以及渲染开销未明显增长的前提下,实现更自然的全景三维过渡,提高了漫游效果。

基于上述任一实施例,获取可见性模块310还用于:

确定所述场景模型在当前相机位置的可见区域和/或不可见区域;

获取下一相机位置的待贴赋的全景图片;

根据所述场景模型在下一相机位置的深度信息,确定所述场景模型在下一相机位置的可见区域和/或不可见区域。

基于上述任一实施例,全景贴赋模块320还用于:

将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,在两个相机位置间漫游的过程中,以将所述下一相机位置的全景图片贴赋于所述场景模型中。

基于上述任一实施例,全景贴赋模块320还用于:

对于均可见区域和/或均不可见区域,对当前相机位置和下一相机位置的全景图片做差值变换,根据差值变换结果进行全景贴赋;

对于只有其中一个位置可见的区域,使用可见位置的全景图片贴赋所述场景模型。

基于上述任一实施例,全景贴赋模块320还用于:

计算两张全景图片的颜色值之差,使当前相机位置的图像颜色渐变到下一相机位置的图像颜色。

图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(communicationsinterface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行三维漫游方法,该方法包括:在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将下一相机位置的全景图片贴赋于预加载的场景模型中。

此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的三维漫游方法,该方法包括:在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将下一相机位置的全景图片贴赋于预加载的场景模型中。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的三维漫游方法,该方法包括:在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将下一相机位置的全景图片贴赋于预加载的场景模型中。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。


技术特征:

1.一种三维漫游方法,其特征在于,包括:

在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;

根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。

2.根据权利要求1所述的三维漫游方法,其特征在于,所述获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息包括:

确定所述场景模型在当前相机位置的可见区域和/或不可见区域;

获取下一相机位置的待贴赋的全景图片;

根据所述场景模型在下一相机位置的深度信息,确定所述场景模型在下一相机位置的可见区域和/或不可见区域。

3.根据权利要求1所述的三维漫游方法,其特征在于,所述将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中包括:

将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,在两个相机位置间漫游的过程中,以将所述下一相机位置的全景图片贴赋于所述场景模型中。

4.根据权利要求3所述的三维漫游方法,其特征在于,所述将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,包括:

对于均可见区域和/或均不可见区域,对当前相机位置和下一相机位置的全景图片做差值变换,根据差值变换结果进行全景贴赋;

对于只有其中一个相机位置可见的区域,使用可见相机位置的全景图片贴赋所述场景模型。

5.根据权利要求4所述的三维漫游方法,其特征在于,所述对当前相机位置和下一相机位置的全景图片做差值变换包括:计算两张全景图片的颜色值之差,使当前相机位置的图像颜色渐变到下一相机位置的图像颜色。

6.一种三维漫游装置,其特征在于,包括:

获取可见性模块,用于获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;

全景贴赋模块,用于根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。

7.根据权利要求6所述的三维漫游装置,其特征在于,所述获取可见性模块还用于:

确定所述场景模型在当前相机位置的可见区域和/或不可见区域;

获取下一相机位置的待贴赋的全景图片;

根据所述场景模型在下一相机位置的深度信息,确定所述场景模型在下一相机位置的可见区域和/或不可见区域。

8.根据权利要求6所述的三维漫游装置,其特征在于,所述全景贴赋模块还用于:

将所述场景模型在当前相机位置和下一相机位置的可见区域和/或不可见区域进行对比,执行不同的贴赋策略,在两个相机位置间漫游的过程中,以将所述下一相机位置的全景图片贴赋于所述场景模型中。

9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述三维漫游方法的步骤。

10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述三维漫游方法的步骤。

技术总结
本发明提供一种三维漫游方法及装置,其中,所述方法包括:在全景漫游过程中,获取场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息;根据场景模型在当前相机位置的可见信息和/或不可见信息以及在下一相机位置的可见信息和/或不可见信息,在两个相机位置间漫游的过程中,将两个相机位置的全景图片依照不同策略贴赋于预加载的场景模型中。在未增加硬件成本以及渲染开销未明显增长的前提下,实现更自然的全景三维过渡,提高了漫游效果。

技术研发人员:张晶;王超鹏;叶静格;左凤然;程秀超
受保护的技术使用者:北京鼎联网络科技有限公司
技术研发日:2021.04.08
技术公布日:2021.07.30

转载请注明原文地址:https://doc.8miu.com/read-950209.html

最新回复(0)