annotate_invert_visibility — ANNOTATE overlay op

데이터 종류: image2d × masktable

호출: import fullseye as fs; fs.ledger.annotate_invert_visibility(img, mask, mode='complement', alpha=1.0, bits=128)(구현을 직접 호출하려면 import annotate; annotate.annotate_invert_visibility(img, mask, mode='complement', alpha=1.0, bits=128), 원장에서 가져오려면 opsannotate.get("annotate_invert_visibility"))

사용법

> 이 연산자의 설명은 아직 번역이 없습니다. 원문을 그대로 싣습니다.

反転色がその地の上で本当に見えるかを、描く前に測る。

反転色の利点は「地の色を知らなくてよい」ことだが、弱点はたった 1 つで、

しかも致命的 —— 中間調では反転しても同じ色になる。8bit グレーの

v=128 に対する補色は v=127 で、WCAG のコントラスト比は 1.014

(比 1.0 が「同じ色」。実測 2026-09-08)。比 1.5 を下回る帯は

v ∈ [113, 142] の 30/256 階調 = 全階調の 12 % に及ぶ。

:func:annotate_invert と :func:annotate_invert_path は内部でこれを

呼んで警告するが、自分で fail-closed にしたいときはこの op で測って

から描く(`min_contrast を見て、低ければ mode="contrast"` に倒す)。

Parameters

----------

img : (H,W) または (H,W,C)

地。値域 [0,1]。

mask : (H,W)

反転を乗せるところ。真偽か [0,1] の重み。形が違えば例外

mode : str

:data:INVERT_MODES のいずれか。

alpha : float

反転の効き。描くときと同じ値を渡すこと —— 見え方は「反転色」ではなく

実際に置かれる色で決まるので、`alpha` を落とすと答えが変わる。

Returns

-------

dict

`pixels(重み >= 0.5 の画素数) / min_contrast` /

`median_contrast / invisible_fraction`(比が

:data:INVERT_MIN_CONTRAST 未満の割合) / `worst_xy`(最悪の画素、

無ければ `None`)。

Examples

--------

>>> import numpy as np, annotate

>>> flat = np.full((8, 8), 128 / 255.0) # 中間調 —— 反転が消える地

>>> rep = annotate.annotate_invert_visibility(flat, np.ones((8, 8), bool))

>>> round(rep["min_contrast"], 3)

1.014

>>> rep["invisible_fraction"]

1.0

>>> annotate.annotate_invert_visibility(flat, np.ones((8, 8), bool),

... mode="contrast")["min_contrast"] > 4.5

True

자세한 사용 가이드

figure_annotation 패밀리 가이드

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

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

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

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

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

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

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

annotate_paper_tourpy -3.11 examples/annotate_paper_tour.py

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

같은 카테고리(overlay)

overlay_mask · overlay_labels · annotate_invert · annotate_invert_path


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

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