一种基于建筑CAD图的室内拓扑地图生成方法及系统与流程

文档序号:15446423发布日期:2018-09-14 23:25阅读:369来源:国知局
本发明涉及室内定位与导航技术。
背景技术
::室内定位与导航是实现普适计算和提供基于位置的服务的基础。近年来,室内定位技术取得了显著的进步,但任何定位系统都需要配套相应的地图用以展示定位结果和提供进一步的位置服务。室内地图就是表示建筑物内部结构、兴趣点和通行路径等的地理信息数据集,能够配合室内定位技术展示定位结果和提供导航服务。不同于室外空间已有谷歌地图、高德地图等大规模城市路网空间商用地图,室内空间仍缺乏成规模的室内空间地图。目前室内地图的构建大都依赖人工实地测绘,但该方式费时耗力,地图构建成本高。cad(computeraideddesign)技术广泛应用于建筑工程图的设计,而建筑工程图一般使用cad平面图来描述建筑物的空间结构,基于建筑cad图构建室内地图可以有效降低室内地图的成本。室内空间的建筑cad图一般包含多种类别的数据,如分别用于表示墙壁、门扇和墙体等室内基础数据的几何类型线段、弧线、块等。多数cad文件在绘制时存在误差、冗余,并且与实际使用地图存在表达方式差异,因此需要对原始数据进行预处理,修正误差并降低数据规模,正确获取室内基础数据。房间(含电梯间、楼梯间等)和走廊是常见的室内的空间单元,也是拓扑地图的重要内容。一般而言,建筑cad图不直接提供空间单元数据,而是由基础数据表示,如墙体、窗户、门扇等共同组成房间。因此,如何对建筑cad图数据进行分析处理,获得室内空间单元的拓扑关系,最终生成拓扑地图,是一种省时省力,成本低廉的室内地图构建技术。技术实现要素:本发明所要解决的技术问题就是提供一种基于建筑cad图的室内拓扑地图生成方法及系统,在室内基础数据的基础上提取空间单元,并在此基础上,对空间单元进行拓扑分析,获得室内空间单元的拓扑关系,最终生成拓扑地图。为解决上述技术问题,本发明采用如下技术方案:一种基于建筑cad图的室内拓扑地图生成系统,包括:读取模块:读取建筑cad平面图;处理模块,通过误差允许的方式给出描述几何对象关系的定义,利用几何对象关系的定义去除、修复cad原始数据中存在的冗余和误差,得到处理后的cad数据;提取模块:通过分析处理处理后的cad数据,从中依次提取符合室内地图要求的室内基础数据,并在室内基础数据上提取室内空间单元;分析模块:按照室内基础数据、室内空间单元和室内空间整体之间的拓扑关系,建立拓扑结构和室内空间数据库,构建最终的室内拓扑地图。另外,一种基于建筑cad图的室内拓扑地图生成方法,包括以下五个步骤:(1)建筑cad平面图读取,将建筑物的cad平面图转换为可以进行直接读写的dxf格式,利用dxf获取室内空间的原始数据;(2)cad原始数据预处理,对室内空间的原始数据进行修正和简化,去除、修复cad原始数据中存在的冗余和误差,得到处理后的cad数据;(3)墙壁及门阶提取,在步骤(2)的基础上,对于采用双线表示的墙体,提取两条线段的中线,转换为满足室内地图表达方式的单线要素,将提取后的墙体中线视为新的墙壁线段;对于单弧线结构的门扇,由弧心分别向弧的两个端点构造线段,选择其中与邻接墙壁线段平行的线段,将该线段加入到门阶候选集中,对门阶线段集中的所有线段,寻找能够满足线与线邻接关系的门阶对,对满足该关系的门阶对,利用邻接线段中的非邻接端点构造新的线段,将该新线段加入到门阶候选集中,并从中移除原有的门阶对,门阶候选集中最终包含的门阶线段即为符合要求的门阶;(4)房间及走廊提取,在步骤(3)的基础上,将室内基础数据等效为一组互相交叉的线段集合,建立起墙壁-门阶线段图,通过检测图的最小圈基,提取由基础几何数据组成的室内空间单元;(5)拓扑分析,在提取了室内空间单元后,进行数据整理建立室内空间数据库,进而分析空间整体与空间单元之间、空间单元与空间单元之间的拓扑关系,并基于这些拓扑关系,以面向对象的思想进行分类,构建拓扑结构。优选的,在步骤(2)中,首先对几何对象关系进行定义,由二维坐标向量定义的点是室内地图的基本元素,线段是由两个端点组成的集合在此基础上,给定如下描述几何对象关系的定义:a)点与点近似:点p和点q互为近似,当且仅当它们的距离小于给定的阈值;b)线与线近似:线段l1与l2互为近似,当且仅当两条线段的端点是互为近似的;c)点与线邻接:点p和线段l邻接,当且仅当点p与线段的任一端点近似;d)线与线邻接:线段l1与l2邻接,当且仅当其中一条线段的端点与另一条线段邻接;e)线与线平行:线段l1与l2平行,当且仅当线段向量的点积与线段长度的乘积近似相等;f)线与线邻近:平行线段l1和l2邻近,当且仅当平行线段的距离小于给定阈值;其次,基于几何对象关系,对原始数据作如下预处理:去除长度过短的线段:若线段l的端点p和q近似,应去除l;去除近似线:若线段l1和l2互为近似线,应去除l1或l2;去除多余线:若线段l1和l2互为邻近线,且线段l2没有其他任何邻接线段,应去除l2。优选的,提取由基础几何数据组成的室内空间单元流程如下:1)基于已有的墙壁线段和门阶线段,建立无向图,图的顶点是各线段的端点,图的各边是所有线段,线段的长度作为边的权重;2)根据图的连通性,将图分为若干个连通分支,对每个连通分支,任给图内两顶点,依据权重计算两点间的最短路径;3)对每个连通分支,任给图内一顶点v,若图中存在边e(x,y),使得顶点x到顶点v的最短路径πxv及顶点v到顶点y的最短路径πvy的交点恰好是v,则构成环路c=πxv∪πvy∪e(x,y),将该环路加入到环路候选集中;4)将环路候选集中的所有环路按权重由小至大排序;5)定义一个0-1关联矩阵,矩阵的每行表示不同的环路,矩阵的每列则表示图内的每条边,若某条边属于某个环路,则环路所在行和边所在列对应的值取1,否则取0;6)对关联矩阵采取模2相加的初等行变换进行高斯消元,获得所有线性无关向量,即可获得最小圈基;7)提取组成最小圈基的顶点和边,最终得到最小多边形,即为房间。优选的,走廊用以下步骤间接求得:将在之前获得的所有线性无关向量按不同的连通分支进行模2相加,获取不同连通分支下的最大环路;最后计算在上一步中所得的所有最大环路的权重,其中,权重最大的环路即为走廊外环,剩余环路组成走廊内环,外环和若干个内环组成房间。本发明充分利用建筑cad平面图,通过分析处理cad的原始数据,自动提取门阶、墙壁等室内基础数据,进而提取房间、走廊等室内空间单元,并分析室内空间数据的拓扑关系,建立拓扑结构,构建室内拓扑地图。具有如下有益效果:(1)利用建筑cad平面图,实现自动生成室内拓扑地图,大大降低了室内地图的构建成本;(2)室内空间单元的提取正确率高;(3)算法复杂度低,运行时间短。附图说明下面结合附图和具体实施方式对本发明作进一步描述:图1本发明基于建筑cad图的室内拓扑地图生成系统总体框图。图2本发明基于建筑cad图的室内拓扑地图生成算法流程图。具体实施方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例一,一种基于建筑cad图的室内拓扑地图生成系统,参考图1所示,包括读取模块、处理模块、提取模块和分析模块。读取模块是通过读取cad的dxf文件,获取表示目标定位区域的建筑物内部结构(墙壁、门扇、窗户等)的几何线段、弧线和块等cad原始数据。处理模块通过误差允许的方式给出描述几何对象关系的定义,利用上述关系去除、修复cad原始数据中存在的冗余和误差,得到处理后的cad数据。提取模块通过分析处理处理后的cad数据,从中依次提取符合室内地图要求的门阶、墙壁等室内基础数据,并在门阶、墙壁的基础上提取房间、走廊等室内空间单元。分析模块是指按照门阶、墙壁、房间、走廊和室内空间整体之间的拓扑关系,建立拓扑结构和室内空间数据库,构建最终的室内拓扑地图。实施例二,一种基于建筑cad图的室内拓扑地图生成方法参考图2所示,算法实现的具体步骤如下:(1)cad读取选择目标定位区域的建筑cad平面图(dxf格式),按照dxf文件的多段结构(hearder段、classes段、tables段、blocks段、entities段、objects段和thumbnailimage段等),解析建筑cad平面图内的全部数据,包括表示墙壁、门扇和墙体等的几何线段、弧线和块等和用于区分和组织不同空间元素的图层等。(2)预处理由于cad文件在绘制时往往存在误差、冗余和表达方式的差异,需要对原始数据进行修正和简化,即采取误差容忍的方式进行数据预处理。由二维坐标向量定义的点是室内地图的基本元素,线段是由两个端点组成的集合在此基础上,给定如下描述几何对象关系的定义:b)点与点近似:点p和点q互为近似,当且仅当它们的距离小于给定的阈值。b)线与线近似:线段l1与l2互为近似,当且仅当两条线段的端点是互为近似的。c)点与线邻接:点p和线段l邻接,当且仅当点p与线段的任一端点近似。d)线与线邻接:线段l1与l2邻接,当且仅当其中一条线段的端点与另一条线段邻接。e)线与线平行:线段l1与l2平行,当且仅当线段向量的点积与线段长度的乘积近似相等。f)线与线邻近:平行线段l1和l2邻近,当且仅当平行线段的距离小于给定阈值。基于以上关系,可对原始数据作如下预处理:·去除长度过短的线段(包含孤立点):若线段l的端点p和q近似,应去除l;·去除近似线:若线段l1和l2互为近似线,,应去除l1或l2;·去除多余线:若线段l1和l2互为邻近线,且线段l2没有其他任何邻接线段,应去除l2;(3)墙壁及门阶提取墙壁、墙柱、门扇和窗户等是室内空间的基础数据。这些基础数据在建筑cad图中的表达方式与实际使用的地图存在差异,如墙壁在建筑cad图中通常由两条平行线表示(地图中只需用单条线表示),门扇在建筑cad图中经常被表示为弧线(实际使用时只需用门槛线段表示)。在步骤(2)的基础上,若线段l1和l2互为邻近线,则线段l1和l2属于采用双线表示的墙体,提取两条线段的中线,转换为满足室内地图表达方式的单线要素。将提取后的墙体中线视为新的墙壁线段,墙壁线段不仅需要能保证原有的连接关系,还要求能实现室内空间的正确划分。对于单弧线结构的门扇,由弧心分别向弧的两个端点构造线段,选择其中与邻接墙壁线段平行的线段,将该线段加入到门阶候选集中。对门阶线段集中的所有线段,寻找能够满足线与线邻接关系的门阶对,对满足该关系的门阶对,利用邻接线段中的非邻接端点构造新的线段,将该新线段加入到门阶候选集中,并从中移除原有的门阶对。门阶候选集中最终包含的门阶线段即为符合要求的门阶。室内空间基础数据包含墙壁、墙柱、门扇、窗户、消防栓、桌椅设施、家具、卫生洁具等,视具体目标室内环境和建筑cad图而定。其中,墙壁、门阶是室内拓扑地图生成的必要数据,其余各类数据为非必要数据,本发明仅说明墙壁、门阶的提取方法,其余各类室内基础数据可不予提取。(4)房间及走廊提取房间(含电梯间、楼梯间等)和走廊是常见的室内的空间单元,也是室内地图的重要内容。一般而言,建筑cad图不直接提供空间单元数据,而是由室内基础数据间接表示,如墙体、窗户、门扇等共同组成房间。因此,需要在室内基础数据的基础上自动提取空间单元,获取组成室内空间的墙壁线段、门阶线段和及其连接方式和室内空间单元的范围。在步骤(3)的基础上,将室内地图中互相连接的墙壁线段和门阶线段等室内基础数据等效为一组互相交叉的线段集合,建立起墙壁-门阶线段图,通过检测图的最小圈基,快速准确地提取由基础几何数据组成的房间及走廊等室内空间单元,其流程如下:基于已有的墙壁线段和门阶线段,建立无向图,图的顶点是各线段的端点,图的各边是所有线段,线段的长度作为边的权重;根据图的连通性,将图分为若干个连通分支。对每个连通分支,任给图内两顶点,依据权重计算两点间的最短路径;对每个连通分支,任给图内一顶点v,若图中存在边e(x,y),使得顶点x到顶点v的最短路径πxv及顶点v到顶点y的最短路径πvy的交点恰好是v,则构成环路c=πxv∪πvy∪e(x,y),将该环路加入到环路候选集中;然后将环路候选集中的所有环路按权重由小至大排序;定义一个0-1关联矩阵,矩阵的每行表示不同的环路,矩阵的每列则表示图内的每条边,若某条边属于某个环路,则环路所在行和边所在列对应的值取1,否则取0;对关联矩阵采取模2相加的初等行变换进行高斯消元,获得所有线性无关向量,即可获得最小圈基;提取组成最小圈基的顶点和边,最终得到最小多边形,即为房间。在室内结构中,走廊与房间有一定的相似性,都由系列墙壁线段和门阶线段组成。但不同的是,走廊并不能被简单抽象为多边形模型,而通常是由一个外环和若干个内环构成的嵌套结构。因此,走廊无法作为最小圈基从上述无向图模型中直接求得,它需要用以下步骤间接求得:将在之前获得的所有线性无关向量(对关联矩阵采取模2相加的初等行变换进行高斯消元,获得的所有线性无关向量)按不同的连通分支进行模2相加,获取不同连通分支下的最大环路;最后计算在上一步中所得的所有最大环路的权重。其中,权重最大的环路即为走廊外环,剩余环路组成走廊内环,外环和若干个内环组成房间。(5)拓扑分析在依次提取了房间、走廊等室内空间单元后,进行数据整理,可建立室内空间数据库。进而分析空间整体与空间单元之间、空间单元与空间单元之间的拓扑关系,即位于同一层楼的室内地图通常包含若干个房间和走廊,房间、走廊由若干个墙壁和门阶组成,房间与房间、走廊之间通过门阶相互连接等。基于这些关系,以面向对象的思想进行分类,构建拓扑结构。其中的数据整理内容包括:标注房间、走廊的数据库内部序号、门牌号、房间号、工作状态等语义信息;提取房间、走廊的组成几何要素的线段序号、端点序号及相应坐标;提取房间的中心位置坐标;按照房间、走廊及墙壁、门阶的包含、组成关系建立数据库。除上述优选实施例外,本发明还有其他的实施方式,本领域技术人员可以根据本发明作出各种改变和变形,只要不脱离本发明的精神,均应属于本发明权利要求书中所定义的范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1