生成土地利用变化转移矩阵的方法

生成土地利用变化转移矩阵的方法

这里是网上搜到的生成土地利用变化转移矩阵的几种方法,以飨来者:

A 栅格数据做转移矩阵

B 矢量数据做转移矩阵

1 来源:

http://blog.163.com/benben-sky/blog/static/[***********]56763/

作者 DAHONGME

根据你的数据类型选用不同的数据生成方法

若你的数据是Raster格式:则有如下方法

1 Erdas Imagine----Interpreter---Gis Analysis---Matrix,输入两个时相的Raster数据即可

做这一步之前记得先对两时相的数据进行重编码(nterpreter---Gis

Analysis---Recode)

一般运行如果出现错误 肯定是重编码没做好,请继续查证。

2 先在 Erdas中利用 Modeler 计算 如下公式

NC(I,J)=NC(I)*10+NC(J),(J>I)

其中:NC(I,J)表示i,j 两年份的土地利用变化图;NC(i)表示i年份遥感分类影像;NC(j)表示j年份的遥感分类影像。

在此计算的基础上,将以上变化影像图转化为BIL格式,再利用ARC/INFO GRID模块将影像转为GRID格式,然后利用GRID模块中的属性表(vat)查看命令对影像灰度值进行统计,最后得出土地利用转化举证。(注:此方法本人尚未实现过,不知可行否)。

若数据是Vector格式

1 Erdas Imagine----Interpreter---Gis Analysis---Matrix,输入两个时相的Vector数据即可

此时注意输出栅格大小不应设的太小要不一运行就会提示你的空间不足 做这一步之前,请做好前期的地理编码。

2 ArcView3.3加载 spatial analysis模块

把两时相的Vector图转成grid格式(当然中间有一些单位的设置根据你做的图的分辨率来设置即可)analysis---mapcaculate 直接计算即可。

3 把两期解译完的Vector文件在arctoolbox——overlay——union中叠加,注意:两个文件不能用同一个字段名,比如一个用93Type,另一个时相则用 00Type

叠加后的文件在Arcmap中打开,选中文件,然后点右键——Property——空间查询,输入条件语句,比如:93Type=„1‟And 00Type=„2‟;查询结果即为第一种类型转化为第二种类型的图形,可以另建一图层比如:12,把查询结果复制到12图层上。统计出面积,依进行,就可以得到土地利用类型转移矩阵。

最后输出土地利用变化图 ,如下图所示:

2 来源:http://kyxu2005.blog.163.com/blog/static/[***********]1474/

作者: 许科研

转移矩阵在土地利用变更调查时经常用到。arcgis里没有直接的工具来计算转移矩阵,但我们可以利用已有的工具间接来求。下面介绍一下利用arcgis求转移矩阵的方法。现有2005、2008两期土地利用现状数据(polygon.shp)

分别将两期数据用Data Management toolbox > Generalization > Dissolve工具,按各自的地类编码合并要素,注意选中最下面的“create multipat features”选项处理

好数据后,用intersect工具求两期数据的交集交集的结果:将属性表增加面积字段,并计算面积结果:

从上图中已经可以看出土地转移的情况:dlbm2005是2005年时该块地的地类代码,dlbm2008是2008年时该地块的地类代码,最后一列是相应地块的面积。接下来将属性表导出到dbf文件,然后在excel中打开,执行数据菜单中的“数据透视表和数据透视图”命令点完成,然后将""dlbm2005作为行字段,dlbm2008作为列字段"",area作为数据拖到相应的区域生成的数据透视表将数据复制到新的工作表中,适当的修整后即生成了土地利用转移矩阵。

3 来源:http://user.qzone.qq.com/124793909

作者:西海

写文章的过程中,同样也用到了土地利用/景观转移矩阵。转移矩阵的制作很多软件可以实现,有Arcview、Arcmap、还有人用matlab。但是网上都写的都不详细,在这里,本文才用arcmap的叠加操作+excel的数据统计功能,可以轻松完成这一过程。相信看完了本文,初学者或者对GIS了解不多的人,也能轻松的制作出转移矩阵。

