1.算法功能简介

  图像直方图描述了图像中每个亮度值DN的像元数量的统计分布。它通过每个亮度值的像元数除以图像中总得像元数,即频率直方图。在很多遥感应用中,直方图是遥感图像中所包含的信息的一种有用的图示。每个波段的直方图能提供关于原始图像质量的信息,如其对比度的强弱,是否多峰值等。

  下面介绍如何用PIE实现直方图统计分析,主要有两种方法,一个是直接调用PIE.Dataset.DatasetFactory类的ExecuteHistogramStatistics方法进行执行;另一种是直接调用PIE的直方图统计界面进行执行,两种区别在于第一种方法可以获取执行的统计信息,第二种只能作为界面的显示,不能获取界面执行后的统计信息。

2.算法功能实现说明

2.1 实现思路

第一步

调用DatasetFactory.ExecuteHistogramStatistics(….)执行直方图统计功能

第二步

设置参数以便传到第一步的算法中

第三步

结果显示

2.2 示例代码

数据路径

百度云盘地址下/ PIE示例数据/栅格数据/4.World/World.tif

示例代码

 /// <summary>
/// 直方图统计法
/// </summary>
public void HistogramStatistic()
{
//1、第一种方法
#region DatasetFactory类中的方法
string filePath = @"D:\data\China1\world\World.tif";//统计的数据路径
int band = ;//统计的波段编号(从0开始) 注意 索引号不能超过波段数
IList<double> listValue = new List<double>();//非统计值
float ratio = 100F;//采样比例 double max = ;//统计最大值
double min = ;//统计最小值
double median = ;//统计中值
double mode = ;//统计众值
double mean = ;//统计平均值
double dev = ;//统计标准差
double k = ;//峰值
double s = ;//偏度
uint numOfPixel = ;//总像素数
IDictionary<double, int>[] mapGray = new Dictionary<double, int>[];//统计直方图数据(256的数组) bool result = DatasetFactory.ExecuteHistogramStatistics(filePath, band, listValue, true, true, ratio, true, ref max, ref min, ref median, ref mode, ref mean, ref dev, ref k, ref s, ref numOfPixel, mapGray);
if (!result) return; string info = string.Format("数据{9}的第{10}波段的直方图统计信息:\r\n最大值:{0};\r\n最小值:{1};\r\n中值:{2};\r\n众值:{3};\r\n平均值:{4};\r\n标准差:{5};\r\n峰值:{6};\r\n偏度:{7};\r\n总像素值:{8};\r\n ", max, min, median, mode, mean, dev, k, s, numOfPixel, filePath, band + );
MessageBox.Show(info, "直方图统计信息");
#endregion //2、第二种方法
#region 调用界面显示 和第一种方法有所区别,该界面只能用于显示参数不能获取界面上的统计信息
//PIE.AxControls.HistogramStatDialog frmSupervisedClassificaiton = new AxControls.HistogramStatDialog();
//frmSupervisedClassificaiton.Initialize(m_HookHelper.FocusMap);
//frmSupervisedClassificaiton.ShowDialog(); //(frmSupervisedClassificaiton as IDisposable).Dispose();
//frmSupervisedClassificaiton = null;
#endregion
}

2.3 示例截图

图1第一种方法结果

图2:调界面显示结果(第二种方法)

