一种基于方向边界线的直线检测方法及系统的制作方法
【技术领域】
[0001] 本发明涉及图像处理技术领域,具体涉及一种图像中基于方向边界线的直线检测 方法及系统。
【背景技术】
[0002] 边缘是图像最基本的特征,边缘检测时图像处理和计算机视觉中最为经典和基础 的问题之一,在物体识别、三维重建、图像匹配、检索等诸多方面有着重要应用。
[0003] 在检测一幅图像中目标物体的直线边界时,一种常用的方法是首先利用边缘检测 算法检测出图像中的所有边缘,然后利用hough变换检测直线边界,最后对直线边界进行 筛选最终确定目标物体的直线边界。这种方法存在的一个问题是当利用边缘检测算法检出 的边缘进行hough变换时,不在同一直线上的点会形成若干干扰直线,导致定位真正的目 标物体边界难度加大,定位的准确性不高。
【发明内容】
[0004] 针对现有技术中存在的缺陷,本发明的目的在于提供一种基于方向边界线的直线 检测方法及系统,消除与实际边界方向不符的直线,提高直线检测的准确性。
[0005] 为实现上述目的,本发明采用的技术方案为:一种基于方向边界线的直线检测方 法,包括以下步骤:
[0006] (1)对待检测图像进行边界线检测,并计算每条边界线的主方向;所述的主方向是 指边界线与X轴的夹角;
[0007] (2)根据每条边界线的主方向,对每条边界线利用hough变换在参数空间进行投 影;
[0008] (3)查找参数空间中的所有极大值点,每个极大值点对应待检测图像中的一条直 线。
[0009] 进一步,如上所述的一种基于方向边界线的直线检测方法,步骤(1)中,计算边界 线主方向的具体方式为:
[0010] 对于边界线1,设其包含m个像素点,计算m个像素点中的任意2个像素点的连线 与X轴的夹角,共计算得到C=个夹角;
[0011] 统计C,〗个夹角中出现次数最多的夹角,出现次数最多的夹角为边界线的主方向。
[0012] 进一步,如上所述的一种基于方向边界线的直线检测方法,步骤(1)中,计算边界 线主方向的具体方式为:
[0013] 对于边界线1,设其包含m个像素点,计算m个像素点中的相邻2个像素点的连线 与X轴的夹角,共计算得到m-Ι个夹角,将所有m-Ι个夹角的平均值作为边界线的主方向。
[0014] 进一步,如上所述的一种基于方向边界线的直线检测方法,步骤(1)中,所述的主 方向的取值范围为[-45°,135° ]。
[0015] 再进一步,如上所述的一种基于方向边界线的直线检测方法,步骤(2)中,根据每 条边界线的主方向,对每条边界线利用hough变换在参数空间进行投影的具体方式为:
[0016] 对于边界线1,设其主方向为dir,dir映射到参数空间对应角度为theta,dir参 数空间的投影范围为[-range,+range];
[0017] 对边界线1上的每个像素点利用hough变换在[theta-range, theta+range]范围 内进行投影。
[0018] 更进一步,如上所述的一种基于方向边界线的直线检测方法,0〈range〈(10/ preA),其中,preA为hough变换的角度精度。
[0019] 一种基于方向边界线的直线检测系统,包括:
[0020] 边界线主方向计算模块,用于对待检测图像进行边界线检测,并计算每条边界线 的主方向;所述的主方向是指边界线与X轴的夹角;
[0021] Hough变换模块,用于根据每条边界线的主方向,对每条边界线利用hough变换在 参数空间进行投影;
[0022] 直线检测模块,用于查找参数空间中的所有极大值点,每个极大值点对应待检测 图像中的一条直线。
[0023] 进一步,如上所述的一种基于方向边界线的直线检测系统,所述的边界线主方向 计算模块包括:
[0024] 方向计算单元,用于计算边界线1的m个像素点中任意2个像素点的连线与X轴 的夹角,共计算得到个夹角;
[0025] 主方向确认单元,用于统计个夹角中出现次数最多的夹角,出现次数最多的夹 角为边界线的主方向。
[0026] 再进一步,如上所述的一种基于方向边界线的直线检测系统,所述的边界线主方 向计算模块包括:
[0027] 方向计算单元,用于计算边界线1的含m个像素点中任意相邻2个像素点的连线 与X轴的夹角,共计算得到m-Ι个夹角;
[0028] 主方向确认单元,用于计算所述的m-Ι个夹角的平均值,将该平均值作为边界线 的主方向。
[0029] 更进一步,如上所述的一种基于方向边界线的直线检测系统,hough变换模块根据 每条边界线的主方向,对每条边界线利用hough变换在参数空间进行投影的具体方式为:
[0030] 对于边界线1,设其主方向为dir, dir映射到参数空间对应角度为theta, dir参 数空间的投影范围为[-range,+range];
[0031] 对边界线1上的每个像素点利用hough变换在[theta-range, theta+range]范围 内进行投影。
[0032] 本发明的有益效果在于:本发明所述的方法及系统,可以大大抑制现有直线检测 方法中hough变换过程产生的干扰直线,消除与实际边界方向不符的直线,提高了目标物 体直线边界的准确性,并在一定程度上加快了直线检测的速度,提高了效率。
【附图说明】
[0033] 图1为本发明【具体实施方式】中一种基于方向边界线的直线检测系统的结构框图; [0034] 图2为本发明【具体实施方式】中一种基于方向边界线的直线检测方法的流程图;
[0035] 图3为【具体实施方式】中待检测图像的边界图像;
[0036] 图4为通过本发明的方法对图3中图像检测出的直线示意图。
【具体实施方式】
[0037] 下面结合说明书附图与【具体实施方式】对本发明做进一步的详细说明。
[0038] 图1示出了本发明【具体实施方式】中一种基于方向边界线的直线检测系统的结构 框图,该系统主要包括边界线主方向计算模块11、Hough变换模块12和直线检测模块13, 其中:
[0039] 边界线主方向计算模块11用于对待检测图像进行边界线检测,并计算每 条边界线的主方向;所述的主方向是指边界线与X轴的夹角;主方向的取值范围为 [-45° ,135° ]。
[0040] 本【具体实施方式】中计算边界线主方向的方式有两种,一种情况下直线主方向计算 模块11包括:
[0041] 方向计算单元,用于计算直线1的m个像素点中任意2个像素点的连线与X轴的 夹角,共计算得到G个夹角;
[0042] 主方向确认单元,用于统计Cj个夹角中出现次数最多的夹角,出现次数最多的夹 角为直线的主方向。
[0043] 另一种情况下,边界线主方向计算模块11包括:
[0044] 方向计算单元,用于计算边界线1的含m个像素点中任意相邻2个像素点的连线 与X轴的夹角,共计算得到m-Ι个夹角;
[0045] 主方向确认单元,用于计算所述的m-Ι个夹角的平均值,将该平均值作为边界线 的主方向。
[0046] Hough变换模块12用于根据每条边界线的主方向,对每条边界线利用hough变换 在参数空间进行投影;该模块实现的具体方式为:
[0047] 对于直线1,设其主方向为dir, dir映射到参数空间对应角度为theta, dir参数 空间的投影范围为[-range,+range];
[0048] 对直线1上的每个像素点利用hough变换在[theta-range, theta+range]范围内 进行投影。
[0049] -般的,0〈range〈(10/preA),其中,preA 为 hough 变换的角度精度。
[0050] 直线检测模块13用于查找参数空间中的所有极大值点,每个极大值点对应待检 测图像中的一条直线。
[0051] 图2示出了本【具体实施方式】中基于图1中所示系统的一种基于方向边界线的直线 检测方法的流程图,该方法包括以下步骤:
[0052] 步骤S21 :对待检测图像进行边界线检测,并计算每条边界线的主方向;
[0053] 对待检测图像进行边界线检测,并计算每条边界线的主方向,所述的主方向是指 边界线与X轴的夹角,主方向的取值范围为[-45°,135° ]。
[0054] 该步骤中,采用现有的图像边界线检测方