进阶 postgis.net 2026-10-09 21:31:24 · 0 阅读

第21章 如何导入导出栅格数据?

第21章 如何导入/导出栅格数据?

导入数据

导入栅格数据可以使用 raster2pgsql(PostGIS 自带)或 gdal_translate(GDAL 自带)。加载栅格数据时,raster2pgsql 通常更方便,因为控制加载的选项都是直接暴露出来的。

导出数据

导出栅格数据一般用 gdal_translate 更简单。 PGHOST=localhost \ PGPORT=5432 \ PGUSER=postgres \ PGPASSWORD=password \ gdal_translate \ -of PNG \ -outsize 10% 10% \ "PG:dbname=db table=tbl" \ foo.png 导出时还可以在连接字符串中加入 SQL 的 "where" 子句作为过滤条件。注意过滤器中的单引号做了转义处理。 PGHOST=localhost \ PGPORT=5432 \ PGUSER=postgres \ PGPASSWORD=password \ gdal_translate \ -of PNG \ -outsize 10% 10% \ "PG:dbname=db table=tbl where='filename=\'abcd.sid\'' " \ outfile.png "where" 子句中也同样可以使用空间过滤条件。 PGHOST=localhost \ PGPORT=5432 \ PGUSER=postgres \ PGPASSWORD=password \ gdal_translate \ -of PNG \ -outsize 10% 10% \ "PG:dbname=db table=tbl where='ST_Intersects(rast, ST_SetSRID(ST_Point(-71.0,42.3),4326))' " \ outfile.png

评论 (0)