Todos os produtos
Search
Central de documentação

ApsaraDB RDS:ST_AsImage

Última atualização: Aug 22, 2026

Converte um objeto raster em uma imagem bytea dentro de uma extensão geográfica ou de pixels especificada. Caso não se especifique bands, o sistema utiliza as três primeiras bandas e define PNG como formato de saída padrão.

Sintaxe

bytea ST_AsImage(raster raster_obj,
        box extent,
        integer pyramidLevel default 0,
        cstring bands default '',
        cstring format default 'PNG',
        cstring option default '');

Parâmetros

Parâmetro

Tipo

Padrão

Descrição

raster_obj

raster

Objeto raster para conversão.

extent

box

Extensão espacial da imagem de saída. Usa o sistema de coordenadas geográficas por padrão.

pyramidLevel

integer

0

Nível de pirâmide para leitura. Valores válidos começam em 0.

bands

cstring

''

Bandas a incluir na saída. Aceita intervalos ('0-2') e listas separadas por vírgula ('1,2,3'). Se deixado em branco, usa as três primeiras bandas. Contagens válidas: PNG suporta 1, 2, 3 ou 4 bandas; JPEG suporta 1 ou 3 bandas.

format

cstring

'PNG'

Formato da imagem de saída. Valores válidos: PNG, JPEG.

option

cstring

''

String JSON com opções adicionais de renderização. Consulte Campos de opção.

Campos de opção

Campo

Tipo

Padrão

Descrição

nodata

bool

false

Controla o tratamento de NoData. true: processa valores NoData. false: trata valores NoData como valores normais.

nodataValue

integer

0

Valor NoData do raster. Obrigatório quando nodata é true.

rast_coord

bool

false

Define se a caixa extent usa coordenadas de pixel em vez de coordenadas geográficas. Quando true, o eixo x corresponde ao número da coluna e o eixo y ao número da linha, ambos iniciando em 0.

strength

string

'none'

Modo de aprimoramento de exibição. none: sem aprimoramento. stats: aplica estiramento com base em valores estatísticos.

quality

integer

75

Qualidade da compressão. Valores válidos: 1–100.

Observações de uso

  • ST_AsImage retorna um valor bytea.

  • Por padrão, cada consulta armazena em cache até 100 MB de dados recortados. Para ajustar esse limite, defina o parâmetro ganos.raster.clip_max_buffer_size.

  • O parâmetro bands controla quais bandas compõem a imagem de saída. Há suporte para as seguintes contagens:

    • 1: banda única — exporta como imagem em escala de cinza.

    • 2: banda única + banda Alfa — exporta como imagem em escala de cinza com transparência.

    • 3: bandas R, G e B — exporta como imagem RGB.

    • 4: bandas R, G, B e Alfa — exporta como imagem RGBA.

Exemplos

Todos os exemplos leem de uma raster_table e filtram por id = 1. A extensão geográfica '(-180,-90), (0,0)'::box abrange o quadrante inferior esquerdo do globo.

Exportar com configurações padrão

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::box)
FROM raster_table
WHERE id = 1;

Exportar de um nível específico de pirâmide

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::box,
                  1)
FROM raster_table
WHERE id = 1;

Exportar bandas 0, 1 e 2

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::box,
                  1,
                  '0-2')
FROM raster_table
WHERE id = 1;

Exportar como PNG com formato explícito

SELECT ST_AsImage(raster_obj,
                  '(-180,-90), (0,0)'::box,
                  1,
                  '0-2',
                  'PNG')
FROM raster_table
WHERE id = 1;

Exportar com aprimoramento de exibição baseado em estatísticas

SELECT ST_AsImage(rast,
                  '(-180,-90), (0,0)'::box,
                  0,
                  '',
                  'PNG',
                  '{"nodata":"false","nodatavalue":"0","rast_coord":"false","strength":"stats","quality":"75"}')
FROM raster_table
WHERE id = 1;

Exportar uma região de coordenadas de pixel com aprimoramento de exibição

Use rast_coord: true para especifique a extensão em coordenadas de pixel em vez de coordenadas geográficas.

SELECT ST_AsImage(rast,
                  '(0,0), (200,100)'::box,
                  0,
                  '',
                  'PNG',
                  '{"nodata":"false","nodatavalue":"0","rast_coord":"true","strength":"stats","quality":"75"}')
FROM raster_table
WHERE id = 1;