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")
    
    
    
    
        

    原图:

  • 相关阅读:
    delphi利用qdac qworker计划任务
    delphi libssh2 无法立即完成一个非阻止性套接字操作
    线程池底层原理
    【spring源码分析】二、Spring扩展点的归总
    【spring源码分析】一、spring Refresh流程
    Spring中常用的类
    设计模式-proxy
    SpringAOP
    SpringIOC
    难受,nginx worker进程内存持续飘升!
  • 原文地址:https://www.cnblogs.com/kmxojer/p/11258230.html
Copyright © 2011-2022 走看看