加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

用Matlab编写图像灰度—平滑共生矩阵及其特征量计算

(2008-04-30 00:07:10)
标签:

matlab编程

it

教育

分类: Matlab编程

    共生矩阵法在图像的纹理特征分析中具有广泛的应用,常用的共生矩阵有灰度共生矩阵、灰度—梯度共生矩阵、灰度—平滑共生矩阵。其中灰度共生矩阵有利于反映了图像纹理的方向性;灰度—梯度共生适于刻画图像的细纹理、对旋转性不敏感;灰度—平滑共生矩阵图图像旋转也不敏感,利于描述较粗纹理。下面以灰度—平滑共生矩阵为例编写相应的纹理特征分析的程序。

该方法将原始图像灰度直方图和平滑图像灰度直方图相结合,研究二者的联合统计分布。对于归一化的共生矩阵,可以定义反差、熵、逆差距、灰度相关、能量、集群荫、集群突出等特征统计量。程序如下:

    a=double(a);  % a表示原始图像灰度矩阵

    hw=2;  % hw为平滑窗口的大小

    [m n]=size(a);

    b=zeros(m-2*hw,n-2*hw,2);

    for i=1+hw:m-hw  %求平滑矩阵

        for j=1+hw:n-hw

            wi=a(i-hw:i+hw,j-hw:j+hw);

            b(i-hw,j-hw,1)=mean2(wi);

        end

    end

    b(:,:,2)=a(1+hw:m-hw,1+hw:n-hw);

    b=uint8(b);

    [m n l]=size(b);

    h=zeros(256,256);

    for i=1:m  %求联合分布直方图

        for j=1:n

            h(b(i,j,1)+1,b(i,j,2)+1)=h(b(i,j,1)+1,b(i,j,2)+1)+1;

        end

    end

    h=h./m./n; %归一化

    entr64=zeros(1,6); %entr64为纹理特征矢量

    h0=h;

   

    %% 求方差

    for i=1:256

        for j=1:256

            h0(i,j)=(abs(i-j))^5*h(i,j);

        end

    end

    entr64(1,1)=mean2(h0);

   

    %% 求熵

    for i=1:256

        for j=1:256

            if h(i,j)>0

                h0(i,j)=-h(i,j)*log2(h(i,j));

            end

        end

    end

    entr64(1,2)=sum(sum(h0));

   

    %% 求逆差距

    for i=1:256

        for j=1:256

            h0(i,j)=h(i,j)/((abs(i-j))^2+1);

        end

    end

    entr64(1,3)=sum(sum(h0));

   

    %% 求能量

    for i=1:256

        for j=1:256

            h0(i,j)=h(i,j)^2;

        end

    end

    entr64(1,4)=sum(sum(h0));

 

    %%求集群荫

    h0=h;

    i=1:256;

    ux=mean2(i*sum(h0,2));

    uy=mean2(sum(h0,1)*i');

    for i=1:256

        for j=1:256

            h0(i,j)=((i-ux)+(j-uy))^3*h(i,j);

        end

    end

    entr64(1,5)=mean2(h0);

   

    %%求集群突出

    for i=1:256

        for j=1:256

            h0(i,j)=((i-ux)+(j-uy))^4*h(i,j);

        end

    end

    entr64(1,6)=mean2(h0);

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有