Illustrative image of an Earth observation satellite from the Sentinel-2 mission


The first part of this series introduced Sentinel-2 as an optical imagery monitoring mission by Copernicus used at Cervest. This blog post will go into depth about Sentinel-2 images and why we cannot use them in their raw form including the errors that appear in measurements. We will then discuss different ways to process these images and the methods we have chosen at Cervest, which we previously presented here.


The basics of Sentinel-2

Sentinel-2 consists of two satellites Sentinel-2A and Sentinel-2B with high spatial resolution images of 10m, 20m and 60m and a combined temporal resolution of 5-6 days. The data is provided in 13 spectral bands presented in Figure 1.

Table showing the different bands present in Sentinel-2: resolution represents the width of the range of wavelengths, the central wavelength is the center of the range. Source: Satellite Imaging Corporation

Sentinel-2 provides data in different levels depending on the processing applied to the products. Level-1 products are basic products giving a Top of Atmosphere (TOA) picture composed of three levels (A, B and C) each with increasing levels of processing. Level-2 includes atmospheric corrections that create Bottom of Atmosphere (BOA) images.


What are the issues with raw Sentinel-2 images?

At Cervest we are interested in what is happening on the ground. However, when light from the ground is measured by satellites it is affected by some physical processes that need to be corrected for. Geometric and radiometric errors are corrected for in Level-1 products while the effect of the atmosphere is corrected for in Level-2 products. 

The first conversion decompresses Level-1A images after which Level-1B provides radiometric correction. This deals with the issue of light intended for a pixel appearing in an adjacent pixel because it scatters off molecules in the atmosphere. This correction is also used as a calibration method. 

Another issue is that when a satellite takes a picture it needs to map the globe onto a 2D image with mathematical functions called projections. As Sentinel-2 orbits at a high altitude the images are affected by the Earth’s curvature. Additionally, structures like mountains are not easy to photograph. Finally, while a picture is being taken both the satellite and the Earth are moving, thus distorting the images. Geometric corrections are implemented to fix all these errors. The resulting images are provided in Level-1C products which come with a cloud mask labelling individual pixels as cloudy or not. 

Another big source of errors is atmospheric effects which are corrected for in Level-2 products. The atmosphere consists of water vapour, ozone and aerosol, all of which can scatter light. Atmospheric correction is based on the ability to model the signal this scatter creates in the sensors. Various organisations model this in different ways, which also results in different cloud masks.

How did we test different atmospheric correction and cloud mask methods?

Since there are different ways to correct for the influence of the atmosphere, we compared four different methods: Sentinel-2 L2A processor (Sen2cor), Framework for Operational Radiometric Correction for Environmental monitoring  (FORCE), MACCS-ATCOR Joint Algorithm (MAJA) and Sensor Invariant Atmospheric Correction (SIAC). To evaluate them we compared the time series of the Normalized Difference Vegetation Index (NDVI) for individual plots after each of the correction approaches. NDVI is a transformation of the red and near infrared (NIR) bands. Chlorophyll in a plant absorbs large amounts in the red band while reflecting in the NIR band so the difference between the bands acts as an indicator of the amount of chlorophyll present. As the plant grows chlorophyll, the NDVI is expected to increase. For seasonal crops this will continue until the crop reaches maturity where it starts yellowing, leading to a decrease in the NDVI value and finally harvest where the NDVI returns to that of just the bare soil. The NDVI series for the different methods we tested for two fields can be seen below.

Sentinel-2 NDVI time series after four different atmospheric correction methods Sen2Cor, MAJA, SIAC and FORCE for two different fields for comparison

The graphs show the NDVI time series from Sentinel-2 over 2018 for two fields using four different atmospheric correction methods. The first field probably has a seasonal crop growing as indicated by the increasing NDVI until June. The second field probably has nothing growing on it resulting in an almost constant NDVI over the whole year. 

FORCE results in very low NDVI values from January to July – the time when crops should be growing. It also has outliers, caused by mislabelling of pixels. Sen2Cor produces a time series with relatively high NDVI all year round resulting in the peak being less prominent than in other methods, while also having outliers. MAJA seems to model the trend well due to a stringent cloud mask. However, this removed many points and would make statistical modelling results very difficult. SIAC is the one we have chosen at Cervest. The graph shows that there are few outliers while emulating the expected structure of an NDVI curve well.


