CN114943785A - 地图构建方法、装置、设备及存储介质 - Google Patents
地图构建方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114943785A CN114943785A CN202210689906.3A CN202210689906A CN114943785A CN 114943785 A CN114943785 A CN 114943785A CN 202210689906 A CN202210689906 A CN 202210689906A CN 114943785 A CN114943785 A CN 114943785A
- Authority
- CN
- China
- Prior art keywords
- binocular image
- original
- dynamic
- determining
- 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
- 238000010276 construction Methods 0.000 title claims abstract description 87
- 238000003860 storage Methods 0.000 title claims abstract description 27
- 230000003068 static effect Effects 0.000 claims abstract description 37
- 238000000034 method Methods 0.000 claims description 53
- 238000013507 mapping Methods 0.000 claims description 35
- 238000012545 processing Methods 0.000 claims description 29
- 239000011159 matrix material Substances 0.000 claims description 19
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000003287 optical effect Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 238000013461 design Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 17
- 230000006870 function Effects 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 238000005457 optimization Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- ALZOLUNSQWINIR-UHFFFAOYSA-N quinmerac Chemical compound OC(=O)C1=C(Cl)C=CC2=CC(C)=CN=C21 ALZOLUNSQWINIR-UHFFFAOYSA-N 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
Abstract
本发明提供一种地图构建方法、装置、设备及存储介质,涉及人工智能领域,用于提高了对机器人定位的鲁棒性,消除了在动态场景下,动态物体对机器人定位与建图的影响,包括:地图构建装置确定机器人采集到的原始双目图像中的动态特征点,并根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体。进一步的,地图构建装置从原始双目图像中删除动态目标物体,得到静态双目图像,并基于静态双目图像确定机器人的运动状态,其中,运动状态包括位置、姿态以及速度。并且,地图构建装置还对原始双目图像进行深度估计,确定原始双目图像中各像素点的深度信息。最后,地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息构建地图。
Description
技术领域
本发明涉及人工智能领域,尤其涉及一种地图构建方法、装置、设备及存储介质。
背景技术
近年来,一些用于室内外服务的机器人逐渐出现在日常生活中。例如,扫地机器人能够自动准确地定位,并通过高效地路径规划完成房间的清理;安保巡检机器人能够实现在人机共存的广场上自动巡视和安全检查,为人们的出行提供安全保障;无人驾驶车辆能够在实现自动驾驶功能。这些相关领域蓬勃发展的背后均离不开一项重要的技术:即时定位与地图构建(simultaneous localization and mapping,SLAM),所谓SLAM就是将机器人定位与环境地图创建融为一体,即机器人在运动过程中根据自身位姿估计和传感器对环境的感知构建增量式环境地图,同时利用该地图实现自身的定位。
目前大部分的SLAM技术均基于一个重要假设:环境是静态的。但是,真实的环境却是动态的,比如视野中移动的行人、门的开闭状态、可移动物体的不同位置。而在动态环境下,移动的物体会给定位和地图构建带来极大的噪声和误差。
发明内容
本发明提供一种地图构建方法、装置、设备及存储介质,实现了提高了对机器人定位的鲁棒性,消除了在动态场景下,动态物体对机器人定位与建图的影响。
为了达到上述目的,本发明采用如下技术方案:
第一方面,提供一种地图构建方法,该方法包括:地图构建装置确定机器人采集到的原始双目图像中的动态特征点,并根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体。进一步的,地图构建装置从原始双目图像中删除动态目标物体,得到静态双目图像,并基于静态双目图像确定机器人的运动状态,其中,运动状态包括位置、姿态以及速度。并且,地图构建装置还对原始双目图像进行深度估计,确定原始双目图像中各像素点的深度信息。最后,地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息构建地图。
本发明提供的地图构建方法中,地图构建装置在确定机器人的状态之前,首先确定原始双目图像对应的当前场景中的动态目标物体,并在确定动态目标物体之后,删除原始双目图像中的动态目标物体,得到静态双目图像,这样一来,机器人即可基于静态双目图像确定机器人的运动状态,提高了对机器人定位的鲁棒性,消除了在动态场景下,动态物体对机器人定位与建图的影响。
一种可能的设计中,上述地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息构建地图,包括:地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息,确定原始双目图像中物体的位置。进一步的,地图构建装置根据原始双目图像中物体的位置,生成原始双目图像对应的占据栅格地图,原始双目图像中物体的位置对应的体素的状态为占据状态。地图构建装置确定原始双目图像中的动态物体,将动态物体的位置对应的体素的状态更新为空闲状态,并确定动态物体的点云数据,生成三维占用网格。最后,地图构建装置根据体素的状态以及三维占用网格构建地图。该设计中实现了地图构建装置区分动态物体以及静态物体构建地图,能够更好的规划机器人的运行路线,使得机器人靠近静态物体运行,远离动态物体运行,避免在运行过程中被动态物体干扰。
一种可能的设计中,上述地图构建装置确定机器人采集到的原始双目图像中的动态特征点,包括:地图构建装置确定原始双目图像中的第一特征点,以及相邻双目图像中的第二特征点,其中,相邻双目图像为与原始双目图像相邻帧的双目图像,第一特征点和第二特征点用于表征的内容相同。进一步的,地图构建装置根据第一特征点和第二特征点确定基础矩阵,并根据基础矩阵以及第一特征点,确定第一特征点对应的极线。最后,地图构建装置确定第二特征点到极线的目标距离,在目标距离大于第一阈值的情况下,确定第一特征点为动态特征点。该设计中实现了地图构建装置确定双目图像中的动态特征点,以使得在后续过程中能够确定到的动态特征点确定动态目标物体。
一种可能的设计中,上述地图构建装置根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体,包括:地图构建装置对原始双目图像进行语义分割,确定原始双目图像中第一物体的边界点,第一物体为原始双目图像中的任一物体;并且在第一物体的边界点中包括的动态特征点的数量大于第二阈值的情况下,确定第一物体为双目图像中的动态目标物体。该设计中实现了在确定动态特征点后,地图构建装置基于动态特征点确定动态目标物体。
第二方面,提供一种地图构建装置,包括确定单元以及处理单元。确定单元用于确定机器人采集到的原始双目图像中的动态特征点。确定单元还用于根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体。处理单元,用于从原始双目图像中删除动态目标物体,得到静态双目图像。确定单元,还用于基于静态双目图像确定机器人的运动状态,运动状态包括位置、姿态以及速度。确定单元,还用于对原始双目图像进行深度估计,确定原始双目图像中各像素点的深度信息。处理单元,还用于根据运动状态以及原始双目图像中各像素点的深度信息构建地图。
一种可能的设计中,处理单元具体用于根据运动状态以及原始双目图像中各像素点的深度信息,确定原始双目图像中物体的位置。根据原始双目图像中物体的位置,生成原始双目图像对应的占据栅格地图,原始双目图像中物体的位置对应的体素的状态为占据状态。确定原始双目图像中的动态物体,将动态物体的位置对应的体素的状态更新为空闲状态。确定动态物体的点云数据,生成三维占用网格。根据体素的状态以及三维占用网格构建地图。
一种可能的设计中,确定单元具体用于确定原始双目图像中的第一特征点,以及相邻双目图像中的第二特征点;相邻双目图像为与原始双目图像相邻帧的双目图像,第一特征点和第二特征点用于表征的内容相同。根据第一特征点和第二特征点确定基础矩阵。根据基础矩阵以及第一特征点,确定第一特征点对应的极线。确定第二特征点到极线的目标距离。在目标距离大于第一阈值的情况下,确定第一特征点为动态特征点。
一种可能的设计中,确定单元具体用于对原始双目图像进行语义分割,确定原始双目图像中第一物体的边界点,第一物体为原始双目图像中的任一物体。在第一物体的边界点中包括的动态特征点的数量大于第二阈值的情况下,确定第一物体为双目图像中的动态目标物体。
第三方面,提供一种地图构建设备,该地图构建设备包括存储器和处理器;存储器和处理器耦合,该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,当处理器执行该计算机指令时,该地图构建设备执行如第一方面中的地图构建方法。
第四方面,提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当指令在地图构建设备上运行时,使得该地图构建设备执行如第一方面中的地图构建方法。
附图说明
图1为本发明的实施例提供的一种地图构建系统的结构示意图;
图2为本发明的实施例提供的一种地图构建方法流程示意图一;
图3为本发明的实施例提供的一种地图构建方法流程示意图二;
图4为本发明的实施例提供的一种深度估计的流程示意图;
图5a为本发明的实施例提供的一种MADnet网络结构示意图一;
图5b为本发明的实施例提供的一种MADnet网络结构示意图二;
图5c为本发明的实施例提供的一种MADnet网络结构示意图三;
图6为本发明的实施例提供的一种地图构建方法流程示意图三;
图7为本发明的实施例提供的一种建立欧式符号距离场(euclidean signeddistance functions,ESDF)地图的系统架构示意图;
图8为本发明的实施例提供的一种Mobilenet-SSD模型的输入输出示意图;
图9为本发明的实施例提供的一种地图构建装置构建的地图示意图;
图10为本发明的实施例提供的一种地图构建方法流程示意图四;
图11为本发明的实施例提供的一种光流金字塔跟踪特征点示意图一;
图12为本发明的实施例提供的一种光流金字塔跟踪特征点示意图二;
图13为本发明的实施例提供的一种地图构建装置确定极线的示意图;
图14为本发明的实施例提供的一种地图构建方法流程示意图五;
图15为本发明的实施例提供的一种SegNet深度网络模型的架构示意图;
图16为本发明的实施例提供的一种SegNet深度网络模型处理图像示意图;
图17为本发明的实施例提供的一种地图构建装置的结构示意图;
图18为本发明的实施例提供的一种地图构建设备结构示意图一;
图19为本发明的实施例提供的一种地图构建设备结构示意图二。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本发明的描述中,除非另有说明,“/”表示“或”的意思,例如,A/B可以表示A或B。本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。此外,“至少一个”“多个”是指两个或两个以上。“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
目前,用于室内外服务的机器人逐渐出现在日常生活中这些相关领域蓬勃发展的背后均离不开SLAM,SLAM是将机器人定位与环境地图创建融为一体,即机器人在运动过程中根据自身位姿估计和传感器对环境的感知构建增量式环境地图,同时利用该地图实现自身的定位。
现有技术中,大部分的SLAM技术均基于一个重要假设:环境是静态的。但是,真实的环境却是动态的,比如视野中移动的行人、门的开闭状态、可移动物体的不同位置。而在动态环境下,移动的物体会给定位和地图构建带来极大的噪声和误差。
为了解决上述问题,本发明提供一种地图构建方法、装置、设备及存储介质。地图构建装置确定机器人采集到的原始双目图像中的动态特征点,并根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体。进一步的,地图构建装置从原始双目图像中删除动态目标物体,得到静态双目图像,并基于静态双目图像确定机器人的运动状态。其中,运动状态包括位置、姿态以及速度。并且,地图构建装置还对原始双目图像进行深度估计,确定原始双目图像中各像素点的深度信息。最后,地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息构建地图。本发明提供的地图构建方法中,地图构建装置在确定机器人的状态之前,首先确定原始双目图像对应的当前场景中的动态目标物体,并在确定动态目标物体之后,删除原始双目图像中的动态目标物体,得到静态双目图像,这样一来,机器人即可基于静态双目图像确定机器人的运动状态,提高了对机器人定位的鲁棒性,消除了在动态场景下,动态物体对机器人定位与建图的影响。
本发明实施例提供的地图构建方法可以适用于地图构建系统,地图构建系统用于获取机器人采集到的双目图像,并基于采集到的双目图像构建地图。图1示出了该地图构建系统的一种结构示意图。如图1所示,地图构建系统10包括地图构建装置11以及机器人12。
其中,地图构建装置11与机器人12连接。其中,地图构建装置11与机器人12之间可以采用有线方式连接,也可以采用无线方式连接,本发明实施例对此不作限定。
地图构建装置11可以用于获取机器人12采集到的双目图像,并确定双目图像中的动态特征点。
地图构建装置11还可以用于根据双目图像中的动态特征点,确定双目图像中的动态目标物体。
地图构建装置11还可以用于在确定双目图像中的动态目标物体后,删除双目图像中的动态目标物体,得到只包括静态物体的静态双目图像,从而根据静态双目图像确定机器人的运动状态。
其中,机器人的运动状态包括位置、姿态以及速度。
地图构建装置11还可以用于对双目图像进行深度估计,以确定双目图像中各像素点的深度信息。
地图构建装置11还可以用于根据确定到的机器人的运动状态,以及双目图像中各像素点的深度信息构建地图。
机器人12包括双目相机,双目相机用于采集双目图像。
机器人12可以用于在通过双目相机采集到双目图像之后,向地图构建装置发送双目图像。
在一些实施例中,地图构建装置11和机器人12可以为相互独立的设备,也可以集成于同一设备中,本发明实施例对此不作具体限定。
地图构建装置11和机器人12集成于同一设备时,地图构建装置11和机器人12之间的数据传输方式为该设备内部模块之间的数据传输。这种情况下,二者之间的数据传输流程与“地图构建装置11和机器人12之间相互独立的情况下,二者之间的数据传输流程”相同。
在本发明实施例提供的以下实施例中,本发明实施例以地图构建装置11和机器人12相互独立设置为例进行说明。
图2是根据一些示例性实施例示出的一种地图构建方法的流程示意图。在一些实施例中,上述地图构建方法可以应用到如图1所示的地图构建装置11、也可以应用于地图构建装置11与机器人12集成的设备中,或者其他类似设备。以下,本发明实施例以地图构建方法应用于地图构建装置为例,对上述地图构建方法进行说明。
如图2所示,本发明实施例提供的地图构建方法应用于上述地图构建系统10中的地图构建装置11,包括S201-S206。
S201、地图构建装置确定机器人采集到的原始双目图像中的动态特征点。
作为一种可能的实现方式,地图构建装置在与机器人连接后,从机器人处获取到连续多帧的原始双目图像。进一步的,地图构建装置基于光流法确定原始双目图像中的特征点,并基于在相邻两帧之间的特征点对,是否在极线上判断原始双目图像中的特征点是否为动态特征点。
其中,若相邻两帧之间的特征点对在极线上,则确定原始双目图像中的特征点不是动态特征点;若相邻两帧之间的特征点对不在极线上,则确定原始双目图像中的特征点是动态特征点。
需要说明的,地图构建装置具体如何基于光流法确定原始双目图像中的特征点,以及判断原始双目图像中的特征点是否在极线上,可以参照本发明实施例后续记载,此处不再进行赘述。
S202、地图构建装置根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体。
作为一种可能的实现方式,地图构建装置确定原始双目图像中的各个物体。进一步的,地图构建装置确定各个物体包括的动态特征点的数量,在物体包括的动态特征点的数量大于或等于第三阈值的情况下,地图构建装置确定该物体为动态目标物体。
需要说明的,第三阈值可以由地图构建装置的运维人员预先在地图构建装置中设置,本发明实施例对此不作限定。
地图构建装置如何确定原始双目图像中的各个物体,可以参照本发明实施例后续记载,此处不再进行赘述。
S203、地图构建装置从原始双目图像中删除动态目标物体,得到静态双目图像。
作为一种可能的实现方式,地图构建装置在确定到原始双目图像中的动态物体后,将动态目标物体删除,从而得到静态双目图像。
可以理解的,在面对存在人、车等动态物体的场景中,机器人的定位精度会下降,甚至失效。基于步骤S203中将原始双目图像中的动态物体删除后,能够避免动态物体对于机器人定位的影响,提高了在动态环境下的定位精度。
S204、地图构建装置基于静态双目图像确定机器人的运动状态。
其中,运动状态包括位置、姿态以及速度。
作为一种可能的实现方式,地图构建装置基于视觉惯性里程计(visual-inertialodometry,VIO)定位方案确定机器人的运动状态。
需要说明的,本发明实施例所采用的VIO定位方案中,包括双目相机和惯性测量单元(inertial measurement unit,IMU)的融合定位系统,该融合定位系统采用数据紧耦合和非线性优化的设计思想,确定机器人的运动状态的流程如图3所示,包括S2041-S2044。
S2041、地图构建装置获取输入数据。
其中,输入数据为步骤S203中获取的静态双目图像,以及IMU测量到的IMU数据。
S2042、地图构建装置进行数据预处理。
其中,包括对静态双目图像进行特征点提取与追踪,对IMU数据进行预积分处理。
对于静态双目图像,提取特征点,并进行光流追踪,为后面视觉初始化求解双目相机位置以及姿态提供数据支持。对于IMU数据,将IMU数据进行预积分,得到当前时刻的位姿、速度、旋转角,以及后续优化过程中需要的相邻帧间的预积分增量、预积分的协方差以及雅克比矩阵。
S2043、地图构建装置进行初始化。
其中,包括IMU与双目相机的相对外参,以及初始化系统状态信息。
初始化过程主要为定位系统提供一组初始状态,包括IMU传感器坐标系与双目相机坐标系的相对外参、初始窗口中每个图像帧的位置、速度、IMU传感器的测量偏置、特征点的深度等状态信息。
S2044、地图构建装置进行非线性优化。
其中,包括地图构建装置基于滑动窗口的双目视觉与惯导紧耦合的非线性优化。
后端非线性优化模块根据预处理阶段的测量和预测,以及当前滑动的窗口中的状态,利用非线性优化的方法对窗口中的所有状态量进行优化调整,最终系统输出优化求解之后的机器人的运动状态(位置、姿态、速度)。
S205、地图构建装置对原始双目图形进行深度估计,确定原始双目图像中各像素点的深度信息。
作为一种可能的实现方式,地图构建装置采用实时域自适应立体匹配网络(Modularly ADaptive Network,MADnet)的深度网络对原始双目图像进行深度估计,确定原始双目图像中各像素点的深度信息。
需要说明的,MADnet能够部署于机器人并且进行实时深度估计,MADnet对双目图像进行深度估计的基准流程如图4所示。包括四个基本步骤,分别为匹配代价、代价聚合、视差计算和视差后处理/优化。其中,匹配代价指利用相似性计算双目图像左右图像像素点的代价;代价聚合指通过相邻像素之间的联系,优化代价矩阵,处理图像在弱纹理或无纹理区域无法准确配对的问题,降低异常点的影响;视差计算指在视差范围内代价值最小的点作为对应匹配点,基于三角化原理计算该点视差;视差后处理的目的是解决遮挡视差不准确,误匹配点等问题。
MADnet网络结构如图5a、图5b以及图5c所示,网络主体结构是一个轻量级的解码器-编码器(encoder-decoder)结构,编码和解码部分都是金字塔结构。编码部分的F1-F6分别是1/2、1/4、1/8、1/16、1/32以及1/64的分辨率,解码部分的D2-D6是对应于F2-F6分辨率的视差估计模块,每个解码模块用于输出该分辨率大小的预测视差图。编码和解码中间的圆圈如图5c所示,代表经过变形(warp)操作构造代价值(cost volume)。
图5a表示的是完全自适应的深度估计方法,采用无监督损失,对整个网络进行反向传播。
图5b是MADnet网络结构提出的调制自适应算法(Modular ADaptation,MAD),将相同分辨率的编码和解码模块看做是一个合并的调制模块M。比如F3和D3组成M3调制模块,在每次计算完损失之后,只选择一个模块进行反向传播,这样一来,相较于图5a表示的完全自适应的深度估计方法,能够大大提升在线自适应的速度,本申请实施例采取图5b所示的网络结构对原始双目图像进行深度估计。
在计算损失函数之后,MADnet提出一种启发式的奖励-惩罚机制动态选择每次更新的模块来进行反向传播,进而通过端到端的训练输入双目图像对双目图像进行深度估计。
S206、地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息构建地图。
作为一种可能的实现方式,地图构建装置根据机器人的位置、姿态、像素点的深度信息,确定原始双目图像对应的场景中各物体的位置,进而根据各物体的位置构建地图。
需要说明的,地图构建装置具体如何确定各物体的位置,以及根据各物体的位置构建地图可以参照本发明实施例后续记载,此处不再进行赘述。
在一种设计中,为了更好的规划机器人的运行路线,使得机器人靠近静态物体运行,远离动态物体运行,避免在运行过程中被动态物体干扰,本发明实施例提供的地图构建方法实现了地图构建装置区分动态物体以及静态物体构建地图。如图6所示,本发明实施例提供的地图构建方法还包括S301-S305。
S301、地图构建装置根据运动状态以及原始双目图像中各像素点的深度信息,确定原始双目图像中物体的位置。
作为一种可能的实现方式,地图构建装置根据机器人的位置以及姿态确定原始双目图像的拍摄方向。进一步的,地图构建装置根据原始双目图像中各像素点的深度信息,确定机器人与各像素点对应物体之间的距离。这样一来,地图构建装置即可根据机器人拍摄原始双目图像的拍摄方向,以及机器人与各像素点对应物体之间的距离,计算各像素点对应物体在原始双目图像对应的场景中的位置。
S302、地图构建装置根据原始双目图像中物体的位置,生成原始双目图像对应的占据栅格地图。
其中,原始双目图像中物体的位置对应的体素的状态为占据状态。
需要说明的,占据栅格地图是将连续的状态空间划分为设定尺寸的小立方体,在占据栅格地图中小立方体被称为体素。在避障与运动规划应用中,体素的典型大小为5cm*5cm*5cm或10cm*10cm*10cm,本发明实施例对此不作限定。
作为一种可能的实现方式,地图构建装置根据原始双目图像中物体的位置,确定在占据栅格地图中体素对应的空间中是否存在双目图像中的物体。
在体素对应的空间中存在双目图像中的物体的情况下,地图构建装置将该体素的状态设置为占据状态;在体素对应的空间中不存在双目图像中的物体的情况下,将该体素的状态设置空闲状态。
在一些实施例中,为了保障机器人的运行路线为安全轨迹,需要使轨迹尽量远离物体,基于此,本发明实施例通过建立ESDF地图来表示状态空间中的点距离物体的距离信息。为了计算ESDF值,需要计算每个栅格距离最近的物体,为减小计算量,实现实时运行,采用FIESTA算法实现。
建立ESDF地图的系统架构如图7所示,用于构建体素信息结构(voxelinformation structure,VIS)、索引数据结构以及双向链表(doubly linked list,DLL)三种信息结构。其中,VIS包括体素坐标、占据概率、最近物体的体素坐标、到物体的欧式距离以及该体素的所有观察到的相邻体素;索引数据结构将体素坐标映射到VIS的索引中,通过哈希表进行管理。DLL可以在体素占据状态发生变化时快速遍历相关体素,高效地更新地图。
需要说明的,对于确定体素的占据概率,占据栅格地图中的每个体素,用概率值P(s)表示体素被占据的概率,P(s=1)表示该体素为占据状态,P(s=0)表示该体素为空闲状态。占据栅格地图的建图算法中,引入体素占据状态与空闲状态的比值,记为为保证算法的实时性,建图算法采用渐进更新的方式,利用每次测量数据对待更新体素的Odd的对数值进行更新,进而确定体素的占据概率。
需要说明的,FIESTA算法中为了更新体素的状态,建立了insertQueue和deleteQueue两个队列用于存储占据状态更改的体素。当体素的状态由占据状态变为空闲状态时,将该体素添加到insertQueue队列,当体素的状态由空闲状态变为占据状态时,将该体素添加到deleteQueue队列。进一步的,FIESTA算法将InsertQueue和deleteQueue都添加到updateQueue中,之后算法将会对updateQueue的内的元素进行更新。对于updateQueue的内的元素的更新包括以下两种情况:
情况1:体素由空闲状态变为占据状态。
FIESTA算法将该体素标记为cur,并且计算距离小于第四阈值的双目图像中的临近体素nbr。若nbr更新前的ESDF值大于nbr到cur的距离,则将该体素的ESDF值更新为nbr到cur的距离值,并在DLL中更新。
情况2:体素由占据状态变为空闲状态。
首先FIESTA算法通过查询DLL确定该体素做为最近邻物体的体素,并将该体素的ESDF值设为无穷大,将最近物体体素设为空。进一步的,FIESTA算法搜索该体素周围最近邻的双目图像中的占据状态的体素,将该体素的ESDF值设定为距离占据状态的体素的距离。
S303、地图构建装置确定原始双目图像中的动态物体,将动态物体的位置对应的体素的状态更新为空闲状态。
作为一种可能的实现方式,地图构建装置利用全局最近邻搜索和可视人检测器来检测和跟踪动态物体。进一步的,地图构建装置根据动态物体的位置,确定动态物体的位置对应的体素,将动态物体的位置对应的体素的状态设置为空闲状态。
S304、地图构建装置确定动态物体的点云数据,生成三维占用网格。
作为一种可能的实现方式,地图构建装置采用Mobilenet-SSD模型进行动态物体的点云检测,确定用于表示动态物体的点云数据。进一步的,地图构建装置确定包括动态物体的点云数据的最小三维占用网格。
示例性的,如图8所示,图8中的a为地图构建装置输入Mobilenet-SSD模型的一个示例性输入,图8中的b为地图构建装置采用Mobilenet-SSD模型,根据如图8中的a输入后,检测动态物体的一个示例性输出,Mobilenet-SSD模型中通过检测和跟踪的结合,实现对动态物体跟踪鲁棒性的提高。
S305、地图构建装置根据体素的状态以及三维占用网格构建地图。
作为一种可能的实现方式,地图构建装置根据在上述步骤S302确定到的双目图像中物体对应的体素的占据状态、动态物体的位置对应的体素,以及动态物体的点云数据和三维占用网格,构建地图。
示例性的,如图9所示,图9中的a为机器人采集到的原始双目图像,图9中的b为地图构建装置所构建的地图。其中,在地图构建装置构建的地图中,动态物体通过点云数据以及三维占用网格表示,静态物体通过处于占据状态的体素标识,这样一来,机器人根据地图中物体的表现形式,即可判断双目图像中的物体为动态物体或者静态物体,使得在规划机器人的运行路线的情况下,可以尽可能的远离动态物体,避免被动态物体影响,导致机器人无法安全运行。
在一种设计中,为了确定原始双目图像中的动态特征点,如图10所示,本发明实施例提供的地图构建方法,还包括S401-S405。
S401、地图构建装置确定原始双目图像中的第一特征点,以及相邻双目图像中的第二特征点。
其中,相邻双目图像为与原始双目图像相邻帧的双目图像,第一特征点和第二特征点用于表征的内容相同。
作为一种可能的实现方式,地图构建装置采用光流金字塔对特征点进行跟踪,确定原始双目图像中的第一特征点,并进一步的确定在相邻双目图像中与该第一特征点表征内容相同的第二特征点。
需要说明的,相邻双目图像可以为原始双目图像的前一帧双目图像,也可以为原始双目图像的后一帧双目图像,本发明实施例对此不作限定。
示例性的,地图构建装置采用光流金字塔对特征点进行跟踪如图11所示,图11中的a中示出了光流金字塔对原始双目图像的分层处理,图11中的b示出了光流金字塔对相邻双目图像的分层处理,其中,光流金字塔对双目图像的分层处理,分为四层即可满足跟踪特征点的需求,对相邻两帧的图像进行分层处理,第0层为原始双目图像,通过对第0层图像进行高斯卷积(高斯滤波)和向下采样(删除所有的偶数行和列)得到第1层图像,再对第1层图像进行高斯卷积和向下采样得到第2层图像,再对第2层图像进行高斯卷积和向下采样得到第3层图像。
地图构建装置在得到相邻两帧双目图像的光流金字塔后,从光流金字塔最高层开始处理,第一帧双目图像顶层中的u3,在相邻帧双目图像顶层中对应的点为v31,其中,v31和u3相等,然后通过算法符合相应的条件后,得到当前层最小误差点v3n和相应的光流,n表示经过n次计算。进一步的,地图构建装置利用计算到的光流在相邻帧双目图像中找到点v21作为第二层的初始点,以此类推进行和第3层一样的迭代计算最终能够获得包含各层光流分量的总光流,从而得到最终的对应点v0r,u0和v0r为一对特征点,u0为第一特征点,v0r为第二特征点。
示例性的,图12中示出了在t1、t2以及t3时刻采集到的双目图像,若地图构建装置以t2时刻的双目图像为原始双目图像,则t1和t2时刻采集到的双目图像均为原始双目图像的相邻双目图像。进一步的,地图构建装置能够通过光流金字塔确定在t1、t2以及t3时刻采集到的双目图像的特征点。
S402、地图构建装置根据第一特征点和第二特征点确定基础矩阵。
需要说明的,地图构建装置可以采用八点估算法确定基础矩阵。其中,基础矩阵是由方程定义x′TFx=0的,x′和x为八对第一特征点和第二特征点组合中的任意一对,由于每一对特征点的匹配提供了计算F系数的一个线性方程,当给定至少7个点(3×3的齐次矩阵减去一个尺度,以及一个秩为2的约束),方程就可以计算出未知的F。
S403、地图构建装置根据基础矩阵以及第一特征点,确定第一特征点对应的极线。
作为一种可能的实现方式,地图构建装置确定第一特征点的齐次坐标,进而根据第一特征点的齐次坐标以及基础矩阵确定第一特征点对应的极线。
需要说明的,如图13所示,O1、O2是双目相机光心在三维空间中的位置,P为三维空间中的一个点;O1、O2、P三点所确定的平面与两个双目相机成像平面I1、I2相交于四个点;其中,p1、p2为点P在两个双目相机成像平面I1、I2上的投影,e1、e2为直线O1、O2与两个双目相机成像平面I1、I2的两个焦点。在图13中,基线为O1、O2所确定的线段,极平面为O1、O2、P三点所确定的平面,极点为点e1、e2,极线为p1、e1所确定的直线l1以及p2、e2所确定的直线l2。
S404、地图构建装置确定第二特征点到极线的目标距离。
作为一种可能的实现方式,地图构建装置根据在步骤S403中确定到的第一特征点和第二特征点的齐次坐标,以及第一特征点对应的极线,将第二特征点到第一特征点对应的极线的距离确定为目标距离。
示例性的,可以采用如下公式确定第二特征点到第一特征点对应的极线的距离D。
S405、地图构建装置在目标距离大于第一阈值的情况下,确定第一特征点为动态特征点。
需要说明的,在目标距离小于第一阈值的情况下,说明的第二特征点在第一特征点对应的极线上,即确定第一特征点为非动态特征点。其中,第一阈值可以由地图构建装置的运维人员预先在地图构建装置中确定。
在一些设计中,为了确定原始双目图像中的动态目标物体,本发明实施例提供的地图构建方法,如图14所示,还包括S501-S502。
S501、地图构建装置对原始双目图像进行语义分割,确定原始双目图像中第一物体的边界点。
其中,第一物体为原始双目图像中的任一物体。
需要说明的,地图构建装置采用SegNet深度网络模型对原始双目图像中的物体进行语义分割,确定原始双面图像中的物体。进一步的,地图构建装置基于确定到的元素双目图像中的物体,确定物体的边界点。
需要说明的,SegNet深度网络模型的架构如图15所示,包括编码和解码过程。在编码过程中,通过卷积提取特征,SegNet使用的卷积为相同(same)卷积,即卷积后保持图像原始尺寸;在Decoder过程中,同样使用same卷积,其作用是为上采样变大的图像丰富信息,使得在池化过程丢失的信息可以通过学习在Decoder过程得到。
示例性的,SegNet深度网络模型对原始双目图像中的物体进行语义分割的过程可以如图16所示,地图构建装置在输入原始双目图像后,经过SegNet深度网络模型编码解码后,得到语义分割后的图像。
S502、地图构建装置在第一物体的边界点中包括的动态特征点的数量大于第二阈值的情况下,确定第一物体为双目图像中的动态目标物体。
作为一种可能的实现方式,地图构建装置基于在上述步骤S405中确定到的动态特征点,以及步骤S501中确定到的第一物体的边界点,确定第一物体边界点包括的动态特征点的数量。进一步的,地图构建装置根据第一物体边界点包括的动态特征点的数量是否大于第二阈值,确定第一物体是否为双目图像中的动态目标物体。
本发明提供一种地图构建方法、装置、设备及存储介质,在本发明提供的地图构建方法中,地图构建装置在确定机器人的状态之前,首先确定原始双目图像对应的当前场景中的动态目标物体,并在确定动态目标物体之后,删除原始双目图像中的动态目标物体,得到静态双目图像,这样一来,机器人即可基于静态双目图像确定机器人的运动状态,提高了对机器人定位的鲁棒性,消除了在动态场景下,动态物体对机器人定位与建图的影响。
上述主要从方法的角度对本发明实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明实施例可以根据上述方法示例对用户设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。可选的,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图17为本发明实施例提供的一种地图构建装置的结构示意图。该地图构建装置用于执行上述地图构建方法。如图17所示,该地图构建装置60包括确定单元601以及处理单元602。例如,如图2所示,确定单元601可以用于执行S201。
确定单元601,用于确定机器人采集到的原始双目图像中的动态特征点。例如,如图2所示,确定单元601可以用于执行S201。
确定单元601,还用于根据原始双目图像的动态特征点确定原始双目图像中的动态目标物体。例如,如图2所示,确定单元601可以用于执行S202。
处理单元602,用于从原始双目图像中删除动态目标物体,得到静态双目图像。例如,如图2所示,处理单元602可以用于执行S203。
确定单元601,还用于基于静态双目图像确定机器人的运动状态,运动状态包括位置、姿态以及速度。例如,如图2所示,确定单元601可以用于执行S204。
确定单元601,还用于对原始双目图像进行深度估计,确定原始双目图像中各像素点的深度信息。例如,如图2所示,确定单元601可以用于执行S205。
处理单元602,还用于根据运动状态以及原始双目图像中各像素点的深度信息构建地图。例如,如图2所示,处理单元602可以用于执行S206。
可选的,如图17所示,本发明实施例提供的地图构建装置60中,处理单元602,具体用于根据运动状态以及原始双目图像中各像素点的深度信息,确定原始双目图像中物体的位置。例如,如图6所示,处理单元602可以用于执行S301。
将原始双目图像中物体的位置对应的体素的状态为占据状态,生成原始双目图像对应的占据栅格地图。例如,如图6所示,处理单元602可以用于执行S302。
确定原始双目图像中的动态物体,将动态物体的位置对应的体素的状态更新为空闲状态。例如,如图6所示,处理单元602可以用于执行S303。
确定动态物体的点云数据,生成三维占用网格。例如,如图6所示,处理单元602可以用于执行S304。
根据体素的状态以及三维占用网格构建地图。例如,如图6所示,处理单元602可以用于执行S305。
可选的,如图17所示,本发明实施例提供的地图构建装置60中,确定单元601,具体用于确定原始双目图像中的第一特征点,以及相邻双目图像中的第二特征点;相邻双目图像为与原始双目图像相邻帧的双目图像,第一特征点和第二特征点用于表征的内容相同。例如,如图10所示,确定单元601可以用于执行S401。
根据第一特征点和第二特征点确定基础矩阵。例如,如图10所示,确定单元601可以用于执行S402。
根据基础矩阵以及第一特征点,确定第一特征点对应的极线。例如,如图10所示,确定单元601可以用于执行S403。
确定第二特征点到极线的目标距离。例如,如图10所示,确定单元601可以用于执行S404。
在目标距离大于第一阈值的情况下,确定第一特征点为动态特征点。例如,如图10所示,确定单元601可以用于执行S405。
可选的,如图17所示,本发明实施例提供的地图构建装置60中,确定单元601,具体用于对原始双目图像进行语义分割,确定原始双目图像中第一物体的边界点,第一物体为原始双目图像中的任一物体。例如,如图14所示,确定单元601可以用于执行S501。
在第一物体的边界点中包括的动态特征点的数量大于第二阈值的情况下,确定第一物体为双目图像中的动态目标物体。例如,如图14所示,确定单元601可以用于执行S502。
在采用硬件的形式实现上述集成的模块的功能的情况下,本发明实施例提供了一种地图构建设备的一种可能的结构示意图。该地图构建设备用于执行上述实施例中地图构建装置执行的地图构建方法。如图18所示,该地图构建设备70包括处理器701,存储器702以及总线703。处理器701与存储器702之间可以通过总线703连接。
处理器701是地图构建设备的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器701可以是一个通用中央处理单元(central processing unit,CPU),也可以是其他通用处理器等。其中,通用处理器可以是微处理器或者是任何常规的处理器等。
作为一种实施例,处理器701可以包括一个或多个CPU,例如图18中所示的CPU 0和CPU 1。
存储器702可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
作为一种可能的实现方式,存储器702可以独立于处理器701存在,存储器702可以通过总线703与处理器701相连接,用于存储指令或者程序代码。处理器701调用并执行存储器702中存储的指令或程序代码时,能够实现本发明实施例提供的地图构建方法。
另一种可能的实现方式中,存储器702也可以和处理器701集成在一起。
总线703,可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外围设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图18中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
需要指出的是,图18示出的结构并不构成对该地图构建设备70的限定。除图18所示部件之外,该地图构建设备70可以包括比图18示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
作为一个示例,结合图17,地图构建装置60中的确定单元601以及处理单元602实现的功能与图18中的处理器701的功能相同。
可选的,如图18所示,本发明实施例提供的地图构建设备还可以包括通信接口704。
通信接口704,用于与其他设备通过通信网络连接。该通信网络可以是以太网,无线接入网,无线局域网(wireless local area networks,WLAN)等。通信接口704可以包括用于接收数据的获取单元,以及用于发送数据的发送单元。
在一种设计中,本发明实施例提供的地图构建设备中,通信接口还可以集成在处理器中。
图19示出了本发明实施例中地图构建设备的另一种硬件结构。如图19所示,地图构建设备80可以包括处理器801以及通信接口802。处理器801与通信接口802耦合。
处理器801的功能可以参考上述处理器701的描述。此外,处理器801还具备存储功能,可以参考上述存储器702的功能。
通信接口802用于为处理器801提供数据。该通信接口802可以是地图构建设备的内部接口,也可以是地图构建设备对外的接口(相当于通信接口704)。
需要指出的是,图19中示出的结构并不构成对地图构建设备的限定,除图19所示部件之外,该地图构建设备80可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能单元的划分进行举例说明。在实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当计算机执行该指令时,该计算机执行上述方法实施例所示的方法流程中的各个步骤。
本发明的实施例提供一种包含指令的计算机程序产品,当指令在计算机上运行时,使得计算机执行上述方法实施例中的地图构建方法。
其中,计算机可读存储介质,例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘。随机存取存储器(Random Access Memory,RAM)、只读存储器(Read-Only Memory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、寄存器、硬盘、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的人以合适的组合、或者本领域数值的任何其他形式的计算机可读存储介质。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于特定用途集成电路(Application Specific Integrated Circuit,ASIC)中。在本发明实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
由于本发明的实施例中的装置、设备计算机可读存储介质、计算机程序产品可以应用于上述方法,因此,其所能获得的技术效果也可参考上述方法实施例,本发明实施例在此不再赘述。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何在本发明揭露的技术范围内的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种地图构建方法,其特征在于,所述方法包括:
确定机器人采集到的原始双目图像中的动态特征点,并根据所述原始双目图像的动态特征点确定所述原始双目图像中的动态目标物体;
从所述原始双目图像中删除所述动态目标物体,得到静态双目图像,并基于所述静态双目图像确定所述机器人的运动状态,所述运动状态包括位置、姿态以及速度;
对所述原始双目图像进行深度估计,确定所述原始双目图像中各像素点的深度信息;
根据所述运动状态以及所述原始双目图像中各像素点的深度信息构建地图。
2.根据权利要求1所述的地图构建方法,其特征在于,所述根据所述运动状态以及所述原始双目图像中各像素点的深度信息构建地图,包括:
根据所述运动状态以及所述原始双目图像中各像素点的深度信息,确定所述原始双目图像中物体的位置;
根据所述原始双目图像中物体的位置,生成所述原始双目图像对应的占据栅格地图,所述原始双目图像中物体的位置对应的体素的状态为占据状态;
确定所述原始双目图像中的动态物体,将所述动态物体的位置对应的体素的状态更新为空闲状态;
确定动态物体的点云数据,生成三维占用网格;
根据所述体素的状态以及所述三维占用网格构建地图。
3.根据权利要求1或2所述的地图构建方法,其特征在于,所述确定机器人采集到的原始双目图像中的动态特征点,包括:
确定所述原始双目图像中的第一特征点,以及相邻双目图像中的第二特征点;所述相邻双目图像为与所述原始双目图像相邻帧的双目图像,所述第一特征点和所述第二特征点用于表征的内容相同;
根据所述第一特征点和所述第二特征点确定基础矩阵;
根据所述基础矩阵以及所述第一特征点,确定所述第一特征点对应的极线;
确定所述第二特征点到所述极线的目标距离;
在所述目标距离大于第一阈值的情况下,确定所述第一特征点为动态特征点。
4.根据权利要求1或2所述的地图构建方法,其特征在于,所述根据所述原始双目图像的动态特征点确定所述原始双目图像中的动态目标物体,包括:
对所述原始双目图像进行语义分割,确定所述原始双目图像中第一物体的边界点,所述第一物体为所述原始双目图像中的任一物体;
在所述第一物体的边界点中包括的动态特征点的数量大于第二阈值的情况下,确定所述第一物体为所述双目图像中的动态目标物体。
5.一种地图构建装置,其特征在于,包括确定单元以及处理单元;
所述确定单元,用于确定机器人采集到的原始双目图像中的动态特征点;
所述确定单元,还用于根据所述原始双目图像的动态特征点确定所述原始双目图像中的动态目标物体;
所述处理单元,用于从所述原始双目图像中删除所述动态目标物体,得到静态双目图像;
所述确定单元,还用于基于所述静态双目图像确定所述机器人的运动状态,所述运动状态包括位置、姿态以及速度;
所述确定单元,还用于对所述原始双目图像进行深度估计,确定所述原始双目图像中各像素点的深度信息;
所述处理单元,还用于根据所述运动状态以及所述原始双目图像中各像素点的深度信息构建地图。
6.根据权利要求5所述的地图构建装置,其特征在于,所述处理单元,具体用于根据所述运动状态以及所述原始双目图像中各像素点的深度信息,确定所述原始双目图像中物体的位置;
根据所述原始双目图像中物体的位置,生成所述原始双目图像对应的占据栅格地图,所述原始双目图像中物体的位置对应的体素的状态为占据状态;
确定所述原始双目图像中的动态物体,将所述动态物体的位置对应的体素的状态更新为空闲状态;
确定动态物体的点云数据,生成三维占用网格;
根据所述体素的状态以及所述三维占用网格构建地图。
7.根据权利要求5或6所述的地图构建装置,其特征在于,所述确定单元,具体用于确定所述原始双目图像中的第一特征点,以及相邻双目图像中的第二特征点;所述相邻双目图像为与所述原始双目图像相邻帧的双目图像,所述第一特征点和所述第二特征点用于表征的内容相同;
根据所述第一特征点和所述第二特征点确定基础矩阵;
根据所述基础矩阵以及所述第一特征点,确定所述第一特征点对应的极线;
确定所述第二特征点到所述极线的目标距离;
在所述目标距离大于第一阈值的情况下,确定所述第一特征点为动态特征点。
8.根据权利要求5或6所述的地图构建装置,其特征在于,所述确定单元,具体用于对所述原始双目图像进行语义分割,确定所述原始双目图像中第一物体的边界点,所述第一物体为所述原始双目图像中的任一物体;
在所述第一物体的边界点中包括的动态特征点的数量大于第二阈值的情况下,确定所述第一物体为所述双目图像中的动态目标物体。
9.一种地图构建设备,其特征在于,包括存储器和处理器;
所述存储器和所述处理器耦合;
所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;
当所述处理器执行所述计算机指令时,所述地图构建设备执行如权利要求1-4中任意一项所述的地图构建方法。
10.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在地图构建设备上运行时,使得所述地图构建设备执行如权利要求1-4中任意一项所述的地图构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210689906.3A CN114943785A (zh) | 2022-06-17 | 2022-06-17 | 地图构建方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210689906.3A CN114943785A (zh) | 2022-06-17 | 2022-06-17 | 地图构建方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114943785A true CN114943785A (zh) | 2022-08-26 |
Family
ID=82911645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210689906.3A Pending CN114943785A (zh) | 2022-06-17 | 2022-06-17 | 地图构建方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114943785A (zh) |
-
2022
- 2022-06-17 CN CN202210689906.3A patent/CN114943785A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11816907B2 (en) | Systems and methods for extracting information about objects from scene information | |
US11313684B2 (en) | Collaborative navigation and mapping | |
CN107036594A (zh) | 智能电站巡检智能体的定位与多粒度环境感知技术 | |
CN108491763B (zh) | 三维场景识别网络的无监督训练方法、装置及存储介质 | |
KR101965878B1 (ko) | 시각적 피처들을 이용한 이미지들의 자동 연결 | |
KR20200075727A (ko) | 깊이 맵 산출 방법 및 장치 | |
CN114820932B (zh) | 一种基于图神经网络和关系优化的全景三维场景理解方法 | |
CN109255833A (zh) | 基于语义先验和渐进式优化宽基线致密三维场景重建方法 | |
CN115900710A (zh) | 基于视觉信息的动态环境导航方法 | |
KR20200143228A (ko) | 3차원 가상 공간 모델을 이용한 사용자 포즈 추정 방법 및 장치 | |
WO2022010855A1 (en) | Systems, methods and devices for map-based object's localization deep learning and object's motion trajectories on geospatial maps | |
CN115406447A (zh) | 拒止环境下基于视觉惯性的四旋翼无人机自主定位方法 | |
CN114387462A (zh) | 一种基于双目相机的动态环境感知方法 | |
Zhu et al. | PairCon-SLAM: Distributed, online, and real-time RGBD-SLAM in large scenarios | |
Jo et al. | Mixture density-PoseNet and its application to monocular camera-based global localization | |
CN117152228A (zh) | 基于通道自注意力机制的自监督图像深度估计方法 | |
CN112348854A (zh) | 一种基于深度学习视觉惯性里程检测方法 | |
CN114943785A (zh) | 地图构建方法、装置、设备及存储介质 | |
US11915449B2 (en) | Method and apparatus for estimating user pose using three-dimensional virtual space model | |
CN114022630A (zh) | 三维场景的重建方法、装置、设备和计算机可读存储介质 | |
CN116295507B (zh) | 一种基于深度学习的激光惯性里程计优化方法、系统 | |
CN115578461B (zh) | 基于双向rgb-d特征融合的物体姿态估计方法及装置 | |
Rosinol | 3D Spatial Perception with Real-Time Dense Metric-Semantic SLAM | |
Qin et al. | Grid map representation with height information based on multi-view 3D reconstruction technology | |
CN116895014A (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 |