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

一种户型识别方法、装置及电子设备与流程

2023-10-26 13:05:29 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,具体而言,涉及一种户型识别方法、装置及电子设备。


背景技术:

2.户型设计是房屋建造中不可缺少的环节。其中户型图又是户型设计的最终结果,是购房用户及施工人员的重要媒介。目前,以虚拟现实技术为基础的三维户型展示技术将逐渐替代传统的二维户型图。该技术在国内外已经成功用于购房体验、家居装修、柜体设计等等,目前制约其市场化的主要矛盾,即每个客户的户型格局,尺寸布局完全不一样,户型获取的手段非常繁多。房产商开发房子之前已经有二维户型图纸,需要将其转换成三维设计软件可以识别的格式,而三维设计软件可以识别的格式一般包括:户型信息。
3.目前自动识别户型的方法主要有两类,基于图像处理的方法:将autocad图纸绘制成图像,选择其形状与边缘特征作为识别的特征依据。基于形状特征,设计了墙体线分割、矫正、拓扑结构解析,门窗分割识别等算法,逐步实现了从复杂背景下成功分割出墙体线,到正确解析墙体分布特征,再到识别出门窗方位大小的处理流程,从而完成对户型图中主要元素的识别。基于智能人工智能算法:将户型的图片进行人工标定训练,再进行识别。
4.目前的方法均基于图像来处理,忽略了cad格式本身独有的特性,人工智能智能算法的前提需要对图纸进行人工标定,需要消耗大量的人力。


技术实现要素:

