CN111950370B - 动态环境下线拓展视觉里程计方法 - Google Patents

动态环境下线拓展视觉里程计方法 Download PDF

Info

Publication number
CN111950370B
CN111950370B CN202010662515.3A CN202010662515A CN111950370B CN 111950370 B CN111950370 B CN 111950370B CN 202010662515 A CN202010662515 A CN 202010662515A CN 111950370 B CN111950370 B CN 111950370B
Authority
CN
China
Prior art keywords
image
points
static
straight line
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.)
Active
Application number
CN202010662515.3A
Other languages
English (en)
Other versions
CN111950370A (zh
Inventor
胡章芳
杨勇
曾念文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202010662515.3A priority Critical patent/CN111950370B/zh
Publication of CN111950370A publication Critical patent/CN111950370A/zh
Application granted granted Critical
Publication of CN111950370B publication Critical patent/CN111950370B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/003Reconstruction from projections, e.g. tomography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • G06T7/248Analysis of motion using feature-based methods, e.g. the tracking of corners or segments involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods

Abstract

本发明请求保护一种动态环境下线拓展视觉里程计方法。具体步骤为:首先在图像序列中提取点特征计算初始位姿矩阵,根据初始位姿矩阵得到预测当前帧图像。通过相邻两帧图像和预测前帧图像进行光流和残差值计算,对动态特征点进行剔除。根据剩余静态特征点的共线关系进行静态直线拓展,构建共线匹配矩阵。通过剩余的静态特征点和静态直线特征进行BA优化,对相机位姿进行调整。在动态环境中的实验结果表明:相较于其他方法,本方法能有效降低跟踪误差,提高视觉里程计精度和鲁棒性,减少静态直线识别提取时间和静态直线匹配时间,满足实时应用的需求。

Description

动态环境下线拓展视觉里程计方法
技术领域
本发明属于移动机器人自主导航领域,特别是动态环境下线拓展视觉里程计方法。
背景技术
视觉里程计是利用单个或多个视觉传感器,通过依靠图像序列相邻时刻图像之间的匹配关系来估计载体的位姿。视觉传感器因相比激光传感器获取的环境信息丰富、易得、成本低等优点成为机器人领域的一个重要研究方向和研究热点。
然而为简化定位和建图问题,目前大部分视觉里程计方法假设环境是静态的,当动态物体在图像中占比较小可当噪声处理,而当动态物体在图像中占比较大时,此方法不适用,限制了视觉里程计的使用。如在基于特征视觉里程计中,通常使用随机抽样一致性(RANSAC)算法减少噪声和错误匹配对位姿估计的影响,然而当图像中的动态特征点数量超过静态特征点时,通过RANSAC难以将静态特征点作为噪声剔除,对位姿估计带来误差,使视觉里程计性能下降。因此如何有效区分图像中的动静态特征,成为动态场景中视觉里程计的研究重点。
线特征在结构化环境中较为丰富、受环境影响小,且与特征点相比,包含更丰富的环境结构信息。因此线特征开始广泛应用于视觉里程计中。点特征和直线特征的结合对相机位姿进行估计,避免了视觉里程计在低纹理情况下特征点过少而导致的跟踪误差增大。但由于直线特征相较于特征点结构更高级,其描述符也更复杂,在匹配直线时其计算量相较于点匹配要大得多,对系统的实时性是一个挑战。同时,在动态环境下,不可避免要对动态直线特征进行识别剔除,使系统更难满足实时要求。
发明内容
本发明旨在解决以上现有技术的问题。提出了一种提高视觉里程计在动态环境下的精度和鲁棒性,同时满足实时性要求的动态环境下线拓展视觉里程计方法。本发明的技术方案如下:
一种动态环境下线拓展视觉里程计方法,对动态物体上的动态特征点进行识别剔除,通过静态特征点的共线关系进行静态直线拓展,具体包括以下步骤:
S1,t时刻获取机器人帧图像,并提取机器人帧图像的点特征,将点特征进行匹配计算初始位姿矩阵,t-1时刻图像根据初始位姿矩阵得到预测t时刻图像;
S2,t时刻通过t时刻图像、t-1时刻图像和预测t时刻图像进行光流和残差值计算,对动态特征点进行剔除,得到静态特征点;
S3,以S2中的获得的静态特征点,通过寻找共线关系,进行静态直线线段拓展;
S4,根据拓展的直线线段矩形区域内的匹配特征点个数进行拓展直线线段匹配,并同时构建拓展直线线段匹配矩阵;
S5,通过静态特征点和静态拓展直线线段进行BA优化即最小化静态特征点和静态拓展直线线段的重投影误差。
进一步的,所述步骤S1获取机器人的帧图像,并提取机器人帧图像的点特征,将点特征进行匹配计算初始位姿矩阵,根据初始位姿矩阵得到预测当前帧图像,具体包括:
S11:在t时刻,机器人通过图像Ut提取快速特征点提取和描述(ORB)特征点,通过特征点匹配得到初始位姿估计θ=(R,T),R为旋转矩阵,T为平移矩阵;
S12:根据t时刻得到的初始位姿估计θt=(R,T)和上一时刻相机观测的地图点Xt-1,得到t时刻相机观测的预测地图点
Figure BDA0002579134930000021
将t时刻相机观测到的预测地图点
Figure BDA0002579134930000022
投影到t时刻图像上得到t时刻预测图像
Figure BDA0002579134930000023
Figure BDA0002579134930000024
Figure BDA0002579134930000025
其中,Π代表把地图点投影到图像上操作;T表示位移矩阵,x、y表示在t时刻图像上特征点的坐标,z表示特征点对应的深度。
进一步的,所述步骤S2通过t时刻图像、t-1时刻图像和预测t时刻图像进行光流和残差值计算,对动态特征点进行剔除,具体包括:
S13:根据t时刻图像Ut和上一时刻图像Ut-1计算光流,t时刻预测图像Ut和上一时刻图像Ut-1计算预测光流,公式如下:
Figure BDA0002579134930000031
Figure BDA0002579134930000032
Figure BDA0002579134930000033
表示t-1时刻到t时刻的光流
S14:根据光流,预测光流和深度值构建残差矩阵M,公式如下:
Figure BDA0002579134930000034
S15:得到残差值d=∑MTM,只有当特征点的残差值小于某一阈值ξ时,就可判定其为静态特征点,反之则为动态特征点。
进一步的,所述S3以S2中的获得的静态特征点,通过寻找共线关系,进行静态直线线段拓展,具体包括:
S21:关键帧插入时,使用直线检测算法(LSD),计算每个像素的level-line angle以构成一个level-line场,然后level-line场分割成若干个连通的直线矩形区域,得到当前关键帧的直线线段图像;
S22:共视关键帧生成的地图点都将投影到当前关键帧直线线段图像上,同时对部分不符合要求的投影点进行剔除:
S23:地图点经过上述筛选的特征点投影在LSD直线线段图像后,系统将读取特征点投影在线段图像上的灰度值,如果为0,意味着这个点没有投影到直线特征的矩形连通区域内。如果不是,则该点投影到直线特征的矩形连通区域内;
S24:在得到LSD直线线段时,还得到每条直线线段的总体Level-Line角度,根据特征点的Level-line角度和投影在该直线线段连通区域的总体Level-Line角度差值进行比较,若该像素点的Level-line角度与该连通区域的总体Level-line角度差值小于某一阈值τ,则可表示该特征点在LSD直线线段上;
S25:将直线线段集合Li中投影到线段矩形区域内地图点Xi小于2个的直线线段进行剔除,最后得到拓展的静态直线线段;
S26:搜索了所有静态特征点的共线的关系完成静态直线拓展后,如果在第i个关键帧上的直线线段集合Li中检测到矩形区域内有两个或多个特征点的直线线段li,j,并且在第m个关键帧上的线段集合Lm中找到相应的特征点的直线lm,n,则表示这两个直线线段是匹配,生成一个共线匹配矩阵来存储共线线段的匹配关系。
进一步的,所述步骤S22不符合要求的投影点进行剔除具体包括;1.投影在线段图像之外;2.当前关键帧视图射线v与地图点云平均视图方向n的夹角超过60度(v·n<cos60°);3.地图点到相机中心距离不在地图点云的尺度不变区间内;
进一步的,所述步骤S24LSD矩形连通区域的总体Level-Line角度如式所示:
Figure BDA0002579134930000041
sin(level-line_anglej)、cos(level-line_anglej)分别第j个像素处的Level-line角度的cos和sin值。
矩形连通区域内的某像素点的Level-Line方向跟该点的梯度方向垂直,图像中某像素点的梯度向量norm如式所示;
Figure BDA0002579134930000051
其中
Figure BDA0002579134930000052
Figure BDA0002579134930000053
Figure BDA0002579134930000054
Figure BDA0002579134930000055
Figure BDA0002579134930000056
分别表示在行方向和列方向的一阶偏导。
Figure BDA0002579134930000057
进一步的,所述S5,通过静态特征点和静态拓展直线线段进行BA优化即最小化静态特征点和静态拓展直线线段的重投影误差,具体包括:
S31:基于特征点的重投影误差,Xj∈R3为第j个地图点,在第i个关键帧上,这点投影在像平面上可表示为:
Figure BDA0002579134930000058
其中K是相机内参矩阵,θi=(Ri,ti)代表第i个关键帧的位姿,其点的重投影误差可定义为:
Figure BDA0002579134930000059
S32:基于线段的重投影误差,给定线段L,p,q∈R3为线段上的两个随机点,对直线L进行参数化,ph,qh为p,q在像平面投影的齐次坐标,由它们可得的归一化直线系数为:
Figure BDA0002579134930000061
其中ph=π(p,θ,K),qh=π(q,θ,K),π表示将地图点投影到像平面的操作,K是相机内参矩阵,θ=(R,T)代表位姿,R为旋转矩阵,T为平移矩阵;
pi,j,qi,j∈R3为第i个关键帧检测到的第j个直线线段上的两个随机点,它们在像平面投影的其次坐标
Figure BDA0002579134930000062
为:
Figure BDA0002579134930000063
ai,j,bi,j代表第i个关键帧检测到的第j个直线线段的端点,线段的重投影误差为直线li,j两端点ai,j,bi,j的重投影误差
Figure BDA0002579134930000064
之和:
Figure BDA0002579134930000065
其中li,j表示第i个关键帧检测到的第j个直线线段。
S33:基于共线关系的重投影误差,Xn为属于直线线段l={X1,X2,…,Xm}上的地图点,pl,ql∈R3为直线l上的两个随机点,其共线误差定义为:
Figure BDA0002579134930000066
S34:光束平差法的代价函数C为:
Figure BDA0002579134930000067
其中N表示线段上的特征点个数,若N大于等于阈值ξ时,最终光束平差法的代价函数C可只计算线投影误差和共线投影误差;小于阈值ξ,则加上ORB-SLAM自带的点投影误差。ρ代表鲁棒的Huber函数,
Figure BDA0002579134930000068
代表点特征得信息矩阵,
Figure BDA0002579134930000071
分别代表线段两端点的信息矩阵,
Figure BDA0002579134930000072
代表共线误差的信息矩阵。
进一步的,所述S5通过静态特征点和静态直线进行BA优化对位姿进行调整,当得到光束平差法的代价函数C后,通过最小二乘法求解,对机器人位姿进行调整,提高机器人在动态环境下的鲁棒性和精度。
本发明的优点及有益效果如下:
本发明针对目前大部分视觉里程计方法假设环境是静态的,当动态物体在图像中占比较大时,跟踪误差增大,限制了视觉里程计的使用的问题,提出动态环境下线拓展视觉里程计方法。该方法采用了光流方法。根据机器人当前时刻获取的图像提取ORB特征点进行初始位姿估计,根据初始位姿和上一时刻相机观测到的地图点计算当前时刻预测图像预测,根据当前时刻图像和上一时刻图像光流、当前时刻预测图像和上一时刻图像预测光流和深度值构成残差矩阵,通过残差矩阵求得残差值,根据残差值对动态目标上的动态特征点进行剔除。同时,对动态特征点的剔除,意味着可得静态特征点的减少,当动态物体在图像中占比较大时,得到的静态特征点过少,会增大视觉里程计的跟踪误差。因此,本发明在得到静态特征点的基础上,通过LSD直线检测寻找静态特征点的共线关系进行静态直线拓展,同时根据直线线段匹配特征点大于2个的构建共线匹配矩阵。最后根据静态特征点和静态直线进行BA优化,即对基于特征点的重投影误差、基于直线线段的重投影误差和基于共线关系的重投影误差通过最小二乘法求解,对位姿进行调整。提高视觉里程计在动态环境下的鲁棒性和精度。因为通过特征点的共线关键进行静态直线拓展和匹配,相较于直接对动态直线线段进行识别剔除,和静态直线匹配,节省了大量时间,使视觉里程计基本满足实时性要求。
附图说明
图1是本发明提供优选实施例动态环境下线拓展视觉里程计实现框架;
图2为动态特征点识别剔除过程;
图3为不同关键帧下特征点的共线关系示意图;
图4为基于线段的重投影误差示意图;
图5为基于共线关系的重投影示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、详细地描述。所描述的实施例仅仅是本发明的一部分实施例。
本发明解决上述技术问题的技术方案是:
本方法的主要步骤为:
S1,t时刻获取机器人帧图像,并提取机器人帧图像的点特征,将点特征进行匹配计算初始位姿矩阵,t-1时刻图像根据初始位姿矩阵得到预测t时刻图像;
S2,t时刻通过t时刻图像、t-1时刻图像和预测t时刻图像进行光流和残差值计算,对动态特征点进行剔除,得到静态特征点;
S3,以S2中的获得的静态特征点,通过寻找共线关系,进行静态直线线段拓展;
S4,根据拓展的直线线段矩形区域内的匹配特征点个数进行拓展直线线段匹配,并同时构建拓展直线线段匹配矩阵;
S5,通过静态特征点和静态拓展直线线段进行BA优化即最小化静态特征点和静态拓展直线线段的重投影误差。
步骤S1的具体实施过程为:
S11:t时刻,机器人通过图像Ut提取快速特征点提取和描述(ORB)特征点,通过特征点匹配得到初始位姿估计θ=(R,T),R为旋转矩阵,T为平移矩阵;
S12:根据t时刻得到的初始位姿估计θt=(R,T)和上一时刻相机观测的地图点Xt-1,可得到t时刻相机观测的预测地图点
Figure BDA0002579134930000091
将t时刻相机观测到的预测地图点
Figure BDA0002579134930000092
投影到t时刻图像上得到t时刻预测图像
Figure BDA0002579134930000093
Figure BDA0002579134930000094
Figure BDA0002579134930000095
其中,Π代表把地图点投影到图像上操作。T表示位移矩阵,x、y表示在t时刻图像上特征点的坐标,z表示特征点对应的深度。
S13:根据t时刻图像Ut和上一时刻图像Ut-1计算光流,t时刻预测图像Ut和上一时刻图像Ut-1计算预测光流,公式如下:
Figure BDA0002579134930000096
Figure BDA0002579134930000097
S14:根据光流,预测光流和深度值构建残差矩阵M,公式如下:
Figure BDA0002579134930000098
S15:得到残差值d=∑MTM,只有当特征点的残差值小于某一阈值ξ时,就可判定其为静态特征点,反之则为动态特征点。
步骤S2的具体实施过程为:
S21:关键帧插入时,使用直线检测算法(LSD),计算每个像素的level-line angle以构成一个level-line场,然后level-line场分割成若干个连通的直线矩形区域,得到当前关键帧的直线线段图像;
S22:共视关键帧生成的地图点都将投影到当前关键帧直线线段图像上,同时对以下情况的投影点进行剔除:1.投影在线段图像之外。2.当前关键帧视图射线v与地图点云平均视图方向n的夹角超过60度(v·n<cos60°)。3.地图点到相机中心距离不在地图点云的尺度不变区间内;
S23:地图点经过上述筛选的特征点投影在LSD直线线段图像后,系统将读取特征点投影在线段图像上的灰度值,如果为0,意味着这个点没有投影到直线特征的矩形连通区域内。如果不是,则该点投影到直线特征的矩形连通区域内;
S24:在得到LSD直线线段时,还可以得到每条直线线段的总体Level-Line角度,根据特征点的Level-line角度和投影在该直线线段连通区域的总体Level-Line角度差值进行比较,若该像素点的Level-line角度与该连通区域的总体Level-line角度差值小于某一阈值τ,则可表示该特征点在LSD直线线段上。
其中LSD矩形连通区域的总体Level-Line角度如式所示。
Figure BDA0002579134930000101
其中sin(level-line_anglje)、cos(level-line_anglej)分别第j个像素处的Level-line角度的cos和sin值。
矩形连通区域内的某像素点的Level-Line方向跟该点的梯度方向垂直,图像中某像素点的梯度向量norm如式所示。
Figure BDA0002579134930000102
其中
Figure BDA0002579134930000103
Figure BDA0002579134930000104
Figure BDA0002579134930000105
Figure BDA0002579134930000111
Figure BDA0002579134930000112
分别表示在行方向和列方向的一阶偏导。
Figure BDA0002579134930000113
S25:将直线线段集合Li中投影到线段矩形区域内地图点Xi小于2个的直线线段进行剔除,最后得到拓展的静态直线线段;
S26:搜索了所有静态特征点的共线的关系完成静态直线拓展后,如果在第i个关键帧上的直线线段集合Li中检测到矩形区域内有两个或多个特征点的直线线段li,j,并且在第m个关键帧上的线段集合Lm中找到相应的特征点的直线lm,n,则表示这两个直线线段是匹配,生成一个共线匹配矩阵来存储共线线段的匹配关系。
步骤S3的具体实施过程为:
S31:基于特征点的重投影误差,Xj∈R3为第j个地图点,在第i个关键帧上,这点投影在像平面上可表示为:
Figure BDA0002579134930000114
其中K是相机内参矩阵,θi=(Ri,ti)代表第i个关键帧的位姿,其点的重投影误差可定义为:
Figure BDA0002579134930000115
S32:基于线段的重投影误差,给定线段L,p,q∈R3为线段上的两个随机点,对直线L进行参数化,ph,qh为p,q在像平面投影的齐次坐标,由它们可得的归一化直线系数为:
Figure BDA0002579134930000116
其中ph=π(p,θ,K),qh=π(q,θ,K),π表示将地图点投影到像平面的操作,K是相机内参矩阵,θ=(R,T)代表位姿,R为旋转矩阵,T为平移矩阵。
pi,j,qi,j∈R3为第i个关键帧检测到的第j个直线线段上的两个随机点,它们在像平面投影的其次坐标
Figure BDA0002579134930000121
为:
Figure BDA0002579134930000122
ai,j,bi,j代表第i个关键帧检测到的第j个直线线段的端点,线段的重投影误差为直线li,j两端点ai,j,bi,j的重投影误差
Figure BDA0002579134930000123
之和为:
Figure BDA0002579134930000124
S33:基于共线关系的重投影误差,Xn为属于直线线段l={X1,X2,…,Xm}上的地图点,pl,ql∈R3为直线l上的两个随机点,其共线误差定义为:
Figure BDA0002579134930000125
S34:光束平差法的代价函数C为:
Figure BDA0002579134930000126
其中N表示线段上的特征点个数,若N大于等于阈值ξ时,最终光束平差法的代价函数C可只计算线投影误差和共线投影误差;小于阈值ξ,则加上ORB-SLAM自带的点投影误差。ρ代表鲁棒的Huber函数,
Figure BDA0002579134930000127
代表点特征得信息矩阵,
Figure BDA0002579134930000128
分别代表线段两端点的信息矩阵,
Figure BDA0002579134930000129
代表共线误差的信息矩阵。
步骤S4的具体实施过程为:
当得到光束平差法的代价函数C后,通过最小二乘法求解,对机器人位姿进行调整,提高机器人在动态环境下的鲁棒性和精度。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。

Claims (8)

1.一种动态环境下线拓展视觉里程计方法,其特征在于,对动态物体上的动态特征点进行识别剔除,通过静态特征点的共线关系进行静态直线拓展,具体包括以下步骤:
S1,t时刻获取机器人帧图像,并提取机器人帧图像的点特征,将点特征进行匹配计算初始位姿矩阵,t-1时刻图像根据初始位姿矩阵得到预测t时刻图像;
S2,t时刻通过t时刻图像、t-1时刻图像和预测t时刻图像进行光流和残差值计算,对动态特征点进行剔除,得到静态特征点;
S3,以S2中的获得的静态特征点,通过寻找共线关系,进行静态直线线段拓展;
S4,根据拓展的直线线段矩形区域内的匹配特征点个数进行拓展直线线段匹配,并同时构建拓展直线线段匹配矩阵;
S5,通过静态特征点和静态拓展直线线段进行BA优化即最小化静态特征点和静态拓展直线线段的重投影误差。
2.根据权利要求1所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述步骤S1 t时刻获取机器人帧图像,并提取机器人帧图像的点特征,将点特征进行匹配计算初始位姿矩阵,t-1时刻图像根据初始位姿矩阵得到预测t时刻图像,具体包括:
S11:t时刻,机器人通过图像Ut提取快速特征点提取和描述ORB特征点,通过特征点匹配得到初始位姿估计θ=(R,T),R为旋转矩阵,T为平移矩阵;
S12:根据t时刻得到的初始位姿估计θt=(R,T)和上一时刻相机观测的地图点Xt-1,得到t时刻相机观测的预测地图点
Figure FDA0003720682350000011
将t时刻相机观测到的预测地图点
Figure FDA0003720682350000012
投影到t时刻图像上得到t时刻预测图像
Figure FDA0003720682350000013
Figure FDA0003720682350000014
Figure FDA0003720682350000015
其中,Π代表把地图点投影到图像上操作;T表示位移矩阵,x、y表示在t时刻图像上特征点的坐标,z表示特征点对应的深度。
3.根据权利要求2所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述步骤S2通过t时刻图像、t-1时刻图像和预测t时刻图像进行光流和残差值计算,对动态特征点进行剔除,具体包括:
S13:根据t时刻图像Ut和上一时刻图像Ut-1计算光流,t时刻预测图像Ut和上一时刻图像Ut-1计算预测光流,公式如下:
Figure FDA0003720682350000021
Figure FDA0003720682350000022
Figure FDA0003720682350000023
表示t-1时刻到t时刻的光流
S14:根据光流,预测光流和深度值构建残差矩阵M,公式如下:
Figure FDA0003720682350000024
S15:得到残差值d=∑MTM,只有当特征点的残差值小于某一阈值λ时,就可判定其为静态特征点,反之则为动态特征点。
4.根据权利要求3所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述S3以S2中的获得的静态特征点,通过寻找共线关系,进行静态直线线段拓展,具体包括:
S21:关键帧插入时,使用直线检测算法(LSD),计算每个像素的level-line angle以构成一个level-line场,然后level-line场分割成若干个连通的直线矩形区域,得到当前关键帧的直线线段图像;
S22:共视关键帧生成的地图点都将投影到当前关键帧直线线段图像上,同时对部分不符合要求的投影点进行剔除:
S23:地图点经过上述筛选的特征点投影在LSD直线线段图像后,系统将读取特征点投影在线段图像上的灰度值,如果为0,意味着这个点没有投影到直线特征的矩形连通区域内;如果不是,则该点投影到直线特征的矩形连通区域内;
S24:在得到LSD直线线段时,还得到每条直线线段的总体Level-Line角度,根据特征点的Level-line角度和投影在该直线线段连通区域的总体Level-Line角度差值进行比较,若该像素点的Level-line角度与该连通区域的总体Level-line角度差值小于某一阈值τ,则可表示该特征点在LSD直线线段上;
S25:将直线线段集合Li中投影到线段矩形区域内地图点Xi小于2个的直线线段进行剔除,最后得到拓展的静态直线线段;
S26:搜索了所有静态特征点的共线的关系完成静态直线拓展后,如果在第i个关键帧上的直线线段集合Li中检测到矩形区域内有两个或多个特征点的直线线段li,j,并且在第m个关键帧上的线段集合Lm中找到相应的特征点的直线lm,n,则表示这两个直线线段是匹配,生成一个共线匹配矩阵来存储共线线段的匹配关系。
5.根据权利要求4所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述步骤S22不符合要求的投影点进行剔除具体包括;1.投影在线段图像之外;2.当前关键帧视图射线v与地图点云平均视图方向n的夹角超过60度,v·n<cos60°;3.地图点到相机中心距离不在地图点云的尺度不变区间内。
6.根据权利要求4所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述步骤S24 LSD矩形连通区域的总体Level-Line角度如式所示:
Figure FDA0003720682350000031
sin(level-line_anglej)、cos(level-line_anglej)分别第j个像素处的Level-line角度的cos和sin值;
矩形连通区域内的某像素点的Level-Line方向跟该点的梯度方向垂直,图像中某像素点的梯度向量norm如式所示;
Figure FDA0003720682350000041
其中
Figure FDA0003720682350000042
Figure FDA0003720682350000043
Figure FDA0003720682350000044
Figure FDA0003720682350000045
Figure FDA0003720682350000046
分别表示在行方向和列方向的一阶偏导;
Figure FDA0003720682350000047
7.根据权利要求6所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述S5,通过静态特征点和静态拓展直线线段进行BA优化即最小化静态特征点和静态拓展直线线段的重投影误差,具体包括:
S31:基于特征点的重投影误差,Xj∈R3为第j个地图点,在第i个关键帧上,这点投影在像平面上可表示为:
Figure FDA0003720682350000048
其中K是相机内参矩阵,θi=(Ri,ti)代表第i个关键帧的位姿,其点的重投影误差可定义为:
Figure FDA0003720682350000049
S32:基于线段的重投影误差,给定线段L,p,q∈R3为线段上的两个随机点,对直线L进行参数化,ph,qh为p,q在像平面投影的齐次坐标,由它们可得的归一化直线系数为:
Figure FDA0003720682350000051
其中ph=π(p,θ,K),qh=π(q,θ,K),π表示将地图点投影到像平面的操作,K是相机内参矩阵,θ=(R,T)代表位姿,R为旋转矩阵,T为平移矩阵;
pi,j,qi,j∈R3为第i个关键帧检测到的第j个直线线段上的两个随机点,它们在像平面投影的其次坐标
Figure FDA0003720682350000052
为:
Figure FDA0003720682350000053
ai,j,bi,j代表第i个关键帧检测到的第j个直线线段的端点,线段的重投影误差为直线li,j两端点ai,j,bi,j的重投影误差
Figure FDA0003720682350000054
之和:
Figure FDA0003720682350000055
其中li,j表示第i个关键帧检测到的第j个直线线段,
S33:基于共线关系的重投影误差,Xn为属于直线线段l={X1,X2,…,Xm}上的地图点,pl,ql∈R3为直线l上的两个随机点,其共线误差定义为:
Figure FDA0003720682350000056
S34:光束平差法的代价函数C为:
Figure FDA0003720682350000057
其中N表示线段上的特征点个数,若N大于等于阈值ξ时,最终光束平差法的代价函数C可只计算线投影误差和共线投影误差;小于阈值ξ,则加上ORB-SLAM自带的点投影误差;ρ代表鲁棒的Huber函数,
Figure FDA0003720682350000061
代表点特征得信息矩阵,
Figure FDA0003720682350000062
分别代表线段两端点的信息矩阵,
Figure FDA0003720682350000063
代表共线误差的信息矩阵。
8.根据权利要求7所述的一种动态环境下线拓展视觉里程计方法,其特征在于,所述S5通过静态特征点和静态直线进行BA优化对位姿进行调整,当得到光束平差法的代价函数C后,通过最小二乘法求解,对机器人位姿进行调整,提高机器人在动态环境下的鲁棒性和精度。
CN202010662515.3A 2020-07-10 2020-07-10 动态环境下线拓展视觉里程计方法 Active CN111950370B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010662515.3A CN111950370B (zh) 2020-07-10 2020-07-10 动态环境下线拓展视觉里程计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010662515.3A CN111950370B (zh) 2020-07-10 2020-07-10 动态环境下线拓展视觉里程计方法

Publications (2)

Publication Number Publication Date
CN111950370A CN111950370A (zh) 2020-11-17
CN111950370B true CN111950370B (zh) 2022-08-26

Family

ID=73341744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010662515.3A Active CN111950370B (zh) 2020-07-10 2020-07-10 动态环境下线拓展视觉里程计方法

Country Status (1)

Country Link
CN (1) CN111950370B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112991388B (zh) * 2021-03-11 2023-06-27 中国科学院自动化研究所 基于光流跟踪预测和凸几何距离的线段特征跟踪方法
CN113012197B (zh) * 2021-03-19 2023-07-18 华南理工大学 一种适用于动态交通场景的双目视觉里程计定位方法
CN113313112B (zh) * 2021-05-31 2023-02-07 浙江商汤科技开发有限公司 一种图像处理方法、装置、计算机设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036542A (zh) * 2014-05-21 2014-09-10 北京信息科技大学 一种基于空间光线聚集性的像面特征点匹配方法
CN104180818A (zh) * 2014-08-12 2014-12-03 北京理工大学 一种单目视觉里程计算装置
CN104240297A (zh) * 2014-09-02 2014-12-24 东南大学 一种救援机器人三维环境地图实时构建方法
WO2019068699A1 (en) * 2017-10-06 2019-04-11 Connaught Electronics Ltd. METHOD FOR CLASSIFYING AN OBJECT POINT AS STATIC OR DYNAMIC, DRIVER ASSISTANCE SYSTEM, AND MOTOR VEHICLE
CN110619663A (zh) * 2019-08-28 2019-12-27 山东科技大学 一种基于三维激光点云的视频影像目标定位方法
CN110838145A (zh) * 2019-10-09 2020-02-25 西安理工大学 一种室内动态场景的视觉定位与建图方法
CN111260725A (zh) * 2020-01-15 2020-06-09 浙江大学 一种面向动态环境的轮速计辅助的视觉里程计方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101926563B1 (ko) * 2012-01-18 2018-12-07 삼성전자주식회사 카메라 추적을 위한 방법 및 장치
US10371530B2 (en) * 2017-01-04 2019-08-06 Qualcomm Incorporated Systems and methods for using a global positioning system velocity in visual-inertial odometry

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036542A (zh) * 2014-05-21 2014-09-10 北京信息科技大学 一种基于空间光线聚集性的像面特征点匹配方法
CN104180818A (zh) * 2014-08-12 2014-12-03 北京理工大学 一种单目视觉里程计算装置
CN104240297A (zh) * 2014-09-02 2014-12-24 东南大学 一种救援机器人三维环境地图实时构建方法
WO2019068699A1 (en) * 2017-10-06 2019-04-11 Connaught Electronics Ltd. METHOD FOR CLASSIFYING AN OBJECT POINT AS STATIC OR DYNAMIC, DRIVER ASSISTANCE SYSTEM, AND MOTOR VEHICLE
CN110619663A (zh) * 2019-08-28 2019-12-27 山东科技大学 一种基于三维激光点云的视频影像目标定位方法
CN110838145A (zh) * 2019-10-09 2020-02-25 西安理工大学 一种室内动态场景的视觉定位与建图方法
CN111260725A (zh) * 2020-01-15 2020-06-09 浙江大学 一种面向动态环境的轮速计辅助的视觉里程计方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
动态场景下一种鲁棒的立体视觉里程计算法;张合新等;《仪器仪表学报》;20180915(第09期);第249-257页 *
动态环境下改进ICP算法的RGB-D SLAM研究;邢广鑫等;《重庆工商大学学报(自然科学版)》;20200609(第03期);第84-90页 *
基于光束平差法的双目视觉里程计研究;罗杨宇等;《控制与决策》;20161115(第11期);第1936-1944页 *

Also Published As

Publication number Publication date
CN111950370A (zh) 2020-11-17

Similar Documents

Publication Publication Date Title
CN111462200B (zh) 一种跨视频行人定位追踪方法、系统及设备
CN110322500B (zh) 即时定位与地图构建的优化方法及装置、介质和电子设备
CN111950370B (zh) 动态环境下线拓展视觉里程计方法
CN109345588B (zh) 一种基于Tag的六自由度姿态估计方法
CN108960211B (zh) 一种多目标人体姿态检测方法以及系统
CN104200495B (zh) 一种视频监控中的多目标跟踪方法
TWI770420B (zh) 車輛事故的鑑定方法及裝置、電子設備
US11205276B2 (en) Object tracking method, object tracking device, electronic device and storage medium
US20150036888A1 (en) Sequential rolling bundle adjustment
CN110349212B (zh) 即时定位与地图构建的优化方法及装置、介质和电子设备
CN113447923A (zh) 目标检测方法、装置、系统、电子设备及存储介质
CN112465877B (zh) 一种基于运动状态估计的卡尔曼滤波视觉追踪稳定方法
WO2009035183A1 (en) Method for self localization using parallel projection model
CN110634137A (zh) 一种基于视觉感知的桥梁变形的监测方法、装置及设备
CN112198878B (zh) 一种即时地图构建方法、装置、机器人及存储介质
CN114782499A (zh) 一种基于光流和视图几何约束的图像静态区域提取方法及装置
CN111932582A (zh) 一种视频图像中的目标跟踪方法及装置
CN114089329A (zh) 一种基于长短焦相机与毫米波雷达融合的目标检测方法
CN110942473A (zh) 一种基于特征点网格化匹配的运动目标跟踪检测方法
CN112652020A (zh) 一种基于AdaLAM算法的视觉SLAM方法
Jung et al. Object detection and tracking-based camera calibration for normalized human height estimation
CN114119659A (zh) 一种多传感器融合的目标跟踪方法
WO2023130842A1 (zh) 一种相机位姿确定方法和装置
CN111598956A (zh) 标定方法、装置和系统
CN116128919A (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
GR01 Patent grant
GR01 Patent grant