QGISメモ-ジオリファレンシング

QGISで、磁北が上で書かれた地図を投影しようと思ったときに、「線形」での投影ではうまくいかなかったので他のアルゴリズムについて調べてみた。

ソースはqgis3.28のユーザーガイド

意訳

特に専門家ではないので解釈の正確性に自信はない。

線形(Linear )
投影したい画像を回転させたりせず、シンプルに画像に位置情報を与えて画像の縮尺を決める。そのため、読み込むラスタは高品質であるべきで、単純に位置情報を持っていない、という場合に適している。最低2つのGCPが必要。

ヘルマート(Helmert)
縮尺を決めるだけでなく、画像を回転させることが可能。読み込むラスタは高品質だけどきちんと向きが決まっていない時(たとえば航空写真だけど角度が変、とか)に良い。最低2つのGCP必要。

多項式 (Polynomial 1)
より一般的な変換を可能にするが、直線や平行は維持する。縦と横で縮尺が異なるような場合に良い。最低3つのGCP必要。

多項式2,3 (Polynomial algorithms 2,3)
2次または3次の多項式を使用。地図のゆがみに対応する(たとえば、周縁部にゆがみが発生した写真等)。読み込む画像に一律に変換が適用されるわけではないため、GCPを置きすぎると部分的に最適だが離れたところの誤差が大きくなる(過適合、オーバーフィッディングのことと思われる)が発生する可能性がある。直線が曲線になることもある。多項式2は6, 多項式3は10のGCP必要。

薄板スプライン(Thin Plate Spline)
読み込むラスタを部分部分で適合させ、全体としては最もゆがみが少ないように投影する、ということらしい。破損したり変形した地図、微妙にずれている地図等に適する方法。最低10個から可能だが、通常はより多く使う。

投影変換
多項式1の異なるバージョン、直線は保持させるが平行は保持されず、遠近の変化に応じて変換される。真上ではなく斜めから撮影された地図や航空写真に使う。

ということで、正確で真北ではなく磁北を上として書かれた地図は「ヘルマート変換」が適切だとわかった。
と思っていたが、実際はそうではなかった。

原因
まず、投影法について考慮していなかった。読み込んだ地図は平面直角座標系であったが、投影先はWGS84だった。そのため、単純に回転させればきちんと当てはまるわけではなかった。多項式1を選択したところ、合致した。

なにか勘違いがあれば指摘していただければ幸いです。

参考

Deepl翻訳

Linearアルゴリズムはワールドファイルの作成に使用され、他のアルゴリズムと異なり、ラスターピクセルを実際に変換することはない。画像の位置決め(平行移動)と均一な拡大縮小は可能ですが、回転やその他の変換はできません。画像は既知のCRSにある良質なラスター地図ですが、ジオリファレンス情報が不足している場合に最も適しています。少なくとも2つのGCPが必要です。

Helmert変換は、回転も可能です。ラスターが質の良いローカルマップやオルソレクトされた航空画像でありながら、CRSのグリッド方位と一致していない場合に特に有効です。少なくとも2つのGCPが必要です。

Polynomial 1アルゴリズムは、より一般的なアフィン変換、特に均一なシアー変換を可能にします。直線は直線のまま(つまり、共線点は共線点のまま)、平行線は平行のままです。これは、異なる方向の異なるピクセルサイズでプロット(またはデータ収集)されたデータカートグラムのジオリファレンスに特に有効です。少なくとも3つのGCPが必要です。

多項式アルゴリズム2-3は、単なるアフィン変換ではなく、より一般的な2次または3次の多項式を使用します。これにより、例えばエッジが湾曲している写真地図など、画像の曲率やその他の系統的なゆがみを考慮することができます。少なくとも6個(それぞれ10個)のGCPが必要です。角度や局所的なスケールは、画像全体で一様に保存または処理されるわけではありません。特に、直線が曲線になったり、データに適合した多項式を外挿しすぎたために、エッジやGCPから離れた場所で大きな歪みが発生することがあります。

