我正在调整一组图像并将调整大小的图像存储到新文件夹。我的示例代码是
import cv2
import PIL
import Image
import os
def resize_all(path1,path2):
resolution = (200,200)
scaler = Image.ANTIALIAS
if not os.path.exists(path2):
os.makedirs(path2)
listing=os.listdir(path1)
for file in listing:
img=Image.open(path1 + file)
res=img.resize(resolution , Image.ANTIALIAS)
cv2.imwrite(os.path.join(path2, res),'image')
def main():
resize_all('d:\\Emmanu\\project-data\\birds\\','d:\\Emmanu\\project-data\\new\\')
if __name__ == '__main__':main()
但是当我执行时,我会收到错误 完全追溯添加编辑
Traceback (most recent call last):
File "D:/Emmanu/ImageClassification/preprocessing.py", line 20, in <module>
if __name__ == '__main__':main()
File "D:/Emmanu/ImageClassification/preprocessing.py", line 18, in main
resize_all('d:\\Emmanu\\project-data\\birds\\','d:\\Emmanu\\project-data\\new\\')
File "D:/Emmanu/ImageClassification/preprocessing.py", line 15, in resize_all
cv2.imwrite(os.path.join(path2, res),'image')
File "C:\Python27\lib\ntpath.py", line 67, in join
p_drive, p_path = splitdrive(p)
File "C:\Python27\lib\ntpath.py", line 115, in splitdrive
if len(p) > 1:
File "C:\Python27\lib\site-packages\PIL\Image.py", line 512, in __getattr__
raise AttributeError(name)
AttributeError: __len__
答案 0 :(得分:0)
终于得到了答案,修改了for循环
for i,file in enumerate(listing):
img=Image.open(path1 + file)
res=img.resize(resolution , Image.ANTIALIAS)
res.save(path2+'h{}.jpg'.format(i))
现在我的所有图像都已调整大小并保存到新文件夹