CN110853085A - 基于语义slam的建图方法和装置及电子设备 - Google Patents
基于语义slam的建图方法和装置及电子设备 Download PDFInfo
- Publication number
- CN110853085A CN110853085A CN201810955924.5A CN201810955924A CN110853085A CN 110853085 A CN110853085 A CN 110853085A CN 201810955924 A CN201810955924 A CN 201810955924A CN 110853085 A CN110853085 A CN 110853085A
- Authority
- CN
- China
- Prior art keywords
- current frame
- frame
- semantic
- camera pose
- point
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- 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/10016—Video; Image sequence
-
- 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
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
公开了一种基于语义SLAM的建图方法和装置及电子设备。根据一实施例,一种基于语义SLAM的建图方法可包括:通过相机获得当前帧图像;利用语义分割算法对所述当前帧图像进行处理以获得其语义信息;利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及,基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。这样,可以基于语义信息优化图像帧对应的相机位姿,从而更加稳定地获得准确的地图点云。
Description
技术领域
本申请涉及图像处理领域,且更具体地,涉及一种基于语义SLAM的建图方法和装置、电子设备、以及包括该电子设备的可移动装置。
背景技术
高精度地图作为无人驾驶技术的重要组成部分,对车辆的导航、定位、控制、以及安全保障等方面至关重要。为此,需要低成本、易于更新的高精度地图构建方式。
近几年,随着硬算法精度的提高,硬件计算能力的提升,为了得到稠密或者半稠密的地图,SLAM(即时定位和建图:Simultaneous localization and mapping)在构建高精度地图中得到了较大规模的应用。一般而言,根据是否使用特征点,SLAM建图方法可以大体上分为特征点法和直接法。特征点法需要通过特征点匹配、最小化重投影误差来优化相机姿态和特征点坐标。直接法则基于光度不变的假设,即,同一空间点在连续帧图像中的像素点光度值相同,通过最小化光度误差来优化相机姿态和特征点坐标。由于后者不需要检测匹配特征点,可以得到稠密或者半稠密的地图,所以在高精度地图的构建中,得到了更为广泛的应用。然而,受到光源不均匀,物体反光以及相机曝光时间变动等因素的影响,直接法中的光度不变假设往往不成立。
因此,仍需要一种改进的基于SLAM的建图方案,其能够实现进一步提高的地图构建精度。
发明内容
为了解决上述以及其他技术问题中的至少一个,提出了本申请。本申请的实施例提供了一种基于语义SLAM的建图方法和装置、电子设备、以及包括该电子设备的可移动装置。在本发明的实施例中,通过基于语义信息来优化相机位姿,从而可以更加稳定地获得准确的地图点云。
根据本申请的一个方面,提供了一种基于语义SLAM的建图方法,包括:通过相机获得当前帧图像;利用语义分割算法对所述当前帧图像进行处理以获得其语义信息;利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及,基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。
在上述基于语义SLAM的建图方法中,还包括:确定所述当前帧是否是关键帧;如果所述当前帧不是关键帧,则丢弃所述当前帧;以及,如果所述当前帧是关键帧,则将所述当前帧保存在所构建的地图中,其中,所述参考帧是前一关键帧。
在上述基于语义SLAM的建图方法中,确定所述当前帧是否是关键帧包括:基于所述当前帧与所述参考帧之间的语义差异来确定所述当前帧是否是关键帧;或者,基于所述相机的位姿变化来确定所述当前帧是否是关键帧。
在上述基于语义SLAM的建图方法中,还包括:使用滑动窗口选择多个连续的关键帧;以及,使用非线性优化法来优化所述多个连续的关键帧以确定更准确的相机位姿和深度信息。
在上述基于语义SLAM的建图方法中,还包括:在所述当前帧图像上检测并生成新的未成熟点。
在上述基于语义SLAM的建图方法中,利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿包括:确定与所述当前帧对应的先验相机位姿;基于所述先验相机位姿计算所述参考帧上的点在所述当前帧上的重投影点;以及调整所述先验相机位姿,以使得所述当前帧上的与所述参考帧上的点对应的点的语义与所述当前帧上的重投影点的语义之间的差值最小化。
在上述基于语义SLAM的建图方法中,确定与所述当前帧对应的先验相机位姿包括:基于所述参考帧对应的相机位姿和车载传感器提供的相机运动信息来确定与所述当前帧对应的相机位姿,作为所述先验相机位姿。
在上述基于语义SLAM的建图方法中,所述语义信息包括像素点属于各类别的概率值。
根据本申请的另一方面,提供了一种基于语义SLAM的建图装置,包括:语义分割单元,用于对当前帧图像进行处理以获得其语义信息;相机位姿优化单元,用于利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及,熟化单元,用于基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。
在上述基于语义SLAM的建图装置中,还包括:关键帧识别单元,用于确定所述当前帧是否是关键帧,并且响应于所述当前帧是关键帧,将所述当前帧保存在所构建的地图中。
在上述基于语义SLAM的建图装置中,所述关键帧识别单元确定所述当前帧是否是关键帧包括:基于所述当前帧与所述参考帧之间的语义差异来确定所述当前帧是否是关键帧;或者,基于所述相机的位姿变化来确定所述当前帧是否是关键帧。
在上述基于语义SLAM的建图装置中,还包括:滑动窗优化单元,用于使用滑动窗口选择多个连续的关键帧,并且使用非线性优化法来优化所述多个连续的关键帧以确定更准确的相机位姿和深度信息,以及在所述当前帧图像上检测并生成新的未成熟点。
在上述基于语义SLAM的建图装置中,所述相机位姿优化单元配置为:确定与所述当前帧对应的先验相机位姿;基于所述先验相机位姿计算所述参考帧上的点在所述当前帧上的重投影点;以及调整所述先验相机位姿,以使得所述当前帧上的与所述参考帧上的点对应的点的语义与所述当前帧上的重投影点的语义之间的差值最小化。
在上述基于语义SLAM的建图装置中,所述相机位姿优化单元确定与所述当前帧对应的先验相机位姿包括:基于所述参考帧对应的相机位姿和车载传感器提供的相机运动信息来确定与所述当前帧对应的相机位姿,作为所述先验相机位姿。
在上述基于语义SLAM的建图装置中,所述语义信息包括像素点属于各类别的概率值。
根据本申请的再一方面,提供了一种电子设备,包括:处理器;以及,存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如上所述的基于语义SLAM的建图方法。
根据本申请的又一方面,提供了一种可移动装置,包括如上所述的电子设备。
根据本申请的又一方面,提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如上所述的基于语义SLAM的建图方法。
与现有技术相比,采用根据本申请实施例的基于语义SLAM的建图方法和装置、电子设备、以及包括该电子设备的可移动装置,可以通过相机获得当前帧图像;利用语义分割算法对所述当前帧图像进行处理以获得其语义信息;利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。因此,可以基于语义信息优化图像帧对应的相机位姿,避免了因光度变化等因素导致的误差,从而可以更加稳定地获得准确的地图点云。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1图示了根据本申请实施例的基于语义SLAM的建图方法的流程图;
图2图示了根据本申请实施例的通过最小化重构语义误差优化相机位姿的示意图;
图3图示了根据本申请实施例的车载***实现基于语义SLAM的建图方法的示意图;
图4图示了根据本申请实施例的基于语义SLAM的建图装置的框图;
图5图示了根据本申请实施例的电子设备的框图。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
如上所述,SLAM在高精度地图的构建中发挥了越来越大的作用。习惯上,根据是否使用特征点,SLAM可以分为特征点法和直接法。前者需要通过特征点匹配,最小化重投影误差来优化相机姿态以及特征点坐标。后者则基于光度不变的假设,即,同一空间点在连续帧图像中的像素点光度值相同,通过最小化光度误差来优化相机姿态以及特征点坐标。由于后者不需要检测匹配特征点,可以得到稠密或者半稠密的地图,所以在高精度地图的构建中,后者使用更为广泛。然而,受到光源不均匀,物体反光以及相机曝光时间变动等影响,直接法中的光度不变假设往往不成立。
针对上述技术问题,本申请的基本构思是利用语义信息,通过最小化语义误差,即空间点在不同图像上投影像素的语义类别的差值来优化相机位姿以及地图点坐标,从而构建具有语义信息的高精度地图。
近年来,随着深度学习算法的发展,语义感知效果有了很大提升。相比于原始图像上的光度值,语义感知结果包含了更高级别的信息,对外界扰动更加鲁棒。因此,通过使用更高级别的语义指标代替传统光度指标,可以使得***的抗扰动能力得到进一步的提升。
具体来说,本申请实施例提供的基于语义SLAM的建图方法和装置,可以通过相机获得当前帧图像;利用语义分割算法对所述当前帧图像进行处理以获得其语义信息;利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及,基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。这样,可以基于语义信息优化图像帧对应的相机位姿,通过使用更高级别的语义信息,可以使得获得的半稠密地图点云更加准确,抗干扰能力更强。并且,通过后处理(比如点云清洗、拼接、矢量化),可以形成最终的带有语义的高精度地图。
这里,根据本申请实施例的基于语义SLAM的建图方法和装置及电子设备可以应用于需要SLAM功能的各种可移动装置中,例如但不限于车辆、各种工业用或者家用的可移动机器人等。可移动机器人的示例包括扫地机器人、除草机器人、物流搬运机器人等。
在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。
示例性方法
图1图示了根据本申请实施例的基于语义SLAM的建图方法的流程图。
如图1所示,根据本申请实施例的基于语义SLAM的建图方法包括:S110,通过相机获得当前帧图像;S120,利用语义分割算法对所述当前帧图像进行处理以获得其语义信息;S130,利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及S140,基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。
在步骤S110中,通过相机获得当前帧图像。这里,在本申请实施例中,相机不仅限于诸如摄像头之类的图像采集器件,也可以包括可以用于获取图像的激光雷达、超声波雷达等。通过这些成像元件,可以在携带其的移动设备移动的同时,获得连续的视频图像,包括当前帧图像。
在步骤S120中,利用语义分割算法对所述当前帧图像进行处理以获得其语义信息。这里,语义分割算法的示例可以包括诸如阈值法、聚类法、图划分法之类的非深度学习算法,以及诸如全卷积神经网络、稀释卷积、条件随机场(CRF)后处理之类的基于深度学习的算法。本发明的实施例不限于这些已知算法,也可以采用将来开发的语义分割算法等。
例如,通过基于深度学习的算法,可以从一帧原始图像得到语义分割结果,即所述原始图像中的每一像素点属于各语义类别的概率。例如,一像素点属于建筑物、车道线、标志牌、路灯的概率分别是0.1、0.05、0.05、0.8,这些概率值可以构成***所使用的语意分割图像。
在步骤S130中,利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿。这里,如下面将详细描述的那样,参考帧可以是上一关键帧,其包括具有相应的语音信息的若干像素点、以及已确定的相机位姿。利用该参考帧,通过最小化重构语义误差,可以确定当前帧对应的相机位姿。同时,本领域技术人员可以理解,在优化当前帧对应的相机位姿的同时,也可以优化当前帧上的对应点,即确定当前帧上哪些点与参考帧上的点对应,这与直接法SLAM中最小化重构误差方案类似,区别主要在于用语义信息代替了光度信息。
下面,将对步骤S130进行具体说明。图2图示了根据本申请实施例的通过最小化重构语义误差优化相机位姿的示意图。首先确定与所述当前帧对应的先验相机位姿。例如,如图2所示,参考帧101上具有像素点P1,当前帧102上具有像素点P2。应理解,虽然图2仅示出了一个像素点P1和一个像素点P2,但是实际上,参考帧101和当前帧102上具有若干这样的像素点P1和P2。通过语义匹配可以确定,参考帧101上的像素点P1和当前帧102上的像素点P2对应于相同的3D空间点P。相机从参考帧101所在的位置移动至当前帧102所在的位置,由于参考帧101具有其对应的相机位姿,因此基于相关的运动传感器,例如移动装置上的位姿传感器,诸如车辆上常用的惯性测量单元(IMU),可以确定移动装置的位姿变化,从而得到与当前帧102对应的相机位姿,其是对相机当前位姿的先验估计。然后,利用相机的先验位姿,可以将参考帧101上的像素点P1对应的3D空间点P投影到当前帧102上,得到相应的投影点P2'。重投影点P2'和匹配的像素点P2之间存在一定的语义误差,其可称为重投影语义误差,该误差可以用例如像素点P2和重投影点P2'的语义值的均方差来表示。通过调整先验相机位姿,使得该重投影语义误差最小化,与该最小化的重投影语义误差对应的相机位姿,即可被确定为与当前帧102相对应的相机位姿。
继续参照图1,在步骤S140中,基于所确定的相机位姿来确定参考帧上的不具有深度信息的未成熟点与当前帧上的对应点的深度信息,以形成具有深度信息的成熟点,该步骤也可称为未成熟点深度滤波。这里,未成熟点指的是图像空间中的深度信息未知的像素,即,没有从图像空间信息获得这些像素的3D空间信息,因此这些点被称为未成熟点。通过未成熟点深度滤波,可以获得这些点的深度信息。具体地,未成熟点深度滤波可以通过多视角几何的方式,即基于相邻帧之间的位姿差异以及对应像素点的坐标差异,可以确定对应像素点的深度信息,这与通过双目相机确定深度信息的原理相同,因此这里不再详细描述。通过未成熟点深度滤波,可以不断降低图像帧上的未成熟点的深度不确定性,这样,经过多次深度滤波,可以确定大部分未成熟点的深度信息。
通过上述步骤,可以确定图像帧上的像素点的深度信息,并且将该图像帧保存到所建立的地图中。不过,在一些实施例中,可能并不需要将每一帧都纳入到所建立的地图中来,这可能会导致所构建的地图过于臃肿和庞大。因此,在一些实施例中,还可以包括确定当前帧是否是关键帧的步骤。如果当前帧不是关键帧,则可以在利用其对参考帧(即,前一关键帧)上的未成熟点进行深度滤波之后,丢弃该当前帧。相反,如果当前帧被确定为是关键帧,则将其保存在所构建的地图中。
可以基于多种标准来确定当前帧是否为关键帧。在一实施例中,可以根据当前帧与参考帧之间的语义差异来确定当前帧是否是关键帧。例如,如果当前帧与参考帧之间的语义差异较大,说明场景变化较大,则可以将当前帧确定为关键帧,并且将其存储到所构建的地图中。相反,如果差异不大,说明当前帧与参考帧的场景类似,因此可以将当前帧不作为关键帧,而丢弃当前帧。
在另一实施例中,还可以基于相机的位姿变化来确定当前帧是否是关键帧。例如,相机每移动一预定距离,例如1米、2米、5米,或者更远或更近距离,就选定一当前帧为关键帧。当然,还可以利用其他标准来确定当前帧是否为关键帧。
在确定当前帧为关键帧并且将其保存到所构建的地图中之后,还可以进一步使用滑动窗口来对地图中的关键帧进行进一步的优化。滑动窗口可包括多个连续关键帧的动态序列,当把当前帧确定为关键帧之后,可以将当前帧加入到滑动窗口中,而删除滑动窗口中最早的关键帧,以保证窗口大小为一常量。对于滑动窗口内的多个关键帧,可以利用非线性优化法例如高斯牛顿(Gauss-Newton)法、列文伯格-马夸尔特(Levenberg-Marquadt)法等,或者也可以采用其他优化算法,来优化各个关键帧对应的相机位姿以及像素点的深度信息,从而使所构建的地图更准确。滑动窗优化法的使用可以有效地解决SLAM的漂移问题,同时又保证了整个***的实时性。
上面,在将当前帧确定为关键帧,并且进行未成熟点深度滤波,以确定了当前帧上的一些点(例如与参考帧上的像素点对应的像素点)的深度信息之后,可以理解,当前帧上一般还包括有若干未知深度信息的未成熟点。因此,在一些实施例中,还可以在当前帧的语义图像上检测并生成一些新的未成熟点,这些未成熟点可以在与后续图像帧相关的深度滤波操作中被处理,确定其深度信息。
图3图示了基于上述原理,在车载***中实现的根据本申请一实施例的基于语义SLAM的建图方法的示意图。如图3所示,车载相机采集的原始图像,即当前帧图像,进入语义模块210,语义模块210可对图像进行语义分割,获得包括语义感知结果的语义图像,其可进入前端优化模块220。车辆底盘230可包括若干传感器,例如IMU单元,其可以提供关于车辆六自由度位姿的先验估计,即车载相机的位姿先验估计。前端优化模块220利用作为参考帧的上一关键帧以及相机位姿的先验估计,完成与当前帧对应的相机位姿的优化,进而可执行未成熟点深度滤波,确定至少一部分未成熟点的深度信息。
接下来,在判定流程240,可以判定当前帧是否为关键帧。如果当前帧不是关键帧,则在流程框250中,可以丢弃当前帧。如果是关键帧,则可以将当前帧保存到所构建的地图中,并且在后端优化模块260中,使用滑动窗口来执行进一步的优化处理。例如,可以将当前帧加入到滑动窗口中,而删除滑动窗口中最早的关键帧,对滑动窗口内的多个关键帧,可以利用例如非线性优化法或其他优化算法来优化各个关键帧对应的相机位姿以及像素点的深度信息等,从而使所构建的地图更准确。最后,在流程框270中,还可以检测当前帧上的尚未知深度信息的未成熟点,以便于在后续图像帧的处理期间对其进行深度滤波,以确定其深度信息,最终完成地图的构建。
由于图3所示方法的各个步骤已经在上面关于图1和图2进行了详细描述,所以这里仅简要说明,而省略了对其的重复详细描述。
示例性装置
图4图示了根据本申请实施例的基于语义SLAM的建图装置的功能框图。如图4所示,根据本申请实施例的基于语义SLAM的建图装置300包括:语义分割单元310,用于对当前帧图像进行处理以获得其语义信息,语义信息可包括像素点属于各类别的概率值;相机位姿优化单元320,用于利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及熟化单元330,用于基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。
在一个示例中,在上述基于语义SLAM的建图装置300中,还包括:关键帧识别单元340,用于确定所述当前帧是否是关键帧。如果当前帧是关键帧,关键帧识别单元340还可以将当前帧保存在所构建的地图中;如果不是,则关键帧识别单元340可以丢弃当前帧。
在一个示例中,在上述基于语义SLAM的建图装置300中,关键帧识别单元340可以基于例如下述标准来确定当前帧是否是关键帧:当前帧与参考帧之间的语义差异,例如语义差异大,则是关键帧,反之,则不是关键帧;相机的位姿变化,例如位姿变化大,则是关键帧,反之,则不是关键帧。
在一个示例中,在上述基于语义SLAM的建图装置300中,还可以包括:滑动窗优化单元350,用于使用滑动窗口选择多个连续的关键帧,并且使用非线性优化法来优化所述多个连续的关键帧以确定更准确的相机位姿和深度信息。在一示例中,滑动窗优化单元350还可以在当前帧图像上检测并生成新的未成熟点。
在一个示例中,在上述基于语义SLAM的建图装置300中,相机位姿优化单元320可以配置为通过如下步骤来实现相机位姿优化:确定与当前帧对应的先验相机位姿;基于先验相机位姿计算参考帧上的点在当前帧上的重投影点;以及调整先验相机位姿,以使得当前帧上的与参考帧上的点对应的点的语义与当前帧上的重投影点的语义之间的差值最小化。与该最小化重投影语义误差对应的相机位姿即为与当前帧对应的相机位姿。
在一个示例中,在上述基于语义SLAM的建图装置300中,相机位姿优化单元320可以基于参考帧对应的相机位姿和车载传感器提供的相机运动信息来确定与当前帧对应的相机位姿,作为先验相机位姿。
这里,本领域技术人员可以理解,上述基于语义SLAM的建图装置300中的各个单元和模块的具体功能和操作已经在上面参考图1到图3描述的方法中详细介绍,并因此,将省略其重复描述。
如上所述,根据本申请实施例的基于语义SLAM的建图装置300可以实现在各种终端设备中,例如车辆、移动机器人等的车载导航设备中。一个示例中,根据本申请实施例的基于语义SLAM的建图装置300可以作为一个软件模块和/或硬件模块而集成到所述终端设备中。例如,该装置300可以是该终端设备的操作***中的一个软件模块,或者可以是针对于该终端设备所开发的一个应用程序,其运行在CPU(中央处理单元)和/或GPU(图形处理单元)上,或者运行在专用的硬件加速芯片,例如适于运行深度神经网络的专用芯片上。当然,该装置300同样可以是该终端设备的众多硬件模块之一。
替换地,在另一示例中,该基于语义SLAM的建图装置300与该终端设备也可以是分立的设备,并且该装置300可以通过有线和/或无线网络连接到该终端设备,并且按照约定的数据格式来传输交互信息。
示例性电子设备
图5图示了根据本申请实施例的电子设备的框图。如图5所示,电子设备10包括一个或多个处理器11和存储器12。
处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。
存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本申请的各个实施例的基于语义SLAM的建图方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如相机参数、图像信息、地图信息等各种内容。
在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线***和/或其他形式的连接机构(未示出)互连。
输入装置13可以用于接收从例如相机或其对应的图像处理装置输入的图像信息,这些图像信息可用于执行例如上面描述的建图过程。输出装置14则可以向外部输出各种信息,包括所构建的地图等。例如,输出设备14可以将所构建的地图输出给自动驾驶***,以利用其来规划路径,做出驾驶决策等。
当然,为了简化,图5中仅示出了该电子设备10中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的基于语义SLAM的建图方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的基于语义SLAM的建图方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、***的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、***。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (15)
1.一种基于语义SLAM的建图方法,包括:
通过相机获得当前帧图像;
利用语义分割算法对所述当前帧图像进行处理以获得其语义信息;
利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及
基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。
2.如权利要求1所述的方法,还包括:
确定所述当前帧是否是关键帧;
如果所述当前帧不是关键帧,则丢弃所述当前帧;以及
如果所述当前帧是关键帧,则将所述当前帧保存在所构建的地图中,
其中,所述参考帧是前一关键帧。
3.如权利要求2所述的方法,其中,确定所述当前帧是否是关键帧包括:
基于所述当前帧与所述参考帧之间的语义差异来确定所述当前帧是否是关键帧;或者
基于所述相机的位姿变化来确定所述当前帧是否是关键帧。
4.如权利要求2所述的方法,还包括:
使用滑动窗口选择多个连续的关键帧;以及
使用非线性优化法来优化所述多个连续的关键帧以确定更准确的相机位姿和深度信息。
5.如权利要求4所述的方法,还包括:
在所述当前帧图像上检测并生成新的未成熟点。
6.如权利要求1所述的方法,其中,利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿包括:
确定与所述当前帧对应的先验相机位姿;
基于所述先验相机位姿计算所述参考帧上的点在所述当前帧上的重投影点;以及
调整所述先验相机位姿,以使得所述当前帧上的与所述参考帧上的点对应的点的语义与所述当前帧上的重投影点的语义之间的差值最小化。
7.如权利要求1所述的方法,其中,确定与所述当前帧对应的先验相机位姿包括:
基于所述参考帧对应的相机位姿和车载传感器提供的相机运动信息来确定与所述当前帧对应的相机位姿,作为所述先验相机位姿。
8.如权利要求1所述的方法,其中,所述语义信息包括像素点属于各类别的概率值。
9.一种基于语义SLAM的建图装置,包括:
语义分割单元,用于对当前帧图像进行处理以获得其语义信息;
相机位姿优化单元,用于利用参考帧以最小化重构语义误差的方式来优化所述当前帧对应的相机位姿;以及
熟化单元,用于基于优化的相机位姿确定所述参考帧上的不具有深度信息的未成熟点与所述当前帧上的对应点的深度信息,以形成具有深度信息的成熟点。
10.如权利要求9所述的装置,还包括:
关键帧识别单元,用于确定所述当前帧是否是关键帧,并且响应于所述当前帧是关键帧,将所述当前帧保存在所构建的地图中。
11.如权利要求10所述的装置,还包括:
滑动窗优化单元,用于使用滑动窗口选择多个连续的关键帧,并且使用非线性优化法来优化所述多个连续的关键帧以确定更准确的相机位姿和深度信息,以及在所述当前帧图像上检测并生成新的未成熟点。
12.如权利要求9所述的装置,其中,所述相机位姿优化单元配置为:
确定与所述当前帧对应的先验相机位姿;
基于所述先验相机位姿计算所述参考帧上的点在所述当前帧上的重投影点;以及
调整所述先验相机位姿,以使得所述当前帧上的与所述参考帧上的点对应的点的语义与所述当前帧上的重投影点的语义之间的差值最小化。
13.一种电子设备,包括:
处理器;以及
存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如权利要求1-8中任一项所述的方法。
14.一种可移动装置,包括权利要求13所述的电子设备。
15.一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如权利要求1-8中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810955924.5A CN110853085B (zh) | 2018-08-21 | 2018-08-21 | 基于语义slam的建图方法和装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810955924.5A CN110853085B (zh) | 2018-08-21 | 2018-08-21 | 基于语义slam的建图方法和装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110853085A true CN110853085A (zh) | 2020-02-28 |
CN110853085B CN110853085B (zh) | 2022-08-19 |
Family
ID=69595287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810955924.5A Active CN110853085B (zh) | 2018-08-21 | 2018-08-21 | 基于语义slam的建图方法和装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110853085B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111693047A (zh) * | 2020-05-08 | 2020-09-22 | 中国航空工业集团公司西安航空计算技术研究所 | 一种高动态场景下的微小型无人机视觉导航方法 |
CN112068555A (zh) * | 2020-08-27 | 2020-12-11 | 江南大学 | 一种基于语义slam方法的语音控制型移动机器人 |
CN112381828A (zh) * | 2020-11-09 | 2021-02-19 | Oppo广东移动通信有限公司 | 基于语义和深度信息的定位方法、装置、介质与设备 |
CN113034582A (zh) * | 2021-03-25 | 2021-06-25 | 浙江商汤科技开发有限公司 | 位姿优化装置及方法、电子设备及计算机可读存储介质 |
CN113793378A (zh) * | 2021-06-21 | 2021-12-14 | 紫东信息科技(苏州)有限公司 | 基于层次分组的语义slam对象关联和位姿更新方法及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104596533A (zh) * | 2015-01-07 | 2015-05-06 | 上海交通大学 | 基于地图匹配的自动导引车及其导引方法 |
CN107145578A (zh) * | 2017-05-08 | 2017-09-08 | 深圳地平线机器人科技有限公司 | 地图构建方法、装置、设备和*** |
CN107610175A (zh) * | 2017-08-04 | 2018-01-19 | 华南理工大学 | 基于半直接法和滑动窗口优化的单目视觉slam算法 |
CN107909612A (zh) * | 2017-12-01 | 2018-04-13 | 驭势科技(北京)有限公司 | 一种基于3d点云的视觉即时定位与建图的方法与*** |
CN108230337A (zh) * | 2017-12-31 | 2018-06-29 | 厦门大学 | 一种基于移动端的语义slam***实现的方法 |
CN108229416A (zh) * | 2018-01-17 | 2018-06-29 | 苏州科技大学 | 基于语义分割技术的机器人slam方法 |
-
2018
- 2018-08-21 CN CN201810955924.5A patent/CN110853085B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104596533A (zh) * | 2015-01-07 | 2015-05-06 | 上海交通大学 | 基于地图匹配的自动导引车及其导引方法 |
CN107145578A (zh) * | 2017-05-08 | 2017-09-08 | 深圳地平线机器人科技有限公司 | 地图构建方法、装置、设备和*** |
CN107610175A (zh) * | 2017-08-04 | 2018-01-19 | 华南理工大学 | 基于半直接法和滑动窗口优化的单目视觉slam算法 |
CN107909612A (zh) * | 2017-12-01 | 2018-04-13 | 驭势科技(北京)有限公司 | 一种基于3d点云的视觉即时定位与建图的方法与*** |
CN108230337A (zh) * | 2017-12-31 | 2018-06-29 | 厦门大学 | 一种基于移动端的语义slam***实现的方法 |
CN108229416A (zh) * | 2018-01-17 | 2018-06-29 | 苏州科技大学 | 基于语义分割技术的机器人slam方法 |
Non-Patent Citations (4)
Title |
---|
SHICHAO YANG ET AL: "Pop-up SLAM: Semantic Monocular Plane SLAM for Low-texture Environments", 《ARXIV:1703.07334V1》 * |
吴玉香等: "基于稀疏直接法和图优化的移动机器人SLAM", 《仪器仪表学报》 * |
徐浩楠等: "基于半直接法SLAM的大场景稠密三维重建***", 《模式识别与人工智能》 * |
马跃龙等: "一种基于深度相机的机器人室内导航点云地图生成方法", 《测绘工程》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111693047A (zh) * | 2020-05-08 | 2020-09-22 | 中国航空工业集团公司西安航空计算技术研究所 | 一种高动态场景下的微小型无人机视觉导航方法 |
CN111693047B (zh) * | 2020-05-08 | 2022-07-05 | 中国航空工业集团公司西安航空计算技术研究所 | 一种高动态场景下的微小型无人机视觉导航方法 |
CN112068555A (zh) * | 2020-08-27 | 2020-12-11 | 江南大学 | 一种基于语义slam方法的语音控制型移动机器人 |
CN112381828A (zh) * | 2020-11-09 | 2021-02-19 | Oppo广东移动通信有限公司 | 基于语义和深度信息的定位方法、装置、介质与设备 |
CN112381828B (zh) * | 2020-11-09 | 2024-06-07 | Oppo广东移动通信有限公司 | 基于语义和深度信息的定位方法、装置、介质与设备 |
CN113034582A (zh) * | 2021-03-25 | 2021-06-25 | 浙江商汤科技开发有限公司 | 位姿优化装置及方法、电子设备及计算机可读存储介质 |
CN113793378A (zh) * | 2021-06-21 | 2021-12-14 | 紫东信息科技(苏州)有限公司 | 基于层次分组的语义slam对象关联和位姿更新方法及*** |
CN113793378B (zh) * | 2021-06-21 | 2023-08-11 | 紫东信息科技(苏州)有限公司 | 基于层次分组的语义slam对象关联和位姿更新方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN110853085B (zh) | 2022-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110853085B (zh) | 基于语义slam的建图方法和装置及电子设备 | |
EP3627180B1 (en) | Sensor calibration method and device, computer device, medium, and vehicle | |
US11379699B2 (en) | Object detection method and apparatus for object detection | |
CN110163930B (zh) | 车道线生成方法、装置、设备、***及可读存储介质 | |
CN107123142B (zh) | 位姿估计方法和装置 | |
JP2021523443A (ja) | Lidarデータと画像データの関連付け | |
CN110587597B (zh) | 一种基于激光雷达的slam闭环检测方法及检测*** | |
CN109658454B (zh) | 一种位姿信息确定方法、相关装置及存储介质 | |
KR20190115501A (ko) | 차량 인식 시스템 | |
CN115187941A (zh) | 目标检测定位方法、***、设备及存储介质 | |
CN115719436A (zh) | 模型训练方法、目标检测方法、装置、设备以及存储介质 | |
CN113281780B (zh) | 对图像数据进行标注的方法、装置及电子设备 | |
CN114387576A (zh) | 一种车道线识别方法、***、介质、设备及信息处理终端 | |
CN116343143A (zh) | 目标检测方法、存储介质、路侧设备及自动驾驶*** | |
CN116665179A (zh) | 数据处理方法、装置、域控制器以及存储介质 | |
WO2023283929A1 (zh) | 双目相机外参标定的方法及装置 | |
CN115147561A (zh) | 位姿图生成方法、高精地图生成方法和装置 | |
CN114495049A (zh) | 识别车道线的方法和装置 | |
US11227166B2 (en) | Method and device for evaluating images, operating assistance method, and operating device | |
CN109376653B (zh) | 用于定位车辆的方法、装置、设备和介质 | |
Dekkiche et al. | Vehicles detection in stereo vision based on disparity map segmentation and objects classification | |
CN116878487B (zh) | 一种用于建立自动驾驶地图的方法、装置、车辆和服务器 | |
CN112435293B (zh) | 一种车道线的结构化参数表示确定方法及装置 | |
CN117576200B (zh) | 一种长周期移动机器人定位方法、***、设备及介质 | |
Richter et al. | Mapping lidar and camera measurements in a dual top-view grid representation tailored for automated vehicles |
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 |