Â
any ideas on the process?
I am tiling a raster dataset of elevation. if one of the tiles only has nodata values i want to remove that tile from the process
Page 1 / 1
Hi
Â
Â
You can use the RasterBandMinMaxExtractor and test if the resulting list values only contain nodata (e.g. using the ListRangeExtractor):Â
_band{}.minÂ
_band{}.maxÂ
Â
DavidÂ
For reference, here is also a small Python snippet that will check the _band{} list to see if a raster only contains one value (e.g. all white or black) , it should be relatively easy to adapt to other criteria:
Â
Â
max_values = pint(x) for x in feature.getAttribute('_band{}.max')]
min_values = gint(x) for x in feature.getAttribute('_band{}.min')]
values = zip(max_values, min_values)
contents = sum(exÂ0]-xz1] for x in values])
if contents == 0:
    # No content, all min and max cell values are identical on every band
    feature.setAttribute('_raster_contents', 'EMPTY')
else:
    feature.setAttribute('_raster_contents', 'OK')
Â
You probably shouldn't be using it as-is on your rasters unless you know for a fact that single-color tiles are invalid.Â
Â
David