From 0d026e3ef06d8f7b2ee443b4e68642b6ea1c7a91 Mon Sep 17 00:00:00 2001 From: Kenn Cartier Date: Tue, 13 Aug 2024 20:18:50 -0700 Subject: [PATCH] Use pytest to dump layers to geotiff files --- .../layers/high_land_surface_temperature.py | 5 +- .../layers/land_surface_temperature.py | 5 +- tests/fixtures/bbox_constants.py | 2 +- tests/resources/README.md | 2 + .../layers_for_br_lauro_de_freitas.qgs | 5175 +++++++++++++++++ tests/test_layers.py | 43 +- tests/test_methods.py | 1 - tests/test_write_layers_to_geotiff.py | 165 + tools/general_tools.py | 20 + 9 files changed, 5391 insertions(+), 27 deletions(-) create mode 100644 tests/resources/README.md create mode 100644 tests/resources/layers_for_br_lauro_de_freitas.qgs create mode 100644 tests/test_write_layers_to_geotiff.py create mode 100644 tools/general_tools.py diff --git a/city_metrix/layers/high_land_surface_temperature.py b/city_metrix/layers/high_land_surface_temperature.py index 610651b..f7f5dff 100644 --- a/city_metrix/layers/high_land_surface_temperature.py +++ b/city_metrix/layers/high_land_surface_temperature.py @@ -55,7 +55,8 @@ def addDate(image): # convert to date object return datetime.datetime.strptime(hottest_date, "%Y%m%d").date() - def write(self, output_path): - self.data.rio.to_raster(output_path) + # TODO: Is this inherited class function needed? + # def write(self, output_path): + # self.data.rio.to_raster(output_path) diff --git a/city_metrix/layers/land_surface_temperature.py b/city_metrix/layers/land_surface_temperature.py index 0c87f30..a29255b 100644 --- a/city_metrix/layers/land_surface_temperature.py +++ b/city_metrix/layers/land_surface_temperature.py @@ -34,7 +34,8 @@ def apply_scale_factors(image): data = get_image_collection(ee.ImageCollection(l8_st), bbox, 30, "LST").ST_B10_mean return data - def write(self, output_path): - self.data.rio.to_raster(output_path) + # TODO: Is this inherited class function needed? + # def write(self, output_path): + # self.data.rio.to_raster(output_path) diff --git a/tests/fixtures/bbox_constants.py b/tests/fixtures/bbox_constants.py index 6814b7a..9f20f53 100644 --- a/tests/fixtures/bbox_constants.py +++ b/tests/fixtures/bbox_constants.py @@ -1,7 +1,7 @@ # File defines bboxes using in the test code -BBOX_BRAZIL_LAURO_DE_FREITAS_1 = ( +BBOX_BR_LAURO_DE_FREITAS_1 = ( -38.35530428121955, -12.821710300686393, -38.33813814352424, diff --git a/tests/resources/README.md b/tests/resources/README.md new file mode 100644 index 0000000..7250a3e --- /dev/null +++ b/tests/resources/README.md @@ -0,0 +1,2 @@ +# QGIS project files +QGIS files are used for testing layers geotiff files diff --git a/tests/resources/layers_for_br_lauro_de_freitas.qgs b/tests/resources/layers_for_br_lauro_de_freitas.qgs new file mode 100644 index 0000000..999bd52 --- /dev/null +++ b/tests/resources/layers_for_br_lauro_de_freitas.qgs @@ -0,0 +1,5175 @@ + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + land_surface_temperature_e26fbad7_3504_4b45_ad36_9231bc6ede9e + Google_Maps_814dce96_1bde_4a2c_aaff_51c3cf786817 + average_net_building_height_cb2fbeee_22a5_4862_a170_b5b97d8c2359 + esa_world_cover_913f3cfa_418a_4705_9ed8_cb4d0042455b + high_land_surface_temperature_b6aba51a_6624_45f4_a804_8947316deabd + albedo_63933ce5_ee3b_4891_bba3_3e6f2b632a65 + alos_dsm_afabef96_7acf_4ba8_9326_3fe0c486e868 + smart_surface_lulc_3c04a4e2_2352_49bc_9c1a_d8c9b22055ce + tree_canopy_height_7902b00d_e052_4c25_86e2_f465a978f4fc + tree_cover_1ccee586_17ee_4e1b_aef7_5cfa559b5b05 + urban_land_use_2b9d2c0b_7689_489d_ad0d_7317d9d15faa + world_pop_65d76980_e93c_4f74_84cb_3a2594b36255 + nasa_dem_68846b24_ab9e_4975_a548_9ea4c03bfe8d + natural_areas_fd87fec5_4965_46d4_9f49_3a87327de975 + open_buildings_0d3930fb_7530_4657_bde1_bf40431f46a7 + overture_buildings_36036eef_d21e_4838_8914_f2ebad1d5c68 + Google_Satellite_d2a2ce31_6540_4c56_998b_61c1ed81cf7f + + + + + + + + + + + + meters + + 569483.20351014251355082 + 8582439.30899122543632984 + 572298.77636430819984525 + 8584530.33974483050405979 + + 0 + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Annotations_fcde2ed1_e785_4cb5_af26_e512b670ceae + + + + + Annotations + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + + + + 1 + 1 + 1 + 0 + + + + 1 + 0 + + + + + + -20037508.34278924390673637 + -20037508.34278924763202667 + 20037508.34278924390673637 + 20037508.34278924763202667 + + + -180 + -85.05112877980660357 + 179.99999999999997158 + 85.05112877980660357 + + Google_Maps_814dce96_1bde_4a2c_aaff_51c3cf786817 + crs=EPSG:3857&format&type=xyz&url=https://mt1.google.com/vt/lyrs%3Dm%26x%3D%7Bx%7D%26y%3D%7By%7D%26z%3D%7Bz%7D&zmax=19&zmin=0 + + + + Google Maps + + + PROJCRS["WGS 84 / Pseudo-Mercator",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["Popular Visualisation Pseudo-Mercator",METHOD["Popular Visualisation Pseudo Mercator",ID["EPSG",1024]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["False easting",0,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",0,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["easting (X)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["northing (Y)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Web mapping and visualisation."],AREA["World between 85.06°S and 85.06°N."],BBOX[-85.06,-180,85.06,180]],ID["EPSG",3857]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0 +lon_0=0 +x_0=0 +y_0=0 +k=1 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + 0 + 0 + + + + + false + + + + + wms + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + None + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + resamplingFilter + + 0 + + + + -20037508.34278924390673637 + -20037508.34278924763202667 + 20037508.34278924390673637 + 20037508.34278924763202667 + + + -180 + -85.05112877980660357 + 179.99999999999997158 + 85.05112877980660357 + + Google_Satellite_d2a2ce31_6540_4c56_998b_61c1ed81cf7f + crs=EPSG:3857&format&type=xyz&url=https://mt1.google.com/vt/lyrs%3Ds%26x%3D%7Bx%7D%26y%3D%7By%7D%26z%3D%7Bz%7D&zmax=19&zmin=0 + + + + Google Satellite + + + PROJCRS["WGS 84 / Pseudo-Mercator",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["Popular Visualisation Pseudo-Mercator",METHOD["Popular Visualisation Pseudo Mercator",ID["EPSG",1024]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["False easting",0,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",0,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["easting (X)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["northing (Y)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Web mapping and visualisation."],AREA["World between 85.06°S and 85.06°N."],BBOX[-85.06,-180,85.06,180]],ID["EPSG",3857]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0 +lon_0=0 +x_0=0 +y_0=0 +k=1 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + 0 + 0 + + + + + false + + + + + wms + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + None + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571832.59035570570267737 + 8584483.1620953194797039 + + + -38.35535003588469039 + -12.82171043979659331 + -38.33807328503521461 + -12.80367359560521656 + + albedo_63933ce5_ee3b_4891_bba3_3e6f2b632a65 + ./albedo.tif + + + + albedo + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571822.59035570570267737 + 8584473.1620953194797039 + + + -38.35534980613592637 + -12.82171043979659331 + -38.3381654292332712 + -12.80376424953941772 + + alos_dsm_afabef96_7acf_4ba8_9326_3fe0c486e868 + ./alos_dsm.tif + + + + alos_dsm + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571862.59035570570267737 + 8584493.1620953194797039 + + + -38.35535026563169225 + -12.82171043979659331 + -38.33779685245188773 + -12.80358247852375619 + + average_net_building_height_cb2fbeee_22a5_4862_a170_b5b97d8c2359 + ./average_net_building_height.tif + + + + average_net_building_height + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571832.59035570570267737 + 8584483.1620953194797039 + + + -38.35535003588469039 + -12.82171043979659331 + -38.33807328503521461 + -12.80367359560521656 + + esa_world_cover_913f3cfa_418a_4705_9ed8_cb4d0042455b + ./esa_world_cover.tif + + + + esa_world_cover + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571822.59035570570267737 + 8584473.1620953194797039 + + + -38.35534980613592637 + -12.82171043979659331 + -38.3381654292332712 + -12.80376424953941772 + + high_land_surface_temperature_b6aba51a_6624_45f4_a804_8947316deabd + ./high_land_surface_temperature.tif + + + + high_land_surface_temperature + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571822.59035570570267737 + 8584473.1620953194797039 + + + -38.35534980613592637 + -12.82171043979659331 + -38.3381654292332712 + -12.80376424953941772 + + land_surface_temperature_e26fbad7_3504_4b45_ad36_9231bc6ede9e + ./land_surface_temperature.tif + + + + land_surface_temperature + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571822.59035570570267737 + 8584473.1620953194797039 + + + -38.35534980613592637 + -12.82171043979659331 + -38.3381654292332712 + -12.80376424953941772 + + nasa_dem_68846b24_ab9e_4975_a548_9ea4c03bfe8d + ./nasa_dem.tif + + + + nasa_dem + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571832.59035570570267737 + 8584483.1620953194797039 + + + -38.35535003588469039 + -12.82171043979659331 + -38.33807328503521461 + -12.80367359560521656 + + natural_areas_fd87fec5_4965_46d4_9f49_3a87327de975 + ./natural_areas.tif + + + + natural_areas + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + open_buildings_0d3930fb_7530_4657_bde1_bf40431f46a7 + ./open_buildings.tif|layername=open_buildings + + + + open_buildings + + + GEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433]],USAGE[SCOPE["Horizontal component of 3D system."],AREA["World."],BBOX[-90,-180,90,180]],ID["EPSG",4326]] + +proj=longlat +datum=WGS84 +no_defs + 3452 + 4326 + EPSG:4326 + WGS 84 + longlat + EPSG:7030 + true + + + + + + + dataset + + + + + + + + + + + + + + + + + + GEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433]],USAGE[SCOPE["Horizontal component of 3D system."],AREA["World."],BBOX[-90,-180,90,180]],ID["EPSG",4326]] + +proj=longlat +datum=WGS84 +no_defs + 3452 + 4326 + EPSG:4326 + WGS 84 + longlat + EPSG:7030 + true + + + + + + + + + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + + + + + + + + + + + + + + "bf_source" + + + + overture_buildings_36036eef_d21e_4838_8914_f2ebad1d5c68 + ./overture_buildings.tif|layername=overture_buildings + + + + overture_buildings + + + GEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433]],USAGE[SCOPE["Horizontal component of 3D system."],AREA["World."],BBOX[-90,-180,90,180]],ID["EPSG",4326]] + +proj=longlat +datum=WGS84 +no_defs + 3452 + 4326 + EPSG:4326 + WGS 84 + longlat + EPSG:7030 + true + + + + + + + dataset + + + + + + + + + GEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433]],USAGE[SCOPE["Horizontal component of 3D system."],AREA["World."],BBOX[-90,-180,90,180]],ID["EPSG",4326]] + +proj=longlat +datum=WGS84 +no_defs + 3452 + 4326 + EPSG:4326 + WGS 84 + longlat + EPSG:7030 + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + 0 + generatedlayout + + + + + + + + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571832.59035570570267737 + 8584483.1620953194797039 + + + -38.35535003588469039 + -12.82171043979659331 + -38.33807328503521461 + -12.80367359560521656 + + smart_surface_lulc_3c04a4e2_2352_49bc_9c1a_d8c9b22055ce + ./smart_surface_lulc.tif + + + + smart_surface_lulc + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571830.59035570570267737 + 8584488.1620953194797039 + + + -38.35535015075841159 + -12.82171043979659331 + -38.33809171387467529 + -12.8036284306771595 + + tree_canopy_height_7902b00d_e052_4c25_86e2_f465a978f4fc + ./tree_canopy_height.tif + + + + tree_canopy_height + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571832.59035570570267737 + 8584483.1620953194797039 + + + -38.35535003588469039 + -12.82171043979659331 + -38.33807328503521461 + -12.80367359560521656 + + tree_cover_1ccee586_17ee_4e1b_aef7_5cfa559b5b05 + ./tree_cover.tif + + + + tree_cover + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571832.59035570570267737 + 8584488.1620953194797039 + + + -38.35535015075841159 + -12.82171043979659331 + -38.33807328503521461 + -12.80362838437874551 + + urban_land_use_2b9d2c0b_7689_489d_ad0d_7317d9d15faa + ./urban_land_use.tif + + + + urban_land_use + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + 569962.59035570570267737 + 8582493.1620953194797039 + 571862.59035570570267737 + 8584493.1620953194797039 + + + -38.35535026563169225 + -12.82171043979659331 + -38.33779685245188773 + -12.80358247852375619 + + world_pop_65d76980_e93c_4f74_84cb_3a2594b36255 + ./world_pop.tif + + + + world_pop + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + dataset + + + + + + + + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + gdal + + + + + + + + + 1 + 1 + 1 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + MinMax + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + resamplingFilter + + 0 + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + 255 + 255 + 255 + 255 + 0 + 255 + 255 + + + false + + + EPSG:7030 + + + m2 + meters + + + 5 + 2.5 + false + false + false + 1 + 0 + false + false + true + 0 + 255,0,0,255 + + + false + + + true + 2 + + + 1 + + + + + + + + + + + + + + + + + + + Kenn Cartier + 2024-08-13T11:33:46 + + + + + + + + + + + PROJCRS["WGS 84 / UTM zone 24S",BASEGEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],ID["EPSG",4326]],CONVERSION["UTM zone 24S",METHOD["Transverse Mercator",ID["EPSG",9807]],PARAMETER["Latitude of natural origin",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8801]],PARAMETER["Longitude of natural origin",-39,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8802]],PARAMETER["Scale factor at natural origin",0.9996,SCALEUNIT["unity",1],ID["EPSG",8805]],PARAMETER["False easting",500000,LENGTHUNIT["metre",1],ID["EPSG",8806]],PARAMETER["False northing",10000000,LENGTHUNIT["metre",1],ID["EPSG",8807]]],CS[Cartesian,2],AXIS["(E)",east,ORDER[1],LENGTHUNIT["metre",1]],AXIS["(N)",north,ORDER[2],LENGTHUNIT["metre",1]],USAGE[SCOPE["Navigation and medium accuracy spatial referencing."],AREA["Between 42°W and 36°W, southern hemisphere between 80°S and equator, onshore and offshore. Brazil. South Georgia and the South Sandwich Islands."],BBOX[-80,-42,0,-36]],ID["EPSG",32724]] + +proj=utm +zone=24 +south +datum=WGS84 +units=m +no_defs + 3174 + 32724 + EPSG:32724 + WGS 84 / UTM zone 24S + utm + EPSG:7030 + false + + + + + + + + + + + + + + + + + + + + + + GEOGCRS["WGS 84",ENSEMBLE["World Geodetic System 1984 ensemble",MEMBER["World Geodetic System 1984 (Transit)"],MEMBER["World Geodetic System 1984 (G730)"],MEMBER["World Geodetic System 1984 (G873)"],MEMBER["World Geodetic System 1984 (G1150)"],MEMBER["World Geodetic System 1984 (G1674)"],MEMBER["World Geodetic System 1984 (G1762)"],MEMBER["World Geodetic System 1984 (G2139)"],ELLIPSOID["WGS 84",6378137,298.257223563,LENGTHUNIT["metre",1]],ENSEMBLEACCURACY[2.0]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433]],USAGE[SCOPE["Horizontal component of 3D system."],AREA["World."],BBOX[-90,-180,90,180]],ID["EPSG",4326]] + +proj=longlat +datum=WGS84 +no_defs + 3452 + 4326 + EPSG:4326 + WGS 84 + longlat + EPSG:7030 + true + + + + + + + diff --git a/tests/test_layers.py b/tests/test_layers.py index 8372614..09e9369 100644 --- a/tests/test_layers.py +++ b/tests/test_layers.py @@ -24,27 +24,28 @@ WorldPop ) from city_metrix.layers.layer import get_image_collection -from tests.fixtures.bbox_constants import BBOX_BRAZIL_LAURO_DE_FREITAS_1 +from tests.fixtures.bbox_constants import BBOX_BR_LAURO_DE_FREITAS_1 EE_IMAGE_DIMENSION_TOLERANCE = 1 # Tolerance compensates for variable results from GEE service + def test_albedo(): - assert Albedo().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).mean() + assert Albedo().get_data(BBOX_BR_LAURO_DE_FREITAS_1).mean() def test_alos_dsm(): - mean = AlosDSM().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).mean() + mean = AlosDSM().get_data(BBOX_BR_LAURO_DE_FREITAS_1).mean() assert mean def test_average_net_building_height(): - assert AverageNetBuildingHeight().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).mean() + assert AverageNetBuildingHeight().get_data(BBOX_BR_LAURO_DE_FREITAS_1).mean() def test_esa_world_cover(): count = ( EsaWorldCover(land_cover_class=EsaWorldCoverClass.BUILT_UP) - .get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + .get_data(BBOX_BR_LAURO_DE_FREITAS_1) .count() ) assert count @@ -52,7 +53,7 @@ def test_esa_world_cover(): def test_read_image_collection(): ic = ee.ImageCollection("ESA/WorldCover/v100") - data = get_image_collection(ic, BBOX_BRAZIL_LAURO_DE_FREITAS_1, 10, "test") + data = get_image_collection(ic, BBOX_BR_LAURO_DE_FREITAS_1, 10, "test") expected_crs = 32724 expected_x_dimension = 187 @@ -67,47 +68,47 @@ def test_read_image_collection(): def test_read_image_collection_scale(): ic = ee.ImageCollection("ESA/WorldCover/v100") - data = get_image_collection(ic, BBOX_BRAZIL_LAURO_DE_FREITAS_1, 100, "test") + data = get_image_collection(ic, BBOX_BR_LAURO_DE_FREITAS_1, 100, "test") expected_x_dimension = 19 expected_y_dimension = 20 assert data.dims == {"x": expected_x_dimension, "y": expected_y_dimension} def test_high_land_surface_temperature(): - data = HighLandSurfaceTemperature().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + data = HighLandSurfaceTemperature().get_data(BBOX_BR_LAURO_DE_FREITAS_1) assert data.any() def test_land_surface_temperature(): - mean_lst = LandSurfaceTemperature().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).mean() + mean_lst = LandSurfaceTemperature().get_data(BBOX_BR_LAURO_DE_FREITAS_1).mean() assert mean_lst def test_landsat_collection_2(): bands = ['green'] - data = LandsatCollection2(bands).get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + data = LandsatCollection2(bands).get_data(BBOX_BR_LAURO_DE_FREITAS_1) assert data.any() def test_nasa_dem(): - mean = NasaDEM().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).mean() + mean = NasaDEM().get_data(BBOX_BR_LAURO_DE_FREITAS_1).mean() assert mean def test_natural_areas(): - data = NaturalAreas().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + data = NaturalAreas().get_data(BBOX_BR_LAURO_DE_FREITAS_1) assert data.any() def test_openbuildings(): - count = OpenBuildings().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).count().sum() + count = OpenBuildings().get_data(BBOX_BR_LAURO_DE_FREITAS_1).count().sum() assert count def test_open_street_map(): count = ( OpenStreetMap(osm_class=OpenStreetMapClass.ROAD) - .get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + .get_data(BBOX_BR_LAURO_DE_FREITAS_1) .count() .sum() ) @@ -115,28 +116,28 @@ def test_open_street_map(): def test_overture_buildings(): - count = OvertureBuildings().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).count().sum() + count = OvertureBuildings().get_data(BBOX_BR_LAURO_DE_FREITAS_1).count().sum() assert count def test_sentinel_2_level2(): sentinel_2_bands = ["green"] - data = Sentinel2Level2(sentinel_2_bands).get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + data = Sentinel2Level2(sentinel_2_bands).get_data(BBOX_BR_LAURO_DE_FREITAS_1) assert data.any() def test_smart_surface_lulc(): - count = SmartSurfaceLULC().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).count() + count = SmartSurfaceLULC().get_data(BBOX_BR_LAURO_DE_FREITAS_1).count() assert count def test_tree_canopy_height(): - count = TreeCanopyHeight().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).count() + count = TreeCanopyHeight().get_data(BBOX_BR_LAURO_DE_FREITAS_1).count() assert count def test_tree_cover(): - actual = TreeCover().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).mean() + actual = TreeCover().get_data(BBOX_BR_LAURO_DE_FREITAS_1).mean() expected = 54.0 tolerance = 0.1 assert ( @@ -145,9 +146,9 @@ def test_tree_cover(): def test_urban_land_use(): - assert UrbanLandUse().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1).count() + assert UrbanLandUse().get_data(BBOX_BR_LAURO_DE_FREITAS_1).count() def test_world_pop(): - data = WorldPop().get_data(BBOX_BRAZIL_LAURO_DE_FREITAS_1) + data = WorldPop().get_data(BBOX_BR_LAURO_DE_FREITAS_1) assert data.any() diff --git a/tests/test_methods.py b/tests/test_methods.py index 4651883..176f305 100644 --- a/tests/test_methods.py +++ b/tests/test_methods.py @@ -9,7 +9,6 @@ MockLayer, MockMaskLayer, ) -from .fixtures.bbox_constants import * def test_count(): diff --git a/tests/test_write_layers_to_geotiff.py b/tests/test_write_layers_to_geotiff.py new file mode 100644 index 0000000..5b3ddc2 --- /dev/null +++ b/tests/test_write_layers_to_geotiff.py @@ -0,0 +1,165 @@ +import pytest +import os +import shutil + +from city_metrix.layers import ( + Albedo, + AlosDSM, + AverageNetBuildingHeight, + EsaWorldCover, + HighLandSurfaceTemperature, + LandsatCollection2, + LandSurfaceTemperature, + NasaDEM, + NaturalAreas, + OpenBuildings, + OpenStreetMap, + OvertureBuildings, + Sentinel2Level2, + SmartSurfaceLULC, + TreeCanopyHeight, + TreeCover, + UrbanLandUse, + WorldPop +) +from tests.fixtures.bbox_constants import * +from tools.general_tools import create_temp_folder, verify_file_is_populated + +RUN_DUMPS = False +BBOX = BBOX_BR_LAURO_DE_FREITAS_1 + +@pytest.mark.skipif(RUN_DUMPS == False, reason='Skipping since RUN_DUMPS set to False') +def test_prepare_target(): + qgis_project_file = 'layers_for_br_lauro_de_freitas.qgs' + + source_folder = os.path.join(os.path.dirname(__file__), 'resources') + output_temp_folder = create_temp_folder('test_result_tif_files') + source_qgis_file = os.path.join(source_folder, qgis_project_file) + target_qgis_file = os.path.join(output_temp_folder, qgis_project_file) + shutil.copyfile(source_qgis_file, target_qgis_file) + + process_layers(output_temp_folder) + + +def process_layers(output_temp_folder): + write_albedo(output_temp_folder) + write_alos_dsm(output_temp_folder) + write_average_net_building_height(output_temp_folder) + write_esa_world_cover(output_temp_folder) + write_high_land_surface_temperature(output_temp_folder) + write_land_surface_temperature(output_temp_folder) + # write_landsat_collection_2(output_temp_folder) + write_nasa_dem(output_temp_folder) + write_natural_areas(output_temp_folder) + write_openbuildings(output_temp_folder) + # write_open_street_map(output_temp_folder) + write_overture_buildings(output_temp_folder) + # write_sentinel_2_level2(output_temp_folder) + write_smart_surface_lulc(output_temp_folder) + write_tree_canopy_height(output_temp_folder) + write_tree_cover(output_temp_folder) + write_urban_land_use(output_temp_folder) + write_world_pop(output_temp_folder) + + +def write_albedo(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'albedo.tif') + Albedo().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_alos_dsm(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'alos_dsm.tif') + AlosDSM().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_average_net_building_height(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'average_net_building_height.tif') + AverageNetBuildingHeight().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_esa_world_cover(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'esa_world_cover.tif') + EsaWorldCover().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_high_land_surface_temperature(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'high_land_surface_temperature.tif') + HighLandSurfaceTemperature().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_land_surface_temperature(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'land_surface_temperature.tif') + LandSurfaceTemperature().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +# TODO: Determine how to output xarray.Dataset with time dimension for QGIS rendering +# def write_landsat_collection_2(output_temp_folder): +# file_path = prep_output_path(output_temp_folder, 'landsat_collection2.tif') +# bands = ['green'] +# LandsatCollection2(bands).write(BBOX, file_path, tile_degrees=None) +# assert verify_file_is_populated(file_path) + +def write_nasa_dem(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'nasa_dem.tif') + NasaDEM().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_natural_areas(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'natural_areas.tif') + NaturalAreas().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_openbuildings(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'open_buildings.tif') + OpenBuildings().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +# TODO: class function "write" does not properly handle call +# def write_open_street_map(output_temp_folder): +# file_path = prep_output_path(output_temp_folder, 'open_street_map.tif') +# OpenStreetMap().write(BBOX, file_path, tile_degrees=None) +# assert verify_file_is_populated(file_path) + +def write_overture_buildings(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'overture_buildings.tif') + OvertureBuildings().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +# TODO: Determine how to output xarray.Dataset with time dimension for QGIS rendering +# def write_sentinel_2_level2(output_temp_folder): +# file_path = prep_output_path(output_temp_folder, 'sentinel_2_level2.tif') +# sentinel_2_bands = ["green"] +# Sentinel2Level2(sentinel_2_bands).write(BBOX, file_path, tile_degrees=None) +# assert verify_file_is_populated(file_path) + +def write_smart_surface_lulc(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'smart_surface_lulc.tif') + SmartSurfaceLULC().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_tree_canopy_height(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'tree_canopy_height.tif') + TreeCanopyHeight().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_tree_cover(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'tree_cover.tif') + TreeCover().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_urban_land_use(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'urban_land_use.tif') + UrbanLandUse().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + +def write_world_pop(output_temp_folder): + file_path = prep_output_path(output_temp_folder, 'world_pop.tif') + WorldPop().write(BBOX, file_path, tile_degrees=None) + assert verify_file_is_populated(file_path) + + +def prep_output_path(output_temp_folder, file_name): + file_path = os.path.join(output_temp_folder, file_name) + if os.path.isfile(file_path): + os.remove(file_path) + return file_path diff --git a/tools/general_tools.py b/tools/general_tools.py new file mode 100644 index 0000000..aa082a1 --- /dev/null +++ b/tools/general_tools.py @@ -0,0 +1,20 @@ +import platform +import os + +def create_temp_folder(sub_directory): + if platform.system() == 'Linux': + path = '/tmp/%s' % sub_directory + elif platform.system() == 'Windows': + localappdata_path = os.getenv("LOCALAPPDATA") + path = r'%s\Temp\%s' % (localappdata_path, sub_directory) + else: + raise ValueError('Method not implemented for this OS.') + + if os.path.isdir(path) == False: + os.makedirs(path) + + return path + +def verify_file_is_populated(file_path): + is_populated = True if os.path.getsize(file_path) > 0 else False + return is_populated