Shanghai Wetland visualised with REACTIV from 2018–01–01 to 2020–09–11

REACTIV — Implementation for Sentinel Hub Custom Scripts Platform

Rapid and EAsy Change detection in radar TIme-series by Variation coefficient

Thomas Di Martino
Jan 19, 2021 · 8 min read

A guest blog post by Thomas Di Martino

Foreword by Sentinel Hub

This post is part of a series of guest blog posts written by script authors, talking about their entries to the Sentinel Hub Custom Script Contest. Thomas Di Martino and his team (Elise Colin-Koeniguer, Regis Guinvarc’h, and Laetitia Thirion-Lefevre) are among the winners in the third round of the Contest. Their winning script with detailed description is available on our GitHub repository.


Developed at ONERA as a part of the MEDUSA project, the REACTIV algorithm aims at displaying change detection highlights through the exploitation of SAR Temporal information, without any spatial estimation.

1. Introduction: intents & motivation

SAR images’ temporal properties, which include their resistance to cloud cover, or the stability of the signal between two acquisitions, provide them with high potential for temporal change analysis.

In the algorithm proposed here, we wish not only to improve the signal-to-noise ratio, but also to detect all the pixels for which a change occurred between the first and the last observation date. These generic changes can be either:

  • short changes in time (e.g. boats)
  • longer/permanent changes (e.g. a construction site, new buildings).
Animation presenting the difference between an ephemerous and a permanent change in SAR Time Series

The REACTIV algorithm can display insights in different circumstances and be useful in multiple geographical contexts, such as monitoring of:

  • port areas, for highlighting maritime shipping routes;
  • urban areas, for the observation of city sprawl
  • environment, to quickly map changes in forest cover;
  • agricultural practices, to monitor the occupation of cultivated plotsand improve cultivation methods.

Hence, with these ideas in mind, the REACTIV visualisation tool needs to consider several aspects of the data:

  • Change: it must be easy to identify, locate and interpret;
  • Time of change: Detecting a change is important, but knowing when it occurred is also useful. It is not possible to represent all the information in a unique image, so we made the choice, when it is a long change, to color-code the date of the most intense activity, among all the possible dates.

2. Context

The data object we are manipulating with this script are Sentinel 1 VV-VH Time Series and can then be defined as being 4-Dimension: over an area of 500 by 500 pixels, with 100 dates, we have a data object of shape (500, 500, 2, 100) with 2 being the polarization dimension.

Temporal Pixel definition

However, our processing only leverages temporal information and not spatial information, meaning that we are actually dealing with a list of n polarimetric SAR time series, each with a similarly sized temporal dimension, containg T timestamps.

Acquisition timestamps

3. Script Description

We will now detail the script and his exploitation of the HSV color space.

HSV Cylinder — SharkDderivative work: SharkD Talk — HSV_color_solid_cylinder.png, CC BY-SA 3.0,

The HSV color space consists of three components, which we used to represent three different caracteristics of our temporal data:

  • the Hue component: models the time dimension
  • the Saturation component: models the relative intensity of change
  • the Value component: models the absolute radar intensity

3.1 Hue component: time dimension

The Hue component represents which color of the color wheel is used. The Hue component encodes the dating information of the event. Thus, when a change is displayed, we can approximately know when it occurs in the observed period. The calculation of the Hue component follows for a temporal pixel of coordinate (i,j):

Hue component formula for a pixel of coordinates (i,j)

Our hue function ouputs a value between 0 and 1, that we map onto a reduced hue scale, as presented in the following animation.

Hue value selection animation

3.2 Saturation component: change intensity

The Saturation component, responsible for how intense the color picked by the hue value will be, is bound to the change intensity: the bigger the change, the more saturated the color will appear. This means that “lighter” spots on the map represent places with low changes over time.


  • mu = 0.2286: deduced from L=4.9, the number of looks for S1 data, it corresponds to the variation coefficient for pure speckle data;
  • alpha=0.1616: standard deviation of pure speckle data.

We have the following saturation formula:

Saturation component formula for a pixel of coordinates (i,j)

This method can be decomposed in the following parts:

  1. Calculation of variation coefficient for both polarisation VV and VH: std_VV/avg_VV;
  2. Selection of the maximum between the variation coefficient of VV and VH;
  3. Empirical normalization of this maximum using theoretical speckle values of alpha and mu (more theoretical details in [1]).

