发明名称 基于种子集的半监督权重核模糊聚类的图像分割方法
摘要 本发明公开了一种基于种子集的半监督权重核模糊聚类的图像分割方法,其实现步骤为:(1)选择图像;(2)提取待分割图像纹理特征;(3)产生聚类对象数据矩阵;(4)初始化聚类中心、隶属度和核参数;(5)计算点密度函数值;(6)更新聚类中心、隶属度和核参数;(7)计算目标函数值;(8)判断是否满足终止条件;如果是,执行(9),否则,执行(6);(9)产生分割图像。本发明提取图像每个像素的纹理特征,用基于种子集的半监督权重核模糊聚类的图像分割方法对该纹理特征进行划分,提高了图像分割的稳定性,获得更加准确的分割结果。
申请公布号 CN103456017B 申请公布日期 2016.07.06
申请号 CN201310404794.3 申请日期 2013.09.08
申请人 西安电子科技大学 发明人 朱虎明;焦李成;李巧兰;王爽;缑水平;马晶晶;田小林;陈红强;马文萍
分类号 G06T7/00(2006.01)I;G06K9/62(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 田文英;王品华
主权项 一种基于种子集的半监督权重核模糊聚类的图像分割方法,实现步骤如下:(1)选择图像:1a)从纹理图像库中下载多幅纹理图像,从所下载的多幅纹理图像中任选一幅图像作为待分割图像;1b)从纹理图像库中下载与待分割图像对应的参考图像;(2)提取待分割图像纹理特征:2a)在待分割图像中,以待提取特征的像素点为中心,选取一个大小为16×16的窗口,将该窗口作为子图像块;2b)利用小波分解公式,得到表示子图像块的纹理特征的10维小波特征向量矩阵;2c)将10维小波特征向量矩阵合并,得到待分割图像的10维小波特征向量矩阵;(3)产生聚类对象数据矩阵:采用线性公式,将待分割图像的10维小波特征向量矩阵映射到闭区间[‑1,1]内,得到聚类对象数据矩阵;(4)获得各变量的初始值:4a)从聚类对象数据矩阵中,随机选择10%的聚类对象数据作为标记聚类对象数据,从标记聚类对象数据中,找出类标号相同的聚类对象数据,分别求每个类标号相同的聚类对象数据的平均值,将所求的平均值作为初始聚类中心值;4b)采用隶属度方法,初始化隶属度矩阵;4c)按照下式,获得点密度函数值:<maths num="0001"><math><![CDATA[<mrow><msub><mi>W</mi><mi>i</mi></msub><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>&NotEqual;</mo><mi>i</mi></mrow><mi>N</mi></munderover><mfrac><mn>1</mn><mrow><mo>|</mo><mo>|</mo><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><msub><mi>x</mi><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow></mfrac><mo>/</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>&NotEqual;</mo><mi>i</mi></mrow><mi>N</mi></munderover><mfrac><mn>1</mn><mrow><mo>|</mo><mo>|</mo><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><msub><mi>x</mi><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow></mfrac></mrow>]]></math><img file="FDA0000836867230000011.GIF" wi="761" he="159" /></maths>其中,W<sub>i</sub>表示聚类对象数据矩阵中第i个聚类对象数据的点密度函数值,∑表示求和操作,||·||表示求欧氏距离操作,x<sub>i</sub>表示聚类对象数据矩阵中第i个聚类对象数据,x<sub>j</sub>表示聚类对象数据矩阵中第j个聚类对象数据,i=1,...,N,j=1,...,N,N表示聚类对象数据矩阵中聚类对象数据的个数;4d)按照下式,获得初始核参数:<maths num="0002"><math><![CDATA[<mrow><msub><mi>&sigma;</mi><mn>0</mn></msub><mo>=</mo><msup><mrow><mo>(</mo><mfrac><mn>1</mn><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msup><mrow><mo>(</mo><mrow><msub><mi>a</mi><mi>i</mi></msub><mo>-</mo><msub><mi>a</mi><mi>i</mi></msub><mo>/</mo><mi>N</mi></mrow><mo>)</mo></mrow><mn>2</mn></msup><mo>)</mo></mrow><mrow><mn>1</mn><mo>/</mo><mn>2</mn></mrow></msup></mrow>]]></math><img file="FDA0000836867230000021.GIF" wi="630" he="181" /></maths>其中,σ<sub>0</sub>表示控制函数径向作用范围宽度的初始核参数,N表示聚类对象数据矩阵中聚类对象数据的个数,∑表示求和操作,a<sub>i</sub>表示聚类对象数据x<sub>i</sub>到聚类对象数据矩阵中所有聚类对象数据均值的欧氏距离,<img file="FDA0000836867230000022.GIF" wi="414" he="150" />x<sub>i</sub>表示聚类对象数据矩阵中第i个聚类对象数据,||·||表示求欧氏距离操作;4e)按照下式,计算核函数矩阵:k(x<sub>i</sub>,x<sub>j</sub>)=exp(‑||x<sub>i</sub>‑x<sub>j</sub>||<sup>2</sup>/2σ<sub>0</sub><sup>2</sup>)其中,k(x<sub>i</sub>,x<sub>j</sub>)表示核函数矩阵,x<sub>i</sub>表示聚类数据对象矩阵中的第i个聚类对象数据,x<sub>j</sub>表示聚类数据对象矩阵中第j个聚类对象数据,exp表示取指数操作,||·||表示求欧式距离操作,σ<sub>0</sub>表示控制函数径向作用范围宽度的初始核参数;(5)划分聚类对象数据矩阵:5a)利用核函数矩阵更新隶属度矩阵,从更新后的隶属度矩阵中找出每个聚类对象数据对应的最大隶属度值,并给每个聚类对象数据标上最大隶属度所在的类标号;5b)采用聚类中心优化公式,更新聚类中心值;5c)采用迭代更新公式,更新核参数;5d)按照下式,获得目标函数值:<maths num="0003"><math><![CDATA[<mrow><msub><mi>J</mi><mi>s</mi></msub><mo>=</mo><msub><mi>w</mi><mi>l</mi></msub><munderover><mo>&Sigma;</mo><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>l</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>W</mi><mi>l</mi></msub><msub><mi>J</mi><mi>l</mi></msub><mo>+</mo><msub><mi>w</mi><mi>u</mi></msub><munderover><mo>&Sigma;</mo><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>u</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>W</mi><mi>u</mi></msub><msub><mi>J</mi><mi>u</mi></msub></mrow>]]></math><img file="FDA0000836867230000023.GIF" wi="676" he="142" /></maths>其中,J<sub>s</sub>表示第s次的目标函数值,s表示迭代次数,s=1,..,100;w<sub>l</sub>表示聚类对象数据矩阵中标记聚类对象数据的折中系数,w<sub>l</sub>=u/(u+l);u表示聚类对象数据矩阵中未标记聚类对象数据的个数,l表示聚类对象数据矩阵中标记聚类对象数据的个数;∑表示求和操作;m表示聚类对象数据矩阵中第m个未标记聚类对象数据,m=1,...,l;k表示聚类对象数据矩阵中的第k类,k=1,...,K,K表示聚类对象数据的类别数;W<sub>l</sub>表示聚类对象数据矩阵中l个标记聚类对象数据点密度函数值;J<sub>l</sub>表示聚类对象数据矩阵中标记聚类对象数据的目标函数值;w<sub>u</sub>表示聚类对象数据矩阵中未标记聚类对象数据的折中系数,w<sub>u</sub>=l/(u+l);t表示聚类对象数据矩阵中第t个未标记聚类对象数据,t=1,...,u;W<sub>u</sub>表示聚类对象数据矩阵中u个未标记聚类对象数据的点密度函数值;J<sub>u</sub>表示聚类对象数据矩阵中未标记聚类对象数据的目标函数值;5e)按照下式,获得目标函数值的差:J=|J<sub>s</sub>‑J<sub>s‑1</sub>|其中,J表示目标函数值的差,|·|表示取绝对值操作,J<sub>s</sub>表示第s次的目标函数值,s表示迭代次数,s=1,..,100,J<sub>s‑1</sub>表示第s‑1次的目标函数值;5f)判断目标函数值的差是否小于阈值10<sup>‑5</sup>,如果是,则执行步骤5g),否则,执行步骤5a);5g)输出聚类对象数据的聚类的类标号;(6)产生分割图像:对聚类的每一个类标号,从灰度值范围[0,255]中任意选择一个整数作为该类标号对应聚类对象数据的灰度值,产生分割图像。
地址 710071 陕西省西安市太白南路2号