栅格模型

栅格数据由按行和列组织的像元(也称为像素)矩阵组成,其中每个像元都包含一个信息值(例如温度)。

概述

栅格数据可以是数字航空像片、卫星影像、数字图片或甚至扫描的地图。

Ganos Raster通过在RDS for PostgreSQL中实现栅格数据模型,可以借助于数据库的技术和方法高效地对栅格数据进行存储和分析操作。

快速入门

  • 创建扩展

    Create Extension Ganos_Raster with schema public cascade;
  • 创建栅格表

    Create Table raster_table(id integer, raster_obj raster);
  • 从OSS中导入栅格数据

    Insert into raster_table Values(1, ST_ImportFrom('chunk_table','OSS://ABCDEFG:1234567***@oss-cn.aliyuncs.com/mybucket/data/4.tif'))
  • 查询栅格对象信息

    Select ST_Height(raster_obj),ST_Width(raster_obj) From raster_table Where id = 1;
  • 创建金字塔

    Update raster_table Set raster_obj = ST_BuildPyramid(raster_obj) Where id = 1;
  • 根据视口的世界坐标范围,长和宽来计算最佳的金字塔层级

    Select ST_BestPyramidLevel(raster_obj, '((128.0, 30.0),(128.5, 30.5))', 800, 600) from raster_table where id = 10;
    
    ---------------------
    3
  • 获取栅格指定范围的像素矩阵

    Select ST_Clip(raster_obj, 0, '((128.980,30.0),(129.0,30.2))', 'World') From raster_table Where id = 1;
  • 计算裁剪区域的像素坐标范围

    Select ST_ClipDimension(raster_obj, 2, '((128.0, 30.0),(128.5, 30.5))') from raster_table where id = 10;
    
    ------------------------------------
    '((600, 720),(200, 300))'
  • 删除扩展

    Drop Extension Ganos_raster cascade;

SQL参考

详细SQL手册请参见Raster SQL参考