本发明涉及计算机图形学领域,尤其涉及一种直线特征匹配方法及系统。
背景技术:
直线特征是建筑物等人工场景的主要轮廓特征,在建筑物的三维模型结构中起着控制性作用。在图片中,直线特征是图片中非常重要的中层描述符号,对比与点特征,直线特征更能反映图片中的整体几何拓扑关系。在整体直线特征中,即使部分直线受到遮挡不可见,其余部分仍可提供足够的信息用于建筑物的三维模型重建。对于建筑物而言,如何从图片中提取建筑物的直线特征,并实现直线特征的匹配是对建筑物三维模型结构描述的关键。
在常用的直线段匹配算法主要考虑直线段的几何属性及邻域灰度信息,如黄良明等利用几何代数来匹配线段,其中每条直线段用它的中点向量、长度、方向向量组成的三元组表示;王志衡等人通过计算直线邻域内的灰度、梯度和梯度幅值建立直线描述来实现直线特征的匹配,另外还有一些加入其他的几何约束方法完成的直线匹配。在拍摄的建筑物图片中由于遮挡、光照以及提取算法缺失等因素的影响,可能会破坏在不同图片中匹配直线属性的一致性,使得直线特征的匹配还存在着很多的问题。一般任务场景需同时处理多种类型的图像,这就要求直线匹配算法能够应用于各种图像类型。而现有的直线匹配方法只局限于匹配直线属性的一致性较高的情况,不具有通用性。
技术实现要素:
本发明提供一种直线特征匹配方法及系统,解决现有技术中直线特征匹配只局限于匹配直线属性的一致性较高的情况,不具有通用性的技术问题。
本发明的目的是通过以下技术方案实现的:
一种直线特征匹配方法,包括:
获取数字图像;
对所述数字图像利用尺度不变特征转换SIFT算法进行特征点提取及匹配,以获取匹配点集合;
利用高斯滤波器对所述数字图像进行滤波去噪;
计算所述数字图像中每个像素的梯度幅值和梯度方向,将所述像素点按梯度幅值从大到小的顺序迭代,并将梯度方向相近的像素归为成统一区域;
根据所述统一区域中所有像素的灰度值信息,确定矩形的中心点坐标,其中,矩形的中心线为所述统一区域的直线特征边缘;
获取左右图像中与对应匹配点为端点的虚拟直线段相交的一组直线特征,所述一组直线特征为匹配直线候选集;
根据不同视角图像之间的极线约束关系,计算参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分;
计算左图像中每条直线与右图像中匹配直线候选集中的候选匹配直线的角度相似度,选择所述角度相似度大于预设相似度阈值的候选匹配直线为候选直线,根据线支撑域灰度相似度,计算出直线段灰度均值的相关系数最高的候选直线为匹配直线。
一种直线特征匹配系统,包括:
获取模块,用于获取数字图像;
匹配模块,用于对所述数字图像利用尺度不变特征转换SIFT算法进行特征点提取及匹配,以获取匹配点集合;
滤波模块,用于利用高斯滤波器对所述数字图像进行滤波去噪;
归类模块,用于计算所述数字图像中每个像素的梯度幅值和梯度方向,将所述像素点按梯度幅值从大到小的顺序迭代,并将梯度方向相近的像素归为成统一区域;
第一计算模块,用于根据所述统一区域中所有像素的灰度值信息,确定矩形的中心点坐标,其中,矩形的中心线为所述统一区域的直线特征边缘;
第一直线匹配模块,用于获取左右图像中与对应匹配点为端点的虚拟直线段相交的一组直线特征,所述一组直线特征为匹配直线候选集;
第二计算模块,用于根据不同视角图像之间的极线约束关系,计算参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分;
第二直线匹配模块,用于计算左图像中每条直线与右图像中匹配直线候选集中的候选匹配直线的角度相似度,选择所述角度相似度大于预设相似度阈值的候选匹配直线为候选直线,根据线支撑域灰度相似度,计算出直线段灰度均值的相关系数最高的候选直线为匹配直线。
本发明提供一种直线特征匹配方法及系统,通过获取数字图像;对所述数字图像利用SIFT算法进行特征点提取及匹配;高斯滤波去噪;像素点归类;获取匹配直线候选集;计算参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分;根据直线几何特性及灰度信息,进行直线特征匹配。提高了直线特征匹配的适用性,降低了对匹配直线属性的一致性的要求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可根据这些附图获得其他的附图。
图1为本发明实施例的一种直线特征匹配方法的流程图;
图2为本发明实施例的一种直线特征匹配系统的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,为本发明实施例提供的一种直线特征匹配方法的流程图,包括:
步骤101、获取数字图像;
步骤102、对所述数字图像利用尺度不变特征转换SIFT算法进行特征点提取及匹配,以获取匹配点集合;
步骤103、利用高斯滤波器对所述数字图像进行滤波去噪;
步骤104、计算所述数字图像中每个像素的梯度幅值和梯度方向,将所述像素点按梯度幅值从大到小的顺序迭代,并将梯度方向相近的像素归为成统一区域;
其中,步骤104具体可以包括:
计算所述数字图像中每个像素的梯度幅值G(x,y)和梯度方向α,其中,
i(x,y)为像素点p(x,y)处的像素值;
将所述像素点按梯度幅值从大到小的顺序,以梯度幅值大于预设角度阈值的像素作为种子点;
通过迭代的方式对种子点的邻域像素进行搜索,查找梯度方向相近的像素点,并将所述像素点归为成统一区域。
步骤105、根据所述统一区域中所有像素的灰度值信息,确定矩形的中心点坐标,其中,矩形的中心线为所述统一区域的直线特征边缘;
其中,步骤105具体可以包括:
利用矩形结构对朝向统一的区域进行逼近,矩形中心点坐标(cx,cy)为其中,g(i)为像素点i的灰度值,x(i)、y(i)是像素点i的坐标。
步骤106、获取左右图像中与对应匹配点为端点的虚拟直线段相交的一组直线特征,所述一组直线特征为匹配直线候选集;
步骤107、根据不同视角图像之间的极线约束关系,计算参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分;
其中,步骤107具体可以包括:
获取所述匹配直线候选集中的候选匹配直线在左图像中对应的极线,获取所述极线与所述参考直线之间的交点;
根据所述交点,确定参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分。
步骤108、根据直线几何特性及灰度信息,进行直线特征匹配;
其中,计算左图像中每条直线与右图像中匹配直线候选集中的候选匹配直线的角度相似度,选择所述角度相似度大于预设相似度阈值的候选匹配直线为候选直线,根据线支撑域灰度相似度,计算出直线段灰度均值的相关系数最高的候选直线为匹配直线。
步骤108具体可以包括:
计算左图像中每条直线与右图像中匹配直线候选集中的候选匹配直线各自的斜率k1,k2;
求出相交直线之间的夹角σ,其中,σ=arctanK1-arctanK2;
直线角度相似度为An_sim(LA,LB)=cos(σA-σB);
其中,σA为左图像中直线LA与直线段的夹角,σB为右图像中候选直线LB与对应直线段的夹角。
线支撑域灰度相似度。以线特征周围灰度分布特征的特定区域,矩阵G(L)为直线L的灰度描述矩阵,包含了L附近结构的灰度信息。
为突出靠近直线像素的重要性,根据距离直线段的垂直距离,每一子区域的均值赋一个距离权重,得到带权重的直线段灰度均值向量
Gw(L)=[w1g1w2g2 … w2r+1g2r+1]T
将带权重的直线段灰度均值的相关系数作为灰度相似性测度
通过计算左图像中每条直线与右图像中对应候选匹配直线的角度相似度大于一定的相似度阈值(例如:0.8)的候选直线,计算出灰度相似性测度最高的候选直线为匹配直线。
本发明提供一种直线特征匹配方法及系统,通过获取数字图像;对所述数字图像利用SIFT算法进行特征点提取及匹配;高斯滤波去噪;像素点归类;获取匹配直线候选集;计算参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分;根据直线几何特性及灰度信息,实现直线匹配。提高了直线特征匹配的适用性,降低了对匹配直线属性的一致性的要求。
本发明实施例还提供了一种直线特征匹配系统,如图2所示,包括:
获取模块210,用于获取数字图像;
匹配模块220,用于对所述数字图像利用尺度不变特征转换SIFT算法进行特征点提取及匹配,以获取匹配点集合;
滤波模块230,用于利用高斯滤波器对所述数字图像进行滤波去噪;
归类模块240,用于计算所述数字图像中每个像素的梯度幅值和梯度方向,将所述像素点按梯度幅值从大到小的顺序迭代,并将梯度方向相近的像素归为成统一区域;
第一计算模块250,用于根据所述统一区域中所有像素的灰度值信息,确定矩形的中心点坐标,其中,矩形的中心线为所述统一区域的直线特征边缘;
第一直线匹配模块260,用于获取左右图像中与对应匹配点为端点的虚拟直线段相交的一组直线特征,所述一组直线特征为匹配直线候选集;
第二计算模块270,用于根据不同视角图像之间的极线约束关系,计算参考直线与所述匹配直线候选集中的候选匹配直线的重叠部分;
第二直线匹配模块280,用于计算左图像中每条直线与右图像中匹配直线候选集中的候选匹配直线的角度相似度,选择所述角度相似度大于预设相似度阈值的候选匹配直线为候选直线,根据线支撑域灰度相似度,计算出直线段灰度均值的相关系数最高的候选直线为匹配直线。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。