一种基于光学卫星遥感影像的船只自动匹配方法

文档序号:8617 发布日期:2021-09-17 浏览:30次 英文

一种基于光学卫星遥感影像的船只自动匹配方法

技术领域

本发明涉及光学遥感影像处理

技术领域

,具体涉及一种基于光学卫星遥感影像的船只自动匹配方法。

背景技术

近年来,随着静止光学轨道卫星和视频卫星的发射,使连续观测大面积区域内的船只成为可能,也为船只匹配提供了丰富的数据源。船只作为海上主要的运输载体,船只匹配无论在军事领域还是民用领域都具有重要价值。船只匹配可以找到两幅影像中的相同船只,获取船只的分布情况及特定船只的动向,为监管海上交通,监督非法排放污染物和非法捕捞等违法行为提供可靠的数据支撑。

在光学卫星遥感影像中,船只体积较小、纹理较少,特征不清晰,加上海面噪声、云层及海上其他目标的干扰,给船只匹配带来一定困难。现有的船只匹配方法大致分为船只检测和船只匹配两个步骤。

船只检测的主要方法有背景差分法和显著性检测。背景差分法对复杂背景下的运动船只检测有着良好的效果,但是对环境噪声较为敏感且只能检测固定背景下移速较快的船只,对于锚泊船只和移速较慢的船只检测效果较差。目前应用较多的显著性检测方法是基于对比度的显著性检测,具有计算效率高、可以输出全分辨率显著图的优点,但容易在局部物体上产生响应,在有云层覆盖或有其他海面目标干扰时容易失效。

船只匹配主要通过SIFT、SURF、ORB等方法进行局部特征点提取,再进行匹配。由于船只在卫星遥感影像中的占比较小,特征不明显,并且计算整幅影像的特征点产生的冗余数据较多,所以采用这种方法进行船只匹配的效果不是很理想。

发明内容

基于现有技术中存在的问题,本发明提出一种基于光学卫星遥感影像的船只自动匹配方法,该方法能够由粗到精的实现船只检测,并能够精确匹配目标船只,实现光学卫星遥感影像的船只自动匹配。

本发明采用以下的技术方案:

一种基于光学卫星遥感影像的船只自动匹配方法,包括以下步骤:

(1)定义拍摄时间在前的光学卫星遥感影像为p1,拍摄时间在后的光学卫星遥感影像为p2,对pi分别进行粗分类,得到粗分类结果影像ki,i表示第i幅影像,(i=1,2);

进一步地,步骤(1)中所述粗分类过程如下:

(1.1)使用标准差为0、大小为5×5的高斯矩阵对pi进行高斯滤波平滑,将平滑后影像转为灰度影像gi,公式如下:

gi=Ri·0.299+Gi·0.587+Bi·0.114

式中,Ri、Gi、Bi分别表示pi高斯平滑后的红、绿、蓝三个通道,其中,高斯平滑使用的高斯矩阵如下:

(1.2)计算灰度影像gi的边缘梯度影像Gradi,公式如下:

式中,Gix表示gi横向边缘检测的灰度影像,Giy表示gi纵向边缘检测的灰度影像;

(1.3)利用阈值Tia对步骤(1.2)得到的边缘梯度影像Gradi进行二值化处理,得到掩膜图像ωi,阈值Tia计算公式如下:

Tia=max(Gradi)·0.2

(1.4)基于掩膜图像ωi得到灰度影像gi的目标区域ai,计算ai灰度直方图Hi的频率变化值vi[r],得到影像自适应分割阈值Tib,利用Tib对gi进行分割,大于阈值Tib的为前景区域,小于阈值Tib的为背景区域,定义分割后前景区域的像素值为1,背景区域的像素值为0,得到分割结果fi

上述技术方案中,前景中包含船只和一些其他目标,背景中包含海水和一些其他目标。其他目标包括云层、岛屿和噪声等。

其中,Tib计算公式如下:

式中,himean表示图像灰度频率的平均值,hi[r]表示灰度值为r处的频率(r=0,1,…,255),vi[r]表示灰度值r处的频率变化值(r=0,1,…,255),表示频率变化值最小处的灰度值;

