1.算法功能简介

主要分析功能是采用类似卷积滤波的方法将较大类别中的虚假像元归到该类中,首先定义一个变换核尺寸,然后用变换核中占主要地位(像元最多)类别数代替中心像元的类别数,次要分析相反,用变换核中占次要地位的像元的类别数代替中心像元的类别数。

PIE SDK支持算法功能的执行,下面对主/次要分析算法功能进行介绍。

2.算法功能实现说明

2.1. 实现步骤

第一步

算法参数设置

第二步

算法执行

第三步

结果显示

2.2. 算法参数

算法名称

主/次要分析

C#算法DLL

PIE.CommonAlgo.dll

C#算法名称

PIE.CommonAlgo.ImgClassPostMMAAlgo

参数结构体

StMajMinParameter

参数说明

InputFileName

String

输入分类文件

(*.tif;*.tiff; *.img)

OutputFilePath

String

输出分类主次要分析文件路径

(*.tif;*.tiff; *.img)

Veciselclass

IList<Int>

选中类别索引集合(正整数)

VeciNotselclass

IList<Int>

未选中类别索引集合(正整数)

MajMin

Int

分析方法类别(1代表次要,0代表主要)

KernelX

Int

核大小X(大于等于3的奇数)

KernelY

Int

核大小Y(大于等于3的奇数)

Weight

Int

中心像元比重(大于等于1的正数)

VecColor

IList<Int>

颜色列表

FuncName

String

功能名称

2.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/10.算法调用/图像处理/ImageProcessing. ImgClassPostMMAAlgo

数据路径

百度云盘地址下/PIE示例数据/栅格数据/01.GF1/ISODataClassification.tif

视频路径

百度云盘地址下/PIE视频教程/10.算法调用/图像处理/主次要分析算法.avi

示例代码

  /// <summary>
/// 主/次要分析算法测试,本算法实现了将ip_result1.tif进行主/次要分析,选择的分类列表为全部分类,形态学算子Rows和Columns均为3
///
/// </summary>
public override void OnClick()
{
#region 1、参数设置
PIE.CommonAlgo.StMajMinParameter info = new PIE.CommonAlgo.StMajMinParameter(); info.InputFileName = @"D:\Data\ISODataClassification.tif";
info.OutputFileName = @"D:\Data\ip_result6.tif";
info.Veciselclass = new List<int> { , , , , , , , , };
info.VeciNotselclass = new List<int> { };
info.MajMin = ;
info.KernelX = ;
info.KernelY = ;
info.Weight=;
info.VecColor = null; PIE.SystemAlgo.ISystemAlgo algo = PIE.SystemAlgo.AlgoFactory.Instance().CreateAlgo("PIE.CommonAlgo.dll", "PIE.CommonAlgo.ImgClassPostMMAAlgo");
if (algo == null) return;
#endregion //2、算法执行
PIE.SystemAlgo.ISystemAlgoEvents algoEvents = algo as PIE.SystemAlgo.ISystemAlgoEvents;
algo.Name = " 主/次要分析";
algo.Params = info;
bool result = PIE.SystemAlgo.AlgoFactory.Instance().ExecuteAlgo(algo); //3、结果显示
ILayer layer = PIE.Carto.LayerFactory.CreateDefaultLayer(@"D:\Data\ip_result6.tif");
m_HookHelper.ActiveView.FocusMap.AddLayer(layer);
m_HookHelper.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);

2.4.示例截图

