#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2021/4/13 10:54
# @Author  : @linlianqin
# @Site    :
# @File    : 数据增强(distorted).py
# @Software: PyCharm
# @description:一些基于TensorFlow的数据处理方法import tensorflow as tf
import cv2
import matplotlib.pyplot as pltpath = r'E:\gitHubProjects\tensorflow_learning\CNN卷积神经网络-cifar数据集分类\tensorflow_image_processing\1.png'def tf_imgae_processing():# 读取图像文件image_raw = tf.gfile.GFile(path,'rb').read() # 以二进制的形式读取with tf.Session() as sess:## 对图像进行解码得到图像的三维矩阵数据image_data = tf.image.decode_image(image_raw)h,w,c = image_data.eval().shapeprint("image_data.shape:",(h,w,c))# 显示图像plt.imshow(image_data.eval())plt.show()# 裁剪图像crop_img = tf.random_crop(image_data,[300,300,c])plt.imshow(crop_img.eval())plt.show()## 保存图像crop_encode_img = tf.image.encode_png(crop_img)with tf.gfile.GFile(r'E:\gitHubProjects\tensorflow_learning\CNN卷积神经网络-cifar数据集分类\tensorflow_image_proces'r'sing'+'\crop_img.png','wb') as f:f.write(crop_encode_img.eval())# 随机左右翻转图像(也可以随机上下翻转)flip_img = tf.image.random_flip_left_right(crop_img)plt.imshow(flip_img.eval())plt.show()## 保存图像flip_encode_img = tf.image.encode_png(flip_img)with tf.gfile.GFile(r'E:\gitHubProjects\tensorflow_learning\CNN卷积神经网络-cifar数据集分类\tensorflow_image_proces'r'sing' + '\\flip_img.png', 'wb') as f:f.write(flip_encode_img.eval())# 调整亮度brightness_img = tf.image.random_brightness(flip_img,max_delta=0.8)plt.imshow(brightness_img.eval())plt.show()## 保存图像brightness_encode_img = tf.image.encode_png(brightness_img)with tf.gfile.GFile(r'E:\gitHubProjects\tensorflow_learning\CNN卷积神经网络-cifar数据集分类\tensorflow_image_proces'r'sing' + '\\brightness_img.png', 'wb') as f:f.write(brightness_encode_img.eval())# 对比度contrast_img = tf.image.random_brightness(brightness_img, max_delta=0.8)plt.imshow(contrast_img.eval())plt.show()## 保存图像contrast_encode_img = tf.image.encode_png(contrast_img)with tf.gfile.GFile(r'E:\gitHubProjects\tensorflow_learning\CNN卷积神经网络-cifar数据集分类\tensorflow_image_proces'r'sing' + '\\contrast_img.png', 'wb') as f:f.write(contrast_encode_img.eval())# 标准化# tf.image.per_image_standardization(image_data)# 打乱数据集# tf.train.shuffle_batch(image,label)tf_imgae_processing()

原图像

裁剪图像

翻转图像

亮度图像

对比图像

