surface opdepth → image2dimport fullseye as fs; fs.ledger.dem_tpi(dem, cell_size=1.0) (実装を直接呼ぶなら import demops; demops.dem_tpi(dem, cell_size=1.0)、台帳から引くなら opsdem.get("dem_tpi"))地形位置指数 TPI —— 自セルと 8 近傍平均の差 [m]。正が尾根、負が谷。
式: tpi = z - mean(8 近傍の z)(Weiss の TPI を 3x3 の最小近傍で取ったもの)。
縁は端の値を複製して埋める。近傍が 1 セル固定なので、スケールは
cell_size 1 つぶんに固定で、より広い尾根/谷を見たいときは先に
dem を粗くする(この op に半径の引数は無い)。
dem: (H, W) [m]、3x3 以上、実数、inf 不可。欠測は nan(番兵値
<= -9000 が nan 無しで入っていれば拒否)。nan は 3x3 に伝播する。cell_size: 結果には影響しない(差分に距離は入らない)が、単位が [m] である
ことを呼び出し側に意識させるため受け取り、正の有限値かを検査する。(H, W) float64 [m]。0 付近が斜面の途中、正が凸(尾根・頂)、
負が凹(谷・窪地)。ValueError(形、番兵値、cell_size)。dem_roughness(同じ近傍の RMS)と組み合わせると地形分類の特徴になる。
py -3.11 examples/dem_terrain_analysis_tour.pyimage2d を入力に取れる)—
surface)dem_slope · dem_aspect · dem_curvature · dem_roughness
Provenance: demops.py — DEM operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.