# AI-Driven Identification of Contrail Sources: Integrating Satellite Observations and Air Traffic Data

Emmanuel Riggi-Carrolo,<fnref n="1" /> Thomas Dubot,<fnref n="2" /> Claire Sarrat,*,<fnref n="2" /> and Judicaël Bedouet<fnref n="2" />

(Received: 20 October 2023; Revised: 15 April 2024; Accepted: 03 May 2024; Published: 03 May 2024)

(Editor: Junzi Sun; Reviewers: Ester Roosenbrand and Junzi Sun)

## Abstract

Despite large uncertainties, it is now clear that condensation trails play a major role in aviation contribution to climate change. In order to assess these uncertainties and reduce them, a database of observations needs to be built up to improve prediction models and to enable aircraft trajectories optimization based on climate considerations. In order to build this observations database satellite images are good candidates, but detecting contrails in images is a time-consuming task without automation. In this paper, a dataset from GOES-16 satellite images is used to create a detection algorithm based on segmentation methods. Then, a method is introduced for associating contrails with aircraft trajectories based on ADS-B data. The Hough transform and meteorological forecast reanalysis data are applied to link any contrail with a group of flights that may have contributed to its formation.

**Keywords:** Contrails, Deep Learning, ADS-B

**Abbreviations:** JOAS: Journal of Open Aviation Science, ATM: Air Traffic Management, ADS-B: Automatic Dependent Surveillance-Broadcast

## 1. Introduction

The 2015 Paris Agreement aims at limiting the global climate warming under 1.5 °C by the end of the century. In order to achieve this commitment, the European Union has set up the Green Deal policy in order to dramatically decrease the greenhouse gases emissions from all the anthropic activities and reach the climate neutrality by 2050. Among them, the aviation contributes to 2.4% of the global anthropic CO₂ emissions, but as a specificity, the aviation climate impact involves also, the so-called “non-CO₂” effects (mainly NOx and condensation trails formation), accounting for 2/3 of the total aviation radiative forcing ([1]). Despite the large uncertainties regarding their climate impact, the main contributors of these non-CO₂ effects are the contrails-cirrus, formed from persisting condensation trails when low temperatures and atmospheric supersaturation with respect to ice conditions are encountered in the wake of a plane. In order to reach a climate neutral aviation, the formation of contrail-cirrus must be addressed by e.g. avoiding the Ice Super-Saturated Regions (ISSR). Several contrails formation models exist (e.g. the Schmidt-Appleman criterion or COCIP according to [2] and [3]) that can be used for contrail avoidance but in order to use them in an operational ATM context [4], it appears necessary to reduce the uncertainties linked to the contrails contribution to climate change and to the location of their appearance.

<footnote n="1">¹DGAC, Service Technique de L'Aviation Civile, Paris, France</footnote>

<footnote n="2">²ONERA DTIS, Université de Toulouse, Toulouse, France</footnote>

<footnote>*Corresponding author: claire.sarrat@onera.fr</footnote>
For instance, in order to enhance or validate those physics-based models, it is imperative to develop methods able to associate contrails with the flights that are likely to generate them. Observations such as satellites or ground cameras images are therefore necessary to analyze the formation and persistence of contrails. Once a contrail is detected on a satellite image, the objective is to establish its association with the flight(s) that might have caused it. This association enables the extraction of valuable information from the meteorological forecast models, such as temperature, pressure, and humidity data in the flight regions where contrails are formed, along with the corresponding flight altitudes.

To build a database of contrail situations encompassing contrail characteristics (localization, size and persistence) and air traffic data (the most precise segments of trajectories potentially responsible for the contrails), the development of a set of algorithms is indispensable. These algorithms should: 1) automatically detect contrails on satellite images, and 2) associate detected contrails with their corresponding flights.

Automatically detecting contrails on satellite images presents challenges due to their resemblance to natural cirrus clouds. Contrail detection algorithms (CDA) are founded on computer vision methods, including convolution and thresholding operations on various satellite bands, as observed in diverse adaptations of Mannstein's algorithm [5] and [6]. With the advent of large-scale datasets, deep learning approaches like deep convolutional neural networks [7] have now exhibited significant advancements. This paper first introduces a deep segmentation model that utilizes an architecture combining EfficientNet-B7 and U-Net, trained on GOES-16 satellite images.

