【遥感专题系列】影像信息提取之——面向对象的影像分类技术

“同物异谱,同谱异物”会对影像分类产生的影响,加上高分辨率影像的光谱信息不是很丰富,还有经常伴有光谱相互影响的现象,这对基于像素的分类方法提出了一种挑战,面向对象的影像分类技术可以一定程度减少上述影响。

本专题以ENVI中的面向对象的特征提取FX工具为例,对这种技术和处理流程做一个简单的介绍。

本专题包括以下内容:

  • 面向对象分类技术概述
  • ENVI FX简介
  • ENVI FX操作说明

1、面向对象分类技术概述

面向对象分类技术集合临近像元为对象用来识别感兴趣的光谱要素,充分利用高分辨率的全色和多光谱数据的空间,纹理,和光谱信息来分割和分类的特点,以高精度的分类结果或者矢量输出。它主要分成两部分过程:对象构建和对象的分类。

影像对象构建主要用了影像分割技术,常用分割方法包括基于多尺度的、基于灰度的、纹理的、基于知识的及基于分水岭的等分割算法。比较常用的就是多尺度分割算法,这种方法综合遥感图像的光谱特征和形状特征,计算图像中每个波段的光谱异质性与形状异质性的综合特征值,然后根据各个波段所占的权重,计算图像所有波段的加权值,当分割出对象或基元的光谱和形状综合加权值小于某个指定的阈值时,进行重复迭代运算,直到所有分割对象的综合加权值大于指定阈值即完成图像的多尺度分割操作。

影像对象的分类,目前常用的方法是“监督分类”和“基于规则(知识)分类”。这里的监督分类和我们常说的监督分类是有区别的,它分类时和样本的对比参数更多,不仅仅是光谱信息,还包括空间、纹理等对象属性信息。基于规则(知识)分类也是根据影像对象的属性和阈值来设定规则进行分类。

表1为三大类分类方法的一个大概的对比。

类型

基本原理

影像的最小单元

适用数据源

缺 陷

传统基于光谱的分类方法

地物的光谱信息特征

单个的影像像元

中低分辨率多光谱和高光谱影像

丰富的空间信息利用率几乎为零

基于专家知识决策树

根据光谱特征、空间关系和其他上下文关系归类像元

单个的影像像元

多源数据

知识获取比较复杂

面向对象的分类方法

几何信息、结构信息以及光谱信息

一个个影像对象

中高分辨率多光谱和全色影像

速度比较慢

表1 传统基于光谱、基于专家知识决策树与基于面向对象的影像分类对比表

2、ENVI FX简介

全名叫“面向对象空间特征提取模块—Feature Extraction”,基于影像空间以及影像光谱特征,即面向对象,从高分辨率全色或者多光谱数据中提取信息,该模块可以提取各种特征地物如车辆、建筑、道路、桥、河流、湖泊以及田地等。该模块可以在操作过程中随时预览影像分割效果。该项技术对于高光谱数据有很好的处理效果,对全色数据一样适用。对于高分辨率全色数据,这种基于目标的提取方法能更好的提取各种具有特征类型的地物。一个目标物体是一个关于大小、光谱以及纹理(亮度、颜色等)的感兴趣区域。

可应用于:

  • 从影像中尤其是大幅影像中查找和提取特征。
  • 添加新的矢量层到地理数据库
  • 输出用于分析的分类影像
  • 替代手工数字化过程

具有易于操作(向导操作流程),随时预览效果和修改参数,保存参数易于下次使用和与同事共享,可以将不同数据源加入ENVI FX中(DEMs、LiDAR datasets、shapefiles、地面实测数据)以提高精度、交互式计算和评估输出的特征要素、提供注记工具可以标识结果中感兴趣的特征要素和对象等特点。

3、ENVI FX操作说明

ENVI FX的操作可分为两个部分:发现对象(Find Object)和特征提取(Extract features),如图1所示。

图1 FX操作流程示意图

下面在ENVI5.x下的FX工具,以0.6米的QB图像为例,介绍向对象信息提取的流程。下面我们。

3.1 基于规则的面向对象信息提取

