一种遥感影像的人工免疫非监督分类方法

文档序号:6555111阅读:317来源:国知局
专利名称:一种遥感影像的人工免疫非监督分类方法
技术领域
本发明属于遥感影像处理技术领域,尤其是一种基于人工免疫系统的遥感影像非监督分类方法。
背景技术
遥感影像非监督分类,是指人们事先对分类过程不施加任何的先验知识,仅凭据遥感影像地物的光谱特征的分布规律,随其自然地进行盲目的分类。其分类的结果,只是对不同类别进行了区分,并不确定类别的属性,其属性是通过事后对各类的光谱响应曲线进行分析,以及与实地调查相比较后确定的。传统的遥感影像非监督分类主要采用K均值算法或ISODATA算法。
K均值算法的基本思想是通过迭代,移动各个基准类别的中心,直至得到最好的聚类结果为止。该算法能使得聚类域中所有样本到聚类中心的距离平方和最小。K均值算法的特点是K均值算法的结果受到所选聚类中心的个数K及初始聚类中心选择的影响,也受到地物的几何性质及排列次序的影响,实际上需试探不同的K指和选择不同的初始聚类中心。如果地物的几何特性表明它们能形成几个相距较远的小块孤立区,则算法多能收敛。
迭代自组织的数据分析算法(Iterative Selforganizing Data AnalysisTechniques Algorithm),亦称ISODATA算法。此算法与K均值算法有相似之处,即聚类中心也是通过样本均值的迭代运算来决定的,但ISODATA算法加入了一些试探性步骤和人机交互功能,能吸取中间结果所得到的经验,主要是在迭代过程中可将一类一分为二,亦可能将二类合二为一,亦即“自组织”,故这种算法已具有启发式的特点。
有关文献孙家柄,舒宁,关泽群.遥感原理方法和应用[M].北京测绘出版社,1997;汤国安,张友顺,刘咏梅.遥感数字图像处理等[M].北京科学出版社,2004;赵英时.遥感应用分析原理与方法[M].北京科学出版社,2003;Campbell,J.B.,Introduction to Remote Sensing[M].LondonTaylor &Francis,2002.
传统的遥感影像非监督分类方法在非监督迭代过程中采用简单的均值作为聚类中心进行迭代,该聚类中心具有局部性,而没能考虑样本的全局性。而且传统非监督分类方法智能性较差,在实际的影像非监督分类中得到的分类精度往往不高。
人工免疫系统(Artificial Immune System,简称AIS),是受生物免疫系统的启发而产生的一种新型的智能计算方法。在过去的几年里,AIS的应用领域逐渐扩展到了信息安全、模式识别、机器学习、数据挖掘等诸多领域,显示出AIS强大的信息处理和问题求解能力以及广阔的研究和应用前景。有关文献D.Dasgupta,Artificial Immune Systems and Their Applications,GermanySpringer,1999;L.N.de Castro and J.Timmis,Artificial Immune systemsA NewComputational Intelligence Approach,London,U.K.Springer-Verlag,2002;J.Timmis,M.Neal,and J.E.Hunt,“An artificial immune system for data analysis,”Biosystem,55(1/3),2000;肖人彬,王磊.人工免疫系统原理、模型、分析及展望[J].计算机学报,2002,25(12)。
AIS是一种自适应很强的优化技术,继承了生物免疫系统的众多属性,具有自组织、自学习、自识别、自记忆的能力,因此它能快速提供达到最优解的90%的搜索范围,从而能较快较准地得到全局最优解,这是其它的优化技术所不及的。应用人工免疫算法,通过重复的优化过程,具有高度智能性,能够自很快地自适应得到最优解。它可以提高分类的准确性、减少算法的运算时间。可以参见有关文献L.N.De Castro and F.J.Von Zuben,“Learning andoptimization using the clonal selection principle,”IEEE Trans.onEvolutionary Computation,Vol.6(3)2002;Atkinson P M,Lewis P.Geostatistical classification for remote sensingan introduction[J].Computers & Geosciences,26,2000;Adams D.How the immune system worksand why it causes autoimmune diseases[J].Immunology Today,17(7),1996;J.H.Carter,“The immune system as a model for pattern recognition andclassification,”Journal of the American Medical InformaticsAssociation,Vol.7(3),2000.
然而在遥感影像非监督分类中,AIS还没有得到很好的应用。怎样利用人工免疫系统的特性,提供能够高速高效智能化获得分类结果的遥感影像非监督分类方法,是实现遥感影像非监督分类智能化的亟待解决的技术问题。