(1.5)分别使用2×2内核对fi进行腐蚀和膨胀,得到粗分类结果影像ki

(2)用矩形模板对粗分类结果影像k1、k2进行匹配,去除非船只连通域,提取船只目标区;

具体步骤如下:

(2.1)定义影像左上角点为原点,向右为x轴正方向,向下为y轴正方向;

(2.2)计算k1、k2中每个连通域的最小外接矩形,获取每个连通域的长度、宽度和角度,长度、宽度为对应最小外接矩形的长度、宽度,角度为最小外接矩形长边延长线与x轴正方向在x轴上方的夹角,计算连通域的长宽比,只保留长宽比大于1.5且小于15的连通域,得到剩余连通域;

(2.3)分别计算k1、k2中每个剩余连通域的船只矩形模板,得到k1的模板集合TEM1={temple1,1,temple1,2,…}和k2的模板集合TEM2={temple2,1,temple2,2,…};

进一步地,步骤(2.3)中所述模板的计算过程如下:

模板中前景的长度和角度分别为对应连通域的长度和角度,以船长L为一个区间划分真实船只数据,统计每个区间的船只平均长宽比,根据连通域的近似真实长度length'所在区间c确定模板前景的长宽比计算模板中前景宽度width,前景宽度width计算公式如下:

式中,length表示模板中前景长度,e表示统计数据中船长区间c内的船只个数,δ表示统计数据中的船只长宽比,res表示遥感影像空间分辨率;

根据模板中前景长度、宽度和角度对粗分类影像k1中每个连通域生成对应的模板影像temple1,1、temple1,2、…,得到集合TEM1,对粗分类影像k2中每个连通域生成对应的模板影像temple2,1、temple2,2、…,得到集合TEM2,模板中前景区域的像素值为1、背景区域的像素值为0。

进一步地,所述船长L为0-50米。

当L为50米时,的具体值如下:

(2.4)使用TEM1对粗分类影像k1进行模板匹配,使用TEM2对粗分类影像k2进行模板匹配;

进一步地,步骤(2.4)中所述匹配方法为:

设定阈值TS,模板从影像原点开始滑动,每次滑动一个像素,遍历整幅影像,在每个位置计算模板与模板覆盖区的相似性得分S,若相似性得分大于TS则认为匹配成功,记录匹配成功时模板四个角点坐标,标记为船只目标区,若同一连通域被标记多次,则只保留相似性得分最高的一次作为船只目标区;

其中,计算相似性得分S公式如下:

式中,temple表示模板,X表示连通域,N(·)代表区域(·)内像素值为1的像素个数。

进一步地,步骤(2.4)中所述阈值TS=0.8。

(2.5)扩充船只目标区,确保船只完全包含在船只目标区内;

进一步地,步骤(2.5)中所述扩充公式如下:

式中,(x'1,y'1)、(x'2,y'2)分别表示船只目标区扩充后的左上角点和右下角点的坐标,(x1,y1)、(x2,y2)表示原船只目标区的对应坐标。

(3)将扩充后的船只目标区四个角点坐标输入到GrabCut算法中,精确提取遥感影像p1、p2中的船只,得到提取后的影像z1和z2

进一步地,步骤(3)中船只精确提取流程如下:

(3.1)船只目标区内的船只为需要被分割出的前景,海水和其余目标为背景,在RGB空间中分别对p1、p2的前景和背景用高斯混合模型建模,将船只目标区外的像素标记为背景,将船只目标区内的像素标记为可能的前景或背景,使用K均值算法初始化高斯混合模型,取K=5,给每个像素分配合适的高斯分量,第n个像素的高斯分量表示为kn

(3.2)分别计算p1、p2整幅影像的Gibbs能量E(α,k,θ,z),公式如下:

式中,α表示不透明度,α∈{1,0},θ={π(α,k),μ(α,k),∑(α,k),α=0,1,k=1,...,K},z表示影像灰度值数组,U表示区域能量函数,π表示高斯分量的权重、μ表示每个高斯分量的均值向量、∑表示协方差矩阵,V表示边界能量函数,γ=50,C表示某个像素点与相邻像素点组合的集合,m、n表示两邻域像素,β表示影像像素之间的对比度;

