原
基于TensorFlow批量的随机处理图片,实现图像增强
2018年06月18日 13:26:54
youngkun_wtu
阅读数:378
<span class="tags-box artic-tag-box">
<span class="label">标签:</span>
<a data-track-click="{"mod":"popu_626","con":"TensorFlow"}" class="tag-link" href="http://so.csdn.net/so/search/s.do?q=TensorFlow&t=blog" target="_blank">TensorFlow </a><a data-track-click="{"mod":"popu_626","con":"图像增强"}" class="tag-link" href="http://so.csdn.net/so/search/s.do?q=图像增强&t=blog" target="_blank">图像增强 </a><a data-track-click="{"mod":"popu_626","con":"批处理"}" class="tag-link" href="http://so.csdn.net/so/search/s.do?q=批处理&t=blog" target="_blank">批处理 </a>
<span class="article_info_click">更多</span></span>
<div class="tags-box space">
<span class="label">个人分类:</span>
<a class="tag-link" href="https://blog.csdn.net/qq_38269799/article/category/7742030" target="_blank">机器学习 </a>
</div>
</div>
<div class="operating">
</div>
</div>
</div>
</div>
<article>
<div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307" data-dsm="post" style="height: 958.8px; overflow: hidden;">
<link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-e2445db1a8.css">
<div class="htmledit_views">
<p style="width:639px;"></p><p></p><p>最近在做机器学习相关的项目。由于数据量不够,需要进行数据增强。TensorFlow它当中自带图像处理的接口。使我们能够很轻松的完成这些任务。你也可以在我的代码基础上。加上一些其他的图像处理的功能。比其他的图像处理的库要稍微简单一点。</p><p></p><pre><code class="language-python">"""author:youngkun data:20180618 function:image enhancement"""
import tensorflow as tf
import os
import random
source_file="./0/" #原始文件地址
target_file="./test2/" #修改后的文件地址
num=50 #产生图片次数
if not os.path.exists(target_file): #如果不存在target_file,则创造一个
os.makedirs(target_file)
file_list=os.listdir(source_file) #读取原始文件的路径
with tf.Session() as sess:
for i in range(num):
max_random=len(file_list)-1
a = random.randint(1, max_random) #随机数字区间
image_raw_data=tf.gfile.FastGFile(source_file+file_list[a],"rb").read()#读取图片
print("正在处理:",file_list[a])
image_data=tf.image.decode_jpeg(image_raw_data)
filpped_le_re=tf.image.random_flip_left_right(image_data) #随机左右翻转
filpped_up_down=tf.image.random_flip_up_down(image_data) #随机上下翻转
adjust=tf.image.random_brightness(filpped_up_down,0.4) #随机调整亮度
image_data=tf.image.convert_image_dtype(adjust,dtype=tf.uint8)
encode_data=tf.image.encode_jpeg(image_data)
with tf.gfile.GFile(target_file+str(i)+"_enhance"+".jpeg","wb") as f:
f.write(encode_data.eval())
print(“图像增强完毕”)