本发明涉及语义地图构建领域,特别是涉及一种语义地图构建方法及系统。
背景技术:
现有技术文件1(zhaoc,meiw,panw.buildingagrid-semanticmapforthenavigationofservicerobotsthroughhuman–robotinteraction[j].digitalcommunications&networks,2015,1(4):253-266)提出一种交互方法来构建栅格-语义地图用于室内服务机器人的自主导航。主要包含四个模块:交互模块,控制模块,导航模块以及建图模块。主要三个关键点:
1)在建图和导航中如何高效利用语音和视觉;
2)语义名如何与在线语义地图中的坐标系数据结合;
3)修改粒子群中最大粒子权重,定位-评估-重定位,应用于全局定位;
该文只是通过语音交互方式将机器人当前位置作为一个标记点在机器人地图中表示出来,并不是真正意义中的通过物体识别,场景分类来丰富机器人的语义地图,其作用只适用于人机交互中的目标点位,对全局定位没有任何作用。
现有技术文件2(sünderhaufn,dayoubf,mcmahons,etal.placecategorizationandsemanticmappingonamobilerobot[c]//ieeeinternationalconferenceonroboticsandautomation.ieee,2016:5729-5736)使用卷积神经网络place205模型进行场景分类,其与alexnet网络架构相同,由于经过大规模的场景图像数据训练,所以,该网络可以识别大多数的场景,例如厨房、卧室、走廊等。但是,该文基于此网络设计的语义地图构建方法不能准确区分一些特征不鲜明的场所,例如办公室与会议室,客厅与餐厅等,以及一些设计新颖的室内环境。所以,导致构建的语义地图较为混乱,不能在实际环境中应用。
现有技术文件3(白云汉.基于slam算法和深度神经网络的语义地图构建研究[j].计算机应用与软件,2018(1):183-190)采用yolov2结合orb单目视觉slam构建语义地图,用于智能导航。每一个地图点对应一个目标物体,每一个关键帧通过地图点间接地与一个或者多个目标物体对应。语义管理模块对原始关键帧图片进行保存,在系统关闭时该模块将所有关键帧图片、对应的地图点、语义地图信息,以及目标物体在关键帧中的位置信息以protocolbuffer的格式存储。
该文使用orb视觉slam方式构建语义地图在实际应用中存在弊端,例如容易受光线影响,在夜间,无法通过视觉获取关键帧来进行定位。
技术实现要素:
本发明提供了一种语义地图构建方法及系统,具有便于更准确区分特征鲜明场所的特点。
根据本发明提供的一种语义地图构建方法,方法包括,
拓扑地图节点构建,基于栅格度量地图,随着智能视觉识别设备的移动创建拓扑地图中的节点;
新环境空间识别,智能视觉识别设备在移动过程中,判断是否要进入一个新的环境空间,如果是,则创建一个新的环境空间标识;
新环境空间拓扑地图节点构建,对创建的新的环境空间标识,构建对应的环境空间的拓扑地图节点;
构建拓扑地图,遍历所有环境空间,并根据构建的拓扑地图节点构建拓扑地图;
语义地图构建,基于构建的拓扑地图,所述智能视觉识别设备识别到特征物体时,通过目标识别与定位得到目标物体在栅格地图上的位置,与最近的拓扑节点关联,得到具体物体语义信息的地图。
所述方法还包括,基于2d栅格度量地图构建拓扑地图节点。
所述方法还包括,智能视觉识别设备每移动一个距离阈值,构建一个拓扑地图节点。
所述方法还包括,语义地图构建时,同时与智能视觉识别设备自身位姿关联,得到具体物体语义信息的地图。
所述判断是否要进入一个新的环境空间的方法包括,识别是否要穿过一个门,如果是,则表明要进入一个新的环境空间。
所述距离阈值为0.9m到1.1m。
所述距离阈值为1m。
一种语义地图构建系统,采用了上述语义地图构建方法,包括,
拓扑地图节点构建模块,基于栅格度量地图,智能视觉识别设备随着移动创建拓扑地图中的节点;
新环境空间识别模块,智能视觉识别设备在移动过程中,判断是否要进入一个新的环境空间,如果是,则创建一个新的环境空间标识;
新环境空间拓扑地图节点构建模块,对创建的新的环境空间标识,构建对应的环境空间的拓扑地图节点;
构建拓扑地图模块,遍历所有环境空间,并根据构建的拓扑地图节点构建拓扑地图;
语义地图构建模块,基于构建的拓扑地图,所述智能视觉识别设备识别到特征物体时,通过目标识别模型与定位模块得到目标物体在栅格地图上的位置,与最近的拓扑节点关联,得到具体物体语义信息的地图。
一种语义地图构建系统,包括存储介质和处理器,所述存储介质中存储有便于处理器加载并执行的指令,包括,
基于栅格度量地图,随着智能视觉识别设备的移动创建拓扑地图中的节点;
在智能视觉识别设备移动过程中,判断是否要进入一个新的环境空间,如果是,则创建一个新的环境空间标识;
对创建的新的环境空间标识,构建对应的环境空间的拓扑地图节点;
遍历所有环境空间,并根据构建的拓扑地图节点构建拓扑地图;
基于构建的拓扑地图,所述智能视觉识别设备识别到特征物体时,通过目标识别与定位得到目标物体在栅格地图上的位置,与最近的拓扑节点关联,得到具体物体语义信息的地图。
所述指令还包括,基于2d栅格度量地图构建拓扑地图节点。
所述指令还包括,智能视觉识别设备每移动一个距离阈值,构建一个拓扑地图节点。
所述指令还包括,语义地图构建时,同时与智能视觉识别设备自身位姿关联,得到具体物体语义信息的地图。
所述指令还包括,识别是否要穿过一个门,如果是,则表明要进入一个新的环境空间。
与现有技术相比,便于在一定的新空间模型的基础上,准确区分一些特征不鲜明的场所,基于拓扑地图推断出的概念地图可参与上层丰富的人机交互功能。
附图说明
图1为本发明其中一实施例的概念地图构建过程。
图2为本发明其中一实施例的语义地图构建示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本说明书(包括摘要和附图)中公开的任一特征,除非特别叙述,均可被其他等效或者具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
根据本发明提供的一种语义地图构建方法,方法包括,
拓扑地图节点构建,基于栅格度量地图,随着智能视觉识别设备的移动创建拓扑地图中的节点;
新环境空间识别,智能视觉识别设备在移动过程中,判断是否要进入一个新的环境空间,如果是,则创建一个新的环境空间标识;
新环境空间拓扑地图节点构建,对创建的新的环境空间标识,构建对应的环境空间的拓扑地图节点;
构建拓扑地图,遍历所有环境空间,并根据构建的拓扑地图节点构建拓扑地图;
语义地图构建,基于构建的拓扑地图,所述智能视觉识别设备识别到特征物体时,通过目标识别与定位得到目标物体在栅格地图上的位置,与最近的拓扑节点关联,得到具体物体语义信息的地图。
在本发明技术方案中,基于栅格地图的基础上,构建拓扑地图,识别并标识新的环境空间且构建对应的环境空间的拓扑地图节点,如图1所示,在度量地图的基础上,构建了拓扑地图,然后结合语义信息进行场景分类构成概念地图,最终构建了多层语义地图,从而便于在一定的新空间模型的基础上,准确区分一些特征不鲜明的场所,如办公室、会议室、客厅和餐厅等。
作为本发明的一种实施方式,对于语义地图,能够区分不可用目标,例如人,狗,玩具等容易动的,就不会进行标记;同时能够建立目标物体与语义信息的联系,首先查询语义地图中是否存在检测出的目标物体,如果不存在,经过设定阈值帧(如连续5帧)后保存。
概念地图的构建是通过拓扑关系区分地图中各个房间的空间,然后依据每个房间的拓扑节点绑定的语义信息进行推断房间所属类别,例如一个房间中拓扑节点绑定的是沙发、空调、饮水机、电视机,则可得出该房间属于客厅的几率最大依据。概念地图是由推断出的概率分布构成的,所以可以与场景分类模型(例如place205)进行融合top5的总概率分布,进而使得场景推断更加准确。
本发明方案目标物体识别实时性与准确度高,多层地图的构建有普遍的实际应用场景,例如度量地图的自主导航、语义地图辅助全局定位、基于拓扑地图推断出的概念地图可参与上层丰富的人机交互功能。
作为本发明的一种实施方式,基于2d栅格度量地图构建拓扑地图节点。
作为本发明的一种实施方式,智能视觉识别设备每移动一个距离阈值,构建一个拓扑地图节点。该距离阈值可以设置在0.9m到1.1m之间,作为其中一种实施例,所述距离阈值设为1m,即智能视觉识别设备每移动1m,构建一个拓扑地图节点,也可以根据需求,选择其他的距离阈值。
如图2所示,作为本发明的一种实施方式,语义地图构建时,同时与智能视觉识别设备自身位姿关联,得到具体物体语义信息的地图。在本具体实施例中,在得到具体物体语义信息的地图时,不仅要与最近的拓扑节点关联,还要与智能视觉识别设备自身位姿关联,从而得到更准确的语义地图。
所述判断是否要进入一个新的环境空间的方法包括,识别是否要穿过一个门,如果是,则表明要进入一个新的环境空间。本发明申请根据空间垂直面边界变化来判断空间的分割,其中,作为一种实施方式,通过判断是否要穿过一个门,来判断是否要进入一个新的环境空间;当然也可以用其他方式来判断是否要进入一个新的环境空间,例如特征物体类别的变化,如果识别到特征物体类别有明显变化,同样可以辅助判断到要进入一个新的环境空间。
作为本发明的一种实施方式,语义地图构建中,对于特征物体的目标定位,方法包括,
进行三维定位时,如图2所示,特征物体的目标检测2d框与采集的对应点云数据融合进行目标物体在世界坐标系下进行三维定位,并进行水平平面坐标系投影。在本具体实施例中,通过该新的目标定位方法,构建更真实的语义地图,从而使目标物体识别的准确度更高,便于区分特征鲜明的场所及新颖的室内环境。
作为本发明的一个实施方式,进行水平平面坐标系投影时,投影在世界坐标系xy-2d坐标面下。
作为本发明的一种实施方式,将特征物体的目标检测结果与点云数据进行匹配,得到特征物体在世界坐标系下的三维位姿,并进行水平平面坐标系投影。在本具体实施例中,将特征物体的目标检测结果与点云数据进行匹配,得到特征物体在世界坐标系下的三维位姿,从而使目标物体识别的准确度更高,便于区分特征鲜明的场所及新颖的室内环境。
作为本发明的一种实施方式,对特征物体进行目标检测时,对于常见的物体,例如沙发、桌子和冰箱等物体不需要进行数据采集,因为已经包含在voc数据集中,如有不常见的特定需求的物体,例如盆栽等,则进行图像数据采集标注。然后使用yolov3darknet网络进行训练,获得最终目标检测模型,并将该模型与ros进行整合。
如图2所示,一种语义地图构建系统,采用了上述语义地图构建方法,包括,
拓扑地图节点构建模块,基于栅格度量地图,智能视觉识别设备随着移动创建拓扑地图中的节点;
新环境空间识别模块,智能视觉识别设备在移动过程中,判断是否要进入一个新的环境空间,如果是,则创建一个新的环境空间标识;
新环境空间拓扑地图节点构建模块,对创建的新的环境空间标识,构建对应的环境空间的拓扑地图节点;
构建拓扑地图模块,遍历所有环境空间,并根据构建的拓扑地图节点构建拓扑地图;
语义地图构建模块,基于构建的拓扑地图,所述智能视觉识别设备识别到特征物体时,通过目标识别模型与定位模块得到目标物体在栅格地图上的位置,与最近的拓扑节点关联,得到具体物体语义信息的地图。
一种语义地图构建系统,包括存储介质和处理器,所述存储介质中存储有便于处理器加载并执行的指令,包括,
基于栅格度量地图,随着智能视觉识别设备的移动创建拓扑地图中的节点;
在智能视觉识别设备移动过程中,判断是否要进入一个新的环境空间,如果是,则创建一个新的环境空间标识;
对创建的新的环境空间标识,构建对应的环境空间的拓扑地图节点;
遍历所有环境空间,并根据构建的拓扑地图节点构建拓扑地图;
基于构建的拓扑地图,所述智能视觉识别设备识别到特征物体时,通过目标识别与定位得到目标物体在栅格地图上的位置,与最近的拓扑节点关联,得到具体物体语义信息的地图。
所述指令还包括,基于2d栅格度量地图构建拓扑地图节点。
所述指令还包括,智能视觉识别设备每移动一个距离阈值,构建一个拓扑地图节点。
所述指令还包括,语义地图构建时,同时与智能视觉识别设备自身位姿关联,得到具体物体语义信息的地图。
所述指令还包括,识别是否要穿过一个门,如果是,则表明要进入一个新的环境空间。