本发明涉及一种遥感图像像素级分类方法,特别涉及一种基于自适应卷积核卷积神经网络(adaptivekernelsbasedconvolutionalneuralnetwork,adaptivekernelsbasedcnn)的遥感图像像素级分类方法。
背景技术:
现有的遥感图像像素级分类方法主要有两类:一类是基于人工设计特征的;另一类是基于深度学习特征的。
文献“
技术实现要素:
为了克服现有遥感图像像素级分类方法自适应性差的不足,本发明提供一种基于自适应卷积核卷积神经网络的遥感图像像素级分类方法。该方法首先计算数据点的密度和距离值,然后自适应选取聚类中心为卷积核,最后将学习到的卷积核加入cnn对网络的softmax层进行训练,对训练好的网络进行遥感图像像素级分类。本发明将改进的基于快速寻找和找到密度峰值的聚类算法mcfsfdp,聚类得到自适应卷积核,代入基于预训练卷积核的cnn结构。相对基于k-means聚类人工设定聚类类别预学习的卷积核的cnn结构相比,自适应学习到的卷积核能够有效表征数速记据信息特点并且提高了遥感图像像素级分类效果。
本发明解决其技术问题所采用的技术方案:一种基于自适应卷积核卷积神经网络的遥感图像像素级分类方法,其特点是包括以下步骤:
步骤一、随机从遥感图像r选取m个以像素为中心的图像块
从mt个训练样本中随机选取大小为n×n的n个图像块
步骤二、采用mcfsfdp聚类方法自适应确定卷积核。
将图像块
每一个数据点pj的局部密度ρj计算:
当djk-dc<0,χ(djk-dc)=1,否则χ(djk-dc)=0。dc是一个截断距离,这里表示所有点与点的欧式距离中由小到大排列占总数2%的距离数值。
δj表示数据点pj与比其密度高的所有点pk之间的最近距离,如公式(2)所示:
对于拥有最大密度的点其距离为所有点与点距离的最大值δj=maxk(dkj)。
对于每个数据点pj,都有与其对应的密度值ρj和距离值δj。距离阈值δ为选择数据点为聚类结果的唯一标准。
numv=f(δv)(3)
式中,δv表示距离上有数据点的距离值,numv为δj≥δv的数据点pj的个数。对公式(3)求微分得:
conv=[f(δv+1)-f(δv)]/(δv+1-δv)(4)
conv为数据点个数与距离值的微分。δv和δv+1表示拥有数据点的距离阈值的相邻值δv+1>δv。对公式(4)中距离阈值相邻值δv、δv+1上的conv与conv+1做商,再对结果求绝对值,如公式(5)所示:
quov=|conv/conv+1|(5)
quov表示两个相邻距离阈值上微分的商的绝对值。
当在某距离阈值区间δr(δv-1,δv,δv+1∈δr)上的数据点数numv趋近稳定,即在此距离阈值区间上数据点个数拥有的数据点个数在相差不大。在这个区间的距离阈值δv上存在quov的局部极大值,此时这个距离值δv被确定为自适应距离阈值δa。
当数据点pj的距离δj>δa时,pj被选择为类中心点。将选择到的类中心点pj重新转换为原有大小n×n的图像块,即为自适应卷积核wk。
步骤三、基于自适应卷积核的cnn训练。
基于自适应卷积核的cnn网络结构包括输入层、卷积层、池化层、两个全连接层和一个softmax分类器。
图像块样本
式中,σ表示限制线性单元函数(relu)。
降采样后第k个特征图如公式(7)所示:
这里降采样采用非交叠降采样方式。
使用训练样本训练最后的softmax分类器,训练得到训练好的cnn网络。
步骤四、使用遥感图像测试样本进入上一步训练好的cnn网络,正向计算后得到遥感图像像素级分类。
本发明的有益效果是:该方法首先计算数据点的密度和距离值,然后自适应选取聚类中心为卷积核,最后将学习到的卷积核加入cnn对网络的softmax层进行训练,对训练好的网络进行遥感图像像素级分类。本发明将改进的基于快速寻找和找到密度峰值的聚类算法mcfsfdp,聚类得到自适应卷积核,代入基于预训练卷积核的cnn结构。相对基于k-means聚类人工设定聚类类别预学习的卷积核的cnn结构相比,自适应学习到的卷积核能够有效表征数速记据信息特点并且提高了遥感图像像素级分类效果。
下面结合附图和具体实施方式对本发明作详细说明。
附图说明
图1是本发明基于自适应卷积核卷积神经网络的遥感图像像素级分类方法中基于自适应卷积核卷积的神经网络示意图。
具体实施方式
参照图1。本发明基于自适应卷积核卷积神经网络的遥感图像像素级分类方法具体步骤如下:
步骤一、数据预处理。
遥感图像r包含r×r个像素点。
首先,随机从遥感图像r选取m个以像素为中心的图像块
然后,从mt个训练样本中随机选取大小为n×n的n个图像块
步骤二、采用mcfsfdp聚类方法自适应确定卷积核。
将图像块
每一个数据点pj的局部密度ρj计算:
当djk-dc<0,χ(djk-dc)=1,否则χ(djk-dc)=0。dc是一个截断距离,这里表示所有点与点的欧式距离中由小到大排列占总数2%的距离数值。
δj表示数据点pj与比其密度高的所有点pk之间的最近距离,如公式(2)所示:
对于拥有最大密度的点其距离为所有点与点距离的最大值δj=maxk(dkj)。
对于每个数据点pj,都有与其对应的密度值ρj和距离值δj。距离阈值δ为选择数据点为聚类结果的唯一标准。
numv=f(δv)(3)
δv表示距离上有数据点的距离值,numv为δj≥δv的数据点pj的个数。对公式(3)求微分得:
conv=[f(δv+1)-f(δv)]/(δv+1-δv)(4)
conv为数据点个数与距离值的微分。δv和δv+1表示拥有数据点的距离阈值的相邻值δv+1>δv。对公式(4)中距离阈值相邻值δv、δv+1上的conv与conv+1做商,再对结果求绝对值,如公式(5)所示:
quov=|conv/conv+1|(5)
quov表示两个相邻距离阈值上微分的商的绝对值。
当在某距离阈值区间δr(δv-1,δv,δv+1∈δr)上的数据点数numv趋近稳定,即在此距离阈值区间上数据点个数拥有的数据点个数在相差不大。在这个区间的距离阈值δv上存在quov的局部极大值,此时这个距离值δv被确定为自适应距离阈值δa。
当数据点pj的距离δj>δa时,pj被选择为类中心点。将选择到的类中心点pj重新转换为原有大小n×n的图像块,即为自适应卷积核。这里把自适应卷积核表示为wk。
步骤三、基于自适应卷积核的cnn训练。
基于自适应卷积核的cnn网络结构包括输入层、卷积层、池化层、两个全连接层和一个softmax分类器。
图像块样本
式中,σ表示限制线性单元函数(relu)。
降采样后第k个特征图如公式(7)所示:
这里降采样采用非交叠降采样方式。
使用训练样本训练最后的softmax分类器,训练得到训练好的cnn网络。
步骤四、遥感图像像素级分类。
使用遥感图像测试样本进入上一步训练好的cnn网络,正向计算后得到遥感图像像素级分类。