zoukankan      html  css  js  c++  java
  • 一秒钟带你走进P图世界(python)PIL库的使用

    python-----PIL库的使用

    一、什么是PIL库

    1.PIL(Python Image Library)库是python语言的第三方库,具有强大的图像处理能力,不仅包含了丰富的像素、色彩操作功能,还可以用于图像的归档和批量处理能力。

    2.PIL库主要有2个方面的功能:

    (1) 图像归档:对图像进行批处理、生产图像预览、图像格式转换等。

    (2) 图像处理:图像基本处理、像素处理、颜色处理等。

    根据功能的不同,PIL库包括21个与图片相关的类,这些类可以被看作是子库或PIL库中的模块,例如:

    Image,ImageChops,Imagecolor,ImageCrackCode,ImageDraw等等

    二、PIL库的安装

    注意:PIL库的名字是pillow,下载时用的是pillow,而不是PIL

    在命令行中输入pip install pillow,就会自动下载

    命令行快捷键win键+R键

    按下确定键,就会出现命令行

     三、PIL库的Image类解析

    1.PIL库的引用(调用)

    >>>from PIL import Image

    2.Image类图像读取和创建方法

     

    3.Image类的常用属性

    4.Image类的序列图像操作方法

    5. Image类的图像旋转和缩放方法

    6.Image类的图像转换和保存方法

     

    from PIL import Image
    xiaogou=Image.open("C:\\Users\Administrator\Desktop\Python\\小狗.jpg")
    xiaogou.thumbnail((128,128))
    xiaogou.save("C:\\Users\Administrator\Desktop\Python\suoluetu","JPEG")
    xiaogou1=xiaogou.filter(ImageFilter.CONTOUR)
    

     7.Image类的图像像素和通道处理方法

     

     四、图像过滤(ImageFilter子库)

    1.调用ImageFilter类

    from PIL import ImageFilter

    2.ImageFilter类预定义图像过滤方法

     

    from PIL import Image
    from PIL import ImageFilter
    xiaogou=Image.open("C:\\Users\Administrator\Desktop\Python\小狗.jpg")
    xiaogou1=xiaogou.filter(ImageFilter.CONTOUR)
    xiaogou1.save('C:\\Users\Administrator\Desktop\Python\guolvtu.jpg')
    

     

     五、图像增强(ImageEnhance子库)

    1.调用ImageEnhance

    2.ImageEnhance类图像增强与滤镜方法

    from PIL import Image
    from PIL import ImageEnhance
    xg = Image.open("C:\\Users\Administrator\Desktop\Python\pp1.jpg")
    xg1 = ImageEnhance.Brightness(xg)     #选择亮度
    xg1.enhance(2).save("C:\\Users\Administrator\Desktop\Python\pp2.jpg") 
    

     

     六、制作动态图(GIF图)

     

    import imageio
    savename = "C:\\Users\Administrator\Desktop\Python\动态图.GIF"
    #准备制作的图像名称
    filenames = ["C:\\Users\Administrator\Desktop\Python\p1.jpg","C:\\Users\Administrator\Desktop\Python\p2.jpg","C:\\Users\Administrator\Desktop\Python\p3.jpg"]
    frames = []
    for name in filenames:
        frames.append(imageio.imread(name))
    imageio.mimsave(savename,frames,'GIF',duration=1)
    

    此处已完结,谢谢!

  • 相关阅读:
    博弈论专题(持续更新)
    数论专题(持续更新)
    树的遍历专题(持续更新)
    直线折线分割平面问题
    字典树模板 HDU1251
    差分数组——面对大数据的处理
    最短路——dijkstra算法
    并查集与最小生成树
    KMP的初步认识及题目分析
    Codeforces Round#636(Div.3) D题 差分数组
  • 原文地址:https://www.cnblogs.com/xiayiLL/p/10686979.html
Copyright © 2011-2022 走看看