名稱

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 像素的替代值。

[Note]

變體 1 是一個專用的回呼函數,用於作為 ST_MapAlgebraFctNgb 的回呼參數。

[Note]

變體 2 是一個專用的回呼函數,用於作為 ST_MapAlgebra (回呼函數版本) 的回呼參數。

[Warning]

不建議使用變體 1,因為 ST_MapAlgebraFctNgb 已在 2.1.0 版本中被棄用。

可用性:2.0.0

增強功能:2.1.0 新增變體 2

範例:變體 1

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)
                

範例:變體 2

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)