import PIL (图像处理库)使用方法

PIL:Python Imaging Library,已经是Python平台事实上的图像处理标准库了。
from PIL import Image, ImageDraw

Image 对于图像的各种操作
ImageDraw 模块提供了图像对象的简单2D绘制。用户可以使用这个模块创建新的图像,注释或润饰已存在图像,为web应用实时产生各种图形。

读入图像数据

Image.read(path) 读入图片

图片信息

方法功能
Image.format图像文件格式(后缀)
im.size(width,height)
Image.mode像素格式 RGB…

图片处理

方法功能
Image.thumbnail((w//2, h//2))缩放
out = im.resize((128, 128))重定义大小
out = im.rotate(45)旋转
im.filter(ImageFilter.BLUR)模糊
Image.show()显示图像(标准实现不是很有效率)不过测试可用
regionregion.transpose(Image.ROTATE_180)旋转
box = (100, 100, 400, 400) region = im.crop(box)获取子区域
Image.paste(region, box)处理完子区域粘贴回去
r, g, b = im.split()分离图像通道
im = Image.merge(“RGB”, (b, g, r));合并图像通道
Image.mode(‘/Users/michael/thumbnail.jpg’, ‘jpeg’)保存
//读取图片并显示
from PIL import Image, ImageDraw
#指定路径
sample_image_path = os.path.join(RAW_DATA_DIR, 'normal_1/images/img_0.png')
#读入图片
sample_image = Image.open(sample_image_path)
print  sample_image.format, "%dx%d" % sample_image.size, sample_image.mode
#输出
plt.title('Sample Image')
plt.imshow(sample_image)
plt.show()
#图片格式转换
import os, sys
import Image

for infile in sys.argv[1:]:
    f, e = os.path.splitext(infile)
    outfile = f + ".jpg"
    if infile != outfile:
        try:
            Image.open(infile).save(outfile)
        except IOError:
            print "cannot convert", infile

ImageDraw

#给图像绘制一个矩形框
sample_image_roi = sample_image.copy()
fillcolor=(255,0,0)
draw = ImageDraw.Draw(sample_image_roi)
points = [(1,76), (1,135), (255,135), (255,76)]
for i in range(0, len(points), 1):
    draw.line([points[i], points[(i+1)%len(points)]], fill=fillcolor, width=3)
del draw  #删除变量

plt.title('Image with sample ROI')
plt.imshow(sample_image_roi)
plt.show()

参考文档

The Python Imaging Library Handbook

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一銤阳光

希望分享的内容对你有帮助

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值