方法一:

1 数据准备

准备好两期的coverage或shape文件。(注意:拓扑关系要建好,不然无法计算),采用Arcmap打开上述两期文件。

2 叠加操作

选择Arcmap里面的“ArcToolbox”按钮下面的“Analysis Tools”工具下面的叠加分析模块(Overlay)下面的交叉分析功能(Intersect)。选择已经打开的两期数据进行叠加分析。叠加的结果存在一个可以找到的地方。同时,把叠加后的结果添加在Arcmap里。

3 输出叠加文件的属性数据

A、右键打开intersect产生的矢量文件的数据属性表(open attribute table)。

B、点击“options”按钮,选择“add field”,然后给出一个新name“newarea”,数据类型为double

C、右键点击刚刚产生的“newarea”,并选择“calculate values”

D、然后点击“field calculator”对话框里面的“Advanced”后选择“help”将 Dim Output as double

Dim pArea as Iarea

Set pArea = [shape]

Output = pArea.area

拷入到“field calculator”对话框下面的空白处

E、在对话框“field calculator”最下面的空白处填上“output”

F、在属性表点击“options”按钮,→export(导出),属性以.dbf格式结果存储。 4 Excel进行转移矩阵制作

A、刚才存储的.dbf文件可以使用excel打开,打开的结果重新保存为.xls(excel)文件。

(dbf文件不能保存)

B、重新打开刚存储的excel文件。

C、选中所有数据,选择数据数据透视表和数据透视图。将两期数据的id值分别拖入行列字段,然后以„newarea‟字段作为数据项拖入计算区域。得到的便是转移矩阵。如果发现矩阵的形式不美观,可以对单位进行修改。

方法二:作某一地物与其他不同年份地类

例如:

1、做水体和其它年份分类地物的交集

A. 分别打开刚刚产生的水域多边形和该地区其他年份的分类矢量文件

B. 选择gis里面的“AacToolbox”按钮下面的“Analysis Tools”工具下面的叠加分析模块(Overlay)下面的交叉分析功能(Intersect)

C. 分别输入上面抽出的水域多边形和该地区其他年份区的分类后的多边形进行intersect分析

D. 右键打开intersect产生的矢量文件的数据属性表(open attribute table) E. 点击“options”按钮,选择“add field”,然后给出一个新name“newarea”,数据类型为double

F. 右键点击刚刚产生的“newarea”,并选择“calculate values”

G. 然后点击“field calculator”对话框里面的“Advanced”后选择“help”

将 Dim Output as double

Dim pArea as Iarea

Set pArea = [shape]

Output = pArea.area拷入到“field calculator”对话框下面的空白处

H.在对话框“field calculator”最下面填上“output”

2、然后分别计算水体在该地区其他年份年转入和转出情况

A.点击“potions”下面的“select by attribute”按钮,并选择“GRID_COD_1”

B.令GRID_COD_1=1 点击apply,此时会统计出该地区其他年份年仍然为水域的多边形

C.右键点击“newarea”选择统计功能(“statistics”),就会得到从然为水域的面积

D.分别计算出GRID_COD_1=2(林地)、3(草地)、4(城镇点)、5(耕地)、6(滩涂地)的面积就得到从由水域转入的面积。

以此类推

网上有人还采用的方法:

1、 Erdas:erdas--main--interpreter--gis analysis--matrix输入两个年份的分类图,然后进行重编码即可。

2、 Arcview:可以作个运算,其中一期的图*10或者100或者1000(土地利用类型取1位数时候×10,两位100),然后再加上另一期的土地利用图得出一个图的属性,肯定12,15,或者1221,或者1531之类的数据,应该就可以实现了。

3、 Matlab:听说,还没有亲眼见过,据说可以成功

4、ArcGIS:在一期数据的基础上,绘制出其变化的部分(很复杂,工作了量很大)。

生成土地利用变化转移矩阵的方法

这里是网上搜到的生成土地利用变化转移矩阵的几种方法,以飨来者:

A 栅格数据做转移矩阵

B 矢量数据做转移矩阵

1 来源:

http://blog.163.com/benben-sky/blog/static/[***********]56763/

作者 DAHONGME

根据你的数据类型选用不同的数据生成方法

若你的数据是Raster格式:则有如下方法

1 Erdas Imagine----Interpreter---Gis Analysis---Matrix,输入两个时相的Raster数据即可

做这一步之前记得先对两时相的数据进行重编码(nterpreter---Gis

Analysis---Recode)

一般运行如果出现错误 肯定是重编码没做好,请继续查证。

2 先在 Erdas中利用 Modeler 计算 如下公式

NC(I,J)=NC(I)*10+NC(J),(J>I)

其中:NC(I,J)表示i,j 两年份的土地利用变化图;NC(i)表示i年份遥感分类影像;NC(j)表示j年份的遥感分类影像。

在此计算的基础上,将以上变化影像图转化为BIL格式,再利用ARC/INFO GRID模块将影像转为GRID格式,然后利用GRID模块中的属性表(vat)查看命令对影像灰度值进行统计,最后得出土地利用转化举证。(注:此方法本人尚未实现过,不知可行否)。

若数据是Vector格式

1 Erdas Imagine----Interpreter---Gis Analysis---Matrix,输入两个时相的Vector数据即可

此时注意输出栅格大小不应设的太小要不一运行就会提示你的空间不足 做这一步之前,请做好前期的地理编码。

2 ArcView3.3加载 spatial analysis模块

把两时相的Vector图转成grid格式(当然中间有一些单位的设置根据你做的图的分辨率来设置即可)analysis---mapcaculate 直接计算即可。

3 把两期解译完的Vector文件在arctoolbox——overlay——union中叠加,注意:两个文件不能用同一个字段名,比如一个用93Type,另一个时相则用 00Type

叠加后的文件在Arcmap中打开,选中文件,然后点右键——Property——空间查询,输入条件语句,比如:93Type=„1‟And 00Type=„2‟;查询结果即为第一种类型转化为第二种类型的图形,可以另建一图层比如:12,把查询结果复制到12图层上。统计出面积,依进行,就可以得到土地利用类型转移矩阵。

最后输出土地利用变化图 ,如下图所示:

2 来源:http://kyxu2005.blog.163.com/blog/static/[***********]1474/

作者: 许科研

转移矩阵在土地利用变更调查时经常用到。arcgis里没有直接的工具来计算转移矩阵,但我们可以利用已有的工具间接来求。下面介绍一下利用arcgis求转移矩阵的方法。现有2005、2008两期土地利用现状数据(polygon.shp)

分别将两期数据用Data Management toolbox > Generalization > Dissolve工具,按各自的地类编码合并要素,注意选中最下面的“create multipat features”选项处理

好数据后,用intersect工具求两期数据的交集交集的结果:将属性表增加面积字段,并计算面积结果:

从上图中已经可以看出土地转移的情况:dlbm2005是2005年时该块地的地类代码,dlbm2008是2008年时该地块的地类代码,最后一列是相应地块的面积。接下来将属性表导出到dbf文件,然后在excel中打开,执行数据菜单中的“数据透视表和数据透视图”命令点完成,然后将""dlbm2005作为行字段,dlbm2008作为列字段"",area作为数据拖到相应的区域生成的数据透视表将数据复制到新的工作表中,适当的修整后即生成了土地利用转移矩阵。

3 来源:http://user.qzone.qq.com/124793909

作者:西海

写文章的过程中,同样也用到了土地利用/景观转移矩阵。转移矩阵的制作很多软件可以实现,有Arcview、Arcmap、还有人用matlab。但是网上都写的都不详细,在这里,本文才用arcmap的叠加操作+excel的数据统计功能,可以轻松完成这一过程。相信看完了本文,初学者或者对GIS了解不多的人,也能轻松的制作出转移矩阵。

