联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Python编程Python编程

日期:2018-08-03 03:51


Project Tutorial - Week 4: Implement Face Recognition

This process of training a convolutional neural network to output face embeddings requires a lot

of data and computer power. Even with an expensive Nvidia Tesla video card, it takes about 24

hours of continuous training to get good accuracy. But once the network has been trained, it can

generate measurements for any face, even ones it has never seen before. Luckily, there are

pre-trained networks on the internet that we can directly use.

In week 4, we will try implementing the face recognition part of our system. The basic steps

include

1. Implement the face landmark estimation and pose alignment

2. Implement the neural network

3. Train classifier from the embedded network features/measurements

4. Test the classifier

1. Implement the face landmark estimation and pose alignment

There are many python libraries that can help implement face landmark estimation, such

as dlib.

Questions:

● Show the results of face landmark estimation

● Show the results of pose alignment

2. Implement the neural network

According to the papers you have read on neural networks, try to find a pre-trained

neural network to extract facial features of the face images in the bounding box. Deep learning

frameworks, such as pytorch, caffe or tensorflow, are needed to implement the neural networks.

Please install framework requested for the network you have chosen. Installing the framework

and setting up the environment may take a long time. So please start as soon as possible.

Again, Linux and Mac OS is recommended for this project. Installation on windows is much

more complicated.

A suggestion on the network is Openface, a pre-trained network for facial feature

extraction. (http://cmusatyalab.github.io/openface/). It is a face recognition network implemented

in python and pytorch.

For the installation of pytorch, there is a simple and clear command line installation

guides for different operating systems and python versions on the official website of pytorch

(https://pytorch.org/). Choose None for CUDA option. Note, if installing on windows, python 3 is

required.

For linux and anaconda, use command line:

conda install pytorch-cpu torchvision-cpu -c pytorch

For macOS and anaconda, use command line:

conda install pytorch torchvision -c pytorch

For windows, python 3.5/3.6 and anaconda, use command line:

conda install pytorch-cpu -c pytorch

pip3 install torchvision

Questions:

● What neural network did you use?

● Show a sample of the feature the network generates?

3. Train classifier from the embedded network features/measurements

● Randomly split the neural network features into 90 training and 10 testing.

● Train the classifier. Try multiple classifiers for each feature. (SVM, Naive Bayes,

KNN, Logistic Regressor, etc)

● Train the classifiers from the neural network features with and without the face

landmark estimation and pose alignment.

Questions:

● What kind of classifiers did you train? Try at least 3 different kinds of classifiers.

4. Test the classifiers

Questions:

● Compare the classifier testing and training accuracy with and without the pose

alignment.

● Compare the classifier testing and training accuracy among different classifiers.

● Plot the training and testing accuracy of different training/testing split ratio of one

of the classifiers. Comment on the results.


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp