将栅格像素转换为Polygon对象集合。

语法

setof record ST_PixelAsPolygons(raster raster_obj,
    integer band default  0,
    integer pyramid default 0,
    boolean exclude_nodata_value default true,
    out integer rowsn,
    out integer columnsn,
    out integer bandsn,
    out double value,
    out geometry geom);

参数

参数名称 描述
raster_obj 需要转换的raster对象。
band 需要查询的波段,从0开始。
pyramid 需要查询的金字塔层级。
exclude_nodata_value 是否需要排除NoData的像素。
rowsn 像素的行号。
columnsn 像素的列号。
bandsn 像素的波段号。
value 像素值。
geom 像素代表的几何空间范围。

示例

WITH tmp AS (
SELECT (ST_PixelAsPolygons(rast, 1)).*
FROM rast_table
WHERE id = 10 )
SELECT rowsn, columnsn, bandsn, value, ST_AsEWKT(geom)  FROM tmp WHERE value > 38.0;

----------------------------------------------------
    100 |      100 |      0 |    43 | SRID=4326;POLYGON((-180 90,-180 89.1,-179.1 89.1,-179.1 90,-180 90))