CN109345588A - 一种基于Tag的六自由度姿态估计方法 - Google Patents
一种基于Tag的六自由度姿态估计方法 Download PDFInfo
- Publication number
- CN109345588A CN109345588A CN201811101406.3A CN201811101406A CN109345588A CN 109345588 A CN109345588 A CN 109345588A CN 201811101406 A CN201811101406 A CN 201811101406A CN 109345588 A CN109345588 A CN 109345588A
- Authority
- CN
- China
- Prior art keywords
- frame
- camera
- pose
- camera pose
- tag
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 239000011159 matrix material Substances 0.000 claims description 34
- 238000013519 translation Methods 0.000 claims description 12
- 241000274965 Cyrestis thyodamas Species 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 3
- 238000005457 optimization Methods 0.000 abstract description 14
- 238000001514 detection method Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000005316 response function 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
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C11/00—Photogrammetry or videogrammetry, e.g. stereogrammetry; Photographic surveying
- G01C11/02—Picture taking arrangements specially adapted for photogrammetry or photographic surveying, e.g. controlling overlapping of pictures
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Toxicology (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Electromagnetism (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明公开了一种基于Tag的六自由度姿态估计方法,通过在物体上添加Tag来辅助检测,通过相机识别出物体上的Tag,帮助SLAM完成初始化,在初始化后,持续对每帧图像提取特征点,并根据上一帧对应的速度矩阵是否为空,进行相机位姿估计,以相机位姿估计得到的值为初值,采用特征点对应的地图点重投影到图像坐标系的重投影误差函数作为目标函数,进行相机位姿优化,得到优化好的相机位姿及特征点对应的地图点,再把相机的位姿转换成物体的位姿。本发明的方法在成像质量差以及物体高速运动时有较好的鲁棒性,并且有很高姿态估计精度。
Description
技术领域
本发明属于计算机视觉技术领域,尤其涉及一种基于Tag的六自由度姿态估计方法。
背景技术
三维物体的姿态直观地反映了三维物体的特征,所以三维姿态作为三维物体的重要特征之一,一直以来都是国内外研究人员的研究重点。如果可以对空间目标进行三维姿态的判断,就可以粗略判断出空间目标的目的,对空间目标做很好的分类。
姿态估计问题就是确定某一三维目标物体的方位指向问题。姿态估计在机器人视觉、动作跟踪和单照相机定标等很多领域都有应用。随着计算机视觉技术的广泛应用,在固定相机的情况下,拍摄场景中自由运动的物体,并对物体姿态做出估计,已经成为一个重要的研究方向。目前现有技术在姿态估计问题上有多种解决方案,例如基于模型来做检测或基于红外线来做检测。
目前,基于模型来做检测在检测前需要对被检测的物体进行建模,然后考虑如何将目标模型与实际图像中的物体进行匹配,在匹配时是根据模型点集到图像边缘点集的平均距离作为匹配的度量,再求解出图像中目标的位姿。基于模型的姿态估计方法是通过比对真实图像和合成图像,进行相似度计算更新物体姿态。目前基于模型的方法为了避免在全局状态空间中进行优化搜索,一般都将优化问题先降解成多个局部特征的匹配问题,非常依赖于局部特征的准确检测。当噪声较大无法提取准确的局部特征的时候,该方法的鲁棒性受到很大影响。而基于红外线来做检测时,红外容易受环境的温度影响,该方法的鲁棒性也会受到很大影响
发明内容
本发明的目的是提供一种基于Tag的六自由度姿态估计方法,通过在物体上添加Tag来辅助检测,通过相机识别出物体上的Tag,帮助SLAM完成初始化,通过检测图像中的ORB特征点完成相机的位姿估计,再把相机的位姿转换成物体的位姿,在成像质量差以及物体高速运动时有较好的鲁棒性,并且有很高的姿态估计精度。
为了实现上述目的,本发明技术方案如下:
一种基于Tag的六自由度姿态估计方法,所述基于Tag的六自由度姿态估计方法,包括:
接收输入的图像流,检测图像中运动物体上贴的二维码标签,完成初始化,以初始化完成时的图像帧为初始关键帧;
在初始化后,持续对每帧图像提取特征点,并根据上一帧对应的速度矩阵是否为空,进行相机位姿估计;
以相机位姿估计得到的值为初值,采用特征点对应的地图点重投影到图像坐标系的重投影误差函数作为目标函数,进行相机位姿优化,得到优化好的相机位姿及特征点对应的地图点;
比较当前帧与当前关键帧共同的地图点,在当前帧与当前关键帧共同的地图点不超过设定的阈值时,将当前帧作为新的当前关键帧;
在得到优化好的相机位姿后,再根据当前帧到当前帧关键帧的相机位姿、当前关键帧与初始化关键帧的相机位姿来求出当前帧的相机位姿,将相机位姿转换为运动物体的位姿。
进一步地,所述基于Tag的六自由度姿态估计方法,还包括:
当生成新的当前关键帧时,还依次检测所有关键帧,如果检测到有关键帧与至少三个其它关键帧之间,共同的地图点超过设定的阈值,就剔除这个关键帧。
进一步地,所述进行相机位姿估计,包括:
如果上一帧对应的速度矩阵为空,则将当前帧的相机位姿赋值成当前关键帧的相机位姿;
如果上一帧对应的速度矩阵不为空,则当前帧的相机位姿为上一帧对应的速度矩阵乘以上上一帧的相机位姿;
所述上一帧对应的速度矩阵为上一帧的相机位姿乘以上上一帧的相机位姿。
进一步地,所述目标函数为:
其中,
其中,η表示当前帧与上一帧所有特征匹配点的集合,R,t的初值为估计得到的相机位姿,即相机的旋转矩阵和平移向量,ρ表示Huber能量函数,Σ表示优化帧对应关键帧的协方差矩阵,xi表示第i个特征点的图像坐标,Xi表示第i个特征点的地图点坐标,EcPro表示相机估计出来的位姿变换求出的三维点重投影回图像后与图像中特征点的重投影误差,EtagPro表示相机估计出来的位姿变换与获取的Tag位姿变换分别重投到图像上的重投影误差,Rtag和ttag分别表示获取的Tag旋转矩阵和平移向量,π用如下定义表示:
其中,(fx,fy)表示相机焦距,(cx,cy)表示相机光圈,(X,Y,Z)表示空间点的世界坐标系坐标。
ρ(a)为Huber能量函数:
a表示误差值,δ为常数。
本发明提出了一种基于Tag的六自由度姿态估计方法,通过在物体上添加Tag来辅助检测,通过相机识别出物体上的Tag,帮助SLAM完成初始化,通过检测图像中的ORB特征点完成相机的位姿估计,再把相机的位姿转换成物体的位姿,在成像质量差以及物体高速运动时有较好的鲁棒性,并且有很高姿态估计精度。
附图说明
图1为本发明一种基于Tag的六自由度姿态估计方法流程图;
图2为二维码标签Tag的图形;
图3为Tag标签坐标示意图;
图4为相机坐标系示意图;
图5为初始化时相机坐标系相对于标签坐标系示意图。
具体实施方式
下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。
如图1所示,给出了一种基于Tag的六自由度姿态估计方法的实施例,在本实施例中,在待估计的运动物体上贴上二维码标签,该二维码标签携带有标签识别号的二维码信息,包括如下步骤:
步骤S1、接收输入的图像流,检测图像中运动物体上贴的二维码标签,完成初始化,以初始化完成时的图像帧为初始关键帧。
本实施例初始化过程,包括:检测图像中运动物体上贴的二维码标签的角点,建立世界坐标系;提取初始化时图像帧的特征点,计算特征点对应的地图点。
本技术方案在固定相机的情况下,拍摄场景中运动物体,获取运动物体图像,输入图像流。本实施例运动物体上贴有二维码标签,检测运动物体上贴的二维码标签(Tag检测),首先对拍摄的运动物体图像进行二值化,获取到灰度图,从而可以在灰度图中寻找候选标签,对寻找到的每个候选标签进行解码,以确定是否为有效的二维码标签。
本发明的一种实施例,检测二维码标签的过程如下:
在灰度图中,I(i,j)是图像在坐标(i,j)点像素的值,该点的梯度值为:
G(i,j)=Ix+Iy (1)
其中Ix,Iy分别表示图像水平方向和垂直方向的梯度:
Ix=I(i+1,j)-I(i,j),Iy=I(i,j+1)-I(i,j) (2)
根据Harris算法来提取图片中方形的角点,首先计算图像像素点在水平和垂直方向上的梯度,以及两者的乘积,得到一个2×2的矩阵M:
其中,Ix 2=Ix×Ix,Iy 2=Iy×Iy。
然后,对图像进行高斯滤波,得到新的M。接下来利用M计算每个像素的角点响应函数Re:
Re=[Ix 2×Iy 2-(Ix,Iy)2]-k(Ix 2+Iy 2)2 (4)
其中,k为常系数,一般取值范围为0.04~0.06。然后寻找极大值点,若Re的响应值大于阈值,则视为角点。
本实施例采用霍夫变换检测图像中的直线,以确定检测到的角点为Tag边缘的角点,从而可以得到四个角点的图像坐标。如图2所示,Tag为黑白相间二维码方块,不同的Tag包含了不同的数字编码信息,然后根据检测到的直线判断是否为方形区域。如果是方形区域则作为候选区域,将候选区域与Tag库匹配,判断这些方形区域是否为Tag。容易理解的是,在图像中检测二维码标签,在现有技术中已经是比较成熟的技术,这里不再赘述。
如图3所示Tag本身带有一个标签坐标系,相机坐标系是以相机光心(相机光轴与图像平面的交点)为原点的坐标系(如图4所示),根据外参,将相机上建立的相机坐标系通过旋转平移与Tag的标签坐标系重合,建立系统的唯一的世界坐标系。世界坐标系是系统的绝对坐标系,图像上所有点的坐标都是以该坐标系的原点来确定各自的位置的。
SLAM(Simultaneous Localization And Mapping),即时定位与地图构建,在本发明中实现估计相机位姿的功能。需要两帧图像进行初始化,先测量出Tag的真实尺寸为2h×2h,以Tag的中心为标签坐标系原点,则Tag四个角的3D坐标则如图3所示,根据四个角点对应的2D图像坐标(在Tag检测的时候得到),通过PnP算法分别求得两帧图像中Tag和相机之间的外参,即其之间的旋转矩阵和平移向量,从而可以进行旋转平移,建立唯一的世界坐标系。
本实施例对于输入的图像流中的每一帧,都需要提取特征点,并通过后续的步骤获取特征点对应的地图点,地图点为SLAM计算图像上二维特征点的深度形成该特征点的三维坐标点。
对于运动物体图片,本实施例还进行特征提取,目前提取特征点的方法有FAST、SURF、SIFT等算法,由于FAST算法提取特征点速度快,能满足系统实时性的要求,本实施例采用FAST算法来检测特征点。一般来说,基于特征点周围一圈的图像灰度值与该特征点的灰度值差别足够大,认为该候选点就是一个特征点:
其中,I(x)为圆周circle(p)上任意一点的灰度,I(p)为圆心的灰度,ε为灰度差的阈值,如果N大于给定阈值,则认为p是个特征点。
得到特征点后,用BRIEF算法来计算一个特征点的描述子。本实施例以特征点为中心,取S×S的领域窗口,在窗内随机选取一对点,比较两者像素值的大小,定义τ,进行如下二进制赋值:
其中,p(x),p(y)分别是随机点x,y的像素值。重复公式(6),取256对点,形成一个二进制编码,这个编码就是对特征点的描述。
对于初始化时的帧图像,如图5所示,通过第一帧与Tag之间的外参R1和第二帧的与Tag之间的外参R2,可求得第一帧与第二帧之间的外参,即两帧间的相机位姿R12:
R12=R1 -1×R2 (5)
已知两帧特征点的二维坐标和两帧间的位姿,通过三角化来计算出特征点的深度值信息,即该特征点在世界坐标系下对应点的Z轴数据。
本发明通过Tag的真实尺寸,能解决单目SLAM的尺度问题(生成的地图在现实世界中真实的尺寸无法得知),且在初始化时形成高精度的地图点。当系统长时间运行时,物体的平移距离的测量仍能保持高精度。
此外,本实施例还以初始化完成时的图像帧为初始关键帧。
步骤S2、在初始化后,持续对每帧图像提取特征点,并根据上一帧对应的速度矩阵是否为空,进行相机位姿估计。
初始化后,本实施例持续对图像流进行处理,对当前处理的图像帧称为当前帧,对当前帧进行特征点提取,关于特征点提取前面已经描述,这里不再赘述。
对于相机位姿的估计,本实施例中如果用每一张图来建立或更新地图,计算量太大,因此本实施例通过关键帧来计算。本实施例将初始化完成时的图像帧作为初始关键帧,并在获取每一帧图像特征点对应的地图点后,更新当前关键帧,用于后续位姿估计。
当前关键帧是指在处理当前帧时对应的关键帧,在初始化后,初始化完成时的图像帧为初始关键帧,本实施例对关键帧进行管理,具体如下:
本实施例对于每帧运动物体图像,在获取每一帧图像特征点对应的地图点后,比较当前帧与当前关键帧共同的地图点,在当前帧与当前关键帧共同的地图点不超过设定的阈值(例如90%)时,将当前帧作为新的当前关键帧。
此外,对于所有关键帧,当生成新的当前关键帧时,还依次检测所有关键帧,如果检测到有关键帧与至少三个其它关键帧之间,共同的地图点超过设定的阈值(例如有至少90%的地图点重复),就剔除这个关键帧,以减少维护关键帧的计算量。
本实施例进行相机位姿估计,用估计的相机位姿作为后续优化的初值,本发明技术方案不限于具体的相机位姿估计方法,例如可以采用当前关键帧的相机位姿作为估计的相机位姿,并作为后续优化的初值。
本发明的一种实施例,进行相机位姿估计,包括:
如果上一帧对应的速度矩阵为空,则根据当前关键帧进行相机位姿估计,否则根据运动模型进行相机位姿估计。上一帧对应的速度矩阵为得到上一帧的相机位姿后,用上一帧的相机位姿乘以上上一帧的相机位姿。
本实施例在进行相机位姿估计时,如果上一帧的速度矩阵不为空,则根据运动模型进行相机位姿估计。运动模型假设的是相机运动速度不变,即在估计当前帧的相机位姿时为:当前帧的相机位姿等于上一帧对应的速度矩阵乘以上上一帧的相机位姿。
需要说明的是,上一帧的速度矩阵为得到上一帧的相机位姿后,用上一帧的相机位姿乘以上上一帧的相机位姿。本实施例在计算得到一帧的相机位姿后,还更新速度矩阵,以用于后续帧的相机位姿估计。
如果上一帧的速度矩阵为空,则根据关键帧进行相机位姿估计,即直接将当前帧的相机位姿赋值成当前关键帧的相机位姿,作为后续相机位姿优化的初值。
步骤S3、以相机位姿估计得到的值为初值,采用特征点对应的地图点重投影到图像坐标系的重投影误差函数作为目标函数,进行相机位姿优化,得到优化好的相机位姿及特征点对应的地图点。
本实施例对当前估计的相机位姿做光束平差法(Bundle Adjustment),优化单帧的相机位姿以提高相机位姿的精度,得到准确当前帧的相机位姿。
本实施例首先通过特征点的描述子来做当前帧与其对应的关键帧图像特征点的匹配,已知匹配的2D特征点坐标(即图像坐标)和其形成的地图点即其3D坐标点(世界坐标系坐标),把3D的坐标按照当前的相机位姿重新投影回2D的图像上,把投影回来的点与图像上原来对应的2D点做比较,优化当前帧的相机姿态,采用3D-2D的重投影误差构成优化的目标函数。
本方法引进的一个新的误差项EtagPro,融合新数据,用重投影误差结合Tag的位姿联合优化相机位姿,求得使重投影误差最小的旋转矩阵R,平移向量t,以及地图点集X:
其中,η表示当前帧与上一帧所有特征匹配点的集合,R,t的初值为估计得到的相机位姿,即相机的旋转矩阵和平移向量,ρ表示Huber能量函数,Σ表示优化帧对应关键帧的协方差矩阵,xi表示第i个特征点的图像坐标,Xi表示第i个特征点的地图点坐标,EcPro表示相机估计出来的位姿变换求出的三维点重投影回图像后与图像中特征点的重投影误差,EtagPro表示相机估计出来的位姿变换与获取的Tag位姿变换分别重投到图像上的重投影误差,Rtag和ttag分别表示获取的Tag旋转矩阵和平移向量,π用如下定义表示:
其中,(fx,fy)表示相机焦距,(cx,cy)表示相机光圈,(X,Y,Z)表示空间点的世界坐标系坐标。
ρ(a)为Huber能量函数:
a表示误差值,δ为常数,一般取值为1。
通过上述优化方式,得到优化好的相机位姿,优化好的相机位姿是重投影误差最小的相机位姿。
需要说明的是,上述优化方法中加入了新的误差项EtagPro,提高了优化的精度。当不加入该新的误差项EtagPro时,也可以进行优化,不过优化精度没有加入新的误差项高。对于不加入该新的误差项的具体优化过程,这里不再赘述。
SLAM用当前帧相对于世界坐标系原点的旋转矩阵和平移向量来表示当前相机位姿,也即当前帧相对于初始关键帧的外参,这里不再赘述。
本实施例对于初始化以后的特征点的世界坐标系坐标,根据上述优化得到的特征点的世界坐标系坐标,即对应的地图点。对深度值未知的特征点,在刚形成当前关键帧时,其深度赋初值为1,然后根据公式(8)的重投影误差,在后续帧中不断跟踪这些特征点,优化得到这些特征点的深度值。如果深度值收敛,则形成新的世界坐标系坐标,否则丢弃该特征点,不会形成世界坐标系坐标。
容易理解的是,在获取到当前帧的特征点对应的地图点后,则会比较当前帧与当前关键帧共同的地图点,更新当前关键帧,这里不再赘述。
步骤S4、在得到优化好的相机位姿后,再根据当前帧到当前帧关键帧的相机位姿、当前关键帧与初始化关键帧的相机位姿来求出当前帧的相机位姿,将相机位姿转换为运动物体的位姿。
在得到优化好的相机位姿后,再根据当前帧到当前帧关键帧的相机位姿、当前关键帧与初始化关键帧的相机位姿来求出当前帧的相机位姿,这样避免上一帧相机位姿估计误差对当前帧的相机位姿估计带来影响。
Tcamera=Tref×TcamToRef (12)
其中Tcamera为当前帧的相机位姿,Tref为当前关键帧与初始化关键帧的相机位姿,TcamToRef为当前帧到当前帧关键帧的相机位姿。
需要说明的是,计算出当前帧的相机位姿后,可以用来计算速度矩阵,这里不再赘述。
计算出当前帧的相机位姿后,将相机位姿转换为物体的位姿:
Tobject=Tcamera -1 (13)
其中Tobject表示物体位姿。
在实际的应用中,运动物体可以是无人机,通过本技术方案的方法,将相机位姿转成无人机位姿,并输出当前无人机的三维点云图。
本发明提出了物体六自由度位姿估计方法,基于纯视觉,在物体发生快速运动的情况下,仍表现优异。通过实验,可以得到表1所示技术指标:
偏航角误差 | 俯仰角误差 | 翻转角误差 | x轴方向误差 | y轴方向误差 | z轴方向误差 |
0.1° | 0.5° | 0.5° | 1mm | 1mm | 0.3mm |
表1实验误差测量
本发明引入了Tag来消除系统的累计误差,通过Tag完成SLAM的一帧初始化,解决了单目SLAM会出现的尺度漂移问题。由于特征点的检测效率高,该方法可以实现最高50FPS的实时检测。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (4)
1.一种基于Tag的六自由度姿态估计方法,其特征在于,所述基于Tag的六自由度姿态估计方法,包括:
接收输入的图像流,检测图像中运动物体上贴的二维码标签,完成初始化,以初始化完成时的图像帧为初始关键帧;
在初始化后,持续对每帧图像提取特征点,并根据上一帧对应的速度矩阵是否为空,进行相机位姿估计;
以相机位姿估计得到的值为初值,采用特征点对应的地图点重投影到图像坐标系的重投影误差函数作为目标函数,进行相机位姿优化,得到优化好的相机位姿及特征点对应的地图点;
比较当前帧与当前关键帧共同的地图点,在当前帧与当前关键帧共同的地图点不超过设定的阈值时,将当前帧作为新的当前关键帧;
在得到优化好的相机位姿后,再根据当前帧到当前帧关键帧的相机位姿、当前关键帧与初始化关键帧的相机位姿来求出当前帧的相机位姿,将相机位姿转换为运动物体的位姿。
2.如权利要求1所述的基于Tag的六自由度姿态估计方法,其特征在于,所述基于Tag的六自由度姿态估计方法,还包括:
当生成新的当前关键帧时,还依次检测所有关键帧,如果检测到有关键帧与至少三个其它关键帧之间,共同的地图点超过设定的阈值,就剔除这个关键帧。
3.如权利要求1所述的基于Tag的六自由度姿态估计方法,其特征在于,所述进行相机位姿估计,包括:
如果上一帧对应的速度矩阵为空,则将当前帧的相机位姿赋值成当前关键帧的相机位姿;
如果上一帧对应的速度矩阵不为空,则当前帧的相机位姿为上一帧对应的速度矩阵乘以上上一帧的相机位姿;
所述上一帧对应的速度矩阵为上一帧的相机位姿乘以上上一帧的相机位姿。
4.如权利要求1所述的基于Tag的六自由度姿态估计方法,其特征在于,所述目标函数为:
其中,
其中,η表示当前帧与上一帧所有特征匹配点的集合,X为地图点集,R,t的初值为估计得到的相机位姿,即相机的旋转矩阵和平移向量,ρ表示Huber能量函数,Σ表示优化帧对应关键帧的协方差矩阵,xi表示第i个特征点的图像坐标,Xi表示第i个特征点的地图点坐标,EcPro表示相机估计出来的位姿变换求出的三维点重投影回图像后与图像中特征点的重投影误差,EtagPro表示相机估计出来的位姿变换与获取的Tag位姿变换分别重投到图像上的重投影误差,Rtag和ttag分别表示获取的Tag旋转矩阵和平移向量,π用如下定义表示:
其中,(fx,fy)表示相机焦距,(cx,cy)表示相机光圈,(X,Y,Z)表示空间点的世界坐标系坐标。
ρ(a)为Huber能量函数:
a表示误差值,δ为常数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811101406.3A CN109345588B (zh) | 2018-09-20 | 2018-09-20 | 一种基于Tag的六自由度姿态估计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811101406.3A CN109345588B (zh) | 2018-09-20 | 2018-09-20 | 一种基于Tag的六自由度姿态估计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109345588A true CN109345588A (zh) | 2019-02-15 |
CN109345588B CN109345588B (zh) | 2021-10-15 |
Family
ID=65305834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811101406.3A Active CN109345588B (zh) | 2018-09-20 | 2018-09-20 | 一种基于Tag的六自由度姿态估计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109345588B (zh) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109993793A (zh) * | 2019-03-29 | 2019-07-09 | 北京易达图灵科技有限公司 | 视觉定位方法及装置 |
CN110047108A (zh) * | 2019-03-07 | 2019-07-23 | 中国科学院深圳先进技术研究院 | 无人机位姿确定方法、装置、计算机设备及存储介质 |
CN110458889A (zh) * | 2019-08-09 | 2019-11-15 | 东北大学 | 一种基于语义路标的摄像机重定位方法 |
CN110703188A (zh) * | 2019-09-10 | 2020-01-17 | 天津大学 | 一种基于rfid的六自由度姿态估计系统 |
CN110962128A (zh) * | 2019-12-11 | 2020-04-07 | 广东电科院能源技术有限责任公司 | 一种变电站巡检布点方法及巡检机器人控制方法 |
CN111179342A (zh) * | 2019-12-11 | 2020-05-19 | 上海非夕机器人科技有限公司 | 物体位姿的估计方法、装置、存储介质和机器人 |
CN111242996A (zh) * | 2020-01-08 | 2020-06-05 | 郭轩 | 一种基于Apriltag标签与因子图的SLAM方法 |
CN111623773A (zh) * | 2020-07-17 | 2020-09-04 | 国汽(北京)智能网联汽车研究院有限公司 | 一种基于鱼眼视觉和惯性测量的目标定位方法及装置 |
CN111667535A (zh) * | 2020-06-04 | 2020-09-15 | 电子科技大学 | 一种针对遮挡场景下的六自由度位姿估计方法 |
CN111667539A (zh) * | 2020-06-08 | 2020-09-15 | 武汉唯理科技有限公司 | 一种相机标定及平面测量方法 |
CN111735446A (zh) * | 2020-07-09 | 2020-10-02 | 上海思岚科技有限公司 | 一种激光、视觉定位融合的方法及设备 |
CN111739071A (zh) * | 2020-06-15 | 2020-10-02 | 武汉尺子科技有限公司 | 基于初始值的快速迭代配准方法、介质、终端和装置 |
CN111862200A (zh) * | 2020-06-30 | 2020-10-30 | 同济大学 | 一种煤棚内无人机定位方法 |
CN112101145A (zh) * | 2020-08-28 | 2020-12-18 | 西北工业大学 | 基于svm分类器的移动机器人位姿估计方法 |
CN112150547A (zh) * | 2019-06-28 | 2020-12-29 | 北京初速度科技有限公司 | 一种确定车体位姿的方法、装置及环视视觉里程计系统 |
WO2020259248A1 (zh) * | 2019-06-28 | 2020-12-30 | Oppo广东移动通信有限公司 | 基于深度信息的位姿确定方法、装置、介质与电子设备 |
CN112444242A (zh) * | 2019-08-31 | 2021-03-05 | 北京地平线机器人技术研发有限公司 | 一种位姿优化方法及装置 |
CN112734844A (zh) * | 2021-01-08 | 2021-04-30 | 河北工业大学 | 一种基于正八面体的单目6d位姿估计方法 |
CN112734843A (zh) * | 2021-01-08 | 2021-04-30 | 河北工业大学 | 一种基于正十二面体的单目6d位姿估计方法 |
CN112857215A (zh) * | 2021-01-08 | 2021-05-28 | 河北工业大学 | 一种基于正二十面体的单目6d位姿估计方法 |
CN113034538A (zh) * | 2019-12-25 | 2021-06-25 | 杭州海康威视数字技术股份有限公司 | 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备 |
WO2021129071A1 (zh) * | 2019-12-25 | 2021-07-01 | 北京极智嘉科技股份有限公司 | 机器人、定位方法及计算机可读存储介质 |
CN113239072A (zh) * | 2021-04-27 | 2021-08-10 | 华为技术有限公司 | 一种终端设备定位方法及其相关设备 |
CN113298879A (zh) * | 2021-05-26 | 2021-08-24 | 北京京东乾石科技有限公司 | 视觉定位方法、装置及存储介质和电子设备 |
CN113361400A (zh) * | 2021-06-04 | 2021-09-07 | 清远华奥光电仪器有限公司 | 一种头部姿态估计方法、装置及存储介质 |
CN113506369A (zh) * | 2021-07-13 | 2021-10-15 | 阿波罗智能技术(北京)有限公司 | 用于生成地图的方法、装置、电子设备和介质 |
CN115661247A (zh) * | 2022-10-28 | 2023-01-31 | 南方电网电力科技股份有限公司 | 一种实时6DoF算法精度测量方法及装置 |
CN116051630A (zh) * | 2023-04-03 | 2023-05-02 | 慧医谷中医药科技(天津)股份有限公司 | 高频率6DoF姿态估计方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105928505A (zh) * | 2016-04-19 | 2016-09-07 | 深圳市神州云海智能科技有限公司 | 移动机器人的位姿确定方法和设备 |
CN106062821A (zh) * | 2014-03-14 | 2016-10-26 | 高通股份有限公司 | 用于不受限制的slam的基于传感器的相机运动检测 |
CN106803261A (zh) * | 2015-11-20 | 2017-06-06 | 沈阳新松机器人自动化股份有限公司 | 机器人相对位姿估计方法 |
CN107328420A (zh) * | 2017-08-18 | 2017-11-07 | 上海木爷机器人技术有限公司 | 定位方法和装置 |
CN107564012A (zh) * | 2017-08-01 | 2018-01-09 | 中国科学院自动化研究所 | 面向未知环境的增强现实方法及装置 |
CN107862720A (zh) * | 2017-11-24 | 2018-03-30 | 北京华捷艾米科技有限公司 | 基于多地图融合的位姿优化方法及位姿优化系统 |
-
2018
- 2018-09-20 CN CN201811101406.3A patent/CN109345588B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106062821A (zh) * | 2014-03-14 | 2016-10-26 | 高通股份有限公司 | 用于不受限制的slam的基于传感器的相机运动检测 |
CN106803261A (zh) * | 2015-11-20 | 2017-06-06 | 沈阳新松机器人自动化股份有限公司 | 机器人相对位姿估计方法 |
CN105928505A (zh) * | 2016-04-19 | 2016-09-07 | 深圳市神州云海智能科技有限公司 | 移动机器人的位姿确定方法和设备 |
CN107564012A (zh) * | 2017-08-01 | 2018-01-09 | 中国科学院自动化研究所 | 面向未知环境的增强现实方法及装置 |
CN107328420A (zh) * | 2017-08-18 | 2017-11-07 | 上海木爷机器人技术有限公司 | 定位方法和装置 |
CN107862720A (zh) * | 2017-11-24 | 2018-03-30 | 北京华捷艾米科技有限公司 | 基于多地图融合的位姿优化方法及位姿优化系统 |
Cited By (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110047108A (zh) * | 2019-03-07 | 2019-07-23 | 中国科学院深圳先进技术研究院 | 无人机位姿确定方法、装置、计算机设备及存储介质 |
CN110047108B (zh) * | 2019-03-07 | 2021-05-25 | 中国科学院深圳先进技术研究院 | 无人机位姿确定方法、装置、计算机设备及存储介质 |
CN109993793A (zh) * | 2019-03-29 | 2019-07-09 | 北京易达图灵科技有限公司 | 视觉定位方法及装置 |
CN112150547A (zh) * | 2019-06-28 | 2020-12-29 | 北京初速度科技有限公司 | 一种确定车体位姿的方法、装置及环视视觉里程计系统 |
CN112150547B (zh) * | 2019-06-28 | 2024-03-12 | 北京魔门塔科技有限公司 | 一种确定车体位姿的方法、装置及环视视觉里程计系统 |
WO2020259248A1 (zh) * | 2019-06-28 | 2020-12-30 | Oppo广东移动通信有限公司 | 基于深度信息的位姿确定方法、装置、介质与电子设备 |
CN110458889A (zh) * | 2019-08-09 | 2019-11-15 | 东北大学 | 一种基于语义路标的摄像机重定位方法 |
CN112444242A (zh) * | 2019-08-31 | 2021-03-05 | 北京地平线机器人技术研发有限公司 | 一种位姿优化方法及装置 |
CN112444242B (zh) * | 2019-08-31 | 2023-11-10 | 北京地平线机器人技术研发有限公司 | 一种位姿优化方法及装置 |
CN110703188A (zh) * | 2019-09-10 | 2020-01-17 | 天津大学 | 一种基于rfid的六自由度姿态估计系统 |
CN110962128B (zh) * | 2019-12-11 | 2021-06-29 | 南方电网电力科技股份有限公司 | 一种变电站巡检布点方法及巡检机器人控制方法 |
CN110962128A (zh) * | 2019-12-11 | 2020-04-07 | 广东电科院能源技术有限责任公司 | 一种变电站巡检布点方法及巡检机器人控制方法 |
CN111179342B (zh) * | 2019-12-11 | 2023-11-17 | 上海非夕机器人科技有限公司 | 物体位姿的估计方法、装置、存储介质和机器人 |
CN111179342A (zh) * | 2019-12-11 | 2020-05-19 | 上海非夕机器人科技有限公司 | 物体位姿的估计方法、装置、存储介质和机器人 |
WO2021129071A1 (zh) * | 2019-12-25 | 2021-07-01 | 北京极智嘉科技股份有限公司 | 机器人、定位方法及计算机可读存储介质 |
CN113034538A (zh) * | 2019-12-25 | 2021-06-25 | 杭州海康威视数字技术股份有限公司 | 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备 |
CN113034538B (zh) * | 2019-12-25 | 2023-09-05 | 杭州海康威视数字技术股份有限公司 | 一种视觉惯导设备的位姿跟踪方法、装置及视觉惯导设备 |
CN111242996A (zh) * | 2020-01-08 | 2020-06-05 | 郭轩 | 一种基于Apriltag标签与因子图的SLAM方法 |
CN111667535A (zh) * | 2020-06-04 | 2020-09-15 | 电子科技大学 | 一种针对遮挡场景下的六自由度位姿估计方法 |
CN111667539A (zh) * | 2020-06-08 | 2020-09-15 | 武汉唯理科技有限公司 | 一种相机标定及平面测量方法 |
CN111667539B (zh) * | 2020-06-08 | 2023-08-29 | 武汉唯理科技有限公司 | 一种相机标定及平面测量方法 |
CN111739071B (zh) * | 2020-06-15 | 2023-09-05 | 武汉尺子科技有限公司 | 基于初始值的快速迭代配准方法、介质、终端和装置 |
CN111739071A (zh) * | 2020-06-15 | 2020-10-02 | 武汉尺子科技有限公司 | 基于初始值的快速迭代配准方法、介质、终端和装置 |
CN111862200B (zh) * | 2020-06-30 | 2023-04-28 | 同济大学 | 一种煤棚内无人机定位方法 |
CN111862200A (zh) * | 2020-06-30 | 2020-10-30 | 同济大学 | 一种煤棚内无人机定位方法 |
CN111735446A (zh) * | 2020-07-09 | 2020-10-02 | 上海思岚科技有限公司 | 一种激光、视觉定位融合的方法及设备 |
CN111735446B (zh) * | 2020-07-09 | 2020-11-13 | 上海思岚科技有限公司 | 一种激光、视觉定位融合的方法及设备 |
CN111623773A (zh) * | 2020-07-17 | 2020-09-04 | 国汽(北京)智能网联汽车研究院有限公司 | 一种基于鱼眼视觉和惯性测量的目标定位方法及装置 |
CN112101145A (zh) * | 2020-08-28 | 2020-12-18 | 西北工业大学 | 基于svm分类器的移动机器人位姿估计方法 |
CN112734844A (zh) * | 2021-01-08 | 2021-04-30 | 河北工业大学 | 一种基于正八面体的单目6d位姿估计方法 |
CN112857215A (zh) * | 2021-01-08 | 2021-05-28 | 河北工业大学 | 一种基于正二十面体的单目6d位姿估计方法 |
CN112734843A (zh) * | 2021-01-08 | 2021-04-30 | 河北工业大学 | 一种基于正十二面体的单目6d位姿估计方法 |
CN112857215B (zh) * | 2021-01-08 | 2022-02-08 | 河北工业大学 | 一种基于正二十面体的单目6d位姿估计方法 |
CN113239072A (zh) * | 2021-04-27 | 2021-08-10 | 华为技术有限公司 | 一种终端设备定位方法及其相关设备 |
CN113298879A (zh) * | 2021-05-26 | 2021-08-24 | 北京京东乾石科技有限公司 | 视觉定位方法、装置及存储介质和电子设备 |
CN113298879B (zh) * | 2021-05-26 | 2024-04-16 | 北京京东乾石科技有限公司 | 视觉定位方法、装置及存储介质和电子设备 |
CN113361400A (zh) * | 2021-06-04 | 2021-09-07 | 清远华奥光电仪器有限公司 | 一种头部姿态估计方法、装置及存储介质 |
CN113506369A (zh) * | 2021-07-13 | 2021-10-15 | 阿波罗智能技术(北京)有限公司 | 用于生成地图的方法、装置、电子设备和介质 |
CN115661247A (zh) * | 2022-10-28 | 2023-01-31 | 南方电网电力科技股份有限公司 | 一种实时6DoF算法精度测量方法及装置 |
CN115661247B (zh) * | 2022-10-28 | 2024-07-02 | 南方电网电力科技股份有限公司 | 一种实时6DoF算法精度测量方法及装置 |
CN116051630A (zh) * | 2023-04-03 | 2023-05-02 | 慧医谷中医药科技(天津)股份有限公司 | 高频率6DoF姿态估计方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109345588B (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345588B (zh) | 一种基于Tag的六自由度姿态估计方法 | |
CN110070615B (zh) | 一种基于多相机协同的全景视觉slam方法 | |
CN110853075B (zh) | 一种基于稠密点云与合成视图的视觉跟踪定位方法 | |
US11830216B2 (en) | Information processing apparatus, information processing method, and storage medium | |
CN105021124B (zh) | 一种基于深度图的平面零件三维位置和法向量计算方法 | |
CN109993793B (zh) | 视觉定位方法及装置 | |
CN110853100B (zh) | 一种基于改进点线特征的结构化场景视觉slam方法 | |
Muñoz-Bañón et al. | Targetless camera-LiDAR calibration in unstructured environments | |
CN108519102B (zh) | 一种基于二次投影的双目视觉里程计算方法 | |
CN114140527B (zh) | 一种基于语义分割的动态环境双目视觉slam方法 | |
Li et al. | Fast visual odometry using intensity-assisted iterative closest point | |
CN112164117A (zh) | 一种基于Kinect相机的V-SLAM位姿估算方法 | |
CN112419497A (zh) | 基于单目视觉的特征法与直接法相融合的slam方法 | |
CN113744315B (zh) | 一种基于双目视觉的半直接视觉里程计 | |
CN114088081A (zh) | 一种基于多段联合优化的用于精确定位的地图构建方法 | |
CN111998862A (zh) | 一种基于bnn的稠密双目slam方法 | |
CN116468786B (zh) | 一种面向动态环境的基于点线联合的语义slam方法 | |
Guan et al. | Minimal solvers for relative pose estimation of multi-camera systems using affine correspondences | |
CN108694348B (zh) | 一种基于自然特征的跟踪注册方法及装置 | |
CN105339981A (zh) | 用于使用一组基元配准数据的方法 | |
CN116894876A (zh) | 基于实时图像的6-dof的定位方法 | |
Li et al. | Joint intrinsic and extrinsic lidar-camera calibration in targetless environments using plane-constrained bundle adjustment | |
CN114972491A (zh) | 视觉slam方法、电子设备、存储介质及产品 | |
CN114445591A (zh) | 地图构建方法、系统、设备以及计算机存储介质 | |
Cheng et al. | Positioning method research for unmanned aerial vehicles based on meanshift tracking algorithm |
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 |