人工智能机器学习大作业
实验内容
1 理解人脸图像特征提取的各种方法(至少包括HoG、Dlib和卷积神经网络特征);2. 掌握笑脸数据集(genki4k)正负样本的划分、模型训练和测试的过程(至少包括SVM、CNN),输出模型训练精度和测试精度(F1-score和ROC);3. 完成一个摄像头采集自己人脸、并对表情(笑脸和非笑脸)的实时分类判读(输出分类文字)的程序;4. 将笑脸数据集换成口罩数据集,完成对口罩佩戴与否的模型训练,采取合适的特征提取方法,重新做上述2-3部。
2 完成实验报告和技术报告,技术报告写入博客,提交博客地址到学习通,Markdown和代码发邮件。实验报告按照最初的doc实验报告模版格式撰写(实验类型写“综合性、创新性”),也提交至邮箱。
笑脸数据集(genki4k)正负样本的划分、模型训练和测试的过程
训练数据集
import keras
keras.__version__
import os, shutil
# The path to the directory where the original
# dataset was uncompressed
riginal_dataset_dir = 'C:\\Users\\Desktop\\genki4k'
# The directory where we will
# store our smaller dataset
base_dir = 'C:\\Users\\Desktop\\genki4k\\smile_and_unsmile'
os.mkdir(base_dir)
# Directories for our training,
# validation and test splits
train_dir = os.path.join(base_dir, 'train')
os.mkdir(train_dir)
validation_dir = os.path.join(base_dir,
'validation')
os.mkdir(validation_dir)
test_dir = os.path.join(base_dir, 'test')
os.mkdir(test_dir)
# Directory with our training smile pictures
train_smile_dir = os.path.join(train_dir, 'smile')
os.mkdir(train_smile_dir)
# Directory with our training unsmile pictures
train_unsmile_dir = os.path.join(train_dir,
'unsmile')
os.mkdir(train_unsmile_dir)
#Directory with our validation smile pictures
validation_smile_dir = os.path.join(validation_dir,
'smile')
os.mkdir(validation_smile_dir)
# Directory with our validation unsmile pictures
validation_unsmile_dir =
os.path.join(validation_dir, 'unsmile')
os.mkdir(validation_unsmile_dir)
# Directory with our validation smile pictures
test_smile_dir = os.path.join(test_dir, 'smile')
os.mkdir(test_smile_dir)
# Dire