射影アルゴリズムは、多項式1を別の方法で一般化し、画像と地図キャンバスの2つの平行でない平面間の中心投影を表す変換を可能にします。直線はまっすぐなままですが、平行性は保たれず、画像全体のスケールは遠近感の変化に応じて一貫して変化します。この変換タイプは、良質な地図の角度のある写真(フラットスキャンではなく)や、斜めの航空写真をジオリファレンスする場合に最も有効です。最低4つのGCPが必要です。

最後に、TPS(Thin Plate Spline)アルゴリズムは、複数のローカル多項式を使用してラスターを「ラバーシート」し、指定されたGCPに一致させ、全体の表面曲率を最小にする。GCPから離れた領域は、GCPとのマッチングに対応するために出力内で移動しますが、それ以外の局所的な変形は最小限に抑えられます。 TPSは、破損、変形、またはわずかに不正確な地図や、オルソレクトの不十分な航空写真をジオリファレンスする際に最も有用です。 また、投影タイプやパラメータが不明な地図で、正規のグリッドや密なアドホックGCPが参照地図レイヤーと一致する場合、おおよそのジオリファレンスや暗黙の再投影に有効です。技術的には最低10個のGCPが必要ですが、通常はそれ以上のGCPがあれば成功します。

www.DeepL.com/Translator(無料版)で翻訳しました。

原文

The Linear algorithm is used to create a world file and is different from the other algorithms, as it does not actually transform the raster pixels. It allows positioning (translating) the image and uniform scaling, but no rotation or other transformations. It is the most suitable if your image is a good quality raster map, in a known CRS, but is just missing georeferencing information. At least 2 GCPs are needed.
The Helmert transformation also allows rotation. It is particularly useful if your raster is a good quality local map or orthorectified aerial image, but not aligned with the grid bearing in your CRS. At least 2 GCPs are needed.
The Polynomial 1 algorithm allows a more general affine transformation, in particular also a uniform shear. Straight lines remain straight (i.e., collinear points stay collinear) and parallel lines remain parallel. This is particularly useful for georeferencing data cartograms, which may have been plotted (or data collected) with different ground pixel sizes in different directions. At least 3 GCP’s are required.
The Polynomial algorithms 2-3 use more general 2nd or 3rd degree polynomials instead of just affine transformation. This allows them to account for curvature or other systematic warping of the image, for instance photographed maps with curving edges. At least 6 (respectively 10) GCP’s are required. Angles and local scale are not preserved or treated uniformly across the image. In particular, straight lines may become curved, and there may be significant distortion introduced at the edges or far from any GCPs arising from extrapolating the data-fitted polynomials too far.
The Projective algorithm generalizes Polynomial 1 in a different way, allowing transformations representing a central projection between 2 non-parallel planes, the image and the map canvas. Straight lines stay straight, but parallelism is not preserved and scale across the image varies consistently with the change in perspective. This transformation type is most useful for georeferencing angled photographs (rather than flat scans) of good quality maps, or oblique aerial images. A minimum of 4 GCPs is required.
Finally, the Thin Plate Spline (TPS) algorithm “rubber sheets” the raster using multiple local polynomials to match the GCPs specified, with overall surface curvature minimized. Areas away from GCPs will be moved around in the output to accommodate the GCP matching, but will otherwise be minimally locally deformed. TPS is most useful for georeferencing damaged, deformed, or otherwise slightly inaccurate maps, or poorly orthorectified aerials. It is also useful for approximately georeferencing and implicitly reprojecting maps with unknown projection type or parameters, but where a regular grid or dense set of ad-hoc GCPs can be matched with a reference map layer. It technically requires a minimum of 10 GCPs, but usually more to be successful.

https://docs.qgis.org/3.28/en/docs/user_manual/working_with_raster/georeferencer.html


この記事が気に入ったらサポートをしてみませんか?