该方法的工具为Toolbox /Feature Extraction/ Rule Based Feature Extraction Workflow

第一步:准备工作

根据数据源和特征提取类型等情况,可以有选择地对数据做一些预处理工作。

  • 空间分辨率的调整

   如果您的数据空间分辨率非常高,覆盖范围非常大,而提取的特征地物面积较大(如云、大片林地等)。可以降低分辨率,提供精度和运算速度。可利用Toolbox/Raster Management/Resize Data工具实现。

  • 光谱分辨率的调整

如果您处理的是高光谱数据,可以将不用的波段除去。可利用Toolbox/Raster Management/Layer Stacking工具实现。

ENVI5.6版本后改为/Raster Management/Build Layer Stack

  • 多源数据组合

当您有其他辅助数据时候,可以将这些数据和待处理数据组合成新的多波段数据文件,这些辅助数据可以是DEM, lidar 影像, 和SAR 影像。当计算对象属性时候,会生成这些辅助数据的属性信息,可以提高信息提取精度。可利用Toolbox/Raster Management/Layer Stacking工具实现。

ENVI5.6版本后改为/Raster Management/Build Layer Stack

  • 空间滤波

如果您的数据包含一些噪声,可以选择ENVI的滤波功能做一些预处理。

这里直接在ENVI中打开qb_colorado.dat图像文件。

第二步:发现对象

  • 启动Rule Based FX工具

在Toolbox中,找到Feature Extraction,选择/Feature Extraction/Rule Based Feature Extraction Workflow,打开工作流的面板,选择待分类的影像qb_colorado.dat,此外还有三个面板可切换:在Input Mask面板可输入掩膜文件,在Ancillary Data面板可输入其他多源数据文件,切换到Custom Bands面板,有两个自定义波段,包括归一化植被指数或者波段比值、HSI颜色空间,这些辅助波段可以提高图像分割的精度,如植被信息的提取等自定义的属性,在Normalized Difference和Color Space属性上打钩,如下图所示,点击Next;

图2 输入数据和属性参数选择

  • 影像分割、合并

FX根据临近像素亮度、纹理、颜色等对影像进行分割,它使用了一种基于边缘的分割算法,这种算法计算很快,并且只需一个输入参数,就能产生多尺度分割结果。通过不同尺度上边界的差异控制,从而产生从细到粗的多尺度分割。

选择高尺度影像分割将会分出很少的图斑,选择一个低尺度影像分割将会分割出更多的图斑,分割效果的好坏一定程度决定了分类效果的精确度,我们可以通过preview预览分割效果,选择一个理想的分割阀值,尽可能好地分割出边缘特征。有两个图像分割算法供选择:

  • Edge, 基于边缘检测,需要结合合并算法可以达到最佳效果;
  • Intensity: 基于亮度,这种算法非常适合于微小梯度变化(如DEM)、电磁场图像等,不需要合并算法即可达到较好的效果。

调整滑块阀值对影像进行分割,这里设定阈值为40。

注:按钮

是用来选择分割波段的,默认为Base Image所有波段。

影像分割时,由于阈值过低,一些特征会被错分,一个特征也有可能被分成很多部分。我们可以通过合并来解决这些问题。合并算法也有两个供选择:

  • Full Lambda Schedule,合并存在于大块、纹理性较强的区域,如树林、云等,该方法在结合光谱和空间信息的基础上迭代合并邻近的小斑块;
  • Fast Lambda: 合并具有类似的颜色和边界大小相邻节段。设定一定阈值,预览效果。

这里我们设置的阈值为90,点Next进入下一步。

Texture Kernal Size:纹理内核的大小,如果数据区域较大而纹理差异较小,可以把这个参数设置大一点。默认是3,最大是19。

注:这一步是可选项,如果不需要可以按照默认的0直接跳过。

 

图3 图像分割、合并

这时候FX生成一个Region Means 影像自动加载图层列表中,并在窗口中显示,它是分割后的结果,每一块被填充上该块影像的平均光谱值。接着进行下一步操作。

目前,已经完成了发现对象的操作过程,接下来是特征的提取。

