Face Recognizer
Hello,
I am new to Computer Vision, so please forgive me if the question is a non sense.
I would like to know if one can use the FaceRecognizer<> algorithm wrappers to discern between object 'flavours/classes' which are not faces ?
i.e: I detect a type of bottle (the detection is another topic, lets assume we can detect bottles) in an image. Now i want to train a LBPFaceRecognizer to predict if the detected bottle is a champaign one, or a coke one . Does it make sense to use a LBPFaceRecognizer and train it with champain and coke bottle in order to have a good prediction result?
Thank you
As long as you can adapt the size of the training images it should be perfectly possible!
Thanks Steven, in fact if you read the article on which is based the opencv implementation (ahonen & al) one may think that the face recognizer uses uniform patterns and some specific weight for each grids which are optimized for faces textures ... but then if one read http://bytefish.de/blog/local_binary_patterns/ then coder didnt mention those weights and explicitly says that he didnt use uniform patterns, so i got confused really.
LBP is a technique that works on every single object. I use it to train object models of fruit, cars, trees, ... It is just a technique that proved it succes in face recognition/detection, just like HAAR wavelets, eigenfaces, fisherfaces, ... but that doesn't mean other object classes cannot benefit from this technique.
the current opencv lbph does not exploit uniform patterns to reduce the histogram size. (but you can find a version here, that does)
though bottles don't have much 'shape' features, it might work well with lbph, given:
@berak thx for the software link, gonna look into that!
Thanks to both, berak you mentioned UniformPatterns, but what about weighted grid: does OpenCv inmplementation use weighted grid for the grid histograms?
the main point about the 'uniform' (less than 2 up/down transitions) features is, that there are only 58 possible solutions. so you have a simple precalculated lookup table, that assigns the uniforms to 0..58 and all others to bin 59.
then you only need to check a 59 bin histogram instead of a 256 bin one. speed, size, (accuracy even) improvement. it's some sort of compression/clustering.
tiresias, it's using a (8x8 by default) grid, and weighted (extended) neighbours, see here
Berak, i meant the grid weights (.i.e eyes grid are supposed to be more important than the other grids for face recognition) ...
then, no. it's not using a weighted grid. (but definitely worth trying, i'd say.)
again, go and break it. steal those ideas, that fit your scheme, improve, contribute..