I am not sure if it is the proper place for this question, but I think it fits the best here.
I would want to create an application for facial recognition that would utilize artificial neural network to learn faces from pictures to create a database of faces. I had a lick in both of the topics years ago but I forgot most of the stuff.
I bet there are people who are interested in this topic and could share information about good books or online places that could help me in my mission.
I would utilize Java to create the application, so any books related to the topic that cover code in Java are very welcome.
I've been dabbling in computer vision and machine learning experiments the last 2 years. Here's the learning route I took for face detection and recognition:
1. Andrew Ng's ML course on Coursera
Fantastic course and exercises!
I picked up basics of linear/logistic regression, ANNs, backpropagation, and PCA here. These are required topics for going further.
Environment is Octave, but that's a good thing because it let me concentrate on the concepts rather than software environment complexities.
2. Face detection and face recognition
- The book "Vision based user interface programming in Java" has chapters on face detection and recognition using javacv. It's mostly a cookbook,
not much theory.
Environment is java and javacv.
- The book "Mastering OpenCV with Practical Computer Vision Projects" has an entire chapter on face detection & recognition using OpenCV.
It's largely recipe style, but has a few theoretical explanations too.
However, the approach it uses is Haar cascades, PCA, Eigenfaces and Fisherfaces, not ANNs.
Still, the steps on preprocessing and preparation of images is most important here too just as in other ML applications ("cleaning up the data")
so I think it'll still be useful even if you don't use these ML algorithms.
Environment and sample code is C++, but the code is quite directly translatable to Java using JavaCV.
- Szeliski's "Computer Vision - Algorithms and Applications" has a couple of good chapters on ML techniques for face detection and recognition, but it's all theory and math, no recipes.
3. More advanced ML theory
- The free book "Introduction to Statistical Learning" has extremely good and approachable (ie, not too mathematical) information on
PCA, linear/logistic regression, boosting, adaboost,etc all of which are useful for CV and ANNs, but nothing on ANNs themselves.
Environment for sample code is R.