本发明涉及计算机视觉下的slam,尤其是涉及一种基于主成分分析的箭头对象重建方法、装置及介质。
背景技术:
1、目前,slam(simultaneous localization and mapping)算法是自动驾驶车辆的常用定位技术。但是,视觉slam算法并不适用于光线不足的地下车库环境。在视觉slam系统中,更期望能够对不同的标识物进行在线的重建,并将其添加到地图中,通过增加约束关系以增强定位性能。例如,中国专利cn111707272a利用车辆运动学模型为地下车库自动驾驶车辆位姿优化提供平面运动约束,可在梯度下降的优化过程中引导梯度方向,缩小优化空间,实现激光定位算法收敛速度和准确性的提高。然而,其并未考虑到利用环境中的平面标识物信息。通过在实时建图过程中识别和重建环境中的不同对象,例如地下车库箭头,可以有效地捕捉场景的几何信息和语义信息;通过与其它特征相结合,平面标识物可以提供额外的约束条件,帮助系统纠正误差并提高定位的精度。目前缺乏一种利用平面标识物以解决大尺度场景下slam的累积漂移过大的问题的方法。
技术实现思路
1、本发明的目的是为了提供一种基于主成分分析的箭头对象重建方法、装置及介质,以地下车库的箭头标识物为对象,根据边缘信息重建箭头,并赋予其六自由度位姿,方便后续纳入slam地图管理与后端优化,以解决大尺度场景下slam的累积漂移过大的问题。
2、本发明的目的可以通过以下技术方案来实现:
3、一种基于主成分分析的箭头对象重建方法,包括以下步骤:
4、步骤1:对采集的图像数据进行语义分割,获取数据箭头的矩形框数据;
5、步骤2:在箭头的包围矩形框中提取箭头的边缘线段;
6、步骤3:在视觉slam系统中新建箭头对象,并对提取的边缘线段进行语义划分;
7、步骤4:对边缘线段采样并进行主成分分析,得到箭头的主方向与副方向;
8、步骤5:将箭头的主副方向做叉乘得到辅助方向;
9、步骤6:将主方向、副方向进行归一化,并以箭头边缘线段采样点均值作为坐标原点,结合主方向、副方向和辅助方向建立箭头对象的坐标系;
10、步骤7:将箭头对象与箭头边缘线段在g2o中做共面约束,得到完整的箭头平面三维对象;
11、步骤8:对箭头平面三维对象的边缘冗余线段进行剔除。
12、所述步骤1具体为:基于sam模型对采集的图像数据进行语义分割,得到场景中各个对象的id、矩形框和置信分数数据。
13、所述步骤2具体为:利用lsd算法提取箭头的特征线,并以lbd作为每个线特征的描述,提取得到箭头的边缘线段。
14、所述步骤3中,对提取的边缘线段进行语义划分具体为:根据边缘线段提取结果,结合步骤1中的语义分割结果,根据矩形框的大小,将在其内部的2d特征线判断为该箭头的边缘线段,对每一条箭头的边缘线段赋予两个性质:其是否从属于某个箭头以及所属箭头的id。
15、所述步骤4中,对边缘线段采样具体为:对提取的语义边缘线段进行3d化,并在地图中显示,按照预设步长进行线段采样。
16、所述步骤4中,主成分分析包括以下步骤:
17、对边缘线段采样得到点集n为采样点总数,对于每一个点,其包含3个变量,即在空间中的三维坐标{x,y,z},构成大小为n*3的样本矩阵x:
18、
19、按列计算均值并计算标准差对样本矩阵进行标准化处理:
20、
21、
22、原始样本矩阵经过标准化后转换为标准化样本矩阵:
23、
24、计算标准化样本矩阵的协方差矩阵:
25、
26、计算协方差矩阵的特征值和特征向量,其中最大的特征值对应的向量为样本数据的主方向,第二大的特征值对应的向量为副方向。
27、所述箭头对象的坐标系以主方向为x轴,副方向为y轴,辅助方向为z轴建立。
28、所述步骤8具体为:
29、统计所有箭头集合
30、对于每个箭头遍历得到当前属于该对象的所有边缘线段集合其中i表示当前集合从属于第i个箭头,k代表该集合中边缘线段的个数;
31、对于每个进行双重循环遍历,每两条线段判断是否属于重叠关系,如果两条线段是重叠关系,则判断两条线的长短,设定短线为需删除的冗余线段,保留长线舍弃短线,其中,所述重叠关系的判断依据为:对于两条箭头线段alm,aln,如果alm的中点距离aln的距离小于设定阈值τdis,则认定该两条直线属于重叠关系,在slam中地图层面表示两条直线属于箭头的同一条边。
32、一种基于主成分分析的箭头对象重建装置,包括存储器、处理器,以及存储于所述存储器中的程序,所述处理器执行所述程序时实现如上述所述的方法。
33、一种存储介质,其上存储有程序,所述程序被执行时实现如上述所述的方法。
34、与现有技术相比,本发明具有以下有益效果:
35、(1)本发明以地下车库的箭头标识物为对象,根据边缘信息重建箭头,引入了具有六自由度的平面语义对象,并将箭头的边缘线段约束在所属箭头坐标系下的xoy平面内,随着更多的边缘线段被检测到,箭头平面的位姿与其在真实世界中位姿的误差会在优化中逐渐减小,从而实现对不同特征对象更准确的位姿估计和地图构建,提高了整体系统的精确性和鲁棒性。
36、(2)本发明能够有效地对冗余线段进行剔除,保留最长的边缘线段能够尽可能地还原箭头的3d结构,以便更好地理解箭头的形状和方向,并且通过剔除冗余线段,可以减少后续处理和分析的复杂性,降低数据处理的维度,并提供更清晰的特征信息,提高对箭头整体的识别,定位和姿态估计的准确性。
1.一种基于主成分分析的箭头对象重建方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述步骤1具体为:基于sam模型对采集的图像数据进行语义分割,得到场景中各个对象的id、矩形框和置信分数数据。
3.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述步骤2具体为:利用lsd算法提取箭头的特征线,并以lbd作为每个线特征的描述,提取得到箭头的边缘线段。
4.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述步骤3中,对提取的边缘线段进行语义划分具体为:根据边缘线段提取结果,结合步骤1中的语义分割结果,根据矩形框的大小,将在其内部的2d特征线判断为该箭头的边缘线段,对每一条箭头的边缘线段赋予两个性质:其是否从属于某个箭头以及所属箭头的id。
5.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述步骤4中,对边缘线段采样具体为:对提取的语义边缘线段进行3d化,并在地图中显示,按照预设步长进行线段采样。
6.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述步骤4中,主成分分析包括以下步骤:
7.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述箭头对象的坐标系以主方向为x轴,副方向为y轴,辅助方向为z轴建立。
8.根据权利要求1所述的一种基于主成分分析的箭头对象重建方法,其特征在于,所述步骤8具体为:
9.一种基于主成分分析的箭头对象重建装置,包括存储器、处理器,以及存储于所述存储器中的程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-8中任一所述的方法。
10.一种存储介质,其上存储有程序,其特征在于,所述程序被执行时实现如权利要求1-8中任一所述的方法。