<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Earth Sci.</journal-id>
<journal-title>Frontiers in Earth Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Earth Sci.</abbrev-journal-title>
<issn pub-type="epub">2296-6463</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1064171</article-id>
<article-id pub-id-type="doi">10.3389/feart.2022.1064171</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Earth Science</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Automatic retrieval of volcanic SO<sub>2</sub> emission source from TROPOMI products</article-title>
<alt-title alt-title-type="left-running-head">Markus et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/feart.2022.1064171">10.3389/feart.2022.1064171</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Markus</surname>
<given-names>Balazs</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2042749/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Valade</surname>
<given-names>S&#xe9;bastien</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/766288/overview"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>W&#xf6;llhaf</surname>
<given-names>Manuel</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2043186/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Hellwich</surname>
<given-names>Olaf</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Fachgebiet Computer Vision &#x26; Remote Sensing</institution>, <institution>Technische Universit&#xe4;t Berlin</institution>, <addr-line>Berlin</addr-line>, <country>Germany</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Instituto de Geof&#xed;sica</institution>, <institution>Universidad Nacional Aut&#xf3;noma de M&#xe9;xico (UNAM)</institution>, <addr-line>Mexico City</addr-line>, <country>Mexico</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/603562/overview">Christoph Kern</ext-link>, Unite&#x25cb;d States Geological Survey (USGS), United States</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/430875/overview">Taryn Lopez</ext-link>, University of Alaska Fairbanks, United States</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/953247/overview">Ben Esse</ext-link>, The University of Manchester, United Kingdom</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Manuel W&#xf6;llhaf, <email>woellhaf@tu-berlin.de</email>
</corresp>
<fn fn-type="other">
<p>This article was submitted to Volcanology, a section of the journal Frontiers in Earth Science</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>05</day>
<month>01</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2022</year>
</pub-date>
<volume>10</volume>
<elocation-id>1064171</elocation-id>
<history>
<date date-type="received">
<day>07</day>
<month>10</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>29</day>
<month>11</month>
<year>2022</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Markus, Valade, W&#xf6;llhaf and Hellwich.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Markus, Valade, W&#xf6;llhaf and Hellwich</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>Volcanic sulfur dioxide (SO<sub>2</sub>) satellite observations are key for monitoring volcanic activity, and for mitigation of the associated risks on both human health and aviation safety. Automatic analysis of this data source, including robust source emission retrieval, is in turn essential for near real-time monitoring applications. We have developed fast and accurate SO<sub>2</sub> plume classifier and segmentation algorithms using classic clustering, segmentation and image processing techniques. These algorithms, applied to measurements from the TROPOMI instrument onboard the Sentinel-5 Precursor platform, can help in the accurate source estimation of volcanic SO<sub>2</sub> plumes originating from various volcanoes. In this paper, we demonstrate the ability of different pixel classification methodologies to retrieve SO<sub>2</sub> source emission with a good accuracy. We compare the algorithms, their strengths and shortcomings, and present plume classification results for various active volcanoes throughout the year 2021, including examples from Etna (Italy), Sangay and Reventador (Ecuador), Sabancaya and Ubinas (Peru), Scheveluch and Klyuchevskoy (Russia), as well as Ibu and Dukono (Indonesia). The developed algorithms, shared as open-source code, contribute to improving analysis and monitoring of volcanic emissions from space.</p>
</abstract>
<kwd-group>
<kwd>clustering</kwd>
<kwd>satellite remote sensing</kwd>
<kwd>semantic segmentation</kwd>
<kwd>SO<sub>2</sub> volcanic plumes</kwd>
<kwd>volcano monitoring</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>The accurate retrieval of the source location and mass loading of volcanic plumes is essential to study volcanic processes and mitigate the associated hazards. In particular, Sulfur Dioxide (SO<sub>2</sub>) gas emissions are a key parameter informing on the eruptive activity of volcanoes (<xref ref-type="bibr" rid="B16">Oppenheimer et al., 2014</xref>). An increase in SO<sub>2</sub> flux is for instance often considered as a precursor to volcanic eruptions. Likewise, decrease in SO<sub>2</sub> emissions can indicate changes in the volcanic conduit permeability (<xref ref-type="bibr" rid="B7">Edmonds et al., 2003</xref>), which can lead to violent explosions (<xref ref-type="bibr" rid="B14">Matthews et al., 1997</xref>; <xref ref-type="bibr" rid="B2">Campion et al., 2018</xref>). Moreover, these volcanic gases can have severe impact on human health (<xref ref-type="bibr" rid="B23">Sierra-Vargas et al., 2018</xref>; <xref ref-type="bibr" rid="B3">Carlsen et al., 2021</xref>; <xref ref-type="bibr" rid="B10">Heaviside et al., 2021</xref> and air traffic safety <xref ref-type="bibr" rid="B1">Bernard and Rose, 1990</xref>; <xref ref-type="bibr" rid="B18">Prata, 2009</xref>; <xref ref-type="bibr" rid="B22">Schmidt et al., 2014</xref>). In particular, injection of sulfur dioxide in the atmosphere receives considerable attention due to its subsequent conversion into aerosols and potentially strong effects on global climate (<xref ref-type="bibr" rid="B20">Robock, 2000</xref>).</p>
<p>Space-based measurements of the atmospheric composition have blossomed over the past 2&#xa0;decades, from relatively crude, prototype products, to refined products suitable for operational monitoring and assimilation. These products include tropospheric vertical column density of different gases, including SO<sub>2</sub> (<xref ref-type="bibr" rid="B4">Carn et al., 2017</xref>). In 2017, the Tropospheric Monitoring Instrument (TROPOMI) was launched onboard the Sentinel-5 Precursor satellite. Thanks to an improved spatial resolution at nadir (i.e., 3.5&#xa0;km &#xd7; 7 to 5.5&#xa0;km footprint) and a better SO<sub>2</sub> detection limit (by a factor of 4 with respect to previous sensors), it significantly improved the possibility of detecting small SO<sub>2</sub> volcanic emissions previously undetectable (<xref ref-type="bibr" rid="B27">Theys et al., 2017</xref>; <xref ref-type="bibr" rid="B25">Theys et al., 2019</xref>). In turn, TROPOMI has been extensively used to accurately measure SO<sub>2</sub> masses and fluxes emitted from both passive volcanic degassing and large explosive eruptions (<xref ref-type="bibr" rid="B6">Corradini et al., 2021</xref>; <xref ref-type="bibr" rid="B19">Quei&#xdf;er et al., 2019</xref>; <xref ref-type="bibr" rid="B17">Pardini et al., 2020</xref>).</p>
<p>Nonetheless, the SO<sub>2</sub>-contaminated pixels have no data regarding their origin nor source emission, meaning that only manual inspection and interpretation by the user can determine this. Yet it is of primordial importance to be able to discriminate gas plumes originating from neighboring volcanoes, especially in locations where multiple volcanoes are located in a relatively small area. Various attempts have been made to automatically obtain mass of SO<sub>2</sub> emitted from active volcanoes. The MOUNTS operational volcano monitoring system (<xref ref-type="bibr" rid="B28">Valade et al., 2019</xref>) for example, which automatically processes TROPOMI products over several tens of active volcanoes worldwide, was using in its initial version a radius-based approach to obtain SO<sub>2</sub> mass values per volcano, whereby SO<sub>2</sub> contaminated pixels were classified based on their distance to the source volcano. This method however presents pitfalls as gas emissions coming from neighboring volcanoes cannot be discriminated in a robust manner.</p>
<p>In general, SO<sub>2</sub> source emission estimation is most often performed manually, which is a tedious process involving human work. Automating this process can make analysis of eruptions significantly faster and more accurate, with the ultimate goal to provide the derived information in near real-time. Automatic plume detection algorithms for TROPOMI products have been actively researched in the recent years, not just for SO<sub>2</sub> (<xref ref-type="bibr" rid="B5">Cofano et al., 2021</xref>), but also for other gas species recorded by TROPOMI such as NO<sub>2</sub> (<xref ref-type="bibr" rid="B9">Finch et al., 2022</xref>). This work focuses on the retrieval of the gas source emission, rather than on its detection in the TROPOMI product.</p>
<p>We present different algorithms that were developed to retrieve the source of volcanic SO<sub>2</sub>-contaminated pixels. The efficiency of these algorithms is tested at various active volcanoes worldwide. The article is organized as follows: in <xref ref-type="sec" rid="s2">Section 2</xref>, the used materials and data are presented. In <xref ref-type="sec" rid="s3">Section 3</xref>, the methods developed to classify the source of SO<sub>2</sub>-contaminated pixels are summarized. The shortcomings, strengths and the overall results are presented in <xref ref-type="sec" rid="s4">Section 4</xref> while in <xref ref-type="sec" rid="s5">Section 5</xref> a discussion of the results and areas of improvement are presented. Final conclusions are then drawn in <xref ref-type="sec" rid="s6">Section 6</xref>.</p>
</sec>
<sec id="s2">
<title>2 Materials and data</title>
<sec id="s2-1">
<title>2.1 Sentinel-5P TROPOMI products of case-study volcanoes</title>
<p>In this work, Sentinel-5P Near-Real-Time (NRTI) L2 SO<sub>2</sub> products were used. NRTI products are suited for near-real-time applications and are only available during 15-days after sensing, after which they are merged and replaced by Offline (OFFL) products. For an arbitrary pixel in the product, several relevant data is available, including: vertical column density (VCD), which correspond to SO<sub>2</sub> gas density computed over vertical slices (1&#xa0;km thick slices at three different altitudes of the atmosphere), the latitude and longitude of the pixel center point, and a SO<sub>2</sub> detection flag, provided in the TROPOMI SO<sub>2</sub> L2 product as &#x201c;sulfurdioxide_detection_flag&#x201d;. This flag identifies pixels with a high SO<sub>2</sub> concentration (<xref ref-type="bibr" rid="B21">Romahn et al., 2022</xref>), by marking them with either 0 for no detection, 1 for SO<sub>2</sub> detection, 2 for clear volcanic detection, 3 for detection close to a known anthropogenic source, or 4 for detection at high SZA (potential false-positive). We hereafter use the term &#x201c;detection mask&#x201d; to refer to the matrix of all SO<sub>2</sub>-contaminated pixels (all the pixels marked with flag &#x2265;1), which is used as input to the algorithms presented here. Summing up the pixels volcanic SO<sub>2</sub> detection mask, using the vertical column density (VCD), the total mass of volcanic SO<sub>2</sub> plumes on the image can be calculated (<xref ref-type="bibr" rid="B28">Valade et al., 2019</xref>). This total SO<sub>2</sub> mass can then be assigned to one or multiple source volcanoes.</p>
<p>The algorithms were evaluated on non-cropped L2 SO<sub>2</sub> NRTI products collected by the monitoring system MOUNTS (<ext-link ext-link-type="uri" xlink:href="http://www.mounts-project.com">http://www.mounts-project.com</ext-link>, <xref ref-type="bibr" rid="B28">Valade et al., 2019</xref>) over seven active volcanoes. These include: Sangay, Sabancaya, Nevado del Ruiz, Etna, Popocat&#xe9;petl, Dukono, and Yasur, as shown in <xref ref-type="table" rid="T3">Table 3</xref>. These volcanoes were chosen based on their sustained SO<sub>2</sub> degassing activity, and based on the fact that several are located in regions where other nearby volcanoes are emitting contemporaneously. This allowed us to test the algorithms capability to discriminate plumes originating from different neighboring volcanoes. It is worth specifying that these volcanoes are those used for the quantitative evaluation of the algorithms, which implied generating hand-labeled ground truth (see <xref ref-type="sec" rid="s2-2">Section 2.2</xref>). The algorithms were then applied to a larger list of volcanoes for qualitative evaluation, some of which are presented in the paper (e.g., Scheveluch, Klyuchevskoy, Ibu, Ubinas, Reventador). The products used for evaluation were acquired during the year 2021. In order to decrease the overall dataset, we selected 1 TROPOMI acquisition per day and per volcano, with 10-day interval between the products, resulting in a total of 231 non-cropped TROPOMI products used for evaluation. Given that the satellite orbit cycle repeat time is 16 days, this 10-day sampling allowed to sample various swath positions for each volcano, while reducing the overall dataset size.</p>
</sec>
<sec id="s2-2">
<title>2.2 Ground truth</title>
<p>In order to evaluate the performances of the algorithms, the entire set of volcanic SO<sub>2</sub> detection masks was hand-labeled with a unique label according to the source volcano, which was manually determined based on available meteorological data and volcano eruption records. These manual labels form the &#x201c;ground truth&#x201d;, which is compared with the automated classification results to obtain metrics of their efficiency. The ground truth has the same size as the SO<sub>2</sub> detection mask, but instead of detection flags it contains either the source volcano ID for each flagged pixel, or a label of false volcanic SO<sub>2</sub> detection (which may occur when SO<sub>2</sub> pixels from anthropological sources get detected by the sensor as a volcanic SO<sub>2</sub> pixel&#x2013;in this case the pixel should not be assigned to any volcano).</p>
</sec>
<sec id="s2-3">
<title>2.3 List of volcanoes</title>
<p>The algorithms use a list of volcano-specific data, which consists of the latitude, longitude, elevation, and a unique identification number for several volcanoes. In this list, all the volcanoes from the MOUNTS monitoring system (<xref ref-type="bibr" rid="B28">Valade et al., 2019</xref>) are included, even those that are not present in our case study, as they play a role in the way how some of the presented algorithms work.</p>
</sec>
<sec id="s2-4">
<title>2.4 Predicted plume trajectories</title>
<p>In order to obtain estimated trajectories of SO<sub>2</sub> plumes, the Hybrid Single-Particle Lagrangian Integrated Trajectory model (HYSPLIT) is used. HYSPLIT is a numerical model that is used to compute air parcel trajectories to determine how far and in what direction a parcel of air, and subsequently air pollutants, will travel. Lagrangian particle models compute trajectories of a large number of so-called particles to describe the transport and diffusion of tracers in the atmosphere (<xref ref-type="bibr" rid="B24">Stein et al., 2015</xref>). Combined with the archived reprocessed GDAS meteorological models (<xref ref-type="bibr" rid="B15">NCEP, NWS, NOAA, U.S. DOC, 2009</xref>), which are publicly available on NOAA&#x2019;s FTP servers, the estimated latitude and longitude of an air parcel can be obtained along a specified time range with great temporal resolution (<xref ref-type="bibr" rid="B30">Warner, 2018</xref>). Although reprocessed GDAS models are less suited to near real-time applications than the forecast GDAS models, these are expected to perform significantly better. The presented plume trajectories used by the algorithms were computed on a 12-h time range before/after sensing with 1-h temporal resolution. When generating forward trajectories, the start time of the trajectory is set to 1&#xa0;h before the image acquisition time, and the backwards trajectories are started exactly at the image acquisition time.</p>
</sec>
</sec>
<sec sec-type="methods" id="s3">
<title>3 Methods</title>
<p>The goal is, using the input of non-classified pixels of the volcanic SO<sub>2</sub> detection map (as non-geocoded matrices), and the additional wind and volcano information, to obtain an output of classified pixels, which can provide information about which volcano each pixel originates from. One volcano represents a class, meaning that a pixel being classified to a volcano can be interpreted as saying that the pixel originates from that specific volcano.</p>
<p>To reach this goal, eight algorithms are presented, as depicted in <xref ref-type="table" rid="T1">Table 1</xref>, in ascending order of complexity. Two approaches are tested, as shown in <xref ref-type="fig" rid="F1">Figure 1</xref>: the first corresponds to binary classification methods (BC), which can decide whether a pixel is originating from a selected volcano (the queried volcano is required as an input) or not, and the second corresponds to multi-class classification methods (MC), which provide an estimate for each pixel about which volcano it originates from (no input volcano required). In the final subsection, the metrics used for the evaluation of these algorithms are presented.</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Overview of all the tested methods.</p>
</caption>
<table>
<thead>
<tr>
<td colspan="6" align="center">Binary classification</td>
<td colspan="2" align="center">Multi-class classification</td>
</tr>
<tr>
<td colspan="3" align="center">Pixel-based</td>
<td colspan="5" align="center">Cluster-based</td>
</tr>
<tr>
<td align="center">No wind</td>
<td align="center">No wind</td>
<td align="center">With wind</td>
<td align="center">No wind</td>
<td align="center">With wind</td>
<td align="center">With wind</td>
<td align="center">No wind</td>
<td align="center">With wind</td>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Radius search classifier (BC-1)</td>
<td align="center">Flood-fill classifier (BC-2)</td>
<td align="center">Flood-fill classifier with wind data (BC-3)</td>
<td align="center">DBSCAN classifier (BC-4)</td>
<td align="center">DBSCAN classifier with wind data (BC-5)</td>
<td align="center">Reverse Trajectory DBSCAN classifier (BC-6)</td>
<td align="center">Multi-class DBSCAN classifier (MC-1)</td>
<td align="center">Multi-class Reverse Trajectory DBSCAN classifier (MC-2)</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Difference between binary and multi-class classification approaches. <bold>(A)</bold> Binary approach. <bold>(B)</bold> Multi-class approach.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g001.tif"/>
</fig>
<sec id="s3-1">
<title>3.1 Binary-class classification algorithms</title>
<p>An intuitive approach is to select a volcano, and iterate through the pixels with a binary decision algorithm that either associates the pixel with the selected volcano, or leaves it unassociated. Six binary-class classification algorithms are tested, which we describe hereafter.</p>
<sec id="s3-1-1">
<title>3.1.1 Radius search classifier (BC-1)</title>
<p>The radius search classifier automatically associates every SO<sub>2</sub> detection within a specified arbitrary radius (100&#xa0;km by default in this paper). The algorithm starts from the pixel at volcano center, then it iteratively jumps onto the next nearest unassociated pixel, as shown in <xref ref-type="fig" rid="F2">Figure 2A</xref>. The distance of the pixel is then calculated with Vincenty&#x2019;s formulae using the ellipsoidal model WGS-84, which provides better accuracy than a plain spherical model (<xref ref-type="bibr" rid="B29">Vincenty, 1975</xref>). This process continues until the calculated distance of the new pixel is above the specified radius.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Demonstration of the binary classifier algorithms. <bold>(A)</bold> Radius search classifier. <bold>(B)</bold> Flood-fill classifier. <bold>(C)</bold> Flood-fill classifier with wind data. <bold>(D)</bold> DBSCAN classifier. <bold>(E)</bold> DBSCAN classifier with wind data. <bold>(F)</bold> Reverse Trajectory DBSCAN classifier.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g002.tif"/>
</fig>
</sec>
<sec id="s3-1-2">
<title>3.1.2 Flood-fill classifier (BC-2)</title>
<p>Flood-fill is a standard algorithm used to identify and change adjacent values in a multidimensional array, based on their similarity to an initial seed point. The conceptual analogy is the &#x201c;paint bucket&#x201d; tool in many graphic editors. The Flood-fill algorithm can be simply modeled as a graph traversal problem, representing the given area as a matrix and considering every cell of that matrix as a vertex that is connected to points around it. The seed point for the algorithm is set by default to the pixel where the volcano of interest is located. As the goal of the algorithm is to classify pixels that are flagged with detected SO<sub>2</sub>-contamination, the seed point has to be an SO<sub>2</sub>-flagged one on the detection mask (then, pixels marked with flag &#x2265;1 that are touching the seed point are classified, and the filling continues until there are no additional touching points). If the seed point above the volcano is zero (meaning that there is no flagged SO<sub>2</sub> contamination), the algorithm searches for the nearest non-zero element within the seed area (20&#xa0;km chosen by default in this paper), and if it finds one, it becomes the seed point, as shown in <xref ref-type="fig" rid="F2">Figure 2B</xref>.</p>
</sec>
<sec id="s3-1-3">
<title>3.1.3 Flood-fill classifier with wind data (BC-3)</title>
<p>With the Flood-fill classifier (BC-2), the algorithm could only have one seed point. This case further increases the number of seed points <italic>via</italic> an extension where a predicted plume trajectory is generated, starting from the top of the queried volcano. Every point on this trajectory acts as a seed point, and if the trajectory point on the SO<sub>2</sub> detection mask is zero, the algorithm searches for the nearest non-zero element in a seed area the same way as with the original seed point, as shown in <xref ref-type="fig" rid="F2">Figure 2C</xref>.</p>
</sec>
<sec id="s3-1-4">
<title>3.1.4 DBSCAN classifier (BC-4)</title>
<p>In the three previous algorithms, classification is done on a pixel level, using only information that is available for that individual pixel (i.e., values of pixels within the locality of another pixel are ignored). With object-based classification, the algorithms are working on a localized group of pixels, taking the spatial properties of each pixel and their relationship to each other into account. In this sense, an example for a classification algorithm acts on of a group of pixels, and the classification algorithm would accordingly output a class prediction for pixels on a group basis.</p>
<p>In order to acquire clusters, the DBSCAN (Density-based spatial clustering of applications with noise) algorithm is used. Based on a set of points, DBSCAN can group together points that are close to each other based on a (usually Euclidean) distance measurement and a minimum number of points (<xref ref-type="bibr" rid="B8">Ester et al., 1996</xref>). Furthermore, it is also capable of marking points in low-density regions as outliers.</p>
<p>Similarly to the Flood-fill classifier (BC-2), the DBSCAN classifier (BC-4) starts from a seed point and assigns new pixels to the cluster in an iterative way, with the difference that it is not filling pixels one-by-one, but rather whole clusters of pixels, as shown in <xref ref-type="fig" rid="F2">Figure 2D</xref>. The seed area, similarly to the Flood-fill algorithms, is the pixel at the center of the volcano and its near area (20&#xa0;km chosen by default in this paper).</p>
<p>The algorithm generally requires two parameters. The first is the parameter <italic>&#x25b;</italic>, which specifies how close points should be to each other on a pixel grid to be considered a part of a cluster. If the grid distance between two points is lower or equal to this value, those two points are considered neighbors. The second parameter is called <italic>minPoints</italic>, and it represents the minimum number of points to form a dense region. For example, setting the <italic>minPoints</italic> parameter as 4 means that at least 4 points are needed to form a dense region. Setting the <italic>&#x25b;</italic> parameter low generally produces more clusters, but it also results in an increased number of outliers, as shown in <xref ref-type="fig" rid="F3">Figure 3</xref>. We chose a value <italic>&#x25b;</italic> &#x3d; 4.0 and <italic>minPoints</italic> &#x3d; 3 for our use case, which gave best results when applied to the TROPOMI data set. These values were chosen manually by testing several products, where noise points and outliers were minimized while preserving as many clusters as possible. In addition, DBSCAN makes it possible to assign weights to each pixel. We used the SO<sub>2</sub> column density value of each pixel as weights when creating clusters. This improves clustering in cases when multiple plumes originating from neighboring volcanoes come to overlap. In such a case they are forming a common plume, but as the SO<sub>2</sub> density generally tends to be higher around the center of the source volcanoes, the distinct high-density areas (which are thus highly weighted) can induce a separation of the unique plume into smaller clusters.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Difference in the created DBSCAN clusters with touching plumes (Turrialba and Po&#xe1;s volcanoes, on 23.03.2021), depending on the <italic>&#x25b;</italic> value. <bold>(A)</bold> <italic>&#x25b;</italic> &#x3d; 4.0 <bold>(B)</bold> <italic>&#x25b;</italic> &#x3d; 1.0.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g003.tif"/>
</fig>
</sec>
<sec id="s3-1-5">
<title>3.1.5 DBSCAN classifier with wind data (BC-5)</title>
<p>Similarly to the Flood-fill classifier with wind data (BC-3), this case is an extension of the DBSCAN classifier where a predicted plume trajectory is generated, starting from the top of the queried volcano, as shown in <xref ref-type="fig" rid="F2">Figure 2E</xref>. Every point of this trajectory acts as a seed point, and if the trajectory point on the SO<sub>2</sub> detection mask is zero, the algorithm searches for the nearest non-zero element in a seed area the same way as with the original seed point.</p>
</sec>
<sec id="s3-1-6">
<title>3.1.6 Reverse trajectory DBSCAN classifier (BC-6)</title>
<p>A reverse plume trajectory is started from the center of mass of each cluster using the wind models, as shown in <xref ref-type="fig" rid="F2">Figure 2F</xref>. The position of the center of mass is computed in grid space (i.e., in the non-geocoded matrix), weighted by the VCD values (raised to the power of 4 to make the dense parts more dominant in the positioning of the reference point in long plumes, as opposed to the simple DBSCAN classifier, where the weights only serve the cluster generation), and the latitude and longitude of the corresponding pixel is then used to define the cluster position, from which the trajectory is started. On the other hand, the altitude from which the trajectory is computed is defined as the summit altitude of the queried volcano. If a trajectory that was started from a plume is within a specified distance of the queried volcano (50&#xa0;km by default in this paper), the cluster is associated with it. In the ideal case, the trajectory that starts from a cluster that is actually originating from the queried volcano should go right over the volcano.</p>
</sec>
</sec>
<sec id="s3-2">
<title>3.2 Multi-class classification algorithms</title>
<p>The aforementioned algorithms have a common shortcoming: when applied to a TROPOMI product that covers an area that contains multiple volcanoes (which happens frequently in areas with high volcano density), the iterative use of binary classifiers can result in ambiguous, overlapping classifications, as shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. For example, if the predicted plume trajectories of two different volcanoes intersect, i.e. contain the same pixels, those pixels are going to be associated with both volcanoes. This happens frequently with nearby volcanoes (e.g., Ibu and Dukono volcanoes, only 35&#xa0;km apart from one another). To prevent that, the algorithms should be retrofitted based on the fundamental concept that a pixel can only be associated with one volcano.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Iterative use of binary classifiers on the same image can result in overlapping classifications.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g004.tif"/>
</fig>
<sec id="s3-2-1">
<title>3.2.1 Multi-class DBSCAN classifier (MC-1)</title>
<p>The binary DBSCAN classifier algorithm could only associate one cluster to a volcano, even though it is possible for multiple clusters to originate from one source. To eliminate this problem, first we build the clusters the same way as we did in the binary DBSCAN case (BC-4), then we decide whether a cluster is going to be associated or not. This algorithm does not use any wind models, it only relies on the location of the volcanoes and the generated clusters (see <xref ref-type="statement" rid="alg1">Algorithm 1</xref> pseudo-code). The latitude and longitude position of a cluster are equal to its calculated center of mass (computed in grid space, as described in BC-6), and the distance to the volcano is computed as the geodetic distance to the volcano summit. The plume height does not play a role in this case.</p>
<p>
<statement content-type="algorithm" id="alg1">
<label>ALGORITHM 1</label>
<p>Multi-class DBSCAN classifier algorithm (MC-1).</p>
<p>
<inline-graphic xlink:href="feart-10-1064171-fx1.tif"/>
</p>
</statement>
</p>
<p>First, the cluster that is the nearest to any volcano on the image is selected as a starting cluster, and its nearest volcano becomes the &#x201c;source volcano&#x201d;. The algorithm associates the nearest unassociated clusters until the new cluster&#x2019;s nearest volcano is not the source volcano anymore - in that case, it checks how far the new cluster is from the nearest volcano. If it&#x2019;s above a specified tolerance (200&#xa0;km by default in this paper), and the new cluster is closer to the previous cluster than to the nearest volcano, it keeps assigning it to the original source volcano. This is to prevent another volcano of &#x201c;hijacking&#x201d; a plume in long stretched plume groups, when the plume is already closer to another cluster than to the original source volcano. Without this addition, the algorithm would associate every cluster automatically to the closest volcano. The procedure is depicted in <xref ref-type="fig" rid="F5">Figure 5A</xref>.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Demonstration of the multi-class algorithms. The magenta dot represents the plume center of mass, and the colored ovals show the generated clusters. <bold>(A)</bold> Multi-class DBSCAN classifier. <bold>(B)</bold> Multi-class Reverse Trajectory DBSCAN classifier.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g005.tif"/>
</fig>
<p>If the aforementioned conditions do not apply, meaning that the next nearest cluster is farther than the specified tolerance (200&#xa0;km), or if it is closer to its nearest volcano than to the previous cluster, the algorithm stops assigning clusters to the original source volcano, and it selects a new source volcano to start from. This is the volcano that is the nearest to any unassociated cluster (similarly, at the beginning we started at the smallest volcano-unassociated cluster distance, but at that time all the clusters were unassociated). The clusters are then being assigned the same way as with the original source volcano. To keep track of the jumps (and to be able to select the new source volcano), the number of source volcano changes is stored. Optionally, clusters that are further away from volcanoes and other clusters than a specified tolerance can be left unclassified. This is to ignore occasional false positives in the volcanic SO<sub>2</sub> detection mask in the TROPOMI product.</p>
</sec>
<sec id="s3-2-2">
<title>3.2.2 Multi-class reverse trajectory DBSCAN classifier (MC-2)</title>
<p>This algorithm follows the same logic as the binary Reverse Trajectory DBSCAN classifier (BC-6), with the additional rule that every cluster has to be associated with only one volcano (see <xref ref-type="statement" rid="alg2">Algorithm 2</xref> pseudo-code). A reverse plume trajectory is started from the center of mass of every cluster using the wind models, as shown in <xref ref-type="fig" rid="F5">Figure 5B</xref>. The latitude and longitude position of a cluster are equal to its center of mass, and the height of the plume, where the trajectory is started from, is equal to the elevation of its nearest volcano. As the TROPOMI L2 SO<sub>2</sub> product does not include plume height, using an input volcano&#x2019;s elevation as a plume height would make the algorithm volcano-dependent, and with this solution we can overcome that problem. The cluster is associated with the volcano that is nearest to any point of the reverse trajectory. In the ideal case, the trajectory goes right over the source volcano, which makes this distance zero.</p>
<p>
<statement content-type="algorithm" id="alg2">
<label>ALGORITHM 2</label>
<p>Multi-class Reverse Trajectory DBSCAN classifier algorithm (MC-2).</p>
<p>
<inline-graphic xlink:href="feart-10-1064171-fx2.tif"/>
</p>
</statement>
</p>
</sec>
</sec>
<sec id="s3-3">
<title>3.3 Metrics for the evaluation</title>
<p>Evaluation of classification methods can be quite complex because it is required to measure classification accuracy as well as localization correctness. The aim is to score the similarity between the predicted and annotated volcanoes (prediction vs. ground truth). Over the years, a large variety of evaluation metrics has been introduced. The presented metrics in this work are common, widespread scores for performance measurement in computer vision and remote sensing fields. The main goal in metric selection was to minimize statistical bias in evaluation.</p>
<p>All presented metrics are based on the computation of a confusion matrix for a binary segmentation task, which contains the number of true positive (TP), false positive (FP), true negative (TN), and false negative (FN) predictions. In this context, a true positive pixel is a detected SO<sub>2</sub>-contaminated pixel which was correctly classified to the queried volcano, and a false positive pixel is one that was incorrectly classified to the queried volcano. Similarly, a true negative pixel is one that is correctly not classified to the queried volcano, and a false negative pixel is one that is incorrectly not classified to the queried volcano. Generally, the value ranges of all presented metrics span from zero (worst) to one (best). The selected metrics are Accuracy, Precision, Recall, and the F1-Score, as presented in <xref ref-type="table" rid="T2">Table 2</xref>.<list list-type="simple">
<list-item>
<p>&#x2022; <bold>Accuracy</bold> represents <italic>the fraction of predictions that the evaluated model got right.</italic>
</p>
</list-item>
<list-item>
<p>&#x2022; <bold>Precision</bold> shows <italic>the proportion of positive identifications that were actually correct.</italic>
</p>
</list-item>
<list-item>
<p>&#x2022; <bold>Recall</bold> shows <italic>the proportion of actual positives that were identified correctly.</italic>
</p>
</list-item>
<list-item>
<p>&#x2022; The <bold>F1-score</bold> is an overall measure of a model&#x2019;s effectiveness that <italic>combines precision and recall, by calculating the harmonic mean.</italic> We use the harmonic mean instead of a simple average because it punishes extreme values. A classifier with a precision of 1.0 and a recall of 0.0 has a simple average of 0.5 but an F1-score of 0. That is, a good F1-score means that we have low false positives and low false negatives, so we are correctly identifying real threats and we are not disturbed by false alarms. The aforementioned features make this metric well suited for measuring the performance of the tested algorithms.</p>
</list-item>
</list>
</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>The performance metrics used in the evaluation.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Measure</th>
<th align="center">Equation</th>
<th align="center">Domain</th>
<th align="center">Ideal value</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">F1-score</td>
<td align="center">
<inline-formula id="inf1">
<mml:math id="m1">
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
<mml:mo>&#x003D;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&#x2217;</mml:mo>
<mml:mi mathvariant="italic">Precision</mml:mi>
<mml:mo>&#x2217;</mml:mo>
<mml:mi mathvariant="italic">Recall</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">Precision</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">Recall</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x003D;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&#x2217;</mml:mo>
<mml:mi mathvariant="italic">TP</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&#x2217;</mml:mo>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">FP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">FN</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
<td align="center">[0,1]</td>
<td align="center">1</td>
</tr>
<tr>
<td align="center">Precision</td>
<td align="center">
<inline-formula id="inf2">
<mml:math id="m2">
<mml:mi mathvariant="italic">Precision</mml:mi>
<mml:mo>&#x003D;</mml:mo>
<mml:mfrac>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">FP</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
<td align="center">[0,1]</td>
<td align="center">1</td>
</tr>
<tr>
<td align="center">Recall</td>
<td align="center">
<inline-formula id="inf3">
<mml:math id="m3">
<mml:mi mathvariant="italic">Recall</mml:mi>
<mml:mo>&#x003D;</mml:mo>
<mml:mfrac>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">FN</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
<td align="center">[0,1]</td>
<td align="center">1</td>
</tr>
<tr>
<td align="center">Accuracy</td>
<td align="center">
<inline-formula id="inf4">
<mml:math id="m4">
<mml:mi mathvariant="italic">Accuracy</mml:mi>
<mml:mo>&#x003D;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">TN</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">TN</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">FP</mml:mi>
<mml:mo>&#x002B;</mml:mo>
<mml:mi mathvariant="italic">FN</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
<td align="center">[0,1]</td>
<td align="center">1</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec sec-type="results" id="s4">
<title>4 Results</title>
<p>In this section, the performances of the proposed algorithms are compared using the presented metrics. The algorithms were all implemented in a Python environment. The source code of the algorithms is publicly available from a GitHub repository (<xref ref-type="bibr" rid="B12">Markus, 2022a</xref>).</p>
<p>To verify that the accuracy improvement provided by the proposed methods is significant, and to systematically evaluate the performance of the proposed methods we conduct an averaging of the results for different products. We select TROPOMI SO<sub>2</sub> products of seven volcanoes, with a 10-day temporal resolution across the year of 2021, as shown in <xref ref-type="table" rid="T3">Table 3</xref>. The labeled ground truth and the configuration files are publicly available (<xref ref-type="bibr" rid="B13">Markus, 2022b</xref>). We compute the accuracy, precision, recall and F1-score for the presented algorithms using the selected products within the specified time range. The values are then averaged for the cases where classification is possible (empty cases without detection are not taken into account). The initial hypothesis is that the multi-class methods reach a higher overall mean accuracy.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>Contents of the evaluating dataset.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Name</th>
<th align="left">Latitude [dec. deg.]</th>
<th align="left">Longitude [dec. deg.]</th>
<th align="left">Elevation [m]</th>
<th align="left">Country</th>
<th align="left">Time range</th>
<th align="left">Temporal resolution</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">Sangay</td>
<td align="left">&#x2212;2.005</td>
<td align="left">&#x2212;78.341</td>
<td align="left">5,286</td>
<td align="left">Ecuador</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
<tr>
<td align="left">Sabancaya</td>
<td align="left">&#x2212;15.787</td>
<td align="left">&#x2212;71.857</td>
<td align="left">5,960</td>
<td align="left">Peru</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
<tr>
<td align="left">Nevado del Ruiz</td>
<td align="left">4.892</td>
<td align="left">&#x2212;75.324</td>
<td align="left">5,279</td>
<td align="left">Colombia</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
<tr>
<td align="left">Etna</td>
<td align="left">37.748</td>
<td align="left">14.999</td>
<td align="left">3,295</td>
<td align="left">Italy</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
<tr>
<td align="left">Popocat&#xe9;petl</td>
<td align="left">19.023</td>
<td align="left">&#x2212;98.622</td>
<td align="left">5,426</td>
<td align="left">Mexico</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
<tr>
<td align="left">Dukono</td>
<td align="left">1.693</td>
<td align="left">127.894</td>
<td align="left">1,229</td>
<td align="left">Indonesia</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
<tr>
<td align="left">Yasur</td>
<td align="left">&#x2212;19.532</td>
<td align="left">169.447</td>
<td align="left">361</td>
<td align="left">Vanuatu</td>
<td align="left">01 Jan 2021&#x2013;30 Nov 2021</td>
<td align="left">10&#xa0;days</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="s4-1">
<title>4.1 Evaluation</title>
<p>
<xref ref-type="fig" rid="F6">Figure 6</xref> shows a series of TROPOMI SO<sub>2</sub> images, overlaid with the classification results of the 8 algorithms described previously. Three cases were considered: Sangay (queried volcano) <italic>vs.</italic> Reventador 2021-08-15 acquisition, Ubinas (queried volcano) <italic>vs.</italic> Sabancaya 2021-04-27 acquisition where a plume originating from Sabancaya traveled over the Ubinas volcano, and Sheveluch (queried volcano) <italic>vs.</italic> Kluchevskoy 2021-03-19 acquisition. Each row in <xref ref-type="fig" rid="F6">Figure 6</xref> shows the result of a given algorithm for all three cases. The shades of white to yellow/red represent the SO<sub>2</sub> gas concentration, the gray pixels are the flagged SO<sub>2</sub> detections in the TROPOMI product, and the green/blue filled pixels are the pixels that were associated with a volcano label according to the color bar. The cyan lines are the wind trajectories, and the magenta points represent the center of mass of a generated cluster.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Plots of evaluation runs with different classifier algorithms on three volcanic scenarios. The plots represent 250 &#xd7; 250&#xa0;km regions. Magenta dots represent cluster center of mass, and cyan lines are computed plume trajectories.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g006.tif"/>
</fig>
<p>The results for each metric respective to the algorithms are presented in <xref ref-type="table" rid="T4">Table 4</xref>. Results show that on average, the radius search algorithm (BC-1) under-performs compared to other methods. The precision of the algorithm is high, but the recall value is comparatively low. The small value of recall indicates that this algorithm is prone to under-segmentation (which means it ignores pixels that should have been associated with the volcano), while also not providing any prevention from falsely associating SO<sub>2</sub> pixels of nearby volcanoes. This algorithm performs best in areas where the spatial density of volcanoes is low, and/or where winds are low (i.e., plume stays close to the volcano).</p>
<table-wrap id="T4" position="float">
<label>TABLE 4</label>
<caption>
<p>The mean values of performance metrics across the evaluating dataset.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th rowspan="4" align="center"/>
<th colspan="6" align="center">Binary classification</th>
<th colspan="2" align="center">Multi-class classification</th>
</tr>
<tr>
<th colspan="3" align="center">Pixel-based</th>
<th colspan="5" align="center">Cluster-based</th>
</tr>
<tr>
<th align="center">No wind</th>
<th align="center">No wind</th>
<th align="center">With wind</th>
<th align="center">No wind</th>
<th align="center">With wind</th>
<th align="center">With wind</th>
<th align="center">No wind</th>
<th align="center">With wind</th>
</tr>
<tr>
<th align="center">Radius search (100 km) (BC-1)</th>
<th align="center">Flood-fill (BC-2)</th>
<th align="center">Flood-fill with wind (BC-3)</th>
<th align="center">DBSCAN (BC-4)</th>
<th align="center">DBSCAN with wind (BC-5)</th>
<th align="center">Reverse Trajectory DBSCAN (BC-6)</th>
<th align="center">Multi-class DBSCAN (MC-1)</th>
<th align="center">Multi-class Reverse Trajectory DBSCAN (MC-2)</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">F1-score</td>
<td align="left">
<bold>0.6655</bold>
</td>
<td align="left">
<bold>0.8365</bold>
</td>
<td align="left">
<bold>0.8817</bold>
</td>
<td align="left">
<bold>0.9030</bold>
</td>
<td align="left">
<bold>0.9309</bold>
</td>
<td align="left">
<bold>0.9054</bold>
</td>
<td align="left">
<bold>0.9451</bold>
</td>
<td align="left">
<bold>0.9313</bold>
</td>
</tr>
<tr>
<td align="left">Precision</td>
<td align="left">0.9725</td>
<td align="left">0.9748</td>
<td align="left">0.9650</td>
<td align="left">0.9718</td>
<td align="left">0.9636</td>
<td align="left">0.9414</td>
<td align="left">0.9478</td>
<td align="left">0.9594</td>
</tr>
<tr>
<td align="left">Recall</td>
<td align="left">0.5594</td>
<td align="left">0.6576</td>
<td align="left">0.8061</td>
<td align="left">0.7383</td>
<td align="left">0.8778</td>
<td align="left">0.7277</td>
<td align="left">0.8664</td>
<td align="left">0.8498</td>
</tr>
<tr>
<td align="left">Accuracy</td>
<td align="left">0.6328</td>
<td align="left">0.7209</td>
<td align="left">0.8313</td>
<td align="left">0.7804</td>
<td align="left">0.8823</td>
<td align="left">0.7430</td>
<td align="left">0.8532</td>
<td align="left">0.8432</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The second proposed method, Flood-fill (BC-2) shows a higher degree of robustness with respect to the accuracy, and is able to classify entire plumes, which the radius search algorithm failed to achieve (see <xref ref-type="fig" rid="F7">Figure 7</xref>). Still, it fails to provide fully satisfactory classification as it is only able to fill interconnected plumes. Indeed, SO<sub>2</sub> plumes often appear discontinuous in TROPOMI imagery, thus making the filling approach incapable of classifying the gas plume as a whole. Small isolated SO<sub>2</sub>-contaminated pixels near the plume are also left unfilled, as there is no direct connection to the plume. The extension of the Flood-fill algorithm with the air parcel trajectory (BC-3) starting from the volcano achieves a better accuracy, because it is able to fill disconnected plumes, thanks to the wind trajectory which acts as an extended seed area. Although it still leaves isolated SO<sub>2</sub> pixels near the main plume unfilled, the bulk of the plume can be successfully filled. Extension of the seed area induces a significant increase in recall, but a small decrease in precision can be observed. Informally, besides reducing under-segmentation, the larger seed area caused the algorithm to incorrectly associate pixels that were originating from a different source, especially in areas of multiple SO<sub>2</sub> sources.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Comparison of two basic binary classifications (Sangay volcano, on 15.08.2021). <bold>(A)</bold> Radius search classifier. <bold>(B)</bold> Flood-fill classifier.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g007.tif"/>
</fig>
<p>The cluster-based DBSCAN filling method (BC-4) demonstrates higher accuracy and recall value with respect to the pixel-based Flood-fill, as besides incorporating small isolated SO<sub>2</sub> pixels near the edges a plume, fragmented but cohesive plumes are considered as one entity. Extending this with the air parcel trajectory starting from the volcano (BC-5) eliminates the under-segmentation problem when multiple plumes are originating from one volcano, as shown in <xref ref-type="fig" rid="F8">Figure 8</xref>, increasing the recall value even higher than the &#x201c;Flood-fill with wind&#x201d; algorithm. This method performs well in most cases, i.e., when the plumes from a volcano are not traveling over other volcanoes (in which case the plume can be associated with multiple volcanoes). Compared to the one-trajectory DBSCAN algorithm, the binary reverse trajectory classification (BC-6) generally under-performed in all metrics. Possible causes for this include: the fixed time ranges of the trajectories (which makes the trajectories fall out of the volcano search area, causing under-segmentation), and/or the fact that the trajectory is arbitrarily computed starting from the volcano summit altitude. Addressing this problem would require prior knowledge of SO<sub>2</sub> layer height, which is currently not provided in the product.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Difference in binary DBSCAN classifications (Etna volcano, on 17.06.2021). <bold>(A)</bold> Without wind. <bold>(B)</bold> With wind.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g008.tif"/>
</fig>
<p>The multi-class DBSCAN algorithm (MC-1) achieves the best overall metrics, with the highest F1-score and a better accuracy. The main reference points of this algorithm are the volcano center points, making this algorithm vulnerable to areas where the spatial density of volcanoes is high, but performing well in general cases. The multi-class nature eliminates false associations that are caused by the binary classification, as shown on <xref ref-type="fig" rid="F9">Figure 9C</xref>: no matter which volcano we are starting from, the plume is always going to be associated with one volcano. This is more robust than the binary classifications (<xref ref-type="fig" rid="F9">Figure 9A</xref> for Dukono and <xref ref-type="fig" rid="F9">Figure 9B</xref> for Ibu), where depending on the selected source volcano the plume is being associated with the currently selected one. Basically the multi-class algorithm answers the question &#x201c;Which volcano does this plume originate from?&#x201d;, while the binary algorithms are based on the question &#x201c;Is this plume coming from the selected source volcano?&#x201d;.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Difference in binary floodfill <bold>(A,B)</bold> vs. multi-class DBSCAN <bold>(C)</bold> classifications in an ambiguous case (Ibu volcano, on 19.03.2021). <bold>(A)</bold> Binary flood-fill with Dukono (27) as source volcano. <bold>(B)</bold> Binary flood-fill with Ibu (28) as source volcano. <bold>(C)</bold> Multi DBSCAN with Dukono (27) as source volcano.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g009.tif"/>
</fig>
<p>The wind-based multi-class algorithm (MC-2) performs generally well in dense areas where plumes can travel over other volcanoes, as shown on <xref ref-type="fig" rid="F10">Figure 10</xref>. However it is prone to errors in the wind models and the trajectories, which are started from the height of the nearest volcano, instead of using the actual SO<sub>2</sub> plume height. Utilizing the multi-class approach, the plume is always associated with the volcano that is nearest to the trajectory starting from it, avoiding overlapping classifications, as shown on <xref ref-type="fig" rid="F11">Figure 11B</xref>, where the small pixel cluster originating from the volcano Sheveluch is classified correctly with the multi-class method, while the binary approach fails (<xref ref-type="fig" rid="F11">Figure 11A</xref>). The method generally reaches good metric values, with the F1-score being the second best in comparison, as the precision and recall values are similarly high. These results demonstrate that the multi-class method is capable of segmenting remote sensing volcanic SO<sub>2</sub> products to multiple sources, based on both their physical features and external meteorological information.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Difference in multi-class classifications in an ambiguous case (Plume from Sabancaya traveling over Ubinas volcano, on 27.04.2021). <bold>(A)</bold> Without wind data. <bold>(B)</bold> With the predicted trajectory.</p>
</caption>
<graphic xlink:href="feart-10-1064171-g010.tif"/>
</fig>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Difference in binary vs. multi-class DBSCAN classifications in an ambiguous case (Sheveluch volcano, on 19.03.2021). <bold>(A)</bold> Binary (DBSCAN with wind, with forward wind trajectory). <bold>(B)</bold> Multi-class (Multi Reverse Trajectory DBSCAN, with reverse wind trajectory).</p>
</caption>
<graphic xlink:href="feart-10-1064171-g011.tif"/>
</fig>
</sec>
</sec>
<sec sec-type="discussion" id="s5">
<title>5 Discussion</title>
<p>Overall, the results follow intuitive expectations. Contrary to expectations however, the multi-class classification without wind performed slightly better than the one which uses reverse trajectories. One possible cause for this are the limitations of the meteorological models used. GDAS has a 1-degree resolution, compared to GFS, which has 0.25. Using GFS models might improve trajectory prediction, but with more data, the file size of the meteorological models increases dramatically, reducing the portability of the wind-based algorithms by a substantial amount (<xref ref-type="bibr" rid="B15">NCEP, NWS, NOAA, U.S. DOC, 2009</xref>). For computational reasons, only one trajectory is started from each cluster, dividing the clusters and starting multiple trajectories has the potential of improving the results, but it also greatly increases computation time. The environmental characteristics of tested volcanoes also play a role in the overall outcome. As an example, the algorithms tend to perform better with volcanoes where the plumes are generally less fragmented due to stable, continuous degassing and less wind influence. Furthermore, because the plume height is not retrieved from the TROPOMI product but rather assumed to be equal to the volcano summit altitude, the generated trajectories can suffer errors, as the strength and direction of the wind changes with the elevation.</p>
<sec id="s5-1">
<title>5.1 Operational SO<sub>2</sub> plume monitoring</title>
<p>The presented algorithms are relatively small and require limited computing time, ranging from a few milliseconds to a few seconds, with the wind-based algorithms having longer computing times as the ones without wind data. As such, they could be suited for near real-time operational volcano monitoring tasks. As the multi-class classification algorithms provides the best effectiveness/implementation complexity ratio, they are recommended for implementation in operational frameworks. Future work will focus on testing the algorithms on a larger number and variety of eruptive plumes, with the aim to implement them in monitoring systems such as MOUNTS (<xref ref-type="bibr" rid="B28">Valade et al., 2019</xref>).</p>
</sec>
<sec id="s5-2">
<title>5.2 Areas of improvement</title>
<p>Considering the previously presented strengths and weaknesses, the algorithms still provide room for further research and development. A first aspect to improve in the multi-class classification algorithms is the way pixel clusters are assigned to volcanoes. As of now, the assignment is based on the distance between a cluster&#x2019;s center of mass (in grid space), and the volcano summit coordinates. Although this is efficient in a large majority of cases (i.e., small gas plumes, and/or plumes where the highest gas concentration is located nearby the volcano summit), it can fail in the case of strong eruption plumes, where high gas concentrations can extend several tens-hundreds of kilometers away form the emitting volcano. Indeed, this can result in the plume center of mass being off-centered with respect to the volcano, which can potentially result in erroneous associations of the SO<sub>2</sub> plume to another non-emitting volcano closer to the plume center. An alternative to the center of mass could be using the cluster skeleton (<xref ref-type="bibr" rid="B31">Zhang and Suen, 1984</xref>), or the cluster shape to determine the source emission point.</p>
<p>Secondly, the results can be possibly improved for strong eruption plumes by incorporating near-real-time SO<sub>2</sub> layer height retrieval, which would make the reverse trajectory calculation more deterministic and exact. As mentioned before, because the plume height is not retrieved from the TROPOMI product but rather assumed to be equal to the volcano summit altitude, the generated trajectories can suffer errors. This could be improved in the future <italic>via</italic> the SO<sub>2</sub> Layer Height product (<xref ref-type="bibr" rid="B11">Hedelt et al., 2019</xref>), which provides accurate information about the height of the plumes, making reverse trajectory based algorithms more accurate (<xref ref-type="bibr" rid="B26">Theys et al., 2022</xref>). There are promising developments underway for that, as for major eruptions the TROPOMI SO<sub>2</sub> Layer Height product is available. Because these products are a separate entity distinct from the actual SO<sub>2</sub> product, and because they are only available for major eruptions, the algorithms have to query for their presence to make sure that the layer height can be retrieved. It should be stressed that using layer heights would be very useful for explosive eruption plumes having high gas concentrations and high altitudes; however they are likely to be much less useful for passive degassing plumes having have lower gas content and altitudes, as the layer height retrieval is more complicated in these cases.</p>
<p>As the TROPOMI L2 SO<sub>2</sub> product is being continuously developed, the initial segmentation of volcanic SO<sub>2</sub> detection mask is improved as well, which results in easier cluster generation, less outliers, and less false associations. This enables the lowering of <italic>&#x25b;</italic> values without losing outliers, although the increased number of clusters makes the trajectory generation slower and more complicated.</p>
<p>In the compared methods each pixel is associated with exactly one source. A future version should make a weighted attribution to multiple sources per pixel for cases of merging plumes.</p>
</sec>
</sec>
<sec id="s6">
<title>6 Concluding remarks</title>
<p>In this work, we have managed to classify volcanic SO<sub>2</sub> plume pixels in satellite imagery using classic clustering, segmentation and image processing techniques. The developed algorithms can be applied to SO<sub>2</sub> L2 products from the Sentinel-5P TROPOMI instrument, to help with the accurate source estimation of SO<sub>2</sub> plumes originating from various volcanoes. Furthermore, besides contributing to improving analysis and monitoring of volcanic processes from space, these algorithms can be useful in other general plume localization tasks. In particular, another potential application of the presented methods is to identify anthropogenic plume sources.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s7">
<title>Data availability statement</title>
<p>The TROPOMI SO2 data used in this paper can be downloaded from the Copernicus Open Access Hub. The Global Data Assimilation System (GDAS) meteorological files used in the trajectory generation are publicly available through the NOAA ARL FTP server. HYSPLIT is available on NOAA&#x2019;s website.</p>
</sec>
<sec id="s8">
<title>Author contributions</title>
<p>BM performed the bulk of the data analysis, design and implementation of the algorithms, created the figures and wrote the first draft of the manuscript. BM, SV, and MW conceptualized the study. SV collected and analyzed the volcanic gas data. MW and OH ensured the fundamental theoretical correctness of the methods. All authors provided comments and input on the results and final version of the manuscript. Work was done as part of a BM&#x2019;s Master&#x2019;s Thesis, supervised by SV and MW.</p>
</sec>
<sec id="s9">
<title>Funding</title>
<p>We acknowledge support by the German Research Foundation and the Open Access Publication Fund of TU Berlin. SV was supported by DGAPA-PAPIIT grant IA102221.</p>
</sec>
<ack>
<p>We wish to thank the special editor Christoph Kern, as well as the two anonymous reviewers for their valuable suggestions which helped improve the manuscript. We also acknowledge the European Space Agency for providing open-access TROPOMI data, and the NOAA for providing access to GDAS meteorological models. Lastly, we wish to thank Pascal Hedelt for providing access to SO<sub>2</sub> Layer Height products.</p>
</ack>
<sec sec-type="COI-statement" id="s10">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s11">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bernard</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Rose</surname>
<given-names>W. I.</given-names>
</name>
</person-group> (<year>1990</year>). <article-title>The injection of sulfuric acid aerosols in the stratosphere by the El Chich&#xf3;n volcano and its related hazards to the international air traffic</article-title>. <source>Nat. Hazards (Dordr).</source> <volume>3</volume>, <fpage>59</fpage>&#x2013;<lpage>67</lpage>. <pub-id pub-id-type="doi">10.1007/bf00144974</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Campion</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Delgado-Granados</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Legrand</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Taquet</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Boulesteix</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Pedraza-Espit&#xed;a</surname>
<given-names>S.</given-names>
</name>
<etal/>
</person-group> (<year>2018</year>). <article-title>Breathing and coughing: The extraordinarily high degassing of Popocat&#xe9;petl volcano investigated with an SO2 camera</article-title>. <source>Front. Earth Sci. (Lausanne).</source> <volume>6</volume>, <fpage>163</fpage>. <pub-id pub-id-type="doi">10.3389/feart.2018.00163</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Carlsen</surname>
<given-names>H. K.</given-names>
</name>
<name>
<surname>Valdimarsd&#xf3;ttir</surname>
<given-names>U.</given-names>
</name>
<name>
<surname>Briem</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Dominici</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Finnbjornsdottir</surname>
<given-names>R. G.</given-names>
</name>
<name>
<surname>J&#xf3;hannsson</surname>
<given-names>T.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Severe volcanic SO2 exposure and respiratory morbidity in the Icelandic population &#x2013; A register study</article-title>. <source>Environ. Health</source> <volume>20</volume>, <fpage>23</fpage>. <pub-id pub-id-type="doi">10.1186/s12940-021-00698-y</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Carn</surname>
<given-names>S. A.</given-names>
</name>
<name>
<surname>Fioletov</surname>
<given-names>V. E.</given-names>
</name>
<name>
<surname>McLinden</surname>
<given-names>C. A.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Krotkov</surname>
<given-names>N. A.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>A decade of global volcanic SO2 emissions measured from space</article-title>. <source>Sci. Rep.</source> <volume>7</volume>, <fpage>44095</fpage>. <pub-id pub-id-type="doi">10.1038/srep44095</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Cofano</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Cigna</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Amato</surname>
<given-names>L. S.</given-names>
</name>
<name>
<surname>de Cumis</surname>
<given-names>M. S.</given-names>
</name>
<name>
<surname>Tapete</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2021</year>). <source>Exploiting sentinel-5P TROPOMI and ground sensor data for the detection of volcanic SO2 plumes and activity in 2018&#x2013;2021 at stromboli</source>, <volume>21</volume>. <publisher-loc>Basel, Switzerland</publisher-loc>: <publisher-name>Italy. Sensors</publisher-name>. <pub-id pub-id-type="doi">10.3390/s21216991</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Corradini</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Guerrieri</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Brenot</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Clarisse</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Merucci</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Pardini</surname>
<given-names>F.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Tropospheric volcanic SO2 mass and flux retrievals from satellite. The Etna december 2018 eruption</article-title>. <source>Remote Sens. (Basel).</source> <volume>13</volume>, <fpage>2225</fpage>. <pub-id pub-id-type="doi">10.3390/rs13112225</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Edmonds</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Oppenheimer</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Pyle</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Herd</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Thompson</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2003</year>). <article-title>So2 emissions from soufri&#xe8;re hills volcano and their relationship to conduit permeability, hydrothermal interaction and degassing regime</article-title>. <source>J. Volcanol. Geotherm. Res.</source> <volume>124</volume>, <fpage>23</fpage>&#x2013;<lpage>43</lpage>. <pub-id pub-id-type="doi">10.1016/S0377-0273(03)00041-6</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ester</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Kriegel</surname>
<given-names>H.-P.</given-names>
</name>
<name>
<surname>Sander</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>1996</year>). <article-title>A density-based algorithm for discovering clusters in large spatial databases with noise</article-title>. <source>KDD</source>, <fpage>226</fpage>.</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Finch</surname>
<given-names>D. P.</given-names>
</name>
<name>
<surname>Palmer</surname>
<given-names>P. I.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Automated detection of atmospheric NO<sub>2</sub> plumes from satellite data: A tool to help infer anthropogenic combustion emissions</article-title>. <source>Atmos. Meas. Tech.</source> <volume>15</volume>, <fpage>721</fpage>&#x2013;<lpage>733</lpage>. <pub-id pub-id-type="doi">10.5194/amt-15-721-2022</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Heaviside</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Witham</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Vardoulakis</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Potential health impacts from sulphur dioxide and sulphate exposure in the UK resulting from an Icelandic effusive volcanic eruption</article-title>. <source>Sci. Total Environ.</source> <volume>774</volume>, <fpage>145549</fpage>. <pub-id pub-id-type="doi">10.1016/j.scitotenv.2021.145549</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hedelt</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Efremenko</surname>
<given-names>D. S.</given-names>
</name>
<name>
<surname>Loyola</surname>
<given-names>D. G.</given-names>
</name>
<name>
<surname>Spurr</surname>
<given-names>R. J. D.</given-names>
</name>
<name>
<surname>Clarisse</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Sulfur dioxide layer height retrieval from Sentinel-5 Precursor/TROPOMI using FP_ILM</article-title>. <source>Atmos. Meas. Tech.</source> <volume>12</volume>, <fpage>5503</fpage>&#x2013;<lpage>5517</lpage>. <pub-id pub-id-type="doi">10.5194/amt-12-5503-2019</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Markus</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2022a</year>). <source>bazsimarkus/tropomi-emission-source: Initial release</source>. <publisher-name>Zenodo</publisher-name>. <pub-id pub-id-type="doi">10.5281/zenodo.7311026</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Markus</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2022b</year>). <source>bazsimarkus/tropomi-emission-source: Supplementary data</source>. <publisher-name>Zenodo</publisher-name>. <pub-id pub-id-type="doi">10.5281/zenodo.7311105</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Matthews</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Gardeweg</surname>
<given-names>M. C.</given-names>
</name>
<name>
<surname>Sparks</surname>
<given-names>R. S. J.</given-names>
</name>
</person-group> (<year>1997</year>). <article-title>The 1984 to 1996 cyclic activity of lascar volcano, northern Chile: Cycles of dome growth, dome subsidence, degassing and explosive eruptions</article-title>. <source>Bull. Volcanol.</source> <volume>59</volume>, <fpage>72</fpage>&#x2013;<lpage>82</lpage>. <pub-id pub-id-type="doi">10.1007/s004450050176</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="book">
<collab>NCEP, NWS, NOAA, U.S. DOC</collab> (<year>2009</year>). <source>NCEP GDAS satellite data 2004-continuing</source>. <publisher-name>Research Data Archive at the National Center for Atmospheric Research, Computational and Information Systems Laboratory</publisher-name>. <pub-id pub-id-type="doi">10.5065/DWYZ-Q852</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Oppenheimer</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Fischer</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Scaillet</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2014</year>). &#x201c;<article-title>Volcanic degassing: Process and impact</article-title>,&#x201d; in <source>Treatise on geochemistry</source> (<publisher-name>Elsevier</publisher-name>), <fpage>111</fpage>&#x2013;<lpage>179</lpage>. <pub-id pub-id-type="doi">10.1016/b978-0-08-095975-7.00304-1</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pardini</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Corradini</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Costa</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Esposti Ongaro</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Merucci</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Neri</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>Ensemble-based data assimilation of volcanic ash clouds from satellite observations: Application to the 24 december 2018 Mt. Etna explosive eruption</article-title>. <source>Atmosphere</source> <volume>11</volume>, <fpage>359</fpage>. <pub-id pub-id-type="doi">10.3390/atmos11040359</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Prata</surname>
<given-names>A. J.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Satellite detection of hazardous volcanic clouds and the risk to global air traffic</article-title>. <source>Nat. Hazards (Dordr).</source> <volume>51</volume>, <fpage>303</fpage>&#x2013;<lpage>324</lpage>. <pub-id pub-id-type="doi">10.1007/S11069-008-9273-Z</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Quei&#xdf;er</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Burton</surname>
<given-names>M. R.</given-names>
</name>
<name>
<surname>Theys</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Pardini</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Salerno</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Caltabiano</surname>
<given-names>T.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>TROPOMI enables high resolution SO2 flux observations from Mt. Etna, Italy, and beyond</article-title>. <source>Sci. Rep.</source> <volume>9</volume>, <fpage>957</fpage>. <pub-id pub-id-type="doi">10.1038/s41598-018-37807-w</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Robock</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2000</year>). <article-title>Volcanic eruptions and climate</article-title>. <source>Rev. Geophys.</source> <volume>38</volume>, <fpage>191</fpage>&#x2013;<lpage>219</lpage>. <pub-id pub-id-type="doi">10.1029/1998RG000054</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Romahn</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Pedergnana</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Loyola</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Apituley</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Sneep</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Veefkind</surname>
<given-names>J. P.</given-names>
</name>
</person-group> (<year>2022</year>). <source>S5P/TROPOMI L2 product user manual sulphur dioxide SO2 - S5P-L2-DLR-PUM-400E</source>. <publisher-name>European Space Agency</publisher-name>.</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Schmidt</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Witham</surname>
<given-names>C. S.</given-names>
</name>
<name>
<surname>Theys</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Richards</surname>
<given-names>N. A. D.</given-names>
</name>
<name>
<surname>Thordarson</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Szpek</surname>
<given-names>K.</given-names>
</name>
<etal/>
</person-group> (<year>2014</year>). <article-title>Assessing hazards to aviation from sulfur dioxide emitted by explosive Icelandic eruptions</article-title>. <source>J. Geophys. Res. Atmos.</source> <volume>119</volume> (<issue>14</issue>), <fpage>14, 180196</fpage>&#x2013;<lpage>180214, 196</lpage>. <pub-id pub-id-type="doi">10.1002/2014JD022070</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Sierra-Vargas</surname>
<given-names>M. P.</given-names>
</name>
<name>
<surname>Vargas-Dom&#xed;nguez</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>KarenBobadilla-Lozoya</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Aztatzi-Aguilar</surname>
<given-names>O. G.</given-names>
</name>
</person-group> (<year>2018</year>). <source>Health impact of volcanic emissions. <italic>Volcanoes - Geological and geophysical setting, theoretical Aspects and numerical modeling, Applications to Industry and their Impact on the human health</italic>
</source>. <publisher-loc>Rijeka</publisher-loc>: <publisher-name>IntechOpen</publisher-name>. <pub-id pub-id-type="doi">10.5772/INTECHOPEN.73283</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Stein</surname>
<given-names>A. F.</given-names>
</name>
<name>
<surname>Draxler</surname>
<given-names>R. R.</given-names>
</name>
<name>
<surname>Rolph</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Stunder</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Cohen</surname>
<given-names>M. D.</given-names>
</name>
<name>
<surname>Ngan</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>NOAA&#x2019;s HYSPLIT atmospheric transport and dispersion modeling system</article-title>. <source>Bull. Am. Meteorol. Soc.</source> <volume>96</volume>, <fpage>2059</fpage>&#x2013;<lpage>2077</lpage>. <pub-id pub-id-type="doi">10.1175/BAMS-D-14-00110.1</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Theys</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Hedelt</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>de Smedt</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Lerot</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Vlietinck</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Global monitoring of volcanic SO2 degassing with unprecedented resolution from TROPOMI onboard Sentinel-5 Precursor</article-title>. <source>Sci. Rep.</source> <volume>9</volume>, <fpage>2643</fpage>. <pub-id pub-id-type="doi">10.1038/s41598-019-39279-y</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Theys</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Lerot</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Brenot</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>van Gent</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>de Smedt</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Clarisse</surname>
<given-names>L.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Improved retrieval of SO2 plume height from TROPOMI using an iterative Covariance-Based Retrieval Algorithm</article-title>. <source>Atmos. Meas. Tech.</source> <volume>15</volume>, <fpage>4801</fpage>&#x2013;<lpage>4817</lpage>. <pub-id pub-id-type="doi">10.5194/amt-15-4801-2022</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Theys</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Smedt</surname>
<given-names>I. D.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Danckaert</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>van Gent</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>H&#xf6;rmann</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2017</year>). <article-title>Sulfur dioxide retrievals from TROPOMI onboard sentinel-5 precursor: Algorithm theoretical basis</article-title>. <source>Atmos. Meas. Tech.</source> <volume>10</volume>, <fpage>119</fpage>&#x2013;<lpage>153</lpage>. <pub-id pub-id-type="doi">10.5194/AMT-10-119-2017</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Valade</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Ley</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Massimetti</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>D&#x2019;Hondt</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Laiolo</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Coppola</surname>
<given-names>D.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Towards global volcano monitoring using multisensor Sentinel missions and artificial intelligence: The MOUNTS monitoring system</article-title>. <source>Remote Sens. (Basel).</source> <volume>11</volume>, <fpage>1528</fpage>. <pub-id pub-id-type="doi">10.3390/RS11131528</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Vincenty</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>1975</year>). <article-title>Direct and inverse solutions of geodesics on the ellipsoid with application of nested equations</article-title>. <source>Surv. Rev.</source> <volume>23</volume>, <fpage>88</fpage>&#x2013;<lpage>93</lpage>. <pub-id pub-id-type="doi">10.1179/SRE.1975.23.176.88</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Warner</surname>
<given-names>M. S. C.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Introduction to PySPLIT: A Python toolkit for NOAA ARL&#x2019;s HYSPLIT model</article-title>. <source>Comput. Sci. Eng.</source> <volume>20</volume>, <fpage>47</fpage>&#x2013;<lpage>62</lpage>. <pub-id pub-id-type="doi">10.1109/MCSE.2017.3301549</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>T. Y.</given-names>
</name>
<name>
<surname>Suen</surname>
<given-names>C. Y.</given-names>
</name>
</person-group> (<year>1984</year>). <article-title>A fast parallel algorithm for thinning digital patterns</article-title>. <source>Commun. ACM</source> <volume>27</volume>, <fpage>236</fpage>&#x2013;<lpage>239</lpage>. <pub-id pub-id-type="doi">10.1145/357994.358023</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>