ST_Raster.getValue

Definition

The ST_Raster.getValue function returns the value of a single pixel given that pixel's location within the ST_Raster object. The location can be specified either in pixel coordinates or by geographic coordinates. The function returns an error whenever the specified location is beyond the raster pixel dimension or geographic extent. ST_Raster.getValue returns NULL if the pixel value at the specified location is NoData.

Syntax

Oracle

getValue (band INTEGER, 
          level INTEGER, 
          x INTEGER, 
          y INTEGER)

getValue (band INTEGER, 
          level INTEGER, 
          point SE_COORD)

PostgreSQL

getValue (raster IN ST_RASTER, 
          band INT, 
          level INT, 
          x INT, 
          y INT)

getValue (raster IN ST_RASTER, 
          band INT, 
          level INT, 
          point SE_COORD)

SQL Server

getValue (band IN NUMBER, 
          level IN NUMBER, 
          x IN NUMBER, 
          y IN NUMBER)

getValueByLoc (band IN NUMBER, 
               level IN NUMBER, 
               x IN DOUBLE, 
               y IN DOUBLE)

Returns

Oracle

Number

PostgreSQL

Float8

SQL Server

Double

Parameters

Parameter

Description

band

The band number (beginning at 1) of the pixel

level

The pyramid level of the pixel

x

The x-pixel coordinate

y

The y-pixel coordinate

point

The geographic coordinate of the pixel

raster

The ST_Raster object containing the pixel value

Examples

The first example returns pixel values for band 1, 2, and 3 for the base pyramid level at pixel location (0,0).

The second example returns pixel values for the base pyramid level for bands 1, 2, and 3 at a geographic location (100.5, 20.5).

Oracle

  1. SELECT t.image.getValue(1,0,0,0) r,
           t.image.getValue(2,0,0,0) g,
           t.image.getValue(3,0,0,0) b
    FROM VEG t 
    WHERE t.image.raster_id = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
  2. SELECT t.image.getValue(1,0,se_coord(100.5,20.5)) r,
           t.image.getValue(2,0,se_coord(100.5,20.5)) g,
           t.image.getValue(3,0,se_coord(100.5,20.5)) b
    FROM VEG t
    WHERE t.image.raster_id = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173

PostgreSQL

  1. SELECT getValue(image,1,0,0,0) r,
           getValue(image,2,0,0,0) g,
           getValue(image,3,0,0,0) b
    FROM veg 
    WHERE raster_id(image) = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
  2. SELECT getValue(image,1,0,se_coord(100.5,20.5)) r,
           getValue(image,2,0,se_coord(100.5,20.5)) g,
           getValue(image,3,0,se_coord(100.5,20.5)) b
    FROM veg 
    WHERE raster_id(image) = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173

SQL Server

  1. SELECT image.getValue(1,0,0,0) r,
           image.getValue(2,0,0,0) g,
           image.getValue(3,0,0,0) b
    FROM veg 
    WHERE image.raster_id = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
  2. SELECT getValueByLoc(image,1,0,100.5,20.5) as r,
           getValueByLoc(image,2,0,100.5,20.5) as g,
           getValueByLoc(image,3,0,100.5,20.5) as b
    FROM veg
    WHERE image.raster_id = 1;
    
            R          G          B
    ---------- ---------- ----------
            83         49        173

2/5/2013