CN114859938A - 机器人、动态障碍物状态估计方法、装置和计算机设备 - Google Patents
机器人、动态障碍物状态估计方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN114859938A CN114859938A CN202210686427.6A CN202210686427A CN114859938A CN 114859938 A CN114859938 A CN 114859938A CN 202210686427 A CN202210686427 A CN 202210686427A CN 114859938 A CN114859938 A CN 114859938A
- Authority
- CN
- China
- Prior art keywords
- obstacle
- image
- dynamic
- value
- environment map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000003068 static effect Effects 0.000 claims abstract description 125
- 230000033001 locomotion Effects 0.000 claims abstract description 60
- 230000004888 barrier function Effects 0.000 claims abstract description 56
- 238000004590 computer program Methods 0.000 claims abstract description 20
- 238000004364 calculation method Methods 0.000 claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 230000009467 reduction Effects 0.000 claims description 14
- 230000008447 perception Effects 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 10
- 238000001914 filtration Methods 0.000 claims description 6
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims 1
- 230000011218 segmentation Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 230000002829 reductive effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000036544 posture Effects 0.000 description 3
- 238000013075 data extraction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
- G05D1/024—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/0285—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using signals transmitted via a public communication network, e.g. GSM network
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Optics & Photonics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种机器人、动态障碍物运动状态估计方法、装置、计算机设备、存储介质和计算机程序产品。机器人获取障碍物在不同时刻的点云数据和位置;依据不同时刻的点云数据和位置,在环境地图中绘制出障碍物时间图像和静态概率图像;基于障碍物时间图像与静态概率图像,确定障碍物是否为动态障碍物;若障碍物为动态障碍物,基于障碍物时间图像与静态概率图像生成动态障碍物时间图像;基于动态障碍物时间图像,获得动态障碍物的运动状态。当障碍物是动态运动状态时,目标点云与背景点云分割的准确度高,导致目标的状态估计更精确。
Description
技术领域
本申请涉及机器人技术领域,特别是涉及一种机器人、动态障碍物状态估计方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
在机器人导航领域,对障碍物的检测和运动估计是一重要的任务。常用的方法是基于多目标跟踪,其基本流程依次是,目标检测、目标关联及目标跟踪。在目标检测的过程中,其主要是使用目标分割的方式区分目标数据与背景数据。
在传统的技术中,当障碍物是动态运动状态时,目标点云与背景点云容易造成错误分割,导致目标的状态估计错误。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高动态障碍物状态估计准确度的机器人的动态障碍物运动状态估计方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种机器人,所述机器人包括存储器和处理器,所述存储器用于存储可在所述处理器上运行的计算机可读指令,所述处理器用于执行所述计算机可读指令时实现如下步骤:
获取障碍物在不同时刻的点云数据和位置;
依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像;
基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成所述动态障碍物的动态障碍物时间图像;
基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态。
在其中一个实施例中,所述依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像,包括:
获取第一环境地图与第二环境地图;
按照不同的图像数值变化趋势,将各时刻的所述点云数据和所述位置依次转换为所述第一环境地图的图像数值和所述第二环境地图的图像数值,得到所述障碍物时间图像和所述静态概率图像。
在其中一个实施例中,所述障碍物在不同时刻的点云数据和位置是实时采集的;所述将各时刻的所述点云数据和所述位置转换为所述第一环境地图的图像数值和所述第二环境地图的图像数值,得到所述障碍物时间图像和所述静态概率图像,包括:
每当获取到实时采集的点云数据和位置时,降低所述第一环境地图中各区域的图像数值,得到降值后的第一环境地图;
将所述实时采集的点云数据和位置投影到所述第二环境地图和所述降值后的第一环境地图中;
基于所述第一环境地图中的投影结果,确定所述第一环境地图中图像数值设定为时间图像预设值的区域,得到所述障碍物时间图像;
基于所述第二环境地图中的投影结果,确定所述第二环境地图中图像数值增加和/或减少的区域,得到所述静态概率图像。
在其中一个实施例中,所述点云数据和位置是通过传感器实时采集的;所述将所述实时采集的点云数据和位置投影到所述第二环境地图和所述降值后的第一环境地图中,包括:
按照所述传感器的参数,将所述障碍物点云数据和位置转换到机器人坐标系中,得到所述机器人坐标系下的障碍物数据;
按照所述机器人的位姿,对所述机器人坐标系下的障碍物数据进行坐标系转换,得到目标坐标系下的障碍物数据;
将所述目标坐标系下的障碍物数据,分别投影到所述第二环境地图与所述降值后的第一环境地图。
在其中一个实施例中,所述基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物,包括:
对所述静态概率图像中所述位置对应的图像数值进行二值化处理,得到静态图像;
基于所述静态图像与所述障碍物时间图像,确定所述障碍物是否为动态障碍物。
在其中一个实施例中,所述运动状态包括所述动态障碍物的速度方向和速度值,所述障碍物在不同时刻的点云数据和位置是按照传感器的感知间隔采集的;所述基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态,包括:
在所述动态障碍物时间图像的多个障碍物区域中,分别获取与点云数据和位置的采集时刻相关的图像数值;
基于所述图像数值获取各所述障碍物区域的方向值与轨迹值;
按照所述方向值确定所述速度方向;
依据所述轨迹值,确定所述多个障碍物区域中的临界区域;
根据所述临界区域与所述感知间隔,计算出所述速度值。
在其中一个实施例中,所述基于所述图像数值获取各所述障碍物区域的方向值与轨迹值,包括:
对各所述障碍物区域在不同时刻的图像数值进行梯度计算,得到梯度图像;所述梯度图像包括梯度方向图像和梯度幅值图像;
从所述梯度方向图像获取所述方向值;
对所述梯度幅值图像进行过滤,将所述过滤后的梯度幅值图像对应的图像数值,作为所述轨迹值。
在其中一个实施例中,所述依据所述轨迹值,确定所述多个障碍物区域中的临界区域,包括:
基于所述轨迹值与相应的临界值,确定所述多个障碍物区域中的第一临界区域与第二临界区域;
所述根据所述临界区域与所述感知间隔,计算出所述速度值,包括:
基于所述第一临界区域与所述第二临界区域之间的像素距离,计算临界区域物理距离;
对所述第一临界区域与所述第二临界区域差异计算,得到轨迹差异值;
基于所述感知间隔、所述轨迹差异值和所述临界区域物理距离,计算出所述速度值。
在其中一个实施例中,所述处理器还用于执行所述计算机可读指令时实现如下步骤:
当所述动态障碍物为多个时,基于各所述障碍物区域的图像数值确定目标动态障碍物的区域生长种子;所述目标动态障碍物属于所述动态障碍物中的至少一个;
当确定所述区域生长种子的种子邻域满足区域生长条件时,将所述目标动态障碍物对应的各障碍物区域分别作为下一个区域生长种子进行区域生长,得到区域生长结果;
基于所述区域生长结果、所述区域生长种子和满足所述区域生长条件的种子邻域,确定所述目标动态障碍物的障碍物区域。
在其中一个实施例中,所述确定所述区域生长种子的种子邻域满足区域生长条件,包括:
在所述区域生长种子的种子邻域中,将各所述障碍物区域的图像数值与区域生长阈值进行比较,得到生长阈值比较结果;
对所述区域生长种子与所述种子邻域进行图像数值差异信息计算,得到差异信息比较结果;
对所述区域生长种子与所述种子邻域进行图像数值比较处理,得到种子邻域比较结果;
基于所述生长阈值比较结果、所述差异信息比较结果及所述种子邻域比较结果,确定所述种子邻域满足所述区域生长条件。
第二方面,本申请还提供了一种动态障碍物的运动状态估计方法,所述方法包括:
获取障碍物在不同时刻的点云数据和位置;
依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像;
基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成所述动态障碍物的动态障碍物时间图像;
基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态。
第三方面,本申请还提供了一种动态障碍物的运动状态估计装置,所述装置包括:
数据采集模块,用于获取障碍物在不同时刻的点云数据和位置;
图像构建模块,用于依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像;
动态障碍物确定模块,用于基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
动态障碍物图像生成模块,用于若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成所述动态障碍物的动态障碍物时间图像;
动态障碍物状态估计模块,用于基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态。
第四方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任意实施例中机器人所实现的步骤。
第五方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意实施例中机器人所实现的步骤。
第六方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任意实施例中机器人所实现的步骤。
上述机器人、动态障碍物运动状态估计方法、装置、计算机设备、存储介质和计算机程序产品,依据障碍物在不同时刻的所述点云数据和所述位置,在环境地图中绘制出障碍物时间图像和静态概率图像,使得一份点云数据和位置分别按照不同的规则进行绘制,得到具有差异信息的障碍物时间图像和静态概率图像,准确地确定出障碍物为动态障碍物,进而基于所述障碍物时间图像与所述静态概率图像生成具有高精度的动态障碍物时间图像,基于高精度的动态障碍物时间图像,更准确地确定动态障碍物的运动状态。
附图说明
图1为一个实施例中机器人的动态障碍物运动状态估计方法的应用环境图;
图2为一个实施例中机器人的动态障碍物运动状态估计方法的流程示意图;
图3为一个实施例中不同时刻的时间图像;
图4为另一个实施例中不同时刻的静态概率图像;
图5为一个实施例中基于静态概率图像生成的静态图;
图6为一个实施例中生成动态障碍物时间图像的流程示意图;
图7为一个实施例中运动状态估计的流程示意图;
图8为一个实施例中动态障碍物时间图像;
图9为一个实施例中机器人的动态障碍物运动状态估计方法的流程示意图;
图10为一个实施例中区域生长的流程示意图;
图11为一个实施例中区域生长种子及种子邻域示意图;
图12为一个实施例中区域生长的流程示意图;
图13为一个实施例中区域生长结果的示意图;
图14为一个实施例中区域生长结果的示意图;
图15为一个实施例中机器人的动态障碍物运动状态估计装置的结构框图;
图16为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的机器人的动态障碍物运动状态估计方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。机器人获取障碍物在不同时刻的点云数据和位置;依据不同时刻的点云数据和位置,在环境地图中绘制出障碍物时间图像和静态概率图像;基于障碍物时间图像与静态概率图像,确定障碍物是否为动态障碍物;若障碍物为动态障碍物,基于障碍物时间图像与静态概率图像生成动态障碍物时间图像;基于动态障碍物时间图像,对动态障碍物的运动状态进行估计。
其中,终端102可以但不限于是各种机器人,个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种机器人的动态障碍物运动状态估计方法,以该方法应用于图1中的终端102为例进行说明,包括以下步骤:
步骤202,获取障碍物在不同时刻的点云数据和位置。
点云数据,是激光雷达或RGBD等传感器对障碍物进行数据采集后,所输出的数据。点云数据是具备至少三个维度的向量集合,该向量集合用来表征对应障碍物的外表面形状,而点云数据中的各点具有相应的障碍物各点位置等障碍物的至少部分数据。障碍物在不同时刻的点云数据和位置,是通过某传感器在不同时刻采集障碍物的点云数据,以及采集到的点云数据所对应的位置。
步骤204,依据不同时刻的点云数据和位置,在环境地图中绘制出障碍物时间图像和静态概率图像。
环境地图,是用于表征处理器所在环境中已知信息,环境地图中各位置具有图像数值,将环境地图中各位置的图像数值,按照图像数值变化趋势进行变化,可以绘制出具有存在差异信息的障碍物时间图像和静态概率图像。障碍物时间图像用于表征障碍物的轨迹值,而静态概率图像用于确定障碍物时间图像中的障碍物是否为动态障碍物。
在环境地图中绘制出障碍物时间图像和静态概率图像之前,处理器按照环境地图的坐标系确定环境地图及对应的障碍物位置,一个障碍物位置可以是一个像素块或一个栅格等,各障碍物位置中的图像数值是相同的,这些图像数值可以通过灰度值或色彩值等任意表现方式来展示。
在一个实施例中,依据不同时刻的点云数据和位置,在环境地图中绘制出障碍物时间图像和静态概率图像,包括:获取第一环境地图与第二环境地图;按照不同的图像数值变化趋势,将各时刻的点云数据和位置依次转换为第一环境地图的图像数值和第二环境地图的图像数值,得到障碍物时间图像和静态概率图像。
第一环境地图与第二环境地图均是初始化的环境地图,当第一环境地图与第二环境地图的分辨率相同时,可以得到相同分辨率的障碍物时间图像和静态概率图像,因而,基于障碍物时间图像与静态概率图像生成动态障碍物时间图像时,生成动态障碍物时间图像的过程所占用的处理器的计算资源较少,计算速度加快。
图像数值变化趋势,用于确定点云数据和位置的转换规则,不同的图像数值变化规则,会使得第一环境图像与第二环境图像中的图像数值存在差异,进而能够计算出第一环境图像与第二环境图像的差异信息。
在一个实施例中,障碍物在不同时刻的点云数据和位置是实时采集的,便于处理器分析实时的障碍物数据,确定障碍物的实时变化,以及,对处理器运动的路径进行规划,以识别、操作、靠近或避开相应的障碍物。而环境地图属于二维的地图,环境地图的各区域是点云数据和位置投影所得到的,一个区域可以是一个栅格。
相对应的,将各时刻的点云数据和位置依次投影到第一环境地图和第二环境地图,得到障碍物时间图像和静态概率图像,包括:每当获取到实时采集的点云数据和位置时,降低第一环境地图中各区域的图像数值,得到降值后的第一环境地图;将实时采集的点云数据和位置投影到第二环境地图和降值后的第一环境地图中;基于第一环境地图中的投影结果,确定第一环境地图中图像数值设定为时间图像预设值的区域,得到障碍物时间图像;基于第二环境地图中的投影结果,确定第二环境地图中图像数值增加和/或减少的区域,得到静态概率图像。
如图3所示,每当获取到实时采集的点云数据和位置,降低第一环境地图中各区域的图像数值,得到降值后的第一环境地图。因此,第一环境地图中各区域的图像数值会随着时间流逝而递减,清楚地展示出不同时刻的障碍物数据,便于确定不同时刻采集的点云数据和位置。而将实时采集的点云数据和位置投影到第二环境地图和降值后的第一环境地图中,是对点云数据和位置进行降维的过程,其用于去除掉点云数据中与环境地图不兼容的维度,进而得到与环境地图维度相同的投影结果。
基于第一环境地图中的投影结果,确定第一环境地图中图像数值设定为时间图像预设值的区域,使得第一环境地图中实时的障碍物区域与其他区域的差异信息逐步展示。
如图4所示,基于第二环境地图中的投影结果,确定第二环境地图中图像数值增加和/或减少的区域,包括:基于第二环境地图中的投影结果,判断第二环境地图中的各障碍物区域是否存在实时障碍物数据;对于存在实时障碍物数据的障碍物区域,增加图像数值;和/或,对于不存在实时障碍物数据的障碍物区域,减少图像数值。由此,随着时间的流逝,第二环境地图中的动态障碍物位置的图像数值不会超过相应阈值,而第二环境地图中的静态障碍物位置可以积累图像数值,便于确定障碍物是否为动态障碍物。
例如:在确定第一环境地图后,每当一帧图像对应的点云数据和位置融合到第一环境地图中,每获得一帧图像,降低一次图像数值,并将该帧的点云数据对应障碍物区域的图像数值设定为时间图像预设值,进而得到障碍物时间图像;而第二环境地图中没有检测到对应的点云数据和位置,在第二环境地图中相应区域自减一次,检测到障碍物的区域,第二环境地图中相应区域自加一次,得到静态概率图像。
在一个实施例中,点云数据和位置是通过传感器实时采集的,传感器所实时采集的点云数据和位置能够为机器人提供实时的信息,无论机器人是否联网,均可以采集到点云数据和位置。
将实时采集的点云数据和位置投影到第二环境地图和降值后的第一环境地图中,包括:按照传感器的参数,将障碍物点云数据和位置转换到机器人坐标系中,得到机器人坐标系下的障碍物数据;按照机器人的位姿,对机器人坐标系下的障碍物数据进行坐标系转换,得到目标坐标系下的障碍物数据;将目标坐标系下的障碍物数据,分别投影到第二环境地图与降值后的第一环境地图。
机器人坐标系,是基于机器人某部件位置设定的坐标系,用于确定机器人坐标系相对于世界坐标系的位置信息。机器人坐标系可以是关节坐标系或工件坐标系等类型坐标系,而机器人坐标系下的位置矢量确定了机器人本身或障碍物的位置信息。
机器人位姿,是基于机器人坐标系设定的数据,包括机器人坐标系的机器人位置和方位坐标,还可以涉及速度或机器人关节位姿。机器人位姿用于表征机器人在空间中的姿态,不同姿态存在相应的运动趋势及相应的特性。
当目标坐标系是世界坐标系时,直接基于世界坐标系下的障碍物数据进行避障;当目标坐标系是基于环境地图而设置时,先将基于世界坐标系下的障碍物数据转换为环境地图坐标系,再按照环境地图坐标系的分辨率进行障碍物的避障。
步骤206,基于障碍物时间图像与静态概率图像,确定障碍物是否为动态障碍物。
在障碍物时间图像与静态概率图像中,由于二者对应的图像数值变化趋势是不同的,因而同一障碍物区域具有不同的表现形式,通过不同的表现形式来进一步强化动态障碍物区域与静态障碍物间的差异,以更好的判断障碍物是否为动态障碍物。
在一个实施例中,基于障碍物时间图像与静态概率图像,确定障碍物是否为动态障碍物,包括:对静态概率图像中位置对应的图像数值进行二值化处理,得到静态图像;基于静态图像与障碍物时间图像,确定障碍物是否为动态障碍物。
如图5所示,当静态概率图的二值化处理的过程,是基于二值化阈值与图像数值进行比较的过程。当某位置的图像数值超过二值化阈值时,确定静态障碍物位置与非静态障碍物位置,将静态障碍物位置与非静态障碍物位置的图像数值分别赋予不同的图像数值,得到具有两种图像数值的静态图像。将静态图像与障碍物时间图像的位置差异进行计算,基于位置的差异结果,确定障碍物是否为动态障碍物。其中,静态障碍物的图像数值与背景的图像数值是相同或相近的,而动态障碍物的图像数值与背景的图像数值存在显著差异。
例如:二值化阈值为100,对于静态概率图像中图像数值为30的位置,其图像数值被设定为0,确定该位置不存在静态障碍物;而对于静态概率图像中图像数值为160的位置,其图像数值被设定为255,确定该位置存在静态障碍物,进而得到图像数值为0或255的静态图像。
步骤208,若障碍物为动态障碍物,基于障碍物时间图像与静态概率图像生成动态障碍物时间图像。
动态障碍物时间图像,用于表征动态障碍物在不同时刻所占据的位置。动态障碍物时间图像中的动态障碍物区域存在相应图像数值,而图像数值是随着时间渐变的,基于渐变的图像数值进行计算,其计算结果用于准确地估计动态障碍物的运动状态。
在障碍物时间图像与静态概率图像中,对各位置的图像数值进行差异信息的计算,可以得到动态障碍物时间图像;而基于静态概率图像生成静态图像,再基于静态图像与障碍物时间图像进行图像数值进行计算,可以得到更精确的动态障碍物时间图像。
在一个实施例中,如图6所示,静态图像与障碍物时间图像进行计算时,在图6(a)静态图像与图6(b)障碍物时间图像中,将与背景区域图像数值并不相同的区域分别作为相应的障碍物区域,计算这两个图像中的障碍物区域差异信息,基于计算结果,去除时间障碍图像中的静态障碍物,得到动态障碍物时间图像,即图6(c)。
步骤210,基于动态障碍物时间图像,对动态障碍物的运动状态进行估计。
在动态障碍物时间图像中的各障碍物区域,分别具有相应的图像数值,这些图像数值表征动态障碍物的轨迹值,基于这些轨迹值可以对动态障碍物的运动状态进行更准确地估计。
在一个实施例中,基于动态障碍物时间图像,对动态障碍物的运动状态进行估计,包括:基于动态障碍物时间图像,确定动态障碍物时间图像中的障碍物区域,基于障碍物区域确定临界区域,计算临界区域在环境地图上的地图距离,基于地图距离与环境地图的分辨率进行计算,计算出动态障碍物的运动状态。
上述机器人的处理器所执行的动态障碍物运动状态估计方法中,依据障碍物在不同时刻的点云数据和位置,在环境地图中绘制出障碍物时间图像和静态概率图像,使得一份点云数据和位置分别按照不同的规则进行绘制,得到具有差异信息的障碍物时间图像和静态概率图像,准确地确定出障碍物为动态障碍物,进而基于障碍物时间图像与静态概率图像生成具有高精度的动态障碍物时间图像,基于高精度的动态障碍物时间图像,更准确地确定动态障碍物的运动状态。
在一个实施例中,运动状态包括动态障碍物的速度方向和速度值,障碍物在不同时刻的点云数据和位置是按照传感器的感知间隔采集的。感知间隔,是指每次获取点云数据和位置的时间间隔,感知间隔与传感器频率存在对应关系。例如:当传感器的频率为10fps时,感知间隔为0.1s。如图7所示,基于动态障碍物时间图像,对动态障碍物的运动状态进行估计,其过程具体如下:
步骤702、在动态障碍物时间图像的多个障碍物区域中,分别获取与点云数据和位置的采集时刻相关的图像数值。
在动态障碍物时间图像的多个障碍物区域中,各障碍物区域分别具有相应的图像数值,这些图像数值用于标识各障碍物区域的方向值,还用于标识各障碍物区域所对应的时间。
步骤704、基于图像数值获取各障碍物区域的方向值与轨迹值。
方向值,用于表征相应障碍物区域所运动的方向,其可以是向量、图或角度数值中的任意一项或多项;轨迹值用于表征相应障碍物区域中存在障碍物的时间,轨迹值可以是灰度值、色彩值等数值中的一项或多项。
在一个实施例中,基于图像数值获取各障碍物区域的方向值与轨迹值,包括:对各障碍物区域在不同时刻的图像数值进行梯度计算,得到梯度图像;梯度图像包括梯度方向图像和梯度幅值图像;从梯度方向图像获取方向值;对梯度幅值图像进行过滤,将过滤后的梯度幅值图像对应的图像数值,作为轨迹值。
对于各障碍物区域在不同时刻的图像数值进行梯度计算这一过程,其可以是基于索贝尔算子(Sobel算子)进行的,该过程具体包括:确定障碍物区域各自对应的障碍物区域邻域,计算障碍物区域及障碍物区域邻域的差分近似值;将各障碍物区域邻域差分近似值进行加权计算,得到各障碍物区域的梯度值,并将各障碍物区域邻域差分近似值按照反三角函数进行计算,得到各障碍物区域的梯度方向。
而对梯度幅值图像进行过滤,是为了滤除幅值过大的梯度值,并将梯度值较小的梯度幅值图像对应的图像数值,作为轨迹值。换而言之,轨迹值是按照梯度幅值过滤后的图像数值。
步骤706、按照方向值确定速度方向。
对于从梯度方向图像获取方向值这一过程,其是这里求平均值就是把同一动态障碍物的各障碍物区域的方向值均值化,将均值化的结果作为该动态障碍物的速度方向。
步骤708、依据轨迹值,确定多个障碍物区域中的临界区域;
临界区域,是指多个障碍物区域中的边界区域。临界区域包括多个障碍物区域中的至少一个障碍物区域,临界区域所占据的障碍物区域数量与形状是与障碍物的点云数据存在对应关系的。例如:与某点云数据对应的四个障碍物区域构成一个正方形障碍物区域集合,则该正方形障碍物区域集合构成临界区域。
确定多个障碍物区域中的临界区域,其是处理器将各障碍物区域的图像数值与临界值进行比较的过程。当某障碍物区域的图像数值达到某临界区域对应的临界值时,确定该障碍物区域属于这一临界区域。
步骤710、根据临界区域与感知间隔,计算出速度值。
在一个实施例中,依据轨迹值,确定多个障碍物区域中的临界区域,包括:基于轨迹值与相应的临界值,确定多个障碍物区域中的第一临界区域与第二临界区域。例如:临界值包括时间图像预设值与区域生长阈值,时间图像预设值用于表示障碍物数据是实时的,而区域生长阈值用于表征进行区域生长图像数值边界,而第一临界区域的轨迹值为时间图像预设值的,第二临界区域的轨迹值为区域生长阈值。
相对应的,根据临界区域与感知间隔,计算出速度值,包括:基于第一临界区域与第二临界区域之间的像素距离,计算临界区域物理距离。对第一临界区域与第二临界区域差异计算,得到轨迹差异值。基于感知间隔、轨迹差异值和临界区域物理距离,计算出速度值。
在一个实施例中,如图8所示,速度值的估计方式如下:
V=D*Res/(255-T)*dt;
其中,D为第一临界区域与第二临界区域间的像素距离,Res为环境地图的分辨率,255为时间图像预设值,T为区域生长阈值,(255-T)为轨迹差异值,dt为传感器的感知间隔。
本实施例中,在动态障碍物时间图像中,各障碍物区域的图像数值是较为准确地,因而更准确地获取到动态障碍物的方向值与轨迹值,通过方向值确定动态障碍物的运动方向,并通过轨迹值确定动态障碍物运动的临界区域,基于临界区域与传感器感知间隔进行计算,进而更准确地获得出动态障碍物的速度值。
在一个实施例中,障碍物点云数据和位置是点云坐标,对应地,如图9所示,上述处理器执行的步骤如下:将不同时刻的点云坐标分别转换成障碍物时间图像和静态概率图像,基于静态概率图像生成静态图,基于障碍物时间图像和静态图生成动态障碍物时间图,对动态障碍物时间图进行梯度计算,最后对动态障碍物的运动状态进行估计。
在一个实施例中,如图10所示,不同动态障碍物会同时存在于同一个环境地图中,为了识别出不同动态障碍物各自对应的障碍物区域,处理器还用于执行计算机可读指令时实现如下步骤:
步骤1002、当动态障碍物为多个时,基于各障碍物区域的图像数值,确定目标动态障碍物的区域生长种子,目标动态障碍物属于动态障碍物中的至少一个。
区域生长种子,是图像数值为预设值的至少一个障碍物区域。当处理器检测到障碍物区域的图像数值达到某一预设值时,确定相应的障碍物区域属于目标动态障碍物的区域生长种子。例如:当图像数值为时间图像预设值时,确定该障碍物为区域生长种子。如图11所示,其中,栅格A为区域生长种子,Bi属于A的种子邻域,其中,i小于或等于8且大于或等于1。
在一个实施例中,障碍物在不同时刻的点云数据和位置是实时采集的,每当获取到实时采集的点云数据和位置,且生成障碍物时间图像与静态概率图像时,基于障碍物时间图像与静态概率图像生成动态障碍物时间图像;在动态障碍物时间图像中,实时采集的点云数据和位置对应的障碍物区域具图像数值为时间图像预设值。相对应的,图像数值为时间图像预设值的障碍物区域,是目标动态障碍物的区域生长种子。
在一个实施例中,确定区域生长种子的种子邻域满足区域生长条件,包括:在种子邻域中,将各障碍物区域的图像数值与区域生长阈值进行比较,得到生长阈值比较结果。对区域生长种子与种子邻域进行图像数值差异信息计算,得到差异信息比较结果。对区域生长种子与种子邻域进行图像数值比较处理,得到种子邻域比较结果。基于生长阈值比较结果、差异信息比较结果及种子邻域比较结果,确定种子邻域满足区域生长条件。当确定区域生长种子的种子邻域满足区域生长条件时,则判断区域生长种子与种子邻域均表征同一目标动态障碍物的运动轨迹,进而识别出各个动态障碍物。
在一具体的实施例中,生长的条件为:
其中,Vi表示区域生长种子的图像数值,Vi+1表示任一种子邻域的图像数值,T表示区域生长阈值,则区域生长种子和对应的种子邻域被归为同一物体。
步骤1004、当确定区域生长种子的种子邻域满足区域生长条件时,将目标动态障碍物对应的各障碍物区域分别作为下一个区域生长种子进行区域生长,得到区域生长结果。
种子邻域,是指目标障碍物的区域生长种子的邻域,各种子邻域与对应的区域生长种子的距离位于预设的范围之内。种子邻域用于提供区域生长种子的生长条件,且满足区域生长条件的种子邻域可以作为下一个区域生长种子继续进行区域生长。
在一个实施例中,将目标动态障碍物对应的各障碍物区域分别作为下一个区域生长种子进行区域生长,包括:确定目标动态障碍物对应的未进行区域生长的障碍物区域,得到目标区域生长种子,确定目标种子邻域满足区域生长条件,将目标种子邻域确定为下一个区域生长种子,直至下一个区域生长种子的种子邻域均不满足区域生长条件。
步骤1006、基于区域生长结果、区域生长种子和满足区域生长条件的种子邻域,确定目标动态障碍物的障碍物区域。
在一个实施例中,如图12所示,基于图12(a)目标障碍物的动态障碍物时间图像与图12(b)目标障碍物的区域生长种子进行运算,得到目标动态障碍物的障碍物区域。其中,动态障碍物是多个,各动态障碍物的障碍物区域分别构成各至少两个独立的栅格区域集合,而动态障碍物的障碍物区域中选择一个目标动态障碍物,确定图12(c)所对应的障碍物区域为目标动态障碍物的障碍物区域。
在一个实施例中,如图13所示,当动态障碍物是多个时,各动态障碍物的障碍物区域构成各至少两个独立的栅格区域集合,任意动态障碍物的障碍物区域均可以作为目标动态障碍物的障碍物区域。
本实施例中,基于各障碍物区域的图像数值确定目标动态障碍物的区域生长种子,这些区域生长种子是第一次进行区域生长的种子;而通过设定区域生长条件,识别出对应的种子领域,使得各满足区域生长条件的种子邻域分别进行区域生长,以此进行迭代或循环,进而得到目标动态障碍物的障碍物区域,以从多个动态障碍物中识别出至少一个目标动态障碍物的轨迹,进而更准确地预估目标动态障碍物的运动状态。
在一个实施例中,通过较为具体的实施例展示本方案的整体流程,将图像数值设定为栅格值,以更便捷地展示相关的数据。其包括生成时间栅格图像、梯度计算、区域生长及状态估计四个部分。
首先,对生成时间栅格图像的过程进行论述,该过程其包括点云坐标转换、生成障碍物时间图像、生成静态图像,以及生成动态障碍物时间图像这三个子步骤。
点云坐标转换子步骤,包括:获取点云数据和位置,将点云数据和位置按照传感器的外部参数转换到机器人坐标系下,得到障碍物数据,将障碍物数据基于机器人当前的位姿转到世界坐标系下,再基于地图的分辨率,转到地图坐标系下。
生成时间图像子步骤,包括:初始化第一环境地图,将第一环境地图中所有栅格值置为0。每当一帧图像对应的点云数据融合到时间图像中,将该帧的点云数据存在物体的栅格设定为255,且每获得一帧图像,降低一次灰度值(自减1),将点云转换而得到的障碍物数据投影到第一环境地图中,障碍物数据所在位置栅格值设为255。由此,对于静态障碍物,地图中的栅格值一直保持255,而动态障碍物,在其当前的位置上,栅格值为255,在其历史的轨迹上,栅格值随着时间递减。
生成静态图像子步骤,包括:初始化第二环境地图,使第二环境地图的栅格值置为0,收到一帧点云数据后,当前没有检测到障碍物的地方,在静态概率图中相应位置自减1,检测到障碍物的地方,静态概率地图中相应位置自加1,得到静态概率图像,再对静态概率图像二值化,得到静态概率图像。具体的,静态概率图像中的静态障碍物,地图中的栅格值逐渐上升,对于动态障碍物,栅格值短暂上升后下降,直到与背景的栅格值相同,进而将静态概率图像二值化,得到静态图,图中255栅格表示静态障碍物。
生成动态障碍物时间图像子步骤,包括:将静态图与障碍物时间图像融合,对时间图像中的非0栅格,若对应在静态图中栅格值为0,则将其输出到动态障碍物时间图像中,否则对应的位置,动态障碍物时间图像中的值为0。
在得到动态障碍物时间图像后,是梯度计算步骤。该步骤包括:使用5X5或7X7的Sobel算子对动态障碍物时间图像进行处理,得到梯度图像,包括梯度方向图像和梯度幅值图像,滤除幅值较大的梯度值。
在梯度计算后,以动态障碍物时间图像中值为255的栅格点作为种子点,执行区域生长算法,得到若干个独立的栅格区域集合,各独立的栅格区域集合代表对应目标动态障碍物当前的位置和运动的轨迹,其如图14所示。
在得到栅格区域集合后,对区域集合C中的每一子集合,求其对应在方向图像中的平均值,作为其代表物体的速度方向。对区域集合C中的每一子集合进行速度估计,确定目标动态障碍物以1.0m/s的速度向左移动。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,本申请还提供一种动态障碍物的运动状态估计方法,所述方法包括:获取障碍物在不同时刻的点云数据和位置;依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出障碍物时间图像和静态概率图像;基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成动态障碍物时间图像;基于所述动态障碍物时间图像,对所述动态障碍物的运动状态进行估计。由此,当障碍物是动态运动状态时,目标点云与背景点云容易分割更准确,导致目标的状态估计准确度更高。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的机器人的动态障碍物运动状态估计方法的机器人的动态障碍物运动状态估计装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机器人的动态障碍物运动状态估计装置实施例中的具体限定可以参见上文中对于机器人的动态障碍物运动状态估计方法的限定,在此不再赘述。
在一个实施例中,如图15所示,提供了一种机器人的动态障碍物运动状态估计装置,包括:数据采集模块1502、数据采集模块1504、动态障碍物确定模块1506、动态障碍物图像生成模块1508和动态障碍物状态估计模块1510,其中:
数据采集模块1502,用于获取障碍物在不同时刻的点云数据和位置;
数据采集模块1504,用于依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出障碍物时间图像和静态概率图像;
动态障碍物确定模块1506,用于基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
动态障碍物图像生成模块1508,用于若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成动态障碍物时间图像;
动态障碍物状态估计模块1510,用于基于所述动态障碍物时间图像,对所述动态障碍物的运动状态进行估计。
在其中一个实施例中,所述数据采集模块1504,包括:
初始化单元,用于获取第一环境地图与第二环境地图;
点云数据转换单元,用于按照不同的图像数值变化趋势,将各时刻的所述点云数据和所述位置依次转换为所述第一环境地图的图像数值和所述第二环境地图的图像数值,得到障碍物时间图像和静态概率图像。
在其中一个实施例中,所述障碍物在不同时刻的点云数据和位置是实时采集的;所述点云数据转换单元,包括:
预处理子单元,用于每当获取到实时采集的点云数据和位置时,降低所述第一环境地图中各区域的图像数值,得到降值后的第一环境地图;
点云转换子单元,用于将所述实时采集的点云数据和位置投影到所述第二环境地图和所述降值后的第一环境地图中;
障碍物时间图像生成子单元,用于基于所述第一环境地图中的投影结果,确定所述第一环境地图中图像数值设定为时间图像预设值的区域,得到所述障碍物时间图像;
静态概率图像生成子单元,用于基于所述第二环境地图中的投影结果,确定所述第二环境地图中图像数值增加和/或减少的区域,得到所述静态概率图像。
在其中一个实施例中,所述点云数据和位置是通过传感器实时采集的;所述点云转换子单元,包括:
第一坐标系转换子单元,用于按照所述传感器的参数,将所述障碍物点云数据和位置转换到机器人坐标系中,得到所述机器人坐标系下的障碍物数据;
第二坐标系转换子单元,用于按照所述机器人的位姿,对所述机器人坐标系下的障碍物数据进行坐标系转换,得到目标坐标系下的障碍物数据;
投影转换子单元,用于将所述目标坐标系下的障碍物数据,分别投影到所述第二环境地图与所述降值后的第一环境地图。
在其中一个实施例中,所述动态障碍物确定模块1506,包括:
二值化单元,用于对所述静态概率图像中所述位置对应的图像数值进行二值化处理,得到静态图像;
动态障碍物判断单元,用于基于所述静态图像与所述障碍物时间图像,确定所述障碍物是否为动态障碍物。
在其中一个实施例中,所述运动状态包括所述动态障碍物的速度方向和速度值,所述障碍物在不同时刻的点云数据和位置是按照传感器的感知间隔采集的;所述动态障碍物状态估计模块1510,包括:
图像数值采集单元,用于在所述动态障碍物时间图像的多个障碍物区域中,分别获取与点云数据和位置的采集时刻相关的图像数值;
数据提取单元,用于基于所述图像数值获取各所述障碍物区域的方向值与轨迹值;
速度方向确定单元,用于按照所述方向值确定所述速度方向;
临界区域确定单元,用于依据所述轨迹值,确定所述多个障碍物区域中的临界区域;
速度计算单元,用于根据所述临界区域与所述感知间隔,计算出所述速度值。
在其中一个实施例中,所述数据提取单元,包括:
梯度计算子单元,用于对各所述障碍物区域在不同时刻的图像数值进行梯度计算,得到梯度图像;所述梯度图像包括梯度方向图像和梯度幅值图像;
方向值计算子单元,用于从所述梯度方向图像获取所述方向值;
轨迹值计算子单元,用于对所述梯度幅值图像进行过滤,将所述过滤后的梯度幅值图像对应的图像数值,作为所述轨迹值。
在其中一个实施例中,所述临界区域确定单元,包括:
临界区域确定子单元,用于基于所述轨迹值与相应的临界值,确定所述多个障碍物区域中的第一临界区域与第二临界区域;
相对应的,所述速度计算单元,包括:
物理距离计算子单元,用于基于所述第一临界区域与所述第二临界区域之间的像素距离,计算临界区域物理距离;
差异值计算子单元,用于对所述第一临界区域与所述第二临界区域差异计算,得到轨迹差异值;
速度值计算子单元,用于基于所述感知间隔、所述轨迹差异值和所述临界区域物理距离,计算出所述速度值。
在其中一个实施例中,所述装置还包括区域生长模块,所述区域生长模块包括:
区域生长种子确定单元,用于当所述动态障碍物为多个时,基于各所述障碍物区域的图像数值确定目标动态障碍物的区域生长种子;所述目标动态障碍物属于所述动态障碍物中的至少一个;
区域生长单元,用于当确定所述区域生长种子的种子邻域满足区域生长条件时,将所述目标动态障碍物对应的各障碍物区域分别作为下一个区域生长种子进行区域生长,得到区域生长结果;
区域生长完成单元,用于基于所述区域生长结果、所述区域生长种子和满足所述区域生长条件的种子邻域,确定所述目标动态障碍物的障碍物区域。
在其中一个实施例中,所述区域生长单元,包括:
第一比较单元,用于在所述区域生长种子的种子邻域中,将各所述障碍物区域的图像数值与区域生长阈值进行比较,得到生长阈值比较结果;
第二比较单元,用于对所述区域生长种子与所述种子邻域进行图像数值差异信息计算,得到差异信息比较结果;
第三比较单元,用于对所述区域生长种子与所述种子邻域进行图像数值比较处理,得到种子邻域比较结果;
条件判断单元,用于基于所述生长阈值比较结果、所述差异信息比较结果及所述种子邻域比较结果,确定所述种子邻域满足所述区域生长条件。
上述机器人的动态障碍物运动状态估计装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图16所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种机器人的动态障碍物运动状态估计方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图16中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (13)
1.一种机器人,其特征在于,所述机器人包括存储器和处理器,所述存储器用于存储可在所述处理器上运行的计算机可读指令,所述处理器用于执行所述计算机可读指令时实现如下步骤:
获取障碍物在不同时刻的点云数据和位置;
依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像;
基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成所述动态障碍物的动态障碍物时间图像;
基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态。
2.根据权利要求1所述的机器人,其特征在于,所述依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像,包括:
获取第一环境地图与第二环境地图;
按照不同的图像数值变化趋势,将各时刻的所述点云数据和所述位置依次转换为所述第一环境地图的图像数值和所述第二环境地图的图像数值,得到所述障碍物时间图像和所述静态概率图像。
3.根据权利要求2所述的机器人,其特征在于,所述障碍物在不同时刻的点云数据和位置是实时采集的;所述将各时刻的所述点云数据和所述位置转换为所述第一环境地图的图像数值和所述第二环境地图的图像数值,得到所述障碍物时间图像和所述静态概率图像,包括:
每当获取到实时采集的点云数据和位置时,降低所述第一环境地图中各区域的图像数值,得到降值后的第一环境地图;
将所述实时采集的点云数据和位置投影到所述第二环境地图和所述降值后的第一环境地图中;
基于所述第一环境地图中的投影结果,确定所述第一环境地图中图像数值设定为时间图像预设值的区域,得到所述障碍物时间图像;
基于所述第二环境地图中的投影结果,确定所述第二环境地图中图像数值增加和/或减少的区域,得到所述静态概率图像。
4.根据权利要求3所述的机器人,其特征在于,所述点云数据和位置是通过传感器实时采集的;所述将所述实时采集的点云数据和位置投影到所述第二环境地图和所述降值后的第一环境地图中,包括:
按照所述传感器的参数,将所述障碍物点云数据和位置转换到机器人坐标系中,得到所述机器人坐标系下的障碍物数据;
按照所述机器人的位姿,对所述机器人坐标系下的障碍物数据进行坐标系转换,得到目标坐标系下的障碍物数据;
将所述目标坐标系下的障碍物数据,分别投影到所述第二环境地图与所述降值后的第一环境地图。
5.根据权利要求1所述的机器人,其特征在于,所述基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物,包括:
对所述静态概率图像中所述位置对应的图像数值进行二值化处理,得到静态图像;
基于所述静态图像与所述障碍物时间图像,确定所述障碍物是否为动态障碍物。
6.根据权利要求1所述的机器人,其特征在于,所述运动状态包括所述动态障碍物的速度方向和速度值,所述障碍物在不同时刻的点云数据和位置是按照传感器的感知间隔采集的;所述基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态,包括:
在所述动态障碍物时间图像的多个障碍物区域中,分别获取与点云数据和位置的采集时刻相关的图像数值;
基于所述图像数值获取各所述障碍物区域的方向值与轨迹值;
按照所述方向值确定所述速度方向;
依据所述轨迹值,确定所述多个障碍物区域中的临界区域;
根据所述临界区域与所述感知间隔,计算出所述速度值。
7.根据权利要求6所述的机器人,其特征在于,所述基于所述图像数值获取各所述障碍物区域的方向值与轨迹值,包括:
对各所述障碍物区域在不同时刻的图像数值进行梯度计算,得到梯度图像;所述梯度图像包括梯度方向图像和梯度幅值图像;
从所述梯度方向图像获取所述方向值;
对所述梯度幅值图像进行过滤,将所述过滤后的梯度幅值图像对应的图像数值,作为所述轨迹值。
8.根据权利要求6所述的机器人,其特征在于,所述依据所述轨迹值,确定所述多个障碍物区域中的临界区域,包括:
基于所述轨迹值与相应的临界值,确定所述多个障碍物区域中的第一临界区域与第二临界区域;
所述根据所述临界区域与所述感知间隔,计算出所述速度值,包括:
基于所述第一临界区域与所述第二临界区域之间的像素距离,计算临界区域物理距离;
对所述第一临界区域与所述第二临界区域差异计算,得到轨迹差异值;
基于所述感知间隔、所述轨迹差异值和所述临界区域物理距离,计算出所述速度值。
9.根据权利要求6所述的机器人,其特征在于,所述处理器还用于执行所述计算机可读指令时实现如下步骤:
当所述动态障碍物为多个时,基于各所述障碍物区域的图像数值确定目标动态障碍物的区域生长种子;所述目标动态障碍物属于所述动态障碍物中的至少一个;
当确定所述区域生长种子的种子邻域满足区域生长条件时,将所述目标动态障碍物对应的各障碍物区域分别作为下一个区域生长种子进行区域生长,得到区域生长结果;
基于所述区域生长结果、所述区域生长种子和满足所述区域生长条件的种子邻域,确定所述目标动态障碍物的障碍物区域。
10.根据权利要求9所述的机器人,其特征在于,所述确定所述区域生长种子的种子邻域满足区域生长条件,包括:
在所述区域生长种子的种子邻域中,将各所述障碍物区域的图像数值与区域生长阈值进行比较,得到生长阈值比较结果;
对所述区域生长种子与所述种子邻域进行图像数值差异信息计算,得到差异信息比较结果;
对所述区域生长种子与所述种子邻域进行图像数值比较处理,得到种子邻域比较结果;
基于所述生长阈值比较结果、所述差异信息比较结果及所述种子邻域比较结果,确定所述种子邻域满足所述区域生长条件。
11.一种动态障碍物的运动状态估计方法,其特征在于,所述方法包括:
获取障碍物在不同时刻的点云数据和位置;
依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像;
基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成所述动态障碍物的动态障碍物时间图像;
基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态。
12.一种动态障碍物的运动状态估计装置,其特征在于,所述装置包括:
数据采集模块,用于获取障碍物在不同时刻的点云数据和位置;
图像构建模块,用于依据不同时刻的所述点云数据和所述位置,在环境地图中绘制出所述障碍物的障碍物时间图像和所述障碍物的静态概率图像;
动态障碍物确定模块,用于基于所述障碍物时间图像与所述静态概率图像,确定所述障碍物是否为动态障碍物;
动态障碍物图像生成模块,用于若所述障碍物为动态障碍物,基于所述障碍物时间图像与所述静态概率图像生成所述动态障碍物的动态障碍物时间图像;
动态障碍物状态估计模块,用于基于所述动态障碍物时间图像,获得所述动态障碍物的运动状态。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求11所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210686427.6A CN114859938A (zh) | 2022-06-17 | 2022-06-17 | 机器人、动态障碍物状态估计方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210686427.6A CN114859938A (zh) | 2022-06-17 | 2022-06-17 | 机器人、动态障碍物状态估计方法、装置和计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114859938A true CN114859938A (zh) | 2022-08-05 |
Family
ID=82624072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210686427.6A Pending CN114859938A (zh) | 2022-06-17 | 2022-06-17 | 机器人、动态障碍物状态估计方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114859938A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116088503A (zh) * | 2022-12-16 | 2023-05-09 | 深圳市普渡科技有限公司 | 动态障碍物检测方法和机器人 |
CN117148837A (zh) * | 2023-08-31 | 2023-12-01 | 上海木蚁机器人科技有限公司 | 动态障碍物的确定方法、装置、设备和介质 |
-
2022
- 2022-06-17 CN CN202210686427.6A patent/CN114859938A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116088503A (zh) * | 2022-12-16 | 2023-05-09 | 深圳市普渡科技有限公司 | 动态障碍物检测方法和机器人 |
CN117148837A (zh) * | 2023-08-31 | 2023-12-01 | 上海木蚁机器人科技有限公司 | 动态障碍物的确定方法、装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109448090B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN108898676B (zh) | 一种虚实物体之间碰撞及遮挡检测方法及系统 | |
EP3570253B1 (en) | Method and device for reconstructing three-dimensional point cloud | |
CN114424250A (zh) | 结构建模 | |
CN114859938A (zh) | 机器人、动态障碍物状态估计方法、装置和计算机设备 | |
CN112784873B (zh) | 一种语义地图的构建方法及设备 | |
US20220277580A1 (en) | Hand posture estimation method and apparatus, and computer storage medium | |
US11790661B2 (en) | Image prediction system | |
CN112562000A (zh) | 基于特征点检测和误匹配筛选的机器人视觉定位方法 | |
CN112336342A (zh) | 手部关键点检测方法、装置及终端设备 | |
CN116088503B (zh) | 动态障碍物检测方法和机器人 | |
CN113743385A (zh) | 一种无人船水面目标检测方法、装置及无人船 | |
CN118230231B (zh) | 一种无人车的位姿构建方法、装置、电子设备及存储介质 | |
CN117132649A (zh) | 人工智能融合北斗卫星导航的船舶视频定位方法及装置 | |
CN116879870A (zh) | 一种适用于低线束3d激光雷达的动态障碍物去除方法 | |
CN116091998A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN116168384A (zh) | 点云目标检测方法、装置、电子设备及存储介质 | |
CN114663598A (zh) | 三维建模方法、装置和存储介质 | |
CN111401190A (zh) | 车辆检测方法、装置、计算机设备和存储介质 | |
CN116931583A (zh) | 移动对象的确定方法和避让方法、装置、设备及存储介质 | |
Saleh et al. | Estimating the 2d static map based on moving stereo camera | |
CN116642490A (zh) | 基于混合地图的视觉定位导航方法、机器人及存储介质 | |
CN111553342A (zh) | 一种视觉定位方法、装置、计算机设备和存储介质 | |
CN115830073A (zh) | 地图要素重建方法、装置、计算机设备和存储介质 | |
CN115222815A (zh) | 障碍物距离检测方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |