Oracle 19c:
In some cases the method SDO_GEOR.getRasterSubset returns a BLOB of a different length than the input window originally defines by its pixel dimensions. Therefore, width and height of the raster image have to be guessed based on the initial input window in order to interpret the BLOB as an image. Otherwise the image is distorted.
Example:
Input window: 31 rows x 17 columns (=527 pixels)
BLOB returned: 576 pixels
Particularly, the problem occurs with very small subsets of the original raster (high zoom levels).
Attached you find an example script based on raster data without blocking/pyramids.
getRasterSubset_outWindow.txt (4.72 KB)Metadata of the GeoRaster data used:
GeoRaster_metadata.txt (2.26 KB)