本发明涉及图像处理技术领域,尤其是一种图像自适应的特征匹配优化算法。
背景技术:
特征点匹配,是找到两点集之间的对应关系和空间映射关系,以点的位置表示点特征是一种最简单的特征。目前,现有的特征点匹配多用于光线较好区域,现有的特征匹配已无法适用于光线较暗、较模糊等图像特征较少的情况;例如,机场道面检测技术领域,其由于机场道面图像检测绝大多数情况下都在夜间无飞机起飞期间,且机场所设置的进近灯光、着陆灯光和滑行灯光离地距离均较近,其照射在机场道面上的范围是有限的。
因此,急需要对现有的图像拼接的特征匹配进行改进,根据特征点数量自适应,对特征较少的图增加图像特征,从而实现较差环境下图像匹配。
技术实现要素:
针对上述问题,本发明的目的在于提供一种图像自适应的特征匹配优化算法,本发明采用的技术方案如下:
一种图像自适应的特征匹配优化算法,包括以下步骤:
步骤s01,获取待匹配的两幅图像。
步骤s02,采用sufr算法检测特征点,并设定hessian矩阵阈值参数为a,分别得到与两幅图像一一对应的特征点集pts1和特征点集pts2;所述a为大于等于400、且小于等于1200的自然数。
步骤s03,判断特征点集pts1与特征点集pts2的特征点是否大于等于2;若是,则进入步骤s04;否则,进入步骤s07。
步骤s04,采用knnmatch最近邻算法对所述特征点集pts1和特征点集pts2进行特征点筛选。
步骤s05,添加对称约束,以获得特征点集pts1和特征点集pts2一一对应匹配的特征点。
步骤s06,采用ransac算法寻找一个最佳单应性矩阵h,以获得一组匹配的特征点对matches;并判断两幅图像匹配的特征点对matches的对数是否大于5;若是,则进入步骤s07;否则进入步骤s08。
步骤s07,分别采用卷积核为m对两幅图像进行卷积锐化处理,并调低hessian矩阵阈值参数为a,重复一次步骤s04~步骤s05;并进入步骤s08。
步骤s08,对两幅图像匹配的特征点对matches的任一组特征点进行先验知识约束。
步骤s09,判断两幅图像的特征点数量是否大于零,若是,则特征匹配成功;否则,特征匹配失败。
进一步地,所述步骤s02中,hessian矩阵阈值参数为a为1200。
更进一步地,所述步骤s07中,hessian矩阵阈值参数为a为400。
更进一步地,所述步骤s07中,卷积核m的表达式为:
与现有技术相比,本发明具有以下有益效果:
(1)本发明通过严格的surf算法和宽松的surf算法检测特征点,既能保证光线较好区域的图像的特征点检测,又能拆分区别光线较差区域的图像,为光线较差区域的图像锐化处理提供基础。
(2)本发明在knnmatch算法设置同一个点搜索两个最优匹配的点,并且添加对称性约束,以提高特征点匹配准确度。
(3)本发明采用ransac算法寻找一个最佳单应性矩阵,求解这个单应性矩阵可以从全局层面过滤掉一些匹配错误的点,进一步提高特征点匹配的准确度。
(4)由于无人机拍摄的同一位置图像是存在gps误差的,但是这个误差是在一定的精度范围内的;单纯从图像特征来判断匹配是否最优,其较为局限性。而本发明通过增加先验知识的约束,可以筛选掉匹配错误的点,使得匹配结果更加精准。
(5)本发明采用卷积核进行锐化处理,其有效地增加了图像的角点、边缘点等特征,以增加surf提取到的特征点,提高光线较暗的区域的图像特征匹配的成功率。
综上所述,本发明具有特征点匹配准确、流程简单、计算工作量少等优点,在图像处理技术领域具有很高的实用价值和推广价值。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需使用的附图作简单介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对保护范围的限定,对于本领域技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更为清楚,下面结合附图和实施例对本发明作进一步说明,本发明的实施方式包括但不限于下列实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例
如图1所示,本实施例提供了一种图像自适应的特征匹配优化算法,包括以下步骤:
第一步,获取待匹配的两幅图像。
第二步,采用sufr算法检测特征点,并设定hessian矩阵阈值参数为1200,分别得到与两幅图像一一对应的特征点集pts1和特征点集pts2。
第三步,判断特征点集pts1与特征点集pts2的特征点是否大于等于2;若是,则进入第四步;否则,进入第七步。
第四步,采用knnmatch最近邻算法对所述特征点集pts1和特征点集pts2进行特征点筛选。根据空间中距离最近的点属于同一类的可能性越大这个公理,我们把未知点和离它最近的那一个点归为一类。
第五步,添加对称约束,以获得特征点集pts1和特征点集pts2一一对应匹配的特征点。
经过knnmatch后,img1中特征点集pts1中的每个点p1i都会在img2中找到两个最佳匹配点p2i,p3j。img2中特征点集pts2中的每个点pi都会在img1中找到两个最佳匹配点p2,p3。
增加对称约束,即一个好的匹配点满足:
img1的特征点集pts1中点p1在img2的特征点集pts2中匹配的好的点p2;
img2的特征点集pts2中点p2在img1的特征点集pts1中匹配的好的点p1。
第六步,采用ransac算法寻找一个最佳单应性矩阵h,以获得一组匹配的特征点对matches;其中,寻找一个最佳单应性矩阵h为现有技术,在此就不予赘述。
判断两幅图像匹配的特征点对matches的对数是否大于5;若是,则进入第七步;否则进入第八步。
第七步,分别采用卷积核为m对两幅图像进行卷积锐化处理,并调低hessian矩阵阈值参数为400,重复一次第四步、第五步;并进入第八步。其中,该卷积核m的表达式为:
在本实施例中,此步骤不限于图像锐化操作,可以根据具体情况做相应处理。例如对于特征较多的情况,进行高斯模糊处理,就可以减少局部特征,更关注全局特征,相应的提高性能。
第八步,对两幅图像匹配的特征点对matches的任一组特征点进行先验知识约束。例如gps精度在20cm以内,那么如果特征匹配结果出来某图需要移动30cm去匹配上对应特征点,则从matches中删除这组特征点对,过滤该组匹配结果。
第九步,判断两幅图像的特征点数量是否大于零,若是,则特征匹配成功;否则,特征匹配失败。
上述实施例仅为本发明的优选实施例,并非对本发明保护范围的限制,但凡采用本发明的设计原理,以及在此基础上进行非创造性劳动而作出的变化,均应属于本发明的保护范围之内。