stroke op• 데이터 종류: image2d → pairs
• 호출: import fullseye as fs; fs.ledger.stipple_points_from_image(image, n_points, iterations=30, gamma=1.0, floor=0.02, seed=0, metric='euclidean')(구현을 직접 호출하려면 import printpath; printpath.stipple_points_from_image(image, n_points, iterations=30, gamma=1.0, floor=0.02, seed=0, metric='euclidean'), 원장에서 가져오려면 opsprintpath.get("stipple_points_from_image"))
농담을 점의 밀도로 옮긴다(가중 Lloyd = 무게중심 보로노이). → pairs
어두운 곳에 점이 조밀하게 모인다. 반환되는 것은 (n_points, 2) 의 (row, col).
Args:
image: 밝기 [0, 1] 의 2-D(또는 색. 휘도로 떨어뜨린다).
n_points: 점의 수.
iterations: Lloyd 의 반복 횟수.
gamma: 가중치를 darkness ** gamma 로 한다(1 = 어두움 그대로).
floor: 가중치의 하한. 0 으로 하지 않는다 —— 새하얀 영역의 가중치가 엄밀히 0 이면
그곳에 들어간 점이 움직일 수 없고(무게중심이 0/0), 위치가 입력에 의존하지 않게 된다.
seed: 초기 배치의 난수.
metric: 지금은 "euclidean" 만.
반환값 외에, 수렴의 모습은 stipple_points_from_image 를 iterations 를 바꿔 호출해 비교하면 잴 수 있다(Lloyd 의 에너지는 단조 감소한다).
★새하얀 영상에서도 점은 등간격으로 흩어진다(밀도가 일정하면 무게중심 보로노이는 균등). 그것이 "농담을 읽을 수 있다"는 것의 대조군이 된다.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_one_stroke_epicycles — py -3.11 examples/poc_one_stroke_epicycles.py
pairs 를 입력으로 받는 것)stipple_energy · stroke_tour_closed · mst_length · stroke_resample_closed · stroke_tone_error · mosaic_tiles_render
stroke)stipple_energy · stroke_tour_closed · mst_length · stroke_resample_closed · stroke_tone_error
*Provenance: printpath.py — PRINTPATH 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.