Skip to content

WorldView-3

WorldView-3 L1B panchromatic and multispectral EO data products are calibrated using the Optical Products Calibration (OPT-Calib) service.

Image-001

Figure 1 - True Color composite derived from Worldview-3 L1B calibrated data acquired on 23/06/2023 over Spera District, Khost Province, Afghanistan. Credits: DigitalGlobe, USGS.

The process applied is the same for PAN and MS acquisitions.

Input

The input is an ingested WorldView-3, find details here.

DN to Radiance

The WorldView-3 product handbook1 provides the formula below to convert the DN into radiance:

\[ L_{(b)} = gain_{(b)} \times DN_{(b)} \times { abscalfactor \over effectivebandwith } + offset_{(b)} \]

Where:

\(gain_{(b)}\) and \(offset_{(b)}\) are values taken from Table 1:

Common band name Gain Offset
pan 0.950 -3.629
coastal 0.905 -8.604
blue 0.940 -5.809
green 0.938 -4.996
yellow 0.962 -3.649
red 0.964 -3.021
rededge 1.000 -4.521
nir08 0.961 -5.522
nir09 0.978 -2.992
Table 1 - Gain and offset for the Worldview-3 DN to radiance conversion.

And \(abscalfactor\) and \(effectivebandwith\) are extracted from the acquisition metadata.

The conversion from \(DN\) (for Digital Numbers) to spectral radiance (or ‘TOA radiance’) \(L \) is done with the formula below:

\[ L_\lambda = gain \times DN + offset \]

As such, the calibration uses:

\[ gain = gain_{(b)} \times { abscalfactor \over effectivebandwith } \]

and

\[ offset = offset_{(b)} \]

\(L \) in \(W/m^2/steradians/micrometers\) with \(b\) being a band ID.

Radiance to Reflectance

To convert TOA radiance to TOA reflectance, the following formula is used :

\[ R(b) = { {\pi \times L(b) \times d \times d} \over {ESUN(b) \times cos(θ)} } \]

where :

  • \(L(b)\) is the spectral radiance for band b

  • \(pi\) is the famous mathematical constant

  • \(d\) is the earth-sun distance (in astronomical units) and depends on the acquisition’s day and month

  • \(ESUN(b)\) is the mean TOA solar irradiance (or solar illumination) in \(W/m^2/micrometers\)

  • \(θ\) is the solar zenith angle in degrees.

The conversion from elevation angle to solar zenith angle \(θ\) (in degrees) is:

\[ θ = { 90 - elevation_angle } \]

The values for the \(ESUN(b)\) are provided in Table 2:

Common band name Thuillier 2003
pan 1574.41
coastal 1757.89
blue 2004.61
green 1830.18
yellow 1712.07
red 1535.33
rededge 1348.08
nir08 1055.94
nir09 858.77
Table 2 - ESUN value employed in the conversion of radiance to reflectance for Worldview-3 products.

Output

