I came across this post – Lemurs don’t all look the same and facial recognition technology can prove it – on my Facebook one day. It talks about scientists using an open source face recognition package called OpenBR to identify lemurs in wildlife.
So I thought maybe I can use this package for my task. However, it turned out that getting it installed on my Mac was a lot harder than what their installation documentation suggested. OpenBR is built on top of three packages: Qt (looks like it is a UI framework that promises write once and deploy on multiple platforms (Windows, Mac, Linux, and embedded devices)), OpenCV and CMake (a multi-platform C++ environment). I was able to install these three components on my Mac. But at the end I failed to compile OpenBR as some of the library file locations have moved with the newer XCode and it seems like it is detecting the wrong MacOS version. I spent a few hours looking at the makefiles but at the end I gave up. I am not too familiar with Cmake and C++ anyway. I should not spend too much time on it.
Then I got access to a Debian machine. But then the installation page only talks about Ubuntu. After a few more days, I got access to a Ubuntu server. Finally I was able to install OpenBR properly!
Then came the next problem. The first example in the OpenBR page required a webcam. The Ubuntu server was not next to me so there was no way I could connect a webcam to that server to try out stuff.
Of course there were other examples that did not require webcam. There was a section on face recognition as well which used their command line API. The first simple example was about comparing two faces and it looked fine to me. But the examples after this one were more complicated and I don’t really know what to put in the arguments (there are some .csv files, .gal files – I purely didn’t have any idea what I should put inside those files – and I couldn’t find the usage of those files).
I tried to find more documentation on the web, but there wasn’t really any good information. So maybe I should learn OpenCV as well as OpenBR is a layer above OpenCV? And lastly, the framework uses C++. So I should brush up my C++ skills as well? Frankly I haven’t written anything meaningful in C++ in my life before. The hurdle is quite high for me to master OpenBR (and OpenCV). I began to look for other options. I should not be constrained by the programming language used; besides the more popular languages used in the machine learning community are Python and Matlab-like languages like R, Octave and Matlab.
To the admins of OpenBR, it would be great if you could provide more examples and more detailed documentation online. As a beginner, I definitely find it hard to understand how to use OpenBR properly by just reading the tutorial section.