python语言实现图像的手绘效果
前言
python语言实现图像的手绘效果,修改程序中的原始图像位置和处理后生成的图像存储位置,在pycharm或ipython环境下运行程序即可。
from PIL import Image
import numpy as npa = np.array(Image.open("C:/Users/sxxyc/Desktop/cf-study/7.jpg").convert('L')).astype('float') #原始图像位置depth = 10. #预设深度值为10 取值范围0~100,虚拟深度值depthgrad = np.gradient(a)grad_x,grad_y = grad #提取x和y方向的梯度值grad_x = grad_x*depth/100.grad_y = grad_y*depth/100. #根据深度调整x和y方向的梯度值A = np.sqrt(grad_x**2 + grad_y**2 + 1.)
uni_x = grad_x/A
uni_y = grad_y/A
uni_z = 1./A #构造x和y轴梯度的三维归一化单位坐标系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('C:/Users/sxxyc/Desktop/cf-study/8.jpg') #处理后的图像存储位置
python语言实现图像的手绘效果相关推荐
- python数据分析与展示--图像的手绘效果
目录 一.图像的数组表示 1.图像的RGB色彩模式 2.PIL库 二.图像变换 1.image转换成array 2.array转换成image 三.图像的手绘效果 1.实例介绍 2.编程实例 一 ...
- 利用Numpy+PIL读取图像实现手绘效果
读取图像+简单处理 import numpy as np from PIL import Imagepath = "" #图像路径im = np.array(Image.open( ...
- Python实现图像的手绘效果
用Python实现手绘图像的效果 1.图像的RGB色彩模式 图像一般使用RGB色彩模式,即每个像素点的颜色由红®.绿(G).蓝(B)组成.RGB三个颜色通道的变化和叠加得到各种颜色,其中: R ...
- Python 神仙姐姐图像手绘效果实现
文章目录 一.图像的 RGB 色彩模式 二.Python的 PIL 库 三.图像的数组表示 四.图像的变换 五.图像的手绘效果实现 一.图像的 RGB 色彩模式 图像一般使用 RGB 色彩模式,即每个 ...
- Python 数据分析与展示笔记2 -- 图像手绘效果
Python 数据分析与展示笔记2 – 图像手绘效果 Python 数据分析与展示系列笔记是笔者学习.实践Python 数据分析与展示的相关笔记 课程链接: Python 数据分析与展示 参考文档: ...
- Python -- 图像的手绘风格
** Python – 图像的手绘风格 ** 今天在mooc上了解到python可以做出手绘风格的图片,感觉很惊奇,很想知道python对于图片是如何处理的,因此上网搜了一些博主的文章,总结了一下. ...
- Python实现图片手绘效果
Python实现图片手绘效果 在图像处理领域中,手绘效果是一个非常有趣的特效.在这篇文章中,我们将讨论如何使用Python和PIL库来实现图片的手绘效果. 准备工作 在开始之前,我们需要安装PIL库. ...
- python将照片转换成手绘图片
最近在b站学习数据分析时,看到了可以用numpy将照片转换成手绘效果.自己整上代码学习试了半天,调整了参数并看了效果.代码如下: # -*- coding: utf-8 -*- "" ...
- Three.js铅笔手绘效果实现
在这个教程中,我们将学习如何使用 Three.js 后处理创建铅笔手绘效果. 我们将完成创建自定义后处理渲染通道.在 WebGL 中实现边缘检测.将法线缓冲区重新渲染到渲染目标以及使用生成和导入的纹理 ...
- PS效果教程——冒充手绘效果
PS效果教程--冒充手绘效果 先来发个原图和效果图: 图1 图2 开始拉! 1.先将原图复制一份 2.选择滤镜--风格化--查找边缘 图3 #p#副标题#e# 3.再选择滤镜--艺术效果--粗糙蜡笔, ...
最新文章
- Linux系统日志分析与管理(14)
- scratch学习_学习scratch编程能学到什么?对孩子有帮助吗?
- http几个版本的区别
- 课时 27:Kubernetes 安全之访问控制(匡大虎)
- 力扣:12正数转罗马数字(python) 简单粗暴解决方法
- android平板 深度学习,这款叫Remix的设备,或许可以拯救安卓平板
- Jquery特殊效果
- 作者:李晓明,男,北京大学教授、博士生导师。
- linux sudo使用和sudoers配置详解
- php _line_,php基本语法
- 谷歌浏览器chrome假死、卡死、经常无反应,火狐firefox闪黑格子的解决办法(显卡/驱动兼容问题)...
- 归并排序 Java实现 简单易懂
- idea工具推荐几款好用的代码theme主题颜色
- u8服务器ip地址在哪修改,u8服务器ip地址在哪修改
- p3.第一章 Python基础入门 -- Python编程基本概念 (三)
- 300色 柔和色彩渐变色卡(十六进制)
- Ubuntu 18.04 Bionic Beaver Linux上安装TeamViewer
- ios系统使用window.open()打开新的页面失效
- 关于两个周期函数的和的周期性的讨论
- 图像配准(image registration)与图像融合(image fusion)