【tensorFlow】——图像数据增强、读取图像、保存图像相关推荐

  1. Python:图像数据增强和保存

    Python:图像数据增强和保存 code 参考博客链接:https://blog.csdn.net/qq_36756866/article/details/108255715 在进行模型分析处理的时 ...

  2. 【Tool】Augmentor和imgaug——python图像数据增强库

    Augmentor和imgaug--python图像数据增强库 Tags: ComputerVision Python 介绍两个图像增强库:Augmentor和imgaug,Augmentor使用比较 ...

  3. python图像增强_【Tool】Augmentor和imgaug——python图像数据增强库

    Augmentor和imgaug--python图像数据增强库 Tags: ComputerVision Python 介绍两个图像增强库:Augmentor和imgaug,Augmentor使用比较 ...

  4. YOLO自带的图像数据增强方法

    yolo数据增强code: V3: https://github.com/ultralytics/yolov3/blob/master/utils/datasets.py V4: https://gi ...

  5. 目标检测:python实现多种图像数据增强的方法(光照,对比度,遮挡,模糊)

    图像数据增强的内容(可根据需要自定义选择): 1.直方图均衡化 2.clahe自适应对比度直方图均衡化 3.白平衡 4.亮度增强 5.亮度,饱和度,对比度增强 6.去除图像上的高光部分 7.自适应亮度 ...

  6. OpenCv图像处理之图像视频摄像头读取和保存

    OpenCv图像处理之图像视频摄像头读取与保存 使用cv::imread()读取图片 使用cv::imwrite()存储图片 使用cv::VideoCapture::open()读取视频 使用cv:: ...

  7. 深度学习之实现图像数据增强

    深度学习之实现图像数据增强 前言 数据增强的意思就是让数据量增多.对于深度学习来说,大的数据量可以训练出更好的深度学习模型. 在图像增强方面,我们常用的手段如下: 旋转 翻转 缩放 平移 尺度变换 对 ...

  8. python批量实现图像数据增强(扩增)

    什么是数据扩增? 数据扩增是对数据进行扩充的方法的总称.数据扩增可以增加训练集的样本,可以有效缓解模型过拟合的情况,也可以给模型带来的更强的泛化能力. 通常在进行数据扩增操作的时候应该保持图像原本的标 ...

  9. 图像数据增强方法一览(附python代码)

    在图像分类任务中,图像数据增强一般是大多数人会采用的方法之一,这是由于深度学习对数据集的大小有一定的要求,若原始的数据集比较小,无法很好地满足网络模型的训练,从而影响模型的性能,而图像增强是对原始图像 ...

  10. 干货 | 图像数据增强实战

    我目前正在做图像数据增强的深度和有效性的研究.这项研究的目的是学习怎样增加只有有限或少量数据的数据集大小,增强训练的卷积网络模型的鲁棒性. 需要列出所有可以想到的图像增强的方法,并将这些方法进行组合, ...

最新文章

  1. 商业大佬提醒:如果不采取措施,美国在人工智能领域将落后于中国
  2. 中国医疗AI第一股首位投资人:AI不再高深,正在回归商业本质
  3. 从虚拟化到云原生——容器技术的发展史
  4. amp 显示成转义字符 in html,如何在HTML标签中转换转义字符?(How to convert escape characters in HTML tags?)...
  5. 攻破Win7~Win10 PatchGuard(KPP DSE)【支持Win10 TH1/TH2/RS1/RS2】【WIN64内核越狱】
  6. 11个技巧让你编写出更好的Python代码,值得收藏!!
  7. 信息学奥赛C++语言: 输出最大值
  8. python 爬取教务处通知
  9. 拉氏变换法求解线性常微分方程(系统的零状态响应)
  10. GitHub Pages自定义域名如何支持https
  11. Git -- 分支管理简介
  12. 查看安卓app包名的5种方法
  13. Android版数据结构与算法(十二):经典排序算法再回顾
  14. java bitset clean方法_BitSet实现原理及源码解析
  15. mysql 1449 问题
  16. 用AW国际版激活国行moto二代
  17. LQ0142 技能升级【二分】
  18. ECharts图表制作商品销售视图
  19. iPhone4s 9.2.1安装cydia(越狱)
  20. sql 拆分字符串, 表值函数f_split的使用

热门文章

  1. 用js做分页,点击下一页时,直接跳到了最后一页——Number()的妙用
  2. 20121108团队博客(苏若)
  3. linux chrome 安装过程记录
  4. iOS sha1加密算法
  5. 每隔10秒钟打印一个“Helloworld”
  6. sql server数据库实现保留指定位数小数的函数
  7. centos6虚拟机复制后修改网卡
  8. 第5章--高级数据管理
  9. SeekBar和RatingBar
  10. 关于ubuntu无法启动nginx的问题