有趣的Python,使用Python将照片绘制出美腻的素描画

PIL(Python Image Library)是python的第三方图像处理库,PIL功能非常强大,但API却非常简单易用,其强大的功能与众多的使用人数,几乎已经被认为是Python官方图像处理库了。 Python3PIL移植到pillow库,pillow号称是friendly fork for PIL。

如果想了解更多可以看中文文档:「链接」

来不及做更多解释,直接付代码,还等什么,尝试一下。

from PIL import Image, ImageFilter, ImageOpsimport osdef Formula(x, y, alpha): """  :param a:  :param b:  :param alpha:  :return:  """ return min(int(x*255/(256-y*alpha)), 255)def SketchDrawer(image,blur=6, alpha=1.0): """ :param blur: :param alpha: :return: """ image_name = os.path.splitext(image)[0] image = Image.open(image) # 加载图片 luminance_image = image.convert('L') # 图片转换成灰度图 luminance_img_copy = luminance_image.copy() inverted_image = ImageOps.invert(luminance_img_copy) # 反转颜色 for i in range(blur): # 模糊度 # ImageFilter.BLUR为模糊滤波,处理之后的图像会整体变得模糊 inverted_image = inverted_image.filter(ImageFilter.BLUR) width, height = luminance_image.size for x in range(width): for y in range(height): # 返回给定位置的像素值。如果图像为多通道,则返回一个元组。 pixel_luminance = luminance_image.getpixel((x, y)) pixel_inverted = inverted_image.getpixel((x, y)) luminance_image.putpixel((x, y), Formula(pixel_luminance, pixel_inverted, alpha)) luminance_image.show() # 展示图片效果 luminance_image.save('{0}_L.jpg'.format(image_name))SketchDrawer('20190623191235.jpg')

为方便阅读,可浏览如下代码完整截图。

有趣的Python,使用Python将照片绘制出美腻的素描画

百度一图,如下。

有趣的Python,使用Python将照片绘制出美腻的素描画

图片来自百度,若侵权则删

使用如上代码,绘制出素描画,如下:

有趣的Python,使用Python将照片绘制出美腻的素描画

再来一张合影

有趣的Python,使用Python将照片绘制出美腻的素描画

图片来自百度,若侵权则删

使用如上代码,绘制出素描画,如下:

有趣的Python,使用Python将照片绘制出美腻的素描画

若有需要源码的同学,私聊吧 ~

来源:软件测试开发技术栈

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年5月18日
下一篇 2019年5月18日

相关推荐