本專案旨在利用ResNet50為架構,訓練出一個能夠於課堂中即時偵測學生狀態之系統
請先至train_model
資料夾中下載requirement.txt
中所列的相依套件:
cd train_model
pip install -r requirement.txt
安裝完套件後,可進入train.ipynb
中進行模型訓練
本專案訓練參數如下:
input_size = (224,224)
batch_size = 64
class_mode = 'categorical'
train_data_size = 0.8
base_model = ResNet50
epochs = 50
train accucary | valid accucary | test accucary |
---|---|---|
1. 000 | 1.000 | 0.9333 |
train loss | valid loss | test loss |
---|---|---|
0.0186 | 0.0919 | 0.1995 |
precision | recall | f1-score | |
---|---|---|---|
confuse | 1.00 | 1.00 | 1.00 |
happy | 0.83 | 1.00 | 0.91 |
normal | 1.00 | 0.91 | 0.95 |
sleepy | 0.90 | 0.90 | 0.90 |
進入flask_web
中,並於終端執行:
python render.py
即可開啟網頁,其網頁分成學生端和教師端,學生端在登入後能夠開啟鏡頭偵測,而教師端則可觀看目前登入學生人數與學生目前狀態。