庄启智1,4,程亮1,2,3,4,陈德良5,袁一1,4,李满春
(1.南京大学 江苏省地理信息技术重点实验室,南京 210023;2.南京大学 中国南海研究协同创新中心,南京 210023;3.南京大学软件新技术与产业化协同创新中心,南京 210023;4.南京大学 地理与海洋科学学院,南京 210023;5.南京邮电大学 地理与生物信息学院,南京 210023;6.南京师范大学 江苏省地理信息资源开发与利用协同创新中心,南京 210023)
海洋中岛礁不仅具有自然资源价值,还含有重要的政治、军事战略价值。但是多源遥感影像数据之间定位存在较大误差,因此有必要对岛礁遥感影像匹配进行研究。遥感影像匹配是对两幅或者多幅由不同卫星传感器、不同时间、不同自然条件获取的影像进行互相叠加的方法[1]。遥感影像匹配技术可以划分为基于灰度与基于特征两类图像配准技术,为解决旋转与尺度变化的问题,基于局部不变特征的匹配技术逐渐取代了基于特征的图像配准技术。
Mikolajczyk等[2-3]对不同特征提取、特征描述算法进行比较,发现MSER(maximally stable extremal regions)提取算子鲁棒性更好,SIFT(scale invariant feature transformation)描述子特征描述更优秀。高健等[4]考虑局部颜色信息,使得SIFT描述子能更好的应用彩色图片中。程亮等[5]提出了结合最优特征提取算法MSER算子与最优特征描述子SIFT描述子,使用RANSAC(random sample consensus)筛选特征匹配对,对提高建立图像对之间的变换模型有重要意义。南海地区岛礁影像存在纹理特征缺失或不稳定的问题[6-8]。Seitz等[9]通过增加图像数量弥补纹理缺乏的缺陷。程亮等[10-11]在基于局部不变特征图像配准基础上,对海岸线进行提取进行配准。Michael等[12]对火星影像的匹配采用识别图像中火星坑的方案进行配准。
本文对岛礁遥感影像提出一种轮廓特征与仿射不变特征融合匹配优化算法。根据岛礁轮廓特征弥补影像纹理缺失产生大量错误匹配对问题,结合最优特征提取算法与最优特征描述子并自动优化匹配对。本文算法在无先验知识情况下,若对岛礁遥感影像直接进行精确匹配,难度大并且难以保证可靠性,所以从岛礁遥感影像实际需求出发,实现自动粗匹配,增加岛礁遥感影像匹配的有效性与适用性。
本文算法的基本流程如图1所示。
图1 岛礁遥感影像特征匹配优化算法的流程图
Mikolajczyk等对多种仿射不变特征提取算法进行比较,在多数情况下MSER算子匹配能力最佳,但MSER算子提取图像面特征,其定位精度低。本文自动匹配目标是实现自动粗匹配,算法稳定性要求大于匹配精度,所以选取鲁棒性更好地MSER特征提取算子与SIFT特征描述子结合,完成仿射不变特征提取。
1)轮廓特征提取。岛礁遥感影像中主要包含岛礁、海水、云层、云层阴影,由于海洋、大气等因素影像,影像存在较多云层斑块与其阴影,对轮廓提取影响大。对直接提取轮廓算法(Canny算子等),阈值选择小,则云块、浪花轮廓信息被提取,增加错误匹配对数量,阈值选择大,云块轮廓信息可以较好地过滤,但是相应的岛礁轮廓信息会缺失。对云块、浪花等干扰项,可对影像进行聚类处理,去除干扰项同时能对岛礁轮廓有效提取。利用岛礁轮廓特征可以构建空间解算模型,对不符合匹配对筛除。
Fukunaga等[13]提出MeanShift算法,Cheng等[14]对其定义了核函数与权值系数,使MeanShift算法广泛应用。MeanShift图像分割基本原理为,通过有限次迭代计算,可以收敛到图中概率密度最大的位置,即数据分布的稳定点,将相同稳定点的像素聚类到同一区域,可用如下公式表示:
(1)
式中:xi表示待聚类样本点;yk表示点当前位置;yk+1表示点的下一位置;h表示带宽。
MeanShift算法是一种高效的非参数、迭代模式搜索方法[15]。其完全依靠特征空间中样本点进行分析,不需要聚类数目等先验知识,近年来广泛应用于图像分割、图像滤波等计算机视觉领域[16]。如图2所示,为长线礁MeanShift前后轮廓特征对比。
图2 长线礁遥感图像聚类前后轮廓特征对比
2)特征距离筛选。SIFT描述子对MSER算子提取的特征点描述构成了128维特征向量,虽然经过轮廓特征筛选,但由于轮廓特征存在误差,导致仍存在错误比配对。
Lowe证明得到用欧式距离来衡量特征之间相似度的条件如下:
(2)
式中:δ代表正确影像中某个局部特征的描述子;qi表示待匹配影像q第i个特征的局部特征描述子。是Lowe在比较SIFT特征时找到的经验最优值,即认为当第一近邻与次近邻的距离比值小于0.8时,该近邻可靠,否则去除输入影像的这个局部特征。
经过欧氏距离作为相似性度量筛选后,再通过RANSAC算法筛选[17]。主要问题是RANSAC阈值选择,严格的RANSAC阈值不但去除错误的匹配对,也去除部分正确的匹配对,宽松的RANSAC阈值虽然能保留所有正确的匹配对,但也保留了部分错误的匹配对。
3)特征匹配优化。特征匹配优化需根据预定目标,在匹配正确率指导下逐步调整RANSAC一致性检测的容差阈值。具体步骤为:
①确定RANSAC初始阈值与同名特征区域。
②根据特征匹配结果计算单应矩阵:
(3)
式中:P2表示正确特征点坐标;P1表示待匹配特征点坐标;H表示单应矩阵。
③将单应矩阵应用至同名特征区域,计算匹配正确率[18],计算公式如下:
(4)
式中;Ratio表示匹配正确率;NB表示正确匹配数目;NM表示匹配对总数。
④判断匹配正确率。若匹配正确率未达到预定目标,需要根据目标需求调整RANSAC阈值进行新一轮计算,若匹配正确率已经达到预定目标,则匹配结束。
在匹配迭代过程中,需要判断实际情况有无优化可能,若发现无优化的可能,直接终止。
为验证所提算法的正确性与有效性,实验设计了4种实验方案。
方案一:最大似然匹配(简称算法一)。
以MSER、SIFT分别作为仿射不变特征提取算子和特征描述符,直接进行特征匹配。
方案二:增加轮廓特征进行筛选(简称算法二)。
①以MSER、SIFT分别作为仿射不变特征提取算子和特征描述符。
②根据MeanShift算法进行聚类并提取轮廓特征。
③利用轮廓特征构建空间解算模型,对不符合匹配对筛除,保留剩余匹配对。
方案三:增加特征距离筛选(简称算法三)。
①以MSER、SIFT分别作为仿射不变特征提取算子和特征描述符。
②根据Lowe比例和RANSAC算法依次对匹配对筛除,保留剩余匹配对。
方案四:利用轮廓特征粗略筛选,迭代确定最优距离阈值与匹配对(简称算法四)。
①以MSER、SIFT分别作为仿射不变特征提取算子和特征描述符。
②根据MeanShift算法进行聚类并提取轮廓特征。
③利用轮廓特征构建空间解算模型,对不符合匹配对筛除,保留剩余匹配对。
④根据Lowe比例对匹配对筛除,迭代确定RANSAC最优距离阈值,筛除误匹配对。
为测试本文岛礁遥感影像轮廓特征与仿射不变特征融合匹配优化算法有效性,对多组不同影像进行实验。实验影像数据为环境一号卫星(HJ-1A)遥感影像,影像空间分辨率30 m,下载于中国资源卫星应用中心网站www.cresda.com/CN,涉及不同形状岛礁、不同尺度影像,选取牛轭礁、安达礁、九章群礁作为研究对象,每组均含有少量云层作为干扰项的影像,如表1所示。实验中,软件开发工具有Windows 10操作系统,Python3.6,OpenCV3.4。
表1 岛礁遥感影像数据
采用MSER特征提取算子和SIFT特征描述子对3组遥感影像进行处理,在提取仿射不变特征基础上,分别应用4种不同算法进行特征匹配。
针对安达礁中分遥感影像,分别按照4种算法进行特征匹配,如图3所示。算法一对115对特征对进行匹配,通过人工目视检查,包含大量误匹配;算法二筛选出82对特征对进行匹配,仍存在大量误匹配;算法三在算法一基础上,筛选出12对特征匹配对,存在误匹配3对,RANSAC阈值为2;算法四最终筛选出9对特征匹配对,无误匹配,RANSAC阈值为2。
图3 安达礁影像匹配优化
针对牛轭礁中分遥感影像,两幅影像均含有较多云块干扰,分别按照4种算法进行特征匹配,如图4所示。算法一对323对特征对进行匹配,包含大量误匹配;算法二筛选出218对特征对进行匹配,仍存在大量误匹配;算法三在算法一基础上,筛选出25对特征匹配对,误匹配2对,RANSAC阈值为5;算法四最终筛选出9对特征匹配对,误匹配2对,RANSAC阈值为5。
针对九章群礁中分遥感影像,分别按照算法一与算法四进行特征匹配,如图5所示。算法一对629对特征对进行匹配,包含大量误匹配;算法四最终筛选出88对特征匹配对,无误匹配对,RANSAC阈值为3。
如表2所示,对岛礁遥感影像仅做MSER特征提取和SIFT特征描述后可以提取大量匹配对,但是存在大量错误匹配对。虽然可以用轮廓信息进行筛选,但是由于轮廓特征描述精度差的原因,导致仅使用轮廓特征筛选后误匹配对并未筛除完全。当使用特征距离与RANSAC算法筛选后,匹配正确率可成倍提高。算法四分别从面特征与特征空间距离逐层筛选,过滤大量错误匹配对。对于第二组牛轭礁实验中,由于参考影像与待匹配影像均含有较多云块,导致最终匹配精度不高。
图4 牛轭礁影像匹配优化(两幅影像均有云干扰)
图5 九章群礁影像匹配优化(大尺度范围)
表2 不同算法匹配结果
本文方法对岛礁遥感影像匹配能够有效提高匹配正确率,面对干扰项较多影像时,虽然也会出现错误匹配对,但是有效地降低了错误匹配对数量,提高了岛礁遥感影像匹配正确率。
针对岛礁遥感影像存在较大定位误差大,影像纹理特征不稳定问题,基于MSER特征提取算子与SIFT特征描述子依次进行轮廓特征筛选与特征距离筛选,再通过迭代得到RANSAC最佳阈值筛选出高精度匹配对,算法有效降低了错误匹配对数量。实验结果表明本文算法可以有效提高岛礁遥感影像匹配正确率,为岛礁遥感影像匹配提供一种参考方法。对于岛礁遥感影像存在云块等干扰导致存在少量误匹配,可求其仿射变换矩阵最小二乘解以减小误差。同时本文通过迭代计算匹配对正确率来优化RANSAC阈值,增加了计算复杂度,仍需在提高匹配效率方面深入研究。