## NAME

i.modis.qc - Extracts quality control parameters from MODIS QC layers.

## KEYWORDS

imagery, imagery quality assessment, reflectance, land surface temperature, vegetation, MODIS

## SYNOPSIS

i.modis.qc
i.modis.qc --help
i.modis.qc input=name output=name productname=string qcname=string [band=string] [--overwrite] [--help] [--verbose] [--quiet] [--ui]

### Flags:

--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:

input=name [required]
  Name of input surface reflectance QC layer [bit array]
output=name [required]
  Name for output QC type classification layer
productname=string [required]
  Name of MODIS product type
  Options: mod09Q1, mod09A1, mod09A1s, mod09CMG, mod09CMGs, mod09CMGi, mod11A1, mod11A2, mod13A2, mcd43B2, mcd43B2q
  Default: mod13A2
  mod09Q1: surf. refl. 250m 8-days
  mod09A1: surf. refl. 500m 8-days
  mod09A1s: surf. refl. 500m 8-days, State QA
  mod09CMG: surf. refl. 5000m daily
  mod09CMGs: surf. refl. 5000m daily, State QA
  mod09CMGi: surf. refl. 5000m daily, Internal Climatology
  mod11A1: LST 1km daily (Day/Night)
  mod11A2: LST 1km 8-days (Day/Night)
  mod13A2: VI 1km 16-days
  mcd43B2: Brdf-Albedo Quality (Ancillary SDS) 1km 8-days
  mcd43B2q: Brdf-Albedo Quality (BRDF SDS) 1km 8-days
qcname=string [required]
  Name of QC type to extract
  Options: adjcorr, atcorr, cloud, data_quality, diff_orbit_from_500m, modland_qa, mandatory_qa_11A1, data_quality_flag_11A1, emis_error_11A1, lst_error_11A1, data_quality_flag_11A2, emis_error_11A2, mandatory_qa_11A2, lst_error_11A2, aerosol_quantity, brdf_correction_performed, cirrus_detected, cloud_shadow, cloud_state, internal_cloud_algorithm, internal_fire_algorithm, internal_snow_mask, land_water, mod35_snow_ice, pixel_adjacent_to_cloud, icm_cloudy, icm_clear, icm_high_clouds, icm_low_clouds, icm_snow, icm_fire, icm_sun_glint, icm_dust, icm_cloud_shadow, icm_pixel_is_adjacent_to_cloud, icm_cirrus, icm_pan_flag, icm_criteria_for_aerosol_retrieval, icm_aot_has_clim_val, modland_qa, vi_usefulness, aerosol_quantity, pixel_adjacent_to_cloud, brdf_correction_performed, mixed_clouds, land_water, possible_snow_ice, possible_shadow, platform, land_water, sun_z_angle_at_local_noon, brdf_correction_performed
  Default: modland_qa
  adjcorr: mod09: Adjacency Correction
  atcorr: mod09: Atmospheric Correction
  cloud: mod09: Cloud State
  data_quality: mod09: Band-Wise Data Quality Flag
  diff_orbit_from_500m: mod09: 250m Band is at Different Orbit than 500m
  modland_qa: mod13A2: MODIS Land General Quality Assessment
  mandatory_qa_11A1: mod11A1: MODIS Land General Quality Assessment
  data_quality_flag_11A1: mod11A1: Detailed Quality Indications
  emis_error_11A1: mod11A1: Average Emissivity Error Classes
  lst_error_11A1: mod11A1: Average LST Error Classes
  data_quality_flag_11A2: mod11A2: Detailed Quality Indications
  emis_error_11A2: mod11A2: Average Emissivity Error Classes
  mandatory_qa_11A2: mod11A2: MODIS Land General Quality Assessment
  lst_error_11A2: mod11A2: Average LST Error Classes
  aerosol_quantity: mod13A2: Quantity range of Aerosol
  brdf_correction_performed: mcd43B2q: Quality of BRDF correction performed
  cirrus_detected: mod09*s: StateQA Cirrus Detected
  cloud_shadow: mod09*s: StateQA Cloud Shadow
  cloud_state: mod09*s: StateQA Cloud State
  internal_cloud_algorithm: mod09*s: StateQA Internal Cloud Algorithm
  internal_fire_algorithm: mod09*s: StateQA Internal Fire Algorithm
  internal_snow_mask: mod09*s: StateQA Internal Snow Mask
  land_water: mcd43B2: Quality of BRDF correction performed
  mod35_snow_ice: mod09*s: StateQA mod35 Snow Ice
  pixel_adjacent_to_cloud: mod13A2: if pixel is a cloud neighbour
  icm_cloudy: mod09*i: Internal CM: Cloudy
  icm_clear: mod09*i: Internal CM: Clear
  icm_high_clouds: mod09*i: Internal CM: High Clouds
  icm_low_clouds: mod09*i: Internal CM: Low Clouds
  icm_snow: mod09*i: Internal CM: Snow
  icm_fire: mod09*i: Internal CM: Fire
  icm_sun_glint: mod09*i: Internal CM: Sun Glint
  icm_dust: mod09*i: Internal CM: Dust
  icm_cloud_shadow: mod09*i: Internal CM: Cloud Shadow
  icm_pixel_is_adjacent_to_cloud: mod09*i: Internal CM: Pixel is Adjacent to Cloud
  icm_cirrus: mod09*i: Internal CM: Cirrus
  icm_pan_flag: mod09*i: Internal CM: Pan Flag
  icm_criteria_for_aerosol_retrieval: mod09*i: Internal CM: Criteria for Aerosol Retrieval
  icm_aot_has_clim_val: mod09*i: Internal CM: AOT (aerosol optical depth) has clim. val.
  vi_usefulness: mod13A2: Quality estimation of the pixel
  mixed_clouds: mod13A2: if pixel mixed with clouds
  possible_snow_ice: mod13A2: if snow/ice present in pixel
  possible_shadow: mod13A2: if shadow is present in pixel
  platform: mcd43B2: Quality of BRDF correction performed
  sun_z_angle_at_local_noon: mcd43B2: Quality of BRDF correction performed
band=string
  Band number of MODIS product (mod09Q1=[1,2],mod09A1=[1-7],m[o/y]d09CMG=[1-7], mcd43B2q=[1-7])
  Options: 1, 2, 3, 4, 5, 6, 7
  1: Band 1: Red
  2: Band 2: NIR
  3: Band 3: Blue
  4: Band 4: Green
  5: Band 5: SWIR 1
  6: Band 6: SWIR 2
  7: Band 7: SWIR 3

## DESCRIPTION

i.modis.qc extracts Requested Quality Assessment flags from the following MODIS products: MOD09A1, MOD09Q1, MOD11A1, MOD11A2, MOD13A2, MCD43B2. This does include MOD09A1 QA_state_500m layer (see Notes).

    MOD09A1/Q1: MODLAND QA Bits. bits=[0-1]

- [00]= class 0: Corrected product produced at ideal quality -- all bands
- [01]= class 1: Corrected product produced at less than ideal quality -- some or all bands
- [10]= class 2: Corrected product NOT produced due to cloud effect -- all bands
- [11]= class 3: Corrected product NOT produced due to other reasons -- some or all bands maybe be fill value (Note that a value of [11] overrides a value of [01])

    MOD09Q1: Cloud State. bits=[2-3]

- [00]= class 0: Clear -- No clouds
- [01]= class 1: Cloudy
- [10]= class 2: Mixed
- [11]= class 3: Not Set ; Assumed Clear

    MOD09Q1: Band-wise Data Quality 250m bits=[4-7][8-11]
    MOD09A1: Band-wise Data Quality 500m bits=[2-5][6-9][10-13][14-17][18-21][22-25][26-29]

- [0000]= class 0: highest quality
- [0111]= class 1: noisy detector
- [1000]= class 2: dead detector; data interpolated in L1B
- [1001]= class 3: solar zenith ≥ 86 degrees
- [1010]= class 4: solar zenith ≥ 85 and < 86 degrees
- [1011]= class 5: missing input
- [1100]= class 6: internal constant used in place of climatological data for at least one atmospheric constant
- [1101]= class 7: correction out of bounds, pixel constrained to extreme allowable value
- [1110]= class 8: L1B data faulty
- [1111]= class 9: not processed due to deep ocean or cloud
- Class 10-15: Combination of bits unused

    MOD09A1/Q1: Atmospheric correction bit=[12]/[30]

- [0]= class 0: Not Corrected product
- [1]= class 1: Corrected product

    MOD09A1/Q1: Adjacency correction bit=[13]/[31]

- [0]= class 0: Not Corrected product
- [1]= class 1: Corrected product

    MOD09Q1: Different orbit from 500m product, bit=[14]

- [0]= class 0: same orbit as 500m
- [1]= class 1: different orbit from 500m

    MOD11A1: Mandatory QA Flags bits=[0-1]

