利用matlab自带函数graycoprops 实现基于共生矩阵的遥感图像纹理特征分析
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 实现基于共生矩阵的遥感图像纹理特征分析的更多相关文章
- 利用matlab自带函数快速提取二值图像的图像边缘 bwperim函数
clear all;close all;clc; I = imread('rice.png'); I = im2bw(I); J = bwperim(I); % 提取二值图像图像边缘 figure ...
- [转] 利用Matlab提取图片中曲线数据
原文地址 网易博客 前一段时间看到一篇文章"利用Matlab提取图图片中的数据",觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水 平放置的情况,而实际 ...
- 利用Matlab快速绘制栅格地图
代码演示 % 基于栅格地图的机器人路径规划算法 % 第1节:利用Matlab快速绘制栅格地图 clc clear close all %% 构建颜色MAP图 cmap = [1 1 1; ... % ...
- 利用Matlab生成一个网格化的三维球面(生成直角坐标)
利用Matlab生成一个网格化的三维球面,分别对径向方向.经度方向和纬度方向进行网格化,代码如下: %生成一个笛卡尔坐标系下球面网格的x,y,z坐标 %r为球面距离 %nJingdu,nWeidu分别 ...
- 【转】利用matlab生成随机数函数
原文地址:利用matlab生成随机数函数 rand(n):生成0到1之间的n阶随机数方阵 rand(m,n):生成0到1之间的m×n的随机数矩阵 (现成的函数) betarnd:贝塔分布的随机数生成 ...
- 模式识别:利用MATLAB生成模式类
近期開始了模式识别的学习,在此之前须要对模式和模式类的概念有一个了解,这里使用MATLAB实现一些模式类的生成.在此之前,引用百科上对于模式识别和模式类的定义.也算加深以下了解: 模式识别(Patte ...
- 【caffe-windows】 caffe-master 之 卷积核可视化(利用matlab)
此篇是利用matlab对caffemodel的卷积核进行可视化.只介绍了卷积核的可视化,不涉及特征图的可视化. 是参考此博客: http://blog.csdn.net/zb1165048017/ar ...
- 【DSP开发】利用CCS5.4开发基于DSP6455的JPEG2000图像解压缩过程
[DSP开发]利用CCS5.4开发基于DSP6455的JPEG2000图像解压缩过程 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 说明:前端是时间基于VS ...
- 利用XtraBackup给MYSQL热备(基于数据文件)
利用XtraBackup给MYSQL热备(基于数据文件) By JRoBot on 2013 年 11 月 26 日 | Leave a response 利用XtraBackup给MYSQL热备(基 ...
随机推荐
- request.querystring和request.form的区别
1,request.querystring和request.form的区别 request.querystring是用来接收地址里面问号“?”后面的参数的内容, 用get方法读取的 不安全 requ ...
- C语言——for循环和while循环的效率区别——类似哨兵思想
int ID_Conv_Sentinel(int u16device_cfg_num) { int i8id; int size=0; int i=0; size = sizeof(Device_ID ...
- 洛谷P2279 消防局的设立【树形dp】
题目:https://www.luogu.org/problemnew/show/P2279 题意:一棵树.在节点处建消防站,可以覆盖与他距离在2之内的节点.问最少要建多少个消防站,可以覆盖所有的节点 ...
- 9、组件注册-@Import-使用ImportSelector
9.组件注册-@Import-使用ImportSelector 9.1 @Import 源码: @Target(ElementType.TYPE) @Retention(RetentionPolicy ...
- Ubuntu16安装fabric1.4.4环境
安装流程依照官网地址 https://hyperledger-fabric.readthedocs.io/en/release-1.4/build_network.html 如果需要安装最新的版本,可 ...
- P2587 [ZJOI2008]泡泡堂 神仙贪心
思路:贪心 提交:1次(看了题解$QwQ$) 题解: 若我方最弱可以干掉对方最弱,则干: 否则若我方最强可以干掉对方最强,则干: 否则若我方最弱与对方最强平手,则平: 其实貌似一二条是可以互换的,主要 ...
- 五十.KVM简介、 Virsh管理 、 自定义虚拟机、虚拟设备管理
1.virsh基本管理操作 列出当前正在运行的虚拟机 查看虚拟机的信息 管理虚拟机 设置虚拟机开机自动运行 1.1 virsh基本操作 查看kvm节点(服务器)信息 ] virsh nodei ...
- 6502 assemble 条件判断
LDA #$ CMP #$ BNE notequal STA $ notequal: BRK
- Java 类加载
类的生命周期 类的生命周期是从class文件到类加载 开始.类卸载结束. https://gitbook.cn/books/5cb844a55f75cc777e4c2320/index.html
- 访问项目时报错org.apache.jasper.JasperException: java.lang.NullPointerException
错误信息:org.apache.jasper.JasperException: java.lang.NullPointerException 原因:项目依赖的jar包和tomcat容器的依赖jar包有 ...