compare method

  1. @override
double compare(
  1. Image src1,
  2. Image src2
)
override

Calculates histogram similarity using standard intersection

Implementation

@override
double compare(Image src1, Image src2) {
  // Delegates histogram initialization to parent
  super.compare(src1, src2);

  var sum = 0.0;

  var alphaBit = (ignoreAlpha) ? 0 : 1;

  sum += _diff(_histograms._first.redHist, _histograms._second.redHist) +
      _diff(_histograms._first.greenHist, _histograms._second.greenHist) +
      _diff(_histograms._first.blueHist, _histograms._second.blueHist) +
      (alphaBit * _diff(_histograms._first.alphaHist, _histograms._second.alphaHist));

  return 1 - (sum / (3 + alphaBit));
}