方法一:

1 数据准备

准备好两期的coverage或shape文件。(注意:拓扑关系要建好,不然无法计算),采用Arcmap打开上述两期文件。

2 叠加操作

选择Arcmap里面的“ArcToolbox”按钮下面的“Analysis Tools”工具下面的叠加分析模块(Overlay)下面的交叉分析功能(Intersect)。选择已经打开的两期数据进行叠加分析。叠加的结果存在一个可以找到的地方。同时,把叠加后的结果添加在Arcmap里。

3 输出叠加文件的属性数据

A、右键打开intersect产生的矢量文件的数据属性表(open attribute table)。

B、点击“options”按钮,选择“add field”,然后给出一个新name“newarea”,数据类型为double

C、右键点击刚刚产生的“newarea”,并选择“calculate values”

D、然后点击“field calculator”对话框里面的“Advanced”后选择“help”将 Dim Output as double

Dim pArea as Iarea

Set pArea = [shape]

Output = pArea.area

拷入到“field calculator”对话框下面的空白处

E、在对话框“field calculator”最下面的空白处填上“output”

F、在属性表点击“options”按钮,→export(导出),属性以.dbf格式结果存储。 4 Excel进行转移矩阵制作

A、刚才存储的.dbf文件可以使用excel打开,打开的结果重新保存为.xls(excel)文件。

(dbf文件不能保存)

B、重新打开刚存储的excel文件。

C、选中所有数据,选择数据数据透视表和数据透视图。将两期数据的id值分别拖入行列字段,然后以„newarea‟字段作为数据项拖入计算区域。得到的便是转移矩阵。如果发现矩阵的形式不美观,可以对单位进行修改。

方法二:作某一地物与其他不同年份地类

例如:

1、做水体和其它年份分类地物的交集

A. 分别打开刚刚产生的水域多边形和该地区其他年份的分类矢量文件

B. 选择gis里面的“AacToolbox”按钮下面的“Analysis Tools”工具下面的叠加分析模块(Overlay)下面的交叉分析功能(Intersect)

C. 分别输入上面抽出的水域多边形和该地区其他年份区的分类后的多边形进行intersect分析

D. 右键打开intersect产生的矢量文件的数据属性表(open attribute table) E. 点击“options”按钮,选择“add field”,然后给出一个新name“newarea”,数据类型为double

F. 右键点击刚刚产生的“newarea”,并选择“calculate values”

G. 然后点击“field calculator”对话框里面的“Advanced”后选择“help”

将 Dim Output as double

Dim pArea as Iarea

Set pArea = [shape]

Output = pArea.area拷入到“field calculator”对话框下面的空白处

H.在对话框“field calculator”最下面填上“output”

2、然后分别计算水体在该地区其他年份年转入和转出情况

A.点击“potions”下面的“select by attribute”按钮,并选择“GRID_COD_1”

B.令GRID_COD_1=1 点击apply,此时会统计出该地区其他年份年仍然为水域的多边形

C.右键点击“newarea”选择统计功能(“statistics”),就会得到从然为水域的面积

D.分别计算出GRID_COD_1=2(林地)、3(草地)、4(城镇点)、5(耕地)、6(滩涂地)的面积就得到从由水域转入的面积。

以此类推

网上有人还采用的方法:

1、 Erdas:erdas--main--interpreter--gis analysis--matrix输入两个年份的分类图,然后进行重编码即可。

2、 Arcview:可以作个运算,其中一期的图*10或者100或者1000(土地利用类型取1位数时候×10,两位100),然后再加上另一期的土地利用图得出一个图的属性,肯定12,15,或者1221,或者1531之类的数据,应该就可以实现了。

3、 Matlab:听说,还没有亲眼见过,据说可以成功

4、ArcGIS:在一期数据的基础上,绘制出其变化的部分(很复杂,工作了量很大)。


