eqiihuu / face_classifier

Face detection and facial expression classification based on openCV and Tensorflow

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Face Detection and Facial Expression Classification


Author


Introduction

  • This is a project for face detection and facial expression classification
  • We use Haar Cascade algorithm provided by openCV to detect faces in the video/image
  • We compare different model for facial expression classification: kNN, SVM and CNN.
  • A demo is provided, where you can run the detection and classification in real time, and the program will replace the face with a corresponding emoji sign.
  • For more details, please refer to the POSTER 'poster_facedetect.pdf'

Usage

  • Train (CNN model) : run script cnn.py/cnn_keras.py to train a CNN classification model (cnn.py is the tensorflow version, cnn_keras.py is the keras version)

  • Test (CNN model): the model will be ran on test set each epoch. to draw the curve of training and testing process, run eval.py

  • kNN, SVM : knn.py is for kNN testing, svm.py is for SVM training and testing;

  • Demo : run the script demo.py to start the demo. This demo will use a camera to obtain real time video, and automatically replace a detected face with corresponding emoji sign

  • (model parameters can be adjusted in scripts cnn.py/cnn_keras.py, knn.py and svm.py)

About

Face detection and facial expression classification based on openCV and Tensorflow


Languages

Language:Python 100.0%