Least Common Multiple

1 개요

스칼라 또는 이미지와의 최소 공배수(Least Common Multiple, LCM) 연산을 수행하는 알고리즘입니다.

2 알고리즘 상세 설명

Source 와 Operand 간의 각 채널 별 LCM 값을 계산하여 출력합니다.

ydst,n=LCM(xsrc,n,xopr,n)\textbf{y}_{dst,n} = LCM(|x_{src,n}|, |x_{opr,n}|)

Source Image Operand Image Destination Image
Source Image Source Image Destination Image
Fig. Source, Operand and Destination images of LCM, (Clamping)

Source 와 Operand 중 하나 이상이 0 인 경우, 출력은 0 입니다. Scalar 값이 음수인 경우, 절댓값 처리하여 양수로 취급합니다. 정수 구간에서 동작하므로 Scalar 값으로 실수를 제공한 경우 내림 처리합니다. 부동 소숫점 타입으로 제공된 Scalar 값의 절댓값이 uint64_t 의 표현 범위를 벗어난 경우, 연산 시 사용하는 Scalar 값은 uint64_t 표현 범위의 최대치로 Clamping 됩니다.

3 파라미터 설정 및 사용 방법

Scalar 연산 모드 활성화 및 Scalar Value 설정

4 예제 코드

Scalar 연산

COperationLeastCommonMultiple lcm;

CFLImage fliSourceImage;
CFLImage fliDestinationImage;
CMultiVar<uint64_t> mvScalar;

lcm.SetSourceImage(fliSourceImage);
lcm.SetDestinationImage(fliDestinationImage);
lcm.SetOperationSource(EOperationSource_Scalar);
lcm.SetScalarValue(mvScalar);

lcm.Execute();
COperationLeastCommonMultiple lcm = new COperationLeastCommonMultiple();

CFLImage fliSourceImage = new CFLImage();
CFLImage fliDestinationImage = new CFLImage();
CMultiVar<UInt64> mvScalar = new CMultiVar<UInt64>();

lcm.SetSourceImage(ref fliSourceImage);
lcm.SetDestinationImage(ref fliDestinationImage);
lcm.SetOperationSource(EOperationSource.Scalar);
lcm.SetScalarValue(mvScalar);

lcm.Execute();

Image 연산

COperationLeastCommonMultiple lcm;

CFLImage fliSourceImage;
CFLImage fliOperandImage;
CFLImage fliDestinationImage;

lcm.SetSourceImage(fliSourceImage);
lcm.SetDestinationImage(fliDestinationImage);
lcm.SetOperationSource(EOperationSource_Image);
lcm.SetOperandImage(fliOperandImage);

lcm.Execute();
COperationLeastCommonMultiple lcm = new COperationLeastCommonMultiple();

CFLImage fliSourceImage = new CFLImage();
CFLImage fliOperandImage = new CFLImage();
CFLImage fliDestinationImage = new CFLImage();

lcm.SetSourceImage(ref fliSourceImage);
lcm.SetDestinationImage(ref fliDestinationImage);
lcm.SetOperationSource(EOperationSource.Image);
lcm.SetOperandImage(ref fliOperandImage);

lcm.Execute();

5 기타 사항

Supported Feature

Supported Format

Overflow Method

Destination 타입에 의해 출력 범위가 제한되는 경우, 설정된 overflow method 에 의해 처리됩니다. 기본 값은 Clamping 입니다.

6 관련 알고리즘

GCD(Greatest Common Divisor)