相关内容

  • 基于CA―Markov模型的土地生态安全格局模拟
  • 摘要:基于郧阳区2015年土地利用数据,通过计算生态系统服务价值,借助该价值构建生态安全格局,以生态安全格局为影响因素,利用CA-Markov模型进行了不同情境下土地利用格局模拟.结果表明:ESP保护情景下,林地.耕地.建设用地.水域得到了有效的保护,并且保护程度依次降低,增加的面积分别为46.35 ...

  • ArcMap制作土地利用转移矩阵--图文详解版
  • 利用ArcMap制作土地利用转移矩阵--图文详解版 龚纯伟 2009-9-27 相信很多人在处理几期土地利用数据时,都会用到土地利用转移矩阵,转移矩阵是一个很直观的数据统计表,转移矩阵是怎么做出来呢?如果只是玩玩数字游戏那就算了,自己编了往里面填吧,如果考虑用地图来计算各土地利用流转变化情况,那要基 ...

  • 基于四阶段法的城市轨道交通客流预测模型研究
  • 基于四阶段法的城市轨道交通客流预 测模型研究 摘 要 关键词:轨道交通客流预测通过预测线路断面流量.换乘流量.车站出入口流量为规划线网方案的评价.轨道建设提供重要的量化指标,其对于轨道交通项目的科学决策具有重要的意义. 本文主要内容如下: (1)阐述国内外轨道交通预测研究现状和发展趋势,研究背景和研 ...

  • 基于碳转移矩阵的土地利用碳排放效应研究
  • 摘要:研究土地利用类型转变所引起的碳排放效应,为调整土地利用结构,实现区域土地低碳利用提供决策基础.运用ArcGIS软件对北部湾经济区1990.2000及2010年3个时期的遥感影像进行处理分析,得出土地利用转移矩阵,进而核算土地利用类型转变的碳排放转移矩阵.结果表明,在整个研究期内,因地类转移造成 ...

  • 灰色预测马尔科夫
  • 姓名: 徐茂森 学号: 班级:日期:2011年1月9日 基于灰色--马尔科夫模型的粮食产量预测 --以山东省潍坊市粮食产量为例 [摘要]:本文基于灰色预测GM(1,1) 模型基础上,结合马尔科夫链,针对传统预测方法精确度不高的问题,研究山东省粮食产量变化来预测未来粮食产量.理论分析和实证计算表明,此 ...

  • 基金净值预测的灰色――马尔可夫链模型
  • 摘要:本文吸取灰色预测方法和马尔可夫预测方法的优点,将两种方法结合起来,建立灰色-马尔可夫预测模型,并选取广发稳健增长一段时期内的基金净值数据作为样本进行预测分析.研究发现,利用灰色―马尔可夫预测模型预测基金净值具有较高的预测精度. 关键词:基金净值预测:灰色GM(1,1)模型:马尔可夫链 一.引言 ...

  • 遥感变化监测流程
  • 多时相土地利用/覆盖变化监测研究 方法及数据选取 土地是一个综合的自然地理概念,它处于地圈-生物圈-大气圈相互作用的界面,是各种自然过程和人类活动最为活跃的场所.地球表层系统最突出的景观标志就是土地利用和土地覆盖( Land Use and Land Cover).由于土地利用和土地覆盖与人类的生活 ...

  • 西安市人口预测模型
  • 西安市人 口 预 测 模 型 摘要 本文对人口预测的数学模型进行了研究.首先,建立一次线性回归模型,灰色序列预测模型和逻辑斯蒂模型.考虑到三种模型均具有各自的局限性,又用加权法建立了熵权组合模型,并给出了使预测误差最小的三个预测模型的加权系数,用该模型对人口数量进行预测,得到的结果如下: 其次,建立 ...

  • 交通规划课程设计报告
  • 交通规划课程设计 设计题目: <交通规划>课程设计 系部: 交通与物流工程系 专业: 交通工程 班级: 交通082班 学生姓名: 李添翼 学号: 080511230 指导老师: 张萌萌 马香娟 2011 年 12 月 16 日 目 录 第1章 概述 ................... ...