Skip to content

Instantly share code, notes, and snippets.

@mick001
Created August 13, 2018 14:58
Show Gist options
  • Save mick001/415f54adc4593eeb031f1e268f992bf0 to your computer and use it in GitHub Desktop.
Save mick001/415f54adc4593eeb031f1e268f992bf0 to your computer and use it in GitHub Desktop.
Project the average face onto the eigenspace in R.
#-------------------------------------------------------------------------------
# Projection of the average face onto the eigenvenctor space
# From a feature vector to a feature vector in the reduced feature space
proj_face_0 <- as.matrix(AverageFace[1, 2:4097]) %*% eigenvectors # for label 0
proj_face_1 <- as.matrix(AverageFace[2, 2:4097]) %*% eigenvectors # for label 1
proj_face_2 <- as.matrix(AverageFace[3, 2:4097]) %*% eigenvectors # for label 2
# Every face has different projection on eigenvector space.
# We can use these new fewer values for a classification task.
barplot(proj_face_0[2:20], main = "Projection of average face 0 on eigenvector space", col="cyan")
barplot(proj_face_1[2:20], main = "Projection of average face 1 on eigenvector space", col="red")
barplot(proj_face_2[2:20], main = "Projection of average face 2 on eigenvector space", col="blue")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment