全部產品
Search
文件中心

ApsaraDB RDS:S​T_BuildPyramid

更新時間:Oct 16, 2024

建立影像金字塔。

文法

raster ST_BuildPyramid(raster source, 
                       integer pyramidLevel default -1, 
                       ResampleAlgorithm algorithm default 'Near', 
                       cstring chunkTableName default '', 
                       cstring storageOption default '{}',
                       cstring buildOption default '{}');

參數

參數名稱

描述

source

需要建立金字塔的raster對象。

chunkTableName

金字塔所儲存的分塊表名稱。只對基於Object Storage Service的柵格對象有效。

pyramidLevel

金字塔建立的層級, -1表示建立到最高層級。

algorithm

建立金字塔的重採樣演算法,取值如下:

  • Near:最鄰近

  • Average:平均值

  • Bilinear:二次線性

  • Cubic:三次卷積

storageOption

JSON字串,儲存選項。描述raster對象金字塔的分Block Storage資訊。該選項只針對基於Object Storage Service的柵格對象有效。

buildOption

JSON字串,構建選項。當前支援參數parallel,可以設定作業並行度,資料類型為Integer,取值範圍為1~64。不指定parallel時,使用GUC參數ganos.parallel.degree的值。

說明

如果啟用並行建立金字塔,則不支援事務。如果建立失敗或需要對交易回復,使用ST_deletePyramid刪除已經建立的金字塔。

storageOption參數說明如下。

參數名稱

類型

說明

chunkdim

string

分塊的維度資訊,格式為(w, h, b),預設從原始影像中讀取分塊大小。

interleaving

string

交錯方式,取值如下:

  • bip:像素交錯

  • bil:行交錯

  • bsq(預設值):波段交錯

  • auto:根據原始影像自動選擇

compression

string

壓縮演算法類型,取值如下:

  • none

  • jpeg

  • zlib

  • png

  • lzo

  • lz4(預設值)

  • zstd

  • snappy

  • jp2k

quality

integer

壓縮品質。只針對JPEG和JP2K壓縮演算法生效。

取值範圍:1~99,預設值為75。

描述

建立金字塔支援GPU加速,如果運行環境帶有GPU裝置,則GanosBase會自動開啟GPU加速功能。

樣本

Update raster_table set raster_obj = ST_BuildPyramid(raster_obj) where id = 1;

Update raster_table set raster_obj = ST_BuildPyramid(raster_obj, 'chunk_table') where id = 2;

--使用jpeg2000壓縮
--確保指定所有波段在一個分塊內
Update raster_table set raster_obj = ST_BuildPyramid(
    raster_obj, 
    -1, 
    'Near', 
    'chunk_table', 
    '{"compression":"jp2k", "quality": 75, "chunkdim":"(256,256,4)","interleaving":"auto"}') 
where id = 3;

-- 使用並行方式建立
Update raster_table set raster_obj = ST_BuildPyramid(
    raster_obj, 
    -1, 
    'Near', 
    'chunk_table', 
    '{"compression":"jp2k", "quality": 75, "chunkdim":"(256,256,4)","interleaving":"auto"}', 
    '{"parallel":4}') 
where id = 3;