Wednesday 19 December 2012

Pre-Christmas Update

Initial Feedback

From my first presentation to the department, I received some feedback on my specification. Key outcomes include:
  • Retaining focus on the key areas, so that I can complete these well rather than doing lots of areas not so well
  • Based on the above, it especially true with the 2 potential directions that this project could take. Therefore the intelligent resizing methods will only be looked at if there is a lack of challenge and depth   to the feature finding, and only then will I look at intelligent resizing
  • A metric for measuring and judging the quality of the results. This can be based on rules programmed into the solution as well as possibly using crowd sourcing techniques
  • Evaluation. Based on the metric, but how can I explain and show whether the system is selecting the best images.

OpenCV and Face Recognition Libraries

To aid the image processing side of the project, I have decided to work with the OpenCV library. OpenCV uses the BSD license and so it's OK to use. Previous use of OpenCV in C++ and C++ in general means it should be quite easy to pick up again and the fact that it works cross platform maximises the project's potential usage. I will primarily be working on Windows, but will be testing on Linux as well.

After a little research I have found 2 libraries for face recognition in OpenCV.

FaceRecogniser Class

This class is actually included with the latest version of OpenCV 2.4, so it will make it far easier to get started with recognising faces within images. The library comes with 3 algorithms depending on how you wish to recognise the faces:
  • Eigenfaces
  • Fisherfaces
  • Local binary patterns histograms.

More info:
FaceRecognizer Tutorial

FaceDetection

The FaceDetection library is older- it uses OpenCV 1 and warns that there may be compatibility issues with later versions. A link to a 'new' version of a similar library that works with OpenCV 2 is provided that uses the 'cascade' classifier.

More info:
FaceDetection Examples

Dissertation

By the end of January I plan to have made substantial progress on my dissertation. Since I will have completed all of my background reading of papers and articles on the area of image processing and computational photography, I will be able to write the technical background section. This will also reinforce my knowledge in the area and it may reveal some potential issues I may come across later in the implementation, and so it will leave me enough time to find a solution.
In having to explain the basis of the project in the written form, I will have a definite objective as well as making sure all viewpoints are covered.

In short:
  • Introduction
  • Supporting technologies
  • Contextual background- explanation and motivation for the underlying problem
  • Technical background- information on related work so that the reader can understand the aim.