NYC Land Cover Pseudo-Segmentation and Analysis

With an interest in keeping an eye on the sky (or perhaps more accurately, directly on the ground), I spent some time recently using my Jetson Nano 2GB to classify changes to NYC area, and see what, if any, could possibly be changing over the course of a year.


Using the Sentinel API, we can access rasters like this with surprisingly little effort!


After getting comfortable downloading data, I decided to try a very basic approach to characterizing what changes up in the Big Apple.

Keeping in mind I wanted as little cloud cover as possible, I found images from May 5th, and August 25th that gave pretty good coverage. They also work well because I’m technically in both of these photos :-)

Now that I had the “before” and “after”, I needed a way to characterize them.

For this, I decided to train a machine learning model to categorize landmass. Once it finished training (Weights & Biases) this model could distinguish between 10 distinct types of landmass with about 88% accuracy.

With this model ready, I essentially used a sliding window to classify all tiles within the region of interest. The results of that were shown above.

The training and inference of this model was quite simple when using my Nano’s CUDA acceleration.

On its own, this already presented a neat result. To push this further, I decided to examine what changed in the distribution of predicted landmasses in the span of about 3 months.


The amount of highways, rivers, residential, and industrial areas were the least changed over this time. This is quite reassuring, given these are the land-types you would expect to be the most common in both photos, and would realistically take much longer than a few months to change in type. There was single tile prediction for permanent crop, which was not predicted in the latter image, so the percent change is left blank.

The largest percent drop in land type was for Herbaceous Vegetation & Forests. These kinds of land cover are seasonal in the Northern Hemisphere, so it also makes sense that it is more frequent at the height of Spring, than at the end of Summer.

On the other side, Annual Crop saw the largest percent increase. The majority of this change came from land that was previously Herbaceous Vegetation, and we can see from an example below there is certainly less “activity” in this field that likely altered this prediction.


However, I’m not entirely convinced this tile by tile audit. For instance, here are two near identical images with different predictions over the 3 month span.


I cannot confidently claim this will work on such a granular level, but will still provides insight about the region as a whole. Unfortunately Sentinel images within the past year are the only ones online, so I did not get a chance to try for a larger period. Regardless, I am happy to share the code used here to to visualize the change in properties of the NYC area over just 3 months using the Jetson. Thank you for reading!

Code and results are available here (GitHub - nkasmanoff/nyc-sentinel)

Key Resources:

1 Like