zoukankan      html  css  js  c++  java
  • 图像的手绘效果(Python)

    PIL库,Python Image Library

    PIL库是一个具有强大图像处理能力的第三方库

    在命令行下的安装方法:pip install pillow

    from PIL import Image

    image是PIL库中代表一个图像的类(对象)

    from PIL import Image
    
    import numpy as np
    
    im = np.array(Image.open("D:/web/testsite0/images/2.jpg"))
    
    print(im.shape,im.dtype)
    (300, 597) uint8

     

    from PIL import Image
    
    import numpy as np
    
    a = np.array(Image.open("D:/PYECourse/txshxg/fcity.jpg").convert('L'))
    
    b = 255 -a
    
    im = Image.fromarray(b.astype('uint8'))
    
    im.save("D:/PYECourse/txshxg/fcity3.jpg")
    
    from PIL import Image
    
    import numpy as np
    
    a = np.array(Image.open("D:/PYECourse/txshxg/fcity.jpg").convert('L'))
    
    c = (100/255)*a + 150
    
    im = Image.fromarray(c.astype('uint8'))
    
    im.save("D:/PYECourse/txshxg/fcity4.jpg")

    # -*- coding: utf-8 -*-
    """
    Spyder Editor
    
    This is a temporary script file.
    """
    from PIL import Image
    import numpy as np
    a = np.asarray(Image.open("D:/PYECourse/txshxg/beijing.jpg").convert('L')).astype('float')
    
    depth = 10.
    grad = np.gradient(a)
    grad_x,grad_y = grad
    grad_x = grad_x*depth/100.
    grad_y = grad_y*depth/100.
    A = np.sqrt(grad_x**2+grad_y**2+1.)
    uni_x = grad_x/A
    uni_y = grad_y/A
    uni_z = 1./A
    
    vec_el = np.pi/2.2
    vec_az = np.pi/4.
    dx = np.cos(vec_el)*np.cos(vec_az)
    dy = np.cos(vec_el)*np.sin(vec_az)
    dz = np.sin(vec_el)
    
    b = 255*(dx*uni_x+dy*uni_y+dz*uni_z)
    b = b.clip(0,255)
    
    im = Image.fromarray(b.astype('uint8'))
    im.save("D:/PYECourse/txshxg/beijingHD.jpg")
    
    
    
    
        

    原图:

  • 相关阅读:
    端口映射到公网工具
    C# app.config文件配置和修改
    C#基本知识点-Readonly和Const的区别
    C#知识点-StopWatch-计时
    python with open as f写中文乱码
    程序员不要去这样的公司
    关于老系统的重构和优化选择
    .Net Remoting 调用远程对象
    自定义的Config节点及使用
    前台线程和后台线程区别与使用技巧
  • 原文地址:https://www.cnblogs.com/kmxojer/p/11258230.html
Copyright © 2011-2022 走看看