gdal_rasterize
ベクタージオメトリをラスターに焼き付けます
概要
gdal_rasterize [--help] [--help-general]
[-b <band>]... [-i] [-at]
[-oo <NAME>=<VALUE>]...
{[-burn <value>]... | [-a <attribute_name>] | [-3d]} [-add]
[-l <layername>]... [-where <expression>] [-sql <select_statement>|@<filename>]
[-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/Int8/Int16/UInt16/UInt32/Int32/UInt64/Int64/Float32/Float64/
CInt16/CInt32/CFloat32/CFloat64}] [-optim {AUTO|VECTOR|RASTER}] [-q]
<src_datasource> <dst_filename>
説明
このプログラムは,ベクタージオメトリ(点,線,ポリゴン)をラスター画像のラスターバンドに焼き付けます.ベクターは OGR サポートされたベクターフォーマットから読み込まれます.出力ラスターが既に存在する場合,影響を受けるピクセルはその場で更新されます.
ベクターデータをラスターデータの座標系にオンザフライで再投影する機能は, GDAL 2.1.0 以降でのみサポートされていることに注意してください.
- --help
このヘルプメッセージを表示して終了します
- --help-general
一般的な GDAL コマンドラインオプションの使用方法を簡単に表示して終了します.
- -b <band>
値を焼き付けるバンドです. 複数の -b 引数を使用してバンドのリストに焼き付けることができます.デフォルトはバンド 1 に焼き付けます. 新しいラスターを作成する場合は使用しません.
- -i
ラスタライズを反転します. 固定焼き付け値または最初のフィーチャに関連付けられた焼き付け値を,提供されたポリゴンの内部でない画像のすべての部分に焼き付けます.
注釈
ベクターフィーチャに他のポリゴンにネストされたポリゴン(湖の中の島のような)が含まれている場合,正しい結果を得るためには GEOS に対して GDAL をビルドする必要があります.
- -at
ALL_TOUCHED ラスタライズオプションを有効にして,線またはポリゴンによって触れられたすべてのピクセルが更新されるようにします.通常のレンダリングルールでは,ラインレンダリングパス上のピクセルまたは中心点がポリゴン内にあるピクセルのみが更新されます(ポリゴンがピクセル中心にちょうど触れている場合の動作は未指定です).通常のレンダリングルールでは無効になっています.
注釈
このオプションが有効になっている場合,入力地物(線またはポリゴン)の順序が結果に影響を与える可能性があります.2つの地物が互いに接触すると,最後の地物(つまり最上位の地物)がエッジの焼き付けピクセル値を決定します.より予測可能な結果を得るために,地物を再配置するために
-sql
オプションを使用することができます(ORDER BY).
- -a <attribute_name>
焼き付け値に使用する地物の属性フィールドを識別します. その値はすべての出力バンドに焼き付けられます.
- -3d
焼き付け値を地物の "Z" 値から抽出することを示します. 点と線(各セグメントに沿った線形補間)で機能します.ポリゴンの場合,フラットである場合のみ正しく機能します(すべての頂点の Z 値が同じ).
- -add
新しい値を焼き付ける代わりに,既存のラスターに新しい値を追加します. たとえばヒートマップに適しています.
- -l <layername>
入力地物に使用されるデータソースからのレイヤーを示します. 複数回指定できますが,少なくとも1つのレイヤー名または
-sql
オプションを指定する必要があります(両方ではありません).
- -where <expression>
入力レイヤーから焼き付ける地物を選択するために適用されるオプションの SQL WHERE スタイルのクエリ式です.
- -sql <select_statement>
焼き付ける地物の仮想レイヤーを生成するためにデータソースに対して評価される SQL 文です.GDAL 3.7 以降,
@filename
構文を使用して,内容が指定されたファイル名にあることを示すことができます.注釈
このオプションは,
-l
オプションが設定されている場合は無視されます.
- -dialect <dialect>
SQL 方言です. いくつかの場合, OGR SQL をネイティブ SQL の代わりに使用するために OGRSQL を渡すことができます(最適化されていない場合があります)."SQLITE" 方言は,任意のデータソースで使用することもできます.
Added in version 2.1.
- -of <format>
出力フォーマットを選択します. GDAL 2.3 以降,指定されていない場合,フォーマットは拡張子から推測されます(以前は GTiff でした).短いフォーマット名を使用します.
- -a_nodata <value>
指定されたノーデータ値を出力バンドに割り当てます.
- -init <value>
これらの値で出力画像バンドを事前初期化します. ただし,出力ファイルではノーデータ値としてマークされていません.1つの値のみが指定されている場合,すべてのバンドで同じ値が使用されます.
- -a_srs <srs_def>
出力ファイルの投影を上書きします. 指定されていない場合,入力ベクターファイルの投影が利用可能な場合に使用されます.このオプションを使用すると,入力ベクターの SRS から出力ラスターの指定された SRS への地物の再投影は行われないため,無効なソース SRS を修正するためにこのオプションのみを使用してください.<srs_def> は通常の GDAL/OGR 形式,完全な WKT,PROJ.4,EPSG:n または WKT を含むファイルのいずれかである可能性があります.
- -to <NAME>=<VALUE>
GDALCreateGenImgProjTransformer2()
に渡す適切なトランスフォーマーオプションを設定します.これは,ジオメトリ座標をターゲットラスターピクセル空間に変換するときに使用されます.たとえば,これは RPC 関連のトランスフォーマーオプションを指定するために使用できます.Added in version 2.3.
- -co <NAME>=<VALUE>
多くのフォーマットには,作成されたファイルに関する特定の情報を制御するために使用できる1つ以上のオプションがあります.たとえば,GeoTIFF ドライバは,圧縮を制御する作成オプションやファイルをタイル化するかどうかを制御する作成オプションをサポートしています.
利用可能な作成オプションはフォーマットドライバによって異なり,一部のシンプルなフォーマットには作成オプションが全くありません.フォーマットでサポートされているオプションのリストは,コマンドラインオプション --formats でリストできますが,フォーマットのドキュメントがドライバ作成オプションに関する情報の決定的なソースです.
- -te <xmin> <ymin> <xmax> <ymax>
ジオリファレンスされた範囲を設定します. 値はジオリファレンスされた単位で表される必要があります.指定されていない場合,出力ファイルの範囲はベクターレイヤーの範囲になります.
- -tr <xres> <yres>
ターゲット解像度を設定します.値はジオリファレンスされた単位で表される必要があります.両方とも正の値である必要があります.
- -tap
(ターゲットアラインドピクセル) 出力ファイルの範囲の座標を
-tr
の値に整列させることで,整列された範囲に最小範囲が含まれるようにします.整列とは, xmin / resx, ymin / resy, xmax / resx および ymax / resy が整数値であることを意味します.
- -ot <type>
出力バンドを指定されたデータ型にするように強制します. デフォルトは
Float64
ですが,焼き付ける属性フィールドがInt64
型の場合,出力ドライバがサポートしている場合は出力ラスターデータ型としてInt64
が使用されます.
- -optim {AUTO|VECTOR|RASTER}
使用されるアルゴリズムを強制します(結果は同一です). ラスターモードはほとんどの場合に使用され,読み書き操作を最適化します.ベクターモードは,適切な量の入力地物と CPU 使用を最適化するのに役立ちます. そのモードは効率的にするためにタイル化された画像で使用する必要があります.自動モード(デフォルト)は,入力と出力のプロパティに基づいてアルゴリズムを選択します.
Added in version 2.3.
- -oo <NAME>=<VALUE>
Added in version 3.7.
ソースデータセットオープンオプション(フォーマット固有)
- -q
進行状況モニターおよびその他のエラー以外の出力を抑制します.
- <src_datasource>
OGR がサポートする読み込み可能なデータソース.
- <dst_filename>
GDAL がサポートする出力ファイルです. 更新モードアクセスをサポートする必要があります.このファイルは存在しない場合に作成されます.出力ラスターが既に存在する場合,影響を受けるピクセルはその場で更新されます.
プログラムは, -of
, -a_nodata
, -init
, -a_srs
, -co
, -te
, -tr
, -tap
, -ts
, または -ot
オプションのいずれかが使用されると,新しいターゲットラスター画像が作成されます.新しいラスターの解像度またはサイズは,すべての新しいラスターに対して -tr
または -ts
オプションを使用して指定する必要があります.ターゲットラスターが既に存在し,これらの作成関連オプションのいずれかが使用される場合,ターゲットラスターは上書きされます.
C API
このユーティリティは, GDALRasterize()
から C で呼び出すこともできます.
Added in version 2.1.
例
次の例では,mask.shp からすべてのポリゴンを RGB TIFF ファイル work.tif に焼き付けます.色は赤(RGB = 255,0,0)です.
gdal_rasterize -b 1 -b 2 -b 3 -burn 255 -burn 0 -burn 0 -l mask mask.shp work.tif
次の例では,"class A" 建物を出力標高ファイルに焼き付けます. ROOF_H 属性から最上部の標高を取得します.
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