深度学习14 基于ImageDataGenerator的语义分割数据扩充
2023-09-14 09:15:04 时间
各种参数设置下的扩充效果可见:https://blog.csdn.net/a486259/article/details/120225202
扩充后的某些数据必然是不符合原先的语义标签的,扩充后应该人工对数据进行筛选
from PIL import Image
import numpy as np
from keras.preprocessing import image
import os
# 生成图片地址和对应标签
file_dir1 = r"语义分割\img"
save_path1="数据-kc\img"
file_dir2 = r"语义分割\label"
save_path2="数据-kc\label"
if not os.path.exists(save_path1):
os.makedirs(save_path1)
if not os.path.exists(save_path2):
os.makedirs(save_path2)
shape=(200,200)
seed = 1
# 设置生成器参数
datagen = image.ImageDataGenerator(
fill_mode='nearest', #操作导致图像缺失时填充方式。constant,nearest,eflect,wrap
rotation_range=90 , # 指定旋转角度范围
zca_whitening=True,#图像白噪音
brightness_range=[0.3,1.5],#添加随机光照
width_shift_range=0.2, # 水平位置平移
height_shift_range=0.2, # 上下位置平移
zoom_range=[0.9,1],
horizontal_flip=True, # 随机对图片执行水平翻转操作
vertical_flip=True, # 对图片执行上下翻转操作
shear_range=20,
rescale=1./255, # 缩放
data_format='channels_last')
gen1=datagen.flow_from_directory(file_dir1,
target_size=shape,
batch_size=15,
save_to_dir=save_path1,
save_prefix='xx',
seed=seed,
save_format='jpg')
gen2=datagen.flow_from_directory(file_dir2,
target_size=shape,
batch_size=15,
save_to_dir=save_path2,
save_prefix='xx',
seed=seed,
save_format='jpg')
import math
step=math.ceil(len(gen1.classes)/gen1.batch_size)
#把数据扩充50倍
for i in range(50*step):
gen1.next()
gen2.next()
相关文章
- 吴秋生开发的geemap开源软件包和Google Earth Engine学习资源(Awesome-GEE)已经被GEE官网收录
- 【学习笔记】Python爬虫
- 免杀项目学习-1
- Nature | 数据驱动的地球系统深度学习与过程理解
- Java中注解学习系列教程-6 excel导出优化plush版
- fscanf读取一行字符串-C++的学习之路---12
- [Nat. Biotechnol. | 论文简读] 利用大规模数据标注和深度学习对组织图像进行具有人类水平表现的全细胞分割
- 机器学习算法竞赛实战-数据探索
- (学习之路)Hive数据倾斜解决办法
- 数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第二章数据处理伦理
- 数据治理专业认证CDMP学习笔记(思维导图与知识点)- 第三章数据治理篇
- 2023版大数据学习路线图(适合自学)
- 【数据挖掘】分类任务简介 ( 分类概念 | 分类和预测 | 分类过程 | 训练集 | 测试集 | 数据预处理 | 有监督学习 )
- Spark学习笔记4:数据读取与保存详解大数据
- Hive学习之路 (九)Hive的内置函数详解大数据
- 图像识别中的深度学习详解大数据
- 数据快速学习:使用 PHP 读取 MySQL 数据(php读取mysql)
- 光速!搜索、学习和实践 Linux 命令!!
- 一份不可多得的数据科学与机器学习Python库
- 学习Linux的初学者必备: 用SCP安装文件(linuxscp安装)
- MySQL共享:分享你的数据学习(mysqlshare)
- MySQL视频教程:百度云上学习实践新技能(mysql视频教程百度云)
- Linux 内核视频教程:学习更多基础知识!(linux内核视频教程)
- JavaScript学习笔记(十三)Dom创建表格
- jQuery学习笔记之Ajax操作篇(一)-数据加载