paper op• 데이터 종류: text → table
• 호출: import fullseye as fs; fs.ledger.annotate_table_layout(text, xy, anchor='lt', font_size=13, font_path=None, pad=6, col_gap=None, row_gap=0, align='auto', header=False, bold=False, italic=False, line_spacing=1.15)(구현을 직접 호출하려면 import annotate; annotate.annotate_table_layout(text, xy, anchor='lt', font_size=13, font_path=None, pad=6, col_gap=None, row_gap=0, align='auto', header=False, bold=False, italic=False, line_spacing=1.15), 원장에서 가져오려면 opsannotate.get("annotate_table_layout"))
table(dict)을 반환한다: 탭으로 구분된 문자열을 표로 배치하는 열과 행의 위치.
행은 \n, 열은 \t로 나눈다. 열 폭은 지정된 크기의 실제 글꼴로 1 셀씩 잰 폭의 최댓값으로 정해진다 -- 글자 수로 세면 일본어와 영숫자에서반드시 어긋나므로, 재는 것 말고는 올바르게 할 방법이 없다.
text : str
탭 구분. 모든 행의 열 수가 같아야 한다(다르면 ValueError).
xy : (x, y)
anchor로 가리키는 위치(x=col, y=row).
anchor : str
'lt','ct','rt','lm','cm','rm','lb','cb','rb'의 9가지.
pad : int
표의 안쪽 여백 [px].
col_gap : int or None
열 사이 [px]. None(기본값)이면 행 높이 ×0.6을 반올림하므로,
글꼴 크기를 바꾸면 간격도 함께 움직인다.
row_gap : int
행 사이에 더하는 값 [px] (0이면 줄 간격 그대로).
align : str or sequence
TABLE_ALIGNS 중 하나, 또는 열별 나열. "auto"
(기본값)는 그 열의 값이 모두 수로 보일 때만 오른쪽 정렬한다.
header=True이면 머리글 행은 판정에서 제외한다.
header : bool
참이면 1번째 행을 머리글로 굵게 하고, 아래에 괘선을 1개 긋는다.
bold, italic : bool or int
합성 글자체(_bold_px / _italic_tile). header의
굵게는 이것과 별개로, 머리글 행에만 걸린다.
dict
{"rect": (x,y,w,h), "ncols", "nrows", "col_w": [...], "col_x": [...], "row_y": [...], "row_h", "col_gap", "align": [...], "header", "rule_y": 머리글 괘선의 y(header가 거짓이면 None), "cells": [{"text","row","col","xy","width","bold"}]}.
col_x / row_y / cells[i]["xy"]는 모두 영상 좌표.
ValueError
열 수가 행마다 다름 / 비어 있음 / 알 수 없는 align anchor /
align의 길이가 열 수와 다름.
>>> import annotate
>>> lay = annotate.annotate_table_layout("이름\t값\nA\t1.5\nB\t22.25", (10, 10))
>>> lay["ncols"], lay["nrows"], lay["align"]
(2, 3, ['left', 'left'])
>>> lay2 = annotate.annotate_table_layout("이름\t값\nA\t1.5\nB\t22.25", (10, 10),
... header=True)
>>> lay2["align"] # 머리글을 빼면 2번째 열은 수뿐
['left', 'right']
• dataset_conventions — 학습 데이터셋 규약 지식 — COCO / YOLO / VOC와 외관 검사의 함정
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• annotate_paper_tour — py -3.11 examples/annotate_paper_tour.py
table 를 입력으로 받는 것)—
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.