Page tree

Figure 1. Cloud Mask (CMA) variable for 2022-01-01 03:00 UTC. Values of 1 indicate the presence of cloud.

Abstract

The cloud mask (CMA), developed within the NWC SAF context, aims to support nowcasting
applications, and additionally the remote-sensing of continental and oceanic surfaces. The CMA
allows identifying cloud free areas.

The central aim of the CMA is therefore to delineate all cloud-free pixels in a satellite scene with a
high confidence.

CMA cloud detection is performed by a multi-spectral threshold method: the image is compared
with thresholds which delimit brightness temperatures/reflectance of cloud free pixels from those of
pixels containing clouds or snow/sea ice. The critical point is the thresholds tuning which are
computed from Look-Up Table and from RTTOV applied on-line to NWP vertical
profiles. This process is complemented by an analysis of the temporal variation (on a short period of
time (around 15 minutes)) of some spectral combination of channels (to detect rapidly moving
clouds), a specific treatment combining temporal coherency analysis and region growing technique
(to improve the detection of low clouds) and a temporal analysis of visible channels at high
horizontal resolution to detect sub-pixel low clouds.

For further information please view the following documents:

  1. Algorithm Theoretical Basis Document
  2. User Manual
  3. Validation Report

Format

NetCDF4

Basepath, Filename Template and Data Access

On NCI (requires an NCI account and membership of the rv74 data collection)

Base path: /g/data/rv74/satellite-products/arc/der/himawari-ahi/cloud/cma/latest/<year>/<month>/<day>/

Filename Template: S_NWC_CMA_<satellite>_HIMA-N-NR_<year><month><day>T<hour><minute>00Z.nc

<satellite>: HIMA08 or HIMA09


On THREDDS (publicly available, no NCI account required)

Bureau of Meteorology - Satellite Derived Products (rv74) THREDDS

Base Path: satellite-products/arc/der/himawari-ahi/cloud/cma/latest/<year>/<month>/<day>/

Filename Template: S_NWC_CMA_<satellite>_HIMA-N-NR_<year><month><day>T<hour><minute>00Z.nc

<satellite>: HIMA08 or HIMA09

Version

Version 2.0: Initial release. Processed using EUMETSAT NWCSAF GEO software, version v2021.1. Input data includes Himawari-AHI data, NOAA's GFS 0.5 degree 6 and 12 hour forecasts and Bureau of Meteorology GAMSSA Sea Surface Temperature.

License

CC-BY-4.0

Update Frequency

Monthly with 3 month data latency

Temporal extents (YYYY/MM/DD)

2015/07/07 - present (with 3 month data latency)

Spatial Extents

81N ~ 81S, 59E ~ 222E

Owner

Bureau of Meteorology

Contact

SI-Research-SS@bom.gov.au 

Satellite Science Team, Research, Bureau of Meteorology

Credit

Many thanks to the Japan Meteorological Agency (JMA) for providing Himawari-AHI data and NOAA for providing GFS data.

Cloud Mask data derived from satellite imagery processed by the Bureau of Meteorology from Himawari-AHI data provided by the Japan Meteorological Agency using software provided by EUMETSAT NWCSAF.

Metadata Example

