Complex Multiply
1 개요
이미지 혹은 Scalar 값을 사용하여 복소수의 곱을 구하는 알고리즘입니다.
2 알고리즘 상세 설명
복소수의 곱은 다음 식을 활용합니다.
이미지의 첫 Channel은 실수(, ) 다음 Channel은 허수(, )로 생각하여 연산을 진행합니다.
Source Value | Operand Value | Destination Value |
---|---|---|
![]() |
![]() |
![]() |
Fig. Source, Operand and Destination values of Complex Multiply, (Clamping)
입력 이미지의 Channel이 1인 경우 해당 값을 실수로, 허수를 0으로 연산을 진행합니다. 입력된 Scalar의 차원이 1인 경우 입력 값을 실수로, 허수를 0으로 연산을 진행합니다.
Source Value | Operand Value | Destination Value |
---|---|---|
![]() |
![]() |
![]() |
Fig. Source, Single Channel Operand and Destination values of Complex Multiply, (Clamping)
이미지 연산에서 입력된 이미지의 Channel 수가 3 이상이거나 Scalar 연산에서 Scalar의 크기가 3 이상인 경우 연산을 진행하지 않으며 오류를 반환합니다.
3 예제 코드
Scalar 연산
COperationComplexMultiply operationComplexMultiply;
CFLImage fliSourceImage;
CFLImage fliDestinationImage;
CMultiVar<double> mulVarScalar;
operationComplexMultiply.SetSourceImage(fliSourceImage);
operationComplexMultiply.SetDestinationImage(fliDestinationImage);
operationComplexMultiply.SetOperationSource(EOperationSource_Scalar);
operationComplexMultiply.SetScalarValue(mulVarScalar);
operationComplexMultiply.Execute();
Image 연산
COperationComplexMultiply operationComplexMultiply;
CFLImage fliSourceImage;
CFLImage fliOperandImage;
CFLImage fliDestinationImage;
operationComplexMultiply.SetSourceImage(fliSourceImage);
operationComplexMultiply.SetOperandImage(fliOperandImage);
operationComplexMultiply.SetDestinationImage(fliDestinationImage);
operationComplexMultiply.SetOperationSource(EOperationSource_Image);
operationComplexMultiply.Execute();