第三步:根据规则进行特征提取

在规则分类界面。每一个分类有若干个规则(Rule)组成,每一个规则有若干个属性表达式来描述。规则与规则之间是与的关系,属性表达式之间是并的关系。

同一类地物可以由不同规则来描述,比如水体,水体可以是人工池塘、湖泊、河流,也可以是自然湖泊、河流等,描述规则就不一样,需要多条规则来描述。每条规则又有若干个属性来描述,如下是对水的一个描述:

  • 面积大于500像素
  • 延长线小于5
  • NDVI小于25

对道路的描述:

  • 延长线大于9
  • 紧密度小于3
  • 标准差小于20

这里以提取居住房屋为例来说明规则分类的操作过程。

首先分析影像中容易跟居住房屋错分的地物有:道路、森林、草地以及房屋旁边的水泥地。

点击按钮

,新建一个类别,在右侧Class properties下修改好类别的相应属性。

图4 规则分类面板

  • 第一条属性描述,划分植被覆盖和非覆盖区。

在默认的属性Spectral Mean上单击,激活属性,右边出现属性选择面板,如图所示。选择Spectral,Band下面选择Normalized Difference。在第一步自定义波段中选择的波段是红色和近红外波段,所以在此计算的是NDVI。把Show Attribute Image勾上,可以看到计算的属性图像。

通过拖动滑条或者手动输入确定阈值。在阈值范围内的在预览窗口里显示为红色,在Advanced面板,有三个类别归属的算法:算法有二进制、线性和二次多项式。选择二进制方法时,权重为0或者1,即完全不匹配和完全匹配两个选项;当选择线性和二次多项式时,可通过Tolerance设置匹配程度,值越大,其他分割块归属这一类的可能性就越大。这里选择类别归属算法为Liner,分类阈值Tolerance为默认的5,如下图

图5 对象属性面板

图6 归属类别算法和阈值设置

  • 第二条属性描述,剔除道路干扰

居住房屋和道路的最大区别是房屋是近似矩形,我们可以设置Rectangular fit属性。在Rule上右键选择Add Attibute按钮,新建一个规则,在右侧Type中选择Spatial,在Name中选择Rectangular fit。设置值的范围是0.5~1,其他参数为默认值。

注:预览窗口默认是该属性的结果,点击All Classes,可预览几个属性共同作用的结果。

同样的方法设置

Type:Spatial;Name:Area——Area>45

Type:Spatial;Name:Elongation——Elongation<3

  • 第三条属性描述,剔除水泥地干扰

水泥地反射率比较高,居住房屋反射率较低,所以我们可以设置波段的象元值。

Type:spectral;Name:Spectral Mean,Band:GREEN——Spectral Mean (GREEN)<650。

点击All Classes,最终的rule规则和预览图如下图所示。

注:单击

按钮,打开“房屋.rul”,可以导入预先设置的规则。

图7 房屋提取规则与结果

第四步:输出结果

    特征提取结果输出,可以选择以下结果输出:矢量结果及属性、分类图像及分割后的图像、还有高级输出包括属性图像和置信度图像、辅助数据包括规则图像及统计输出,如下图所示。

图8 输出结果

     这里我们选择矢量文件及属性数据一块输出,规则图像及统计结果输出。点击Finish按钮完成输出。可以查看房屋信息提取的结果和矢量属性表

类似的思路可以提取道路、林地、草地等分类,这里就不一一例举。

3.2 基于样本的面向对象的分类

该方法的工具为Toolbox /Feature Extraction/Example Based Feature Extraction Workflow。

在Toolbox中找打该工具,双击打开流程化的面板,前面两步和第一种方法的前两步完全一致,选择数据和发现对象,在此不一一赘述。我们直接看特征提取这部分:基于样本的图像分类。

第三步:基于样本的图像分类

经过图像分割和合并之后,进入到监督分类的界面,如下图所示:

图9监督分类界面

  • 选择样本

对默认的一个类别,在右侧的Class Properties中,修改显示颜色、名称等信息。

图10 修改类别属性信息

