1.一种基于多特征松弛约束的环状编码标志点提取与识别方法,其特征在于,包括以下步骤:
S1:获取包含编码标志点的影像;
S2:对所述包含编码标志点的影像进行分块处理,得到分块影像;
S3:对所述分块影像进行预处理操作,获得包含所有轮廓的二值化影像;
S4:根据多特征松弛约束算法从所述二值影化像中获取四边形轮廓;
S5:根据四边形轮廓的角点信息进行影像裁剪,获得局部影像;
S6:对所述局部影像进行二值化处理,获得清晰的内部轮廓;
S7:通过仿射变换实现影像的纠正;
S8:在经过纠正后的影像上做初次筛选,根据多特征松弛约束算法筛选圆轮廓;
S9:在经过纠正后的影像上做第二次筛选,根据多特征松弛约束算法筛选弧段轮廓;
S10:根据筛选得到的圆轮廓,在圆轮廓内部进行角点检测,从而实现中心点坐标的提取;
S11:根据筛选得到的弧段轮廓,进行编码标志点的解码。
2.根据权利要求1所述的环状编码标志点提取与识别方法,其特征在于,步骤S1中,所述编码标志点的编码圆环被均等划分为8份,即编码标志点具有8个编码带,对编码带随机赋上黑白颜色,得到具有黑白颜色的8个编码带,在8个编码带组成的编码圆环内部,设置有一个中心圆环,在中心圆环内部内接一个被分成四等份小正方形的大正方形,处于对角的小正方形具有相同颜色,处于同一行的小正方形具有不同颜色,大正方形的中心作为编码标志点的中心。
3.根据权利要求1所述的环状编码标志点提取与识别方法,其特征在于,步骤S2中,设置分块缓冲区,使得分块影像间有重叠度;其中假定原始影像的列号为c,行号为r,分块数量为n*n,则初定的分块影像的行尺寸大小为: 列尺寸大小为: 设定缓冲区的重叠度为o,横向缓冲区大小为:Oc=o*mc,纵向缓冲区大小为:Or=o*mr。
4.根据权利要求1所述的环状编码标志点提取与识别方法,其特征在于,步骤S3中,所述预处理操作包括:影像灰度化处理、影像匀光处理、影像二值化处理。
5.根据权利要求2所述的环状编码标志点提取与识别方法,其特征在于,步骤S4中,在进行四边形轮廓检测时,根据四边形的形状准则和几何关系准则对每一个四边形轮廓建立一个5维向量,该向量由角点个数C、横纵向像素个数Pr、横纵向边长比Lr、轮廓面积比SA、影像面积比QI共五个变量组成;分别对五个变量设置阈值条件,进行四边形轮廓获取,具体步骤如下:角点个数C:根据四边形有且仅有4个角点对轮廓进行多边形拟合处理,当拟合后多边形角点个数为4时,角点个数C的值取1,并进行其他四个变量计算,否则认定该轮廓不是四边形,将该轮廓剔除;
横纵向像素个数Pr:当轮廓拟合得到的多边形有且仅有4个角点时,根据角点获取轮廓的横向边长Px及纵向边长Py,设置第一阈值Pt,若满足Px≥Pt,Py≥Pt,则横纵向像素个数Pr=
1,否则,Pr=0,将该轮廓剔除;
横纵向边长比Lr:当轮廓拟合得到的多边形有且仅有4个角点时,根据角点坐标计算四边形的横纵向边长,将横纵向边长分别与影像的横纵向长度作比值处理,得到横向边长比Lx和纵向边长比Ly,设置第二阈值Lt,若满足Lx≤Lt,Ly≤Lt,则横纵向边长比Lr=1,否则,Lr=0,将该轮廓剔除;
影像面积比QI:在得到拟合四边形的横纵向边长后,根据矩形面积计算公式,计算四边形的面积,将其与影像的面积进行比值处理,得到结果Qr,设置第三阈值Qt,若满足Qr≤Qt,则影像面积比QI=1,否则QI=0,将该轮廓剔除;
轮廓面积比SA:当轮廓拟合得到的多边形有且仅有4个角点时,计算轮廓拟合的四边形所对应的矩形面积与轮廓本身面积的比值Sk;设置第四阈值Sl和第五阈值Sm,且Sl
6.根据权利要求1所述的环状编码标志点提取与识别方法,其特征在于,步骤S6中,采用Otsu二值化算法,实现图像的二值化处理。
7.根据权利要求2所述的环状编码标志点提取与识别方法,其特征在于,步骤S8中,在进行圆轮廓筛选时,根据编码标志点设计准则及圆的形状特征,建立一个3维圆特征向量,该向量由圆面积比SC、中心点D、半径比R共三个变量组成,分别对三个变量设置阈值条件,进行圆轮廓筛选,具体步骤如下:圆面积比SC:对轮廓进行最小外接圆处理,计算拟合圆的面积将其与轮廓自身面积进行比值处理,得到比值结果Sr,设置第六阈值St,若满足Sr≤St,则圆面积比SC=1,否则SC=0,将该轮廓剔除;
中心点D:将变形纠正后的四边形轮廓的对角线交点作为标志点的粗略中心C(xc,yc),计算内部轮廓的最小拟合圆,获得轮廓的圆心R(xr,yr),计算C(xc,yc)和R(xr,yr)两点之间的距离Dl,计算距离Dl与四边形边长的比值,得到相对距离结果Dr,设置第七阈值Dt,若Dr≤Dt,则中心点D=1,否则D=0,将该轮廓剔除;
半径比R:编码标志点内部圆半径与四边形对角线的一半长度的设计比值为∝;将内部轮廓的拟合圆半径作为内部圆的半径值,将四边形四个顶点到内部轮廓拟合圆的圆心距离的平均值作为四边形对角线的长度的一半,根据下式计算内部圆半径与该距离之比:其中,r为拟合圆半径,d1,d2,d3,d4分别为四边形四个顶点至圆心的距离;
计算Rr与∝的差值,设置第八阈值Rt,若该差值小于或等于第八阈值Rt,则半径比R=1,否则,R=0,将该轮廓剔除,最终保留的轮廓即为筛选得到的圆轮廓。
8.根据权利要求2所述的环状编码标志点提取与识别方法,其特征在于,步骤S9中,在进行弧段轮廓筛选时,对每一个弧段轮廓建立一个3维向量,该向量由与圆轮廓之间的位置关系L、轮廓角度Ac、弧段内外环半径与圆半径比值Ir三个变量组成,分别对三个变量设置阈值条件,进行弧段轮廓筛选,具体步骤如下:与圆轮廓之间的位置关系L:在标志点设计中,弧段位于圆的外部,因此通过除圆轮廓外的内部轮廓与圆轮廓之间的位置关系,作初步的弧段筛选;计算轮廓上每个点至拟合圆圆心的距离,若每个点的距离均大于拟合圆的半径,则该轮廓在圆轮廓外部,取L=1,并且进一步判断该轮廓是否为弧段,否则L=0,将该轮廓剔除;
轮廓角度Ac:在标志点设计中,每个弧段的角度均是由选定的标志点位数得到的,因此根据轮廓所对应的圆心角,判断轮廓的类型;据轮廓上的点与圆心所构成的向量计算轮廓角度,首先需要选定基准点构造基准向量,选定基准向量后,通过计算轮廓上每个点与圆心构成的向量与基准向量之间的夹角即可得到轮廓所对应的圆心角;计算圆心角与45°的四舍五入整除值An及取余值Af,若轮廓为弧段,则An≥1,设置第九阈值β,若满足An≥1,Af<β,则轮廓角度Ac=1,否则Ac=0,将该轮廓剔除;
弧段内外环半径与圆半径比值Ir:计算轮廓上每个点至四边形中心点的距离,对距离进行排序,选取最小的5个值的平均值作为内环半径值,最大的5个值的平均值作为外环半径值;将内外环半径值分别于四边形对角线的一半长度进行比值处理,得到比值结果Ia、Oa;设置第十阈值Ii、第十一阈值Im、第十二阈值Oi、第十三阈值Om,若满足Ii≤Ia≤Im,Oi≤Oa≤Om,弧段内外环半径与圆半径比值Ir=1,否则Ir=0,将该轮廓剔除,最终保留的轮廓即为筛选得到的弧段轮廓。
9.根据权利要求1所述的环状编码标志点提取与识别方法,其特征在于,步骤S10中,采用棋盘格角点提取算法,提取感兴趣区域中的初始角点合集,并且计算初始角点坐标与矩形对角线交点之间的距离,取距离最小的点作为编码点的坐标,最终实现中心点的提取。
10.根据权利要求1所述的环状编码标志点提取与识别方法,其特征在于,步骤S11中,在提取到弧段轮廓后,选择任意一个弧段轮廓,选定基准点,构造基准向量,将基准点作为解码起始点,基于该点与标志点中心构造基准向量,计算每个弧段的角度,记录每个弧段相对于基准向量的角度最大值及最小值,对弧段的角度进行二次阈值判断,当弧段角度在阈值内时,将其作为编码弧段,用于解算标志点的编码;
根据编码弧段角度的最大值及最小值,基于编码位数确定编码弧段在二进制编码中的位置;
对二进制编码值进行循环移位操作,得到多个二进制数,将二进制数转为十进制,比较十进制数的大小后将最小的十进制数作为标志点的编码值。