私は次のようなcmdコマンドでogr2ogrスプライン変換を使用してシェープファイルを調整しようとしています:
C:\OSGeo4W64\bin\ogr2ogr.exe -f "ESRI Shapefile" C:\path\output.shp -tps --optfile C:\path\gcp.txt C:\path\input.shp
私は1000を超えるコントロールポイントを持っています(したがって、それらは別のファイルにあります)。そして、私はこの方法の精度に奇妙な問題があります。この質問で、ogr2orgのスプライン法は実際には正確ではないことをすでに見ました。しかし、GCPの数とデータセットの範囲により、精度が北から南に向かって劇的に低下していることがわかります。このような:
北では、この方法はほぼ正確(0.001 mの誤差)であり、スムーズに精度が失われ、南では、約60 mの誤差が生じます。
すべてのGCPのRMSEを計算し、それを座標とコントロールポイントのID番号に対してプロットしました(ほとんどの場合、北から始まるGCPを作成していました)。そして、私が持っています:
gdalのソースコード(gdal_tps、thinplatespline、ogr2ogr_libモジュールを見つけました)を見つけて読み込もうとしましたが、その言語(C ++?)がわからず、メソッドのしくみがわかりません。ogr2ogrの多項式1、2、および3次は正常に機能しています(これらは正確な方法ではありませんが、エラーは進行していません)。
では、なぜY座標に応じてスプライン精度が対数的に減少するのでしょうか。(X座標の場合、16000 mごとに精度のジャンプが見られます)。これはどのようにして可能ですか?この調整方法はどのように機能しますか?この問題を解決するにはどうすればよいですか?(Windows 7、64ビットを使用しています)