(3.3)更新遥感影像p1、p2中每个像素的高斯分量和高斯混合矩阵的参数直至收敛,找到能量函数E(α,k,θ,z)的最小值,获取p1、p2前景和背景的最佳分割界限,得到船只精确提取后影像z1、z2

(4)计算提取后的影像z1、z2中每艘船只的特征向量;

进一步地,步骤(4)中计算步骤如下:

计算z1、z2中每艘船只的最小外接矩形,得到船只的面积area、长宽比lwr、角度dir和最小外接矩形面积areaMER,从而得到遥感影像p1、p2中的每艘船只的特征向量P1w=(recw,areaw,lwrw,dirw)和P2j=(recj,areaj,lwrj,dirj),其中w表示p1中提取到的第w艘船只,j表示p2中提取到的第j艘船只,rec表示矩形度;

其中,矩形度rec计算公式如下:

(5)利用船只特征向量对遥感影像p1、p2中的船只进行匹配,输出船只匹配结果。

进一步地,步骤(5)中匹配过程如下:

(5.1)计算p1中每艘船只的特征向量与p2中每艘船只的特征向量间的相似度,建立两幅影像船只间的二分图,二分图的左顶点表示p1中的船只,右顶点表示p2中的船只,将相似度大于阈值Td的船只进行连线,连线的权值为两艘船只特征向量间的相似度;

进一步地,步骤(5.1)中阈值Td=0.6。

进一步地,步骤(5.1)中相似度计算公式如下:

式中,R(P1w,P2j)表示p1中第w艘船只与p2中第j艘船只之间的相似度,0≤R(P1w,P2j)≤1,分别表示P1w和P2j的均值。

(5.2)对二分图的每个顶点赋初始分数,左边顶点初始分数为与其相连边的最大权值,右边顶点初始分数为0;

(5.3)将连线左右两端顶点分数相加,若相加得分大于或等于连线的权值,则认为连线两边是同一艘船只,当p1中两艘船只匹配到p2中的同一艘船只时,匹配发生冲突,设定特定值d=0.1,将两冲突连线对应的左边顶点分数减d,右边顶点分数加d;

(5.4)重复步骤(5.3),当冲突连线对应的左顶点分数为0时,放弃对此船只的匹配,继续匹配其它船只,直至完成所有船只的匹配,输出船只匹配结果。

(三)有益效果

提出一种基于光学卫星遥感影像的船只自动匹配方法,该方法能有效地排除海面噪声、云层及海面其他目标的干扰,在移动背景和固定背景下都能够精确提取船只,在船只特征少、纹理不清晰的情况下也能够实现船只的自动匹配;

提出一种自适应阈值的方法对光学遥感影像进行粗分类,提取可能的前景目标,然后自动生成模板对前景目标中的船只进行精确定位,通过GrabCut算法精确提取船只,由粗到精缩小检测范围,避免了GrabCut算法的交互式操作,排除了云层、海上其他目标和海上噪声的干扰,实现了船只的自动检测;构建两幅影像船只间的二分图,通过特征向量间的相似度对其进行赋权,解决了船只特征点较少的问题,实现了船只的自动匹配。

附图说明

图1为本发明实施的步骤流程示意图;

图2为本发明粗分类结果图;

图3为本发明统计的船长与长宽比统计图;

图4为本发明制作的船长区间模板示意图;

图5为本发明船只提取结果图;

图6为本发明船只匹配二分图示意图。

具体实施方式

为使本发明的目的、内容和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作一步详细描述:

参照图1,本发明的具体实施步骤为:

(1)定义拍摄时间在前的光学卫星遥感影像为p1,拍摄时间在后的光学卫星遥感影像为p2,对pi分别进行粗分类,得到粗分类结果影像ki,i表示第i幅影像(i=1,2);

粗分类过程如下:

1.1)使用标准差为0、大小为5×5的高斯矩阵对pi进行高斯滤波平滑,将平滑后影像转为灰度影像gi,公式如下:

