http://blog.csdn.net/GarfieldEr007/article/details/50757075?locationNum=5&fps=1
按照帖子,修改好自己的路径,run,结果就出来了。
# -*- coding: utf-8 -*-
from PIL import Image
from pylab import *
# 添加中文字体支持
from matplotlib.font_manager import FontProperties
font = FontProperties(fname =r"c:\windows\fonts\SimSun.ttc" , size =14 )
figure()
# 显示原图
pil_im = Image.open('C:/PythonWorkSpace/pic/1.jpg' )
print (pil_im.mode, pil_im.size, pil_im.format)
subplot(231 )
title(u'原图' , fontproperties =font)
axis('off' )
imshow(pil_im)
# 显示灰度图
pil_im = Image.open('C:/PythonWorkSpace/pic/1.jpg' ).convert('L' )
gray()
subplot(232 )
title(u'灰度图' , fontproperties =font)
axis('off' )
imshow(pil_im)
#拷贝粘贴区域
pil_im = Image.open('C:/PythonWorkSpace/pic/1.jpg' )
box = (100 ,100 ,400 ,400 )
region = pil_im.crop(box)
region = region.transpose(Image.ROTATE_180)
pil_im.paste(region,box)
subplot(233 )
title(u'拷贝粘贴区域' , fontproperties =font)
axis('off' )
imshow(pil_im)
# 缩略图
pil_im = Image.open('C:/PythonWorkSpace/pic/1.jpg' )
size = 128 , 128
pil_im.thumbnail(size)
print (pil_im.size)
subplot(234 )
title(u'缩略图' , fontproperties =font)
axis('off' )
imshow(pil_im)
pil_im.save('C:/PythonWorkSpace/image/thumbnail.jpg' ) #保存缩略图
# 调整图像尺寸
pil_im = Image.open('C:/PythonWorkSpace/pic/1.jpg' )
pil_im = pil_im.resize(size)
print (pil_im.size)
subplot(235 )
title(u'调整尺寸后的图像' , fontproperties =font)
axis('off' )
imshow(pil_im)
# 旋转图像45°
pil_im = Image.open('C:/PythonWorkSpace/pic/1.jpg' )
pil_im = pil_im.rotate(45 )
subplot(236 )
title(u'旋转45°后的图像' , fontproperties =font)
axis('off' )
imshow(pil_im)
show()
其中,模块含义:
1/ im = Image.open('lena.ppm').convert('L')
图像的'L'模式就是表示这个图示一个8位的灰度图。
2/ subplot( 234 )
subplot是MATLAB中的函数。
使用方法:subplot(m,n,p)或者subplot(m n p)。
subplot是将多个图画到一个平面上的工具。其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果m=2就是表示2行图。p表示图所在的位置,p=1表示从左到右从上到下的第一个位置。
3/ transpose()矩阵转置操作
4/ Image.ROTATE_180 逆时针旋转180度