用python进行图片素描
简介:
首先介绍素描——使用单一色彩表现明度变化的绘画。
由素描的定义可显而易见,我们目标则是将图片转为灰度图,即单通道。
为了表现色彩的明度变化,我们可以在代码中增加一种光源效果,从而达到灰度变化以模拟视觉的远近效果
所需库:
from PIL import Image
import numpy as np
代码介绍:
1.获取图片灰度转入数组,方便接下的计算。
a=np.asarray(Image.open("2022.PNG").convert("L")).astype("float")
2.分别获取图像梯度值 进行归一化处理
depth=10
grad=np.gradient(a) #取图像灰度的梯度值
grad_x,grad_y=grad #分别取纵横向图像梯度值
grad_x=grad_x * depth/100.
grad_y=grad_y * depth/100.
3.归一化操作
A=np.sqrt(grad_x ** 2 + grad_y ** 2 + 1.) #取平方根
uni_x=grad_x / A
uni_y=grad_y / A
uni_z=1. / A
4.添加光源效果,考虑光源对xyz轴影响,再用sin和cos函数进行计算(网上搜到的)
vec_el=np.pi / 2.2 # 光源的俯视角度
vec_az=np.pi / 4. # 光源的方位角度
dx=np.cos(vec_el) * np.cos(vec_az) # 光源对x轴的影响
dy=np.cos(vec_el) * np.sin(vec_az) # 光源对y轴的影响
dz=np.sin(vec_el) # 光源对z轴的影响
5.计算新的像素值,并将像素值高于255,低于0的值筛出
b=255*(dx * uni_x +dy*uni_y+dz*uni_z) #光源归一化
b=b.clip(0,255) # 避免数据越界,将生成的灰度值裁剪至0-255之间
6.重构像素,保存图片
im=Image.fromarray(b.astype("uint8")) # 重构图像(将数组转化成图像)
im.save('2022_sumiao.jpg')
代码运行:
运行后会在同文件夹中直接保存
结果展示:![](/assets/blank.gif)
小结:
粘贴上面所有代码即可运行,大佬们可以用以此为延申来做素描画风的视频
用python进行图片素描相关推荐
- python PIL 图片素描化
from PIL import Image import numpy as npa = np.asarray(Image.open("D://7.jpg").convert('L' ...
- python画素描画_使用Python将图片变成铅笔素描
原标题:使用Python将图片变成铅笔素描 新书即将面市,敬请关注 本文转自:JiekeXu之路(ID:JiekeXu_IT,已获授权) " 我们知道一张色彩鲜艳的美照,看起来自然赏心悦目的 ...
- python将图片转换成动漫,python实现图片转换成素描和漫画格式
本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下 原图 图片转换后的成果 源码 # -*- coding: utf-8 -*- import cv2 f ...
- python照片转素描_python实现图片彩色转化为素描
本文实例为大家分享了Python将图片彩色转化为素描的具体代码,供大家参考,具体内容如下 第一种: from PIL import Image, ImageFilter, ImageOps img = ...
- python图片转成素描_巧用python实现图片转换成素描和漫画格式
[相关学习推荐:python教程] 本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下 原图 图片转换后的成果 源码# -*- coding: utf-8 ...
- python风格变换图片_巧用python实现图片转换成素描和漫画格式
[相关学习推荐:python视频教程] 本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下 原图 图片转换后的成果 源码# -*- coding: utf ...
- python照片转化为漫画_巧用python实现图片转换成素描和漫画格式
[] 本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下 原图 图片转换后的成果 源码# -*- coding: utf-8 -*- import cv2 ...
- python把图片转化为素描画_python如何将图片转换素描画 python将图片转换素描画代码示例...
python如何将图片转换素描画?本篇文章小编给大家分享一下python将图片转换素描画代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 代码如 ...
- python将图片转动漫_python实现图片转换成素描和漫画格式
本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下 原图 图片转换后的成果 源码 # -*- coding: utf-8 -*- import cv2 f ...
最新文章
- 基于EM参数估计的SAGE算法的MATLAB仿真
- 关于Visual Basic 10.0
- Mybatis Plus——[Could not set property 'id' of '***' with value]解决方案
- 【cropper】限制图片大小
- linux 进程管理 ppt,Linux内核结构与进程管理.ppt
- 鱼骨图分析法实际案例_让你头脑更精明的十种思考法:鱼骨图
- Java Servlet API中文说明文档
- [剑指offer]面试题第[59-1]题[Leetcode][第239题][JAVA][滑动窗口的最大值][单调队列][优先队列]
- sqlserver——视图
- Exchange2010中文版安装教程
- 拓端tecdat|R语言乘法GARCH模型对高频交易数据进行波动性预测
- com.google.common.base.Preconditions.checkNotNull(Preconditions.java:877)
- 微信 iOS 收款到帐语音提醒开发总结
- 【阿里云生活物联网架构师专题 ⑥】ESP8266接入阿里生活飞燕平台国际版,实现亚马逊Alexa Echo音响语音控制;
- 炒股两个指标: M1增速和筹码分布
- java excel合并,Java Excel合并工具
- 垃圾分类游戏HTML,三七互娱:60秒挑战垃圾分类
- Android打包混淆压缩
- 支付宝:APP支付接口2.0(alipay.trade.app.pay)
- 如何推动乡村振兴的落地