版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于GEE平台的耕地面积遥感监测实现分析案例目录TOC\o"1-3"\h\u13471基于GEE平台的耕地面积遥感监测实现分析案例 1217961.1系统配置要求 1173211.2系统架构设计 2158191.3系统实现 272961.3.1近十年流失和新增耕地显示功能实现 2323861.3.2近十年耕地总面积变化数据显示功能实现 3281081.3.3获取经纬度和显示NDVI指数变化功能实现 4289111.3.4发布APP部署实现 44351.4系统测试 564851.1.1近十年流失和新增耕地显示模块 5274761.1.2近十年耕地总面积变化数据显示模块 616831.1.3获取经纬度和显示NDVI指数变化模块 7116001.1.4发布APP部署测试 81.1系统配置要求本系统整个是在GEE平台进行操作运行,因此首先需要申请GEE账号并审核。进入到EarthEngineCodeEditor界面进行代码编辑及地图显示运作。GEE无需构建平台,其基于Web进行开发。GEE平台提供的集成开发环境具有许多功能,可以大大减少编码工作量,这使得地理数据可视化的开发更加高效和易于实现[12]。EarthEngineApps作为部署环境,实现了Web可视化应用的迁移,使得Web应用更易于运行、部署和扩展。目前,GEE接口支持JavaScript和Python两种语言版本,本系统开发采用JavaScript语言。JavaScript是一种可直接调用的解释性脚本语言,无需编译即可直接在浏览器中运行,其也易于开发和跨平台。系统环境类型如下,见表4-1。表4-1系统环境系统环境类型说明开发环境GEE平台运行环境Windows10、Chrome浏览器开发语言JavaScript语言部署环境EarthEngineApps1.2系统架构设计基于云平台的Web可视化应用可视为B/S(Browser/server)架构。一般B/S架构的Web应用有一个非常明显的三层结构体系,即数据层(DAL)、业务逻辑层(BLL)和表示层(UI),各阶层之间分工明确。DAL层完成对数据库数据的操作,并将操作结果返回给Bll层;Bll层是UI层和DAL层之间的中间桥梁,其功能是连接DAL层,实现数据的业务逻辑处理,并将处理结果传输到UI层;UI层实现了数据的输入和输出,保证了用户体验。其开发人员需要设计底层数据库、数据库与服务器的连接、业务逻辑开发和接口设计。但由于该平台是基于GEE云平台的二次开发,GEE平台实现了DAL层与BLL层的结合,因此本文只需关注界面设计和应用业务逻辑开发。本文的服务器端是GEE云平台,浏览器端是本地浏览器,如4-1所示。图4-1系统架构设计图1.3系统实现1.3.1近十年流失和新增耕地显示功能实现首先导入近十年安徽省耕地的MODIS数据,并进行时间序列的数据处理。然后,进行SG算法封装,包括对颜色和边界的设定。再利用updateMask方法进行前后两年耕地流失和新增的计算,最后调用Map.addLayer函数在地图显示近十年每一年流失和新增耕地面积变化情况。//绘制红色边界Map.centerObject(ee.Geometry.Point([118.316264,32.303627]),6);Map.addLayer(outline,{palette:"ff0000"},"outline");//Map.addLayer(anhui2019,{palette:"ff0000"},"2019年耕地");//Map.addLayer(anhui2018,vis,"2018年耕地");//取属于A但非Bclassified=classified.clip(roi)varincrease2018=anhui2019.updateMask(anhui2018.mask().not());varreduce2018=anhui2018.updateMask(anhui2019.mask().not());varincrease2017=anhui2018.updateMask(anhui2017.mask().not());varreduce2017=anhui2017.updateMask(anhui2018.mask().not());varincrease2016=anhui2017.updateMask(anhui2016.mask().not());varreduce2016=anhui2016.updateMask(anhui2017.mask().not());varincrease2015=anhui2016.updateMask(anhui2015.mask().not());varreduce2015=anhui2015.updateMask(anhui2016.mask().not());varincrease2014=anhui2015.updateMask(anhui2011.mask().not());varreduce2014=anhui2011.updateMask(anhui2015.mask().not());1.3.2近十年耕地总面积变化数据显示功能实现首先导入近十年安徽省耕地的MODIS数据,并进行时间序列的数据处理。然后,进行SG算法封装,包括对颜色和边界的设定。再利用get.evaluate方法和ee.Number.toInt函数对耕地进行求面积,最后在地图显示近十年每一年耕地总面积变化情况。areaDictionary2008.get("LC_Type1").evaluate(function(datas){dataList.push(datas*900/1000000);yearList.push(ee.Number(2008).toInt());areaDictionary2009.get("LC_Type1").evaluate(function(datas){dataList.push(datas*900/1000000);yearList.push(ee.Number(2009).toInt());areaDictionary2010.get("LC_Type1").evaluate(function(datas){dataList.push(datas*900/1000000);yearList.push(ee.Number(2010).toInt());varchart=ui.Chart.array.values(ee.List(dataList),0,ee.List(yearList)).setSeriesNames(['安徽耕地面积']).setOptions({title:"安徽耕地面积年度变化",hAxis:{title:'年份'},vAxis:{title:"面积(平方公里)"},legend:null,lineWidth:1,pointSize:2});1.3.3获取经纬度和显示NDVI指数变化功能实现首先进行时间序列的数据处理,然后进行SG算法封装,包括对颜色和边界的设定。再调用ee.Geometry.Point函数获取经纬度,最后调用ui.Chart.image.series函数来计算所选地区NDVI指数变化情况。functionaddPanel(sCol){varid_list=sCol.reduceColumns(ee.Reducer.toList(),['date']).get('list');id_list.evaluate(function(ids){//print("id_list",ids);vartotal=ids.length;varshowTitle=ui.Label("",{fontWeight:'bold'});varcurIndex=0;varbPlus=ui.Button("+",function(){curIndex+=1;if(curIndex>=total){curIndex=0;}showTitle.setValue(ids[curIndex]);showSelectRawImage(sCol,ids[curIndex]);});varbReduce=ui.Button("-",function(){curIndex-=1;if(curIndex<0){curIndex=total-1;}showTitle.setValue(ids[curIndex]);showSelectRawImage(sCol,ids[curIndex]);});1.3.4发布APP部署实现首先导入近十年安徽省耕地的MODIS数据,并进行时间序列的数据处理。然后进行SG算法封装,包括对颜色和边界的设定。再利用reduceRegion方法和ee.Reducer.count函数来对每个波段影像进行求面积。最后,生成链接显示系统实现功能。//对每个波段影像进行求面积varareaDictionary2008=anhui2008.reduceRegion({//可以设置成max、min或count(像元个数)reducer:ee.Reducer.count(),geometry:roi,scale:30,maxPixels:1e9});varareaDictionary2009=anhui2009.reduceRegion({//可以设置成max、min或count(像元个数)reducer:ee.Reducer.count(),geometry:roi,scale:30,maxPixels:1e9});varareaDictionary2010=anhui2010.reduceRegion({//可以设置成max、min或count(像元个数)reducer:ee.Reducer.count(),geometry:roi,scale:30,maxPixels:1e9});1.4系统测试1.1.1近十年流失和新增耕地显示模块用户可以查看2008-2019各年安徽省耕地面积流失和新增耕地面积的位置,如图4-2所示;地图及卫星影像界面可通过点击地图显示控制工具按钮对地图进行放大或缩小操作;在下拉选择框中选择不同年份,可查询不同的年份的耕地覆盖面积变化大小,帮助用户掌握安徽省每一年耕地面积变化情况,如图4-3所示;耕地数据可在地图与卫星图像上显示,帮助用户掌握河流、地貌地形情况,了解耕地变化的地理环境,如图4-4所示。图4-2安徽省流失耕地图像数据显示图4-3时间选择框显示图4-4安徽省流失耕地卫星图像数据显示1.1.2近十年耕地总面积变化数据显示模块用户可访问链接可查看2008-2019各年安徽省耕地总面积变化情况,通过地图显示掌握安徽省耕地覆盖情况,如图4-5所示;在下拉选择框中选择不同年份,可查询不同的年份的耕地覆盖面积变化大小,帮助用户掌握安徽省每一年耕地面积变化情况,如图4-6所示;地图界面可通过点击地图显示控制工具按钮对地图进行放大或缩小操作;附着折线图及数据可以让用户直观了解各年份耕地覆盖面积总体变化情况;耕地数据可在地图与卫星图像上显示,帮助用户掌握了耕地变化的地理环境,如图4-7所示。图4-5安徽省耕地图像数据显示图4-6时间选择框显示图4-7安徽省耕地卫星图像及图表显示1.1.3获取经纬度和显示NDVI指数变化模块地图及卫星影像界面可显示安徽省耕地覆盖情况,地图界面可通过点击地图显示控制工具按钮对地图进行放大或缩小操作;用户可通过点击地图获取准确地理坐标位置,方便用户查询耕地覆盖的坐标位置,如图4-8所示;图像旁附着NDVI随时间变化的图表,反应出土地植被覆盖情况,由此可将植被覆盖与地理位置相结合进行分析;卫星影像与坐标位置相结合可准确掌
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 招聘行业就业前景
- 化验室动物试题及答案
- 惠农政策测试题及答案
- 安全生产部门安全培训绩效考评表
- 关于2026年优化企业供应链管理流程的请示5篇
- 2026年去年的考研测试题及答案
- 2026年家长教育知识测试题及答案
- 2026年建筑室内设计师笔试题库及答案
- 2026年大学英语一学业测试题及答案
- 小学主题班会课件:知行合一厚德载物
- 【二年级上册语文】25新二年级上册语文 1-8单元必背知识点汇 总
- 2026中国平煤神马控股集团专科层次毕业生招聘110人笔试历年常考点试题专练附带答案详解
- (2026)全国应急管理普法知识竞赛试题库及答案
- 2026年政工员考试题库及答案
- 2026年中央驻山西省政法机关直属事业单位工作人员招聘笔试参考试题及答案详解
- 2026年河南省中考真题道德与法治试卷和答案
- 2026中国航空发动机集团总部招聘36人笔试备考题库及答案详解
- 2026年全国通信专业技术人员考试高、中级(通信专业实务终端与业务)模拟试题及答案
- 2026年初二物理基础测试题及答案
- 2026年新课标人教版六年级数学上册全册教案
- 防灾减灾安全知识普及课件
评论
0/150
提交评论