close all;clear all;clc;
I = imread('yaogan2.jpg');
HSV = rgb2hsv(I);
Hgray = rgb2gray(HSV);
% 计算64位灰度共生矩阵
glcmsl = graycomatrix(Hgray,'numlevels',64,'offset',[0 1;-1 1;-1 0;-1 -1]);
% 纹理特征统计,包括对比度、相关性、熵、平稳度、二阶矩(能量)
stats = graycoprops(glcmsl,{'contrast','correlation','energy','homogeneity'});
ga1 = glcmsl(:,:,1); %0°
ga2 = glcmsl(:,:,2); %45°
ga3 = glcmsl(:,:,3); %90°
ga4 = glcmsl(:,:,4); %135°
energya1 = 0;energya2=0;energya3=0;energya4=0;
for i=1:64
for j=1:64
energya1=energya1+sum(ga1(i,j)^2);
energya2=energya2+sum(ga2(i,j)^2);
energya3=energya3+sum(ga3(i,j)^2);
energya4=energya4+sum(ga4(i,j)^2);
j=j+1;
end
i=i+1;
end
s1=0;s2=0;s3=0;s4=0;s5=0;
for m=1:4
s1=stats.Contrast(1,m)+s1; %对比度
m=m+1;
end
for m=1:4
s2=stats.Correlation(1,m)+s2; %相关性
m=m+1;
end
for m=1:4
s3=stats.Energy(1,m)+s3; %熵
m=m+1;
end
for m=1:4
s4=stats.Homogeneity(1,m)+s4; %平稳度
m=m+1;
end
s5 = 0.000001*(energya1+energya2+energya3+energya4); %二阶矩(能量)

​yaogan1.jpg
​yaogan2.jpg
  对比度 相关性 熵 平稳度 二阶矩(能量)
山脉遥感(yaogan1.jpg) 1.5356e+02 3.0695 0.0090 1.3864 6.8678e+02
城镇遥感(yaogan2.jpg) 65.2117 2.6387 0.0458 2.1418 2.3649e+03

山脉遥感对比度明显高于城镇,城镇遥感的平稳度和能量明显大于山脉。

利用matlab自带函数graycoprops 实现基于共生矩阵的遥感图像纹理特征分析的更多相关文章

  1. 利用matlab自带函数快速提取二值图像的图像边缘 bwperim函数

      clear all;close all;clc; I = imread('rice.png'); I = im2bw(I); J = bwperim(I); % 提取二值图像图像边缘 figure ...

  2. [转] 利用Matlab提取图片中曲线数据

    原文地址 网易博客 前一段时间看到一篇文章"利用Matlab提取图图片中的数据",觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水 平放置的情况,而实际 ...

  3. 利用Matlab快速绘制栅格地图

    代码演示 % 基于栅格地图的机器人路径规划算法 % 第1节:利用Matlab快速绘制栅格地图 clc clear close all %% 构建颜色MAP图 cmap = [1 1 1; ... % ...

  4. 利用Matlab生成一个网格化的三维球面(生成直角坐标)

    利用Matlab生成一个网格化的三维球面,分别对径向方向.经度方向和纬度方向进行网格化,代码如下: %生成一个笛卡尔坐标系下球面网格的x,y,z坐标 %r为球面距离 %nJingdu,nWeidu分别 ...

  5. 【转】利用matlab生成随机数函数

    原文地址:利用matlab生成随机数函数 rand(n):生成0到1之间的n阶随机数方阵  rand(m,n):生成0到1之间的m×n的随机数矩阵 (现成的函数) betarnd:贝塔分布的随机数生成 ...

  6. 模式识别:利用MATLAB生成模式类

    近期開始了模式识别的学习,在此之前须要对模式和模式类的概念有一个了解,这里使用MATLAB实现一些模式类的生成.在此之前,引用百科上对于模式识别和模式类的定义.也算加深以下了解: 模式识别(Patte ...

  7. 【caffe-windows】 caffe-master 之 卷积核可视化(利用matlab)

    此篇是利用matlab对caffemodel的卷积核进行可视化.只介绍了卷积核的可视化,不涉及特征图的可视化. 是参考此博客: http://blog.csdn.net/zb1165048017/ar ...

  8. 【DSP开发】利用CCS5.4开发基于DSP6455的JPEG2000图像解压缩过程

    [DSP开发]利用CCS5.4开发基于DSP6455的JPEG2000图像解压缩过程 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:前端是时间基于VS ...

  9. 利用XtraBackup给MYSQL热备(基于数据文件)

    利用XtraBackup给MYSQL热备(基于数据文件) By JRoBot on 2013 年 11 月 26 日 | Leave a response 利用XtraBackup给MYSQL热备(基 ...

随机推荐

  1. Lua 学习之基础篇十<Lua 常见的语法规则>

    下面讲一些lua 常见的用法和规则,可以为学习理解lua带来帮助,最后附上的部分是lua的基本操作,基本包含所有常用语法语句. 1. if判断 lua把 nil 和false 视为"假&qu ...

  2. DataSet,DataTable,DataView、DataRelation

    一.创建Dataset和DataTable DataSet ds = new DataSet();//DataSetName默认为"NewDataSet" DataTable ta ...

  3. flutter 编译报错 ../extended_network_image_provider.dart:63:41: Error: Type 'DecoderCallback' not found

    flutter 编译的时候报错 Compiler message:../../../.pub-cache/hosted/pub.dartlang.org/extended_image_library- ...

  4. 05_centos7安装python3

    https://www.cnblogs.com/FZfangzheng/p/7588944.html https://www.cnblogs.com/simuhunluo/p/7704765.html ...

  5. 使用谷歌chrome浏览器查看任何标签的固有属性

    查看任何标签的固有属性property: 使用谷歌浏览器:Ctrl+Shift+I 开发者工具----点击Elements----点击a标签----点击Properties属性及其属性值. 自定义属性 ...

  6. 018_linux驱动之_阻塞和非阻塞

    阻塞操作     是指在执行设备操作时若不能获得资源则挂起进程,直到满足可操作的条件后再进行操作. 被挂起的进程进入休眠状态,被从调度器的运行队列移走,直到等待的条件被满足.   非阻塞操作   进程 ...

  7. 016_编写脚本快速克隆 KVM 虚拟机

    #!/bin/bash#本脚本针对 RHEL7.2 或 Centos7.2#本脚本需要提前准备一个 qcow2 格式的虚拟机模板,名称为/var/lib/libvirt/images/.rh7_tem ...

  8. K8S中Pods

    什么是Pod 一个Pod(就像一群鲸鱼,或者一个豌豆夹)相当于一个共享context的配置组,在同一个context下,应用可能还会有独立的cgroup隔离机制,一个Pod是一个容器环境下的“逻辑主机 ...

  9. c实现循环链表

    解决约瑟夫环问题核心步骤: 1.建立具有n个节点.无头的循环链表 2.确定第一个报数人的位置 3.不断从链表中删除链节点,直到链表为空 #include <iostream> #inclu ...

  10. nodejs基础 用http模块 搭建一个简单的web服务器 响应JSON、html

    前端在开发中,大多会想浏览器获取json数据,下面来用nodejs中的http模块搭建一个返回json数据的服务器 var http = require("http"); var ...