[postgis-users] Retrieving Data from PostGIS Raster using ST_Value

elliott elliott at cpi.com
Mon Oct 17 12:27:58 PDT 2011


Thanks for the response.  A follow up question:  what if the 
yourLongitude, yourLatitude values provided in the query are not grid 
points in that they fall within a bounding pixel grid.  Only values for 
the intersection points are known so how does a non-intersecting point 
get assigned a value from the query?



On 10/14/2011 3:32 PM, Pierre Racine wrote:
> If you want to get the pixel value under a point just do:
>
> SELECT ST_Value(rast, ST_Transform(ST_SetSRID(ST_Point(yourLongitude, yourLatitude), 4326),  ST_SRID(rast))
> FROM yourTable
>
> That should be pretty fast.
>
> In any case you should load your raster when loading it (-k100x100 or -k 20x20) and then index it:
>
> CREATE INDEX srtm_tiled_rast_gist_idx  ON srtm_tiled USING GIST (ST_ConvexHull(rast));
>
> Interpolating the elevation of a point is another story. You could build a grid of 8, 15 or 24 points around your lat/long, query the elevation at those points and use your algorithm to compute the interpolation.
>
> Really getting the elevation for 1 or 25 points should be a matter of microseconds.
>
> Pierre
>
>    
>> -----Original Message-----
>> From: postgis-users-bounces at postgis.refractions.net [mailto:postgis-users-
>> bounces at postgis.refractions.net] On Behalf Of elliott
>> Sent: Thursday, October 13, 2011 9:38 AM
>> To: PostGIS Users Discussion
>> Subject: Re: [postgis-users] Retrieving Data from PostGIS Raster using ST_Value
>>
>> The table contains SRTM3 data.  What I would really like to do is retrieve the
>> altitude for any given lat/lon.  We currently have scientific codes that read the
>> SRTM3 flat file into an array and interpolate the value for the lat/lon pair.  We
>> would like to retrieve the data from a database instead of flat file thinking the
>> performance would be better.  However, the times retrieving the array from the
>> database are many orders of magnitude worse than just reading the array in
>> from a flat file.
>>
>> On 10/12/2011 8:34 PM, Pierre Racine wrote:
>>      
>>> If you want to get all the values for every pixel do:
>>>
>>> SELECT (ST_DumpAsPolyogns(rast)).val
>>> FROM your table
>>>
>>> Can I ask why you want to do that? Normally people want to extract values
>>>        
>> intersecting with a polygon or a point.
>>      
>>> You can also get the histogram of the raster using ST_Histogram().
>>>
>>> Pierre
>>> ________________________________________
>>> From: postgis-users-bounces at postgis.refractions.net
>>> [postgis-users-bounces at postgis.refractions.net] On Behalf Of elliott
>>> [elliott at cpi.com]
>>> Sent: Wednesday, October 12, 2011 9:04 AM
>>> To: PostGIS Users Discussion
>>> Subject: [postgis-users] Retrieving Data from PostGIS Raster using
>>> ST_Value
>>>
>>> Hello Everyone,
>>>
>>> I am very new to using PostGIS Raster.  I need to retrieve data fields
>>> from a tile loaded into the database.  Using ST_Height and ST_Width, I
>>> get the number of rows and columns and iterate over these using the
>>> ST_Value to retrieve the data.  This is extremely slow taking 1/2 hour
>>> to get all of the data required.  Is there a faster way to accomplish this?
>>>
>>> Thanks!
>>> _______________________________________________
>>> postgis-users mailing list
>>> postgis-users at postgis.refractions.net
>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>> _______________________________________________
>>> postgis-users mailing list
>>> postgis-users at postgis.refractions.net
>>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>>
>>>
>>>        
>> _______________________________________________
>> postgis-users mailing list
>> postgis-users at postgis.refractions.net
>> http://postgis.refractions.net/mailman/listinfo/postgis-users
>>      
> _______________________________________________
> postgis-users mailing list
> postgis-users at postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users
>
>    

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20111017/4935861d/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: moz-screenshot-5.png
Type: image/png
Size: 13692 bytes
Desc: not available
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20111017/4935861d/attachment.png>


More information about the postgis-users mailing list