poisson_blend — COLORTRANSPORT blend op

• 데이터 종류: image2d × image2d × mask → image2d

• 호출: import fullseye as fs; fs.ledger.poisson_blend(src, dst, mask, offset=(0, 0))(구현을 직접 호출하려면 import colortransport; colortransport.poisson_blend(src, dst, mask, offset=(0, 0)), 원장에서 가져오려면 opscolortransport.get("poisson_blend"))

• 원장 경유의 반환값: fullseye.ledger.poisson_blend(...) 는 선언된 out 형 image2d 의 값만 반환합니다(실제 함수는 보조 정보도 반환). 버려진 쪽이 필요하면 fullseye.ledger.poisson_blend.raw(...) 를 쓰거나 colortransport.poisson_blend 를 직접 호출하세요.

사용법

기울기장을 옮기는 이음매 없는 합성(Pérez, Gangnet & Blake, SIGGRAPH 2003).

mask 내부에서 src 의 기울기를 유지하면서 경계에서 dst 의 값과일치하는 상을 푼다. 따라서 출력은 다음 2 가지를 구성상 만족하며, 그것이 정확성의 검산이 된다:

• 내부의 라플라시안이 src 의 라플라시안과 일치(해의 잔차만큼까지)

• 마스크 밖은 dst 와 엄밀히 일치(1 화소도 건드리지 않는다)

붙인 물체의 색은 바뀐다. 그것이 목적인 처리이지만, "붙인 물체의 색을 측정하는" 용도에 그대로 흘리면 측정하는 것은 붙여 넣은 곳의 색이 된다. 반환값은 (blended, info) 이고, info["changed_pixels"] 와 info["max_shift"] 가 실제로 얼마나 움직였는지를 알려 준다.

Parameters

src : array_like

붙일 그림. (H, W) 또는 (H, W, C).

dst : array_like

붙여 넣을 곳. src 이상의 크기.

mask : array_like

src 와 같은 (H, W) 의 불리언. 가장자리에 닿아서는 안 된다

(경계 조건을 잡을 수 없으므로 명시적으로 거부한다).

offset : (int, int)

dst 안에서 src 의 왼쪽 위를 놓을 (row, col).

Returns

(ndarray, dict)

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

• colorimetry — 측색과 분광 지식 — 색은 ‘분광 × 광원 × 관찰자’로만 정해진다

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

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

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

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

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

• color_transport — py -3.11 examples/color_transport.py

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

histogram_match

같은 카테고리(blend)

—


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

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