PostGIS实现矢量数据转栅格数据【ST_AsRaster】

ST_AsRaster函数应用详解:将矢量数据转换为栅格数据

[文章目录]

一、函数概述

二、函数参数与分组说明

三、核心特性与注意事项

四、示例代码

五、应用场景

六、版本依赖

七、总结


一、函数概述

ST_AsRaster是PostGIS中用于将几何对象(如点、线、面)转换为栅格数据的核心函数。它通过多种参数组合,灵活控制输出栅格的空间参考、像素尺寸、对齐方式、波段数等属性,适用于地理数据栅格化、空间分析及可视化场景。

二、函数参数与分组说明

函数共有10种变体,可归纳为3大参数分组,每组核心差异在于栅格尺寸与对齐方式的定义方法。

1. 基于参考栅格的转换

通过已有栅格的属性(如像素大小、原点)定义输出栅格。

  • 适用场景:需保持与现有栅格一致的空间分辨率和对齐方式(如叠加分析)。
-- 单波段
raster ST_AsRaster(geometry geom, raster ref, text pixeltype, double precision value=1, double precision nodataval=0, boolean touched=false);
-- 多波段(数组参数)
raster ST_AsRaster(geometry geom, raster ref, text[] pixeltype=ARRAY['8BUI'], double precision[] value=ARRAY[1], double precision[] nodataval=ARRAY[0], boolean touched=false);

关键参数:

  • ref:参考栅格,决定输出栅格的scalex、scaley、gridx、gridy和 SRID。
  • pixeltype/pixeltype[]:像素类型(如’8BUI’表示 8 位无符号整数)。
  • value[]:各波段初始值(默认全为 1)。
  • touched:是否渲染与几何对象 “接触” 的像素(默认仅渲染内部像素)。

2. 基于像素尺寸的转换(自动计算栅格大小)

通过指定像素尺寸(scalex、scaley)定义栅格,输出栅格的宽度和高度由几何对象范围自动计算。

  • 适用场景:需固定像素分辨率,动态适配几何范围(如遥感影像处理)。
-- 单波段(指定网格原点)
raster ST_AsRaster(geometry geom, double precision scalex, double precision scaley, double precision gridx, double precision gridy, text pixeltype, ...);
-- 多波段(指定左上原点)
raster ST_AsRaster(geometry geom, double precision scalex, double precision scaley, text[] pixeltype, ..., double precision upperleftx=NULL, double precision upperlefty=NULL, ...);

关键参数:

  • scalex/scaley:像素宽度 / 高度(X/Y 方向分辨率)。
  • gridx/gridy:网格原点(左下角或任意角点)。
  • upperleftx/upperlefty:左上原点(替代gridx/gridy,更常用)。
  • skewx/skewy:像素倾斜参数(默认 0,用于非正交栅格)。

3. 基于固定尺寸的转换(自动计算像素尺寸)

通过指定栅格宽度和高度(width、height)定义栅格,像素尺寸由几何对象范围自动计算。

  • 适用场景:需固定栅格像素数量(如生成固定分辨率的缩略图)。
-- 单波段(指定网格原点)
raster ST_AsRaster(geometry geom, integer width, integer height, double precision gridx, double precision gridy, text pixeltype, ...);
-- 多波段(指定左上原点)
raster ST_AsRaster(geometry geom, integer width, integer height, text[] pixeltype, ..., double precision upperleftx=NULL, double precision upperlefty=NULL, ...);

关键参数:

  • width/height:栅格的列数 / 行数(像素数量)。
  • 其他参数与第二组类似,但scalex/scaley由几何范围与尺寸自动计算。

查看全部文章内容请转【PostGIS专栏】,原创不易,求关注支持,更多开源GIS相关知识技能分享,免费提供学习问答交流

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gerrywhu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值