curvilinear op• 데이터 종류: image2d → image2d
• 호출: import fullseye as fs; fs.ledger.polar_unwrap(image, center=None, r_in=0.0, r_out=None, ntheta=360, nr=64, device='cpu')(구현을 직접 호출하려면 import match3d; match3d.polar_unwrap(image, center=None, r_in=0.0, r_out=None, ntheta=360, nr=64, device='cpu'), 원장에서 가져오려면 ops3d.get("polar_unwrap"))
• GPU: 이 연산자는 GPU 경로가 있습니다(device="cuda")
이미지의 원환/원판을 (θ×r) 사각형으로 펼칩니다(산업: 라벨/링/회전체 검사).
원주 방향으로 늘어선 특징을 "세로"로 펴서 통상의 2D 기법(직선 탐색/상관)을 적용할 수 있다. grid_sample. θ 축은 endpoint 없음(행 k의 각도 = k·2π/ntheta) = 0°와 360°를 중복 샘플하지 않는주기 그리드(θ 방향 FFT/순환 상관의 전제를 만족한다. 2026-08-30 수정, 구판은 첫 행=끝 행).
Raises ValueError: 입력이 2-D가 아님·2x2 미만·NaN/Inf/float32 자릿수 넘침.
인수: center=(cy, cx)는 (행, 열) 순서(기본값은 영상 중심 ((H−1)/2, (W−1)/2)). r_in〜r_out(화소, 기본값 min(H,W)/2 − 1)을 nr 등분, 각도를 ntheta 등분. 출력 (ntheta, nr) float32: 행 k의 각도 θ = k·2π/ntheta, 열 j의 반경 r = r_in + j·(r_out − r_in)/(nr−1), 샘플 점은 (cy + r sinθ, cx + r cosθ)(θ=0이 +열 방향, θ가 커지면 +행 방향으로 돈다). 영상 밖은 0으로 채워진다(bilinear).
후단: 행 방향(θ)의 직선 탐색·ncc_locate, θ 방향의 1-D 상관으로 회전각.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• curvilinear_proj — py -3.11 examples_3d/curvilinear_proj.py
image2d 를 입력으로 받는 것)fuse_to_voxel · fit_poly_surface · eval_poly_surface · surface_form_error · background_flatten · fit_zernike · matcap_shade · antialias
curvilinear)*Provenance: match3d.py — 3D 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.