1.一种基于图像梯度信息的多椭圆检测和评估算法,其特征在于,包括步骤:
s1、用边缘检测算法从待测试图像中提取特征点,得到特征点集,所述特征点包括位置坐标和梯度向量;
s2、从特征点集中随机抽取三个点,代入椭圆评估算法中评估椭圆的代数系数;
s3、根据评估得到的代数系数,判断被评估的椭圆是否有效,如果有效则进行下一步骤,否则返回步骤s2;
s4、根据当前的椭圆的代数系数表达式,在特征点集内搜索所有内点,得到内点集;
s5、根据所有搜索到的内点,代入椭圆评估算法,重新评估椭圆的代数系数;
s6、重复步骤s3-s5,直到内点的数目不再增加;
s7、根据评估的椭圆的代数系数和内点集,判断被评估的椭圆是否有效,如果有效,则视为成功检测到一个椭圆,进行下一步骤,否则返回步骤s2;
s8、记录步骤s6中最终评估得到的椭圆代数系数,并从特征点集中去除相应的内点,返回步骤s2,直到图像中所有的椭圆都被检测和评估出来。
2.根据权利要求1所述的基于图像梯度信息的多椭圆检测和评估算法,其特征在于:
步骤s3中,当满足以下两个条件时判断被评估的椭圆为有效:条件一是在椭圆的矩阵形式的代数系数表达式中,det(a)>0,且bta-1b-2f>0;条件二是得出的椭圆的几何参数表达式中的长半轴长度、短半轴长度、长半轴与x坐标轴的夹角值这几个几何参数均在预设范围内。
3.根据权利要求2所述的基于图像梯度信息的多椭圆检测和评估算法,其特征在于,所述椭圆的几何参数表达式为:
其中,a为长半轴长度,b为短半轴长度,θ为长半轴与x坐标轴的夹角,(cx,cy)为椭圆的中心坐标,(x,y)为椭圆上点的坐标,φ为定义域在[0,2π)上的自由变量。
4.根据权利要求3所述的基于图像梯度信息的多椭圆检测和评估算法,其特征在于,所述椭圆的几何参数表达式中的几何参数由以下步骤得到:
(1)用椭圆的圆锥曲线方程定义椭圆二元二次方程形式的代数系数表达式为:
ax2+bxy+cy2+dx+ey+f=0,
式中,a、b、c、d、e、f是方程系数,限定a>0;
(2)将椭圆二元二次方程形式的代数系数表达式表示为椭圆矩阵形式的代数系数表达式:
式中,,
(3)进行从椭圆的代数系数表达式到几何参数表达式之间的转换:
对椭圆的所述椭圆的代数系数的矩阵方程进行特征分解,得到
a=sλst
式中,令对角矩阵
基于特征分解结果,得到下式以得出椭圆几何参数的值:
θ=arctan(s21/s11)
[cx,cy]t=-a-1b
5.根据权利要求4所述的基于图像梯度信息的多椭圆检测和评估算法,其特征在于,所述椭圆评估算法包括以下步骤:
(1)构建如下目标函数并求解使其最小化:
式中,β2为用于平衡位置信息和梯度信息的值,n为给定的坐标点数量,(xi,yi)为第i个点的坐标,(gx,i,gy,i)为第i个点的梯度,k1,k2,...,kn为引入的n个新的未知数;
(2)将椭圆的代数系数和新引入的未知数联合起来,组成待计算的向量p,则p=[abcdefk1k2…kn]t,则所述目标函数表达为
其中,q是(3n)×(n+6)的矩阵,表示为
求解使所述目标函数最小化时限定||p||=1,通过奇异值分解,有q=u∑vt,p的解即为矩阵v中对应最小奇异值的列向量,即得所述a、b、c、d、e、f的值。
6.根据权利要求1所述的基于图像梯度信息的多椭圆检测和评估算法,其特征在于,步骤s7中,当满足以下三个条件时判断椭圆为有效:(1)内点的个数达到预设范围;(2)内点在椭圆上的分布均匀;(3)内点在椭圆上的分布完整。
7.根据权利要求1所述的基于图像梯度信息的多椭圆检测和评估算法,其特征在于,所述边缘检测算法为canny算法。
8.一种基于图像梯度信息的多椭圆检测和评估装置,其特征在于,包括:
特征点提取模块(100),用于用边缘检测算法从图像中提取特征点,得到特征点集,所述特征点包括位置坐标和梯度向量;
椭圆评估模块(200),用于从特征点集中随机抽取三个点,代入椭圆评估算法中评估椭圆的代数系数;
有效椭圆判断模块(300),用于根据评估得到的代数系数,判断被评估的椭圆是否有效;
内点收集模块(400),用于根据当前的椭圆的代数系数表达式,在特征点集内搜索所有内点,得到内点集;
基于内点的椭圆评估模块(500),用于根据所有搜索到的内点,代入椭圆评估算法,重新评估椭圆的代数系数;
基于内点的有效椭圆判断模块(600),用于根据评估的椭圆的代数系数和内点集,判断被评估的椭圆是否有效;
记录及整理模块(700),用于记录最终评估得到的椭圆代数系数,并从特征点集中去除相应的内点。
9.一种基于图像梯度信息的多椭圆检测和评估终端,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的基于图像梯度信息的多椭圆检测和评估算法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的基于图像梯度信息的多椭圆检测和评估算法。