一种图像的快速连续边缘提取方法与流程

文档序号:12127621阅读:564来源:国知局
一种图像的快速连续边缘提取方法与流程
本发明属于图像处理
技术领域
,具体涉及一种图像的快速连续边缘提取方法。
背景技术
:在现有的边缘检测方法中,微分算子法与水平集法是两类有代表性的方法:微分检测算子法以Canny算子(JohnCanny,‘Acomputationalapproachtoedgedetection’,IEEETransactionsonPatternAnalysisandMachineIntelligence,1986,8,(6),pp.679-698)为代表,这类方法的优点是检测速度快,缺点是边缘检测结果包含“断裂”部分;水平集法的典型代表包括MCM(SapiroG.Affineinvariantscalespace[J].InternationalJournalofComputerVision,1993,11(1):25-44.)等,这类方法的优点是边缘提取结果连续好,缺点执行速度与检测结果均初始轮廓的位置相关。近年来,诸多学者依然针对上述各自问题进行了改进(XiaohuLu,JianYaoyao,KaiLi,LiLi,‘Cannylines:Aparameter-freelinesegmentdetector’,IEEEInternationalConferenceonImageProcessing,2015,pp.507-511、DiJia,Cheng-longXiao,Jin-guangSun,‘Edgedetectionmethodofgaussianblockdistance’,IEEEInternationalConferenceonImageProcessing,2015,pp.3049-3053、MarceloPereyra,HadjBatatia,SteveMcLaughlin.‘ExploitingInformationGeometrytoImprovetheConvergenceofNonparametricActiveContours’,IEEETransactionsonimageprocessing,2015,24,(3),pp.836-845),以期获得理想的边缘提取结果。然而,这些改进均未能从根本上解决两类方法的缺点,近期,一种图像的连续性边缘提取方法(贾迪,董娜,孟祥福,李思慧.计算机工程与科学.2015,37(2):384-389)给出结合两类方法优点的一种快速连续性边缘提取方法,该方法采用模板检测断裂位置,并在该位置上以一定的半径进行圆膨胀,当断裂的边缘较为接近时,膨胀部分可以获得连接,再利用MCM模型以膨胀图为初始位置进行迭代求解,获得连续边缘。尽管可以获得较好的实验结果,但依旧存在以下问题:1)以半径r进行圆膨胀时,当两个断裂边缘断点距离过远时,r的取值就需要增加,而增大的r值会导致其它断点距离较近的边缘迭代求解错误;2)MCM以曲率作为驱动力的边缘停止函数,未考虑边缘梯度停止力与牵引力,不能很好地获得图像真实边缘。也就是说,这两个问题限制了其具体的使用环境,从而降低了实用性。技术实现要素:针对现有技术存在的问题,本发明提供一种图像连续边缘提取方法。本发明的技术方案如下:一种图像的快速连续边缘提取方法,包括以下步骤:步骤1、采用微分检测算子对图像I进行边缘检测,得到边缘检测结果E;步骤2、对边缘检测结果E进行骨架提取,得到骨架提取结果Ec;步骤3、遍历骨架提取结果Ec中每个像素点做如下处理,得到断点提取结果B:如果当前像素点值不为0,统计以当前像素点为中心的九宫格中像素点值不为0的数量,如果数量为2则标记当前像素点,放入断点提取结果集合中;根据设定步长s延拓断点提取结果B,即以当前像素点为中心,沿着断点提取结果B中不为0的两个像素点所形成的直线方向进行延拓,将该直线方向上s个像素值为0的像素置1;最后获得延拓结果Ee;步骤4、将延拓结果Ee膨胀至宽度r,获得膨胀结果P;r是大于1的正整数;步骤5、以膨胀结果P为基础,生成偏微分方程的嵌入函数初始数据矩阵u0;步骤6、迭代求解偏微分方程获得图像的连续边缘,得到图像连续边缘提取结果。所述步骤5具体是:如果膨胀结果P中第i行第j列像素值为0,则将255填入第0时刻嵌入函数u的数据矩阵u0的第i行第j列,即嵌入函数的初始数据矩阵的第i行第j列如果膨胀结果P中第i行第j列像素值大于0,则将-255填入第0时刻嵌入函数u的数据矩阵u0的第i行第j列,即嵌入函数的初始数据矩阵的第i行第j列按照上述过程遍历膨胀结果P中的所有像素,获得嵌入函数u的初始数据矩阵u0。所述步骤6具体采用如下改进的MCM偏微分方程:其中,为曲线C对时间求偏导数,g为边缘停止函数,为图像I的梯度值,k是图像I的曲率,N为图像I的梯度法向量,K为选定的常数,用于控制g的下降速率,K取值越大,则受的影响越小;Ixx为图像I在x方向上的二阶导数,Iyy为图像I在y方向上的二阶导数,Ixy为先对图像I在x方向求偏导后,再在y反向求偏导数。所述改进的MCM偏微分方程采用离散化方法获得迭代求解方程:其中,为n+1时刻嵌入函数u的数据矩阵中第i行第j列的值,为n时刻嵌入函数u的数据矩阵中第i行第j列的值,Δt为迭代步长,为g的导数;在初始迭代时,的取值为迭代求解结束时,为最后的迭代结果,即嵌入函数u的数据矩阵中不为0的点为图像的边缘。有益效果:本发明采用微分检测算子对图像进行边缘检测,得到边缘检测结果;对边缘检测结果进行骨架提取,得到骨架提取结果;遍历骨架提取结果中每个像素点,如果当前像素点值不为0,统计以当前像素点为中心的九宫格中像素点值不为0的数量,如果数量为2则标记当前像素点,作为断点提取结果;根据设定步长延拓断点提取结果,即以当前像素点为中心,沿着断点提取结果中不为0的两个像素点所形成的直线方向进行延拓,将该直线方向上s个像素值为0的像素置1,获得延拓结果;将延拓结果膨胀至宽度r,获得膨胀结果;以膨胀结果为基础,生成偏微分方程的嵌入函数初始值;迭代求解偏微分方程获得图像的连续边缘,得到图像连续边缘提取结果。本发明能够在图像处理过程中得到连续性好的边缘,以更好地提高后期的图像分割、测量、匹配等准确性。利用的微分检测算子处理速度快的优点,提取断点位置并利用边缘自然延拓的特性连接膨胀边缘,并以该结果作为嵌入函数的初始值,在-255至+255的灰度范围内利用连续性边缘提取算法迭代求解获得最终提取结果。因为连接膨胀边缘图已经非常接近真实边缘,因此迭代求解过程很快,以此获得快速连续的边缘提取结果。附图说明图1是本发明具体实施方式中一种图像的快速连续边缘提取方法的流程图;图2a~h分别是本发明具体实施方式中8种九宫格;图3是本发明具体实施方式中改进的MCM偏微分方程原理图;图4a~h是本发明具体实施方式中图像连续边缘提取的过程示意图,a为一条待检测的线段,b为采用微分检测算子Canny进行边缘检测得到边缘检测结果;d为由C与E构造的矢量射线,e为沿C与E构造的矢量射线进行延拓获得的结果,f为图a的断裂边缘连接结果,g为f的膨胀图,h为g的边缘封闭曲线;图5a~j是本发明具体实施方式中景物图像连续边缘提取结果,a为原始图像,b~d分别为采用文献A、文献B、Canny算子获得的边缘检测实验结果,e为采用步骤1-4获得的边缘延拓结果,f为迭代求解的边缘,g~j分别为b、d、e、f的局部放大图;图6a~j是本发明具体实施方式中建筑物图像连续边缘提取结果,a为原始图像,b~d分别为采用文献A、文献B、Canny算子获得的边缘检测实验结果,e为采用步骤1-4获得的边缘延拓结果,f为迭代求解的边缘,g~j分别为b、d、e、f的局部放大图;图7a~j是本发明具体实施方式中任人物图像连续边缘提取结果,a为原始图像,b~d分别为采用文献A、文献B、Canny算子获得的边缘检测实验结果,e为采用步骤1-4获得的边缘延拓结果,f为迭代求解的边缘,g~j分别为b、d、e、f的局部放大图。具体实施方式下面结合附图对本发明的具体实施方式做详细说明。如图1所示的一种图像的快速连续边缘提取方法,包括以下步骤:步骤1、采用微分检测算子Canny对图像I进行边缘检测,得到边缘检测结果E;步骤2、对边缘检测结果E采用K3M算法进行骨架提取,得到骨架提取结果Ec;步骤3、遍历骨架提取结果Ec中每个像素点做如下处理,得到断点提取结果B:如果当前像素点值不为0,统计以当前像素点为中心的九宫格中像素点值不为0的数量,如果数量为2则标记当前像素点,放入断点提取结果集合中;根据设定步长s延拓断点提取结果B,即以当前像素点为中心,沿着断点提取结果B中不为0的两个像素点所形成的直线方向进行延拓,将该直线方向上s个像素值为0的像素置1;最后获得延拓结果Ee;所述九宫格分为“左上”、上”、“右上”、“左中”、“中”、“右中”、“左下”、“下”、“右下”,本实施方式中,当前像素点值不为0且以当前像素点为中心的九宫格中像素点值不为0的数量为2的情况,如图2a~h所示的8种情况的九宫格,所有格置0并将“中”置1,然后除了“中”格,依次按上述顺序分别在8个九宫格中置1,即得到的8种九宫格中每个都有2个格为1。步骤4、将延拓结果Ee膨胀至宽度r,获得膨胀结果P;r是大于1的正整数;步骤5、以膨胀结果P为基础,生成偏微分方程的嵌入函数初始数据矩阵u0;如果膨胀结果P中第i行第j列像素值Pij为0,则将255填入第0时刻嵌入函数u的数据矩阵,即嵌入函数的初始数据矩阵的第i行第j列如果膨胀结果P中第i行第j列像素值Pij大于0,则将-255填入第0时刻嵌入函数u的数据矩阵,即嵌入函数的初始数据矩阵的第i行第j列按照上述过程遍历膨胀结果P中的所有像素,获得嵌入函数的初始数据矩阵u0;偏微分方程的嵌入函数初始数据矩阵的第i行第j列其中,m、n分别为图像I的长、宽。步骤6、迭代求解偏微分方程获得图像的连续边缘,得到图像连续边缘提取结果。MCM方程是一种基于线性几何热流理论的方程,进化过程保持曲线的封闭性与连通性:经典MCM方程进化过程没有考虑目标边缘的阻力问题。在《一种图像的连续性边缘提取方法》中对该问题进行了改进,增加了以曲率作为驱动力的边缘停止函数g,其定义形式如下:其中,g为边缘停止函数,f为曲率项,Ix、Iy为一阶微分,Ixx、Iyy为二阶微分。通过调节反差参数K,可以获得不同的曲率调节度,从而控制g的下降速度。经典MCM方程的问题在于对于高曲率边缘部分阻力效果依然较差,为此本实施方式中采用如下改进的MCM偏微分方程:其中,为曲线C对时间求偏导数,g为边缘停止函数,为图像I的梯度值,k是图像I的曲率,N为图像I的梯度法向量,K为选定的常数,用于控制g的下降速率,K取值越大,则受的影响越小;Ixx为图像I在x方向上的二阶导数,Iyy为图像I在y方向上的二阶导数,Ixy为先对图像I在x方向求偏导后,再在y反向求偏导数。边缘停止函数g为关于图像梯度的函数,梯度越大,则g越小,越靠近图像边缘,此时驱动进化力量越小;同时,引入增大边缘吸力,其原理如图3所示,图中的闭合曲线表示一个“对象”边缘,假定内部灰度值较外部低。由于梯度模值在边缘达到局部极大值,因此边缘停止函数g达到局部极小值。分别用及曲线表示。由于总是指向g增大的方向,因此不论在物体内部还是外部,总是指向离线边缘的方向。假定曲线C(t)已经于东到物体边缘附近,按规定C(t)的法向N总是指向曲线内部。因此,如果当前曲线位置是处于边界外部,那么N将与方向相反,即为负值,因此与法向方向一致,此时该项作用是使C(t)从外边界外部向更靠近边界方向运动;反之,如果当前曲线位置是在边缘内部,则由于N将与方向一致,即为正值,因此与法向方向相反,即的作用为使C(t)从边界内部向更靠近边界方向运动,因此增大了边缘吸引力。采用水平集方法,由于存在如下转换公式:则公式对应的嵌入函数u的偏微分方程为:改进的MCM偏微分方程采用离散化方法获得迭代求解方程:其中,为n+1时刻嵌入函数u的数据矩阵中第i行第j列的值,为n时刻嵌入函数u的数据矩阵中第i行第j列的值,Δt为迭代步长,为g的导数;在初始迭代时,的取值为迭代求解结束时,为最后的迭代结果,即嵌入函数u的数据矩阵中不为0的点为图像的边缘。图4给出了本实施方式中图像的快速连续边缘提取的过程示意图:a为一条待检测的线段,b为采用微分检测算子Canny进行边缘检测得到边缘检测结果,E为检测到的断点位置,C为E的邻域像素点,这两类点通过步骤3获得;d为由C与E构造的矢量射线,e为沿C与E构造的矢量射线进行延拓获得的结果,f为图a的断裂边缘连接结果,g为f的膨胀图,h为g的边缘封闭曲线,由图可见,该曲线将真实边缘封闭与曲线内。以图g为基础构造改进MCM模型的初始曲线,并通过曲线的收缩求解最终的目标边缘。由于这种方法已经使迭代边缘位于原图边缘附近,因此可以通过较少次迭代完成边缘提取,同时由于改进的MCM偏微分方程具有自合并分离特性,因此可以合并因此可以合并距离图中的琐碎区域,从而以较好的粒度保证了图像分割的尺度。实验分析:采用CPU主频3.2GHz,内存2G作为实验环境,MATLAB编程。为了更好地说明本发明方法的有效性,采用自然景物、建筑物、人物三中不同类别的图像作为实验数据,图5~图7给出了一组实验结果。图5~图7中,a为原始图像,b~d分别为采用文献A(DiJia,Cheng-longXiao,Jin-guangSun,‘Edgedetectionmethodofgaussianblockdistance’,IEEEInternationalConferenceonImageProcessing,2015,pp.3049-3053)、文献B(MarceloPereyra,HadjBatatia,SteveMcLaughlin,‘ExploitingInformationGeometrytoImprovetheConvergenceofNonparametricActiveContours’,IEEETransactionsonimageprocessing,2015,24,(3),pp.836-845)、Canny算子获得的边缘检测实验结果。从实验结果上看,b与d检测边缘的细致程度优于c,但c的边缘连续性好,如图5中的花朵、图6中的建筑屋顶、图7中的标致及文字。e为采用步骤1-4获得的边缘延拓结果,由图可见,已将断裂边缘进行连接。对比图5~图7中e与d可见,e已经较好地修补了d中的边缘断裂部分,尽管采用步骤1-4的这种方法可能会产生不真实的边缘,但通过改进的MCM偏微分方程迭代求解,在迭代过程中自动求解获得图像的真实边缘。以e作为输入,迭代50次获得f,可以明显看出,f不仅较好地处理了由修补伪边缘,而且所提取边缘的连续性好。g~j分别为b、d、e、f的局部放大图,观察j给出的标记区域可见,本发明方法获得的边缘连续性更佳,例如图5中的g与i的叶片部分连续性差,而图5中的h没有检测出这部分区域;图6中的黑色屋顶、图7中的手臂及身体边缘部分都存在相同的问题。表1给出了边缘检测的处理时间对比数据。随着图像尺寸的减小,所有边缘检测的处理时间均呈下降趋势。其中,Canny算子的处理速度最快,文献A方法的处理速度高于Canny方法。文献B是一种基于水平集类的方法,需要迭代求解,因此速度慢于前两种方法。由于本发明方法的处理时间以Canny微分算子为基础,因此处理时间略长于Canny方法,但与文献A及文献B中方法相比处理时间要少很多,均小于1秒。表1处理时间对比(秒)图像尺寸Canny文献A文献B本方法自然景物290*2900.080.595.630.32建筑物320*2400.0780.565.20.23人物240*2400.0560.523.60.12当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1