CN113192143B - 一种用于摄像机快速标定的编码立体靶标及其解码方法 - Google Patents
一种用于摄像机快速标定的编码立体靶标及其解码方法 Download PDFInfo
- Publication number
- CN113192143B CN113192143B CN202110397447.7A CN202110397447A CN113192143B CN 113192143 B CN113192143 B CN 113192143B CN 202110397447 A CN202110397447 A CN 202110397447A CN 113192143 B CN113192143 B CN 113192143B
- Authority
- CN
- China
- Prior art keywords
- coding
- target
- plane
- calibration
- image
- 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)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
本发明公开了一种用于摄像机快速标定的编码立体靶标及其解码方法,编码立体靶标包含基准平面板、编码平面靶标板和连接机构,每个连接机构用于将编码平面靶标板与基准平面板连接,每个编码平面靶标板上设置一个编码平面靶标。本发明公开的解码方法通过对摄像机拍摄编码立体靶标得到的编码立体靶标标定图像进行处理,获取图像中所有检测到的标定角点的唯一编码信息,从而完成对编码立体靶标的所有标定角点的解码;本发明的编码立体靶标所有区域内的编码平面靶标的空间位姿和角点编码序号均不相同,极大提高了摄像机标定过程的准确性和鲁棒性;同时利用编码立体靶标的区域多样性,可实现单幅图像的标定,极大降低了摄像机标定的复杂度。
Description
技术领域
本发明涉及计算机视觉领域中的摄像机标定领域,具体为一种用于摄像机快速标定的编码立体靶标及其解码方法,用于单目摄像机标定、双目摄像机标定以及多目视觉系统的标定。
背景技术
计算机视觉被广泛地应用于控制工程、光学、测量学等诸多领域,计算机视觉需要解决的首要和根本性问题就是摄像机标定,摄像机标定是计算机视觉测量技术研究的一大难点;摄像机标定是为了获取较为准确的摄像机内外参数,进而获取空间三维坐标与图像二维坐标之间的关系。
为了完成摄像机的标定过程,通常需要标定靶标帮助实现。其中,张正友(Z.YZhang)于1999年给出了基于平面靶标的摄像机标定算法,该方法利用传统的平面棋盘格靶标,使得摄像机标定过程变得简单易操作,为后续的摄像机标定技术的发展奠定了良好的基础。同时,随着计算机视觉技术的不断发展,传统的平面棋盘格靶标暴露出很多缺陷,例如在实际标定过程中,往往会出现靶标图像拍摄不完整、靶标图像的方向信息缺失和标定过程复杂等问题,因此,本发明提出了一种用于摄像机内外参数标定的编码立体靶标及其解码方法,利用在基准平面内设置多个空间位姿不同的编码平面靶标,有效解决了上述问题,另外,针对此编码立体靶标采用的解码方法快速且具有高精度,提升了摄像机标定过程的可操作性。
发明内容
本发明旨在克服现有技术的不足,提出了一种用于摄像机快速标定的编码立体靶标及其解码方法,通过在基准平面内设置多个不同空间位姿的编码平面靶标,使得利用单幅图像即可完成单目摄像机或多目摄像机的标定;利用图像处理的方法识别出编码立体靶标图像中每个编码平面靶标,进而完成对每个编码平面靶标内的每一个标定角点的解码工作。
为实现上述效果,本发明采用的技术方案为:提供一种用于摄像机快速标定的编码立体靶标,所述编码立体靶标包括基准平面板、编码平面靶标板和连接机构,所述基准平面板的表面划分为若干个区域,每个区域内固定设置一个连接机构,每个连接机构的端部活动连接有一个编码平面靶标板,每个编码平面靶标板的空间姿态可活动调节,所述编码平面靶标板上均设置有编码平面靶标,所述编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,使用摄像机拍摄编码立体靶标,经过图像处理方法可获得编码立体靶标灰度图像,所述编码立体靶标灰度图像至少包含1个标定角点,通过对编码立体靶标灰度图像进行处理,可获得编码立体靶标灰度图像中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号及所在基准平面板区域的编码号,从而完成对编码立体靶标的所有标定角点的解码。
所述编码立体靶标的基准平面板是一个长度为a、宽度为b、厚度为c的长方体;
所述编码立体靶标的基准平面板中,任意选择长度为a宽度为b的一个矩形面记为基准面,所述基准面为矩形,将基准面划分为S个区域,划分方法如下:
步骤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条与y轴平行的纵向区域分割线和Sb-1条与x轴平行的横向区域分割线将基准面划分为S个区域,其中,Sa、Sb均为正整数,Sa∈[1,S],Sb∈[1,S],且Sa表示在基准面内划分S个区域中,所能划分的区域的最大的列数,即基准面内S个区域的列编号的最大值,同样Sb表示在基准面内划分S个区域中,所能划分的区域的最大的行数,即基准面内S个区域的行编号的最大值,则有Sa·Sb=S,于是可将基准面划分为S个区域;
步骤3、在基准面内,将包含基准坐标系o-xyz原点o的区域记为第1行第1列区域,将第1行第1列区域记为1号区域;以1号区域为起始区域,将沿着基准坐标系x轴正向依次搜索到的Sa-1个区域依次记为第1行第2列区域、第1行第3列区域、…、第1行第Sa列区域,同时将第1行第2列区域记为号区域、第1行第3列区域记为号区域、…、第1行第Sa列区域记为号区域,其中,
以1号区域为起始区域,将沿着基准坐标系y轴正向依次搜索到的Sb-1个区域依次记为第2行第1列区域、第3行第1列区域、…、第Sb行第1列区域,同时将第2行第1列区域记为号区域、第3行第1列区域记为号区域、…、第Sb行第1列区域记为号区域,其中,
同理,第α行第1列的区域记为号区域;以号区域为起始区域,将沿着基准坐标系x轴正向依次搜索到的Sa-1个区域依次记为第α行第2列区域、第α行第3列区域、…、第α行第Sa列区域,同时将第α行第2列区域记为号区域、第α行第3列区域记为号区域、…、第α行第Sa列区域记为号区域,其中, 以此类推,将第α行第β列的区域记为号区域,其中β表示区域列编号,α表示区域行编号,表示区域编号,则α、β、为正整数,β=1,2,3,...,Sa,α=1,2,3,...,Sb,区域编号与区域行编号α、区域列编号β的关系如式(1)所示,其中由此完成了基准面S个区域的划分。
所述编码立体靶标的编码平面靶标板的个数为S个,与所述基准面内的S个区域个数相同,其中,S为正整数,S>3,同时,所有S个编码平面靶标板都有如下特征:所述编码平面靶标板是长方体,在编码平面靶标板中,任意选取编码平面靶标板6个平面中的一个平面作为编码平面靶标板的正面,在编码平面靶标板余下的5个平面中,选取与编码平面靶标板的正面平行的一个平面作为编码平面靶标板的反面;在编码平面靶标板的正面内设置一个编码平面靶标,而编码平面靶标板的反面用于与连接机构连接;
所述编码立体靶标的连接机构的个数为S个,所述编码立体靶标内基准平面板、编码平面靶标板和连接机构的关系如下:在基准面的所有的S个区域中,基准面的每个区域内有且仅有一个连接机构将1个编码平面靶标板与基准平面板连接,记基准面号区域内的连接机构为号连接机构,记号连接机构连接的1个编码平面靶标板为号编码平面靶标板,所有的S个连接机构互为不同的连接机构实体,所有的S个编码平面靶标板互为不同的编码平面靶标板实体,其中将号编码平面靶标板正面内的编码平面靶标记为号编码平面靶标,即号编码平面靶标的编号为
进一步的,所述编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,所述编码平面靶标以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,所述编码平面靶标一共包含M行×N列个标定角点,其中M和N均为正整数;编码平面靶标中每一个平行四边形编码单元的内部设置有编码图案,编码图案包括定位图案、定向图案和编码标志图案,其中编码标志图案又由多个编码单元图案组成;定向图案和定位图案用于编码平面靶标旋转方向的判断;编码标志图案用于给编码平面靶标中每一个标定角点进行编码。
编码平面靶标中每一个平行四边形编码单元内部的定位图案、定向图案和编码单元图案均不重叠且不连通。
编码平面靶标中所有平行四边形编码单元和平行四边形非编码单元均为长度为a且宽度为b的平行四边形,a和b均大于零。
任取编码平面靶标中的一个平行四边形编码单元记为编码平面靶标向量确定编码单元Γv,任取编码平面靶标向量确定编码单元Γv的一个顶点记为向量确定编码单元第一顶点o″1,在编码平面靶标向量确定编码单元Γv中将相交形成向量确定编码单元第一顶点o″1的任意一条边记为向量确定编码单元第一边Nv1,在向量确定编码单元第一边Nv1上取向量确定编码单元Γ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;若所得向量的方向与正向向量的方向相同,则将记为向量辅助向量若所得向量的方向与正向向量的方向相同,则将向量记为辅助向量
编码平面靶标内的每一个平行四边形编码单元中的定位图案和定向图案的位置关系如下,同一平行四边形编码单元的定位图案和定向图案均在所属平行四边形编码单元的内部,且同一平行四边形编码单元内的定位图案的质心和定向图案的质心均在所属平行四边形编码单元的质心附近;
在编码平面靶标内同一个平行四边形编码单元中的多个编码单元图案的尺寸可以互不相同;
在编码平面靶标中每一个平行四边形编码单元及其内部的定位图案、编码单元图案满足如下关系:在同一个平行四边形编码单元中,每个编码单元图案的轮廓长度均小于定位图案的轮廓长度,并且定位图案的轮廓长度小于(2a+2b);
编码平面靶标中所有平行四边形编码单元的背景颜色相同,并且将编码平面靶标中所有的平行四边形编码单元的背景颜色记为颜色1,;编码平面靶标中所有平行四边形非编码单元的颜色均相同,并且将编码平面靶标中所有平行四边形非编码单元的颜色记为颜色2;
编码平面靶标中所有平行四边形编码单元的背景颜色(即颜色1)与所有平行四边形非编码单元的颜色(即颜色2)具有明显的差异;
编码平面靶标中所有平行四边形编码单元包含的所有定位图案和定向图案的颜色均相同,并将编码平面靶标中所有平行四边形编码单元包含的所有定位图案和定向图案的颜色记为颜色3,并且颜色3与颜色1具有明显差异;
编码平面靶标中所有平行四边形编码单元内所包含的所有编码单元图案的颜色与颜色1相同或者与颜色3相同;
在编码平面靶标中的每个平行四边形编码单元内部的定位图案是一个实心圆,定向图案是一个圆环,编码单元图案均为实心圆;
在编码平面靶标中每一个平行四边形编码单元内的颜色为颜色1的连通域具有如下特征,同一个平行四边形编码单元内包含2个颜色为颜色1的连通域,且距离定向图案质心最近的颜色为颜色1的连通域面积小于另一个颜色为颜色1的连通域面积;
编码平面靶标内不同的平行四边形编码单元包含的定位图案的面积大小可以相同也可以不同;编码平面靶标内不同的平行四边形编码单元包含的定向图案的面积大小可以相同也可以不同;编码平面靶标内不同的平行四边形编码单元包含的编码单元图案的面积大小可以相同也可以不同;
进一步的,编码立体靶标内所有编码平面靶标中的平行四边形编码单元的编码号互不相同,且每个编码平面靶标中的所有平行四边形编码单元的编码号为连续的整数。进一步的,所述编码平面靶标的平行四边形编码单元的编码号总数为4096。采用连续编号时,编码序号范围为[0,4095],那么所有S个编码平面靶标内的任一平行四边形编码单元编码序号均在此范围内,即编码立体靶标中编码号最大的平行四边形编码单元的编码号应小于4096。
还提供了一种基于所述的编码立体靶标的解码方法,包括以下主要步骤:
步骤1、通过摄像机拍摄位于空间中的编码立体靶标,由此得到包含标定角点的编码立体靶标标定图像P,将编码立体靶标标定图像P进行灰度化处理,进而得到编码立体靶标灰度图像P′;
此步骤前,编码立体靶标的解码包含以下初始已知条件:编码立体靶标中基准平面板上划分的区域的个数为S以及各区域的编号为编码立体靶标中编码平面靶标的个数为S以及各编码平面靶标的编号为 号编码平面靶标内每个标定角点的编码号以及号编码平面靶标内平行四边形编码单元个数为 号编码平面靶标内的平行四边形编码单元的编码号都是连续的,例如号编码平面靶标内平行四边形编码单元的编码号范围为:
步骤2、建立编码立体靶标灰度图像P′的标定角点的像素坐标系O-XY;
在上述编码立体靶标灰度图像P′中,取图像左上角作为所述标定角点的像素坐标系原点O,自左向右为标定角点像素坐标系的X轴方向,自上向下为标定角点像素坐标坐标系的Y轴方向;由此建立起所述标定角点的像素坐标系O-XY;
步骤3、利用棋盘格角点检测算法,计算出编码立体靶标灰度图像P′中χ个完整或局部的编码平面靶标上所有标定角点的亚像素坐标集合,其中每个标定角点的亚像素坐标集合都对应编码立体靶标灰度图像P′中的1个完整的或局部的编码平面靶标,并将χ个亚像素坐标集合对应的编码立体靶标灰度图像P′中的编码平面靶标依次记为编码立体靶标灰度图像P′内第1个编码平面靶标编码立体靶标灰度图像P′内第2个编码平面靶标…、编码立体靶标灰度图像P′内第χ个编码平面靶标
步骤4、取整数变量i,并赋予初始值i=1;
步骤5、将编码立体靶标灰度图像P′复制为第i幅编码立体靶标灰度复制图像P′i;
步骤6、在第i幅编码立体靶标灰度复制图像P′i中,利用编码立体靶标灰度图像P′内第i个编码平面靶标对应的标定角点亚像素坐标集合和数字图像处理的方法,将编码立体靶标灰度图像P′内第i个编码平面靶标对应的标定角点亚像素坐标集合中的最外围标定角点对应的亚像素坐标在第i幅编码立体靶标灰度复制图像P′i中对应的像素点顺时针或逆时针所围成多边形内部的所有像素点的灰度值保持不变,将编码立体靶标灰度图像P′内第i个编码平面靶标对应的标定角点亚像素坐标集合中的最外围标定角点对应的亚像素坐标在第i幅编码立体靶标灰度复制图像P′i中对应的像素点顺时针或逆时针所围成多边形外部的所有像素点的灰度值均赋值为255,并将处理后的图像记为第i幅无复杂背景编码立体靶标灰度复制图像P″i;
步骤7、在第i幅无复杂背景编码立体靶标灰度复制图像P″i中,利用编码平面靶标的解码方法,找到第i幅无复杂背景编码立体靶标灰度复制图像P″i中所有检测到的标定角点的唯一编码号和与所有检测到的标定角点的编码号一一对应的亚像素坐标,同时利用编码平面靶标及标定角点的匹配方法,找到第i幅无复杂背景编码立体靶标灰度复制图像P″i中所有检测到的标定角点所对应的空间中编码立体靶标内的号编码平面靶标内的标定角点,进而得到第i幅无复杂背景编码立体靶标灰度复制图像P″i中所有检测到的标定角点所在的空间中编码立体靶标内的号编码平面靶标的编码号及空间中号编码平面靶标所在的编码立体靶标中基准面内的号区域的编码号同时找到与第i幅无复杂背景编码立体靶标灰度复制图像P″i中所有检测到的标定角点的编码号一一对应的靶标坐标;于是,结合上述编码平面靶标的解码方法和编码平面靶标及标定角点的匹配方法,可得到第i幅无复杂背景编码立体靶标灰度复制图像P″i中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准面的区域的编码号,完成第i幅无复杂背景编码立体靶标灰度复制图像P″i所有检测到的标定角点的解码;
本步骤中,所述编码平面靶标的解码方法具体包括以下步骤:
步骤7.1、输入放置在空间中的编码平面靶标的基本信息,即位于空间中的编码平面靶标包含M行×N列个标定角点,编码平面靶标的初始平行四边形编码单元编码号为zv,编码平面靶标上第1行第1个平行四边形编码单元的4个顶点中作为标定角点的个数Φp;
通过摄像机拍摄位于空间的编码平面靶标,由此得到编码平面靶标的图像,所述编码平面靶标图像中包含了完整的或者局部的编码平面靶标;对编码靶标图像进行8位灰度处理,并将得到的图像记为编码平面靶标灰度图像P1;其中,编码平面靶标灰度图像P1为8位灰度图;
步骤7.2、建立标定角点的像素坐标系:
在上述编码平面靶标灰度图像P1中,取图像左上角作为所述标定角点的像素坐标系原点o,自左向右为标定角点像素坐标系的x轴方向,自上向下为标定角点像素坐标坐标系的y轴方向;由此建立起所述标定角点的像素坐标系o-xy;
步骤7.3、在上述编码平面靶标灰度图像P1中,利用基于生长的棋盘格角点提取算法提取编码平面靶标灰度图像P1中所包含标定角点个数最多的m行×n列个标定角点的亚像素坐标集合并记为标定角点亚像素坐标集合Q,并将所述m行×n列个标定角点亚像素坐标集合中最外围角点(即第1行标定角点、第1列标定角点、第m行标定角点和第n列标定角点)所围成的多边形记为最大标定角点数多边形L;其中,经过角点提取后的编码平面靶标灰度图像P1没有发生改变;
步骤7.4、在所述编码平面靶标灰度图像P1中,利用数字图像处理的方法令上述步骤7.3中最大标定角点数多边形L内部的所有像素点的灰度值均保持不变,L以外的所有像素点的灰度值均赋值为255,并将编码平面靶标灰度图像P1经过此处理得到的图像记为无复杂背景靶标灰度图像P′1;
步骤7.5、对无复杂背景靶标灰度图像P′1进行二值化处理,并将无复杂背景靶标灰度图像P′1经过二值化处理得到的图像记为无复杂背景靶标二值化图像P2,使得在无复杂背景靶标二值化图像P2中平行四边形编码单元的背景颜色变为黑色,平行四边形非编码单元背景颜色、定位图案、定向图案的颜色均变为白色,编码标志图案的颜色根据编码规则可以为白色也可以为黑色;
步骤7.6、根据在编码平面靶标灰度图像P1中提取的最大标定角点数多边形L内部包含m行×n列个标定角点数目(其中m和n均为整数),可将本步骤分为如下情况:
情况1、当m、n均为奇数,或者m、n一奇一偶时可由公式(7-1)计算出多边形L内部包含的平行四边形编码单元个数μ(μ为整数);
μ=(m-1)(n-1)/2 (7-1)
然后执行步骤7.7.1;
情况2、若m、n均为偶数时,可由公式(2)计算出多边形L内包含的平行四边形编码单元预估个数μ′(μ′为整数);
μ′=[(m-1)(n-1)+1]/2 (7-2)
此时多边形L内实际包含的平行四边形编码单元的个数μ满足μ≤μ′;
设置平行四边形编码单元个数判断阀值L′;在无复杂背景靶标二值化图像P2上做黑色连通域腐蚀,使得无复杂背景靶标二值化图像P2中所有平行四边形编码单元对角处断开,并将无复杂背景靶标二值化图像P2经过此处理得到的图像记为靶标二值化腐蚀图像P′2;其中对无复杂背景靶标二值化图像P2进行黑色连通域腐蚀处理时,须满足以下条件:
(1)最大标定角点数多边形L内的每一个平行四边形编码单元均满足,平行四边形编码单元内的定向圆的白色连通域、定位圆环的白色连通域、定位圆环中心的黑色连通域和编码标志图案的白色连通域均保持完整;
(2)最标定大角点数多边形L内的每一个平行四边形编码单元均满足,平行四边形编码单元内的定向图案、定位图案和编码标志图案的连通域互不相通;
(3)最大标定角点数多边形L内的每一个平行四边形编码单元均满足,平行四边形编码单元内的定向图案、定位图案和编码标志图案均处于平行四边形编码单元背景中;
在靶标二值化腐蚀图像P′2上寻找μ′个最大的黑色连通域,并计算前μ′-1个最大黑色连通域包含像素点的平均值χ′;
将多边形L内μ′个最大黑色连通域中最小的黑色连通域记为末端黑色连通域,并计算末端黑色连通域包含的像素点数χm,根据公式(7-3)进行判断;
(1)若L″≤L′,则多边形L内实际包含μ′个平行四边形编码单元,将μ′的数值赋值给μ,μ=μ′;并执行步骤7.7.2;
(2)若L″>L′,则多边形L内实际包含μ′-1个平行四边形编码单元,将μ′-1的数值赋值给μ,μ=μ′-1;并执行步骤7.6.2;
步骤7.7.1、在无复杂背景靶标二值化图像P2上,做黑色连通域腐蚀,使得无复杂背景靶标二值化图像P2中所有平行四边形编码单元对角处断开,并将无复杂背景靶标二值化图像P2经过此处理得到的图像记为靶标二值化腐蚀图像P′2;其中对无复杂背景靶标二值化图像P2进行黑色连通域腐蚀处理时,须满足以下条件:
(1)最大标定角点数多边形L内的每一个平行四边形编码单元均满足,平行四边形编码单元内的定向圆的白色连通域、定位圆环的白色连通域、定位圆环中心的黑色连通域和编码标志图案的白色连通域均保持完整;
(2)最大角点数多边形L内的每一个平行四边形编码单元均满足,平行四边形编码单元内的定向图案、定位图案和编码标志图案的连通域互不相通;
(3)最大角点数多边形L内的每一个平行四边形编码单元均满足,平行四边形编码单元内的定向图案、定位图案和编码标志图案均处于平行四边形编码单元背景中;
步骤7.7.2、寻找在靶标二值化腐蚀图像P′2中的μ个最大黑色连通域并分别记为方格连通域Ω1、方格连通域Ω2、…、方格连通域Ωμ;取整数变量i,并赋予其初始值i=1;
步骤7.7.3在靶标二值化腐蚀图像P′2上,计算上述步骤7.6.2中方格连通域Ωi质心的像素坐标(xi,yi)i,将i+1重新赋值给i后继续执行此步骤直到i>μ,由此得到靶标二值化腐蚀图像P′2上的方格连通域Ω1、方格连通域Ω2、…、方格连通域Ωμ质心像素坐标(x1,y1)1、(x2,y2)2、…、(xμ,yμ)μ,并将(x1,y1)1、(x2,y2)2、…、(xμ,yμ)μ依次作为平行四边形编码单元质心像素坐标集合A中的第1个元素、第2个元素、…、第μ个元素;
步骤7.8.1、给整数变量i重新赋予初值i=1;
步骤7.8.2、在靶标二值化腐蚀图像P′2中,计算距离方格连通域Ωi的质心像素坐标值(xi,yi)i最近的黑色连通域,并记为靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′i;将i+1重新赋值给i后继续执行此步骤,直到i>μ时结束;由此分别得到靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′1、圆环中心连通域Ω′2、…、圆环中心连通域Ω′μ;
步骤7.8.3、给整数变量i重新赋予初值i=1;
步骤7.8.4、在靶标二值化腐蚀图像P′2中,计算上述靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′i质心像素坐标o″d,i(x″d,i,y″d,i),将i+1重新赋值给i后继续执行此步骤,直到i>μ时结束;由此得到靶标二值化腐蚀图像P″2中的圆环中心连通域Ω′1、圆环中心连通域Ω′2、…、圆环中心连通域Ω′μ的质心像素坐标o″d,1(x″d,1,y″d,1)、o″d,2(x″d,2,y″d,2)、…、o″d,μ(x″d,μ,y″d,μ),并将o″d,1(x″d,1,y″d,1)、o″d,2(x″d,2,y″d,2)、…、o″d,μ(x″d,μ,y″d,μ)依次作为圆环质心像素坐标集合B中的第1个元素、第2个元素、…、第μ个元素;
步骤7.9.1、在靶标二值化腐蚀图像P′2中,将除方格连通域Ω1、方格连通域Ω2、…、方格连通域Ωμ以及圆环中心连通域Ω′1、圆环中心连通域Ω′2、…、圆环中心连通域Ω′μ以外的黑色连通域的灰度值均赋值为255,并将靶标二值化腐蚀图像P′2经过此处理得到的图像记为解码二值化图像P3;
步骤7.9.2、取整数变量ζ,并赋予初始值ζ=1;
步骤7.10.1、对解码二值化图像P3进行复制备份,将复制得到的图像记为第ζ个备份二值化图像Pζ,4;
步骤7.10.2、在第ζ个备份二值化图像Pζ,4上,取平行四边形编码单元质心像素坐标集合A中第ζ个质心像素坐标值(xζ,yζ)ζ,在标定角点集合Q中寻找距离质心像素坐标值(xζ,yζ)ζ最近的4个标定角点的像素坐标值,并将这4个标定角点的像素坐标值在第ζ个备份二值化图像Pζ,4上对应的4个像素点分别记为C″ζ,1(x″ζ,1,y″ζ,1)、C″ζ,2(x″ζ,2,y″ζ,2)、C″ζ,3(x″ζ,3,y″ζ,3)、C″ζ,4(x″ζ,4,y″ζ,4);并将该4个像素点作为第ζ个标定角点四边形Sζ的4个顶点,并将4个顶点相连形成第ζ个标定角点四边形Sζ;
步骤7.11.1、在步骤7.8.2中的圆环质心像素坐标集合B中,找出与平行四边形编码单元质心像素坐标集合A中第ζ个质心像素坐标值(xζ,yζ)ζ相对应的第ζ个圆环质心像素坐标值(x″d,ζ,y″d,ζ);
步骤7.11.2、在第ζ个备份二值化图像Pζ,4中,寻找距离上述圆环质心像素坐标值(x″d,ζ,y″d,ζ)最近的白色连通域,并将此白色连通域的灰度值赋值为0;
步骤7.12、在第ζ个备份二值化图像Pζ,4上,将第ζ个标定角点四边形Sζ以外的所有像素点的灰度值均赋值为255,第ζ个标定角点四边形Sζ内部的所有像素点的灰度值保持不变,并将得到的图像记为第ζ个无复杂背景的单元二值化图像Eζ;
步骤7.13、在第ζ个无复杂背景的单元二值化图像Eζ中,寻找最大黑色连通域并记为第ζ个无复杂背景的单元二值化图像Eζ中的最大黑色连通域Ωζ,E;提取第ζ个无复杂背景的单元二值化图像Eζ中的最大黑色连通域Ωζ,E的所有内、外轮廓,并记为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的轮廓集合Dζ;
步骤7.14、在质心像素坐标为值(xζ,yζ)ζ的平行四边形编码单元的轮廓集合Dζ中,统计每个轮廓中包含的像素点数,其中包含像素点数第二多的轮廓即为在第ζ个无复杂背景的单元二值化图像Eζ上的质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中定位圆的轮廓Gζ,计算此定位圆轮廓Gζ的质心像素坐标并记为在第ζ个无复杂背景的单元二值化图像Eζ上的质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中定位圆质心像素坐标o′l,ζ(x′l,ζ,y′l,ζ);
步骤7.15.1、在上述步骤7.13中质心坐标为(xζ,yζ)ζ的平行四边形编码单元的轮廓集合Dζ中,除去包含像素点数最多的2个轮廓,剩余其他κζ(其中κζ=0,1,2,3...)个轮廓,分为以下情况:
情况1、若κζ==0,则进行步骤7.16;
情况2、若κζ≠0,则这κζ个轮廓即为在第ζ个无复杂背景的单元二值化图像Eζ上的质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中编码标志圆的轮廓,并分别记为编码标志圆轮廓编码标志圆轮廓…、编码标志圆轮廓
步骤7.15.2、给整数变量i重新赋予初值i=1;
步骤7.15.3、在第ζ个无复杂背景的单元二值化图像Eζ中,计算编码标志圆轮廓的质心像素坐标将i+1重新赋值给i后继续执行此步骤,直到i>κζ结束;由此可以得到质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中的编码标志圆轮廓编码标志圆轮廓…、编码标志圆轮廓的质心像素坐标 …、
步骤7.16.1、在第ζ个无复杂背景的单元二值化图像Eζ上,将像素坐标值为(x″d,ζ,y″d,ζ)的像素点记为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元上的定向圆环质心o′d,ζ(x′d,ζ,y′d,ζ);并且在第ζ个无复杂背景的单元二值化图像Eζ上,将像素坐标值分别为(x″ζ,1,y″ζ,1)、(x″ζ,2,y″ζ,2)、(x″ζ,3,y″ζ,3)、(x″ζ,4,y″ζ,4)的4个像素点记为C′ζ,1(x′ζ,1,y′ζ,1)、C′ζ,2(x′ζ,2,y′ζ,2)、C′ζ,3(x′ζ,3,y′ζ,3)、C′ζ,4(x′ζ,4,y′ζ,4);
步骤7.16.2、在第ζ个无复杂背景的单元二值化图像Eζ上,取Cζ,1(xζ,1,yζ,1)、Cζ,2(xζ,2,yζ,2)、Cζ,3(xζ,3,yζ,3)、Cζ,4(xζ,4,yζ,4)分别表示在质心坐标为(xζ,yζ)ζ的平行四边形编码单元中第1编码区域、第3编码区域、第4编码区域和第6编码区域的标定角点的像素坐标;质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中的方向向量可由公式(7-4)得出,同时记通过定位圆质心o′l,ζ和定向圆环质心o′d,ζ的直线为lζ,3;
步骤7.17、在第ζ个无复杂背景的单元二值化图像Eζ上,将4个像素点C′ζ,1(x′ζ,1,y′ζ,1)、C′ζ,2(x′ζ,2,y′ζ,2)、C′ζ,3(x′ζ,3,y′ζ,3)、C′ζ,4(x′ζ,4,y′ζ,4)中距离定位圆质心o′l,ζ(x′l,ζ,y′l,ζ)最近的2个像素点分别记为Cζ,1min(xζ,1min,yζ,1min)和Cζ,2min(xζ,2min,yζ,2min);通过公式(7-5)和(7-6)计算出在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中的第1判断向量和第2判断向量并通过式(7-7)和式(7-8)计算出区域划分正弦值1sinαζ和区域划分正弦值2sinβζ;
情况1、若sinαζ<0,sinβζ>0,则Cζ,1min(xζ,1min,yζ,1min)是质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第1编码区域的标定角点,把Cζ,1min(xζ,1min,yζ,1min)的像素坐标值赋值给Cζ,1(xζ,1,yζ,1);Cζ,2min(xζ,2min,yζ,2min)为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第6编码区域的标定角点,把Cζ,2min(xζ,2min,yζ,2min)的像素坐标值赋值给Cζ,4(xζ,4,yζ,4);
情况2、若sinαζ>0,sinβζ<0,则Cζ,2min(xζ,2min,yζ,2min)为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第1编码区域的标定角点,把Cζ,2min(xζ,2min,yζ,2min)的像素坐标值赋值给Cζ,1(xζ,1,yζ,1);Cζ,1min(xζ,1min,yζ,1min)为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第6编码区域的标定角点,把Cζ,1min(xζ,1min,yζ,1min)的像素坐标值赋值给Cζ,4(xζ,4,yζ,4);
步骤7.18、在第ζ个无复杂背景的单元二值化图像Eζ上,通过上述步骤7.17已找到质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第1编码区域和第6编码区域的标定角点Cζ,1(xζ,1,yζ,1)和Cζ,4(xζ,4,yζ,4),将4个像素点C′ζ,1(x′ζ,1,y′ζ,1)、C′ζ,2(x′ζ,2,y′ζ,2)、C′ζ,3(x′ζ,3,y′ζ,3)、C′ζ,4(x′ζ,4,y′ζ,4)中余下的2个像素点的像素坐标分别赋值给质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第1临时坐标值,记为C′ζ,5(x′ζ,5,y′ζ,5),以及第2临时坐标值,记为C′ζ,6(x′ζ,6,y′ζ,6);根据公式(7-9)和(7-10)可以求出在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中的第3判断向量和第4判断向量
情况1、若sinωζ==0,sinξζ≠0,则C′ζ,5(x′ζ,5,y′ζ,5)即为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第3编码区域的标定角点,把C′ζ,5(x′ζ,5,y′ζ,5)的坐标值赋值给Cζ,2(xζ,2,yζ,2);C′ζ,6(x′ζ,6,y′ζ,6)为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第4编码区域的标定角点,把C′ζ,6(x′ζ,6,y′ζ,6)的坐标值赋值给Cζ,3(xζ,3,yζ,3);
情况2、若sinωζ≠0,sinξζ==0,则C′ζ,6(x′ζ,6,y′ζ,6)即为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第3编码区域的标定角点,把C′ζ,6(x′ζ,6,y′ζ,6)的坐标值赋值给Cζ,2(xζ,2,yζ,2);C′ζ,5(x′ζ,5,y′ζ,5)为质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第4编码区域的标定角点的,把C′ζ,5(x′ζ,5,y′ζ,5)的坐标值赋值给Cζ,3(xζ,3,yζ,3);
至此在第ζ个无复杂背景的单元二值化图像Eζ上,找到了质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第1编码区域的标定角点Cζ,1(xζ,1,yζ,1)、第3编码区域的标定角点Cζ,2(xζ,2,yζ,2)、第4编码区域的标定角点Cζ,3(xζ,3,yζ,3)和第6编码区域的标定角点Cζ,4(xζ,4,yζ,4);
步骤7.20、在第ζ个无复杂背景的单元二值化图像Eζ上,根据步骤17中得出的在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第1编码区域的标定角点Cζ,1(xζ,1,yζ,1),第6编码区域的标定角点Cζ,4(xζ,4,yζ,4),可由公式(7-13)得出质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中的第5判断向量
在第ζ个无复杂背景的单元二值化图像Eζ上,以质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的定位圆质心o′l,ζ(x′l,ζ,y′l,ζ)为起点做与第5判断向量平行且同向的单位向量,记为并记单位向量所在的直线为lζ,1;以质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的定向圆环质心o′d,ζ(x′d,ζ,y′d,ζ)为起点做与第5判断向量平行且同向的单位向量,记为并记单位向量所在的直线为lζ,2;将整数变量i重新赋值i=1;
步骤7.21.1、定义6个浮点型二维数组 用于存放质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中分别位于第1编码区域、第2编码区域、第3编码区域、第4编码区域、第5编码区域和第6编码区域的编码标志圆轮廓质心在第ζ个无复杂背景的单元二值化图像Eζ上的像素坐标,初始化这6个二维数组中的所有元素,且均赋值为-1;另外取6个整数变量并将其初始化,
步骤7.21.2、在第ζ个无复杂背景的单元二值化图像Eζ上,计算步骤7.15.2中质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中编码标志圆轮廓的质心像素坐标分别与定位圆中心o′l,ζ和定向环中心o′d,ζ所形成的第i组第1个象限向量和第i组第2个象限向量
判断在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中,编码标志圆所属编码区域的方式如下:
情况1、若编码标志圆轮廓落在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第1编码区域内;令 然后把赋值给把i+1重新赋值给i,当i≤κζ时重新开始执行步骤7.21.2,当i>κζ时执行下一步骤7.22;
情况2、若编码标志圆轮廓落在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第2编码区域内;令 然后把赋值给把i+1重新赋值给i,当i≤κζ时重新开始执行步骤7.21.2,当i>κζ时执行下一步骤7.22;
情况3、若编码标志圆轮廓落在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第3编码区域内;令 然后把赋值给把i+1重新赋值给i,当i≤κζ时重新开始执行步骤7.21.2,当i>κζ时执行下一步骤7.22;
情况4、若编码标志圆轮廓落在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第4编码区域内;令 然后把赋值给把i+1重新赋值给i,当i≤κζ时重新开始执行步骤7.21.2,当i>κζ时执行下一步骤7.22;
情况5、若编码标志圆轮廓落在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第5编码区域内;令 然后把赋值给把i+1重新赋值给i,当i≤κζ时重新开始执行步骤7.21.2,当i>κζ时执行下一步骤7.22;
情况6、若编码标志圆轮廓落在质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的第6编码区域内;令 然后把赋值给把i+1重新赋值给i,当i≤κζ时重新开始执行步骤7.21.2,当i>κζ时执行下一步骤7.22;
步骤7.22、定义代表质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中第λ编码区域(其中λ=1,2,3,4,5,6)中第w位编码标志圆(其中w=1,2)的编码值,取0或1;取整数变量i,给i重新赋予初值i=1;
步骤7.23.1、本步骤分为以下情况:
步骤7.23.2、本步骤分为以下情况:
步骤7.23.3、本步骤分为以下情况:
步骤7.24、通过上述步骤7.23.1、7.23.2和7.23.3得出的质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中所有编码标志圆的编码值,可由公式(7-20)可求出与第ζ个无复杂背景的单元二值化图像Eζ中质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元相对应的实际空间中放置的编码平面靶标上的平行四边形编码单元的编码号Wζ;
Wζ=Vζ T·U (7-20)
步骤7.25、记在第ζ个无复杂背景的单元二值化图像Eζ上质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元中属于第σ编码区域(其中σ=1,3,4,6)的标定角点的非唯一编码序号为其中下脚标Wζ为标定角点所属平行四边形编码单元的编码号,上角标σ的取值代表了标定角点所属的第σ编码区域;即得到了质心像素坐标为(xζ,yζ)ζ的平行四边形编码单元上4个标定角点Cζ,1(xζ,1,yζ,1)、Cζ,2(xζ,2,yζ,2)、Cζ,3(xζ,3,yζ,3)、Cζ,4(xζ,4,yζ,4)的非唯一编码序号分别为(其中σζ,1=1,σζ,2=3,σζ,3=4,σζ,4=6);
在得到第ζ个无复杂背景的单元二值化图像Eζ上质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的4个标定角点的非唯一编码序号的基础上,通过步骤7.26.1至步骤7.26.4可计算该4个标定角点的唯一编码序号;
步骤7.26.1、取Δ′ζ,1_σ′ζ,1、Δ′ζ,2_σ′ζ,2、Δ′ζ,3_σ′ζ,3、Δ′ζ,4_σ′ζ,4分别用于存放质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元上4个标定角点Cζ,1(xζ,1,yζ,1)、Cζ,2(xζ,2,yζ,2)、Cζ,3(xζ,3,yζ,3)、Cζ,4(xζ,4,yζ,4)的唯一编码序号,其中Δ′ζ,1、Δ′ζ,2、Δ′ζ,3、Δ′ζ,4、σ′ζ,1、σ′ζ,2、σ′ζ,3、σ′ζ,4均为正整数;
步骤7.26.2、取整数变量i并重新赋值i=1;
情况1、若σζ,i==1或σζ,i==6,将Wζ的值赋值给Δ′ζ,i,将σζ,i的值赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_σ′ζ,i;
情况2、若σζ,i==3,将(Wζ-Δ)的值赋值给Δ′ζ,i,将6赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_6;
情况3、若σζ,i==4,将(Wζ-Δ-1)的值赋值给Δ′ζ,i,将1赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_1;
判断i是否小于4,若i<4,则将i+1赋值给i,返回步骤7.26.3顺序执行;否则执行步骤7.27.1;
情况1、若σζ,i==1或σζ,i==6,将Wζ的值赋值给Δ′ζ,i,将σζ,i的值赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_σ′ζ,i;
情况2、若σζ,i==3,又分为如下两种情况:
(1)当Φp==1时,将(Wζ-Δ′)的值赋值给Δ′ζ,i,将6赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_σ′ζ,i;Δ′可由式(7-21)得出,
其中Δ″=2(Wζ-zv)/(N+1)+1(只保留整数);
(2)当Φp==2时,将(Wζ-Δ″′)的值赋值给Δ′ζ,i,将6赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_σ′ζ,i;Δ″′可由式(7-22)得出,
情况3、若σζ,i==4,又分为如下两种情况:
(1)当Φp==1时,将(Wζ-Δ″′)的值赋值给Δ′ζ,i,将1赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_σ′ζ,i,其中Δ″′可由式(7-22)得出;
(2)当Φp==2时,将(Wζ-Δ′)的值赋值给Δ′ζ,i,将1赋值给σ′ζ,i,则标定角点Cζ,i(xζ,i,yζ,i)的唯一编码序号为Δ′ζ,i_σ′ζ,i,Δ′可由式(7-21)得出;
判断i是否小于4,若i<4,则将i+1赋值给i,返回步骤7.26.4顺序执行;否则执行步骤7.27.1;
至此获得了第ζ个无复杂背景的单元二值化图像Eζ上质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的4个标定角点的像素坐标与其唯一编码序号的一一对应关系,即:
标定角点Cζ,1(xζ,1,yζ,1)对应的唯一编码序号为Δ′ζ,1_σ′ζ,1;
标定角点Cζ,2(xζ,2,yζ,2)对应的唯一编码序号为Δ′ζ,2_σ′ζ,2;
标定角点Cζ,3(xζ,3,yζ,3)对应的唯一编码序号为Δ′ζ,3_σ′ζ,3;
标定角点Cζ,4(xζ,4,yζ,4)对应的唯一编码序号为Δ′ζ,4_σ′ζ,4;
步骤7.27.1、建立靶标坐标系:
记第1行第1个平行四边形编码单元的4个顶点中是标定角点的个数为Φp,则可根据Φp数值的大小分为以下两种情况:
步骤7.28、在已知第ζ个无复杂背景的单元二值化图像Eζ上质心像素坐标值为(xζ,yζ)ζ的平行四边形编码单元的4个标定角点Cζ,1(xζ,1,yζ,1)、Cζ,2(xζ,2,yζ,2)、Cζ,3(xζ,3,yζ,3)、Cζ,4(xζ,4,yζ,4)的唯一编码序号Δ′ζ,1_σ′ζ,1、Δ′ζ,2_σ′ζ,2、Δ′ζ,3_σ′ζ,3、Δ′ζ,4_σ′ζ,4以及位于空间中的编码平面靶标的基本信息的条件下,利用编码平面靶标上标定角点的靶标坐标计算方法,获得第Δ′ζ,1_σ′ζ,1号标定角点、第Δ′ζ,2_σ′ζ,2号标定角点、第Δ′ζ,3_σ′ζ,3号标定角点和第Δ′ζ,4_σ′ζ,4号标定角点的靶标坐标值;
本步骤可计算得出:
唯一编码序号为Δ′ζ,1_σ′ζ,1的标定角点的像素坐标Cζ,1(xζ,1,yζ,1)所对应的靶标坐标为(Xζ,1,Yζ,1,0);
唯一编码序号为Δ′ζ,2_σ′ζ,2的标定角点的像素坐标Cζ,2(xζ,2,yζ,2)所对应的靶标坐标为(Xζ,2,Yζ,2,0);
唯一编码序号为Δ′ζ,3_σ′ζ,3的标定角点的像素坐标Cζ,3(xζ,3,yζ,3)所对应的靶标坐标为(Xζ,3,Yζ,3,0);
唯一编码序号为Δ′ζ,4_σ′ζ,4的标定角点的像素坐标Cζ,4(xζ,4,yζ,4)所对应的靶标坐标为(Xζ,4,Yζ,4,0);
步骤7.29、将ζ+1赋值给ζ,然后重新回到步骤7.10.1顺序执行;直到满足ζ>μ时,结束此循环;
由此,根据上述所有步骤,可以得出与编码平面靶标灰度图像P1中最大标定角点数多边形L内的所有标定角点的像素坐标相对应的靶标坐标,即找到了所选取标定角点的像素坐标与靶标坐标之间一一对应的关系,同时也找到了所选取标定角点的唯一编码序号,进而完成编码平面靶标的解码;
步骤8、根据i是否等于χ,可分为以下两种情况:
情况1:当i≠χ时,令i=i+1,并跳转到步骤5;
情况2:当i==χ时,跳转到步骤9;
步骤9、将所有χ幅无复杂背景编码立体靶标灰度复制图像P1″、P2″、...、Pχ″中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准面的区域的编码号作为编码立体靶标灰度图像P′中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准面的区域的编码号,从而完成对编码立体靶标的所有标定角点的解码;
编码平面靶标及标定角点的匹配方法可实现对于给定的无复杂背景编码立体靶标灰度复制图像P″中的第i个编码平面靶标内检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在空间中编码立体靶标上编码平面靶标的编码号一一物像对应关系,其中,i∈[1,S]。
为实现对于给定的无复杂背景编码立体靶标图像内的编码平面靶标及标定角点与空间中的编码立体靶标内的相应的编码平面靶标及标定角点的匹配,从而获取给定的无复杂背景编码立体靶标图像内的编码平面靶标中所有标定角点的像素坐标相对应的靶标坐标以及给定的无复杂背景编码立体靶标图像内的编码平面靶标中所有标定角点的唯一编码序号,编码平面靶标及标定角点的匹配方法包括以下主要步骤(此方法并不唯一):
步骤7.0.1、在无复杂背景编码立体靶标灰度复制图像P″中,对于选定的编码平面靶标已知此编码平面靶标内的所有标定角点在步骤2中的像素坐标系O-XY下的亚像素坐标,以及所有标定角点对应的唯一编码号,在第i个编码平面靶标内的所有标定角点中任选一个标定角点,记该标定角点的编码号为并取为该标定角点关联的平行四边形编码单元的编码号;
步骤7.0.2、取整数变量j,并赋予初始值j=1;
步骤7.0.3、空间中编码立体靶标基准面上的j号编码平面靶标内的平行四边形编码单元的个数为lj,并且j号编码平面靶标上的平行四边形编码单元的编号范围为ξj,ξj+1,ξj+2,...,ξj+lj,同时第j区域为第α行第Sa列所在的区域(当β==0时)或为第(α+1)行第β列所在的区域,其中j与α、β满足关系:j÷Sa=α…β,其中α为商;
其中对于β的取值有以下两种情况:
情况1、若β==0,则第j区域为第α行第Sa列所在的区域;
情况2、若β≠0,则第j区域为第(α+1)行第β列所在的区域;
情况1、若则令所在的无复杂背景编码立体靶标图像P′中编码平面靶标对应空间中编码立体靶标内的j号编码平面靶标,同时令空间中编码立体靶标内的j号编码平面靶标所在的编码立体靶标的基准面内的区域的j号区域,进一步可根据整数变量j判断出所在的无复杂背景编码立体靶标图像P′中编码平面靶标在空间中编码立体靶标的基准面的区域的行编号与列编号,于是找到了无复杂背景编码立体靶标图像P′中的编码平面靶标与空间中编码立体靶标中的j号编码平面靶标之间的对应关系,建立靶标坐标系并跳转到步骤7.0.5;
步骤7.0.5、由以上步骤可得到无复杂背景编码立体靶标图像P′中的编码平面靶标与空间中编码立体靶标中的j号编码平面靶标及空间中j号编码平面靶标所在的编码立体靶标中基准面的区域的j号区域之间的对应关系。利用编码平面靶标及其编码方法中的编码平面靶标上标定角点的靶标坐标计算方法,获得j号编码平面靶标内所有标定角点在靶标坐标系下的靶标坐标,得出无复杂背景编码立体靶标图像P′中的第i个编码平面靶标内检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在空间中编码立体靶标上编码平面靶标的编码号一一物像对应关系。
情况1、当Φp==1时,记号编码平面靶标内第1行第1个平行四边形编码单元中的标定角点为原点标定角点α′1,此时选取原点标定角点α′1作为靶标坐标系的原点Oα β,t,以辅助向量的方向作为靶标坐标系Xt轴的方向;
此外,还提供了一种计算机可读存储介质,包括与具有图像处理功能的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以如上所述的解码方法。
与现有技术相比较,本发明的有益效果如下:
1、本发明在基准平面内设置了S个区域,每个区域包含一个编码平面靶标,且各区域的空间姿态各不相同,因此能够实现在保持较高精度的前提下,完成单目或多目视觉的单幅图像的标定过程,提高了标定过程的可操作性和效率;
2、本发明中采用的编码平面靶标,由于其编码图案结构简单,在摄像机标定过程中,根据单幅图像即可利用数字图像处理技术,准确且快速获取编码立体靶标内任一编码平面靶标的标定角点及其编码信息,从而提升了摄像机标定过程的可操作性;
3、本发明中所述的编码立体靶标的解码方法,充分利用此编码立体靶标的特点,能够通过数字图像处理技术快速获取编码立体靶标图像中所有有效的标定角点的编码信息,提高了摄像机标定过程的效率;
4、本发明中所述的编码立体靶标的解码方法,可实现对此编码立体靶标图像的亚像素级图像坐标提取,具有高精度的特性,更大程度提高了摄像机标定过程的准确性。
附图说明
图1为实施例中采用的编码立体靶标3D示意图;
图2为编码立体靶标的基准平面板内区域划分示意图;
图3为编码立体靶标的连接机构示意图;
图4为编码立体靶标中的编码平面靶标板正面示意图;
图5为编码立体靶标中的编码平面靶标板反面示意图;
图6为编码立体靶标中连接机构连接编码平面靶标板和基准平面板的示意图;
图7为像素坐标系及各编码平面靶标内靶标坐标系的建立示意图;
图8为利用Automatic Camera and Range Sensor Calibration using a singleShot提出的棋盘格检测算法识别出的编码立体靶标灰度图像内的6个编码平面靶标图像;
图9为无复杂背景编码立体靶标图像P1′;
图10为无复杂背景编码立体靶标图像P2′;
图11为无复杂背景编码立体靶标图像P3′;
图12为无复杂背景编码立体靶标图像P4′;
图13为无复杂背景编码立体靶标图像P5′;
图14为无复杂背景编码立体靶标图像P6′;
图15为1号编码平面靶标示意图;
图16为2号编码平面靶标示意图;
图17为3号编码平面靶标示意图;
图18为4号编码平面靶标示意图;
图19为5号编码平面靶标示意图;
图20为6号编码平面靶标示意图;
图22为无复杂背景的单元二值化图像E1的示意图;
图23为本发明的基于编码立体靶标的编码方法的流程示意图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1,一种用于摄像机快速标定的编码立体靶标解码方法,该编码立体靶标包括基准平面板、编码平面靶标板和连接机构,图1所示的编码立体靶标共包含1个基准平面板、6个编码平面靶标板和6个连接机构,基准平面板的表面被划分为6个区域,每个区域内固定设置一个连接机构,每个连接机构的端部通过球铰链活动连接有一个编码平面靶标板,每个编码平面靶标板的空间姿态可活动调节。使用摄像机拍摄编码立体靶标,可获得编码立体靶标标定图像,所述编码立体靶标标定图像满足摄像机标定要求,通过编码立体靶标解码方法对编码立体靶标标定图像进行处理,可获得编码立体靶标标定图像中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准板区域的编码号,从而完成对编码立体靶标的所有标定角点的解码。
编码立体靶标的基准平面板是一个长度为a、宽度为b、厚度为c的长方体薄板结构;本实施例中,编码立体靶标的基准平面板的长度为450mm、宽度为450mm、厚度为13mm。
在编码立体靶标的基准平面板中,选择长度为450mm、宽度为450mm的矩形表面为基准面,采用上述划分方法将基准面划分为2行*3列的6个区域,如图2所示。
划分方法如下:步骤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列区域记为号区域,其中,
6个编码平面靶标板都有如下特征:编码平面靶标板是长方体,在编码平面靶标板中,任意选取编码平面靶标板6个平面中的一个平面作为编码平面靶标板的正面,在编码平面靶标板余下的5个平面中,选取与编码平面靶标板的正面平行的一个平面作为编码平面靶标板的反面;在编码平面靶标板的正面内设置一个编码平面靶标,而编码平面靶标板的反面用于与连接机构连接。本实施例中,连接机构如图3所示;编码平面靶标板的正面设置了一个编码平面靶标,如图4所示;编码平面靶标板的反面如图5所示,用于与连接机构连接;同时,连接机构将编码平面靶标板与基准平面板连接,如图6所示。
在基准面的6个区域中,基准面的每个区域内有且仅有一个连接机构将1个编码平面靶标板与基准平面板连接,记基准面第区域内的连接机构为第连接机构,记第连接机构连接的1个编码平面靶标板为第编码平面靶标板,6个第连接机构互为不同的连接机构实体,6个第编码平面靶标板互为不同的编码平面靶标板实体,其中将第编码平面靶标板正面内的编码平面靶标记为第编码平面靶标。
本实施例中,所述编码立体靶标共包含6个编码平面靶标,1号编码平面靶标至6号编码平面靶标如图15-图20,其中每个编码平面靶标的特性如下:
编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,本实施例中,编码平面靶标中所有平行四边形编码单元和平行四边形非编码单元均为边长为13.5毫米的正方形;编码平面靶标以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,所述编码平面靶标一共包含5行×5列个标定角点。
编码平面靶标中每一个平行四边形编码单元的内部设置有编码图案,编码图案包括定位图案、定向图案和编码标志图案,其中编码标志图案又由多个编码单元图案组成,每一个平行四边形编码单元内部的定位图案、定向图案和编码单元图案均不重叠且不连通;定向图案和定位图案用于编码平面靶标旋转方向的判断;编码标志图案用于给编码平面靶标中每一个标定角点进行编码。
如图21所示,以5号编码平面靶标为例,任取5号编码平面靶标中的一个平行四边形编码单元记为编码平面靶标向量确定编码单元Γv(图7中,第3行第3个平行四边形编码单元为编码平面靶标向量确定编码单元Γv),任取5号编码平面靶标向量确定编码单元Γv的一个顶点记为向量确定编码单元第一顶点o″1,在编码平面靶标向量确定编码单元Γv中将相交形成向量确定编码单元第一顶点o″1的任意一条边记为向量确定编码单元第一边Nv1,在向量确定编码单元第一边Nv1上取向量确定编码单元Γ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。
在本实施例中,在同一个平行四边形编码单元内,编码单元图案的位置和颜色是由每个编码平面靶标中每个标定角点的非唯一性编码方法确定的,作为所述解码方法的图案位置和颜色信息解析对象。
在每个编码平面靶标中,编码序号为W(其中0≤W≤32)的平行四边形编码单元的编码号是由编码号为W的平行四边形编码单元内部所有的编码单元图案的位置和颜色确定的,所述每个编码平面靶标解码方法可根据图像中每个编码平面靶标上每个平行四边形编码单元内部所有的编码单元图案的位置和颜色信息解析出图像中每个平行四边形编码单元的编码号和标定角点的编码号。
请参阅图21,所述立体靶标的解码方法的步骤如下:
步骤1、通过摄像机拍摄位于空间的已完成编码的编码立体靶标,由此得到满足解码要求的编码立体靶标图像P,将编码立体靶标标定图像P进行灰度化处理,进而得到编码立体靶标灰度图像P′。另外,由于拍摄的编码立体靶标已完成编码,因此本实施例中,编码立体靶标的解码包含以下初始已知条件:编码立体靶标中划分的区域的个数为6,各区域的编号为:1,2,3,4,5,6,编码立体靶标中编码平面靶标的个数为6个,编码平面靶标的编号为:1,2,3,4,5,6,其中,第1编码平面靶标、第2编码平面靶标、第3编码平面靶标、第4编码平面靶标、第5编码平面靶标、第6编码平面靶标内标定角点的个数均为25个,且第1编码平面靶标至第6编码平面靶标内标定角点的编码号分别如表1至表6所示。
表1 第1编码平面靶标内各角点编码号
92_6 | 92_1 | 93_6 | 93_1 | 94_6 |
89_1 | 90_6 | 90_1 | 91_6 | 91_1 |
86_6 | 86_1 | 87_6 | 87_1 | 88_6 |
83_1 | 84_6 | 84_1 | 85_6 | 85_1 |
80_6 | 80_1 | 81_6 | 81_1 | 82_6 |
表2 第2编码平面靶标内各角点编码号
110_1 | 111_6 | 111_1 | 112_6 | 112_1 |
107_6 | 107_1 | 108_6 | 108_1 | 109_6 |
104_1 | 105_6 | 105_1 | 106_6 | 106_1 |
101_6 | 101_1 | 102_6 | 102_1 | 103_6 |
98_1 | 99_6 | 99_1 | 100_6 | 100_1 |
表3 第3编码平面靶标内各角点编码号
32_6 | 32_1 | 33_6 | 33_1 | 34_6 |
29_1 | 30_6 | 30_1 | 31_6 | 31_1 |
26_6 | 26_1 | 27_6 | 27_1 | 28_6 |
23_1 | 24_6 | 24_1 | 25_6 | 25_1 |
20_6 | 20_1 | 21_6 | 21_1 | 22_6 |
表4 第4编码平面靶标内各角点编码号
69_6 | 69_1 | 70_6 | 70_1 | 71_6 |
66_1 | 67_6 | 67_1 | 68_6 | 68_1 |
63_6 | 63_1 | 64_6 | 64_1 | 65_6 |
60_1 | 61_6 | 61_1 | 62_6 | 62_1 |
57_6 | 57_1 | 58_6 | 58_1 | 59_6 |
表5 第5编码平面靶标内各角点编码号
12_6 | 12_1 | 13_6 | 13_1 | 14_6 |
9_1 | 10_6 | 10_1 | 11_6 | 11_1 |
6_6 | 6_1 | 7_6 | 7_1 | 8_6 |
3_1 | 4_6 | 4_1 | 5_6 | 5_1 |
0_6 | 0_1 | 1_6 | 1_1 | 2_6 |
表6 第6编码平面靶标内各角点编码号
51_6 | 51_1 | 52_6 | 52_1 | 53_6 |
48_1 | 49_6 | 49_1 | 50_6 | 50_1 |
45_6 | 45_1 | 46_6 | 46_1 | 47_6 |
42_1 | 43_6 | 43_1 | 44_6 | 44_1 |
39_6 | 39_1 | 40_6 | 40_1 | 41_6 |
步骤2、建立编码立体靶标图像P的标定角点的像素坐标系O-XY:
在上述拍摄的编码立体靶标图像P中,取图像左上角作为所述标定角点的像素坐标系原点o,自左向右为标定角点像素坐标系的X轴方向,自上向下为标定角点像素坐标坐标系的Y轴方向;由此建立起所述标定角点的像素坐标系O-XY;具体实施例中,像素坐标系的建立如图7所示;
步骤3、利用Automatic Camera and Range Sensor Calibration using asingle Shot提出的棋盘格检测算法,在编码立体靶标灰度图像P′中识别出χ个完整或局部的编码平面靶标,如图8所示,得到每个完整或局部的编码平面靶标内的所有标定角点的亚像素坐标,其中,包含完整的编码平面靶标和未知个数的局部的编码平面靶标(至少包含一个标定角点),并分别标记为编码平面靶标 具体实施例中,在编码立体靶标灰度图像P′中识别出了6个完整的编码平面靶标,得到了所有标定角点的亚像素坐标,并分别标记为其中,编码平面靶标内所有标定角点的亚像素坐标如表7所示,编码平面靶标内所有标定角点的亚像素坐标如表8所示,编码平面靶标内所有标定角点的亚像素坐标如表9所示,编码平面靶标内所有标定角点的亚像素坐标如表10所示,编码平面靶标内所有标定角点的亚像素坐标如表11所示,编码平面靶标内所有标定角点的亚像素坐标如表12所示;
(441.018,111.57) | (442.674,176.429) | (444.099,240.704) | (445.659,304.785) | (447.233,368.884) |
(377.533,113.12) | (379.096,177.963) | (380.873,242.159) | (382.784,306.324) | (384.663,370.246) |
(314.425,114.952) | (316.044,179.577) | (317.886,243.731) | (319.905,307.759) | (321.97,371.538) |
(251.025,116.856) | (252.975,181.29) | (254.998,245.306) | (257.082,309.283) | (259.441,372.908) |
(188.539,118.828) | (190.625,183.05) | (192.759,247.032) | (194.976,310.884) | (197.48,374.591) |
(264.728,781.126) | (325.337,790.84) | (385.863,800.215) | (445.756,809.461) | (505.266,818.66) |
(254.735,839.98) | (315.899,849.425) | (377.005,858.855) | (437.652,867.832) | (497.472,876.826) |
(244.416,899.822) | (306.378,908.929) | (368.087,918.002) | (429.222,926.941) | (489.854,935.513) |
(234.321,960.634) | (296.674,969.525) | (359.198,978.358) | (420.881,986.838) | (482.111,995.256) |
(224.225,1022.38) | (287.347,1031.09) | (350.221,1039.72) | (412.799,1047.93) | (474.328,1056.04) |
(976.673,779.02) | (976.045,840.675) | (975.01,903.327) | (974.44,966.484) | (973.608,1030.17) |
(918.781,782.414) | (917.743,843.626) | (916.558,905.506) | (915.462,968.096) | (914.376,1031.15) |
(862.02,785.851) | (860.515,846.168) | (858.917,907.304) | (857.584,969.434) | (856.2,1031.83) |
(806.383,788.648) | (804.554,848.463) | (802.728,909.15) | (800.932,970.367) | (799.06,1032.12) |
(752.014,792.034) | (749.827,850.835) | (747.873,910.768) | (745.78,971.507) | (743.87,1032.21) |
(808.781,148.931) | (873.543,153.238) | (938.027,157.749) | (1002.74,162.398) | (1067.44,167.215) |
(806.872,210.461) | (870.828,214.848) | (934.609,219.271) | (998.423,223.927) | (1062.34,228.73) |
(805.027,270.345) | (868.262,274.754) | (931.217,279.145) | (994.224,283.819) | (1057.41,288.741) |
(803.26,329.229) | (865.643,333.556) | (927.946,338.083) | (990.201,342.772) | (1052.52,347.522) |
(801.844,386.368) | (863.434,390.774) | (924.774,395.13) | (986.314,399.786) | (1047.82,404.63) |
(1322.22,158.441) | (1384.79,160.81) | (1447.13,163.506) | (1508.62,166.495) | (1569.86,169.088) |
(1325.44,212.577) | (1388.68,214.911) | (1451.9,217.548) | (1514.08,220.386) | (1576.08,223) |
(1328.35,267.896) | (1392.53,270.493) | (1456.39,272.873) | (1519.65,275.448) | (1582.22,278.257) |
(1331.67,324.942) | (1396.43,327.121) | (1461.23,329.764) | (1524.83,332.261) | (1588.31,334.814) |
(1334.61,384.077) | (1400.4,386.349) | (1465.92,388.672) | (1530.3,390.853) | (1594.41,393.083) |
(1288.92,824.6) | (1348.73,824.929) | (1409.97,825.075) | (1471.75,825.312) | (1534.34,825.381) |
(1291.46,885.744) | (1351,886.452) | (1412.05,887.522) | (1473.6,888.175) | (1536.2,888.94) |
(1293.86,946.104) | (1353.18,947.637) | (1414.09,949.028) | (1475.48,950.389) | (1538.15,952.083) |
(1296.02,1006.02) | (1355.25,1008.15) | (1415.91,1010.28) | (1477.05,1012.21) | (1539.71,1014.24) |
(1298.1,1065.76) | (1357.06,1068.37) | (1417.34,1071.18) | (1478.26,1073.91) | (1540.58,1076.41) |
步骤4、取整数变量i,并赋予初始值i=1;
步骤5、将编码立体靶标灰度图像P′复制为第i幅编码立体靶标灰度复制图像P′i;
步骤6、在编码立体靶标灰度复制图像P′i中,选取其中的编码平面靶标利用数字图像处理的方法,将编码平面靶标内部的所有像素点的灰度值保持不变,编码平面靶标以外的所有像素点的灰度值均赋值为255,并将处理后的图像记为无复杂背景编码立体靶标图像P″i;具体实施例中,无复杂背景编码立体靶标图像P″1如图9所示,无复杂背景编码立体靶标图像P″2如图10所示,无复杂背景编码立体靶标图像P″3如图11所示,无复杂背景编码立体靶标图像P″4如图12所示,无复杂背景编码立体靶标图像P″5如图13所示,无复杂背景编码立体靶标图像P″6如图14所示;
步骤7、在无复杂背景编码立体靶标图像P″i中,利用编码平面靶标的解码方法,将编码平面靶标内的所有标定角点的编码号与所有标定角点的亚像素坐标一一匹配,即找到了编码平面靶标内的所有标定角点的编码号及所有标定角点的亚像素坐标之间一一对应的关系。然后利用编码平面靶标及标定角点的匹配方法,将编码平面靶标及其内部的所有标定角点与编码立体靶标内相应的编码平面靶标及标定角点一一匹配,即找到编码平面靶标及其内部的所有标定角点的像素坐标与靶标坐标之间一一对应的关系,同时也找到了编码平面靶标内每个标定角点所在的编码平面靶标编码号,每个标定角点对应的唯一编码序号、唯一像素坐标系下的像素坐标值和唯一靶标坐标系下的靶标坐标值;
下面以所述5号编码平面靶标为例来阐述利用数字图像处理的方法对编码立体靶标中的编码平面靶标内每一个标定角点进行解码及编码平面靶标及标定角点的匹配的步骤:
步骤7.1、输入放置在空间中的编码平面靶标的基本信息,即位于空间中的编码平面靶标包含5行×5列个标定角点,编码平面靶标的初始平行四边形编码单元编码号为0,编码平面靶标上第1行第1个平行四边形编码单元的4个顶点中作为标定角点的个数Φp==2;
通过摄像机拍摄位于空间的编码平面靶标,由此得到编码平面靶标的图像,所述编码平面靶标图像中包含了完整的或者局部的编码平面靶标;对所述编码平面靶标图像进行8位灰度处理,将编码靶标图像经过灰度处理得到的图像记为编码平面靶标灰度图像P1;其中,编码平面靶标灰度图像P1为8位灰度图;
步骤7.2、建立标定角点的像素坐标系:
在上述拍摄的编码平面靶标图像中,取图像左上角作为所述标定角点的像素坐标系原点o,自左向右为标定角点像素坐标系的x轴方向,自上向下为标定角点像素坐标坐标系的y轴方向;由此建立起所述标定角点的像素坐标系o-xy;
步骤7.3、利用基于生长的棋盘格角点提取算法提取编码平面靶标灰度图像P1中所包含标定角点个数最多的5行×5列个标定角点亚像素坐标集合并记为标定角点亚像素坐标集合Q,并将所述5行×5列个标定角点亚像素坐标集合中最外围角点(即第1行标定角点、第1列标定角点、第5行标定角点和第5列标定角点)所围成的多边形记为最大标定角点数多边形L;经过角点提取后的编码平面靶标灰度图像P1没有发生改变;
步骤7.4、在所述编码平面靶标灰度图像P1中,利用数字图像处理的方法令上述步骤中最大标定角点数多边形L内部的所有像素点的灰度值均保持不变,L以外的所有像素点的灰度值均赋值为255,并将编码平面靶标灰度图像P1经过此处理得到的图像记为无复杂背景靶标灰度图像P′1;如图12所示;
步骤7.5、对无复杂背景靶标灰度图像P′1进行二值化处理,并将无复杂背景靶标灰度图像P′1经过二值化处理得到的图像记为无复杂背景靶标二值化图像P2,使得在无复杂背景靶标二值化图像P2中平行四边形编码单元的背景颜色变为黑色,平行四边形非编码单元背景颜色、定位图案、定向图案的颜色均变为白色,编码标志图案的颜色根据编码规则可以为白色也可以为黑色,如图12所示;
步骤7.6、根据在编码平面靶标灰度图像P1中提取的最大标定角点数多边形L内部包含5行×5列个标定角点,本实施例中,m=5,n=5,m、n均为奇数,则多边形L内部包含的平行四边形编码单元预估个数经计算得出μ==8,并执行步骤7.7.1;
步骤7.7.1、在无复杂背景靶标二值化图像P2上,做黑色连通域腐蚀,使得无复杂背景靶标二值化图像P2中所有平行四边形编码单元对角处断开,并将无复杂背景靶标二值化图像P2经过此处理得到的图像记为靶标二值化腐蚀图像P′2;其中对无复杂背景靶标二值化图像P2进行黑色连通域腐蚀处理时,须满足所需条件;
步骤7.7.2、寻找在靶标二值化腐蚀图像P′2中的8个最大黑色连通域并分别记为方格连通域Ω1、方格连通域Ω2、…、方格连通域Ω8;取整数变量i,并赋予其初始值i=1;
步骤7.7.3、在靶标二值化腐蚀图像P′2上,计算上述步骤7.7.2中方格连通域Ωi质心的像素坐标(xi,yi)i,将i+1重新赋值给i后继续执行此步骤直到i>8,由此得到靶标二值化腐蚀图像P′2上的方格连通域Ω1、方格连通域Ω2、…、方格连通域Ω8的质心像素坐标(900,246)1、…、(x8,y8)8并将(900,246)1、…、(x8,y8)8依次作为平行四边形编码单元质心像素坐标集合A中的第1个元素、第2个元素、…、第8个元素;
步骤7.8.1、给整数变量i重新赋予初值i=1;
步骤7.8.2、在靶标二值化腐蚀图像P′2中,计算距离方格连通域Ωi的质心像素坐标(xi,yi)i最近的黑色连通域,并分别记为靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′i;将i+1重新赋值给i后继续执行此步骤,直到i>8时结束;最后将分别得到靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′1、圆环中心连通域Ω′2、…、圆环中心连通域Ω′8;
步骤7.8.3、给整数变量i重新赋予初值i=1;
步骤7.8.4、在靶标二值化腐蚀图像P′2中,计算上述靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′i的质心像素坐标o″d,i(x″d,i,y″d,i),将i+1重新赋值给i后继续执行此步骤,直到i>8时结束;由此分别得到靶标二值化腐蚀图像P′2中的圆环中心连通域Ω′1、圆环中心连通域Ω′2、…、圆环中心连通域Ω′8的质心像素坐标o″d1(900,256)、…、o″d8(x″d8,y″d8)依次作为圆环质心像素坐标集合B中的第1个元素、第2个元素、…、第8个元素;
步骤7.9.1、在靶标二值化腐蚀图像P′2中,将除方格连通域Ω1、方格连通域Ω2、…、方格连通域Ω8以及圆环中心连通域Ω′1、圆环中心连通域Ω′2、…、圆环中心连通域Ω′8以外的黑色连通域的灰度值均赋值为255,并将靶标二值化腐蚀图像P′2经过此处理得到的图像记为解码二值化图像P3;
步骤7.9.2、取整数变量ζ,并赋予初始值ζ=1;
步骤7.10.1、对解码二值化图像P3进行复制备份,将复制得到的图像记为第1个备份二值化图像P1,4;
步骤7.10.2、在第1个备份二值化图像P1,4上,取平行四边形编码单元质心像素坐标集合A中第1个质心坐标值(900,246)1,在标定角点集合Q中寻找距离质心坐标值(900,246)1最近的4个标定角点的像素坐标值,并在第1个备份二值化图像P1,4上将这4个标定角点的像素坐标值对应的4个像素点分别记为C″1,1(868.3,274.8)、C″1,2(870.8,214.8)、C″1,3(934.6,219.3)、C″1,4(931.2,279.1);并将该4个像素点作为第1个标定角点四边形S1的4个顶点,并将4个顶点相连形成第1个标定角点四边形S1;
步骤7.11.1、在步骤7.8.2中的圆环质心像素坐标B中,找出与平行四边形编码单元质心像素坐标集合A中的第1个质心像素坐标值(900,246)1相对应的第1个圆环质心像素坐标(900,256);
步骤7.11.2、在第1个备份二值化图像P1,4中,寻找距离上述圆环质心坐标值(900,256)最近的白色连通域,并将此白色连通域的灰度值赋值为0;
步骤7.12、在第1个备份二值化图像P1,4上,将第1个标定角点四边形S1以外的所有像素点的灰度值均赋值为255,第1个标定角点四边形S1内部的所有像素点的灰度值保持不变,并将所得到的图像记为第1个无复杂背景的单元二值化图像E1,如图21;
步骤7.13、在第1个无复杂背景的单元二值化图像E1中,寻找最大黑色连通域并记为第1个无复杂背景的单元二值化图像E1中的最大黑色连通域Ω1,E;提取第1个无复杂背景的单元二值化图像E1中的最大黑色连通域Ω1,E的所有内、外轮廓,并记为质心像素坐标值为(900,246)1的平行四边形编码单元的轮廓集合D1;
步骤7.14、在质心像素坐标值为(900,246)1的平行四边形编码单元的轮廓集合D1中,统计每个轮廓中包含的像素点数,其中包含像素点数第二多的轮廓即为第1个无复杂背景的单元二值化图像E1中质心像素坐标值为(900,246)1的平行四边形编码单元中定位圆的轮廓G1,计算此定位圆轮廓G1的质心像素坐标并记为第1个无复杂背景的单元二值化图像E1上质心像素坐标值为(900,246)1的平行四边形编码单元中的定位圆质心像素坐标ol,1′(900,236);
步骤7.15.1、在上述步骤7.13中质心像素坐标值为(900,246)1的平行四边形编码单元的轮廓集合D1中,除去包含像素点数最多的2个轮廓,剩余其他κ1(其中κ1=0,1,2,3...)个轮廓,本实施例中,κ1==2,则这2个轮廓即为第1个无复杂背景的单元二值化图像E1上质心坐标为(900,246)1的平行四边形编码单元中的编码标志圆轮廓,分别记为编码标志圆轮廓编码标志圆轮廓
步骤7.15.2、给整数变量i重新赋予初值i=1;
步骤7.16.1、在第1个无复杂背景的单元二值化图像E1上,将像素坐标值为(900,256)的像素点记为质心坐标值为(900,246)1的平行四边形编码单元上的定向圆环质心o′d,1(900,256);并且在第1个无复杂背景的单元二值化图像E1上,将像素坐标值分别为(868.3,274.8)、(870.8,214.8)、(934.6,219.3)、(931.2,279.1)的4个像素点记为C″1,1(868.3,274.8)、C″1,2(870.8,214.8)、C″1,3(934.6,219.3)、C″1,4(931.2,279.1);
步骤7.16.2、在第1个无复杂背景的单元二值化图像E1上,取C1,1(x1,1,y1,1)、C1,2(x1,2,y1,2)、C1,3(x1,3,y1,3)、C1,4(x1,4,y1,4)分别表示质心像素坐标值为(900,246)1的平行四边形编码单元中第1编码区域、第3编码区域、第4编码区域和第6编码区域的标定角点的像素坐标;由公式(7-4)得出质心像素坐标值为(900,246)1的平行四边形编码单元中的方向向量同时记通过定位圆质心o′l,1和定向圆环质心o′d,1的直线为l1,3;
步骤7.17、在第1个无复杂背景的单元二值化图像E1上,将4个像素点C″1,1(868.3,274.8)、C″1,2(870.8,214.8)、C″1,3(934.6,219.3)、C″1,4(931.2,279.1)中距离定位圆质心像素坐标o′l,1(900,236)最近的2个像素点分别记为C1,1min(x1,1min,y1,1min)和C1,2min(x1,2min,y1,2min);在本实施例中,C1,1min(x1,1min,y1,1min)即为C′1,1(934.6,219.3),C1,2min(x1,2min,y1,2min)即为C′1,4(870.8,214.8),
由于sinα1<0,sinβ1>0,则C1,1min(934.6,219.3)为质心像素坐标值为(900,246)1的平行四边形编码单元中第1编码区域的标定角点,把C1,1min(934.6,219.3)的像素坐标值赋值给C1,1(x1,1,y1,1);C1,2min(870.8,214.8)为质心像素坐标值为(900,246)1的平行四边形编码单元中第6编码区域域的标定角点,把C1,2min(870.8,214.8)的像素坐标值赋值给C1,4(x1,4,y1,4);
步骤7.18、在第1个无复杂背景的单元二值化图像E1上,通过上述步骤7.17已找到质心像素坐标值为(900,246)1的平行四边形编码单元中第1编码区域和第6编码区域的标定角点C1,1(934.6,219.3)和C1,4(870.8,214.8);将4个像素点C″1,1(868.3,274.8)、C″1,2(870.8,214.8)、C″1,3(934.6,219.3)、C″1,4(931.2,279.1)中余下的2个像素点(本实施例中即为C′1,2(868.3,274.8)和C′1,3(931.2,279.1))的像素坐标分别赋值给质心像素坐标值为(900,246)1的平行四边形编码单元的第1临时坐标值记为C′1,5(931.2,279.1),以及第2临时坐标值记为C′1,6(868.3,274.8);
本实施例中由于sinω1=0.06低于阈值(预设阈值为0.1),故可认为:sinω1==0,sinξ1≠0,则C′1,5(931.2,279.1)即为质心像素坐标值为(900,246)1的平行四边形编码单元中第3编码区域的标定角点,把C′1,5(931.2,279.1)的坐标值赋值给C1,2(x1,2,y1,2);C′1,6(868.3,274.8)为质心像素坐标值为(900,246)1的平行四边形编码单元中第4编码区域的标定角点,把C′1,6(868.3,274.8)的坐标值赋值给C1,3(x1,3,y1,3);
至此在第1个无复杂背景的单元二值化图像E1上,找到了质心像素坐标值为(900,246)1的平行四边形编码单元中第1编码区域的标定角点C1,1(934.6,219.3)、第3编码区域的标定角点C1,2(931.2,279.1)、第4编码区域的标定角点C1,3(868.3,274.8)和第6编码区域的标定角点C1,4(870.8,214.8);
步骤7.20、在第1个无复杂背景的单元二值化图像E1上,根据步骤7.17中得出的在质心像素坐标值为(900,246)1的平行四边形编码单元中第1编码区域的标定角点C1,1(934.6,219.3),第6编码区域的标定角点C1,4(870.8,214.8),由公式(7-13)得出质心坐标为(900,246)1的平行四边形编码单元中的第5判断向量同时记向量所在的直线为l13;
在第1个无复杂背景的单元二值化图像E1上,以质心像素坐标值为(900,246)1的平行四边形编码单元的定位圆质心o′l,1(900,236)为起点做与第5判断向量平行且同向的单位向量,记为并记单位向量所在的直线为l1,1以质心像素坐标值为(900,246)1的平行四边形编码单元的定向圆环质心为起点做与第5判断向量平行且同向的单位向量,记为并记单位向量所在的直线为l1,2;将整数变量i重新赋值i=1;
步骤7.21.1、定义6个浮点型二维数组 用于存放质心像素坐标值为(900,246)1的平行四边形编码单元中分别位于第1编码区域、第2编码区域、第3编码区域、第4编码区域、第5编码区域和第6编码区域的编码标志圆轮廓质心在第1个无复杂背景的单元二值化图像E1上的像素坐标,初始化这6个二维数组中的所有元素,且均赋值为-1;另外取6个整数变量并将其初始化,将整数变量i重新赋值;
步骤7.21.2、在第1个无复杂背景的单元二值化图像E1上,计算步骤7.15.2中,质心像素坐标值为(900,246)1的平行四边形编码单元中编码标志圆轮廓的质心像素坐标和分别与定位圆质心o′l,1、定向环质心o′d,1所形成的第1组第1个象限向量和第1组第2个象限向量以及第2组第1个象限向量和第2组第2个象限向量
在质心像素坐标值为(900,246)1的平行四边形编码单元中,编码标志圆所属编码区域的判断结果如下:
步骤7.22、定义代表质心像素坐标值为(900,246)1的平行四边形编码单元中第λ编码区域(其中λ=1,2,3,4,5,6)中第w位编码标志圆(其中w=1,2)的编码值,取0或1;取整数变量i,给i重新赋予初值i=1;
步骤7.23.1、本具体实施例中,根据本步骤可得:
步骤7.23.2、在本实施例中,
步骤7.23.3、本实施例中,本步骤可得:
步骤7.24、通过上述步骤7.23.1、7.23.2和7.23.3得出的质心像素坐标值为(900,246)1的平行四边形编码单元中所有编码标志圆的编码值,由公式(7-20)可求出与第1个无复杂背景的单元二值化图像E1中质心像素坐标为值(900,246)1的平行四边形编码单元相对应的实际空间中放置的编码平面靶标上的平行四边形编码单元的编码号W1=V1 T·U=10,其中,列向量U=(20,21,22,...211)T,列向量V1=(0,1,0,1,0,0,0,0,0,0,0,0)T。
步骤7.25、记在第1个无复杂背景的单元二值化图像E1上质心像素坐标值为(900,246)1的平行四边形编码单元中属于第σ编码区域(其中σ=1,3,4,6)的标定角点的非唯一编码序号为L10 σ,其中下脚标10为标定角点L10 σ所属平行四边形编码单元的编码号,上角标σ的取值代表了标定角点L10 σ所属的第σ编码区域;即得到了质心像素坐标为(900,246)1的平行四边形编码单元上4个标定角点C1,1(934.6,219.3)、C1,2(931.2,249.1)、C1,3(868.3,274.8)、C1,4(870.8,214.8)的非唯一编码序号分别为 (其中σ1,1=1,σ1,2=3,σ1,3=4,σ1,4=6);
在得到第1个无复杂背景的单元二值化图像E1上质心像素坐标值为(900,246)1的平行四边形编码单元的4个标定角点的非唯一编码序号的基础上,通过步骤7.26.1至步骤7.26.4可计算出该4个标定角点的唯一编码序号;
步骤7.26.1、取Δ′1,1_σ′1,1、Δ′1,2_σ′1,2、Δ′1,3_σ′1,3、Δ′1,4_σ′1,4分别用于存放质心坐标为(900,246)1的平行四边形编码单元上4个标定角点C1,1(934.6,219.3)、C1,2(931.2,249.1)、C1,3(868.3,274.8)、C1,4(870.8,214.8)的唯一编码序号,其中Δ′1,1、Δ′1,2、Δ′1,3、Δ′1,4、σ′1,1、σ′1,2、σ′1,3、σ′1,4均为正整数;
步骤7.26.2、取整数变量i并重新赋值i=1;
步骤7.26.3、本实施例中N==5,为奇数,执行步骤7.26.4;
步骤7.26.4、取整数参数Δ并赋值Δ=(N+1)/2=3,判断i是否小于4,若i<4,则将i+1赋值给i,返回步骤7.26.4顺序执行。
至此获得了第1个无复杂背景的单元二值化图像E1上质心像素坐标为(900,246)1的平行四边形编码单元上4个标定角点的像素坐标与其唯一编码序号的一一对应关系,即:
标定角点C1,1(934.6,219.3)对应的唯一编码序号为10_1;
标定角点C1,2(931.2,249.1)对应的唯一编码序号为7_6;
标定角点C1,3(868.3,274.8)对应的唯一编码序号为6_1;
标定角点C1,4(870.8,214.8)对应的唯一编码序号为10_6;
步骤7.27.1、建立靶标坐标系:
记第1行第1个平行四边形编码单元的4个顶点中是标定角点的个数为Φp,则可根据Φp数值的大小分为以下两种情况:
步骤7.28、在已知质心像素坐标为(900,246)1的平行四边形编码单元上4个标定角点C1,1(934.6,219.3)、C1,2(931.2,249.1)、C1,3(868.3,274.8)、C1,4(870.8,214.8)的唯一编码序号10_1、7_6、6_1、10_6以及位于空间中的编码平面靶标的基本信息的条件下,利用编码平面靶标上标定角点的靶标坐标计算方法,获得第10_1号标定角点、第7_6号标定角点、第6_1号标定角点和第10_6号标定角点的靶标坐标值;
本步骤可计算得出:
唯一编码序号为10_1的标定角点的像素坐标C1,1(934.6,219.3)所对应的靶标坐标为(X1,1,Y1,1,0)=(27,40.5,0);
唯一编码序号为7_6的标定角点的像素坐标C1,2(931.2,249.1)所对应的靶标坐标为(X1,2,Y1,2,0)=(27,27,0);
唯一编码序号为6_1的标定角点的像素坐标C1,3(868.3,274.8)所对应的靶标坐标为(X1,3,Y1,3,0)=(13.5,27,0);
唯一编码序号为10_6的标定角点的像素坐标C1,4(870.8,214.8)所对应的靶标坐标为(X1,4,Y1,4,0)=(13.5,40.5,0);
步骤7.29、将ζ+1赋值给ζ,然后重新回到步骤7.10.1顺序执行;直到满足ζ>11时,结束此循环;
由此,根据上述所有步骤,可以得出与编码平面靶标灰度图像P1中最大标定角点数多边形L内的所有标定角点的像素坐标相对应的靶标坐标,即找到了所选取标定角点的像素坐标与靶标坐标之间一一对应的关系,同时也找到了所选取标定角点的唯一编码序号,进而完成编码平面靶标的解码。
在本实施例中,利用编码平面靶标上标定角点的靶标坐标计算方法,获得第1个无复杂背景的单元二值化图像E1上质心像素坐标值为(900,246)1的平行四边形编码单元上4个标定角点的像素坐标所对应的靶标坐标的步骤如下:
步骤a、取整数变量i并重新赋值i=1;
步骤b、本实施例中N==5为奇数,本步骤分为如下情况:
情况1、若Δ′ζ,i_σ′ζ,i中的σ′ζ,i==1;则唯一编码号为Δ′ζ,i_σ′ζ,i的标定角点对应的靶标坐标为:(13.5ρ10,13.5δ10,0);
在本步骤b中,δ10=2(Δ′ζ,i-0)/(5+1)(结果只保留整数位);
步骤b执行结束后,直接执行步骤c;
步骤c、判断i是否小于4,若i<4,则将i+1赋值给i并返回步骤2.1顺序执行;若i≥4,则获得了第10_1号标定角点、第7_6号标定角点、第6_1号标定角点和第10_6号标定角点的靶标坐标,并分别记作(X1,1,Y1,1,0)、(X1,2,Y1,2,0)、(X1,3,Y1,3,0)、(X1,4,Y1,4,0);在本实施例中:
由此获得了质心像素坐标为(900,246)1的平行四边形编码单元上4个标定角点的像素坐标值所对应的靶标坐标值。
为实现对于给定的无复杂背景编码立体靶标图像内的编码平面靶标及标定角点与空间中的编码立体靶标内的相应的编码平面靶标及标定角点的匹配,从而获取给定的无复杂背景编码立体靶标图像内的编码平面靶标中所有标定角点的像素坐标相对应的靶标坐标以及给定的无复杂背景编码立体靶标图像内的编码平面靶标中所有标定角点的唯一编码序号,
以下以5号编码平面靶标为例,其匹配方法的步骤如下,同时,以下方法并不唯一:
步骤01、在无复杂背景编码立体靶标图像P′中,对于选定的编码平面靶标由编码平面靶标的解码方法,则已知此编码平面靶标内的所有标定角点在像素坐标系下的唯一像素坐标,以及所有标定角点对应的唯一编码序号,如表所示:
唯一编码序号 | 唯一像素坐标值 | 唯一编码序号 | 唯一像素坐标值 |
12_6 | (808.781,148.931) | 4_1 | (927.946,338.083) |
9_1 | (806.872,210.461) | 1_6 | (924.774,395.13) |
6_6 | (805.027,270.345) | 13_1 | (1002.74,162.398) |
3_1 | (803.26,329.229) | 11_6 | (998.423,223.927) |
0_6 | (801.844,386.368) | 7_1 | (994.224,283.819) |
12_1 | (873.543,153.238) | 5_6 | (990.201,342.772) |
10_6 | (870.828,214.848) | 1_1 | (986.314,399.786) |
6_1 | (868.262,274.754) | 14_6 | (1067.44,167.215) |
4_6 | (865.643,333.556) | 11_1 | (1062.34,228.73) |
0_1 | (863.434,390.774) | 8_6 | (1057.41,288.741) |
13_6 | (938.027,157.749) | 5_1 | (1052.52,347.522) |
10_1 | (934.609,219.271) | 2_6 | (1047.82,404.63) |
7_6 | (931.217,279.145) |
那么在编码平面靶标内的所有标定角点中任选一个标定角点,取其编码序号记为10_1,那么取10为该标定角点关联的平行四边形编码单元的编码号,记为平行四边形编码单元的编码号10;另外,在编码立体靶标中,由编码立体靶标的编码方法,已知以下条件:编码平面靶标中划分的各区域的个数为6以及各区域的编号为编码立体靶标中编码平面靶标的个数为6以及各编码平面靶标的编号为每个编码平面靶标内每个标定角点的编码号以及每个编码平面靶标内标定角点个数为25,1号编码平面靶标的平行四边形编码单元的编码号范围为80,81,82,…,97,2号编码平面靶标的平行四边形编码单元的编码号范围为98,99,100,…,115,3号编码平面靶标的平行四边形编码单元的编码号范围为20,21,22,…,37,4号编码平面靶标的平行四边形编码单元的编码号范围为57,58,59,…,74,5号编码平面靶标的平行四边形编码单元的编码号范围为0,1,2,…,17,6号编码平面靶标的平行四边形编码单元的编码号范围为39,40,41,…,56;
步骤02、取整数变量j,并赋予初始值j=1;
步骤03、设j号区域内的j号编码平面靶标内的标定角点个数为lj,那么j号编码平面靶标的平行四边形编码单元的编号范围为ξj,ξj+1,ξj+2,...,ξj+lj,其中j与区域的行编号和列编号的关系如下:j÷Sa=α...β,
情况1、若β=0,则第j区域为第α行第Sa列所在的区域;
情况2、若β≠0,则第j区域为第(α+1)行第β列所在的区域;
其中,Sa表示立体靶标的列数,β表示列编号,α表示行编号,且Sa、α、β为正整数,本实施例中,Sa=3;
情况1、在ξj与ξj+lj之间,即大于或等于ξj,且小于或等于ξj+lj,那么令所在的编码平面靶标为j号编码平面靶标,即可根据整数变量j判断出编码平面靶标在立体靶标中的行数与列数,完成了编码立体靶标图像P中的编码平面靶标与编码立体靶标中的j号编码平面靶标之间的对应关系,建立靶标坐标系Oα β,j-XjYjZj,并跳转到步骤05;
具体实施例中,根据在选定的编码平面靶标中任选的平行四边形编码单元的编码号10,经过循环判断,可得到当j=5时,任选的平行四边形编码单元的编码号10在5号编码平面靶标的平行四边形编码单元的编码号范围为0,1,2,…,17内,因此,可得到选定的编码平面靶标与空间中编码立体靶标的5号编码平面靶标一一对应,同时在5号编码平面靶标中建立靶标坐标系。
步骤05、由以上步骤可得到编码立体靶标图像P中的第j个编码平面靶标内所有标定角点的像素坐标,以及所有标定角点对应的唯一编码序号。利用编码平面靶标及其编码方法中的编码平面靶标上标定角点的靶标坐标计算方法,可获得第j编码平面靶标内所有标定角点在靶标坐标系下的靶标坐标值,由此可以得出第j编码平面靶标内所有标定角点的像素坐标相对应的靶标坐标,即找到了第j编码平面靶标内所有标定角点的像素坐标与靶标坐标之间一一对应的关系,同时也找到了第j编码平面靶标内所有标定角点的唯一编码序号,由此完成了编码平面靶标及标定角点的匹配方法。
步骤8、根据i是否等于χ,可分为以下两种情况:
情况1:当i≠χ时,令i=i+1,并跳转到步骤5;
情况2:当i=χ时,结束此循环,由此结束整个编码立体靶标的编码过程。
由以上步骤,可得到编码立体靶标图像P中,所有识别出的编码平面靶标与所拍摄的空间中的编码立体靶标内的编码平面靶标之间一一对应的关系,以及所有识别出的编码平面靶标内的所有标定角点的像素坐标与靶标坐标之间一一对应的关系,同时也找到了所有识别出的编码平面靶标内每个标定角点所在的编码平面靶标编码号,每个标定角点对应的唯一编码序号、唯一像素坐标系下的像素坐标值和唯一靶标坐标系下的靶标坐标值。具体实施例中,编码立体靶标内的每个标定角点对应的唯一编码序号、唯一像素坐标系下的像素坐标值和唯一靶标坐标系下的靶标坐标值如表13-表18所示;
表13 1号编码平面靶标内所有标定角点信息
表14 2号编码平面靶标内所有标定角点信息
表15 3号编码平面靶标内所有标定角点信息
表16 4号编码平面靶标内所有标定角点信息
表17 5号编码平面靶标内所有标定角点信息
表18 6号编码平面靶标内所有标定角点信息
此外,本发明提供的基于编码立体靶标的解码方法,需要编制相应的计算机程序,并在计算机上执行程序以实现相应的运算处理及逻辑控制功能,因而本发明也提供一种计算机可读存储介质,包括与具有图像处理功能的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以所述的编码方法。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种用于摄像机快速标定的编码立体靶标,所述编码立体靶标包括基准平面板、编码平面靶标板和连接机构,所述基准平面板的表面划分为若干个区域,每个区域内固定设置一个连接机构,每个连接机构的端部活动连接有一个编码平面靶标板,每个编码平面靶标板的空间姿态可活动调节,所述编码平面靶标板上均设置有编码平面靶标,所述编码平面靶标由平行四边形编码单元和平行四边形非编码单元交替组成的编码棋盘格构成,以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,其特征在于:所述编码平面靶标以任意对角相连的平行四边形编码单元的交点作为编码平面靶标的标定角点,所述编码平面靶标一共包含M行×N列个标定角点,其中M和N均为正整数;编码平面靶标中每一个平行四边形编码单元的内部设置有编码图案,编码图案包括定位图案、定向图案和编码标志图案,其中编码标志图案又由多个编码单元图案组成;定向图案和定位图案用于编码平面靶标旋转方向的判断;编码标志图案用于给编码平面靶标中每一个标定角点进行编码;
使用摄像机拍摄编码立体靶标,经过图像处理方法可获得编码立体靶标灰度图像,所述编码立体靶标灰度图像至少包含1个标定角点,通过对编码立体靶标灰度图像进行处理,可获得编码立体靶标灰度图像中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号及所在基准平面板区域的编码号,从而完成对编码立体靶标的所有标定角点的解码。
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.根据权利要求1或3所述的一种用于摄像机快速标定的编码立体靶标,其特征在于:所述编码平面靶标的平行四边形编码单元的编码号范围为[0,4095]。
5.根据权利要求2所述的一种用于摄像机快速标定的编码立体靶标解码方法,其特征在于:包括以下主要步骤:
步骤1、通过摄像机拍摄位于空间中的编码立体靶标,由此得到包含标定角点的编码立体靶标标定图像P,将编码立体靶标标定图像P进行灰度化处理,进而得到编码立体靶标灰度图像P′;
步骤2、建立标定角点的像素坐标系O-XY;
步骤3、利用棋盘格角点检测算法,计算出编码立体靶标灰度图像P′中χ个完整或局部的编码平面靶标上所有标定角点的亚像素坐标集合,其中每个标定角点的亚像素坐标集合都对应编码立体靶标灰度图像P′中的1个完整的或局部的编码平面靶标,并将χ个亚像素坐标集合对应的编码立体靶标灰度图像P′中的编码平面靶标依次记为编码立体靶标灰度图像P′内第1个编码平面靶标编码立体靶标灰度图像P′内第2个编码平面靶标…、编码立体靶标灰度图像P′内第χ个编码平面靶标
步骤4、取整数变量i,并赋予初始值i=1;
步骤5、将编码立体靶标灰度图像P′复制为第i幅编码立体靶标灰度复制图像Pi′;
步骤6、在第i幅编码立体靶标灰度复制图像Pi′中,利用编码立体靶标灰度图像P′内第i个编码平面靶标对应的标定角点亚像素坐标集合和数字图像处理的方法,将第i个编码平面靶标内的最外围标定角点在第i幅编码立体靶标灰度复制图像Pi′中所围成的多边形内部的所有像素点的灰度值保持不变,将第i个编码平面靶标内的最外围标定角点在第i幅编码立体靶标灰度复制图像Pi′中所围成的多边形外部的所有像素点的灰度值均赋值为255,并将处理后的图像记为第i幅无复杂背景编码立体靶标灰度复制图像Pi″;
步骤7、在第i幅无复杂背景编码立体靶标灰度复制图像Pi″中,利用编码平面靶标的解码方法,找到第i幅无复杂背景编码立体靶标灰度复制图像Pi″中所有检测到的标定角点的唯一编码号和与所有检测到的标定角点的编码号一一对应的亚像素坐标,同时利用编码平面靶标及标定角点的匹配方法,找到第i幅无复杂背景编码立体靶标灰度复制图像Pi″中所有检测到的标定角点所对应的空间中编码立体靶标内的号编码平面靶标内的标定角点,进而得到第i幅无复杂背景编码立体靶标灰度复制图像Pi″中所有检测到的标定角点所在的空间中编码立体靶标内的号编码平面靶标的编码号及空间中号编码平面靶标所在的编码立体靶标中基准面内的号区域的编码号同时找到与第i幅无复杂背景编码立体靶标灰度复制图像Pi″中所有检测到的标定角点的编码号一一对应的靶标坐标;于是,结合上述编码平面靶标的解码方法和编码平面靶标及标定角点的匹配方法,可得到第i幅无复杂背景编码立体靶标灰度复制图像Pi″中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准面的区域的编码号,完成第i幅无复杂背景编码立体靶标灰度复制图像Pi″所有检测到的标定角点的解码;
步骤8、重复执行步骤5至步骤7,直至i=χ;
步骤9、将所有χ幅无复杂背景编码立体靶标灰度复制图像P1″、P2″、...、Pχ″中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准面的区域的编码号作为编码立体靶标灰度图像P′中所有检测到的标定角点的唯一编码号、亚像素坐标、靶标坐标以及检测到的标定角点所在编码平面靶标的编码号和检测到的标定角点所在基准面的区域的编码号。
7.根据权利要求5或6所述的一种用于摄像机快速标定的编码立体靶标解码方法,其特征在于:编码平面靶标及标定角点的匹配方法包括以下主要步骤:
步骤7.0.2、取整数变量j,并赋予初始值j=1;
步骤7.0.3、空间中编码立体靶标基准面上的j号编码平面靶标内的平行四边形编码单元的个数为lj,并且j号编码平面靶标上的平行四边形编码单元的编号范围为ξj,ξj+1,ξj+2,...,ξj+lj,同时第j区域为第α行第Sa列所在的区域或为第(α+1)行第β列所在的区域,其中j与α、β满足关系:j÷Sa=α…β,其中α为商;
步骤7.0.4、重复执行步骤7.0.3,直至根据整数变量j判断出所在的无复杂背景编码立体靶标图像P′中第i个编码平面靶标在空间中编码立体靶标的基准面的区域的行编号与列编号,找到无复杂背景编码立体靶标图像P′中的第i个编码平面靶标与空间中编码立体靶标中的j号编码平面靶标之间的对应关系,并建立靶标坐标系Oα β,j-XjYjZj;
8.一种计算机可读存储介质,包括与具有图像处理功能的电子设备结合使用的计算机程序,所述计算机程序可被处理器执行以如权利要求5所述的解码方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020115410606 | 2020-12-23 | ||
CN202011541060 | 2020-12-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113192143A CN113192143A (zh) | 2021-07-30 |
CN113192143B true CN113192143B (zh) | 2022-09-06 |
Family
ID=76975628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110397447.7A Active CN113192143B (zh) | 2020-12-23 | 2021-04-14 | 一种用于摄像机快速标定的编码立体靶标及其解码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113192143B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104897142A (zh) * | 2015-06-11 | 2015-09-09 | 湖北工业大学 | 一种适用于双目或多目视觉尺寸测量的立体靶标 |
CN104933717A (zh) * | 2015-06-17 | 2015-09-23 | 合肥工业大学 | 基于方向性标定靶标的摄像机内外参数自动标定方法 |
CN106289106A (zh) * | 2016-08-04 | 2017-01-04 | 北京航空航天大学 | 一种线阵相机和面阵相机相结合的立体视觉传感器及标定方法 |
CN106600648A (zh) * | 2016-12-06 | 2017-04-26 | 合肥工业大学 | 标定相机内参数和畸变系数的立体编码靶标及其标定方法 |
US10269141B1 (en) * | 2018-06-04 | 2019-04-23 | Waymo Llc | Multistage camera calibration |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104299261B (zh) * | 2014-09-10 | 2017-01-25 | 深圳大学 | 人体三维成像方法及系统 |
JP6664000B2 (ja) * | 2016-08-12 | 2020-03-13 | オリンパス株式会社 | 較正装置、較正方法、光学装置、撮影装置、および投影装置 |
-
2021
- 2021-04-14 CN CN202110397447.7A patent/CN113192143B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104897142A (zh) * | 2015-06-11 | 2015-09-09 | 湖北工业大学 | 一种适用于双目或多目视觉尺寸测量的立体靶标 |
CN104933717A (zh) * | 2015-06-17 | 2015-09-23 | 合肥工业大学 | 基于方向性标定靶标的摄像机内外参数自动标定方法 |
CN106289106A (zh) * | 2016-08-04 | 2017-01-04 | 北京航空航天大学 | 一种线阵相机和面阵相机相结合的立体视觉传感器及标定方法 |
CN106600648A (zh) * | 2016-12-06 | 2017-04-26 | 合肥工业大学 | 标定相机内参数和畸变系数的立体编码靶标及其标定方法 |
US10269141B1 (en) * | 2018-06-04 | 2019-04-23 | Waymo Llc | Multistage camera calibration |
Non-Patent Citations (4)
Title |
---|
An Extended Method of Multiple-Camera Calibration for 3D Vehicle Tracking at Intersections;Sukriti Subedi et.al;《2018 IEEE International Conference on Electro/Information Technology (EIT)》;20181021;第258-261页 * |
双目立体视觉自定位线扫描三维测量技术;殷玉龙;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160615;第I138-1260页 * |
基于双目视觉的立体靶标技术研究;朱财升;《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》;20190715;第C030-26页 * |
远距离视觉测量中的快速靶标提取与解码方法;李德志等;《现代计算机(专业版)》;20160125(第03期);第65-69页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113192143A (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112097689B (zh) | 一种3d结构光系统的标定方法 | |
CN113096191B (zh) | 基于编码平面靶标的单目摄像机智能标定方法 | |
CN100430690C (zh) | 利用单数码相机自由拍摄进行物体三维测量的方法 | |
CN113129385B (zh) | 基于空间中多编码平面靶标的双目摄像机内外参数标定方法 | |
Strauß et al. | Calibrating multiple cameras with non-overlapping views using coded checkerboard targets | |
CN111981982B (zh) | 一种基于加权sfm算法的多向合作靶标光学测量方法 | |
CN111709985B (zh) | 一种基于双目视觉的水下目标测距方法 | |
CN113160329B (zh) | 用于摄像机标定的编码平面靶标及其解码方法 | |
CN101299270A (zh) | 三维扫描系统中的多个摄像机同步快速标定方法 | |
CN113129386B (zh) | 基于编码平面靶标的双目摄像机内外参数的智能标定方法 | |
CN102054276A (zh) | 物体三维几何重建相机定标方法和系统 | |
CN113012271B (zh) | 一种基于uv贴图的手指三维模型纹理映射方法 | |
CN109766903A (zh) | 一种基于曲面特征的点云模型曲面匹配方法 | |
CN108253909A (zh) | 一种平面度的测量方法和测量装置 | |
CN112257721A (zh) | 一种基于Fast ICP的图像目标区域匹配方法 | |
CN115880373A (zh) | 基于新型编码特征的立体视觉系统的标定板及标定方法 | |
CN113129396B (zh) | 一种基于区域分割的平行四边形编码标志的解码方法 | |
CN109345571B (zh) | 一种基于扩展高斯图像的点云配准方法 | |
CN113129397A (zh) | 一种基于图形几何关系的平行四边形编码标志的解码方法 | |
CN113192143B (zh) | 一种用于摄像机快速标定的编码立体靶标及其解码方法 | |
CN113112550B (zh) | 一种用于摄像机内外参数标定的编码平面靶标及其编码方法 | |
CN115222828A (zh) | 用于视觉定位的正六边形编码标志解码方法 | |
CN113112549B (zh) | 一种基于编码立体靶标的单目摄像机快速标定方法 | |
CN114299172B (zh) | 一种用于视觉系统的平面编码靶标及其实时位姿测量方法 | |
CN116468805A (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 |