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

数据处理的方法、装置、存储介质和计算机程序产品与流程

2022-03-16 16:41:53 来源:中国专利 TAG:


1.本公开涉及一种数据处理的方法、装置、存储介质和计算机程序产品。


背景技术:

2.户型的描述文件又称为户型字典,用于从计算机存储数据的层面描述房屋的结构。户型的描述文件中包括若干点的坐标,这些点构成若干线段,其中一部分线段用于描述房屋内部的分间结构(例如分间轮廓),这些分间组成房屋的总体结构;另外一部分线段用于来描述门和窗户。
3.相关技术,户型的描述文件是根据房屋的三维模型生成的,而房屋的三维模型则是通过相关算法将全景图像转化而来的。


技术实现要素:

4.本公开实施例提供一种数据处理的方法、装置、存储介质和计算机程序产品,以提高户型的描述文件的准确度。
5.本公开实施例的一个方面,提供一种数据处理的方法,包括:获取待处理的文件集合,文件集合中的待处理文件包括一个目标文件以及至少一个候选文件,目标文件为目标户型的描述文件,候选文件为候选户型的描述文件;基于待处理文件,确定该待处理文件描述的户型的户型轮廓以及户型内的分间信息,分间信息包括户型内分间的位置、方向和轮廓中的至少一项;对候选户型的户型轮廓作姿态变换,使得候选户型的户型轮廓与目标户型的户型轮廓对齐,得到对齐后的户型轮廓;更新分间信息,得到更新后的分间信息;基于目标户型的户型轮廓和分间信息以及对齐后的户型轮廓和更新后的分间信息,确定目标户型与至少一个候选户型的相似程度;将目标文件替换为相似程度最高的候选户型对应的候选文件,以更新目标户型的描述文件。
6.在一些实施例中,基于待处理文件,确定该待处理文件描述的户型的户型轮廓以及户型内的分间信息,包括:从待处理文件中提取点集和线段集;从点集中确定一个遍历起点,遍历起点的横坐标和纵坐标均为极值;以遍历起点为起点,沿线段集中的线段遍历点集,得到由遍历轨迹形成的多个封闭轮廓;从多个封闭轮廓中确定待处理文件描述的户型的户型轮廓和户型内的分间轮廓,其中,分间轮廓的内部不包含有其他封闭轮廓;基于分间轮廓,确定分间在户型内的位置和方向,得到分间信息。
7.在一些实施例中,对候选户型的户型轮廓作姿态变换之前,方法还包括:将分间轮廓中共线的多个线段合并为一个线段。
8.在一些实施例中,对候选户型的户型轮廓作姿态变换,使得候选户型的户型轮廓与目标户型的户型轮廓对齐,得到对齐后的户型轮廓,包括:从待处理文件中提取户型的入户门对应的线段,作为第一线段;沿第一线段的预设法线方向,构建预设长度的第二线段,第二线段的第一端点为第一线段的中点;基于第一线段的两个端点的坐标和预设长度,确定第二线段的第二端点的坐标;将第一线段的两个端点和第二端点作为关键点,并分别按
照第一预设顺序和第二预设顺序排列关键点的坐标,得到待处理文件的第一坐标序列和第二坐标序列;基于目标文件的第一坐标序列或第二坐标序列以及候选文件的第一坐标序列和第二坐标序列,分别确定候选户型相对于目标户型的第一姿态变换矩阵和第二姿态变换矩阵;基于第一姿态变换矩阵和第二姿态变换矩阵,分别更新户型轮廓上点的坐标,得到候选户型的户型轮廓的第一姿态和第二姿态;确定第一姿态和第二姿态各自与目标户型的户型轮廓的重叠区域,将重叠区域面积较大的姿态对应的候选户型的户型轮廓确定为对齐后的户型轮廓,并将该姿态对应的姿态变换矩阵确定为目标姿态变换矩阵。
9.在一些实施例中,基于对齐后的户型轮廓,更新分间信息,得到更新后的分间信息,包括:基于目标姿态变换矩阵,对候选户型内分间的分间轮廓作姿态变换,得到更新后的分间轮廓;基于更新后的分间轮廓,更新候选户型内分间的位置和方向,得到更新后的分间信息。
10.在一些实施例中,基于对齐后的户型轮廓和更新后的分间信息,确定目标户型与至少一个候选户型的相似程度,包括:基于目标户型的户型轮廓与对齐后的户型轮廓的重叠区域面积,确定户型轮廓相似度;基于目标户型的分间信息与更新后的分间信息,确定分间相似度参数,并基于分间相似度参数确定分间相似度,分间相似度参数至少包括以下之一:位置相似度、方向相似度、分间元素相似度、区域重叠相似度;将户型轮廓相似度和分间相似度的加权和确定为相似程度。
11.在一些实施例中,该方法还包括:基于待处理文件,生成待处理文件描述的户型的户型图像;以及,基于对齐后的户型轮廓和更新后的分间信息,更新候选户型的户型图像。
12.本公开实施例的又一个方面,提供一种数据处理的装置,包括:数据获取单元,被配置成获取待处理的文件集合,文件集合中的待处理文件包括一个目标文件以及至少一个候选文件,目标文件为目标户型的描述文件,候选文件为候选户型的描述文件;数据处理单元,被配置成基于待处理文件,确定该待处理文件描述的户型的户型轮廓以及户型内的分间信息,分间信息包括户型内分间的位置、方向和轮廓中的至少一项。姿态变换单元,被配置成对候选户型的户型轮廓作姿态变换,使得候选户型的户型轮廓与目标户型的户型轮廓对齐,得到对齐后的户型轮廓;信息更新单元,被配置成更新分间信息,得到更新后的分间信息;数据匹配单元,被配置成基于目标户型的户型轮廓和分间信息以及对齐后的户型轮廓和更新后的分间信息,确定目标户型与至少一个候选户型的相似程度;数据迁移单元,被配置成将目标文件替换为相似程度最高的候选户型对应的候选文件,以更新目标户型的描述文件。
13.本公开实施例的又一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述任一实施例中数据处理的方法。
14.本公开实施例的又一个方面,提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述任一实施例中数据处理的方法。
15.本公开的实施例提供的数据处理的方法,可以从待处理文件中确定户型的户型轮廓以及户型内的分间信息,然后对候选户型的户型轮廓作姿态变换,将候选户型的户型轮廓与目标户型的户型轮廓对齐,并更新分间信息;之后基于目标户型的户型轮廓和分间信息以及对齐后的户型轮廓和更新后的分间信息,确定目标户型与候选户型的相似程度,并将目标文件替换为相似程度最高的候选文件,以更新目标户型的描述文件,可以提高目标
户型的描述文件的准确度。
16.下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
17.构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。
18.参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
19.图1为本公开数据处理的方法中待处理文件的示意图;
20.图2为本公开数据处理的方法的一个实施例的流程图;
21.图3为本公开数据处理的方法的一个实施例中户型轮廓和分间信息的示意图;
22.图4为本公开数据处理的方法的一个实施例中对齐后的户型轮廓和更新后的分间信息的示意图;
23.图5为本公开数据处理的方法的一个实施例中确定户型轮廓和分间信息的流程图;
24.图6为本公开数据处理的方法的一个实施例中姿态变换的流程图;
25.图7为本公开数据处理的方法的一个实施例中确定相似程度的流程图;
26.图8为本公开数据处理的装置一个实施例的结构示意图;
27.图9为本公开电子设备一个应用实施例的结构示意图。
具体实施方式
28.现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
29.本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
30.还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
31.还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
32.另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
33.还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
34.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
35.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
36.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
37.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
38.本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
39.终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
40.本公开概述
41.在实施本公开的过程中,发明人发现,在将全景图像转化为三维模型时,当全景图像的图像质量较差或相关算法的误差较大时,房屋的三维模型的精度也会相应地降低,导致根据三维模型生成的户型的描述文件的质量较差,例如可能存在户型内分间的空间混淆、轮廓变形等问题。
42.示例性概述
43.下面结合图1对本公开数据处理的方法进行示例性说明。图1为本公开数据处理的方法中待处理文件的示意图,如图1所示,户型的描述文件可以为json格式的数据文件,其中,字段110表示存储点集的数组,其中按序存储有户型中所有点在户型坐标系中的坐标,例如可以包括墙线的拐点、端点、角点、交点等,户型坐标系通常是以户型的中心点为原点、根据户型的朝向构建的平面直角坐标系。字段120表示存储线段集的数组,其中按序存储有点集中各个点的两两对应关系,每两个对应的点构成一个线段,线段例如可以表征墙线、门、窗等,线段的存储顺序例如可以根据线段在户型坐标系中的位置按照顺时针或逆时针排列而确定。字段130表示存储分间信息的数组,其中按序存储有各个线段所归属的分间,属于同一个分间的线段可以表征改分间的结构特征,例如可以包括分间轮廓、在户型中的位置等。字段140表示存储户型中的门和窗与线段的对应关系的数组,根据该对应关系,可以从120中确定门或窗的空间特征,例如可以包括姿态、位置等。字段150表示存储户型中物品信息的数组,其中存储有户型中物品的信息,物品例如可以包括家具、家电等,物品的信息例如可以包括位置、方向等。
44.从图1可以看出,户型的描述文件通过点和线段表征有户型的结构信息。
45.当目标户型的描述文件质量较差时,可以将目标文件以及至少一个候选文件作为待处理文件,构建待处理的文件集合,其中,候选文件所描述的候选户型与目标户型相同或相似,例如目标户型和候选户型可以是同一个小区中的房子。之后,可以根据待处理文件确
定户型轮廓和户型内的分间信息。然后,对候选户型的户型轮廓与目标户型的轮廓对齐,并更新分间信息。再之后,基于对齐后的轮廓和更新后的分间信息,分别对比目标户型与各个候选户型,得到各个候选户型与目标户型的相似程度,并从中确定出相似程度最高的候选户型。最后用该候选户型的描述文件替换目标户型的描述文件,可以将质量较差的描述文件替换为质量较高的描述文件,从而提高户型描述文件的质量。
46.示例性方法
47.下面参考图2,图2为本公开数据处理的方法的一个实施例的流程图,如图2所示,该流程包括以下步骤。
48.步骤210、获取待处理的文件集合。
49.其中,文件集合中的待处理文件包括一个目标文件以及至少一个候选文件,目标文件为目标户型的描述文件,候选文件为候选户型的描述文件。
50.在本实施例中,目标文件表征质量较差的户型描述文件,候选文件表征质量较好的户型描述文件。
51.作为示例,执行主体可以是终端电脑,其上可以存储有若干户型的描述文件。当需要对目标户型的描述文件进行替换时,可以首先根据目标户型在真实世界中的地址,从数据库中检索出目标户型对应的候选户型,例如可以目标户型和候选户型可以位于同一个小区中。之后,将目标户型的描述文件(即目标文件)和至少一个候选户型的描述文件(即候选文件)作为待处理文件,构建待处理的文件集合。
52.步骤220、基于待处理文件,确定该待处理文件描述的户型的户型轮廓以及户型内的分间信息。
53.其中,分间信息包括户型内分间的位置、方向和轮廓中的至少一项。
54.在本实施例中,户型轮廓表征房屋整体在二维平面内的形状,分间轮廓表征分间在房屋内部的房间在二维平面内的形状,分间的方向可以通过分间的门或窗在分间中的位置表征。
55.执行主体可以根据待处理文件中的点、线段以及线段归属的分间,将线段围成分间的轮廓,然后将各个分间组合成整体户型,再确定户型轮廓。
56.进一步结合图3,图3为本公开数据处理的方法的一个实施例中户型轮廓和分间信息的示意图。如图3所示,户型a可以表示目标户型,户型b可以表示候选户型。310表示户型a的入户门,320、360表示户型a内的分间,330、350表示窗,340表示分间的门。370、380表示户型b内的分间,390表示户型b的入户门。
57.从图3可以看出,由于户型a与户型b的朝向不同,将两者的户型轮廓映射至同一个坐标系时,两者的户型轮廓处于不对齐的状态。
58.步骤230、对候选户型的户型轮廓作姿态变换,使得候选户型的户型轮廓与目标户型的户型轮廓对齐,得到对齐后的户型轮廓。
59.在本实施例中,对齐后的户型轮廓表示姿态变换后的候选户型的户型轮廓。
60.作为示例,执行主体可以首先确定目标户型的户型坐标系和候选户型的户型坐标系,确定两个坐标系之间的相对姿态,然后基于该相对姿态对候选户型的户型轮廓执行旋转操作和平移操作,以将候选户型的户型轮廓与目标户型的户型轮廓对齐,得到对齐后的户型轮廓。
61.进一步结合图4,如图4所示,姿态变换后的户型b的户型轮廓姿态与户型a对齐。
62.步骤240、更新分间信息,得到更新后的分间信息。
63.在本实施例中,根据分间在户型中的位置和方向保持不变的特性,可以对分间轮廓执行步骤230中的姿态变换步骤,以更新分间的轮廓姿态和方向,得到更新后的分间信息。
64.步骤250、基于目标户型的户型轮廓和分间信息以及对齐后的户型轮廓和更新后的分间信息,确定目标户型与至少一个候选户型的相似程度。
65.作为示例,执行主体可以从以下几个维度对目标户型和候选户型进行对比:户型轮廓的面积、户型轮廓的形状、分间的数量、各个分间的大小、分间的方向、分间在户型内的分布等等,然后根据每一个维度的对比结果,确定该维度的评分,目标户型和候选户型在同一个维度中的参数越接近,则两者在该维度下的相似度评分越高。最后,将各个维度的评分取和或加权和,得到的数值即可表征目标户型与候选户型的相似程度。
66.步骤260、将目标文件替换为相似程度最高的候选户型对应的候选文件,以更新目标户型的描述文件。
67.作为示例,户型a为目标户型,目标户型文件为a.json,候选户型包括b、c、d,对应的候选文件依次为b.json、c.json、d.json。在步骤250中确定出的户型b、c、d的相似程度以此为90、80、70,则用b.json替换a.json,将b.json作为户型a的户型描述文件存入数据库。
68.本实施例提供的数据处理的方法,可以从待处理文件中确定户型的户型轮廓以及户型内的分间信息,然后对候选户型的户型轮廓作姿态变换,将候选户型的户型轮廓与目标户型的户型轮廓对齐,并更新分间信息;之后基于目标户型的户型轮廓和分间信息以及对齐后的户型轮廓和更新后的分间信息,确定目标户型与候选户型的相似程度,并将目标文件替换为相似程度最高的候选文件,以更新目标户型的描述文件,可以提高目标户型的描述文件的准确度。
69.接着参考图5,在图2所示的实施例的一些可选的实现方式中,步骤230还可以采用图5所示的流程,该流程包括以下步骤。
70.步骤510、从待处理文件中提取点集和线段集。
71.继续结合图1进行示例性说明,执行主体可以从json文件中字段110中提取点集,从字段120中提取线段集。
72.步骤520、从点集中确定一个遍历起点。
73.其中,遍历起点的横坐标和纵坐标均为极值。
74.作为示例,若点集中所有点的横坐标的极大值a和极小值b,纵坐标的极大值c和极小值d,则点集中的以下4个点均可以作为遍历起点:(a,c)、(b,c)、(a,d)、(b,d)。
75.步骤530、以遍历起点为起点,沿线段集中的线段遍历点集,得到由遍历轨迹形成的多个封闭轮廓。
76.在一个具体的示例中,以线段的两个端点表征线段。遍历起点为点e,首先沿线段ef遍历至点f,若点f同时为线段fg和线段fi的端点,则分别沿线段fg和线段fi进行遍历,此处以线段fg为例。执行主体沿线段fg和线段gh依次遍历点g和点h,之后沿线段he遍历回点e,此时可以得到一个由线段ef、线段fg、线段gh和线段he组成的遍历轨迹,该遍历轨迹形成一个封闭轮廓。之后,可以再从点f开始,沿线段fi进行遍历,直至点集中的所有点均被遍
历,可以得到多个封闭轮廓。
77.步骤540、从多个封闭轮廓中确定待处理文件描述的户型的户型轮廓和户型内的分间轮廓。
78.其中,分间轮廓的内部不包含有其他封闭轮廓。
79.作为示例,执行主体可以分别确定各个封闭轮廓的面积,然后将面积最大的封闭轮廓确定为户型轮廓,例如,执行主体可以在封闭轮廓内部随机选取一个点,然后将该点与封闭轮廓上的线段的端点连接,将封闭轮廓分割成若干个三角区域,三角区域的面积之和即为封闭区域的面积。
80.在本实现方式中,通过直线的交点数量确定线段是否位于户型轮廓上,可以提高运算效率。
81.步骤550、基于分间轮廓,确定分间在户型内的位置和方向,得到分间信息。
82.作为示例,可以通过分间轮廓的中心点表征分间轮廓的位置,可以根据分间轮廓中门的位置确定分间的方向,例如,可以将门的法线方向确定为分间的方向。
83.从图5可以看出,图5所示的流程可以通过沿线段遍历点集中点的得到多个封闭轮廓,然后从中确定出户型轮廓和分间信息,可以快速准确地基于待处理文件确定户型轮廓和分间信息。
84.在图5所示的实施例的一些可选的实现方式中,对候选户型的户型轮廓作姿态变换之前,还可以包括:将分间轮廓中共线的多个线段合并为一个线段。可以剔除冗余数据,降低姿态变换过程中的运算量。
85.接着参考图6,图6为本公开数据处理的方法的一个实施例中姿态变换的流程图,如图6所示,上述步骤230可以进一步包括以下步骤。
86.步骤610、从待处理文件中提取户型的入户门对应的线段,作为第一线段。
87.在本实施例中,考虑到每个户型只包括一个入户门,通过入户门的姿态表征户型轮廓的姿态,可以将入户门的位置和姿态作为基准对户型轮廓进行姿态变换。
88.进一步结合图1进行示例性说明,执行主体可以从字段140中确定出入户门对应的线段,然后从字段120中确定出该线段对应的两个端点,即可得到第一线段。
89.步骤620、沿第一线段的预设法线方向,构建预设长度的第二线段。
90.其中,第二线段的第一端点为第一线段的中点。
91.在本实施例中,针对不同的户型的第一线段构建第二线段时,采用统一的法线方向,例如可以均采用指向户型内部的法线方向,或者均采用指向户型外部的法线方向。预设长度可以取任意长度,本实施例对此不作限定。
92.步骤630、基于第一线段的两个端点的坐标和预设长度,确定第二线段的第二端点的坐标。
93.步骤640、将第一线段的两个端点和第二端点作为关键点,并分别按照第一预设顺序和第二预设顺序排列关键点的坐标,得到待处理文件的第一坐标序列和第二坐标序列。
94.在本实施例中,第一预设顺序与第二预设顺序可以是相反的排列顺序。
95.作为示例,第一线段的两个端点为点a和点b,第二线段的第二端点为点c,则,第一坐标序列可以为(a,b,c),第二坐标序列可以为(c,b,a)。
96.步骤650、基于目标文件的第一坐标序列或第二坐标序列以及候选文件的第一坐
标序列和第二坐标序列,分别确定候选户型相对于目标户型的第一姿态变换矩阵和第二姿态变换矩阵。
97.在本实施例中,不同的户型坐标系均为世界坐标系下的局部坐标系。根据步骤640中确定出的三个关键点,可以构建两个相互垂直的向量,该两个向量用于表征入户门的姿态。对于两个户型轮廓,将两者的入户门的对齐,即可实现两个户型轮廓的对齐。例如,执行主体可以首先根据两个入户门中点的坐标的差值,确定平移距离,然后根据两个户型轮廓中第二线段的方向向量之间的夹角确定旋转角度,再将平移距离和旋转角度组合成姿态变换矩阵。
98.进一步结合图3和图4进行示例性说明,可以通过入户门310和入户门390的姿态分别表征户型a和户型b的户型轮廓的姿态。如图4所示,将入户门390的姿态调整至与入户门310的姿态一致后,实现了户型a和户型b的户型轮廓的对齐。
99.需要说明的是,可以采用目标文件的第一坐标序列或第二坐标序列表征目标户型的入户门的姿态,但在计算不同的候选户型对应的姿态转换矩阵时,应采用同一个坐标序列。
100.在一个具体的示例中,目标文件采用第一坐标序列(a,b,c)表征入户门的姿态,候选文件的第一坐标序列为(d,e,f),第二坐标序列为(f,e,d)。则执行主体可以基于(a,b,c)和(d,e,f),求解两个入户门之间的第一相对姿态,然后根据第一相对姿态确定出第一姿态转换矩阵;同时,可以基于(a,b,c)和(f,e,d),求解两个入户门之间的第二相对姿态,然后根据第二相对姿态确定出第二姿态转换矩阵。其中,第一相对姿态与第二相对姿态是相对于目标户型的入户门的法线方向对称的,表示从两个方向实现与目标户型的对齐。
101.步骤660、基于第一姿态变换矩阵和第二姿态变换矩阵,分别更新户型轮廓关键点的坐标,得到候选户型的户型轮廓的第一姿态和第二姿态。
102.在本实施例中,执行主体将候选户型的户型轮廓上点的坐标左乘第一姿态变换矩阵,即可将候选户型的户型轮廓变换至第一姿态;执行主体将候选户型的户型轮廓上点的坐标左乘第二姿态变换矩阵,即可将候选户型的户型轮廓变换至第二姿态
103.步骤670、确定第一姿态和第二姿态的各自与目标户型的户型轮廓的重叠区域,将重叠区域面积较大的姿态对应的候选户型的户型轮廓确定为对齐后的户型轮廓,并将该姿态对应的姿态变换矩阵确定为目标姿态变换矩阵。
104.从图6可以看出,图6所示的实施例以入户门的姿态表征户型轮廓的姿态,并以入户门为基准确定姿态转换矩阵,进而实现候选户型的户型轮廓的姿态变换,可以快速准确地实现候选户型的户型轮廓与目标户型的户型轮廓的对齐。
105.在图6所示的实施例的一些可选的实现方式中,还可以进一步包括:基于目标姿态变换矩阵,对候选户型内分间的分间轮廓作姿态变换,得到更新后的分间轮廓;基于更新后的分间轮廓,更新候选户型内分间的位置和方向,得到更新后的分间信息。通过目标姿态变换矩阵可以实现对户型内分间轮廓的姿态变换,并根据姿态变换后的分间轮廓更新分间的位置和方向,可以保持分间的空间特征与户型整体特征之间的一致性。
106.接着参考图7,图7为本公开数据处理的方法的一个实施例中确定相似程度的流程图,如图7所示,上述步骤250还可以包括如下步骤。
107.步骤710、基于目标户型的户型轮廓与对齐后的户型轮廓的重叠区域面积,确定户
型轮廓相似度。
108.作为示例,可以基于重叠区域的面积与两个户型轮廓的面积和的比值确定户型轮廓相似度,比值越接近0.5,户型轮廓相似度则越高。
109.步骤720、基于目标户型的分间信息与更新后的分间信息,确定分间相似度参数,并基于分间相似度参数确定分间相似度,分间相似度参数至少包括以下之一:位置相似度、方向相似度、分间元素相似度、区域重叠相似度。
110.位置相似度表征两个户型中分间的空间分布的相似程度。方向相似度表征两个户型中分间朝向的相似程度。分间元素例如可以包括窗、门以及分间中的物品,则可以通过分间中元素的类型、数量确定分间元素相似度。区域重叠相似度表征两个户型中对应分间的分间轮廓的相似程度。
111.执行主体可以分别确定各个分间相似度参数的数组,然后将各个数值的加权和确定为分间相似度。
112.在一个具体的示例中,分间相似程度参数还可以包括两个户型中匹配的分间的数量。执行主体可以将分间的中心点与分间的门的中点之间的连线作为该分间的方向向量,可以得到两个户型中所有分间的方向向量,然后可以从候选户型中任取一个方向向量,分别计算该方向向量与目标户型的各方向向量的夹角,并对比该方向方向与目标户型的各方向向量的模长,基于夹角和模长确定出与该方向向量最相似的方向向量,则该两个方向向量对应的分间即为匹配的分间。匹配的分间的比例越大,则分间相似程度越高。
113.进一步地,还可以将其中一个或多个分间相似度参数作为其余分间相似度参数的权重系数,并将得到的加权和作为分间相似度。例如,可以将分间元素相似度作为区域重叠相似度的系数,将两者的乘积作为分间相似度。
114.步骤730、将户型轮廓相似度和分间相似度的加权和确定为相似程度。
115.从图7可以看出,图7所示的实现方式可以根据户型轮廓相似度和分间相似度确定候选户型与目标户型的相似程度,可以更准确地表征候选户型与目标户型的相似程度。
116.在上述实施例的一些可选的实现方式中,该方法还可以包括:基于待处理文件,生成待处理文件描述的户型的户型图像;以及,基于对齐后的户型轮廓和更新后的分间信息,更新候选户型的户型图像。
117.在本实现方式中,执行主体可以将点在户型坐标系中的坐标映射为图像坐标,以此生成户型图像,从而实现户型描述文件的可视化。
118.示例性装置
119.图8,本公开实施例的又一个方面,提供一种数据处理的装置,包括:数据获取单元810,被配置成获取待处理的文件集合,文件集合中的待处理文件包括一个目标文件以及至少一个候选文件,目标文件为目标户型的描述文件,候选文件为候选户型的描述文件;数据处理单元820,被配置成基于待处理文件,确定该待处理文件描述的户型的户型轮廓以及户型内的分间信息,分间信息包括户型内分间的位置、方向和轮廓中的至少一项。姿态变换单元830,被配置成对候选户型的户型轮廓作姿态变换,使得候选户型的户型轮廓与目标户型的户型轮廓对齐,得到对齐后的户型轮廓;信息更新单元840,被配置成更新分间信息,得到更新后的分间信息;数据匹配单元850,被配置成基于目标户型的户型轮廓和分间信息以及对齐后的户型轮廓和更新后的分间信息,确定目标户型与至少一个候选户型的相似程度;
数据迁移单元860,被配置成将目标文件替换为相似程度最高的候选户型对应的候选文件,以更新目标户型的描述文件。
120.在本实施例中,数据处理单元820进一步包括:提取模块,被配置呈从待处理文件中提取点集和线段集;起点确定模块,被配置成从点集中确定一个遍历起点,遍历起点的横坐标和纵坐标均为极值;遍历模块,被配置成以遍历起点为起点,沿线段集中的线段遍历点集,得到由遍历轨迹形成的多个封闭轮廓;轮廓确定模块,被配置成从多个封闭轮廓中确定待处理文件描述的户型的户型轮廓和户型内的分间轮廓,其中,分间轮廓的内部不包含有其他封闭轮廓;更新模块,被配置成基于分间轮廓,确定分间在户型内的位置和方向,得到分间信息。
121.在本实施例中,该装置还包括预处理单元,被配置成:将分间轮廓中共线的多个线段合并为一个线段。
122.在本实施例中,姿态变换单元830进一步包括:第一线段模块,被配置成从待处理文件中提取户型的入户门对应的线段,作为第一线段;第二线段模块,被配置成沿第一线段的预设法线方向,构建预设长度的第二线段,第二线段的第一端点为第一线段的中点;坐标确定模块,被配置成基于第一线段的两个端点的坐标和预设长度,确定第二线段的第二端点的坐标;序列构建模块,被配置成;将第一线段的两个端点和第二端点作为关键点,并分别按照第一预设顺序和第二预设顺序排列关键点的坐标,得到待处理文件的第一坐标序列和第二坐标序列;矩阵生成模块,被配置成基于目标文件的第一坐标序列或第二坐标序列以及候选文件的第一坐标序列和第二坐标序列,分别确定候选户型相对于目标户型的第一姿态变换矩阵和第二姿态变换矩阵;姿态变换模块,被配置成基于第一姿态变换矩阵和第二姿态变换矩阵,分别更新户型轮廓上点的坐标,得到候选户型的户型轮廓的第一姿态和第二姿态;矩阵确定模块,被配置成确定第一姿态和第二姿态各自与目标户型的户型轮廓的重叠区域,将重叠区域面积较大的姿态对应的候选户型的户型轮廓确定为对齐后的户型轮廓,并将该姿态对应的姿态变换矩阵确定为目标姿态变换矩阵。
123.在本实施例中,信息更新单元840进一步包括:轮廓更新模块,被配置成基于目标姿态变换矩阵,对候选户型内分间的分间轮廓作姿态变换,得到更新后的分间轮廓;方位更新模块,被配置成基于更新后的分间轮廓,更新候选户型内分间的位置和方向,得到更新后的分间信息。
124.在本实施例中,数据匹配单元850进一步包括:轮廓匹配模块,被配置成基于目标户型的户型轮廓与对齐后的户型轮廓的重叠区域面积,确定户型轮廓相似度;分间匹配模块,被配置成基于目标户型的分间信息与更新后的分间信息,确定分间相似度参数,并基于分间相似度参数确定分间相似度,分间相似度参数至少包括以下之一:位置相似度、方向相似度、分间元素相似度、区域重叠相似度;相似度确定模块,被配置成将户型轮廓相似度和分间相似度的加权和确定为相似程度。
125.在本实施例中,该装置还包括可视化单元,被配置成:基于待处理文件,生成待处理文件描述的户型的户型图像;以及,基于对齐后的户型轮廓和更新后的分间信息,更新候选户型的户型图像。
126.另外,本公开实施例还提供了一种电子设备,包括:
127.存储器,用于存储计算机程序;
128.处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本公开上述任一实施例所述的数据处理的方法。
129.图9为本公开电子设备一个应用实施例的结构示意图。下面,参考图9来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
130.如图9所示,电子设备包括一个或多个处理器和存储器。
131.处理器可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
132.存储器可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行所述程序指令,以实现上文所述的本公开的各个实施例的数据处理的方法以及/或者其他期望的功能。
133.在一个示例中,电子设备还可以包括:输入装置和输出装置,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
134.此外,该输入设备还可以包括例如键盘、鼠标等等。
135.该输出装置可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出设备可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
136.当然,为了简化,图9中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。
137.除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述部分中描述的根据本公开各种实施例的数据处理的方法中的步骤。
138.所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c 等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
139.此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述部分中描述的根据本公开各种实施例的数据处理的方法中的步骤。
140.所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的
例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
141.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
142.以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
143.本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
144.本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
145.可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
146.还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
147.提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
148.为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
再多了解一些

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

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

相关文献