これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド v.surf.bsplinegrass です。
プログラム:
NAME
v.surf.bspline - Tykhonov を使用してバイキュービックまたはバイリニア スプライン補間を実行します
正則化。
KEYWORDS
ベクトル、サーフェス、補間、LIDAR
SYNOPSIS
v.surf.bspline
v.surf.bspline - 助けて
v.surf.bspline [-ce] =名 [層=string] [の項目に表示されます。=名] [sparse_input=名]
[出力=名] [ラスター出力=名] [mask=名] [ew_step=フロート] [ns_step=フロート]
[方法=string] [ラムダ_i=フロート] [ =名] [マキシット=整数] [エラー=フロート]
[っ=整数] [-上書きする] [-助けます] [-詳細] [-静かな] [-ui]
フラグ:
-c
「leave-one-out」交差検定を使用して、最適なTykhonov正則化パラメーターを見つけます
方法
-e
ポイント密度と距離の推定
現在の範囲内の入力ベクトル ポイントのポイント密度と距離を推定します。
領域が拡張されて終了する
-上書き
出力ファイルが既存のファイルを上書きできるようにする
- 助けて
使用状況の概要を印刷する
-詳細
冗長モジュール出力
- 静かな
静かなモジュール出力
--ui
GUIダイアログを強制的に起動する
パラメーター:
=名 [必要]
入力ベクトル ポイント マップの名前
または直接OGRアクセス用のデータソース
層=string
レイヤー番号または名前
ベクトルフィーチャは、さまざまなレイヤーにカテゴリ値を持つことができます。 この数は決定します
使用するレイヤー。 直接OGRアクセスで使用する場合、これはレイヤー名です。
デフォルト: 1
の項目に表示されます。=名
近似に使用される値を含む属性列の名前
指定されず、入力が 3D ベクトル マップである場合は、Z 座標が使用されます。
sparse_input=名
まばらな点を含む入力ベクトル マップの名前
または直接OGRアクセス用のデータソース
出力=名
出力ベクトルマップの名前
ラスター出力=名
出力ラスターマップの名前
mask=名
マスキングに使用するラスター マップ (ラスター出力のみに適用)
NULLでもゼロでもないセルのみが補間されます
ew_step=フロート
東西方向の各スプライン ステップの長さ
デフォルト: 4
ns_step=フロート
南北方向の各スプライン ステップの長さ
デフォルト: 4
方法=string
スプライン補間アルゴリズム
オプション: バイリニア、 バイキュービック
デフォルト: バイリニア
バイリニア:双一次補間
バイキュービック:バイキュービック補間
ラムダ_i=フロート
Tykhonov正則化パラメーター(平滑化に影響します)
デフォルト: 0.01
=名
対称線形方程式系を解くソルバーのタイプ
オプション: コレスキー、 cg
デフォルト: コレスキー
マキシット=整数
線形方程式系を解くために使用される最大反復回数
デフォルト: 10000
エラー=フロート
反復ソルバーのエラーブレーク基準
デフォルト: 0.000001
っ=整数
使用する最大メモリ(MB単位)
ラスター行のキャッシュサイズ
デフォルト: 300
DESCRIPTION
v.surf.bspline Tykhonovを使用して双一次/双三次スプライン補間を実行します
正規化。 の 2D または 3D ベクトルです ポイント 地図。 補間する値は次のとおりです。
3D ポイントの Z 値、または 2D または 3D のユーザー指定の属性列の値
ベクトルマップ。 出力はラスター (ラスター出力) またはベクトル (出力)マップ。 オプションで、
の位置を示す「疎点」ベクトルマップを入力できます。 出力 ベクトル
を指しています。
注意事項
理論的な観点から、補間手順はXNUMXつの部分で行われます。
XNUMX つ目は、スプライン関数の線形係数の推定値です。
最小二乗回帰を使用した観測点。 XNUMX 番目は次の計算です。
補間されたサーフェス (または補間されたベクトル点)。 ここで使用されているように、スプラインは 2D です
限られた 2D 領域内で計算される区分的な非ゼロ多項式関数。 長さ
各スプライン ステップは次のように定義されます。 ew_step 東西方向と ns_step
南北方向。 最適なパフォーマンスを得るには、スプライン ステップの長さを短くする必要があります。
観測点間の距離よりも短い。 各ベクトル点観測は次のようになります。
観測値の周囲の領域の非ゼロ スプラインの線形関数としてモデル化されます。
最小二乗回帰は、これらの線形関数の係数を予測します。
正則化により、それぞれに XNUMX つの観測値と XNUMX つの係数を持たせる必要がなくなります。
スプライン(不安定性を避けるため)。
規則的に分散されたデータ ポイントの場合、スプライン ステップは最大値に対応します。
東方向と北方向の両方の XNUMX 点間の距離は十分です。 しかし、しばしば
データ ポイントは規則的に分布していないため、統計的な正則化が必要になるか、
推定。 そのような場合、v.surf.bspline は勾配を最小限に抑えようとします。
点観測が欠けている領域の双一次スプラインまたは双三次スプラインの曲率。
一般的な規則として、スプラインのステップの長さは、スプライン間の平均距離より大きくする必要があります。
観測点 (点間の距離の XNUMX 倍が適切な開始点です)。 別
東西および南北のスプライン ステップ長の引数を使用すると、ユーザーはいくつかの点を考慮することができます。
観測点の分布の異方性の度合い。 短いスプラインステップ長さ
- 特にスプラインのステップ長が観測間の距離より短い場合
ポイント - 処理時間が大幅に長くなる可能性があります。
また、各時点における各方向の最大スプライン数は固定されており、
スプラインのステップの長さに関係なく。 使用されるスプラインの総数が増加するにつれて (つまり、
スプライン ステップ長が小さい場合)、領域は自動的にサブ領域に分割されます。
補間。 各サブ領域には 150x150 を超えるスプラインを含めることはできません。 サブリージョンを避けるには
境界の問題がある場合、サブ領域は部分的に互いに重なるように作成されます。 加重平均
点の位置に基づいて、各サブ領域内で観測値が計算されます。
Tykhonov正則化パラメーター(ラムダ_i)補間をスムーズにするように機能します。 とともに
小さい ラムダ_i、補間された表面は観測点に密接に追従します。 より大きな
値を指定すると、よりスムーズな補間が生成されます。
入力は 2D または 3D ベクトル ポイント マップにすることができます。 入力が 3D であり、 の項目に表示されます。 よりも与えられない
Z 座標は補間に使用されます。 パラメータ の項目に表示されます。 入力が 2D の場合は必須です
ベクトル マップ。
v.surf.bspline を生み出すことができます ラスター出力 または 出力 (ただし同時には不可)。 ご了承ください
トポロジは出力ベクトル ポイント マップ用に構築されていません。 必要に応じてトポロジを構築できます
by v.ビルド.
出力がベクトル ポイント マップであり、 まばらな ベクトル ポイント マップが指定されていない場合、
出力ベクトル マップには、観測点と同じ位置にある点が含まれます。
入力マップですが、出力ポイントの値は補間値です。 代わりに
まばらな ベクトル ポイント マップが指定されている場合、出力ベクトル マップには次の点が含まれます。
スパース ベクトル マップの点と同じ位置にあり、値は
それらの点で補間されたラスター サーフェス。
相互検証の「leave-one-out」分析を利用して、最適なものを決定するのに役立てることができます
ラムダ_i 元の観測値に最もよく適合する内挿を生成する値
データ。 相互検証に使用されるポイントが多いほど、相互検証に必要な時間は長くなります。
計算。 経験的テストによると、しきい値は最大 100 ポイントであることが示されています。
推奨。 観測値が 100 を超える場合、相互検証の実行が非常に遅くなる可能性があることに注意してください。
使用されています。 相互検証出力レポート 意味する 実効値 真からの残差の
ポイント値と、固定シリーズの補間から推定された値 ラムダ_i
価値観。 相互検証が選択されている場合、ベクトル出力もラスター出力も作成されません。
例
Basic 補間
v.surf.bspline 入力=point_vector 出力=interpolate_surface メソッド=bicubic
バイキュービック スプライン補間が実行され、推定されたベクトル ポイント マップが作成されます (つまり、
補間された)値が作成されます。
Basic 補間 ラスター 出力 a より長いです スプライン 手順
v.surf.bspline input=point_vector raster=interpolate_surface ew_step=25 ns_step=25
双一次スプライン補間は、25 マップ単位のスプライン ステップ長で実行されます。 アン
補間されたラスター マップは、現在の領域解像度で作成されます。
推定 of ラムダ_i パラメーター a クロス プロセス
v.surf.bspline -c input=point_vector
推定 on まばらな ポイント
v.surf.bspline 入力=point_vector sparse=sparse_points 出力=interpolate_surface
スパース ベクトル マップに対応する、ベクトル ポイントの出力マップが作成されます。
補間された値を使用します。
使い方 属性を使用する。 値 を取得する必要がある者 Z座標
v.surf.bspline input=point_vector raster=interpolate_surface Layer=1 \
列=属性列
補間は次の値を使用して行われます。 属性列、関連するテーブル内
レイヤー1で。
ノース カロライナ 場所 例 Z座標 の 補間
g.region 地域=rural_1m res=2 -p
v.surf.bspline input=elev_lid792_bepts raster=elev_lid792_rast \
ew_step=5 ns_step=5 メソッド=bicubic lambda_i=0.1
KNOWN 問題
既知の問題点:
RAM メモリの問題を回避するには、一部のデータを記録するために補助テーブルが必要です。
中間計算。 これには、 GROUP BY SQL関数が使用されていますが、
DBFドライバーでサポートされています。 このため、ベクトル マップの出力 (出力)は許可されていません
DBFドライバーを使用します。 DBFドライバーから出力されるラスターマップには問題ありません。
参考文献
・Brovelli MA、Cannata M.、およびLongoni UM、2004年、LIDARデータフィルタリングおよびDTM
GRASS内の補間、GISでのトランザクション、2004年8月、vol。 2、iss。 XNUMX、pp。
155-174(20)、Blackwell Publishing Ltd
・BrovelliMAおよびCannataM。、2004年、都市における数値地形モデルの再構築
空中レーザースキャンデータからの領域:Paviaの方法と例
(北イタリア)。 Computers and Geosciences 30、pp.325-331
・Brovelli M. A e Longoni UM、2003年、ソフトウェアper il filtraggio di dati LIDAR、
Rivista dell'Agenzia del Territorio、n。 3-2003、pp.11-22(ISSN 1593-2192)
・AntolinR。およびBrovelliMA、2007年、GRASSGISを使用したLiDARデータフィルタリング
数値地形モデルの決定。 Jornadas de SIG Libreの議事録、
ジローナ、スペイン。 CD ISBN:978-84-690-3886-9
onworks.net サービスを使用してオンラインで v.surf.bsplinegrass を使用する
