Statistics
1 개요
이미지에 대한 통계치를 구하는 알고리즘 입니다.
2 알고리즘 상세 설명
Statistics 알고리즘은 이미지 픽셀 값을 데이터로 하는 통계값을 계산하며 최솟값, 최댓값, 합, 제곱합, 평균, 분산, 표준편차, 변동계수, 공분산, 상관계수, 사분위값을 지원합니다.
입력 이미지 |
결과 |
 |
 |
Fig. Statistics 동작 예시
위의 예시는 3채널 RGB 이미지를 사용하여 Default 설정으로 실행한 예시입니다.
3 예제 코드
CImageStatistics imageStatistics;
CFLImage fliSourceImage;
imageStatistics.SetSourceImage(fliSourceImage);
imageStatistics.SetTrimming(0.1, CImageStatistics.:ETrimmingLocation_Lower);
imageStatistics.SetTrimming(0.1, CImageStatistics.:ETrimmingLocation_Upper);
CMultiVar<double> mvMin;
imageStatistics.GetMin(mvMin);
CMultiVar<double> mvMax;
imageStatistics.GetMax(mvMax);
CMultiVar<double> mvSum;
imageStatistics.GetSum(mvSum);
CMultiVar<double> mvSumOfSquares;
imageStatistics.GetSumOfSquares(mvSumOfSquares);
CMultiVar<double> mvMean;
imageStatistics.GetMean(mvMean);
CMultiVar<double> mvMedian;
imageStatistics.GetMedian(mvMedian);
CMultiVar<double> mvVar;
imageStatistics.GetVariance(mvVar);
CMultiVar<double> mvStandardDeviation;
imageStatistics.GetStandardDeviation(mvStandardDeviation);
CMultiVar<double> mvCoeff;
imageStatistics.GetCoefficientOfVariance(mvCoeff);
CMultiVar<double> mvLower;
CMultiVar<double> mvUpper;
imageStatistics.GetLowerQuartile(mvLower);
imageStatistics.GetUpperQuartile(mvUpper);
double Covariance;
imageStatistics.SetCorrelatedChannel(0, 1);
imageStatistics.GetCovariance(Covariance);
imageStatistics.SetCorrelatedChannel(0, 2);
imageStatistics.GetCovariance(Covariance);
imageStatistics.SetCorrelatedChannel(1, 2);
imageStatistics.GetCovariance(Covariance);
double CorrelationCoefficient;
imageStatistics.SetCorrelatedChannel(0, 1);
imageStatistics.GetCorrelationCoefficient(CorrelationCoefficient);
imageStatistics.SetCorrelatedChannel(0, 2);
imageStatistics.GetCorrelationCoefficient(CorrelationCoefficient);
imageStatistics.SetCorrelatedChannel(1, 2);
imageStatistics.GetCorrelationCoefficient(CorrelationCoefficient);
CImageStatistics imageStatistics = new CImageStatistics();
CFLImage fliSourceImage = new CFLImage();
imageStatistics.SetSourceImage(ref fliSourceImage);
imageStatistics.SetTrimming(0.1, CImageStatistics.ETrimmingLocation.Lower);
imageStatistics.SetTrimming(0.1, CImageStatistics.ETrimmingLocation.Upper);
CMultiVar<double> mvMin = new CMultiVar<double>();
imageStatistics.GetMin(ref mvMin);
CMultiVar<double> mvMax = new CMultiVar<double>();
imageStatistics.GetMax(ref mvMax);
CMultiVar<double> mvSum = new CMultiVar<double>();
imageStatistics.GetSum(ref mvSum);
CMultiVar<double> mvSumOfSquares = new CMultiVar<double>();
imageStatistics.GetSumOfSquares(ref mvSumOfSquares);
CMultiVar<double> mvMean = new CMultiVar<double>();
imageStatistics.GetMean(ref mvMean);
CMultiVar<double> mvMedian = new CMultiVar<double>();
imageStatistics.GetMedian(ref mvMedian);
CMultiVar<double> mvVar = new CMultiVar<double>();
imageStatistics.GetVariance(ref mvVar);
CMultiVar<double> mvStandardDeviation = new CMultiVar<double>();
imageStatistics.GetStandardDeviation(ref mvStandardDeviation);
CMultiVar<double> mvCoeff = new CMultiVar<double>();
imageStatistics.GetCoefficientOfVariance(ref mvCoeff);
CMultiVar<double> mvLower = new CMultiVar<double>();
CMultiVar<double> mvUpper = new CMultiVar<double>();
imageStatistics.GetLowerQuartile(ref mvLower);
imageStatistics.GetUpperQuartile(ref mvUpper);
double Covariance;
imageStatistics.SetCorrelatedChannel(0, 1);
imageStatistics.GetCovariance(ref Covariance);
imageStatistics.SetCorrelatedChannel(0, 2);
imageStatistics.GetCovariance(ref Covariance);
imageStatistics.SetCorrelatedChannel(1, 2);
imageStatistics.GetCovariance(ref Covariance);
double CorrelationCoefficient;
imageStatistics.SetCorrelatedChannel(0, 1);
imageStatistics.GetCorrelationCoefficient(ref CorrelationCoefficient);
imageStatistics.SetCorrelatedChannel(0, 2);
imageStatistics.GetCorrelationCoefficient(ref CorrelationCoefficient);
imageStatistics.SetCorrelatedChannel(1, 2);
imageStatistics.GetCorrelationCoefficient(ref CorrelationCoefficient);
imageStatistics = CImageStatistics()
fliSourceImage = CFLImage()
imageStatistics.SetSourceImage(fliSourceImage)
imageStatistics.SetTrimming(0.1, CImageStatistics.ETrimmingLocation.Lower)
imageStatistics.SetTrimming(0.1, CImageStatistics.ETrimmingLocation.Upper)
mvMin = CMultiVar[Double]()
imageStatistics.GetMin(mvMin)
mvMax = CMultiVar[Double]()
imageStatistics.GetMax(mvMax)
mvSum = CMultiVar[Double]()
imageStatistics.GetSum(mvSum)
mvSumOfSquares = CMultiVar[Double]()
imageStatistics.GetSumOfSquares(mvSumOfSquares)
mvMean = CMultiVar[Double]()
imageStatistics.GetMean(mvMean)
mvMedian = CMultiVar[Double]()
imageStatistics.GetMedian(mvMedian)
mvVar = CMultiVar[Double]()
imageStatistics.GetVariance(mvVar)
mvStandardDeviation = CMultiVar[Double]()
imageStatistics.GetStandardDeviation(mvStandardDeviation)
mvCoeff = CMultiVar[Double]()
imageStatistics.GetCoefficientOfVariance(mvCoeff)
mvLower = CMultiVar[Double]()
mvUpper = CMultiVar[Double]()
imageStatistics.GetLowerQuartile(mvLower)
imageStatistics.GetUpperQuartile(mvUpper)
Covariance = 0
imageStatistics.SetCorrelatedChannel(0, 1)
_, Covariance = imageStatistics.GetCovariance(Covariance)
imageStatistics.SetCorrelatedChannel(0, 2)
_, Covariance = imageStatistics.GetCovariance(Covariance)
imageStatistics.SetCorrelatedChannel(1, 2)
_, Covariance = imageStatistics.GetCovariance(Covariance)
CorrelationCoefficient = 0
imageStatistics.SetCorrelatedChannel(0, 1)
_, CorrelationCoefficient = imageStatistics.GetCorrelationCoefficient(CorrelationCoefficient)
imageStatistics.SetCorrelatedChannel(0, 2)
_, CorrelationCoefficient = imageStatistics.GetCorrelationCoefficient(CorrelationCoefficient)
imageStatistics.SetCorrelatedChannel(1, 2)
_, CorrelationCoefficient = imageStatistics.GetCorrelationCoefficient(CorrelationCoefficient)