如何用OpenCV计算局部二值模式直方图?

Eij*_*chi 12 opencv feature-extraction lbph-algorithm

我已经看到OpenCV提供了一个基于LBP 直方图的分类器:

但我希望能够访问LBP直方图本身.例如:

histogram = calculate_LBP_Histogram( image )
Run Code Online (Sandbox Code Playgroud)

是否有任何功能在OpenCV中执行此操作?

lig*_*ist 20

您可以在此处使用OpenCV的Mat数据结构获取用于计算LBP的C++代码:

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

您应该能够在同一站点上找到Python版本.

代码由Philipp Wagner编写,我认为他提供了你提到的OpenCV人脸识别代码,所以它应该是一样的.

LBP代码位于文件中:OpenCV-2.4.2/modules/contrib/src/facerec.cpp作为静态函数.不幸的是,它似乎没有暴露给公众使用(至少对于OpenCV 2.4.2).

  • 谢谢!我设法做到了,请参阅http://stackoverflow.com/questions/18426765/exposing-the-lbp-descriptors-from-opencv-in-python/18431418#18431418 (2认同)