The output is a STAC item GeoJSON2 including the assets shown below

  "assets": {
    "coastal": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/coastal.tif",
      "eo:bands": [
        {
          "name": "coastal",
          "common_name": "coastal",
          "center_wavelength": 0.4274,
          "solar_illumination": 1757.89,
          "full_width_half_max": 0.02025
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "6347",
            "mean": "854.39426479578",
            "stddev": "551.85802604088",
            "valid_percent": "100"
          },
      "file:size": 91755870
    },
    "red": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/red.tif",
      "eo:bands": [
        {
          "name": "red",
          "common_name": "red",
          "center_wavelength": 0.6601,
          "solar_illumination": 1535.33,
          "full_width_half_max": 0.02925
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "9597",
            "mean": "781.44649721892",
            "stddev": "601.396273167",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -18.81764705882353,
            "max": 9615.817647058824,
          }
        }
      ],
      "file:size": 120220176
    },
    "blue": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/blue.tif",
      "eo:bands": [
        {
          "name": "blue",
          "common_name": "blue",
          "center_wavelength": 0.4819,
          "solar_illumination": 2004.61,
          "full_width_half_max": 0.027
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "7645",
            "mean": "787.38125030186",
            "stddev": "537.64898625588",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -14.990196078431373,
            "max": 7659.990196078431,
          }
        }
      ],
      "file:size": 103085046
    },
    "yellow": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/yellow.tif",
      "eo:bands": [
        {
          "name": "yellow",
          "common_name": "yellow",
          "center_wavelength": 0.6043,
          "solar_illumination": 1712.07,
          "full_width_half_max": 0.01905
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "6683",
            "mean": "739.05154238735",
            "stddev": "552.66287363469",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -13.10392156862745,
            "max": 6696.103921568628,
          }
        }
      ],
      "file:size": 118063652
    },
    "rededge": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/rededge.tif",
      "eo:bands": [
        {
          "name": "rededge",
          "common_name": "rededge",
          "center_wavelength": 0.7227,
          "solar_illumination": 1348.08,
          "full_width_half_max": 0.01935
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "7853",
            "mean": "887.91057425555",
            "stddev": "627.02772123954",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -15.398039215686275,
            "max": 7868.398039215686,
          }
        }
      ],
      "file:size": 124186124
    },
    "green": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/green.tif",
      "eo:bands": [
        {
          "name": "green",
          "common_name": "green",
          "center_wavelength": 0.5471,
          "solar_illumination": 1830.18,
          "full_width_half_max": 0.0309
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "7279",
            "mean": "744.49282038834",
            "stddev": "537.28707470685",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -14.272549019607844,
            "max": 7293.272549019608,
          }
        }
      ],
      "file:size": 119246699
    },
    "nir09": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/nir09.tif",
      "eo:bands": [
        {
          "name": "nir09",
          "common_name": "nir09",
          "center_wavelength": 0.9136,
          "solar_illumination": 858.77,
          "full_width_half_max": 0.04445
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "6455",
            "mean": "949.00748966677",
            "stddev": "653.75464762957",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -12.656862745098039,
            "max": 6467.656862745098,
          }
        }
      ],
      "file:size": 125324505
    },
    "nir08": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "data",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/nir08.tif",
      "eo:bands": [
        {
          "name": "nir08",
          "common_name": "nir08",
          "center_wavelength": 0.824,
          "solar_illumination": 1055.94,
          "full_width_half_max": 0.0502
        }
      ],
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "9543",
            "mean": "1135.7010306127",
            "stddev": "787.44611040581",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -18.711764705882352,
            "max": 9561.711764705882,
          }
        }
      ],
      "file:size": 127019973
    },
    "overview-trc": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "composite",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/overview-trc.tif",
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "254",
            "mean": "53.662709830289",
            "stddev": "42.936631425032",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "253",
            "mean": "50.487792319208",
            "stddev": "37.664632349125",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "253",
            "mean": "53.685524163955",
            "stddev": "37.257732058376",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "255",
            "mean": "188.48946167463",
            "stddev": "111.96667166902",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        }
      ],
      "file:size": 210190269
    },
    "overview-wad": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "composite",
        "reflectance",
        "visual"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/overview-wad.tif",
      "raster:bands": [
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "253",
            "mean": "50.487792319208",
            "stddev": "37.664632349125",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "253",
            "mean": "53.685524163955",
            "stddev": "37.257732058376",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "251",
            "mean": "59.08198349908",
            "stddev": "38.370765697974",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0000147646949405,
          "statistics": {
            "minimum": "0",
            "maximum": "255",
            "mean": "188.48946167463",
            "stddev": "111.96667166902",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        }
      ],
      "file:size": 194843970
    },
    "overview-trc-low-res": {
      "type": "image/tiff; application=geotiff",
      "roles": [
        "composite",
        "overview",
        "reflectance"
      ],
      "href": "https://.../WV03N33_174861E069_5258332022062300000000MS00-calibrated/overview-trc-low-res.tif",
      "raster:bands": [
        {
          "spatial_resolution": 0.0001712070192611,
          "statistics": {
            "minimum": "0",
            "maximum": "253",
            "mean": "53.602964401245",
            "stddev": "42.907030195412",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0001712070192611,
          "statistics": {
            "minimum": "0",
            "maximum": "252",
            "mean": "50.43909740448",
            "stddev": "37.639390122484",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0001712070192611,
          "statistics": {
            "minimum": "0",
            "maximum": "252",
            "mean": "53.643088340759",
            "stddev": "37.23933497564",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        },
        {
          "spatial_resolution": 0.0001712070192611,
          "statistics": {
            "minimum": "0",
            "maximum": "255",
            "mean": "188.43219280243",
            "stddev": "111.99784765917",
            "valid_percent": "100"
          },
          "histogram": {
            "count": 256,
            "min": -0.5,
            "max": 255.5,
          }
        }
      ],
      "file:size": 4197770
    }
  }

  1. Kuester, M. Absolute Radiometric Calibration: 2016v0; updated on 6/6/2017 GE01 and CAVIS, DigitalGlobe: Westminster, CO, USA, 2017; pp. 1–8. 

  2. Radiant Earth Foundation, STAC item specifications, a single spatiotemporal asset as a GeoJSON feature plus datetime and links, available at:https://github.com