5.本技术实施例的目的在于提供一种户型识别方法、装置及电子设备,能够利用cad本身的数据特性,快速获取户型信息。
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.子区域确定模块,用于确定每条线条对应的子区域;
53.线条轮廓获取模块,用于根据每条线条的所属的子区域确定所述多条线条的连接线条的下一连接线条,得到连接链条和/或线条轮廓;
54.门窗信息获取模块,用于根据所述平面图的图层信息获取门窗信息;
55.墙体轮廓获取模块,用于根据所述连接链条和线条轮廓获取墙体轮廓;
56.户型信息生成模块,用于根据所述门窗信息和所述墙体轮廓信息生成户型信息。
57.第三方面,本技术实施例提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。
58.本技术公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本技术公开的上述技术即可得知。
59.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合
所附附图,作详细说明如下。
附图说明
60.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
61.图1为本技术实施例提供的户型识别方法的流程示意图;
62.图2为本技术实施例提供的包围区域的示意图;
63.图3为本技术实施例提供的线条轮廓的示意图;
64.图4为本技术实施例提供的线条轮廓的示意图;
65.图5为本技术实施例提供的链条的示意图;
66.图6为本技术实施例提供的户型识别装置的结构示意图;
67.图7为本技术实施例提供的电子设备的结构示意图。
具体实施方式
68.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
69.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
70.参见图1,本技术实施例提供一种户型识别方法,可应用于服务器中,用于进行户型识别。其中,服务器可以是独立的服务器或者是多个服务器组成的服务器集群来实现,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能采样点设备等基础云计算服务的云服务器。
71.参见图1,方法包括:
72.s1:获取户型的平面图,在所述平面图中确定户型区域的包围区域;
73.s2:划分所述包围区域,得到多个子区域;
74.s3:获取所述平面图中的多条线条;
75.s4:确定每条线条对应的子区域;
76.s5:根据每条线条的所属的子区域确定所述多条线条的连接线条的下一连接线条,得到连接链条和/或线条轮廓;
77.s6:根据所述连接链条和线条轮廓获取墙体轮廓;
78.s7:根据所述平面图的图层信息获取门窗信息;
79.s8:根据所述门窗信息和所述墙体轮廓信息生成户型信息。
80.本技术实施例中,户型的平面图可以是用户直接手动绘制的,也可以是用户利用软件生成的。
81.本技术实施例中,平面图为cad图。
82.本技术实施例中,图层信息包括:图层名称,示例性地,在s7中,可以直接获取命名为“门窗图层”之类的图层,提取出图层中门窗图元以及门窗图元的位置。
83.在一些实施例中,还可以根据图层信息获取户型中每个区域的名称,如在名称为“户型区域”的图层中识别出“客厅”、“厨房”的字体以及位置,后期可以直接加载户型轮廓上,形成户型信息。
84.本技术实施例中,户型信息包括户型轮廓、门窗位置、户型区域等,具体地,是将门窗位置、户型区域按照一定格式添加到户型轮廓上并输出,本技术的目的在于如何加快获取户型信息。
85.本技术实施例中,连接链条指的是首尾相接组成但是不能围成封闭区域的线条。
86.本技术实施例中,户型区域的包围区域指的是户型区域的包围盒。户型区域是指包括所有户型相关信息的区域。
87.在上述实现过程中,与现有技术不同的是,对平面图层进行进行利用,可以直接基于图层信息获取门窗信息,节省了时间,同时还将户型区域的包围区域进行划分,得到多个子区域,根据每条线条的所属的子区域确定所述多条线条的连接线条的下一连接线条,得到连接链条和/或线条轮廓,能够减少检索每条线条连接的下一线条的时间。相比于人工智能算法和图像处理技术,有效利用了平面图纸的信息;通过对图层信息的利用和分区域方式,减少了户型信息识别时间。
88.进一步地,所述根据每条线条的所属的子区域确定所述多条线条的连接线条的下一连接线条,得到连接链条和/或线条轮廓,包括:
89.步骤一:在所述多条线条中确定第一线条,在所述第一线条所属的子区域中进行搜索,确定和所述第一线条连接的第二线条;
90.步骤二:在所述第二线条所属的子区域中进行搜索,确定和所述第二线条连接的第三线条;
91.步骤三:将所述第三线条作为所述第二线条;
92.步骤四:重复步骤二和步骤三,得到多个候选链条;
93.步骤五:根据所述多个候选链条获取所述墙体轮廓和/或线条轮廓。
94.示例性地,参见图2,划分包围区域成5*5的25个子区域,第一线条属于第一行第一个区域,则在第一行第一个区域中搜索和第一线条的连接的两条第二线条;两条第二线条中的第一条第二线条属于第二行第二个子区域,则在第二行的第二个子区域中搜索和第一条第二线条第三线条;两条第二线条中的第二条第二线条属于第一行第二个子区域,则在第一行第一个子区域中搜索第二条第二线条连接的第三线条;基于这个方法,能够得到多个候选链条;根据多个候选链条能够得到墙体轮廓和/或线条轮廓。
95.在一些实施例中,在当前的第二线条不存在其他连接线条时,退出此次搜索,重新确定第一线条并重复上述步骤,直到所有线条都被作为遍历到,被遍历过的线条不可被再次遍历。
96.在一些实施例中,根据迷宫算法,可以在多个候选链条中确定出墙体轮廓和/或链条。
97.在上述实现过程中,只在当前线条所属的区域寻找和当前线条连接的下一线条,因此,能够大幅度减少生成连接链条和/或线条轮廓的时间。
98.进一步地,所述确定每条线条对应的子区域,包括:确定所述每条线条的第一端点和第二端点;将所述第一端点对应的第一子区域或所述第二端点对应的第二子区域作为所
述每条线条对应的子区域;所述在所述第二线条所属的子区域中进行搜索,确定和所述第二线条连接的第三线条,步骤,包括:在所述第二线条所属的第一子区域或第二子区域中进行搜索,确定和所述第二线条连接的第三线条。
99.也就是说,如果第二线条对应的两个端点分别在两个子区域,那么只能在两个端点中的一个子区域确定为所述第二线条所属的区域,在搜索时也只能在第二线条的两个端点中的一个区域中搜索。
100.在上述实现过程中,只在当前线条端点所属的区域寻找和当前线条连接的下一线条,进一步减少生成连接链条和/或线条轮廓的时间。
101.进一步地,所述在所述第二线条所属的第一子区域或第二子区域中进行搜索,确定和所述第二线条连接的第三线条,包括:
102.在所述第二线条所属的第一子区域或第二子区域中进行搜索,得到多个候选第三线条;
103.将多个所述候选第三线条中和所述第二线条的距离小于距离阈值的候选第三线条作为所述第三线条。
104.本技术实施例中,只要是部分位于第一子区域或第二子区域的线条都可以作为候选线条。
105.上述实施中,距离可以是线条的端点之间的距离。
106.在上述实现过程中,由于平面图大多是用户手动绘制而成,手动绘制过程中并没有严格按照制图标准完成线条的连接,因此,通过将多个所述候选第三线条中和所述第二线条的距离小于距离阈值的候选第三线条作为所述第三线条,能够减少用户手动绘制带来的绘制误差。
107.进一步地,在所述获取所述平面图中的多条线条之后,包括:获取每条线条在墙距范围内的平行线条,得到多组平行线条;
108.所述根据所述连接链条和/或线条轮廓获取墙体轮廓,包括:
109.根据所述连接链条和/或所述线条轮廓中的多组平行线条判断所述连接链条和/或所述线条轮廓是否为墙体轮廓。
110.在上述过程中,墙体轮廓具有外墙轮廓和内墙轮廓平行的特点,通过判断线条轮廓的外轮廓和内轮廓是否平行,能够判断该线条轮廓和/或墙体轮廓是否可能为墙体轮廓,预先是在每条线条的墙距范围内标记每条线条的平行线条,得到标记后的线条,能够加快判断线条轮廓/和或墙体轮廓是否可能为墙体轮廓的速度。
111.进一步地,在所述根据每条线条的所属的子区域确定所述多条线条的连接线条的下一连接线条,得到连接链条和/或线条轮廓之后,还包括:
112.根据所述多组平行的线条对所述线条轮廓进行标记;
113.根据所述连接链条和/或所述线条轮廓中的多组平行线条判断所述连接链条和/或所述线条轮廓是否为墙体轮廓,包括:
114.根据标记判断所述连接链条和/或线条轮廓是否为墙体轮廓。
115.在上述实现过程中,由于墙体轮廓被遮挡会导致墙体轮廓中不完全由平行线段构成,因此,将不平行的线条进行标记,根据标记进一步判断该线条轮廓是否为墙体轮廓。基于上述实施方式,能够精准识别出墙体轮廓。
memory),可擦除只读存储器(eprom,erasable programmable read-only memory),电可擦除只读存储器(eeprom,electric erasable programmable read-only memory)等。存储器73中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器71执行时,电子设备可以执行上述方法实施例涉及的各个步骤。
134.可选地,电子设备还可以包括存储控制器、输入输出单元。
135.所述存储器73、存储控制器、处理器71、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线74实现电性连接。所述处理器71用于执行存储器73中存储的可执行模块,例如电子设备包括的软件功能模块或计算机程序。
136.输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。
137.可以理解,图7所示的结构仅为示意,所述电子设备还可包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。图7中所示的各组件可以采用硬件、软件或其组合实现。
138.本技术实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。
139.本技术还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
140.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
141.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
142.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
143.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
144.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
145.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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