PIE SDK主/次要分析的更多相关文章

  1. PIE SDK主成分变换

    1.算法功能简介   主成分变换(Principal Component Analysis,PCA)又称K-L(Karhunen-Loeve)变换或霍特林(Hotelling)变换,是基于变量之间的相 ...

  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 Command&&Tool工具命令一览表

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

  4. PIE SDK缨帽变换

    1.算法功能简介 缨帽变换是根据多光谱遥感中土壤.植被等信息在多维光谱空间中信息分布结构对图像做的经验性线性正交变换. PIE 支持对 Landsat MSS. Landsat 5 TM.Landsa ...

  5. PIE SDK小波变换

    1.算法功能简介 小波变换是一种信号的时间——尺度分析方法,具有多分辨率分析的特点,而且在时频两域都具有表征信号局部特征的能力,是一种窗口大小固定不变但其形状可变,时间窗和频率窗都可变的时频局部化分析 ...

  6. Gvr SDK for Unity 分析(二)

    前言 关于google vr sdk的具体使用,传送门 Gvr SDK for Unity 分析(一) Google Daydream平台已经整合进Google VR SDK 本文环境:Unity5. ...

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

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

  8. PIE SDK栅格数据的投影转换

    1. 功能简介 为了适应不同数据显示分析的需要,数据的投影可以进行相应的转换,目前PIE SDK支持多种数据格式的投影转换,下面对栅格数据格式的投影转换功能进行介绍. 2. 功能实现说明 2.1. 实 ...

  9. PIE SDK傅里叶变换

    1.算法功能简介 傅里叶变换能把遥感图像从空域变换到只包含不同频域信息的频域中.原图像上的灰度突变部位(如物体边缘).图像结构复杂的区域.图像细节及干扰噪声等,经傅里叶变换后,其信息大多集中在高频区: ...

随机推荐

  1. 无法解析的外部符号 _WinMain@16(原)

    原来的控制台程序,想修改为windows程序时,会出现 无法解析的外部符号 WinMain,该符号在函数 __tmainCRTStartup 中被引用 在链接器->高级->入口点输入:ma ...

  2. 第07章-Spring MVC 的高级技术

    Spring MVC 的高级技术 1. Spring MVC配置的替代方案 1.1 自定义DispatcherServlet配置 AbstractAnnotationConfigDispatcherS ...

  3. Python&Django学习系列之-激活管理界面

    1.创建你个人的项目与APP 2.填写你的数据库名称与数据库类型,这里使用内置的sqllite3 3.修改setting文件 a.将'django.contrib.admin'加入setting的IN ...

  4. 软件工程:Java实现WC.exe基本功能

    项目相关要求 GitHub地址:https://github.com/3216004716/WC 实现一个统计程序,它能正确统计程序文件中的字符数.单词数.行数,以及还具备其他扩展功能,并能够快速地处 ...

  5. IOException while loading persisted sessions: java.io.EOFException

    运行eclipse启动服务器的时候,出现了IOException while loading persisted sessions: java.io.EOFException报错.本以为是代码修改出现 ...

  6. WinForm中的重绘 - 文本的重绘

    两种方式 TextRenderer.DrawText 注意:默认在每次绘制的文本左右有padding,即使参数中设置了TextFormatFlags.NoPadding也是一样,因此在分段绘制文本时( ...

  7. 解决Turn your Session into FlushMode.COMMIT/AUTO or remove 'readOnly' marker fro问题

    项目中碰到一个问题,就是将一个map转换成json格式的时候出现错误,最后排查将延迟加载关闭后成功转换,因为数据量较大,于是重新创建了一个对象进行接收. 解决办法是在配置文件中进行配置 虽然解决了这个 ...

  8. EF进阶篇(三)——上下文

    前言 上下文,到底什么是上下文,且听我仔细吹来. 内容 在对EF实体进行关系操作的时候,第一步需要我们创建上下文实例对象,然后根据实体的变化进而通过上下文对该实体进行状态的修改,我的理解就是上下文就是 ...

  9. linux系统安全及应用——账号安全(基本安全措施)

    不开启桌面可以减少受攻击面 一.系统账号清理 1)非登录用户的shell改为/sbin/nologin ~] #usermod -s /sbin/nologin user1 2)锁定长期不用的账号 锁 ...

  10. Date时间格式的转换以及一些用法

    import java.util.Date; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.u ...