CN116007659A - 激光传感器的标定方法及机器人、存储介质 - Google Patents
激光传感器的标定方法及机器人、存储介质 Download PDFInfo
- Publication number
- CN116007659A CN116007659A CN202310093015.6A CN202310093015A CN116007659A CN 116007659 A CN116007659 A CN 116007659A CN 202310093015 A CN202310093015 A CN 202310093015A CN 116007659 A CN116007659 A CN 116007659A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- calibration
- laser
- oblique
- scene
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Length Measuring Devices By Optical Means (AREA)
Abstract
本申请提供一种激光传感器的标定方法及机器人、存储介质,包括:控制所述机器人运动至标定间的指定位置;其中,所述标定间内设有多个标定块,每一标定块对应所述机器人的一个激光传感器;通过所述多个激光传感器分别针对各个标定块,采集多个斜激光点云;其中,所述斜激光点云是激光传感器朝向斜下方采集的激光点云;将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵。本申请方案,实现了激光传感器的自动化标定流程,降低了人力成本,满足大批量、多传感器的标定需求。
Description
技术领域
本申请涉及机器人技术领域,特别涉及一种激光传感器的标定方法及机器人、计算机可读存储介质。
背景技术
在工业4.0时代,机器人技术得到快速发展,机器人广泛应用于各种场景。其中,清洁机器人融合了无人驾驶技术、智能导航技术和避障技术等,可以有效降低人力成本,完成复杂的清洁任务,实现高效的清洁自动化。清洁机器人上传感器众多,其中激光传感器可用于实现机器人的避障、导航、障碍物识别等多种功能。在清洁机器人出厂前,需对各个激光传感器进行标定,以获得激光传感器所能采集的点云与实际场景中物体的点云的转换关系。对于激光传感器而言,目前主要的标定手段是手动标定,难以满足大批量、多传感器的标定需求,亟需一种自动化的激光传感器的标定方法。
发明内容
本申请实施例的目的在于提供一种激光传感器的标定方法及机器人、计算机可读存储介质,用于对机器人的激光传感器进行自动化标定。
一方面,本申请提供了一种激光传感器的标定方法,应用于机器人,所述机器人搭载多个激光传感器,包括:
控制所述机器人运动至标定间的指定位置;其中,所述标定间内设有多个标定块,每一标定块对应所述机器人的一个激光传感器;
通过所述多个激光传感器分别针对各个标定块,采集多个斜激光点云;其中,所述斜激光点云是激光传感器朝向斜下方采集的激光点云;
将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵。
在一实施例中,所述控制所述机器人运动至标定间的指定位置,包括:
控制所述机器人依据所述标定间内预设导航点进行运动;其中,所述导航点对应所述指定位置;
获取所述标定间内限位块上位移传感器返回的当前位置信息;
判断所述当前位置信息是否与所述指定位置匹配;
若不匹配,调整所述机器人的位置,并返回所述获取所述标定间内限位块上位移传感器返回的当前位置信息的步骤,直至所述当前位置信息与所述指定位置匹配。
在一实施例中,在所述将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵之前,所述方法还包括:
针对每一斜激光点云,根据其所在激光传感器坐标系对应的第一齐次转换矩阵,将所述斜激光点云转换至机器人坐标系;
根据标定场景点云所在世界坐标系对应的第二齐次转换矩阵,将所述标定场景点云转换至所述机器人坐标系。
在一实施例中,所述将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵,包括:
将所述多个斜激光点云作为点云组合,通过ransac算法对所述点云组合和所述标定场景点云进行配准,获得第一配准转换矩阵;
通过所述ransac算法在所述第一配准转换矩阵的基础上,分别对每一斜激光点云和所述标定场景点云进行配准,获得与每一斜激光点云对应的第二配准转换矩阵;
针对每一斜激光点云,通过ICP算法在所述斜激光点云对应的第二配准转换矩阵的基础上,对所述斜激光点云和所述标定场景点云进行配准,获得与每一斜激光点云对应的第三配准转换矩阵;
将每一斜激光点云对应的第三配准转换矩阵,作为其对应的激光传感器的目标配准转换矩阵。
在一实施例中,在所述获得与每一斜激光点云对应的第三配准转换矩阵之后,所述方法还包括:
分别根据每一斜激光点云对应的第三配准转换矩阵,对所述斜激光点云进行处理,得到配准后的多个斜激光点云;
根据配准后的多个斜激光点云与所述标定场景点云,计算距离参数,并将所述距离参数换算出所述多个激光传感器的标定分数;
判断所述标定分数是否达到预设分数阈值,若否,返回将所述多个斜激光点云作为点云组合,通过ransac算法对所述点云组合和所述标定场景点云进行配准的步骤;
若是,继续执行所述将每一斜激光点云对应的第三配准转换矩阵,作为其对应的激光传感器的目标配准转换矩阵的步骤。
在一实施例中,所述根据配准后的多个斜激光点云与所述标定场景点云,计算距离参数,包括:
从配准后的多个斜激光点云中拆分出斜激光地面点云和斜激光标定块点云;
从所述标定场景点云中拆分出标定场景地面点云和标定场景标定块点云;
计算所述斜激光地面点云与所述标定场景地面点云指示平面之间的第一距离均值;
通过kdtree算法计算所述斜激光标定块点云与所述标定场景标定块点云的最小距离总和,并以所述最小距离总和计算第二距离均值;
将所述第一距离均值和所述第二距离均值作为所述距离参数。
在一实施例中,所述从配准后的多个斜激光点云中拆分出斜激光地面点云和斜激光标定块点云,包括:
通过ransac算法对配准后多个斜激光点云分别进行分割,获得初始地面点云和初始标定块点云;
通过指定坐标轴的第一限定条件,对所述初始地面点云进行筛选,得到斜激光地面点云;
通过所述指定坐标轴的第二限定条件,对所述初始标定块点云进行筛选,得到斜激光标定块点云。
在一实施例中,所述从所述标定场景点云中拆分出标定场景地面点云和标定场景标定块点云,包括:
通过ransac算法对所述标定场景点云进行分割,获得标定场景地面点云和初始场景标定块点云;
通过指定坐标轴的第三限定条件,对所述初始场景标定块点云进行筛选,得到标定场景标定块点云。
进一步的,本申请提供了一种机器人,所述机器人包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述激光传感器的标定方法。
此外,本申请提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述激光传感器的标定方法。
本申请方案,机器人可以在出厂前借助标定间完成自动化标定流程,这一方法可以极大地降低人力成本,满足大批量、多传感器的标定需求。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
图1为本申请一实施例提供的机器人的结构示意图;
图2为本申请一实施例提供的激光传感器的标定方法的流程示意图;
图3为本申请一实施例提供的标定场景的示意图;
图4为本申请一实施例提供的图3中步骤210的细节流程示意图;
图5为本申请一实施例提供的图3中步骤230的细节流程示意图;
图6为本申请一实施例提供的第三配准转换矩阵的检验方法的流程示意图;
图7为本申请一实施例提供的配准前后斜激光点云的对比示意图;
图8为本申请另一实施例提供的配准前后斜激光点云的对比示意图;
图9为本申请一实施例提供的距离参数的计算方法的流程示意图;
图10为本申请一实施例提供的图9中步骤910的细节流程示意图;
图11为本申请一实施例提供的图9中步骤920的细节流程示意图;
图12为本申请一实施例提供的激光传感器的标定装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,本实施例提供一种机器人1,包括:至少一个处理器11和存储器12,图1中以一个处理器11为例。处理器11和存储器12通过总线10连接,存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以使机器人1可执行下述的实施例中方法的全部或部分流程。在一实施例中,机器人1可以是清洁机器人,用于执行激光传感器的标定方法。
存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请还提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序可由处理器11执行以完成本申请提供的激光传感器的标定方法。
参见图2,为本申请一实施例提供的激光传感器的标定方法的流程示意图,如图2所示,该方法可以包括以下步骤210-步骤230。
步骤210:控制机器人运动至标定间的指定位置;其中,标定间内设有多个标定块,每一标定块对应机器人的一个激光传感器。
本申请方案应用于搭载多个激光传感器的机器人,各个激光传感器在机器人的各个位置按照斜向下的方向安装,用于采集机器人周边物体的点云。依据激光传感器采集点云的方向,本申请中,将各个激光传感器所采集的点云称作斜激光点云。机器人所搭载的激光传感器的数量,可根据需要进行设置。
标定间为专门用于激光传感器标定的房间(场景),标定间内可以设置多个标定块,各标定块可以为规则形状(比如:长方体或立方体)的物体。标定块的数量和位置可根据机器人所搭载的激光传感器的数量和位置相应设置。此外,标定间可以设有限位块,限位块位于指定位置周边,用于限定机器人停留在指定位置。
机器人可以响应于接收到的自动标定指令,规划从自身当前位置运动至标定间的指定位置的运动路径,并依据该运动路径运动至标定间的指定位置。
参见图3,为本申请一实施例提供的标定场景的示意图,如图3所示,1为机器人,2为左侧限位块,3为机器人左侧的激光传感器,4为对应于左侧的激光传感器的1号标定块,5为对应于中间的激光传感器的2号标定块,6为机器人中间的激光传感器,7为对应于右侧的激光传感器的3号标定块,8为机器人右侧的激光传感器,9为右侧限位块。这种情况下,机器人位于左侧限位块和右侧限位块之间的指定位置,通过右侧的激光传感器采集1号标定块和1号标定块周围地面的斜激光点云;通过中间的激光传感器采集2号标定块和2号标定块周围地面的斜激光点云;通过右侧的激光传感器采集3号标定块和3号标定块周围地面的斜激光点云。
步骤220:通过多个激光传感器分别针对各个标定块,采集多个斜激光点云;其中,斜激光点云是激光传感器朝向斜下方采集的激光点云。
在机器人位于指定位置的情况下,机器人可以控制各个激光传感器,分别针对激光传感器所对应的标定块,采集斜激光点云,从而得到多个斜激光点云。
步骤230:将多个斜激光点云,与标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵。
其中,标定场景点云是预先采集的标定间物体(标定块)和地面的激光点云,标定场景点云表征在理想情况下所能采集的激光点云。
在获得各个激光传感器所采集的斜激光点云之后,机器人可以通过配准算法对斜激光点云和标定场景点云进行配准,从而得到与各个激光传感器对应的目标配准转换矩阵。该目标配准转换矩阵用于对激光传感器所采集的斜激光点云进行转换处理,从而得到能够准确表征周围环境中物体位置的激光点云。
在一实施例中,标定间可以预先配置多个标定场景点云,在进行配准前,机器人可以选择一个标定场景点云,并检查标定场景点云中标定块表面是否完整,如果完整,可以继续进行配准;如果不完整,比如,标定块表面的点云存在缺口,机器人可以重新选择一个标定场景点云。机器人可以选择多次,直至选中一个完整的标定场景点云。
通过上述措施,机器人可以在出厂前借助标定间完成自动化标定流程,这一方法可以极大地降低人力成本,满足大批量、多传感器的标定需求。
在一实施例中,参见图4,为本申请一实施例提供的图3中步骤210的细节流程示意图,如图4所示,在执行步骤210时,可以具体执行如下步骤211至步骤214。
步骤211:控制机器人依据标定间内预设导航点进行运动;其中,导航点对应指定位置。
机器人可以根据标定间内指定位置对应的导航点,规划运动路径。其中,指定位置可以通过导航点在世界坐标系中的坐标信息来表示。在规划出运动路径后,机器人可以依据该运动路径进行运动。
步骤212:获取标定间内限定块上位移传感器返回的当前位置信息。
标定间内限位块上可以设置位移传感器,该位移传感器可以检测机器人在世界坐标系下的当前位置信息。这里,位移传感器可以检测机器人某个位置(比如:最前端、最后端或机器人中心)的当前位置信息,并传输至机器人。因此,机器人在进入位移传感器的检测范围后,可以持续获取位移传感器返回的当前位置信息。
步骤213:判断当前位置信息是否与指定位置匹配。
在获得当前位置信息之后,机器人可以判断当前位置信息与指定位置是否匹配。这里,当前位置信息可以通过世界坐标系下的坐标信息来表示。在机器人靠近指定位置的情况下,可以认为当前位置信息在Z轴(垂直于水平面)方向上的坐标与指定位置一致,可以通过设定水平面上X轴方向与Y轴方向可接受的误差,来指示匹配的情况。示例性的,根据指定位置的X轴坐标和可接受误差,可以确定可接受的X轴方向最大值和最小值;根据指定位置的Y轴坐标和可接受误差,可以确定可接受的Y轴方向最大值和最小值。机器人可以判断当前位置信息中X轴坐标是否在可接受的最大值和最小值之间、Y轴坐标是否在可接受的最大值和最小值之间,从而判断当前位置信息与指定位置是否匹配。
一种情况下,当前位置信息与指定位置匹配,此时,可以认为机器人已经运动至指定位置,机器人可以继续执行步骤220。另一种情况下,当前位置信息与指定位置不匹配,可以执行步骤214。
步骤214:若不匹配,调整机器人的位置,并返回获取标定间内限定块上位移传感器返回的当前位置信息的步骤,直至当前位置信息与指定位置匹配。
在当前位置信息与指定位置不匹配的情况下,机器人可以依据当前位置信息调整自身位置,以靠近指定位置。这一过程中,机器人可以返回步骤212,并根据实时获取的当前位置信息重新判断机器人是否运动至指定位置。经过调整,当机器人运动至指定位置之后,可以继续执行步骤220。
通过上述措施,机器人在依据运动路径进行运动后,可以通过限位块上的位移传感器检查是否运动至指定位置,从而可以准确运动至指定位置执行标定流程。
在一实施例中,在执行步骤230之前,可以将斜激光点云和标定场景点云转换至同一坐标系下,从而在同一坐标系下进行配准。
针对每一斜激光点云,机器人可以根据其所在激光传感器坐标系对应的第一齐次转换矩阵,将该斜激光点云转换至机器人坐标系。其中,每一激光传感器对应一个激光传感器坐标系,各个激光传感器坐标系与机器人坐标系分别存在对应的转换关系,该转换关系可以通过第一齐次转换矩阵来表示。
示例性的,任一斜激光点云表示为P,包括多个数据点(p1,p2,p3,……,pn),该斜激光点云所在的激光传感器坐标系的第一齐次转换矩阵为T0,则该斜激光点云转换至机器人坐标系下可表示为P1=P*T0。
世界坐标系与机器人坐标系之间的转换关系,可以通过第二齐次转换矩阵来表示。机器人可以根据标定场景点云所在世界坐标系对应的第二齐次转换矩阵,将标定场景点云转换至机器人坐标系。示例性的,标定场景点云表示为P2,第二齐次转换矩阵为T1,转换至机器人坐标系的标定场景点云可表示为P3=P2*T1。
在一实施例中,参见图5,为本申请一实施例提供的图3中步骤230的细节流程示意图,如图5所示,在执行步骤230时,可以具体执行如下步骤231至步骤234。
步骤231:将多个斜激光点云作为点云组合,通过ransac算法对点云组合和标定场景点云进行配准,获得第一配准转换矩阵。
机器人可以将多个斜激光点云作为点云组合,通过ransac算法对点云组合整体与标定场景点云进行配准,这一过程为粗配准过程,可以得到第一配准转换矩阵。
步骤232:通过ransac算法在第一配准转换矩阵的基础上,分别对每一斜激光点云和标定场景点云进行配准,获得与每一斜激光点云对应的第二配准转换矩阵。
在获得第一配准转换矩阵之后,机器人可以通过ransac算法,分别对每一斜激光点云和标定场景点云进行配准,从而再次进行粗配准,获得与每一斜激光点云对应的第二配准转换矩阵。
步骤233:针对每一斜激光点云,通过ICP算法在斜激光点云对应的第二配准转换矩阵的基础上,对斜激光点云和标定场景点云进行配准,获得与每一斜激光点云对应的第三配准转换矩阵。
在获得多个第二配准转换矩阵之后,机器人可以通过ICP(Iterative ClosestPoint)算法在各个第二配准转换矩阵的基础行,分别对各个斜激光点云和标定场景进行配准,这一过程为精配准,可以得到与每一斜激光点云对应的第三配准转换矩阵。
步骤234:将每一斜激光点云对应的第三配准转换矩阵,作为其对应的激光传感器的目标配准转换矩阵。
机器人可以将斜激光点云对应的第三配准转换矩阵,作为该斜激光点云对应的激光传感器的目标配准转换矩阵。
通过上述措施,首先将多个斜激光点云作为整体与标定场景点云进行粗配准,可以借助多个斜激光点云构成的较为稳定的整体特征获得第一配准转换矩阵,进而在此基础上进一步进行粗配准和精配准,从而得到各个激光传感器对应的目标配准转换矩阵。
在一实施例中,在精配准获得各个斜激光点云对应的第三配准转换矩阵之后,可以检验第三配准转换矩阵是否满足后续的应用要求。参见图6,为本申请一实施例提供的第三配准转换矩阵的检验方法的流程示意图,如图6所示,该方法可以包括如下步骤610至步骤640。
步骤610:分别根据每一斜激光点云对应的第三配准转换矩阵,对斜激光点云进行处理,得到配准后的多个斜激光点云。
在获得各个斜激光点云对应的第三配准转换矩阵之后,机器人可以分别通过各个第三配准转换矩阵对各个斜激光点云进行处理,得到配准后的多个斜激光点云。
步骤620:根据配准后的多个斜激光点云与标定场景点云,计算距离参数,并将距离参数换算出多个激光传感器的标定分数。
在获得配准后的多个斜激光点云之后,机器人可以计算距离参数,该距离参数表征配准后的多个斜激光点云和标定场景点云的整体差异。进一步的,机器人可以将距离参数换算出多个激光传感器的标定分数,该标定分数表征各个第三配准转换矩阵的配置效果。
步骤630:判断标定分数是否达到预设分数阈值,若否,返回将多个斜激光点云作为点云组合,通过ransac算法对点云组合和标定场景点云进行配准的步骤。
步骤640:若是,继续执行将每一斜激光点云对应的第三配准转换矩阵,作为其对应的激光传感器的目标配准转换矩阵的步骤。
其中,分数阈值用于筛选可应用的第三配准转换矩阵,可根据需要进行配置。示例性的,分数阈值可以是90。
在获得标定分数后,机器人可以检查该标定分数是否达到分数阈值。一种情况下,如果未达到分数阈值,以第三配准转换矩阵进行转换后的斜激光点云与标定场景点云无法配准,说明第三配准转换矩阵后续无法将激光传感器采集的斜激光点云转换成物体实际的激光点云,这种情况下,机器人可以返回粗配准的步骤,重新进行配准,以获得更好的配准转换矩阵。重新配准的流程,可以在当前最新的第三配准转换矩阵的基础上进行。
另一种情况下,如果达到分数阈值,说明第三配准转换矩阵后续可以将激光传感器采集的斜激光点云转换为物体实际的激光点云,这种情况下,机器人可以将各个第三配准转换矩阵作为目标配准转换矩阵。
通过上述措施,机器人可以在粗配准和精配准之后,对各个斜激光点云对应的第三配准转换矩阵进行检验,从而在未通过检验的情况下,继续进行配准流程,以最终获得目标配准转换矩阵。
参见图7,为本申请一实施例提供的配准前后斜激光点云的对比示意图,如图7所示,灰色折线为标定场景中某一个标定块和周边地面的斜激光点云;白色折线为经过配准的斜激光点云。这种情况下,经过配准的斜激光点云与标定块距离较远,可见,用于转换的第三配准转换矩阵并不够准确,无法作为目标配准转换矩阵。
参见图8,为本申请另一实施例提供的配准前后斜激光点云的对比示意图,如图8所示,灰色折线为标定场景中某一个标定块和周边地面的斜激光点云;白色折线为经过配准的斜激光点云。这种情况下,经过配准的斜激光点云与标定块较为贴合,可见,用于转换的第三配准转换矩阵足够准确,可以作为目标配准转换矩阵。
在一实施例中,参见图9,为本申请一实施例提供的距离参数的计算方法的流程示意图,如图9所示,在计算距离参数时,可以执行如下步骤910至步骤950。
步骤910:从配准后的多个斜激光点云中拆分出斜激光地面点云和斜激光标定块点云。
其中,斜激光地面点云为配准后斜激光点云中表征地面的点云;斜激光标定块点云为配准后斜激光点云中表征标定块的点云。
机器人可以通过PCL直线分割算法,从配准后的多个斜激光点云中拆分出满足直线形式的斜激光地面点云和不满足直线形式的斜激光标定块点云。
步骤920:从标定场景点云中拆分出标定场景地面点云和标定场景标定块点云。
其中,标定场景地面点云为标定场景点云中表征地面的点云;标定长度标定块点云为标定场景点云中表征标定块的点云。
机器人可以通过PCL点云平面分割功能,对标定场景点云进行拆分,从而得到标定场景地面点云和标定场景标定块点云。
步骤930:计算斜激光地面点云与标定场景地面点云指示平面之间的第一距离均值。
机器人可以计算斜激光地面点云,与标定场景地面点云指示平面之间的第一距离均值。换而言之,计算斜激光地面点云的各个数据点Z轴坐标与地面所在Z轴坐标之间距离的均值。
步骤940:通过kdtree算法计算斜激光标定块点云与标定场景标定块点云的最小距离总和,并以最小距离总和计算第二距离均值。
步骤950:将第一距离均值和第二距离均值作为距离参数。
机器人可以通过kdtree算法,计算斜激光标定块点云与标定场景标定块点云之间多个数据点的最小距离总和,进而以该最小距离总和计算第二距离均值。
在获得第一距离均值和第二距离均值之后,可以将第一距离均值和第二距离均值作为距离参数。
在获得距离参数后,可以通过如下公式(1)换算出标定分数:
score=100-2*(a*meankd+b*meanground)(1)
其中,meanground为第一距离均值;meadkd为第二距离均值;a为第一距离均值的权重;b为第二距离均值的权重。在一实施例中,a+b=1。
在一实施例中,参见图10,为本申请一实施例提供的图9中步骤910的细节流程示意图,如图10所示,在执行步骤910时,可以具体执行如下步骤911至步骤913。
步骤911:通过ransac算法对配准后多个斜激光点云分别进行分割,获得初始地面点云和初始标定块点云。
机器人可以通过ransac算法对配准后多个斜激光点云分别进行分割,获得多个初始地面点云和多个初始标定块点云。这里,初始地面点云为初步拆分出的地面点云;初始标定块点云为初步拆分出的标定块点云。
步骤912:通过指定坐标轴的第一限定条件,对初始地面点云进行筛选,得到斜激光地面点云。
这里,指定坐标轴可以为垂直于水平面的Z轴。第一限定条件为Z轴坐标小于第一预设数值。
机器人可以依据第一限定条件对初始地面点云进行筛选,获得满足第一限定条件的数据点,从而得到斜激光地面点云。
步骤913:通过指定坐标轴的第二限定条件,对初始标定块点云进行筛选,得到斜激光标定块点云。
这里,第二限定条件为Z轴坐标大于第二预设数值。
机器人可以依据第二限定条件对初始标定块点云进行筛选,获得满足第二限定条件的数据点,从而得到斜激光标定块点云。
在一实施例中,参见图11,为本申请一实施例提供的图9中步骤920的细节流程示意图,如图11所示,在执行步骤920时,可以具体执行如下步骤921至步骤922。
步骤921:通过ransac算法对标定场景点云进行分割,获得标定场景地面点云和初始场景标定块点云。
机器人可以通过ransac算法对标定场景点云进行平面分割,得到标定场景地面点云。标定场景点云中除标定场景地面点云以外的点云,作为初始场景标定块点云。
步骤922:通过指定坐标轴的第三限定条件,对初始场景标定块点云进行筛选,得到标定场景标定块点云。
这里,指定坐标轴可以为垂直于水平面的Z轴。第三限定条件为Z轴坐标大于第三预设数值。第三预设数值可以等同于第二预设数值,也可以不同,根据需要配置。
机器人可以依据第三限定条件对初始场景标定块点云进行筛选,获得满足第三限定条件的数据点,从而得到标定场景标定块点云。
图12是本发明一实施例的一种激光传感器的标定装置的框图,如图12所示,该装置可以包括:
控制模块1210,用于控制所述机器人运动至标定间的指定位置;其中,所述标定间内设有多个标定块,每一标定块对应所述机器人的一个激光传感器;
采集模块1220,用于通过所述多个激光传感器分别针对各个标定块,采集多个斜激光点云;其中,所述斜激光点云是激光传感器朝向斜下方采集的激光点云;
配准模块1230,用于将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵。
上述装置中各个模块的功能和作用的实现过程具体详见上述激光传感器的标定方法中对应步骤的实现过程,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种激光传感器的标定方法,应用于机器人,所述机器人搭载多个激光传感器,其特征在于,包括:
控制所述机器人运动至标定间的指定位置;其中,所述标定间内设有多个标定块,每一标定块对应所述机器人的一个激光传感器;
通过所述多个激光传感器分别针对各个标定块,采集多个斜激光点云;其中,所述斜激光点云是激光传感器朝向斜下方采集的激光点云;
将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵。
2.根据权利要求1所述的激光传感器的标定方法,其特征在于,所述控制所述机器人运动至标定间的指定位置,包括:
控制所述机器人依据所述标定间内预设导航点进行运动;其中,所述导航点对应所述指定位置;
获取所述标定间内限位块上位移传感器返回的当前位置信息;
判断所述当前位置信息是否与所述指定位置匹配;
若不匹配,调整所述机器人的位置,并返回所述获取所述标定间内限位块上位移传感器返回的当前位置信息的步骤,直至所述当前位置信息与所述指定位置匹配。
3.根据权利要求1所述的激光传感器的标定方法,其特征在于,在所述将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵之前,所述方法还包括:
针对每一斜激光点云,根据其所在激光传感器坐标系对应的第一齐次转换矩阵,将所述斜激光点云转换至机器人坐标系;
根据标定场景点云所在世界坐标系对应的第二齐次转换矩阵,将所述标定场景点云转换至所述机器人坐标系。
4.根据权利要求1所述的激光传感器的标定方法,其特征在于,所述将所述多个斜激光点云,与所述标定间的标定场景点云进行配准,得到与每一激光传感器对应的目标配准转换矩阵,包括:
将所述多个斜激光点云作为点云组合,通过ransac算法对所述点云组合和所述标定场景点云进行配准,获得第一配准转换矩阵;
通过所述ransac算法在所述第一配准转换矩阵的基础上,分别对每一斜激光点云和所述标定场景点云进行配准,获得与每一斜激光点云对应的第二配准转换矩阵;
针对每一斜激光点云,通过ICP算法在所述斜激光点云对应的第二配准转换矩阵的基础上,对所述斜激光点云和所述标定场景点云进行配准,获得与每一斜激光点云对应的第三配准转换矩阵;
将每一斜激光点云对应的第三配准转换矩阵,作为其对应的激光传感器的目标配准转换矩阵。
5.根据权利要求4所述的激光传感器的标定方法,其特征在于,在所述获得与每一斜激光点云对应的第三配准转换矩阵之后,所述方法还包括:
分别根据每一斜激光点云对应的第三配准转换矩阵,对所述斜激光点云进行处理,得到配准后的多个斜激光点云;
根据配准后的多个斜激光点云与所述标定场景点云,计算距离参数,并将所述距离参数换算出所述多个激光传感器的标定分数;
判断所述标定分数是否达到预设分数阈值,若否,返回将所述多个斜激光点云作为点云组合,通过ransac算法对所述点云组合和所述标定场景点云进行配准的步骤;
若是,继续执行所述将每一斜激光点云对应的第三配准转换矩阵,作为其对应的激光传感器的目标配准转换矩阵的步骤。
6.根据权利要求5所述的激光传感器的标定方法,其特征在于,所述根据配准后的多个斜激光点云与所述标定场景点云,计算距离参数,包括:
从配准后的多个斜激光点云中拆分出斜激光地面点云和斜激光标定块点云;
从所述标定场景点云中拆分出标定场景地面点云和标定场景标定块点云;
计算所述斜激光地面点云与所述标定场景地面点云指示平面之间的第一距离均值;
通过kdtree算法计算所述斜激光标定块点云与所述标定场景标定块点云的最小距离总和,并以所述最小距离总和计算第二距离均值;
将所述第一距离均值和所述第二距离均值作为所述距离参数。
7.根据权利要求6所述的激光传感器的标定方法,其特征在于,所述从配准后的多个斜激光点云中拆分出斜激光地面点云和斜激光标定块点云,包括:
通过ransac算法对配准后多个斜激光点云分别进行分割,获得初始地面点云和初始标定块点云;
通过指定坐标轴的第一限定条件,对所述初始地面点云进行筛选,得到斜激光地面点云;
通过所述指定坐标轴的第二限定条件,对所述初始标定块点云进行筛选,得到斜激光标定块点云。
8.根据权利要求6所述的激光传感器的标定方法,其特征在于,所述从所述标定场景点云中拆分出标定场景地面点云和标定场景标定块点云,包括:
通过ransac算法对所述标定场景点云进行分割,获得标定场景地面点云和初始场景标定块点云;
通过指定坐标轴的第三限定条件,对所述初始场景标定块点云进行筛选,得到标定场景标定块点云。
9.一种机器人,其特征在于,所述机器人包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-8任意一项所述的激光传感器的标定方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1-8任意一项所述的激光传感器的标定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310093015.6A CN116007659A (zh) | 2023-02-03 | 2023-02-03 | 激光传感器的标定方法及机器人、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310093015.6A CN116007659A (zh) | 2023-02-03 | 2023-02-03 | 激光传感器的标定方法及机器人、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116007659A true CN116007659A (zh) | 2023-04-25 |
Family
ID=86026879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310093015.6A Pending CN116007659A (zh) | 2023-02-03 | 2023-02-03 | 激光传感器的标定方法及机器人、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116007659A (zh) |
-
2023
- 2023-02-03 CN CN202310093015.6A patent/CN116007659A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107481292B (zh) | 车载摄像头的姿态误差估计方法和装置 | |
EP3451296B1 (en) | Multidimensional evidence grids and system and methods for applying same | |
CN109932713B (zh) | 定位方法、装置、计算机设备、可读存储介质和机器人 | |
CN110470333A (zh) | 传感器参数的标定方法及装置、存储介质和电子装置 | |
CN112106111A (zh) | 一种标定方法、设备、可移动平台及存储介质 | |
CN111427028B (zh) | 参数监测方法、装置、设备和存储介质 | |
CN111380510B (zh) | 重定位方法及装置、机器人 | |
KR102490521B1 (ko) | 라이다 좌표계와 카메라 좌표계의 벡터 정합을 통한 자동 캘리브레이션 방법 | |
CA3044322A1 (en) | Self-calibrating sensor system for a wheeled vehicle | |
CN114943952A (zh) | 多相机重叠视域下障碍物融合方法、系统、设备和介质 | |
CN114998276A (zh) | 一种基于三维点云的机器人动态障碍物实时检测方法 | |
CN114494466B (zh) | 外参标定方法、装置及设备、存储介质 | |
CN117590362B (zh) | 一种多激光雷达外参标定方法、装置和设备 | |
CN116007659A (zh) | 激光传感器的标定方法及机器人、存储介质 | |
JP2778430B2 (ja) | 視覚に基く三次元位置および姿勢の認識方法ならびに視覚に基く三次元位置および姿勢の認識装置 | |
CN114882119A (zh) | 相机外参标定方法、装置、计算机设备和存储介质 | |
CN115100287A (zh) | 外参标定方法及机器人 | |
CN114966578A (zh) | 基于拍摄设备的雷达外参标定方法、装置和计算机设备 | |
CN117433511B (zh) | 一种多传感器融合定位方法 | |
JP2021012043A (ja) | 機械学習用情報処理装置、機械学習用情報処理方法、および機械学習用情報処理プログラム | |
CN116645421A (zh) | 线激光传感器的标定方法及装置、机器人、存储介质 | |
CN115147612B (zh) | 一种基于累加点云对车辆尺寸进行实时估计的处理方法 | |
CN112348875B (zh) | 一种标志杆的结构化参数表示确定方法及装置 | |
CN115375713B (zh) | 地面点云的分割方法、装置及计算机可读存储介质 | |
CN118015090A (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 |