一种基于实例分割的动态环境下视觉SLAM方法技术

技术编号:33652254 阅读:12 留言:0更新日期:2022-06-02 20:30
本发明专利技术提供了一种基于实例分割的动态环境下视觉SLAM方法,主要解动态环境下视觉SLAM方法位姿估计精度收到严重干扰的问题。该方法引入SOLOV2实例分割模块,它作为独立的模块处理输入图像,输出实例分割结果。基于HTTP通讯协议设计了两者之间数据传输方式,从而较为简单地部署实例分割方法。实例分割结果以遮罩地形式存储下来,并且为了节约内存使用,按RLE格式进行压缩。将图像、深度图像和实例分割结果作为输入,设计一种人与物体连接检测方法,用于识别半静态目标。基于语义先验信息和半静态目标检测结果,分离出动态目标和静态目标,去除动态对象上取得的特征点后,估计得到的轨迹的精度有了明显的提高。的精度有了明显的提高。的精度有了明显的提高。

【技术实现步骤摘要】
一种基于实例分割的动态环境下视觉SLAM方法


[0001]本专利技术属于计算机视觉、机器人、自动化、人工智能交叉领域,具体涉及一种基于实例分割的动态环境下视觉SLAM方法。

技术介绍

[0002]Simultaneous Localization And Mapping(SLAM),同时定位与地图构建是移动机器人领域研究的热门问题。它的两个主要目标是定位和建图。定位即确定机器人自身的状态,包含位置,姿态等信息;建图则是构建机器人周边的环境信息描述。SLAM系统可以使用多种传感器,比如激光雷达、相机、IMU、GPS等等。本文讨论的是视觉SLAM即通过处理相机取得的图像信息实现定位、建图目标。视觉SLAM在增强现实、虚拟现实、家用扫地机器、无人机导航、自动驾驶等领域都发挥着重要的作用。
[0003]目前主流的SLAM技术在静态环境中已经取得成熟稳定的使用效果,所谓静态环境是指相机视野中的物体不发生移动。但是这样的静态环境假设在真实环境中是失效的,移动的物体如行人、车辆等都是日常环境中频繁出现的物体。另外光照的变化如相机从暗环境进入亮环境导致的自动曝光参数变化、昼夜变化带来的光源变化等都会给相机位姿估计带来严重的干扰。在一些文章中动态环境(Dynamic Environment)指含有动态物体的环境,在另一些文章中则指光照变化的环境,本文主要指含有动态物体的环境。目前针对动态环境进行处理的主要思路是在SLAM引入深度学习技术,对图像进行信息提取,如语义分割、实例分割。通过去除环境中的动态物体,可以减少其对位姿估计的影响。但是目前普遍存在分割精度与速度不佳、深度学习网络部署困难、忽略半静态物体的影响等问题。

技术实现思路

