[postgis-devel] [PostGIS] #1114: [raster] ST_Resample

PostGIS trac at osgeo.org
Wed Jul 6 15:30:36 PDT 2011


#1114: [raster] ST_Resample
----------------------------+-----------------------------------------------
 Reporter:  dustymugs       |       Owner:  pracine              
     Type:  task            |      Status:  new                  
 Priority:  medium          |   Milestone:  PostGIS Raster Future
Component:  postgis raster  |     Version:  trunk                
 Keywords:                  |  
----------------------------+-----------------------------------------------
 With the use of GDAL's warp API, a full set of different functions is
 needed to provide end-user functions.  Therefore, the following function
 underlies all the other functions:

 {{{
 _ST_Resample(
         rast raster,
         srid integer DEFAULT NULL,
         scalex double precision DEFAULT 0,
         scaley double precision DEFAULT 0,
         upperleftx double precision DEFAULT NULL,
         upperlefty double precision DEFAULT NULL,
         skewx double precision DEFAULT NULL,
         skewy double precision DEFAULT NULL,
         algorithm text DEFAULT 'NearestNeighbour',
         maxerr double precision DEFAULT 0.125
 ) -> raster
 }}}

 User-facing functions will provide needed validation before passing
 parameters to the above function.

 As can be seen above, there is a "srid" parameter.  The expectation is
 that ST_Transform will be refactored to call _ST_Resample.

 The most comprehensive user function using _ST_Resample is:

 {{{
 ST_Resample(
         rast raster,
         srid integer DEFAULT NULL,
         scalex double precision DEFAULT 0,
         scaley double precision DEFAULT 0,
         upperleftx double precision DEFAULT NULL,
         upperlefty double precision DEFAULT NULL,
         skewx double precision DEFAULT NULL,
         skewy double precision DEFAULT NULL,
         algorithm text DEFAULT 'NearestNeighbour',
         maxerr double precision DEFAULT 0.125
 ) -> raster
 }}}

 Parameters passed to ST_Resample will be validated to ensure that at least
 one of the srid, scale, upperleft and skew parameters are provided.

   returns the resampled raster

   srid: the SRID of the projection to use when reprojecting the raster

   scalex: the resampled raster's scale in the X axis. default is 0
 indicating that the user isn't specifying the resampled raster's scale

   scaley: the resampled raster's scale in the Y axis. default is 0
 indicating that the user isn't specifying the resampled raster's scale

   upperleftx: the X component of the corner of the upper-left pixel of the
 resampled raster.  default is NULL indicating that the user isn't
 realigning the raster

   upperlefty: the Y component of the corner of the upper-left pixel of the
 resampled raster.  default is NULL indicating that the user isn't
 realigning the raster

   skewx: the X component of the resampled raster's skew.  default is NULL
 indicating that the skew of the original raster will be applied to the the
 resampled raster

   skewy: the Y component of the resampled raster's skew.  default is NULL
 indicating that the skew of the original raster will be applied to the the
 resampled raster

   algorithm: the resampling algorithm to use when resampling the raster.
 default is '!NearestNeighbour'. possible algorithms are:

 {{{
 NearestNeighbour (default.  fastest performance but worst interpolation)

 NearestNeighbor (for those wanting to use the American spelling)

 Bilinear

 Cubic

 CubicSpline

 Lanczos
 }}}

   maxerr: the threshold for transformation approximation by the resampling
 algorithm (in pixel units). default is 0.125, which is the same value used
 in GDAL gdalwarp utility. if set to zero, no approximation takes place.

 The other variant of ST_Resample is:

 {{{
 ST_Resample(
         rast raster,
         ref raster,
         algorithm text DEFAULT 'NearestNeighbour',
         maxerr double precision DEFAULT 0.125
 ) -> raster
 }}}

   ref: the reference raster whose SRID, scale, upperleft coordinate and
 skew will be applied to the "rast" raster

 Additional functions will be documented in following entries for this
 ticket.

-- 
Ticket URL: <http://trac.osgeo.org/postgis/ticket/1114>
PostGIS <http://trac.osgeo.org/postgis/>
The PostGIS Trac is used for bug, enhancement & task tracking, a user and developer wiki, and a view into the subversion code repository of PostGIS project.


More information about the postgis-devel mailing list