annotate_outline — ANNOTATE paper op

데이터 종류: image2d × maskimage2d

호출: import fullseye as fs; fs.ledger.annotate_outline(img, mask, label=None, color='emphasis', width=1.5, alpha=1.0, dash=None, font_size=12, label_offset=(0, 0), box_alpha=0.6, text_color=None, scheme='okabe_ito', font_path=None, layout=None)(구현을 직접 호출하려면 import annotate; annotate.annotate_outline(img, mask, label=None, color='emphasis', width=1.5, alpha=1.0, dash=None, font_size=12, label_offset=(0, 0), box_alpha=0.6, text_color=None, scheme='okabe_ito', font_path=None, layout=None), 원장에서 가져오려면 opsannotate.get("annotate_outline"))

사용법

이미지(image2d)를 돌려줍니다: 마스크의 윤곽을 (AA 된) 닫힌 폴리라인으로 그리고 무게중심에 글자를 놓습니다.

> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.

Raises

------

ValueError

mask の形が画像と違う、真の画素が無い、alpha が [0,1] の外。

手順: `layout が無ければ annotate_outline_layout(mask)` で境界ループ

(画素の辺に沿う `(x, y)` の閉多角形、外周と穴の両方、成分ごと)と重心を

求め、各ループを距離被覆率のアンチエイリアス折れ線で載せる。`label` が

あれば重心 + `label_offsettext_box(anchor="cm"`、下敷き付き)を置く。

• `img: (H, W) / (H, W, 1|3|4)、float64 複製・[0, 1]`。

• `mask: (H, W)、画像と同じ形([row, col] 添字)。bool 以外は > 0.5`

で二値化、非有限は `ValueError。真の画素が無ければ ValueError`。

• `width: 線幅 [px]、0.5 以上。dash=(on, off) [px] で破線(on > 0`、

`off >= 0`)。

• `alpha: [0, 1]box_alpha` は文字の下敷きの不透明度。

• `label_offset: (dx, dy)` [px]。重心が輪郭の外に落ちる形(三日月など)は

ここでずらす。

• `layout: annotate_outline_layout` の返り値を渡すと再計算せず同じ配置を

別の絵に使い回せる(`contours / centroid` を読む)。

• 返り値: 入力と同形の float64。

塗りで示すなら `overlay_mask、複数領域に番号を振るなら annotate_markers`。

자세한 사용 가이드

figure_annotation 패밀리 가이드

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

dataset_conventions — 学習データセット規約の知識 — COCO / YOLO / VOC と外観検査での落とし穴

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

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

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

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

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

paper_figurepy -3.11 examples/paper_figure.py

poc_rotation_invariance_auditpy -3.11 examples/poc_rotation_invariance_audit.py

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

text_box · arrow · leader_line · label_points · crosshair · legend_box · color_bar · scale_bar

같은 카테고리(paper)

annotate_leader_layout · annotate_leader · annotate_markers · annotate_legend · annotate_dimension_layout · annotate_dimension · annotate_angle_layout · annotate_angle


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

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