发明名称 基于自动差分聚类算法的遥感图像分割方法
摘要 本发明公开了一种基于自动差分聚类算法的遥感图像分割方法,主要解决现有图像分割技术中计算复杂度较高、分割效果不好的问题。其实现步骤为:(1)输入待分割图像,提取待分割图像特征;(2)产生聚类数据;(3)随机抽取聚类数据初始化种群;(4)根据个体的标签位激活聚类中心;(5)根据激活的聚类中心,计算个体适应度值;(6)用改进的差分进化方法进化种群;(7)对进化后种群进行类别数振荡操作;(8)利用FCM更新质心;(9)利用更新后质心判断终止条件,并记录最优个体;(10)对最优个体解码,分配类别标号并输出分割图像。本发明具有分割精度高、边缘定位准确的优点,可用于目标识别。
申请公布号 CN102945553B 申请公布日期 2014.12.17
申请号 CN201210493436.X 申请日期 2012.11.27
申请人 西安电子科技大学 发明人 李阳阳;焦李成;王爽;武小龙;马文萍;马晶晶;李玲玲
分类号 G06T7/00(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 一种基于自动差分聚类算法的遥感图像分割方法,包括以下步骤:(1)输入待分割图像I,分别提取待分割图像I的小波特征向量和纹理特征向量,并用小波特征向量和纹理特征向量表示待分割图像I的每一个像素点v;(2)产生聚类数据:用待分割图像I的膨胀变换减去其腐蚀变换,得到形态梯度图像I<sub>1</sub>,计算形态梯度图像I<sub>1</sub>的灰度值矩阵的平方积,得到反映图像边缘的浮点活动图像I<sub>2</sub>,用分水岭方法初分割浮点活动图像I<sub>2</sub>,得到不同的图像块,对每一个图像块的所有像素点的特征取平均值,获得代表初始聚类数据的每一块的特征值;(3)随机抽取聚类数据初始化种群:种群中每个个体编码长度为L+L×d,每个个体分为两个部分,前L位为标签位,后L×d位为L个待激活的聚类中心,d为聚类数据的维数,随机初始化每个个体的标签位,并随机抽取L个聚类数据作为待激活的聚类中心,令当前迭代次数t=1;(4)根据每个个体的标签位激活相应个体的聚类中心;判断个体标签T每一位值的大小是否大于0.5,如果大于0.5,则激活相应的聚类数据点,否则不予激活;所有被激活的聚类数据点组合成为该个体的聚类中心;(5)根据激活的聚类中心,采用PBM有效性指标公式计算每个个体适应度值;(6)用改进的差分进化方法对种群进行变异和交叉,并利用个体适应度值进行种群更新,所述用改进的差分进化方法对种群进行变异是通过如下公式进行:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>V</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><msub><mi>Z</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><mi>F</mi><mrow><mo>(</mo><msub><mi>Z</mi><mi>n</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>Z</mi><mi>m</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow><mo>,</mo><mi>rand</mi><mrow><mo>(</mo><mn>0,1</mn><mo>)</mo></mrow><mo>></mo><mi>&alpha;</mi></mtd></mtr><mtr><mtd><msub><mi>Z</mi><mi>GBest</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><mi>&alpha;</mi><mrow><mo>(</mo><msub><mi>Z</mi><mi>LBest</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>Z</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>)</mo></mrow><mo>,</mo><mi>rand</mi><mrow><mo>(</mo><mn>0,1</mn><mo>)</mo></mrow><mo>&lt;</mo><mi>&alpha;</mi></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000588306190000011.GIF" wi="1207" he="180" /></maths>其中,V<sub>i</sub>(t+1)为第i条染色体经过变异操作后的得到的个体;t为当前的迭代次数;Z<sub>i</sub>(t)为当代种群中第i条染色体;i,m,n为随机产生的自然数,其值不能大于种群规模;rand(0,1)为[0,1]之间的随机数;Z<sub>GBest</sub>(t)为全局最优个体;Z<sub>LBest</sub>(t)当代种群中的局部最优个体;Z<sub>j</sub>(t)为当代随机个体;F为传统差分进化的变异因子,其公式:F=0.5*(1+rand(0,1)),式中,rand(0,1)为[0,1]之间的随机数;α为改进后差分进化的变异因子,其公式:α=1/[1+exp(‑(1/t))],式中,t为当前迭代次数;(7)对更新后的种群进行类别数振荡操作:7a)对种群中的每个个体依照振荡规则进行类别数振荡操作,每个个体获得新的类别数;7b)计算每个个体中L个数据点的密度,并依照密度大小进行排序;7c)将新的类别数k<sub>new</sub>与当前染色体类别数k<sub>old</sub>进行比较,如果k<sub>new</sub><k<sub>old</sub>,则依照密度排名从该个体中选择密度较大的聚类数据点加入聚类中心,否则,从已有聚类中心中淘汰密度排名较小的聚类数据点;(8)利用FCM方法对振荡操作后的聚类中心进行更新;(9)判断种群迭代的次数是否达到使用者设定的最大进化代数T=100,或者相邻两代最优个体的适应度差值是否小于规定数值E=10<sup>‑4</sup>,如果是,则保存最优个体并执行步骤(10),否则,返回步骤(4);(10)对获得的最优个体进行解码,求得每个聚类数据的类别标号,并用这些类别标号作为像素的灰度值,输出图像的分割结果。
地址 710071 陕西省西安市太白南路2号