PR

【簡単】GDALインストールせずにGDALを使う方法

サムネイル画像 GDAL
サムネイル画像

gdalのインストールがうまく行かずに悩んでいるあなたに朗報です。
gdalのdockerコンテナを使うとgdalをインストールせずに使用することが可能です。
使いたいバージョンのGDALを指定することも簡単です。

準備

dockerがインストールされていることが前提になります。インストールされていない場合はまずdockerをインストールしてください。

GDALのコンテナ取得

docker pull osgeo/gdal

動作確認

docker run --rm osgeo/gdal gdalinfo --version

出力結果の確認

GDAL 3.6.0dev-a813c324b468423211f83ecb814dc8e5ddb20fc4, released 2022/06/02

最新バージョン以外で動かしたい場合

特定のバージョンで動かしたい場合はタグを指定することで特定のバージョンで動かすことが可能です。

docker pull osgeo/gdal:ubuntu-full-3.2.1

インストールできるバージョンは「https://hub.docker.com/r/osgeo/gdal/tags」で確認できます。

実行サンプル

例1) EPSGコードを使った投影変換

-vを使ってフォルダをマウントして、GDALのコンテナ内でgdalwarpコマンドを使用し、投影変換を行います。

docker run --rm -v /tmp:/mnt osgeo/gdal gdalwarp -co COMPRESS=LZW -co PREDICTOR=2 -co BIGTIFF=YES -t_srs 32654 /mnt/InputGeotiff.tif /mnt/OutputGeotiff.tif

例2) 画像をベクタ変換

.py系のコマンドもそのまま使用することができます。

docker run --rm -v /tmp:/mnt osgeo/gdal gdal_polygonize.py /mnt/Geotiff.tif -f "GeoJSON" /mnt/Geojson.json

例3) PythonでGDALを使う

PythonでGDALを使うことも可能です。まず、簡単なPythonプログラム「test.py」を準備します。

/tmp/test.py

from osgeo import gdal
image=gdal.Open('/mnt/Geotiff.tif')
print(image.RasterXSize)

下記のコマンドで実行します。

docker run --rm -v /tmp:/mnt osgeo/gdal python /mnt/test.py

タイトルとURLをコピーしました