shape op• 데이터 종류: image2d → image2d
• 호출: import fullseye as fs; fs.ledger.arc(img, center, radius, start_deg, end_deg, color='neutral', width=2, alpha=1.0, scheme='okabe_ito')(구현을 직접 호출하려면 import annotate; annotate.arc(img, center, radius, start_deg, end_deg, color='neutral', width=2, alpha=1.0, scheme='okabe_ito'), 원장에서 가져오려면 opsannotate.get("arc"))
원호. 각도는 화면 x 축에서 시계 방향(row 가 아래를 향하므로), 단위는 도.
ValueError
radius가 양이 아님, 각도가 비유한, start == end, alpha가 [0,1] 밖.
그리기: 중심으로부터의 거리 d가 |d - radius| <= max(0.6, width/2)이고, 또한화소의 방위각이 start_deg로부터 시계 방향으로 (end_deg - start_deg) mod 360의범위에 있는 화소를 칠한다(안티에일리어싱 없음). 방위각은 atan2(y - cy, x - cx) 이며, 0도 = 오른쪽(+x), 90도 = 아래(+y), 시계 방향이 양.
• center: (x, y), x = 열·y = 행. 영상 밖이어도 된다(삐져나온 부분은 잘릴 뿐).
• radius: 양 [px].
• start_deg, end_deg: 도. start에서 시계 방향으로 end까지 그린다. 차가 360의 배수(end - start가 0이 아니라 360 등)이면 전체 원. start == end는 "길이 0"이므로 ValueError.
• width: 선폭 [px]. max(0.6, width/2)를 반폭으로 하므로 1 px 미만이어도끊기지 않는다.
• img / color / alpha / scheme의 취급은 rounded_rect와 같다(float64 복제, [0, 1], 역할명 또는 RGB).
• 반환값: 입력과 같은 형태의 float64.
각도를 써 넣는 학술 그림의 작법은 annotate_angle이 인출 문자까지 챙겨 준다.
• dataset_conventions — 학습 데이터셋 규약 지식 — COCO / YOLO / VOC와 외관 검사의 함정
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• annotate_gallery — py -3.11 examples/annotate_gallery.py
• poc_polish_wipe_measure — py -3.11 examples/poc_polish_wipe_measure.py
• poc_weld_radiograph_porosity — py -3.11 examples/poc_weld_radiograph_porosity.py
image2d 를 입력으로 받는 것)text_box · arrow · leader_line · label_points · crosshair · legend_box · color_bar · scale_bar
shape)rounded_rect · filled_polygon · ellipse
*Provenance: annotate.py — ANNOTATE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.