netcdf S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z {

dimensions:
    ny = 5500 ;
    nx = 5500 ;
    pal02_colors = 256 ;
    pal_RGB = 3 ;
    pal03_colors = 256 ;
    pal01_colors = 256 ;
    pal05_colors = 256 ;
    pal04_colors = 256 ;


variables:    

    ubyte cma(ny, nx) ;
        cma:standard_name = "cloud_binary_mask" ;
        cma:long_name = "NWC GEO CMA Cloud Mask" ;
        cma:valid_range = 0UB, 1UB ;
        cma:_FillValue = 255UB ;
        cma:ancillary_variables = "cma_status_flag cma_conditions cma_quality cma_pal" ;
        cma:coordinates = "lon lat" ;
        cma:comment = "0:  Cloud free; 1: Cloudy" ;
        cma:flag_values = 0UB, 1UB ;
        cma:flag_meanings = "Cloud_free Cloudy" ;
        cma:grid_mapping = "geostationary" ;
   

    ubyte cma_cloudsnow(ny, nx) ;
        cma_cloudsnow:long_name = "NWC GEO CMA Cloud and Snow Mask" ;
        cma_cloudsnow:valid_range = 0UB, 3UB ;
        cma_cloudsnow:_FillValue = 255UB ;
        cma_cloudsnow:ancillary_variables = "cma_status_flag  cma_conditions cma_quality cma_cloudsnow_pal" ;
        cma_cloudsnow:coordinates = "lon lat" ;
        cma_cloudsnow:comment = "0:  Cloud free; 1:  Cloud (except thin ice over snow); 2:  Thin ice clouds over snow/ice;  3:  Snow/Ice" ;
        cma_cloudsnow:flag_values = 0UB, 1UB, 2UB, 3UB ;
        cma_cloudsnow:flag_meanings = "Cloud_free Cloud_except_thin_ice_over_snow Thin_ice_clouds_over_snow_ice Snow_Ice" ;
        cma_cloudsnow:grid_mapping = "geostationary" ;
   

    ubyte cma_cloudsnow_pal(pal02_colors, pal_RGB) ;
        cma_cloudsnow_pal:long_name = "RGB palette for cma_cloudsnow" ;
        cma_cloudsnow_pal:valid_range = 0UB, 255UB ;
        cma_cloudsnow_pal:colormodel = "RGB" ;
        cma_cloudsnow_pal:comment = "Palette applicable to field cma_cloudsnow" ;
   

    ushort cma_conditions(ny, nx) ;
        cma_conditions:long_name = "Common geophysical and processing conditions" ;
        cma_conditions:valid_range = 1US, 65535US ;
        cma_conditions:_FillValue = 0US ;
        cma_conditions:flag_mask = 1US, 6US, 6US, 6US, 8US, 48US, 48US, 48US, 64US, 128US, 768US, 768US, 768US, 3072US, 3072US, 3072US, 12288US, 12288US, 12288US, 49152US, 49152US, 49152US ;
        cma_conditions:flag_values = 1US, 2US, 4US, 6US, 8US, 16US, 32US, 48US, 64US, 128US, 256US, 512US, 768US, 1024US, 2048US, 3072US, 4096US, 8192US, 12288US, 16384US, 32768US, 49152US ;
        cma_conditions:flag_meanings = "space night day twilight sunglint land sea coast not_used not_used all_satellite_channels_available useful_satellite_channels_missing mandatory_satellite_channels_missing all_NWP_fields_available useful_NWP_fields_missing mandatory_NWP_fields_missing all_product_data_available useful_product_data_missing mandatory_product_data_missing all_auxiliary_data_available useful_auxiliary_data_missing mandatory_auxiliary_data_missing" ;
        cma_conditions:comment = "Common geophysical and processing conditions" ;
        cma_conditions:grid_mapping = "geostationary" ;
   

    ubyte cma_dust(ny, nx) ;
        cma_dust:long_name = "NWC GEO CMA Dust Detection" ;
        cma_dust:valid_range = 0UB, 2UB ;
        cma_dust:_FillValue = 255UB ;
        cma_dust:ancillary_variables = "cma_status_flag  cma_conditions cma_quality cma_dust_pal" ;
        cma_dust:coordinates = "lon lat" ;
        cma_dust:comment = "0:  No dust; 1:  Dust; 2:  Undefined (separability problems)" ;
        cma_dust:flag_values = 0UB, 1UB, 2UB ;
        cma_dust:flag_meanings = "No_dust Dust Undefined_separability_problems" ;
        cma_dust:grid_mapping = "geostationary" ;
   

    ubyte cma_dust_pal(pal03_colors, pal_RGB) ;
        cma_dust_pal:long_name = "RGB palette for cma_dust" ;
        cma_dust_pal:valid_range = 0UB, 255UB ;
        cma_dust_pal:colormodel = "RGB" ;
        cma_dust_pal:comment = "Palette applicable to field cma_dust" ;
   

    ubyte cma_pal(pal01_colors, pal_RGB) ;
        cma_pal:long_name = "RGB palette for cma" ;
        cma_pal:valid_range = 0UB, 255UB ;
        cma_pal:colormodel = "RGB" ;
        cma_pal:comment = "Palette applicable to field cma" ;
   

    ushort cma_quality(ny, nx) ;
        cma_quality:long_name = "Common Quality Indicators" ;
        cma_quality:valid_range = 1US, 56US ;
        cma_quality:_FillValue = 0US ;
        cma_quality:flag_mask = 1US, 2US, 4US, 56US, 56US, 56US, 56US ;
        cma_quality:flag_values = 1US, 2US, 4US, 8US, 16US, 24US, 32US ;
        cma_quality:flag_meanings = "nodata internal_consistency temporal_consistency good questionable bad interpolated" ;
        cma_quality:comment = "Common Quality Indicators" ;
        cma_quality:grid_mapping = "geostationary" ;
   

    ubyte cma_smoke(ny, nx) ;
        cma_smoke:long_name = "NWC GEO CMA Smoke Detection" ;
        cma_smoke:valid_range = 0UB, 2UB ;
        cma_smoke:_FillValue = 255UB ;
        cma_smoke:ancillary_variables = "cma_status_flag  cma_conditions cma_quality cma_smoke_pal" ;
        cma_smoke:coordinates = "lon lat" ;
        cma_smoke:comment = "0:  No smoke; 1:  Smoke; 2:  Undefined (separability problems)" ;
        cma_smoke:flag_values = 0UB, 1UB, 2UB ;
        cma_smoke:flag_meanings = "No_smoke Smoke Undefined_separability_problems" ;
        cma_smoke:grid_mapping = "geostationary" ;
   

    ubyte cma_smoke_pal(pal05_colors, pal_RGB) ;
        cma_smoke_pal:long_name = "RGB palette for cma_smoke" ;
        cma_smoke_pal:valid_range = 0UB, 255UB ;
        cma_smoke_pal:colormodel = "RGB" ;
        cma_smoke_pal:comment = "Palette applicable to field cma_smoke" ;
   

    ushort cma_status_flag(ny, nx) ;
        cma_status_flag:standard_name = "status_flag" ;
        cma_status_flag:long_name = "Information on specific NWC GEO CMA processing" ;
        cma_status_flag:valid_range = 0US, 2047US ;
        cma_status_flag:_FillValue = 32768US ;
        cma_status_flag:flag_mask = 1US, 2US, 4US, 8US, 16US, 32US, 64US, 128US, 256US, 512US, 1024US ;
        cma_status_flag:flag_values = 1US, 2US, 4US, 8US, 16US, 32US, 64US, 128US, 256US, 512US, 1024US ;
        cma_status_flag:flag_meanings = "Low_level_thermal_inversion_in_NWP_field Cold_snowy_ground_suspected Temporal_algorithm_passed High_resolution_satellite_data_used RTTOV_on-line_used SST_analysis_available Snow_map_available Sea_ice_map_available No_method_for_dust No_method_for_volcanic_plume No_method_for_smoke" ;
        cma_status_flag:coordinates = "lon lat" ;
        cma_status_flag:grid_mapping = "geostationary" ;
   

    ushort cma_testlist1(ny, nx) ;
        cma_testlist1:standard_name = "status_flag" ;
        cma_testlist1:long_name = "NWC GEO CMA List of Tests (1/2)" ;
        cma_testlist1:valid_range = 0US, 32767US ;
        cma_testlist1:_FillValue = 32768US ;
        cma_testlist1:flag_mask = 1US, 2US, 4US, 8US, 16US, 32US, 64US, 128US, 256US, 512US, 1024US, 2048US, 4096US, 8192US, 16384US ;
        cma_testlist1:flag_values = 1US, 2US, 4US, 8US, 16US, 32US, 64US, 128US, 256US, 512US, 1024US, 2048US, 4096US, 8192US, 16384US ;
        cma_testlist1:flag_meanings = "R06um_land_or_R08um_sea R16um_sea Sunglint_test_using_38um R138um T108um_or_SST T108umT120um T108umT38um T120umT38um T38umT108um T108umT87um T87umT108um T87umT38um Snow_with_only_38um Snow_with_16um Snow_with_combined_use_of_16um_and_22um" ;
        cma_testlist1:coordinates = "lon lat" ;
        cma_testlist1:grid_mapping = "geostationary" ;
   

    ushort cma_testlist2(ny, nx) ;
        cma_testlist2:standard_name = "status_flag" ;
        cma_testlist2:long_name = "NWC GEO CMA List of Tests (2/2)" ;
        cma_testlist2:valid_range = 0US, 32767US ;
        cma_testlist2:_FillValue = 32768US ;
        cma_testlist2:flag_mask = 1US, 2US, 4US, 8US, 16US, 32US, 64US, 128US, 256US, 512US, 1024US, 2048US, 4096US ;
        cma_testlist2:flag_values = 1US, 2US, 4US, 8US, 16US, 32US, 64US, 128US, 256US, 512US, 1024US, 2048US, 4096US ;
        cma_testlist2:flag_meanings = "Local_Spatial_Texture T108um_with_RTTOV T38um_with_RTTOV T87umT38um_with_RTTOV T108umT120um_with_RTTOV T108umT87um_with_RTTOV T108umT38um_with_RTTOV Temporal_differencing Stationary_cloud_in_twilight Spatial_extent_of_stationary_clouds_in_twilight Use_of_high_resolution_visible Spatial_filtering_cloud_reclassified_as_cloud-free Spatial_filtering_cloud-free_reclassified_as_cloud" ;
        cma_testlist2:coordinates = "lon lat" ;
        cma_testlist2:grid_mapping = "geostationary" ;
   

    ubyte cma_volcanic(ny, nx) ;
        cma_volcanic:long_name = "NWC GEO CMA Volcanic Plume Detection" ;
        cma_volcanic:valid_range = 0UB, 2UB ;
        cma_volcanic:_FillValue = 255UB ;
        cma_volcanic:ancillary_variables = "cma_status_flag  cma_conditions cma_quality cma_volcanic_pal" ;
        cma_volcanic:coordinates = "lon lat" ;
        cma_volcanic:comment = "0:  No volcanic plume; 1:  Volcanic plume; 2:  Undefined (separability problems)" ;
        cma_volcanic:flag_values = 0UB, 1UB, 2UB ;
        cma_volcanic:flag_meanings = "No_volcanic_plume Volcanic_plume Undefined_separability_problems" ;
        cma_volcanic:grid_mapping = "geostationary" ;
   

    ubyte cma_volcanic_pal(pal04_colors, pal_RGB) ;
        cma_volcanic_pal:long_name = "RGB palette for cma_volcanic" ;
        cma_volcanic_pal:valid_range = 0UB, 255UB ;
        cma_volcanic_pal:colormodel = "RGB" ;
        cma_volcanic_pal:comment = "Palette applicable to field cma_volcanic" ;
   

    float nx(nx) ;
        nx:standard_name = "projection_x_coordinate" ;
        nx:long_name = "X Georeferenced Coordinate for each pixel count" ;
        nx:units = "m" ;
   

    float ny(ny) ;
        ny:standard_name = "projection_y_coordinate" ;
        ny:long_name = "Y Georeferenced Coordinate for each pixel count" ;
        ny:units = "m" ;
   

    float geostationary ;
        geostationary:proj_name = "GEOS141" ;
        geostationary:sweep_angle_axis = "y" ;
        geostationary:false_northing = 0LL ;
        geostationary:grid_mapping_name = "geostationary" ;
        geostationary:false_easting = 0LL ;
        geostationary:satellite_height = 35785863. ;
        geostationary:semi_major_axis = 6378137. ;
        geostationary:semi_minor_axis = 6356752.3 ;
        geostationary:perspective_point_height = 35785863. ;
        geostationary:GeoTransform = -5500000., 2000., 0., 5500000., 0., -2000. ;
        geostationary:longitude_of_projection_origin = 140.7 ;
        geostationary:proj4 = "+proj=geos +lon_0=140.7 +h=35785863 +x_0=0 +y_0=0 +a=6378137 +b=6356752.3 +units=m +no_defs" ;
        geostationary:spatial_ref = "PROJCS[\"unnamed\",GEOGCS[\"unnamed ellipse\",DATUM[\"unknown\",SPHEROID[\"unnamed\",6378137,298.2570248822731]],PRIMEM[\"Greenwich\",0],UNIT[\"degree\",0.0174532925199433]],PROJECTION[\"Geostationary_Satellite\"],PARAMETER[\"central_meridian\",140.7],PARAMETER[\"satellite_height\",35785863],PARAMETER[\"false_easting\",0],PARAMETER[\"false_northing\",0],UNIT[\"Meter\",1]]" ;


// global attributes:
        :Conventions = "CF-1.6" ;
        :title = "NWC GEO Cloud Mask Product" ;
        :institution = "Bureau of Meteorology" ;
        :source = "NWC/GEO version v2021.1" ;
        :comment = "Copyright 2022, EUMETSAT, All Rights Reserved" ;
        :references = "http://nwc-saf.eumetsat.int" ;
        :contact = "safnwchd@aemet.es" ;
        :summary = "Cloud Mask Product of the NWC/GEO. Information on the presence of clouds, dust, smoke and volcanic plumes" ;
        :keywords = "Cloud Amount, Dust, Ash, Smoke" ;
        :keywords_vocabulary = "GCMD Science Keywords" ;
        :id = "S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc" ;
        :naming_authority = "Bureau of Meteorology" ;
        :cdm_data_type = "Image" ;
        :date_created = "2022-12-27T08:52:58Z" ;
        :creator_name = "Bureau of Meteorology" ;
        :creator_url = "www.bom.gov.au" ;
        :creator_email = "SI-Research-SS@bom.gov.au" ;
        :project = "NWC/GEO" ;
        :processing_level = "Level 2" ;
        :time_coverage_start = "2022-01-01T03:00:20Z" ;
        :time_coverage_end = "2022-01-01T03:09:40Z" ;
        :license = "EUMETSAT user policy" ;
        :saf = "NWC/GEO" ;
        :product_name = "CMA" ;
        :product_algorithm_version = "5.1" ;
        :satellite_identifier = "HIMA08" ;
        :sub-satellite_longitude = 140.7f ;
        :centre_projection_longitude = 140.7f ;
        :nominal_product_time = "2022-01-01T03:00:00Z" ;
        :region_id = "HIMA-N" ;
        :region_name = "HIMA-N; CENTRE=0N 140.7E; SIZE=5500x5500pix" ;
        :spatial_resolution = 2.f ;
        :cgms_projection = "+proj=geos +coff=2750.500000 +cfac=20466275.000000 +loff=2750.500000 +lfac=20466275.000000 +spp=140.699997 +r_eq=6378.137000 +r_pol=6356.752300 +h=42164.000000" ;
        :gdal_projection = "+proj=geos +a=6378137.000000 +b=6356752.300000 +lon_0=140.699997 +h=35785863.000000 +sweep=y" ;
        :gdal_geotransform_table = -5499996.f, 1999.998f, 0.f, 5499996.f, 0.f, -1999.998f ;
        :gdal_xgeo_up_left = -5499996.f ;
        :gdal_ygeo_up_left = 5499996.f ;
        :gdal_xgeo_low_right = 5499996.f ;
        :gdal_ygeo_low_right = -5499996.f ;
        :product_quality = 91.75343f ;
        :product_completeness = 99.81164f ;
        :geospatial_lat_max = 81.04704f ;
        :geospatial_lat_min = -81.04704f ;
        :geospatial_lon_max = 180.f ;
        :geospatial_lon_min = -180.f ;
        :product_version = "2.0" ;
        :history = "Fri Jan 20 07:55:22 2023: ncatted -O -a product_version,global,c,c,2.0 /scratch/er8/vov548/output/nwcsaf_2021.1_h8_reprocessing/cma//S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc\nFri Jan 20 07:54:25 2023: ncks -O -L 9 --cnk_dmn x,5500 --cnk_dmn y,20 /scratch/er8/vov548/output/nwcsaf_2021.1_h8_compressed/cma/S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc /scratch/er8/vov548/output/nwcsaf_2021.1_h8_reprocessing/cma//S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc\nThu Dec 29 00:06:24 2022: ncatted -O -a product_version,global,c,c,2.0 /scratch/er8/vov548/output/nwcsaf_2021.1_h8//S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc\nThu Dec 29 00:05:27 2022: ncks -O -L 9 --cnk_dmn x,5500 --cnk_dmn y,20 /scratch/er8/vov548/output/nwcsaf_2021.1_h8/S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc /scratch/er8/vov548/output/nwcsaf_2021.1_h8//S_NWC_CMA_HIMA08_HIMA-N-NR_20220101T030000Z.nc\n2022-12-27T08:52:58Z (null) Product Created by NWC/GEO v2021.1\n2022-12-27T08:52:58Z (null) GEO-CMA.exe 2022-01-01T03:00:00Z /scratch/er8/vov548/ws/nwcsaf_2021.1_h8/install/tmp66z3dl8b/config/safnwc_HIMAN./scratch/er8/vov548/ws/nwcsaf_2021.1_h8/install/tmp66z3dl8b/config/safnwc_CMA.cf5.1 /scratch/er8/vov548/ws/nwcsaf_2021.1_h8/install/tmp66z3dl8b/config/safnwc_CMA.cf5.1" ;
        :NCO = "netCDF Operators version 4.7.7 (Homepage = http://nco.sf.net, Code = http://github.com/nco/nco)" ;

}


  • No labels