1 from PIL import Image 2 import os 3 import cv2 4 import numpy as np 5 6 def rotation(root_path, img_name): 7 pilim = Image.open(os.path.join(root_path, img_name)) 8 im2 = pilim.convert('RGBA') 9 rot = im2.rotate(-18.0, expand=1) #旋转角度 10 fff = Image.new('RGBA', rot.size, (255,)*4) 11 # 使用alpha层的rot作为掩码创建一个复合图像 12 out = Image.composite(rot, fff, rot) 13 out.convert(pilim.mode) 14 return out 15 16 imageDir="C:/Users/16003/Desktop/data" 17 saveDir="C:/Users/16003/Desktop/data1" 18 i=0 19 for name in os.listdir(imageDir): 20 i=i+1 21 saveName="b"+str(i)+".png" 22 saveImage=rotation(imageDir,name) 23 saveImage.save(os.path.join(saveDir,saveName))
对于图像旋转之后,背景色会自动填充0,也就是黑色。
使用以上的方法,可以将背景色自动填充为255,简单实用。
当然其中内容比较重要的包括图像的旋转操作。