[0004]本专利技术的目的在于提供利用实例分割结果对运动物体的干扰进行处理,明显提高位姿估计精度的一种基于实例分割的动态环境下视觉SLAM方法。
[0005]一种基于实例分割的动态环境下视觉SLAM方法,包括以下步骤:
[0006]步骤1:读取图片序列,存储为矩阵格式,基于HTTP通讯协议将数据发送至实例分割模块;
[0007]步骤2:在实例分割模块中,接收图片矩阵并送入SOLOV2网络中进行预测,得到的结果压缩后以JSON格式返回给主程序;
[0008]步骤3:将图片信息、深度信息、实例分割结果送入人与物体连接检测方法,检测出半静态物体;
[0009]步骤4:利用先验信息、半静态物体检测结果划分图片中的动静态物体;
[0010]步骤5:从图片中提取ORB特征点;
[0011]步骤6:根据动静态物体划分结果删除动态物体上提取的ORB特征点;
[0012]步骤7:在帧之间进行特征点匹配,跟踪特征点;
[0013]步骤8:采用EPNP方法求解相机位姿,记录每个时刻相机位姿,得到相机轨迹。
[0014]进一步地,所述步骤1具体为:
[0015]利用开源的Opencv库,将图像数据存储为矩阵形式;将实例分割网络SOLOV2作为独立的模块,为了保证独立模块与SLAM程序异步运行,基于HTTP(Hyper Text Transfer Protocol,超文本传输协议)将图像数据发送至实例分割模块。
[0016]进一步地,所述步骤2具体为:
[0017]在实例分割模块中,启动服务器等待SLAM程序请求传输的图像,对结果按RLE(run

length encoding),即游程编码方式进行压缩,00000111100111110...就可以压缩成54251...,在没有损失的情况下大幅度压缩了内存占用,然后以JSON((JavaScript Object Notation))方法返回分割结果给主程序。
[0018]进一步地,所述步骤3具体为:
[0019]首先,以边缘像素为中心,设置半径为3个像素,得到了一个含有16个像素的圆。其次,检查每个像素,它的位置是否有另一个遮罩,并且它的深度值是否接近中心像素的深度值。如果超过10个像素满足要求,则记录这个边缘像素存在与人与物体的连接。如果找到大于10个的这样的边缘像素,记录有一个与人连接的遮罩。将该遮罩的类别设置为动态物体,然后删除其中的特征点。
[0020]进一步地,所述步骤4具体为:
[0021]将人看作是动态物体;动物类标签:猫、狗鸟等,交通工具类:汽车、火车、飞机等也认为是动态物体;最后检测出的半静态物体的类别,在检测出的帧之中也看作是动态物体。
[0022]进一步地,所述步骤5具体为:
[0023]在图片中分区提取ORB特征点,在提取数量不足的地区可以降低特征点质量,并且利用四叉树对提取到的ORB特征点进行裁剪。
[0024]进一步地,所述步骤6具体为:
[0025]根据动静态物体划分结果,将图像中的物体划分为动态物体和静态物体两类,去除动态物体遮罩中的特征点,即可仅保留静态环境中的特征点。
[0026]进一步地,所述步骤7具体为:
[0027]在帧之间进行特征点匹配,使用随机抽样一致方法去除错误的匹配点对。RANSAC方法具体步骤如下:
[0028]步骤7.1:在数据集中随机地挑选出4组不共线的特征点对,计算出变换矩阵H;
[0029]步骤7.2:将得到的模型作为测试模板,逐一测试其它的数据点,如果误差在阈值内,该点被认为是一个内点。具有最多内部点的模型是最佳模型并保持该模型;
[0030]步骤7.3:往复执行步骤1,2,并在迭代次数达到一定次数后,使用模型的内部点来求解最终的模型参数;
[0031]步骤7.4:最后估计局内点和模型的错误率对最终模型进行评估。
[0032]对H矩阵的计算:
[0033][0034]其中(x,y)表示目标图像角点位置,(x',y')为场景图像角点位置,s为尺度参数。
[0035][0036]进一步地,所述步骤8具体为:
[0037]去除了在动态物体上取得的特征点后,仅使用静态物体与环境的特征点进行位姿估计。在两帧之间进行特征点匹配后,利用这些特征点对进行相机的位姿估计。使用的方法是EPnP,更加充分地利用点的信息,降低数据噪声的负面影响。记录每个时刻相机位姿,得到相机轨迹。
[0038]每个点都可以由4个控制点表示成如下的形式:
[0039][0040]相机坐标系:
[0041][0042]对已知的控制点坐标进行坐标系间的转换:
[0043][0044]记将三个方程化简成两个方程:
[0045][0046][0047]为3D参考点,上标表示它们在不同的坐标系下,其中w是世界(world)的缩写,c是相机(camera)的缩写。4个选出的控制点,在不同坐标下分别为上标字母含义和3D参考点相同。
[0048]利用点在外参变换后,点之间的空间关系不改变的约束:用以确认最
[0049]终控制点在相机坐标系下的坐标。
[0050]本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于实例分割的动态环境下视觉SLAM方法,其特征在于,包括以下步骤:步骤1:读取图片序列,存储为矩阵格式,基于HTTP通讯协议将数据发送至实例分割模块;步骤2:在实例分割模块中,接收图片矩阵并送入SOLOV2网络中进行预测,得到的结果压缩后以JSON格式返回给主程序;步骤3:将图片信息、深度信息、实例分割结果送入人与物体连接检测方法,检测出半静态物体;步骤4:利用先验信息、半静态物体检测结果划分图片中的动静态物体;步骤5:从图片中提取ORB特征点;步骤6:根据动静态物体划分结果删除动态物体上提取的ORB特征点;步骤7:在帧之间进行特征点匹配,跟踪特征点;步骤8:采用EPNP方法求解相机位姿,记录每个时刻相机位姿,得到相机轨迹。2.根据权利要求1所述的一种基于实例分割的动态环境下视觉SLAM方法,其特征在于,所述步骤1具体为:利用开源的Opencv库,将图像数据存储为矩阵形式;将实例分割网络SOLOV2作为独立的模块,为了保证独立模块与SLAM程序异步运行,基于HTTP(Hyper Text Transfer Protocol,超文本传输协议)将图像数据发送至实例分割模块。3.根据权利要求1所述的一种基于实例分割的动态环境下视觉SLAM方法,其特征在于,所述步骤2具体为:在实例分割模块中,启动服务器等待SLAM程序请求传输的图像,对结果按RLE(run

length encoding),即游程编码方式进行压缩,00000111100111110...就可以压缩成54251...,在没有损失的情况下大幅度压缩了内存占用,然后以JSON((JavaScript Object Notation))方法返回分割结果给主程序。4.根据权利要求1所述的一种基于实例分割的动态环境下视觉SLAM方法,其特征在于,所述步骤3具体为:首先,以边缘像素为中心,设置半径为3个像素,得到了一个含有16个像素的圆。其次,检查每个像素,它的位置是否有另一个遮罩,并且它的深度值是否接近中心像素的深度值。如果超过10个像素满足要求,则记录这个边缘像素存在与人与物体的连接。如果找到大于10个的这样的边缘像素,记录有一个与人连接的遮罩。将该遮罩的类别设置为动态物体,然后删除其中的特征点。5.根据权利要求1所述的一种基于实例分割的动态环境下视觉SLAM方法,其特征在于,所述步骤4具体为:将人看作是动态物体;动物类标签:猫、狗...

【专利技术属性】
技术研发人员:黄平曹镇王伟薛冰
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1