python将处理好的图像保存到指定目录下的方法

yipeiwu_com6年前Python基础

原始图像绝对路径的图像名存储在一个txt文件中,下面的程序实现的功能是按照txt文件的顺序,依次将图片读取然后进行处理,最后将处理之后的图像保存在指定的路径下:

# Read in the image to be detected
# 原始图像均保存在binaries.txt文件中,将包含绝对目录的图像名提取出来并写到txt文件的程序见上一篇博客
f = open("/home/shenruixue/image_test/binaries.txt")
line = f.readline()

while line:
 count_times += 1
 line = line[:-1] # 除去末尾的换行符
 print line
 print '***********************************************************'
 image = caffe.io.load_image(line)
  

 # start time
 start = time.clock()

# 此处做一系列的处理
# 。。。。。。
# 。。。。。。
# 此处做一系列的处理

 # end time
 end = time.clock()
 sum_time += (end - start)

 # draw the image
 plt.imshow(image)

 
 print '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
# 指定处理之后的图像的保存目录
 pre_savename = '/home/shenruixue/image_test_result/'
 print (str(count_times))
# 将从txt中读取的一行字符串(包含绝对路径的图像名)进行处理,只留存最后的图像名的字符串部分,去掉绝对路径部分的字符串
# 并将自己指定的目录与原始的图像名这两个字符串连接起来,然后进行保存
 savename = os.path.join(pre_savename, line[28:]) 
 print 'line is '
 print line
 print 'savename is '
 print savename
 savefig(savename)
 #io.imsave(savename, image)
# 继续读取下一行的图像名称
 line = f.readline() 
 print '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'


 plt.pause(1)
 plt.close() 

print('Running time: %s s' %sum_time)
print('Deal with images: %s 张' %count_times)
print('mean time: %s s' %(sum_time / count_times))

以上这篇python将处理好的图像保存到指定目录下的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python创建关联数组(字典)的方法

本文实例讲述了python创建关联数组(字典)的方法。分享给大家供大家参考。具体分析如下: 关联数组在python中叫字典,非常有用,下面是定义字典的两种方法 # Dictionar...

在Python中使用matplotlib模块绘制数据图的示例

在Python中使用matplotlib模块绘制数据图的示例

 matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序...

Python实现多线程的两种方式分析

本文实例讲述了Python实现多线程的两种方式。分享给大家供大家参考,具体如下: 目前python 提供了几种多线程实现方式 thread,threading,multithreadin...

使用python实现数组、链表、队列、栈的方法

使用python实现数组、链表、队列、栈的方法

引言 什么是数据结构? 数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。 简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中...

Python跨文件全局变量的实现方法示例

前言 在C语言中,由于变量一定是先声明,后使用,所以我们可以清楚的知道,现在使用的变量是全局还是局部,比如: int a = 5; void test(void) { a =...