在分割图上选择一些样本,为了方便样本的选择,可以在左侧图层管理中将Region Means图层关闭掉,显示原图,选择一定数量的样本,如果错选样本,可以在这个样本上点击左键删除。

一个类别的样本选择完成之后,新增类别,用同样的方法修改类别属性和选择样本。在选择样本的过程中,可以随时预览结果。可以把样本保存为shp文件以备下次使用。点击按钮可以将真实数据的ShapeFile矢量文件作为训练样本。

这里我们建立5个类别:道路、房屋、草地、林地、水泥地,分别选择一定数量的样本,如下图所示。

图11 选择样本

  • 设置样本属性

   切换到Attributes Selection选项。默认是所有的属性都被选择,这些选择样本的属性将被用于后面的监督分类。可以根据提取的实际地物特性选择一定的属性。这里按照默认全选。

图12 样本属性选择

  • 选择分类方法

切换到Algorithm选项。FX提供了三种分类方法:K邻近法(K Nearest Neighbor)、支持向量机(Support Vector Machine ,SVM)和主成分分析法(Principal Components Analysis ,PCA)。

图13 分类方法

K邻近分类方法依据待分类数据与训练区元素在N维空间的欧几里得距离来对影像进行分类,N由分类时目标物属性数目来确定。相对传统的最邻近方法,K近邻法产生更小的敏感异常和噪声数据集,从而得到更准确地分类结果,它自己会确定像素最可能属于哪一类。

在K参数里键入一个整数,默认值是1,K参数是分类时要考虑的临近元素的数目,是一个经验值,不同的值生成的分类结果差别也会很大。K参数设置为多少依赖于数据组以及您选择的样本。值大一点能够降低分类噪声,但是可能会产生不正确的分类结果,一般值设到3-7之间就比较好。

支持向量机是一种来源统计学习理论的分类方法。选择这一项,需要定义一系列参数:

a)Kernel Type下拉列表里选项有 Linear,Polynomial,Radial Basis,以及 Sigmoid。

  • 如果选择Polynomial,设置一个核心多项式(Degree of Kernel Polynomial)的次数用于SVM,最小值是1,最大值是6。
  • 如果选择Polynomial or Sigmoid,使用向量机规则需要为Kernel指定 the Bias ,默认值是1。
  • 如果选择是 Polynomial、Radial Basis、Sigmoid,需要设置Gamma in Kernel Function参数。这个值是一个大于零的浮点型数据。默认值是输入图像波段数的倒数。

b)为SVM规则指定the Penalty参数,这个值是一个大于零的浮点型数据。这个参数控制了样本错误与分类刚性延伸之间的平衡, 默认值是100。

Allow Unclassified是允许有未分类这一个类别,将不满足条件的斑块分到该类,默认是允许有未分类的类别。

Threshold 为分类设置概率域值,如果一个像素计算得到所有的规则概率小于该值,该像素将不被分类,范围是0~100,默认是5。

    主成分分析是比较在主成分空间的每个分割对象和样本,将得分最高的归为这一类。

这里我们选择K邻近法,K参数设置为5,点击Next,输出结果。

最终结果的输出方法和基于规则的一样。

3.3 直接输出矢量

该方法的工具为Toolbox/Feature Extraction/Segment Only Feature Extraction Workflow。

操作方法参考前面的第一和第二步骤,第三步直接选择路径输出分割栅格结果和矢量结果。

从以上的实际操作可以看到,ENVI FX扩展模块操作具有易于操作(向导操作流程),随时预览效果和修改参数。

4、小结

    基于像元的分类方法,依据主要是利用像元的光谱特征,大多应用在中低分辨率遥感图像。而高分辨率遥感图像的细节信息丰富,图像的局部异质性大,传统的基于像元的分类方法易受高分辨率影像局部异质性大的影响和干扰。而面向对象分类方法可以高分辨率图像丰富的光谱、形状、结构、纹理、相关布局以及图像中地物之间的上下文信息,可以结合专家知识进行分类,可以显著提高分类精度,而且使分类后的图像含有丰富的语义信息,便于解译和理解。对高分辨率影像来说,还是一种非常有效的信息提取方法,具有很好的应用前景。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/333368.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【AI接口】语音版、文心一言大模型和AI绘图、图片检测API

