[mapserver-users] How to serve individual RAW binary Bands from WCS as floating point geotiff

Peter Willis pwillis at aslenv.com
Thu Jan 28 14:26:44 PST 2010


Hello,

The definition of GEOTIFF_FLOAT is as follows:

OUTPUTFORMAT
   NAME GEOTIFF_FLOAT
   DRIVER "GDAL/GTiff"
   MIMETYPE "application/octet-stream"
   IMAGEMODE FLOAT32
END

I Added the MIMETYPE as shown to ensure that web browsers
would ask to save the file rather than just open it in an
image viewer from a temp file. (MS Windows...)

That part works fine.


Mostly I am concerned with extracting a specific 'band'
from the multi-band file. The server serves floating point
geotiff just fine.

Peter


Rahkonen Jukka wrote:
> Hi,
> 
> How have you defined the OUTPUTFORMAT for GEOTIFF_FLOAT?
> 
> -Jukka Rahkonen-
> 
> 
> Peter Willis wrote:
> 
>  
>> Hello,
> 
>> I have been setting up a WCS map file for mapserver.
> 
>> PROBLEM:
> 
>> Problems arise when rasters are defined
>> as follows:
> 
> LAYER
>    NAME SomeDataChannel120
>    STATUS OFF
>    DEBUG ON
>    TYPE RASTER ### required
>    PROCESSING "BANDS=120"
>    METADATA
>      "wcs_label"           "Data/stuff"
>      "wcs_rangeset_name"   'bands'
>      "wcs_rangeset_label"  "Stuff thats mapped"
>      "ows_extent" '-135 55 -121 46'
>      "wcs_resolution" '0.08333333333333332 -0.083333333333333332'
>      "ows_srs" 'EPSG:4326'
>      "wcs_srs" 'EPSG:4326'
>      "wcs_formats" 'GEOTIFF_FLOAT,GEOTIFF_INT16'
>      "wcs_nativeformat" 'ENVI'
> #    "wcs_bandcount" '563'
>      "wcs_rangeset_axes" 'bands'
>    END
>    DATA /data/stuff.img
>    PROJECTION
>      "init=epsg:4623"
>    END
>    DUMP TRUE ### required
> END
> 
> 
> I have  'wcs_bandcount'  commented out because mapserver
> causes an internal error in the web server if I define the
> band count.
> 
> I get floating point geotiff served with the following client request:
> http://sparky.com/cgi-bin/wcs?REQUEST=GetCoverage&SERVICE=WCS&VERSION=1.0.0&COVERAGE=SomeDataChannel120&CRS=EPSG:4326&BBOX=-135,55,-121,46&WIDTH=432&HEIGHT=216&FORMAT=GEOTIFF_FLOAT&RangeSubset=contents:nearest[Band[120]]
> 
> ..however, I always only get the first band from the img file....
> 
> 
> QUESTIONS:
> 
> Is there a problem with this setup?
> 
> Do I need to define each band as a layer in the mapfile
> or will mapserver WCS allow the client to request a single
> channel?
> 
> Thanks for any enlightenment,
> 
> Peter



More information about the MapServer-users mailing list