gi=Ri·0.299+Gi·0.587+Bi·0.114

式中,Ri、Gi、Bi分别表示pi高斯平滑后的红、绿、蓝三个通道,其中,高斯平滑使用的高斯矩阵如下:

1.2)计算灰度影像gi的边缘梯度影像Gradi,公式如下:

式中,Gix表示gi横向边缘检测的灰度影像,Giy表示gi纵向边缘检测的灰度影像;

1.3)利用阈值Tia对步骤2)得到的边缘梯度影像Gradi进行二值化处理,得到掩膜图像ωi,阈值Tia计算公式如下:

Tia=max(Gradi)·0.2

1.4)基于掩膜图像ωi得到灰度影像gi的目标区域ai,计算ai灰度直方图Hi的频率变化值vi[r],得到影像自适应分割阈值Tib,利用Tib对gi进行分割,分割后前景区域的像素值为1,背景区域的像素值为0,前景中包含船只和一些其他目标,背景中包含海水和一些其他目标,得到分割结果fi

其中,Tib计算公式如下:

式中,himean表示图像灰度频率的平均值,hi[r]表示灰度值为r处的频率(r=0,1,…,255),vi[r]表示灰度值r处的频率变化值(r=0,1,…,255),表示频率变化值最小处的灰度值;

1.5)分别使用2×2内核对fi进行腐蚀和膨胀,得到粗分类结果影像ki,示例如图2所示。

(2)用矩形模板对粗分类结果影像k1、k2进行匹配,去除非船只连通域,提取船只目标区;

具体步骤如下:

2.1)定义影像左上角点为原点,向右为x轴正方向,向下为y轴正方向;

2.2)计算k1、k2中每个连通域的最小外接矩形,获取每个连通域的长度、宽度和角度,长度、宽度为对应最小外接矩形的长度、宽度,角度为最小外接矩形长边延长线与x轴正方向在x轴上方的夹角,计算连通域的长宽比,只保留长宽比大于1.5且小于15的连通域,得到剩余连通域;

2.3)分别计算k1、k2中每个剩余连通域的船只矩形模板,得到k1的模板集合TEM1={temple1,1,temple1,2,…}和k2的模板集合TEM2={temple2,1,temple2,2,…};

模板的计算过程如下:

模板中前景的长度和角度分别为对应连通域的长度和角度,以船长50米为一个区间划分真实船只数据,统计每个区间的船只平均长宽比,根据连通域的近似真实长度length'所在区间c确定模板前景的长宽比计算模板中前景宽度width,前景宽度width计算公式如下:

式中,length表示模板中前景长度,e表示统计数据中船长区间c内的船只个数,δ表示统计数据中的船只长宽比,res表示遥感影像空间分辨率,的值如图3所示,具体如下:

根据模板中前景的长度、宽度和角度对粗分类影像k1中每个连通域生成对应的模板影像temple1,1、temple1,2、…,得到集合TEM1,对粗分类影像k2中每个连通域生成对应的模板影像temple2,1、temple2,2、…,得到集合TEM2,模板中前景区域的像素值为1、背景区域的像素值为0,每个船长区间的模板示例如图4所示;

2.4)使用TEM1对粗分类影像k1进行模板匹配,使用TEM2对粗分类影像k2进行模板匹配,匹配方法为:设定阈值TS=0.8,模板从影像原点开始滑动,每次滑动一个像素,遍历整幅影像,在每个位置计算模板与模板覆盖区的相似性得分S,若相似性得分大于TS则认为匹配成功,记录匹配成功时模板四个角点坐标,标记为船只目标区,若同一连通域被标记多次,则只保留相似性得分最高的一次作为船只目标区;

其中,计算相似性得分S公式如下:

式中,temple表示模板,X表示连通域,N(·)代表区域(·)内像素值为1的像素个数;

2.5)扩大船只目标区,确保船只完全包含在船只目标区内,扩充公式如下:

式中,(x'1,y'1)、(x'2,y'2)分别表示船只目标区扩充后的左上角点和右下角点的坐标,(x1,y1)、(x2,y2)表示原船只目标区的对应坐标。

