Reduce Dimension Var 2D to 1D
1 개요
원본 이미지 차원을 축소하는 알고리즘입니다. 축소된 차원의 분산을 결과로 출력합니다.
2 알고리즘 상세 설명
IDst(x,0)=y=0∑Height−1Height(ISrc(x,y))2−(y=0∑Height−1HeightISrc(x,y))2
IDst(0,y)=x=0∑Width−1Width(ISrc(x,y))2−(x=0∑Width−1WidthISrc(x,y))2
- IDst(x,y) : 결과 이미지의 (x,y)위치 픽셀값
- ISrc(x,y) : 원본 이미지의 (x,y)위치 픽셀값
이미지의 x 또는 y 차원을 분산을 기반으로 축소시킵니다.
Source Image |
Reduce X Dimension Destination Image |
Reduce Y Dimension Destination Image |
 |
 |
 |
Fig. Reduce Dimension Var 2D to 1D 동작 예시
3 파라미터 설정 및 사용 방법
멤버함수 |
파라미터 |
설 명 |
SetReductionDimension |
CReduceDimensionVar2Dto1D::EReductionDimension |
eReductionDimension |
IN |
축소 차원을 설정합니다. |
SetOverflowMethod |
EOverflowMethod |
eOverflowMethod |
IN |
오버플로우 처리 방식을 설정합니다. |
4 예제
CFLImage fliSourceImage;
CFLImage fliDestinationImage;
CReduceDimensionVar2Dto1D reduceDimensionVar2Dto1D;
reduceDimensionVar2Dto1D.SetSourceImage(fliSourceImage);
reduceDimensionVar2Dto1D.SetDestinationImage(fliDestinationImage);
reduceDimensionVar2Dto1D.SetOverflowMethod(EOverflowMethod_Clamping);
reduceDimensionVar2Dto1D.SetReduceDimension(CReduceDimensionVar2Dto1D::EReduceDimension_X);
reduceDimensionVar2Dto1D.Execute();
reduceDimensionVar2Dto1D.SetReduceDimension(CReduceDimensionVar2Dto1D::EReduceDimension_Y);
reduceDimensionVar2Dto1D.Execute();
CReduceDimensionVar2Dto1D reduceDimensionVar2Dto1D = new CReduceDimensionVar2Dto1D();
CFLImage fliSourceImage = new CFLImage();
reduceDimensionVar2Dto1D.SetSourceImage(ref fliSourceImage);
CFLImage fliDestinationImage = new CFLImage();
reduceDimensionVar2Dto1D.SetDestinationImage(ref fliDestinationImage);
reduceDimensionVar2Dto1D.SetOverflowMethod(EOverflowMethod.Clamping);
reduceDimensionVar2Dto1D.SetReduceDimension(CReduceDimensionVar2Dto1D.EReduceDimension.X);
reduceDimensionVar2Dto1D.Execute();
reduceDimensionVar2Dto1D.SetReduceDimension(CReduceDimensionVar2Dto1D.EReduceDimension.Y);
reduceDimensionVar2Dto1D.Execute();