セルに値を割り当てるためにGdalラスタライズ関数が従うルールは何ですか?


8

セルがさまざまな値を含む領域をカバーするとき、ラスタライズツールはどの値を表すかをどのように決定しますか?この場合はポリゴンに必要ですが、ラインとポイントについても知りたいです。それが従うルールは何ですか。

回答:


7

ここここでソースを見ると、GDALはリストの先頭から始まり、下に向かって進んでいるように見えるため、図形が格納されている順序になり、特定のピクセルに格納されていたデータが上書きされます。私はそれが属性インデックスで何かをするかどうかさえわかりません。

補遺

デフォルトでは、ラスタライザは、ピクセルの中心をポリゴンに使用するか、Bresenhamのアルゴリズムをラインに使用します(おそらく、ポイントは最も近い隣のものです)。コマンドラインで指定できるタッチされたピクセルを塗りつぶすオプションがあるようです。コードにこの効果へのコメントがあります

462  * <dt>"ALL_TOUCHED":</dt> <dd>May be set to TRUE to set all pixels touched
463  * by the line or polygons, not just those whose center is within the polygon
464  * or that are selected by brezenhams line algorithm.  Defaults to FALSE.</dd>

したがって、ブレンドはまったく行われず、賢いことは何も行われません。


返信いただきありがとうございます。後で役立つはずです。知りたいのは、rasterize関数が形状から代表値を選択する方法です。センターポイント値または最高のカバー率を使用していますか?それは50/50状況などにどのように対処していますか?残念ながらソースはまだ少しトリッキーです。
Andre Wise
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.