文章目录 一、语音版大模型AI1、接口2、请求参数3、请求参数示例4、接口返回示例 二、AI图片鉴黄合规检测API1、接口2、请求参数3、请求参数示例4、接口返回示例5、报错说明6、代码开源 三、人工智能AI绘画API1、接口2、请求参数3、请求参数示例4、接口返回示例5、AI绘画成果展…

Redis(四)

1、Redis的单/多线程 1.1、单线程 其实直接说Redis什么单线程或者是多线程&#xff0c;不太准确&#xff0c;在redis的4.0版主之前是单线程&#xff0c;然后在之后的版本中redis的渐渐改为多线程。 Redis是单线程主要是指Redis的网络IO和键值对读写是由一个线程来完成的&#…

安全高效、成本低廉:云桥通SD-WAN企业组网解决企业全球网络挑战

安全高效、成本低廉&#xff1a;云桥通SD-WAN企业组网解决企业全球网络挑战 随着企业规模的扩张和数字化转型的加速&#xff0c;面对分布全球的总部、分支机构、门店、数据中心和云服务之间的网络互联、数据传输和应用加速挑战&#xff0c;云桥通SD-WAN组网已然崭露头角。其在…

F - Digital Roots HUOJ

题目 The digital root of a positive integer is found by summing the digits of the integer. If the resulting value is a single digit then that digit is the digital root. If the resulting value contains two or more digits, those digits are summed and the pro…

SRC实战 | 任意密码重置绕过

本文由掌控安全学院 - 叴龙 投稿 1.信息搜集 2.漏洞挖掘 1.信息搜集 没事干&#xff0c;准备找个证书站挖挖看&#xff0c;没想到碰到一个小通用系统。看样子还挺多功能可以测。 这里利用F12 查看前端源码js 或者css文件提取指纹&#xff0c;直接用hunter或者fofa搜索到同一…

WordPress设置回收站自动清理天数的插件Change Empty Trash Time

前面boke112百科跟大家分享的『WordPress回收站自动清空时间&#xff1f;如何关闭回收站或设置自动清理天数&#xff1f;』一文&#xff0c;就介绍了可以添加一行代码实现关闭或设置回收站自动清理时间&#xff0c;也可以通过安装Change Empty Trash Time插件来实现。 今天bok…

Vue基础入门 - Vue的快速创建、Vue的开发者工具安装及Vue的常用指令(v-model,v-bind,computed计算属性,watch侦听器)

Vue 文章目录 Vue1 什么是Vue2 创建Vue实例2.1 快速创建2.2 插值表达式 {{}}2.3 响应式特性2.3.1 访问与修改 3 Vue开发者工具安装4 Vue中的常用指令4.1 内容渲染指令4.2 条件渲染指令4.3 事件绑定指令4.4 属性绑定指令4.5 案例-上下页图片翻页4.6 列表渲染指令4.7 案例-能删除…

《SPSS统计学基础与实证研究应用精解》视频讲解:参数估计

《SPSS统计学基础与实证研究应用精解》2.5 视频讲解 视频为《SPSS统计学基础与实证研究应用精解》张甜 杨维忠著 清华大学出版社 一书的随书赠送视频讲解2.5节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。本书旨在手把手教会使…

【数字人】10、HyperLips | 使用 audio 实现高保真高清晰的唇部驱动

文章目录 一、背景二、相关工作2.1 Audio-Driven Talking Face Generation2.2 HyperNetwork2.3 Prior Based Face Restoration 三、方法3.1 Base Face Generation3.2 High-Fidelity Rendering 四、效果 论文&#xff1a;HyperLips: Hyper Control Lips with High Resolution De…

[Android] Android架构体系(2)

文章目录 Bionic精简对系统调用的支持:不支持 System V IPC:有限的 Pthread 功能:有限支持C:不再支持本地化和/或宽字符:Bionic新增的特性系统属性硬编码写死的UID/GID内置了DNS解析硬编码写死的服务和协议 硬件抽象层Linux内核匿名共享内存(ASHMem)BinderLoggerION 内存管理内…

