g.bands(1)

NAME
g.bands.py - Prints available band reference information used for multispectral data.

KEYWORDS
general, imagery, band reference, image collections

SYNOPSIS
g.bands.py
g.bands.py --help
g.bands.py [-e] [pattern=string] [operation=string] [--help] [--verbose] [--quiet] [--ui]

  Flags:

-e
    Print extended metadata information

--help
    Print usage summary

--verbose
    Verbose module output

--quiet
    Quiet module output

--ui
    Force launching GUI dialog

  Parameters:

pattern=string
    Band reference search pattern (examples: L, S2, .*_2, S2_1)

operation=string
    Operation to be performed
    Options: print
    Default: print

DESCRIPTION
Prints available band references information of multispectral data defined by GRASS GIS.

Band references to be printed can be filtered by a search pattern (or fully defined band reference identifier) which can be specified by pattern option. For pattern syntax see Python regular expression operations documentation. By default, g.bands prints all available band references.

Extended metadata is printed only when -e flag is given.

NOTES
Specific band reference can be assigned to a raster map by i.band module.

Band reference concept is supported by temporal GRASS modules, see t.register, t.rast.list, t.info and t.rast.mapcalc modules for examples.

  Image collections
Image collections are the common data type to reference time series of multi band data. It is used in many frameworks (see Google Earth Engine API for example) to address multi spectral satellite images series. GRASS supports a multi-band raster layer approach basically with the imagery group concept (i.group). A new band reference concept is designed in order to support image collections in GRASS GIS.

  Band reference registry files
Band reference information is stored in JSON files with a pre-defined internal data structure. A minimalistic example is shown below.

{
    "Sentinel2": {
        "description": "The Sentinel-2 A/B bands",
        "shortcut": "S2",
        "instruments": "MultiSpectral Instrument (MSI) optical and infrared",
        "launched": "23 June 2015 (A); 07 March 2017 (B)",
        "source": "https://sentinel.esa.int/web/sentinel/missions/sentinel-2",
        "bands": {
            "1": {
                "Sentinel 2A" : {
                    "central wavelength (nm)": 443.9,
                    "bandwidth (nm)": 27
                },
                "Sentinel 2B" : {
                    "central wavelength (nm)": 442.3,
                    "bandwidth (nm)": 45
                },
                "spatial resolution (meters)": 60,
                "tag": "Visible (Coastal/Aerosol)"
            },
            "2": {
                "Sentinel 2A" : {
                    "central wavelength (nm)": 496.6,
                    "bandwidth (nm)": 98
                },
                "Sentinel 2B" : {
                    "central wavelength (nm)": 492.1,
                    "bandwidth (nm)": 98
                },
                "spatial resolution (meters)": 10,
                "tag": "Visible (Blue)"
            }
        }
    }
}

Each series starts with an unique identifier ("Sentinel2" in example above). Required attributes are only two: a shortcut and bands. Note that a shortcut must be unique in all band reference registry files. Number of other attributes is not defined or even limited (in example above only description and instruments attributes are defined). List of bands is defined by a bands attribute. Each band is defined by an identifier ("1", "2" in example above). List of attributes describing each band is not pre-defined or limited. In example above each band is described by a central wavelength (nm), bandwidth (nm), and a tag.

Band reference identifier defined by pattern option is given by a shortcut in order to print band reference information for whole series or by specific shortcut_band identifier.

System-defined registry files are located in GRASS GIS installation directory ($GISBASE/etc/g.bands). Note that currently g.bands allows to manage only system-defined registry files. Support for user-defined registry files is planned to be implemented, see KNOWN ISSUES section for details.

EXAMPLES

  Print all available band references

g.bands
S2_1 Visible (Coastal/Aerosol)
S2_2 Visible (Blue)
...
L7_1 Visible (Blue)
L7_2 Visible (Green)
...
L8_1 Visible (Coastal/Aerosol)
L8_2 Visible (Blue)
...

The module prints band reference and related tag if defined.

  Filter band references by a shortcut
Only band identifiers related to Sentinel-2 satellite will be printed.

g.bands pattern=S2
S2_1 Visible (Coastal/Aerosol)
...
S2_12 SWIR 2

  Filter band references by a regular expression
Print all available 2nd bands:

g.bands pattern=.*_2
S2_2 Visible (Blue)
L7_2 Visible (Green)
L8_2 Visible (Blue)
...

  Print extended metadata for specified band identifier
Extended metadata related to the first band of Sentinel-2 satellite will be printed.

g.bands -e pattern=S2_1
description: The Sentinel-2 A/B bands
shortcut: S2
instruments: MultiSpectral Instrument (MSI) optical and infrared
launched: 23 June 2015 (A); 07 March 2017 (B)
source: https://sentinel.esa.int/web/sentinel/missions/sentinel-2
    band: 1
        Sentinel 2A:
                central wavelength (nm): 443.9
                bandwidth (nm): 27
        Sentinel 2B:
                central wavelength (nm): 442.3
                bandwidth (nm): 45
        spatial resolution (meters): 60
        tag: Visible (Coastal/Aerosol)

KNOWN ISSUES
g.bands has currently very limited functionality. Only system-defined band references are supported. The final implementation will support managing (add, modify, delete) user-defined band references.

Only very limited number of band references is currently defined, namely Sentinel-2, Landsat7, and Landsat8 satellites. This will be improved in the near future.

REFERENCES

    •   Google Earth Engine API

SEE ALSO
i.band, r.info

AUTHORS
Martin Landa
Development sponsored by mundialis GmbH & Co. KG (for the openEO EU H2020 grant 776242)

SOURCE CODE

Available at: g.bands source code (history)

Main index | General index | Topics index | Keywords index | Graphical index | Full index

© 2003-2020 GRASS Development Team, GRASS GIS 7.9.dev Reference Manual