# enum cv::HistCompMethods

## Overview

Histogram comparison methods Moreā¦

#include <imgproc.hpp>

enum HistCompMethods
{
HISTCMP_CORREL        = 0,
HISTCMP_CHISQR        = 1,
HISTCMP_INTERSECT     = 2,
HISTCMP_BHATTACHARYYA = 3,
HISTCMP_HELLINGER     = HISTCMP_BHATTACHARYYA,
HISTCMP_CHISQR_ALT    = 4,
HISTCMP_KL_DIV        = 5,
};


## Detailed Documentation

Histogram comparison methods

### Enum Values

HISTCMP_CORREL


Correlation

$d(H_1,H_2) = \frac{\sum_I (H_1(I) - \bar{H_1}) (H_2(I) - \bar{H_2})}{\sqrt{\sum_I(H_1(I) - \bar{H_1})^2 \sum_I(H_2(I) - \bar{H_2})^2}}$

where

$\bar{H_k} = \frac{1}{N} \sum _J H_k(J)$

and $$N$$ is a total number of histogram bins.

HISTCMP_CHISQR


Chi-Square

$d(H_1,H_2) = \sum _I \frac{\left(H_1(I)-H_2(I)\right)^2}{H_1(I)}$
HISTCMP_INTERSECT


Intersection

$d(H_1,H_2) = \sum _I \min (H_1(I), H_2(I))$
HISTCMP_BHATTACHARYYA


Bhattacharyya distance (In fact, OpenCV computes Hellinger distance, which is related to Bhattacharyya coefficient.)

$d(H_1,H_2) = \sqrt{1 - \frac{1}{\sqrt{\bar{H_1} \bar{H_2} N^2}} \sum_I \sqrt{H_1(I) \cdot H_2(I)}}$
HISTCMP_HELLINGER


Synonym for HISTCMP_BHATTACHARYYA.

HISTCMP_CHISQR_ALT


Alternative Chi-Square

$d(H_1,H_2) = 2 * \sum _I \frac{\left(H_1(I)-H_2(I)\right)^2}{H_1(I)+H_2(I)}$

This alternative formula is regularly used for texture comparison. See e.g. [67]

HISTCMP_KL_DIV


Kullback-Leibler divergence

$d(H_1,H_2) = \sum _I H_1(I) \log \left(\frac{H_1(I)}{H_2(I)}\right)$