01_拆分数据集.py
这个脚本用于将一个大的数据集拆分成训练集、验证集和测试集,并按类别组织存储。具体流程包括:
- 获取源目录下的所有类别(子目录)。
- 对每个类别,随机打乱其图片文件名列表。
- 划分训练集、验证集和测试集。
- 复制划分后的文件到相应的目录。
03_算法搭建.py
这个脚本搭建了一个卷积神经网络(CNN)模型,进行训练、验证和测试,并保存最佳和最终的模型。主要流程包括:
- 定义CNN模型结构。
- 编译模型,设置优化器、损失函数和评估指标。
- 使用ImageDataGenerator进行数据增强。
- 划分训练、验证和测试数据集。
- 定义ModelCheckpoint回调以保存在验证集上表现最佳的模型。
- 训练模型,并使用ModelCheckpoint回调保存最佳模型。
- 加载最佳模型进行评估。
- 绘制损失和准确性曲线。
- 保存最终模型。
04_预测.py
这个脚本是一个简单的图像分类器应用,用于加载训练好的CNN模型,刷新界面以显示随机选择的测试集图像,并对这些图像进行分类预测。主要功能包括:
- 使用Tkinter创建图像分类器应用界面。
- 加载已经训练好的CNN模型。
- 刷新界面,显示真实图像和伪造图像的随机选择,以及对它们的分类预测结果。
这三个脚本一起构建了一个完整的图像分类流程,从数据集拆分到模型训练和最终的预测应用。