ワールドファイル(.tfw / .jgw)とは — 画像に座標を与える6行の数字と、測地系が書かれていない理由

,

ワールドファイル(.tfw / .jgw)とは — 画像に座標を与える6行の数字と、測地系が書かれていない理由

ワールドファイル(.tfw / .jgw)とは — 画像に座標を与える6行の数字と、測地系が書かれていない理由

ただの画像を、地図上の正しい位置に置くための「6行の数字」を書いたテキストファイルです。 空中写真やスキャンした図面のような普通の画像には、位置の情報がありません。そこに「1ピクセルは何メートルか」「左上のピクセルはどこか」を書き添えて、地図に重ねられるようにする。それがワールドファイルです。ただし測地系(座標系)は書かれていません。ここが実務でいちばん詰まるところです。


拡張子は元画像から決まる

ワールドファイルの名前は、元画像と同じ名前・拡張子だけ差し替えです。規則は「拡張子の1文字目 + 最後の1文字 + w」。

元画像 ワールドファイル 備考
photo.tif photo.tfw t + f + w
photo.jpg photo.jgw j + g + w
map.png map.pgw p + g + w
old.bmp old.bpw b + p + w
(汎用) photo.wld 上の規則の代わりに使える形式

つまり photo.jpgphoto.jgwセットで持ち歩かないと意味がありません。メールで画像だけ送って「位置が合わない」と言われる事故の大半はこれです。


中身は6行の数字だけ

たとえばこんな内容です(平面直角座標系・1ピクセル0.2m の例)。

0.2000000000
0.0000000000
0.0000000000
-0.2000000000
-32500.0000000000
64200.0000000000

各行の意味は次のとおりです。

記号 意味
1行目 A ピクセル幅の東西成分(回転が無ければ「1ピクセルの横の長さ」)
2行目 D ピクセル幅の南北成分(回転・スキュー。通常 0)
3行目 B ピクセル高さの東西成分(回転・スキュー。通常 0)
4行目 E ピクセル高さの南北成分(通常 0.2 のような値のマイナス
5行目 C 左上ピクセルの中心の x 座標
6行目 F 左上ピクセルの中心の y 座標

画像の列・行(col, row)から地図座標を出す式はこうなります。

x = A × col + B × row + C
y = D × col + E × row + F

ここから、実務で効く3つの読み方が出てきます。

① 4行目がマイナスなのは「画像は下へ、地図は上へ」だから

画像は上から下へ行番号が増えます。一方、地図の座標は北へ行くほど増えます。向きが逆なので、4行目は通常マイナスになります。ここをプラスで書くと、画像が上下反転して貼り付きます。

② 5・6行目は「角」ではなく「左上ピクセルの中心」

四隅の座標ではなく、左上ピクセルの中心です。ピクセルの半分(この例なら0.1m)だけ違います。図郭の座標をそのまま5・6行目に入れると、常に半ピクセルずれます。50cm解像度なら25cm。図面照合ではこれが効いてきます。

③ 2・3行目が0でないときは「回転している」

2行目・3行目は「回転角度そのもの」ではなく、ピクセルの向きベクトルの成分です。ここが0でない画像は傾いて貼られます。スキャンした紙図面を傾いたまま合わせ込むと、こうなります。読むときは「0以外=回転あり」とだけ覚えておけば十分です。

座標変換の流れ


いちばんの落とし穴 — 測地系が書かれていない

6行の数字を見て分かるのは「どのくらいの大きさで、どこに置くか」だけです。その数字がどの座標系の値なのかは、どこにも書かれていません。

  • -32500.0 64200.0 は、平面直角座標系のどれかの系かもしれない
  • 139.7 35.6 なら、緯度経度(度)でしょう。でも JGD2011 か JGD2000 か旧日本測地系かは分からない
  • 数百万の値なら UTM か Web メルカトルかもしれない

この情報を補うのが .prj ファイル(Shapefile と同じ WKT のテキスト)です。GeoTIFF なら画像自体のタグに座標系を埋め込めますが、JPEG や PNG にはその場所がありません。だから「.jgw はあるが .prj が無い」という配布物が、実務では普通に出回ります。

出どころ不明の座標を渡されたときの見分け方は、点データのときと同じです。既知点に重ねてズレ量を見る。旧日本測地系と世界測地系なら数百m級のずれになるので、地図に重ねた瞬間に分かります。

地図画面で位置を確認する


もうひとつの落とし穴 — 測量の X・Y とは並びが逆

日本の測量で使う平面直角座標系は、X が北方向・Y が東方向です。一方、ワールドファイルの5・6行目は、多くの GIS で「東方向, 北方向」の順に解釈されます。つまり 測量成果の (X, Y) をそのまま5・6行目に書き写すと、90度回った位置に落ちます

何の値か 並び
測量の平面直角座標(告示) X = 北, Y = 東
ワールドファイル 5行目 / 6行目 東方向 / 北方向(= Y, X の順)

慣れないうちは「5行目に入れるのは Y、6行目に入れるのは X」と読み替えるより、貼ってみて南北が合っているか目視する方が確実です。なお座標軸の扱いはソフトウェアの実装によって差があるため、必ず既知点で確認してください。


使う前のチェックリスト

確認 見るところ
ファイル名が元画像と一致しているか abc.jpgabc.jgw(大文字小文字も)
4行目がマイナスか 上下反転していないか
1行目と4行目の絶対値が同じか 違うなら縦横で解像度が違う(意図的なこともある)
2・3行目が0か 0以外なら回転あり
5・6行目の桁数 平面直角なら数万〜十数万、緯度経度なら2〜3桁、UTM/Webメルカトルなら6〜7桁
.prj が付いているか 無ければ測地系は別途確認が必要
南北が合っているか 既知点・道路形状に重ねて目視

まとめ

  • ワールドファイルは、画像に位置と大きさを与える6行のテキスト。拡張子は元画像から機械的に決まる
  • 5・6行目は左上ピクセルの「中心」。角ではないので半ピクセルの差が出る
  • 4行目は通常マイナス。プラスにすると上下反転
  • 測地系は書かれていない.prj が無ければ、ズレ量から推定するしかない
  • 平面直角座標の (X, Y) をそのまま書くと南北と東西が入れ替わる

画像に座標を与えたあと、その座標系を別の測地系へそろえる段階では、点座標の変換と同じ話に戻ります。GeoConverter Pro(GCVP)は点の座標変換に特化していますが、「重ねる前に測地系をそろえる」という順番はラスタでも同じです。

出典

  • GDAL ドキュメント「WLD — ESRI World File」 https://gdal.org/en/stable/drivers/raster/wld.html
  • 国土地理院「平面直角座標系(平成十四年国土交通省告示第九号)」 https://www.gsi.go.jp/LAW/heimencho.html
  • 国土地理院「基盤地図情報」 https://www.gsi.go.jp/kiban/

ワールドファイルの解釈(特に座標の軸順序)は、読み込むソフトウェアの実装によって差があります。実務では必ず既知点で重なりを確認してください。


次に確認する


入門から通しで読むなら: 『日本の測地系がわかる本』 — 旧日本測地系から JGD2024 まで、座標がズレる理由と実務での扱いを1冊にまとめました(Kindle Unlimited 対応)


開発者より: アプリ・Kindle本・オープンソースの一覧は GitHub: amru195704 にまとめています。


お願い
本記事の情報は参考目的で掲載しており、正確性・完全性を保証するものではありません。誤記・不正確な情報がございましたら、コメント欄よりご指摘いただければ、確認のうえ修正いたします。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

トップへ戻る