dem_aspect — DEM surface op

• 데이터 종류: depth → image2d

• 호출: import fullseye as fs; fs.ledger.dem_aspect(dem, cell_size, method='horn', flat_tol=1e-12)(구현을 직접 호출하려면 import demops; demops.dem_aspect(dem, cell_size, method='horn', flat_tol=1e-12), 원장에서 가져오려면 opsdem.get("dem_aspect"))

사용법

사면 방위 [도]. 북쪽 0도, 동쪽 방향으로 회전. 평탄한 셀은 ASPECT_FLAT.

평탄을 0으로 반환하지 않는 것은, 0이 "북향 사면"을 의미해 버리기 때문 —— 구별할 수 없는 값을 반환하는 것은, 예외를 내지 않고 틀리는 전형.

절차: dem_slope와 같은 3x3 기울기 (dz/dx, dz/dy)를 취하고, 내리막 기울기의방향 atan2(-dz/dx, -dz/dy)를 도로 바꿔 [0, 360)로 접는다. 행 0이 북, 열이 늘어나는 방향이 동이라는 전제로, 북 0 / 동 90 / 남 180 / 서 270. 행 0이 남쪽인 격자(상하 반전된 배열)를 넘기면 남북이 뒤바뀌고, 예외는 나지 않는다.

• dem, cell_size, method: dem_slope와 같은 계약(3x3 이상, nan 으로 결측, 센티넬 값은 거부, cell_size는 양의 [m]).

• flat_tol: 기울기 크기 hypot(dz/dx, dz/dy) [m/m]가 이 값 이하이면 평탄으로간주하여 ASPECT_FLAT(= -1.0)를 반환한다. 기본값 1e-12는 "수치적으로 엄밀히 평탄"뿐. 정수 표고의 평지에서도 미소 기울기로 방위가 붙는 경우가 있으므로, 의미 있는 임계값(예 1e-3)을 명시하는 것이 좋다.

• 반환값: (H, W) float64. [0, 360) 또는 -1.0. nan 셀 주위는 nan.

• 방위의 히스토그램이나 평균을 낼 때는 -1을 먼저 제외한다(out >= 0).

자세한 사용 가이드

• dem_terrain_analysis 패밀리 가이드

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.

• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.

• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.

실행 가능한 예제(이 연산자를 실제로 호출하는 검증된 샘플)

• poc_dem_terrain — py -3.11 examples/poc_dem_terrain.py

• poc_geodetic_height_frames — py -3.11 examples/poc_geodetic_height_frames.py

타입이 이어지는 다음 연산자(image2d 를 입력으로 받는 것)

—

같은 카테고리(surface)

dem_slope · dem_curvature · dem_roughness · dem_tpi


*Provenance: demops.py — DEM 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

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