在研究或工作中,經常會遇到柵格資料中某些像元資料缺失或者不能被使用,也會因為異常值而將部分像元定義為空值(nodata)。再此情況下,我們需要重新計算空值像元中正常值,從某種意義上也是對空值像元的內向插值。
整體思路是根據空值像元周圍值來計算空值像元,類似於線性內插。具體方法如下:
1、首先確定空值柵格資料的空值範圍,根據空值範圍、型別、資料結構選擇不同鄰域統計工具。需要注意柵格資料的背景值與nodata的區分,最好去掉背景值。
2、在大多數情況下可以選擇block statistics或者focal statistics或者filter等,鄰域型別可以選擇矩形或者圓形、環形,需要根據自己資料以及研究目的來確定。鄰域半徑大小越大,空值越平滑,但統計結果柵格的解析度越小,同原始柵格範圍出入較大。
需要注意的是,由於解析度調整使得柵格資料行列數變化,這會同原始柵格範圍有出入,此種情況可以選擇通過重取樣之後,求取此柵格同原始柵格的交集,保證範圍大小一致。此過程會對空值處像元值產生變化,但可忽略不計。
3、根據鄰域統計之後的柵格資料,替換原始柵格空值像元。可以用柵格計算器來完成這一操作。計算**如下:
con(isnull("原始柵格"),"鄰域統計柵格","原始柵格")
需要注意的是,計算中,需要在環境設定中設定處理範圍,應當以領域統計柵格為準。原因是原始柵格存在nodata,但這部分空值卻需要納入處理範圍。
4、最終計算柵格對比原始柵格,可以發現,空值像元已被完美替換。誠然,這只是一種處理思路,具體操作過程不一定完全如上所述。此外,遇見其他類似問題,需要深入分析,靈活運用各種地理處理工具。
關於ArcGIS10 0中的柵格計算中的函式
版本公升級確實很重要,在arcgis10.1中計算成功的,在10.0 了問題。在進行柵格計算時,計算公式很簡單,包括兩個ln函式 22.73 11.1 ln 5 0.34 ln 人口.tif 可計算結果報錯 000539 python 錯誤訊息。error running expression rc...
ArcGIS中改變柵格檔案的像元值大小的方法
什麼是柵格檔案像元值?首先柵格所表示的內容的詳細程度通常取決於像元 畫素 大小或空間解析度。像元必須足夠小,這樣才可以捕獲到所需的詳細資訊 而像元又必須足夠大,這樣才可以提高計算機儲存和分析的執行效率。柵格可以使用更小的像元大小在要素的範圍內表示更多的特徵 更小的要素或更詳細的內容。怎樣改變柵格檔案...
js中的undefined與null 空值的比較
最近在修改乙個專案,總是報js錯誤 無法獲取屬性 length 的值 物件為 null 或未定義 點開除錯之後,驚奇的發現markerarr的值是undefined 所以我就將 改成如下形式 var markerarr originalrequest.customvisit if markerarr...