计算机视觉技术实战 课件全套 谢志强 项目1--9 卷积入门:手动搭建入门级卷积神经网络 ---综合应用:火情识别算法研发及部署.pptx
项目1卷积入门:手动搭建入门级卷积神经网络
能力目标
(1)掌握图片数据集的加载和预处理。
(2)理解深度神经网络的基本结构和工作原理。
(3)掌握神经网络的搭建和训练过程。
(4)学会选择适当的超参数。
(5)能够使用训练好的神经网络进行图像分类。
知识目标
(1)逐步掌握深度神经网络的基本原理和实际操作技能。
(2)为进一步深入学习和应用计算机视觉技术打下坚实的基础。
教学目标
2
+--Project1_SimpleCNN/
|+--dataset/
||+--Handwritten_Chinese_Numbers_DataSet/II|+--LowResolutionDataset/
II|+--RawDataset/
I||+--TrainableDataset/
II|--README.txt
|+--model/
II--model_val90.67.pth
II--model_val95.78.pth
I--data_load_and_show.ipynb
I--SimpleCNN.ipynb
|--SimpleCNN.py
图1-1是项目的主要文件和目录
结构。其中dataset为存放数据集的
自录,model为存放模型文件的目
录,data_load_and_show.ipynb
为用于样本数据加载和查看的
jupyter文件。SimpleCNN.ipynb
和SimpleCNN.py为本项目的主要
代码文件,两者内容一致,前者用
于jupyter交互执行,更加直观;后
者用于脚本执行,更加高效。
图1-1项目的主要文件和目录结构
工程目录
3
目录
4
目录
5
任务目标
(1)了解手写中文数字数据集的来源、收集方式和组成结构。
(2)掌握如何加载和展示数据集中的样本图片。
(3)认识项目的主要文件和目录结构,包括存放数据集、模型文件和代码文件的目录结构。
(4)学习两种主要代码文件(JupyterNotebook和Python脚本)。
1.认识数据集
6
手写中文数字数据集(HandwrittenChineseNumbers)是一个用于手写汉字数字识别的数据集,类似于传统的英文MNIST数据集,每个样本是一个数字的汉字字符。手写中文数字数据集来源于纽卡斯尔大学(NewcastleUniversity)在一个研究项目中收集的数据。项目中有一百名中国公民参与了数据收集。每个参与者用标准黑色墨水笔,在一张白色A4纸上画出的15个指定区域的表格中,写下所有15个中文数字,并重复这个过程10次。然后,每张纸均以300x300像素的分辨率进行扫描,经过处理最终生成了包含15000张图像的数据集,每个图像代表一组15个字符中的一个字符,像素大小是64×64。
每个样本数据文件的命名规则为:
Locate{personnel_id,sample_id,code}.jpg,以Locate{1,3,4}.jpg为例,代表人员编号为1、采样编号为3、中文数字编码为4的样本。
中文数字编码
中文数字字符
1零
2
一
3二
4
三
5四
6
五
7六
8
七
9八
10
九
11十
12
百
13千
14
万
15亿
1.1数据集来源
7
importos
importmatplotlib.pyplotasplt
#数据集存放目录
dataset_path=r.\dataset\Handwritten_Chinese_Numbers_DataSet
raw_dataset_path=os.path.join(dataset_path,RawDataset)
forcurDir,dirs,filesinos.walk(raw_dataset_path):#遍历目录下的所有文件和子目录
fig,axs=plt.subplots(3,5,figsize=(12,8))#定义3x5子图网格
num=0
forfile_nameinfiles:
ifnum=15:#只显示前15张图片
break
i,j=num//5,num%5
num+=1
#读取图片
file_path=os.path.join(curDir,file_name)
img=plt.