3.3 Value Component: SAR signal intensity

Finally, to keep the usual SAR Image look, the value component ranging from dark to bright, with respect to the color picked by the hue value, represents the maximum value of the input signal over both polarisation. We empirically found that this setting does not output a very pleasant image: for that matter, the intensity has been averaged with the mean max signal of the pixel at each timestep. This provides sufficient details for change to be localizable but also contextualized, i.e. for surroundings to be recognizable.

Value component formula for a pixel of coordinates (i,j)

Empirically, we also found that the value component tended to “saturate” and we decided to scale it down by multiplying it with a constant lambda (set to 0.8 in our implementation).

The following animation details the calculations involved in this component.

Value component calculation

4. Application examples

Now that we have seen how we generate the HSV components, we will have a look on some examples of regions where the REACTIV algorithm was applied.

4.1 Maritime Routes: Shanghai Port

Shanghai port displayed using REACTIV on acquistions ranging from 2018–01–01 to 2020–09–11

Thanks to the REACTIV method, maritime routes are very explicit. Additionally, the time dimension represented by the chosen color seems to indicate that the northernmost entry path to the port is only opened during certain parts of the year as only red and shaded blue boats appear to be there.

4.2 Vegetation monitoring: Shanghai Wetlands

Shanghai Wetlands displayed using REACTIV on acquistions ranging from 2018–01–01 to 2020–09–11

Situated close to the Chongming Dongtan birds national nature reserve in Shanghai, the Shanghai wetlands are a very distinct ecosystem that is usually flooded with water on seasonal occasions, inducing huge variability in its environment and in its dielectric properties, crucial for SAR imagery. This variability is expected to be found and to be localised.

As we can see on the figure above, we do have change being detected cohesively across the different subsurfaces of wetland. This is manifested by regions portrayed as green for some and pink for others. When checking the Hue range, we notice that green is located around the first third of the time interval, meaning around the end of 2018 while the pink values are located at the end ofthe interval, meaning the end of 2020.

These similar yearly periods show how the REACTIV method successfully captured a seasonal and periodical event within the Shanghai wetlands.

4.3 Urban sprawl: Wuhan City

Wuhan City displayed using REACTIV on acquistions ranging from 2018–01–01 to 2020–09–11

Given recent events and the efforts deployed by the Chinese government to build emergency hospitals, the city of Wuhan displayed interesting results with regards to change detection tasks. Most recent buildings, plots with colors of the end of the Hue spectrum (i.e. shades of pink) are noticeable throughout this map. One particular example is the Huoshenshan Hospital located on the Zhiyinhu Boulevard.

Zoomed REACTIV image of Wuhan displaying the newly built Huoshenshan Hospital

As displayed in the figure above, we notice violet (shaded dark-pink) which represents high activity spike in the last months of acquisition, which correlates with the city’s plans to build emergency hospitals. Other locations around the city have similar color spots that most probably also are constructions built in the context of COVID-19.

5. Conclusion

In this medium article, we reviewed the REACTIV algorithm for change detection & visualisation in large SAR time series, based on the HSV color encoding.

We presented its potential in multiple types of application ranging from marine traffic visualisation, vegetation monitoring or even modern urban sprawl.

While in this article, we presented the method as leveraging PolSAR signal, it is completely possible to use the visualisation algorithm on a single polarisation context, as polarimetric information is not crucial for REACTIV.

6. References & Credits

Theoretical background about statistics and application to detection are available in [1].

Our team, composed of Elise Koeniguer, Regis Guinvarc’h, Laetitia Thirion-Lefevre and myself wanted to thank one more time the Sentinel Hub team for selecting our algorithm as a winner of their third custom script competition.

[1] Colin Koeniguer E, Nicolas J-M. Change Detection Based on the Coefficient of Variation in SAR Time-Series of Urban Areas. Remote Sensing. 2020; 12(13):2089.

The Sentinel Hub team would like to thank Thomas and his team for their participation in our Contest. You can find Thomas here on LinkedIn, read his personal blog here, or visit his web page.

To learn more about satellite imagery and custom scripting we recommend you to check the Sentinel Hub Educational page. You can also visit a dedicated topic at the Sentinel Hub Forum for further information. We would also like to invite you to take a look at the other scripts submitted to the Sentinel Hub Custom Script Contests, available here.

Sentinel Hub Blog

Stories from the next generation satellite imagery platform