名称

ST_AsJPEG — 将选定波段的栅格瓦片作为单个联合图像专家组(JPEG)图像(字节数组)返回。 如果没有指定波段,并且有 1 个或 3 个以上的波段,则仅使用第一个波段。 如果只有 3 个波段,则使用所有 3 个波段并映射到 RGB。

概要

bytea ST_AsJPEG(raster rast, text[] options=NULL);

bytea ST_AsJPEG(raster rast, integer nband, integer quality);

bytea ST_AsJPEG(raster rast, integer nband, text[] options=NULL);

bytea ST_AsJPEG(raster rast, integer[] nbands, text[] options=NULL);

bytea ST_AsJPEG(raster rast, integer[] nbands, integer quality);

描述

将栅格的选定波段作为单个联合图像专家组图像(JPEG)返回。如果需要导出为不太常见的栅格类型,请使用ST_AsGDALRaster。如果没有指定波段,并且有 1 个或 3 个以上的波段,则仅使用第一个波段。如果有 3 个波段,则使用所有 3 个波段。该函数有许多变体,具有许多选项。下面列出了这些选项。

  • nband 用于单波段导出。

  • nbands 是要导出的波段数组(注意,对于 JPEG,最大值为 3),并且波段的顺序是 RGB。例如,ARRAY[3,2,1] 表示将波段 3 映射到红色,波段 2 映射到绿色,波段 1 映射到蓝色

  • quality 数字从 0 到 100。数字越高,图像越清晰。

  • options GDAL 选项的文本数组,如为 JPEG 定义的(查看 JPEG 的 create_options ST_GDALDrivers)。 对于 JPEG,有效的是 PROGRESSIVE ON 或 OFF,以及 QUALITY,范围从 0 到 100,默认为 75。有关更多详细信息,请参阅GDAL 栅格格式选项

可用性:2.0.0 - 需要 GDAL >= 1.6.0。

示例:输出

-- output first 3 bands 75% quality
SELECT ST_AsJPEG(rast) As rastjpg
    FROM dummy_rast WHERE rid=2;

-- output only first band as 90% quality
SELECT ST_AsJPEG(rast,1,90) As rastjpg
    FROM dummy_rast WHERE rid=2;

-- output first 3 bands (but make band 2 Red, band 1 green, and band 3 blue, progressive and 90% quality
SELECT ST_AsJPEG(rast,ARRAY[2,1,3],ARRAY['QUALITY=90','PROGRESSIVE=ON']) As rastjpg
    FROM dummy_rast WHERE rid=2;