gdal_rasterize

将矢量几何体烧成栅格。

简介

gdal_rasterize [-b band]* [-i] [-at]
    {[-burn value]* | [-a attribute_name] | [-3d]} [-add]
    [-l layername]* [-where expression] [-sql select_statement]
    [-dialect dialect] [-of format] [-a_srs srs_def] [-to NAME=VALUE]*
    [-co "NAME=VALUE"]* [-a_nodata value] [-init value]*
    [-te xmin ymin xmax ymax] [-tr xres yres] [-tap] [-ts width height]
    [-ot {Byte/Int16/UInt16/UInt32/Int32/UInt64/Int64/Float32/Float64/
            CInt16/CInt32/CFloat32/CFloat64}]
    [-optim {[AUTO]/VECTOR/RASTER}] [-q]
    <src_datasource> <dst_filename>

描述

此程序将矢量几何图形(点、线和多边形)刻录到栅格图像的栅格带中。向量是从OGR支持的向量格式中读取的。

请注意,从GDAL2.1.0开始,仅支持动态地将矢量数据重新投影到栅格数据的坐标系。

-b <band>

要将值刻录到的带。可以使用多个-b参数来烧录到一个波段列表中。默认值是烧到波段1。创建新栅格时不使用。

-i

反转栅格化。将固定的刻录值或与第一个特征相关联的刻录值刻录到图像的所有部分 not 在提供的多边形内。

-at

启用“全接触栅格化”选项,以便由直线或多边形接触的所有像素都将更新,而不仅仅是直线渲染路径上的像素,或其中心点位于多边形内的像素。对于常规呈现规则,默认为禁用。

-burn <value>

一个固定值,用于将所有对象烧成带。一份清单 -burn 可以提供选项,每个波段写入一个选项。

-a <attribute_name>

标识要用于老化值的功能上的属性字段。该值将被烧录到所有输出频带中。

-3d

指示应从特征的“Z”值中提取刻录值。使用点和线(沿每个线段的线性插值)。对于多边形,只有在是平的(所有顶点的Z值相同)时才能正常工作。

-add

这不会烧录新值,而是将新值添加到现有栅格。例如适用于热图。

-l <layername>

指示将用于输入功能的数据源中的层。可以多次指定,但至少有一个图层名或 -sql 必须指定选项。

-where <expression>

一个可选的SQL,其中应用样式查询表达式以从输入层中选择要刻录的要素。

-sql <select_statement>

对数据源求值以生成要烧录的功能的虚拟层的SQL语句。

-dialect <dialect>

SQL方言。在某些情况下,可以通过传递OGR SQL来使用(未优化的)OGR SQL,而不是RDBMS的本机SQL。“SQLITE”方言也可以用于任何数据源。

2.1 新版功能.

-of <format>

选择输出格式。从GDAL 2.3开始,如果未指定,则从扩展名猜测格式(以前是GTiff)。使用短格式名称。

-a_nodata <value>

为输出频带分配指定的nodata值。

-init <value>

使用这些值预初始化输出图像带区。但是,它在输出文件中没有标记为nodata值。如果只给定一个值,则在所有频带中使用相同的值。

-a_srs <srs_def>

重写输出文件的投影。如果未指定,则将使用输入向量文件的投影(如果可用)。使用此选项时,不会将特征从输入矢量的SRS重新投影到输出栅格的指定SRS,因此仅使用此选项更正无效的源SRS。<srs_def>可以是任何常见的GDAL/OGR形式、完整的WKT、PROJ.4、EPSG:n或包含WKT的文件。

-to NAME=VALUE

设置适合传递到的变压器选项 GDALCreateGenImgProjTransformer2() . 将几何体坐标转换为目标栅格像素空间时使用此选项。例如,这可用于指定与RPC相关的转换器选项。

2.3 新版功能.

-co <NAME=VALUE>

许多格式都有一个或多个可选的创建选项,可用于控制所创建文件的详细信息。例如,GeoTIFF驱动程序支持创建选项来控制压缩,以及是否应该平铺文件。

可用的创建选项因格式驱动程序而异,有些简单格式根本没有创建选项。格式支持的选项列表可以与 --formats 命令行选项,但该格式的文档是有关驱动程序创建选项的最终信息源。见 栅格驱动器 每种格式的法律创建选项的特定格式文档。

-te <xmin> <ymin> <xmax> <ymax>

设置地理参考范围。这些值必须用地理参考单位表示。如果未指定,则输出文件的范围将是矢量层的范围。

-tr <xres> <yres>

设定目标分辨率。这些值必须用地理参考单位表示。两者都必须是正值。

-tap

(target aligned pixels) Align the coordinates of the extent of the output file to the values of the -tr, such that the aligned extent includes the minimum extent. Alignment means that xmin / resx, ymin / resy, xmax / resx and ymax / resy are integer values.

-ts <width> <height>

设置输出文件大小(以像素和行为单位)。请注意 -ts 不能与一起使用 -tr

-ot <type>

强制输出频带为指定的数据类型。默认为 Float64

-optim {[AUTO]/VECTOR/RASTER}}

强制使用算法(结果相同)。大多数情况下使用栅格模式并优化读/写操作。矢量模式对于大量的输入特性和优化CPU使用非常有用。这种模式必须与平铺图像一起使用才能提高效率。自动模式(默认)将根据输入和输出属性选择算法。

2.3 新版功能.

-q

抑制进度监视器和其他非错误输出。

<src_datasource>

任何OGR支持的可读数据源。

<dst_filename>

GDAL支持的输出文件。必须支持更新模式访问。此文件将被创建(或覆盖,如果它已经存在):选项:-of-a_nodata-init-a_srs-co-te-tr-tap-ts-ot 使用选项。

-of-a_nodata-init-a_srs-co-te-tr-tap-ts-ot 使用选项。必须使用 -tr-ts 所有新栅格的选项。如果目标栅格已经存在,并且使用了任何与创建相关的选项,则目标栅格将被覆盖。

计算机辅助编程接口

此实用程序也可以通过 GDALRasterize() .

2.1 新版功能.

例子

下面将把mask.shp中的所有多边形都烧成红色(RGB=255,0,0)的RGB TIFF文件work.tif。

gdal_rasterize -b 1 -b 2 -b 3 -burn 255 -burn 0 -burn 0 -l mask mask.shp work.tif

以下操作会将所有“A级”建筑烧录到输出立面文件中,并从“屋顶”属性中提取顶部立面。

gdal_rasterize -a ROOF_H -where "class='A'" -l footprints footprints.shp city_dem.tif

下面将把footprint.shp中的所有多边形都烧成新的1000x1000 rgb TIFF作为红色。请注意 -b 不使用;顺序 -burn 选项确定输出栅格的波段。

gdal_rasterize -burn 255 -burn 0 -burn 0 -ot Byte -ts 1000 1000 -l footprints footprints.shp mask.tif