caliper op• 데이터 종류: 없음 → measurehandle(인자만으로 정해지는 연산자 —— 이미지나 데이터 입력을 받지 않습니다)
• 호출: import fullseye as fs; fs.ledger.gen_measure_arc(center_row, center_col, radius, angle_start, angle_extent, width, shape)(구현을 직접 호출하려면 import measuring1d; measuring1d.gen_measure_arc(center_row, center_col, radius, angle_start, angle_extent, width, shape), 원장에서 가져오려면 opsmeasure1d.get("gen_measure_arc"))
측정 호(원주 방향으로 ≈1 px 간격으로 프로파일을 취함)를 정의한다(gen_measure_arc). 샘플 수 n = round(|angle_extent|*radius)+1, spacing = 호 길이/(n-1).
호 위의 샘플 점은 row = center_row + radius sin(θ), col = center_col + radius cos(θ), θ = angle_start + linspace(0, angle_extent, n). 각도는 라디안이며, col 축(x)에서 row 축(영상 아래 방향)으로 도는 방향이 양. angle_extent 가 음이면 반대로 돌아 나아가며, measure_pos 의 pos / dist 는그 진행 방향을 따라 센다.
• radius: [px]. n = max(2, round(|angle_extent| * radius) + 1) 이므로, 반지름이나 각도 폭이 너무 작으면 샘플 2 점·spacing 이 호 길이 그 자체가 된다. radius = 0 은 spacing = 0 이 되어 후단의 미분에서 파탄한다(여기서는 검증하지 않는다).
• width: 폭 방향(법선)의 평균화 폭 [px]. int 로 잘리며, 1 이하면 평균 없음.
• shape: 영상의 (H, W). dict 에 저장될 뿐이며, 범위 밖은 measure_pos 쪽이 최근접으로 외삽한다(예외는 발생하지 않는다).
• 반환값: {"type": "arc", "rows", "cols", "width", "shape", "spacing", "center", "radius", "angles"} 의 dict(measurehandle 형).
measure_pos / measure_pairs / fuzzy_measure_pairing 에 넘긴다. 직선이라면 gen_measure_rectangle2. 위치 결정 후에는 translate_measure 로 움직인다.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_dimensional_inspection — py -3.11 examples/poc_dimensional_inspection.py
measurehandle 를 입력으로 받는 것)translate_measure · measure_pos · measure_pairs · fuzzy_measure_pairing
caliper)gen_measure_rectangle2 · translate_measure · measure_pos · measure_pairs · fuzzy_measure_pairing
*Provenance: measuring1d.py — MEASURE1D 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.