System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及计算机视觉技术,尤其是一种三维模型的视角转换方法和装置。
技术介绍
1、随着虚拟现实(vr)、增强现实(ar)等新兴技术的崛起,3d建模在科技产业和创意产业中的应用越发广泛。vr和ar都依赖于三维模型来构建沉浸式的虚拟环境,使得用户可以与虚拟物体和场景进行自然交互。三维模型作为三维计算机图形学的基本要素尤其扮演着越来越为重要的角色。为了在真实应用程序中取得更好的运行结果,就要求各类三维模型相关的分析建模算法拥有更高的计算精度。三维模型的视角转换常常作为其他三维模型相关算法的预处理工作。当现有技术中的视角转换,通常存在无法准确转换的目标视角的问题。
技术实现思路
1、为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种三维模型的视角转换方法和装置。
2、根据本公开实施例的一个方面,提供了一种三维模型的视角转换方法,包括:
3、获得在第一视角下展示的预设三维模型;其中,所述预设三维模型在所述第一视角下显示至少一个标签,所述预设三维模型中包括至少一个三维子模型,每个所述三维子模型对应一个所述标签;
4、响应于接收到对所述至少一个标签中的目标标签的触发操作,确定所述目标标签的坐标点相对所述预设三维模型的底面的标签高度值;
5、基于所述标签高度值和预设角度,确定所述目标标签对应的目标位置;
6、基于所述目标位置实现第二视角展示所述预设三维模型;其中,所述预设三维模型在所述第二视角下至少显示所述目标标签对应的三维子模
7、可选地,所述确定所述目标标签的坐标点相对所述预设三维模型的底面的标签高度值,包括:
8、确定在模型三维坐标系下,所述预设三维模型的底面的第一高度值和所述目标标签的坐标点的第二高度值;
9、基于所述第一高度值和所述第二高度值,确定所述标签高度值。
10、可选地,所述确定在模型三维坐标系下,所述预设三维模型的底面的第一高度值和所述目标标签的坐标点的第二高度值,包括:
11、确定所述预设三维模型的包围盒;
12、基于所述包围盒确定所述预设三维模型的底面在所述模型三维坐标系中纵轴的坐标值,基于所述坐标值确定所述第一高度值;
13、基于所述目标标签的坐标点对应的三维坐标中的纵轴坐标值,确定所述第二高度值。
14、可选地,所述基于所述标签高度值和预设角度,确定所述目标标签对应的目标位置,包括:
15、基于所述标签高度值和所述预设角度,确定目标高度值;
16、基于所述目标高度值,确定在模型三维坐标系下的一个目标平面;
17、在所述目标平面上确定一个圆形轨迹;
18、将所述圆形轨迹上的至少一个坐标点确定为所述目标位置。
19、可选地,所述基于所述标签高度值和所述预设角度,确定目标高度值,包括:
20、基于所述标签高度值与预设参数,确定参考高度值;
21、基于所述参考高度值与所述预设角度的三角函数值的乘积,以及所述标签高度值,确定所述目标高度值。
22、可选地,所述在所述目标平面上确定一个圆形轨迹,包括:
23、基于所述目标高度值和所述目标标签的坐标点的三维坐标,确定中心点;
24、基于所述标签高度值和所述预设角度,确定长度值;
25、基于所述中心点作为圆心,基于所述长度值作为半径,确定所述圆形轨迹。
26、可选地,所述将所述圆形轨迹上的至少一个坐标点确定为所述目标位置,包括:
27、按照预设数量对所述圆形轨迹进行分割,在所述圆形轨迹上确定所述预设数量的坐标点作为参考点;
28、基于所述预设数量的参考点,确定所述目标位置。
29、可选地,所述基于所述预设数量的参考点,确定所述目标位置,包括:
30、对所述预设数量的参考点中的每个参考点执行碰撞测试,确定每个所述参考点是否通过碰撞测试;
31、根据每个所述参考点是否通过碰撞测试的结果,确定至少一个通过碰撞测试的参考点;
32、基于所述至少一个通过碰撞测试的参考点,确定所述目标位置。
33、可选地,所述对所述预设数量的参考点中的每个参考点执行碰撞测试,确定每个所述参考点是否通过碰撞测试,包括:
34、针对所述预设数量的参考点中的每个参考点,以所述参考点作为原点,向所述目标标签的坐标点建立射线,得到参考射线;
35、根据所述参考射线,确定所述参考点是否通过碰撞测试。
36、可选地,所述根据所述参考射线,确定所述参考点是否通过碰撞测试,包括:
37、根据所述参考射线与所述预设三维模型的交点和所述参考点之间的距离,确定第一距离;
38、根据所述参考点到所述目标标签的坐标点的距离,确定第二距离;
39、根据所述第一距离和所述第二距离之间的关系,确定所述参考点是否通过碰撞测试。
40、可选地,所述基于所述至少一个通过碰撞测试的参考点,确定所述目标位置,包括:
41、基于所述至少一个通过碰撞测试的参考点在所述圆形轨迹上的位置,确定所述至少一个参考点的相邻关系;
42、基于所述相邻关系,对所述至少一个参考点进行聚类,得到至少一个参考点集;其中,每个所述参考点集中包括至少一个参考点,所述参考点集中的每个参考点与所述参考点集中的至少一个其他参考点相邻;
43、基于包括参考点数量最多的所述参考点集,确定所述目标位置。
44、可选地,所述基于包括参考点数量最多的所述参考点集,确定所述目标位置,包括:
45、响应于所述参考点集中包括的参考点数量为偶数,计算所述参考点集中包括的多个参考点中中心位置的两个参考点在所述圆形轨迹上的中点,将所述中点作为所述目标位置;
46、响应于所述参考点集中包括的参考点数量为奇数,将所述参考点集中包括的多个参考点中中心位置的参考点作为所述目标位置。
47、根据本公开实施例的另一方面,提供了一种三维模型的视角转换装置,包括:
48、第一模型展示模块,用于获得在第一视角下展示的预设三维模型;其中,所述预设三维模型在所述第一视角下显示至少一个标签,所述预设三维模型中包括至少一个三维子模型,每个所述三维子模型对应一个所述标签;
49、操作接收模块,用于响应于接收到对所述至少一个标签中的目标标签的触发操作,确定所述目标标签的坐标点相对所述预设三维模型的底面的标签高度值;
50、目标位置确定模块,用于基于所述标签高度值和预设角度,确定所述目标标签对应的目标位置;
51、第二模型展示模块,用于基于所述目标位置实现第二视角展示所述预设三维模型;其中,所述预设三维模型在所述第二视角下至少显示所述目标标签对应的三维子模型。
52、可选地,所述操作接收模块,具体用于确定在本文档来自技高网...
【技术保护点】
1.一种三维模型的视角转换方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标标签的坐标点相对所述预设三维模型的底面的标签高度值,包括:
3.根据权利要求2所述的方法,其特征在于,所述确定在模型三维坐标系下,所述预设三维模型的底面的第一高度值和所述目标标签的坐标点的第二高度值,包括:
4.根据权利要求1-3任一所述的方法,其特征在于,所述基于所述标签高度值和预设角度,确定所述目标标签对应的目标位置,包括:
5.根据权利要求4所述的方法,其特征在于,所述基于所述标签高度值和所述预设角度,确定目标高度值,包括:
6.根据权利要求4或5所述的方法,其特征在于,所述在所述目标平面上确定一个圆形轨迹,包括:
7.根据权利要求4-6任一所述的方法,其特征在于,所述将所述圆形轨迹上的至少一个坐标点确定为所述目标位置,包括:
8.根据权利要求7所述的方法,其特征在于,所述基于所述预设数量的参考点,确定所述目标位置,包括:
9.根据权利要求8所述的方法,其特征在于,所述对
10.根据权利要求9所述的方法,其特征在于,所述根据所述参考射线,确定所述参考点是否通过碰撞测试,包括:
11.根据权利要求8-10任一所述的方法,其特征在于,所述基于所述至少一个通过碰撞测试的参考点,确定所述目标位置,包括:
12.根据权利要求11所述的方法,其特征在于,所述基于包括参考点数量最多的所述参考点集,确定所述目标位置,包括:
13.一种三维模型的视角转换装置,其特征在于,包括:
...【技术特征摘要】
1.一种三维模型的视角转换方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标标签的坐标点相对所述预设三维模型的底面的标签高度值,包括:
3.根据权利要求2所述的方法,其特征在于,所述确定在模型三维坐标系下,所述预设三维模型的底面的第一高度值和所述目标标签的坐标点的第二高度值,包括:
4.根据权利要求1-3任一所述的方法,其特征在于,所述基于所述标签高度值和预设角度,确定所述目标标签对应的目标位置,包括:
5.根据权利要求4所述的方法,其特征在于,所述基于所述标签高度值和所述预设角度,确定目标高度值,包括:
6.根据权利要求4或5所述的方法,其特征在于,所述在所述目标平面上确定一个圆形轨迹,包括:
7.根据权利要求4-6任一所述的方法,其特征在于,所述...
【专利技术属性】
技术研发人员:王怡丁,李浩正,
申请(专利权)人:如你所视北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。