dem_slope — DEM surface op

データ種: depthimage2d

呼び出し: import fullseye as fs; fs.ledger.dem_slope(dem, cell_size, method='horn', units='degrees') (実装を直接呼ぶなら import demops; demops.dem_slope(dem, cell_size, method='horn', units='degrees')、台帳から引くなら opsdem.get("dem_slope"))

使い方

傾斜角。`units"degrees" / "radians" / "percent"`。

平面なら閉形式 `atan(|grad|)` と一致する(実測 1e-13 以下)。

手順: 3x3 近傍から `dz/dx(東向き)と dz/dy`(北向き = 行が減る向き)を

取り、`g = hypot(dz/dx, dz/dy)"degrees"atan(g)` を度で、

`"radians" はラジアン、"percent"100 g`(45 度 = 100 %)。

縁は端の値を複製して埋める(`pad mode="edge"`)ので、外周 1 セルは内側より

緩めに出る。

• `dem: (H, W) の標高 [m]、3x3 以上、実数、inf 不可。欠測は nan` で

渡す ―― `-9999 のような番兵値がそのまま入っている(<= -9000` があり

`nan が無い)と拒否する。nan` は 3x3 の範囲に伝播する。

• `cell_size`: セル辺長 [m]、正の有限値。bool / 文字列は拒否。緯度経度格子は

先に `dem_geodetic_slope` 側を使う。

• `method: "horn"(Horn 1981 の 3x3 重み付き差分、既定)/ "central"`

(Zevenbergen–Thorne の中央差分)。

• 返り値: `(H, W) float64。degrees[0, 90)`。

• 失敗はすべて `ValueError(形・番兵値・cell_size`・選択肢)。

`dem_aspect と対で使う。dem_hillshade` はこの 2 つから陰影を作る。

詳しい使い方ガイド

dem_terrain_analysis ファミリ ガイド

参考(サンプルデータ・文献)

• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。

• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。

• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。

実行できる例(この op を実際に呼ぶ検証済みサンプル)

dem_geodesy_tourpy -3.11 examples/dem_geodesy_tour.py

poc_crop_phenotypingpy -3.11 examples/poc_crop_phenotyping.py

poc_dem_terrainpy -3.11 examples/poc_dem_terrain.py

poc_geodetic_height_framespy -3.11 examples/poc_geodetic_height_frames.py

poc_multibeam_bathymetrypy -3.11 examples/poc_multibeam_bathymetry.py

poc_stockpile_volumepy -3.11 examples/poc_stockpile_volume.py

型が繋がる次の op(image2d を入力に取れる)

同カテゴリ(surface)

dem_aspect · dem_curvature · dem_roughness · dem_tpi


*Provenance: demops.py — DEM operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.