MACCS - Multi Mission Level 2 & Level 3 Images Production Software
Feuvrier, Thomas; Ruffel, Caroline

The MACCS processing chain (Multi-mission Atmospheric and Cloud Correction Software) is used to generate level 2 products by converting the Tof Of Atmosphere (TOA) reflectances in surface reflectances after atmospheric corrections. Level 3 products which are multi temporal synthesis can be produced when the missions offer a sufficient high repetivity. This chain is a multi-mission software for optical and multi-spectral remote sensing instruments handling the level 1 products for the Venµs, Formosat-2, Landsat5, 7 and Sentinel-2 Level 1C sensors.
The L2 processor offers advanced atmospheric correction algorithms including aerosol estimates. It also performs cloud, cirrus, shadow, snow and water detection, slope and environment corrections. A lot of methods implemented in this chain are based on multi-temporal algorithms and take advantage of multi-spectral and high revisit frequency measurements. The L3 processor consists in averaging the cloud free reflectances gathered of L2 time series over short periods (~10 days) and generate useful synthesis for downstream users. All algorithms developed in MACCS are described precisely in [1].
The level 2 processing is divided in five main steps: subsampling of data, cloud, cirrus, snow and water detection, absorption and scattering corrections, adjency effects and slope correction, composite image.
In the first step, images are subsampled to get the better performance of noise and of registration but also to avoid false cloud detection due to evolutions affecting small surfaces. In a same way it is not possible to compute an accurate aerosol estimation at the resolutions of the level 1 product.
Cloud detection algorithms are also developed in MACCS. These algorithms are generally based on thresholds on spectral bands in the blue for which the surface reflectances are usually low when cloud reflectances are relatively high. In order to prevent false detection, MACCS cloud algorithm offers other criteria to detect clouds. It detects sudden temporal variations of surface reflectances using products of previous dates and avoiding false detection by detecting some characteristics effects (water bodies, rain events). Moreover cloud shadows are detected by performing a geometrical projection of clouds on the ground knowing the position of clouds and a priori altitude taking into account the DTM (Digital Terrain Model).
Otherwise MACCS performs atmospheric corrections. The gaseous absorption correction is performed by using SMAC model (Simplified Method For Atmospheric Correction) and auxiliary data. Atmospheric look up table (LUT) are used to process the scattering correction which depends on molecules and aerosols. Therefore an algorithm that estimates the aerosol optical thickness is developed in MACCS. Two methods are used to estimate the aerosol from the imagery itself: a multi-temporal method, a multi-spectral method or a combination of both methods. On the one hand, a locally estimation of the AOT with the first method relies upon the identification of a variation of the atmospheric content between two acquisitions while the surface reflectances acquired during a short period of time is steady. On the other hand, the multi-spectral method is based on constant spectral relationships between surface reflectances of vegetated pixels (surface reflectance in the red is close to the double of the surface reflectance in the blue). Algorithms of cirrus, water and rain detection are also developed and used for cloud and aerosol detections.
The algorithm used to detect snow is based on the Normalized Difference Snow Index (NDSI) and requires the information of the Short-Wave-Infra-red (SWIR) bands.
Moreover MACCS provides environment effect correction algorithms taking into account that the landscape cannot be considered as uniform at a decametric resolution. Surface reflectances are corrected from the influence of neighbouring pixels due to light scattering by the atmosphere. A correction of topographic effects is also applied on the observed reflectances.
Finally MACCS provides composite image synthesis which contain the most recent cloud free and good quality reflectances (tests to detect hotspot, cirrus, high AOT and rain). The composite products are used by recurrent algorithms like cloud detection and aerosol estimation.
The generic architecture of MACCS is adapted to add easily new satellites and new algorithms, ensure robustness, reliability and sustainable solution. The development of MACCS is based on Orfeo Toolbox (OTB). OTB is an open source (CeCILL license, similar to GPL), remote sensing-oriented, image processing library [2]. It has been initiated by the French Space Agency (CNES) in the frame of the ORFEO accompaniment program. Based on the medical image processing library Insight ToolKit (ITK), OTB provides to its users an extensive set of algorithms and functionalities dedicated to remote sensing data exploitation. More specifically, it embeds approaches to handle large data using advanced streaming and multi-threading strategies. Thus, OTB-based processing chains take advantages of both optimized Input/Output access and streamed/multithreaded filtering to perform efficient processing.
To resume up, OTB provides the image processing framework used for the implementation of the L2 and L3 processors of MACCS.

MACCS will be improved over the three next years and further. As of now, MACCS will be deployed in the French Space Agency for the CTN (Centre Technique National), the VIP (Venµs Image Processing Level 1 & 2) and the TEC S2 (Technical Expertise Center S2). Moreover, MACCS will be deployed in the SL2P (Sentinel-2 Simplified Level 2 Product Prototype Processor Software) in the European Space Agency/ESTEC.

[1] A multi-temporal method for cloud detection, applied to FORMOSAT-2, VENµS, LANDSAT and SENTINEL-2 images
Hagolle O., Huc M., David V. P., Dedieu G.
Remote Sensing of Environment 114, 8 (2010) 1747-1755 -