计算raster对象中指定波段集的百分比信息。

语法

raster ST_BuildPercentiles(raster raster_obj,
                            cstring sampleOption default '{}')
raster ST_BuildPercentiles(raster raster_obj,
                            cstring bands,
                            cstring sampleOption default '{}',
                            cstring parallelOption default '{}')

参数

参数名称 描述
raster_obj Raster对象。
sampleOption 基于JSON字符串的采样选项。更多信息,请参见sampleOption
bands 指定的波段序号,从0开始,格式类似'0,1-3,6,8'的形式, ''表示所有的波段。
parallelOption 基于JSON字符串的并行操作选项。更多信息,请参见parallelOption
sampleOption说明:
参数名称 类型 默认值 描述
approx boolean false 是否使用采样方式计算。取值:[true|false]
说明 如果为true,则采用采样方式计算统计值,结果可能会不精确。
factor integer 4 采样方式计算时使用的采样因子。取值为正整数。表示将n个象元作为一个采样单元。
说明 仅在approx为true时有效。
exclusive_nodata boolean true 是否不统计nodata数据。取值:[true|false]

parallelOptions是基于JSON格式的字符串,用于描述操作选项。支持的参数如下:

参数名称 描述 类型 默认值 说明
parallel 操作并行度。 integer ganos.parallel.degree 并行度范围为1~64。

示例

-- 默认方式
UPDATE raster_table SET raster_obj = ST_BuildPercentiles(raster_obj) WHERE id = 1;

-- 指定波段和采样方式
UPDATE raster_table SET raster_obj = ST_BuildPercentiles(rast,'0-2','{"approx":false}') WHERE id = 1;

-- 指定采样方式
UPDATE raster_table SET raster_obj = ST_BuildPercentiles(rast,'{"approx":false}') WHERE id = 1;

-- 指定波段、采样率和并行度
UPDATE raster_table SET raster_obj = ST_BuildPercentiles(raster_obj,'0-2','{"approx":true, "factor":5}', '{"parallel":4}') WHERE id = 1;