- [00]= class 0: LST produced, good quality, not necessary to examine more detailed QA
- [01]= class 1: LST produced, other quality, recommend examination of more detailed QA
- [10]= class 2: LST not produced due to cloud effects
- [11]= class 3: LST not produced primarily due to reasons other than cloud

    MOD11A1: Data Quality Flag bits=[2-3]

- [00]= class 0: Good data quality of L1B in bands 31 and 32
- [01]= class 1: Other quality data
- [10]= class 2: TBD
- [11]= class 3: TBD

    MOD11A1: Emis Error Flag bits=[4-5]

- [00]= class 0: Average emissivity error ≤ 0.01
- [01]= class 1: Average emissivity error ≤ 0.02
- [10]= class 2: Average emissivity error ≤ 0.04
- [11]= class 3: Average emissivity error > 0.04

    MOD11A1: LST Error Flag bits=[6-7]

- [00]= class 0: Average LST error ≤ 1
- [01]= class 1: Average LST error ≤ 2
- [10]= class 2: Average LST error ≤ 3
- [11]= class 3: Average LST error > 3

    MOD11A2: Mandatory QA Flags bits=[0-1]

- [00]= class 0: LST produced, good quality, not necessary to examine more detailed QA
- [01]= class 1: LST produced, other quality, recommend examination of more detailed QA
- [10]= class 2: LST not produced due to cloud effects
- [11]= class 3: LST not produced primarily due to reasons other than cloud

    MOD11A2: Data Quality Flag bits=[2-3]

- [00]= class 0: Good data quality of L1B in 7 TIR bands
- [01]= class 1: Other quality data
- [10]= class 2: TBD
- [11]= class 3: TBD

    MOD11A2: Emis Error Flag bits=[4-5]

- [00]= class 0: Average emissivity error ≤ 0.01
- [01]= class 1: Average emissivity error ≤ 0.02
- [10]= class 2: Average emissivity error ≤ 0.04
- [11]= class 3: Average emissivity error > 0.04

    MOD11A2: LST Error Flag bits=[6-7]

- [00]= class 0: Average LST error ≤ 1
- [01]= class 1: Average LST error ≤ 2
- [10]= class 2: Average LST error ≤ 3
- [11]= class 3: Average LST error > 3

    MOD09A1s: Cloud State bits=[0-1]

- [00]= class 0: clear
- [01]= class 1: cloudy
- [10]= class 2: mixed
- [11]= class 3: not set, assumed clear

    MOD09A1s: Cloud shadow bits=[2]

- [0]= class 0: no
- [1]= class 1: yes

    MOD09A1s: Land/Water Flag bits=[3-5]

- [000]= class 0: Shallow ocean
- [001]= class 1: Land
- [010]= class 2: Ocean coastlines and lake shorelines
- [011]= class 3: Shallow inland water
- [100]= class 4: Ephemeral water
- [101]= class 5: Deep inland water
- [110]= class 6: Continental/moderate ocean
- [111]= class 7: Deep ocean

    MOD09A1s: Aerosol Quantity bits=[6-7]

- [00]= class 0: Climatology
- [01]= class 1: Low
- [10]= class 2: Average
- [11]= class 3: High

    MOD09A1s: Cirrus detected bits=[8-9]

- [00]= class 0: None
- [01]= class 1: Small
- [10]= class 2: Average
- [11]= class 3: High

    MOD09A1s: Internal Cloud Algorithm Flag bits=[10]

- [0]= class 0: No cloud
- [1]= class 1: Cloud

    MOD09A1s: Internal Fire Algorithm Flag bits=[11]

- [0]= class 0: No fire
- [1]= class 1: Fire

    MOD09A1s: MOD35 snow/ice flag bits=[12]

- [0]= class 0: No
- [1]= class 1: Yes

    MOD09A1s: Pixel adjacent to cloud bits=[13]

- [0]= class 0: No
- [1]= class 1: Yes

    MOD09A1s: BRDF correction performed bits=[14]

- [0]= class 0: No
- [1]= class 1: Yes

    MOD09A1s: Internal Snow Mask bits=[15]

- [0]= class 0: No snow
- [1]= class 1: Snow

    MOD13A2: Mandatory QA Flags 1km bits[0-1]

- [00]= class 0: VI produced, good quality
- [01]= class 1: VI produced, but check other QA
- [10]= class 2: Pixel produced, but most probably cloud
- [11]= class 3: Pixel not produced due to other reasons than clouds

    MOD13A2: VI Usefulness Flag bits[2-5]

