CN113129388B - 用于快速标定摄像机内外参数的编码立体靶标及其编码方法 - Google Patents
用于快速标定摄像机内外参数的编码立体靶标及其编码方法 Download PDFInfo
- Publication number
- CN113129388B CN113129388B CN202110489971.7A CN202110489971A CN113129388B CN 113129388 B CN113129388 B CN 113129388B CN 202110489971 A CN202110489971 A CN 202110489971A CN 113129388 B CN113129388 B CN 113129388B
- Authority
- CN
- China
- Prior art keywords
- coding
- target
- parallelogram
- plane
- coding unit
- 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
Images
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本发明公开了一种用于标定摄像机内外参数的编码立体靶标及其编码方法,所述编码立体靶标,主要应用于摄像机内外参数的标定,包括基准平面板、编码平面靶标板和连接机构,所述基准平面板的表面划分为S个区域,S为正整数且S>3,每个区域内固定设置一个连接机构,每个连接机构的端部活动连接有一个编码平面靶标板,每个编码平面靶标板的空间姿态可活动调节,所述编码平面靶标板上均设置有编码平面靶标;通过对每个编码平面靶标内的所有标定角点进行编码,从而完成整个编码立体靶标的所有标定角点的编码,在多摄像机标定时可实现不同标定图像中同名标定角点的高精度和实时匹配,实现高精度摄像机标定。
Description
技术领域
本发明涉及计算机视觉领域中的摄像机标定领域,具体为一种用于快速标定摄像机内外参数的编码立体靶标及其编码方法,用于单目摄像机标定、双目摄像机标定以及多目视觉系统的标定。
背景技术
计算机视觉技术是通过对二维图像的处理和计算,获取实际空间中物体的三维信息,因此被广泛应用于三维测量、视觉定位、目标跟踪等等诸多领域。在计算机视觉中,摄像机标定是其首要解决的重要问题之一,同时也是计算机视觉领域的一大热点问题和难题。摄像机标定是为了获取较为准确的摄像机内外参数,进而获取空间三维坐标与图像二维坐标之间的关系。
为了完成摄像机的标定过程,通常需要标定靶标帮助实现。其中,张正友(Z.YZhang)于1999年给出了基于平面靶标的摄像机标定算法,该方法利用传统的平面棋盘格靶标,使得摄像机标定过程变得简单易操作,为后续的摄像机标定技术的发展奠定了良好的基础。同时,随着计算机视觉技术的不断发展,传统的平面棋盘格靶标暴露出很多缺陷,例如在实际标定过程中,往往会出现靶标图像拍摄不完整、靶标图像的方向信息缺失等问题,另外,传统的平面棋盘格靶标需要大量拍摄不同位姿的靶标图像进行分析,且在控制靶标的空间位姿的过程中往往包含较大误差,降低了标定过程的准确度和可操作性。
发明内容
本发明旨在克服现有技术的不足,提出了一种用于快速标定摄像机内外参数的编码立体靶标及其编码方法,实现在保持较高精度的前提下,完成单目或多目视觉的单幅图像的标定过程,提高标定过程的可操作性和效率。
为实现上述效果,本发明采用的技术方案为:提供一种用于快速标定摄像机内外参数的编码立体靶标,所述编码立体靶标包括基准平面板、编码平面靶标板和连接机构,所述基准平面板的表面划分为S个区域,S为正整数且S>3,每个区域内固定设置一个连接机构,每个连接机构的端部活动连接有一个编码平面靶标板,每个编码平面靶标板的空间姿态可活动调节,所述编码平面靶标板上均设置有编码平面靶标。
进一步的,所述编码立体靶标的基准平面板是一个长度为a、宽度为b、厚度为c的长方体薄板结构;基准面的每个区域、对应区域内的连接机构、对应连接机构上的编码平面靶标板及对应编码平面靶标板上的编码平面靶标的编号分别记为其中
在基准平面板中,选择长度为a、宽度为b的矩形表面为基准面,将基准面划分为S个区域的划分方法如下:
步骤a、任取基准面的一个顶点记为基准坐标系的原点o,在基准面中将相交形成原点o的长为a的一条边记为基准坐标系x轴确定边N1,在基准坐标系x轴确定边N1上取基准面的另一个与原点o不重合的顶点记为基准坐标系x轴确定边N1上第一点o1,记向量为基准坐标系x轴确定向量在基准面中将相交形成原点o的长为b的一条边记为基准坐标系y轴确定边N2,在基准坐标系y轴确定边N2上取基准面的另一个与原点o不重合的顶点记为基准坐标系y轴确定边N2上第一点o2,记向量为基准坐标系y轴确定向量其中,基准坐标系x轴确定边N1与基准坐标系y轴确定边N2是2条互不相同的边;以基准坐标系x轴确定向量的方向作为基准坐标系的x轴的正向,以基准坐标系y轴确定向量的方向作为基准坐标系的y轴的正向,采用右手定则建立基准坐标系o-xyz;
步骤b、在基准面内,根据基准坐标系o-xyz,用Sa-1条与y轴平行的纵向区域分割线和Sb-1条与x轴平行的横向区域分割线将基准面划分为S个区域;其中,Sa、Sb均为正整数,Sa∈[1,S],Sb∈[1,S],且Sa表示在基准面内划分S个区域中,所能划分的区域的最大的列数,即基准面内S个区域的列编号总数的最大值,同样Sb表示在基准面内划分S个区域中,所能划分的区域的最大的行数,即基准面内S个区域的行编号总数的最大值,则有Sa·Sb=S,于是可将基准面划分为S个区域;
步骤c、在基准面内,将包含基准坐标系o-xyz原点o的区域记为第1行第1列区域,将第1行第1列区域记为1号区域;以1号区域为起始区域,将沿着基准坐标系x轴正向依次搜索到的Sa-1个区域,以1号区域为起始区域,将沿着基准坐标系y轴正向依次搜索到的Sb-1个区域,则在S个区域中将第α行第β列的区域记为号区域,其中β表示区域列编号,α表示区域行编号,表示区域编号,则α、β、均为正整数,且β=1,2,3,...,Sa,α=1,2,3,...,Sb,与α、β的关系满足:其中由此完成了基准面S个区域的划分。
进一步的,所述编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,编码平面靶标中所有平行四边形编码单元和平行四边形非编码单元均为长度为d且宽度为e的平行四边形,d和e均大于零;所述编码平面靶标以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,所述编码平面靶标一共包含M行×N列个标定角点,其中M和N均为正整数;
编码平面靶标中每一个平行四边形编码单元的内部设置有编码图案,编码图案包括定位图案、定向图案和编码标志图案,其中编码标志图案又由多个编码单元图案组成,每一个平行四边形编码单元内部的定位图案、定向图案和编码单元图案均不重叠且不连通;定向图案和定位图案用于编码平面靶标旋转方向的判断;编码标志图案用于给编码平面靶标中每一个标定角点进行编码。
任取编码平面靶标中的一个平行四边形编码单元记为编码平面靶标向量确定编码单元Γv,任取编码平面靶标向量确定编码单元Γv的一个顶点记为向量确定编码单元第一顶点o″1,在编码平面靶标向量确定编码单元Γv中将相交形成向量确定编码单元第一顶点o″1的任意一条边记为向量确定编码单元第一边Νv1,在向量确定编码单元第一边Νv1上取向量确定编码单元Γv的顶点记为向量确定编码单元第一边上第一点o″2,其中第一点o″2与第一顶点o″1是互不重合的2个点,记向量为规定向量且每一个平行四边形编码单元中的定位图案和定向图案的位置关系如下:在同一平行四边形编码单元内由定向图案质心指向定位图案质心的方向与规定向量的方向相同;
将编码平面靶标所在的平面记为靶标平面Pt,以向量确定编码单元第一顶点o″1为起点做一个与规定向量同向的单位向量记为第1个规定单位向量以正视编码平面靶标方向,以向量确定编码单元第一顶点o″1为旋转中心,在靶标平面Pt内将第1个规定单位向量逆时针旋转β′角度(0°<β′<90°)得到第2个规定单位向量在空间中以向量确定编码单元第一顶点o″1为起点做一个与所得向量的方向相同的单位向量,并记为正向向量将编码平面靶标向量确定编码单元Γv上距离编码平面靶标向量确定编码单元Γv中的定向图案最近的两个顶点分别记为第1临时顶点o″3和第2临时顶点o″4;若向量叉乘规定向量所得向量的方向与正向向量的方向相同,则将记为向量辅助向量若向量叉乘规定向量所得向量的方向与正向向量的方向相同,则将向量记为辅助向量
编码平面靶标内的每一个平行四边形编码单元中的定位图案和定向图案的位置关系如下:同一平行四边形编码单元的定位图案和定向图案均在所属平行四边形编码单元的内部,且同一平行四边形编码单元内的定位图案的质心和定向图案的质心均在所属平行四边形编码单元的质心附近;且由定向图案质心指向定位图案质心的方向与规定向量的方向相同。
在同一个平行四边形编码单元中的多个编码单元图案的尺寸可以全部或部分相同,也可互不相同;且在同一个平行四边形编码单元中,每个编码单元图案的轮廓长度均小于定位图案的轮廓长度,并且定位图案的轮廓长度小于2d+2e。
编码平面靶标中所有平行四边形编码单元的背景颜色相同,并记为颜色1,;编码平面靶标中所有平行四边形非编码单元的颜色均相同,并记为颜色2;所有平行四边形编码单元的背景颜色(即颜色1)与所有平行四边形非编码单元的颜色(即颜色2)具有明显的差异。编码平面靶标中所有平行四边形编码单元包含的所有定位图案和定向图案的颜色均相同,并记为颜色3,且颜色3与颜色1具有明显差异;编码平面靶标中所有平行四边形编码单元内所包含的所有编码单元图案的颜色与颜色1相同或者与颜色3相同。
在同一个平行四边形编码单元内,编码单元图案的位置和颜色由编码平面靶标内每个标定角点的非唯一性编码方法确定。
在编码平面靶标中的每个平行四边形编码单元内部的定位图案是一个实心圆,定向图案是一个圆环,编码单元图案均为实心圆;同一个平行四边形编码单元内包含2个颜色为颜色1的连通域,且距离定向图案质心最近的颜色为颜色1的连通域面积小于另一个颜色为颜色1的连通域面积;
编码平面靶标内,不同的平行四边形编码单元包含的定位图案的面积大小可以相同也可以不同;不同的平行四边形编码单元包含的定向图案的面积大小可以相同也可以不同;不同的平行四边形编码单元包含的编码单元图案的面积大小可以相同也可以不同。
进一步的,所有编码平面靶标中的平行四边形编码单元的编码号互不相同,且每个编码平面靶标中的所有平行四边形编码单元的编码号为连续的整数。
则号区域内的号编码平面靶标内的平行四边形编码单元的编码序号及标定角点的编码号具有连续性,即:记号编码平面靶标的平行四边形编码单元个数为首个平行四边形编码单元编码序号为那么号编码平面靶标内的平行四边形编码单元编码范围为记号编码平面靶标的标定角点个数为首个标定角点的编码号为那么号编码平面靶标内的标定角点的编码号范围为
进一步的,所述编码平面靶标的平行四边形编码单元的编码号总数为4096。采用连续编号时,编码序号范围为[0,4095],那么所有S个编码平面靶标内的任一平行四边形编码单元编码序号均在此范围内,即编码立体靶标中编码号最大的平行四边形编码单元的编码号应小于4096。
还提供了一种基于所述的编码立体靶标的编码方法,通过对每个编码平面靶标中的所有标定角点进行编码,找到编码立体靶标内每个标定角点唯一的编码号、编码立体靶标内每个标定角点所在编码平面靶标的编码号、编码立体靶标内每个标定角点所在基准平面板区域的编码号,从而完成整个编码立体靶标的所有标定角点的编码。
进一步的,对编码立体靶标内每个标定角点的编码方法包括如下步骤:
步骤1、取变量r表示未完成编码的编码平面靶标的个数和未完成编码的区域的个数,并设置初始值r=S,编码立体靶标中的平行四边形编码单元的初始编码号为zS,zS为正整数;
步骤2、设定编码立体靶标区域及编码平面靶标的编号范围为1,2,3,...,S的连续正整数,记编码立体靶标中未编码的编码平面靶标的编号集合为Ψr=[1,2,3,...,S],r同样表示编号集合内编号的个数;
步骤3、在r个未完成编码的区域中,按照任意规则或随机在空间中编码立体靶标内选取一个区域,同时在编码立体靶标中未编码的编码平面靶标的编号集合Ψr=[1,2,3,...,S]中,按照任意规则或随机选取一个编号并记为Ir,作为选取的对应区域的编号;所选区域的行编号及列编号由下式计算出:
Ir÷Sa=α′...β′
其中:Sa、Sb均为正整数,Sa∈[1,S],Sb∈[1,S],且满足Sa·Sb=S,Sa为在基准面内划分的S个区域中所能划分的区域的最大的列数,Sb为在基准面内划分的S个区域中所能划分的区域的最大的列数;
α′为Ir与Sa相除所得整数值,β′为Ir与Sa相除所得余数值;
若β′=0,则所选编号为Ir的区域为第α′行第Sa列所在的区域;
若β′≠0,则所选编号为Ir的区域为第(α′+1)行第β′列所在的区域;
同时将Ir号区域内的编码平面靶标记为Ir号编码平面靶标,记Ir号编码平面靶标内的平行四边形编码单元的编码序号总数为Lr+1,记Ir号区域内的Ir号编码平面靶标一共包含的标定角点个数Mr×Nr个;
步骤4、对于Ir号区域内的Ir号编码平面靶标的初始编码号zr,进行重新赋值;
若r=S,则Ir号区域内的Ir号编码平面靶标的初始编码号zr=zS;
若r≠S,则Ir号区域内的Ir号编码平面靶标的初始编码号zr=zr+1+Lr+1+Δr;
其中:Δr为正整数,且Δr≥1,表示Ir号编码平面靶标与Ir+1号编码平面靶标的编码序号间隔;
步骤5、利用编码平面靶标的编码方法,对Ir号区域内的Ir号编码平面靶标的所有标定角点进行编码,得到Ir号编码平面靶标内每个标定角点的唯一编码号;
所述编码平面靶标的编码方法包括以下步骤:
步骤5.1、取整数zv作为编码平面靶标中的初始编码号,其中zv满足公式(1),
zv≤4096-ε (1)
其中:ε为平行四边形编码单元总数,ε可以由公式(2)或(3)获得:
若M、N均为奇数,或M、N为一奇一偶时:
ε=[(M-1)(N-1)]/2+M+N; (2)
若M、N均为偶数时:
ε=[(M-1)(N-1)+1]/2+M+N; (3)
步骤5.2.1、任取编码平面靶标中的一个平行四边形编码单元记为Π1,在任取一个与平行四边形编码单元Π1存在公共顶点的平行四边形编码单元记为Π2;
(2)若在编码平面靶标上,从平行四边形编码单元Π1开始并且沿着与规定向量相反的方向上可以搜寻到平行四边形编码单元,则将沿着与规定向量相反的方向上搜寻距离平行四边形编码单元Π1最远的平行四边形编码单元作为纵向末端平行四边形编码单元1,记为
(2)若从平行四边形编码单元Π2开始,并沿着与规定向量相反的方向可以搜寻到平行四边形编码单元,则将在与规定向量相反的方向上搜寻距离平行四边形编码单元Π2最远的平行四边形编码单元作为纵向末端平行四边形编码单元2,记为
(2)若从纵向末端平行四边形编码单元开始,并在与辅助向量相反的方向上可以搜寻到平行四边形编码单元,则将在与辅助向量相反的方向上搜寻距离纵向末端平行四边形编码单元最远的平行四边形编码单元作为横向末端平行四边形编码单元1,记为Γ1;
(2)若从纵向末端平行四边形编码单元开始,并且在与辅助向量相反的方向上可以搜寻到平行四边形编码单元,则将在与辅助向量相反的方向上搜寻距离纵向末端平行四边形编码单元最远的平行四边形编码单元作为横向末端平行四边形编码单元2,记为Γ2;
步骤5.2.6、记平行四边形编码单元Γ1中有Φ1个顶点为标定角点,平行四边形编码单元Γ2中有Φ2个顶点为标定角点;根据Φ1和Φ2的数值大小包括以下3种情况:
情况1、若Φ1==1且Φ2==4,则横向末端平行四边形编码单元1Γ1的编码号即为zv,同时记横向末端平行四边形编码单元1Γ1为第1行第1个平行四边形编码单元将横向末端平行四边形编码单元2Γ2记为第2行第1个平行四边形编码单元
情况2、若Φ1==4且Φ2==1,则横向末端平行四边形编码单元2Γ2的编码号即为zv,同时记横向末端平行四边形编码单元2Γ2为第1行第1个平行四边形编码单元将横向末端平行四边形编码单元1Γ1记为第2行第1个平行四边形编码单元
情况3、若Φ1==2且Φ2==2,记横向末端平行四边形编码单元1Γ1中的两个标定角点分别为ε′1和ε″1,记横向末端平行四边形编码单元2Γ2中的两个标定角点分别为ε′2和ε″2,又包括以下两种情况:
(1)当与平行且与平行时,记横向末端平行四边形编码单元1Γ1的编码号为zv,同时记横向末端平行四边形编码单元1Γ1为第1行第1个平行四边形编码单元记横向末端平行四边形编码单元2Γ2为第2行第1个平行四边形编码单元
(2)当与平行且与平行时,记横向末端平行四边形编码单元2Γ2的编码号为zv,同时记横向末端平行四边形编码单元2Γ2为第1行第1个平行四边形编码单元记横向末端平行四边形编码单元1Γ1为第2行第1个平行四边形编码单元
步骤5.2.7、取整数变量δ,并赋予其初值δ=0;
情况1、若从第2δ+1行第1个平行四边形编码单元开始,并且沿着规定向量的方向上可以搜索到平行四边形编码单元,则将从第2δ+1行第1个平行四边形编码单元开始,并且沿着规定向量的方向上搜索到的距离第2δ+1行第1个平行四边形编码单元最近的平行四边形编码单元记为第2δ+3行第1个平行四边形编码单元然后将δ+1重新赋值给δ并重新执行步骤5.2.8;
步骤5.2.9、重新给整数变量δ赋值,δ=1;
情况1、若从第2δ行第1个平行四边形编码单元开始,并且沿着规定向量的方向上可以搜索到平行四边形编码单元,则将从第2δ行第1个平行四边形编码单元开始,并且沿着规定向量的方向上搜索到的距离第2δ行第1个平行四边形编码单元最近的平行四边形编码单元记为第2δ+2行第1个平行四边形编码单元然后将δ+1重新赋值给δ并重新执行步骤5.2.10;
步骤5.2.11、重新给整数变量δ赋值,δ=1;取整数变量ρ,并赋值ρ=1;
情况1、若从第δ行第ρ个平行四边形编码单元开始,并且沿着辅助向量的方向上可以搜索到平行四边形编码单元,则将从第δ行第ρ个平行四边形编码单元开始,并且沿着辅助向量的方向上搜索到的距离第δ行第ρ个平行四边形编码单元最近的平行四边形编码单元记为第δ行第ρ+1个平行四边形编码单元然后将ρ+1赋值给ρ,重新执行步骤5.2.12;
步骤5.2.13、本步骤包括以下情况:
情况1、若m′>m″,则判断是否满足δ<m′;当δ<m′时,则将δ+1赋值给δ,将ρ重新赋值ρ=1,然后重新执行步骤5.2.12;否则执行步骤5.2.14;
情况2、若m′<m″,则判断是否满足δ<m″;当δ<m″时,则将δ+1赋值给δ,将ρ重新赋值ρ=1,然后重新执行步骤5.2.12;否则执行步骤5.2.14;
步骤5.2.15、重新对整数变量δ赋值δ=1;取整数变量z′,并将初始编码号值zv赋值给z′;重新对整数变量ρ赋值ρ=0;
步骤5.2.17、本步骤包括以下两种情况:
步骤5.3.1、建立靶标坐标系,记第1行第1个平行四边形编码单元的4个顶点中是标定角点的个数为Φp,则可根据Φp数值的大小包括以下两种情况:
步骤5.4、取整数变量e,并赋予其初值e=zv;
步骤5.5、在编码号为e对应的平行四边形编码单元内,分别记定位圆质心的靶标坐标为ol,e(xl,e,yl,e,0)、定向圆环质心的靶标坐标为od,e(xd,e,yd,e,0)、由定向圆环质心指向定位圆质心的向量为该平行四边形编码单元内的方向向量将距离定位圆质心ol,e最近的两个顶点分别记为Ce,1min(xe,1min,ye,1min,0)和Ce,2min(xe,2min,ye,2min,0),由顶点Ce,1min(xe,1min,ye,1min,0)和顶点Ce,2min(xe,2min,ye,2min,0)组成的向量记为该平行四边形编码单元内的顶点向量方向向量可由式(6)计算得出,顶点向量可由式(7)算出:
在编码号为e对应的平行四边形编码单元内,记过定位圆质心ol,e且平行于顶点向量的直线为l1,e,过定向圆环质心od,e且平行于顶点向量的直线为l2,e,记通过定位圆质心ol,e和定向圆环质心od,e的直线为l3,e;利用直线l3,e、直线l1,e与直线l2,e可将编码号为e对应的平行四边形编码单元划分为6个编码区域,且每个编码区域内均包含2个编码单元图案;
进行如下判断:
若且则将顶点Ce,1min(xe,1min,ye,1min,0)记为该平行四边形编码单元中的第1编码区域定位顶点且将该平行四边形编码单元中包含第1编码区域定位顶点的编码区域记为该平行四边形编码单元中的第1编码区域;同时将顶点Ce,2min(xe,2min,ye,2min,0)记为该平行四边形编码单元中的第6编码区域定位顶点且将包含第6编码区域定位顶点的编码区域记为该平行四边形编码单元中的第6编码区域;
若且则将顶点Ce,1min(xe,1min,ye,1min,0)记为该平行四边形编码单元中的第6编码区域定位顶点且将包含第6编码区域定位顶点的编码区域记为该平行四边形编码单元中的第6编码区域;同时将顶点Ce,2min(xe,2min,ye,2min,0)记为该平行四边形编码单元中的第1编码区域定位顶点且将包含第1编码区域定位顶点的编码区域记为该平行四边形编码单元中的第1编码区域;
步骤5.7、在编码号为e对应的平行四边形编码单元中,将该平行四边形编码单元的第1编码区域作为起始区域、第6编码区域作为终点区域,按照顺时针方向(沿着靶标坐标系Zt轴正向的相反方向),依次将该平行四边形编码单元中的6个编码区域记为该平行四边形编码单元的第1编码区域、第2编码区域、第3编码区域、第4编码区域、第5编码区域和第6编码区域;
步骤5.8、在编码号为e对应的平行四边形编码单元中,将第σ编码区域(σ=1,2,5,6)中的第i个编码单元图案(i=1,2)的质心到直线l1,e的距离记为将第π编码区域(π=3,4)中的第i个(i=1,2)编码单元图案的质心到直线l2,e的距离记为将第θ号编码区域(θ=1,2,3,4,5,6)中的第i个(i=1,2)编码单元图案的质心到直线l3,e的距离记为
步骤5.9、在编码号为e对应的平行四边形编码单元中,第σ编码区域中的第i个编码单元图案的质心到直线l1,e的距离和第σ编码区域中的第i个编码单元图案的质心到直线l3,e的距离满足式(12)或式(13),其中σ=1,2,5,6且i=1,2;
在编码号为e对应的平行四边形编码单元内,第π编码区域中的第i个编码单元图案的质心到直线l2,e的距离和第π编码区域中的第i个编码单元图案的质心到直线l3,e的距离满足式(14)或式(15),其中π=3,4且i=1,2;
步骤5.10、本步骤包括以下两种情况:
情况1、在编码号为e对应的平行四边形编码单元内,若且则记该平行四边形编码单元内第σ编码区域中的第1个编码单元图案为该平行四边形编码单元内第σ编码区域中的第1位编码单元图案记该平行四边形编码单元内第σ编码区域中的第2个编码单元图案为该平行四边形编码单元内第σ编码区域中的第2位编码单元图案其中σ=1,2,5,6;
情况2、在编码号为e对应的平行四边形编码单元内,若且则记该平行四边形编码单元内第σ编码区域中的第2个编码单元图案为该平行四边形编码单元内第σ编码区域中的第1位编码单元图案记该平行四边形编码单元内第σ编码区域中的第1个编码单元图案为该平行四边形编码单元内第σ编码区域中的第2位编码单元图案其中σ=1,2,5,6;
步骤5.11、本步骤包括以下两种情况:
情况1、在编码号为e对应的平行四边形编码单元内,若且则记该平行四边形编码单元内第π编码区域中的第1个编码单元图案为该平行四边形编码单元内第π编码区域中的第1位编码单元图案记该平行四边形编码单元内第π编码区域中的第2个编码单元图案为该平行四边形编码单元内第π编码区域中的第2位编码单元图案其中π=3,4;
情况2、在编码号为e对应的平行四边形编码单元内,若且则记该平行四边形编码单元内第π编码区域中的第2个编码单元图案为该平行四边形编码单元内第π编码区域中的第1位编码单元图案记该平行四边形编码单元内第π编码区域中的第1个编码单元图案为该平行四边形编码单元内第π编码区域中的第2位编码单元图案其中π=3,4;
GT·Fe==e (16)
其中,列向量G=(20,21,22,23,24,25,26,27,28,29,210,211)T,且
步骤5.15、将编码号为e的平行四边形编码单元上的标定角点个数记为ge,根据编码号为e的平行四边形编码单元上的标定角点个数ge包括以下3种情况:
情况2、若ge==2,又包括以下4种情况:
(1)编码号为e的平行四边形编码单元上的2个标定角点分别位于该平行四边形编码单元内的第1编码区域和第6编码区域上,则将位于该平行四边形编码单元中第编码区域上的标定角点记为该平行四边形编码单元中第编码区域的标定角点其中
(2)编码号为e的平行四边形编码单元上的2个标定角点分别该平行四边形编码单元内的第3编码区域和第4编码区域上,则将位于该平行四边形编码单元中第编码区域上的标定角点记为该平行四边形编码单元中第编码区域的标定角点其中
(3)编码号为e的平行四边形编码单元上的2个标定角点分别位于该平行四边形编码单元内的第4编码区域和第6编码区域上,则将位于该平行四边形编码单元中第编码区域上的标定角点记为该平行四边形编码单元中第编码区域的标定角点其中
(4)编码号为e的平行四边形编码单元上的2个标定角点分别位于该平行四边形编码单元内的第1编码区域和第3编码区域上,则将位该平行四边形编码单元中第编码区域上的标定角点记为该平行四边形编码单元中第编码区域的标定角点其中
步骤5.16、把e+1重新赋值给e,进行如下判断:
若满足e<zv+ε,则返回步骤5.5开始执行;若满足e≥zv+ε,则结束;
至此编码平面靶标上的每个标定角点获得了2个编码序号(即完成各个标定角点的非唯一编码);每个标定角点的2个编码序号均可实现判断唯一确定的标定角点所在编码平面靶标上的行、列数。
将所得出的编码平面靶标上平行四边形编码单元的编码号以及每个标定角点的2个编码序号(即非唯一行编码号)作为输入条件,完成编码平面靶标上每个标定角点唯一性编码的步骤如下:
步骤5.17.1、令j=Max{m′,m″},假设第j-1行第fj个平行四边形编码单元的4个顶点是标定角点的个数是Φ′p;
步骤5.17.2.1、判断N是否为偶数,若N为偶数,则取整数参数Δ并赋值Δ=N/2,则执行步骤5.17.2.1.1;若N不是偶数则执行步骤5.17.2.2;
执行完成本步骤5.17.2.1后,结束标定角点唯一性编码;
步骤5.17.2.2、取整数参数Δ并赋值Δ=(N+1)/2,执行步骤5.17.2.2.1;
zm=ε+zv-Δ-1 (19)
步骤5.17.2.2.2、本步骤包括以下两种情况:
z′v=zv+Δ (20)
其中Δ″=2(e′2-zv)/(N+1)+1(只保留整数);
(2)当时,将位于编码号为e′2的平行四边形编码单元的第编码区域上的标定角点记为第(e′2-Δ′)_1号标定角点,其中Δ′可由式(21)得出;执行完成本步骤5.17.2.2后,结束标定角点唯一性编码;
通过上述步骤即完成了对编码平面靶标中所有标定角点的唯一性编码工作,每一个标定角点均有确定且唯一的编码号。
步骤6、令r=r-1,若r≠0,则在编码立体靶标中未编码的编码平面靶标的编号集合Ψr中排除编号Ir后,重复执行步骤3至步骤5,直至完成编码立体靶标中的所有标定角点的编码工作。
通过上述步骤,即可完成对编码立体靶标中所以编码平面靶标中的所有标定角点的唯一性编码工作,找到了编码立体靶标内每个标定角点唯一的编码号、编码立体靶标内每个标定角点所在编码平面靶标的编码号、编码立体靶标内每个标定角点所在基准平面板区域的编码号。
此外,还提供了一种计算机可读存储介质,包括与具有图像处理功能的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以如上所述的编码方法。
与现有技术相比较,本发明的有益效果如下:
1、本发明在基准平面内设置了S个区域,每个区域包含一个编码平面靶标,且各区域的空间姿态各不相同,因此能够实现在保持较高精度的前提下,完成单目或多目视觉的单幅图像的标定过程,提高了标定过程的可操作性和效率;
2、在本发明中,基准平面板内可划分足够多区域,设置足够多的编码平面靶标,同时各个编码平面靶标均可调整每个方向的空间角,从而调整空间姿态,极大提高了摄像机标定过程的容错率和鲁棒性;
3、本发明中采用的编码平面靶标,由于其编码图案结构简单,在摄像机标定过程中,根据单幅图像即可利用数字图像处理技术,准确且快速获取编码立体靶标内任一编码平面靶标的标定角点及其编码信息,从而提升了摄像机标定过程的可操作性;
4、在本发明中,基准平面板中的各个编码平面靶标内,可设置足够多的标定角点,从而可应对摄像机标定过程中出现的拍摄图像不完整的情况,同时在编码立体靶标内,每个标定角点的编码信息唯一确定,保证了摄像机标定过程的精确性;
5、本发明的编码立体靶标中的编码信息拥有庞大的编码容量,能够拓展出足够大的基准平面板及最够多的编码平面靶标,因此可应对大视场或复杂背景等多种标定场景,适应范围广。
附图说明
图1为实施例中采用的编码立体靶标3D示意图;
图2为编码立体靶标的基准平面板内区域划分示意图;
图3为编码立体靶标的连接机构示意图;
图4为编码立体靶标中的编码平面靶标板正面示意图;
图5为编码立体靶标中的编码平面靶标板反面示意图;
图6为编码立体靶标中连接机构连接编码平面靶标板和基准平面板的示意图;
图11为本发明实施例中根据5号编码平面靶标内每个标定角点的编码方法确定的每个平行四边形编码单元的编码序号示意图;
图12为本发明实施例中在5号编码平面靶标内建立的靶标坐标系示意图;
图13为本发明实施例中5号编码平面靶标内每个标定角点的非唯一性编码示意图;
图14为本发明实施例中5号编码平面靶标内每个标定角点的唯一性编码示意图;
图15为1号编码平面靶标示意图;
图16为2号编码平面靶标示意图;
图17为3号编码平面靶标示意图;
图18为4号编码平面靶标示意图;
图19为5号编码平面靶标示意图;
图20为6号编码平面靶标示意图;
图21为本发明的基于编码立体靶标的编码方法的流程示意图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1,一种用于快速标定摄像机内外参数的编码立体靶标,该编码立体靶标包括基准平面板、编码平面靶标板和连接机构,图1所示的编码立体靶标共包含1个基准平面板、6个编码平面靶标板和6个连接机构,基准平面板的表面被划分为6个区域,每个区域内固定设置一个连接机构,每个连接机构的端部通过球铰链活动连接有一个编码平面靶标板,每个编码平面靶标板的空间姿态可活动调节。
编码立体靶标的基准平面板是一个长度为a、宽度为b、厚度为c的长方体薄板结构;本实施例中,编码立体靶标的基准平面板的长度为450mm、宽度为450mm、厚度为13mm。
在编码立体靶标的基准平面板中,选择长度为450mm、宽度为450mm的矩形表面为基准面,采用上述划分方法将基准面划分为2行*3列的6个区域,划分方法如下:步骤1、任取基准面的一个顶点记为基准坐标系的原点o,在基准面中将相交形成原点o的长为a的一条边记为基准坐标系x轴确定边N1,在基准坐标系x轴确定边N1上取基准面的顶点记为基准坐标系x轴确定边N1上第一点o1,其中基准坐标系x轴确定边N1上第一点o1与基准坐标系的原点o是互不重合的2个点,记向量为基准坐标系x轴确定向量在基准面中将相交形成原点o的长为b的一条边记为基准坐标系y轴确定边N2,在基准坐标系y轴确定边N2上取基准面的顶点记为基准坐标系y轴确定边N2上第一点o2,其中基准坐标系y轴确定边N2上第一点o2与基准坐标系的原点o是互不重合的2个点,记向量为基准坐标系y轴确定向量其中,基准坐标系x轴确定边N1与基准坐标系y轴确定边N2是2条互不相同的边;以基准坐标系x轴确定向量的方向作为基准坐标系的x轴的正向,以基准坐标系y轴确定向量的方向作为基准坐标系的y轴的正向,x轴y轴z轴满足右手定则,由此建立基准坐标系o-xyz;
步骤2、在基准面内,根据基准坐标系o-xyz,用Sa-1=2条与y轴平行的纵向区域分割线和Sb-1=1条与x轴平行的横向区域分割线将基准面划分为S个区域,其中,Sa、Sb均为正整数,Sa=3,Sb=2,且Sa表示在基准面内划分S个区域中,所能划分的区域的最大的列数,即基准面内S个区域的列编号的最大值,同样Sb表示在基准面内划分6个区域中,所能划分的区域的最大的行数,即基准面内6个区域的行编号的最大值,则有Sa·Sb=3×2=S=6,于是可将基准面划分为6个区域;
步骤3、在基准面内,将包含基准坐标系o-xyz原点o的区域记为第1行第1列区域,将第1行第1列区域记为1号区域;以1号区域为起始区域,将沿着基准坐标系x轴正向依次搜索到的2个区域依次记为第1行第2列区域、第1行第3列区域,同时将第1行第2列区域记为号区域、第1行第3列区域记为号区域,其中,将第2行第1列区域记为号区域;以号区域为起始区域,将沿着基准坐标系x轴正向依次搜索到的2个区域依次记为第2行第2列区域、第2行第3列区域,同时将第2行第2列区域记为号区域、第2行第3列区域记为号区域,其中,
如图2所示,6个编码平面靶标板都有如下特征:编码平面靶标板是长方体,在编码平面靶标板中,任意选取编码平面靶标板6个平面中的一个平面作为编码平面靶标板的正面,在编码平面靶标板余下的5个平面中,选取与编码平面靶标板的正面平行的一个平面作为编码平面靶标板的反面;在编码平面靶标板的正面内设置一个编码平面靶标,而编码平面靶标板的反面用于与连接机构连接。本实施例中,连接机构如图3所示;编码平面靶标板的正面设置了一个编码平面靶标,如图4所示;编码平面靶标板的反面如图5所示,用于与连接机构连接;同时,连接机构将编码平面靶标板与基准平面板连接,如图6所示。
在基准面的6个区域中,基准面的每个区域内有且仅有一个连接机构将1个编码平面靶标板与基准平面板连接,记基准面第区域内的连接机构为第连接机构,记第连接机构连接的1个编码平面靶标板为第编码平面靶标板,6个第连接机构互为不同的连接机构实体,6个第编码平面靶标板互为不同的编码平面靶标板实体,其中将第编码平面靶标板正面内的编码平面靶标记为第编码平面靶标。
本实施例中,所述编码立体靶标共包含6个编码平面靶标,1号编码平面靶标至6号编码平面靶标如图15-图20,其中每个编码平面靶标的特性如下:
编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,本实施例中,编码平面靶标中所有平行四边形编码单元和平行四边形非编码单元均为边长为13.5毫米的正方形;编码平面靶标以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,所述编码平面靶标一共包含5行×5列个标定角点。
编码平面靶标中每一个平行四边形编码单元的内部设置有编码图案,编码图案包括定位图案、定向图案和编码标志图案,其中编码标志图案又由多个编码单元图案组成,每一个平行四边形编码单元内部的定位图案、定向图案和编码单元图案均不重叠且不连通;定向图案和定位图案用于编码平面靶标旋转方向的判断;编码标志图案用于给编码平面靶标中每一个标定角点进行编码。
如图7所示,以5号编码平面靶标为例,任取5号编码平面靶标中的一个平行四边形编码单元记为编码平面靶标向量确定编码单元Γv(图7中,第3行第3个平行四边形编码单元为编码平面靶标向量确定编码单元Γv),任取5号编码平面靶标向量确定编码单元Γv的一个顶点记为向量确定编码单元第一顶点o″1,在编码平面靶标向量确定编码单元Γv中将相交形成向量确定编码单元第一顶点o″1的任意一条边记为向量确定编码单元第一边Νv1,在向量确定编码单元第一边Νv1上取向量确定编码单元Γv的顶点记为向量确定编码单元第一边上第一点o″2,其中向量确定编码单元第一边上第一点o″2与向量确定编码单元第一顶点o″1是互不重合的2个点,记向量为规定向量且在同一平行四边形编码单元内由定向图案质心指向定位图案质心的方向与规定向量的方向相同。
将编码平面靶标所在的平面记为靶标平面Pt,以向量确定编码单元第一顶点o″1为起点做一个与规定向量同向的单位向量记为第1个规定单位向量正视靶标平面Pt时,以向量确定编码单元第一顶点o″1为旋转中心,在靶标平面Pt内将第1个规定单位向量逆时针旋转β′角度(0°<β′<90°)得到第2个规定单位向量在空间中以向量确定编码单元第一顶点o″1为起点做一个与所得向量的方向相同的单位向量,并记为正向向量将编码平面靶标向量确定编码单元Γv上距离编码平面靶标向量确定编码单元Γv中的定向图案最近的两个顶点分别记为第1临时顶点o″3和第2临时顶点o″4;若所得向量的方向与正向向量的方向相同,则将记为向量辅助向量若所得向量的方向与正向向量的方向相同,则将向量记为辅助向量
编码平面靶标中每一个平行四边形编码单元内部的定位图案、定向图案和编码单元图案均不重叠且不连通。
每个编码平面靶标内的每一个平行四边形编码单元中的定位图案为直径3毫米的实心圆,定向图案均为外直径3毫米且内直径1.5毫米的圆环,并且定位图案和定向图案的位置关系满足如下条件:同一平行四边形编码单元的定位图案和定向图案均在所属平行四边形编码单元的内部,且同一平行四边形编码单元内的定位图案的质心和定向图案的质心均在所属平行四边形编码单元的质心附近,并且在同一平行四边形编码单元内由定向图案质心指向定位图案质心的方向与规定向量的方向相同。
在每个编码平面靶标内同一个平行四边形编码单元中的多个编码单元图案的尺寸既可互不相同也可相同;在本发明实施例中,在每个编码平面靶标内同一个平行四边形编码单元中的12个编码单元图案均为直径1.5毫米的实心圆。
在每个编码平面靶标中每一个平行四边形编码单元及其内部的定位图案、编码单元图案满足如下关系:在同一个平行四边形编码单元中,每个编码单元图案的轮廓长度均小于定位图案的轮廓长度,并且定位图案的轮廓长度小于平行四边形编码单元的周长2d+2e。本实施例中(如图4所示),在同一个平行四边形编码单元中,每个编码单元图案的轮廓长度2.36毫米小于定位图案的轮廓长度4.71毫米,并且定位图案的轮廓长度4.71毫米小于平行四边形编码单元的周长48毫米。
每个编码平面靶标中所有平行四边形编码单元的背景颜色相同,并且将编码平面靶标中所有的平行四边形编码单元的背景颜色记为颜色1;编码平面靶标中所有平行四边形非编码单元的颜色均相同,并且将编码平面靶标中所有平行四边形非编码单元的颜色记为颜色2;编码平面靶标中所有平行四边形编码单元的背景颜色(即颜色1)与所有平行四边形非编码单元的颜色(即颜色2)具有明显的差异;在具体实施例中(如图4所示),每个编码平面靶标中所有的平行四边形编码单元的背景颜色均为黑色(即颜色1),并且与每个编码平面靶标中所有平行四边形非编码单元的颜色均为白色(即颜色2)具有明显差异。
每个编码平面靶标中所有平行四边形编码单元包含的所有定位图案和定向图案的颜色均相同,并将编码平面靶标中所有平行四边形编码单元包含的所有定位图案和定向图案的颜色记为颜色3,并且颜色3与颜色1具有明显差异;在本发明实施例中,每个编码平面靶标中所有平行四边形编码单元包含的所有定位图案和定向图案的颜色均为白色(即颜色3)。本实施例中(如图4所示),颜色3与颜色2均为白色,颜色3(白色)与颜色1(黑色)具有明显差异。
每个编码平面靶标中所有平行四边形编码单元内所包含的所有编码单元图案的颜色与颜色1相同或者与颜色3相同。本实施例中(如图4所示),编码平面靶标中所有编码单元图案的颜色为黑色(颜色1)或者为白色(颜色3)。
在每个编码平面靶标中每一个平行四边形编码单元内的颜色为黑色(即颜色1)的连通域具有如下特征:同一个平行四边形编码单元内包含2个黑色(即颜色1)连通域,且距离定向图案质心最近的黑色(即颜色1)连通域的面积小于另一个黑色(即颜色1)连通域的面积。
每个编码平面靶标内不同的平行四边形编码单元包含的定位图案的面积大小可以相同也可以不同;如图4所示,本实施例中,每个编码平面靶标内不同的平行四边形编码单元包含的定位图案的面积大小相同。
每个编码平面靶标内不同的平行四边形编码单元包含的定向图案的面积大小可以相同也可以不同;如图4所示,本实施例中,每个编码平面靶标内不同的平行四边形编码单元包含的定向图案的面积大小相同。
每个编码平面靶标内不同的平行四边形编码单元包含的编码单元图案的面积大小可以相同也可以不同;如图4所示,本实施例中,每个编码平面靶标内不同的平行四边形编码单元包含的编码单元图案的面积大小相同。
本实施例中,编码平面靶标的平行四边形编码单元编码序号的编码序号总数为4096,采用连续编号,编码序号范围为[0,4095],那么所有S个编码平面靶标内的任一平行四边形编码单元编码序号均在此范围内,即编码立体靶标中编码号最大的平行四边形编码单元的编码号应小于4096。
请参阅图21,一种基于所述的编码立体靶标的编码方法,通过对每个编码平面靶标中的所有标定角点进行编码,找到编码立体靶标内每个标定角点唯一的编码号、编码立体靶标内每个标定角点所在编码平面靶标的编码号、编码立体靶标内每个标定角点所在基准平面板区域的编码号,从而完成整个编码立体靶标的所有标定角点的编码。
进一步的,对编码立体靶标内每个标定角点的编码方法包括如下步骤:
步骤1、取变量r表示未完成编码的编码平面靶标的个数和未完成编码的区域的个数,并设置初始值r=S,编码立体靶标中的平行四边形编码单元的初始编码号为zS,zS为正整数;本实施例中,设置初始值r=6,编码立体靶标中的平行四边形编码单元的初始编码号为z6=0。
步骤2、设定编码立体靶标区域及编码平面靶标的编号范围为1,2,3,...,S的连续正整数,记编码立体靶标中未编码的编码平面靶标的编号集合为Ψr=[1,2,3,...,S],r同样表示编号集合内编号的个数;本实施例中,编码立体靶标区域及编码平面靶标的编号范围为1,2,3,4,5,6的连续正整数,记编码立体靶标中未编码的编码平面靶标的编号集合为Ψr=[1,2,3,4,5,6]。
步骤3、在6个未完成编码的区域中,按照任意规则或随机在空间中编码立体靶标内选取一个区域,同时在编码立体靶标中未编码的编码平面靶标的编号集合Ψr=[1,2,3,4,5,6]中,按照任意规则或随机选取一个编号并记为Ir,本实施例中Ir=5,作为选取的对应区域的编号。
经计算得出5号区域为编码立体靶标基准平面板上第2行第2列所在的区域,且5号区域内的编码平面靶标为5号编码平面靶标,5号编码平面靶标共有5×5=25个标定角点,18个平行四边形编码单元。
步骤4、对于5号区域内的5号编码平面靶标的初始编码号zr,进行重新赋值;
本实施例中,r=6=S,属于r=S的情形,则令5号区域内的5号编码平面靶标的初始编码号为zr=0;
步骤5、利用编码平面靶标的编码方法,对5号区域内的5号编码平面靶标的所有标定角点进行编码,得到5号编码平面靶标内每个标定角点的唯一编码号;
具体的编码过程如下:
步骤5.1、取整数0作为编码平面靶标中的初始编码号,即令zv=0;编码平面靶标中共有5行×5列个标定角点,M和N均为奇数,平行四边形编码单元总数ε可由公式(1)计算得出:
ε=(M-1)(N-1)/2+M+N=18 (1)
其中M=5且N=5;
步骤5.2.1、任取编码平面靶标中的一个平行四边形编码单元记为Π1,在任取一个与平行四边形编码单元Π1存在公共顶点的平行四边形编码单元记为Π2,其中Π1和Π2的位置选取如图8所示;
步骤5.2.6、本实施例中,平行四边形编码单元Γ1和平行四边形编码单元Γ2中标定角点的个数满足,Φ1==2且Φ2==2,且与平行且与平行的情形,则横向末端平行四边形编码单元1Γ1的编码号即为0,如图9所示,同时记横向末端平行四边形编码单元1Γ1为第1行第1个平行四边形编码单元将横向末端平行四边形编码单元2Γ2记为第2行第1个平行四边形编码单元
步骤5.2.7、取整数变量δ,并赋予其初值δ=0;
步骤5.2.9、重新给整数变量δ赋值,δ=1;
步骤5.2.11、重新给整数变量δ赋值,δ=1;取整数变量ρ,并赋值ρ=1;
步骤5.2.13、判断是否满足δ<6;当δ<6时,则将δ+1赋值给δ,将ρ重新赋值ρ=1,然后重新执行步骤5.2.12;否则执行步骤5.2.14;
本实施例中,根据步骤5.2.12和步骤5.2.13可分别得到第1行第1个平行四边形编码单元第1行第2个平行四边形编码单元第1行第3个平行四边形编码单元第2行第1个平行四边形编码单元第2行第2个平行四边形编码单元第2行第3个平行四边形编码单元第3行第1个平行四边形编码单元第3行第2个平行四边形编码单元第3行第3个平行四边形编码单元且f3=3;第4行第1个平行四边形编码单元第4行第2个平行四边形编码单元第4行第3个平行四边形编码单元且f4=3;第5行第1个平行四边形编码单元第5行第2个平行四边形编码单元第5行第3个平行四边形编码单元且f5=3;第6行第1个平行四边形编码单元第6行第2个平行四边形编码单元第6行第3个平行四边形编码单元且f6=3;实施例中可得出:f1=3,f2=3,f3=3,f4=3,f5=3,即代表在编码平面靶标中,第1行、第2行、第3行、第4行、第5行和第6行中的平行四边形编码单元数均为3个,搜索结果如图10所示;
步骤5.2.15、重新对整数变量δ赋值δ=1;取整数变量z′,并将初始编码号值zv赋值给z′;重新对整数变量ρ赋值ρ=0;本实施例中把0赋值给z′;取整数变量ρ并赋值ρ=0;
本实施例中,经过步骤5.2.16和步骤5.2.17可分别得出在编码平面靶标中,
对应的编码平面靶标内每个平行四边形编码单元的编码号如图11所示;
步骤5.4、取整数变量e,并赋予其初值e=zv;本实施例中将0赋值给整数变量e;
步骤5.5、编码平面靶标中,在编码号为0对应的平行四边形编码单元内,分别记定位圆质心的靶标坐标为ol,0(6.75,-4.5,0)、定向圆环质心的靶标坐标为od,0(6.75,-9,0)、由定向圆环质心指向定位圆质心的向量为编码号为0对应的平行四边形编码单元内的方向向量在编码号为0对应的平行四边形编码单元内,计算距离定位圆质心ol,0最近的两个顶点分别记为C0,1min(13.5,0,0)和C0,2min(0,0,0),码号为0对应的平行四边形编码单元内的方向向量可由式(2)算出,码号为0对应的平行四边形编码单元内的顶点向量可由式(3)算出,
在编码号为0对应的平行四边形编码单元内,记过定位圆质心ol,0且平行于顶点向量的直线为l1,0,过定向圆环质心od,0且平行于顶点向量的直线为l2,0,记通过定位圆质心ol,0和定向圆环质心od,0的直线为l3,0;利用直线l3,0、直线l1,0与直线l2,0可将编码号为0对应的平行四边形编码单元划分为6个编码区域,且编码号为0对应的平行四边形编码单元中每个编码区域内包含2个编码单元图案;
由于且则将顶点C0,1min(0,0,0)记为编码号为0对应的平行四边形编码单元中第1编码区定位顶点且将该第1编码区定位顶点所属的编码区域记为编码号为0对应的平行四边形编码单元中的第1编码区域;同时将顶点C0,2min(0,0,0)记为编码号为0对应的平行四边形编码单元中第6编码区定位顶点且将该第6编码区定位顶点所属的编码区域记为编码号为0对应的平行四边形编码单元中的第6编码区域;
步骤5.7、在编码号为0对应的平行四边形编码单元中,将该平行四边形编码单元的第1编码区域作为起始区域、第6编码区域作为终点区域,按照顺时针方向(沿着靶标坐标系Zt轴正向的相反方向),依次将该平行四边形编码单元中的6个编码区域记为该平行四边形编码单元的第1编码区域、第2编码区域、第3编码区域、第4编码区域、第5编码区域和第6编码区域;
步骤5.8、编码号为0对应的平行四边形编码单元中第σ编码区域(σ=1,2,5,6)中的第i个编码单元图案(i=1,2)的质心到直线l1,0的距离记为将编码号为0对应的平行四边形编码单元中第π编码区域(π=3,4)中的第i个(i=1,2)编码单元图案的质心到直线l2,0的距离记为将编码号为0对应的平行四边形编码单元中第θ号编码区域(θ=1,2,3,4,5,6)中的第i个(i=1,2)编码单元图案的质心到直线l3,0的距离记为
本实施例中有:
步骤5.10、本实施例中,在编码号为0对应的平行四边形编码单元内第σ编码区域中,由于且则记该平行四边形编码单元内第σ编码区域中的第1个编码单元图案为该平行四边形编码单元内第σ编码区域中的第1位编码单元图案记该平行四边形编码单元内第σ编码区域中的第2个编码单元图案为该平行四边形编码单元内第σ编码区域中的第2位编码单元图案其中σ=1,2,5,6;
步骤5.11、本实施例中,在编码号为0对应的平行四边形编码单元内第π编码区域中,由于且时,则记该平行四边形编码单元内第π编码区域中的第1个编码单元图案为该平行四边形编码单元内第π编码区域中的第1位编码单元图案记该平行四边形编码单元内第π编码区域中的第2个编码单元图案为该平行四边形编码单元内第π编码区域中的第2位编码单元图案其中π=3,4;
GT·F0==0 (16)
其中,列向量G=(20,21,22,23,24,25,26,27,28,29,210,211)T,且
列向量F0=(0,0,0,0,0,0,0,0,0,0,0,0)T;
步骤5.14、由于编码号为0对应的平行四边形编码单元内的所有编码单元图案的编码值均为0,即则令编码号为0对应的平行四边形编码单元内的所有编码单元图案的颜色均为黑色(即颜色1),其中j=1,2且θ=1,2,3,4,5,6;
至此,完成了编码号为0对应的平行四边形编码单元的编码工作;
步骤5.16、将e+1重新赋值给e,重新执行编码步骤即可完成编码号为1对应的平行四边形编码单元的编码工作;以此类推,最后可完成本实施例中所有18个平行四边形编码单元的非唯一性编码工作,如图13所示。
将所得出的编码平面靶标上平行四边形编码单元的编码号以及每个标定角点的2个编码序号(即非唯一行编码号)作为输入条件,完成编码平面靶标上每个标定角点唯一性编码的步骤如下:
步骤5.17.1、令j=Max{m′,m″},本实施例中,j=6,第5行第3个平行四边形编码单元的4个顶点为标定角点的个数Φ′p==2;
步骤5.17.2.1、由于N==5为奇数,执行步骤5.17.2.2;
步骤5.17.2.2、取整数参数Δ并赋值Δ=(N+1)/2=3,执行步骤5.17.2.2.1;
zm=ε+zv-Δ-1=14 (19)
步骤5.17.2.2.2、本实施例中,Φp==2,由式(20)、式(21)和式(22)的计算,将标定角点也分别记为第0_6号标定角点、第0_1号标定角点、第1_6号标定角点、…、第13_1号标定角点、第14_6号标定角点;
通过上述步骤即完成了对编码平面靶标中所有标定角点的唯一性编码工作,每一个标定角点均有确定且唯一的编码号。
步骤6、令r=r-1,若r≠0,则在编码立体靶标中未编码的编码平面靶标的编号集合Ψr中排除编号Ir后,重复执行步骤3至步骤5,直至完成编码立体靶标中的所有标定角点的编码工作。
本实施例中,r=S-1=5∈[1,S],因此,新的编码立体靶标中未编码的编码平面靶标的编号集合Ψr为Ψr={1,2,3,4,6},并跳转步骤3,直至完成循环,完成所有6个编码平面靶标的编码任务,1号编码平面靶标如图15所示,2号编码平面靶标如图16所示,3号编码平面靶标如图17所示,4号编码平面靶标如图18所示,5号编码平面靶标如图19所示,6号编码平面靶标如图20所示。具体实施例中,编码立体靶标内的每个标定角点对应的唯一编码序号、唯一像素坐标系下的像素坐标值和唯一靶标坐标系下的靶标坐标值如表1-表6所示;
表1 1号编码平面靶标内所有标定角点信息
编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 | 编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 |
1 | 92_6 | (0,54) | 1 | 84_1 | (27,13.5) |
1 | 89_1 | (0,40.5) | 1 | 81_6 | (27,0) |
1 | 86_6 | (0,27) | 1 | 93_1 | (40.5,54) |
1 | 83_1 | (0,13.5) | 1 | 91_6 | (40.5,40.5) |
1 | 80_6 | (0,0) | 1 | 87_1 | (40.5,27) |
1 | 92_1 | (13.5,54) | 1 | 85_6 | (40.5,13.5) |
1 | 90_6 | (13.5,40.5) | 1 | 81_1 | (40.5,0) |
1 | 86_1 | (13.5,27) | 1 | 94_6 | (54,54) |
1 | 84_6 | (13.5,13.5) | 1 | 91_1 | (54,40.5) |
1 | 80_1 | (13.5,0) | 1 | 88_6 | (54,27) |
1 | 93_6 | (27,54) | 1 | 85_1 | (54,13.5) |
1 | 90_1 | (27,40.5) | 1 | 82_6 | (54,0) |
1 | 87_6 | (27,27) |
表2 2号编码平面靶标内所有标定角点信息
编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 | 编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 |
2 | 110_1 | (0,54) | 2 | 102_6 | (27,13.5) |
2 | 107_6 | (0,40.5) | 2 | 99_1 | (27,0) |
2 | 104_1 | (0,27) | 2 | 112_6 | (40.5,54) |
2 | 101_6 | (0,13.5) | 2 | 108_1 | (40.5,40.5) |
2 | 98_1 | (0,0) | 2 | 106_6 | (40.5,27) |
2 | 111_6 | (13.5,54) | 2 | 102_1 | (40.5,13.5) |
2 | 107_1 | (13.5,40.5) | 2 | 100_6 | (40.5,0) |
2 | 105_6 | (13.5,27) | 2 | 112_1 | (54,54) |
2 | 101_1 | (13.5,13.5) | 2 | 109_6 | (54,40.5) |
2 | 99_6 | (13.5,0) | 2 | 106_1 | (54,27) |
2 | 111_1 | (27,54) | 2 | 103_6 | (54,13.5) |
2 | 108_6 | (27,40.5) | 2 | 100_1 | (54,0) |
2 | 105_1 | (27,27) |
表3 3号编码平面靶标内所有标定角点信息
表4 4号编码平面靶标内所有标定角点信息
编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 | 编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 |
4 | 69_6 | (0,54) | 4 | 61_1 | (27,13.5) |
4 | 66_1 | (0,40.5) | 4 | 58_6 | (27,0) |
4 | 63_6 | (0,27) | 4 | 70_1 | (40.5,54) |
4 | 60_1 | (0,13.5) | 4 | 68_6 | (40.5,40.5) |
4 | 57_6 | (0,0) | 4 | 64_1 | (40.5,27) |
4 | 69_1 | (13.5,54) | 4 | 62_6 | (40.5,13.5) |
4 | 67_6 | (13.5,40.5) | 4 | 58_1 | (40.5,0) |
4 | 63_1 | (13.5,27) | 4 | 71_6 | (54,54) |
4 | 61_6 | (13.5,13.5) | 4 | 68_1 | (54,40.5) |
4 | 57_1 | (13.5,0) | 4 | 65_6 | (54,27) |
4 | 70_6 | (27,54) | 4 | 62_1 | (54,13.5) |
4 | 67_1 | (27,40.5) | 4 | 59_6 | (54,0) |
4 | 64_6 | (27,27) |
表5 5号编码平面靶标内所有标定角点信息
编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 | 编码平面靶标编码号 | 唯一编码序号 | 靶标坐标值 |
5 | 12_6 | (0,54) | 5 | 4_1 | (27,13.5) |
5 | 9_1 | (0,40.5) | 5 | 1_6 | (27,0) |
5 | 6_6 | (0,27) | 5 | 13_1 | (40.5,54) |
5 | 3_1 | (0,13.5) | 5 | 11_6 | (40.5,40.5) |
5 | 0_6 | (0,0) | 5 | 7_1 | (40.5,27) |
5 | 12_1 | (13.5,54) | 5 | 5_6 | (40.5,13.5) |
5 | 10_6 | (13.5,40.5) | 5 | 1_1 | (40.5,0) |
5 | 6_1 | (13.5,27) | 5 | 14_6 | (54,54) |
5 | 4_6 | (13.5,13.5) | 5 | 11_1 | (54,40.5) |
5 | 0_1 | (13.5,0) | 5 | 8_6 | (54,27) |
5 | 13_6 | (27,54) | 5 | 5_1 | (54,13.5) |
5 | 10_1 | (27,40.5) | 5 | 2_6 | (54,0) |
5 | 7_6 | (27,27) |
表6 6号编码平面靶标内所有标定角点信息
通过上述步骤,即可完成对编码立体靶标中所以编码平面靶标中的所有标定角点的唯一性编码工作,找到了编码立体靶标内每个标定角点唯一的编码号、编码立体靶标内每个标定角点所在编码平面靶标的编码号、编码立体靶标内每个标定角点所在基准平面板区域的编码号。
本发明提供的基于编码立体靶标的编码方法,需要编制相应的计算机程序,并在计算机上执行程序以实现相应的运算处理及逻辑控制功能,因而本发明也提供一种计算机可读存储介质,包括与具有图像处理功能的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以所述的编码方法。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种用于快速标定摄像机内外参数的编码立体靶标,其特征在于:所述编码立体靶标包括基准平面板、编码平面靶标板和连接机构,所述基准平面板的表面划分为S个区域,S为正整数且S>3,每个区域内固定设置一个连接机构,每个连接机构的端部活动连接有一个编码平面靶标板,每个区域内的连接机构连接的编码平面靶标板均不相同,每个编码平面靶标板的空间姿态可活动调节,所述编码平面靶标板上均设置有编码平面靶标;
所述编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,所述编码平面靶标以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,所述编码平面靶标一共包含M行×N列个标定角点,其中M和N均为正整数;编码平面靶标中每一个平行四边形编码单元的内部设置有编码图案,编码图案包括定位图案、定向图案和编码标志图案,其中编码标志图案又由多个编码单元图案组成;定向图案和定位图案用于编码平面靶标旋转方向的判断;编码标志图案用于给编码平面靶标中每一个标定角点进行编码;
任取编码平面靶标中的一个平行四边形编码单元记为编码平面靶标向量确定编码单元Γv,任取编码平面靶标向量确定编码单元Γv的一个顶点记为向量确定编码单元第一顶点o″1,在编码平面靶标向量确定编码单元Γv中将相交形成向量确定编码单元第一顶点o″1的任意一条边记为向量确定编码单元第一边Νv1,在向量确定编码单元第一边Νv1上取向量确定编码单元Γv的顶点记为向量确定编码单元第一边上第一点o″2,其中第一点o″2与第一顶点o″1是互不重合的2个点,记向量为规定向量且每一个平行四边形编码单元中的定位图案和定向图案的位置关系如下:在同一平行四边形编码单元内由定向图案质心指向定位图案质心的方向与规定向量的方向相同。
2.根据权利要求1所述的一种用于快速标定摄像机内外参数的编码立体靶标,其特征在于:所述编码立体靶标的基准平面板中,设置有以基准面的任意一个顶点为原点o、以过原点o且在基准面中相交的两条边分别为x轴和y轴形成的基准坐标系o-xyz;
在基准坐标系o-xyz内,基准面由Sa-1条与y轴平行的纵向区域分割线和Sb-1条与x轴平行的横向区域分割线划分为S个区域,其中,Sa、Sb均为正整数,Sa∈[1,S],Sb∈[1,S],且Sa·Sb=S;
3.根据权利要求1所述的一种用于快速标定摄像机内外参数的编码立体靶标,其特征在于:所有编码平面靶标中的平行四边形编码单元的编码号互不相同,且每个编码平面靶标中的所有平行四边形编码单元的编码号为连续的整数。
4.根据权利要求3所述的一种用于快速标定摄像机内外参数的编码立体靶标,其特征在于:所述编码平面靶标的平行四边形编码单元的编码号范围为[0,4095]。
5.一种基于权利要求2所述的编码立体靶标的编码方法,其特征在于:通过对每个编码平面靶标中的所有标定角点进行编码,找到编码立体靶标内每个标定角点唯一的编码号、编码立体靶标内每个标定角点所在编码平面靶标的编码号、编码立体靶标内每个标定角点所在基准平面板区域的编码号,从而完成整个编码立体靶标的所有标定角点的编码。
6.根据权利要求5所述的编码立体靶标的编码方法,其特征在于:对编码立体靶标内每个标定角点的编码方法包括如下步骤:
步骤1、取变量r表示未完成编码的编码平面靶标的个数和未完成编码的区域的个数,并设置初始值r=S,编码立体靶标中的平行四边形编码单元的初始编码号为zS,zS为正整数;
步骤2、设定编码立体靶标区域及编码平面靶标的编号范围为1,2,3,...,S的连续正整数,记编码立体靶标中未编码的编码平面靶标的编号集合为Ψr=[1,2,3,...,S],r同样表示编号集合内编号的个数;
步骤3、在r个未完成编码的区域中,按照任意规则或随机在空间中编码立体靶标内选取一个区域,同时在编码立体靶标中未编码的编码平面靶标的编号集合Ψr=[1,2,3,...,S]中,按照任意规则或随机选取一个编号并记为Ir,作为选取的对应区域的编号;
同时将Ir号区域内的编码平面靶标记为Ir号编码平面靶标,记Ir号编码平面靶标内的平行四边形编码单元的编码序号总数为Lr+1,记Ir号区域内的Ir号编码平面靶标一共包含标定角点的个数为Mr×Nr个;
步骤4、对于Ir号区域内的Ir号编码平面靶标的初始编码号zr,进行重新赋值;
步骤5、利用编码平面靶标的编码方法,对Ir号区域内的Ir号编码平面靶标的所有标定角点进行编码,得到Ir号编码平面靶标内每个标定角点的唯一编码号;
步骤6、令r=r-1,若r≠0,则在编码立体靶标中未编码的编码平面靶标的编号集合Ψr中排除编号Ir后,重复执行步骤3至步骤5,直至完成编码立体靶标中的所有标定角点的编码工作。
7.根据权利要求6所述的编码立体靶标的编码方法,其特征在于:步骤3中,所选区域的行编号及列编号由下式计算出:
Ir÷Sa=α′...β′
其中:Sa、Sb均为正整数,Sa∈[1,S],Sb∈[1,S],且满足Sa·Sb=S,Sa为在基准面内划分的S个区域中所能划分的区域的最大的列数,Sb为在基准面内划分的S个区域中所能划分的区域的最大的列数;
α′为Ir与Sa相除所得整数值,β′为Ir与Sa相除所得余数值;
若β′=0,则所选编号为Ir的区域为第α′行第Sa列所在的区域;
若β′≠0,则所选编号为Ir的区域为第(α′+1)行第β′列所在的区域。
8.根据权利要求6所述的编码立体靶标的编码方法,其特征在于:在步骤4中,
若r=S,则Ir号区域内的Ir号编码平面靶标的初始编码号zr=zS;
若r≠S,则Ir号区域内的Ir号编码平面靶标的初始编码号zr=zr+1+Lr+1+Δr;
其中:Δr为正整数,且Δr≥1,表示Ir号编码平面靶标与Ir+1号编码平面靶标的编码序号间隔。
9.一种计算机可读存储介质,包括与具有图像处理功能的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以如权利要求5所述的编码方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020115410771 | 2020-12-23 | ||
CN202011541077 | 2020-12-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113129388A CN113129388A (zh) | 2021-07-16 |
CN113129388B true CN113129388B (zh) | 2022-09-06 |
Family
ID=76781498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110489971.7A Active CN113129388B (zh) | 2020-12-23 | 2021-05-06 | 用于快速标定摄像机内外参数的编码立体靶标及其编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113129388B (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006055758B4 (de) * | 2006-11-25 | 2010-02-18 | Deutsches Zentrum für Luft- und Raumfahrt e.V. | Verfahren zur Kalibrierung von Kameras und Projektoren |
CN104408704A (zh) * | 2014-08-25 | 2015-03-11 | 太仓中科信息技术研究院 | 一种自动化变焦镜头标定装置及标定方法 |
CN104933717B (zh) * | 2015-06-17 | 2017-08-11 | 合肥工业大学 | 基于方向性标定靶标的摄像机内外参数自动标定方法 |
CN106600648A (zh) * | 2016-12-06 | 2017-04-26 | 合肥工业大学 | 标定相机内参数和畸变系数的立体编码靶标及其标定方法 |
CN206441238U (zh) * | 2017-02-09 | 2017-08-25 | 杭州零智科技有限公司 | 标定板和标定系统 |
CN110246185B (zh) * | 2018-03-07 | 2023-10-27 | 阿里巴巴集团控股有限公司 | 图像处理方法、装置、系统、存储介质和标定系统 |
CN108765494B (zh) * | 2018-05-21 | 2021-12-24 | 南昌航空大学 | 一种基于圆柱体标定物的多相机标定方法 |
CN111699513B (zh) * | 2018-07-16 | 2024-04-09 | 深圳配天机器人技术有限公司 | 一种标定板、内参数标定方法、机器视觉系统及存储装置 |
CN209168191U (zh) * | 2018-12-31 | 2019-07-26 | 深圳积木易搭科技技术有限公司 | 一种标定装置 |
CN111709999A (zh) * | 2020-05-13 | 2020-09-25 | 深圳奥比中光科技有限公司 | 标定板、相机标定方法、装置、电子设备及相机系统 |
-
2021
- 2021-05-06 CN CN202110489971.7A patent/CN113129388B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113129388A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105931222B (zh) | 用低精度二维平面靶标实现高精度相机标定的方法 | |
CN113129385B (zh) | 基于空间中多编码平面靶标的双目摄像机内外参数标定方法 | |
CN110738273B (zh) | 图像特征点的匹配方法、装置、设备及存储介质 | |
CN102034238A (zh) | 基于光学成像测头和视觉图结构的多摄像机系统标定方法 | |
CN113129386B (zh) | 基于编码平面靶标的双目摄像机内外参数的智能标定方法 | |
CN110415304B (zh) | 一种视觉标定方法及系统 | |
CN113096191B (zh) | 基于编码平面靶标的单目摄像机智能标定方法 | |
CN112614188A (zh) | 一种基于交比不变性的点阵式标定板及其识别方法 | |
CN113160329B (zh) | 用于摄像机标定的编码平面靶标及其解码方法 | |
CN110490941B (zh) | 一种基于法向量的远心镜头外参数标定方法 | |
CN113129397B (zh) | 一种基于图形几何关系的平行四边形编码标志的解码方法 | |
CN113129388B (zh) | 用于快速标定摄像机内外参数的编码立体靶标及其编码方法 | |
CN113112550B (zh) | 一种用于摄像机内外参数标定的编码平面靶标及其编码方法 | |
CN113192143B (zh) | 一种用于摄像机快速标定的编码立体靶标及其解码方法 | |
CN114299172B (zh) | 一种用于视觉系统的平面编码靶标及其实时位姿测量方法 | |
CN113506347B (zh) | 一种基于单幅照片的相机内参处理方法及系统 | |
CN115222828A (zh) | 用于视觉定位的正六边形编码标志解码方法 | |
CN111833401B (zh) | 一种基于双面点云信息的快速测距方法及其系统 | |
CN113112549B (zh) | 一种基于编码立体靶标的单目摄像机快速标定方法 | |
CN113129396A (zh) | 一种基于区域分割的平行四边形编码标志的解码方法 | |
CN114494316A (zh) | 角点标记方法、参数标定方法、介质及电子设备 | |
CN113188524B (zh) | 一种基于图形几何关系的平行四边形编码标志及其编码方法 | |
CN113129394B (zh) | 一种基于区域分割编码的平行四边形编码标志及其编码方法 | |
Chen et al. | Recovering projected centers of circle-pairs with common tangents | |
CN113379846B (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 |