[prev in list] [next in list] [prev in thread] [next in thread] 

List:       postgis-users
Subject:    Re: [postgis-users] =?iso-8859-1?q?RE=A0=3A__RE=A0=3A__get_unique_val?=
From:       Pierre Racine <Pierre.Racine () sbf ! ulaval ! ca>
Date:       2012-05-28 18:26:09
Message-ID: 87A96661E65C5541AB4D20721C2DD7F8CFBB565DBE () EXCH-MBX-A ! ulaval ! ca
[Download RAW message or body]

What is not clear in your description is: How do you want the value associa=
ted to each polygon to be computed from the many pixel the polygon is inter=
secting with? Do you want:

-the raster value corresponding to one point inside the polygon
-the mean of all the pixel centroid falling inside the polygon
-the area weighted mean of all the raster values inside the polygon
-the value most represented inside the polygon
-etc...

There are many ways to compute this value.

Pierre

> -----Original Message-----
> From: postgis-users-bounces@postgis.refractions.net [mailto:postgis-users-
> bounces@postgis.refractions.net] On Behalf Of Francois Hugues
> Sent: Monday, May 28, 2012 12:40 PM
> To: PostGIS Users Discussion
> Subject: [postgis-users] RE=A0: RE=A0: get unique values from raster inte=
rsecting
> apolygon
> =

> Thanks but i think the way I made my picture was not really clear and I
> understand now how you read it !
> =

> I already know the existence of st_value for points. Here, the red point =
on my
> picture are the values of the raster and not a table of points : if it is=
 build from a
> DEM, you have the elevation measure based on a regular pattern and finall=
y you
> get a grid and in the centre of each cell the value measured (my red poin=
ts)
> =

> For my problem I have two table : one made of polygons, the other a raster
> made of tiles. I want to get value where polygons intersect raster but a =
celle
> must not appear twice. My raster will be totally covered by polygons and =
at the
> end I want a gid|val table with as many lines as my raster has values.
> =

> I hope it is clearer now but, for sure, my english does not help !
> =

> Thanks,
> =

> Hugues.
> =

> =

> -------- Message d'origine--------
> De: postgis-users-bounces@postgis.refractions.net de la part de Pierre Ra=
cine
> Date: lun. 28/05/2012 16:56
> =C0: PostGIS Users Discussion
> Objet : Re: [postgis-users] RE=A0:  get unique values from raster interse=
cting
> apolygon
> =

> I this case the right query looks like this:
> =

> SELECT gid, ST_Value(rast, geom) val
> FROM yourraster table, yourpointtable
> WHERE ST_Intersects(rast, geom)
> =

> Make sure to tile and index your raster properly (smaller is better). You=
 can do
> this at import time.
> =

> The result for cell outside any polygon will be "null".
> =

> Pierre
> =

> > -----Original Message-----
> > From: postgis-users-bounces@postgis.refractions.net [mailto:postgis-use=
rs-
> > bounces@postgis.refractions.net] On Behalf Of Francois Hugues
> > Sent: Monday, May 28, 2012 9:06 AM
> > To: PostGIS Users Discussion
> > Subject: [postgis-users] RE=A0: get unique values from raster intersect=
ing
> apolygon
> >
> > I want one value per red point (which are raster data).
> >
> > The gid of one polygon will appear as many times as necessary regarding=
 how
> it
> > intersects the raster.
> >
> > Hugues.
> >
> >
> > -------- Message d'origine--------
> > De: postgis-users-bounces@postgis.refractions.net de la part de Pierre =
Racine
> > Date: lun. 28/05/2012 14:24
> > =C0: PostGIS Users Discussion
> > Objet : Re: [postgis-users] get unique values from raster intersecting =
apolygon
> >
> > You want one value per polygon or one value per red point? It is not cl=
ear to
> me
> > from your drawing.
> >
> > Pierre
> >
> > > -----Original Message-----
> > > From: postgis-users-bounces@postgis.refractions.net [mailto:postgis-u=
sers-
> > > bounces@postgis.refractions.net] On Behalf Of Francois Hugues
> > > Sent: Saturday, May 26, 2012 5:29 PM
> > > To: postgis-users@postgis.refractions.net
> > > Subject: [postgis-users] get unique values from raster intersecting a=
 polygon
> > >
> > > Hello list,
> > >
> > > I have to get values from raster where they intersect polygons from a=
 layer
> > with
> > > numerous polygons which have shared boundaries, but I don't want to h=
ave
> > > duplicate values from raster. The final result must be something like=
 : gid |
> val.
> > >
> > > To explain my case, I made a picture.
> > >
> > > I think ST_intersection could help but I don't know what will be the =
exact
> > result.
> > > In my example, we have a grid (a DEM for example), each red point is =
the
> value
> > > in the centre of each cell and two polygons A and B. I think cells to=
tally
> within
> > > polygons are not a problem, but in green I have highlighted some ambi=
guous
> > > cases :
> > > - 1 and 2 are cells shared by both polygons but not in the same propo=
rtions
> and
> > I
> > > would like to get value 1 for polygon A but not for B and value 2 for=
 polygon
> B
> > > but not for A
> > > - What will be the result for cell number 3 and for the other green c=
ell
> without
> > > number (and for all the ones which are not totally within a polygon) =
? I think
> > the
> > > value is the same for the whole cell (st_dumpaspolygon) and will be r=
eturned
> > > whatever the part of the cell covered by the polygon, but if someone =
could
> > > confirm.
> > >
> > > If st_intersection use st_DumpAsPolygon, could it be better to work d=
irectly
> > with
> > > this polygonized table using its own gist index and dealing with shar=
ed areas
> of
> > > cells between different polygons ?
> > >
> > > Hugues.
> > >
> > >
> > >
> > >
> >
> > _______________________________________________
> > postgis-users mailing list
> > postgis-users@postgis.refractions.net
> > http://postgis.refractions.net/mailman/listinfo/postgis-users
> =

> _______________________________________________
> postgis-users mailing list
> postgis-users@postgis.refractions.net
> http://postgis.refractions.net/mailman/listinfo/postgis-users

_______________________________________________
postgis-users mailing list
postgis-users@postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic