Ask Your Question

Revision history [back]

Why is LBP generaly faster than HAAR?

I am digging into Haar like and LBP features. More precisely its implementation in OpenCV. Every article or forum entry I found states, that LBP is faster than Haar. My local tests also confirm this expectation. Yet I don´t understand why are LBP faster. As far as I know, OpenCV uses MB LBP features. I looked into some trained LBP cascade, and found out that leafe values as well as stage thresholds are floating point values, similiar to Haar cascade. Also, both features are very similiar, Haar sums up regions in rectangles together to get threshold values where MB LBP does 8 thresholding with neighbours. But both alghoritms use Integral image for quick summation. So by very naive approach, it seems to me that 8 comparisions are actually slower than few additions.

So, what is the expensive part of Haar feature evaluation vs MB LBP? I know I am wrong, based on practical testing, I just don´t know why.

Why is LBP generaly faster than HAAR?

I am digging into Haar like and LBP features. More precisely its implementation in OpenCV. Every article or forum entry I found states, that LBP is faster than Haar. My local tests also confirm this expectation. Yet I don´t understand why are LBP faster. As far as I know, OpenCV uses MB LBP features. I looked into some trained LBP cascade, and found out that leafe values as well as stage thresholds are floating point values, similiar to Haar cascade. Also, both features are very similiar, Haar sums up regions in rectangles together to get threshold values where MB LBP does 8 thresholding with neighbours. But both alghoritms use Integral image for quick summation. So by very naive approach, it seems to me that 8 comparisions are actually slower than few additions.

So, what is the expensive part of Haar feature evaluation vs MB LBP? I know I am wrong, based on practical testing, I just don´t know why.