一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

确定透明度的方法、装置、电子设备及存储介质与流程

2022-06-11 22:32:10 来源:中国专利 TAG:


1.本发明实施例涉及游戏技术领域,尤其涉及一种确定透明度的方法、装置、电子设备及存储介质。


背景技术:

2.在动画设计中,通常会设置内层模型与外层模型之间的半透明效果,例如,皮肤模型和衣服模型的半透明显示。相应的,半透明显示主要是依赖内层物体所反射的光经过一定距离后穿透外层物体并入射到人眼后所显示的效果。其中,各模型是由一个个点构成的,当内层物体上的点与外层物体上与其相对应的点的距离越远,半透明效果比较弱,反之半透明效果就相对比较强。
3.目前,确定半透明效果,主要是设定外层模型的透明度显示值,该透明度显示值通常是固定不变的,外层模型上的所有点依据设定的透明度显示值来实现透明显示,此种方式存在透明显示与实际情况存在一定的偏差,导致透明显示效果不佳以及用户体验较差的技术问题。


技术实现要素:

4.本发明提供一种确定透明度的方法、装置、电子设备及存储介质,以实现透明显示效果与实际相符,从而提高用户体验的技术效果。
5.第一方面,本发明实施例提供了一种确定透明度的方法,该方法包括:
6.确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息;
7.对每个目标检测点,确定与当前目标检测点相对应的目标重建函数,并将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息;所述第一子模型为包裹所述第二子模型局部的子模型;重建函数是基于目标检测点在球谐函数中各基函数上的投影系数值构建出来的;
8.根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
9.第二方面,本发明实施例还提供了一种确定透明度的装置,该装置包括:
10.相对拍摄角度信息确定模块,用于确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息;
11.距离信息确定模块,用于对每个目标检测点,确定与当前目标检测点相对应的目标重建函数,并将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息;所述第一子模型为包裹所述第二子模型局部的子模型;重建函数是基于目标检测点在球谐函数中各基函数上的投影系数值构建出来的;
12.透明显示模块,用于根据各目标检测点所对应的距离信息,确定每个目标检测点
的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
13.第三方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
14.一个或多个处理器;
15.存储装置,用于存储一个或多个程序,
16.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明实施例任一所述的确定透明度的方法。
17.第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明实施例任一所述的确定透明度的方法。
18.本实施例的技术方案,通过确定的目标拍摄角度,以及从顶点色和/或属性信息中调取投影系数值,目标检测点所对应的第一子模型和第二子模型之间的距离信息,进而确定透明度参数并进行显示,解决了以固定透明度显示值对第一子模型进行透明显示时透明显示与实际情况存在偏差而导致的透明显示效果不佳,用户体验较差的技术问题,实现了根据实际情况调整透明度参数,以使透明显示效果与实际理论效果相符,从而提高用户体验的技术效果。
附图说明
19.为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
20.图1为本发明实施例一所提供的一种确定透明度的方法的流程示意图;
21.图2为本发明实施例二所提供的一种确定透明度的方法的流程示意图;
22.图3为本发明实施例三所提供的一种确定透明度的方法的流程示意图;
23.图4为本发明实施例四所提供的一种确定透明度的方法的流程示意图;
24.图5为本发明实施例五所提供的一种确定透明度的装置的结构示意图;
25.图6为本发明实施例六所提供的一种电子设备的结构示意图。
具体实施方式
26.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
27.实施例一
28.图1为本发明实施例一所提供的一种确定透明度的方法的流程示意图,本实施例可适用于根据预先存储的投影系数值,并根据投影系数值确定出与各个目标检测点所对应的目标重建函数,以根据各目标检测点的目标重建函数确定出相应视觉角度下目标检测点所对应的第一子模型和第二子模型之间的距离信息,进而基于距离信息透明显示的情形,该方法可以由确定透明度的装置来执行,该装置可以通过软件和/或硬件的形式实现,该硬件可以是电子设备,可选的,电子设备可以是移动终端等。
29.s110、确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息。
30.其中,第一子模型与第二子模型是相对而言的,若应用场景为游戏场景,子模型可以是皮肤模型和衣服模型,可以将衣服所对应的模型作为第一子模型,皮肤所对应的模型作为第二子模型。目标检测点可以是第一子模型上预先设置的检测点;也可以是将第一子模型上的预先设置的划分为多个块,可以将每个块的中心点作为目标检测点;也可以是开发人员根据实际需求设置的检测点;当然,也可以是,第一子模型是由多个点构成的,可以将每个点均作为目标检测点。拍摄装置是用于观测和拍摄第一子模型的装置,相对拍摄角度是拍摄装置与第一子模型上每个目标检测点之间的相对角度。相对拍摄角度信息是根据拍摄装置与各目标检测点之间的位置信息来确定的。
31.具体的,拍摄装置与每个目标检测点所对应的目标拍摄角度存在差异,根据拍摄装置与第一子模型上每个目标检测点的相对位置关系,可以分别确定拍摄装置与每个目标检测点的相对角度信息,并可以将该角度信息作为相对拍摄角度信息。
32.s120、对每个目标检测点,确定与当前目标检测点相对应的目标重建函数,并将与当前目标检测点对应的相对拍摄角度信息输入至目标重建函数中,得到目标检测点在当前拍摄角度信息下第一子模型与第二子模型之间的距离信息。
33.其中,第一子模型为包裹第二子模型局部的子模型;重建函数是基于目标检测点在球谐函数中各基函数上的投影系数值构建出来的。每个目标检测点均存在一个与其相对应的目标重建函数。
34.为了清楚的介绍本实施例技术方案,可以以重建其中一个目标检测点的重建函数为例来介绍。
35.其中,目标检测点的重建函数是根据球谐函数对当前目标检测点的投影系数进行处理后,得到当前目标检测点向空间中各个方向发射物理射线时,物理射线与第二子模型碰撞时所对应的距离值构建出的函数。重建函数可以用于对输入的相对拍摄角度进行处理,以确定在该相对拍摄角度下目标检测点所对应的第一子模型与第二子模型之间的距离信息。
36.具体的,基于预先设置的球谐函数中的各个基函数对当前目标检测点所对应的投影系数值进行处理,可以得到当前目标检测点向空间中各个方向发射物理射线时,物理射线与第二子模型碰撞时的碰撞点与当前目标检测点的距离信息。根据当前目标检测点所对应的空间中各个方向的距离信息,构建当前目标检测点所对应的重建函数。
37.在确定当前目标检测点与目标拍摄装置之间的目标拍摄角度后,可以将目标拍摄角度输入至与当前目标检测点所对应的重建函数中,重建函数可以对目标拍摄角度进行处理,输出目标拍摄角度下当前目标检测点与目标拍摄装置所属直线与第二子模型碰撞点时,碰撞点与当前目标检测点之间的距离信息。
38.示例性的,在确定某个目标检测点a的重建函数后,并在确定该目标检测点与拍摄装置之间的相对拍摄角度为45
°
时,可以将相对拍摄角度输入至目标检测点a的重建函数值,可以得到目标检测点a在该角度下目标检测点a所对应的第一子模型和第二子模型之前的距离信息,如,得到的距离信息为5nm。
39.s130、根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,
并基于透明度信息显示第一子模型和第二子模型。
40.其中,透明度信息是用于表示模型显示时的透明程度,可以使用百分比来表示,例如:透明度为80%等。
41.需要说明的是,确定每个目标检测点的透明度参数均是采用相同的方式,为了清楚的介绍本实施例技术方案,以确定其中一个目标检测点的透明度参数为例来介绍。
42.具体的,根据与当前目标检测点所对应的第一子模型和第二子模型之间的距离信息,确定当前目标检测点的透明度参数可以是:根据距离信息在预先存储的距离信息与透明度参数之间的对应关系中确定透明度参数,也可以是根据预先设置的透明度参数计算模型来计算,将距离信息输入至透明度参数计算模型中,经过计算可以获取与该距离信息对应的透明度参数。
43.示例性的,将距离信息记为dist,若0nm<dist≤5nm,透明度参数为90%,5nm<dist≤10nm,透明度参数为80%,当dist=7.5nm时,对应的透明度参数为80%。
44.当然,也可以采用相应的计算方式来确定透明度参数,其中,透明度计算公式为ai=f(li),其中,ai表示第i个目标检测点,li表示第i个目标检测点所对应的第一子模型和第二子模型之间的距离信息,f为具有单调性,且是单调递减的函数。
45.在确定目标检测点的透明度参数之后,为了使第一子模型和第二子模型的视觉体验效果更好,可以将第一子模型上的目标检测点按照相对应的透明度参数进行显示,并将目标检测点与目标拍摄装置所属直线与第二子模型的交点按照相对应的透明度参数进行显示,以得到透明显示的效果。
46.根据各个目标检测点,确定各个目标检测点的透明度参数,可以实现将第一子模型和第二子模型进行透明显示的效果。具体的,根据各目标检测点所对应的距离信息,可以在预先存储的各个距离信息与透明度参数的对应关系中,确定与距离信息相对应透明度参数,可以包括第一子模型的透明度参数以及第二子模型的透明度参数,以便后续透明显示时使用。在确定目标拍摄角度下各目标检测点所对应的用于显示第一子模型和第二子模型的透明度参数后,基于上述透明度参数可以实现第一子模型和第二子模型相对位置的透明度显示效果。
47.本实施例的技术方案,通过确定的目标拍摄角度,以及从顶点色和/或属性信息中调取投影系数值,目标检测点所对应的第一子模型和第二子模型之间的距离信息,进而确定透明度参数并进行显示,解决了以固定透明度显示值对第一子模型进行透明显示时透明显示与实际情况存在偏差而导致的透明显示效果不佳,用户体验较差的技术问题,实现了根据实际情况调整透明度参数,以使透明显示效果与实际理论效果相符,从而提高用户体验的技术效果。
48.在上述技术方案的基础上,根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于透明度信息显示第一子模型和第二子模型,包括:针对每个目标检测点,根据当前目标检测点所对应的距离信息、第一子模型以及第二子模型的属性信息,确定与当前目标检测点的透明度信息;属性信息包括材质和/或颜色;基于与每个目标检测点所对应的透明度信息,调整第一子模型和第二子模型的显示信息。
49.其中,属性信息可以包括制作目标检测点时所采用的材质和/或颜色,例如,衣服采用的是深色系,那么透明度信息相对来说比较小;若第二子模型,即皮肤采用的颜色为深
色性,第一子模型,即衣服采用的颜色为浅色系的,则透明信息相对来说比较大,即透明显示的强度比较强。
50.具体的,在确定每个目标检测点所对应的第一子模型和第二子模型之间的距离信息后,可以获取第一子模型和第二子模型的属性信息,结合属性信息和距离信息,综合来确定每个目标检测点所对应的透明度信息,从而实现第一子模型和第二子模型透明显示的技术效果。
51.实施例二
52.图2为本发明实施例二所提供的一种确定透明度的方法的流程示意图,在上述实施例的基础上,可以根据球谐函数以及投影系数值重建出重建函数,以基于重建函数确定各目标检测点在与拍摄装置之间的相对拍摄角度下,各目标检测点所对应的距离信息,进而确定各目标检测点所对应的透明度参数,其具体实施方式可参见下述具体描述。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
53.参见图2,本实施例提供的确定透明度的方法包括:
54.s210、根据预先接收到的每个目标检测点在球谐函数中各基函数的投影系数值,确定与每个目标检测点所对应的目标重建函数。
55.其中,目标重建函数用于对输入的当前拍摄角度进行处理,得到与当前拍摄角度所对应的目标检测点所属第一子模型与第二子模型之间的距离信息。每个目标检测点均存在与其相对应的目标重建函数。在以每个目标检测点发射射线时,可以向空间中的各个方向发射物理射线,并确定各物理射线与第一子模型和第二子模型之间的距离信息,球谐函数对各个距离信息进行处理,可以将所有距离压缩为几个函数值,可以将此函数值作为投影系数值。通过球谐函数对每个目标检测点所对应的投影系数值处理,可以重建出与目标检测点所对应的球形函数,以便将相对拍摄拍摄角度输入至该球形函数,即重建函数中,得到该角度下的距离信息。
56.具体的,可以获取预先存储的与各目标检测点所对应的投影系数值,并基于球谐函数对投影系数值进行处理,重建出各目标检测点所对应的目标重建函数,该目标重建函数为可以确定各相对拍摄角度下第一子模型与第二子模型距离信息的函数。
57.s220、确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息。
58.s230、将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息。
59.s240、根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
60.本发明实施例的技术方案,可以根据球谐函数对各目标检测点所对应的投影系数值进行重建处理,得到各目标检测点的重建函数,在将各目标检测点所对应的相对拍摄角度输入至相应的重建函数中,可以得到各目标检测点所对应的第一子模型和第二子模型之间的距离信息,进一步结合距离信息确定透明度参数信息,实现了不同目标检测点对应不同透明度参数,以在基于透明度参数显示第一子模型时,提高了透明显示效果。
61.实施例三
62.图3为本发明实施例三所提供的一种确定透明度的方法流程示意图。在根据预先接收到的每个目标检测点在球谐函数中各基函数的系数值,确定与每个目标检测点所对应的目标重建函数之前,还包括:确定各目标检测点的投影系数值。其具体的实施方式可以参见下述介绍,其中,与上述实施例相同或者相应的技术术语在此不再赘述。
63.如图3所示,所述方法包括:
64.s310、确定每个目标检测点在所述球谐函数中各基函数上的投影系数值。
65.在本实施例中,确定各目标检测点的投影系数值,可以是:对第一子模型上的各目标检测点,确定当前目标检测点向各方向发射物理射线透过第二子模型时的待处理碰撞点信息,根据所述当前目标检测点与各待处理碰撞点信息,确定当前目标碰撞在各方向上距离值。根据每个目标检测点在各方向上的距离值,确定与每个目标检测点相对应的距离函数。基于所述球谐函数对各目标检测点的距离函数进行处理,得到各目标检测点在球谐函数中各基函数上投影系数值;所述球谐函数中包括多个基函数。
66.其中,第一子模型与第二子模型是相对而言的,若应用场景为皮肤模型和衣服模型时,可以将衣服所对应的模型作为第一子模型,皮肤所对应的模型作为第二子模型。目标检测点可以是第一子模型上预先设置的检测点;也可以是将第一子模型上的预先设置的划分为多个块,可以将每个块的中心点作为目标检测点;也可以是开发人员根据实际需求设置的检测点;当然,也可以是,第一子模型是由多个点构成的,可以将每个点均作为目标检测点。距离函数是与每个目标检测点相对应的,即一个目标检测点对应一个距离函数。针对每个距离函数,可以理解为:可以根据某个目标检测点在空间中的各个方向上与第二子模型之间的相对距离信息确定出来的。
67.由于是球面分布的距离函数,每个目标检测点在各方向与第二子模型之间的距离,可以是:以目标检测点为球心,向空间中各个方向发射物理射线,确定各条物理射线与第二子模型的交点与目标检测点之间距离信息。
68.示例性的,若目标检测点有1000个,距离函数的数量也为1000个,其中每个距离函数可以是基于某个目标检测点在各个方向,与第二子模型之间的距离确定出的距离函数。
69.需要说明的是,确定每个目标检测点的球面分布距离函数均是采用相同的方式,为了清楚的介绍本实施例技术方案,以确定其中一个目标检测点的球面分布函数为例来介绍。
70.具体的,可以以第一子模型上的一个目标检测点作为球心,向空间中的各个方向发射物理射线,确定各条物理射线与第二子模型的交点与目标检测点之间距离信息。若物理射线在该射线的方向上与第二子模型存在交点,则将该交点与目标检测点的距离作为目标检测点在该方向上与第二子模型之间的距离信息。若球形射线在该射线的方向上与第二子模型不存在交点,则可以将预设的最大距离信息作为目标检测点在该方向上与第二子模型之间的距离信息。
71.根据目标检测点在空间中的各个方向上的确定的距离信息,可以确定目标检测点的球面分布的距离函数,例如:目标检测点a的球面分布距离函数为
[0072][0073]
其中,i表示第i个方向,f(i)表示第i个方向上的距离信息,dist_i表示具体的距离信息,n表示方向的总数量。
[0074]
需要说明的是,每个目标检测点的球面分布的距离函数是一个复合函数,该复合函数中子函数的个数可以根据预设的采样数量确定,默认的可以是16
×
32的精度,即复合函数中包含512个子函数。当采样数量越大时,复合函数中的子函数数量越多,精度越高。具体的采样数量可以根据实际需求来确定。
[0075]
还需要说明的是,确定每个目标检测点的投影系数值均是采用相同的方式,为了清楚的介绍本实施例技术方案,以确定其中一个目标检测点的的投影系数值为例来介绍。
[0076]
其中,球谐函数由多个基函数构成,可以使用基函数对每个距离函数进行处理。球谐函数不同的阶数对应的基函数数量不同,二阶球谐函数包含4个基函数,三阶球谐函数包含9个基函数,四阶球谐函数包含16个基函数等。投影系数值是根据球谐函数中的基函数对距离函数进行处理后,得到的系数值,其系数值的数量与基函数的数量相同。根据球谐函数与其对应的多个基函数可以对目标检测点的球面分布距离函数进行压缩,以得到投影系数值。
[0077]
示例性的:球谐函数为二阶,即包括4个基函数,那么将目标检测点所对应的距离函数输入至该球谐函数中可以得到4个投影系数值,实现了将距离函数压缩为4个投影系数值的效果。
[0078]
需要说明的是,球谐函数的阶数越高,在重建时重建出来的球形与实际球形的相似度就越高,因此开发人员可以根据实际需求选择不同阶数的球谐函数。越高阶的球谐函数包含的基函数越多,在后续根据球谐函数以及投影系数值还原距离函数时的还原程度越高。
[0079]
具体的,在确定球谐函数的具体阶数后,可以将目标检测点的球面分布的距离函数输入至球谐函数中,基于球谐函数中的基函数对距离函数进行处理,以获得上述距离函数在各个基函数上的投影系数值。由此可知,投影系数值的数量与球谐函数中的基函数的数量相等。
[0080]
需要说明的是,每个目标检测点的球面分布的距离函数可以相同也可以不同,当不同目标检测点在空间中各个方向上的距离信息都相同时,不同目标检测点所对应的距离函数相同,当不同目标检测点在空间中各个方向上的距离信息存在至少一个不同时,不同目标检测点所对应的距离函数不同,其中,距离函数是否相同是根据目标检测点在空间中各个方向上的距离信息来确定的。将不同的距离函数输入至预先设置的球谐函数进行处理后,得到的投影系数值不同。
[0081]
s320、将每个目标检测点的投影系数值按照空间位置关系对应存储至至少一副图像中,并将所述至少一副图像存储至目标位置,以从所述目标位置获取所有目标检测点在
对应阶球谐函数上的投影系数值。
[0082]
在上述技术方案的基础上,在确定各目标检测点所对应的投影系数值之后,还包括,将投影系数值存储至至少一副图像中,以从至少一副图像中获取相应目标检测点的投影系数值,从而重建出相应的目标重建函数。
[0083]
可选的,将每个目标检测点的投影系数值按照空间位置关系对应存储至至少一副图像中,并将所述至少一副图像存储至目标位置,以从所述目标位置获取所有目标检测点在对应阶球谐函数上的投影系数值。
[0084]
需要说明的是,存储每个目标检测点的投影系数值的方式是相同的,可以以存储某个目标检测点所对应的投影系数值为例来介绍。
[0085]
其中,若球谐函数是二阶的,则基函数的数量可以有四个,通过球谐函数中的基函数对距离函数进行处理后,可以得到四个投影系数值。可以将投影系数值按照空间坐标位置信息存储至图像中,可选的,投影系数值有四个,则可以采用四幅图像来存储投影系数值,每幅图像中的每个像素点存储一个投影系数值。可以将至少一副图像存储至引擎中,可以将存储至引擎中的位置作为目标位置。将图像存储至目标位置的好处在于:可以从目标位置获取存储的投影系数值,以便根据投影系数值构建出重建函数。
[0086]
具体的,可以根据投影系数值的数量,确定图像的数量,并将投影系数值按照空间坐标信息存储至图像中的相应像素点。
[0087]
示例性的,球谐函数的阶数为3阶,则球谐函数中基函数的数量为9个,则每个目标检测点均存在9个投影系数值。此时,可以确定九幅图像,并按照空间坐标信息将每个目标检测点的九个投影系数值存储至每幅图像中的对应像素点中。
[0088]
s330、针对各目标检测点,从目标位置调取至少一副图像,并确定当前目标检测点在至少一副图像中的目标像素点位置,并根据调取的各投影系数值,得到当前目标检测点所对应的目标重建函数。
[0089]
在实际应用过程中,若需要透明显示第一子模型上的各个目标检测点时,需要确定各目标检测点在相对拍摄角度下的距离信息,进而根据距离信息确定透明度参数。在确定各目标检测点在相对拍摄角度下的距离信息时,可以根据目标位置存储的投影系数值重建出与各目标检测点所对应的重建函数,以便将相对拍摄角度输入至相应的重建函数中,得到各目标检测点所对应的距离信息。
[0090]
具体的,针对每个目标检测点,可以获取当前目标检测点空间坐标信息,可以根据空间坐标信息,确定当前目标检测点在每一幅图像中的目标像素点位置,可以分别从每一幅图像的目标像素点位置获取存储的投影系数值。根据球谐函数对各存储的投影系数值进行重建处理,得到当前目标检测点向空间中各个方向发射物理射线时,各物理射线所对应当前目标检测点与第二子模型碰撞时,当前目标检测点与待碰撞点之间的距离信息,并根据各距离信息得到的距离函数,即每个目标检测点所对应的目标重建函数为距离函数。
[0091]
s340、将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息。
[0092]
s350、根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
[0093]
本发明实施例的技术方案,通过预先确定与各个目标检测点相对应的投影系数值,并将投影系数值存储至预设数量的贴图中,以在透明显示时,可以从相应位置调取存储的投影系数值,进而基于投影系数值重建出重建函数,从而基于重建函数确定各目标检测点在不同相对拍摄角度下的距离信息。
[0094]
实施例四
[0095]
图4为本发明实施例四所提供的一种确定透明度的方法流程示意图。在前述实施例的基础上,确定距离函数的具体确定方式,可以参见本实施例技术方案。其中与上述各实施例相同或相应的术语的解释在此不再赘述。
[0096]
如图4所示,所述方法包括:
[0097]
s410、对第一子模型上的各目标检测点,确定当前目标检测点向各方向发射物理射线透过第二子模型时的各待处理碰撞点信息。
[0098]
其中,各待处理碰撞点的信息可以包括各待碰撞点的位置信息,例如:空间坐标信息等。可选的,以当前目标检测点为球心,向空间中的任意方向发射物理射线,记录各物理射线与所述第二子模型相交时的待处理碰撞点,并确定各待处理碰撞点与目标检测点之间的距离值。
[0099]
具体的,可以是基于第一子模型上的各目标检测点向各个方向发射物理射线,上述各条物理射线可能会透过第二子模型,当物理射线透过第二子模型时,确定物理射线与第二子模型存在待处理碰撞点,并将物理射线与第二子模型的交点为待处理碰撞点。待处理碰撞点信息可以是用于描述该点位置的信息,如空间坐标信息。因此,根据待处理碰撞点可以确定与待处理碰撞点相对应的空间坐标信息为待处理碰撞点信息。
[0100]
在本实施例中,确定待处理碰撞点信息可以是:可以以当前目标检测点为球心,向空间任意方向发射物理射线,确定各物理射线透过第二子模型时的待处理碰撞点信息。
[0101]
具体的,可以将从第一子模型上的各目标检测点向各个方向发射物理射线看作是以当前目标检测点为球心,向球面的各个方向发射物理射线。若物理射线透过第二子模型,则将物理射线与第二子模型交点的空间坐标信息作为待处理碰撞点信息。
[0102]
s420、根据当前目标检测点与各待处理碰撞点信息,确定当前目标检测点在各方向上与所述第二子模型之间的距离信息。
[0103]
当物理射线与第二子模型存在待处理碰撞点时,则确定待处理碰撞点信息与当前目标检测点的距离信息。
[0104]
具体的,当存在待处理碰撞点时,可以根据当前目标检测点的空间坐标信息以及待处理碰撞点的空间坐标信息,使用空间中两点之间距离的计算公式计算得出待处理碰撞点信息与当前目标检测点的距离信息。
[0105]
当物理射线与第二子模型不存在待处理碰撞点时,则将与待处理碰撞点所对应的距离信息设置为设定值。
[0106]
具体的,若物理射线不透过第二子模型,如,发射的物理射线与第二子模型是平行的或者是朝着背向第二子模型的方向发射的物理射线,此时物理射线与第二子模型之间不存在碰撞点,可以将此时的待处理碰撞信息设定为设定值。该设定值可以是待处理碰撞点信息与当前目标检测点的最大距离信息。
[0107]
根据与每个待处理碰撞点所对应的距离信息或设定值,确定当前目标检测点在各
方向上与第二子模型之间的距离信息。
[0108]
具体的,基于上述两种情况,可以确定当前目标检测点发射的各条物理射线所对应的距离信息或设定值,并将距离信息或设定值作为当前目标检测点在各方向上与第二子模型之间的距离信息。
[0109]
s430、根据每个目标检测点在各方向上的距离信息,确定相应目标检测点的球面分布的距离函数。
[0110]
具体的,将每个目标检测点在空间中各个方向上的距离信息作为目标检测点的球面分布的距离函数中的一个子函数,可以得到目标检测点的球面分布的距离函数。该距离函数中的子函数数量与目标检测点在球面各个方向上的距离信息数量相同。
[0111]
需要说明的是,为了提高精度,可以增加子函数的数量,即增加物理射线的密度,具体物理射线的数量可以根据实际需求来确定。
[0112]
s440、确定球谐函数的阶数以及距离函数,确定基函数的数量和基函数的表示方式。
[0113]
其中,不同阶数的球谐函数中包含的基函数数量不同,例如:二阶球谐函数包含4个基函数,三阶球谐函数包含9个基函数,四阶球谐函数包含16个基函数等。球谐函数的阶数越高,在后续使用重建函数进行重建时的效果会越好,具体的阶数需要根据实际需求来设定。
[0114]
具体的,根据需求确定球谐函数的阶数为a,那么可以确定球谐函数中的基函数数量为a2。根据距离函数与投影系数值的关系可以确定各个基函数的表示方式。
[0115]
s450、针对每个目标检测点,基于球谐函数中的各基函数对当前目标检测点的距离函数进行处理,得到当前目标检测点的投影系数值。
[0116]
需要说明的是,确定每个目标检测点的投影系数值均是采用相同的方式,为了清楚的介绍本实施例技术方案,以确定其中一个目标检测点的的投影系数值为例来介绍。
[0117]
其中,投影系数值的数量与基函数的数量相同。投影系数值是使用预先设置的球谐函数中的各个基函数对距离函数进行计算确定的值。
[0118]
具体的,基于每一个基函数对目标检测点的距离函数进行处理都可以得到与该基函数对应的投影系数值,因此,投影系数值的数量与基函数的数量相同。将目标检测点的距离函数输入至球谐函数的各个基函数中,可以获得上述距离函数在各个基函数上的投影系数值。
[0119]
需要说明的是,每个目标检测点的球面分布的距离函数不同,将不同的距离函数输入至预先设置的球谐函数进行处理后,得到的投影系数值不同。
[0120]
s460、将每个目标检测点的投影系数值按照空间位置关系对应存储至至少一副图像中,并将至少一副图像存储至目标位置,以从目标位置获取所有目标检测点在对应阶球谐函数上的投影系数值。
[0121]
其中,目标位置可以是存储至引擎中。引擎可以是已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。目标位置可以是引擎中用于存储数据和/或信息的存储空间,在本实施例中是用于存储目标检测点的坐标信息的存储空间。
[0122]
具体的,在确定当前目标检测点的投影系数值的数量后,可以获取与系数值数量相对应的多幅图像。根据当前目标检测点的空间坐标信息确定该空间坐标在图像中的存储
位置,将当前目标检测点的投影系数值存储至图像中相应的存储位置中,以便从目标位置的图像中获取存储的投影系数值,从而重建出重建函数。即,若需要使用某一个目标检测点所对应的投影系数值,则可以根据目标检测点的空间坐标信息在引擎中的目标位置确定与该空间坐标信息相对应的投影系数值,以供后续重建函数使用。
[0123]
s470、确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息。
[0124]
s480、对每个目标检测点,从目标位置获取当前目标检测点的投影系数值,并得到当前目标检测点的目标重建函数,将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息。
[0125]
s490、根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
[0126]
在上述技术方案的基础上,需要说明的是,在确定与每个目标检测点相对应的距离函数后,还想要基于球谐函数对距离函数进行压缩处理得到投影系数值的好处在于:每个目标检测点所对应的距离函数可以是一个或者多个,此时需要存储的数据量比较大,为了降低存储空间的占用率,可以将投影函数压缩为几个投影系数值。
[0127]
本发明实施例的技术方案,通过确定第一子模型上每个目标检测点的球面分布的距离函数,基于预先设置的球谐函数对距离函数进行处理确定投影系数并存储至顶点色和/或属性信息中,以根据存储的信息以及重建函数确定目标拍摄角度下的透明度参数并显示,解决了以固定透明度显示值对第一子模型进行透明显示时透明显示与实际情况存在偏差而导致的透明显示效果不佳,用户体验较差的技术问题,实现了根据实际情况调整透明度参数,以使透明显示效果与实际理论效果相符,从而提高用户体验的技术效果。
[0128]
实施例五
[0129]
图5为本发明实施例五所提供的一种确定透明度的装置结构示意图。如图5所示,所述装置包括:相对拍摄角度信息确定模块510、距离信息确定模块520以及透明显示模块530。
[0130]
其中,相对拍摄角度信息确定模块510,用于确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息;距离信息确定模块520,用于对每个目标检测点,确定与当前目标检测点相对应的目标重建函数,并将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息;所述第一子模型为包裹所述第二子模型局部的子模型;重建函数是基于目标检测点在球谐函数中各基函数上的投影系数值构建出来的;透明显示模块530,用于根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
[0131]
在上述技术方案的基础上,所述装置还包括:确定目标重建函数模块,还用于
[0132]
根据预先接收到的每个目标检测点在球谐函数中各基函数的系数值,确定与每个目标检测点所对应的目标重建函数;目标重建函数用于对输入的当前拍摄角度进行处理,得到与当前拍摄角度所对应的目标检测点所属第一子模型与第二子模型之间的距离信息。
[0133]
在上述各技术方案的基础上,所述确定目标重建函数模块,在用于根据预先接收
到的每个目标检测点在球谐函数中各基函数的系数值,确定与每个目标检测点所对应的目标重建函数之前,还用于:确定每个目标检测点在所述球谐函数中各基函数上的投影系数值;所述确定每个目标检测点在所述球谐函数中各基函数上的投影系数值,包括:对第一子模型上的各目标检测点,确定当前目标检测点向各方向发射物理射线透过第二子模型时的待处理碰撞点信息,根据所述当前目标检测点与各待处理碰撞点信息,确定当前目标碰撞在各方向上距离值;根据每个目标检测点在各方向上的距离值,确定与每个目标检测点相对应的距离函数;基于所述球谐函数对各目标检测点的距离函数进行处理,得到各目标检测点在球谐函数中各基函数上投影系数值;所述球谐函数中包括多个基函数。
[0134]
在上述各技术方案的基础上,所述距离信息确定模块,用于确定当前目标检测点向各方向发射物理射线透过第二子模型时的待处理碰撞点信息,根据所述当前目标检测点与各待处理碰撞点信息,确定当前目标碰撞在各方向上距离值,还用于:以当前目标检测点为球心,向空间中的任意方向发射物理射线,记录各物理射线与所述第二子模型相交时的待处理碰撞点,并确定各待处理碰撞点与目标检测点之间的距离值;若物理射线与所述第二子模型不存在待处理碰撞点时,将与所述物理射线所对应的距离值标记为设定值;基于与各物理射线所对应的距离值和设定值,确定所述当前目标检测点在各方向上的距离值。
[0135]
在上述各技术方案的基础上,所述装置还包括:投影系数值确定模块,用于:确定所述球谐函数的阶数,并根据所述阶数确定基函数的表示方式以及基函数的数量;针对每个目标检测点,基于各基函数对当前目标检测点的距离函数进行处理,得到所述当前目标检测点在基函数方向上投影系数值;所述投影系数值的数量与所述基函数的数量相同。
[0136]
在上述各技术方案的基础上,所述装置还包括:投影系数值存储模块,还用于将每个目标检测点的投影系数值按照空间位置关系对应存储至至少一副图像中,并将所述至少一副图像存储至目标位置,以从所述目标位置获取所有目标检测点在对应阶球谐函数上的投影系数值。
[0137]
在上述各技术方案的基础上,所述目标重建函数确定模块,还用于:从所述目标位置调取所述至少一副图像,并确定所述当前碰撞点在所述至少一副图像中的目标像素点位置;分别从所述至少一副图像中的目标像素点位置处,调取存储的各投影系数值;基于各投影系数值以及球谐函数,确定与所述目标检测点所对应的目标重建函数。
[0138]
在上述各技术方案的基础上,所述距离信息确定模块,还用于:确定当前目标检测点与所述拍摄装置所对应的相对拍摄角度信息;将所述相对拍摄角度信息输入至所述目标重建函数中,确定所述当前碰撞点在所述相对拍摄角度下所对应的距离信息,所述距离信息为所述目标检测点和所述拍摄装置所属直线与第二子模型碰撞时,目标检测点与所述第二子模型碰撞点之间的距离信息。
[0139]
在上述各技术方案的基础还是那个,所述装置还包括:透明度信息确定模块,还用于根据与各目标检测点所对应的距离信息,按照预先建立的距离信息和透明度信息之间的对应关系,确定与每个目标检测点相对应的透明度信息。
[0140]
在上述各技术方案的基础上,所述装置还包括透明显示模块,用于针对每个目标检测点,根据当前目标检测点所对应的距离信息、第一子模型以及第二子模型的属性信息,确定与所述当前目标检测点的透明度信息;所述属性信息包括材质和/或颜色;基于与每个目标检测点所对应的透明度信息,调整所述第一子模型和所述第二子模型的显示信息。
[0141]
本实施例的技术方案,通过确定第一子模型上每个目标检测点的球面分布的距离函数,基于预先设置的球谐函数对距离函数进行处理确定投影系数并存储至顶点色和/或属性信息中,以根据存储的信息以及重建函数确定目标拍摄角度下的透明度参数并显示,解决了以固定透明度显示值对第一子模型进行透明显示时透明显示与实际情况存在偏差而导致的透明显示效果不佳,用户体验较差的技术问题,实现了根据实际情况调整透明度参数,以使透明显示效果与实际理论效果相符,从而提高用户体验的技术效果。
[0142]
本发明实施例所提供的确定透明度的装置可执行本发明任意实施例所提供的确定透明度的方法,具备执行方法相应的功能模块和有益效果。
[0143]
值得注意的是,上述确定透明度的装置所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护范围。
[0144]
实施例六
[0145]
图6为本发明实施例六提供的一种电子设备的结构示意图。图6示出了适于用来实现本发明实施例实施方式的示例性电子设备60的框图。图6显示的电子设备60仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0146]
如图6所示,电子设备60以通用计算设备的形式表现。电子设备60的组件可以包括但不限于:一个或者多个处理器或者处理单元601,系统存储器602,连接不同系统组件(包括系统存储器602和处理单元601)的总线603。
[0147]
总线603表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
[0148]
电子设备60典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备60访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0149]
系统存储器602可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)604和/或高速缓存存储器605。电子设备60可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统606可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线603相连。存储器602可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0150]
具有一组(至少一个)程序模块607的程序/实用工具608,可以存储在例如存储器602中,这样的程序模块607包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块607通常执行本发明所描述的实施例中的功能和/或方法。
[0151]
电子设备60也可以与一个或多个外部设备609(例如键盘、指向设备、显示器610等)通信,还可与一个或者多个使得用户能与该电子设备60交互的设备通信,和/或与使得
该电子设备60能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口611进行。并且,电子设备60还可以通过网络适配器612与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器612通过总线603与电子设备60的其它模块通信。应当明白,尽管图6中未示出,可以结合电子设备60使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0152]
处理单元601通过运行存储在系统存储器602中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的确定透明度的方法。
[0153]
实施例七
[0154]
本发明实施例七还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行确定透明度的方法,该方法包括:
[0155]
确定拍摄装置与第一子模型上每个目标检测点所对应的相对拍摄角度信息;
[0156]
对每个目标检测点,确定与当前目标检测点相对应的目标重建函数,并将与所述当前目标检测点对应的相对拍摄角度信息输入至所述目标重建函数中,得到所述目标检测点在所述当前拍摄角度信息下第一子模型与第二子模型之间的距离信息;所述第一子模型为包裹所述第二子模型局部的子模型;重建函数是基于目标检测点在球谐函数中各基函数上的投影系数值构建出来的;
[0157]
根据各目标检测点所对应的距离信息,确定每个目标检测点的透明度信息,并基于所述透明度信息显示第一子模型和所述第二子模型。
[0158]
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0159]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0160]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0161]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明实施例操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语
言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0162]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献