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

虚拟现实模型的处理方法和装置、电子设备和存储介质与流程

2022-07-23 07:09:59 来源:中国专利 TAG:


1.本技术属于vr(virtual reality,虚拟现实)看房技术领域,具体涉及一种虚拟现实模型的处理方法和装置、电子设备和存储介质。


背景技术:

2.在相关技术中,为了提高看房效率,出现了vr看房的场景。在vr看房前,需要通建立房间的vr模型,而为了在展示过程中保持模型方向与现实房间一致,需要依赖人工对生成的三维模型进行摆正,摆正处理效率低。


技术实现要素:

3.本技术实施例的目的是提供一种虚拟现实模型的处理方法和装置、电子设备和存储介质,能够解决房间vr模型的摆正依赖人工操作,摆正处理效率低的问题。
4.第一方面,本技术实施例提供了一种虚拟现实模型的处理方法,包括:
5.在待处理模型中确定n个第一平面,其中,n为正整数;
6.对n个第一平面进行聚类处理,得到目标平面类别;
7.根据目标平面类别对应的平面法向量,确定待处理模型的主轴信息;
8.基于主轴信息,调整待处理模型的方向,得到处理后的目标模型。
9.第二方面,本技术实施例提供了一种虚拟现实模型的处理装置,包括:
10.确定模块,用于在待处理模型中确定n个第一平面,其中,n为正整数;
11.处理模块,用于对n个第一平面进行聚类处理,得到目标平面类别;
12.确定模块,还用于根据目标平面类别对应的平面法向量,确定待处理模型的主轴信息;
13.处理模块,还用于基于主轴信息,调整待处理模型的方向,得到处理后的目标模型。
14.第三方面,本技术实施例提供了一种电子设备,包括处理器和存储器,存储器存储可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。
15.第四方面,本技术实施例提供了一种可读存储介质,该可读存储介质上存储程序或指令,该程序或指令被处理器执行时实现如第一方面的方法的步骤。
16.第五方面,本技术实施例提供了一种芯片,该芯片包括处理器和通信接口,该通信接口和该处理器耦合,该处理器用于运行程序或指令,实现如第一方面的方法的步骤。
17.第六方面,本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。
18.在本技术实施例中,对于根据点云数据生成的完整的房屋三维模型,即待处理模型,首先提取模型中符合条件的多个第一平面,接着将这些第一平面进行聚类,具体聚类得到满足要求的目标平面类别,并根据目标平面类别确定该待处理的三维模型的主轴,然后
spatial clustering of applications with noise,dbscan)。
36.在聚类得到满足要求的目标平面类别后,并根据目标平面类别确定该待处理的三维模型的主轴,以聚类得到曼哈顿世界中的三类平面为例,根据三类平面的方向,获得待处理模型的三个主轴,也即xyz坐标系中的x轴、y轴和z轴,从而根据这些主轴的方向与世界坐标系的坐标轴方向,确定对应的旋转矩阵,通过旋转矩阵对三维模型的方向进行自动化摆正。
37.摆正后的房间与现实中的房间的方向一致,有利于提高vr看房的体验。在摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
38.在本技术的一些实施例中,在待处理模型中确定n个第一平面,包括:
39.在待处理模型的顶点中,选取m个目标顶点,其中,m为大于3的整数,且m与待处理模型的顶点总数相关;
40.根据m个顶点的第一坐标,确定对应的第一平面法向量;
41.根据第一平面法向量,确定第一平面。
42.在本技术实施例中,通过随机采样一致性算法(ransac),在待处理模型中,提取出对应的n个第一平面。具体地,首先在待处理模型中,随机选取该模型的m个顶点。
43.其中,可以根据模型的复杂程度,预先计算出提取第一平面所需的最大顶点个数和最小顶点个数,从而确定m的取值。能够理解的是,对于体积或复杂度较大的模型,需要选取顶点个数设置的多,m值更大;对于体积或复杂度较小的模型,需要选取顶点个数设置的少,m值更小。
44.根据随机选择出来的m个顶点的顶点坐标,也即第一坐标,来计算这些顶点所在平面的法向量,得到第一平面法向量。在得到第一平面法向量后,根据这个法向量,能够确定出一个平面,如果这个平面满足要求,则可以确定得到一个第一平面。重复上述步骤,直到得到n个第一平面。
45.本技术通过随机采样一致性算法(ransac)提取第一平面,得到的第一平面准确,自动摆正的可靠性好。
46.在本技术的一些实施例中,根据m个顶点的第一坐标,确定对应的第一平面法向量,包括:
47.对m个第一坐标进行奇异值分解,得到对应的奇异向量;
48.将奇异向量中,奇异值最小的向量确定为第一平面法向量。
49.在本技术实施例中,在随机选取m个顶点,得到这些顶点的m个第一坐标后,对m个顶点的坐标进行奇异值分解(singular value decomposition,svd)。
50.能够理解的是,奇异值分解能够得到3个奇异向量,其中奇异值最小的一个奇异向量,就是这m个顶点所在平面的法向量,即第一平面法向量。在得到一平面法向量后,根据这个法向量,能够确定出一个平面,如果这个平面满足要求,则将其确定为第一平面。
51.本技术实施例通过对随机选取的模型顶点进行奇异值分解,从而从中提取出足够多的平面,对这些平面进行聚类后,能够得到三维模型的主轴,从而实现对模型的自动摆正。
52.在本技术的一些实施例中,根据第一平面法向量,确定第一平面,包括:
53.将第一平面法向量对应的平面,确定为第二平面;
54.获取待处理模型的全部顶点中,位于第二平面上的顶点的数量;
55.在数量大于或等于第一阈值的情况下,确定第二平面为第一平面。
56.在本技术实施例中,在对随机选取的m个顶点进行奇异值分解,并根据计算得到的奇异向量确定这m个顶点所在平面的法向量,即第一平面法向量后,进一步判第一平面法向量对应的第二平面是否满足要求。
57.具体地,检查待处理模型的全部顶点中,处于该第二平面上的顶点的数量。如果第二平面上的顶点数量大于或等于第一阈值t,则说明该平面符合要求,则将其确定为一个第一平面。重复上述操作,直到得到足够多的满足要求的第一平面。
58.本技术实施例通过随机采样一致性算法(ransac),从待处理模型中提取出足够多的平面,对这些平面进行聚类后,能够得到三维模型的主轴,从而实现对模型的自动摆正。
59.在本技术的一些实施例中,在待处理模型中确定n个第一平面,包括:
60.在待处理模型的全部面片中,确定种子面片,和种子面片的第二平面法向量;
61.确定周边面片,其中,周边面片是与种子面片的距离小于第二阈值的面片,周边面片的法向量为第三平面法向量;
62.在第三平面法向量与第二平面法向量的差小于第三阈值的情况下,将周边面片合并至种子面片所处的平面,得到第一平面。
63.在本技术实施例中,通过区域生长算法(region grow),在待处理模型中,提取出足够多的平面,也即确定n个第一平面。具体地,待处理模型具体为三维面片模型,首先在三维面片模型中,选取种子面片。其中,可以通过预设的规则选取种子面片,也可以随机选择种子面片。
64.在确定出种子面片后,以种子面片所在的平面,为拟提取的平面,对种子面片周边的其他面片进行搜索。具体地,可以对于与种子面片之间的距离小于第二阈值的面片,作为搜索范围。
65.进一步地,对种子片面的平面法向量,也即第二平面法向量进行确定,同时对全部周边面片的第三平面法向量进行确定。如果周边面片的平面法向量与种子面片的平面法向量,也即拟提取的平面法向量接近,也即第三平面法向量与第二平面法向量的差小于第三阈值,则确定该周边面片与种子面片在相同平面上,从而将该周边面片加入种子面片所处的平面。
66.重复上述步骤,直至将全部满足条件的周边面片全部加入该种子面片所处的平面后,确定成功提取出一个第一平面。进一步重复上述步骤,直至将待处理模型中的全部n个第一平面均确定出来。
67.本技术实施例通过区域生长算法(region grow)提取第一平面,得到的第一平面准确,自动摆正的可靠性好。
68.在本技术的一些实施例中,目标平面类别包括第一类别、第二类别和第三类别;
69.其中,第一类别下的平面的法向量为第四平面法向量,第二类别下的平面的法向量为第五平面法向量,第三类别下的平面的法向量为第六平面法向量,第四平面法向量、第五平面法向量和第六平面法向量之间相互正交。
70.在该技术方案中,目标平面类别包括三个类别,具体为第一类别、第二类别和第三
类别,这三个类别即曼哈顿世界中的三类平面。
71.具体地,第一类别的平面的第四平面法向量,第二类别的平面的第五平面法向量,和第三类别的平面的第六平面法向量之间相互正交。举例来说,可以将第一平面视为方向为世界坐标系下x轴方向上的平面,将第二平面视为方向为世界坐标系下y轴方向上的平面,并将第三平面视为世界坐标系下z轴方向上的平面。
72.根据这三类平面的方向,获得待处理模型的三个主轴,也即xyz坐标系中的x轴、y轴和z轴,从而根据这些主轴的方向与世界坐标系的坐标轴方向,确定对应的旋转矩阵,通过旋转矩阵对三维模型的方向进行自动化摆正。
73.本技术基于聚类后的平面方向,确定待处理模型的主轴方向,进而对房间vr模型进行自动化的摆正,过程中无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
74.在本技术的一些实施例中,对n个第一平面进行聚类处理,得到目标平面类别,包括:
75.确定第一法线、第二法线和第三法线,其中,第一法线、第二法线和第三法线之间相互正交;
76.根据第一法线确定第一类别,其中,第一类别下的平面的法线为第四法线,第四法线与第一法线之间的余弦距离,小于第四法线与第二法线之间的余弦距离,且小于第四法线与第三法线之间的余弦距离;
77.根据第二法线确定第二类别,其中,第二类别下的平面的法线为第五法线,第五法线与第二法线之间的余弦距离,小于第五法线与第一法线之间的余弦距离,且小于第五法线与第三法线之间的余弦距离;
78.根据第三法线确定第三类别,其中,第三类别下的平面的法线为第六法线,第六法线与第三法线之间的余弦距离,小于第六法线与第一法线之间的余弦距离,且小于第六法线与第二法线之间的余弦距离。
79.在本技术实施例中,通过k均值聚类算法(k-means),对n个第一平面进行聚类处理,从而将n个第一平面聚类为曼哈顿世界下的三类平面,也即聚类为上述第一类别、第二类别和第三类别。
80.具体地,在聚类时,随机选取三个相互正交的法线方向,即第一法线、第二法线和第三法线。根据n个第一平面中,每个第一平面与这三个法线之间的余弦距离,来将n个第一平面聚类为三个类别,其中,第一类别下的平面的法线,与第一法线之间的余弦距离最小,第二类别下的平面的法线,与第二法线之间的余弦距离最小,第三类别下的平面的法线,与第三法线之间的余弦距离最小。
81.在得到这三类平面后,分别求解每个类别下的全部第一平面的平均法向量,并将得到的三个平均法向量,作为新的三个法线方向,并重新根据n个第一平面中,每个第一平面与这三个新的法线之间的余弦距离,来将n个第一平面重新聚类为三个类别。
82.具体地,分别求解第一类别下平面的第一平均法向量、第二类别下的平面的第二平均法向量和第三类别下的平面的第三平均法向量;根据第一平均法向量再次确定第一类别,根据第二平均法向量再次确定第二类别,根据第三平均法向量再次确定第三类别,并重复求解第一类别下平面的第一平均法向量、第二类别下的平面的第二平均法向量和第三类
别下的平面的第三平均法向量的步骤。
83.经过多次重复迭代后,最终得到的三个法线方向,就是待处理模型的主轴方向。
84.本技术通过k均值聚类算法(k-means),对n个第一平面进行聚类处理,得到三类平面,根据这三类平面的法向量确定待处理的三维模型的主轴,并对待处理模型进行摆正,摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
85.在本技术的一些实施例中,对n个第一平面进行聚类处理,得到目标平面类别,包括:
86.选取第一种子法向量;
87.根据第一种子法向量,确定第一类别,其中,第一类别中的平面的法线方向与第一种子法向量相关,且第一类别中的平面数量大于第四阈值;
88.确定第一类别中的平面的法向量的第一均值法向量;
89.根据第一均值法向量,依次确定第二类别和第三类别,其中,第二类别中的平面法线方向与第二种子法向量相关,第三类别的平面法向方向与第三种子法向量相关,第二种子法向量、第三种子法向量和第一种子法向量之间相互正交。
90.在本技术实施例中,通过噪声空间密度聚类算法(density-based spatial clustering of applications with noise,dbscan),对n个第一平面进行聚类处理,从而将n个第一平面聚类为曼哈顿世界下的三类平面,也即聚类为上述第一类别、第二类别和第三类别。
91.具体地,在聚类时,首先随机选取一个法向量,作为第一种子法向量。然后,找到该第一种子法向量的所有密度可达的法线方向对应的平面,将这些平面作为一个簇,也即第一类别。该第一类别下的法向量均值为a1。
92.进一步地,随机选取一个正交于a1的法向量,作为第二种子法向量,并找到第二种子法向量的所有密度可达的法线方向对应的平面,将这些平面作为第二个簇,也即第二类别。该第二类别下的法向量均值为a2。
93.更进一步地,以正交于a2的法向量,为第三种子法向量,并找到第三种子法向量的所有密度可达的法线方向对应的平面,将这些平面作为第三个簇,也即第三类别。该第二类别下的法向量均值为a3。
94.如果三个簇,也即三个类别包含的第一平面的数量均超过第四阈值,则确定聚类成功,得到的三个类别对应的法向量a1、a2和a3即待处理模型的三格主轴。
95.如果三个类别中,任一类别包含的第一平面的数量没有超过第四阈值,则重复上述步骤,直到选取的三个簇,也即三个类别下的第一平面的数量超过第四阈值为止。
96.本技术通过噪声空间密度聚类算法(density-based spatial clustering of applications with noise,dbscan),对n个第一平面进行聚类处理,得到三类平面,根据这三类平面的法向量确定待处理的三维模型的主轴,并对待处理模型进行摆正,摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
97.在本技术的一些实施例中,图2示出了根据本技术实施例的模型摆正的逻辑示意图,如图2所示,对待处理模型进行自动摆正,具体步骤逻辑包括:
98.1.统计三维模型顶点个数,预先计算提取面片的最大和最小顶点个数。对于较大的模型,顶点个数设置的多,对于较小的模型,顶点个数设置少。
99.2.对三维模型进行平面聚类,得到所有大小适合的平面,并估算每个平面的法线方向。
100.3.根据所有平面的法向量,选取合适的聚类方法,将所有平面聚为三类,且三类平面的法线需互相正交。
101.4.根据三类平面的数量多少,得到模型的三个主轴,并根据三个主轴的方向对模型进行摆正。竖直方向的主轴保持不动,为y轴。水平方向的两个主轴,以较长轴为z轴,较短轴为x轴。
102.5.根据摆正结果,对模型进行变换,输出摆正后的模型。
103.在本技术的一些实施例中,提供了一种虚拟现实模型的处理装置,图3示出了根据本技术实施例的虚拟现实模型的处理装置的结构框图,如图3所示,虚拟现实模型的处理装置300包括:
104.确定模块302,用于在待处理模型中确定n个第一平面,其中,n为正整数;
105.处理模块304,用于对n个第一平面进行聚类处理,得到目标平面类别;
106.确定模块302,还用于根据目标平面类别对应的平面法向量,确定待处理模型的主轴信息;
107.处理模块304,还用于基于主轴信息,调整待处理模型的方向,得到处理后的目标模型。
108.本技术实施例在聚类得到满足要求的目标平面类别后,并根据目标平面类别确定该待处理的三维模型的主轴,以聚类得到曼哈顿世界中的三类平面为例,根据三类平面的方向,获得待处理模型的三个主轴,也即xyz坐标系中的x轴、y轴和z轴,从而根据这些主轴的方向与世界坐标系的坐标轴方向,确定对应的旋转矩阵,通过旋转矩阵对三维模型的方向进行自动化摆正。
109.摆正后的房间与现实中的房间的方向一致,有利于提高vr看房的体验。在摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
110.在本技术的一些实施例中,虚拟现实模型的处理装置还包括:
111.选取模块,用于在待处理模型的顶点中,选取m个目标顶点,其中,m为大于3的整数,且m与待处理模型的顶点总数相关;
112.确定模块,还用于:
113.根据m个顶点的第一坐标,确定对应的第一平面法向量;
114.根据第一平面法向量,确定第一平面。
115.本技术通过随机采样一致性算法(ransac)提取第一平面,得到的第一平面准确,自动摆正的可靠性好。
116.在本技术的一些实施例中,虚拟现实模型的处理装置还包括:
117.分解模块,用于对m个第一坐标进行奇异值分解,得到对应的奇异向量;
118.确定模块,还用于将奇异向量中,奇异值最小的向量确定为第一平面法向量。
119.本技术实施例通过对随机选取的模型顶点进行奇异值分解,从而从中提取出足够
多的平面,对这些平面进行聚类后,能够得到三维模型的主轴,从而实现对模型的自动摆正。
120.在本技术的一些实施例中,确定模块,还用于将第一平面法向量对应的平面,确定为第二平面;
121.虚拟现实模型的处理装置还包括:
122.获取模块,用于获取待处理模型的全部顶点中,位于第二平面上的顶点的数量;
123.确定模块,还用于在数量大于或等于第一阈值的情况下,确定第二平面为第一平面。
124.本技术实施例通过随机采样一致性算法(ransac),从待处理模型中提取出足够多的平面,对这些平面进行聚类后,能够得到三维模型的主轴,从而实现对模型的自动摆正。
125.在本技术的一些实施例中,确定模块,还用于:在待处理模型的全部面片中,确定种子面片,和种子面片的第二平面法向量;
126.确定周边面片,其中,周边面片是与种子面片的距离小于第二阈值的面片,周边面片的法向量为第三平面法向量;
127.虚拟现实模型的处理装置还包括:
128.合并模块,用于在第三平面法向量与第二平面法向量的差小于第三阈值的情况下,将周边面片合并至种子面片所处的平面,得到第一平面。
129.本技术实施例通过区域生长算法(region grow)提取第一平面,得到的第一平面准确,自动摆正的可靠性好。
130.在本技术的一些实施例中,目标平面类别包括第一类别、第二类别和第三类别;其中,第一类别下的平面的法向量为第四平面法向量,第二类别下的平面的法向量为第五平面法向量,第三类别下的平面的法向量为第六平面法向量,第四平面法向量、第五平面法向量和第六平面法向量之间相互正交。
131.本技术基于聚类后的平面方向,确定待处理模型的主轴方向,进而对房间vr模型进行自动化的摆正,过程中无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
132.在本技术的一些实施例中,确定模块,还用于:
133.确定第一法线、第二法线和第三法线,其中,第一法线、第二法线和第三法线之间相互正交;
134.根据第一法线确定第一类别,其中,第一类别下的平面的法线为第四法线,第四法线与第一法线之间的余弦距离,小于第四法线与第二法线之间的余弦距离,且小于第四法线与第三法线之间的余弦距离;
135.根据第二法线确定第二类别,其中,第二类别下的平面的法线为第五法线,第五法线与第二法线之间的余弦距离,小于第五法线与第一法线之间的余弦距离,且小于第五法线与第三法线之间的余弦距离;
136.根据第三法线确定第三类别,其中,第三类别下的平面的法线为第六法线,第六法线与第三法线之间的余弦距离,小于第六法线与第一法线之间的余弦距离,且小于第六法线与第二法线之间的余弦距离。
137.本技术通过k均值聚类算法(k-means),对n个第一平面进行聚类处理,得到三类平
面,根据这三类平面的法向量确定待处理的三维模型的主轴,并对待处理模型进行摆正,摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
138.在本技术的一些实施例中,选取模块,还用于选取第一种子法向量;
139.确定模块,还用于:
140.根据第一种子法向量,确定第一类别,其中,第一类别中的平面的法线方向与第一种子法向量相关,且第一类别中的平面数量大于第四阈值;
141.确定第一类别中的平面的法向量的第一均值法向量;
142.根据第一均值法向量,依次确定第二类别和第三类别,其中,第二类别中的平面法线方向与第二种子法向量相关,第三类别的平面法向方向与第三种子法向量相关,第二种子法向量、第三种子法向量和第一种子法向量之间相互正交。
143.本技术通过噪声空间密度聚类算法(density-based spatial clustering of applications with noise,dbscan),对n个第一平面进行聚类处理,得到三类平面,根据这三类平面的法向量确定待处理的三维模型的主轴,并对待处理模型进行摆正,摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
144.本技术实施例中的虚拟现实模型的处理装置可以是电子设备,也也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(mobile internet device,mid)、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,还可以为服务器、网络附属存储器(network attached storage,nas)、个人计算机(personal computer,pc)、电视机(television,tv)、柜员机或者自助机等,本技术实施例不作具体限定。
145.本技术实施例中的虚拟现实模型的处理装置可以为具有操作系统的装置。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本技术实施例不作具体限定。
146.本技术实施例提供的虚拟现实模型的处理装置能够实现上述方法实施例实现的各个过程,为避免重复,这里不再赘述。
147.可选地,本技术实施例还提供一种电子设备400,图4示出了根据本技术实施例的电子设备的结构框图,如图4所示,包括处理器402,存储器404,存储在存储器404上并可在所述处理器402上运行的程序或指令,该程序或指令被处理器402执行时实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
148.需要说明的是,本技术实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
149.图5为实现本技术实施例的一种电子设备的硬件结构示意图。
150.该电子设备500包括但不限于:射频单元501、网络模块502、音频输出单元503、输入单元504、传感器505、显示单元506、用户输入单元507、接口单元508、存储器509、以及处
理器510等部件。
151.本领域技术人员可以理解,电子设备500还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器510逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图5中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
152.其中,处理器510用于在待处理模型中确定n个第一平面,其中,n为正整数;
153.对n个第一平面进行聚类处理,得到目标平面类别;
154.根据目标平面类别对应的平面法向量,确定待处理模型的主轴信息;
155.基于主轴信息,调整待处理模型的方向,得到处理后的目标模型。
156.本技术实施例在聚类得到满足要求的目标平面类别后,并根据目标平面类别确定该待处理的三维模型的主轴,以聚类得到曼哈顿世界中的三类平面为例,根据三类平面的方向,获得待处理模型的三个主轴,也即xyz坐标系中的x轴、y轴和z轴,从而根据这些主轴的方向与世界坐标系的坐标轴方向,确定对应的旋转矩阵,通过旋转矩阵对三维模型的方向进行自动化摆正。
157.摆正后的房间与现实中的房间的方向一致,有利于提高vr看房的体验。在摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
158.可选地,处理器510还用于在待处理模型的顶点中,选取m个目标顶点,其中,m为大于3的整数,且m与待处理模型的顶点总数相关;
159.根据m个顶点的第一坐标,确定对应的第一平面法向量;
160.根据第一平面法向量,确定第一平面。
161.本技术通过随机采样一致性算法(ransac)提取第一平面,得到的第一平面准确,自动摆正的可靠性好。
162.可选地,处理器510还用于对m个第一坐标进行奇异值分解,得到对应的奇异向量;
163.将奇异向量中,奇异值最小的向量确定为第一平面法向量。
164.本技术实施例通过对随机选取的模型顶点进行奇异值分解,从而从中提取出足够多的平面,对这些平面进行聚类后,能够得到三维模型的主轴,从而实现对模型的自动摆正。
165.可选地,处理器510还用于将第一平面法向量对应的平面,确定为第二平面;
166.获取待处理模型的全部顶点中,位于第二平面上的顶点的数量;
167.在数量大于或等于第一阈值的情况下,确定第二平面为第一平面。
168.本技术实施例通过随机采样一致性算法(ransac),从待处理模型中提取出足够多的平面,对这些平面进行聚类后,能够得到三维模型的主轴,从而实现对模型的自动摆正。
169.可选地,处理器510还用于在待处理模型的全部面片中,确定种子面片,和种子面片的第二平面法向量;
170.确定周边面片,其中,周边面片是与种子面片的距离小于第二阈值的面片,周边面片的法向量为第三平面法向量;
171.在第三平面法向量与第二平面法向量的差小于第三阈值的情况下,将周边面片合
并至种子面片所处的平面,得到第一平面。
172.本技术实施例通过区域生长算法(region grow)提取第一平面,得到的第一平面准确,自动摆正的可靠性好。
173.可选地,目标平面类别包括第一类别、第二类别和第三类别;
174.其中,第一类别下的平面的法向量为第四平面法向量,第二类别下的平面的法向量为第五平面法向量,第三类别下的平面的法向量为第六平面法向量,第四平面法向量、第五平面法向量和第六平面法向量之间相互正交。
175.本技术基于聚类后的平面方向,确定待处理模型的主轴方向,进而对房间vr模型进行自动化的摆正,过程中无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
176.可选地,处理器510还用于确定第一法线、第二法线和第三法线,其中,第一法线、第二法线和第三法线之间相互正交;
177.根据第一法线确定第一类别,其中,第一类别下的平面的法线为第四法线,第四法线与第一法线之间的余弦距离,小于第四法线与第二法线之间的余弦距离,且小于第四法线与第三法线之间的余弦距离;
178.根据第二法线确定第二类别,其中,第二类别下的平面的法线为第五法线,第五法线与第二法线之间的余弦距离,小于第五法线与第一法线之间的余弦距离,且小于第五法线与第三法线之间的余弦距离;
179.根据第三法线确定第三类别,其中,第三类别下的平面的法线为第六法线,第六法线与第三法线之间的余弦距离,小于第六法线与第一法线之间的余弦距离,且小于第六法线与第二法线之间的余弦距离。
180.本技术通过k均值聚类算法(k-means),对n个第一平面进行聚类处理,得到三类平面,根据这三类平面的法向量确定待处理的三维模型的主轴,并对待处理模型进行摆正,摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
181.可选地,处理器510还用于选取第一种子法向量;
182.根据第一种子法向量,确定第一类别,其中,第一类别中的平面的法线方向与第一种子法向量相关,且第一类别中的平面数量大于第四阈值;
183.确定第一类别中的平面的法向量的第一均值法向量;
184.根据第一均值法向量,依次确定第二类别和第三类别,其中,第二类别中的平面法线方向与第二种子法向量相关,第三类别的平面法向方向与第三种子法向量相关,第二种子法向量、第三种子法向量和第一种子法向量之间相互正交。
185.本技术通过噪声空间密度聚类算法(density-based spatial clustering of applications with noise,dbscan),对n个第一平面进行聚类处理,得到三类平面,根据这三类平面的法向量确定待处理的三维模型的主轴,并对待处理模型进行摆正,摆正过程中,全程自动化进行,无需人工介入,有利于减少房间vr模型的摆正依赖人工操作,提高模型摆正处理效率。
186.应理解的是,本技术实施例中,输入单元504可以包括图形处理器(graphics processing unit,gpu)5041和麦克风5042,图形处理器5041对在视频捕获模式或图像捕获
模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元506可包括显示面板5061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板5061。用户输入单元507包括触控面板5071以及其他输入设备5072中的至少一种。触控面板5071,也称为触摸屏。触控面板5071可包括触摸检测装置和触摸控制器两个部分。其他输入设备5072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
187.存储器509可用于存储软件程序以及各种数据。存储器509可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器509可以包括易失性存储器或非易失性存储器,或者,存储器509可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,drram)。本技术实施例中的存储器509包括但不限于这些和任意其它适合类型的存储器。
188.处理器510可包括一个或多个处理单元;可选的,处理器510集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器510中。
189.本技术实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
190.其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等。
191.本技术实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
192.应理解,本技术实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
193.本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
194.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而
且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本技术实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
195.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
196.上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
再多了解一些

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

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

相关文献