【发布时间】:2017-11-16 04:09:28
【问题描述】:
它是导入多张图像并提取特征的程序。 问题是太慢了 我想是因为for循环太多了。
例如
for q in range(0, height-32 , 32):
for w in range(0 , width-32 ,32):
for j in range(0,64,8):
for n in range(0,64,8):
如何更改我的代码以加快速度?
import numpy as np
from scipy.fftpack import dct
from PIL import Image
import glob
import matplotlib.pyplot as plt
def image_open(path):
image_list = []
#for filename in glob.glob('path/*.jpg'):
for filename in glob.glob(path+'/*.jpg'):
im=Image.open(filename)
image_list.append(im)
return image_list
path = 'C:\\Users\\LG\\PycharmProjects\\photo'
images = image_open(path)
for i in range(0, len(images)):
box3 = (0,0,256,256)
a = images[i].crop(box3)
(y,cb,cr) = a.split()
width , height = y.size
y.show()
for q in range(0, height-32 , 32):
for w in range(0 , width-32 ,32):
for j in range(0,64,8):
for n in range(0,64,8):
print(w/32)
【问题讨论】:
-
你想对所有这些循环做什么?如果我们不知道您为什么要循环这么多次,那么我们就无法帮助您改进算法。
-
题名真是个大话题:-)
标签: python performance loops for-loop