GEE (Google Earth Engine)高阶学习一 影像分割
影像分割就是把影像分成若干個特定、具有獨特性質區域的技術和過程,是面向對象分類的重要基礎。
下面介紹幾種GEE中自帶的影像分割的算法。具體的算法原理,在這里不多介紹,主要還是展示算法的應用。
使用例子的原始圖像如下:
??????1.GMeans算法
??????????????????????
主要參數如下:
image:待處理影像。
numlterations:迭代次數。
pValue:正態檢驗的顯著性水平。相當于閾值,值越小,分割的越精細,影像被分割成的塊數就越多。
neighborhoodSize:領域的尺寸,一般取256
gridSize:網格尺寸。通常不設置。
實例代碼如下:
運行代碼結果如下
2.KMeans算法
主要參數如下:
image:待處理影像。
numClusters:分割成集群的數量
numlterations:迭代次數。
neighborhoodSize:領域的尺寸,一般取256
gridSize:網格尺寸。通常不設置。
實例代碼如下:
運行代碼效果如下
上述2種方法因為參數只是簡單的設置了一下,所以實際分割效果圖并不太好。但是存在一個未解決的問題,從結果圖像來看,圖像好像是被分塊運算了,分塊的部分是和在GEE上顯示原圖時,圖像被分割成幾塊的部分是一樣的,所以造成這分塊運算的結果很有可能是GEE內部處理柵格數據的方式有關。但目前沒有找到有關的解決方法,如果有知道的朋友,可以在下方評論或者直接私信我,我也會及時公布出來,萬分感謝!!!
3.SNIC(Simple Non-Iterative Clustering)算法
主要參數如下:
image:待處理影像。
size:種子的分布尺寸。
compactness:分割后集群的規整程度。數值越大,圖像越規整。
connectivity: 像元的鄰接性,為4鄰接或者8鄰接。
neighborhoodSize:領域的尺寸,一般取256
seeds:種子,一般若給定形參seeds的值,則形參size則會失效。
其中形參seeds的值由下面函數生成。
實例代碼如下:
運行效果如下:
種子點分布
影像分割結果
由于SNIC算法經過參數的調整和優化,圖像的分割結果要優于前2種方法的,但是在調整參數的基礎上,種子點的分布對分割效果的影像也是很大的,即在需要分割精細的地方,種子點應多一些,在同種地物區域較大的地方,種子應少一些。
在這里,可以提供一種比較簡單理解,操作起來可能有點麻煩的方法。
在原圖上畫出需要分割精細和分割粗糙的區域邊界作為feature,然后不同的區域分配不同數量的種子點,這樣就可以人為的控制整幅影像種子的分布了。生成種子分布,主要代碼如下:
優化了種子的分布之后,圖像分割結果如下:
可以看出,分割的效果是要明顯優于先前的。
在layer層,GEE對圖像處理是根據圖像的縮放程度,不同的圖像縮放程度,顯示的圖像分割結果是不一樣的。可利用下面的函數對影像重投影,這樣在layer層,無論怎么縮放展示的效果都是固定的。
總結
以上是生活随笔為你收集整理的GEE (Google Earth Engine)高阶学习一 影像分割的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一政:公务员笔试备考注意这几点
- 下一篇: 山东电销机器人_青岛语音电销机器人 欢迎