图像的亮度、对比度等属性对图像的影响非常大,这些因素都会影响最后的识别结构。当然,复杂的预处理过程可能会导致训练效率的下降(利用TensorFlow中多线程处理输入数据的解决方案)。

同一不同的原始数据格式-----TFRecord格式

TensorFlow图像处理函数:图像编码处理 img_data=tf.image.decode_jpeg(image_raw_data)    (RGB色彩模式的图像看做是一个三维矩阵,矩阵的每个数表示了图像上不同位置,不同颜色的亮度,然而图像在存储时并不是直接记录这些矩阵中的数字,而是记录压缩编码之后的结果,所以要将一张图像还原成一个三维矩阵,需要解码的过程)

图像大小调整resized=tf.image.resize_images(img_data,[300,300],method=0)(0:双线性插值法 1:最近邻居法 2:双三次插值法 3:面积插值法)(图像的大小时不固定的,但神经网络输入节点的个数是固定的,因此将图像的像素作为输入提供给神经网络之前,需要将图像的大小统一)

图像裁剪和填充:   tf.image.resize_image_with_crop_or_pad(img_data,1000,1000)

通过比例调整图像大小:tf.image.central_crop(img_data,05),  此外,TensorFlow提供tf.image.crop_to_bounding_box与tf.image.pad_to_bounding_box来裁剪或者填充特定区域的图像

图像翻转:图像上下翻转tf.image.flip_up_down(img_data) , 图像左右翻转tf.image.flip_left_down(img_data) 图像沿对角线翻转 tf.image.transpose_image(img_data)  (通过随机翻转训练图像的方式可以在零成本的情况下很大程度缓解训练出来的模型不能识别因物体角度,位置不同,而识别不出的问题)

tf.image.random_flip_up_down(img_data)  以一定概率上下翻转图像

图像色彩调整:(随机调整训练图像的亮度,对比度,饱和度和色相,从而使得训练得到的模型尽可能小地收到无关因素的影响)(tf.image.adjust_brightness(img_data,-0.5)

tf.image.random_brightness(image,max_delta  在[-max_delta,max_delta]范围随机调整图像的亮度

tf.image.random_contrast(image,lower,upper))

调整色相:tf.image.adjust_hue(img_data,0.1)

调整饱和度:tf.image.adjust_suturation(img_data,-5)

完成图像标准化:将图像上的亮度均值变为0,方差为1(tf.image.per_image_whitening(img_data)

添加标注框:

TensorFlow深度学习实战---图像数据处理的更多相关文章

  1. TensorFlow深度学习实战---图像识别与卷积神经网络

    全连接层网络结构:神经网络每两层之间的所有结点都是有边相连的. 卷积神经网络:1.输入层 2.卷积层:将神经网络中的每一个小块进行更加深入地分析从而得到抽象程度更高的特征. 3 池化层:可以认为将一张 ...

  2. TensorFlow深度学习实战---循环神经网络

    循环神经网络(recurrent neural network,RNN)-------------------------重要结构(长短时记忆网络( long short-term memory,LS ...

  3. TensorFlow深度学习实战---MNIST数字识别问题

    1.滑动平均模型: 用途:用于控制变量的更新幅度,使得模型在训练初期参数更新较快,在接近最优值处参数更新较慢,幅度较小 方式:主要通过不断更新衰减率来控制变量的更新幅度. 衰减率计算公式 : deca ...

  4. TensorFlow 2.0 深度学习实战 —— 浅谈卷积神经网络 CNN

    前言 上一章为大家介绍过深度学习的基础和多层感知机 MLP 的应用,本章开始将深入讲解卷积神经网络的实用场景.卷积神经网络 CNN(Convolutional Neural Networks,Conv ...

  5. tensorflow学习笔记——图像数据处理

    喜欢摄影的盆友都知道图像的亮度,对比度等属性对图像的影响是非常大的,相同物体在不同亮度,对比度下差别非常大.然而在很多图像识别问题中,这些因素都不应该影响最后的结果.所以本文将学习如何对图像数据进行预 ...

  6. TensorFlow深度学习基础与应用实战高清视频教程

    TensorFlow深度学习基础与应用实战高清视频教程,适合Python C++ C#视觉应用开发者,基于TensorFlow深度学习框架,讲解TensorFlow基础.图像分类.目标检测训练与测试以 ...

  7. 『深度应用』NLP机器翻译深度学习实战课程·壹(RNN base)

    深度学习用的有一年多了,最近开始NLP自然处理方面的研发.刚好趁着这个机会写一系列NLP机器翻译深度学习实战课程. 本系列课程将从原理讲解与数据处理深入到如何动手实践与应用部署,将包括以下内容:(更新 ...

  8. TensorFlow深度学习!构建神经网络预测股票价格!⛵

    作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 TensorFlow 实战系列:https://www.showmeai ...

  9. (转) TensorFlow深度学习,一篇文章就够了

    TensorFlow深度学习,一篇文章就够了 2016/09/22 · IT技术 · TensorFlow, 深度学习 分享到:6   原文出处: 我爱计算机 (@tobe迪豪 )    作者: 陈迪 ...

随机推荐

  1. 关于CUDA C 项目中“ error C2059: 语法错误:“<” ”问题的解决方法

    该问题的关键在于理解CUDA项目中C\C++文件需要由c++编译器进行编译,而CUDA C的源文件需要由CUDA的编译器nvcc.exe进行编译. 发生该语法错误的原因是cu文件被C++编译器所编译, ...

  2. redis安装及测试

    http://jingyan.baidu.com/article/9113f81b0333e12b3214c7a8.html 下载地址:http://git.oschina.net/bingoPure ...

  3. MAX7456和DP7456的对比

    DP7456 是一款集成了 EEPROM 的单通道.单色随屏显示发生器,集成了视频驱动器.同步分离器.视频分离开关以及 EEPROM,提高了系统的集成度,有效降低了系统成本. DP7456 采用符合  ...

  4. Unity3D-飞机拖尾效果

    1.插件准备 unity3d官网,Assert Store搜索Cartoon_airplane 插件 2.拖尾效果实现 飞机显示 拖尾组件设计 在airplane_02下 右键 Effects-Tra ...

  5. 链表推导式 【list comprehension】

    x for x in x 链表推导式 [list comprehension]链表推导式提供了一个创建链表的简单途径,无需使用 map(), filter() 以及 lambda.返回链表的定义通常要 ...

  6. python codecs模块 ---处理数据写入文件时会有编码不统一的问题

    我们用open方法打开文件有时候会有一些问题,因为open打开文件只能写入str类型,而不会管字符串是什么编码方式. 示例: >>> fr = open('test.txt','a' ...

  7. java基础——回文数判断

    /** * 题目描述: * 有这样一类数字,他们顺着看和倒着看是相同的数,例如:121,656,2332等,这样的数字就称为:回文数字.编写一个函数,判断某数字是否是回文数字. * 要求实现方法: * ...

  8. oracle 11GR2 单机打补丁PSU 11.2.0.4.180717

    上传补丁包,修改权限 su - oracle mdir /tmp/psu mv p6880880_112319_Linux-x86-64.zip /tmp/psu/mv databasepsu1807 ...

  9. Html5 Canvas 实现图片合成

    多个图片合成一张 <!doctype html> <html> <head> <meta charset="utf-8"> < ...

  10. Python中级 —— 03进程与线程

    多任务的实现有3种方式: 多进程模式: 多线程模式: 多进程+多线程模式. ** 进程: ** 不同任务,例如打开一个写字本,就是开启一个新进程. 多进程 Unix/Linux操作系统提供了一个for ...