- [0000]= class 0: Highest quality
- [0001]= class 1: Lower quality
- [0010]= class 2: Decreasing quality
- [0100]= class 3: Decreasing quality
- [1000]= class 4: Decreasing quality
- [1001]= class 5: Decreasing quality
- [1010]= class 6: Decreasing quality
- [1100]= class 7: Lowest quality
- [1101]= class 8: Quality so low that it is not useful
- [1110]= class 9: L1B data faulty
- [1111]= class 10: Not useful for any other reason/not processed

    MOD13A2: Aerosol quantity Flags 1km bits[6-7]

- [00]= class 0: Climatology
- [01]= class 1: Low
- [10]= class 2: Average
- [11]= class 3: High

    MOD13A2: Adjacent cloud detected 1km bit[8]

- [00]= class 0: No
- [01]= class 1: Yes

    MOD13A2: Atmosphere BRDF correction performed 1km bit[9]

- [00]= class 0: No
- [01]= class 1: Yes

    MOD13A2: Mixed clouds 1km bit[10]

- [00]= class 0: No
- [01]= class 1: Yes

    MOD13A2: Land/Water Flags 1km bits[11-13]

- [000]= class 0: Shallow Ocean
- [001]= class 1: Land (Nothing else but land)
- [010]= class 2: Ocean Coastlines and lake shorelines
- [011]= class 3: Shallow inland water
- [100]= class 4: Ephemeral water
- [101]= class 5: Deep inland water
- [110]= class 6: Moderate or continental ocean
- [111]= class 7: Deep ocean

    MOD13A2: Possible Snow/Ice 1km bits[14]

- [0]= class 0: No
- [1]= class 1: Yes

    MOD13A2: Possible Shadow 1km bits[15]

- [0]= class 0: No
- [1]= class 1: Yes

    MCD43B2: Albedo Quality Ancillary Platform Data 1km bits[0-3]
    SDS: BRDF_Albedo_Ancillary

- [0000]= class 0: Satellite Platform: Terra
- [0001]= class 1: Satellite Platform: Terrra/Aqua
- [0010]= class 2: Satellite Platform: Aqua
- [1111]= class 15: Fill Value
- Classes 3-14: Not used

    MCD43B2: Albedo Quality Ancillary Land/Water Data 1km bits[4-7]
    SDS: BRDF_Albedo_Ancillary

- [0000] class 0: Shallow Ocean
- [0001] class 1: Land (Nothing else but land)
- [0010] class 2: Ocean and lake shorelines
- [0011] class 3: Shallow inland water
- [0100] class 4: Ephemeral water
- [0101] class 5: Deep inland water
- [0110] class 6: Moderate or continental ocean
- [0111] class 7: Deep ocean
- [1111] class 15: Fill Value
- Classes 8-14: Not used

    MCD43B2: Albedo Quality Ancillary Sun Zenith Angle at Local Solar Noon Data 1km bits[8-14]
    SDS: BRDF_Albedo_Ancillary

Returns integer value [0-90], 127 is Fill Value

    MCD43B2: Band-wise Albedo Quality Data 1km
    SDS: BRDF_Albedo_Band_Quality

bits[0-3][4-7][8-11][12-15][16-19][20-23][24-27]

- [0000]= class 0: best quality, 75% or more with best full inversions
- [0001]= class 1: good quality, 75% or more with full inversions
- [0010]= class 2: Mixed, 50% or less full inversions and 25% or less fill values
- [0011]= class 3: All magnitude inversions or 50% or less fill values
- [0100]= class 4: 75% or more fill values
- Classes 5-14: Not Used
- [1111]= class 15: Fill Value

## NOTES

In MOD09A1: It seems that cloud related info is not filled properly in the standard QC (MOD09A1 in this module) since version 3, State-QA 500m images (MOD09A1s in this module) should be used (see Vermote et al., 2008).

## TODO

Add more daily products.

## SEE ALSO

i.vi

## REFERENCES

- MODIS Products
- Vermote E.F., Kotchenova S.Y., Ray J.P. MODIS Surface Reflectance User's Guide. Version 1.2. June 2008. MODIS Land Surface Reflectance Science Computing Facility. Homepage

## AUTHOR

Yann Chemin

Last changed: $Date: 2014-12-12 00:16:30 +0100 (Fri, 12 Dec 2014) $

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

© 2003-2016 GRASS Development Team, GRASS GIS 7.0.5 Reference Manual