occlusion_edges — 3D range_image op

• 데이터 종류: depth → image2d

• 호출: import fullseye as fs; fs.ledger.occlusion_edges(depth, rel_thresh=0.05)(구현을 직접 호출하려면 import range_image; range_image.occlusion_edges(depth, rel_thresh=0.05), 원장에서 가져오려면 ops3d.get("occlusion_edges"))

사용법

깊이의 불연속(전경/배경 경계 = 가림 에지)을 검출. → bool HxW.

차폐 에지는 깊이의 불연속(step) 이지 경사(slope)가 아니다. 균일한 경사면은연속이고 차폐를 포함하지 않으므로 flag해서는 안 된다. 1차 기울기(=깊이/화소)는 경사 그 자체여서, 계단인지 사면인지 구별할 수 없다(게다가 절대 깊이의 비율과 비교하는 것은 차원이 맞지 않는다).

그래서 축마다의 2차 차분(이산 라플라시안 상당) d[i+1]-2*d[i]+d[i-1]을 사용한다. 균일 경사(깊이가 근방에서 선형)라면 2차 차분 ≈ 0, fronto-parallel한 계단에서는 양쪽에서 큰 값. 이를 국소 깊이로 정규화한 상대적 깊이 점프가 rel_thresh를 넘는 화소를 경계로 한다.

배경 지식 가이드(이 연산자 앞에 있는 물리·규약)

• blender_interop — Blender와 함께 쓰기 — 형상을 만들고 fullseye로 측정(축·단위·정답 데이터의 함정)

• depth_sensors — 깊이 센서 지식 — 측거 원리·실기 수치·결측이 나타나는 방식

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

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

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

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

• range_image — py -3.11 examples_3d/range_image.py

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

fuse_to_voxel · fit_poly_surface · eval_poly_surface · surface_form_error · background_flatten · polar_unwrap · fit_zernike · matcap_shade

같은 카테고리(range_image)

depth_to_organized_points · normals_from_depth · bearing_angle_image


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

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