Why did we choose SIAC?

Atmospheric correction in SIAC relies on MODIS data as a prior. It uses 6S Radiative Transfer Model which models ozone, water vapour and aerosol to simulate the path of light as it travels from the Earth to the detector on the satellite. It also provides uncertainties associated with each band, so NDVI can be provided with uncertainty. SIAC uses machine learning to identify clouds and its shadows, which are difficult to identify. The dip in luminosity can be due to the soil’s colour or the sun’s luminosity based on the time of day that the picture was taken. These additional functionalities are very beneficial to obtain cleaner data, which is why we chose SIAC as our atmospheric correction method. 

The atmospheric correction and cloud mask we chose will allow us to do many new things. With better atmospheric correction, biophysical parameters such as Leaf Area Index (LAI) or fraction of Photosynthetically Active Radiation (fPAR) can be calculated more accurately. We can then incorporate this into applications like our yield models.

About us: We are Ramani, Maxim, and Owen, part of the Cervest Science team, a group of statisticians, machine learning & natural scientists, and software engineers. We aim to solve urgent problems within Earth Science through application of machine learning tools and techniques. 

If you’re interested in what we do, then please head over to our careers page!

Ernesta Baniulyte

Ernesta Baniulyte 
Product Designer

Ernesta has been a full-stack product designer for more than five years. She has valuable experience in the B2B, B2C and B2B2C worlds, and while working at both agencies and product/service companies, she has learned to develop UX research infrastructures to support strategy.

At Cervest, Ernesta contributes to all stages of the product development process – from initial ideation to the exacting detail of UI design – finding new ways to visualise data, and ensure our product is intuitive and user friendly.

Ernesta’s decision to join Cervest was inspired by her desire to make the world a safer, better and more aware place.

Ramani Lachyan 
Junior Research Scientist

Ramani joined Cervest after obtaining her Master’s in Physics from ETH, Zurich. She brings with her valuable experience gained through working on model building and data simulation pertaining to neutrino physics.

Ramani has joined Cervest as a Junior Research Scientist and will be working on creating algorithms that allow for the extraction of physical observables from data from a range of sources.


Lukas Scholtes 
Statistical Scientist

Lukas completed his maths BSc at ETH Zurich, followed by an MSc in statistics at Imperial College. He wrote his MSc thesis in collaboration with Cervest, on the modelling of North American wheat yields via Bayesian parametric and non-parametric methods.

Following an internship in the NGO sector in Bangladesh and a stint in the world of fintech, Lukas comes to Cervest, excited to apply himself to the challenges that are arising as a consequence of unsustainable land-use policies and climate change.

Aidan Coyne
Junior Researcher

Aidan is currently pursuing a Bachelor of Arts and Sciences in Science and Engineering at University College London with a focus on computer science and data informatics.

At Cervest, Aidan is working on researching and assimilating a database of articles categorising the reasons for extreme decreases in crop yields across Europe. The information will be used to help predict the impact of weather events on crop yield and contribute to  Cervest’s ability to bring clarity to decision making around climatic and extreme events.

While studying, she also volunteers with environmental conservation groups and youth engagement programmes.

Alex Rahin
Chief Product and Technology Officer

Alex is an entrepreneurial technology leader with over 25 years of hands-on experience in developing and executing innovative product and technology strategies.

Prior to Cervest, Alex served as Chief Product & Technology Officer at Beamly, a technology and data company delivering data platforms & infrastructure, data & content management solutions, and AI-powered eCommerce analytics, leading Beamly to a successful exit in 2020.

Before working at Beamly, Alex served as Chief Data Officer at Just Eat, where he built an end-to-end data organization, leading the company’s data-driven transformation with the launch of a unified customer data platform and scalable machine learning products

Earlier in his career, Alex held prominent roles at Zalando, Amazon, Microsoft, Intel, Hewlett Packard, and three technology startups achieving successful exits in all three.

Alex holds a BSc in Electrical Engineering & Computer Science from UC Berkeley.