【发布时间】:2015-03-13 07:33:14
【问题描述】:
我在一个文件夹中有大约 200-400 张图片要处理。我正在尝试使用 python 编写一种脚本来处理这些图像。图像输出正在改变,但有一些我知道但不知道修改的逻辑错误。这是我目前拥有的两个文件
test2 和 resize 是我创建的 2 个 .py 文件。 test2.py 将调用 resize.py 它将调整目录中的图像大小
test2.py
import glob
import cv2
from resize import process
for image_file in glob.iglob('/home/winowa/Desktop/Intern101/fisherFace/test/*.jpg'):
process(image_file)
resize.py
import cv2
def process(filename):
image = cv2.imread(filename)
print image.shape
r = 100.0 / image.shape[1]
dim = (100, int(image.shape[0] *r))
imageresized = cv2.resize(image,(300,300),dim,interpolation = cv2.INTER_AREA)
for i in range(19):
cv2.imwrite( 'imageresized_{}.jpg'.format(i) ,imageresized )
print 'imageresized_{}.jpg'.format(i)
我知道在进入 resize.py 之后,它会在进入第二轮 test2.py 之前循环 19 次。我正在尝试更正程序以转到下一张图像,并将图像名称输出为 imageresized1.jpg、imageresized2.jpg 等。现在图像是正确的名称,但图像是错误的。由于 for 循环,只处理了一张图像。 range(19) 是我文件夹中的 19 张图片
【问题讨论】:
-
问题到底是什么?
-
@Micka 我需要链接两个 python 脚本以对特定文件夹中的所有图像运行 300x300 的调整大小
标签: python python-2.7 opencv