zoukankan      html  css  js  c++  java
  • Python图片处理

    I、PIL库的使用:

    (1)PIL库可以完成图像归档和图像处理两方面功能需求:1.图像归档:对图像进行批处理、生成图像预览、图像格式转换等;2. 图像处理:图像基本处理、像素处理、颜色处理等。

    (2)用Image对象表示Image类的图像读取和创建方法。

     (3)Image类有4个处理图片的常用属性。

     (4)Image类的图像转换和保存方法。

     (5)Image缩放和旋转图像的方法。

     (6)对图像颜色的处理。

    II、实例:

    一、图片的简笔画处理和色彩处理:

    1 #图像的轮廓
    2 from PIL import Image
    3 from PIL import ImageFilter
    4 im = Image.open('001.jpg')#原图片的名称
    5 om = im.filter(ImageFilter.CONTOUR)
    6 om.save('006.jpg')#新图片的名称
    1 #图片色彩的处理
    2 from PIL import Image
    3 from PIL import ImageEnhance
    4 im = Image.open('001.jpg')
    5 om = ImageEnhance.Contrast(im)
    6 om.enhance(20).save('007.jpg')

    二、GIF图的拆解

     1 #拆解GIF图
     2 from PIL import Image
     3 im = Image.open('X.gif')      # 读入一个GIF文件
     4 try:
     5     im.save('picframe{:2d}.png'.format(im.tell()))
     6     while True:
     7         im.seek(im.tell()+1)
     8         im.save('picframe{:2d}.png'.format(im.tell()))
     9 except:
    10     print("处理结束")

    三、 GIF图的合成

    #合成GIF图
    import PIL.Image as Image
    def get_gif(pics_dir,n,t=0.1):
        imgs=[]
        for i in range(1,n):
            pic_name = '{}/{}.png'.format(pics_dir,i)
            temp = Image.open(pic_name)
            imgs.append(temp)
        save_name = '{}.gif'.format(pics_dir)
        imgs[0].save(save_name, save_all=True, append_images=imgs, duration=t)
        return save_name
    if __name__ == '__main__':
        pics_dir = '小猫'
        save_name = get_gif(pics_dir,10,0.2)
        print('制作完成。所属文件:{}'.format(save_name))

     合成的GIF图是可以动的,但上传之后出错,图不动了

    注:需要在程序所在的运行文件里建一个文件夹存放要合成GIF图的原图。

  • 相关阅读:
    迭代器,生成器的理解
    需求
    关于dom 0级 2级 3级事件的理解
    夯实前端基础
    前端面试题 收集
    前端易忘点,持续更新
    form target 文件上传
    ES6 symbol
    bzoj1260 [CQOI2007]涂色paint
    bzoj1083 [SCOI2005]繁忙的都市
  • 原文地址:https://www.cnblogs.com/LSH1628340121/p/12695739.html
Copyright © 2011-2022 走看看