[gdal-dev] problem with ArcSDE raster (negative values)

Howard Butler hobu.inc at gmail.com
Tue Dec 8 09:28:03 EST 2009


On Dec 8, 2009, at 6:21 AM, Kor de Jong wrote:

> Hi Bart,
> 
> On Tuesday 08 December 2009 12:33:10 bartvde at osgis.nl wrote:
>> in ArcMap I see negative values, in GDAL all values seem to have a shift
>> of 256, so -21 becomes 235. Nodata values are also off with 256, so -256
>> in ArcMap becomes 0 in GDAL.
> 
> The pixel type of your input is char (signed 8 bit). The no-data value
> is -256 (which cannot be represented by the signed 8 bit, btw).
> 
> For some reason your data gets converted from a signed 8 bit type to an
> unsigned 8 bit type.
> 
> Looking at the trunk version of sderasterband.cpp I see that GDT_BYTE is
> taken to be the equivalent of SE_PIXEL_TYPE_8BIT_S. If this means that
> an input of signed 8 bit value is stored in an unsigned 8 bit value,
> than that would explain what you are seeing. An alternative would be to
> update this code to return GDT_Int16, which will leave your data intact.
> Line 833.

This is very likely the culprit.   Thanks Kor.  Please file a bug on this and I will try to apply it before the release.  I would note that I don't have SDE anymore to be able to test against, so I would have to depend on Bart's assessment of whether or not the issue is resolved.

Howard



More information about the gdal-dev mailing list