Portfolio Entry II — October 16, 2020

How do you make a custom land cover classification, and how do our tree cover classifications compare to those by Hansen et al. (2013)?

In this analysis, we create a land cover classification map for a single, least-cloudy Landsat-8 image encompassing the study site in western Rwanda. We compare our land cover map to the Hansen data at different tree cover thresholds to determine the threshold most similar to tree cover in our classification.

Assessing our land cover classification

From visual inspection, I would estimate that there are a number of shortcomings within my tree cover classification. When compared to the satellite basemap, not all forested areas are captured in my classification. It is possible that some of this distortion comes from training points that did not cover the full range of land cover subgroups and cloud cover within the study region. After creating my initial land cover classification of water, trees, urban, agriculture, grazing/barren, and rock/magma, I went back to add additional training points to separate tree woodlots from the agricultural and rock/magma classes (Fig. 1). In my initial selection using the true color (B4, B3, B2) image, I only placed points on areas that were deep brown (natural trees), not a slightly lighter shade of brown (woodlots) (Fig. 2). After adding additional points to agriculture and tree classes (to remove some extraneous rock/magma classifications), my land cover classification improved but was still lacking due to the cloud cover.

An important error is that some of the study region is covered by clouds in the “Least Cloudy” image used for the initial analysis (Fig. 3). I spent some time digging through the next least-cloudy images, finding that each was at least partly cloudy in the study region. In future iterations of this assignment, it may be interesting to find an image with very few clouds in the study region itself and compare results from two different LANDSAT images, using a completely new set of training points that correspond to this different LANDSAT image. Using my original training points on a new LANDSAT image would have led to significantly misguided results, as the training points need to correspond directly to the image they are helping to classify.

Comparing our tree cover to Hansen et al. (2013)

There are some distinct discrepancies between my map and the Hansen tree cover map, best understood in the context of percent tree cover within each pixel. Building on the work of Adjognon et al. (2019), I used the 10, 20, 30, and 50% thresholds to compare my tree classification to the Hansen coverage map (Fig 4a – 4e). There is no threshold where the Hansen map truly reflects my land cover map, as there are always tradeoffs to be made between true positive and true negative rates. Even increasing the threshold 10% more has a dramatic effect on the accuracy comparisons (Fig 5a-5d). By saying that only 10% of each pixel needs to be covered by tree canopy in order to be considered a tree, the percentage of each pixel that is classified as tree cover is exaggerated when compared to my classification, leading to a lower threshold value and a higher true positive value. Similarly, in the 30% and 50% classifications, the true negative value is higher due to the more specific threshold. As the thresholds become more specific, the true negative rate increases and more pixels are categorized as only being forest in my classification or in neither classification. A balanced rate would be where the “just Hansen” and “just mine” columns are equally low and “both” and “neither” are equally high — likely somewhere around 25% threshold.


Link to code: