<?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. Remote Sens.</journal-id>
<journal-title>Frontiers in Remote Sensing</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Remote Sens.</abbrev-journal-title>
<issn pub-type="epub">2673-6187</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1347230</article-id>
<article-id pub-id-type="doi">10.3389/frsen.2024.1347230</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Remote Sensing</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Generating hyperspectral reference measurements for surface reflectance from the LANDHYPERNET and WATERHYPERNET networks</article-title>
<alt-title alt-title-type="left-running-head">De Vis 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/frsen.2024.1347230">10.3389/frsen.2024.1347230</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes" equal-contrib="yes">
<name>
<surname>De Vis</surname>
<given-names>Pieter</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<xref ref-type="author-notes" rid="fn001">
<sup>&#x2020;</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2301147/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author" equal-contrib="yes">
<name>
<surname>Goyens</surname>
<given-names>Clemence</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="author-notes" rid="fn001">
<sup>&#x2020;</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/477973/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Hunt</surname>
<given-names>Samuel</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2693139/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Vanhellemont</surname>
<given-names>Quinten</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/485238/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Ruddick</surname>
<given-names>Kevin</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1468364/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Bialek</surname>
<given-names>Agnieszka</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1899557/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>National Physical Laboratory</institution>, <addr-line>Teddington</addr-line>, <country>United Kingdom</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Royal Belgian Institute of Natural Sciences (RBINS)</institution>, <institution>Operational Directorate Natural Environment</institution>, <addr-line>Brussels</addr-line>, <country>Belgium</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/1547209/overview">Sawaid Abbas</ext-link>, University of the Punjab, Pakistan</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/2213007/overview">Syed Muhammad Irteza</ext-link>, Urban Unit, Pakistan</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/945928/overview">Yu Fenghua</ext-link>, Shenyang Agricultural University, China</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Pieter De Vis, <email>pieter.de.vis@npl.co.uk</email>
</corresp>
<fn fn-type="equal" id="fn001">
<label>
<sup>&#x2020;</sup>
</label>
<p>These authors have contributed equally to this work and share first authorship</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>13</day>
<month>05</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2024</year>
</pub-date>
<volume>5</volume>
<elocation-id>1347230</elocation-id>
<history>
<date date-type="received">
<day>30</day>
<month>11</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>08</day>
<month>03</month>
<year>2024</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2024 De Vis, Goyens, Hunt, Vanhellemont, Ruddick and Bialek.</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>De Vis, Goyens, Hunt, Vanhellemont, Ruddick and Bialek</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>The LANDHYPERNET and WATERHYPERNET networks (which together make up the HYPERNETS network) consist of a set of autonomous hyperspectral spectroradiometers (HYPSTAR<sup>&#xae;</sup>) acquiring fiducial reference measurements of surface reflectance at various sites covering a wide range of surface types (both land and water) for use in satellite Earth observation validation and remote sensing applications. This paper describes the processing algorithm for the HYPSTAR<sup>&#xae;</sup> data products. The <sc>hypernets_processor</sc> is a Python software package to process the LANDHYPERNET and WATERHYPERNET <italic>in-situ</italic> hyperspectral raw data, collected from the measurement network under the standard measurement protocols, to the designated products, through data transmission and conversion, application of calibration, evaluation of reflectance and other variables, and, archiving for distribution to users. In order to achieve fiducial reference measurement quality, uncertainties are propagated through each step of the processing chain, taking into account temporal and spectral error-covariance. Such detailed uncertainty information is unique for any satellite validation network. We also describe the HYPSTAR<sup>&#xae;</sup> products acquired until 2023&#x2013;04&#x2013;31, consisting of 12,190 LANDHYPERNET sequences and 55,514 WATERHYPERNET sequences (of which respectively 11,802 and 44,412 were successfully processed to surface reflectance).</p>
</abstract>
<kwd-group>
<kwd>HYPERNETS</kwd>
<kwd>LANDHYPERNET</kwd>
<kwd>WATERHYPERNET</kwd>
<kwd>hyperspectral</kwd>
<kwd>validation</kwd>
<kwd>reflectance</kwd>
<kwd>uncertainty</kwd>
<kwd>fiducial reference measurements</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Multi- and Hyper-Spectral Imaging</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>In recent years, there has been a growing fleet of high-quality optical Earth observation satellite sensors with various spectral bands and/or resolutions. As a result, there is a growing need for high-quality hyperspectral <italic>in-situ</italic> optical reflectance validation observations, for both land and water. Particularly, the European Space Agency (ESA) has highlighted the need for a network for validating surface reflectance in their Calibration/Validation strategy for optical land-imaging satellites (<xref ref-type="bibr" rid="B22">Niro et al., 2021</xref>). There is also an increasing focus on data quality, with the objective to make traceable and uncertainty-quantified measurements, referred to as Fiducial Reference Measurements (FRMs; <xref ref-type="bibr" rid="B11">Goryl et al., 2023</xref>).</p>
<p>By moving from mobile measurement setups to the use of autonomous platforms over a variety of surface types, there are many more matchups available for a given satellite. When this is combined with taking hyperspectral measurements and integrating over the satellite spectral response function, the data from a single site can be used to reconstruct the signal for many optical missions (S2, S3, PROBA-V, MODIS, VIIRS, L8, Pl&#xe9;iades, ENMAP, PRISMA, SABIAMAR, PACE, <italic>etc.</italic>). The existing AERONET-OC (<xref ref-type="bibr" rid="B36">Zibordi et al., 2009</xref>; <xref ref-type="bibr" rid="B34">Zibordi et al., 2021</xref>) and RadCalNet (<xref ref-type="bibr" rid="B2">Bouvet et al., 2019</xref>) networks provide reference <italic>in situ</italic> measurements, and have been shown to be suitable for performing validation of satellite products (e.g., <xref ref-type="bibr" rid="B1">Alonso et al., 2019</xref>; <xref ref-type="bibr" rid="B15">Ishizaka et al., 2022</xref>; <xref ref-type="bibr" rid="B35">Zibordi et al., 2022</xref>). However both these networks are based on multispectral instruments (with the exception of the Chinese RadCalNet sites), which require spectral interpolation and modelling associated uncertainties to cover all spectral bands of all sensors.</p>
<p>The Horizon 2020 HYPERNETS project set out to meet these needs by developing a network of autonomous field sites for the measurement of high-quality, hyperspectral surface reflectance. To achieve this, a new hyperspectral radiometer, HYPSTAR<sup>&#xae;</sup> (Hyperspectral Pointable System for Terrestrial and Aquatic Radiometry; Kuusk et al., in this issue), with instrument pointing capabilities has been developed and is currently operational at several land (LANDHYPERNET; Bialek et al., in this issue) and water (WATERHYPERNET; Ruddick et al., in this issue) sites. The data from these new instruments are centrally processed, with consistent processing for water and land reflectances, by the <sc>hypernets_processor</sc> to radiance, irradiance and reflectance products with associated uncertainties. The HYPERNETS satellite validation network is expected to become the main source of surface reflectance validation data for all spectral bands of VNIR-SWIR optical missions with detailed uncertainty estimates and including error-correlation information. It is the first network with such a detailed metrological approach in terms of uncertainty analysis.</p>
<p>The <sc>hypernets_processor</sc> is the network processor to handle both water and land data from HYPSTAR<sup>&#xae;</sup> acquisitions through transmission, conversion, application of calibration, interpolation, evaluation of reflectance and other products and archiving for web distribution. Quality control is performed at different stages throughout the processing. The data are managed in line with the Findable, Accessible, Interoperable and Re-useable (FAIR) principles of data management (<xref ref-type="bibr" rid="B33">Wilkinson et al., 2016</xref>). Measurement and calibration uncertainty is propagated through the full processing chain, including treatment of temporal and wavelength error-covariance following a metrological approach as defined in the Guide to the Expression of Uncertainty in Measurement (<xref ref-type="bibr" rid="B16">JCGM 100:2008, 2008</xref>). These data are now publicly available as part of the WATERHYPERNET and LANDHYPERNET network respectively.</p>
<p>This paper presents the reference description of the v2.0 of the <sc>hypernets_processor</sc> and its products. Previously, a summarised description of a beta version of the <sc>hypernets_processor</sc> was presented in <xref ref-type="bibr" rid="B12">Goyens et al. (2021)</xref>. In <xref ref-type="sec" rid="s2">Section 2</xref>, some information on the HYPERNETS project and HYPSTAR<sup>&#xae;</sup> instrument are summarised. <xref ref-type="sec" rid="s3">Section 3</xref> details the processing algorithms used, including the different steps used as well as the different quality checks and the uncertainty propagation. In <xref ref-type="sec" rid="s4">Section 4</xref>, the different data products produced by the <sc>hypernets_processor</sc> and their distribution are described. In <xref ref-type="sec" rid="s5">Section 5</xref>, some examples and processing statistics are provided. <xref ref-type="sec" rid="s6">Section 6</xref> lists some of the improvements that are foreseen in the near future. Finally, <xref ref-type="sec" rid="s7">Section 7</xref> provides the conclusions.</p>
</sec>
<sec id="s2">
<title>2 HYPERNETS</title>
<sec id="s2-1">
<title>2.1 HYPSTAR<sup>&#xae;</sup> instrument</title>
<p>HYPSTAR<sup>&#xae;</sup> (Hyperspectral Pointable System for Terrestrial and Aquatic Radiometry; <ext-link ext-link-type="uri" xlink:href="http://www.hypstar.eu">www.hypstar.eu</ext-link>) is an autonomous hyperspectral radiometer system dedicated to surface reflectance validation of all optical Copernicus satellite data products. For a complete description of the HYPSTAR<sup>&#xae;</sup> system, we refer to Kuusk et al. (in this issue). HYPSTAR<sup>&#xae;</sup> takes radiance and irradiance measurements using the same spectrometer (though with different optical paths for radiance and irradiance). Two slightly different instruments are used for water and land: (1) The Standard Range (SR) model provides visible and near-infrared (VNIR, 380&#x2013;1,020&#xa0;nm) data and is used on water sites, (2) the eXtended Range (XR) models have an additional shortwave-infrared (SWIR) spectrometer module which extends the spectral range up to 1680&#xa0;nm. The XR models are meant to be used on the land sites. Pictures of the SR and XR models of the HYPSTAR<sup>&#xae;</sup> are shown in <xref ref-type="fig" rid="F1">Figure 1</xref>, together with some example field sites. The instrument characteristics are summarised in <xref ref-type="table" rid="T1">Table 1</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Picture of the Standard Range (SR) HYPSTAR<sup>&#xae;</sup> system (including validation module) used for the WATERHYPERNET network (top left) and the eXtended Range (XR) HYPSTAR<sup>&#xae;</sup> system (including validation module) used for the LANDHYPERNET network (top right). A picture of one of the water sites (Aqua Alta, bottom left) and one of the land sites (Gobabeb, bottom right) is also shown.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g001.tif"/>
</fig>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Instrument characteristics for the water HYPSTAR<sup>&#xae;</sup>&#xa0;(SR model) and land HYPSTAR<sup>&#xae;</sup>&#xa0;(XR model, consisting of VNIR and SWIR module) sensors. All values in the table are approximate values. Precise values might be slightly different and vary from instrument to instrument.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Parameter</th>
<th align="left">VNIR water</th>
<th align="left">VNIR land</th>
<th align="left">SWIR land</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">spectral resolution FWHM</td>
<td align="left">3&#xa0;nm</td>
<td align="left">3&#xa0;nm</td>
<td align="left">10&#xa0;nm</td>
</tr>
<tr>
<td align="left">spectral sampling interval</td>
<td align="left">0.5&#xa0;nm</td>
<td align="left">0.5&#xa0;nm</td>
<td align="left">3&#xa0;nm</td>
</tr>
<tr>
<td align="left">L2B wavelength range</td>
<td align="left">380&#x2013;1,020&#xa0;nm</td>
<td align="left">380&#x2013;1,000&#xa0;nm</td>
<td align="left">1,000&#x2013;1,680&#xa0;nm</td>
</tr>
<tr>
<td align="left">number of L2B channels</td>
<td align="left">1,300</td>
<td align="left">1,260</td>
<td align="left">220</td>
</tr>
<tr>
<td align="left">field of view radiance sensor</td>
<td align="left">2&#xb0;</td>
<td align="left">5&#xb0;</td>
<td align="left">5&#xb0;</td>
</tr>
<tr>
<td align="left">field of view irradiance sensor</td>
<td align="left">180&#xb0;</td>
<td align="left">180&#xb0;</td>
<td align="left">180&#xb0;</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The spectral sampling of the HYPSTAR<sup>&#xae;</sup> is 0.5&#xa0;nm in the VNIR and 3&#xa0;nm in the SWIR, and the spectral resolution full-width half-maximum (FWHM) is 3&#xa0;nm in the VNIR and 10&#xa0;nm in the SWIR. The SWIR sensor is actively cooled (typically to 0 &#xb0;C, but this can be configured) to ensure the stability of the measurements. The field of view of the radiance measurements is <inline-formula id="inf1">
<mml:math id="m1">
<mml:mo>&#x223c;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>&#xb0;</mml:mo>
</mml:math>
</inline-formula> for the SR model and <inline-formula id="inf2">
<mml:math id="m2">
<mml:mo>&#x223c;</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo>&#xb0;</mml:mo>
</mml:math>
</inline-formula> for the XR model. The irradiance measurements observe the full hemisphere, i.e. 180&#xb0;. The HYPSTAR<sup>&#xae;</sup> system is mounted on a low-cost pointing system which allows the acquisition of autonomous, multi-angular measurements. A GPS, light and rain sensors as well as cameras to image the target and the sensor heads are also included. Data acquired by the HYPSTAR<sup>&#xae;</sup> is saved in separate binary &#x2018;.spe&#x2019; files for each viewing geometry. These acquisitions are sent to the central server for processing, together with some &#x2018;rgb&#x2019; images taken by the camera within the system, a file with meteorological information (i.e., relative humidity, temperature and pressure measured within the system and illuminance measured by an external light sensor), log files made during the acquisition and data transfer, and a metadata file.</p>
<p>The HYPSTAR instruments are calibrated by Tartu University<xref ref-type="fn" rid="fn2">
<sup>1</sup>
</xref> (See Kuusk et al. in this issue). Currently this includes radiometric calibration (gains) and non-linearity calibration (non-linearity coefficients). Measurements of the temperature responsivity and stray light are also planned/in progress, but these characterisations are not yet used in the processing of the data in the current processor version. The lab calibration also includes a wavelength calibration. The wavelengths for each instrument will thus be slightly different, and the radiance and irradiance measurements can also have slightly different wavelengths for each spectral pixel (see <xref ref-type="sec" rid="s3-2-4-1">Section 3.2.4.1</xref>). The wavelength calibration assigns a wavelength to each spectral pixel in the raw data, but not all the raw data pixels will be used in the final product. This is either because these wavelengths (e.g., in the UV) cannot be calibrated due to the spectral limits of the radiometric calibration references used, or because these wavelengths are simply too noisy to be used. In the final publicly distributed data (L2B products) the wavelength range is limited to the ranges specified in <xref ref-type="table" rid="T1">Table 1</xref> in order to only supply the user with the best quality data.</p>
</sec>
<sec id="s2-2">
<title>2.2 HYPERNETS measurement protocol and terminology</title>
<p>Radiometer measurements are taken in a defined set of geometries called a sequence. For the WATERHYPERNET network, the output of a single sequence is the resulting water-leaving reflectance (possibly measured at different relative azimuth angles between Sun and sensor) and associated uncertainty and quality flags. For the LANDHYPERNET network, it is a set of surface reflectance measurements for different viewing geometries with associated uncertainties and quality flags. The set of acquisitions at each viewing geometry in a sequence is called a series, and it is composed of a set of repeat measurements called scans (which will be averaged). Hence, one scan results in a single unique spectrum with a specific integration time. The number of repeat scans in a single series depends on the desired parameter and its natural variability, potentially constrained by the total duration and power consumption. For the land XR instruments, the SWIR sensors typically have larger integration times than the VNIR sensors (in order to optimally use the dynamic range of the sensor). Typically, a fixed number (the default is 10) of SWIR scans will be set, and the VNIR sensor will keep taking scans until the SWIR sensor has completed its scans (leading to a larger number of scans for VNIR than for SWIR).</p>
<p>The geometries for the HYPERNETS network are defined in <xref ref-type="fig" rid="F2">Figure 2</xref>. Each of the angles are defined in the reference frame centred on the measurement location on the surface. The viewing angles are thus defined as the sensor &#x2018;viewing from&#x2019; a particular direction. In the side view, the viewing zenith angles are computed from Nadir to Zenith, i.e., a viewing zenith angle, <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub>, of 180&#xb0; is looking upward (e.g., for downwelling irradiance measurements). The solar zenith angle is measured from Zenith. In the top view, the viewing azimuth angle, <italic>&#x3c6;</italic>
<sub>
<italic>v</italic>
</sub>, is the angle measured clockwise from the absolute North to the direction of the sensor (i.e., the line from the target to the sensor). This definition of the viewing azimuth angle matches that of most optical satellite geometries (such as those of Sentinel-2, Sentinel-3, Landsat 8). Two additional azimuth angles are defined, i.e., the &#x2018;pointing-to&#x2019; azimuth angle, <italic>&#x3c6;</italic>
<sub>
<italic>p</italic>
</sub>, measured clockwise from the absolute North to the pointing direction (i.e., the line from the sensor to the target, or, <italic>&#x3c6;</italic>
<sub>
<italic>v</italic>
</sub>&#x2b;180&#xb0;), and, the relative azimuth angle, &#x394;<italic>&#x3c6;</italic>, measured clockwise from the Sun to the pointing direction (i.e., <italic>&#x3c6;</italic>
<sub>
<italic>p</italic>
</sub>-<italic>&#x3c6;</italic>
<sub>
<italic>s</italic>
</sub>). In this definition, &#x394;<italic>&#x3c6;</italic> &#x3d; 0 means the instrument is looking towards the Sun, and &#x394;<italic>&#x3c6;</italic> &#x3d; 180 means the instrument is looking away from the Sun. Our definitions of <italic>&#x3c6;</italic>
<sub>
<italic>p</italic>
</sub> and &#x394;<italic>&#x3c6;</italic> match the definitions in <xref ref-type="bibr" rid="B27">Ruddick et al. (2019)</xref> for their viewing azimuth and &#x394;<italic>&#x3c6;</italic>, respectively (see their Figure 1).</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Left: Side-view diagram defining viewing zenith angles <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> and solar zenith angles <italic>&#x3b8;</italic>
<sub>
<italic>s</italic>
</sub>. Right: Top-view diagram defining the viewing azimuth angles <italic>&#x3c6;</italic>
<sub>
<italic>v</italic>
</sub>, &#x2018;pointing-to&#x2019; azimuth angle <italic>&#x3c6;</italic>
<sub>
<italic>p</italic>
</sub> and solar azimuth angles <italic>&#x3c6;</italic>
<sub>
<italic>s</italic>
</sub>, measured clockwise from North. The relative azimuth angle &#x394;<italic>&#x3c6;</italic> is defined as the difference between <italic>&#x3c6;</italic>
<sub>
<italic>p</italic>
</sub> and <italic>&#x3c6;</italic>
<sub>
<italic>s</italic>
</sub>. All angles are defined in the reference frame centred on the measurement location on the surface.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g002.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F3">Figure 3</xref> illustrates the measurement protocol for a WATERHYPERNET sequence. The current standard water protocol follows commonly used measurement protocols (<xref ref-type="bibr" rid="B27">Ruddick et al., 2019</xref>, and references therein). Upwelling above-water radiance, <italic>L</italic>
<sub>
<italic>u</italic>
</sub>, series are taken at <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 40&#xb0; and sun-sensor relative azimuths, &#x394;<italic>&#x3c6;</italic>, at&#xa0;&#xb1;&#xa0;90&#xb0; and/or&#xa0;&#xb1;&#xa0;135&#xb0; (to avoid Sun glint and high skylight reflectance within the sensor field of view). Each series of <italic>L</italic>
<sub>
<italic>u</italic>
</sub> is preceded and followed by a series of above-water downwelling (sky) radiance, <italic>L</italic>
<sub>
<italic>d</italic>
</sub>, in the specular reflection direction for the correction of the reflected skylight (i.e., <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> for <italic>L</italic>
<sub>
<italic>u</italic>
</sub> &#x3d; 180&#xb0; - <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> for <italic>L</italic>
<sub>
<italic>d</italic>
</sub>). Downwelling irradiance, <italic>E</italic>
<sub>
<italic>d</italic>
</sub>, series are taken at the beginning and the end of each sequence. A standard water sequence (including only one single azimuth angle) lasts approximately 5&#xa0;min and is executed every 15&#x2013;30&#xa0;min during daylight.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Diagram illustrating the measurement protocol for the WATERHYPERNET network with a sequence being a series of scans of upwelling radiance <italic>L</italic>
<sub>
<italic>u</italic>
</sub> preceded and followed by a series of scans of downwelling irradiance, <italic>E</italic>
<sub>
<italic>d</italic>
</sub>, and a series of scans of downwelling radiance <italic>L</italic>
<sub>
<italic>d</italic>
</sub>. In the figure <italic>N</italic>
<sub>
<italic>x</italic>
</sub>, <italic>&#x3bb;</italic>, <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub>, <italic>&#x3b8;</italic>
<sub>
<italic>s</italic>
</sub>, and, &#x394;<italic>&#x3d5;</italic> stand for number of scans, wavelength, viewing zenith angle, solar zenith angle and relative azimuth angle, respectively.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g003.tif"/>
</fig>
<p>The LANDHYPERNET sequences also start and end with downwelling irradiance series, but have multiple upwelling radiance series covering a range of different viewing geometries (including a minimum of five view zenith and six view azimuth angles). The design of the land measurement protocol aims to optimise the viewing geometry during satellite&#x2019;s overpass times and by its repeats through the day to obtain information about Bidirectional Reflectance Distribution Function (BRDF) properties of the site. A plot illustrating the different viewing geometries for a land sequence is illustrated in <xref ref-type="fig" rid="F4">Figure 4</xref>. Land sequences do not measure the downwelling (sky) radiance. A standard land sequence typically lasts approximately 15&#xa0;min (depending on illumination) and is executed every 30&#xa0;min during daylight.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Polar plot showing the typical land protocol viewing geometries for the LANDHYPERNET network. As an example, the Sentinel-2 viewing geometries and solar geometries (during Sentinel-2 overpass) for the NPL Wytham Woods site in January 2022 are shown for comparison.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g004.tif"/>
</fig>
<p>WATERHYPERNET and LANDHYPERNET sequences following the above protocols are called &#x2018;standard&#x2019; sequences.</p>
</sec>
<sec id="s2-3">
<title>2.3 <sc>Hypernets_processor</sc> design</title>
<p>The <sc>hypernets_processor</sc> module is an open source Python package, with the code actively developed on GitHub<xref ref-type="fn" rid="fn3">
<sup>2</sup>
</xref>. It has a modular design that enables simple development. The various processing steps (described in the next section) have been implemented within a flexible framework, so that rapid advances in instrumentation and systems can be easily accommodated. The software is run through a command-line interface (CLI) and ingests data and processes with 24/7/365 operation including automated monitoring of diagnostics both for the network operator and for the site operators. Installation instructions are available in the <sc>hypernets_processor</sc> documentation<xref ref-type="fn" rid="fn4">
<sup>3</sup>
</xref>.</p>
<p>The <sc>hypernets_processor</sc> has a number of different categories of usage or modes of operation, to provide context to the rest of the design, they are initially described here. The first distinction is between the LANDHYPERNET processor and the WATERHYPERNET processor.<list list-type="simple">
<list-item>
<p>&#x2022; LANDHYPERNET processor - processing for data taken by the LANDHYPERNET Network.</p>
</list-item>
<list-item>
<p>&#x2022; WATERHYPERNET processor - processing for data taken by the WATERHYPERNET Network.</p>
</list-item>
</list>
</p>
<p>Where possible, the processing of the LANDHYPERNET and WATERHYPERNET is done as consistently as possible, with deviations between them only in the L1C and L2A processing (<xref ref-type="fig" rid="F5">Figure 5</xref>). Also, there is a distinction between whether the measured data are from a standard measurement sequence or custom measurement sequence.<list list-type="simple">
<list-item>
<p>&#x2022; Standard Sequence - dataset containing the standard set of measurements defined by the LANDHYPERNET or WATERHYPERNET network (as described in <xref ref-type="sec" rid="s2-2">Section 2.2</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Custom Sequence - dataset containing any other set of measurements.</p>
</list-item>
</list>
</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Design diagram for the <sc>hypernets_processor</sc>. Inputs from raw field acquisitions and the instrument characterisation and calibration database (ICCDB) are processed in various steps to the L0A-L2B HYPERNETS products. The processing steps row indicates what step of the processor has been used to create the output files in that column. The averaging processing step is applied at different stages throughout the processing, as indicated with the red arrows.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g005.tif"/>
</fig>
<p>Standard sequences are automatically processed to L2A, whereas custom sequences are only processed to L1B (flags and anomalies will be raised, triggering an anomaly that will stop the processing, see <xref ref-type="sec" rid="s3-3">Section 3.3</xref>). Finally, there is the distinction between the two potential use cases, network processing or field use.<list list-type="simple">
<list-item>
<p>&#x2022; Network Processing - automated processing to prepare standard sequences retrieved from network sites for distribution to users.</p>
</list-item>
<list-item>
<p>&#x2022; Field Use - <italic>ad hoc</italic> processing of particular field acquisitions, for example, for testing instrument operation in the field.</p>
</list-item>
</list>
</p>
<p>In the remainder of this paper, we will mainly focus on the network processing of standard sequences. For further information on the use case of field use, we refer the reader to the corresponding page in the <sc>hypernets_processor</sc> documentation<xref ref-type="fn" rid="fn5">
<sup>4</sup>
</xref>.</p>
</sec>
<sec id="s2-4">
<title>2.4 <sc>Hypernets_processor</sc> options</title>
<p>There are many options that can be fine-tuned in the running of the <sc>hypernets_processor</sc>, from controlling which measurement functions are used, where to store the output data and what plots and output files are produced, to details like number of Monte Carlo iterations used in the uncertainty propagation, thresholds of the quality checks or what ancillary data to use in the calculation of the air-water interface reflection factor (referred to as &#x2018;rhof_option&#x2019;). These options can be controlled through three config files. The <italic>processor.config</italic> file contains all the options that are in common between all sites (different <italic>processor.config</italic> files are used for the WATERHYPERNET and LANDHYPERNET network, though with most values in common). The <italic>job.config</italic> file controls all site-specific options. Finally, there is also a <italic>scheduler.config</italic> file which controls how often the <sc>hypernets_processor</sc> checks for new data and how many sequences can be processed in parallel.</p>
<p>Set up routines are available to set up the processor (and the processor.config file using default values), to set up a new job (i.e., the processing of a new site, including what directory to check for new data) and to start the scheduler. The <sc>hypernets_processor</sc> documentation provides more information on how to set up and run the automated processing<xref ref-type="fn" rid="fn6">
<sup>5</sup>
</xref>.</p>
</sec>
<sec id="s2-5">
<title>2.5 <sc>Hypernets_processor</sc> versions</title>
<p>The version of the <sc>hypernets_processor</sc> described in this paper is v2.0. This is the first version that is intended for operational use. Previous versions include a beta version (as described in <xref ref-type="bibr" rid="B12">Goyens et al., 2021</xref>), and a v1.0 which was used to produce the first public dataset on Zenodo (see <xref ref-type="sec" rid="s4-4">Section 4.4</xref>). A new version of the dataset on Zenodo will be released upon publication of this paper, using the v2.0 of the <sc>hypernets_processor</sc>.</p>
<p>The version number is made up of two numbers. The first indicates the major version number. Changes to this number indicate significant changes and improvements to the code, and major changes to the datafiles. The second number, called the minor version, is incremented when there are minor feature changes or notable fixes which do not significantly change how the data products should be used.</p>
<p>Compared to the v1.0, there are a few changes in the v2.0 <sc>hypernets_processor</sc> worth noting, so that any HYPERNETS results using the v1.0 data products can be understood.<list list-type="simple">
<list-item>
<p>&#x2022; The first important difference is in the definition of the viewing azimuth angles, which have changed by 180&#xb0; in order to be consistent with satellite viewing azimuth angles in v2.0 (see <xref ref-type="sec" rid="s2-2">Section 2.2</xref>). The pointing azimuth angles in v2.0 are equal to the viewing azimuth angles in v1.0. Pointing azimuth angles are mainly of interest for the WATERHYPERNET network as it is commonly used (<xref ref-type="bibr" rid="B27">Ruddick et al., 2019</xref>, and references therein) to compute the relative azimuth angles.</p>
</list-item>
<list-item>
<p>&#x2022; Uncertainty propagation is now consistently applied to all WATERHYPERNET products, in the same way as for the LANDHYPERNET network.</p>
</list-item>
<list-item>
<p>&#x2022; Output files and their names have slightly changed, e.g., there are now L0A and L0B files as opposed to only L0 files, and, the relative azimuth angle, used for the approximation of the air-water interface reflection factor within the WATERHYPERNET network, is also added to the L1C and L2A product names.</p>
</list-item>
<list-item>
<p>&#x2022; Reflectance files with site specific quality checks applied are called L2B files in v2.0 (see <xref ref-type="sec" rid="s3-3-7">Section 3.3.7</xref>), as opposed to L2A files in v1.0. These are the main files to be distributed.</p>
</list-item>
<list-item>
<p>&#x2022; There were many minor changes (e.g., to the metadata and the quality checks) that are not worth noting individually but do make a difference to the produced HYPERNETS products.</p>
</list-item>
</list>
</p>
</sec>
</sec>
<sec id="s3">
<title>3 Processing algorithm</title>
<sec id="s3-1">
<title>3.1 Processing overview</title>
<p>The network processing is done centrally on the LANDHYPERNET and WATERHYPERNET servers, through a command line interface, which continuously checks for new data, and processes it as soon as it comes in. The <sc>hypernets_processor</sc> takes the data from acquisition (raw data) to application of calibration and quality controls, computation of correction factors (e.g., air-water interface reflectance correction for water processing), temporal interpolation to coincident timestamps, processing to surface reflectance and averaging per series. A diagram showing the design for the network processing is provided in <xref ref-type="fig" rid="F5">Figure 5</xref>.</p>
<p>The inputs are the raw field acquisitions and the instrument characterisation and calibration database (ICCDB). The main outputs are the various L0A-L2B NetCDF datasets listed in <xref ref-type="table" rid="T2">Table 2</xref>. The <sc>hypernets_processor</sc> also produces various plots and SQL databases of successfully processed products and anomalies (<xref ref-type="sec" rid="s4-3">Section 4.3</xref>). The different processing steps and the plots produced are described in the next section. As part of the processing, quality checks are performed which either add quality flags to the produced data processing, or in some cases raise anomalies and halt the processing. These quality checks are described in <xref ref-type="sec" rid="s3-3">Section 3.3</xref>. Uncertainties are also propagated through each of the processing steps, as described in <xref ref-type="sec" rid="s3-4">Section 3.4</xref>. Details on the produced products are provided in <xref ref-type="sec" rid="s4">Section 4</xref>.</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>
<sc>hypernets_processor</sc> processing levels.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Network</th>
<th align="left">Level_Type</th>
<th align="left">Description</th>
<th align="left">Dimensions</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">Both</td>
<td align="left">Ancillary</td>
<td align="left">Generic term covering non-measurement data used in processing chain</td>
<td align="left">-</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">Spe files</td>
<td align="left">Raw binary files (.spe format)</td>
<td align="left">wavelength, scan</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">jpg files</td>
<td align="left">RGB images taken by the HYPSTAR<sup>&#xae;</sup>&#xa0;</td>
<td align="left">image</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L0A_RAD</td>
<td align="left">Raw data for radiance scans, stored in NetCDF files</td>
<td align="left">wavelength, scan</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L0A_IRR</td>
<td align="left">Raw data for irradiance scans, stored in NetCDF files</td>
<td align="left">wavelength, scan</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L0A_BLA</td>
<td align="left">Raw data for dark scans, stored in NetCDF files</td>
<td align="left">wavelength, scan</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L0B_RAD</td>
<td align="left">Raw data for radiance, averaged per series and corresponding dark scans, averaged per series</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L0B_IRR</td>
<td align="left">Raw data for irradiance, averaged per series and corresponding dark scans, averaged per series</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L1A_RAD</td>
<td align="left">Calibrated data for radiance scans, corrected for dark samples and any other instrument corrections (e.g., non-linearity)</td>
<td align="left">wavelength, scan</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L1A_IRR</td>
<td align="left">Calibrated data for irradiance scans, corrected for dark samples and any other instrument corrections (e.g., non-linearity)</td>
<td align="left">wavelength, scan</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L1B_RAD</td>
<td align="left">Calibrated data for radiance averaged over scans within one series, stored in NetCDF files</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L1B_IRR</td>
<td align="left">Calibrated data for irradiance averaged over scans within one series, stored in NetCDF files</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Land</td>
<td align="left">L1C_ALL</td>
<td align="left">LANDHYPERNET network file with (upwelling) radiance and irradiance which has been temporally and spectrally interpolated to match the radiance series</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Water</td>
<td align="left">L1C_ALL</td>
<td align="left">WATERHYPERNET network file with downwelling radiance and irradiance which has been temporally and spectrally interpolated to match the upwelling radiance scans and wavelength, upwelling radiance scans, and, estimated water-leaving radiance and reflectance with and without the NIR similarity correction (see below <xref ref-type="sec" rid="s3-2-4-2">Section 3.2.4.2</xref>)</td>
<td align="left">wavelength, upwelling radiance scan</td>
</tr>
<tr>
<td align="left">Land</td>
<td align="left">L2A_REF</td>
<td align="left">LANDHYPERNET network file with surface reflectances per series</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Water</td>
<td align="left">L2A_REF</td>
<td align="left">WATERHYPERNET network file with water-leaving radiance, and, surface reflectance with and without the NIR similarity correction <xref ref-type="bibr" rid="B24">Ruddick et al. (2005)</xref>
</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L2B_REF</td>
<td align="left">Only includes L2A_REF measurements which have passed site specific quality checks</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L1D_RAD</td>
<td align="left">Only includes L1B_RAD measurements which have passed site specific quality checks</td>
<td align="left">wavelength, series</td>
</tr>
<tr>
<td align="left">Both</td>
<td align="left">L1D_IRR</td>
<td align="left">Only includes L1B_IRR measurements which have passed site specific quality checks</td>
<td align="left">wavelength, series</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s3-2">
<title>3.2 Processing steps</title>
<sec id="s3-2-1">
<title>3.2.1 HYPERNETS reader</title>
<p>The hypernets_reader module processes the raw dataset (in spe-binary file format) to the L0A data product (readable NetCDF file). It reads the metadata file of the sequence (ASCII file), as well as the spe-binary data file for each series (the different scans are concatenated per series). According to the metadata file and the filename of the spe-binary file, the processing reorders the scans to L0A radiance, irradiance and darks and outputs for each of those a NetCDF with the different scans. The module also copies and renames the RGB images taken from the target and/or the sky during the sequence with the time of acquisition, the series number and the viewing and (relative) azimuth angle.</p>
</sec>
<sec id="s3-2-2">
<title>3.2.2 Calibration</title>
<p>After the raw L0A data has been read in, it needs to be quality checked and calibrated in order to get the radiance and irradiance L1A data products. The first step consists of assigning wavelengths to each of the spectral pixels based on laboratory characterisation measurements (and omitting pixels outside the calibration range). Next, the L0A dark scans are combined with the L0A (ir)radiance files, assigning each dark to the right (ir)radiance series. Next, the quality checks described in <xref ref-type="sec" rid="s3-3-2">Section 3.3.2</xref> are applied. In order to get calibrated (ir)radiances, the calibration coefficients and non-linearity coefficients (as determined by the calibration laboratory at Tartu University<xref ref-type="fn" rid="fn7">
<sup>6</sup>
</xref>) are then applied to the raw data. <xref ref-type="fig" rid="F6">Figure 6</xref> shows the raw L0A data and the calibrated L1A data for an land sequence example.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Example of the calibration process for the Gobabeb hyperspectral Namibia site (GHNA) sequence on 2022&#x2013;10&#x2013;06&#xa0;at 9 a.m. UTC. The left panels show the digital numbers (L0A) for the irradiance series at the start of the sequence (all scans plotted) of the VNIR (top) and SWIR (bottom) sensors. The right panels show the calibrated irradiance scans (L1A) of the VNIR (top) and SWIR (bottom) sensors.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g006.tif"/>
</fig>
<p>When multiple calibration files are available (i.e., at different calibration dates) the one nearest to the acquisition time is used, though only looking backward. When reprocessing data, calibration dates after the acquisition date are thus ignored. Interpolation between pre-deployment and post-deployment calibrations will be explored in the future (see <xref ref-type="sec" rid="s6">Section 6</xref>).</p>
<p>The exact measurement function to be used can be specified manually by providing the measurement function as a standalone Python script. If no custom measurement function is provided, a default measurement function is used. This measurement function is defined by:<inline-graphic xlink:href="frsen-05-1347230-fx1.tif"/>
</p>
<p>where each of the arguments is a <sc>numpy</sc> array, digital_number gives the measured signal (in digital numbers), dark_signal gives the dark signal in digital numbers, gains gives the calibration coefficients, non_linear has the polynomial non-linearity coefficients, and int_time is the integration time of the measurement (in ms). An update to this default measurement function is foreseen in a future release, which will include temperature and spectral straylight corrections. The gains and non-linearity coefficients are taken from the most recent calibration data for the given instrument.</p>
<p>The same measurement function is applied for radiance and irradiance measurements, but the gains (as well as the measurements themselves) will be different. Note that the non-linearity coefficients are the same for both radiance and irradiance head (assuming that the non-linearity results from the sensor and internal electronics). For the LANDHYPERNET network, the VNIR and SWIR sensors also both use the same measurement function, and each have their own set of calibration and non-linearity coefficients.</p>
<p>Uncertainties on each of the input quantities (i.e., digital_number, gains, dark_signal, non_linear and int_time) can optionally be propagated to the L1A products using <sc>punpy</sc> uncertainty propagation package. More details are provided in <xref ref-type="sec" rid="s3-4">Section 3.4</xref>.</p>
</sec>
<sec id="s3-2-3">
<title>3.2.3 Averaging</title>
<p>In order to get the best averaged results and associated uncertainties per series, the most robust approach is to first average the L0A data (i.e., radiance, irradiance and dark scans in digital numbers). Only the scans that passed the L1A quality checks (see <xref ref-type="sec" rid="s3-3-2">Section 3.3.2</xref>) are used in the mean. The averaged raw data make up the L0B datasets. Next, the averaged results in the L0B datasets are calibrated using the same approach as in the previous section.</p>
<p>For the WATERHYPERNET network these calibrated results are directly saved as the L1B datasets, which are an important output of the <sc>hypernets_processor</sc> as these are made publicly available. for the LANDHYPERNET network, after applying the calibration, the VNIR and SWIR data are combined (for the WATERHYPERNET network no SWIR data are acquired, and this step is skipped). This is done by simply appending all VNIR measurements with wavelengths smaller than 1,000&#xa0;nm with all SWIR measurements with wavelengths larger than 1,000&#xa0;nm. The VNIR-SWIR combined, averaged data are then saved as the L1B datasets. An example L1A plot for irradiance is shown in the right panel of <xref ref-type="fig" rid="F6">Figure 6</xref>.</p>
</sec>
<sec id="s3-2-4">
<title>3.2.4 Radiance and irradiance preprocessing</title>
<sec id="s3-2-4-1">
<title>3.2.4.1 LANDHYPERNET network interpolation</title>
<p>The L1C processing for the LANDHYPERNET network consists of two interpolation steps that are applied to the irradiance measurements in order to bring them to the same wavelength scale and timestamps as the radiance measurements.<list list-type="simple">
<list-item>
<p>&#x2022; Spectral interpolation: The irradiances are spectrally interpolated to the wavelengths of the radiance measurements (which are not identical to the irradiance measurements). Currently, we use a simple linear interpolation.</p>
</list-item>
<list-item>
<p>&#x2022; Temporal interpolation: Next, we use a similar method to perform a temporal interpolation. In this case, we interpolate the irradiance measurements at the start and end of the sequence, to each of the timestamps of the radiance measurements. A correction is applied to take into account the change in solar zenith angle during the sequence.</p>
</list-item>
</list>
</p>
<p>The output of the L1C processing is a product with irradiances that now have the same wavelengths and timestamps as the radiance measurements. The radiances in the L1C dataset are unchanged from the L1B dataset. An example of the L1C interpolated irradiances is shown in <xref ref-type="fig" rid="F7">Figure 7</xref>.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Example of the interpolation and surface reflectance calculation for the GHNA sequence on 2022&#x2013;10&#x2013;06&#xa0;at 9 a.m. UTC. The top left panel shows 45 radiance series (L1B/L1C), which each have a different geometry, and which were acquired one after another. The top right panel shows the irradiance series (L1C), spectrally and temporally interpolated to match the radiance series. The various interpolated lines are very close to each-other. The bottom panel shows the surface reflectances (L2A) calculated using the radiances and irradiances in the L1C dataset.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g007.tif"/>
</fig>
<p>There are multiple options available for the interpolation. For the temporal interpolation, the default option includes a correction for the change in solar zenith angle throughout the sequence. Prior to the interpolation, the irradiances are divided by the cosine of the solar zenith angle at the time of the irradiance acquisition. After the interpolation, the irradiances are multiplied by the cosine of the solar zenith angle at the timestamps of the radiances. Alternatively, there is also an option to not apply the solar zenith angle correction (i.e., only linear interpolation).</p>
<p>By default, the linear interpolation method is used for both the spectral and temporal interpolations. However, optionally, the <sc>hypernets_processor</sc> can also be set up to do interpolation following a model. This is done using the interpolation tool within the NPL CoMet toolkit to interpolate between the irradiance wavelengths using a high-resolution reference<xref ref-type="fn" rid="fn8">
<sup>7</sup>
</xref>. The high resolution reference for the spectral irradiance interpolation comes from a clear-sky model, which gives a good first-order approximation of the short scale variability. This model is then scaled to go through the measured irradiance data, while taking into account the spectral response function of the different HYPSTAR<sup>&#xae;</sup> measurements.</p>
<p>The interpolation option using a high resolution model has been implemented, but is not currently operationally used. Further investigations are required to assess whether these alternative interpolation methods lead to sufficient improvement in the performance to justify their significantly slower runtime.</p>
</sec>
<sec id="s3-2-4-2">
<title>3.2.4.2 WATERHYPERNET network</title>
<p>The L1C processing for the WATERHYPERNET network consists of multiple steps including (1) water-specific quality checks, (2) temporal and spectral interpolation steps mirroring the land processing, and, (3) computation of the water-leaving radiance and reflectance for each upwelling radiance scan. For the latter, the <sc>hypernets_processor</sc> uses a water specific processing component, referred to as RHYMER (Reliable processing of HYperspectral MEasurement of Radiance, version on 2020&#x2013;10&#x2013;16, written by Quinten Vanhellemont and adapted for the water <sc>hypernets_processor</sc> by Cl&#xe9;mence Goyens).</p>
<p>In its current version, RHYMER provides all the required functions to process above water measurements to water-leaving radiance and water-leaving reflectance (referred hereafter as water reflectance), including the estimation of the air-water interface reflection coefficient using <xref ref-type="bibr" rid="B18">Mobley (1999)</xref>, <xref ref-type="bibr" rid="B19">Mobley (2015)</xref>. RHYMER is written such that it can easily be adapted to use alternative look-up-tables, processing functions and/or quality flags. Note that the L1C processing takes as input the L1A files (i.e., not the L1B files as done for the LANDHYPERNET network processing) as it checks for water specific quality flags per upwelling radiance scan. In addition, if the processor encounters measurements made at different relative azimuth angles (and provided that the standard measurement protocol is followed), the processor will estimate the reflectance at each relative azimuth angle &#x394;<italic>&#x03C6;</italic>. Therefore, the final dimensions of the L1C data level are wavelength and the number of quality-checked scans of the upwelling radiance measurements. A separate L1C data file is created for each relative azimuth angle.</p>
<p>The L1C radiance and irradiance processing steps are the following.<list list-type="simple">
<list-item>
<p>&#x2022; Cycle parse: The processor parses through the sequence and verifies, for a single azimuth angle and after applying the required quality checks (see <xref ref-type="sec" rid="s3-3">Section 3.3</xref>), if the sequence has the required number of downward irradiance (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 180&#xb0;) and radiance (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 140&#xb0;) scans and corresponding upward radiance scans (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 40&#xb0;). If these requirements are not met, the sequence is not further processed and an anomaly is raised (see <xref ref-type="sec" rid="s3-3">Section 3.3</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Spectral interpolation: Likewise for the LANDHYPERNET network processing, the irradiance measurements are spectrally interpolated in order to bring them to the same wavelength scale as the radiance measurements.</p>
</list-item>
<list-item>
<p>&#x2022; Temporal interpolation: Next, the downwelling radiance and irradiance measurements are averaged per series and each series is temporally interpolated to the same timestamps as the upwelling radiance measurements (including a correction to account for viewing zenith angle, likewise the temporal interpolation of the land processing mentioned above).</p>
</list-item>
<list-item>
<p>&#x2022; Auxiliary data retrieval: All the required parameters for the computation of the water-leaving radiance and reflectance, i.e., wind speed, <italic>ws</italic>, and the air-water interface reflection factor, <italic>&#x3c1;</italic>
<sub>
<italic>f</italic>
</sub> (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub>, <italic>&#x3b8;</italic>
<sub>
<italic>s</italic>
</sub>, &#x394;<italic>&#x3c6;</italic>, <italic>ws</italic>), are retrieved. The default wind speed is taken from NCEP/GDAS (<xref ref-type="bibr" rid="B21">National Centers for Environmental Prediction, National Weather Service, NOAA, U.S. Department of Commerce, 2015</xref>) and is spatially and temporally interpolated according to the site location and the measurement date and time. Other data sources or a constant value for wind speed can also be used. Based on the retrieved wind speed, <italic>&#x3c1;</italic>
<sub>
<italic>f</italic>
</sub> (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub>, <italic>&#x3b8;</italic>
<sub>
<italic>s</italic>
</sub>, &#x394;<italic>&#x3c6;</italic>, <italic>ws</italic>) can be extracted from different look-up tables, e.g., <xref ref-type="bibr" rid="B18">Mobley (1999)</xref> or <xref ref-type="bibr" rid="B19">Mobley (2015)</xref>. <xref ref-type="fig" rid="F8">Figure 8</xref> (left panel) shows an example of the estimated reflectance for a single sequence, but for different &#x394;<italic>&#x3c6;</italic> (i.e., 225&#xb0; and 270&#xb0;) and wind speeds (retrieved from NCEP/GDAS (default) and using a constant value of 2&#xa0;m<sup>&#x2212;1</sup>). The options used for the retrieval of the wind speed and the air water interface reflectance factor can be set in the configuration file (e.g., <italic>rhof</italic>_<italic>option</italic>: Mobley1999 and <italic>wind</italic>_<italic>ancillary</italic>: GDAS) and are recorded in the metadata of each processed datafile for traceability.</p>
</list-item>
<list-item>
<p>&#x2022; Retrieval of water-leaving radiance and reflectance: For each <italic>L</italic>
<sub>
<italic>u</italic>
</sub> scan and from the averaged and temporally interpolated <italic>L</italic>
<sub>
<italic>d</italic>
</sub>, the water-leaving radiance, <italic>L</italic>
<sub>
<italic>w</italic>
</sub>, is computed as in Eq. <xref ref-type="disp-formula" rid="e1">1</xref> below.</p>
</list-item>
</list>
<disp-formula id="e1">
<mml:math id="m3">
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi>&#x3c6;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi>&#x3c6;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2212;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi>&#x3c6;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mn>180</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi>&#x3c6;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(1)</label>
</disp-formula>The water-leaving radiance is then converted into water reflectance (omitting illumination and viewing dimensions for brevity) in Eq. <xref ref-type="disp-formula" rid="e2">2</xref> below using the downwelling (hemispherical) irradiance <italic>E</italic>
<sub>
<italic>d</italic>
</sub>:<disp-formula id="e2">
<mml:math id="m4">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3c0;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfrac>
</mml:math>
<label>(2)</label>
</disp-formula>with <italic>nosc</italic> referring to <italic>non similarity corrected</italic> reflectance. Indeed, although most acquisition protocols attempt to avoid Sun glint, over wind roughened surfaces the target radiance may still contain some Sun glint. Therefore, a spectrally flat correction, <italic>&#x3f5;</italic>, based on the &#x201c;near infrared (NIR) similarity spectrum&#x201d; correction from <xref ref-type="bibr" rid="B25">Ruddick et al. (2006)</xref>, is applied. The constant <italic>&#x3f5;</italic> is estimated in Eq. <xref ref-type="disp-formula" rid="e3">3</xref> using two wavelengths in the NIR (default for <italic>&#x3bb;</italic>
<sub>1</sub> and <italic>&#x3bb;</italic>
<sub>2</sub> are 780 and 870&#xa0;nm, respectively).<disp-formula id="e3">
<mml:math id="m5">
<mml:mi>&#x3f5;</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:math>
<label>(3)</label>
</disp-formula>
<italic>&#x3b1;</italic> is the similarity spectrum ratio for the bands used (the default is, <italic>&#x3b1;</italic>(780,870) &#x3d; 1.912). The water reflectance <italic>&#x3c1;</italic>
<sub>
<italic>w</italic>
</sub> is given in Eq. <xref ref-type="disp-formula" rid="e4">4</xref> below.<disp-formula id="e4">
<mml:math id="m6">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3f5;</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3bb;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
<label>(4)</label>
</disp-formula>
<xref ref-type="fig" rid="F8">Figure 8</xref> (right panel) shows an example of the estimated reflectance for a single sequence with and without the NIR similarity correction. The data shown in this figure are for the WRUK site, an inland water basin with relatively clear waters. Hence, the NIR similarity correction can be applied (in contrast to turbid water sites such as MAFR or M1BE, see <xref ref-type="table" rid="T5">Table 5</xref>).</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Example of the water-leaving reflectances for the Wraysbury Reservoir, UK site (WRUK) sequence on 2023&#x2013;07&#x2013;07&#xa0;at 1:45 p.m. UTC. The left panel shows reflectance without NIR similarity correction (<italic>&#x3c1;</italic>
<sub>
<italic>w</italic>,<italic>nosc</italic>
</sub>) for different relative azimuth angles (&#x394;<italic>&#x3c6;</italic> equals 225&#xb0; and 270&#xb0;, respectively) and wind sources (i.e., retrieved from NCEP/GDAS and default 2&#xa0;m<sup>&#x2212;1</sup>). The right panel shows the reflectance with (<italic>&#x3c1;</italic>
<sub>
<italic>w</italic>
</sub>) and without the NIR similarity correction (<italic>&#x3c1;</italic>
<sub>
<italic>w</italic>,<italic>nosc</italic>
</sub>).</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g008.tif"/>
</fig>
</sec>
</sec>
<sec id="s3-2-5">
<title>3.2.5 Surface reflectance calculation</title>
<sec id="s3-2-5-1">
<title>3.2.5.1 LANDHYPERNET network</title>
<p>For the LANDHYPERNET network, the surface reflectances can now be calculated from the L1C radiances, <italic>L</italic>
<sub>
<italic>u</italic>
</sub>, and irradiances, <italic>E</italic>
<sub>
<italic>d</italic>
</sub> in Eq. <xref ref-type="disp-formula" rid="e5">5</xref> below.<disp-formula id="e5">
<mml:math id="m7">
<mml:mi>&#x3c1;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3c0;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:math>
<label>(5)</label>
</disp-formula>We note that this surface reflectance is technically the hemispherical-conical reflectance factor and not the bidirectional reflectance factor, as the contribution from sky reflectance is included in the measurements and the field-of-view of the LANDHYPERNET is 5&#xb0;.</p>
<p>An example with all the different series is shown in the right panel of <xref ref-type="fig" rid="F7">Figure 7</xref>. In addition, <xref ref-type="fig" rid="F9">Figure 9</xref> shows additional useful plots produced by the <sc>hypernets_processor</sc>. This includes plots showing the reflectance variation for a fixed value of viewing azimuth angle (98&#xb0;) and viewing zenith angle (30&#xb0;), as well as a polar plot showing the reflectances at 900&#xa0;nm for each of the included geometries. This shows the smooth variation of the surface reflectance with different angles. In the future, we will investigate whether BRDF models can be fitted to these data (<xref ref-type="sec" rid="s6">Section 6</xref>). These data might in the future be provided as a L2C or L2D dataset.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Example of the surface reflectances for the GHNA sequence on 2022&#x2013;10&#x2013;06&#xa0;at 9 a.m. UTC. The top left panel shows the variation with viewing zenith angle for the scans with a viewing azimuth angle of 98&#xb0;. The top right panel shows the variation with viewing azimuth angle for the scans with a viewing zenith angle of 30&#xb0;. The bottom panel shows a polar plot with the 900&#xa0;nm reflectances for each of the different included viewing geometries (zenith angle for radial axis, azimuth angle for angular axis). The solar geometry is shown by the black dot.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g009.tif"/>
</fig>
</sec>
<sec id="s3-2-5-2">
<title>3.2.5.2 WATERHYPERNET network</title>
<p>For each L1C data file (one per relative azimuth angle), the surface reflectances and water radiances (computed at each <italic>L</italic>
<sub>
<italic>u</italic>
</sub> timestamp) are averaged. This results in L2A files containing one spectrum for each variable (i.e., water-leaving radiance, and, water reflectance with and without the NIR similarity correction) and the associated uncertainties. <xref ref-type="fig" rid="F10">Figure 10</xref> shows an example of the reflectance spectra measured at the WRUK site on 2023&#x2013;07&#x2013;07 from the L1C processing level and the averaged L2A reflectance spectrum. Measurements were made at two different relative azimuth angles, i.e., 225&#xb0; (or &#x2212;135&#xb0;) and 270&#xb0; (or &#x2212;90&#xb0;). Hence, as shown in <xref ref-type="fig" rid="F10">Figure 10</xref>, more variability in the L1C reflectance spectra results in higher uncertainties for the L2A reflectance spectrum (see <xref ref-type="sec" rid="s3-4">Section 3.4</xref> for more details about uncertainties).</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Example of the water-leaving reflectances (without NIR similarity correction (<italic>&#x3c1;</italic>
<sub>
<italic>w</italic>,<italic>nosc</italic>
</sub>)) for the WRUK sequence on 2023&#x2013;07&#x2013;07&#xa0;at 1:45 p.m. UTC. The left panel shows reflectance of the L1C processing level (orange) together with the averaged L2A spectrum (black) for the two different relative azimuth angles (&#x394;<italic>&#x3c6;</italic>) equal 225&#xb0; and 270&#xb0; (top and bottom, respectively). The right panel shows the relative random and systematic uncertainties for each averaged L2A spectrum for the relative azimuth angles (&#x394;<italic>&#x3c6;</italic>) equal 225&#xb0; and 270&#xb0; (top and bottom, respectively).</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g010.tif"/>
</fig>
</sec>
</sec>
<sec id="s3-2-6">
<title>3.2.6 Site-specific quality checks</title>
<p>Once the L2A datasets have been produced, a final set of site-specific quality checks and masks are applied. The site-specific quality checks and masks are determined after inspection of the first months of data in consultation of the site owners - see <xref ref-type="sec" rid="s3-3-7">Section 3.3.7</xref>. The resulting masks are applied to the L2A dataset and stored as L2B. The same masks are also applied to the L1B datasets and stored as L1D. Only the L1D and L2B data will be distributed to satellite validation users.</p>
</sec>
</sec>
<sec id="s3-3">
<title>3.3 Quality checks, quality flags and anomalies</title>
<p>Throughout the different processing steps described in the previous section, a number of quality checks are applied. These quality checks are described below. When a given quality check fails, there are two possible outcomes.<list list-type="simple">
<list-item>
<p>&#x2022; When the quality check is critical for having useful data, failure of the quality check results in halting of the processing, and an anomaly is raised and stored in the anomaly database (see <xref ref-type="sec" rid="s4-3">Section 4.3</xref>). In <xref ref-type="table" rid="T3">Tables 3</xref>, <xref ref-type="table" rid="T4">4</xref>, it is indicated which quality checks halt the processing and what anomaly is raised.</p>
</list-item>
<list-item>
<p>&#x2022; On the other hand, there are some quality check where failure does not necessarily mean the entire sequence cannot be used. In some cases only part of the data might be affected (e.g., a single series in the sequence), or in other cases the quality check is only a warning the data should be used with caution. In each of these cases, a quality flag is added to the data, and the processing is continued. In some cases, it is still useful to also raise an anomaly and store it in the anomaly database for future reference. The different quality checks, the triggered flags and raised anomalies are listed in <xref ref-type="table" rid="T3">Tables 3</xref>, <xref ref-type="table" rid="T4">4</xref>.</p>
</list-item>
</list>
</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>
<sc>Hypernets_processor</sc> flags applied up to L1B.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Name</th>
<th align="left">Network</th>
<th align="left">Level</th>
<th align="left">Description</th>
<th align="left">Flag triggered</th>
<th align="left">Anomaly raised</th>
<th align="left">Processing halted</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">metadata_miss</td>
<td align="left">L, W</td>
<td align="left">L0A</td>
<td align="left">metadata file is missing, or one of the raw files listed in the Metadata file is missing</td>
<td align="left"/>
<td align="left">&#x2018;m&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">meteo_miss</td>
<td align="left">L, W</td>
<td align="left">L0A</td>
<td align="left">File with meteorological information is missing</td>
<td align="left"/>
<td align="left">&#x2018;s&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">lon_default</td>
<td align="left">L, W</td>
<td align="left">L0A</td>
<td align="left">Default longitude as given in the configuration file is used (missing Lon in metadata)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">lat_default</td>
<td align="left">L, W</td>
<td align="left">L0A</td>
<td align="left">same as &#x2018;lon_default&#x2019; but for latitude</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">pt_ref_invalid</td>
<td align="left">L, W</td>
<td align="left">L0A</td>
<td align="left">No effective pan/tilt is returned and the requested pan/tilt was used instead</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">bad_pointing</td>
<td align="left">L, W</td>
<td align="left">L0A</td>
<td align="left">Difference between requested and effective pan/tilt angle is <inline-formula id="inf3">
<mml:math id="m8">
<mml:mo>&#x3e;</mml:mo>
<mml:mo>&#x3d;</mml:mo>
</mml:math>
</inline-formula> 3&#xb0;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;a&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">outliers</td>
<td align="left">L, W</td>
<td align="left">L1A</td>
<td align="left">Scans that are outliers are flagged and will not be included when averaging scans</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">L0_threshold</td>
<td align="left">L, W</td>
<td align="left">L1A</td>
<td align="left">Check if any of the spectral pixels are saturated, i.e., digital number <italic>DN</italic>&#xa0;&#x2265;&#xa0;64,000</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">L0_discontinuity</td>
<td align="left">L, W</td>
<td align="left">L1A</td>
<td align="left">Check if there are missing values in the spectrum, or significant discontinuities (&#x394;<italic>DN</italic> &#x3e; 10<sup>4</sup>)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">dark_masked</td>
<td align="left">L, W</td>
<td align="left">L1A</td>
<td align="left">If any of the darks have been masked by &#x2018;outliers&#x2019;, &#x2018;L0_thresholds&#x2019;, and/or, &#x2018;L0_discontinuity&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">half_of_scans_masked</td>
<td align="left">L, W</td>
<td align="left">L0B</td>
<td align="left">Less than half of the scans for a series passed quality checks &#x2018;bad_pointing&#x2019;, &#x2018;outliers&#x2019;, &#x2018;L0_thresholds&#x2019;, and, &#x2018;L0_discontinuity&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">not_enough_dark_scans</td>
<td align="left">L, W</td>
<td align="left">L0B</td>
<td align="left">Not enough valid dark scans for this series (<italic>&#x23;</italic> valid dark scans <inline-formula id="inf4">
<mml:math id="m9">
<mml:mo>&#x3c;</mml:mo>
</mml:math>
</inline-formula> n_valid_dark from the config file)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;nld&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">not_enough_rad_scans</td>
<td align="left">L, W</td>
<td align="left">L0B</td>
<td align="left">Not enough valid radiance scans for this series (<italic>&#x23;</italic> valid radiance scans <inline-formula id="inf5">
<mml:math id="m10">
<mml:mo>&#x3c;</mml:mo>
</mml:math>
</inline-formula> n_valid_rad from the config file)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;nlu&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">not_enough_irr_scans</td>
<td align="left">L, W</td>
<td align="left">L0B</td>
<td align="left">Not enough valid irradiance scans for this series (<italic>&#x23;</italic> valid irradiance scans <inline-formula id="inf6">
<mml:math id="m11">
<mml:mo>&#x3c;</mml:mo>
</mml:math>
</inline-formula> n_valid_irr from the config file)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;ned&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">series_missing</td>
<td align="left">L, W</td>
<td align="left">L1B</td>
<td align="left">Check if there are any missing series (either not present or flagged by &#x2018;not_enough_dark_scans&#x2019;, &#x2018;not_enough_irr_scans&#x2019;, &#x2018;not_enough_rad_scans&#x2019; or &#x2018;vza_irradiance&#x2019;)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;ms&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">vza_irradiance</td>
<td align="left">L, W</td>
<td align="left">L1B</td>
<td align="left">One of the irradiance measurements did not have <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 180&#xb0; (within 2&#xb0; tolerance), so has been masked</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">no_clear_sky_irradiance</td>
<td align="left">L, W</td>
<td align="left">L1B</td>
<td align="left">More than 10% of the wavelength bands have a difference of more than 50% with the clear sky model</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">variable_irradiance</td>
<td align="left">L, W</td>
<td align="left">L1B</td>
<td align="left">More than 10% difference between start and end <italic>E</italic>
<sub>
<italic>d</italic>
</sub> at 550&#xa0;nm</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">negative_unc</td>
<td align="left">L, W</td>
<td align="left">L1B</td>
<td align="left">There are negative uncertainties</td>
<td align="left"/>
<td align="left">&#x2018;u&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">half_of_unc_too_big</td>
<td align="left">L, W</td>
<td align="left">L1B</td>
<td align="left">More than 50% of data has random error above 100% (likely corrupted or dark data)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;o&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">discontinuity_VNIR_SWIR</td>
<td align="left">L</td>
<td align="left">L1B</td>
<td align="left">Checks if the VNIR and SWIR are different by more than 25%</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;d&#x2019;</td>
<td align="left"/>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="T4" position="float">
<label>TABLE 4</label>
<caption>
<p>
<sc>Hypernets_processor</sc> flags applied during L1C processing.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Name</th>
<th align="left">Network</th>
<th align="left">Level (C)</th>
<th align="left">Description</th>
<th align="left">Flag triggered</th>
<th align="left">Anomaly raised</th>
<th align="left">Processing halted</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">check_valid_irradiance</td>
<td align="left">L, W</td>
<td align="left">L1</td>
<td align="left">Halt processing if &#x2018;variable_irradiance&#x2019; flag was triggered at previous level</td>
<td align="left"/>
<td align="left">&#x2018;nu&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">check_valid_sequence</td>
<td align="left">L, W</td>
<td align="left">L1</td>
<td align="left">Halt processing if there are no valid series (flagged by &#x2018;not_enough_dark_scans&#x2019;, &#x2018;not_enough_irr_scans&#x2019;, &#x2018;not_enough_rad_scans&#x2019; or &#x2018;vza_irradiance&#x2019;)</td>
<td align="left"/>
<td align="left">&#x2018;in&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">single_irradiance_used</td>
<td align="left">L, W</td>
<td align="left">L1</td>
<td align="left">If only one series of irradiance is used for the computation of the reflectance</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">no_clear_sky_sequence</td>
<td align="left">L, W</td>
<td align="left">L1</td>
<td align="left">If all irradiance series are flagged with the &#x2018;no_clear_sky_irradiance&#x2019; flag</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;cl&#x2019;</td>
<td align="left"/>
</tr>
<tr>
<td align="left">variable_radiance</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">More than 10% difference between start and end <italic>L</italic>
<sub>
<italic>d</italic>
</sub> at 550&#xa0;nm</td>
<td align="left"/>
<td align="left">&#x2018;nd&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">single_skyradiance_used</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If only one series of downwelling radiance is used for the computation of the reflectance</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">lu_eq_missing</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If there is no upwelling and downwelling radiance pair with similar pointing azimuth angles (within 1&#xb0; tolerance)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;l&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">rhof_angle_missing</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If there are no downwelling radiance scans at the appropriate viewing zenith angle (i.e., 180&#xb0;-<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub>) (within 1&#xb0; tolerance)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;l&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">rhof_default</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If the viewing geometry of the upwelling and downwelling radiance measurements are outside the viewing geometry range of the selected LUT for the &#x2018;rhof_option&#x2019; (e.g., &#x394;<italic>&#x3d5;</italic> &#x3e; 180&#xb0; when using the LUT from Mobley&#xa0;(1999)), a default <italic>&#x3c1;</italic>
<sub>
<italic>F</italic>
</sub> is used for the air-water interface correction factor (default: <italic>&#x3c1;</italic>
<sub>
<italic>F</italic>
</sub> &#x3d; 0.0256)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">temp_variability_irr</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If the difference in <italic>E</italic>
<sub>
<italic>d</italic>
</sub>(<italic>&#x3bb;</italic>) scans exceeds a given threshold between two neighbouring scans (default: threshold &#x3d; 25% and <italic>&#x3bb;</italic> &#x3d; 550, see also <xref ref-type="bibr" rid="B25">Ruddick et al. (2006)</xref>)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">temp_variability_rad</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If the difference in <italic>L</italic>
<sub>
<italic>d</italic>
</sub>(<italic>&#x3bb;</italic>) or <italic>L</italic>
<sub>
<italic>u</italic>
</sub>(<italic>&#x3bb;</italic>) scans exceeds a given threshold between two neighbouring scans (default: threshold &#x3d; 25% and <italic>&#x3bb;</italic> &#x3d; 550, see also <xref ref-type="bibr" rid="B25">Ruddick et al. (2006)</xref>)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">min_nbred/lu/lsky</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If the total number of scans not flagged by either &#x2018;L0_threshold&#x2019;, &#x2018;bad_pointing&#x2019; or &#x2018;outliers&#x2019;, is less than a given threshold (default: 3)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left">&#x2018;ned&#x2019; &#x2018;nlu&#x2019; &#x2018;nld&#x2019;</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
</tr>
<tr>
<td align="left">def_wind_flag</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If a default wind speed is used (by default: wind speed &#x3d; 2&#xa0;m<sup>&#x2212;1</sup>)</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
<tr>
<td align="left">simil_fail</td>
<td align="left">W</td>
<td align="left">L1</td>
<td align="left">If the quality check applied on the NIR similarity spectrum is not verified as suggested by <xref ref-type="bibr" rid="B24">Ruddick et al. (2005)</xref> (see <xref ref-type="sec" rid="s3-2">Section 3.2</xref> and Figure 4 in <xref ref-type="bibr" rid="B24">Ruddick et al. (2005)</xref>) with default values for the computation of the NIR Similarity being 780 and 870&#xa0;nm, the reference wavelength 670&#xa0;nm and the threshold 5%</td>
<td align="left">
<italic>&#x2713;</italic>
</td>
<td align="left"/>
<td align="left"/>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="s3-3-1">
<title>3.3.1 L0A: Read raw data</title>
<p>While reading in the data, there are quality checks that verify whether the metadata.txt file is appropriate and all required raw data files exist. If these checks fail, an anomaly is raised (see <xref ref-type="sec" rid="s4-3">Section 4.3</xref>) and the processing halts. There is also a quality check which checks whether the file with meteorological information exists. If it does not, an anomaly is added to the SQL database, but the processing is continued. In addition, for traceability, if the latitude and/or longitude are unknown (i.e., not included in the metadata.txt file), latitude and longitude are taken from the processor configuration file and the &#x2018;lon_default&#x2019; and/or &#x2018;lat_default&#x2019; flags are triggered. Next, the pointing accuracy of the pan/tilt is also verified. If the requested pan or tilt angle differs by more than 3&#xb0; with the effective pan or tilt angle, the &#x2018;bad_pointing&#x2019; flag is raised for the given scan.</p>
</sec>
<sec id="s3-3-2">
<title>3.3.2 L1A: Check raw data prior to calibrating</title>
<p>Before calibrating each of the individual scans in the L0 data, a number of quality checks is applied. If the spectrally integrated signal of a scan is more than 3 times the standard deviation, or more than 25% (whichever is largest) removed from the mean, it is masked and will not be used when averaging the series. This process is repeated until convergence and applied to the measured (ir)radiances and to the darks. The L0 data are also checked for saturation (digital number <italic>DN</italic>&#xa0;&#x2265;&#xa0;64,000) and for discontinuities (missing values or &#x394;<italic>DN</italic> &#x3e; 10<sup>4</sup>). A flag is also added to the L1 data if any of the dark scans have been masked by the above processes. Scans not satisfying the quality checks are flagged, but no data are removed at this stage.</p>
</sec>
<sec id="s3-3-3">
<title>3.3.3 L0B: Average valid scans</title>
<p>When averaging, only scans that passed the L1A quality checks are used. There are a few quality checks that check the number of scans being averaged is sufficient. By default, the threshold number of scans is three. If there are fewer than three scans for one of the dark, radiance or irradiance series, no reliable uncertainty can be calculated, and the series is flagged. If less than half of the radiance or irradiance scans of a series pass the L1A checks, the series is flagged, as this likely indicates something has gone wrong.</p>
</sec>
<sec id="s3-3-4">
<title>3.3.4 L1B: Check calibrated data are fit for purpose</title>
<p>After calibrating the L0B file, we check all the required measurements to form a standard sequence are included and have not been flagged by the previous &#x2018;not_enough_dark_scans&#x2019;, &#x2018;not_enough_rad_scans&#x2019; or &#x2018;not_enough_irr_scans&#x2019; flags. If any series are missing or flagged, the &#x2018;series_missing&#x2019; is added to all the series in the sequence. If there are no valid radiance or irradiance measurements, the processing is halted.</p>
<p>Next, quality checks on the irradiance measurements are applied. First, their viewing angles are checked (which must be 180&#xb0;, with a tolerance of 2&#xb0;, as irradiance measurements have to be pointing up). Next, the irradiance is compared to a simulated clear-sky model. This clear sky model is made using the libRadtran radiative transfer software package (<xref ref-type="bibr" rid="B10">Emde et al., 2016</xref>), assuming its mid-latitude summer standard atmosphere and its standard desert surface (for land sites) and its standard ocean surface (for water sites). Note that the surface does not make a big difference as it is only second-order effects that affect the downwelling irradiance used in the clear sky model. The surface is assumed to be at sea-level and the TSIS solar irradiance model is used (<xref ref-type="bibr" rid="B5">Coddington et al., 2021</xref>). Given the downwelling irradiance measures the full hemisphere, the only relevant angle is the solar zenith angle. A clear sky model is calculated using solar zenith angles of 0&#xb0;, 10&#xb0;, 20&#xb0;, 40&#xb0;, 60&#xb0;, 70&#xb0; and 80&#xb0;. These irradiance data are provided at 0.1&#xa0;nm resolution to the <sc>hypernets_processor</sc>.</p>
<p>When performing the clear sky quality check, the irradiance data are band integrated to the HYPSTAR<sup>&#xae;</sup> bands (which vary slightly from instrument to instrument), as defined by the calibration data, using the <sc>matheo</sc>
<xref ref-type="fn" rid="fn9">
<sup>8</sup>
</xref> tool. The measured HYPERNETS irradiances are then scaled (assuming cosine response) to match the nearest solar zenith angle among the provided clear sky models. In <xref ref-type="fig" rid="F11">Figure 11</xref>, we show an example of the clear sky checks applied to the irradiance. We note that the clear sky models are not always very close, as a mid-latitude summer atmosphere at sea-level was used as opposed to a more realistic site-specific model. Therefore this quality check only fails if there are significant differences of more than 50% with the clear sky model (for more than 10% of the wavelength bands). Overcast conditions consistently trigger this quality flag.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Example of the quality checks on the illumination applied in the L1B and L1C data processing for the downwelling irradiance and radiance, respectively. The top row shows the irradiance measurements not passing the &#x2018;no_clear_sky_irradiance&#x2019; check taken at Zeebrugge MOW-1 Belgium (M1BE) site on the 2023&#x2013;04&#x2013;07&#xa0;at 09:32 together with the simulated clear sky (for the same illumination geometries). Images of the sky (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 140&#xb0;) and the water (<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> &#x3d; 40&#xb0;) for this sequence are also shown. Bottom row shows (1) an example of downwelling radiance scans passing the quality criteria for constant downwelling radiance taken at WRUK on 2023&#x2013;07&#x2013;07 and the images taken with the camera during the measurements (bottom left panels), and, (2) an example of downwelling radiance scans not passing this quality check (variable_radiance flag is raised), and, the images taken with the camera during the measurements taken on 2023&#x2013;08&#x2013;10&#xa0;at WRUK (bottom right panels).</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g011.tif"/>
</fig>
<p>Then, there is a quality check verifying that the irradiance has not changed more than 10% (after correcting for differences in solar zenith angle) between the measurements at the start and end of the sequence. At this stage the resulting irradiance series are flagged and the L1B file is produced. However if this &#x2018;variable_irradiance&#x2019; check is triggered the processing will be halted at the L1C stage.</p>
<p>There are also some quality checks on the uncertainties. These check that there are no negative uncertainties and that less than 50% of the random uncertainties (i.e., less than half of the spectral channels) on radiance and irradiance have values below 100% (this indicates corrupted or dark data, e.g., measurements at night fail this check).</p>
<p>For the LANDHYPERNET network, there is an additional check that there is no strong discontinuity (larger than 25%) between the VNIR and SWIR parts of the spectrum for both radiances and irradiances.</p>
</sec>
<sec id="s3-3-5">
<title>3.3.5 L1C: Check if all required data for L1C processing is valid</title>
<p>Before interpolating the irradiances, there are a number of checks verifying the data are valid. If the &#x2018;variable_irradiance&#x2019; flag was raised in previous levels, we cannot perform reliable interpolation and the processing is halted. Next, the processing is halted if there are no valid series for either radiance or irradiance (checking &#x2018;not_enough_dark_scans&#x2019;, &#x2018;not_enough_irr_scans&#x2019;, &#x2018;not_enough_rad_scans&#x2019; or &#x2018;vza_irradiance&#x2019; flags). When all irradiance series have the &#x2018;no_clear_sky_irradiance&#x2019; flag, the processing is continued, as overcast products might still be useful to some users (available by request). A flag is added to all series to indicate this is a sequence without clear sky irradiance. No L1D/L2B data will be produced (and thus this data will not be provided publicly). When only one irradiance series is available (due to &#x2018;vza_irradiance&#x2019; or missing measurements), the processing is continued, and the same irradiance is used for every radiance series (instead of temporally interpolating), with a correction for the changing solar zenith angle throughout the sequence. A flag is added to the entire sequence to indicate only one irradiance has been used.</p>
<p>For the WATERHYPERNET network, there are a number of additional quality checks. First, similarly to the &#x2018;variable_irradiance&#x2019; flag, it checks if the downwelling sky radiance, <italic>L</italic>
<sub>
<italic>d</italic>
</sub>, at 550&#xa0;nm remains constant over the entire sequence (i.e., coefficient of variation for <italic>L</italic>
<sub>
<italic>d</italic>
</sub> (550) &#x3c; 10%). Indeed, if <italic>L</italic>
<sub>
<italic>d</italic>
</sub> varies significantly between the start and the end of the sequence, the downwelling sky radiance can not be temporally interpolated to the timestamps of the <italic>L</italic>
<sub>
<italic>u</italic>
</sub> scans and the processing is therefore halted. Note however that the threshold of 10% difference may be subject to further research in order to select the best threshold. Next, an anomaly (i.e., &#x2018;l&#x2019;) is raised and the processor is halted if the upwelling and downwelling radiance pair does not have a similar pointing azimuth angle (within 1&#xb0; accuracy), or, if the viewing geometry does not satisfy <italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> for <italic>L</italic>
<sub>
<italic>d</italic>
</sub> equals 180-<italic>&#x3b8;</italic>
<sub>
<italic>v</italic>
</sub> for <italic>L</italic>
<sub>
<italic>u</italic>
</sub> (within 1&#xb0; accuracy).</p>
<p>The processor also checks for the temporal variability within each series. Scans for <italic>E</italic>
<sub>
<italic>d</italic>
</sub>, <italic>L</italic>
<sub>
<italic>u</italic>
</sub> and <italic>L</italic>
<sub>
<italic>d</italic>
</sub> at 550&#xa0;nm, should not vary by more than a certain threshold with their neighbouring scans (default threshold is 25%). Note, those flags are not expected to be raised as scans with high temporal variability should have been removed by previous flags, i.e., &#x2018;outliers&#x2019; or &#x2018;L0_discontinuty&#x2019; flags. However, these flags are kept to ensure consistency with other common water network processing (<xref ref-type="bibr" rid="B25">Ruddick et al., 2006</xref>; <xref ref-type="bibr" rid="B32">Vansteenwegen et al., 2019</xref>).</p>
<p>The number of scans per series is important to assess the uncertainties. Hence, if the number of scans, not flagged by &#x2018;bad pointing&#x2019;, &#x2018;outliers&#x2019;, &#x2018;L0_thresholds&#x2019;, or &#x2018;L0_discontinuity&#x2019;, for <italic>E</italic>
<sub>
<italic>d</italic>
</sub>, <italic>L</italic>
<sub>
<italic>u</italic>
</sub> and <italic>L</italic>
<sub>
<italic>d</italic>
</sub> is below a given threshold, an anomaly is raised, and the processing is halted. The current default value is three which is a compromise between sequence duration and measurement replicates.</p>
<p>If the viewing geometry of the upwelling and downwelling radiance measurements are outside the viewing geometry range of the selected LUT for the &#x2018;rhof_option&#x2019;, the flag &#x2018;rhof_default&#x2019; is raised. Similarly, a &#x2018;def_wind_flag&#x2019; is used to trace spectra processed with a default wind speed value.</p>
<p>Finally, the flag &#x2018;simil_fail&#x2019; is raised if the quality check applied on the NIR similarity spectrum is not verified as suggested by <xref ref-type="bibr" rid="B24">Ruddick et al. (2005)</xref>. Note, this flag should only be considered for water types satisfying the NIR Similarity spectrum theory (i.e., clear to moderately turbid waters).</p>
</sec>
<sec id="s3-3-6">
<title>3.3.6 L2A: Calculate reflectance</title>
<p>Currently, no further quality checks are applied. For the WATERHYPERNET network, water radiance and reflectance are averaged only for the <italic>L</italic>
<sub>
<italic>u</italic>
</sub> scans which are not flagged for temporal variability, i.e., &#x2018;temp_variability_irr&#x2019; and &#x2018;temp_variability_rad&#x2019;, or &#x2018;rhof_default&#x2019;.</p>
</sec>
<sec id="s3-3-7">
<title>3.3.7 Site-specific quality checks</title>
<p>The site-specific quality checks range from angular masks, i.e., viewing geometries that are expected to be affected by shadows or part of the installation (such as a mast) in the field-of-view, to quality checks that are very specific to the surface for a given site (e.g., ensuring vegetation is measured for the Wytham Woods UK (WWUK) site, or checking abnormal high reflectance values over clear or low turbid waters). Such site-specific checks often use thresholds (determined from analysis of the first months/year of data) checking the reflectance (or ratios of reflectances, e.g., epsilon for water sites, or NDVI for vegetated sites) at specific wavelengths. Additionally, the site owners can provide specific date-time ranges to mask, e.g., because something went slightly wrong during the deployment of the instrument (e.g., alignment).</p>
<p>Another important quality check is that the surface reflectances are compared to a time-series of similar measurements (matching viewing geometry and time of day) at the same site, to identify outliers so that they can be investigated. If these outliers are found to come from invalid data, further quality checks can be added to remove such cases.</p>
<p>The resulting site-specific masks are applied on a sequence-by-sequence basis to both L2A data (resulting in L2B dataset) and to the L1B dataset (resulting in L1D dataset). The same mask is applied to both L2A and L1B so that they remain consistent with each-other.</p>
</sec>
</sec>
<sec id="s3-4">
<title>3.4 Uncertainties</title>
<sec id="s3-4-1">
<title>3.4.1 Uncertainty propagation</title>
<p>The <sc>hypernets_processor</sc> uses a Monte Carlo (MC) approach (see Supplement one to the &#x201c;Guide to the expression of uncertainty in measurement&#x201d; (<xref ref-type="bibr" rid="B17">JCGM 101:2008, 2008</xref>), to propagate uncertainties and error-correlations between product levels. This MC approach is implemented using the <sc>punpy</sc> module from the open-source CoMet toolkit. <sc>punpy</sc> is a Python software package to propagate random, structured and systematic uncertainties through a given measurement function. For further info on <sc>punpy</sc>, we refer to De Vis &#x26; Hunt (in this issue), the CoMet website<xref ref-type="fn" rid="fn10">
<sup>9</sup>
</xref> and the <sc>punpy</sc> documentation<xref ref-type="fn" rid="fn11">
<sup>10</sup>
</xref>.</p>
<p>In short, we first implement each of the processing steps as a numerical measurement function (e.g., measurement function in <xref ref-type="sec" rid="s3-2-2">Section 3.2.2</xref>), i.e., a Python function which takes the input quantities (for which we are propagating the uncertainties) as arguments and returns the measurand (for which we are calculating the uncertainties as output). <sc>punpy</sc> then generates MC samples of the input quantities (taking into account the error correlation) proportional to the joint Probability Distribution Function (PDF) of the provided input quantities. Each of these samples is then run through the numerical measurement function to produce a sample of measurands. Finally, these output samples are analysed to obtain the uncertainties and error-correlation in the measurand. The uncertainties are propagated in this way through the measurement functions of each processing step discussed in <xref ref-type="sec" rid="s3-2">Section 3.2</xref>.</p>
</sec>
<sec id="s3-4-2">
<title>3.4.2 Storing uncertainty information as digital effects tables</title>
<p>As previously mentioned, detailed error-correlation information is calculated as part of the uncertainty propagation. Storing this information in a space-efficient way is not trivial. To do this we use the <sc>obsarray</sc> module<xref ref-type="fn" rid="fn12">
<sup>11</sup>
</xref> of the CoMet toolkit. <sc>obsarray</sc> uses a concept called &#x2018;digital effects tables&#x2019; to store the error-correlation information. This concept takes the parameterised error-correlation forms defined in the Quality Assurance Framework for Earth Observation (QA4EO) project<xref ref-type="fn" rid="fn13">
<sup>12</sup>
</xref> and stores them in a standardised metadata format. By using these parameterised error-correlation forms, it is not necessary to explicitely store the error-correlation along all dimensions. Instead only the error-correlation with wavelength is explicitly stored, and error-correlation with scans/series is captured as the &#x2018;random&#x2019; or &#x2018;systematic&#x2019; error-correlation forms.</p>
<p>Another benefit to using <sc>obsarray</sc>, is that it allows for straightforward encoding of the uncertainty and error-correlation variables. The error-correlation (with respect to wavelength) does not need to be known at a very high precision. It can be saved as an 8-bit integer (leading to about a 0.01 precision in the error-correlation coefficient). Similarly, the uncertainties can be encoded using a 16-bit integer to a precision of 0.01%. Together, these encodings significantly reduce the amount of space required to store the uncertainty information.</p>
<p>Finally, having the HYPERNETS products saved as &#x2018;digital effects tables&#x2019; means they can easily be used in further uncertainty propagation where all the error-correlation information is automatically taken into account. See De Vis &#x26; Hunt (in this issue) and the CoMet toolkit examples<xref ref-type="fn" rid="fn14">
<sup>13</sup>
</xref> for further information (note there is one example specific to HYPERNETS).</p>
</sec>
<sec id="s3-4-3">
<title>3.4.3 Uncertainty contributions</title>
<p>Three uncertainty contributions are tracked throughout the processing.<list list-type="simple">
<list-item>
<p>&#x2022; Random uncertainty: Uncertainty component arising from the noise in the measurements, which does not have any error-correlation between different wavelengths or different repeated measurements (scans/series/sequences). The random uncertainties on the L0 data are taken to be the standard deviation between the scans that passed the quality checks. These uncertainties are then propagated all the way up to L2A.</p>
</list-item>
<list-item>
<p>&#x2022; Systematic independent uncertainty: Uncertainty component combining a range of different uncertainty contributions in the calibration. Only the components for which the errors are not correlated between radiance and irradiance are included. These include contributions from the uncertainties on the distance, alignment, non-linearity, wavelength, lamp (power, alignment, interpolation) and panel (calibration, alignment, interpolation, back reflectance) used during the calibration. Since the same lab calibration is used within the <sc>hypernets_processor</sc> for repeated measurements (scans/series/sequences), the errors in the systematic independent uncertainty are assumed to be fully systematic (error-correlation of one) with respect to different scans/series/sequences. With respect to wavelength, we combine the different error-correlations of the different contributions and calculate a custom error-correlation matrix between the different wavelengths. These uncertainties are included in the L1A-L2A data products.</p>
</list-item>
<list-item>
<p>&#x2022; Systematic uncertainty correlated between radiance and irradiance: Uncertainty component combining a range of different uncertainty contributions in the calibration. Only the components for which the errors are correlated between radiance and irradiance are included. This error-correlation means this component will become negligible when taking the ratio of radiance and irradiance (i.e., in the L2A reflectance products), which is why we separate it from the systematic independent uncertainty. The systematic uncertainty correlated between radiance and irradiance includes contributions from the uncertainties on the lamp (calibration, age) because the same lamp was used for the radiance and irradiance HYPSTAR calibrations in T&#x00F5;ravere. Since the same lab calibration is used within the <sc>hypernets_processor</sc> for repeated measurements (scans/series/sequences), the errors in the systematic independent uncertainty are assumed to be fully systematic (error-correlation made up of ones) with respect to different scans/series/sequences. With respect to wavelength, we combine the different error-correlations of the different contributions and calculate a custom error-correlation matrix between the different wavelengths. These uncertainties are present in the L1A-L1C products.</p>
</list-item>
</list>
</p>
<p>The temperature and spectral straylight uncertainties will be improved in future versions (<xref ref-type="sec" rid="s6">Section 6</xref>). Additionally, there is an uncertainty to be added on the HYPSTAR responsivity change since calibration (drift/ageing of spectrometer and optics). More post-deployment calibrations are necessary before we can quantify this contribution. Other uncertainty contributions not yet included in the uncertainty budget will also be considered in the future, such as uncertainties on the sensitivity to polarisation, uncertainties in the cosine response of the irradiance optics, the effects of the platform/mast on the observed upwelling radiances (e.g., <xref ref-type="bibr" rid="B31">Talone and Zibordi, 2018</xref>), or on the air-water interface reflectance corrections. Uncertainties on the Spectral Response Functions (SRF) of the radiance and irradiance sensors (particularly the difference between the two is important when calculating reflectance) should also be considered (see also <xref ref-type="bibr" rid="B26">Ruddick et al., 2023</xref>). To account for these missing uncertainty contributions, a placeholder uncertainty of 2% is added to the systematic independent uncertainty, assuming systematic spectral correlation. In the strong atmospheric absorption features (i.e., 757.5&#x2013;767.5 nm and 1,350&#x2013;1,390&#xa0;nm), an additional placeholder uncertainty of 50% (assuming random spectral error correlation) is added to account for the difference in SRF becoming dominant. Examples of the different uncertainty contributions are shown in <xref ref-type="sec" rid="s5-3">Section 5.3</xref>.</p>
</sec>
</sec>
</sec>
<sec id="s4">
<title>4 HYPERNETS products</title>
<sec id="s4-1">
<title>4.1 Product format, variables and metadata</title>
<p>The main output files produced by the <sc>hypernets_processor</sc> are in NetCDF CF-convention version 1.8 format. There are also plots, typically produced in png format, and SQL databases (see <xref ref-type="sec" rid="s4-3">Section 4.3</xref>).</p>
<p>The different NetCDF files contain a range of different variables and metadata. The main measurands, as well as their dimensions for the different levels of data files are described in <xref ref-type="table" rid="T2">Table 2</xref>. For these measurand variables, there are also uncertainty variables for each of the components described in <xref ref-type="sec" rid="s3-4">Section 3.4</xref>, as well as error-correlation variables for the systematic uncertainty components.</p>
<p>In addition to these there are coordinate variables, wavelength and series/scans, as well as a number of common variables (i.e., present in each of the data products) that provide additional details about the measurement. Acquisition time, viewing zenith and azimuth angle, solar zenith and azimuth angle are examples of common variables with series or scans as dimension. Bandwidth is also a common variable which has the wavelength dimension. Then there are a few additional variables such as the quality flag variable and variables specifying the number of valid and total VNIR scans and specifying the number of valid and total SWIR scans (for the LANDHYPERNET network).</p>
<p>There are also a number of variables that are only present in some of the data products. For example, there is some additional information in the L0A files, such as integration times, values of the accelerometers, the requested and returned pan/tilt angles. This information is propagated to the L1A and L0B files, but not beyond.</p>
<p>The quality flag field consists of 32 bits. Every bit is related to the absence or presence of a flag as described in <xref ref-type="sec" rid="s3-3">Section 3.3</xref>. The quality flag value given in each data level is the compound value of the specific bits of each raised flag. The specific flags associated with each bit are given in the quality flag field metadata. Some flags are left as placeholders for future updates. <xref ref-type="table" rid="T3">Tables 3</xref>, <xref ref-type="table" rid="T4">4</xref> present the flags used in the current version.</p>
<p>The are is also a range of metadata contained within the files. For each variable, there is metadata such as the standard name, long name, units and uncertainty components (where relevant). The uncertainty variables will have additional metadata describing their error correlation (see <xref ref-type="sec" rid="s3-4">Section 3.4</xref>). Finally, there is also a range of global metadata, describing information about how, and when the data was processed, what data files it used, information about the site (e.g., latitude and longitude) <italic>etc.</italic>
</p>
</sec>
<sec id="s4-2">
<title>4.2 File naming</title>
<p>The naming convention is intended to allow the unique identification of all product files and to summarise the contents. It is composed of a defined sequence of data fields, separated by an underscore. For the HYPERNETS measurement data, the file name is composed as follows:</p>
<p>SYSTEM NETWORK SITEID LEVEL TYPE ACQUISITIONDATETIME PROCESSINGDATETIME_version.nc.</p>
<p>where.<list list-type="simple">
<list-item>
<p>&#x2022; System: &#x201c;HYPERNETS&#x201d;</p>
</list-item>
<list-item>
<p>&#x2022; Network: Name of product network, i.e., W and L for WATERHYPERNET and LANDHYPERNET network, respectively.</p>
</list-item>
<list-item>
<p>&#x2022; Siteid: Abbreviated site names defined in <xref ref-type="table" rid="T5">Table 5</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; Level: Data processing Level as defined in <xref ref-type="table" rid="T2">Table 2</xref>. For the RGB images the level is &#x201c;IMG&#x201d;.</p>
</list-item>
<list-item>
<p>&#x2022; Type: Name of product type. Values may be abbreviated product type names defined in <xref ref-type="table" rid="T2">Table 2</xref>.</p>
</list-item>
<list-item>
<p>&#x2022; Acquisitiondatetime: Denotes the acquisition datetime (start of sequence) as UTC, formatted as &#x201c;YYYYMMDDTHHMM&#x201d;.</p>
</list-item>
<list-item>
<p>&#x2022; Processingdatetime: Denotes the processing datetime as UTC, formatted as &#x201c;YYYYMMDDTHHMM&#x201d;.</p>
</list-item>
<list-item>
<p>&#x2022; Zenith: For the RGB images only&#x2013;viewing nadir angle ranging from 0&#xb0; (looking down) to 180&#xb0; (looking up).</p>
</list-item>
<list-item>
<p>&#x2022; Azimuth: For the RGB images only and the L1C and L2A/B WATERHYPERNET network files&#x2013;relative azimuth angle between Sun and sensor ranging from 0&#xb0; to 360&#xb0;.</p>
</list-item>
<list-item>
<p>&#x2022; Version: Denotes data version number, formatted as &#x201c;vX.X&#x201d; as described in <xref ref-type="sec" rid="s2-5">Section 2.5</xref>.</p>
</list-item>
</list>
</p>
<p>For instance, for a L1B product processed by the <sc>hypernets_processor</sc> version two of WATERHYPERNET network acquired at Blankaart South at 11:30 UTC on 2023&#x2013;10&#x2013;04 and processed at 11:30 UTC on 2023&#x2013;10&#x2013;05, the filename should be:</p>
<p>HYPERNETS_W_BSBE_L1B_RAD_20231004T1130_20231005T1130_v2.0.nc,</p>
<p>and the related L2A files for standard measurement protocols taken at 90&#xb0; and 135&#xb0; &#x394;<italic>&#x3d5;</italic> should be:</p>
<p>HYPERNETS_W_BSBE_L1B_RAD_20231004T1130_20231005T1130_v2.0.nc, and,</p>
<p>HYPERNETS_W_BSBE_L2A_REF_20231004T1130_20231005T1130_135_v2.0.nc.</p>
<p>
<xref ref-type="table" rid="T5">Table 5</xref> defines the abbreviated name convention applicable to the individual HYPERNETS sites. Site name convention is a 4 letter abbreviation [LLCC] with LL standing for the location and CC for the country.</p>
<table-wrap id="T5" position="float">
<label>TABLE 5</label>
<caption>
<p>Examples of site name conventions for water and land sites.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="left">Site ID</th>
<th align="left">Site Name</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="left">BSBE</td>
<td align="left">Blankaart South, Belgium</td>
</tr>
<tr>
<td align="left">TBBE</td>
<td align="left">Thornton-C, Belgium</td>
</tr>
<tr>
<td align="left">M1BE</td>
<td align="left">Zeebrugge MOW-1, Belgium</td>
</tr>
<tr>
<td align="left">MAFR</td>
<td align="left">MAGEST station, Gironde estuary, France</td>
</tr>
<tr>
<td align="left">LPAR</td>
<td align="left">LA PLATA, La Plata River, Argentina</td>
</tr>
<tr>
<td align="left">BEFR</td>
<td align="left">Etang de BERRE, France</td>
</tr>
<tr>
<td align="left">VEIT</td>
<td align="left">Aqua Alta Oceanographic Tower, Venice, Italy</td>
</tr>
<tr>
<td align="left">WRUK</td>
<td align="left">Wraysbury Reservoir, UK</td>
</tr>
<tr>
<td align="left">ATGE</td>
<td align="left">ATB, Germany</td>
</tr>
<tr>
<td align="left">BASP</td>
<td align="left">Barrax SRIX4VEG site, Spain</td>
</tr>
<tr>
<td align="left">DEGE</td>
<td align="left">Demmin, Germany</td>
</tr>
<tr>
<td align="left">GHNA</td>
<td align="left">Gobabeb HYPERNETS, Namibia</td>
</tr>
<tr>
<td align="left">IFAR</td>
<td align="left">IFEVA, Argentina</td>
</tr>
<tr>
<td align="left">JAES</td>
<td align="left">Jarvselja, Estonia</td>
</tr>
<tr>
<td align="left">PEAN</td>
<td align="left">Princess Elisabeth Research Station, Antarctica</td>
</tr>
<tr>
<td align="left">WWUK</td>
<td align="left">Wytham Woods, UK</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4-3">
<title>4.3 SQL databases</title>
<p>The <sc>hypernets_processor</sc> produces SQL Database entries to keep track of successfully processed sequences and anomalies in the processing. These entries are combined into the following three databases, each stored in the SQLite format:<xref ref-type="fn" rid="fn15">
<sup>14</sup>
</xref>
<list list-type="simple">
<list-item>
<p>&#x2022; Archive Database: SQLite database listing all successfully processed data products, together with auxiliary information to enable queries (e.g., product_name, datetime, sequence_name, site_id, latitude, longitude, solar and viewing angles, etc.).</p>
</list-item>
<list-item>
<p>&#x2022; Anomaly Database: There are a number of anomalies to track where there are issues in the processing of the data (e.g., incomplete sequence data, instrument failure etc.). The different anomalies are defined above in <xref ref-type="table" rid="T3">Tables 3</xref>, <xref ref-type="table" rid="T4">4</xref> as well as in the <sc>hypernets_processor</sc> documentation. Each of the anomalies is identified with a letter and every occurrence is stored in the Anomaly SQLite database, together with auxiliary information to enable queries (e.g., sequence_name, site_id, datetime, viewing and solar angles, etc.). Some of these anomalies will raise an error (e.g., metadata file missing), and cause the processing of the data to be stopped. Other anomalies (e.g., clear sky check failed) indicate an issue, but do not halt the processing of the data (e.g., measurements with overcast conditions might still be useful to some users). In such cases, a quality flag is always added to the data so that users can easily identify the affected sequences without having to look in the anomaly database (see <xref ref-type="sec" rid="s3-3">Section 3.3</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Metadata Database: SQLite database of all network metadata, e.g., site info, instrument info <italic>etc.</italic> Contains all the metadata that is also present in the product files (stored in database to enable querying this information).</p>
</list-item>
</list>
</p>
<p>These databases can be used to produce processing statistics, or to find a set of sequences/anomalies that matched a certain set of criteria using SQL queries.</p>
</sec>
<sec id="s4-4">
<title>4.4 Data management and distribution</title>
<p>To follow the Findable-Accessible-Interoperable and Reusable principles (FAIR), particular attention is given to the data format and metadata, and, data accessibility. Files are in the NetCDF CF-convention version 1.8 format. Common metadata (e.g., metadata section added with each data product) follow the INSPIRE directives<xref ref-type="fn" rid="fn16">
<sup>15</sup>
</xref> in accordance with the EN ISO 19115 for the metadata elements and the Dublin Core Metadata Initiative<xref ref-type="fn" rid="fn17">
<sup>16</sup>
</xref>. Instrument, component and system metadata are bound by a unique metadata key (i.e., system_id) allowing to trace the history of the system (e.g., replacement, maintenance, system updates or instrument setup improvements).</p>
<p>The distribution of Near Real-Time (NRT, 24&#xa0;h between data acquisition and data availability) LANDHYPERNET and WATERHYPERNET data will happen through the data portals for the LANDHYPERNET (<ext-link ext-link-type="uri" xlink:href="http://www.landhypernet.org.uk">www.landhypernet.org.uk</ext-link>) and WATERHYPERNET (<ext-link ext-link-type="uri" xlink:href="http://www.waterhypernet.org">www.waterhypernet.org</ext-link>). However, during the current prototype phase, where improvement of the quality checks is still ongoing, and further site-specific quality checks are still being added by the site-owners, these data portals are restricted to consortium members. In addition, for the WATERHYPERNET network the distribution may be delayed to ensure that the NCEP/GDAS forecast data for wind speed are made available for the latest sequence (should be less than 24&#xa0;h). Data transfer from the system to the server may also delay the NRT processing (e.g., due to poor 4G connections on the field). In the near future, these data portals will be opened to the public and will become the reference source of data for HYPERNETS.</p>
<p>In the meantime, a subset of the HYPERNETS data until 2023&#x2013;04&#x2013;31 is publicly available and can be found on Zenodo (<xref ref-type="bibr" rid="B3">Brando et al., 2023</xref>; <xref ref-type="bibr" rid="B4">Brando and Vilas, 2023</xref>; <xref ref-type="bibr" rid="B6">De Vis et al., 2023</xref>; <xref ref-type="bibr" rid="B7">Dogliotti et al., 2023</xref>; <xref ref-type="bibr" rid="B8">Doxaran and Corizzi, 2023a</xref>; <xref ref-type="bibr" rid="B9">Doxaran and Corizzi, 2023b</xref>; <xref ref-type="bibr" rid="B23">Piegari et al., 2023</xref>; <xref ref-type="bibr" rid="B13">Goyens and Gammaru, 2023</xref>; <xref ref-type="bibr" rid="B20">Morris et al., 2023</xref>; <xref ref-type="bibr" rid="B28">Saberioon et al., 2023a</xref>; <xref ref-type="bibr" rid="B29">Saberioon et al., 2023b</xref>; <xref ref-type="bibr" rid="B30">Sinclair et al., 2023</xref>). The initial datasets provided here in June 2023 were produced using the v1.0 of the <sc>hypernets_processor</sc> (see <xref ref-type="sec" rid="s2-5">Section 2.5</xref>). A new version of the datasets on Zenodo will be released upon publication of this paper, using the v2.0 of the <sc>hypernets_processor</sc>.</p>
</sec>
</sec>
<sec sec-type="results" id="s5">
<title>5 Results</title>
<sec id="s5-1">
<title>5.1 LANDHYPERNET network example</title>
<p>In this section, we discuss the results of the processing of a few example land sequences. Two examples are included, one for the WWUK site on 2022&#x2013;06&#x2013;26&#xa0;at 11:40 UTC and one for the GHNA site on 2022&#x2013;08&#x2013;04&#xa0;at 10:00 UTC. <xref ref-type="fig" rid="F12">Figure 12</xref> shows a few of the plots created by the <sc>hypernets_processor</sc> for these two sequences.</p>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>
<sc>hypernets_processor</sc> plots for the WWUK site on the 2022&#x2013;06&#x2013;26&#xa0;at 11:40 (left column), GHNA site on the 2022&#x2013;08&#x2013;04&#xa0;at 10:00 (centre column) and the water site M1BE on 2022&#x2013;06&#x2013;19&#xa0;at 08:02 (right column). The top row shows the L1B radiances at different viewing zenith angles, second row L1B irradiances together with clear sky model used in quality check. The third row shows the L2A reflectances at different viewing zenith angles for land and the non similarity corrected reflectance for water. The bottom row shows the L2A reflectances at different azimuth angles for land. Note the different wavelength range along the <italic>x</italic>-axis for the land (WWUK and GHNA) and water (M1BE) sites.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g012.tif"/>
</fig>
<p>The radiance plots show a lot more variability between different viewing zenith angles for the WWUK site than for the GHNA site, which is to be expected as GHNA is expected to be especially homogeneous and near-Lambertian, whereas the WWUK is a vegetated site, which has spatial heterogeneity and significant bidirectional reflectance distribution function (BRDF) effects. When the irradiances are inspected and compared to the clear sky models, we see that for each of these cases, the clear-sky model matches the observed radiances quite well. We note that this will not always be the case, as the clear sky model does not take into account the different surface reflectance, pressure or aerosol properties for each site.</p>
<p>The bottom two rows of <xref ref-type="fig" rid="F12">Figure 12</xref> show how the surface reflectances vary with viewing zenith and azimuth angles. Typical reflectances for vegetation (WWUK) and deserts (GHNA) are found. Again, much more variation is seen between the reflectances for the different geometries for WWUK than for GHNA, as expected. There are some blips in the reflectance around the absorption features (e.g., around 760&#xa0;nm and 1,370&#xa0;nm), which are likely caused by differences in the SRF of the radiance and irradiance sensors (See also <xref ref-type="bibr" rid="B26">Ruddick et al., 2023</xref>). Uncertainties have been increased to account for these SRF differences (see <xref ref-type="sec" rid="s3-4">Sections 3.4</xref>; <xref ref-type="sec" rid="s5-3">5.3</xref>).</p>
</sec>
<sec id="s5-2">
<title>5.2 WATERHYPERNET network example</title>
<p>The last column in <xref ref-type="fig" rid="F12">Figure 12</xref> shows the plots provided by the WATERHYPERNET processor for a sequence at M1BE on 2022&#x2013;06&#x2013;19&#xa0;at 08:02 UTC. Measurements were made at a relative azimuth angle, &#x394;<italic>&#x3d5;</italic>, of 90&#xb0; and the wind speed retrieved from NCEP/GDAS was around 6.2&#xa0;m<sup>&#x2212;1</sup>. Top plot shows the averaged radiance scans for two series of <italic>L</italic>
<sub>
<italic>d</italic>
</sub> (two times three scans) and one series of <italic>L</italic>
<sub>
<italic>u</italic>
</sub> (six scans). It was a clear blue sky at M1BE on that day, and illumination during the sequence seemed to be constant. This is confirmed by the downwelling radiance (top right panel) and irradiance (second row right panel) series that are similar at the start and the end of the sequence. The bottom right panel show the final averaged reflectance product, i.e., the L2A reflectance. This figure shows that the water at M1BE was green and turbid on that day with a reflectance peak around 550&#xa0;nm and relatively high red-NIR values.</p>
</sec>
<sec id="s5-3">
<title>5.3 Uncertainty example</title>
<p>We have illustrated the typical relative uncertainties of the LANDHYPERNET and WATERHYPERNET products in <xref ref-type="fig" rid="F13">Figure 13</xref>, using the same three examples (GHNA, WWUK &#x26; M1BE) as discussed in the previous sections. For radiance (top row), the three uncertainty components are shown (one line for each series) for the three sites. The two systematic components are very similar between each of the sites, though for the water example (M1BE), the wavelength range is different compared to the land sites. This similar shape of the systematic uncertainties is expected as the instruments deployed at three sites are calibrated in the same way and thus have similar calibration uncertainties. These systematic components are also the same for each sequence for these sites, as the same calibration is applied for every sequence. The random uncertainty on the radiance is more variable, as it is dependent on illumination conditions, the nature of the target, and the stability of the instrument. Smaller relative uncertainties are found for brighter surfaces. Note the difference in wavelength range between the land and water sites with, subsequently, higher uncertainties in the blue and NIR spectral for the water site as it corresponds to the extremes of the wavelength range. The uncertainty plots for irradiance in <xref ref-type="fig" rid="F13">Figure 13</xref> are very similar than for radiance. The main difference, in particular for the land sites, is that there are fewer series (only two), and the relative random uncertainties are a bit smaller (due to higher signal in irradiance).</p>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>Example <sc>hypernets_processor</sc> plots illustrating the uncertainties (in percent) on L1B radiances (top row), L1B irradiances (second row) and L2A reflectances (third row) for the WWUK site on 2022&#x2013;06&#x2013;26&#xa0;at 11:40 (left column), GHNA site on 2022&#x2013;08&#x2013;04&#xa0;at 10:00 (centre column) and the water site M1BE on 2022&#x2013;06&#x2013;19&#xa0;at 08:02 (right column). Note the different wavelength range along the <italic>x</italic>-axis for the land (WWUK and GHNA) and water (M1BE) sites.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g013.tif"/>
</fig>
<p>For reflectance, there are only two uncertainty components as the systematic component for which the errors in radiance and irradiance are correlated become negligible. For most wavelengths, the (independent) systematic component dominates over the random uncertainties. The random uncertainties will become even smaller when averaging measurements or integrating over the SRF of a satellite sensor (e.g., De Vis et al., in this issue), as opposed to the systematic uncertainties which will remain constant. For the water site, the random uncertainty is higher compared to the systematic uncertainty in the NIR spectral range. This is due to the usually very low water signal in this spectral range.</p>
<p>Finally, <xref ref-type="fig" rid="F14">Figure 14</xref> top row shows the error-correlation between the different wavelength channels of the systematic component(s) for the L1B radiances of the GHNA example, i.e., the error-correlation matrix for the independent systematic uncertainty (left) and the correlated (between radiance and irradiance) systematic uncertainty (right). The bottom plots show the error-correlation for the L2A (independent) systematic uncertainties on reflectance for the land (left) and water (right) examples (GHNA and M1BE, respectively). For the independent systematic error correlations for land, there is a strong correlation between the wavelengths within the VNIR and SWIR sensors, but not between VNIR and SWIR. The strong wavelength correlation comes from various components, with a strong contribution from the placeholder uncertainty. As this placeholder is replaced by more realistic contributions, this error-correlation structure might become more complex. For the water example, correlations remain high at all wavelengths between the blue and red wavelengths.</p>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Example of the error-correlation matrices for the systematic independent uncertainty on GHNA L1B radiance (top left), the systematic uncertainty on GHNA L1B radiance correlated between radiance and irradiance (top right), the systematic uncertainty on GHNA L2A reflectance (bottom left) and systematic uncertainty on M1BE L2A reflectance (bottom right). Note that the M1BE error-correlation matrices have a reduced wavelength range.</p>
</caption>
<graphic xlink:href="frsen-05-1347230-g014.tif"/>
</fig>
</sec>
<sec id="s5-4">
<title>5.4 Processing statistics of H2020 HYPERNETS data</title>
<p>In this section we briefly provide some of the processing statistics for both the LANDHYPERNET and WATERHYPERNET networks until the end of April 2023. for the LANDHYPERNET, there were a total of 12,190 sequences acquired. 11,802 of these (97%) were successfully processed to L2A. The remainder had an anomaly which halted the processing (<xref ref-type="sec" rid="s3-3">Section 3.3</xref>). Stringent site specific quality checks were applied to the L2A data, and a total of 4,256 sequences were provided on the Zenodo database.</p>
<p>For the WATERHYPERNET, there were 55,514 sequences acquired. 44,412 of these (80%) were succesfully processed to L2A. Stringent site specific quality checks were applied to the L2A data, and a total of 4,931 sequences were provided on the Zenodo database. Note that the data provided on Zenodo are still a subset of the entire dataset and that the number of processed and quality checked sequences is expected to increase since the first version of the processor has been considerably improved (e.g., additional and more appropriate flagging, processing issues and bugs have been solved, accounting for different relative azimuth angles, retrieving wind speed from a different data source, i.e., NCEP/GDAS) to the current v2.0 of the <sc>hypernets_processor</sc>.<xref ref-type="fn" rid="fn18">
<sup>17</sup>
</xref>
</p>
</sec>
</sec>
<sec id="s6">
<title>6 Future work</title>
<p>There are a number of improvements that are foreseen in the near future.<list list-type="simple">
<list-item>
<p>&#x2022; There are a number of improvements that will be made to the calibration measurement function, such as the inclusion of a temperature and spectral straylight correction. As soon as lab-based characterisation of these effects is concluded, appropriate corrections will be implemented and added to the calibration measurement function (see <xref ref-type="sec" rid="s3-3-2">Section 3.3.2</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; Post-deployment calibration will be implemented in the future. This means it would be possible to do a reprocessing of the data between the calibration dates and interpolate the calibration data between the pre-deployment data and post-deployment data. Post-deployment data should be gathered prior to any cleaning being done to the instrument. Further investigations will be performed to compare results from interpolating calibrations, to calibrations done using the previous available date. This will also include assessments of the uncertainty on the calibration due to drift/ageing of the sensor and optics.</p>
</list-item>
<list-item>
<p>&#x2022; There are still missing uncertainty contributions that currently are just provided as a combined placeholder uncertainty (see <xref ref-type="sec" rid="s3-4">Section 3.4</xref>). These include uncertainties related to the temperature and spectral straylight corrections, as well as uncertainties due to the angular accuracy, polarisation, the effects of the platform/mast on the observed upwelling radiances (e.g., <xref ref-type="bibr" rid="B31">Talone and Zibordi, 2018</xref>) and the uncertainty in the retrieval of the air-water interface correction methodology. Uncertainties on the SRF will also be more precisely included. All these uncertainties need dedicated studies in order to be quantified, and will be added to the <sc>hypernets_processor</sc> as soon as they have been quantified. The placeholder uncertainty will be adjusted when new uncertainty components are added, with the aim of eventually not needing any placeholder uncertainty any more.</p>
</list-item>
<list-item>
<p>&#x2022; The current angular tolerance on the viewing zenith angle for the irradiance measurements is set to 2&#xb0;. This leads to acceptable irradiances, but improvements can still be made by correcting the irradiance measurements for any deviation from <italic>vza</italic> &#x3d; 180, taking into account the solar azimuth angles, and relative azimuth angles.</p>
</list-item>
<list-item>
<p>&#x2022; Further investigations will be performed of the potential improvements of using high resolution models in the spectral and temporal interpolation of the irradiances (See <xref ref-type="sec" rid="s3-2-4-1">Section 3.2.4.1</xref>).</p>
</list-item>
<list-item>
<p>&#x2022; In future versions of the processor we will further investigate whether using a sliding average would be useful where, for the overlapping wavelengths, a weighted (by inverse of uncertainties) mean is taken between VNIR and SWIR so that there is a smooth transition. The overlapping wavelength range spans from about 880&#x2013;1,100&#xa0;nm, with worse performance towards the ends of the wavelength range of each detector.</p>
</list-item>
<list-item>
<p>&#x2022; Work is ongoing to continuously improve the common quality checks being applied as part of the automated processing, as well as the site-specific quality checks. These improvements will include improved checks such as angular masks for shadowing effects by the mast/platform, non-linearity checks and more robust comparisons with expected reflectance.</p>
</list-item>
<list-item>
<p>&#x2022; BRDF modelling will be investigated for a number of LANDHYPERNET sites. This would allow for better outlier detection compared to the BRDF model, as well as allow interpolation over missing geometries.</p>
</list-item>
<list-item>
<p>&#x2022; The current standard protocol for measurement of water reflectance uses external sources for the retrieval of the wind speed and approximates the air&#x2013;water interface reflectance factor following <xref ref-type="bibr" rid="B18">Mobley (1999)</xref>. However, it is known that these methods present some limitations (see <xref ref-type="bibr" rid="B14">Goyens and Ruddick (2023)</xref> and references therein). In the future, new methods and models may be explored and integrated into the processor.</p>
</list-item>
<list-item>
<p>&#x2022; The LANDHYPERNET and WATERHYPERNET data portals (see also <xref ref-type="sec" rid="s4-4">Section 4.4</xref>) will be fully opened to the public.</p>
</list-item>
<list-item>
<p>&#x2022; A web interface allowing to visualise the latest incoming data, the archived data, and the anomalies and flags of the processed data, may also be build to help debugging and tracing issues in the sensor deployments and the processing.</p>
</list-item>
<list-item>
<p>&#x2022; An API will be developed to access and download the L1D and L2B HYPERNETS data through a Python tool which will also include command-line functionality. This API will use credentials for the LANDHYPERNET and WATERHYPERNET data portals.</p>
</list-item>
<list-item>
<p>&#x2022; Future version of the processor might make additional data products available to the public, such as irradiance and surface reflectance measurements during fully overcast conditions (which are not useful for satellite validation but might be of interest to other user communities), and products including additional water (e.g., turbidity) and atmospheric (e.g., aerosol optical depth) products. Any of these additional products would require significant validation before they could be made public so are not expected in the near future.</p>
</list-item>
</list>
</p>
<p>Some of these improvements will be present in the next major version (v3.0) of the <sc>hypernets_processor</sc>.<xref ref-type="fn" rid="fn19">
<sup>18</sup>
</xref> The documentation<xref ref-type="fn" rid="fn20">
<sup>19</sup>
</xref> will also be kept up to date with any modifications made to the <sc>hypernets_processor</sc>.</p>
</sec>
<sec sec-type="conclusion" id="s7">
<title>7 Conclusion</title>
<p>The <sc>hypernets_processor</sc> is a software package for ground processing of the hyperspectral HYPSTAR<sup>&#xae;</sup> data from the autonomous field sites of the LANDHYPERNET and WATERHYPERNET networks. it continuously processes new acquisitions taken by the HYPSTAR<sup>&#xae;</sup> instrument, through various processing levels, to the surface reflectance products required for validation of satellite measurements. Uniquely for this type of processing, multiple different types of uncertainty (including error-correlations) are propagated through each of the processing levels. The processor is now operationally running for a series of networked validation sites, revealing plausible results and a well constrained uncertainty budget.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s8">
<title>Data availability statement</title>
<p>The datasets generated for this study (<xref ref-type="bibr" rid="B3">Brando et al., 2023</xref>; <xref ref-type="bibr" rid="B4">Brando and Vilas, 2023</xref>; <xref ref-type="bibr" rid="B6">De Vis et al., 2023</xref>; <xref ref-type="bibr" rid="B7">Dogliotti et al., 2023</xref>; <xref ref-type="bibr" rid="B8">Doxaran and Corizzi, 2023a</xref>; <xref ref-type="bibr" rid="B9">Doxaran and Corizzi, 2023b</xref>; <xref ref-type="bibr" rid="B23">Piegari et al., 2023</xref>; <xref ref-type="bibr" rid="B13">Goyens and Gammaru, 2023</xref>; <xref ref-type="bibr" rid="B20">Morris et al., 2023</xref>; <xref ref-type="bibr" rid="B28">Saberioon et al., 2023a</xref>; <xref ref-type="bibr" rid="B29">Saberioon et al., 2023b</xref>; <xref ref-type="bibr" rid="B30">Sinclair et al., 2023</xref>) can be found on Zenodo (<ext-link ext-link-type="uri" xlink:href="https://zenodo.org/">https://zenodo.org/</ext-link>).</p>
</sec>
<sec id="s9">
<title>Author contributions</title>
<p>PD: Conceptualization, Data curation, Investigation, Methodology, Software, Validation, Visualization, Writing&#x2013;original draft. CG: Conceptualization, Data curation, Investigation, Methodology, Software, Validation, Visualization, Writing&#x2013;original draft. SH: Conceptualization, Methodology, Software, Writing&#x2013;review and editing. QV: Methodology, Writing&#x2013;review and editing. KR: Funding acquisition, Project administration, Writing&#x2013;review and editing. AB: Funding acquisition, Project administration, Writing&#x2013;review and editing.</p>
</sec>
<sec sec-type="funding-information" id="s10">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. The HYPERNETS project is funded by the European Union&#x2019;s Horizon 2020 research and innovation program under grant agreement No. 775983 and by the HYPERNET-POP project funded by the European Space Agency (contract No. 4000139081/22/I-EF). This work (and the CoMet toolkit used within) has also received funding from the ESA-funded Instrument Data quality Evaluation and Assessment Service-Quality Assurance for Earth Observation (IDEAS-QA4EO) contract funded by ESA-ESRIN (No. 4000128960/19/I-NS) and the UK&#x2019;s Department for Science, Innovation and Technology (DSIT) National Measurement System (NMS) programme.</p>
</sec>
<ack>
<p>The HYPERNETS partners, especially Tartu University and Sorbonne University are thanked for technical support and development of the HYPSTAR<sup>&#xae;</sup> instrument and system. The HYPERNETS PI (Kevin Ruddick), co-PIs (Agnieszka Bialek, Vittorio Brando, Ana Dogliotti, David Doxaran, Joel Kuusk, Mohammadmehdi Saberioon) as well as all other contributors are gratefully acknowledged for their useful inputs, discussion and comments. Paul Green and Joel Kuusk are thanked for useful comments.</p>
</ack>
<sec sec-type="COI-statement" id="s11">
<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="s12">
<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>
<fn-group>
<fn id="fn2">
<label>1</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://kosmos.ut.ee/en/laboratory">https://kosmos.ut.ee/en/laboratory</ext-link>
</p>
</fn>
<fn id="fn3">
<label>2</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://github.com/HYPERNETS/hypernets_processor">https://github.com/HYPERNETS/hypernets_processor</ext-link>
</p>
</fn>
<fn id="fn4">
<label>3</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://hypernets-processor.readthedocs.io/en/latest/content/developers/getting_started.html">https://hypernets-processor.readthedocs.io/en/latest/content/developers/getting_started.html</ext-link>
</p>
</fn>
<fn id="fn5">
<label>4</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://hypernets-processor.readthedocs.io/en/latest/content/users/adhoc.html">https://hypernets-processor.readthedocs.io/en/latest/content/users/adhoc.html</ext-link>
</p>
</fn>
<fn id="fn6">
<label>5</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://hypernets-processor.readthedocs.io/en/latest/content/users/automated.html">https://hypernets-processor.readthedocs.io/en/latest/content/users/automated.html</ext-link>
</p>
</fn>
<fn id="fn7">
<label>6</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://kosmos.ut.ee/en/laboratory">https://kosmos.ut.ee/en/laboratory</ext-link>
</p>
</fn>
<fn id="fn8">
<label>7</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://comet-maths.readthedocs.io/en/latest/content/interpolation_atbd.html">https://comet-maths.readthedocs.io/en/latest/content/interpolation_atbd.html</ext-link>
</p>
</fn>
<fn id="fn9">
<label>8</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://matheo.readthedocs.io/en/latest/">https://matheo.readthedocs.io/en/latest/</ext-link>
</p>
</fn>
<fn id="fn10">
<label>9</label>
<p>
<ext-link ext-link-type="uri" xlink:href="http://www.comet-toolkit.org">www.comet-toolkit.org</ext-link>
</p>
</fn>
<fn id="fn11">
<label>10</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://punpy.readthedocs.io/en/latest/">https://punpy.readthedocs.io/en/latest/</ext-link>
</p>
</fn>
<fn id="fn12">
<label>11</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://obsarray.readthedocs.io/en/latest/">https://obsarray.readthedocs.io/en/latest/</ext-link>
</p>
</fn>
<fn id="fn13">
<label>12</label>
<p>
<ext-link ext-link-type="uri" xlink:href="http://www.QA4EO.org">www.QA4EO.org</ext-link>
</p>
</fn>
<fn id="fn14">
<label>13</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://www.comet-toolkit.org/examples/">https://www.comet-toolkit.org/examples/</ext-link>
</p>
</fn>
<fn id="fn15">
<label>14</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://hypernets-processor.readthedocs.io/en/latest/content/atbd/products/anomalies.html">https://hypernets-processor.readthedocs.io/en/latest/content/atbd/products/anomalies.html</ext-link>
</p>
</fn>
<fn id="fn16">
<label>15</label>
<p>
<ext-link ext-link-type="uri" xlink:href="http://inspire.ec.europa.eu/glossary/Metadata">http://inspire.ec.europa.eu/glossary/Metadata</ext-link>
</p>
</fn>
<fn id="fn17">
<label>16</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://www.dublincore.org/specifications/dublin-core/dcmi-terms/">https://www.dublincore.org/specifications/dublin-core/dcmi-terms/</ext-link>
</p>
</fn>
<fn id="fn18">
<label>17</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://landhypernet.org.uk/">https://landhypernet.org.uk/</ext-link>
</p>
</fn>
<fn id="fn19">
<label>18</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://waterhypernet.org/">https://waterhypernet.org/</ext-link>
</p>
</fn>
<fn id="fn20">
<label>19</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://hypernets-processor.readthedocs.io/en/latest/">https://hypernets-processor.readthedocs.io/en/latest/</ext-link>
</p>
</fn>
</fn-group>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Alonso</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Bachmann</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Burch</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Carmona</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Cerra</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>de los Reyes</surname>
<given-names>R.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Data products, quality and validation of the dlr earth sensing imaging spectrometer (desis)</article-title>. <source>Sensors</source> <volume>19</volume>, <fpage>4471</fpage>. <pub-id pub-id-type="doi">10.3390/s19204471</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bouvet</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Thome</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Berthelot</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Bialek</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Czapla-Myers</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Fox</surname>
<given-names>N. P.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Radcalnet: a radiometric calibration network for earth observing imagers operating in the visible to shortwave infrared spectral range</article-title>. <source>Remote Sens.</source> <volume>11</volume>, <fpage>2401</fpage>. <pub-id pub-id-type="doi">10.3390/rs11202401</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Brando</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Gonzalez Vilas</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Bresciani</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Mangano</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Concha</surname>
<given-names>J. A.</given-names>
</name>
<name>
<surname>Goyens</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral water reflectance measurements for satellite validation at lake garda, GAIT site (Italy)</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8057823</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Brando</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Vilas</surname>
<given-names>L. G.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral water reflectance measurements for satellite validation from the VEIT site (Italy)</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8057531</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Coddington</surname>
<given-names>O. M.</given-names>
</name>
<name>
<surname>Richard</surname>
<given-names>E. C.</given-names>
</name>
<name>
<surname>Harber</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Pilewskie</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Woods</surname>
<given-names>T. N.</given-names>
</name>
<name>
<surname>Chance</surname>
<given-names>K.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>The tsis-1 hybrid solar reference spectrum</article-title>. <source>Geophys. Res. Lett.</source> <volume>48</volume>, <fpage>e2020GL091709</fpage>. <pub-id pub-id-type="doi">10.1029/2020GL091709</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>De Vis</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Bialek</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Sinclair</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral surface reflectance measurements for satellite validation from the Gobabeb site in Namibia</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8039303</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dogliotti</surname>
<given-names>A. I.</given-names>
</name>
<name>
<surname>Piegari</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Rubinstein</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Perna</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral water reflectance measurements for satellite validation from the LPAR site (Argentina)</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8057728</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Doxaran</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Corizzi</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2023a</year>). <article-title>Initial sample of HYPERNETS hyperspectral water reflectance measurements for satellite validation at berre coastal lagoon, BEFR site (France)</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8057777</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Doxaran</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Corizzi</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2023b</year>). <article-title>Initial sample of HCYPERNETS hyperspectral water reflectance measurements for satellite validation at the mouth of the gironde estuary, MAFR site (France)</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8057789</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Emde</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Buras-Schnell</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Kylling</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Mayer</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Gasteiger</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Hamann</surname>
<given-names>U.</given-names>
</name>
<etal/>
</person-group> (<year>2016</year>). <article-title>The libradtran software package for radiative transfer calculations (version 2.0.1)</article-title>. <source>Geosci. Model Dev.</source> <volume>9</volume>, <fpage>1647</fpage>&#x2013;<lpage>1672</lpage>. <pub-id pub-id-type="doi">10.5194/gmd-9-1647-2016</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Goryl</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Fox</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Donlon</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Castracane</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Fiducial reference measurements (frms): what are they?</article-title> <source>Remote Sens.</source> <volume>15</volume>, <fpage>5017</fpage>. <pub-id pub-id-type="doi">10.3390/rs15205017</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Goyens</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>De Vis</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Hunt</surname>
<given-names>S. E.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Automated generation of hyperspectral fiducial reference measurements of water and land surface reflectance for the hypernets networks</article-title>,&#x201d; in <conf-name>2021 IEEE International Geoscience and Remote Sensing Symposium IGARSS</conf-name>, <conf-loc>Brussels, Belgium</conf-loc>, <conf-date>11-16 July 2021</conf-date> (<publisher-name>IEEE</publisher-name>), <fpage>7920</fpage>&#x2013;<lpage>7923</lpage>. <pub-id pub-id-type="doi">10.1109/IGARSS47720.2021.9553738</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Goyens</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Gammaru</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral water reflectance measurements for satellite validation at the measurement tower MOW1, M1BE site (Belgium)</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8059881</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Goyens</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Ruddick</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Improving the standard protocol for above-water reflectance measurements: 1. estimating effective wind speed from angular variation of sunglint</article-title>. <source>Appl. Opt.</source> <volume>62</volume>, <fpage>2442</fpage>&#x2013;<lpage>2455</lpage>. <pub-id pub-id-type="doi">10.1364/AO.481787</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ishizaka</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Fujii</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Katano</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Hori</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Mine</surname>
<given-names>T.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Use of aeronet-oc for validation of sgli/gcom-c products in ariake sea, Japan</article-title>. <source>J. Oceanogr.</source> <volume>78</volume>, <fpage>291</fpage>&#x2013;<lpage>309</lpage>. <pub-id pub-id-type="doi">10.1007/s10872-022-00642-9</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<collab>JCGM 100:2008</collab> (<year>2008</year>). <article-title>Evaluation of measurement data &#x2014; Guide to the expression of uncertainty in measurement. Joint Committee for Guides in Metrology</article-title>. <comment>JCGM 100:2008</comment>.</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<collab>JCGM 101:2008</collab> (<year>2008</year>). <article-title>Evaluation of measurement data &#x2014; Supplement 1 to the &#x201c;Guide to the expression of uncertainty in measurement&#x201d; &#x2014; propagation of distributions using a Monte Carlo method. Joint Committee for Guides in Metrology</article-title>. <comment>JCGM 101:2008</comment>.</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mobley</surname>
<given-names>C. D.</given-names>
</name>
</person-group> (<year>1999</year>). <article-title>Estimation of the remote-sensing reflectance from above-surface measurements</article-title>. <source>Appl. Opt.</source> <volume>38</volume>, <fpage>7442</fpage>&#x2013;<lpage>7455</lpage>. <pub-id pub-id-type="doi">10.1364/AO.38.007442</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mobley</surname>
<given-names>C. D.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Polarized reflectance and transmittance properties of windblown sea surfaces</article-title>. <source>Appl. Opt.</source> <volume>54</volume>, <fpage>4828</fpage>&#x2013;<lpage>4849</lpage>. <pub-id pub-id-type="doi">10.1364/AO.54.004828</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Morris</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Bialek</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Sinclair</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>De Vis</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral surface reflectance measurements for satellite validation from the Wytham Woods site in the United Kingdom</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.7962557</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="book">
<collab>National Centers for Environmental Prediction, National Weather Service, NOAA, U.S. Department of Commerce</collab> (<year>2015</year>). <source>Ncep gdas/fnl 0.25 degree global tropospheric analyses and forecast grids</source>. <publisher-name>NOAA</publisher-name>.</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Niro</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Goryl</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Dransfeld</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Boccia</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Gascon</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Adams</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>European space agency (esa) calibration/validation strategy for optical land-imaging satellites and pathway towards interoperability</article-title>. <source>Remote Sens.</source> <volume>13</volume>, <fpage>3003</fpage>. <pub-id pub-id-type="doi">10.3390/rs13153003</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Piegari</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Dogliotti</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Grings</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Perna</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Rubinstein</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Cordon</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral surface reflectance measurements for satellite validation from the IFEVA site in Argentina</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8048425</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ruddick</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>De</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Ab</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Mol</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2005</year>). <article-title>Use of the near infrared similarity reflectance spectrum for the quality control of remote sensing data</article-title>. <source>Proc. SPIE - Int. Soc. Opt. Eng.</source> <volume>5885</volume>, <fpage>615152</fpage>. <pub-id pub-id-type="doi">10.1117/12.615152</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ruddick</surname>
<given-names>K. G.</given-names>
</name>
<name>
<surname>De Cauwer</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Park</surname>
<given-names>Y.-J.</given-names>
</name>
<name>
<surname>Moore</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2006</year>). <article-title>Seaborne measurements of near infrared water-leaving reflectance: the similarity spectrum for turbid waters</article-title>. <source>Limnol. Oceanogr.</source> <volume>51</volume>, <fpage>1167</fpage>&#x2013;<lpage>1179</lpage>. <pub-id pub-id-type="doi">10.4319/lo.2006.51.2.1167</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Ruddick</surname>
<given-names>K. G.</given-names>
</name>
<name>
<surname>De Vis</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Goyens</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Kuusk</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Lavigne</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Vanhellemont</surname>
<given-names>Q.</given-names>
</name>
</person-group> (<year>2023</year>). &#x201c;<article-title>Second derivative water reflectance spectra for phytoplankton species detection: origin, impact, and removal of spectral wiggles</article-title>,&#x201d; in <source>Remote sensing of the ocean, sea ice, coastal waters, and large water regions 2023</source>. Editors <person-group person-group-type="editor">
<name>
<surname>Jr.</surname>
<given-names>C. R. B.</given-names>
</name>
<name>
<surname>Neyt</surname>
<given-names>X.</given-names>
</name>
</person-group> (<publisher-name>International Society for Optics and Photonics SPIE</publisher-name>). <pub-id pub-id-type="doi">10.1117/12.2684336</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ruddick</surname>
<given-names>K. G.</given-names>
</name>
<name>
<surname>Voss</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Boss</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Castagna</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Frouin</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Gilerson</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>A review of protocols for fiducial reference measurements of water-leaving radiance for validation of satellite remote-sensing data over water</article-title>. <source>Remote Sens.</source> <volume>11</volume>, <fpage>2198</fpage>. <pub-id pub-id-type="doi">10.3390/rs11192198</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Saberioon</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Spengler</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Hohmann</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Itzerott</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2023a</year>). <article-title>Initial sample of HYPERNETS hyperspectral surface reflectance measurements for satellite validation from the agricultural land at demmin, Germany</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8048348</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Saberioon</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Spengler</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Hohmann</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Wille</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Itzerott</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2023b</year>). <article-title>Initial sample of HYPERNETS hyperspectral surface reflectance measurements for satellite validation from the bare soil at marquardt, Germany</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8044522</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sinclair</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Morris</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Bialek</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>De Vis</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Gammaru</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Goyens</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Initial sample of HYPERNETS hyperspectral surface reflectance measurements for satellite validation from the barrax site in Spain</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.5281/zenodo.8060798</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Talone</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Zibordi</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Non-linear response of a class of hyper-spectral radiometers</article-title>. <source>Metrologia</source> <volume>55</volume>, <fpage>747</fpage>&#x2013;<lpage>758</lpage>. <pub-id pub-id-type="doi">10.1088/1681-7575/aadd7f</pub-id>
</citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Vansteenwegen</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Ruddick</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Cattrijsse</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Vanhellemont</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Beck</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>The pan-and-tilt hyperspectral radiometer system (PANTHYR) for autonomous satellite validation measurements&#x2014;prototype design and testing</article-title>. <source>Remote Sens.</source> <volume>11</volume>, <fpage>1360</fpage>. <pub-id pub-id-type="doi">10.3390/rs11111360</pub-id>
</citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wilkinson</surname>
<given-names>M. D.</given-names>
</name>
<name>
<surname>Dumontier</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Aalbersberg</surname>
<given-names>I. J.</given-names>
</name>
<name>
<surname>Appleton</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Axton</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Baak</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2016</year>). <article-title>The fair guiding principles for scientific data management and stewardship</article-title>. <comment>Zendo</comment>. <pub-id pub-id-type="doi">10.1038/sdata.2016.18</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zibordi</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Holben</surname>
<given-names>B. N.</given-names>
</name>
<name>
<surname>Talone</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>D&#x2019;Alimonte</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Slutsker</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Giles</surname>
<given-names>D. M.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Advances in the ocean color component of the aerosol robotic network (aeronet-oc)</article-title>. <source>J. Atmos. Ocean. Technol.</source> <volume>38</volume>, <fpage>725</fpage>&#x2013;<lpage>746</lpage>. <pub-id pub-id-type="doi">10.1175/JTECH-D-20-0085.1</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zibordi</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Kwiatkowska</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>M&#xe9;lin</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Talone</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Cazzaniga</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Dessailly</surname>
<given-names>D.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Assessment of olci-a and olci-b radiometric data products across european seas</article-title>. <source>Remote Sens. Environ.</source> <volume>272</volume>, <fpage>112911</fpage>. <pub-id pub-id-type="doi">10.1016/j.rse.2022.112911</pub-id>
</citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zibordi</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>M&#xe9;lin</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Berthon</surname>
<given-names>J.-F.</given-names>
</name>
<name>
<surname>Holben</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Slutsker</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Giles</surname>
<given-names>D.</given-names>
</name>
<etal/>
</person-group> (<year>2009</year>). <article-title>AERONET-OC: a network for the validation of ocean color primary products</article-title>. <source>J. Atmos. Ocean. Technol.</source> <volume>26</volume>, <fpage>1634</fpage>&#x2013;<lpage>1651</lpage>. <pub-id pub-id-type="doi">10.1175/2009JTECHO654.1</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>