Processor

【OpenCV】 채널 분리(Split)과 병합(Merge)

작성자 임베디드코리아 작성일26-04-16 21:42 조회109회 댓글0건
< *  채널 분리(Split)과 병합(Merge)  * >

◆ 채널 분리(Split)과 병합(Merge)은 영상이나 이미지의 색상 공간의 채널을 분리하거나 합치기 위해 사용한다.
    - 예를 들어, BGR 색상 공간을 B(Blue), G(Green), R(Red)로 분리해 단일 채널을 가진 배열로 반환할 수 있다.
◆ 분리된 채널의 값을 변경하거나 순서를 변경해, GB(R/2) 공간을 만들거나 새로운 색상 공간으로 변경할 수도 있다..

----< 예제 : Split-Merge.py  >-------------------------------------------------------------------
import cv2

src = cv2.imread("Image/lena.jpg", cv2.IMREAD_COLOR)
b, g, r = cv2.split(src)
inverse = cv2.merge((r, g, b))

cv2.imshow("b", b)
cv2.imshow("g", g)
cv2.imshow("r", r)
cv2.imshow("inverse", inverse)
cv2.waitKey()
--------------------------------------------------------------------------------------------------------
▶ b, g, r = cv2.split(src)
    : 채널 분리 함수(cv2.split)로 이미지에서 채널을 분리할 수 있다.

▶ mv = cv2.split(src)
  : 입력 이미지(src)에서 채널을 분리해 단일 채널 이미지 배열(mv)을 생성한다.
    - mv는 목록(list) 형식으로 반환되며, b, g, r 등으로 형태로 각 목록의 원솟값을 변수로 지정할 수 있다.
    - 분리된 채널의 순서에 맞게 각 변수에 할당된다.

▶ inverse = cv2.merge((r, g, b))
    : 채널 병합 함수(cv2.merge)로 분리된 채널을 병합해 하나의 이미지로 합칠 수 있다.

▶ dst = cv2.merge(mv)
  : 단일 채널 이미지 배열(mv)를 병합해 출력 이미지(dst)를 생성한다.
    - 채널을 변형한 뒤에 다시 합치거나 순서를 변경해 병합할 수 있다.
    - 순서가 변경될 경우, 원본 이미지와 다른 색상으로 표현될 수 있다.