ドキュメントの検索
karat

+

K

APIリファレンス ↗

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

トランスフォームでラスターデータを使用する

概要

Foundry は ファイルレベルのトランスフォーム を介して、ラスターデータの大規模な処理を可能にします。

地理空間データ のさまざまなタイプについて学ぶ。

データ形式とソース

Foundry で処理できる一般的なラスターファイル形式には以下があります。

  • TIFF / GeoTIFF
  • PNG
  • JPEG

推奨される Python ライブラリ

Foundry でラスターデータを処理するために、以下のようないくつかの一般的なオープンソースライブラリが適しています。

コード例

Rasterio を使用してデータセットから GeoTIFF ファイルを開く

from transforms.api import transform, Input, Output, FileSystem
import rasterio
import tempfile
import shutil
import math

@transform(
    output=Output("OUTPUT_DATASET"),
    my_input=Input("INPUT_DATASET"),
)
def my_compute_function(output, my_input):
    def process_file(file_status):
        # 一時ファイルを使ってファイルをダウンロードし、Imageが正しく開くようにします
        with tempfile.NamedTemporaryFile() as tmp:
            with my_input.filesystem().open(file_status.path, 'rb') as f:
                shutil.copyfileobj(f, tmp)
                tmp.flush()
                # rasterioでファイルを開きます
                with rasterio.open(tmp.name, driver='GTiff') as dataset:
                    """ rasterioのロジックを記入 """

    files = list(my_input.filesystem().ls())
    map(process_file, files)
    return