ST_Mean4ma — 栅格处理函数,用于计算邻域中的平均像素值。
float8
ST_Mean4ma
(
float8[][]
matrix
, text
nodatamode
, text[]
VARIADIC args
)
;
double precision
ST_Mean4ma
(
double precision[][][]
value
, integer[][]
pos
, text[]
VARIADIC userargs
)
;
计算像素邻域中的平均像素值。
对于变体2,可以通过将该值传递给userargs来指定NODATA像素的替换值。
![]() |
|
变体1是一个专门的回调函数,用作 ST_MapAlgebraFctNgb 。 |
![]() |
|
变体2是一个专门的回调函数,用作 ST_MapAlgebra(回调函数版本) 。 |
![]() |
|
不鼓励使用备选方案1,因为 ST_MapAlgebraFctNgb 自2.1.0起已被弃用。 |
可用性:2.0.0
增强版:2.1.0增加了变体2
SELECT
rid,
st_value(
st_mapalgebrafctngb(rast, 1, '32BF', 1, 1, 'st_mean4ma(float[][],text,text[])'::regprocedure, 'ignore', NULL), 2, 2
)
FROM dummy_rast
WHERE rid = 2;
rid | st_value
-----+------------------
2 | 253.222229003906
(1 row)
SELECT
rid,
st_value(
ST_MapAlgebra(rast, 1, 'st_mean4ma(double precision[][][], integer[][], text[])'::regprocedure,'32BF', 'FIRST', NULL, 1, 1)
, 2, 2)
FROM dummy_rast
WHERE rid = 2;
rid | st_value
-----+------------------
2 | 253.222229003906
(1 row)
ST_MapAlgebraFctNgb , ST_MapAlgebra(回调函数版本) , ST_Min4ma , ST_Max4ma , ST_Sum4ma , ST_Range4ma , ST_StdDev4ma