Как вычислить локальные бинарные шаблоны гистограмм с помощью OpenCV?

Я уже видел, что OpenCV предоставляет классификатор на основе LBP histograms:

Но я хочу получить доступ к самой гистограмме LBP. Например:

histogram = calculate_LBP_Histogram( image )

Есть ли какая-либо функция, которая выполняет это в OpenCV?

Ответ 1

Вы можете получить код С++ для вычисления LBP с использованием структуры данных OpenCV Mat здесь:

http://www.bytefish.de/blog/local_binary_patterns

Вы также сможете найти версию Python на том же сайте.

Код написан Филиппом Вагнером, который, по моему мнению, внес код распознавания лиц, который вы упомянули в OpenCV, поэтому он должен быть одним и тем же.

Код LBP находится в файле: OpenCV-2.4.2/modules/contrib/src/facerec.cpp как статическая функция. К сожалению, он не отображается для публичного использования (по крайней мере, для OpenCV 2.4.2).