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

数据处理、界面交互方法及设备与流程

2021-10-29 21:09:00 来源:中国专利 TAG:数据处理 交互 界面 计算机 方法


1.本技术涉及计算机技术领域,尤其涉及一种数据处理、界面交互方法及设备。


背景技术:

2.计算机可基于图像及其相关数据自动生成并展示2d或3d模型,以便于用户查看。以3d房屋模型为例,计算机可基于全景图以及全景图上人工标注的或由深度神经网络预测的墙线位置,自动生成房间的3d模型,再通过连接各个房间的门空间关系,就能够生成整套房屋的3d模型。
3.然而由于图像畸变、标注误差等影响,最终生成的2d或3d模型在某些情况下会出现明显的空间重叠现象,影响模型的展示效果。


技术实现要素:

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.图1a为本技术一实施例提供的数据处理方法的示例图;
52.图1b为本技术另一实施例提供的数据处理方法的流程示意图;
53.图2为本技术另一实施例提供的界面交互方法的流程示意图;
54.图3为本技术一实施例提供的数据处理装置的结构框图;
55.图4为本技术另一实施例提供的界面交互装置的结构框图;
56.图5为本技术一实施例提供的电子设备的结构框图。
具体实施方式
57.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
58.此外,在本技术的说明书、权利要求书及上述附图中描述的一些流程中,包含了按照特定顺序出现的多个操作,这些操作可以不按照其在本文中出现的顺序来执行或并行执行。操作的序号如101、102等,仅仅是用于区分各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
59.图1b示出了本技术一实施例提供的数据处理方法的流程示意图。该方法的执行主体可以为客户端,也可以为服务端。其中,所述客户端可以是集成在终端上的一个具有嵌入式程序的硬件,也可以是安装在终端中的一个第一软件,还可以是嵌入在终端操作系统中的工具软件等,本技术实施例对此不作限定。该终端可以为包括手机、平板电脑、智能音箱等任意终端设备。其中,服务端可以是常用服务器、云端或虚拟服务器等,本技术实施例对此不作具体限定。
60.如图1b所示,该方法包括:
61.101、确定多个区域各自对应的位置改变参数的参数值。
62.102、基于所述参数值,改变所述多个区域,得到多个新区域。
63.103、确定所述多个新区域不满足预设条件时,调整所述参数值,直至基于调整后参数值改变所述多个区域得到的多个新区域满足所述预设条件。
64.104、根据调整得到的参数值,修正所述多个区域各自的位置信息。
65.上述101中,上述多个区域具体可以为同一个模型所涉及的多个区域。该模型具体可以为房屋模型、商场模型、运动场模型等。不同的模型中,上述区域所指代的含义不同。在房屋模型下,多个区域可以为多个房间区域,其中,房间区域可以为客厅区域、卧室区域、卫生间区域、厨房区域等。在商场模型下,多个区域可以为多个购物区域,其中,购物区域可以
为生鲜区域、生活用品区域、电器区域等。在运动场模型下,多个区域可以为多个看台区域。上述模型可以为二维(2d)模型或三维(3d)模型。
66.上述101中,在迭代开始时,确定多个区域各自对应的位置改变参数的参数值,可理解为确定多个区域各自对应的位置改变参数的初始参数值。以各区域对应的位置改变参数的初始参数值为起点,开始迭代。各区域对应的位置改变参数的初始参数值可根据实际需要来设定,本技术对此不作具体限定。考虑到实际应用中,很多模型对应的多个区域之间的区域重叠程度或区域分离程度都是比较小的,也就是说,各区域对应的合适的位置改变参数的参数值通常在0附近。故在一实例中,可将各区域对应的位置改变参数的初始参数值均设为0,有助于快速迭代到合适的位置改变参数的参数值。
67.上述102中,基于所述参数值,改变所述多个区域,得到多个新区域,具体为:基于多个区域各自对应的位置改变参数的参数值,分别改变所述多个区域,得到多个新区域。
68.上述103中,预设条件可根据实际需要来设定,本技术实施例对此不作具体限定。
69.确定所述多个新区域是否满足预设条件。若不满足预设条件,则表明迭代未结束,继续调整所述参数值,直至基于调整后参数值改变所述多个区域得到的多个新区域满足所述预设条件;若满足预设条件,则表明迭代结束。
70.上述104中,将最终调整得到的各区域对应的位置改变参数的参数值叠加到各区域的位置信息上,得到修正后各区域的位置信息。
71.在实际应用时,上述区域通常为多边形区域。故在一实例中,各区域的位置信息可包括各区域的多个顶点的顶点坐标;各区域对应的位置改变参数可包括各区域的多个顶点各自对应的顶点位移参数。所述多个区域中包括第一区域,所述第一区域指代的是所述多个区域中任一个。将最终得到的第一区域的多个顶点各自对应的顶点位移参数的参数值分别叠加到第一区域的多个顶点各自对应的顶点坐标上,得到第一区域的多个顶点的修正后顶点坐标。其中,顶点位移参数具体为顶点位移向量参数。注:基于区域的多个顶点各自对应的顶点位移参数,改变区域,得到新区域,指的是:基于区域的多个顶点各自对应的顶点位移参数,改变区域的多个顶点的顶点坐标,得到新区域。
72.本技术实施例提供的技术方案,通过设置预设条件以及不断迭代,可确保最终迭代到各区域对应的位置改变参数是合理的。这样,按照迭代到的各区域对应的位置改变参数,修正各区域的位置信息,可合理地消除区域间存在的问题,例如:区域重叠问题或区域分离问题。
73.可选地,上述方法,还可包括:
74.105、构建以所述多个区域各自对应的位置改变参数为自变量的代价函数。
75.106、将所述参数值输入至所述代价函数中,得到所述代价函数的输出值。
76.107、所述输出值大于或等于预设阈值时,确定基于所述参数值改变所述多个区域得到的多个新区域不满足所述预设条件。
77.上述105中,为了消除或降低模型涉及的多个区域之间的区域重叠情况,所述代价函数与多个改变后区域的区域重叠程度有关;所述多个改变后区域是基于所述位置改变参数改变所述多个区域得到的。在一实例中,区域重叠程度可与区域重叠面积正相关。区域重叠面积越大,区域重叠程度越高。其中,代价函数也可称为损失函数。
78.在一实例中,上述代价函数具体可以为用于计算多个改变后区域的区域重叠程度
的函数。
79.上述106中,每次迭代过程中,可将所述多个区域各自对应的位置改变参数的参数值作为代价函数的输入,执行代价函数,即可得到代价函数的输出值。该输出值,也即是代价函数中自变量取值为多个区域各自对应的位置改变参数的参数值时的代价函数值。该输出值与基于多个区域各自对应的位置改变参数的参数值改变多个区域得到的多个新区域的区域重叠程度有关。
80.上述107中,预设阈值的具体数值可根据实际需要来设定,本技术实施例对此不作具体限定。
81.所述输出值大于或等于预设阈值时,说明基于所述参数值改变所述多个区域得到的多个新区域的区域重叠程度较大,还需要继续进行迭代,以降低区域重叠程度,故确定基于所述参数值改变所述多个区域得到的多个新区域不满足所述预设条件。
82.所述输出值小于预设阈值时,确定基于所述参数值改变所述多个区域得到的多个新区域满足所述预设条件。
83.在迭代的过程中,如何有效调整多个区域各自对应的位置改变参数的参数值,决定了调整效率以及最终的调整效果。在一种可实现的方案中,可结合上述代价函数以及最小二乘算法来确定如何调整,以提高调整效率和调整效果。具体地,上述103中“调整所述参数值”,具体可采用如下步骤来实现:
84.1031、获取基于所述代价函数以及最小二乘算法确定的参数调整信息。
85.1032、按照所述参数调整信息,调整所述参数值。
86.上述1031中,参数调整信息具体可包括多个区域各自对应的位置改变参数的迭代步长和迭代方向。上述最小二乘算法具体可以为非线性最小二乘算法,例如:最速下降法、牛顿法、高斯牛顿法、列文伯格-马尔夸特法(levenberg-marquardt)算法(简称lm算法)。不同区域对应的位置改变参数的迭代步长和迭代方向不同。
87.在实际应用时,可结合lm算法来确定参数调整信息,能够权衡步长与非线性程度之间的利弊。当迭代点附近的非线性程度比较高时,倾向于增大阻尼因子而减小步长,此时接近最速下降方法;而当系统近乎线性时,减小阻尼因子而增大步长,此时接近高斯牛顿方法。
88.上述1031中,实质上也即是,利用最小二乘算法对上述代价函数进行最小化优化处理,具体过程可参见现有技术,本技术实施例对此不作详细描述。
89.上述1032中,具体地,可根据多个区域各自对应的位置改变参数的迭代步长和迭代方向,分别对多个区域各自对应的位置改变参数的当前参数值进行调整,得到多个区域各自对应的位置改变参数的调整后参数值。
90.在一种可实现的方案中,上述105中“构建以所述多个区域各自对应的位置改变参数为自变量的代价函数”,具体可采用如下步骤来实现:
91.1051、对所述多个改变后区域进行两两组合,得到至少一个改变后区域对。
92.1052、构建用于计算各改变后区域对中两个改变后区域的区域重叠程度的重叠函数。
93.1053、对所述至少一个改变后区域对各自对应的重叠函数进行相加,得到用于计算所述多个改变后区域的区域重叠程度的重叠总函数。
94.其中,所述重叠总函数以所述多个区域各自对应的位置改变参数为自变量。
95.1054、根据所述重叠总函数,确定所述代价函数。
96.上述1051中,多个改变后区域的数量为n,其中,n为正整数,则至少一个改变后区域对的数量为个。
97.举例来说,多个改变后区域的数量为4,则至少一个改变后区域对的数量为个,即6个。
98.上述1052中,至少一个改变后区域对中包括第一改变后区域对。第一改变后区域对指代的是至少一个改变后区域对中的任一个。所述第一改变后区域对中包括与所述多个区域中第一区域对应的第一改变后区域和与所述多个区域中第二区域对应的第二改变后区域。注:基于第一区域对应的位置改变参数改变第一区域得到的即为第一改变后区域;基于第二区域对应的位置改变参数改变第二区域得到的即为第二改变后区域。
99.在一种可实现的方案中,上述1052中“构建用于计算第一改变后区域对中第一改变后区域和第二改变后区域的区域重叠程度的重叠函数”,具体为:根据第一区域的位置信息及其对应的位置改变参数,确定第一改变后区域的位置信息;根据第二区域的位置信息及其对应的位置改变参数,确定第二改变后区域的位置信息;根据第一改变后区域的位置信息以及第二改变后区域的位置信息,构建用于计算第一改变后区域对中第一改变后区域和第二改变后区域的区域重叠面积的面积函数,以作为所述重叠函数。
100.发明人在进一步研究本技术实施例提供的技术方案中发现,实际应用中,很多区域大多是边数大于3的多边形区域,而边数大于3的多边形区域之间的区域重叠面积很难计算,尤其是凹多边形区域。为了降低区域重叠面积的计算难度,可对所述多个区域中各区域进行三角剖分,得到各区域对应的至少一个子区域。各子区域的形状均为三角形。其中,各区域的位置信息包括各区域对应的至少一个子区域的顶点坐标。各区域对应的位置改变参数包括各区域对应的至少一个子区域的顶点对应的顶点位移参数。每个子区域包括的三个顶点各自对应的顶点位移参数不同。需要补充的是,本技术实施例中,对各区域进行三角剖分,不引入新的顶点。对各区域进行三角剖分,一方面利于后续重叠面积的计算;另一方面也可以提前确定后续每个重叠子函数的自变量的个数,可降低代价函数构建难度。具体实施时,可采用约束狄罗尼三角化(cdt,constrained delaunay triangulation)算法对各区域进行三角剖分,这样可避免引入新的顶点。
101.因此,在另一种可实现的方案中,上述1052中“构建用于计算第一改变后区域对中第一改变后区域和第二改变后区域的区域重叠程度的重叠函数”,具体为:
102.s11、根据所述第一区域对应的至少一个子区域的顶点坐标及其对应的顶点位移参数,分别确定所述第一区域对应的至少一个改变后子区域的顶点坐标。
103.s12、根据所述第二区域对应的至少一个子区域的顶点坐标及其对应的顶点位移参数,分别确定所述第二区域对应的至少一个改变后子区域的顶点坐标。
104.s13、将所述第一区域对应的至少一个改变后子区域中的改变后子区域与所述第二区域对应的至少一个改变后子区域中的改变后子区域进行组合,得到至少一个改变后子区域对。
105.其中,所述改变后子区域对中的两个改变后子区域分别对应于所述第一区域和所
述第二区域。
106.s14、根据各改变后子区域对中两个改变后子区域的顶点坐标,构建用于计算各改变后子区域对的区域重叠面积的重叠子函数。
107.s15、对所述至少一个改变后子区域对各自对应的重叠子函数进行相加,得到用于计算所述第一改变后区域和所述第二改变后区域之间的区域重叠程度的重叠函数。
108.上述s11中,第一区域对应的至少一个改变后子区域中包括由第一区域对应的至少一个子区域中第三子区域改变得到的第三改变后子区域。其中,第三改变后子区域指代的是第一区域对应的至少一个改变后子区域中的任一个。
109.上述s12中,第二区域对应的至少一个改变后子区域中包括由第二区域对应的至少一个子区域中第四子区域改变得到的第四改变后子区域。其中,第四改变后子区域指代的是第二区域对应的至少一个改变后子区域中的任一个。
110.在一实例中,第三改变后子区域可以是直接基于所述第三子区域的顶点对应的顶点位移参数改变第三子区域得到的。第四改变后子区域可以是直接基于所述第四子区域的顶点对应的顶点位移参数改变所述第四子区域得到的。
111.其中,改变后子区域的顶点坐标为p
k
δ
pk
。其中,δ
pk
为改变前子区域的顶点对应的顶点位移参数。其中,k取值为1、2、3(即子区域的顶点个数为3)。
112.在另一实例中,第三改变后子区域可以是基于第三子区域的顶点对应的顶点位移参数改变第三放大后子区域得到的。其中,第三放大后子区域是由所述第三子区域按照预设放大倍数放大后得到的。第四改变后子区域可以是基于第四子区域的顶点对应的顶点位移参数改变第四放大后子区域得到的。其中,第四放大后子区域是由所述第四子区域按照所述预设放大倍数放大后得到的。具体地,上述s11中“根据所述第一区域对应的至少一个子区域的顶点坐标及其对应的顶点位移参数,确定所述第一区域对应的至少一个改变后子区域的顶点坐标”,具体包括:
113.s111、基于所述第一区域对应的至少一个子区域的顶点坐标,按照预设放大倍数执行对所述第一区域对应的至少一个子区域的等比放大处理,得到所述第一区域对应的至少一个放大后子区域。
114.其中,放大后子区域与放大前子区域的重心坐标相同。
115.s112、基于所述第一区域对应的至少一个放大后子区域的顶点坐标以及所述第一区域对应的至少一个子区域的顶点对应的顶点位移参数,确定所述第一区域对应的至少一个改变后子区域的顶点坐标。
116.上述s111中,放大后子区域的顶点坐标可采用如下计算公式计算:
[0117][0118]
p’k
=t
centroid
(1 ∈)(p
k-t
centroid
)
ꢀꢀ
(2)
[0119]
其中,p
k
(k=1,2,3)为放大前子区域的三个顶点坐标;t
centroid
为放大前子区域的重心坐标;p’k
(k=1,2,3)为放大后子区域的顶点坐标;∈大于0,(1 ∈)也即上述预设放大倍数。其中,∈的值为一经验值,可根据实际需要来确定,本技术实施例对此不作具体限定,例如:∈可取值为0.02。
[0120]
上述s112中,第一区域对应的至少一个改变后子区域由所述第一区域对应的至少
一个放大后子区域分别按照所述第一区域对应的至少一个子区域的顶点对应的顶点位移参数改变得到的。其中,改变后子区域的顶点坐标为p’k
δ
pk
。其中,δ
pk
为放大前子区域的顶点对应的顶点位移参数。
[0121]
同理,上述s12中“根据所述第二区域对应的至少一个子区域的顶点坐标及其对应的顶点位移参数,分别确定所述第二区域对应的至少一个改变后子区域的顶点坐标”,具体可包括:
[0122]
s121、基于所述第二区域对应的至少一个子区域的顶点坐标,按照预设放大倍数执行对所述第二区域对应的至少一个子区域的等比放大处理,得到所述第二区域对应的至少一个放大后子区域。
[0123]
其中,放大后子区域与放大前子区域的重心坐标相同。
[0124]
s122、基于所述第二区域对应的至少一个放大后子区域的顶点坐标以及所述第二区域对应的至少一个子区域的顶点对应的顶点位移参数,确定所述第二区域对应的至少一个改变后子区域的顶点坐标。
[0125]
上述s121和s122的具体实现可参见上述内容,在此不再赘述。
[0126]
在本实施例中,适当地扩大三角形的子区域,从而可确保重叠的三角形在优化后能充分地分开。这是因为,三角子区域被扩大之后,重叠的三角子区域的重叠面积就会增大,为了达到相同的优化结果(即相同的上述预设阈值),最终得到的合适的位置改变参数的参数值就会越大,越能够将重叠的三角子区域分开,也即能够将重叠的区域充分地分开。并且,发明人在实践中发现,若不进行放大处理,就算将上述预设阈值设得很小,甚至为0,也无法将重叠的区域充分分开,适当地扩大三角子区域,可有助于将重叠的区域充分地分开。
[0127]
上述s13中,第一区域对应的至少一个改变后子区域的数量为p,第二区域对应的至少一个改变后子区域的数量为q,其中,p和q均为正整数,则至少一个改变后子区域对的数量为p*q个。
[0128]
举例来说,第一区域对应的至少一个改变后子区域的数量为2,第二区域对应的至少一个改变后子区域的数量为2,则至少一个改变后子区域对的数量为4个。
[0129]
上述s14中,所述至少一个改变后子区域对中包括第一改变后子区域对。其中,第一改变后子区域对指代的是至少一个改变后子区域对中的任一个。
[0130]
所述第一改变后子区域对中包括第一改变后子区域和第二改变后子区域;所述第一改变后子区域与所述第一区域对应的至少一个子区域中第一子区域对应;所述第二改变后子区域与所述第二区域对应的至少一个子区域中第二子区域对应。其中,第一改变后子区域是由所述第一子区域改变得到的;第二改变后子区域是由所述第二子区域改变得到的。
[0131]
上述s14中,根据第一改变后子区域对中第一改变后子区域和第二改变后子区域的顶点坐标,构建用于计算第一改变后子区域对的区域重叠面积的重叠子函数。其中,第一改变后子区域和第二改变后子区域的顶点坐标均与各自对应的顶点位移参数有关。
[0132]
具体地,改变后子区域对的区域重叠面积的重叠子函数具体为:f1=area(tri”i
(p’i1
δ
pi1
,p’i2
δ
pi2
,p’i3
δ
pi3
)∩tri”j
(p’j1
δ
pj1
,p’j2
δ
pj2
,p’j3
δ
pj3
))
ꢀꢀꢀꢀ
(3)
[0133]
其中,p’i1
,p’i2
以及p’i3
可以为子区域tri
i
按照上述预设放大倍数放大得到的放
大后子区域tri’i
的三个顶点坐标;p’j1
,p’j2
以及p’j3
可以为子区域tri
j
按照上述预设放大倍数放大得到的放大后子区域tri’j
的三个顶点坐标;p’i1
δ
pi1
,p’i2
δ
pi2
以及p’i3
δ
pi3
为改变后子区域tri”i
的三个顶点坐标;p’j1
δ
pj1
,p’j2
δ
pj2
以及p’j3
δ
pj3
为改变后子区域tri”j
的三个顶点坐标。其中,δ
pi1
,δ
pi2
和δ
pi3
分别表示子区域tri
i
的三个顶点各自对应的顶点位移参数;δ
pj1
,δ
pj2
和δ
pj3
分别表示子区域tri
j
的三个顶点各自对应的顶点位移参数。
[0134]
当然,在另一实例中,上述p’i1
,p’i2
以及p’i3
可以为子区域tri
i
的三个顶点坐标。
[0135]
在实际应用时,为了快速排除不相交的三角形对,引入轴对齐包围盒技术(aabb,axis aligned bounding box)。具体地,上述方法,还可包括:
[0136]
108、若所述第一子区域的轴对齐包围盒与所述第二子区域的轴对齐包围盒不相交,则将用于计算所述第一改变后子区域对的区域重叠面积的重叠子函数确定为零函数。
[0137]
109、若所述第一子区域的轴对齐包围盒与所述第二子区域的轴对齐包围盒相交,则触发所述根据所述第一改变后子区域对中的两个改变后子区域的顶点坐标,构建用于计算所述第一改变后子区域对的区域重叠面积的重叠子函数的步骤。
[0138]
所述第一子区域的轴对齐包围盒与所述第二子区域的轴对齐包围盒是否相交的判断过程可参见现有技术,在此不再赘述。
[0139]
上述s15中,对所述至少一个改变后子区域对各自对应的重叠子函数进行相加,得到用于计算所述第一改变后区域和所述第二改变后区域之间的区域重叠程度的重叠函数。
[0140]
在上述各实施例中,代价函数与所述多个区域按照各自对应的位置改变参数发生改变后得到的多个改变后区域的区域重叠程度有关。为了确保各区域在优化过程中不会远离原来位置,上述代价函数还可与所述多个区域按照各自对应的位置改变参数发生改变后得到的多个改变后区域的区域位置改变总量有关。在另一实例中,为了确保各区域在优化过程中保持原有形状,上述代价函数还可与所述多个区域按照各自对应的位置改变参数发生改变后得到的多个改变后区域的区域内角改变总量有关。也即,所述代价函数还可与所述多个区域按照各自对应的位置改变参数发生改变后得到的多个改变后区域的区域位置改变总量和/或区域内角改变总量有关。
[0141]
在一种可实现的方案中,上述105中“构建以所述多个区域各自对应的位置改变参数为自变量的代价函数”,还可包括如下步骤:
[0142]
1055、分别构建用于计算所述多个改变后区域中各改变后区域对应的区域位置改变量的位置函数。
[0143]
1056、对所述多个改变后区域各自对应的位置函数进行相加,得到用于计算所述多个改变后区域的区域位置改变总量的位置总函数。
[0144]
其中,所述位置总函数以所述多个区域各自对应的位置改变参数为自变量。
[0145]
相应的,上述1044中“根据所述重叠总函数,确定所述代价函数”,具体为:
[0146]
s21、综合所述重叠总函数以及所述位置总函数,确定所述代价函数。
[0147]
可获取重叠总函数和位置总函数对应的权重,按照权重,对这两者进行加权求和,得到代价函数。权重的取值可以为一经验值,本技术实施例对此不作具体限定。
[0148]
在一实例中,各区域的位置信息包括各区域的多个顶点的顶点坐标;各区域对应的位置改变参数包括各区域的多个顶点各自对应的顶点位移参数。所述多个改变后区域中包括与所述多个区域中第三区域对应的第三改变后区域。所述第三改变后区域指代的是多
个改变后区域中任一个。所述第三改变后区域是基于第三区域的多个顶点对应的顶点位移参数改变第三区域得到的。第三区域的顶点x的顶点坐标为p
x
,第三改变后区域的顶点x,的顶点坐标为p
x
δ
px
,其中,δ
px
为第三区域的顶点x对应的顶点位移参数。
[0149]
上述1055中“构建用于计算所述第三改变后区域对应的区域位置改变量的位置函数”,具体可采用如下步骤来实现:
[0150]
s31、分别构建用于计算所述第三区域的多个顶点中各顶点对应的顶点位移参数的位移大小的位置子函数。
[0151]
s32、对所述第一区域的多个顶点各自对应的位置子函数进行求和,得到用于计算所述第三改变后区域对应的区域位置改变量的位置函数。
[0152]
上述s31中,顶点位移参数具体为顶点位移向量。该顶点位移向量具体可以为二维向量或三维向量。位移大小也即位移向量大小。
[0153]
可选地,上述105中“构建以所述多个区域各自对应的位置改变参数为自变量的代价函数”,还可包括如下步骤:
[0154]
1057、分别构建用于计算所述多个改变后区域中各改变后区域对应的区域内角改变量的内角函数;
[0155]
1058、对所述多个改变后区域各自对应的内角函数进行求和,得到用于计算所述多个改变后区域的区域内角改变总量的内角总函数。
[0156]
其中,所述内角总函数以所述两个区域各自对应的位置改变参数为自变量。
[0157]
相应的,上述1054中“根据所述重叠总函数,确定所述代价函数”,具体为:
[0158]
s22、综合所述重叠总函数以及所述内角总函数,确定所述代价函数。
[0159]
可获取重叠总函数和内角总函数对应的权重,按照权重,对这两者进行加权求和,得到代价函数。权重的取值可以为一经验值,本技术实施例对此不作具体限定。
[0160]
在另一实例中,上述s21中“综合所述重叠总函数以及所述位置总函数,确定所述代价函数”,具体可以为:综合所述重叠总函数、所述位置总函数以及所述内角总函数,确定所述代价函数。具体地,获取所述重叠总函数、所述位置总函数以及所述内角总函数各自对应的权重;结合所述权重,对所述重叠总函数、所述位置总函数以及所述内角总函数进行加权求和,得到所述代价函数。其中,所述重叠总函数、所述位置总函数以及所述内角总函数各自对应的权重可以为经验值,可根据实际需要来确定,例如:所述重叠总函数、所述位置总函数以及所述内角总函数各自对应的权重依次可取值为1.0e3,1.0,1.0e7。
[0161]
上述1057中,所述多个改变后区域中包括与所述多个区域中第四区域对应的第四改变后区域。所述第四改变后区域是由第四区域按照其对应的位置改变参数改变得到的。第四改变后区域指代的是所述多个改变后区域中任一个。
[0162]
在一实例中,上述1057中“构建用于计算所述第四改变后区域对应的区域内角改变量的内角函数”,具体可采用如下步骤来实现:
[0163]
s41、构建用于计算所述第四改变后区域的第一内角与所述第四区域中相应内角之间的角差异的内角子函数,以作为所述第四改变后区域的第一内角对应的内角子函数。
[0164]
其中,所述第四改变后区域的多个内角中包括所述第一内角。第一内角为多个内角中的任一个。
[0165]
s42、对所述第四改变后区域的多个内角各自对应的内角子函数进行求和,得到用
于计算所述第四改变后区域对应的区域内角改变量的内角函数。
[0166]
在一实例中,上述s41中,角差异可用第一内角的余弦值与该相应内角的余弦值的差值的绝对值来表示。
[0167]
上述内角子函数具体为:
[0168]
f3=abs(cos(ang(p
x
δ
px
))-cos(ang(p
x
)))
ꢀꢀꢀ
(4)
[0169]
其中,ang(p
x
δ
px
)为第一内角,ang(p
x
)为该相应内角。p
x
δ
px
为第一内角的顶点坐标,p
x
为该相应内角的顶点x的顶点坐标,δ
px
为相应内角的顶点x对应的位置改变参数的参数值。
[0170]
实际应用时,上述方法,还可包括:
[0171]
110、确定三维模型中第一二维平面上的多个平面区域,以作为所述多个区域。
[0172]
其中,所述第一二维平面可根据实际需要来设定。
[0173]
在一实例中,所述三维模型为三维房屋模型;所述多个平面区域为所述三维房屋模型所涉及的多个房间的二维地面区域。也就是说,第一二维平面为多个房间地面所在平面。
[0174]
相应的,上述104中“根据调整得到的参数值,修正所述多个区域各自的位置信息”,具体为:根据调整得到的参数值,修正所述三维模型。
[0175]
根据调整得到的多个平面区域各自对应的位置改变参数的参数值,分别调整所述多个平面区域各自所在的三维空间区域的位置信息,从而修正所述三维模型。
[0176]
在本实施例中,不直接处理3d模型,处理的是3d模型的2d平面数据,通过分开平面图上存在重叠等问题的区域去解决最终3d模型的重叠问题,可降低处理复杂度。
[0177]
以三维房屋模型为例,根据调整得到的多个房间的二维地面区域各自对应的位置改变参数的参数值,分别调整所述多个房间的三维空间区域的位置信息,从而修正所述三维模型。本实施例中,
[0178]
在本实施例中,不直接处理房屋3d模型,也不处理多层房屋模型,处理的是单层房屋模型的2d平面数据,通过分开平面图上重叠的房间去解决最终房屋模型的重叠问题。对于单层房屋模型,能够自动检测房屋模型的重叠程度,对于存在重叠的情况,能够自动进行快速处理。通过构造上述代价函数,将模型重叠处理转换成求解非线性最小二乘问题,利用数值优化,自动检测和处理模型重叠问题,可以有效减少模型后期处理的人工成本,还可有效提高处理效率。
[0179]
需要补充的是,本技术实施例中,基于区域(或子区域)的顶点对应的顶点位移参数,改变区域(或子区域),得到改变后区域(或改变后子区域),指的是,基于区域(或子区域)的顶点对应的顶点位移参数改变区域(或子区域)的顶点坐标,得到改变后区域(或改变后子区域)。
[0180]
上述多个区域的数量可以为两个及以上。当上述多个区域为两个区域时,上述数据处理方法为:
[0181]
501、确定两个区域各自对应的位置改变参数的参数值。
[0182]
502、基于所述参数值,改变所述两个区域,得到两个新区域。
[0183]
503、确定所述两个新区域不满足预设条件时,调整所述参数值,直至基于调整后参数值改变所述两个区域得到的两个新区域满足所述预设条件。
[0184]
504、根据调整得到的参数值,修正所述两个区域各自的位置信息。
[0185]
上述步骤501、502、503以及504的具体实现可参见上述各实施例中相应内容,在此不再赘述。
[0186]
这里需要说明的是:本技术实施例提供的所述方法中各步骤未尽详述的内容可参见上述实施例中的相应内容,此处不再赘述。此外,本技术实施例提供的所述方法中除了上述各步骤以外,还可包括上述各实施例中其他部分或全部步骤,具体可参见上述各实施例相应内容,在此不再赘述。
[0187]
图2示出了本技术又一实施例提供的界面交互方法的流程示意图。该方法的执行主体可以为客户端,也可以为服务端。其中,所述客户端可以是集成在终端上的一个具有嵌入式程序的硬件,也可以是安装在终端中的一个第一软件,还可以是嵌入在终端操作系统中的工具软件等,本技术实施例对此不作限定。该终端可以为包括手机、平板电脑、智能音箱等任意终端设备。其中,服务端可以是常用服务器、云端或虚拟服务器等,本技术实施例对此不作具体限定。
[0188]
如图2所示,该方法包括:
[0189]
201、在交互界面,展示房屋模型。
[0190]
所述房屋模型包括多个房间区域,房屋模型是基于所述多个房间区域中各房间区域的位置信息构建的。
[0191]
202、响应于用户针对所述房屋模型触发的第一修正操作,修正所述房屋模型。
[0192]
203、在所述交互界面,展示修正后房屋模型。
[0193]
其中,所述房屋模型的修正过程包括如下步骤:
[0194]
2021、确定所述多个房间区域各自对应的位置改变参数的参数值。
[0195]
2022、基于所述参数值,改变所述多个房间区域,得到多个新房间区域。
[0196]
2023、确定所述多个新房间区域不满足预设条件时,调整所述参数值,直至基于调整后参数值改变所述多个房间区域得到的多个新房间区域满足所述预设条件。
[0197]
2024、根据调整得到的参数值,修正所述房屋模型。
[0198]
上述201中,房屋模型具体可以是三维房屋模型。上述多个房间区域为所述三维房屋模型所涉及的多个房间的二维地面区域。具体地,在一实例中,上述方法,还包括:确定所述多个房间各自在所述房屋模型中地面所在二维平面上的二维地面区域,以作为所述多个房间区域。
[0199]
上述202中,上述交互界面上还可显示一修正控件,用户可通过该触发该修正控件来触发对该房屋模型的第一修正操作,从而达到一键修正的效果。
[0200]
上述203中,可在上述交互界面,与修正前的房屋模型并列展示修正后的房屋模型,或者以替换掉修正前的房屋模型的方式展示修正后的房屋模型,本技术实施例对此不作具体限定。
[0201]
上述步骤2021、2022、2023和2024的具体实现方式可参见上述各实施例中相应内容,在此不再赘述。
[0202]
可选地,上述方法,还可包括:
[0203]
204、根据所述用户针对所述修正后房屋模型中房间区域执行的变形操作或移动操作的操作数据,修正所述房屋模型。
[0204]
在交互界面展示修正后房屋模型后,用户还可在交互界面上,针对修正后房屋模型中一个或多个房间区域执行变形操作或移动操作,根据变形操作或移动操作的操作数据,修正所述修正后房屋模型。这样,在自动修正的基础上结合用户的手动修正,不仅可满足用户的介入需求,还能提高最后修正效果。
[0205]
这里需要说明的是:本技术实施例提供的所述方法中各步骤未尽详述的内容可参见上述实施例中的相应内容,此处不再赘述。此外,本技术实施例提供的所述方法中除了上述各步骤以外,还可包括上述各实施例中其他部分或全部步骤,具体可参见上述各实施例相应内容,在此不再赘述。
[0206]
下面将举例对本方案进行介绍:
[0207]
图1a所示,三维房屋模型涉及的多个房间的二维地面区域有:第一卧室地面区域a、第二卧室地面区域b,卫生间地面区域c、客厅地面区域d和厨房地面区域e。需要说明的是,为了简化处理,图1a中交互界面展示的仅为2d房屋模型,在实际应用时,交互界面展示的可以为3d房屋模型。图1a中阴影部分即为区域重叠空间。为了消除模型空间重叠情况,可采用上述各实施例中提供的技术方案来实现。具体地,
[0208]
步骤100:通过迭代的方式调整多个房间的二维地面区域各自对应的位置改变参数的参数值直至基于调整后参数值改变多个房间的二维地面区域得到的多个房间的新二维地面区域满足预设条件。
[0209]
步骤200:根据调整得到的各房间的二维地面区域对应的位置改变参数的参数值,分别修正各房间的三维空间区域的位置信息。
[0210]
步骤300:显示基于修改后各房间的三维空间区域的位置信息,构建的房屋模型。
[0211]
用户可通过触发交互界面上的“修正”控件10,触发对房屋模型的第一修正操作。具体的修正过程可参见上述各实施例中相应内容,在此不再赘述。
[0212]
图3示出了本技术又一实施例提供的数据处理装置的结构框图。如图3所示,该装置,包括:
[0213]
第一确定模块301,用于确定多个区域各自对应的位置改变参数的参数值。
[0214]
第一改变模块302,用于基于所述参数值,改变所述多个区域,得到多个新区域。
[0215]
第一调整模块303,用于确定所述多个新区域不满足预设条件时,调整所述参数值,直至基于调整后参数值改变所述多个区域得到的多个新区域满足所述预设条件;
[0216]
第一修正模块304,用于根据调整得到的参数值,修正所述多个区域各自的位置信息。
[0217]
可选地,上述装置,还可包括:
[0218]
第一构建模块,用于构建以所述多个区域各自对应的位置改变参数为自变量的代价函数;其中,所述代价函数与多个改变后区域的区域重叠程度有关;所述多个改变后区域是基于所述位置改变参数改变所述多个区域得到的;
[0219]
第一输入模块,用于将所述参数值输入至所述代价函数中,得到所述代价函数的输出值;
[0220]
第一判定模块,用于所述输出值大于或等于预设阈值时,确定基于所述参数值改变所述多个区域得到的多个新区域不满足所述预设条件。
[0221]
可选地,上述装置,还可包括:
[0222]
第一剖分模块,用于对所述多个区域中各区域进行三角剖分,得到各区域对应的至少一个子区域;
[0223]
其中,各区域的位置信息包括各区域对应的至少一个子区域的顶点坐标。各区域对应的位置改变参数包括各区域对应的至少一个子区域的顶点对应的顶点位移参数。
[0224]
可选地,所述至少一个改变后区域对中包括第一改变后区域对;所述第一改变后区域对中包括与所述多个区域中第一区域对应的第一改变后区域和与所述多个区域中第二区域对应的第二改变后区域;所述至少一个改变后子区域对中包括第一改变后子区域对;所述第一改变后子区域对中包括第一改变后子区域和第二改变后子区域;所述第一改变后子区域与所述第一区域对应的至少一个子区域中第一子区域对应;所述第二改变后子区域与所述第二区域对应的至少一个子区域中第二子区域对应;上述装置,还可包括:
[0225]
第二确定模块,用于若所述第一子区域的轴对齐包围盒与所述第二子区域的轴对齐包围盒不相交,则将用于计算所述第一改变后子区域对的区域重叠面积的重叠子函数确定为零函数;
[0226]
第一触发模块,用于若所述第一子区域的轴对齐包围盒与所述第二子区域的轴对齐包围盒相交,则触发所述根据所述第一改变后子区域对中的两个改变后子区域的顶点坐标,构建用于计算所述第一改变后子区域对的区域重叠面积的重叠子函数的步骤。
[0227]
可选地,上述装置,还可包括:
[0228]
第三确定模块,用于确定三维模型中第一二维平面上的多个平面区域,以作为所述多个区域。
[0229]
上述第一修正模块304,具体用于根据调整得到的参数值,修正所述三维模型。
[0230]
这里需要说明的是:上述实施例提供的数据处理装置可实现上述各方法实施例中描述的技术方案,上述各模块具体实现的原理可参见上述各方法实施例中的相应内容,此处不再赘述。
[0231]
图4示出了本技术又一实施例提供的界面交互装置的结构框图。如图3所示,该装置,包括:
[0232]
第一展示模块401,用于在交互界面,展示房屋模型;所述房屋模型包括多个房间区域;所述房屋模型是基于所述多个房间区域中各房间区域的位置信息构建的;
[0233]
第二修正模块402,用于响应于用户针对所述房屋模型触发的第一修正操作,修正所述房屋模型;
[0234]
第一展示模块401,还用于在所述交互界面,展示修正后房屋模型;
[0235]
其中,所述房屋模型的修正过程包括如下步骤:
[0236]
确定所述多个房间区域各自对应的位置改变参数的参数值;
[0237]
基于所述参数值,改变所述多个房间区域,得到多个新房间区域;
[0238]
确定所述多个新房间区域不满足预设条件时,调整所述参数值,直至基于调整后参数值改变所述多个房间区域得到的多个新房间区域满足所述预设条件;
[0239]
根据调整得到的参数值,修正所述房屋模型。
[0240]
这里需要说明的是:上述实施例提供的界面交互装置可实现上述各方法实施例中描述的技术方案,上述各模块具体实现的原理可参见上述各方法实施例中的相应内容,此处不再赘述。
[0241]
图5示出了本技术一实施例提供的电子设备的结构示意图。如图所示,所述电子设备包括存储器1101以及处理器1102。存储器1101可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器1101可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0242]
所述存储器,用于存储程序;
[0243]
所述处理器1102,与所述存储器1101耦合,用于执行所述存储器1101中存储的所述程序,以用于实现上述各实施例中数据处理方法或界面交互方法。
[0244]
进一步,如图5所示,电子设备还包括:通信组件1103、显示器1104、电源组件1105、音频组件1106等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
[0245]
相应地,本技术实施例还提供一种存储有计算机程序的计算机可读存储介质,所述计算机程序被计算机执行时能够实现上述各实施例提供的数据处理方法、界面交互方法的步骤或功能。
[0246]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0247]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0248]
最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