geodesy op• 資料種類:無 → points(僅由參數決定的運算子 —— 不接受影像或資料輸入)
• 呼叫: import fullseye as fs; fs.ledger.dem_enu_from_geodetic(lat_deg, lon_deg, h_m, lat0_deg, lon0_deg, h0_m)(要直接呼叫實作,import demops; demops.dem_enu_from_geodetic(lat_deg, lon_deg, h_m, lat0_deg, lon0_deg, h0_m);從台帳取用則 opsdem.get("dem_enu_from_geodetic"))
大地座標 → 參考點周圍的局部 ENU(東、北、上)[m] (points)。
現場圖面、機器人地圖、點雲大多以「相對原點的東、北、上」表示。從 ECEF 的轉換是在基準點處的 1 次旋轉,ENU = R(lat0, lon0) (X - X0)。
★ 不是平面直角座標(投影)。ENU 相當於向基準點處切平面的正射投影,距離越遠,因地球曲率在高度方向下落越多 —— 10 km 約 7.8 m,100 km 約 780 m。把大範圍當作「平坦的 xy」處理,就是捨棄了這一落差。
Args:
lat_deg / lon_deg: 點的緯度、經度 [度]。可為陣列。
h_m: 點的橢球高 [m]。
lat0_deg / lon0_deg / h0_m: 基準點(原點)的大地座標。
Returns:
(n, 3) 的 (east, north, up) [m]。基準點本身嚴格為 (0, 0, 0)。
可用閉合式檢驗的內容:基準點處為 (0, 0, 0),
與 dem_geodetic_from_enu 的往返為 1e-9 m 級,並且與經由既有的 dem_geodetic_to_ecef 自行旋轉的結果一致(經由另一路徑的驗算)。
ValueError:非有限值、緯度超出 ±90、長度不一致。
• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。
• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。
• 演算法的正典(作者、年份)與用途見上面的族使用指南。
• poc_geodetic_benchmarks_real — py -3.11 examples/poc_geodetic_benchmarks_real.py
• poc_geodetic_height_frames — py -3.11 examples/poc_geodetic_height_frames.py
points 作為輸入)dem_ecef_to_geodetic · dem_geodetic_from_enu
geodesy)dem_geodetic_to_ecef · dem_ecef_to_geodetic · dem_geocentric_grid · dem_earth_curvature_drop · dem_cell_size_webmercator · dem_geodetic_slope · dem_geoid_height · dem_height_frame_convert
*Provenance: demops.py — DEM 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.