PIE SDK直方图统计法的更多相关文章

  1. PIE SDK Command&&Tool工具命令一览表

    PIE SDK Command&&Tool工具命令一览表 编号 模板 名称(中文) Command&Tool 程序集 备注 1 数据管理 加载栅格数据 PIE.Controls ...

  2. PIE SDK 文章目录索引

    1.PIE SDK介绍 1.1.  PIE软件介绍 1.2.  PIE SDK介绍 1.3.  PIE支持项目介绍 1.4.  PIE.NET-SDK插件式二次开发介绍 1.5.  PIE.NET-S ...

  3. PIE SDK 距离分类和最大似然分类

       1.算法功能简介 监督分类,也叫训练场地法.训练分类法,是遥感图像分类的一种,用被确认类别的样本像元去识别其他未知类别像元的过程.监督分类算法有平行算法.平行六面体法.最小距离法.最大似然法.马 ...

  4. PIE SDK与OpenCV结合说明文档

    1.功能简介 OpenCV是基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS操作系统上.它轻量级而且高效——由一系列 C 函数和少量 ...

  5. PIE SDK影像坏线修复

    1.算法功能简介 坏条带的由来:2003年5月31日,Landsat-7ETM+机载扫描行校正器(SLC) 故障,导致此后获取的影像出现了数据条带丢失,严重影响了Landsat ETM遥感影像的使用. ...

  6. PIE SDK与GeoServer结合说明文档

    1.  GeoServer简介 GeoServer是OpenGIS Web服务器规范的J2EE实现的社区开源项目,利用GeoServer可以方便的发布地图数据,允许用户对特征数据进行更新.删除.插入操 ...

  7. PIE SDK组件式开发综合运用示例

    1. 功能概述 关于PIE SDK的功能开发,在我们的博客上已经分门别类的进行了展示,点击PIESat博客就可以访问,为了初学者入门,本章节将对从PIE SDK组件式二次开发如何搭建界面.如何综合开发 ...

  8. PIE SDK地图范围设置

    1.功能简介 地图范围设置主要就是对图层的地图浏览控制,例如地图的放大.缩小.漫游.全图显示.1:1视图.比例尺等功能,能更好的与地图有一个互动的地图浏览体验.PIE SDK对地图范围设置主要利用IC ...

  9. PIE SDK屏幕坐标和地图坐标转换

    1. 功能简介 屏幕坐标和地图坐标转换,就是字面意思,将电脑屏幕的坐标转换为带有空间信息的地图坐标,主要运用PIE SDK地图控件的ToMapPoint()方法,而地图坐标转换为设备坐标(屏幕),用的 ...

随机推荐

  1. 获取mac地址和扫描端口

    获取IP mac地址 arp -a 10.0.0.34 扫描指定IP 1到30000端口 nmap -p1-30000 10.0.0.36

  2. 其他综合-Cobbler无人值守安装系统 CentOS 7

    Cobbler 无人值守安装系统 CentOS 7 1.实验描述 1.1 概述 作为运维,在公司经常遇到一些机械性重复工作要做,例如:为新机器装系统,一台两台机器装系统,可以用光盘.U盘等介质安装,1 ...

  3. C++和C的相互调用

    C++和C相互调用实际工程中C++和C代码相互调用是不可避免的C++编译器能够兼容C语言的编译方式C++编译器会优先使用C++编译的方式extern关键字能强制让C++编译器进行C方式的编译 exte ...

  4. Vue之挂载点、变量、事件、js对象、文本指令、过滤器、事件指令和属性指令

    1.vue导入-挂载点 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=&qu ...

  5. 洛谷 P1182 数列分段 Section II

    洛谷 P1182 数列分段 Section II 洛谷传送门 题目描述 对于给定的一个长度为N的正整数数列A-iA−i,现要将其分成M(M≤N)M(M≤N)段,并要求每段连续,且每段和的最大值最小. ...

  6. c++中#ifndef ... 与#pragma once的区别

    原文链接:https://www.cnblogs.com/qiang-upc/p/11407364.html (1)C/C++防止头文件被include多次的方法:#ifnde..  及  #prag ...

  7. ASP.NET Core 中的 依赖注入介绍

    ASP.NET Core 依赖注入 HomeController public class HomeController : Controller { private IStudentReposito ...

  8. 洛谷p3385【模板】负环

    最近很久没怎么写最短路的题导致这个题交了好多遍 AC率是怎么下来的自己心里没点数 SPFA虽然臭名昭著但是他可以用来判负环 如果一个点进队的次数大于等于n说明存在负环 这道题一开始memset我给di ...

  9. 分布式共识算法 (三) Raft算法

    系列目录 分布式共识算法 (一) 背景 分布式共识算法 (二) Paxos算法 分布式共识算法 (三) Raft算法 分布式共识算法 (四) BTF算法 一.引子 1.1 介绍 Raft 是一种为了管 ...

  10. config 文件读取

    在项目中我们经常要使用到config文件进行相应的配置,来使我们的项目更加灵活健壮. 最常见的就connetionStrings .appSettings这两个节点,那么我们怎么读取呢? 1.首先 我 ...