写一个遍历文件夹内所有图像的函数,用tensorflow打开图像,crop成batch后在存到本地disk;
过程中随着打开图像的增加,代码的运行速度会越来越慢;
用内存管理工具看到物理内存会逐渐增加;
Debug了一下,应该是代码在decode图像之后并没有释放掉图像内存导致的;
在with外添加“tf.reset_default_graph()”即可解决;
实例代码如下(最后一行可以完成内存的释放,解决打开图像越多运行速度越慢的问题):
def get_imgpair(file_list): counter = 0 for files in file_list: img_raw_data = tf.gfile.FastGFile(files, 'rb').read() with tf.Session()