Secondly, the paper is dedicated to association of aircraft trajectories with detected contrails. In fact, the metadata (geographical localization of the contrail) are used to analyze historical air traffic data recorded by ADS-B receptors in the vicinity of the contrail. By combining this traffic data with meteorological data, the challenge is to determine candidate flights most likely responsible for the formation of the contrails ([8] and [9]). This article presents a technique that utilizes the Hough Transform method for the automatic aggregation of adjacent flights. This technique relies on filters based on meteorological data, physics-based models and the temporal evolution of the flights to ascertain the most probable candidate flights.

## 2. Detecting contrails on satellite images with deep segmentation models

### 2.1 Analysis of datasets

The idea of employing machine learning for contrail detection was initially suggested in the 1990s [10]. However, its implementation was not viable at the time, primarily due to the limitations of computing power. Another significant constraint was the scarcity of labeled data. An initial dataset with annotations served as a foundation for recent AI-driven approaches in contrail detection [7]. Another method to acquire annotated datasets involves the generation of synthetic data [11].

Research initiatives have accelerated with the introduction of two datasets delivered by Google: one centered on Landsat-8, an Earth-observing satellite in low Earth orbit [12], and another named OpenContrails based on GOES-16 images, a geostationary satellite dedicated to meteorological monitoring [13].

The main advantage of geostationary satellites lies in their extensive coverage of a large part of a region, with a nadir spatial resolution of 2km. This enables comprehensive monitoring of contrail evolution. The OpenContrails dataset is subdivided into smaller areas (256 x 256 pixels samples), each covering the entire full disk of GOES-16 and this dataset contains the following elements:

* 20,539 training examples and 1,856 validation examples.
* For each satellite image, there is access to 9 different channels and 8 temporal sequences and a metadata file that provides the image date and location.

* Each image is also annotated manually by 4 different experts for the training set providing 4 annotated masks. The masks are only annotated for the fifth temporal sequence.

* Finally, each image has a labeled mask, which corresponds to a majority vote. A pixel belongs to the 'contrail' class if it is annotated by at least 3 of the 4 experts.

Each of the 8 channels is in the format (Time, RGB Channels, Height, Width), where the first variable corresponds to the 8 available temporal sequences, the second to the 3 dimensions for the red, green, and blue colors, and the last two to the image dimensions.

## 2.2 Building a deep segmentation model with GOES-16 data

Several architectures can be used to solve this problem such as U-net [14] or DeepLabV3+ [15]. A first study from [16] used Landsat-8 dataset to evaluate the performance of those types of architectures. Another model with U-Net has been developed by [17] using GOES-16 dataset.

In this section we describe our single frame segmentation model. The pipeline is the following:

* We use a pre-processing based on the combination of three longwave GOES-16 brightness temperature to create an "ash" false color image (previously used to detect volcanic ashes and SO₂ gas in satellite images). The purpose of this pre-processing transformation is to assist the algorithm in its learning as it allows a better identification of condensation trails in satellite images ([13]). This transformation concerns the RGB channels following the Equation 1, with the values given in the Table 1.

$$ (R, G, B) = \left( \frac{T_{R,G,B} - T_{min}}{T_{max} - T_{min}} \right)^{\frac{1}{\gamma_{R,G,B}}} \quad (1) $$

Where $T_{max}$ and $T_{min}$ are the constraints for each color, $T_{R,G,B}$ the temperature from the different operations channel and $\gamma_{R,G,B}$ the enhancement factor.

<table><caption>**Table 1.** R, G, B channels construction for the false color images given by Equation 1.</caption><thead><tr><th>Color</th><th>Channels</th><th>$T_{min}$ (K)</th><th>$T_{max}$ (K)</th><th>$\gamma_{R,G,B}$</th></tr></thead><tbody><tr><td>Red</td><td>12.3 µm - 11.2 µm</td><td>-4</td><td>2</td><td>1</td></tr><tr><td>Green</td><td>11.2 µm - 8.5 µm</td><td>-4</td><td>5</td><td>1</td></tr><tr><td>Blue</td><td>11.2 µm</td><td>243</td><td>303</td><td>1</td></tr></tbody></table>

* We choose a U-net architecture with the encoder EfficientNet-B7 backbone that is pre-trained on the ImageNet dataset.

* For the training, we design a loss function combining two terms which are the focal loss [18] and the dice loss [19]. This loss function helps to manage class imbalance and improve model convergence.

* The last step is the post-processing that checks if all contrails detected are quite linear and long via the Hough transformation.

Figure 1 shows the false color image (on the left), the labeled image (in the middle) and the prediction (on the right). Visually, the predicted contrails are consistent with reality. The performances of our model are calculated according to Hoffman et al., 2023 metrics ([17]) and compared to their statistics in the Table 2.
<table><caption>**Table 2.** Contrail detection performance statistics including Percent Correct (PC), Probability Of Detection (POD), False Alarm Ratio (FAR) and the F1-score obtained by Hoffman et al, 2023 [17] with an U-Net model and our model U-Net/EfficientNet-B7.</caption><thead><tr><th></th><th>Percent correct</th><th>Probability of detection</th><th>False alarm ratio</th><th>F1-score</th></tr></thead><tbody><tr><td>U-Net model [17]</td><td>0.995</td><td>0.508</td><td>0.460</td><td>0.524</td></tr><tr><td>U-Net model, EfficientNet-B7</td><td>0.998</td><td>0.6123</td><td>0.415</td><td>0.599</td></tr></tbody></table>

<figure><img src="image_1.png" /><figcaption>**Figure 1.** Example of contrail prediction by the deep segmentation model on a GOES-16 satellite image: the false color satellite image (left), the labeled image (middle) and the deep learning prediction (right).</figcaption></figure>

# 3. Associating contrails with corresponding flights

## 3.1 Importance of air traffic data

Air traffic data is a critical component for several reasons. It is essential for labeling satellite images, such as the GOES-16 images, in order to correlate the presence of contrails with aircraft activity.

Traffic data can also enhance the predictive accuracy of deep learning models, either intrinsically to the models or through pre- and post- processing.

Finally, a contrails/trajectories database can be used to validate physical models, particularly those based on the Schmidt-Appleman Criteria. Indeed, the improvement of predictions regarding regions favorable to the creation of contrails, and, consequently, the validation of route optimization models from a climate perspective, require a large number of observations [8] [9].

## 3.2 Data preparation

Before associating traffic with contrails, it is necessary to prepare the following data:

* First, we use the labeled images from GOES-16 satellite dataset [13]. For each satellite image, associated metadata are processed to determine the exact location and the projection used, so that the contrails mask is obtained with their exact location, domain boundaries and timestamp.

* Then, meteorological data are retrieved from the European Centre for Medium-Range Weather Forecasts (ECMWF), specifically using ECMWF Re-Analysis version 5 (ERA5) data [20]. These re-analyses take into account all the observations available at the desired time, providing the most accurate state of the atmosphere at the global scale. The different meteorological fields are provided at a spatial resolution of 0.25° on a regular latitude/longitude grid, encompassing 37 vertical levels from 1000 hPa to 1 hPa, with an hourly temporal resolution. From this dataset, we extract the wind components (u and v), air temperature and relative humidity.
* At the end, air traffic is extracted with the python Traffic library [21] from the OpenSky Network database [22] (a database that compiles all information extracted from ADS-B data broadcast by aircraft). Then, we can overlay all traffic with satellite images containing contrails.

## 3.3 Association of flights with detected contrails

### 3.3.1 Problems and assumptions

Once a contrail is detected in a satellite image, several information are still missing, such as the contrail's altitude, the start and end times of its formation. Additionally, a contrail can initially originate from a preceding flight and then persist due to a series of subsequent flights. Moreover, the effect of wind must be considered as the contrail may deviate from the flight trajectory. Associating an observed contrail with a flight is a complex task due to these uncertainties. Therefore, we make several assumptions to address this challenge:

* Since it is not possible to know the altitude of the clouds in a satellite image, all flights and contrails are considered to be at the same altitude. So, all aircraft trajectories are superimposed on the same horizontal plane. This approach leads us to analyze the orientation and distance between the contrails and the trajectories of the various flights.

