- 🍨 本文为🔗365天深度学习训练营 内部限免文章(版权归 K同学啊 所有)
- 🍦 参考文章地址: 🔗第三周:天气识别 | 365天深度学习训练营
- 🍖 作者:K同学啊 | 接辅导、程序定制
文章目录
我的环境:
- 语言环境:Python3.6.8
- 编译器:jupyter notebook
- 深度学习环境:TensorFlow2.1
一、前期工作
1. 设置 GPU
import tensorflow as tf
gpus = tf.config.list_physical_devices("GPU")
if gpus:
gpu0 = gpus[0] #如果有多个GPU,仅使用第0个GPU
tf.config.experimental.set_memory_growth(gpu0, True) #设置GPU显存用量按需使用
tf.config.set_visible_devices([gpu0],"GPU")
2. 导入数据
import os,PIL,pathlib
import matplotlib.pyplot as plt
import numpy as np
from tensorflow import keras
from tensorflow.keras import layers,models
data_dir = "D:/jupyter notebook/DL-100-days/datasets/weather_photos/" # 图片存放目录
data_dir = pathlib.Path(data_dir) # 构造 pathlib 模块下的 Path 对象
3. 查看数据
数据集一共分为cloudy、rain、shine、sunrise四类,分别存放于weather_photos文件夹中以各自名字命名的子文件夹中
image_count = len(list(data_dir.glob('*/*.jpg'))) # # 使用 Path 对象的 glob() 方法获取 weather_photos 目录下的四个文件夹所有图片
print("图片总数为:",image_count)
输出
图片总数为: 1125
4. 可视化图片
# 返回图片路径
roses = list(data_dir.glob('sunrise/*.jpg')) # 使用 Path 对象的 glob() 方法获取 weather_photos/sunrise 目录下的所有图片对象
PIL.Image.open(str(roses[0])) # 读取第一张图片
二、数据预处理
1. 加载数据
使用image_dataset_from_dire