CN109815966A - 一种基于改进sift算法的移动机器人视觉里程计实现方法 - Google Patents
一种基于改进sift算法的移动机器人视觉里程计实现方法 Download PDFInfo
- Publication number
- CN109815966A CN109815966A CN201910139665.3A CN201910139665A CN109815966A CN 109815966 A CN109815966 A CN 109815966A CN 201910139665 A CN201910139665 A CN 201910139665A CN 109815966 A CN109815966 A CN 109815966A
- Authority
- CN
- China
- Prior art keywords
- feature
- mobile robot
- matching
- points
- feature points
- 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
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000000007 visual effect Effects 0.000 title claims abstract description 17
- 230000008569 process Effects 0.000 claims abstract description 7
- 238000001514 detection method Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000006872 improvement Effects 0.000 claims description 3
- 238000013519 translation Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 claims 1
- 230000004807 localization Effects 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于改进SIFT算法的移动机器人视觉里程计实现方法。通过安装在移动机器人上的深度相机机器人前方视场环境进信息采集,获取移动机器人前方视场环境中的空间点的二维图像信息和三维坐标信息;利用改进SIFT特征匹配算法,处理获得初步匹配的匹配点对;利用随机一致性算法剔除候选特征点中的误匹配点,得到精确匹配的匹配点对;利用精确匹配的匹配点对求解移动机器人运动参数。本发明方法使用深度相机进行信息采集,能够直接获取空间点的三维信息,并利用改进的SIFT特征匹配算法进行特征点匹配,从而显著提高移动机器人定位的效率和准确性。
Description
技术领域
本发明涉及了一种移动机器人自主导航技术领域,特别涉及了一种基于改进SIFT算法的移动机器人视觉里程计实现方法。
背景技术
近年来,移动机器人得到快速的发展和使用,渗透到生活的各个领域。在传统的自定位方法中,基于轮式里程计的自定位方法,由于存在轮子侧滑的现象而导致结果上的漂移,基于声呐和超声波传感的方法,因为两者均为有源传感器,相互干扰,基于GPS的定位方法,在信号弱的封闭地区,无法进行定位。由于相关技术的限制,目前对于移动机器人自定位,还没有相对成熟稳定的解决方案。
视觉里程计通过采集并分析图像序列,来确定移动机器人的自定位问题,可以弥补传统的自定位方法存在的问题,增强移动机器人定位的效率和精度。随着低成本深度相机的推出,深度相机已经越来越多的用于移动机器人定位与导航。不同于传统的视觉里程计,深度相机可以获取空间点的二维图像信息和三维坐标信息,避免了单目里程计需要多次变换坐标系并经过大量计算才能求解出空间点的三维坐标的问题,提高了计算的速度与精度。
发明内容
为了解决现有技术的缺点与不足,本发明提供一种基于改进SIFT算法的移动机器人视觉里程计实现方法。
本发明的目的通过以下步骤的技术方案实现:
1)通过安装在移动机器人上的深度相机对移动机器人前方视场环境进信息采集,获取移动机器人前方视场环境中的空间点的二维图像信息和三维坐标信息;
2)对步骤1)获取的二维图像信息,利用改进SIFT特征匹配算法,处理获得初步匹配的匹配点对;
3)对步骤2)获取的初步匹配的特征点对,利用随机一致性算法(RANSAC)剔除候选特征点中的误匹配点,得到精确匹配的匹配点对;
4)利用精确匹配的匹配点对求解移动机器人的运动参数。
所述步骤2)具体为:首先进行特征点检测;其次对获取的特征点进行二值化的特征点描述;以二值化的特征点描述对相邻两幅图像间的特征点进行粗匹配,获取初步匹配的匹配点对。
所述步骤2)改进SIFT特征匹配算法具体包括以下步骤:
2.1)进行特征点检测:由二维图像建立二维图像空间,接着由二维图像进行降采样处理后再和高斯核函数进行卷积处理获得不同图像尺寸的采样图像并构成高斯尺度空间,然后由高斯尺度空间中的每相邻两层采样图像作差得到不同的DoG尺度图像并构成了DoG尺度空间,在DoG尺度空间中检测极值点(Blob)作为特征点;且在针对DoG尺度空间中的每个像素点进行检测极值点时,每个像素点与同尺度的DoG尺度图像中的8个相邻像素点和上、下相邻尺度的DoG尺度图像中的各9×2像素点的共计26个像素点进行比较,这样能确保在尺度空间和二维图像空间中均能检测到极值点;
2.2)对获取的特征点进行特征点描述得到特征点的梯度特征向量,将特征点的梯度特征向量进行二值化,获得二值化梯度特征向量,具体公式为:
其中,a为二值化阈值,f表示特征点的梯度特征向量,f=[f1,f2...f128],fi表示梯度特征向量中的第i个梯度信息,fi∈f,bi表示二值化后的第i个梯度信息;
2.3)通过上述步骤2.1)-2.2)获得每一幅图像的特征点并二值化描述处理,对相邻两帧图像间的特征点进行粗匹配,获取候选特征点:对相邻两帧图像,采用特征点的二值化梯度特征向量间的欧式距离作为两帧图像中特征点相似性的判定度量,取两帧图像中特征点的二值化梯度特征向量间的欧式距离最近的一对特征点和欧式距离次近的一对特征点,在这两对特征点中,如果最近的欧式距离除以次近的欧式距离少于预设比例阈值,则判断欧式距离最近的一对特征点相似,作为匹配点对,舍去欧式距离次近的一对特征点;
2.4)重复上述步骤2.2)过程,直到得到两帧图像中满足条件的所有匹配点对。
通过上述改进SIFT特征匹配算法这样处理后能大大减少数据表征计算量,既能保证匹配点获得的准确性,又能缩短匹配计算中的时间。
所述步骤4)中,求解移动机器人的运动参数的计算方式如下:
4.1)首先建立如下移动机器人运动参数公式:
4.2)然后构建残差平方和函数min{R,T},用最小二乘法求解获得目标函数最小时的旋转矩阵R和平移向量T:
min{R,T}=||Pqj-(RPpj+T)||2
式中,Ppj和Pqj分别为相邻两帧序列图像中匹配点对的两个特征点对应的三维坐标,由步骤 3)得到的精确匹配的特征点和步骤1)获取的三维坐标信息结合得到;下角标p代表前一帧图像,下角标q代表后一帧图像,j为精确匹配的匹配点对的序数,x,y,z代表三维坐标;
所述的深度相机采用real senseD435深度相机。
本发明仅使用real senseD435深度相机进行信息采集,并且可以直接获取空间点的三维坐标信息。
不同于传统的视觉里程计使用的SIFT算法在特征点描述阶段消耗了大量的时间,存在实时性差的问题,本发明利用改进的SIFT特征匹配算法进行特征点匹配,将SIFT特征向量进行二值化,从而显著提高移动机器人定位的效率。
本发明与现有技术相比,具有如下优点和有益效果:
1、本发明采用real senseD435深度相机获取空间点的二维图像信息和三维坐标信息,避免了单目里程计需要多次变换坐标系并经过大量计算才能求解出空间点的三维坐标,提高了计算的速度与精度。
2、本发明提出将SIFT特征向量进行二值化,在实现提高保证检测精度的同时,解决了传统视觉里程计使用SIFT算法在特征点描述阶段消耗大量时间,进而导致实时性差的问题。
附图说明
图1是本发明方法的逻辑流程图。
具体实施方式
下面结合附图说明及具体实施方式对本发明作进一步说明。
如图1所示,本发明的具体实施例如下:
1)通过安装在移动机器人上的real senseD435深度相机对移动机器人前方视场环境进信息采集,获取移动机器人前方视场环境中的空间点的二维图像信息和三维坐标信息;
2)对步骤1)获取的二维图像信息,利用改进SIFT特征匹配算法,处理获得初步匹配的匹配点对:
2.1)进行特征点检测:由二维图像建立二维图像空间,接着由二维图像进行降采样处理后再和高斯核函数进行卷积处理获得不同图像尺寸的采样图像并构成高斯尺度空间,然后由高斯尺度空间中的每相邻两层采样图像作差得到不同的DoG尺度图像并构成了DoG尺度空间,在DoG尺度空间中检测极值点(Blob)作为特征点;且在针对DoG尺度空间中的每个像素点进行检测极值点时,每个像素点与同尺度的DoG尺度图像中的8个相邻像素点和上、下相邻尺度的DoG尺度图像中的各9×2像素点的共计26个像素点进行比较,这样能确保在尺度空间和二维图像空间中均能检测到极值点;
2.2)对获取的特征点进行特征点描述得到特征点的梯度特征向量,将特征点的梯度特征向量进行二值化,获得二值化梯度特征向量,具体公式为:
其中,a为二值化阈值,f表示特征点的梯度特征向量,f=[f1,f2...f128],fi表示梯度特征向量中的第i个梯度信息,fi∈f,bi表示二值化后的第i个梯度信息;
2.3)通过上述步骤2.1)-2.2)获得每一幅图像的特征点并二值化描述处理,对相邻两帧图像间的特征点进行粗匹配,获取候选特征点:对相邻两帧图像,采用特征点的二值化梯度特征向量间的欧式距离作为两帧图像中特征点相似性的判定度量,取两帧图像中特征点的二值化梯度特征向量间的欧式距离最近的一对特征点和欧式距离次近的一对特征点,在这两对特征点中,如果最近的欧式距离除以次近的欧式距离少于预设比例阈值,则判断欧式距离最近的一对特征点相似,作为匹配点对,舍去欧式距离次近的一对特征点;
2.4)重复上述步骤2.2)过程,直到得到两帧图像中满足条件的所有匹配点对。
3)对步骤2)获取的初步匹配的特征点对,利用随机一致性算法(RANSAC)剔除候选特征点中的误匹配点,得到精确匹配的匹配点对;
4)利用精确匹配的匹配点对求解移动机器人运动参数:
4.1)首先建立如下方程组:
4.2)然后构建残差平方和函数min{R,T},用最小二乘法求解获得目标函数最小时的旋转矩阵R和平移向量T:
min{R,T}=||Pqj-(RPpj+T)||2
式中,Ppj和Pqj分别为相邻两帧序列图像中匹配点对的两个特征点对应的三维坐标,由步骤3)得到的精确匹配的特征点和步骤1)获取的三维坐标信息结合得到;下角标p代表前一帧图像,下角标q代表后一帧图像,j为精确匹配的匹配点对的序数,x,y,z代表三维坐标。
本实施例首先利用深度相机采集的相邻的两帧序列图像,共进行三组特征提取与特征匹配的对比实验,得到原SIFT特征匹配算法所需的时间与改进后的算法匹配时间对比如表1 所示。
表1
由表1所得,改进的SIFT算法在实现提高保证检测精度的同时,大大缩短了匹配所消耗的时间。解决了传统视觉里程计使用SIFT匹配算法消耗大量时间,进而导致实时性差的问题,提高了移动机器人定位的效率。
本实施例然后针对深度相机采集的相邻的两帧序列图像,求解移动机器人的运动参数,求解出的变换结果如下(单位:m):
T=[-0.0351 0.0423 0.282]T
根据里程计记录,相机实际转动角度为6°,移动为x=0.04m,y=0.04m,z=0.3m。由上述解算结果,得出最大绝对误差为0.018m,相对误差为5%,误差在允许范围,说明本发明方法用于移动机器人定位较为准确。
以上,仅为本发明较佳的具体实施方式;但本发明的保护范围并不局限于此。任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其改进构思加以等同替换或改变,都应涵盖在本发明的保护。
Claims (5)
1.一种基于改进SIFT算法的移动机器人视觉里程计实现方法,其特征在于,包括以下步骤:
1)通过安装在移动机器人上的深度相机对移动机器人前方视场环境进信息采集,获取移动机器人前方视场环境中的空间点的二维图像信息和三维坐标信息;
2)对步骤1)获取的二维图像信息,利用改进SIFT特征匹配算法,处理获得初步匹配的匹配点对;
3)对步骤2)获取的初步匹配的特征点对,利用随机一致性算法(RANSAC)剔除候选特征点中的误匹配点,得到精确匹配的匹配点对;
4)利用精确匹配的匹配点对求解移动机器人的运动参数。
2.根据权利要求1所述的一种基于改进SIFT算法的移动机器人视觉里程计实现方法,其特征在于:所述步骤2)具体为:首先进行特征点检测;其次对获取的特征点进行二值化的特征点描述;以二值化的特征点描述对相邻两幅图像间的特征点进行粗匹配,获取初步匹配的匹配点对。
3.根据权利要求1或2所述的一种基于改进SIFT算法的移动机器人视觉里程计实现方法,其特征在于:所述步骤2)改进SIFT特征匹配算法具体包括以下步骤:
2.1)进行特征点检测:由二维图像建立二维图像空间,接着由二维图像进行降采样处理后再和高斯核函数进行卷积处理,获得不同图像尺寸的采样图像并构成高斯尺度空间,然后由高斯尺度空间中的每相邻两层采样图像作差得到不同的DoG尺度图像并构成了DoG尺度空间,在DoG尺度空间中检测极值点(Blob)作为特征点;且在针对DoG尺度空间中的每个像素点进行检测极值点时,每个像素点与同尺度的DoG尺度图像中的8个相邻像素点和上、下相邻尺度的DoG尺度图像中的各9×2像素点的共计26个像素点进行比较;
2.2)对获取的特征点进行特征点描述得到特征点的梯度特征向量,将特征点的梯度特征向量进行二值化,获得二值化梯度特征向量,具体公式为:
其中,a为二值化阈值,f表示特征点的梯度特征向量,f=[f1,f2...f128],fi表示梯度特征向量中的第i个梯度信息,fi∈f,bi表示二值化后的第i个梯度信息;
2.3)通过上述步骤2.1)-2.2)获得每一幅图像的特征点并二值化描述处理,对相邻两帧图像间的特征点进行粗匹配,获取候选特征点:对相邻两帧图像,采用特征点的二值化梯度特征向量间的欧式距离作为两帧图像中特征点相似性的判定度量,取两帧图像中特征点的二值化梯度特征向量间的欧式距离最近的一对特征点和欧式距离次近的一对特征点,在这两对特征点中,如果最近的欧式距离除以次近的欧式距离少于预设比例阈值,则判断欧式距离最近的一对特征点相似,作为匹配点对,舍去欧式距离次近的一对特征点;
2.4)重复上述步骤2.2)过程,直到得到两帧图像中满足条件的所有匹配点对。
4.根据权利要求1所述的一种基于改进SIFT算法的移动机器人视觉里数的计算方式如下:
4.1)首先建立如下移动机器人运动参数公式:
4.2)然后构建残差平方和函数min{R,T},用最小二乘法求解获得目标函数最小时的旋转矩阵R和平移向量T:
min{R,T}=||Pqj-(RPpj+T)||2
式中,Ppj和Pqj分别为相邻两帧序列图像中匹配点对的两个特征点对应的三维坐标,由步骤3)得到的精确匹配的特征点和步骤1)获取的三维坐标信息结合得到;下角标p代表前一帧图像,下角标q代表后一帧图像,j为精确匹配的匹配点对的序数,x,y,z代表三维坐标。
5.根据权利要求1所述的一种基于改进SIFT算法的移动机器人视觉里程计实现方法,其特征在于:所述的深度相机采用real senseD435深度相机。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910139665.3A CN109815966A (zh) | 2019-02-26 | 2019-02-26 | 一种基于改进sift算法的移动机器人视觉里程计实现方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910139665.3A CN109815966A (zh) | 2019-02-26 | 2019-02-26 | 一种基于改进sift算法的移动机器人视觉里程计实现方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN109815966A true CN109815966A (zh) | 2019-05-28 |
Family
ID=66607529
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910139665.3A Pending CN109815966A (zh) | 2019-02-26 | 2019-02-26 | 一种基于改进sift算法的移动机器人视觉里程计实现方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN109815966A (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111079786A (zh) * | 2019-11-15 | 2020-04-28 | 北京理工大学 | 一种基于ROS和Gazebo的旋转相机特征匹配算法 |
| CN114111787A (zh) * | 2021-11-05 | 2022-03-01 | 上海大学 | 一种基于三维路标的视觉定位方法及系统 |
-
2019
- 2019-02-26 CN CN201910139665.3A patent/CN109815966A/zh active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111079786A (zh) * | 2019-11-15 | 2020-04-28 | 北京理工大学 | 一种基于ROS和Gazebo的旋转相机特征匹配算法 |
| CN114111787A (zh) * | 2021-11-05 | 2022-03-01 | 上海大学 | 一种基于三维路标的视觉定位方法及系统 |
| CN114111787B (zh) * | 2021-11-05 | 2023-11-21 | 上海大学 | 一种基于三维路标的视觉定位方法及系统 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110332887B (zh) | 一种基于特征光标点的单目视觉位姿测量系统及方法 | |
| CN101839692B (zh) | 单相机测量物体三维位置与姿态的方法 | |
| CN115482195B (zh) | 一种基于三维点云的列车部件变形检测方法 | |
| CN107301654B (zh) | 一种多传感器的高精度即时定位与建图方法 | |
| CN105740899B (zh) | 一种机器视觉图像特征点检测与匹配复合的优化方法 | |
| CN111415376B (zh) | 汽车玻璃亚像素轮廓提取方法及汽车玻璃检测方法 | |
| CN104484648B (zh) | 基于轮廓识别的机器人可变视角障碍物检测方法 | |
| CN107067415B (zh) | 一种基于图像匹配的目标定位方法 | |
| CN110223355B (zh) | 一种基于双重极线约束的特征标志点匹配方法 | |
| CN105335973B (zh) | 运用于带钢加工生产线的视觉处理方法 | |
| CN104809738B (zh) | 一种基于双目视觉的安全气囊轮廓尺寸检测方法 | |
| CN110211180A (zh) | 一种基于深度学习的机械臂自主抓取方法 | |
| CN106826815A (zh) | 基于彩色图像与深度图像的目标物体识别与定位的方法 | |
| CN104121902B (zh) | 基于Xtion摄像机的室内机器人视觉里程计实现方法 | |
| CN106969706A (zh) | 基于双目立体视觉的工件检测与三维测量系统及检测方法 | |
| CN110044374B (zh) | 一种基于图像特征的单目视觉测量里程的方法及里程计 | |
| CN111640158A (zh) | 基于对应掩模的端到端的摄像头与激光雷达外参标定方法 | |
| CN110648362B (zh) | 一种双目立体视觉的羽毛球定位识别与姿态计算方法 | |
| CN111637851B (zh) | 一种基于Aruco码的平面旋转角度视觉测量方法及装置 | |
| CN103727930A (zh) | 一种基于边缘匹配的激光测距仪与相机相对位姿标定方法 | |
| CN107588723B (zh) | 一种基于两步法的高速动目标上圆形标记漏点检测方法 | |
| CN109579825A (zh) | 基于双目视觉和卷积神经网络的机器人定位系统及方法 | |
| CN107677274A (zh) | 基于双目视觉的无人机自主着陆导航信息实时解算方法 | |
| CN107452030A (zh) | 基于轮廓检测和特征匹配的图像配准方法 | |
| CN110030979B (zh) | 一种基于序列图像的空间非合作目标相对位姿测量方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| WD01 | Invention patent application deemed withdrawn after publication | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190528 |