(3)将扩充后的船只目标区四个角点坐标输入到GrabCut算法中,精确提取遥感影像p1、p2中的船只,得到提取后的影像z1和z2

船只精确提取流程如下:

3.1)船只目标区内的船只为需要被分割出的前景,海水和其余目标为背景,在RGB空间中分别对p1、p2的前景和背景用高斯混合模型建模,将船只目标区外的像素标记为背景,将船只目标区内的像素标记为可能的前景或背景,使用K均值算法初始化高斯混合模型,取K=5,给每个像素分配合适的高斯分量,第n个像素的高斯分量表示为kn

3.2)分别计算p1、p2整幅影像的Gibbs能量E(α,k,θ,z),公式如下:

式中,α表示不透明度,α∈{1,0},θ={π(α,k),μ(α,k),∑(α,k),α=0,1,k=1,...,K},z表示影像灰度值数组,U表示区域能量函数,π表示高斯分量的权重、μ表示每个高斯分量的均值向量、∑表示协方差矩阵,V表示边界能量函数,γ=50,C表示某个像素点与相邻像素点组合的集合,m、n表示两邻域像素,β表示影像像素之间的对比度;

3.3)更新遥感影像p1、p2中每个像素的高斯分量和高斯混合矩阵的参数直至收敛,找到能量函数E(α,k,θ,z)的最小值,获取p1、p2前景和背景的最佳分割界限,得到船只精确提取后影像z1、z2,示例如图5所示。

(4)计算提取后的影像z1、z2中每艘船只的特征向量,计算步骤如下:

计算z1、z2中每艘船只的最小外接矩形,得到船只的面积area、长宽比lwr、角度dir和最小外接矩形面积areaMER,从而得到遥感影像p1、p2中的每艘船只的特征向量P1w=(recw,areaw,lwrw,dirw)和P2j=(recj,areaj,lwrj,dirj),其中w表示p1中提取到的第w艘船只,j表示p2中提取到的第j艘船只,rec表示矩形度;

其中,矩形度rec计算公式如下:

(5)利用船只特征向量对遥感影像p1、p2中的船只进行匹配,输出船只匹配结果。

其中,匹配过程如下:

5.1)计算p1中每艘船只的特征向量与p2中每艘船只的特征向量间的相似度,建立两幅影像船只间的二分图,二分图的左顶点表示p1中的船只,右顶点表示p2中的船只,将相似度大于阈值Td=0.6的船只进行连线,连线的权值为两艘船只特征向量间的相似度,相似度计算公式如下:

式中,R(P1w,P2j)表示p1中第w艘船只与p2中第j艘船只之间的相似度,0≤R(P1w,P2j)≤1,分别表示P1w和P2j的均值;

5.2)对二分图的每个顶点赋初始分数,左边顶点初始分数为与其相连边的最大权值,右边顶点初始分数为0,构造的二分图示例如图6所示;

5.3)将连线左右两端顶点分数相加,若相加得分大于或等于连线的权值,则认为连线两边是同一艘船只,当p1中两艘船只匹配到p2中的同一艘船只时,匹配发生冲突,设定特定值d=0.1,将两冲突连线对应的左边顶点分数减d,右边顶点分数加d;

举例说明匹配发生冲突的情况:图6中,当a3选择权值为0.9的连线对b1进行匹配时,与a1权值为0.8的连线冲突,此时将a1和a3的分数分别减0.1,将b1的分数加0.1,发现a1与b2间权值为0.75的连线符合匹配要求,于是a1与b2配对,a3与b1配对,解决冲突;

5.4)重复步骤5.3),当冲突连线对应的左顶点分数为0时,放弃对此船只的匹配,继续匹配其它船只,直至完成所有船只的匹配,输出船只匹配结果。

经过匹配运算,图6中左边顶点的分数分别变为0.7、0.75、0.8、0.77,右边顶点的分数分别变为0.1、0、0.1、0,最终匹配成功的船只为(a1,b2)、(a2,b4)、(a3,b1)、(a4,b3)。

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:基于PCA-UVE-ELM的光谱分类方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!