本发明涉及路径规划领域,尤其涉及一种机器人巡视区域确定方法、装置、介质及设备。
背景技术:
机器人巡视代替人力巡视可以极大地提升巡视效率,降低人力成本,但是机器人巡视也存在区域规划困难的问题,如果巡视区域过于复杂,机器人控制成本增加,如果巡视区域虽然简单但是包括的巡视目标过少,机器人巡视又会存在成本过高的问题。
技术实现要素:
为了解决现有技术中存在的技术问题,本发明实施例提供一种机器人巡视区域确定方法、装置、介质及设备。
一种机器人巡视区域确定方法,所述方法包括:
获取矩形的待巡视区域规划图,所述待巡视区域规划图包括待巡视区域中全部目标建筑的位置,所述目标建筑包括已建成的建筑,规划待建设的建筑和建设中的建筑;
根据所述待巡视区域规划图生成巡视基图,所述巡视基图由二值化矩阵构成,所述矩阵的每个像素对应于所述待巡视区域规划图中的一个固定区域,所述像素的值体现所述固定区域中是否有目标建筑;
根据所述巡视基图生成拓扑图,所述拓扑图中各个顶点对应于所述巡视基图中的各个元素,并且对应的元素值非0的顶点之间有且只有一条连线;
根据所述拓扑图确定机器人巡视区域。
优选的,所述根据所述待巡视区域规划图生成巡视基图,包括:
对所述待巡视区域规划图进行网格划分,得到网格矩阵;
构建与所述网格矩阵对应的巡视基图,其中,若网格中包括至少一个目标建筑,则所述网格对应的巡视基图中的元素为1,否则,所述网格对应的巡视基图中的元素为0。
优选的,所述根据所述拓扑图确定机器人巡视区域,包括:
根据所述拓扑图生成寻路树全集,所述寻路树全集中包括以所述拓扑图中任意一个顶点为起点构建的寻路树;
统计所述寻路树全集中每一个寻路树的节点数量;
将节点数量最多的寻路树确定为目标寻路树;
将目标寻路树中各个节点对应的网格构成的区域确定机器人巡视区域。
优选的,还包括一种以某个目标顶点为起点,构建寻路树的方法,包括:
为所述巡视基图中各个顶点设置标识属性,所述标识属性包括第一状态、第二状态或第三状态;若所述标识属性为第一状态,则所述顶点尚未被访问,若所述标识属性为第二状态,则所述顶点正在被访问,若所述标识属性为第三状态,则所述顶点已经被访问完毕;
生成一个寻路树生成队列,以所述目标顶点为起点按照预设算法访问所述巡视基图,在访问过程中动态变化所述寻路树生成队列,所述寻路树生成队列用于记录各个顶点被访问的顺序;
根据访问结果生成寻路树。
优选的,所述所述以所述目标顶点为起点按照预设算法访问所述巡视基图,在访问过程中动态变化所述寻路树生成队列,包括:
初始化所述寻路树生成队列为空,将所述目标顶点压入所述寻路树生成队列,将所述目标顶点的标识属性由第一状态修改为第二状态;
若所述寻路树生成队列不为空,则弹出所述寻路树生成队列的队首顶点,将所述队首顶点作为当前节点;
对于所述巡视基图中的每一个当前顶点的相关节点,若所述相关节点的标识属性为第一状态,则将所述相关顶点压入所述寻路树生成队列的队尾,将所述相关顶点的标识属性由第一状态修改为第二状态,标记所述当前节点为所述相关节点的父节点;
将所述当前节点的标识属性修改为第三状态,重复执行步骤:若所述寻路树生成队列不为空,则弹出所述寻路树生成队列的队首顶点,将所述队首顶点作为当前节点。
一种机器人巡视区域确定装置,所述装置包括:
待巡视区域规划获取模块,用于获取矩形的待巡视区域规划图,所述待巡视区域规划图包括待巡视区域中全部目标建筑的位置,所述目标建筑包括已建成的建筑,规划待建设的建筑和建设中的建筑;
巡视基图获取模块,用于根据所述待巡视区域规划图生成巡视基图,所述巡视基图由二值化矩阵构成,所述矩阵的每个像素对应于所述待巡视区域规划图中的一个固定区域,所述像素的值体现所述固定区域中是否有目标建筑;
拓扑图生成模块,用于根据所述巡视基图生成拓扑图,所述拓扑图中各个顶点对应于所述巡视基图中的各个元素,并且对应的元素值非0的顶点之间有且只有一条连线;
机器人巡视区域确定模块,用于根据所述拓扑图确定机器人巡视区域。
一种计算机存储介质,所述计算机存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现一种机器人巡视区域确定方法。
一种机器人巡视区域确定设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行一种机器人巡视区域确定方法。
本发明提供了一种机器人巡视区域确定方法、装置、介质及设备。通过针对待巡视区域规划图生成巡视基图,并对巡视基图进行图拓扑分析得到机器人的巡视区域,这种巡视区域中各个网格具有连通性,并且包含较多的建筑,因此很适合使用机器人进行巡视,能够充分发挥机器人巡视的优越性,提升巡视效率,降低人力成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本发明提供的一种机器人巡视区域确定方法流程图;
图2是本发明提供的根据所述待巡视区域规划图生成巡视基图流程图;
图3是本发明提供的根据所述拓扑图确定机器人巡视区域流程图;
图4是本发明提供的一种以某个目标顶点为起点,构建寻路树的方法流程图;
图5是本发明提供的一种机器人巡视区域确定装置框图;
图6是本发明提供的一种用于实现本发明实施例所提供的方法的设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了使本发明实施例公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明实施例,并不用于限定本发明实施例。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。为了便于理解本发明实施例所述的技术方案及其产生的技术效果,本发明实施例首先对于相关专业名词进行解释:本发明实施例提供一种机器人巡视区域确定方法,如图1所示,所述方法可以包括:s101.获取矩形的待巡视区域规划图,所述待巡视区域规划图包括待巡视区域中全部目标建筑的位置,所述目标建筑包括已建成的建筑,规划待建设的建筑和建设中的建筑。
s103.根据所述待巡视区域规划图生成巡视基图,所述巡视基图由二值化矩阵构成,所述矩阵的每个像素对应于所述待巡视区域规划图中的一个固定区域,所述像素的值体现所述固定区域中是否有目标建筑。
具体地,所述根据所述待巡视区域规划图生成巡视基图,如图2所示,包括:
s1031.对所述待巡视区域规划图进行网格划分,得到网格矩阵。
s1033.构建与所述网格矩阵对应的巡视基图,其中,若网格中包括至少一个目标建筑,则所述网格对应的巡视基图中的元素为1,否则,所述网格对应的巡视基图中的元素为0。
s105.根据所述巡视基图生成拓扑图,所述拓扑图中各个顶点对应于所述巡视基图中的各个元素,并且对应的元素值非0的顶点之间有且只有一条连线。
s107.根据所述拓扑图确定机器人巡视区域。
具体地,所述根据所述拓扑图确定机器人巡视区域,如图3所示,包括:
s1071.根据所述拓扑图生成寻路树全集,所述寻路树全集中包括以所述拓扑图中任意一个顶点为起点构建的寻路树。
s1073.统计所述寻路树全集中每一个寻路树的节点数量。
s1075.将节点数量最多的寻路树确定为目标寻路树。
s1077.将目标寻路树中各个节点对应的网格构成的区域确定机器人巡视区域。
事实上根据本发明实施例得到的目标寻路树中的各个节点对应的网格构成的区域是具有最大信息量的区域,在这个区域中以连通的形式包含了尽可能多的建筑,连通的形式也便于进行机器人巡视。
具体地,本发明实施例还提供一种以某个目标顶点为起点,构建寻路树的方法,如图4所示,包括:
s1.为所述巡视基图中各个顶点设置标识属性,所述标识属性包括第一状态、第二状态或第三状态;若所述标识属性为第一状态,则所述顶点尚未被访问,若所述标识属性为第二状态,则所述顶点正在被访问,若所述标识属性为第三状态,则所述顶点已经被访问完毕。
s3.生成一个寻路树生成队列,以所述目标顶点为起点按照预设算法访问所述巡视基图,在访问过程中动态变化所述寻路树生成队列,所述寻路树生成队列用于记录各个顶点被访问的顺序。
具体地,所述以所述目标顶点为起点按照预设算法访问所述巡视基图,在访问过程中动态变化所述寻路树生成队列,包括:
s31.初始化所述寻路树生成队列为空,将所述目标顶点压入所述寻路树生成队列,将所述目标顶点的标识属性由第一状态修改为第二状态。
s33.若所述寻路树生成队列不为空,则弹出所述寻路树生成队列的队首顶点,将所述队首顶点作为当前节点。
s35.对于所述巡视基图中的每一个当前顶点的相关节点,若所述相关节点的标识属性为第一状态,则将所述相关顶点压入所述寻路树生成队列的队尾,将所述相关顶点的标识属性由第一状态修改为第二状态,标记所述当前节点为所述相关节点的父节点。
s37.将所述当前节点的标识属性修改为第三状态,重复执行步骤s33。
s5.根据访问结果生成寻路树。
本发明实施例提供一种机器人巡视区域确定方法,通过针对待巡视区域规划图生成巡视基图,并对巡视基图进行图拓扑分析得到机器人的巡视区域,这种巡视区域中各个网格具有连通性,并且包含较多的建筑,因此很适合使用机器人进行巡视,能够充分发挥机器人巡视的优越性,提升巡视效率,降低人力成本。
本发明实施例公开一种机器人巡视区域确定装置,如图5所示,所述装置包括:
待巡视区域规划获取模块201,用于获取矩形的待巡视区域规划图,所述待巡视区域规划图包括待巡视区域中全部目标建筑的位置,所述目标建筑包括已建成的建筑,规划待建设的建筑和建设中的建筑;
巡视基图获取模块203,用于根据所述待巡视区域规划图生成巡视基图,所述巡视基图由二值化矩阵构成,所述矩阵的每个像素对应于所述待巡视区域规划图中的一个固定区域,所述像素的值体现所述固定区域中是否有目标建筑;
拓扑图生成模块205,用于根据所述巡视基图生成拓扑图,所述拓扑图中各个顶点对应于所述巡视基图中的各个元素,并且对应的元素值非0的顶点之间有且只有一条连线;
机器人巡视区域确定模块207,用于根据所述拓扑图确定机器人巡视区域。
具体地,本发明实施例所述一种机器人巡视区域确定装置与方法实施例均基于相同发明构思。详情请参见方法实施例,在此不再赘述。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令。所述指令可以适于由处理器加载并执行本发明实施例所述的一种机器人巡视区域确定方法,所述方法请参考方法实施例。
进一步地,图6示出了一种用于实现本发明实施例所提供的方法的设备的硬件结构示意图,所述设备可以参与构成或包含本发明实施例所提供的装置或系统。如图6所示,设备10可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。除此以外,还可以包括:显示器、输入/输出接口(i/o接口)、通用串行总线(usb)端口(可以作为i/o接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图6所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,设备10还可包括比图6中所示更多或者更少的组件,或者具有与图6所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到设备10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中所述的方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的一种机器人巡视区域确定方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括设备10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(networkinterfacecontroller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(lcd),该液晶显示器可使得用户能够与设备10(或移动设备)的用户界面进行交互。
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。