失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python将照片转换成手绘图片

python将照片转换成手绘图片

时间:2020-10-12 11:40:45

相关推荐

python将照片转换成手绘图片

最近在b站学习数据分析时,看到了可以用numpy将照片转换成手绘效果。自己整上代码学习试了半天,调整了参数并看了效果。代码如下:

# -*- coding: utf-8 -*-"""Spyder EditorThis is a temporary script file."""from PIL import Imageimport numpy as npa = np.array(Image.open('D:/Download/194151.jpg').convert('L')).astype('float')print(a)depth = 10.grad = np.gradient(a) #取图像梯度值grad_x,grad_y = grad #分别取横纵梯度值grad_x = grad_x*depth/30.#根据想的得到的效果自己调节grad_y = grad_y*depth/30.#根据想的得到的效果自己调节A = np.sqrt(grad_x**2 + grad_y **2 +1.)uni_x = grad_x/Auni_y = grad_y/Auni_z = 1./Avec_el = np.pi/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轴的影响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:/Download/.jpg')#保存

转换前的图片是:

转换后的照片样子效果如下:

之后再学习一下将照片像素调高的操作方法

如果觉得《python将照片转换成手绘图片》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。