ArcGIS API for Python主要用于Web端的擴展和開發(fā),提供簡單易用、功能強大的Python庫,以及大數(shù)據(jù)分析能力,可輕松實現(xiàn)實時數(shù)據(jù)、柵格數(shù)據(jù)、空間數(shù)據(jù)等多源數(shù)據(jù)的接入和GIS分析、可視化,同時提供對平臺的空間數(shù)據(jù)管理和組織管理功能。本篇博客將和大家分享,使用ArcGIS API for Python進行城市區(qū)域提取的方法和流程。
數(shù)據(jù)準備:
不同時期的landsat影像
??在前面的博客“環(huán)境鑲嵌數(shù)據(jù)集的渲染模板使用”,“環(huán)境鑲嵌數(shù)據(jù)集柵格函數(shù)使用(一)”中我們已經(jīng)介紹了在鑲嵌數(shù)據(jù)集上配置柵格函數(shù)以及發(fā)布的方法,我們也可以直接通過ArcGIS API for Python在客戶端來使用柵格函數(shù),ArcGIS API for Python包含了很多柵格函數(shù)和分析工具,如下圖所示:
??城市區(qū)域提取的流程如下圖所示:
第一步:從portal中獲取需要進行分析的數(shù)據(jù)
第二步:計算不同年份的NDVI并進行二值化處理
# 應(yīng)用ndvi柵格函數(shù)生成不同年份ndvi ndvi2000 = ndvi(selected2000,'4 3') ndvi2015 = ndvi(selected2015,'4 3') # ndvi二值化處理,設(shè)定閾值0,小于閾值為1表示裸地和水體,其余為0 ndvithreshold = 0 ndvi2000binarization = less_than([ndvi2000,ndvithreshold])*1+greater_than([ndvi2000,ndvithreshold])*0 ndvi2015binarization = less_than([ndvi2015,ndvithreshold])*1+greater_than([ndvi2015,ndvithreshold])*0
第三步:計算不同年份的NDBI并進行二值化處理
# 應(yīng)用extract_band函數(shù)提取短波紅外、近紅外波段數(shù)據(jù) swir = extract_band(selected2000,[5]) nearir = extract_band(selected2000,[4]) #計算不同年份的ndbi ndbi2000 = FLOAT([swir-nearir])/FLOAT([swir+nearir]) ndbi2015 = FLOAT([extract_band(selected2015,[5])-extract_band(selected2015,[4])])/FLOAT([extract_band(selected2015,[5])+extract_band(selected2015,[4])]) #ndbi二值化處理,設(shè)定閾值0,小于閾值為0,其余為1表示城市建設(shè)區(qū)域和低密度植被覆蓋裸地,可以調(diào)整閾值 ndbi2000binarization = less_than([ndbi2000,0])*0+greater_than([ndbi2000,0])*1 ndbi2015binarization = less_than([ndbi2015,0.1])*0+greater_than([ndbi2015,0.1])*1
第四步:城市建設(shè)用地提取
#生成不同年份的城市建設(shè)用地數(shù)據(jù) citybuildinguse2000 = ndvi2000binarization * ndbi2000binarization citybuildinguse2015 = ndvi2015binarization * ndbi2015binarization #計算不同年份的城市建設(shè)用地變化 buildinguse_diff = (citybuildinguse2015 - citybuildinguse2000) #變化結(jié)果重映射 threshold_val = 0.1 buildingusediff_remap = remap(buildinguse_diff,input_ranges=[threshold_val,1],output_values=[1],no_data_ranges=[-1,threshold_val],astype='u8') #變化結(jié)果顏色映射 buildingusediff_colormap = colormap(buildingusediff_remap,colormap=[[1,124,252,0]],astype='u8') #變化結(jié)果輸出圖片 from IPython.display import Image dataextent = '11541010.6342307,3538686.96622601,11614210.6342307,3628986.96622601' exportedimg = buildingusediff_colormap.export_image(bbox=dataextent,size=[1200,450],f='image') Image(exportedimg)
??歡迎大家留言,互相交流學習。想了解ArcGIS最新的技術(shù)動態(tài)和最新的應(yīng)用,請關(guān)注地理遙感生態(tài)網(wǎng)平臺。
地理遙感生態(tài)網(wǎng)平臺主要由土地利用遙感監(jiān)測數(shù)據(jù)、行政區(qū)劃邊界數(shù)據(jù)(行政村邊界、鄉(xiāng)鎮(zhèn)街道邊界、省市縣邊界)、氣象數(shù)據(jù)(降雨量、氣溫、蒸散量、輻射、濕度、日照時數(shù)、風速、水汽壓數(shù)據(jù))、水文站點數(shù)據(jù)(徑流量數(shù)據(jù))、遙感數(shù)據(jù)(npp凈初級生產(chǎn)力數(shù)據(jù)數(shù)據(jù)、NDVI數(shù)據(jù)、LAI葉面積指數(shù)、GPP初級生產(chǎn)力數(shù)據(jù)、地表溫度LST數(shù)據(jù)、高精度遙感影像等)、土壤數(shù)據(jù)(土壤類型、土壤質(zhì)地、土壤有機質(zhì)、土壤PH值、土壤質(zhì)地、土壤侵蝕、土壤NPK、土壤厚度土、土壤重金屬含量分布、土壤含水量等)、POI興趣點數(shù)據(jù)(餐飲服務(wù)、道路附屬設(shè)施、地名地址信息、風景名勝、公共設(shè)施、公司企業(yè)、購物服務(wù)、交通設(shè)施服務(wù)、金融保險服務(wù)、科教文化服務(wù)、摩托車服務(wù)、汽車服務(wù)、汽車維修、汽車銷售、商務(wù)住宅、生活服務(wù)、事件活動、體育休閑服務(wù)、通行設(shè)施、醫(yī)療保健服務(wù)、政府機構(gòu)及社會團體、住宿服務(wù)等)、全國作物類型分布數(shù)據(jù)(大豆、玉米、水稻、甘蔗、小麥空間分布數(shù)據(jù)等)、生態(tài)系統(tǒng)服務(wù)空間數(shù)據(jù)集、中國濕地沼澤分類數(shù)據(jù)集、城市空氣質(zhì)量監(jiān)測數(shù)據(jù)、中國水系流域空間分布數(shù)據(jù)集、中國道路空間分布數(shù)據(jù)、中國陸地生態(tài)系統(tǒng)類型分布數(shù)據(jù)、社會經(jīng)濟統(tǒng)計年鑒數(shù)據(jù)、中國GDP空間分布數(shù)據(jù)集、中國人口空間分布數(shù)據(jù)集、城市建筑輪廓空間分布數(shù)據(jù)、全國地質(zhì)災(zāi)害空間分布數(shù)據(jù)(崩塌、塌陷、泥石流、地面沉降、地裂縫、滑坡、斜坡、地震等)、地質(zhì)巖性分布圖、地形地貌數(shù)字高程DEM數(shù)據(jù)(地貌類型矢量數(shù)據(jù)、12.5米高精度DEM數(shù)據(jù)等)、中國NDVI植被指數(shù)空間分布數(shù)據(jù)集、夜間燈光數(shù)據(jù)、三級流域矢量邊界、植被類型分布、自然保護區(qū)分布、建筑輪廓分布等土地利用、生態(tài)環(huán)境、災(zāi)害監(jiān)測、社會經(jīng)濟和氣象氣候系列數(shù)據(jù)。