Earlier this semester Colin found a paper (also in Box under Information/Papers) which presents techniques to normalize an image to have standard pose and illumination. In other words, if a face is turned to the side, or if the lighting is poor, these techniques can "rotate" the face so that it faces the camera, and increase the lighting. They also present a technique to measure the "quality" of the image and discard it if it's too distorted.
We should try to make a script that implements these techniques. We could plug it right in with the face cropping script, like this:
Anyone who wants to work on this script is welcome. We may need to discuss whether to implement in Python or C++/CUDA, etc.
Note that the authors of this paper used a different classifier than we do: from what I can tell, they used correlation whereas we use k-nearest neighbor with PCA/LDA/ICA. We're interested in the preprocessing technique, which is completely separate.
Earlier this semester Colin found a paper (also in Box under Information/Papers) which presents techniques to normalize an image to have standard pose and illumination. In other words, if a face is turned to the side, or if the lighting is poor, these techniques can "rotate" the face so that it faces the camera, and increase the lighting. They also present a technique to measure the "quality" of the image and discard it if it's too distorted.
We should try to make a script that implements these techniques. We could plug it right in with the face cropping script, like this:
[video frame] -> detect-faces.py -> [face images] -> normalize.py -> [normalized images, filtered by quality] -> face-rec
Anyone who wants to work on this script is welcome. We may need to discuss whether to implement in Python or C++/CUDA, etc.
Note that the authors of this paper used a different classifier than we do: from what I can tell, they used correlation whereas we use k-nearest neighbor with PCA/LDA/ICA. We're interested in the preprocessing technique, which is completely separate.