{"id":895,"date":"2019-07-09T14:22:07","date_gmt":"2019-07-09T13:22:07","guid":{"rendered":"http:\/\/35.193.178.118\/?page_id=217"},"modified":"2019-11-08T11:49:37","modified_gmt":"2019-11-08T11:49:37","slug":"getting-started-2","status":"publish","type":"page","link":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/","title":{"rendered":"Getting Started"},"content":{"rendered":"\r\n<h1 class=\"wp-block-heading\">Harmonisation<\/h1>\r\n\r\n\r\n\r\n<p>By Ralf Quast and Sam Hunt<\/p>\r\n\r\n\r\n\r\n<p>&nbsp;<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Getting started on the FIDUCEO method <\/h2>\r\n\r\n\r\n\r\n<p>An explicit methodology to conduct such a harmonised calibration of a series of sensors has not existed before FIDUCEO and was explored and developed by following the errors-in-variables (EIV) idea, which takes into account the uncertainty and error correlation in all sensor telemetry measurements and yields optimised calibration coefficients and an associated calibration error covariance matrix for all sensors (e.g. Newey 2001).<\/p>\r\n\r\n\r\n\r\n<p>Figure 4 broadly illustrates the methodology which was developed by the FIDUCEO project to conduct harmonisation within four steps. Step one is to collect dual-sensor match-ups where two sensors observe approximately the same Earth target at approximately the same time (e.g. simultaneous nadir overpasses). Ideally, these match-up data include all possible reference-to-sensor and sensor-to-sensor pairs. Step two is an assessment of the error covariance of all measurements included with the match-up data and an assessment of the expected match-up radiance differences and their associated uncertainties. Step three consists in a joint optimisation of sensor calibration models. The last step is the evaluation of the calibration coefficient error covariance matrix. The complete methodology is described in detail by <a href=\"https:\/\/doi.org\/10.3390\/rs11091002\">Giering <em>et al.<\/em> (2019)<\/a> and explained at a higher level in the following sections.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1244\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure04-1024x370.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 4: Methodology to conduct harmonisation<\/p>\r\n\r\n\r\n\r\n<table class=\"wp-block-advgb-table advgb-table-frontend\">\r\n<tbody>\r\n<tr>\r\n<td style=\"border-color: #000\">Newey, W.K. Flexible simulated moment estimation of nonlinear errors-in-variables models.\u00a0<em>Rev. Econ. Stat. <\/em><strong>2001<\/strong>,\u00a0<em>83<\/em>, 616\u2013627. [<a href=\"https:\/\/dx.doi.org\/10.1162\/003465301753237704\" target=\"_blank\" rel=\"noreferrer noopener\">CrossRef<\/a>]<br \/>Giering, R.; Quast, R.; Mittaz, J.P.D.; Hunt, S.E.; Harris, P.M.; Woolliams, E.R.; Merchant, C.J. A Novel Framework to Harmonise Satellite Data Series for Climate Applications.\u00a0<em>Remote Sens.<\/em>\u00a0<strong>2019<\/strong>,\u00a0<em>11<\/em>, 1002. [<a href=\"https:\/\/doi.org\/10.3390\/rs11091002\" target=\"_blank\" rel=\"noreferrer noopener\">CrossRef<\/a>]<br \/>Harris, P.M.; Hunt, S.E.; Quast, R.; Giering, R.; Mittaz, J.P.D.; Woolliams, E.R.; Dilo, A.; Cox, M. Solving large structured non-linear least-squares problems with an application in Earth observation. <em>In preparation<\/em>.<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Step one: how to collect match-up data?<\/h2>\r\n\r\n\r\n\r\n<p>In FIDUCEO, we call a match-up a \u201cpoint\u201d measurement that is matched by another \u201cpoint\u201d measurement sufficiently close in space and time \u2013 excluding the trivial case of neighbouring measurements from the same acquisition. In other words, we require match-up pixels that cover the same place on Earth acquired at almost the same time and with similar viewing geometries (Figure 5).<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1245\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure05.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 5: Concept of a dual-sensor match-up.<\/p>\r\n\r\n\r\n\r\n<p>In most cases, we extend this definition to also include the neighbouring pixels of a sensor acquisition, covering a symmetrical area of several pixels around the match-up point, which allows us to check homogeneity and detect cloud shadows or other problematic characteristics. Match-up data will include calibrated measurements for the reference sensor and raw telemetry data for as many as possible other (i.e. non-reference) sensors. It is important to have a set of match-up data which represents the relevant aspects of Earth sufficiently well.<\/p>\r\n\r\n\r\n\r\n<p>You will want to compare acquisitions of different spaceborne sensors which are spatially and temporally close so that you may assume a similar atmospheric condition. You will also want to compare satellite sensor data with <em>in situ<\/em> measurements, like AERONET data, in order to have measurements close to the measured entity. In some cases, we have also considered indirect match-ups between two sensors, with a geo-stationary sensor or <em>in situ<\/em> measurements used to identify stable Earth targets.<\/p>\r\n\r\n\r\n\r\n<p>FIDUCEO has developed a variable multi-sensor match-up software (MMS) that allows us to run various match-up tasks using many different satellite- and ground-based instruments. The framework comprises an open design with various plugin points to allow for easy algorithmic updates or adding new sensor data.<\/p>\r\n\r\n\r\n\r\n<table class=\"wp-block-advgb-table advgb-table-frontend\">\r\n<tbody>\r\n<tr>\r\n<td>To browse and download the code for the multi-sensor match-up software take a look at <a href=\"https:\/\/github.com\/FIDUCEO\/MMS\">FIDUCEO\u2019s MMS repositor on GitHub<\/a>.<br \/><br \/>T. Block, S. Embacher, C. J. Merchant, and C. Donlon, \u201cHigh Performance Software Framework for the Calculation of Satellite-to-Satellite Data Matchups (MMS version 1.2),\u201d Geosci. Model Dev. Discuss., vol. 11, no. 6, pp. 1\u201315, Jun. 2017.<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Step two: how to assess the match-up error covariance structure?<\/h2>\r\n\r\n\r\n\r\n<p>After having collected a representative set of match-up data, you will have to assess the radiance difference <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{orange}{L^i} \u2013 \\textcolor{red}{L^j} = \\textcolor{purple}{K^{ij}}<\/span> expected due to different sensor spectral response functions and the uncertainty of this expected difference. You will also have to assess the uncertainty of the <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{orange}{L^i} \u2013 \\textcolor{red}{L^j} = \\textcolor{purple}{K^{ij}}<\/span> due to matchup and representativeness errors. Doing this requires expert knowledge on the satellite instruments involved and on radiative transfer modelling.<\/p>\r\n\r\n\r\n\r\n<p>To explain how to assess the error covariance structure of the satellite measurements, either calibrated radiance or sensor telemetry, let us have a closer look at the mathematical representation of a matchup dataset. We arrange each dataset in form of a matrix, where the columns correspond to different variables and the rows correspond to different times of measurement of these variables.<\/p>\r\n\r\n\r\n\r\n<p>For reference-to-sensor match-up datasets, the first column contains the calibrated radiance of your reference sensor (yellow column in Figure 6) while the other columns contain the telemetry data of a non-reference sensor (red columns). Each column represents a different variable.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1246\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure06-1024x583.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 6: Mathematical representation of a reference-to-sensor match-up dataset<\/p>\r\n\r\n\r\n\r\n<p>For sensor-to-sensor match-up datasets you have several columns of sensor telemetry data instead of a single column of calibrated radiance (Figure 7).<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1247\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure07-1024x413.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 7: Mathematical representation of a sensor-to-sensor match-up dataset<\/p>\r\n\r\n\r\n\r\n<p>Writing matchup data in form of a matrix is helpful when we consider how the errors of the measurements are correlated. This is essential, because considering the error covariance of all measurements is the main difference when comparing FIDUCEO harmonisation to less rigorous calibration methods.<\/p>\r\n\r\n\r\n\r\n<p>In FIDUCEO, we have minimised the error correlation between <em>different<\/em> variables (i.e. inter-column error correlation) by design of our calibration models thus we need to consider error correlation among the measurements of the <em>same<\/em> variable over time only (i.e. intra-column error correlation). Then the error covariance matrix <span class=\"katex-eq\" data-katex-display=\"false\">\\boldsymbol{S}(\\textcolor{orange}{\\boldsymbol{q}})<\/span> of any column <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{orange}{\\boldsymbol{q}}<\/span> in a matchup dataset is of one of three genuine types or a combination thereof (Figure 8).<\/p>\r\n\r\n\r\n\r\n<ol class=\"wp-block-list\">\r\n<li>Independent random \u2013 the errors of the measurements are not correlated because the measurements themselves are all independent. We have error variances only.<\/li>\r\n<li>Common random &#8211; the errors of the measurements are fully correlated because all measurements are susceptible to the same error.<\/li>\r\n<li>Structured random \u2013 the measurements in a column are the result of some averaging procedure, where the original measurements (which are averaged) are all independent.<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1248\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure08-1024x839.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 8: Schematic illustration of error covariance matrices for genuine error correlation types.<\/p>\r\n\r\n\r\n\r\n<p>FIDUCEO has specified a match-up dataset format to represent these error covariance structures and has developed software tools to aid users in preparing correctly formatted data. The tools are included with the <a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\">harmonisation software on GitHub<\/a>.<\/p>\r\n\r\n\r\n\r\n<table class=\"wp-block-advgb-table advgb-table-frontend\">\r\n<tbody>\r\n<tr>\r\n<td>To browse and download the code for the harmonisation software take a look at FIDUCEO\u2019s <a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\">Harmonisation repository on GitHub<\/a>.<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Step three: how to optimise the sensor calibration models?<\/h2>\r\n\r\n\r\n\r\n<p>Knowing the error covariances of all your matchup data, the mathematical formulation of the harmonisation problem is relatively straightforward. Let us assume we optimise the calibration model we have used for the AVHRR series of sensors, which is<\/p>\r\n\r\n\r\n\r\n<p><span class=\"wp-block-katex-display-block katex-eq\" data-katex-display=\"true\">\\textcolor{blue}{L}(\\textcolor{red}{\\boldsymbol{x}},\\textcolor{blue}{\\boldsymbol{\\alpha}}) = \\textcolor{blue}{\\alpha_1} + (\\epsilon + \\textcolor{blue}{\\alpha_2}) \\textcolor{red}{L_\\mathrm{ICT}} \\frac{\\textcolor{red}{C_\\mathrm{E}} \u2013 \\textcolor{red}{\\bar{C}_\\mathrm{S}}}{\\textcolor{red}{\\bar{C}_\\mathrm{ICT}} \u2013 \\textcolor{red}{\\bar{C}_\\mathrm{S}}} + \\textcolor{blue}{\\alpha_3} (\\textcolor{red}{C_\\mathrm{E}} \u2013 \\textcolor{red}{\\bar{C}_\\mathrm{S}}) (\\textcolor{red}{\\bar{C}_\\mathrm{ICT}} \u2013 \\textcolor{red}{\\bar{C}_\\mathrm{S}}) + \\textcolor{blue}{\\alpha_4} \\textcolor{red}{T_\\mathrm{env}} \\tag{Eq.4}<\/span><\/p>\r\n\r\n\r\n\r\n<p>where<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{red}{\\boldsymbol{x}}=\\textcolor{red}{ (\\bar{C}_\\mathrm{S}}, \\textcolor{red} {\\bar{C}_\\mathrm{ICT}}, \\textcolor{red}{C_\\mathrm{E}}, \\textcolor{red}{L_\\mathrm{ICT}}, \\textcolor{red}{T_\\mathrm{env}})<\/span> are a single record of sensor telemetry data<\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\"> \\textcolor{blue}{\\boldsymbol{\\alpha}}=( \\textcolor{blue}{x_1}, \\textcolor{blue}{x_2}, \\textcolor{blue}{x_3}, \\textcolor{blue} {x_4})<\/span> are the sensor calibration coefficients<\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\"> \\textcolor{red}{ \\bar{C}_\\mathrm{S}}<\/span> denotes the space counts averaged over 51 subsequent scans<\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\"> \\textcolor{red}{ \\bar{C}_\\mathrm{ICT}}<\/span> denotes the counts obtained from the internal calibration target (ICT) averaged over 51 subsequent scans<\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\"> \\textcolor{red} C_\\mathrm{E}<\/span> denotes the Earth count<\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\"> \\textcolor{red} L_\\mathrm{ICT}<\/span> is the radiance obtained from the internal calibration target (this number has been precomputed from the temperature of the ICT as measured by four Platinum Resistance Thermometers and an error correction model)<\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{red}{ T_\\mathrm{env}}<\/span> is the mean environmental temperature within the duration of a satellite orbit (this number has been precomputed from all ICT temperature measurements)<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>Harmonisation then computes the <span class=\"katex-eq\" data-katex-display=\"false\">K<\/span>-residuals, which are the differences between the radiance differences observed and the radiance differences expected<\/p>\r\n\r\n\r\n\r\n<p><span class=\"wp-block-katex-display-block katex-eq\" data-katex-display=\"true\">\\tag{Eq. 5} \\textcolor{green}{\\boldsymbol{r}^{ij}} = \\textcolor{blue}{\\boldsymbol{L}^i}(\\textcolor{orange}{\\boldsymbol{X}^{ij}},\\textcolor{blue}{\\boldsymbol{\\alpha}^i}) \u2013 \\textcolor{blue}{\\boldsymbol{L}^j}(\\textcolor{red}{\\boldsymbol{X}^{ji}},\\textcolor{blue}{\\boldsymbol{\\alpha}^j}) \u2013 \\textcolor{purple}{\\boldsymbol{K}^{ij}}<\/span><\/p>\r\n\r\n\r\n\r\n<p>where<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{gren}{\\boldsymbol{r}^{ij}}<\/span> are the <span class=\"katex-eq\" data-katex-display=\"false\"> K<\/span> -residuals for sensor <span class=\"katex-eq\" data-katex-display=\"false\">i<\/span> and sensor <span class=\"katex-eq\" data-katex-display=\"false\"> j <\/span><\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{blue}{\\boldsymbol{L}^i}<\/span> and <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{blue}{ \\boldsymbol{L}^j}<\/span> are the calibration models for sensor <span class=\"katex-eq\" data-katex-display=\"false\">i<\/span> and sensor <span class=\"katex-eq\" data-katex-display=\"false\"> j <\/span>. For the reference sensor this is the identity function, i.e. <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{blue}{ \\boldsymbol{L}^1} \\equiv \\operatorname{id}<\/span><\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{blue}{\\boldsymbol{\\alpha}^i}<\/span> and <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{blue} {\\boldsymbol{\\alpha}^j}<\/span> are the calibration coefficients for sensor <span class=\"katex-eq\" data-katex-display=\"false\">i<\/span> and sensor <span class=\"katex-eq\" data-katex-display=\"false\"> j <\/span>. For the reference sensor this is an empty tuple, i.e. <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{blue}{ \\boldsymbol{\\alpha}^1} = ()<\/span><\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{orange}{ \\boldsymbol{X}^{ij}}<\/span> are the telemetry data from sensor <span class=\"katex-eq\" data-katex-display=\"false\">i<\/span> when matched with sensor <span class=\"katex-eq\" data-katex-display=\"false\"> j <\/span> . For the reference sensor this is the calibrated radiance, i.e. <span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{orange}{ \\boldsymbol{X}^{ij}} = \\textcolor{orange}{ \\boldsymbol{L}^{1j}}<\/span><\/li>\r\n<li><span class=\"katex-eq\" data-katex-display=\"false\">\\textcolor{red}{ \\boldsymbol{X}^{ji}}<\/span> are the telemetry data from sensor <span class=\"katex-eq\" data-katex-display=\"false\">j<\/span> when matched with sensor <span class=\"katex-eq\" data-katex-display=\"false\"> i <\/span><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>FIDUCEO has implemented two slightly different but eventually equivalent variants to achieve an optimal calibration, each of which penalises <span class=\"katex-eq\" data-katex-display=\"false\"> K <\/span> -residuals that are large in comparison to their expected uncertainty. Figure 9 illustrates the cost functions associated with these two variants.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1249\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure09-1024x422.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 9: Cost functions for errors-in-variables and marginalised errors-in-variables<\/p>\r\n\r\n\r\n\r\n<p>The errors-in-variables (EIV) variant uses a cost function, which is a function of (all) sensor calibration coefficients <span class=\"katex-eq\" data-katex-display=\"false\">\\boldsymbol{\\alpha}<\/span> and corrections <span class=\"katex-eq\" data-katex-display=\"false\">\\boldsymbol{\\xi}<\/span> to (all) sensor telemetry measurements <span class=\"katex-eq\" data-katex-display=\"false\">\\boldsymbol{X}<\/span>.<\/p>\r\n\r\n\r\n\r\n<p>Sensor telemetry data may include several 10 to several 100 million individual measurements and optimising a corresponding number of corrections results in an enormous and highly covariant optimisation problem (Harris <em>et al.<\/em>, in preparation). To reduce the complexity of the optimisation from 100 million to a few 10 parameters, FIDUCEO has developed a marginalised errors-in-variables (MEIV) variant, which transforms the error covariance of sensor telemetry measurements into radiance-equivalent form (Figure 10) and optimises sensor calibration parameters only, without compromising the rigour treatment of measurement uncertainties (<a href=\"https:\/\/doi.org\/10.3390\/rs11091002\">Giering <em>et al.<\/em> 2019<\/a>).<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1250\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure10-1024x205.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 10: Marginalisation \u2013 the error covariance of sensor telemetry measurements is transformed into radiance equivalent form<\/p>\r\n\r\n\r\n\r\n<p>Note that for each sensor pair <span class=\"katex-eq\" data-katex-display=\"false\"> ij<\/span> the radiance-equivalent error covariance matrix is a sum of three components: the error variance matrix for <span class=\"katex-eq\" data-katex-display=\"false\">K<\/span> plus the radiance error covariance matrix of the \u2018first\u2019 sensor plus the radiance error covariance matrix of the \u2018second\u2019 sensor. To start with something simple, you may skip the telemetry variables that do have correlated errors or omit the two radiance error covariance matrices entirely. The marginalised errors-invariables variant will then be the same as weighted least squares. With that you will minimize jumps and trends, but your uncertainty budget will not be correct, and you will want to improve metrological soundness as your calibration project evolves.<\/p>\r\n\r\n\r\n\r\n<table class=\"wp-block-advgb-table advgb-table-frontend\">\r\n<tbody>\r\n<tr>\r\n<td>FIDUCEO has prototyped the errors-in-variables (EIV) variant of harmonisation and made it publicly available on the projects\u2019 <a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\">Harmonisation repository on GitHub<\/a>.<br \/><br \/>The marginalised errors-in-variables (MEIV) variant is proprietary software. FIDUCEO\u2019s <a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\">Harmonisation repository on GitHub<\/a> contains some free code to demonstrate the logic but does not include computational parts. Please contact <a href=\"http:\/\/www.fastopt.de\/\">FastOpt GmbH<\/a> for further information.<br \/><br \/>The MEIV variant uses <a href=\"http:\/\/www.fastopt.de\/products\/taf\/taf.shtml\">Transformation of Algorithms in Fortran (TAF)<\/a> to generate code for algorithmic evaluation of partial derivatives. Algorithmic differentiation solves the problem of accurate and fast computation of partial derivatives for model optimisation and propagation of uncertainties. \u00a0<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Step four: how to compute the calibration error covariance matrix?<\/h2>\r\n\r\n\r\n\r\n<p>Having optimised your sensor calibration models, you will want to compute the error covariance matrix associated with your optimised calibration parameters. You may compute this matrix by means of Monte Carlo methods like the EIV variant (Harris <em>et al.<\/em>, in preparation) or analytically like the MEIV variant (<a href=\"https:\/\/doi.org\/10.3390\/rs11091002\">Giering et al., 2019<\/a>).<\/p>\r\n\r\n\r\n\r\n<p>Figure\u00a011 illustrates an example how the calibration error correlation matrix (the normalised form of your error covariance matrix) may look like. Each matrix element represents how the error of one calibration coefficient is correlated with the error of another calibration coefficient. Here we have nine different sensors and four calibration coefficients for each sensor, which makes the matrix appear like a <span class=\"katex-eq\" data-katex-display=\"false\">9\\times 9<\/span> chequerboard. Each square on this chequerboard comprises <span class=\"katex-eq\" data-katex-display=\"false\">4\\times 4<\/span> elements. Squares along the diagonal of the chequerboard represent intra-sensor calibration error correlations while off-diagonal squares represent inter-sensor calibration error correlations.<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" class=\"wp-image-1251\" src=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure11-1024x880.png\" alt=\"\" \/><\/figure>\r\n\r\n\r\n\r\n<p>Figure 11: Calibration error correlation matrix for the harmonisation of the AVHRR series of sensors<\/p>\r\n\r\n\r\n\r\n<p>You will need the calibration error covariance matrix to propagate the uncertainty of the harmonisation to the calibrated radiance of your FCDR, where it contributes to the common random part of the uncertainty budget.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Harmonisation Tools<\/h2>\r\n\r\n\r\n\r\n<p>As has been mentioned throughout the above, during the development of the harmonisation framework a number of software tools have been developed by the project. The following are now available for you to download and use.<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\">Multisensor Matchup System<\/h3>\r\n\r\n\r\n\r\n<p>This software generates satellite-to-satellite or satellite-to-in-situ match up datasets. This may be extended to work for currently unsupported sensors of your interest. Find this software on the <a href=\"https:\/\/github.com\/FIDUCEO\/MMS\">MMS repository<\/a> on GitHub.<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\">Harmonisation Python Library<\/h3>\r\n\r\n\r\n\r\n<p>This python library was developed to perform FCDR harmonisation using the EIV approach. It has useful functionality, such as, harmonisation input and output file readers and writers and plotting routines. This package also has a prototype version of harmonisation EIV software, that is currently in state of development. Find this in the <a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\/tree\/master\/harmonisation_eiv\">Harmonisation repository on GitHub<\/a>.<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\">MEIV Demonstrator Code<\/h3>\r\n\r\n\r\n\r\n<p><a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\/tree\/master\/harmonisation_meiv_demo\">Harmonisation repository on GitHub<\/a> also contains some free code to demonstrate the logic of the harmonisation MEIV approach, however, it does not include computational parts. Please contact <a href=\"http:\/\/www.fastopt.de\/\">FastOpt GmbH<\/a> for further information.<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\">Harmonisation Tools<\/h3>\r\n\r\n\r\n\r\n<p>In the <a href=\"https:\/\/github.com\/FIDUCEO\/Harmonisation\/tree\/master\/tools\">Harmonisation repository on GitHub<\/a> there are also a set of software utilities developed during the project to assist with harmonisation. Most of these are quite esoteric to the practicalities of the project, but some may be of general use. For example, there is a harmonisation input file checker that checks the file you create meets the specification, or, there are functions to help you generate typical W matrices.<\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>Harmonisation By Ralf Quast and Sam Hunt &nbsp; Getting started on the FIDUCEO method An explicit methodology to conduct such a harmonised calibration of a series of sensors has not&#8230;<a class=\"read-more\" href=\"&#104;&#116;&#116;&#112;&#115;&#58;&#47;&#47;&#114;&#101;&#115;&#101;&#97;&#114;&#99;&#104;&#46;&#114;&#101;&#97;&#100;&#105;&#110;&#103;&#46;&#97;&#99;&#46;&#117;&#107;&#47;&#102;&#105;&#100;&#117;&#99;&#101;&#111;&#47;&#102;&#99;&#100;&#114;&#115;&#47;&#104;&#97;&#114;&#109;&#111;&#110;&#105;&#115;&#97;&#116;&#105;&#111;&#110;&#47;&#103;&#101;&#116;&#116;&#105;&#110;&#103;&#45;&#115;&#116;&#97;&#114;&#116;&#101;&#100;&#45;&#50;&#47;\">Read More ><\/a><\/p>\n","protected":false},"author":219,"featured_media":0,"parent":886,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"__cvm_playback_settings":[],"__cvm_video_id":"","footnotes":""},"coauthors":[6],"class_list":["post-895","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.8.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Getting Started - Fiduceo<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting Started - Fiduceo\" \/>\n<meta property=\"og:description\" content=\"Harmonisation By Ralf Quast and Sam Hunt &nbsp; Getting started on the FIDUCEO method An explicit methodology to conduct such a harmonised calibration of a series of sensors has not...Read More &gt;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Fiduceo\" \/>\n<meta property=\"article:modified_time\" content=\"2019-11-08T11:49:37+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure04-1024x370.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"13 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/\",\"url\":\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/\",\"name\":\"Getting Started - Fiduceo\",\"isPartOf\":{\"@id\":\"https:\/\/research.reading.ac.uk\/fiduceo\/#website\"},\"datePublished\":\"2019-07-09T13:22:07+00:00\",\"dateModified\":\"2019-11-08T11:49:37+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/research.reading.ac.uk\/fiduceo\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Creating FCDRs\",\"item\":\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Harmonisation\",\"item\":\"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Getting Started\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/research.reading.ac.uk\/fiduceo\/#website\",\"url\":\"https:\/\/research.reading.ac.uk\/fiduceo\/\",\"name\":\"Fiduceo\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/research.reading.ac.uk\/fiduceo\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Getting Started - Fiduceo","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/","og_locale":"en_GB","og_type":"article","og_title":"Getting Started - Fiduceo","og_description":"Harmonisation By Ralf Quast and Sam Hunt &nbsp; Getting started on the FIDUCEO method An explicit methodology to conduct such a harmonised calibration of a series of sensors has not...Read More >","og_url":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/","og_site_name":"Fiduceo","article_modified_time":"2019-11-08T11:49:37+00:00","og_image":[{"url":"http:\/\/35.193.178.118\/wp-content\/uploads\/2019\/08\/figure04-1024x370.png"}],"twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"13 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/","url":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/","name":"Getting Started - Fiduceo","isPartOf":{"@id":"https:\/\/research.reading.ac.uk\/fiduceo\/#website"},"datePublished":"2019-07-09T13:22:07+00:00","dateModified":"2019-11-08T11:49:37+00:00","breadcrumb":{"@id":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/getting-started-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/research.reading.ac.uk\/fiduceo\/"},{"@type":"ListItem","position":2,"name":"Creating FCDRs","item":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/"},{"@type":"ListItem","position":3,"name":"Harmonisation","item":"https:\/\/research.reading.ac.uk\/fiduceo\/fcdrs\/harmonisation\/"},{"@type":"ListItem","position":4,"name":"Getting Started"}]},{"@type":"WebSite","@id":"https:\/\/research.reading.ac.uk\/fiduceo\/#website","url":"https:\/\/research.reading.ac.uk\/fiduceo\/","name":"Fiduceo","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/research.reading.ac.uk\/fiduceo\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"}]}},"_links":{"self":[{"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/pages\/895","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/users\/219"}],"replies":[{"embeddable":true,"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/comments?post=895"}],"version-history":[{"count":4,"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/pages\/895\/revisions"}],"predecessor-version":[{"id":1511,"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/pages\/895\/revisions\/1511"}],"up":[{"embeddable":true,"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/pages\/886"}],"wp:attachment":[{"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/media?parent=895"}],"wp:term":[{"taxonomy":"author","embeddable":true,"href":"https:\/\/research.reading.ac.uk\/fiduceo\/wp-json\/wp\/v2\/coauthors?post=895"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}