vue2嵌入高德地图选择地址后显示地址和经纬度

以高德地图为里&#xff0c;申请key&#xff0c;选择js api服务&#xff0c;获取key和密钥. vue2项目代码引入相关依赖&#xff1a; npm i amap/amap-jsapi-loader -S 封装成组件: <template><div><el-row :gutter"15" class""><…

[C++] external “C“的作用和使用场景

C++中extern "C"的作用是什么? 在 C++ 中,extern "C" 的作用是告诉编译器按照 C 语言的规范来处理函数名和变量名。这是因为 C++ 编译器会对函数名和变量名进行名称修饰(name mangling),以区分不同的函数和变量。而在 C 语言中,函数名和变量名不会被名…

【b站咸虾米】chapter4_vue组件_新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握

课程地址&#xff1a;【新课uniapp零基础入门到项目打包&#xff08;微信小程序/H5/vue/安卓apk&#xff09;全掌握】 https://www.bilibili.com/video/BV1mT411K7nW/?p12&share_sourcecopy_web&vd_sourceb1cb921b73fe3808550eaf2224d1c155 四、vue组件 uni-app官网 …

《战略共创年度辅导》:手把手辅导企业做战略,比传统咨询更落地

今天产业迭代速度不断加剧,人类知识更迭周期大大压缩到2年以内,企业遭遇更多挑战:1.增长乏力;2.品牌老化;3.竞争压力大;4.竞争方向不明确;5.产品同质化;6.利润越来越低;7.团队执行难等等。 基于此&#xff0c;《战略共创年度辅导》应运而生&#xff0c;旨在手把手辅导企业家及…

基于改进蝙蝠算法的三维航线规划算法

matlab2020a可正常运行 基于改进蝙蝠算法的三维航线规划资源-CSDN文库

MySQL深度分页优化问题

☆* o(≧▽≦)o *☆嗨~我是小奥&#x1f379; &#x1f4c4;&#x1f4c4;&#x1f4c4;个人博客&#xff1a;小奥的博客 &#x1f4c4;&#x1f4c4;&#x1f4c4;CSDN&#xff1a;个人CSDN &#x1f4d9;&#x1f4d9;&#x1f4d9;Github&#xff1a;传送门 &#x1f4c5;&a…

2018年认证杯SPSSPRO杯数学建模A题(第二阶段)海豚与沙丁鱼全过程文档及程序

2018年认证杯SPSSPRO杯数学建模 基于聚类分析的海豚捕食合作策略 A题 海豚与沙丁鱼 原题再现&#xff1a; 沙丁鱼以聚成大群的方式来对抗海豚的捕食。由于水下光线很暗&#xff0c;所以在距离较远时&#xff0c;海豚只能使用回声定位方法来判断鱼群的整体位置&#xff0c;难…

cKDTree中的query_ball_point()函数用法

1. 用法 x可以是一个点也可以是一堆点&#xff0c;要找x邻域内的点。 r是搜索的半径。 eps是一个非负的float型小数&#xff0c;如果最近邻的点距离比r/(1eps)还大&#xff0c;则不再进行搜索。 返回找到的点的索引。 from scipy.spatial import cKDTree #point cloud data -&…

PBR材质纹理下载

03:10 按照视频里的顺序 我们从第6个网站开始倒数 点击本行文字或下方链接 进入查看 6大网站地址 网址查看链接&#xff1a; http://www.uzing.net/community_show-1962-48-48-35.html 06 Tectures Wood Fence 001 | 3D TEXTURES 简介&#xff1a;最大的纹理网站之一&#x…

Vcruntime140_1.dll丢失的错误提示怎么解决,关于Vcruntime140_1.dll文件

在使用电脑时你是否遇到过关于Vcruntime140_1.dll文件丢失的错误提示&#xff0c;出现这样的提示时是不是不知所措&#xff0c;今天就给大家讲解Vcruntime140_1.dll文件的一些相关介绍&#xff0c;希望能够帮助大家解决Vcruntime140_1.dll丢失的难题。 一.Vcruntime140_1.dll文…