Face recognition using PCA and KNN

Face recognition using PCA and KNN
1.2K Downloads
Updated 4 Jan 2019

View License

The files here are:
(1) load_data: load the data from face_images.mat and nonface_images.mat
face_images.mat file should contain:
- train_imgs: NxMxL tensor that contains N test face images. Each image is MxL pixels (grayscale).
- train_ids: Nx1 vector that contains the id of each image in test_imgs
- test_imgs: KxMxL tensor that contains N test face images. Each image is MxL pixels (grayscale).
- test_ids: Kx1 vector that contains the id of each image in test_imgs
nonface_images.mat file should contain:
- nonface_imgs: SxMxL tensor that contains S non-face images. Each image is MxL pixels (grayscale)
(2) getAvgFace: calculate the average of the training face images and display it.
(3) PCA_: calculate the principle components (PCs), the latent low-dimensional data, and the eigenvalues
(4) KNN_: classifying using k-nearest neighbors algorithm. The nearest neighbors search method is euclidean distance.
(5) Demo: is a demo!
Note: you have to prepare your data as described in (1)

To get the results:
1- Download the datasets and locate them in the same directory of the source code.

2- Run Demo.m

Cite As

Mahmoud Afifi (2024). Face recognition using PCA and KNN (https://www.mathworks.com/matlabcentral/fileexchange/64568-face-recognition-using-pca-and-knn), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2015a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

FaceRec_using_PCA_and_KNN

Version Published Release Notes
1.1.0.1

.

1.1.0.0

a bug in KNN (for K>1) is fixed

1.0.0.0