Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #sudo apt install libimage-exiftool-perl
- from __future__ import print_function
- from PIL import Image
- import sys
- import os
- if __name__ == "__main__":
- if len(sys.argv) < 4:
- print ("Usage: {} src_folder dst_folder target_size".format(sys.argv[0]))
- exit(0)
- targetMaxDim = int(sys.argv[3])
- for fina in os.listdir(sys.argv[1]):
- srcImgFina = os.path.join(sys.argv[1], fina)
- img = Image.open(srcImgFina)
- print (fina, img.size)
- finaSplit = os.path.splitext(fina)
- targetSize = img.size
- if targetSize[0] > targetMaxDim:
- ratio = targetMaxDim / targetSize[0]
- targetSize = [int(round(dim * ratio)) for dim in targetSize]
- if targetSize[1] > targetMaxDim:
- ratio = targetMaxDim / targetSize[1]
- targetSize = [int(round(dim * ratio)) for dim in targetSize]
- img = img.resize(targetSize)
- if not os.path.exists(sys.argv[2]):
- os.makedirs(sys.argv[2])
- dstImgFina = os.path.join(sys.argv[2], fina)
- img.save(dstImgFina)
- if finaSplit[1].lower() in [".jpg", ".jpeg"]:
- os.system('exiftool -overwrite_original -TagsFromFile {} "-all:all>all:all" {}'.format(srcImgFina, dstImgFina))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement