GDAL のコマンドで GeoTIFF ファイルを扱う
【概要】
GDAL のコマンドで GeoTIFF ファイルを扱う方法を説明する.情報の取得,投影座標系への変換,png との相互変換,拡大(縦横の画素数を増やす)を行う.【その他情報】
キーワード: gdalinfo, gdalwarp, gdal_translate, 投影座標系への投影, GeoTIFF ファイルの拡大, GeoTIFF から png へ変換, png から GeoTIFF へ変換, EPSG コード
【目次】
【関連する外部ページ】
前準備
gdal Windows 版のインストール
OSGeo4W のインストールを行っておくこと
あわせて,環境変数 GDAL_DATA を「C:\OSGeo4W\share\gdal」に設定しておくこと.
GeoTIFF サンプルデータファイルの準備
GeoTIFF について練習したい場合には, GeoTIFF サンプルデータファイルを入手する. 例えば,次の Web ページから cea.tif をダウンロード
https://download.osgeo.org/geotiff/samples/gdal_eg/
ダウンロードした .tif ファイルを,分かりやすいディレクトリ(例えばd:\)に保存
GeoTIFF 情報の取得
gdalinfo コマンドを使用. サイズ,緯度経度,バンド数,データ型などが確認できる.
gdalinfo cea.tif
あるGeoTIFF画像での実行結果例
別のGeoTIFF画像での実行結果例
投影座標系への投影
gdalwarp コマンドを使用.変換先の座標系は,EPSG コードで指定する.EPSG コードは https://epsg.io/ で検索できる.
- UTM座標系に投影
EPSG:3099 (JGD2000 UTM座標系ゾーン53N)に変換したいときは次のように実行する.
gdalwarp -t_srs EPSG:3099 <変換元ファイル.tif> <変換先ファイル.tif>実行結果例
次のようなエラーが出たときは,環境変数の設定が正しくない. OSGeo4W のインストールの Web ページを参考に,環境変数の設定を行うこと
- 平面直角座標系に投影
国土地理院のWebページ https://www.gsi.go.jp/sokuchikijun/jpc.html などを参考に, 平面直角座標系の番号を調べる
EPSG:2445 (JGD2000 平面直角座標系III系)に変換したいときは次のように実行する.
gdalwarp -t_srs EPSG:2445 <変換元ファイル.tif> <変換先ファイル.tif>
- 緯度経度: 6668
- 平面直角座標系 I 系から XIX 系: 6669 から 6687
- UTM座標系 ゾーン51N から 56N: 6688 から 6693
GeoTIFF から png へ変換
- GeoTIFFファイルの画素の値の範囲を調べる
gdalinfo -mm cea.tif下の実行例では,画素の範囲は 0 から 255だと分かる
- png に変換する前に決めておくこと
GDAL の PNG ドライバは,データ型が Byte のとき 1 画素 8 ビット(0 から 255の値),UInt16 のとき 1 画素 16 ビット(0 から 65535 の値)で書き出す.
GeoTiff から png に変換するとき,次のことを決めておく
- ファイル名: ここでは cea.pngに設定
- スケール: ここでは,GeoTIffでは 0 から 255の値を,png での0 から 255の値に変換するとする.
- png の画素のデータ型: ここでは Byteに設定
- GeoTIFF から png への変換
gdal_translate -scale 0 255 0 255 -ot Byte -of PNG cea.tif cea.png
結果は,画像ビューワで表示して確認できる.
png から GeoTIFF へ変換
8 ビットの png ファイルの画素は,0 から 255の値である.
GeoTiff に変換するとき,次のことを決めておく
- ファイル名: ここでは cea3.tif
- スケール: ここでは,png での0 から 255の値を,GeoTIffでは 0 から 24700に変換するとする.
- GeoTIFFの画素のデータ型: ここでは Int16に設定
データ型については「gdal_translate --long-usage」で確認できる.
png から GeoTIFF への変換例
gdal_translate -scale 0 255 0 24700 -ot Int16 -of GTiff cea.png cea3.tif
結果は,画像ビューワで表示して確認できる.
GeoTIFF ファイルの拡大
拡大率 200% にしたいときの操作手順例
gdal_translate コマンドを用いる
gdal_translate -outsize 200% 200% d:\cea.tif d:\cea2.tif
gdalinfo コマンドを用いて確認してみる
GeoTIFF ファイルは,多くの画像ビューワで表示できる.
拡大前
拡大後
EPSG コードを用いた座標系の変換
変換元のファイルに座標系の情報が含まれていないときは,-s_srs で変換元の座標系も指定する.
gdalwarp -s_srs EPSG:<EPSGコード> -t_srs EPSG:<EPSGコード> <変換元ラスタファイル名> <変換先ラスタファイル名>