Shize Sheng, Yuanhong Zhou, Chunzhen Hu, Jiasheng Cao, Xingyu Hu
.
├── CNN # CNN related files.
│ ├── cnn_train.ipynb # Notebook for preprocessing, training, and evaluating the CNN model.
│ └── model
│ └── trained_cnn_model.h5
│
├── Random Forests # Random Forest related files.
│ ├── model
│ │ └── trained_cnn_model.h5
│ └── rf_train.ipynb
│
├── Naive_Bayes # Naive Bayes related files.
│ └── naive_bayes_train.ipynb
│
├── README.md
├── requirements.txt # List of python packages required for the project.
├── docs # GitHub Pages.
└── setData # Dataset directory.
├── original_data_set
│ ├── test # Testing set
│ │ ├── angry
│ │ ├── disgust
│ │ ├── fear
│ │ ├── happy
│ │ ├── neutral
│ │ ├── sad
│ │ └── surprise
│ └── train # Training set
│ ├── angry
│ ├── disgust
│ ├── fear
│ ├── happy
│ ├── neutral
│ ├── sad
│ └── surprise
└── processed_data_set # Processed dataset, simplified into numpy arrays for direct use in models.
├── test
│ └── data.npy
└── train # Processed training data in a numpy array.
└── data.npy
/CNN/: Contains files related to Convolutional Neural Networks model trainingcnn_train.ipynb: Jupyter notebook for the CNN that performs data preprocessing, visualization, CNN training, model evaulationmodel/trained_cnn_model.h5: A saved model file that contains the weights and architecture of the trained convolutional neural network, no retraining needed for new datasets
/Random Forests/: Contains files related to Random Forest model training/Naive Bayes/: Contains files related to Naive Bayes model training/setData/: Contains datasets for the project. It includes:- Original dataset (
/setData/original_data_set/): Prepared for initial data analysis. It is organized intotestandtrainfolders, each containing subfolders for different emotions such asangry,disgust,fear,happy,neutral,sad, andsurprise./test/: Contains images for testing the model, divided into categories based on emotions/train/: Contains images for training the model, similarly divided into emotional categories.
- Preprocessed dataset (
/setData/processed_data_set/): Contains pre-processed data/test/: Contains adata.npyfile with preprocessed testing data./train/: Contains adata.npyfile with preprocessed training data.
- Original dataset (
/docs/: Used for GitHub Pages hosting; includes markdown, HTML, and other resources needed to build the project's webpage.
/requirements.txt: Specifies all Python dependencies required by the project, which can be installed via pip./.gitignore: Lists all files and directories that git should ignore, preventing them from being tracked or added to the repository./README.md: Provides an overview of the project, setup instructions, and essential information for users and contributors.
- Clone this project to your computer
git clone https://github.com/ericsheng495/facial-expression-recognition.git- Navigate to this project in your terminal
cd facial-expression-recognition- Pulling the latest update from main
git pull - Creating your branch
git checkout -b your-branch-name- Running the model
- See which files you have modified
git status- Add your files to "staging"
git add .- Commit with message
git commit -m "your commit message"- Push your branch to main (remote)
git push- Navigate to docs directory (this is where we keep github pages themes)
cd docs- Run Locally (on localhost:4000)
bundle exec jekyll serve - Git Branching
- Git Commit & Push