* All contrails are assumed to be sufficiently linear, recognizing that in practice, contrails remain straight and in the direction of the aircraft that generated them, despite potential wind influence.

* We only consider flights in cruise or those with small flight level changes (less than 1000 ft) as proposed by [9].

* We assume that a contrail remains sufficiently close to the trajectory that contributed to its formation. So, we only consider traffic between $t$ - 40 minutes and $t$ to associate a flight to a contrail identified at time $t$.

Hence, all trajectories under these assumptions are represented in Figure 2(a). The next section presents the method to find out the similarities between trajectories and contrails and the different steps of this method are illustrated in the next paragraphs using this study case.

<figure><img src="image_2.png" /><figcaption>**Figure 2.** On the left-hand side, the Figure (a) corresponds to a set of flight trajectories over the South-West of California (USA) and the North of Mexico, represented in blue and, a set of contrails represented in red. 627 flights are recorded during 40-minutes period (OpenSky Network data.) On the right-hand side, the Figure (b) shows the transformation of all trajectories and contrails in the Hough system. Blue dots represent the trajectories and the red ones the contrails.</figcaption></figure>
### 3.3.2 Candidate flight identification using the Hough Transform method

The first step for the identification is the definition of a metric to compare the similarities between the aircraft trajectories and the linear contrails. A trajectory is defined by a set of points $Y_t$ and a contrail by a set of points $X_c$. Some metrics can be used such as the Hausdorff distance [23] or the Fréchet distance [24]. Chevallier et al., 2023, [11] has recently built a new custom distance for this problem of similarity that use the square of the Hausdorff distance divided by the Haversine distance.

<figure><img src="image_3.png" /><figcaption>Figure 3. Hough Transform: Transition from the Cartesian coordinate system to the polar coordinate system [25].</figcaption></figure>

However, a problem arises in constructing the set $Y_t$. The aforementioned metrics depend on the part of the trajectory that is being compared to a contrail, and the choice of this part can significantly impact the results. This raises the question of what should be considered as the beginning and the end of the trajectory to correctly compute these distances. The Hough Transform [26] allows to overcome this issue, by projecting flight trajectories and contrails into the Hough space and compare the characteristics of a trajectory and a contrail. In this context, a segment is represented as a point defined by $\rho$ and $\theta$, where $\rho$ is the distance between the origin and the closest point on the line, and $\theta$ is the angle formed by the horizontal axis and the line going from the origin to the closest point. In other words, this transformation converts linear lines (Equation 2) to polar coordinates (Equation 3), as represented in Figure 3 with coordinates transformation into $\theta$ and $\rho$.

$$y = a \cdot x + b \qquad (2)$$

$$\rho = x \cdot \cos(\theta) + y \cdot \sin(\theta) \qquad (3)$$

Since we assume that contrails are relatively in the same direction than the flight that may have caused it, the parameter $\theta$ will help eliminating the planes with a trajectory angle $\alpha$ that is significantly different. The parameter $\rho$ will provide the information about the distance between the trajectory and the contrail. This transform in the Hough space has already been used by Sun et al [25], in order to take into account the linear characteristic of the contrail and to compare the obtained prediction with the labeled picture. Here, we compare the linear characteristic of the condensation trail with that of the flight trajectory.

Figure 2(b) illustrates the result obtained after the transformation of trajectories from the longitude/latitude coordinate system to the Hough coordinate system.
### 3.3.3 Candidate flight filtering

Apart from the Hough space method described above, the methodology used to obtain potentially contrail-generating flights is summarized in Figure 4 and hereafter described. This method is composed of three main parts:

- the filtering with the Schmidt-Appleman Criterion,

- a so-called 'Advection filter',

- and a direction filter.

Each of the three filters are displayed in Figure 4 using blue dashed boxes. In order to process these filters, several types of data are needed:

- the trajectories data, from the Opensky database, which stores ADS-B data,

- the satellite observations coming from the OpenContrails database, providing satellite images and masks,

- meteorological data given by the ERA5 database, which furnishes weather conditions.

The following paragraph provides details on these three steps:

1. The Schmidt-Appleman Criterion (SAC) filter: The SAC [2] is applied using ERA5 temperature and humidity fields to determine the altitude at which contrails can form, with the engine efficiency η assumed to be 0.4 since we consider cruising flights. We can therefore eliminate all aircraft that are not in the layers where the Schmidt-Appleman Criterion is verified. Such a filter should be reconsidered at the end of the process as the assessment and the improvement of this criterion is one of the main final objectives.

2. The Advection filter is applied to deduce the evolution of ρ during a short time interval Δt = 10 min, since we assume that the contrail orientation is constant (θ = cte) during Δt because the wind is supposed to be homogeneous and only translates the contrail. Here, we only need to know the contrail position (xint, yint), which is the intersection between the contrail and the normal passing through the origin at t - Δt. Thus, we can deduce the next position of the contrail at t following:

$$x_{int}(t - \Delta t) = x_{int}(t) - \Delta t \cdot W \cos(\gamma) \quad (4)$$

$$y_{int}(t - \Delta t) = y_{int}(t) - \Delta t \cdot W \sin(\gamma) \quad (5)$$

Where W is the wind strength, γ the angle between the wind direction and the contrail. Figure 5 shows the evolution of the ρ value between the step t - Δt and t.

As the contrail remains at constant θ in the Hough space, the evolution of ρ will enable to choose in which range of ρ values to look for the flights, with the following conditions:

$$\rho_c \le \rho_v \le \rho_c + \rho_{threshold} \quad \text{if} \quad \rho_c(t) < \rho_c(t - \Delta t) \quad \forall c \in C \forall v \in V \quad (6)$$

$$\rho_c \ge \rho_v \ge \rho_c - \rho_{threshold} \quad \text{if} \quad \rho_c(t) > \rho_c(t - \Delta t) \quad \forall c \in C \forall v \in V \quad (7)$$

where C are the contrails, V are the flights. We assume that the maximal contrail displacement is approximately 130 km due to the wind advection, corresponding to a maximal variation of ρ of 70. Besides, as a strong assumption, it is decided that the maximal angle between a flight trajectory and a contrail can not be greater than ± 3 degrees. These two maximal variations of ρ and θ allow to set the domains boundaries in the Hough space.

The domain boundaries of each contrails can now be represented in the Hough space and only the flight that are inside these domains' boundaries can be suspected to have formed the contrail. In the example in Figure 6, we can identify 4 domains for 4 contrails in the area. This allows to determine which aircraft are suspected for each contrail formed. Here, three contrails could have been formed by multiple flights.
<figure><img src="image_4.png" /><figcaption>**Figure 4.** Summary of all the steps applied in the contrail and air traffic association algorithm. The arrows and blue boxes correspond to the different stages of the method, and the green ones represent the different inputs.</figcaption></figure>
<figure><img src="image_5.png" /><figcaption>**Figure 5.** Evolution of ρ value during the time. Each blue dot represents a different contrail at *t* − Δ*t* time and the orange dot linked by the arrow the evolution of the contrail after Δ*t* time. Thanks to information of evolution of ρ, some trajectories can be rejected.</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>**Figure 6.** Selection of the trajectories that are inside the domains' boundaries in the Hough space as a result of the Advection filter. The colored rectangles represent domains boundaries constructed using filters on ρ and θ limit values. The colored dots at the edge of each domain represent the contrail. For clarity, only flights within the domains are shown.</figcaption></figure>
3. The Direction Filter is finally applied to the aircraft flights directions to exclude an aircraft that precede a contrail. In fact, such a trajectory suggests the aircraft couldn't produce it. The main objective of this filter is to delete the trajectories with the teal circle illustrated by Figure 7.

<figure><img src="image_7.png" /><figcaption>**Figure 7.** Complete air traffic after SAC and Advection filters. The aircraft's nose corresponds to the direction of the trajectory. The teal circles indicate flights that will undergo filtering by the Direction Filter, while the remaining flights represent the final candidates that have successfully passed all three filters.</figcaption></figure>

To do so, for each remaining flight, as we have previously identified the contrail it could have formed, we check the following conditions: A plane heading towards a contrail cannot be the one creating it. Similarly, if a plane trajectory overlaps with a contrail, it cannot be responsible for its creation if it is moving away from one end of the contrail and towards the other. As we also know the positions of the contrails endpoints ($(x_{sc}, y_{sc})$ and $(x_{ec}, y_{ec})$ respectively the coordinates of the contrail starting and end point), as well as the positions of the aircraft at time 't' ($(x_{ef}, y_{ef})$) and one minute before ($(x_{bf}, y_{bf})$), the conditions 8 and 9 allow to verify whether flight f is moving away from or approaching the contrail.

$$ \sqrt{(x_{sc} - x_{sf})^2 + (y_{sc} - y_{sf})^2} \le \sqrt{(x_{ec} - x_{sf})^2 + (y_{ec} - y_{sf})^2} \quad (8) $$

$$ \sqrt{(x_{sc} - x_{ef})^2 + (y_{sc} - y_{ef})^2} \le \sqrt{(x_{ec} - x_{ef})^2 + (y_{ec} - y_{ef})^2} \quad (9) $$

Hence, the final traffic is represented in Figure 8. Remaining trajectories are sufficiently parallel to at least one contrail and are heading away from at least one of the contrails. These flights are only the best candidates that could have formed these contrails during the given period.
<figure><img src="image_8.png" /><figcaption>**Figure 8.** Graphical output showcasing the juxtaposition of contrails (depicted in white) and aircraft trajectories (represented in different colors) associated with flights that are likely accountable for their formation. Wind is indicated by wind barbs; it comes from the southwest with an intensity between 25 and 35 knots (approximately 15 m/s). Aircraft symbols along the trajectories indicate the direction of flight as well as the aircraft's position every ten minutes.</figcaption></figure>

Given a satellite image with detected contrails, the methodology described in this section allows to determine potential candidate flights for their formation. In fact, even though 627 aircraft flew over this region during the 40 minutes before, these successive transformations and filters allow to identify only 13 trajectories as potential contributors to the 4 identified contrails. The analysis of several other examples of satellite images from the GOES-16 database allowed us to demonstrate the possibility of identifying, through this method, a set of flights, but highlighted in most cases the difficulty of identifying a single flight associated with a contrail.

## 4. Conclusion

This study focuses on the development of automatic contrail detection algorithms using satellite images, coupled with the association of these contrails with aircraft trajectories obtained from ADS-B data. The initial phase entails creating and validating detection algorithms, demonstrating scores comparable to existing literature when tested against labeled images from a geostationary satellite.

Furthermore, we introduce a comprehensive three-stage methodology that leverages contrail images, air traffic data, and meteorological data to associate contrails with aircraft trajectories. The first stage employs the Schmidt-Appleman Criterion as an initial filtering. This criterion utilizes ERA5 fields of temperature and humidity to determine the altitude at which contrails can form. This precise altitude specification aids in narrowing down the subset of potentially responsible aircraft for contrail occurrence.
The subsequent stage involves projecting contrails into a Hough space. This transformation of lines from Cartesian coordinates to polar coordinates allows the comparison of trajectories and contrails based on the proximity of their coordinates. This approach proves essential in overcoming challenges related to the contrail linearity and the influence of advection. The final step utilizes a direction filter to exclude flights heading toward a contrail, further refining the selection of candidate flights responsible for contrail formation.

The initial results highlight successful associations between flight trajectories and detected contrails, thereby identifying flights potentially responsible for contrail formation. This methodology lays the foundation for constructing an initial database of contrails-trajectories. For each detected contrail, the methodology provides a set of candidate flights. Such a database is crucial for validating physics-based models used to simulate optimized “green” trajectories.

While the methodology proves effective, certain limitations are acknowledged, particularly in scenarios over seas or oceans where the ADS-B signals provided by terrestrial antenna are not available. In such cases, the ADS-B data from satellites should be considered. Challenges are also noted in cases where mature contrails are advected by the wind. To address these limitations, potential enhancements are proposed. One avenue involves refining Hough space conditions during the Advection filter, considering the evolution of θ due to wind, and introducing a new ρ threshold based on wind strength and direction. Another improvement could be the incorporation of contrail evolution equations presented by [27]. Additionally, exploring alternative computer vision methodologies for contrail detection, as suggested by [25], holds promise for advancing this work.

In conclusion, addressing the crucial topic of associating contrails with air traffic data is expected to prompt the emergence of various AI methods, which could benefit from the Hough transformation and the different filters introduced here.

## Acknowledgement

The authors would like to express their gratitude to their colleague Dr. Xavier Olive, for his scientific and technical support.

## Funding statement

This study received funds from the French Directorate General for Civil Aviation (DGAC) through the national DECOR project.

## Open data statement

The data used to produce the main example in the paper are available at:

https://github.com/ATMLabOrg/CAD

All the necessary data needed to replicate or extend this work with other examples can be found in public open datasets, including the Google GOES-16 satellite image dataset, ERA5 meteorological data, and the OpenSky Network ADS-B traffic data.

## Reproducibility statement

The source code to reproduce the main example of the paper, including figures, is available at:

https://github.com/ATMLabOrg/CAD
## References

[1] D. S. Lee et al. "The contribution of global aviation to anthropogenic climate forcing for 2000 to 2018". en. In: *Atmospheric Environment* 244 (Jan. 2021), p. 117834. ISSN: 1352-2310. DOI: 10.1016/j.atmosenv.2020.117834. URL: https://www.sciencedirect.com/science/article/pii/S1352231020305689 (visited on 03/31/2022).

[2] Ulrich Schumann. "On conditions for contrail formation from aircraft exhausts". In: *Meteorologische Zeitschrift* 5.1 (1996).

[3] Ulrich Schumann, Bernhard Mayer, Kasper Graf, and Hermann Mannstein. "A Parametric Radiative Forcing Model for Contrail Cirrus". In: *Journal of Applied Meteorology and Climatology* 51.7 (July 2012), pp. 1391-1406. ISSN: 1558-8424, 1558-8432.

[4] Klaus Gierens, Sigrun Matthes, and Susanne Rohs. "How Well Can Persistent Contrails Be Predicted?" In: *Aerospace* 7.12 (Dec. 2020), p. 169. ISSN: 2226-4310.

[5] Hermann Mannstein, Richard Meyer, and Peter Wendling. "Operational detection of contrails from NOAA-AVHRR-data". In: *International Journal of Remote Sensing* 20.8 (1999), pp. 1641-1660.

[6] Georgios Dekoutsidis, Haralambos Feidas, and Luca Bugliaro. "Contrail detection on SEVIRI images and 1-year study of their physical properties and the atmospheric conditions favoring their formation over Europe". In: *Theoretical and Applied Climatology* 151.3-4 (2023), pp. 1931-1948.

[7] Luke Kulik. "Satellite-based detection of contrails using deep learning". PhD thesis. Massachusetts Institute of Technology, 2019.

[8] Esther Roosenbrand, Junzi Sun, Irene C Dedoussi, Daphne Stam, and Jacco Hoekstra. "Assessing and Modelling Climate Optimal Flights Using Open Surveillance and Remote Sensing Data". In: *10th International Conference for Research in Air Transportation*. FAA & Eurocontrol. 2022.

[9] Ester Roosenbrand, Junzi Sun, and Jacco M. Hoekstra. "Examining Contrail Formation Models with Open Flight and Remote Sensing Data". In: *12th SESAR Innovation Days*. 2022.

[10] Dieter Meinert. "Training a neural network to detect jet contrails in satellite images". In: *Impact of emissions from aircraft and spacecraft upon the atmosphere* (1992), pp. 401-406.

[11] Rémi Chevallier, Marc Shapiro, Zebediah Engberg, Manuel Soler, and Daniel Delahaye. "Linear Contrails Detection, Tracking and Matching with Aircraft Using Geostationary Satellite and Air Traffic Data". In: *Aerospace* 10.7 (2023), p. 578.

[12] Kevin James Fleming McCloskey, Scott Davidson Geraedts, Brendan Henry Jackman, Vincent Rudolf Meijer, Erica Wickstrom Brand, David K Fork, John Platt, Carl Elkin, and Christopher H Van Arsdale. "A human-labeled Landsat contrails dataset". In: (2021).

[13] Joe Yue-Hei Ng, Kevin McCloskey, Jian Cui, Erica Brand, Aaron Sarna, Nita Goyal, Christopher Van Arsdale, and Scott Geraedts. "OpenContrails: Benchmarking Contrail Detection on GOES-16 ABI". In: *arXiv preprint arXiv:2304.02122* (2023).

[14] Olaf Ronneberger, Philipp Fischer, and Thomas Brox. "U-net: Convolutional networks for biomedical image segmentation". In: *Medical Image Computing and Computer-Assisted Intervention-MICCAI 2015: 18th International Conference, Munich, Germany, October 5-9, 2015, Proceedings, Part III 18*. Springer. 2015, pp. 234-241.

[15] Liang-Chieh Chen, Yukun Zhu, George Papandreou, Florian Schroff, and Hartwig Adam. "Encoder-decoder with atrous separable convolution for semantic image segmentation". In: *Proceedings of the European conference on computer vision (ECCV)*. 2018, pp. 801-818.

[16] Akshat Bhandari, Sriya Rallabandi, Sanchit Singhal, and Aditya Kasliwal. "Performance evaluation of deep segmentation models on Landsat-8 imagery". In: *arXiv preprint arXiv:2211.14851* (2022).
[17] Jay P Hoffman, Timothy F Rahmes, Anthony J Wimmers, and Wayne F Feltz. "The Application of a Convolutional Neural Network for the Detection of Contrails in Satellite Imagery". In: *Remote Sensing* 15.11 (2023), p. 2854.

[18] Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and Piotr Dollár. "Focal loss for dense object detection". In: *Proceedings of the IEEE international conference on computer vision*. 2017, pp. 2980–2988.

[19] Carole H Sudre, Wenqi Li, Tom Vercauteren, Sebastien Ourselin, and M Jorge Cardoso. "Generalised dice overlap as a deep learning loss function for highly unbalanced segmentations". In: *Deep Learning in Medical Image Analysis and Multimodal Learning for Clinical Decision Support: Third International Workshop, DLMIA 2017, and 7th International Workshop, ML-CDS 2017, Held in Conjunction with MICCAI 2017, Québec City, QC, Canada, September 14, Proceedings 3*. Springer. 2017, pp. 240–248.

[20] Hans Hersbach, Bill Bell, Paul Berrisford, Shoji Hirahara, András Horányi, Joaquín Muñoz-Sabater, Julien Nicolas, Carole Peubey, Raluca Radu, Dinand Schepers, et al. "The ERA5 global reanalysis". In: *Quarterly Journal of the Royal Meteorological Society* 146.730 (2020), pp. 1999–2049.

[21] Xavier Olive. "traffic, a toolbox for processing and analysing air traffic data". In: *Journal of Open Source Software* 4.39 (2019), pp. 1518–1.

[22] Matthias Schäfer, Martin Strohmeier, Vincent Lenders, Ivan Martinovic, and Matthias Wilhelm. "Bringing up OpenSky: A large-scale ADS-B sensor network for research". In: *IPSN-14 Proceedings of the 13th International Symposium on Information Processing in Sensor Networks*. IEEE. 2014, pp. 83–94.

[23] Jinyang Chen, Rangding Wang, Liangxu Liu, and Jiatao Song. "Clustering of trajectories based on Hausdorff distance". In: *2011 international conference on electronics, communications and control (icecc)*. IEEE. 2011, pp. 1940–1944.

[24] Sariel Har-Peled and Benjamin Raichel. "The Fréchet distance revisited and extended". In: *ACM Transactions on Algorithms (TALG)* 10.1 (2014), pp. 1–22.

[25] Junzi Sun and Esther Roosenbrand. "Flight Contrail Segmentation via Augmented Transfer Learning with Novel SR Loss Function in Hough Space". In: *arXiv preprint arXiv:2307.12032* (2023).

[26] Paul VC Hough. *Method and means for recognizing complex patterns*. US Patent 3,069,654. Dec. 1962.

[27] Scott Geraedts, Erica Brand, Thomas R Dean, Sebastian Eastham, Zebediah Engberg, Ulrike Hager, Ian Langmore, Kevin McCloskey, Joe Yue-Hei Ng, John C Platt, et al. "A scalable system to measure contrail formation on a per-flight basis". In: *arXiv preprint arXiv:2308.02707* (2023).