发明内容
本发明目的是利用人工免疫系统的优点,提供一种用于提高遥感影像分类精度非监督分类方法。
为实现上述目的,本发明提供遥感影像的人工免疫非监督分类方法(1)通过遥感影像处理程序打开需要待分类遥感影像,并输入算法参数;(2)选取非监督分类的各类初始抗体种群和记忆抗体,存入各类抗体数组和记忆抗体数组;(3)对影像抗原进行人工免疫系统训练,直到整幅影像全部被训练完成,对每个影像抗原的训练包括以下5个步骤,(3.1)计算影像抗原到每类记忆抗体的亲和度,将该影像抗原判决到具有最大亲和度的记忆抗体所属类别中去,并记录该记忆抗体为最匹配抗体;(3.2)计算该影像抗原与同类记忆抗体集合中所有抗体的亲和度,从记忆抗体集合中选择与抗原亲和度最高的若干个抗体,产生一个新的抗体集合;(3.3)对选择出来的抗体进行克隆操作,产生克隆抗体集合,对克隆集合进行变异操作,得到变异抗体集合;(3.4)计算该影像抗原与变异抗体集合中所有变异后抗体的亲和度,从中选出具有最大亲和度的抗体作为候选记忆抗体;(3.5)判断候选记忆抗体与步骤(3.1)中得到的匹配记忆抗体的亲和度大小,如果大于匹配记忆抗体亲和度水平,则候选记忆抗体进入抗体记忆库中,存入记忆抗体数组,然后再计算两者之间的距离,如果距离在设定的允许范围之内则匹配记忆抗体从记忆抗体数组中去掉;(4)判断是否满足训练停止条件,如果不满足则从步骤(3)开始进行下一次迭代,满足则人工免疫非监督分类完成输出分类结果。
而且,算法参数包括有分类类别数、最大迭代次数、选择抗体数、克隆率、替换率和距离比例阈值,采用最大迭代次数作为训练停止的判断条件,根据克隆率对选择出来的抗体进行克隆操作。
而且,在进行步骤(3.4)计算变异抗体集合中所有变异抗体的亲和度后,随机产生d个新抗体替换抗体数组中亲和度最低的d个原有抗体,其中d值取值为d=β*N,β为替换率,N为抗体群中抗体总数。
而且,采用最大最小距离选心法选取非监督分类的各类初始抗体种群和记忆抗体。
本发明通过人工免疫系统对遥感影像进行迭代分类,更准确地表现了各类地物的分布情况,避免了分布局部性;在获取上一次地物分布基础上,通过人工免疫系统中克隆选择算法进化得到各个类别的聚类中心或者记忆抗体,避免了采用简单计算各个类别均值而得到聚类中心的局限性;采用免疫阈值来减少人工免疫系统的冗余,加快算法的收敛速度,减少遥感影像的非监督分类时间。本发明方法继承了生物免疫系统生物属性,具有自组织、自学习、自识别、自记忆的能力,智能性高,实际运行中执行效率高,适用于多光谱、高光谱遥感影像非监督分类,可有效提高遥感影像的非监督分类精度。


