CN110703773B - 一种使用圆和编码光源作为标识物进行agv定位的方法 - Google Patents
一种使用圆和编码光源作为标识物进行agv定位的方法 Download PDFInfo
- Publication number
- CN110703773B CN110703773B CN201910824560.1A CN201910824560A CN110703773B CN 110703773 B CN110703773 B CN 110703773B CN 201910824560 A CN201910824560 A CN 201910824560A CN 110703773 B CN110703773 B CN 110703773B
- Authority
- CN
- China
- Prior art keywords
- coordinate system
- light source
- image
- calculating
- marker
- 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 75
- 239000003550 marker Substances 0.000 claims abstract description 84
- 239000011159 matrix material Substances 0.000 claims abstract description 76
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000003287 optical effect Effects 0.000 claims abstract description 4
- 238000013519 translation Methods 0.000 claims description 26
- 238000001514 detection method Methods 0.000 claims description 6
- 238000003708 edge detection Methods 0.000 claims description 6
- XOFYZVNMUHMLCC-ZPOLXVRWSA-N prednisone Chemical compound O=C1C=C[C@]2(C)[C@H]3C(=O)C[C@](C)([C@@](CC4)(O)C(=O)CO)[C@@H]4[C@@H]3CCC2=C1 XOFYZVNMUHMLCC-ZPOLXVRWSA-N 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000000007 visual effect Effects 0.000 abstract description 4
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 230000007547 defect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- YOBAEOGBNPPUQV-UHFFFAOYSA-N iron;trihydrate Chemical compound O.O.O.[Fe].[Fe] YOBAEOGBNPPUQV-UHFFFAOYSA-N 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Electromagnetism (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明属于计算机视觉技术领域,公开了一种使用圆和编码光源作为标识物进行AGV定位的方法,制作标识物;截取图像帧,检测该帧图像中的大圆形孔,获取大圆形孔在图像坐标系下的一般方程;利用射影几何的方法计算大圆形孔的圆心;建立初始坐标系;对检测到的大圆形孔进行跟踪,使用射影几何的方法计算大圆形孔的圆心;计算当前帧像平面和标识物平面的单应性矩阵;对时分编码光源进行跟踪与解码;计算AGV上相机光心在场景坐标系下的坐标;判断AGV相机拍摄是否结束。本发明提升了AGV视觉定位的抗干扰能力,降低了数据处理量,具有成本低、精度高、实时性好的优点,可用于自动化工业机器人在实际场景的精确定位。
Description
技术领域
本发明属于计算机视觉技术领域,尤其涉及一种使用圆和编码光源作为标识物进行AGV定位的方法。
背景技术
目前,最接近的现有技术:自动导引车(AGV,Automated Guided Vehicle)是一种装备有电磁、超声波、激光等自动导航装置,在没有外界人员干预和操控的情况下,能够按照规定路径精确行驶,自动完成移载作业任务的功能型运输车。AGV依靠车载传感器采集外界信号,确定所处工作空间位置及姿态信息,这个过程称作定位。目前AGV在工业应用中,存在多种定位方法:采用GPS、WIFI、蓝牙等无线定位精度较低,且在被建筑物遮挡的车间中易受到干扰;采用磁导引方法进行定位成本较低且定位结构简单,但AGV只能在固定路线上行驶;采用激光导引定位精度较高,但其成本较高。而目前使用计算机视觉对AGV进行导引定位的方案普遍使用不能自发光的标识物,且在整幅图像中提取目标标识物的几何特征从而确定标识物的图像坐标,因此具有抗干扰能力差、数据处理量大、实时性差的缺点。
西安电子科技大学在其申请的专利“利用编码光源为标志物的增强现实三维注册方法”(申请日:2016年7月1日,申请号:201610511507.2,公开号:106204744B)中公开了一种利用编码光源为标志物进行三维注册的方法。该方法利用自然场景中空间位置坐标已知且拟作为标志的光源进行时分编码,跟踪视频图像中检测到的光源,对跟踪到的光源进行解码,从而确定的视频设备在自然场景中的旋转矩阵和平移向量。但该方法中存在的不足之处是:只使用了编码光源作为标识物,因此对编码光源的初定位比较困难,不适合AGV在复杂场景下的应用。因此,将这种方法中提到的编码光源和标识物结合起来,仅使用单个相机就可以完成AGV在实际场景的定位。
综上所述,现有技术存在的问题是:
(1)目前使用计算机视觉对AGV进行导引定位的方案抗干扰能力差、数据处理量大、实时性差。
(2)目前采用GPS、WIFI、蓝牙等无线方法进行AGV导引定位精度较低,采用磁导引方法进行定位AGV只能在固定路线上行驶;采用激光导引定位精度较高,但其成本较高。
解决上述技术问题的难度:
AGV机器人自主行驶的先决条件就是有效的定位,而AGV在移动过程中的定位,又是一个更为困难的问题。之前大多数基于计算机视觉的AGV定位方法都存在可靠性差、数据处理量大、实时性差的缺点,因此无法直接投入商业应用中。且之前采用计算机视觉进行AGV定位的方法,如果使用相同标识物,则无法确定AGV上相机拍摄到的标识物在场景中的位置,从而无法完成在大场景中的定位,如果使用不同标识物可以完成AGV在大场景中的定位,但由于标识物不同,因此难以完成大量标识物的加工制造。
解决上述技术问题的意义:
采用计算机视觉作为AGV的主要导航方式具有成本低,精度高,安装精度要求低等优点,但目前主要受限于靠性差、数据处理量大、实时性差等缺点迟迟不能广泛应用于实际工业场景。因此,设计一种实时性好、精度高、抗干扰能力强的AGV视觉定位方案具有很高应用价值。
发明内容
针对现有技术存在的问题,本发明提供了一种使用圆和编码光源作为标识物进行AGV定位的方法。
本发明是这样实现的,一种使用圆和编码光源作为标识物进行AGV定位的方法,所述使用圆和编码光源作为标识物进行AGV定位的方法采用黑色背景下的高亮圆形与编码光源结合作为标识物的方法,使用单个相机完成AGV在实际场景下的定位;通过对标识物的检测和计算获得AGV上相机坐标系相对于标识物坐标系的旋转矩阵和平移向量;通过对编码光源的解码来获得当前标识物坐标系相对于场景坐标系的旋转矩阵和平移向量;利用坐标系之间的相对位姿关系进行计算,获得AGV在实际场景的坐标和姿态信息。
进一步,所述使用圆和编码光源作为标识物进行AGV定位的方法包括以下步骤:
第一步,标识物使用有白色匀光板灯箱作为背景光源,在匀光板上贴上有两个大圆形孔和一个小圆形孔的黑色不透明贴纸;在匀光板开一个与不透明贴纸上小圆孔直径和位置完全相同的孔,使得时分编码光源的光线能够穿过匀光板和黑色不透明贴纸;
第二步,检测图像中的大圆形孔,获取大圆形孔在图像坐标系下的方程;截取视频一帧,在该帧图像上从左到右,从上到下每隔40个像素产生一个种子点;判断种子点所在位置的灰度值,如果该灰度值大于某一阈值,则认为该种子点可能位于圆形孔内;对于可能在圆形孔内的种子点,在该种子点的0°,45°,90°,135°,180°,225°,270°,315°八个方向上进行边缘搜索;若该种子点每个方向上都存在边缘点,则可以认为该种子点位于一个连通域内;对该种子点搜索出来的八个边缘点进行亚像素边缘检测,使用最小二乘法获得椭圆的一般方程的各项系数,椭圆一般方程如下所示:
其中a,b,c,d,e,f为所求椭圆的系数。分别计算八个方向的点和拟合的二次曲线的Sampson距离。对距离求和即为拟合总误差,误差表达式如下:
ΔE=ΔE1+ΔE2+ΔE3+……+ΔE8;
其中ΔE表示拟合的总误差,ΔEi表示八个方向点距离拟合椭圆的Sampson距离,C是二次曲线的系数方阵,x是边缘点坐标的齐次表示x=[xe ye 1]T;若计算出来的ΔE小于某一个阈值,则该种子点所在的连通域是一个椭圆;对于之后的种子点,先判断该种子点是否在已拟合的椭圆内,如果在已拟合的椭圆内则不进行操作,否则进行相同的操作;获得Ci为大圆孔在图像坐标系下的系数方阵;
第三步,利用射影几何的方法计算大圆形孔的圆心;根据绝对二次曲线的定义,使用标定好的相机内参K计算绝对二次曲线:
ω=(KKT)-1;
平面π上的所有圆和Ω∞交于两点,两点位于π和π∞两平面的交线上,获得Ci和ω的交点的点集A:
A={x|xTCix=0,xTωx=0};
对点集A中的所有点使用最小二乘法进行直线拟合,获取无穷远直线在像平面的投影lvanish=[m n 1]T;根据极点极线关系可知极点圆心所对应的极线是无穷远直线,根据下式求出圆心坐标:
第四步,建立初始坐标系;计算连接相邻两圆心之间直线方程的系数:
ly=Oi×Oj;
以该直线作为y轴,根据极点极线关系,以两圆心连线作为y轴,计算两圆心连线对应的x方向的无穷远点:
Xi∞=Clij;
Xi∞是通过计算得出的x方向的无穷远点,在每个圆心处建立候选坐标系,候选坐标系x轴方程为lxi;
lxi=Oi×Xi∞;
确定标识物上大圆孔和拍摄帧中大圆孔的对应关系,使用时分编码光源做辅助判断;在每个候选坐标系的x轴上的一定范围内寻找局部极大值点;
第五步,大圆形孔的跟踪和圆心计算;截取新的一帧图像,以前一帧图像的检测到的大圆形孔的圆心作为当前帧的种子点,在该种子点的0°,45°,90°,135°,180°,225°,270°,315°八个方向上进行边缘搜索,对该种子点搜索出来的八个边缘点进行亚像素边缘检测,之后使用最小二乘法获得椭圆的一般方程的各项系数;再利用射影几何的方法计算当前帧圆形孔的圆心;
第六步,联立直线和椭圆方程计算标识物上各点在图像上的对应点的位置,使用最小二乘法获得前帧像平面和标识物平面的单应性矩阵;计算当前帧像平面和标识物平面的单应性矩阵H;利用当前帧圆心以及圆孔和时分编码光源的相对位置关系建立当前帧的坐标系;分别联立该坐标系平行于x轴的直线,y轴直线和椭圆的一般方程,求得y轴和x轴与椭圆的交点;
使用计算出来的图像中交点的坐标和该交点在标识物坐标系下对应点的坐标建立方程,利用最小二乘法获得像平面和标识物平面的单应性矩阵H,使得;
xcam=Hxmarker;
xcam是图像坐标系下点的齐次坐标,xmarker标识物坐标系下对应点的齐次坐标;
第七步,使用单应性矩阵和编码光源在标识物坐标系下的坐标计算编码光源在图像中的坐标;计算该坐标点周围的平均灰度,若平均灰度大于某一阈值,则认为该帧编码光源是处于亮的状态,否则认为该帧编码光源是处于灭的状态;记录完整编码周期内图像帧中的编码光源的亮灭状态,获得每个光源的解码序列;时分编码光源在标识物坐标系的齐次坐标表示为xlight,使用单应性矩阵H计算时分编码光源在图像坐标系中的位置;
xcamlight=Hxlight;
xcamlight为时分编码光源在图像坐标系中点的坐标,以该点为中心建立一个7×7的矩形窗口作为时分编码光源的跟踪窗口;
在每一帧计算时分编码光源跟踪窗口所在位置,并计算该窗口内平均灰度值;若平均灰度值大于某一阈值,则认为该帧编码光源是处于亮的状态,否则认为该帧编码光源是处于灭的状态;将光源亮时的解码设定为1,将光源灭时的解码设定为0;记录完整编码周期内图像帧中的编码光源的亮灭状态,获得与每个光源在视频图像中的亮灭状态对应的(0,1)解码序列;
第八步,通过单应性矩阵和相机内参计算相机坐标系相对于标识物坐标系的旋转矩阵和平移向量,对比解码序列可以获得标识物坐标系相对于实际场景坐标系的旋转矩阵和平移向量;利用坐标系之间的相对位姿关系进行计算,获得AGV在场景坐标系下的坐标和姿态信息;计算AGV上相机光心在场景坐标系下的坐标,通过像平面和标识物平面的单应性矩阵H,以及相机内参矩阵K,通过下式求出相机坐标系和标识物坐标系之间的旋转矩阵和平移向量;
λ[r1 r2 t]=K-1H;
r1和r2是旋转矩阵的第一和第二列,t是平移向量,λ是比例因子;因为旋转矩阵是一个单位正交矩阵,有以下约束:
r1×r2=r3;
r3旋转矩阵的第三列,通过约束获得一个标准化的外参数Mc矩阵描述相机坐标系和标识物坐标系之间的关系;
Rc是一个3×3的旋转矩阵,tc是一个3×1的平移向量;寻找与解码序列相同的编码光源在场景坐标系中的位置,获得当前AGV上相机拍摄到的标识物坐标系相对于场景坐标系的旋转平移矩阵Ms;
Rs是一个3×3的旋转矩阵,ts是一个3×1的平移向量,计算AGV机器人上相机在场景坐标系下的坐标为:
第九步,判断相机拍摄是否结束:若是,则结束;若否,则返回第五步。
进一步,所述第二步检测图像中的大圆形孔,获取大圆形孔在图像坐标系下的方程具体包括:
(1)在AGV相机连续拍摄的视频流中截取一帧;
(2)在截取图像帧中检测连通域,使用最小二乘法将连通域拟合为椭圆,使用Sampson距离作为拟合误差,若拟合误差小于某一阈值,则认为该连通域是椭圆。判断检测到圆形孔的数量是否小于2个:若是,返回(1),若否,执行第三步。
进一步,所述第三步利用射影几何的方法计算大圆形孔的圆心具体包括:
(1)根据射影几何中绝对二次曲线的定义使用标定好的相机内参计算绝对二次曲线;
(2)计算绝对二次曲线和大圆形孔在图像中的交点,利用交点拟合消影线;
(3)利用极点极线关系,计算大圆孔圆心在图像坐标系中的坐标。
进一步,所述第四步建立初始坐标系具体包括:
(1)以两圆心的连线作为y轴,用极点极线关系在每个圆心处建立候选坐标系,在每个候选坐标系x轴方向检测编码光源是否存在;
(2)若该帧没有检测到任何编码光源,则返回计算绝对二次曲线和大圆形孔在图像中的交点,利用交点拟合消影线;否则,以含有编码光源的候选x轴作为x轴,两圆心连线作为y轴建立初始坐标系。
进一步,所述第五步大圆形孔的跟踪和圆心计算具体包括:
(1)截取一帧图像,对大圆形孔进行跟踪并且计算大圆孔的一般方程,判断跟踪到大圆形孔的数量是否小于2个:若是,返回在截取图像帧中检测连通域,使用最小二乘法将连通域拟合为椭圆,使用Sampson距离作为拟合误差,若否,执行(2);
(2)利用射影几何的方法计算大圆形孔的圆心。
本发明的另一目的在于提供一种应用所述使用圆和编码光源作为标识物进行AGV定位的方法的计算机视觉处理系统。
综上所述,本发明的优点及积极效果为:本发明使用高亮圆形与编码光源结合作为标识物进行AGV高精度定位的新方法,通过新标识物以及新检测方法的设计,提升了AGV视觉定位的抗干扰能力,降低了数据处理量,具有成本低、精度高、实时性好的优点,此外还可以进行暗光条件下视觉定位。
与现有技术相比,本发明具有以下优势:
(1)本发明通过新标识物以及新检测方法的设计,只需要检测和跟踪视频图像中少量的点就可以完成AGV的定位,克服了现有技术的在视频图像中进行大量特征点检测和特征匹配时计算量庞大的不足,提高了检测速度。
(2)本发明的标识物和时分编码光源都是可以自发光,可以避免由于光线条件变化对于AGV定位精度的影响,此外还可以在暗光或者无光条件下进行AGV定位,提升了定位系统的鲁棒性。
(3)本发明在计算AGV相对场景情况位置时加入了时分编码光源,通过在场景不同位置使用不同编码的光源,可以判断当前AGV相机拍摄到的标识物在实际场景中的位置,从而仅使用单个相机就可以完成AGV在实际场景的定位。
附图说明
图1是本发明实施例提供的使用圆和编码光源作为标识物进行AGV定位的方法流程图。
图2是本发明实施例提供的使用圆和编码光源作为标识物进行AGV定位的方法实现流程图。
图3是本发明实施例提供的设计的标识物立体示意图。
图4是本发明实施例提供的标识物的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种使用圆和编码光源作为标识物进行AGV定位的方法,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的使用圆和编码光源作为标识物进行AGV定位的方法包括以下步骤:
S101:标识物使用有白色匀光板灯箱作为背景光源,在匀光板上贴上有两个大圆形孔和一个小圆形孔的黑色不透明贴纸;在匀光板开一个与不透明贴纸上小圆孔直径和位置完全相同的孔,使得时分编码光源的光线能够穿过匀光板和黑色不透明贴纸;
S102:检测图像中的大圆形孔,获取大圆形孔在图像坐标系下的方程;
S103:利用射影几何的方法计算大圆形孔的圆心;
S104:建立初始坐标系:
S105:大圆形孔的跟踪和圆心计算;
S106:联立直线和椭圆方程计算标识物上各点在图像上的对应点的位置,使用最小二乘法获得前帧像平面和标识物平面的单应性矩阵;
S107:使用单应性矩阵H和编码光源在标识物坐标系下的坐标计算编码光源在图像中的坐标。计算该坐标点周围的平均灰度,若平均灰度大于某一阈值,则认为该帧编码光源是处于亮的状态,否则认为该帧编码光源是处于灭的状态。记录完整编码周期内图像帧中的编码光源的亮灭状态,就可以获得每个光源的解码序列;
S108:通过单应性矩阵和相机内参计算相机坐标系相对于标识物坐标系的旋转矩阵和平移向量,对比解码序列可以获得标识物坐标系相对于实际场景坐标系的旋转矩阵和平移向量。利用坐标系之间的相对位姿关系进行计算,就可以获得AGV在场景坐标系下的坐标和姿态信息;
S109:判断相机拍摄是否结束:若是,则结束;若否,则返回S105。
在本发明的优选实施例中,步骤S102具体包括:
(1)在AGV相机连续拍摄的视频流中截取一帧;
(2)在截取图像帧中检测连通域,使用最小二乘法将连通域拟合为椭圆,使用Sampson距离作为拟合误差,若拟合误差小于某一阈值,则认为该连通域是椭圆。判断检测到圆形孔的数量是否小于2个:若是,返回(1),若否,执行S103;
在本发明的优选实施例中,步骤S103具体包括:
(1)根据射影几何中绝对二次曲线的定义使用标定好的相机内参计算绝对二次曲线;
(2)计算绝对二次曲线和大圆形孔在图像中的交点,利用交点拟合消影线;
(3)利用极点极线关系,计算大圆孔圆心在图像坐标系中的坐标。
在本发明的优选实施例中,步骤S104具体包括:
(1)以两圆心的连线作为y轴,用极点极线关系在每个圆心处建立候选坐标系,在每个候选坐标系x轴方向检测编码光源是否存在;
(2)若该帧没有检测到任何编码光源,则返回计算绝对二次曲线和大圆形孔在图像中的交点,利用交点拟合消影线;否则,以含有编码光源的候选x轴作为x轴,两圆心连线作为y轴建立初始坐标系。
在本发明的优选实施例中,步骤S105具体包括:
(1)截取一帧图像,对大圆形孔进行跟踪并且计算大圆孔的一般方程,判断跟踪到大圆形孔的数量是否小于2个:若是,返回S102(2),若否,执行(2);
(2)利用射影几何的方法计算大圆形孔的圆心。
下面结合附图对本发明的技术方案作进一步的描述。
如图2所示,本发明实施例提供的使用圆和编码光源作为标识物进行AGV定位的方法具体包括以下步骤:
步骤一,制作标识物。
本发明的时分编码硬件电路,对场景坐标系下坐标已知的光源进行通断控制,每个光源在视频图像的连续25帧中呈现不同的亮灭变化。本发明标识物使用有白色匀光板灯箱作为背景光源,在匀光板上贴上含有标识信息的黑色不透明贴纸。黑色不透明贴纸上有两个直径为50mm的大圆形孔和一个直径为3mm的小圆形孔。在匀光板开一个与不透明贴纸上小圆孔直径和位置完全相同的孔,使得时分编码光源的光线能够穿过匀光板和黑色不透明贴纸。标识物立体图见图3,标识物的正视图见图4。
步骤二,检测图像上大圆形孔,获取大圆形孔在图像坐标系下一般方程。
截取视频一帧,在该帧图像上从左到右,从上到下每隔40个像素产生一个种子点。判断种子点所在位置的灰度值,如果该灰度值大于某一阈值,则可以认为该种子点可能位于圆形孔内。对于可能在圆形孔内的种子点,在该种子点的0°,45°,90°,135°,180°,225°,270°,315°八个方向上进行边缘搜索。若该种子点每个方向上都存在边缘点,则可以认为该种子点位于一个连通域内。对该种子点搜索出来的八个边缘点进行亚像素边缘检测,之后使用最小二乘法获得椭圆的一般方程的各项系数。椭圆一般方程如下所示:
其中a,b,c,d,e,f为所求椭圆的系数。分别计算八个方向的点和拟合的二次曲线的Sampson距离。对距离求和即为拟合总误差,误差表达式如下:
ΔE=ΔE1+ΔE2+ΔE3+……+ΔE8;
其中ΔE表示拟合的总误差,ΔEi表示八个方向点距离拟合椭圆的Sampson距离,C是二次曲线的系数方阵,x是边缘点坐标的齐次表示x=[xe ye 1]T。若计算出来的ΔE小于某一个阈值,则认为该种子点所在的连通域是一个椭圆。
对于之后的种子点,先判断该种子点是否在已拟合的椭圆内,如果在已拟合的椭圆内则不进行操作,否则进行相同的操作。最后可以获得Ci为大圆孔在图像坐标系下的系数方阵。
判断当前帧检测到的大圆形孔的数量是否小于2个,若是,则返回步骤二,若否,则执行步骤三。
步骤三,利用射影几何的方法计算大圆形孔的圆心。
根据绝对二次曲线的定义,使用标定好的相机内参K计算绝对二次曲线:
ω=(KKT)-1;
平面π上的所有圆和Ω∞交于两点,这两点位于π和π∞两平面的交线上。由上述关系,可以获得Ci和ω的交点的点集A:
A={x|xTCix=0,xTωx=0};
对点集A中的所有点使用最小二乘法进行直线拟合,获取无穷远直线在像平面的投影lvanish=[m n 1]T。根据极点极线关系可知极点圆心所对应的极线是无穷远直线,因此可以根据下式求出圆心坐标:
步骤四,建立初始坐标系。
计算连接相邻两圆心之间直线方程的系数:
ly=Oi×Oj;
以该直线作为y轴。根据极点极线关系,以两圆心连线作为y轴,计算两圆心连线对应的x方向的无穷远点:
Xi∞=Clij;
Xi∞是通过计算得出的x方向的无穷远点。在每个圆心处建立候选坐标系,候选坐标系x轴方程为lxi。
lxi=Oi×Xi∞;
由于标识物上大圆孔参数完全相同,因此无法直接确定标识物上大圆孔和拍摄帧中大圆孔的对应关系,需要使用时分编码光源做辅助判断。
在每个候选坐标系的x轴上的一定范围内寻找局部极大值点。判断是否在帧图像中找到了局部极大值点,若是,则以含有编码光源的候选x轴作为x轴,两圆心连线作为y轴建立初始坐标系,若否,返回步骤二。
步骤五,大圆形孔的跟踪和圆心计算。
截取新的一帧图像,以前一帧图像的检测到的大圆形孔的圆心作为当前帧的种子点,在该种子点的0°,45°,90°,135°,180°,225°,270°,315°八个方向上进行边缘搜索,对该种子点搜索出来的八个边缘点进行亚像素边缘检测,之后使用最小二乘法获得椭圆的一般方程的各项系数。再利用射影几何的方法计算当前帧圆形孔的圆心。
判断当前帧跟踪到的大圆形孔的数量是否小于2个,若是,则返回步骤二,若否,则执行步骤六。
步骤六,计算当前帧像平面和标识物平面的单应性矩阵H。
利用当前帧圆心以及圆孔和时分编码光源的相对位置关系建立当前帧的坐标系。分别联立该坐标系平行于x轴的直线,y轴直线和椭圆的一般方程,可求得y轴和x轴与椭圆的交点;
使用计算出来的图像中交点的坐标和该交点在标识物坐标系下对应点的坐标建立方程,利用最小二乘法获得像平面和标识物平面的单应性矩阵H,使得;
xcam=Hxmarker;
xcam是图像坐标系下点的齐次坐标,xmarker标识物坐标系下对应点的齐次坐标。
步骤七,时分编码光源的跟踪与解码。
时分编码光源在标识物坐标系的齐次坐标可以表示为xlight,使用单应性矩阵H可以计算时分编码光源在图像坐标系中的位置;
xcamlight=Hxlight;
xcamlight为时分编码光源在图像坐标系中点的坐标,以该点为中心建立一个7×7的矩形窗口作为时分编码光源的跟踪窗口。
在每一帧计算时分编码光源跟踪窗口所在位置,并计算该窗口内平均灰度值。若平均灰度值大于某一阈值,则认为该帧编码光源是处于亮的状态,否则认为该帧编码光源是处于灭的状态。将光源亮时的解码设定为1,将光源灭时的解码设定为0。记录完整编码周期内图像帧中的编码光源的亮灭状态,就可以获得与每个光源在视频图像中的亮灭状态对应的(0,1)解码序列。
步骤八,计算AGV上相机光心在场景坐标系下的坐标,通过像平面和标识物平面的单应性矩阵H,以及相机内参矩阵K,可以通过下式求出相机坐标系和标识物坐标系之间的旋转矩阵和平移向量;
λ[r1 r2 t]=K-1H;
r1和r2是旋转矩阵的第一和第二列,t是平移向量,λ是比例因子。因为旋转矩阵是一个单位正交矩阵,因此有以下约束:
r1×r2=r3;
r3旋转矩阵的第三列。通过上述约束可以获得一个标准化的外参数Mc矩阵来描述相机坐标系和标识物坐标系之间的关系;
Rc是一个3×3的旋转矩阵,tc是一个3×1的平移向量。寻找与解码序列相同的编码光源在场景坐标系中的位置,就可以获得当前AGV上相机拍摄到的标识物坐标系相对于场景坐标系的旋转平移矩阵Ms;
Rs是一个3×3的旋转矩阵,ts是一个3×1的平移向量。因此可以计算AGV机器人上相机在场景坐标系下的坐标为:
步骤九,判断相机拍摄是否结束:若是,则结束;若否,则返回步骤五。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种使用圆和编码光源作为标识物进行AGV定位的方法,其特征在于,所述使用圆和编码光源作为标识物进行AGV定位的方法采用黑色背景下的高亮圆形与编码光源结合作为标识物的方法,使用单个相机完成AGV在实际场景下的定位;通过对标识物的检测和计算获得AGV上相机坐标系相对于标识物坐标系的旋转矩阵和平移向量;通过对编码光源的解码来获得当前标识物坐标系相对于场景坐标系的旋转矩阵和平移向量;利用坐标系之间的相对位姿关系进行计算,获得AGV在实际场景的坐标和姿态信息;
所述使用圆和编码光源作为标识物进行AGV定位的方法包括以下步骤:
第一步,标识物使用有白色匀光板的灯箱作为背景光源,在匀光板上贴上两个大圆形孔和一个小圆形孔的黑色不透明贴纸;在匀光板开一个与不透明贴纸上小圆孔直径和位置完全相同的孔,使得时分编码光源的光线能够穿过匀光板和黑色不透明贴纸;
第二步,检测图像中的大圆形孔,获取大圆形孔在图像坐标系下的方程;截取视频一帧,在该帧图像上从左到右,从上到下每隔40个像素产生一个种子点;判断种子点所在位置的灰度值,如果该灰度值大于某一阈值,则认为该种子点位于圆形孔内;对于在圆形孔内的种子点,在该种子点的0°,45°,90°,135°,180°,225°,270°,315°八个方向上进行边缘搜索;若该种子点每个方向上都存在边缘点,则认为该种子点位于一个连通域内;对该种子点搜索出来的八个边缘点进行亚像素边缘检测,使用最小二乘法获得椭圆的一般方程的各项系数,椭圆一般方程如下所示:
其中a,b,c,d,e,f为所求椭圆的系数,分别计算八个方向的点和拟合的二次曲线的Sampson距离,对距离求和即为拟合总误差,误差表达式如下:
ΔE=ΔE1+ΔE2+ΔE3+……+ΔE8;
其中ΔE表示拟合的总误差,ΔEi表示八个方向点距离拟合椭圆的Sampson距离,C是二次曲线的系数方阵,x是边缘点坐标的齐次表示x=[xe ye 1]T,xe是边缘点在图像坐标系下的x坐标,ye是边缘点在图像坐标系下的的y坐标;若计算出来的ΔE小于某一个阈值,则该种子点所在的连通域是一个椭圆;对于之后的种子点,先判断该种子点是否在已拟合的椭圆内,如果在已拟合的椭圆内则不进行操作,否则进行相同的操作;获得Ci为大圆孔在图像坐标系下的系数方阵;
第三步,利用射影几何的方法计算大圆形孔的圆心;根据绝对二次曲线的定义,使用标定好的相机内参矩阵K计算绝对二次曲线:
ω=(KKT)-1;
平面π上的所有圆和Ω∞交于两点,两点位于π和π∞两平面的交线上,获得Ci和ω的交点的点集A:
A={x|xTCix=0,xTωx=0};
对点集A中的所有点使用最小二乘法进行直线拟合,获取无穷远直线在像平面的投影lvanish=[m n 1]T;根据极点极线关系可知极点圆心所对应的极线是无穷远直线,根据下式求出圆心坐标:
Ci -1为第i个大圆孔在图像坐标系下系数方阵的逆,Oi为第i个大圆孔在图像坐标系下的圆心的齐次坐标;
第四步,建立初始坐标系;计算连接相邻两圆心之间直线方程的系数:
ly=Oi×Oj;
以该直线作为y轴,根据极点极线关系,以两圆心连线作为y轴,计算两圆心连线对应的x方向的无穷远点:
Xi∞=Clij;
lij是两圆心连线的系数矩阵,Xi∞是通过计算得出的x方向的无穷远点,在每个圆心处建立候选坐标系,候选坐标系x轴方程为lxi;
lxi=Oi×Xi∞;
确定标识物上大圆孔和拍摄帧中大圆孔的对应关系,使用时分编码光源做辅助判断;在每个候选坐标系的x轴上的一定范围内寻找局部极大值点;
第五步,大圆形孔的跟踪和圆心计算;截取新的一帧图像,以前一帧图像的检测到的大圆形孔的圆心作为当前帧的种子点,在该种子点的0°,45°,90°,135°,180°,225°,270°,315°八个方向上进行边缘搜索,对该种子点搜索出来的八个边缘点进行亚像素边缘检测,之后使用最小二乘法获得椭圆的一般方程的各项系数;再利用射影几何的方法计算当前帧圆形孔的圆心;
第六步,联立直线和椭圆方程计算标识物上各点在图像上的对应点的位置,使用最小二乘法获得前帧像平面和标识物平面的单应性矩阵;计算当前帧像平面和标识物平面的单应性矩阵H;利用当前帧圆心以及圆孔和时分编码光源的相对位置关系建立当前帧的坐标系;分别联立该坐标系平行于x轴的直线,y轴直线和椭圆的一般方程,求得y轴和x轴与椭圆的交点;
使用计算出来的图像中交点的坐标和该交点在标识物坐标系下对应点的坐标建立方程,利用最小二乘法获得像平面和标识物平面的单应性矩阵H,使得;
xcam=Hxmarker;
xcam是图像坐标系下点的齐次坐标,xmarker标识物坐标系下对应点的齐次坐标;
第七步,使用单应性矩阵和编码光源在标识物坐标系下的坐标计算编码光源在图像中的坐标;计算该坐标点周围的平均灰度,若平均灰度大于某一阈值,则认为该帧编码光源是处于亮的状态,否则认为该帧编码光源是处于灭的状态;记录完整编码周期内图像帧中的编码光源的亮灭状态,获得每个光源的解码序列;时分编码光源在标识物坐标系的齐次坐标表示为xlight,使用单应性矩阵H计算时分编码光源在图像坐标系中的位置;
xcamlight=Hxlight;
xcamlight为时分编码光源在图像坐标系中点的坐标,以该点为中心建立一个7×7的矩形窗口作为时分编码光源的跟踪窗口;
在每一帧计算时分编码光源跟踪窗口所在位置,并计算该窗口内平均灰度值;若平均灰度值大于某一阈值,则认为该帧编码光源是处于亮的状态,否则认为该帧编码光源是处于灭的状态;将光源亮时的解码设定为1,将光源灭时的解码设定为0;记录完整编码周期内图像帧中的编码光源的亮灭状态,获得与每个光源在视频图像中的亮灭状态对应的(0,1)解码序列;
第八步,通过单应性矩阵和相机内参计算相机坐标系相对于标识物坐标系的旋转矩阵和平移向量,对比解码序列获得标识物坐标系相对于实际场景坐标系的旋转矩阵和平移向量;利用坐标系之间的相对位姿关系进行计算,获得AGV在场景坐标系下的坐标和姿态信息;计算AGV上相机光心在场景坐标系下的坐标,通过像平面和标识物平面的单应性矩阵H,以及相机内参矩阵K,通过下式求出相机坐标系和标识物坐标系之间的旋转矩阵和平移向量;
λ[r1 r2 t]=K-1H;
r1和r2是旋转矩阵的第一和第二列,t是平移向量,λ是比例因子;因为旋转矩阵是一个单位正交矩阵,有以下约束:
r1×r2=r3;
r3旋转矩阵的第三列,通过约束获得一个标准化的外参数Mc矩阵描述相机坐标系和标识物坐标系之间的关系;
Rc是一个3×3的旋转矩阵,tc是一个3×1的平移向量;寻找与解码序列相同的编码光源在场景坐标系中的位置,获得当前AGV上相机拍摄到的标识物坐标系相对于场景坐标系的旋转平移矩阵Ms;
Rs是一个3×3的旋转矩阵,ts是一个3×1的平移向量,计算AGV机器人上相机在场景坐标系下的坐标为:
第九步,判断相机拍摄是否结束:若是,则结束;若否,则返回第五步。
2.如权利要求1所述的使用圆和编码光源作为标识物进行AGV定位的方法,其特征在于,所述第二步检测图像中的大圆形孔,获取大圆形孔在图像坐标系下的方程具体包括:
(1)在AGV相机连续拍摄的视频流中截取一帧;
(2)在截取图像帧中检测连通域,使用最小二乘法将连通域拟合为椭圆,使用Sampson距离作为拟合误差,若拟合误差小于某一阈值,则认为该连通域是椭圆;判断检测到圆形孔的数量是否小于2个:若是,返回(1),若否,执行第三步。
3.如权利要求1所述的使用圆和编码光源作为标识物进行AGV定位的方法,其特征在于,所述第三步利用射影几何的方法计算大圆形孔的圆心具体包括:
(1)根据射影几何中绝对二次曲线的定义使用标定好的相机内参计算绝对二次曲线;
(2)计算绝对二次曲线和大圆形孔在图像中的交点,利用交点拟合消影线;
(3)利用极点极线关系,计算大圆孔圆心在图像坐标系中的坐标。
4.如权利要求1所述的使用圆和编码光源作为标识物进行AGV定位的方法,其特征在于,所述第四步建立初始坐标系具体包括:
(1)以两圆心的连线作为y轴,用极点极线关系在每个圆心处建立候选坐标系,在每个候选坐标系x轴方向检测编码光源是否存在;
(2)若该帧没有检测到任何编码光源,则返回计算绝对二次曲线和大圆形孔在图像中的交点,利用交点拟合消影线;否则,以含有编码光源的候选x轴作为x轴,两圆心连线作为y轴建立初始坐标系。
5.如权利要求1所述的使用圆和编码光源作为标识物进行AGV定位的方法,其特征在于,所述第五步大圆形孔的跟踪和圆心计算具体包括:
(1)截取一帧图像,对大圆形孔进行跟踪并且计算大圆孔的一般方程,判断跟踪到大圆形孔的数量是否小于2个:若是,返回在截取图像帧中检测连通域,使用最小二乘法将连通域拟合为椭圆,使用Sampson距离作为拟合误差,若否,执行(2);
(2)利用射影几何的方法计算大圆形孔的圆心。
6.一种应用权利要求1~5任意一项所述使用圆和编码光源作为标识物进行AGV定位的方法的计算机视觉处理系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910824560.1A CN110703773B (zh) | 2019-09-02 | 2019-09-02 | 一种使用圆和编码光源作为标识物进行agv定位的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910824560.1A CN110703773B (zh) | 2019-09-02 | 2019-09-02 | 一种使用圆和编码光源作为标识物进行agv定位的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110703773A CN110703773A (zh) | 2020-01-17 |
CN110703773B true CN110703773B (zh) | 2021-08-31 |
Family
ID=69194137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910824560.1A Active CN110703773B (zh) | 2019-09-02 | 2019-09-02 | 一种使用圆和编码光源作为标识物进行agv定位的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110703773B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112991286B (zh) * | 2021-03-05 | 2024-04-26 | 浙江大华技术股份有限公司 | 图像统计数据的检测方法、设备以及计算机可读存储介质 |
CN113963156B (zh) * | 2021-10-28 | 2024-07-12 | 华南理工大学 | 一种基于可见光通信的同时定位与校正方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070066192A (ko) * | 2005-12-21 | 2007-06-27 | 재단법인 포항산업과학연구원 | 실내 이동 로봇의 위치 인식 방법 및 장치 |
CN102708566A (zh) * | 2012-05-08 | 2012-10-03 | 天津工业大学 | 一种新型的单个摄像机和单个投影光源同步标定方法 |
CN105480864A (zh) * | 2016-01-20 | 2016-04-13 | 上海振华重工电气有限公司 | 一种集装箱起重机自动化检测标定系统及方法 |
CN107689061A (zh) * | 2017-07-11 | 2018-02-13 | 西北工业大学 | 用于室内移动机器人定位的规则图形码及定位方法 |
CN108571971A (zh) * | 2018-05-17 | 2018-09-25 | 北京航空航天大学 | 一种agv视觉定位系统及方法 |
WO2019020200A1 (en) * | 2017-07-28 | 2019-01-31 | Fundació Privada I2Cat, Internet I Innovació Digital A Catalunya | METHOD AND APPARATUS FOR ACCURATE REAL-TIME POSITIONING BY VISIBLE LIGHT |
CN109739237A (zh) * | 2019-01-09 | 2019-05-10 | 华南理工大学 | 一种基于新型编码标志的agv视觉导航及定位方法 |
-
2019
- 2019-09-02 CN CN201910824560.1A patent/CN110703773B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070066192A (ko) * | 2005-12-21 | 2007-06-27 | 재단법인 포항산업과학연구원 | 실내 이동 로봇의 위치 인식 방법 및 장치 |
CN102708566A (zh) * | 2012-05-08 | 2012-10-03 | 天津工业大学 | 一种新型的单个摄像机和单个投影光源同步标定方法 |
CN105480864A (zh) * | 2016-01-20 | 2016-04-13 | 上海振华重工电气有限公司 | 一种集装箱起重机自动化检测标定系统及方法 |
CN107689061A (zh) * | 2017-07-11 | 2018-02-13 | 西北工业大学 | 用于室内移动机器人定位的规则图形码及定位方法 |
WO2019020200A1 (en) * | 2017-07-28 | 2019-01-31 | Fundació Privada I2Cat, Internet I Innovació Digital A Catalunya | METHOD AND APPARATUS FOR ACCURATE REAL-TIME POSITIONING BY VISIBLE LIGHT |
CN108571971A (zh) * | 2018-05-17 | 2018-09-25 | 北京航空航天大学 | 一种agv视觉定位系统及方法 |
CN109739237A (zh) * | 2019-01-09 | 2019-05-10 | 华南理工大学 | 一种基于新型编码标志的agv视觉导航及定位方法 |
Non-Patent Citations (1)
Title |
---|
多相机系统中若干视觉几何问题的研究;贾静;《中国博士学位论文全文数据库 信息科技辑》;20131015(第10期);第I138-83页全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110703773A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110243360B (zh) | 机器人在运动区域的地图构建及定位方法 | |
Yang et al. | Cubeslam: Monocular 3-d object slam | |
US11340628B2 (en) | Marker-combined simultaneous localization and mapping navigation method, device and system | |
CN109211241B (zh) | 基于视觉slam的无人机自主定位方法 | |
CN104197928B (zh) | 多摄像机协同的无人机检测、定位及跟踪方法 | |
Hong et al. | Image-based homing | |
CN113865580B (zh) | 构建地图的方法、装置、电子设备及计算机可读存储介质 | |
CN111862672A (zh) | 基于顶视图的停车场车辆自定位及地图构建方法 | |
CN113538410A (zh) | 一种基于3d激光雷达和uwb的室内slam建图方法 | |
Krajník et al. | External localization system for mobile robotics | |
CN107218927B (zh) | 一种基于tof相机的货物托盘检测系统和方法 | |
CN112396656B (zh) | 一种视觉与激光雷达融合的室外移动机器人位姿估计方法 | |
CN108388244A (zh) | 基于人工路标的移动机器人系统、停靠方法及存储介质 | |
CN110108269A (zh) | 基于多传感器数据融合的agv定位方法 | |
CN113657256A (zh) | 一种无人艇载无人机海空协同视觉跟踪与自主回收方法 | |
CN110703773B (zh) | 一种使用圆和编码光源作为标识物进行agv定位的方法 | |
Huang et al. | Mobile robot localization using ceiling landmarks and images captured from an rgb-d camera | |
CN111964680A (zh) | 一种巡检机器人的实时定位方法 | |
Wang et al. | Monocular visual SLAM algorithm for autonomous vessel sailing in harbor area | |
Lin et al. | A sparse visual odometry technique based on pose adjustment with keyframe matching | |
Xu et al. | Bifocal-binocular visual SLAM system for repetitive large-scale environments | |
CN114119752A (zh) | 基于gnss和视觉的室内外衔接的机器人定位方法 | |
Goronzy et al. | QRPos: Indoor positioning system for self-balancing robots based on QR codes | |
Pereira et al. | Monocular visual odometry with cyclic estimation | |
US20230030660A1 (en) | Vehicle positioning method and system for fixed parking scenario |
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 |