Question

I'm trying to implement the original and circular Local Binary Pattern (LBP) with uniform pattern mapping for face recognition application.

I've done with LBP descriptors extraction and spatial histogram construction steps so far. Now I have to work on the face classification and recognition phases. As the original paper in the subject suggest, the simplest classifier uses Chi-square statistic as a dissimilarity measure between 2 histograms of 2 face images. The formula seems straightforward, but I don't know how I can classify 2 histograms are representations of the same face or of different faces based on the resulting value of Chi-square dissimilarity measure. So my question is: What is the optimal threshold value which I can use as the border line between the same faces and different faces? How can I determine that value?

I've come across some source code on the internet and they set LBP threshold to 180.0. I have no idea where this value came from.

I would gratefully appreciate your helps. Thanks for your reading.

Was it helpful?

Solution

In the same/not-same setting, you learn the optimal threshold from the training set. Given, say 1000 same and 1000 not same pairs for training, run a for loop on the threshold. For each threshold value, calculate the precision as 0.5 * (percent of same pairs with distance < current threshold) + 0.5 * (percent of not same pairs with distance >= currentThreshold). Then, keep track of the optimal threshold.

By the way, for same/not-same setting, I would recommend considering using one-shot-similarity

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top