cropland mapping @30 using google earth engine jun xiong 29 st oct 2015
TRANSCRIPT
Cropland Mapping @30 using Google Earth Engine
Jun Xiong29st Oct 2015
Ethiopia iso-data map @30m • Input Dataset: monthly Landsat EVI (id: LANDSAT/LC8_L1T_32DAY_EVI),
Landsat image Band (5,4,3) in growing season (id: LANDSAT/LC8_L1T)• Crop Extent Mask: resampled 250m GFSAD Crop-Extent integrated with
30m Global Land use map (Chen, 2014)• Dimension: 55610 x 42648 x 12 bands (2.3e9 pixels, 2.5e8 after masking)• Clustering: using GEE and Erdas2014• Results: 36 clusters from 30m NDVI Timeseries of 2014• Labeling: Scheme1 (13 classes) and Scheme2 (9 classes) were identified
based on typical phenology, reference data and ground samples
*Preliminary classification map was provided to Murali to help field work planning
Scheme1 signature (13 classes)
Comparison/Evaluation with 250m dataset
Regional ValidationGreen sites (n=567) are from image-interpretation results (partly provided by Curt, FAS.Red sites (n=278) from ground training part samples croplands.org (not used so far)
ACCA development
• Future analysis to decide the final classes and labels in Ethiopia– Can we define/separate smaller classes based on
ground knowledge– Can we get more information from other layers
(Elevation, Indice…. etc)• Automatic algorithm coding• Scale the same approach to larger area
Oct 17-Oct 27: Ethiopia field work
Ethiopia field work
• using GFSAD mobile app following standard procedure (latest android version)
• When Dr. Gumma submitted Ethiopia ground samples to cropland.org, splitting of the samples to train/validation is demanded at once.
Kmeans available on GEE
• Kmeans, Kmeans++ APIs available:– WCascadeKMeans, wKmeans– we are first exclusive testers on GEE.
• Not 100% Parallel Implement: – Clustering computing still needs to be done in just one machine, while
other I/O can be scaled to large dataset on multiply computers– For large area/dataset, the size of samples is limited in 4GB memory
• 5 cases in different scale was tested ( from single Landsat scene to continental scale dataset) to locate the neck bottle
• Communication with GEE to make the APIs strong and more reliable for more users
Concept of GEE-Kmeans // 1. create a small samples from dataset instead of using all the pixels. In the case, full image consists of 5e7 pixels.var training_features = image.sample({ region:geometry, scale:30, numPixels: 5e4});// 2. define a ‘cluster’ objectvar clusterer = ee.Clusterer.wCascadeKMeans({ minClusters:20, maxClusters:20, restarts:10, init:false, distanceFunction:"Euclidean", maxIterations:6});// 3. Training & clusterclusterer = clusterer.train(training_features);var kmeans_image = image.cluster(clusterer);
Because it is not 100% Parallel Implement. The clustering has been done on single machine, therefore, the size of sampling is limited by the physical memory of that machine.
Once clustering of samples finished (cluster center and boundary is created), then the membership of entire dataset is simply determined.
* Scrips of all the cases could be running once your gee account be added to Kmeans whitelist