Channel Swap

1 개요

이미지에서 선택한 2개의 Channel을 교환하는 알고리즘입니다.

2 알고리즘 상세 설명

이미지 내에 선택된 2개의 Channel의 값을 서로 교환해 주는 알고리즘입니다.

Source Value Destination Value
Source Image Destination Image
Fig. Channel Swap 1 Ch, 2 Ch 동작 예시

같은 Channel을 선택한 경우 그대로의 이미지를 반환합니다.
선택된 이미지의 Channel 수를 초과하는 Channel을 선택할 경우 오류를 반환합니다.

RGB 이미지를 BGR 이미지 등으로 변환이 가능합니다.

RGB Image BGR Image
Source Image Destination Image
Fig. Channel Swap RGB, BGR 동작 예시

3 예제 코드

// 객체 생성
CChannelSwap channelSwap;

// 입력 이미지 설정
CFLImage fliSourceImage;
channelSwap.SetSourceImage(fliSourceImage);

// 결과 이미지 설정
CFLImage fliDestinationImage;
channelSwap.SetDestinationImage(fliDestinationImage);

// 서로 값을 교환할 Channel
EChannelSelection eChannelSelectionFrom = EChannelSelection_Channel_0;
EChannelSelection eChannelSelectionTo = EChannelSelection_Channel_0;

// 서로 값을 교환할 Channel 선택
channelSwap.SetSwapChannelFrom(eChannelSelectionFrom);
channelSwap.SetSwapChannelTo(eChannelSelectionTo);

// 알고리즘 실행
channelSwap.Execute();
// 객체 생성
CChannelSwap channelSwap = new CChannelSwap();

// 입력 이미지 설정
CFLImage fliSourceImage = new CFLImage();
channelSwap.SetSourceImage(ref fliSourceImage);

// 결과 이미지 설정
CFLImage fliDestinationImage = new CFLImage();
channelSwap.SetDestinationImage(ref fliDestinationImage);

// 서로 값을 교환할 Channel
EChannelSelection eChannelSelectionFrom = EChannelSelection.Channel_0;
EChannelSelection eChannelSelectionTo = EChannelSelection.Channel_0;

// 서로 값을 교환할 Channel 선택
channelSwap.SetSwapChannelFrom(eChannelSelectionFrom);
channelSwap.SetSwapChannelTo(eChannelSelectionTo);

// 알고리즘 실행
channelSwap.Execute();
# 객체 생성
channelSwap = CChannelSwap()

# 입력 이미지 설정
fliSourceImage = CFLImage()
channelSwap.SetSourceImage(fliSourceImage)

# 결과 이미지 설정
fliDestinationImage = CFLImage()
channelSwap.SetDestinationImage(fliDestinationImage)

# 서로 값을 교환할 Channel
eChannelSelectionFrom = EChannelSelection.Channel_0
eChannelSelectionTo = EChannelSelection.Channel_0

# 서로 값을 교환할 Channel 선택
channelSwap.SetSwapChannelFrom(eChannelSelectionFrom)
channelSwap.SetSwapChannelTo(eChannelSelectionTo)

# 알고리즘 실행
channelSwap.Execute()

4 추가 함수 설명

멤버함수 파라미터 설 명
SetSwapChannelFrom EChannelSelection IN 교환할 채널
CResult OUT 실행 결과

교환할 Channel 중 하나를 설정합니다.

멤버함수 파라미터 설 명
SetSwapChannelTo EChannelSelection IN 교환할 채널
CResult OUT 실행 결과

교환할 Channel 중 하나를 설정합니다.

멤버함수 파라미터 설 명
GetSwapChannelFrom EChannelSelection OUT 교환할 채널

교환할 Channel 중 하나를 가져옵니다.

멤버함수 파라미터 설 명
GetSwapChannelTo EChannelSelection OUT 교환할 채널

교환할 Channel 중 하나를 가져옵니다.