Histogram Matching

Earth Engine by Example

SkySat image swath overlaid on Landsat 8 image (top); cumulative histogram for SkySat (left) and Landsat 8 surface reflectance (right).
Final color-matched SkySat image overlaying Landsat 8 surface reflectance
A close up showing the original Landsat data (left), the unmodified SkySat image (middle) and the color-matched result (right)


  • If there’s anything anomalous in your image that’s not in the reference image (or vice versa), like clouds, the CDF can end up skewed, and the histogram matching results might not look that good.
  • A little mis-registration between the source and target images is usually ok, since it is using the statistics of the whole region and doesn’t really rely on a pixel-to-pixel correspondence.

See also



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Noel Gorelick

I’m a software engineer at Google and one of the founders of Google Earth Engine.