[Gdal-dev] MrSID Driver v. 4.0.x overviews

dem at acri-st.fr dem at acri-st.fr
Wed Jul 21 16:51:01 EDT 2004


Hi Michael,

> > I don't have the MrSID files other than 8 bit, do you have a samples? It
> > will be enough for me to fix that bug.
>
> ...And I have way too many MrSID files that are other than 8 bit. :-(
> I think there's at least shipping in the SDK examples directory now, if
> not I will mail you one separately.

I see only 8 bit .sid datas in the example directory ; maybe we should put
various MrSID example files (different bits per samples, color interpretations,
..) on remotesensing FTP (in /gdal/data/mrsid) ? (example files on
remotesensing FTP have to be small files and without patent I believe...)

> > Maybe one reason is that to read an RGB image I believe each tile is
> > decompressed 3 time, one time per component... About the same problem
> > with the GeoTIFF driver, Frank said that we can optimize this by
> > reading interleaved data in one pass by using the
> > GDALDataset::RasterIO() ; maybe we can also implement this for the
> > MrSID Driver ? Maybe we can also try to remove the memcpy in the
> > IReadBlock function and read directly data into the GDAL buffer.
> > (Maybe there are some optimization to do using the MrSID API
> > differently ?)
>
> Yes, one scene read will decode all three bands at once (they are encoded
> together, due to the RGB->YIQ color transform).

Yes but GDAL Data Model and API allows to read only "band per band" from a
dataset ; so to read an RGB MrSID File you have to read the 3 bands separately
; this implies 3 redundant decompressions phases of the MrSID data (and each
MrSID DSDK decompression phases decompress the 3 bands...).

> Please note that our SDK will not (yet!) support all Part 1 JP2 files.
> In particular, we don't support images that:
>   - use >16 bits per component
>   - use funky colourspaces (none, gray, and RGB are all okay)
>   - have components of differing sizes
>   - have components aligned to different grid sizes or origins
> I doubt GDAL would support such images anyway, though..?

GDAL support these datatypes : Byte, UInt16, Int16, UInt32, Int32, Float32,
Float64, and the complex types CInt16, CInt32, CFloat32, and CFloat64
but not all drivers support all of them...

Best Regards,

Julien


----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.



More information about the Gdal-dev mailing list