CN113129373B - 一种基于卷积神经网络的室内移动机器人视觉定位方法 - Google Patents
一种基于卷积神经网络的室内移动机器人视觉定位方法 Download PDFInfo
- Publication number
- CN113129373B CN113129373B CN202110361017.XA CN202110361017A CN113129373B CN 113129373 B CN113129373 B CN 113129373B CN 202110361017 A CN202110361017 A CN 202110361017A CN 113129373 B CN113129373 B CN 113129373B
- Authority
- CN
- China
- Prior art keywords
- image
- frame
- current frame
- neural network
- pose
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 28
- 238000001514 detection method Methods 0.000 claims abstract description 31
- 230000000007 visual effect Effects 0.000 claims abstract description 24
- 239000011159 matrix material Substances 0.000 claims description 28
- 230000009466 transformation Effects 0.000 claims description 28
- 238000013528 artificial neural network Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000001629 suppression Effects 0.000 claims description 3
- 238000012549 training Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 2
- 230000001419 dependent effect Effects 0.000 claims description 2
- 102000008115 Signaling Lymphocytic Activation Molecule Family Member 1 Human genes 0.000 description 10
- 108010074687 Signaling Lymphocytic Activation Molecule Family Member 1 Proteins 0.000 description 10
- 238000005286 illumination Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 241000282414 Homo sapiens Species 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/005—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
- G01C21/206—Instruments for performing navigational calculations specially adapted for indoor navigation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/20—Special algorithmic details
- G06T2207/20228—Disparity calculation for image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Automation & Control Theory (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于卷积神经网络的室内移动机器人视觉定位方法,属于机器人自主导航领域。本发明在室内机器人平台上搭载有前视双目相机以及机载计算机。双目相机采集图像,用卷积神经网络提取特征点,再用于基于特征点法的视觉里程计。重定位采用目标检测的方法提取图片的特征向量,并进行运动估计。机载计算机利用视觉里程计(或重定位)的结果构造用于定位的局部地图,并得到机器人实时位姿。再将位姿反馈给机器人控制系统,控制机器人的位置。本发明实现了机器人在缺失GPS环境下的实时位姿估计,极大地提高室内机器人的自主导航水平。
Description
技术领域
本发明涉及自动驾驶与定位导航技术,尤其涉及一种基于卷积神经网络的室内移动机器人视觉定位方法。
背景技术
移动机器人,是一个集环境感知、动态决策与规划、行为控制与执行等多功能于一体的综合系统。它集中了传感器技术、信息处理、电子工程、计算机工程、自动化控制工程以及人工智能等多学科的研究成果,代表机电一体化的最高成就,是目前科学技术发展最活跃的领域之一。随着机器人性能不断地完善,移动机器人的应用范围大为扩展,不仅在工业、农业、医疗、服务等行业中得到广泛的应用,而且在城市安全、国防和空间探测领域等有害与危险场合得到很好的应用。但目前移动机器人仍有一定的局限性,最大的局限性就是不能向真正的人类那样对未知环境进行探索。如早期的扫地机器人,只能按照设定的路线进行清扫,碰到墙壁或物体边缘便转向,导致清扫线路杂乱无章、效率低下。移动机器人何时才能向真正的人类一样在不借助GPS的情况下在小范围的未知环境中(如室内)知道自己的位置,也就是移动机器人在未知环境中运行时如何进行定位导航与地图构建(SLAM,simultaneous localization and mapping),这引起了各界的广泛关注
早期的SLAM大多为激光SLAM,也就是用于此种SLAM的传感器是激光雷达。早在2005年的时候,激光SLAM就已经被研究的比较透彻,框架也已初步确定。激光SLAM,是目前最稳定、最主流的定位导航方法。但是,激光雷达相对昂贵,安装也有结构要求,而且受到探测范围的限制。而随着计算机视觉的迅速发展,视觉SLAM因为信息量大,适用范围广等优点受到广泛关注。视觉SLAM的传感器使用相机作为传感器,成本低,结构简单,适合大面积推广,但最大的缺点是受环境影响较大,随着地图的构建,会存在一些累计误差,而且运算负荷大。
发明内容
发明目的:针对现有技术存在的问题,本发明的提供了一种鲁棒性强、定位精度高的基于卷积神经网络的室内移动机器人视觉定位方法。
技术方案:本发明所采用的一种基于卷积神经网络的室内移动机器人视觉定位方法,包括以下步骤:
(1)机器人平台搭载有前视双目相机,所述双目相机每秒采集n帧图像;机载计算机开启线程,以n Hz的频率运行基于特征点法的视觉里程计;
定义k时刻获取双目相机中左边相机对应的图像和右边相机对应的图像/>将与/>作为卷积神经网络的输入,卷积神经网络输出提取特征点后的图像/>与/>将/>与作为基于特征点法的视觉里程计的输入,视觉里程计输出当前双目图像中图像/>相对于地图中参考帧的左边相机图像/>的位姿变换矩阵Tk,r;
若上述基于特征点法的视觉里程计跟踪失败,则进入步骤(2)进行重定位,采用基于目标检测和相似度检测的方法确定图像位姿;否则,跳过步骤(2),直接进入步骤(3);
(2)定义k时刻获取所述提取特征点后的图像与/>左边图像/>作为目标检测的输入,目标检测输出/>的特征向量v;v作为相似度检测的输入,相似度检测输出与/>相似度最高的参考帧的左边相机图像/>将/>与/>作为运动估计的输入,运动估计的输出是/>与的位姿变换矩阵Tk,r;
(3)机载计算机将当前双目图像中左边相机图像的位姿变换矩阵Tk,r用于构建实现定位的局部地图,并得到机器人的实时位姿Tk,w;将Tk,w作为位姿信息通过串口发送给控制系统中的控制单元,对机器人进行位置控制。
进一步的,步骤(1)中,基于VGG卷积神经网络提取特征点,选取VGG的最后一个卷积层作为特征提取的输出,再经过Softmax层,输出图像上每个像素点是角点的概率;训练该神经网络的数据集拟采用自己构造的数据集,该数据集拟使用基于Opencv自动生成的在不同像素亮度下的各类有规则的几何形状,这些图像的角点位置已知,且在不同像素亮度下都有相应的图像。
采用卷积神经网络提取特征点的具体步骤如下:
(1.1.1)假设双目相机极线水平,首先获取双目相机中左边相机对应的图像和右边相机对应的图像/>并根据相机参数对/>与/>进行畸变校正,获得矫正后的图像/>与
(1.1.2)把与/>作为神经网络的输入,神经网络的输出是左边图像和右边图像每个像素点是角点的概率;
(1.1.3)采取非极大值抑制算法,选取局部范围内概率最大的点作为角点,使角点均匀化;
(1.1.4)计算左图图像角点和左图图像角点/>的描述子,得到左图特征点/>与右图特征点/>
进一步的,步骤(1)中,运行基于特征点法的视觉里程计的具体过程如下:
(1.2.1)首先进行运动估计,依据机器人匀速运动模型,估计左边相机当前帧图像相对于左边相机第一帧图像的位姿变换矩阵;定义上一帧图像和上上帧图像相对于第一帧图像的位姿变换矩阵分别Tk-1,w和Tk-2,w,则上一帧和上上帧之间的位姿相对变换ΔTk-1,k-2=Tk-1,w·(Tk-2,w)-1;
(1.2.2)依据匀速运动模型,ΔTk,k-1=ΔTk-1,k-2,则当前帧图像相对于第一帧图像的初步估计位姿
(1.2.3)依据当前帧的预测位姿将局部地图中的所有关键帧对应的特征点投影至当前帧,选择投影的特征点数目最多的关键帧作为参考帧;获取参考帧的位姿变换矩阵Tr ,w,则当前帧相对于参考帧的位姿变换
(1.2.4)将当前帧左边相机图像中的特征点和参考帧的左边相机图像/>中的特征点/>进行特征匹配,再根据/>的深度信息,根据依照3D-2D运动求解方法,使用光束平差法,初始值/>求解当前帧相对于参考帧的位姿变换矩阵Tk,r;
(1.2.5)在得到了当前帧相对于参考帧的位姿变换矩阵Tk,r后,求得对应的李代数ξk,r=log(Tk,r),ξk,r的形式为其中ρ为平移速度分量,/>为旋转速度分量,计算ξk,r的模,如果ξk,r的模大于3m/s,那么将当前帧作为关键帧加入到局部地图;
(1.2.6)如果当前帧作为关键帧加入了局部地图,则对当前帧左边相机的图像与当前帧右边相机的图像/>执行特征匹配,计算出匹配特征点对的视差,依据视差计算出该特征点对应的深度信息,获取点云图,并对/>基于YOLO进行目标检测并计算/>的图像特征向量。
进一步的,步骤(2)具体包括如下内容:
(2.1)对步骤(1)中视觉里程计跟踪失败的当前帧的左边相机的图像进行基于YOLO的目标检测,获得其图像特征向量,设神经网路输出的向量为v,再根据相似度函数S(v1,v2),计算当前帧与所有关键帧的之间的相似度,S(v1,v2)定义如下:
α为系数,S值越大,则代表两帧图像相似度越高。
(2.2)选取与当前帧相似度最高的关键帧作为当前帧的参考关键帧,按照步骤(1.2.4),计算当前帧相对于参考关键帧的位姿Tk,r;再根据步骤(1.2.5)判断当前帧是否为关键帧并根据相应结果计算特征点深度,获取点云图。
进一步的,步骤(3)具体包括如下内容:
(3.1)在得到了双目视觉里程计当前帧相对于参考关键帧的位姿变换矩阵Tk,r后,假设相机第一帧对应的相机坐标系作为世界坐标系,再根据参考关键帧相对于世界坐标系的位姿变换Tr,w,计算当前帧相对于世界坐标系的位姿变化矩阵Tk,w=Tk,r·Tr,w;
(3.2)把当前帧相对于世界坐标系的位姿变化矩阵Tk,w作为控制信号输入机器人的控制单元,对机器人进行位置控制
有益效果:
和现有技术相比,本发明具有如下显著进步:将深度学习、目标检测和SLAM进行有机结合,运算负荷小,且降低了视觉SLAM中定位精度易受环境条件变化(如光照条件变化)的影响,提高了移动机器人在室内定位的可靠性与鲁棒性,增强了移动机器人的应用范围。
附图说明
图1为本发明的流程示意图;
图2为本发明的系统模块框图;
图3为本发明特征提取中卷积神经网络模型图;
图4为本发明使用神经网络提取特征点流程图;
图5为本发明基于特征点法的双目视觉里程计的流程图;
图6为本发明基于YOLO的目标检测示意图;
图7为本发明重定位流程图。
具体实施方式
本发明的一种基于卷积神经网络的室内移动机器人视觉定位方法,通过双目摄像机采集双目图像,实现机器人的定位与控制;采用基于卷积神经网络的方法提取双目图像特征点,采用BA法进行图像跟踪,并在跟踪失败时使用目标检测算法确定图像位姿。把图像位姿作为机器人的控制信号,控制机器人的位置。本发明摆脱了图像对环境变化敏感(如光照条件变化)的缺陷,实现室内移动机器人在缺失GPS环境下的鲁棒定位与控制。
以下结合附图和具体实施例,详细阐述本发明的技术方案。
如图1、图2所示,一种基于卷积神经网络的室内移动机器人视觉定位方法,包括以下步骤:
步骤1、机器人平台搭载有前视双目相机,双目相机每秒采集10帧图像;机载计算机开启线程,以10Hz的频率运行基于特征点法的视觉里程计;假如k时刻获取双目相机的左右相机对应的图像与/>将/>与/>作为卷积神经网络的输入,卷积神经网络输出提取特征点后的图像/>与/>将/>与/>作为基于特征点法的视觉里程计的输入,视觉里程计输出当前双目图像中的左边相机图像/>相对于地图中的参考帧的左边相机图像/>的位姿变换矩阵Tk,r。
若基于特征点法的视觉里程计计算位姿失败,则进入步骤2,否则跳过步骤2,直接进入步骤3。
步骤2、假如k时刻获取左右相机已提取特征点后的图像与/>与/>作为目标检测的输入,目标检测输出与当前双目图像中的左边相机图像/>相似度最高的参考帧的左边相机图像/>将/>与/>作为运动估计的输入,运动估计的输出是/>与/>的位姿变换矩阵Tk,r。
步骤3、机载计算机将得到的当前双目图像中的左边相机图像的位姿变换矩阵Tk,r用于构建实现定位的局部地图,并得到机器人的实时位姿Tk,w。将Tk,w作为位姿信息通过串口发送给控制系统中的控制单元,对机器人进行位置控制。
在VGG(Visual Geometry Group)卷积神经网络的基础上,构造如图3所示卷积神经网络。该神经网络采用VGG网络,选取VGG的最后一个卷积层作为特征提取的输出,再经过Softmax层,输出图像上像素点是角点的概率。训练该神经网络的数据集拟采用自己构造的数据集,该数据集拟使用基于Opencv自动生成的在不同像素亮度下的各类有规则的几何形状(如矩形,梯形等),这些图像已知角点位置,且在不同像素亮度下都有相应的图像。采用这样的数据集,极大降低了光照对图像特征提取的影响,提高了鲁棒性。
图4为本发明使用神经网络提取特征点流程图,具体阐述如下:
首先获取与/>(假设双目相机极线水平),并根据相机参数对/>与/>进行畸变校正,获得矫正后的图像/>与/>把/>与/>作为神经网络的输入,神经网络的输出是左边图像和右边图像每个像素点是角点的概率,再采取非极大值抑制算法,选取局部范围内概率最大的点作为角点,使角点均匀化。再计算左图图像角点/>和左图图像角点/>的描述子,得到左图特征点/>与右图特征点/>
图5为本发明基于特征点法的双目视觉里程计的流程图,具体阐述如下:
(1)首先进行运动估计,依据机器人匀速运动模型,估计左边相机当前帧图像相对于左边相机第一帧图像的位姿变换矩阵。假如上一帧图像和上上帧图像相对于第一帧图像的位姿变换矩阵分别Tk-1,w和Tk-2,w,则两帧之间的位姿相对变换ΔTk-1,k-2为:
ΔTk-1,k-2=Tk-1,w·(Tk-2,w)-1。
(2)依据匀速运动模型,ΔTk,k-1=ΔTk-1,k-2,则当前帧图像相对于第一帧图像的初步估计位姿为:
(3)依据当前帧的预测位姿将局部地图中的所有关键帧对应的特征点投影至当前帧,选择投影的特征点数目最多的关键帧作为参考帧。获取参考帧的位姿变换矩阵Tr,w,则当前帧相对于参考帧的位姿变换为:
(4)将当前帧左边相机图像中的特征点和参考帧的左边相机图像/>中的特征点进行特征匹配,再根据/>的深度信息,根据依照3D-2D运动求解方法,使用BA法(BundleAdjustment,光束平差法),初始值/>求解当前帧相对于参考帧的位姿变换矩阵Tk,r。
(5)在得到了当前帧相对于参考帧的位姿变换矩阵Tk,r后,求得对应的李代数ξk,r=log(Tk,r),ξk,r的形式为其中ρ为平移速度分量,/>为旋转速度分量,计算ξk,r的模,如果ξk,r的模大于3m/s,那么将当前帧作为关键帧加入到局部地图。
(6)如果当前帧作为关键帧加入了局部地图,则对当前帧左边相机的图像与当前帧右边相机的图像/>执行特征匹配,计算出匹配特征点对的视差,依据视差计算出该特征点对应的深度信息,获取点云图,并对/>进行目标检测,计算图像特征向量。
图6为本发明基于YOLO的目标检测示意图。YOLO是现如今端到端物体检测做的最好的神经网络架构之一,YOLO有已在coco数据集上训练好的模型参数。对于一幅输入图像,YOLO会生成一个R*C*80输出向量,表示图像某块区域预先定义的80个种类可能出现的概率,其中R、C是为图像被分成R*C的子块,继而网络在这些分好的图像块中检测目标。目标检测具体过程如下:
把作为YOLO的输入,则有R*C*80维向量输出,向量中的元素i表示图像某个子块和预先定义的80类中某一类的相近程度,认为这R*C*80维中间结果向量是关于一个场景的描述,把该向量作为/>的图像特征向量。YOLO神经网络经过了大量数据训练,经过他人实验,该网络在目标检测时在光照变化方面已经表现出了鲁棒性。因此直接取神经网络输出作为图像特征向量,该向量也具有光照鲁棒性。
图7为本发明重定位流程图,重定位采用基于YOLO的目标检测的方法提取图片的特征向量,并进行运动估计。具体过程如下:
对视觉里程计跟踪失败的当前帧的左边相机的图像进行基于YOLO的目标检测,获得其图像特征向量,设神经网路输出的向量为v,再根据相似度函数S(v1,v2),计算当前帧与所有关键帧的之间的相似度,S(v1,v2)定义如下:
α为系数,S值越大,则代表两帧图像相似度越高。
选取与当前帧相似度最高的关键帧作为当前帧的参考关键帧,按照步骤1中“基于特征点法的视觉里程计”的方法,计算当前帧相对于参考关键帧的位姿Tk,r,并判断当前帧是否为关键帧,若是,则计算特征点深度,获取点云图。
Claims (5)
1.一种基于卷积神经网络的室内移动机器人视觉定位方法,其特征在于,包括以下步骤:
(1)机器人平台搭载有前视双目相机,所述双目相机每秒采集n帧图像;机载计算机开启线程,以n Hz的频率运行基于特征点法的视觉里程计;
假设k时刻获取双目相机中左边相机对应的图像和右边相机对应的图像/>将/>与作为卷积神经网络的输入,卷积神经网络输出提取特征点后的图像/>与/>将/>与/>作为基于特征点法的视觉里程计的输入,视觉里程计输出当前双目图像中图像/>相对于地图中参考帧的左边相机图像/>的位姿变换矩阵Tk,r;
运行基于特征点法的视觉里程计的具体过程如下:
(1.2.1)首先进行运动估计,依据机器人匀速运动模型,估计左边相机当前帧图像相对于左边相机第一帧图像的位姿变换矩阵;定义上一帧图像和上上帧图像相对于第一帧图像的位姿变换矩阵分别Tk-1,w和Tk-2,w,则上一帧和上上帧之间的位姿相对变换ΔTk-1,k-2=Tk -1,w·(Tk-2,w)-1;
(1.2.2)依据匀速运动模型,ΔTk,k-1=ΔTk-1,k-2,则当前帧图像相对于第一帧图像的初步估计位姿
(1.2.3)依据当前帧的预测位姿将局部地图中的所有关键帧对应的特征点投影至当前帧,选择投影的特征点数目最多的关键帧作为参考帧;获取参考帧的位姿变换矩阵Tr,w,则当前帧相对于参考帧的位姿变换
(1.2.4)将当前帧左边相机图像中的特征点和参考帧的左边相机图像/>中的特征点进行特征匹配,再根据/>的深度信息,根据依照3D-2D运动求解方法,使用光束平差法,初始值/>求解当前帧相对于参考帧的位姿变换矩阵Tk,r;
(1.2.5)在得到了当前帧相对于参考帧的位姿变换矩阵Tk,r后,求得对应的李代数ξk,r=log(Tk,r),ξk,r的形式为其中ρ为平移速度分量,/>为旋转速度分量,计算ξk,r的模,如果ξk,r的模大于3m/s,则将当前帧作为关键帧加入到局部地图;
(1.2.6)如果当前帧作为关键帧加入了局部地图,则对当前帧左边相机的图像与当前帧右边相机的图像/>执行特征匹配,计算出匹配特征点对的视差,依据视差计算出该特征点对应的深度信息,获取点云图,并对/>基于YOLO进行目标检测并计算/>的图像特征向量;
若上述基于特征点法的视觉里程计跟踪失败,则进入步骤(2)进行重定位,采用基于目标检测和相似度检测的方法确定图像位姿;否则,跳过步骤(2),直接进入步骤(3);
(2)假设k时刻获取了提取特征点后的图像与/>左边图像/>作为目标检测的输入,目标检测输出/>的特征向量v;v作为相似度检测的输入,相似度检测输出与/>相似度最高的参考帧的左边相机图像/>将/>与/>作为运动估计的输入,运动估计的输出是/>与/>的位姿变换矩阵Tk,r;
(3)机载计算机将当前双目图像中左边相机图像的位姿变换矩阵Tk,r用于构建实现定位的局部地图,并得到机器人的实时位姿Tk,w;将Tk,w作为位姿信息通过串口发送给控制系统中的控制单元,对机器人进行位置控制。
2.根据权利要求1所述的基于卷积神经网络的室内移动机器人视觉定位方法,其特征在于,步骤(1)中,基于VGG卷积神经网络提取特征点,选取VGG的最后一个卷积层作为特征提取的输出,再经过Softmax层,输出图像上每个像素点是角点的概率;训练该神经网络的数据集拟采用自己构造的数据集,该数据集拟使用基于Opencv自动生成的在不同像素亮度下的各类有规则的几何形状,这些图像的角点位置已知,且在不同像素亮度下都有相应的图像。
3.根据权利要求1或2所述的基于卷积神经网络的室内移动机器人视觉定位方法,其特征在于,采用卷积神经网络提取特征点的具体步骤如下:
(1.1.1)假设双目相机极线水平,首先获取双目相机中左边相机对应的图像和右边相机对应的图像/>并根据相机参数对/>与/>进行畸变校正,获得矫正后的图像/>与/>
(1.1.2)把与/>作为神经网络的输入,神经网络的输出是左边图像和右边图像每个像素点是角点的概率;
(1.1.3)采取非极大值抑制算法,选取局部范围内概率最大的点作为角点,使角点均匀化;
(1.1.4)计算左图图像角点和左图图像角点/>的描述子,得到左图特征点/>与右图特征点/>
4.根据权利要求3所述的基于卷积神经网络的室内移动机器人视觉定位方法,其特征在于,步骤(2)具体包括如下内容:
(2.1)对步骤(1)中视觉里程计跟踪失败的当前帧的左边相机的图像进行基于YOLO的目标检测,获得其图像特征向量,设神经网路输出的向量为v,再根据相似度函数S(v1,v2),计算当前帧与所有关键帧的之间的相似度,S(v1,v2)定义如下:
α为系数,S值越大,则代表两帧图像相似度越高;
(2.2)选取与当前帧相似度最高的关键帧作为当前帧的参考关键帧,按照步骤(1.2.4),计算当前帧相对于参考关键帧的位姿Tk,r;再根据步骤(1.2.5)判断当前帧是否为关键帧并根据相应结果计算特征点深度,获取点云图。
5.根据权利要求1所述的基于卷积神经网络的室内移动机器人视觉定位方法,其特征在于,步骤(3)具体包括如下内容:
(3.1)在得到了双目视觉里程计当前帧相对于参考关键帧的位姿变换矩阵Tk,r后,假设相机第一帧对应的相机坐标系作为世界坐标系,再根据参考关键帧相对于世界坐标系的位姿变换Tr,w,计算当前帧相对于世界坐标系的位姿变化矩阵Tk,w=Tk,r·Tr,w;
(3.2)把当前帧相对于世界坐标系的位姿变化矩阵Tk,w作为控制信号输入机器人的控制单元,对机器人进行位置控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110361017.XA CN113129373B (zh) | 2021-04-02 | 2021-04-02 | 一种基于卷积神经网络的室内移动机器人视觉定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110361017.XA CN113129373B (zh) | 2021-04-02 | 2021-04-02 | 一种基于卷积神经网络的室内移动机器人视觉定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113129373A CN113129373A (zh) | 2021-07-16 |
CN113129373B true CN113129373B (zh) | 2024-03-19 |
Family
ID=76774761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110361017.XA Active CN113129373B (zh) | 2021-04-02 | 2021-04-02 | 一种基于卷积神经网络的室内移动机器人视觉定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113129373B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114868514B (zh) * | 2022-04-13 | 2023-09-29 | 北京航空航天大学 | 一种基于智能割草机器人的草坪3d打印系统和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109341694A (zh) * | 2018-11-12 | 2019-02-15 | 哈尔滨理工大学 | 一种移动探测机器人的自主定位导航方法 |
CN111325794A (zh) * | 2020-02-23 | 2020-06-23 | 哈尔滨工业大学 | 一种基于深度卷积自编码器的视觉同时定位与地图构建方法 |
WO2020155616A1 (zh) * | 2019-01-29 | 2020-08-06 | 浙江省北大信息技术高等研究院 | 一种基于数字视网膜的拍摄装置的定位方法 |
-
2021
- 2021-04-02 CN CN202110361017.XA patent/CN113129373B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109341694A (zh) * | 2018-11-12 | 2019-02-15 | 哈尔滨理工大学 | 一种移动探测机器人的自主定位导航方法 |
WO2020155616A1 (zh) * | 2019-01-29 | 2020-08-06 | 浙江省北大信息技术高等研究院 | 一种基于数字视网膜的拍摄装置的定位方法 |
CN111325794A (zh) * | 2020-02-23 | 2020-06-23 | 哈尔滨工业大学 | 一种基于深度卷积自编码器的视觉同时定位与地图构建方法 |
Non-Patent Citations (1)
Title |
---|
单目视觉里程计设计及优化;欧明华;李翔;;电子科技;20181115(11);第60-63页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113129373A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021196294A1 (zh) | 一种跨视频人员定位追踪方法、系统及设备 | |
CN112132972B (zh) | 一种激光与图像数据融合的三维重建方法及系统 | |
CN110097553B (zh) | 基于即时定位建图与三维语义分割的语义建图系统 | |
CN110567469B (zh) | 视觉定位方法、装置、电子设备及系统 | |
CN111076733B (zh) | 一种基于视觉与激光slam的机器人室内建图方法及系统 | |
KR20200095367A (ko) | 거리 예측이 가능한 레이더를 통해 획득되는 정보와 카메라를 통해 획득되는 정보를 통합하는 센서 융합을 수행함으로써 자율 주행을 지원하는 뉴럴 네트워크를 향상시키는 학습 방법 및 학습 장치, 그리고 이를 사용한 테스트 방법 및 테스트 장치 | |
CN109813319B (zh) | 一种基于slam建图的开环优化方法及系统 | |
CN110146099B (zh) | 一种基于深度学习的同步定位与地图构建方法 | |
CN112068154A (zh) | 一种激光建图定位方法、装置、存储介质及电子设备 | |
US10726616B2 (en) | System and method for processing captured images | |
CN108537844B (zh) | 一种融合几何信息的视觉slam回环检测方法 | |
CN110163963B (zh) | 一种基于slam的建图装置和建图方法 | |
WO2019075948A1 (zh) | 移动机器人的位姿估计方法 | |
CN110570449A (zh) | 一种基于毫米波雷达与视觉slam的定位与建图方法 | |
CN112967345B (zh) | 鱼眼相机的外参标定方法、装置以及系统 | |
CN104457758B (zh) | 基于视频采集的Visual Map数据库建立方法及利用该数据库的室内视觉定位方法 | |
CN109949364B (zh) | 一种基于路侧单目摄像头的车辆姿态检测精度优化方法 | |
CN113593035A (zh) | 一种运动控制决策生成方法、装置、电子设备及存储介质 | |
CN110610130A (zh) | 一种多传感器信息融合的输电线路机器人导航方法及系统 | |
CN111998862A (zh) | 一种基于bnn的稠密双目slam方法 | |
CN113129373B (zh) | 一种基于卷积神经网络的室内移动机器人视觉定位方法 | |
CN116105721B (zh) | 地图构建的回环优化方法、装置、设备及存储介质 | |
KR101639264B1 (ko) | 무인 단말기 제어 방법 및 장치 | |
US20240153120A1 (en) | Method to determine the depth from images by self-adaptive learning of a neural network and system thereof | |
CN113011212B (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 |