图1克隆选择原理示意图;图2本发明的人工免疫种群模型;图3本发明实施例的人工免疫非监督分类参数设置图;图4本发明实施例主函数程序框图;图5本发明实施例初始化函数程序框图;图6本发明实施例非监督免疫进化函数程序框图;图7本发明实施例记忆库进化函数程序框图。
具体实施例方式
为了便于理解本发明,首先提供本发明的理论基础
人体免疫系统的重要功能之一是通过产生抗体(antibody)来清除外来的异物,异物可以是微生物(细菌、病毒等)、异型血细胞、移植器官等,它们都称为抗原(antigen)。免疫系统的基本组成成份是淋巴细胞或白血球。这些特殊的细胞主要可以分为B细胞和T细胞两大类。这两种细胞都有自己独特的生态结构并且从它们的表面产生许多Y型抗体来杀死抗原。
为了解释抗体的形成机理,一些学者最早提出模板学说,后来又提出侧链理论,但它们都不能合理解释抗体形成机理。直到克隆选择理论的提出才使抗体形成机理得到满意的解释。
免疫系统在识别抗原时首先通过阴性选择来对自身的细胞(自身抗原)和那些不属于自身的元素(外来抗原)进行区分,通过区分后免疫系统消除外来的细胞或分子,而对系统本身的细胞不进行处理。在进行阴性选择后,免疫系统对于外来抗原进行克隆选择从而产生抗体。
克隆选择主要内容为当淋巴细胞实现对抗原的识别后,B细胞被激活,并增殖复制产生B细胞克隆,随后克隆细胞经历变异过程,产生对抗原具有特异性的抗体。克隆选择理论描述了获得性免疫的基本特性,并且只有成功识别抗原的免疫细胞才得以增殖,经历变异后的免疫细胞分化为浆细胞(抗体效应细胞)和记忆细胞两种。
克隆选择的主要特征是克隆选择对应着一个亲和力成熟的过程,即该过程是一个对抗原亲和力较低的个体在克隆选择机制的作用下,经历增殖复制和变异过程后,因亲和力逐步增大而慢慢变成熟的过程。从这个过程来看,克隆选择本质上是一个达尔文式的进化过程,该过程可以通过采用交叉、变异等算子和相应的群体控制机制实现。克隆选择原理示意图如附图1所示。
基于这种克隆选择理论,本发明提供遥感影像的人工免疫非监督分类方法,遥感图像处理数据复杂,工作量大,普遍需要采用计算机手段实现,因此本发明技术方案采用了计算机程序和计算机术语进行描述,例如抗体数组实质上是为了表述一个内容根据进化而改变的抗体集合。本发明要求保护的技术方案不限于计算机程序流程,而应包括其他等同替换手段。本发明技术方案如下(1)通过遥感影像处理程序打开待分类遥感影像,并输入算法参数;(2)选取非监督分类的各类初始抗体种群和记忆抗体,存入各类抗体数组和记忆抗体数组;(3)对影像抗原进行人工免疫系统训练,直到整幅影像全部被训练完成,对每个影像抗原的训练包括以下5个步骤,(3.1)计算影像抗原到每类记忆抗体的亲和度,将该影像抗原判决到具有最大亲和度的记忆抗体所属类别中去,并记录该记忆抗体为最匹配抗体;(3.2)计算该影像抗原与同类记忆抗体集合中所有抗体的亲和度,从记忆抗体集合中选择与抗原亲和度最高的若干个抗体,产生一个新的抗体集合;(3.3)对选择出来的抗体进行克隆操作,产生克隆抗体集合,对克隆集合进行变异操作,得到变异抗体集合;(3.4)计算该影像抗原与变异抗体集合中所有变异后抗体的亲和度,从中选出具有最大亲和度的抗体作为候选记忆抗体;(3.5)判断候选记忆抗体与步骤(3.1)中得到的匹配记忆抗体的亲和度大小,如果大于匹配记忆抗体亲和度水平,则候选记忆抗体进入抗体记忆库中,存入记忆抗体数组,然后再计算两者之间的距离,如果距离在设定的允许范围之内则匹配记忆抗体从记忆抗体数组中去掉;
(4)判断是否满足训练停止条件,如果不满足则从步骤(3)开始进行下一次迭代,满足则人工免疫非监督分类完成输出分类结果。
由于影像抗原和抗体中各个波段上的值为实数,并且为了考虑算法的速度,因此在本发明中克隆选择算法采用高斯实数变异方式算法如下在实数编码的变异算法中高斯变异算子被采用的较多。具体算法如下在高斯变异中,群体的一个个体是由一个解向量s=(v1,v2,…,vn)和一个摄动向量σ=(σ1,σ2,…,σn)组成,这个摄动向量是变异解向量的控制向量,并且它自己也不断要进行变异,假如(s,σ)是被选个体,则可按下式产生变异后的新个体(s′,σ′)σi′=σi·exp(Ni(0,Δσ))]]>vi′=vi+N(0,σi′),i=1,2,···,n]]>这里Δσ称为二级步长控制参数,Ni(0,Δσ),i=1,2,…,n是相互独立的均值为0,方差为Δσ的符合正态分布的随机数。另外一种调整σi′的原则就是采用Rechenberg提出的1/5成功法则。即成功的变异概率应为1/5,如果实际成功的比例大于1/5,则增加σi′的值,而如果低于1/5,则减小σi′的值。依据Schwefel的研究,假定要进行10n变异,则每n次变异后就进行一次这样的检查。σi′的增减比例因子分别为(1.0/0.85)和0.85。
为了更好地描述算法,本发明提出了一种新的人工免疫细胞种群模型,即AB模型。AB模型表示一个类别的抗体集合模型,其中ab描述单个抗体,ab∈AB。附图2描述了一个类别的AB模型,在免疫系统中AB包含该类的多个免疫抗体ab(附图2中用小圆圈表示)和记忆抗体mc(附图2中用菱形表示),记忆集合用MC标记,mc∈MC。在遥感影像分类中,记忆集合MC决定了整个AB的识别能力,而在附图2中,σ表示MC的识别范围。在σ范围内,AB可以识别抗原ag。本发明实施例采用抗体数组ABArray和记忆抗体数组MCArray存放相应抗体数据。
本发明设计了计算机程序来实现本发明的非监督分类任务,程序采用人工免疫非监督分类方法对影像抗原ImageAg进行训练,如果到达终止条件则进行分类完成,否则循环迭代训练影像抗原直到终止条件满足。为了令程序简洁,并且方便与现有的遥感影像处理软件结合和程序实现,大量地采用了函数调用思路。
以下结合实施例具体实施步骤详细说明本发明技术方案(1)利用遥感影像处理系统,通过输入影像宽度、高度、波段数和数据类型打开输入待分类遥感影像,存为影像抗原ImageAg数组。该过程属影像输入过程,实现程序不详细介绍。具体实施时可以设置由程序提供算法参数输入框,参见附图3。弹出算法参数输入框后,输入算法所需要参数,主要包括分类类别数nc,最大迭代次数nIte,选择抗体数n,克隆率Clonal_rate,替换率β,距离比例阈值DTS。设置完算法参数后激活该算法的执行程序,主函数程序流程框图见附图4。当然,某些算法参数也可在以后的计算过程中即时输入或修改。目前,遥感领域的计算机应用已经十分普遍,采用遥感影像处理程序对遥感得到的数字图像进行处理是常用手段,具备了基本打开图像功能和采样工具的遥感影像处理程序均可以供本发明实施使用。具体实施时,可以把遥感影像处理程序的基本功能和本发明方法的其他步骤所需功能结合成一体,通过计算机编程即可实现。
(2)采用最大最小距离选心法选取非监督分类所需的各类初始抗体种群和记忆抗体,存入抗体数组ABArray和记忆抗体数组MCArray,最大最小距离选心法程序采用调用初始化函数Initialization()实现,流程框图见附图5。具体实施例步骤为获取抽样像素集合{X=X1,X2,…Xn};取抽样像素集合中任一像素之特征点作为第一个初始类别中心Z1,计算到Z1最远的抽样点作为第二个初始类别中心Z2;对于剩余的每个抽样点计算到已有中心的距离,取最小距离为代表距离;比较代表距离的最大值为下一个类别中心Zi;最后判断类别数是否满足要求,若满足则调用非监督免疫进化函数UIEvolution(),不满足则返回继续由抽样点计算到已有中心距离代表距离、设下一个类别中心,直到满足类别数nc。
(3)对影像抗原进行人工免疫系统训练,直到整幅影像全部被训练完成,具体实施是调用非监督免疫进化函数UIEvolution()来实现。对每个影像抗原的训练包括4个步骤,因此具体程序的基本表现为循环执行以下5个步骤(3.1)将影像抗原数组ImageAg中的某个影像抗原ag输入到算法中,计算抗原到每类记忆抗体的亲和度fk,计算公式标记为affinity(ag,mc)。并将抗原判决到具有最大亲和度的记忆抗体所属类别中去,假设为第k类,记录该抗体为最匹配抗体C配。与之相应,第k类记忆抗体的集合标记为抗体种群ABk。
C配=argmaxmc∈MCaffinity(ag,mc)其中假设两个像元为x={x1,x2,···,xNb}]]>和y={y1,y2,···,yNb},]]>Nb表示波段总数,则两者之间的亲和度计算公式如下其中距离dis(x,y)采用光谱角方法计算。
affinity(x,y)=exp(-dis(x,y)2σi2)]]>
dis(x,y)=α=cos-1[Σi=1Nbxiyi[Σi=1Nb(xi)2]12[Σi=1Nb(yi)2]12]]]>(3.2)计算某影像抗原到相应某类抗体集合ABk中所有抗体的亲和度,从抗体集中选择与抗原亲和度最高的n个抗体,产生一个新的抗体集合AB{n}k(3.3)对n个被选择出的抗体按一定的克隆率进行克隆操作,产生克隆抗体集合Ck。其中亲和度越高,克隆数目越高。所有n个被选择出的抗体克隆总数为NumCLones=Σi=1nround(Clonal_rate·affinity(ag,abi)]]>其中NumClones表示克隆总数。设置的克隆率参数Clonal_rate决定克隆的倍数,典型的参数值为10,函数round()表示取整。
对克隆抗体集合Ck进行变异操作,产生变异后的抗体集合MUk,其中与抗原之间的亲和度越大,抗体变异机会越小。变异率通过以下方式决定变异率mutate_rate=1-affinity(ag,abi)克隆集合Ck变异操作公式如下MUik=Cik+mutation_rate·N(0,1)i∈[1,NumClones]]]>其中N(0,1)表示均值为0,反差为1的高斯随机变量。
计算程序流程框图见附图6,具体实施例的采用调用变异函数mutate()的方式实现,函数运算程序步骤如下进入变异函数mutate()入口,输入克隆抗体集合Ck,采用变量i标记抗体、j标记抗体波段,通过为i、j赋值并在操作后自加1的方式,逐一为克隆抗体集合Ck中某抗体B的某波段进行变异赋值;变量nrandom=N(0,1),套用变异操作公式可算出某抗体B的某波段变异值Mabij=abik+mutation_rate·nrandom;]]>变量j值>总波段数时为对抗体B变异赋值完毕,变量i值>克隆总数NumClones时对克隆抗体集合Ck变异完毕。最后输出变异抗体集合MUk。
(3.4)计算影像抗原ag与变异抗体集MUk中所有变异抗体的亲和度fk*,从中选出具有最高亲和度的抗体作为候选记忆抗体C候。
为了增加抗体的多样性,在步骤(3.4)计算出亲和度fk*后,从变异抗体集MUk中选出d个亲合度最高的变异抗体替换原始抗体集ABk中亲和度最小的d个原始抗体。其中,d=β*N,β为替换率,N为抗体群中抗体总数。如果设β值为0,则省去了替换操作。
(3.5)判断影像抗原ag到C候和C配的刺激水平,如果亲和度affinity(ag,C候)大于affinity(ag,C配)则将C候加入记忆库MCArray中。然后再计算C候和C配之间的距离,本发明设定了距离允许范围,这种范围由距离阈值(distance threshold,DT)和距离阈值比例(distance threshold scalar,DTS)的乘积得到,如果距离dis(C候,C配)小于DT*DTS,则将C配从记忆库MCArray中去除,以保证记忆库中的记忆细胞在一定的数量范围之内。计算程序通过调用记忆库进化函数DevelopMCPop()实现,流程框图参见附图7,affinity(ag,C候)、affinity(ag,C配)、dis(C候,C配)分别赋值给变量CandAff、MatchAff、CellDis以便计算机进行运算操作。其中距离阈值DT由下式得到
DT=Σj=1Nb(MAXj-MINj)]]>其中Nb为遥感影像波段数,MAXj为遥感影像第j个波段的最大值,MINj为遥感影像第j个波段的最小值。
对一个影像抗原训练完成后,接着对下一个影像抗原进行人工免疫系统训练,直到整幅影像全部训练完成,则完成一次迭代过程。
(5)判断是否满足停止条件,如果不满足则从步骤(3)开始进行下一次迭代,否则人工免疫非监督分类完成输出分类结果。本发明实施例的停止条件为是否达到最大迭代次数nIte,此参数可在程序运行开始的步骤(1)中事先设定。
采用函数调用思想为本发明的技术方案编程后,整体的程序实施结构为输入待分类遥感影像;定义影像抗原数组ImageAg;设置算法参数;调用分类数UAIclassifier();进入函数UAIclassifier()入口;调用初始化函数Initialization(),选取非监督分类所需的各类初始抗体种群和记忆抗体;对影像抗原Ag进行分类;调用非监督免疫进化函数UIEvolution();调用记忆库进化函数DevelopMCPop();判断是否满足终止条件,如果不满足则从步骤(3)开始进行下一次迭代,否则人工免疫非监督分类完成输出分类结果,取得分类遥感影像。
权利要求
1.一种遥感影像的人工免疫非监督分类方法,其特征是(1)通过遥感影像处理程序打开待分类遥感影像,并输入算法参数;(2)选取非监督分类的各类初始抗体种群和记忆抗体,存入各类抗体数组和记忆抗体数组;(3)对影像抗原进行人工免疫系统训练,直到整幅影像全部被训练完成,对每个影像抗原的训练包括以下5个步骤,(3.1)计算影像抗原到每类记忆抗体的亲和度,将该影像抗原判决到具有最大亲和度的记忆抗体所属类别中去,并记录该记忆抗体为最匹配抗体;(3.2)计算该影像抗原与同类记忆抗体集合中所有抗体的亲和度,从记忆抗体集合中选择与抗原亲和度最高的若干个抗体,产生一个新的抗体集合;(3.3)对选择出来的抗体进行克隆操作,产生克隆抗体集合,对克隆集合进行变异操作,得到变异抗体集合;(3.4)计算该影像抗原与变异抗体集合中所有变异后抗体的亲和度,从中选出具有最大亲和度的抗体作为候选记忆抗体;(3.5)判断候选记忆抗体与步骤(3.1)中得到的匹配记忆抗体的亲和度大小,如果大于匹配记忆抗体亲和度水平,则候选记忆抗体进入抗体记忆库中,存入记忆抗体数组,然后再计算两者之间的距离,如果距离在设定的允许范围之内则匹配记忆抗体从记忆抗体数组中去掉;(4)判断是否满足训练停止条件,如果不满足则从步骤(3)开始进行下一次迭代,满足则人工免疫非监督分类完成输出分类结果。
2.如权利要求1所述的人工免疫非监督分类方法,其特征是算法参数包括有分类类别数、最大迭代次数、选择抗体数、克隆率、替换率和距离比例阈值,采用最大迭代次数作为训练停止的判断条件,根据克隆率对选择出来的抗体进行克隆操作。
3.如权利要求1所述的人工免疫非监督分类方法,其特征是在进行步骤(3.4)计算变异抗体集合中所有变异抗体的亲和度后,随机产生d个新抗体替换抗体数组中亲和度最低的d个原有抗体,其中d值取值为d=β*N,β为替换率,N为抗体群中抗体总数。
4.如权利要求1或2或3所述的人工免疫非监督分类方法,其特征是采用最大最小距离选心法选取非监督分类的各类初始抗体种群和记忆抗体。
全文摘要
一种遥感影像的人工免疫非监督分类方法,其特征在于(1)打开待分类遥感影像,并输入算法参数;(2)选取非监督分类的各类初始抗体种群和记忆抗体,存入各类的抗体数组和记忆抗体数组;(3)对影像抗原进行人工免疫系统训练,直到整幅影像全部被训练完成,(4)判断是否满足训练停止条件,如果不满足则从步骤(3)开始进行下一次迭代,否则人工免疫非监督分类完成输出分类结果。本发明方法继承了生物免疫系统生物属性,具有自组织、自学习、自识别、自记忆的能力,智能性高,实际运行中执行效率高,适用于多光谱、高光谱遥感影像非监督分类,可有效提高遥感影像的非监督分类精度。
文档编号G06K9/62GK1873661SQ200610019508
公开日2006年12月6日 申请日期2006年6月29日 优先权日2006年6月29日
发明者钟燕飞, 张良培 申请人:武汉大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1