【基本图像操作】PIL

PIL简介

PIL全称 ( Python Imaging Library)Python图像处理类库,提供图像颜色转换,旋转,裁剪,缩放等操作。

操作

下面一个小程序保存基本操作,具体参数看代码注释
包括下列操作

  • 打开图片,显示图片
  • 转换为灰度图像
  • 复制和粘贴图像区域
  • 旋转
  • 调整尺寸和创建缩略图
#-*- coding:utf-8 -*-
"""
  @author: xunalove
  @date  : 2017/9/5
  python : 2.7
  OS:  ubuntu 16.04

常用图像操作
"""
import os
from PIL import Image

def get_imlist(path):
    """返回目录中所有jpg图像的文件名列表"""
    return [os.path.join(path,f) for f in os.listdir(path) if f.endswith(".jpg")]

if __name__ == "__main__":

    path = "/home/xuna/桌面/image"
    listdir = get_imlist(path)

    for dir in listdir:

        #打开原图
        pil_im = Image.open(dir)

        #获取图片的长和高,返回一个元组(长,高)
        print pil_im.size
        #转换为灰度图像
        pil_im = pil_im.convert("L")


        #复制图像区域
        box = (100,100,400,400)
        region = pil_im.crop(box)

        #粘贴图像区域
        region = region.transpose(Image.ROTATE_180)
        pil_im.paste(region,box)

        #旋转
        out = pil_im.rotate(45)

        #创建缩略图 参数为元组
        pil_im.thumbnail((128,128))
        #pil_im.show()

        #调整尺寸 参数为元组
        out = pil_im.resize((128,128))
        #out.show()

效果

从左向右从上向下依次为:原图,灰度图,粘贴复制图,旋转45度图,缩小图
这里写图片描述

练习一

将如下图片按照白色边缘切割成3*3块或者4*4块。
要求:

  • 从一个文件夹读取图片,操作后的图片放在另一个文件夹。
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值