python翻转和旋转图片


网上经常能看到各种图片的翻转效果,今天我们用 python 来实现对一张图片进行各种角度的翻转。


还是用到了 python 中那个强大的图片处理库 pillow ,实现过程很简单,这里就不再过多说明了,直接看代码吧,代码中有注释。



# -*- coding: utf-8 -*- from PIL import Image import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties   #引入本地字体文件,用于下面title的打印,不然中文会有乱码     font_set = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=12) #打开图片(这里替换成你自己电脑本地的图片) img = Image.open('tim2.jpg') #subplot是指将多张图片在同一张画布上显示,前两个参数分别是多少行多少列,第三个参数是指第几张图片 #如 subplot(3,3,2) 表示 3*3 共排9张图片,当前是第二张图片 #title 是指图片的标题 #逆时针旋转90 dst1 = img.transpose(Image.ROTATE_90)  
plt.subplot(3,3,1)
plt.title('逆时针旋转90',fontproperties=font_set)
plt.imshow(dst1)
plt.axis('off')

 #逆时针旋转180 dst2 = img.transpose(Image.ROTATE_180)
plt.subplot(3,3,2)
plt.title('逆时针旋转180',fontproperties=font_set)
plt.imshow(dst2)
plt.axis('off') #逆时针旋转270 dst3 = img.transpose(Image.ROTATE_270) 
plt.subplot(3,3,3)
plt.title('逆时针旋转270',fontproperties=font_set)
plt.imshow(dst3)
plt.axis('off') #图片大小重置 dst4 = img.resize((6060))
plt.subplot(3,3,4)
plt.title('重置图片大小',fontproperties=font_set)
plt.imshow(dst4)
plt.axis('off') #逆时针旋转45 dst5 = img.rotate(45)                   
plt.subplot(3,3,5)
plt.title('逆时针旋转45',fontproperties=font_set)
plt.imshow(dst5)
plt.axis('off') #逆时针旋转60 dst6 = img.rotate(60)                   
plt.subplot(3,3,6)
plt.title('逆时针旋转45',fontproperties=font_set)
plt.imshow(dst6)
plt.axis('off') #水平翻转 dst7 = img.transpose(Image.FLIP_LEFT_RIGHT)     
plt.subplot(3,3,7)
plt.title('水平翻转',fontproperties=font_set)
plt.imshow(dst7)
plt.axis('off') #垂直翻转 dst8 = img.transpose(Image.FLIP_TOP_BOTTOM)     
plt.subplot(3,3,8)
plt.title('垂直翻转',fontproperties=font_set)
plt.imshow(dst8)
plt.axis('off') #最后输出原图 plt.subplot(3,3,9)
plt.title('原图长这样',fontproperties=font_set)
plt.imshow(img)
plt.axis('off')

plt.show() 








关键词: 图片旋转

网友留言(0条)

发表评论