GRASS logo

NAME

i.nightlights.intercalibration - Performs inter-satellite calibration on DMSP-OLS Nighttime Lights Time Series

KEYWORDS

imagery, inter-satellite, calibration, nighttime lights, time series, DMSP-OLS

SYNOPSIS

i.nightlights.intercalibration
i.nightlights.intercalibration --help
i.nightlights.intercalibration [-ciegxznt] image=name[,name,...] suffix=suffix model=author [--overwrite] [--help] [--verbose] [--quiet] [--ui]

Flags:

-c
Print out citation for selected calibration model
-i
Print out calibration equations
-e
Evaluation based on the Normalised Difference Index
-g
Print in shell script style (currently only NDI via -e)
-x
Match computational region to extent of input image
-z
Exclude zero values from the analysis (retain zero cells in output)
-n
Exclude zero values from the analysis (set zero cells to NULL in output)
-t
Do not try to transfer timestamps (for input without timestamp)
--overwrite
Allow output files to overwrite existing files
--help
Print usage summary
--verbose
Verbose module output
--quiet
Quiet module output
--ui
Force launching GUI dialog

Parameters:

image=name[,name,...] [required]
Clean average DMSP-OLS visible band digital number image(s)
suffix=suffix [required]
output file(s) suffix
Suffix for calibrated average digital number output image(s)
Default: c
model=author [required]
Calibration model
Inter-satellite calibration model for average DMSP-OLS nighttime lights time series
Options: elvidge2009, elvidge2014, liu2012, wu2013
Default: elvidge2014

Table of contents

DESCRIPTION

i.nightlights.intercalibration is a GRASS GIS module performing inter-satellite calibration on DMSP-OLS nighttime lights time series. Based on "well known" emprirical regression models, it calibrates average visible band Digital Number values.

Overview

+----------------------------------------------------------------------+
|                                                                      |
|          +-----------------+                                         |
| DNi +--> |Calibration Model| +--> Calibrated DN                      |
|          +---^-------------+            ^                            |
|              |                          |                            |
|              |             +--Evaluation+Methods-------------------+ |
|              |             |                                       | |
|              |             | ?                                     | |
|              |             |                                       | |
|              |             +---------------------------------------+ |
|                                                                    | |
| +--Regression+Models-----------------------------------------------+ |
| |                                                                  | |
| | Elvidge, 2009/2014: DNc = C0 + C1xDN + C2xDNv2                   | |
| |                                                                  | |
| | Liu,2012: based on Elvidge's model + optimal threshold method    | |
| |                                                                  | |
| | Wu, 2014:           DNc + 1 = ax(DN + 1)^b                       | |
| |                                                                  | |
| | Others?                                                          | |
| |                                                                  | |
| +------------------------------------------------------------------+ |
|                                                                      |
+----------------------------------------------------------------------+

Details

From a review paper:

"Several methods were proposed to overcome the lack of inter-satellite calibration. These include the invariant region and the quadratic regression method proposed by Elvidge et al. [23], the second-order regression and optimal threshold method proposed by Liu et al. [24], and a power-law regression method proposed by Wu et al. [25]. Although studies based on these calibration methods showed performance improvement after the rectification [24,25], the assumption that the nighttime light remains stable over time in a particular area requires a careful choice of the invariant region manually." [Huang 2014]

References above are: [23] [Elvidge 2009] [24] [Liu 2012] [25] [Wu 2013]

EXAMPLES

Given all maps are imported in GRASS' data base, which are:
g.list rast pattern="F*"
F101992
F101993
F101994
F121994
F121995
F121996
F121997
F121998
F121999
F141997
F141998
F141999
F142000
F142001
F142002
F142003
F152000
F152001
F152002
F152003
F152004
F152005
F152006
F152007
F162004
F162005
F162006
F162007
F162008
F162009
F182010
F182011
F182012

the default inter-calibration, based on [Elvidge 2014], can be performed as:

i.nightlights.intercalibration image=$(g.list rast pattern="F*" sep=comma) suffix=calib_elv

An improved inter-calibration model is based on [Wu 2013], can be performed as:

i.nightlights.intercalibration image=$(g.list rast pattern="F*stable_lights*" sep=comma) model=wu2013 suffix=calib_wu

Remarks

In case the calibration models do not include regression coefficients for all of the yearly products, the module will fail and inform with an error message like:

i.nightlights.intercalibration image=$(g.list rast pattern="F??????" sep=comma) model=liu2012 --v
... ValueError: The selected model does not know about this combination of
Satellite + Year!

Example figures

To be added...

TODO

in general:

in i.nightlights.intercalibration.py:

in calibration_models.py:

another module?

REFERENCES

Review paper

Empirical second order regression model by Elvidge, 2009 | Y = C0 + C1*X + C2*X^2

Second order regression model & optimal threshold method by Liu, 2012

Non-linear, power regression model

AUTHOR

Nikos Alexandris

SOURCE CODE

Available at: i.nightlights.intercalibration source code (history)

Latest change: Monday Jan 30 19:52:26 2023 in commit: cac8d9d848299297977d1315b7e90cc3f7698730


Main index | Imagery index | Topics index | Keywords index | Graphical index | Full index

© 2003-2023 GRASS Development Team, GRASS GIS 8.3.dev Reference Manual