GoogleEarthで位置情報をつけたPNG画像のKMLファイルから、QGISでワールドファイルを生成する

最近webから画像もってきたりしていると、わざわざGEOTIFFにするのも重くて面倒なため、PNGで画像を扱う機会が多くなってきました。
PNGをQGISに読み込んで幾何補正しても良いのですが、元がGoogleMap上に載っていたりするとそのままGoogleEarthで補正して、それをGISに落としたくなります。

そこで、GEで幾何補正→KMLで出力→PNGはそのままでQGISで読み込み→GDALでPNGにワールドファイルをつけるという、少々複雑だけど軽い座標フォーマットの以降処理を解説します。

  1. 画像を用意します。ここでは伊豆の下田の臨海実験所周辺の空撮「P1010847_下田空撮山北.PNG」を用意
  2. GEで[追加]-[イメージオーバーレイ]から画像を追加して、位置を合わせます。(GEは台形補正できないようで、いまいちではありますが・・・)
  3. 補正が終わった写真のレイヤーを右クリックして[名前をつけて場所を保存]、KMLを選択して画像と同じフォルダへ保存
  4. kmlが一緒にある状態でQ-GISへD&DでKMLを読み込み、画像を選択
  5. このままの位置でワールドファイルだけを書き出すには、[ラスタ][変換][形式変換(gdal_translate)]
  6. [追加のコマラインパラメータ]に-co WORLDFILE=YESを入力
  7. ファイルを上書きしない場合はダミーの名前(例えばtest)で、後でワールドファイルの名前をPNGと同じ名前に書き替える。(「P1010847_下田空撮山北.wld」、拡張子をpgwとしてもよい)
  8. 元のPNGファイルをQGISにD&Dすると同じフォルダにあるwldファイルと一緒に読み込まれる。
  • *Esri製品では.pgwが必要ですが、QGIS/GDAL環境では拡張子.wldが標準です。
  • *TIFFの場合は追加の追加のコマラインパラメータ**に-co TFW=YESを入力し実行。を入力(なお、GeoTIFFのヘッダ情報からTIFFファイルとワールドファイル(.tfw)にする場合も同様にgdal_translate -co TFW=YES input.geotiff output.tifによって実現できます。)
  1. お疲れさまでした。