1.一种非均匀光照下快速提取轮廓线的方法,其特征在于包括如下步骤:步骤1,采用灰度摄像头采集图像,并将灰度数据进行存储;步骤2,任选一处为原点,建立x-y方向的直角坐标系;步骤3,选择提取轮廓线的起始坐标和核的阶数:步骤4,对起始坐标的点进行膨胀操作和腐蚀操作,用膨胀操作的结果减腐蚀操作的结果,得到核的延伸方向的形态学梯度Grad,若Grad大于设定值,则得到轮廓线上的第一个点arr[x1][y1];然后找出该点八邻域中满足条件的像素点,作为轮廓线上的第二个点arr[x2][y2];以第p个点arr[xp][yp]为中心,对比其五邻域的像素,找到满足条件的第p+1个点arr[x(p+1)][y(p+1)],p=2,3,…,以此类推,得到所有轮廓点;所述步骤4的具体过程是:步骤401,确定核的延伸方向,沿该方向将图像与核进行卷积,计算出膨胀的值dilate与腐蚀后的值erode;步骤402,对膨胀的值dilate与腐蚀后的值erode进行作差,得到核的延伸方向的形态学梯度Grad=dilate-erode,若Grad大于设定值,则得到轮廓线上的第一个点arr[x1][y1];步骤403,以步骤402得到的第一个点arr[x1][y1]作为九宫格中心点,对比中心点arr[x1][y1]与其八邻域的8个像素点的梯度值之差,找出满足梯度值大于设定值且与中心点梯度值差值最小的那个像素点,并将该像素点作为轮廓线上的第二个点arr[x2][y2];步骤404,以步骤403得到的第二个点arr[x2][y2]作为九宫格中心点,对比该中心点与其五邻域的5个像素点的梯度值之差,将梯度值大于设定值且与中心点梯度值差值最小的像素点作为轮廓线上的第三个点arr[x3][y3];所述五邻域是指九宫格中沿核的延伸方向的靠前的两行;步骤405,以第i个点arr[xi][yi]作为九宫格中心点,重复步骤404,得到第i+1个点arr[xi+1][yi+1],i=3,4,…,直至出现如下两种情况的任一种:若得到一个闭合的轮廓,即核经过延伸以后,回到arr[x1][y1],则停止工作;若得到的轮廓不是闭合的,但该核沿其方向延伸至终点,即Grad小于设定值;步骤5,对步骤4得到的轮廓点经过k次B样条曲线的拟合后得到光滑的轮廓线。
2.如权利要求1所述的一种非均匀光照下快速提取轮廓线的方法,其特征在于:所述步骤3中,选择提取轮廓线的起始坐标的具体方法是:首先将分布集中的像素区域预判为轮廓,然后选择靠近轮廓且与背景环境灰度值相差大的位置作为起始坐标。
3.如权利要求1所述的一种非均匀光照下快速提取轮廓线的方法,其特征在于:所述步骤3中,确定提取轮廓线的核的阶数为二阶。
4.如权利要求1所述的一种非均匀光照下快速提取轮廓线的方法,其特征在于:所述步骤5中,B样条曲线的拟合实现过程是:步骤51,选定B样条函数的次数,再根据公式m=n+k+1计算出节点个数m,选定节点参数以数组U[]表示;步骤52,将轮廓的各个边界坐标代入B样条曲线的拟合公式,再以二维数组的函数关系在图像中以轮廓线显示,得到各个轮廓边界;步骤53,利用B样条曲线,将各个轮廓的边界进行拟合,得到整体轮廓。
5.如权利要求4所述的一种非均匀光照下快速提取轮廓线的方法,其特征在于:所述步骤52中,B样条曲线的数学表达式为:其中N i,k (u)是k次B样条基函数,下面为其递归公式: