<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Validation | CoMet Toolkit</title><link>https://www.comet-toolkit.org/tag/validation/</link><atom:link href="https://www.comet-toolkit.org/tag/validation/index.xml" rel="self" type="application/rss+xml"/><description>Validation</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-us</language><lastBuildDate>Mon, 09 Nov 2026 00:00:00 +0000</lastBuildDate><image><url>https://www.comet-toolkit.org/media/logo_hu8565871317096902300.png</url><title>Validation</title><link>https://www.comet-toolkit.org/tag/validation/</link></image><item><title>Comparing Sentinel-2A with a RadCalNet Observations over GONA</title><link>https://www.comet-toolkit.org/meteor/examples/s2-gona/</link><pubDate>Mon, 09 Nov 2026 00:00:00 +0000</pubDate><guid>https://www.comet-toolkit.org/meteor/examples/s2-gona/</guid><description>&lt;h2 id="-background">🛰️ Background&lt;/h2>
&lt;p>How can we determine whether a satellite is measuring reflectance accurately?&lt;/p>
&lt;p>One approach is to compare satellite observations against trusted ground-based reference measurements. The &lt;strong>MetEOR Toolkit&lt;/strong> provides an end-to-end workflow for performing these comparisons while accounting for measurement uncertainty throughout the process.&lt;/p>
&lt;p>This example compares &lt;strong>Sentinel-2A Top-of-Atmosphere (TOA) reflectance&lt;/strong> with observations from the &lt;strong>RadCalNet Gobabeb site (GONA)&lt;/strong> in Namibia during a clear-sky overpass.&lt;/p>
&lt;p>📓 &lt;strong>Full worked code example notebook:&lt;/strong>&lt;/p>
&lt;p>👉 &lt;a href="https://github.com/comet-toolkit/comet_training/blob/main/meteor_sat2insitu_example.ipynb" target="_blank" rel="noopener">https://github.com/comet-toolkit/comet_training/blob/main/meteor_sat2insitu_example.ipynb&lt;/a>&lt;/p>
&lt;h2 id="-what-does-the-workflow-do">🎯 What does the workflow do?&lt;/h2>
&lt;p>The notebook demonstrates the complete satellite-to-in-situ comparison workflow:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Find satellite overpasses&lt;/strong> of a reference site.&lt;/li>
&lt;li>&lt;strong>Read satellite and reference datasets&lt;/strong> together with their uncertainties.&lt;/li>
&lt;li>&lt;strong>Prepare observations for comparison&lt;/strong> by aligning them in space, time and spectral response.&lt;/li>
&lt;li>&lt;strong>Compare measurements with propagated uncertainties.&lt;/strong>&lt;/li>
&lt;/ol>
&lt;p>While this example demonstrates the comparison of a single matchup, the workflow is designed to scale to large collections of satellite overpasses.&lt;/p>
&lt;h2 id="-which-meteor-tools-are-used">☄️ Which MetEOR tools are used?&lt;/h2>
&lt;p>This example combines several tools from the MetEOR toolkit:&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Tool&lt;/th>
&lt;th>Purpose&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;a href="https://meteor-toolkit.github.io/scrappi/" target="_blank" rel="noopener">&lt;code>scrappi&lt;/code>&lt;/a>&lt;/td>
&lt;td>Discover and download satellite and in-situ data products&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;a href="https://meteor-toolkit.github.io/eomatch/" target="_blank" rel="noopener">&lt;code>eomatch&lt;/code>&lt;/a>&lt;/td>
&lt;td>Find and catalogue satellite-to-in-situ matchups&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;a href="https://meteor-toolkit.github.io/eoio/" target="_blank" rel="noopener">&lt;code>eoio&lt;/code>&lt;/a>&lt;/td>
&lt;td>Read observations, metadata and uncertainties&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;a href="https://meteor-toolkit.github.io/meteor_maths/" target="_blank" rel="noopener">&lt;code>meteor_maths&lt;/code>&lt;/a>&lt;/td>
&lt;td>Perform spectral harmonisation and mathematical processing&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Together, these tools create a consistent and traceable comparison pipeline.&lt;/p>
&lt;h2 id="-step-1-find-a-matchup">✓ Step 1: Find a Matchup&lt;/h2>
&lt;p>The first task is identifying a suitable satellite overpass.&lt;/p>
&lt;p>Using &lt;code>eomatch&lt;/code>, MetEOR searches both satellite and reference archives to identify observations that occur at approximately the same time and location.&lt;/p>
&lt;p>For this example:&lt;/p>
&lt;ul>
&lt;li>Platform: &lt;strong>Sentinel-2A&lt;/strong>&lt;/li>
&lt;li>Reference site: &lt;strong>RadCalNet GONA&lt;/strong>&lt;/li>
&lt;li>Product type: &lt;strong>Top-of-Atmosphere Reflectance&lt;/strong>&lt;/li>
&lt;li>Conditions: &lt;strong>Clear-sky overpass with observations separated by less than 15 minutes&lt;/strong>&lt;/li>
&lt;/ul>
&lt;p>The resulting matchup catalogue contains all information required for subsequent analysis.&lt;/p>
&lt;h2 id="-step-2-read-the-measurements-and-uncertainties">✓ Step 2: Read the Measurements and Uncertainties&lt;/h2>
&lt;p>After downloading the products, &lt;code>eoio&lt;/code> reads both datasets into a common structure.&lt;/p>
&lt;p>Importantly, the measurements are not read in isolation. Their associated uncertainty information and auxiliary data is also preserved.&lt;/p>
&lt;h3 id="sentinel-2-uncertainties">Sentinel-2 Uncertainties&lt;/h3>
&lt;p>For Sentinel-2, &lt;code>eoio’s&lt;/code> s2_rut processor is applied during the read. This uses &lt;code>s2_rut_python&lt;/code>, a python port of ESA&amp;rsquo;s &lt;a href="https://github.com/senbox-org/snap-rut" target="_blank" rel="noopener">Sentinel-2 Radiometric Uncertainty Tool&lt;/a>, to generate per-pixel uncertainty estimates.”&lt;/p>
&lt;p>just to make clear it’s not a separate step run after &lt;code>eoio&lt;/code>, but is actually handled automatically within &lt;code>eoio&lt;/code>, as it’s quite a nice feature of meteor&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Systematic uncertainty&lt;/strong> affecting all pixels similarly.&lt;/li>
&lt;li>&lt;strong>Random uncertainty&lt;/strong> varying between individual pixels.&lt;/li>
&lt;/ul>
&lt;h3 id="radcalnet-uncertainties">RadCalNet Uncertainties&lt;/h3>
&lt;p>RadCalNet provides:&lt;/p>
&lt;ul>
&lt;li>Spectral reflectance measurements.&lt;/li>
&lt;li>Accompanying uncertainty estimates.&lt;/li>
&lt;/ul>
&lt;p>This allows uncertainty propagation to be maintained for both datasets throughout the comparison.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Sentinel-2 over the RadCalNet GONA site" srcset="
/meteor/examples/s2-gona/s2_true_colour_gona_hu633945574603509446.webp 400w,
/meteor/examples/s2-gona/s2_true_colour_gona_hu17947408158449998480.webp 760w,
/meteor/examples/s2-gona/s2_true_colour_gona_hu12976899602525622325.webp 1200w"
src="https://www.comet-toolkit.org/meteor/examples/s2-gona/s2_true_colour_gona_hu633945574603509446.webp"
width="468"
height="440"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h2 id="-step-3-prepare-the-datasets-for-comparison">✓ Step 3: Prepare the Datasets for Comparison&lt;/h2>
&lt;p>Before measurements can be compared, they must represent the same spectral, temporal and spatial conditions.&lt;/p>
&lt;p>MetEOR performs three key adjustments:&lt;/p>
&lt;h3 id="spatial-alignment">Spatial Alignment&lt;/h3>
&lt;p>Satellite pixels within the site&amp;rsquo;s region of interest are averaged to produce a representative site-scale observation.&lt;/p>
&lt;h3 id="spectral-alignment">Spectral Alignment&lt;/h3>
&lt;p>The RadCalNet hyperspectral measurements are integrated across the &lt;strong>Sentinel-2 spectral response functions&lt;/strong>, producing equivalent Sentinel-2 bands.&lt;/p>
&lt;h3 id="temporal-alignment">Temporal Alignment&lt;/h3>
&lt;p>RadCalNet measurements are interpolated to the exact Sentinel-2 acquisition time.&lt;/p>
&lt;p>Throughout these processing steps, uncertainty is propagated via &lt;a href="https://www.comet-toolkit.org/tools/punpy/" target="_blank" rel="noopener">&lt;code>punpy&lt;/code>&lt;/a> using the uncertainty metadata stored alongside the observations.&lt;/p>
&lt;h2 id="-step-4-compare-satellite-and-reference-observations">✓ Step 4: Compare Satellite and Reference Observations&lt;/h2>
&lt;p>Once both datasets have been spatially, spectrally, and temporally aligned, they can be compared directly.&lt;/p>
&lt;p>The figure below shows:&lt;/p>
&lt;ul>
&lt;li>The RadCalNet reflectance spectrum.&lt;/li>
&lt;li>The corresponding band-integrated RadCalNet values.&lt;/li>
&lt;li>Sentinel-2 observations for the same overpass.&lt;/li>
&lt;li>Associated uncertainty estimates.&lt;/li>
&lt;/ul>
&lt;p>
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Band-integrated comparison between Sentinel-2 and RadCalNet" srcset="
/meteor/examples/s2-gona/gona_20260515_hu7870253090560112939.webp 400w,
/meteor/examples/s2-gona/gona_20260515_hu8045137374333134710.webp 760w,
/meteor/examples/s2-gona/gona_20260515_hu17733706275965407336.webp 1200w"
src="https://www.comet-toolkit.org/meteor/examples/s2-gona/gona_20260515_hu7870253090560112939.webp"
width="760"
height="376"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h3 id="how-well-do-they-agree">How well do they agree?&lt;/h3>
&lt;p>The final step calculates the relative difference between the satellite and reference measurements for each spectral band.&lt;/p>
&lt;p>Uncertainties from the satellite and reference observations are combined to determine whether observed differences are statistically significant.&lt;/p>
&lt;p>Bands whose uncertainty intervals include zero can be considered consistent within the stated measurement uncertainties.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Relative difference between Sentinel-2 and RadCalNet observations" srcset="
/meteor/examples/s2-gona/relative_difference_hu8765311813642366727.webp 400w,
/meteor/examples/s2-gona/relative_difference_hu9930345791805238367.webp 760w,
/meteor/examples/s2-gona/relative_difference_hu10851356038328328042.webp 1200w"
src="https://www.comet-toolkit.org/meteor/examples/s2-gona/relative_difference_hu8765311813642366727.webp"
width="760"
height="317"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h2 id="-results">📂 Results&lt;/h2>
&lt;p>This example demonstrates how MetEOR can:&lt;/p>
&lt;ul>
&lt;li>Discover satellite-to-in-situ matchups,&lt;/li>
&lt;li>Read observations together with uncertainty information,&lt;/li>
&lt;li>Align measurements across space, time and spectral response,&lt;/li>
&lt;li>Propagate uncertainty through each processing stage,&lt;/li>
&lt;li>Quantify agreement between satellite and reference observations.&lt;/li>
&lt;/ul>
&lt;p>Although the notebook analyses a single Sentinel-2 overpass, the same workflow can be extended to multiple sites, sensors and time periods.&lt;/p>
&lt;h2 id="-learn-more">📚 Learn More&lt;/h2>
&lt;p>This page provides a high-level overview of the workflow.&lt;/p>
&lt;p>For the complete code, figures and detailed explanations of each processing step, see the full Jupyter Notebook:&lt;/p>
&lt;p>👉 &lt;a href="https://github.com/comet-toolkit/comet_training/blob/main/meteor_sat2insitu_example.ipynb" target="_blank" rel="noopener">https://github.com/comet-toolkit/comet_training/blob/main/meteor_sat2insitu_example.ipynb&lt;/a>&lt;/p></description></item><item><title>Satellite-to-In-Situ Radiometric Validation</title><link>https://www.comet-toolkit.org/meteor/case-studies/ceos-pvp/</link><pubDate>Mon, 09 Nov 2026 00:00:00 +0000</pubDate><guid>https://www.comet-toolkit.org/meteor/case-studies/ceos-pvp/</guid><description>&lt;h2 id="-background">📈 Background&lt;/h2>
&lt;p>The Committee on Earth Observation Satellites (CEOS) Working Group on Calibration and Validation (WGCV) coordinates international activities to assess and improve the quality of Earth observation (EO) satellite measurements.&lt;/p>
&lt;p>Key outcomes of this activity are the &lt;strong>Product Validation Platform (CEOS-PVP)&lt;/strong> and the &lt;strong>RadVAL Dashboard&lt;/strong>, which provides satellite-to-in-situ validation results and long-term radiometric stability monitoring for EO missions.&lt;/p>
&lt;p>The comparison system is implemented using the &lt;strong>NPL MetEOR Toolkit&lt;/strong>, which performs matchup processing, uncertainty propagation and statistical analysis.&lt;/p>
&lt;p>For a full overview of the CEOS PVP activity, visit:&lt;/p>
&lt;p>👉 &lt;a href="https://www.ceos-pvp.org/" target="_blank" rel="noopener">https://www.ceos-pvp.org/&lt;/a>&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="CEOS RadVAL workflow showing data collection, comparison and visualisation stages." srcset="
/meteor/case-studies/ceos-pvp/ceos-pvp_breakdown_hu3430672699925049888.webp 400w,
/meteor/case-studies/ceos-pvp/ceos-pvp_breakdown_hu1691760445472067990.webp 760w,
/meteor/case-studies/ceos-pvp/ceos-pvp_breakdown_hu6729979879208669689.webp 1200w"
src="https://www.comet-toolkit.org/meteor/case-studies/ceos-pvp/ceos-pvp_breakdown_hu3430672699925049888.webp"
width="760"
height="377"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h2 id="-meteor-processing">☄️ MetEOR Processing&lt;/h2>
&lt;p>The RadVAL workflow compares satellite observations with highly characterised reference measurements from ground-based calibration sites.&lt;/p>
&lt;p>To create comparable observations, MetEOR performs three key processing steps:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Spectral integration&lt;/strong> of hyperspectral reference measurements using the satellite spectral response function.&lt;/li>
&lt;li>&lt;strong>Temporal interpolation&lt;/strong> to the satellite overpass time.&lt;/li>
&lt;li>&lt;strong>Spatial aggregation&lt;/strong> of satellite pixels within the site&amp;rsquo;s region of interest.&lt;/li>
&lt;/ol>
&lt;p>The resulting matchup pairs allow the bias between satellite and reference observations to be evaluated for each sensor band and overpass.&lt;/p>
&lt;p>A detailed description of the methodology is available at:&lt;/p>
&lt;p>👉 &lt;a href="https://www.ceos-pvp.org/methods" target="_blank" rel="noopener">https://www.ceos-pvp.org/methods&lt;/a>&lt;/p>
&lt;h3 id="-uncertainty-analysis">✓ Uncertainty Analysis&lt;/h3>
&lt;p>Alongside the measurement comparison, MetEOR evaluates uncertainty contributions from the satellite observations, reference measurements and comparison process.&lt;/p>
&lt;p>The uncertainty structure used within the RadVAL analysis is summarised below.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Uncertainty tree diagram for multispectral satellite-to-in-situ comparisons. Adapted from the CEOS RadVAL methodology." srcset="
/meteor/case-studies/ceos-pvp/unc_tree_diagram_hu7622121031194513482.webp 400w,
/meteor/case-studies/ceos-pvp/unc_tree_diagram_hu6652445591376447511.webp 760w,
/meteor/case-studies/ceos-pvp/unc_tree_diagram_hu16340318982160063019.webp 1200w"
src="https://www.comet-toolkit.org/meteor/case-studies/ceos-pvp/unc_tree_diagram_hu7622121031194513482.webp"
width="760"
height="386"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Further details are available in the report:&lt;/p>
&lt;p>👉 &lt;em>Multispectral Satellite-to-In-Situ Comparison Uncertainty Budget&lt;/em>&lt;br>
&lt;a href="https://www.ceos-pvp.org/download/multispectral-uncertainty-report" target="_blank" rel="noopener">https://www.ceos-pvp.org/download/multispectral-uncertainty-report&lt;/a>&lt;/p>
&lt;h2 id="-results">📂 Results&lt;/h2>
&lt;p>The processed comparisons are published through the &lt;strong>RadVAL Dashboard&lt;/strong>, where time series of satellite-reference bias can be explored for different sensors, spectral bands and validation sites.&lt;/p>
&lt;p>The resulting records provide an indicator of sensor radiometric stability through time:&lt;/p>
&lt;ul>
&lt;li>Consistent bias indicates stable sensor performance.&lt;/li>
&lt;li>Gradual changes may indicate sensor drift.&lt;/li>
&lt;li>Abrupt changes can reveal calibration updates or instrument anomalies.&lt;/li>
&lt;/ul>
&lt;p>The dashboard also displays uncertainty estimates arising from the satellite measurements, reference observations and comparison methodology.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Example RadVAL timeseries output." srcset="
/meteor/case-studies/ceos-pvp/radval_timeseries_hu3397989500581534390.webp 400w,
/meteor/case-studies/ceos-pvp/radval_timeseries_hu1868335800560820151.webp 760w,
/meteor/case-studies/ceos-pvp/radval_timeseries_hu13807377376574991538.webp 1200w"
src="https://www.comet-toolkit.org/meteor/case-studies/ceos-pvp/radval_timeseries_hu3397989500581534390.webp"
width="760"
height="396"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h3 id="-explore-the-results">✓ Explore the Results&lt;/h3>
&lt;p>Interactive RadVAL products are available at:&lt;/p>
&lt;p>👉 &lt;a href="https://www.ceos-pvp.org/radval-dashboard" target="_blank" rel="noopener">https://www.ceos-pvp.org/radval-dashboard&lt;/a>&lt;/p>
&lt;h3 id="-summary">✓ Summary&lt;/h3>
&lt;p>This case study demonstrates how &lt;strong>MetEOR&lt;/strong> enables traceable, uncertainty-aware satellite-to-in-situ radiometric validation within the &lt;strong>CEOS RadVAL&lt;/strong> framework.&lt;/p>
&lt;p>By combining robust matchup processing with uncertainty analysis, the system supports the monitoring of radiometric stability across Earth observation satellite missions.****&lt;/p></description></item></channel></rss>