说明书基于增量支持向量机的SAR图像多类标场景分类方法
技术领域
本发明属于图像处理技术领域,特别涉及一种图像场景分类方法,可快速准确地处理海量多类标SAR图像。
背景技术
在机器学习领域中,针对多类标学习的研究对于多义性对象学习建模具有十分重要的意义,现在已经逐渐成为国际机器学习界一个新的研究热点。由于客观事物本身的复杂性,一个事物对象可以用单个实例来表示,并且该实例属于多个类别标签,即单实例多类标。单实例多标签的学习方法对图像分类的问题具有重要的意义,但是该方法却很少被应用到SAR图像的场景分类当中。
随着合成孔径雷达SAR技术的发展,SAR图像在分辨率、图像内容和数量上都达到了一定的高度,其应用也越来越广泛。SAR图像的场景分类不同于传统的SAR图像分类技术,场景分类中并不严格追求同类图像间的内容相似性,而是关注于通过某种学习方法挖掘图像内在的语义信息。近年来,学者们针对该问题也做出了一些研究。
武汉大学的殷慧在其博士学位论文“基于局部特征表达的高分辫率SAR图像城区场景分类方法”中研究了高分辨率SAR图像的城区场景解译应用。该论文涉及到局部特征表达和分类技术,中间表达和主题提取技术。主要提出了两种分类算法,分别是:1.基于多维金字塔表达算法和AdaBoost的高分辨率SAR图像的城区场景分类算法;2.基于多维金字塔匹配核和支持向量机的高分辨率SAR图像城区场景分类算法。还提出了两种分类框架,分别是:1.基于两级地物语义的高分辨率SAR图像的城区场景分类框架;2.基于中间表达式和线性判别分析法的高分辨率SAR图像城区场景分类框架。从分类结果看,其研究结果存在的不足是各算法的分类准确率较低,分类时间较长。
发明内容
本发明的目的是针对上述已有技术的不足,提出一种基于增量支持向量机的SAR图像多类标场景分类方法以缩短分类时间,提高分类精度。
实现本发明目的的技术方案是:采用多标签的标记方式,使单幅图像描述内容更加丰富具体,能够通过学习挖掘出图像内部语义信息,提高分类精度,采用增量支持向量机作为分类器,缩短分类时间。其实现步骤包括如下:
(1)将四幅给定的SAR图像分别切割成无重叠的小图像块,每个小图像块的大小均为256*256像素,从这些小图像块形成的图像库中选取肉眼能够清晰识别且信息完整的图像块组成一个数据库,该数据库包括山脉,水域,城市,建筑,池塘和平原这六个类别;
(2)在上述数据库中提取每一幅图像基于contourlet变换的纹理特征和形状特征作为一个特征集,并将该特征集当中的每一个特征向量归一化到0-1之间;
(3)将上述特征集中图像的地物标签矩阵表示为y,当第i幅图像属于第j个类别时,则地物标签矩阵y中的元素y(i,j)=1,否则,y(i,j)=-1,并规定特征集中任意一幅图像至少属于一个类别,其中i=1,…,n,n表示特征集中图像张数,j=1,…,6,表示一共有6个类别;
(4)将上述地物标签矩阵y中的每一列向量作为一个类别的地物标签,得到六组地物标签y(j),j=1,2…6;
(5)从步骤(2)的特征集中随机选取训练样本和测试样本,构成训练样本集和测试样本集其中,xk是第k个训练特征样本,用一个行向量表示,是与xk相对应的第j个类别的地物标签,n是训练样本个数,txk是第k个测试特征样本,用一个行向量表示,是与txk相对应的第j个类别的地物标签,tn是测试样本个数;
(6)对训练样本集采用增量学习的方法进行迭代训练,得到支持向量集合以及该集合中所有支持向量所对应的拉格朗日乘子向量和偏斜量b,其中ps为当前支持向量集合中第s个支持向量,yPs为当前支持向量集合中第s个支持向量所对应的类别标签,αPs是当前支持向量集合中第s个支持向量所对应的拉格朗日乘子,b是一个标量;
(7)根据上述训练得到的支持向量集合Pm、拉格朗日乘子向量α和偏斜量 b,用分类决策函数对测试样本进行识别,得到测试样本的输出矩阵T,其中第k个测试样本对应的输出向量Tk是输出矩阵T中第k个行向量;
(8)判断测试样本的标签:
8a)当测试样本的输出向量Tk中每一个值都小于0时,则第k个测试样本的类别向量为:
8b)当测试样本的输出向量Tk中至少有一个值大于0时,则第k个测试样本的类别向量为:
其中j=1,2…6,j表示类别数,k=1,2…tn,tn表示测试样本数;
8c)根据步骤8a)-8b)的判别结果得到测试样本的标签向量tyk,再由向量tyk构成测试样本的标签矩阵该矩阵对应测试样本的类别,即分类结果。
本发明与现有的技术相比具有以下优点:
1.本发明根据SAR图像特点选取基于contourlet变换的纹理、形状特征,更加全面地反映了SAR图像的特性信息;
2.本发明采用多标签的标记方式,单幅图像描述内容更加丰富具体,能够通过学习挖掘出图像内部语义信息,提高了分类精度;
3.本发明采用增量支持向量机作为分类器,缩短了分类时间。
附图说明
图1是本发明的实现流程图;
图2是本发明仿真使用的四幅切割前的SAR图像;
图3是用本发明对图2切割标注后的图像块。
具体实施方式
以下参照附图,对本发明的具体实现方式及效果作进一步详细描述。
参照图1,本发明的具体实现步骤如下:
步骤1,对SAR图像进行分块,组成一个数据库。
将如图2所示的四幅SAR图像分别切割成无重叠的小图像块,每个小图像块的大小均为256*256像素;
从这些小图像块形成的图像库中选取肉眼能够清晰识别且信息完整的图像块组成一个数据库,该数据库包括山脉,水域,城市,建筑,池塘和平原这六个类别;如图3所示,其中图3(a)是山脉的一组样图,图3(b)是水域的一组样图,图3(c)是城市的一组样图,图3(d)是建筑的一组样图,图3(e)是池塘的一组样图,图3(f)是平原的一组样图。
步骤2,提取图像特征并归一化。
2a)提取基于contourlet变换的纹理特征:对数据库中的每一幅图像进行Contourlet变换后,提取出属于不同尺度不同方向上的系数Ci=(x,y),以Ci=(x,y)的均值μi和标准方差σi作为图像的纹理特征,则特征向量表示为s=(μ1,μ2,..,μi,..,μ2n,σ1,σ2,..,σi,..,σ2n),]]>其中i=1,…,2n;
对均值μi和方差σi分别采用主分量分析法,按照参数从小到大重新排列,得到新的特征向量f1,排列以后的各分量所在位置记做i,其中n表示分解的尺度数;
2b)提取基于contourlet变换的形状特征:对数据库中的每一幅图像运用Canny算子提取边缘,在此基础上再进行Contourlet变换,提取出属于不同尺度不同方向上的系数C′i(x,y),以C′i(x,y)的均值μ′i和标准方差σ′i作为图像的形状特征,则特征向量表示为其中均值μ′0和方差σ′0为低频特征分量,其它为各个方向子带上的特征分量,其中n表示分解的尺度数;
2c)将2a),2b)中提取出的特征向量f1和f2合并成一个特征向量fk,用fk构成特征集并将其归一化到0-1之间,其中fk表示特征集当中的第k幅图像的特征向量,k=1,…,n,n表示数据库中图像张数。
步骤3,将上述特征集中图像的地物标签矩阵表示为y,当第k幅图像属于 第j个类别时,则地物标签矩阵y中的元素y(k,j)=1,否则,y(k,j)=-1,并规定该特征集中任意一幅图像至少属于一个类别,其中k=1,…,n,n表示特征集中图像张数,j=1,…,6,表示一共有6个类别;
步骤4,将上述地物标签矩阵y中的每一列向量作为一个类别的地物标签,得到六组地物标签y(j),j=1,2…6。
步骤5,从步骤2的特征集中随机选取训练样本和测试样本,构成训练样本集和测试样本集其中,xk是第k个训练特征样本,用一个行向量表示,是与xk相对应的第j个类别的地物标签,n是训练样本个数,txk是第k个测试特征样本,用一个行向量表示,是与txk相对应的第j个类别的地物标签,tn是测试样本个数。
步骤6,对上述训练样本集采用增量支持向量机的学习方法进行迭代训练。
6a)把第一个训练样本x1作为支持向量,得到一个初始的支持向量集合Pm={x1,y1},其中m=1,y1是支持向量x1所对应的标签;
6b)由上述初始支持向量集合中的支持向量x1及其所对应的标签y1计算核相关矩阵Rm+1-1=0y1y1y1y1K(x1,x1)+γ-1-1,]]>其中是一个大小为(m+1)×(m+1)的矩阵,γ是正则参数,通过网格搜索法求出,K是一个核函数,该核函数K为:x,y是两个不同的样本向量,σ2是和核函数的宽度,通过网格搜索法求出;
6c)通过求出的核相关矩阵计算支持向量集合Pm所对应的拉格朗日乘子向量和偏斜量bm:bmαPm=Rm+1-101,]]>由Pm、和bm构成一个初始的分类器:
6d)用得到的分类器对未被挑选为支持向量的训练样本进行分类,得到对应的类别标签然后计算分类标签和实际地物标签的乘积函数的值,其中是与相对应的实际地物标签,找出最小值对应的标号v所对应的训练样本及其实际地物标签
6e)由支持向量集合Pm和6b)中求出的核相关矩阵计算大小为(m+2)×(m+2)的核相关矩阵
Rm+2-1=Rm+1-1000+τθθT-θ-θT1,]]>其中,θ是一个列向量,θ=Rm+1-1y^vc,]]>c也是一个列向量,c=[ΩP1,v;ΩP2,v;...ΩPm,v],ΩPi,v=yPiy^vK(xPi,x^v),i=1,...,m,]]>xPi是支持向量集合Pm中的第i个支持向量,yPi是支持向量集合Pm中的第i个支持向量对应的标签,τ是一个标量,τ=(d-y^vcTθ)-1,]]>d也是一个标量,d=Ωv,v+γ-1,γ是正则参数,通过网格搜索法求出,K是一个核函数,该核函数K为:x,y是两个不同的样本向量,σ2是和核函数的宽度,通过网格搜索法求出;
6f)更新支持向量集合根据6e)中得到的核函数矩阵计算支持向量集合Pm+1所对应的拉格朗日乘子向量和偏斜量bm+1,表示如下:
bm+1αPm+1=Rm+2-10E=Rm+1-10000E+τθθT-θ-θT10E=bmαPm0+τθθT0E-θ1-θT0E,]]>
其中E=[1,1,…,1]T,得到新的分类器:
6g)更新变量m=m+1;
6h)重复过程6b)和6g)L次,其中L≥30,得到一次更新后的分类器:
6i)找出拉个朗日乘子向量中具有最小|α′Ps|,s=1,…,m所对应的拉格朗日乘子的标号u,并删除其所对应的支持向量更新表 示支持向量所对应的标签,通过计算核函数相关矩阵
Rm-1=S-s1s2/r^uu,]]>
其中是由6e)求得的核相关矩阵,a,b=1,…,m+1,S是一个大小为m×m的矩阵,a,b≠u,s1是一个m维的列向量,s1=[r^1u;...;r^(u+1)u;...;r^(m+1)u],]]>s2是一个行向量,s2=s1T,]]>[]T表示转置;
6j)由求得的计算列向量和标量bm-1:
bm-1αPm-1=Rm-1-10e,]]>其中e是一个m-1维的列向量,e=[1,1,…,1]T,得到删减后的分类器:
6k)更新变量m=m-1;
6l)循环步骤第6d)到6k)直到满足停止迭代条件为止,停止条件为:h的最大值大于0.5,得到最终的支持向量集合P″m以及该集合对应的拉格朗日乘子向量和偏斜量b″m,其中α″Ps是支持向量集合P″m中第s个支持向量所对应的拉格朗日乘子。
步骤7,根据训练得到的支持向量集合Pm、拉格朗日乘子向量α和偏斜量b,用分类决策函数对测试样本进行识别,得到测试样本的输出值其中Tk表示第k个测试样本对应的输出值;
分类决策函数为:其中tx是测试样本,αPs是支持向量集合中第s个支持向量所对应的拉格朗日乘子,Ps是支持向量集合中第s个支持向量,yPs是支持向量集合中第s个支持向量所对应的类别标签,K是一个核函数,该核函数K为:x,y分别是一个样本向量,σ2是和核函数的参数,通过网格搜索法求出。
步骤8,判断测试样本的标签,得到分类结果。
8a)当测试样本的输出向量Tk中每一个值都小于0时,则第k个测试样本的类别向量为:
8b)当测试样本的输出向量Tk中至少有一个值大于0时,则第k个测试样本的类别向量为:
其中j=1,2…6,j表示类别数,k=1,2…tn,tn表示测试样本数;
8c)根据步骤8a)-8b)的判别结果得到测试样本的标签向量tyk,再由向量tyk构成测试样本的标签矩阵该矩阵对应测试样本的类别,即得到分类结果。
本发明的效果可以通过下面的实验仿真进一步说明:
1、仿真实验条件与方法
硬件平台为:Intel(R)Xeon(R)CPU E5606@2.13GHZ、7.98GB RAM;
软件平台为:MATLAB R2013a;
实验方法:分别为本发明方法和现有的七种方法,其中:
第一种是用实例分化结合多实例多标签推进的方法;
第二种是用实例分化结合多实例多标签支持向量机的方法;
第三种是用实例分化结合多实例多标签最大边缘的方法;
第四种是基于实例分化的方法;
第五种是基于单实例多标签的标签集传播的方法;
第六种是基于快速稀疏支持向量机的多标签分类方法。
现有的这六种对比方法都是国际引用较多的经典方法。
仿真实验所使用的SAR图像如图2所示,其中图2(a)所示地点是香港机场,图像大小为21946*22406,图2(b)所示地点是日本东京,图像大小为22005*22535,图2(c)所示地点是香港北部,图像大小为19035*7330,图2(d)所示地点是香港南部,图像大小为22005*22535,这四幅图像均为 RadarSAT-2,C波段,HH单极化方式,StripMap成像方式,3m分辨率。
2、实验内容及结果分析
将四幅大图无重叠地切割成256*256的小图块,在小图像块形成的图库中,肉眼挑选出信息清晰完整的数据库,将其分为六类,分别是山脉、水域、城市、池塘、建筑、平原。对数据库中的每一幅图像进行多标签标记,其中每幅图像最少属于一个种类。随机选取数据库中10%的图像作为训练样本,剩下90%的图像作为测试样本,使用增量SVM训练分类模型,再对其测试样本进行标签预测。
用本发明和所述的现有七种方法对上述训练样本集和测试样本集进行仿真,采用海明损失、单一错误率、覆盖率、排列损失、平均精度、平均召回率、平均F1值,这七个指标来评价算法的性能。实验30次,分别取各个指标的平均值,结果见表1。
表1中ex1是第一种分类方法;ex2是第二种分类方法;ex3是第三种分类方法;ex4是第四种分类方法;ex5是第五种分类方法;ex6是第六种分类方法。A1是海明损失;A2是单一错误率;A3是排列损失;A4是覆盖率;A5是平均精度;A6是平均召回;A7是平均F1值;T(s)是平均分类时间。其中A1-A4越大表示分类性能越好,A5-A7越小表示分类性能越好,T(s)越小表示分类性能越好。
表1本发明与对比方法的分类结果
A1A2A3A4A5A6A7T(s)
ex10.07560.14750.05440.47330.90810.78070.8396>24hour
ex20.07610.14250.05830.49420.91010.80300.8531289.0651
ex30.12910.03930.57002.05320.87470.43220.565827455.0769
ex40.05900.10760.04070.41300.93110.84880.8880609.7781
ex50.23010.55920.62722.86330.39800.38730.392552.4006
ex60.13860.33730.12960.85190.79300.60380.685623.6376
本发明0.07270.13660.05630.48540.91170.80670.856045.8347
从表1中可以看出:ex1-ex4将单实例数据转换为多实例数据的过程耗费了大量的时间,虽然部分指标要比单实例多标签的学习方法的好,但是分类时间太长;ex5-ex6虽然分类时间短,但是分类准确性低;而本发明将增量支持向量机用到单实例多标签的分类问题中时,既保证了一定的准确性,又节约了大量的时间,得到了一个很好的权衡。