图像的手绘效果图

手绘效果的几个特征:
• 黑白灰色
• 边界线条较重
• 相同或相近色彩趋于白色
• 略有光源效果

视频讲解:点击此处

# 图像的手绘效果图
from PIL import Image
import numpy as np
a = np.asarray(Image.open("D:/唐樽/图片/aa.jpg").convert('L')).astype('float')# 灰度代表图像明暗变化,梯度表示灰度的变化率
# 调整梯度值 间接调整图像的明暗程度,立体效果通过虚拟深度值depth = 5 # 虚拟深度值 10 【0-100】范围最大100grad = np.gradient(a)  # 梯度值包含X,Y方向数据对
print("取图像灰度梯度值",grad)
grad_x,grad_y  = grad # 赋值给X,Y梯度值
print("\n横梯度值:",grad_x)# 根据灰度值深度变化 模拟人视觉远近
grad_x = grad_x*depth/100.  # 方向梯度值 * 深度值/100
grad_y = grad_y*depth/100.  # 公式是对深度值进行归一化赋值A = np.sqrt(grad_x**2 + grad_y**2  + 1.) # 构建x、y梯度三维归一化的单位坐标系
# A = 向量长度 sqrt(x**2 + y **2 +z**2)uni_x = grad_x/A    # uni_x 是单位法向量
uni_y = grad_y/A
uni_z = 1./Avec_el = np.pi/2.2   # 光源的俯视角度(Elevation),弧度值
vec_az = np.pi/4.    # 光源的方位角度(Azimuth),弧度值# np.cos(vec_el) 为单位光线在地平面上的投影长度
dx = np.cos(vec_el)*np.cos(vec_az) # dx dy dz 是光源对x\y\z方向的影响程度
dy = np.cos(vec_el)*np.sin(vec_az) # 光源对y 轴的影响
dz = np.sin(vec_el)                # 光源对z 轴的影响b = 255*(dx*uni_x + dy*uni_y + dz*uni_z) # 光源归一化
b = b.clip(0,255) # 为避免数据越界,将生成的灰度值裁剪至0‐255区间im = Image.fromarray(b.astype('uint8')) # 重构图像
im.save(r"C:\Users\锦樽\Desktop\jj5.jpg")

depth 越大 则笔色越深
depth = 0.5,5,10,20,50 的图以下顺序



python 用 PIL image 包,把图片变成手绘相关推荐

  1. Python实例14:将彩色图片变成手绘铅笔图片

    代码展示 from PIL import Image import numpy as npa = np.asarray(Image.open('fcity.jpg').convert('L')).as ...

  2. 新发的日常小实验——使用python的PIL库批量修改图片尺寸,确保宽和高是4的倍数(Unity、PIL、Pillow、压缩)

    文章目录 一.问题:图片导入Unity被调整成2的N次方 二.设置不转换成2的N次方 三.使用ETC压缩格式,图片宽高必须是4的倍数 四.使用python的PIL库批量修改图片尺寸,确保宽和高是4的倍 ...

  3. Ps教程:Photoshop快速把人物图片转为手绘漫画效果

    本篇转载于https://user.qzone.qq.com/907218922/blog/1556084094用于记录学习. Photoshop快速把人物图片转为手绘漫画效果 最终效果 1.打开我们 ...

  4. python pil_使用Python的PIL模块来进行图片对比

    在使用google或者baidu搜图的时候会发现有一个图片颜色选项,感觉非常有意思,有人可能会想这肯定是人为的去划分的,呵呵,有这种可能,但是估计人会累死, 开个玩笑,当然是通过机器识别的,海量的图片 ...

  5. python编程*三角形图形创意图片_使用python的pil制作微信九宫格图片

    [Python] 纯文本查看 复制代码#coding=utf-8 import os from PIL import Image import re ''' 使用PIL的Image进行图片裁剪,生成正 ...

  6. python opencv PIL 视频分割成图片 图片合成为视频 修改图片大小(抗锯齿)

    Python代码将原有的视频分割成图片,我的例子是一帧一帧的分割 用python+opencv完成视频的分割 import cv2 #导入opencv模块 print(2) #测试是否运行 vc=cv ...

  7. PS动作快速把图片做成手绘油漆涂鸦画效果

    动作支持CS5以上版本软件,这里我们用CC2018演示,首先到陌鱼社区下载"手绘草图油漆静物人物画效果PS动作"然后就可以继续下面操作. 01.打开软件,载入画笔.图案和动作,关闭 ...

  8. Android高德地图贴合图片完成手绘地图展示

    上周刚接到一个需求,产品觉得高德的默认地图样式不好看,想要一个手绘地图贴合上去,看着美观很多,然而我内心确是抵触的,无法 ,产品讲了,只能先回答试试看看.接下拉就是一搏谷歌搜索. 1.使用web版本的 ...

  9. 【演示文稿制作动画】Focusky教程 | 如何为图片添加手绘动画?

    手绘动画因其生动有趣的展示方式收到大家的追捧, 那么在Focusky(也称为"FS软件")中怎么为物体添加手绘动画呢? 首先要强调的是, 手绘动画只适用于图片(格式为Jpg. Pn ...

最新文章

  1. 人工智能:AI 芯片快速起航
  2. (006)RN开发之iOS真机调试
  3. 【Java】Integer.valueOf()
  4. zippo油和zorro油的区别_陶瓷轴承润滑油的性能质量最指标油的区别?_搜狐汽车...
  5. android单独刷入镜像
  6. 服务器托管常见问题纠纷与解决方法
  7. java手动切换成独立显卡_MacBook如何一键切换显卡 MacBook显卡切换方法【详细介绍】...
  8. SprinBoot-data-jpa整合Vue使用Swagger2实现前后端分离
  9. 大工13秋 c/c++语言程序设计 在线作业3,大工19秋《JavaScript基础教程与应用》在线作业3【满分答案】...
  10. vijos:旅行家的预算[贪心]
  11. 从机器翻译到阅读理解,一文盘点PaddlePaddle官方九大NLP模型
  12. AVS2/AVS3测试视频和VLC播放器
  13. JAVA中MD5加密解密(MD5工具类)
  14. Windows鼠标右键没有“新建”“新建文件夹”选项
  15. 发送网页内容到onenote_如何直接在网页上做笔记并保存到 Onenote?
  16. vant 调取上传照片
  17. 软件系统部署手册模版
  18. 变焦单目论文阅读笔记
  19. 房子装修与软件开发竟是如此的相识
  20. Unix/C/C++--数据类型转换、格式化、cpy、精度

热门文章

  1. 智慧灯杆、多功能杆相关标准规范(附下载)
  2. java client是什么_“java-server”和“java-client”之间的真正区别?
  3. 网络服务器 license没有释放_计算机网络协议
  4. Latex Tips: How to type a tilde (波浪符) ?
  5. linux64位系统需要安装32位mysql_在Ubuntu16.04 Linux 64位环境下安装二进制版本MySQL 8.0.13...
  6. 限时赠票 | 2018 TOKENSKY 区块链大会 - 首尔站
  7. 亿级数据量系统数据库性能优化方案
  8. Spring Boot如何在最短时间里快速搭建微服务框架,详细教程贡上
  9. Android Activity自动重启的问题
  10. 【Java学习笔记】55:JDBC-MySQL基本使用,游标控制,CONCUR_UPDATABLE,更新/添加/删除