CN117237561B - 一种人形机器人封闭环境下三维点云地图重建方法 - Google Patents
一种人形机器人封闭环境下三维点云地图重建方法 Download PDFInfo
- Publication number
- CN117237561B CN117237561B CN202311508622.0A CN202311508622A CN117237561B CN 117237561 B CN117237561 B CN 117237561B CN 202311508622 A CN202311508622 A CN 202311508622A CN 117237561 B CN117237561 B CN 117237561B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- real scene
- humanoid robot
- coordinate system
- node
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000010276 construction Methods 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 claims abstract description 8
- 230000011218 segmentation Effects 0.000 claims abstract description 4
- 238000004364 calculation method Methods 0.000 claims description 19
- 230000007613 environmental effect Effects 0.000 claims description 18
- 238000013507 mapping Methods 0.000 claims description 12
- 230000009471 action Effects 0.000 claims description 7
- 238000003491 array Methods 0.000 claims description 3
- 230000004888 barrier function Effects 0.000 claims description 3
- 238000001514 detection method Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Landscapes
- Manipulator (AREA)
Abstract
一种人形机器人封闭环境下三维点云地图重建方法,包括如下步骤:S1:由人形机器人收集现实场景内的信息;对收集到的信息进行处理,得到现实场景的三维点云模型;S2:对三维点云模型进行点云分割,然后得到现实场景内每一个物体的点云模型;S3:计算现实场景内每一个物体在点云坐标系的坐标;S4:当现实场景的尺寸未知时,计算现实场景的尺寸;S5:计算现实场景内所有的物体在现实场景坐标系下的坐标;S6:地面检测,地图重建完成。本发明所述的一种人形机器人封闭环境下三维点云地图重建方法,采用点云三维重建,使人形机器人采用更加灵活、所需硬件更少的方式,自动完成对在一个封闭环境下进行环境地图的构建,以及对环境信息的理解。
Description
技术领域
本发明属于机器人视觉技术领域,具体涉及一种人形机器人封闭环境下三维点云地图重建方法。
背景技术
人形机器人技术在制造、物流、医疗等领域的应用日益广泛,人形机器人需要准确的环境感知和空间认知能力,以实现自主导航、协作操作等任务。在这些任务中,准确的三维环境信息对于人形机器人的性能至关重要。
目前,常用的方法有:(1)SLAM方法可以通过摄像机或者激光雷达搭配运动传感器等方式为人形机器人在一个环境内构建地图,使人形机器人理解周围的三维信息。(2)基于滤波的定位和地图构建,该方法使用卡尔曼滤波器或扩展卡尔曼滤波器等滤波器来估计人形机器人的位置和姿态,并且使用测量数据进行地图构建,虽然不如SLAM方法灵活,但是它可以在一些特定的场景中实现有效的定位和地图构建。(3)粒子滤波器,粒子滤波器是一种基于概率的方法,它通过对粒子进行采样来估计人形机器人的位置和姿态,并使用测量数据进行地图构建。这种方法适用于非线性非高斯系统,但是在一些场景中可能会出现粒子贫化问题。(4)基于优化的定位和地图构建,这种方法使用优化算法来估计人形机器人的位置和姿态,并使用测量数据进行地图构建。这种方法通常需要较大的计算资源,但是它可以实现更高的精度和更灵活的地图构建。
因此,本发明研发出一种人形机器人封闭环境下三维点云地图重建方法,采用更加灵活、所需硬件更少的方式,在只装配深度双目的情况下,完成多姿态人形机器人在封闭环境(例如家庭,办公室等复杂场景环境)三维点云地图的构建。
发明内容
发明目的:为了克服以上不足,本发明的目的是提供一种人形机器人封闭环境下三维点云地图重建方法,设计合理,采用点云三维重建,使人形机器人采用更加灵活、所需硬件更少的方式,自动完成对在一个封闭环境下进行环境地图的构建,以及对环境信息的理解,具有良好的发展性与拓展性,应用前景广泛。
本发明的目的是通过以下技术方案实现的:
一种人形机器人封闭环境下三维点云地图重建方法,包括如下步骤:
S1:由人形机器人收集现实场景内的信息;对收集到的信息进行处理,得到现实场景的三维点云模型;
S2:对三维点云模型进行点云分割,然后得到现实场景内每一个物体的点云模型;
S3:计算现实场景内每一个物体在点云坐标系的坐标;
S4:当现实场景的尺寸未知时,计算现实场景的尺寸;
S5:计算现实场景内所有的物体在现实场景坐标系下的坐标;
S6:进行地面检测,检测出点云坐标系下的地面,地图重建完成。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法,所述步骤S1,具体包括如下步骤:
S11:将人形机器人放在现实场景的中心;
S12:人形机器人依次去现实场景内每一个障碍物所在位置,去收集被障碍物所遮挡的环境信息,采用环境信息树的树形结构描述整个现实场景的环境信息,为人形机器人提供行动指引;
S13:在人形机器人的实际行动中采用回溯实体化的形式;
S14:当人形机器人创建/遍历整个环境信息树以后,整个现实场景的信息已经收集完毕;
S15:当人形机器人对现实场景的信息收集完毕以后,采用从二维图片到三维场景的方式进行处理,得到现实场景的三维点云模型。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法,所述步骤S12,具体包括如下内容:环境信息树的构建采用深度优先的方式,若人形机器人位于现实场景的中心,即根节点所在位置,则需要人形机器人扫描根节点所在位置的各个方向,得到四周所有方向的边界点;若人形机器人不位于现实场景的中心,即子节点所在位置,则只需要人形机器人扫描单个方向的边界点即可。
当在对一个现实场景进行重建时,需要考虑到障碍物的遮挡。需要依次去障碍物所在位置去收集被障碍物所遮挡的环境信息。基于此,本发明采用树形结构描述整个现实场景的信息。当将一个环境映射到一个二维的照片时,这些障碍信息在二维图片的表现形式为边角点,所以这些边角点即为树形结构的节点。若到达了现实场景的边界或者正在当前所在位置节点检测不到的边界点,那么当前所在位置节点即为树形结构的子节点。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法,所述步骤S13,具体包括如下内容:当人形机器人创建/遍历整个环境信息树时,在环境信息树中每遍历一个节点,都需要人形机器人回到其父节点所在位置,然后从父节点所在位置前往子节点所在位置。
在人形机器人的实际行动中,为了避免内存的浪费并且提升算法的复杂性,本发明采用将回溯实体化的形式。因为人形机器人未装备雷达等定位装置,这样做有利于人形机器人随时随刻知道自己的位置以及位置所代表的环境信息树的节点。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法, 所述步骤S13,人形机器人采用计算机视觉来辨认方向,具体包括如下内容:采用一个位置望向另一个位置的图片的特征来表示方向,当人形机器人要回溯时,会查找所在位置节点望向父节点所在位置的图片的特征;然后,人形机器人对当前位置的各个方向角度的图片特征进行比对,找到与查找到的特征最为相似的特征,则此特征对应图片所在的方向,即为父节点所在位置的方向;特征有两个方向,分别为父节点所在位置望向子节点所在位置的位置以及子节点所在位置望向父节点所在位置的位置;分别用两个二维数组来表示;每一个数组元素为一个多维特征;人形机器人每到一个节点所在位置,都需要记录其望向父节点所在位置的特征以及其望向子节点所在位置的特征。
在人形机器人前往一个地点(节点)时,需要辨认方向,尤其时在进行回溯的时候。由于人形机器人未装备雷达,因此设计了一个采用计算机视觉来辨认方向的方法。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法,所述步骤S2,具体包括如下步骤:
S21:对点云坐标系进行调整;检测地面,在点云坐标系里将原点调整至地面几何中心,以地面为x、y坐标平面,以现实场景的宽度以及长度为y、x轴的方向;在现实场景坐标系同样将原点调整至地面几何中心,以地面为x、y坐标平面,以现实场景的宽度以及长度为y、x轴的方向;
S22:对点云坐标系的大小进行调整;对点云坐标系的x轴的坐标进行归一化,点云坐标系的y轴、z轴的坐标按比例进行调整;
S23:设现实场景的长、宽、高分别为、/>、/>,现实场景坐标系某一点的坐标为/>,点云坐标系某一点的坐标为/>;设现实场景坐标系经过点云坐标系与点云坐标系大小的调整后,点云坐标系的坐标与现实场景坐标系的坐标的映射关系如下所示:
;
S24:设物体在点云坐标系的坐标为,则得到现实场景的三维点云模型以后,对三维点云模型进行分割,得到现实场景内每一个物体的点云模型。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法,所述步骤S3,具体包括如下步骤:
S31:设一个物体在分割以后的点集为,采用物体的几何中心作为物体的位置,计算方法如下:
;
S32:将点云坐标系的物体的坐标映射到现实场景坐标系,设现实场景坐标系的物体的坐标为,则现实场景坐标系的物体的坐标为:
。
进一步的,上述的一种人形机器人封闭环境下三维点云地图重建方法,所述步骤S4,具体包括如下步骤:
S41:人形机器人配备深度相机,任意找两个物体,在深度相机得出的深度空间里,设两个物体的坐标分别为、/>,则两个物体与人形机器人的深度相机双目连成线段的夹角θ的计算方式为:
;
S42:现实场景里,设深度相机分别测得两个物体到深度相机的距离为、/>,则两个物体之间的距离/>的计算方式为:
;
S43:在点云坐标系里,设两个物体的位置分别为、,则两个物体在点云坐标系的距离/>的计算方式为:
;
S44:现实场景的长的计算方式为:
;
设点云坐标系下,y轴、z轴上最大的坐标值分别为、/>,则现实场景的宽/>、高/>的计算方式分别为:
;
。
与现有技术相比,本发明具有如下的有益效果:
(1) 本发明所述的一种人形机器人封闭环境下三维点云地图重建方法,设计合理,使人形机器人采用更加灵活、所需硬件更少的方式,自动完成对在一个封闭环境下进行环境地图的构建,以及对环境信息的理解;不使用其余的硬件,例如运动传感器等,仅仅需要人形机器人配备的深度相机双目便可直接进行地图绘制;对于现实场景内各个障碍物的确认与记录的方式,采用记录其特征的方式,而不是采用GPS定位;
(2) 本发明所述的一种人形机器人封闭环境下三维点云地图重建方法,三维点云模型由二维图片计算得来,直接进行单词场景重建避免了点云配准与拼接带来的误差以及时间损失;
(3) 本发明所述的一种人形机器人封闭环境下三维点云地图重建方法,不需要先验得知现实场景的尺寸,可自行计算;现实场景内各个物体的位置可以由人形机器人自行计算,应用上,例如让人形机器人取一个物品,不需要告知位置;
(4) 本发明所述的一种人形机器人封闭环境下三维点云地图重建方法,学界对于点云的处理愈发成熟,可以采用多种方式处理点云,使得所述方法具有很大的扩展性。
附图说明
图1为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的步骤S1的示意图一;
图2为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的步骤S1的示意图二;
图3为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的步骤S1的示意图三;
图4为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的步骤S1的树形结构示意图;
图5为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的一封闭场景下的三维点云重建结果示意图一;
图6为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的一封闭场景下的三维点云重建结果示意图二;
图7为本发明所述一种人形机器人封闭环境下三维点云地图重建方法的物体的几何中心示意图。
具体实施方式
下面将附图1-7、实施例1对本发明的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通的技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本发明的保护范围。
以下实施例1提供了一种人形机器人封闭环境下三维点云地图重建方法。
实施例1
实施例1的一种人形机器人封闭环境下三维点云地图重建方法,该方法旨在使机器人采用更加灵活、所需硬件更少的方式,采用点云三维重建,自动完成对在一个封闭环境下进行环境地图的构建,以及对环境信息的理解。
该方法包括如下步骤:
S1:由人形机器人收集现实场景内的信息;对收集到的信息进行处理,得到现实场景的三维点云模型。
当在对一个现实场景进行重建时,需要考虑到障碍物的遮挡。人形机器人需要依次去障碍物所在位置去收集被障碍物所遮挡的环境信息。
基于此,本发明采用树形结构描述整个现实场景的信息。当将一个环境映射到一个二维的照片时,这些障碍信息在二维图片的表现形式为边角点,所以这些边角点即为树形结构的节点。若到达了现实场景的边界或者正在当前所在位置节点检测不到的边界点,那么当前所在位置节点即为树形结构的子节点。
S11:将人形机器人放在现实场景的中心。
S12:人形机器人依次去现实场景内每一个障碍物所在位置,去收集被障碍物所遮挡的环境信息,采用环境信息树的树形结构描述整个现实场景的环境信息,为人形机器人提供行动指引。
环境信息树的构建采用深度优先的方式,若人形机器人位于现实场景的中心,即根节点所在位置,则需要人形机器人扫描根节点所在位置的各个方向,得到四周所有方向的边界点;若人形机器人不位于现实场景的中心,即子节点所在位置,则只需要人形机器人扫描单个方向的边界点即可。
S13:在人形机器人的实际行动中,为了避免内存的浪费并且提升算法的复杂性,本发明采用采用回溯实体化的形式,即当人形机器人创建/遍历整个环境信息树时,在环境信息树中每遍历一个节点,都需要人形机器人回到其父节点所在位置,然后从父节点所在位置前往子节点所在位置。 因为人形机器人未装备雷达等定位装置,这样做有利于人形机器人随时随刻知道自己的位置以及位置所代表的环境信息树的节点。
在人形机器人前往一个地点时,需要辨认方向,尤其是在进行回溯的时候。人形机器人未装备雷达,所以本发明为人形机器人设计了一个采用计算机视觉来辨认方向的方法,具体包括如下内容:采用一个位置望向另一个位置的图片的特征来表示方向,当人形机器人要回溯时,会查找所在位置节点望向父节点所在位置的图片的特征;然后,人形机器人对当前位置的各个方向角度的图片特征进行比对,找到与查找到的特征最为相似的特征,则此特征对应图片所在的方向,即为父节点所在位置的方向;特征有两个方向,分别为父节点所在位置望向子节点所在位置的位置以及子节点所在位置望向父节点所在位置的位置;分别用两个二维数组来表示;每一个数组元素为一个多维特征;人形机器人每到一个节点所在位置,都需要记录其望向父节点所在位置的特征以及其望向子节点所在位置的特征。
以上环境信息树的构建、回溯实体化的伪代码如下:
function buildTreeDFS(node, pic) {
//node为当前节点,pic为人形机器人看到的景象
if (node.equals(tree.root)) {
// 当人形机器人位于根节点时
for (i = 0; i<4; i++) {
set = seek(getPicForDirection(i)) //set为当前节点当前方向的边界点集合
if (set.isEmpty() || isAtSceneBoundary(node)) {
continue
}
while (set.hasNext()) {//插入新节点
newNode = createNode(set.next())
node.add(newNode)
// 移动到子节点位置
moveTo(newNode)
buildTreeDFS(newNode, getPicForDirection(i))
// 实体化回溯:返回到当前节点
moveTo(node)
}
}
} else {
set = seek(pic)
if (set.isEmpty() || isAtSceneBoundary(node)) {
return
}
while (set.hasNext()) {
newNode = createNode(set.next())
node.add(newNode)
// 移动到子节点位置
moveTo(newNode)
buildTreeDFS(newNode, pic)
// 实体化回溯:返回到当前节点
moveTo(node)
}
}
}
function getPicForDirection(direction) {
// 返回给定方向的的边界点
}
function createNode(data) {
// 根据提供的数据创建一个新节点,并返回它
}
function isAtSceneBoundary(node) {
// 检查节点是否已经到达场景的边界,如果是,则返回true,否则返回false
}
function moveTo(targetNode) {
// 控制人形机器人移动到目标节点代表的位置
}
// 开始构建
root = createRootNode()
moveTo(root) // 确保人形机器人开始于根节点位置
buildTreeDFS(root, initialPic)
以上特征计算的伪代码如下:
function mapToHighDimensionalFeatures(image, depth):
// 假设 image 是一个 [H, W, 3] 的数组
// 假设 depth 是一个 [H, W, 1] 的数组
combinedInput = concatenate(image, depth, axis=2) // 结果为[H, W,4] 的数组
// 使用预定义的CNN模型进行前向传播
features = CNN_model.forward(combinedInput)
return features
以上特征保存的伪代码如下:
class Node:
// 初始化空的二维数组来存储望向父节点和子节点的特征
parentFeatures = [] // 保存望向父节点的多维特征
childFeatures = [] // 保存望向子节点的多维特征
parent = None // 指向此节点的父节点的引用
children = [] // 保存此节点所有子节点的列表
// 当人形机器人到达此节点时调用此函数,以记录图片特征
function recordFeatures(viewTowardsParentPic,viewsTowardsChildrenPics):
// 从朝向父节点的图片中提取特征并保存
self.parentFeatures = extractFeatures(viewTowardsParentPic)
// 从朝向所有子节点的图片中提取特征并保存
for pic in viewsTowardsChildrenPics:
self.childFeatures.append(extractFeatures(pic))
// 使用预定义的模型从图片中提取特征
// 返回值为二维数组,每个元素代表多维特征
function extractFeatures(pic):
return featureArray
// 在探索过程中使用的逻辑:
currentNode = new Node() // 创建一个新的节点来代表当前位置
// 如果存在父节点(即当前节点不是根节点)
if parentNode != None:
// 捕获一个图片,朝向父节点
viewTowardsParentPic = captureImageTowards(parentNode)
// 捕获其他方向的图片,可能是朝向子节点的
viewsTowardsChildrenPics = captureImagesInAllOtherDirections()
// 记录当前节点从这些图片中提取的特征
currentNode.recordFeatures(viewTowardsParentPic,viewsTowardsChildrenPics)
S14:当人形机器人创建/遍历整个环境信息树以后,整个现实场景的信息已经收集完毕。
S15:当人形机器人对现实场景的信息收集完毕以后,采用从二维图片到三维场景的方式进行处理,得到现实场景的三维点云模型。
如图1所示,设图中的多个方框为现实场景的阻碍物,可以代表例如桌子、椅子等障碍物,中间的点为人形机器人所在的位置,此时,当人形机器人原地旋转一周时,就已经收集到了未被眼前障碍物所遮挡的所有信息。
寻找障碍物远测边界或者边角,如图2所示,当前位置下人形机器人可见区域内的障碍物远测边角已用圆圈标出,此时应该前往远测边界或边角收集未知的环境信息。图中一共为8个点,则需要依次前往相应地点进行信息收集。
重建的部分顺序如图3所示,有的边界点会被多次访问。
重建的顺序类似于一个树形结构,采用深度遍历的方式去访问每一个节点,每一个节点代表一个远测边界或者边角,根据图4生成的树形结构的示意图,数字与上图数字对应,数字从小打大为搜索顺序。
当根节点再无其余未遍历的节点时,整个现实场景的搜索完毕。
S2:对三维点云模型进行点云分割,然后得到现实场景内每一个物体的点云模型。
S21:对点云坐标系进行调整;检测地面,在点云坐标系里将原点调整至地面几何中心,以地面为x、y坐标平面,以现实场景的宽度以及长度为y、x轴的方向;在现实场景坐标系同样将原点调整至地面几何中心,以地面为x、y坐标平面,以现实场景的宽度以及长度为y、x轴的方向。
S22:对点云坐标系的大小进行调整;对点云坐标系的x轴的坐标进行归一化,点云坐标系的y轴、z轴的坐标按比例进行调整。
S23:设现实场景的长、宽、高分别为、/>、/>,现实场景坐标系某一点的坐标为/>,点云坐标系某一点的坐标为/>;设现实场景坐标系经过点云坐标系与点云坐标系大小的调整后,点云坐标系的坐标与现实场景坐标系的坐标的映射关系如下所示:
。
S24:设物体在点云坐标系的坐标为,则得到现实场景的三维点云模型以后,对三维点云模型进行分割,得到现实场景内每一个物体的点云模型。
S3:计算现实场景内每一个物体在点云坐标系的坐标。
S31:设一个物体在分割以后的点集为,采用物体的几何中心作为物体的位置,计算方法如下:
。
S32:将点云坐标系的物体的坐标映射到现实场景坐标系,设现实场景坐标系的物体的坐标为,则现实场景坐标系的物体的坐标为:
。
S4:当现实场景的尺寸未知时,计算现实场景的尺寸。
S41:人形机器人配备深度相机,任意找两个物体,在深度相机得出的深度空间里,设两个物体的坐标分别为、/>,则两个物体与人形机器人的深度相机双目连成线段的夹角θ的计算方式为:
。
S42:现实场景里,设深度相机分别测得两个物体到深度相机的距离为、/>,则两个物体之间的距离/>的计算方式为:
。
S43:在点云坐标系里,设两个物体的位置分别为、,则两个物体在点云坐标系的距离/>的计算方式为:
。
S44:现实场景的长的计算方式为:
;
设点云坐标系下,y轴、z轴上最大的坐标值分别为、/>,则现实场景的宽/>、高/>的计算方式分别为:
;
。
S5:计算现实场景内所有的物体在现实场景坐标系下的坐标。
S6:进行地面检测,检测出点云坐标系下的地面,地图重建完成。
本发明具体应用途径很多,以上所述仅是本发明的优选实施方式。应当指出,以上实施例仅用于说明本发明,而并不用于限制本发明的保护范围。对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,这些改进也应视为本发明的保护范围。
Claims (7)
1.一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,包括如下步骤:
S1:由人形机器人收集现实场景内的信息;对收集到的信息进行处理,得到现实场景的三维点云模型;
S2:对三维点云模型进行点云分割,然后得到现实场景内每一个物体的点云模型;
S3:计算现实场景内每一个物体在点云坐标系的坐标;
S4:当现实场景的尺寸未知时,计算现实场景的尺寸;
S5:计算现实场景内所有的物体在现实场景坐标系下的坐标;
S6:进行地面检测,检测出点云坐标系下的地面,地图重建完成;
其中,所述步骤S1,具体包括如下步骤:
S11:将人形机器人放在现实场景的中心;
S12:人形机器人依次去现实场景内每一个障碍物所在位置,去收集被障碍物所遮挡的环境信息,采用环境信息树的树形结构描述整个现实场景的环境信息,为人形机器人提供行动指引;所述环境信息树的含义为:当将一个环境映射到一个二维的照片时,这些障碍信息在二维图片的表现形式为边角点,所以这些边角点即为树形结构的节点;若到达了现实场景的边界或者正在当前所在位置节点检测不到的边界点,那么当前所在位置节点即为树形结构的子节点;
S13:在人形机器人的实际行动中采用回溯实体化的形式;
S14:当人形机器人创建/遍历整个环境信息树以后,整个现实场景的信息已经收集完毕;
S15:当人形机器人对现实场景的信息收集完毕以后,采用从二维图片到三维场景的方式进行处理,得到现实场景的三维点云模型。
2.根据权利要求1所述一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,所述步骤S12,具体包括如下内容:环境信息树的构建采用深度优先的方式,若人形机器人位于现实场景的中心,即根节点所在位置,则需要人形机器人扫描根节点所在位置的各个方向,得到四周所有方向的边界点;若人形机器人不位于现实场景的中心,即子节点所在位置,则只需要人形机器人扫描单个方向的边界点即可。
3.根据权利要求2所述一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,所述步骤S13,具体包括如下内容:当人形机器人创建/遍历整个环境信息树时,在环境信息树中每遍历一个节点,都需要人形机器人回到其父节点所在位置,然后从父节点所在位置前往子节点所在位置。
4.根据权利要求3所述一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,所述步骤S13,人形机器人采用计算机视觉来辨认方向,具体包括如下内容:采用一个位置望向另一个位置的图片的特征来表示方向,当人形机器人要回溯时,会查找所在位置节点望向父节点所在位置的图片的特征;然后,人形机器人对当前位置的各个方向角度的图片特征进行比对,找到与查找到的特征最为相似的特征,则此特征对应图片所在的方向,即为父节点所在位置的方向;特征有两个方向,分别为父节点所在位置望向子节点所在位置的位置以及子节点所在位置望向父节点所在位置的位置;分别用两个二维数组来表示;每一个数组元素为一个多维特征;人形机器人每到一个节点所在位置,都需要记录其望向父节点所在位置的特征以及其望向子节点所在位置的特征。
5.根据权利要求1所述一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,所述步骤S2,具体包括如下步骤:
S21:对点云坐标系进行调整;检测地面,在点云坐标系里将原点调整至地面几何中心,以地面为x、y坐标平面,以现实场景的宽度以及长度为y、x轴的方向;在现实场景坐标系同样将原点调整至地面几何中心,以地面为x、y坐标平面,以现实场景的宽度以及长度为y、x轴的方向;
S22:对点云坐标系的大小进行调整;对点云坐标系的x轴的坐标进行归一化,点云坐标系的y轴、z轴的坐标按比例进行调整;
S23:设现实场景的长、宽、高分别为、/>、/>,现实场景坐标系某一点的坐标为,点云坐标系某一点的坐标为/>;设现实场景坐标系经过点云坐标系与点云坐标系大小的调整后,点云坐标系的坐标与现实场景坐标系的坐标的映射关系如下所示:
;
S24:设物体在点云坐标系的坐标为,则得到现实场景的三维点云模型以后,对三维点云模型进行分割,得到现实场景内每一个物体的点云模型。
6.根据权利要求5所述一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,所述步骤S3,具体包括如下步骤:
S31:设一个物体在分割以后的点集为,采用物体的几何中心作为物体的位置,计算方法如下:
;
S32:将点云坐标系的物体的坐标映射到现实场景坐标系,设现实场景坐标系的物体的坐标为,则现实场景坐标系的物体的坐标为:
。
7.根据权利要求6所述一种人形机器人封闭环境下三维点云地图重建方法,其特征在于,所述步骤S4,具体包括如下步骤:
S41:人形机器人配备深度相机,任意找两个物体,在深度相机得出的深度空间里,设两个物体的坐标分别为、/>,则两个物体与人形机器人的深度相机双目连成线段的夹角θ的计算方式为:
;
S42:现实场景里,设深度相机分别测得两个物体到深度相机的距离为、/>,则两个物体之间的距离/>的计算方式为:
;
S43:在点云坐标系里,设两个物体的位置分别为、,则两个物体在点云坐标系的距离/>的计算方式为:
;
S44:现实场景的长的计算方式为:
;
设点云坐标系下,y轴、z轴上最大的坐标值分别为、/>,则现实场景的宽、高/>的计算方式分别为:
;
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311508622.0A CN117237561B (zh) | 2023-11-14 | 2023-11-14 | 一种人形机器人封闭环境下三维点云地图重建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311508622.0A CN117237561B (zh) | 2023-11-14 | 2023-11-14 | 一种人形机器人封闭环境下三维点云地图重建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117237561A CN117237561A (zh) | 2023-12-15 |
CN117237561B true CN117237561B (zh) | 2024-01-26 |
Family
ID=89098801
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311508622.0A Active CN117237561B (zh) | 2023-11-14 | 2023-11-14 | 一种人形机器人封闭环境下三维点云地图重建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117237561B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484648A (zh) * | 2014-11-27 | 2015-04-01 | 浙江工业大学 | 基于轮廓识别的机器人可变视角障碍物检测方法 |
CN105843223A (zh) * | 2016-03-23 | 2016-08-10 | 东南大学 | 一种基于空间词袋模型的移动机器人三维建图与避障方法 |
CN111899302A (zh) * | 2020-06-23 | 2020-11-06 | 武汉闻道复兴智能科技有限责任公司 | 一种基于点云数据的视觉检测的方法、装置和系统 |
CN114119920A (zh) * | 2021-10-29 | 2022-03-01 | 北京航空航天大学杭州创新研究院 | 三维点云地图构建方法、系统 |
-
2023
- 2023-11-14 CN CN202311508622.0A patent/CN117237561B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484648A (zh) * | 2014-11-27 | 2015-04-01 | 浙江工业大学 | 基于轮廓识别的机器人可变视角障碍物检测方法 |
CN105843223A (zh) * | 2016-03-23 | 2016-08-10 | 东南大学 | 一种基于空间词袋模型的移动机器人三维建图与避障方法 |
CN111899302A (zh) * | 2020-06-23 | 2020-11-06 | 武汉闻道复兴智能科技有限责任公司 | 一种基于点云数据的视觉检测的方法、装置和系统 |
CN114119920A (zh) * | 2021-10-29 | 2022-03-01 | 北京航空航天大学杭州创新研究院 | 三维点云地图构建方法、系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117237561A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107160395B (zh) | 地图构建方法及机器人控制系统 | |
Li et al. | Efficient laser-based 3D SLAM for coal mine rescue robots | |
CN107967457B (zh) | 一种适应视觉特征变化的地点识别与相对定位方法及系统 | |
US9858640B1 (en) | Device and method for merging 3D point clouds from sparsely distributed viewpoints | |
Yin et al. | Dynam-SLAM: An accurate, robust stereo visual-inertial SLAM method in dynamic environments | |
CN109186606B (zh) | 一种基于slam和图像信息的机器人构图及导航方法 | |
Saeedi et al. | Vision-based 3-D trajectory tracking for unknown environments | |
Ebadi et al. | DARE-SLAM: Degeneracy-aware and resilient loop closing in perceptually-degraded environments | |
Rosinol et al. | Incremental visual-inertial 3d mesh generation with structural regularities | |
Robert et al. | Applications of nonmetric vision to some visually guided robotics tasks | |
CN112014857A (zh) | 用于智能巡检的三维激光雷达定位导航方法及巡检机器人 | |
CN111664843A (zh) | 一种基于slam的智能仓储盘点方法 | |
CN112526993A (zh) | 栅格地图更新方法、装置、机器人及存储介质 | |
CN110599545B (zh) | 一种基于特征的构建稠密地图的系统 | |
CN111797836A (zh) | 一种基于深度学习的地外天体巡视器障碍物分割方法 | |
Frosi et al. | Osm-slam: Aiding slam with openstreetmaps priors | |
Li et al. | RF-LOAM: Robust and Fast LiDAR Odometry and Mapping in Urban Dynamic Environment | |
CN117237561B (zh) | 一种人形机器人封闭环境下三维点云地图重建方法 | |
Qiu et al. | Semantic map construction via multi-sensor fusion | |
Lim et al. | MSDPN: Monocular depth prediction with partial laser observation using multi-stage neural networks | |
Wang et al. | Simultaneous clustering classification and tracking on point clouds using Bayesian filter | |
Li et al. | Efficient laser-based 3D SLAM in real time for coal mine rescue robots | |
Zhang et al. | An improvement algorithm for OctoMap based on RGB-D SLAM | |
Frosi et al. | D3VIL-SLAM: 3D Visual Inertial LiDAR SLAM for Outdoor Environments | |
Fan et al. | Integrating Artificial Intelligence with SLAM Technology for Robotic Navigation and Localization in Unknown Environments |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |