python实现 照片字符画

文章介绍了如何利用Python的PIL库将图片转换成字符画,通过读取图片像素并映射到预定义的字符集上实现。提供的代码示例展示了从图片可汗.jpg生成字符画的过程,建议使用Notepad++查看结果,因为其他编辑器可能显示不理想。
摘要由CSDN通过智能技术生成

PIL实现字符画:

提示:这里简述项目相关背景:

看了B站小甲鱼的一个进阶视频后,在这里整理了一下关于字符画的制作,感兴趣的朋友可以复制代码,给你的朋友对象也来制作一幅字符画吧。

实现代码

from PIL import Image


def str_img(img_path):
    img = Image.open(img_path)
    pixel = img.convert("L")
    width, height = pixel.size
    str_pixel = "@%#*+=-  "
    texts = ""
    for row in range(height):
        for col in range(width):
            getx = pixel.getpixel((col, row))
            texts += str_pixel[int(getx / 255 * 8)]
        texts += "\n"
    print(texts)


if __name__ == "__main__":
    str_img("可汗.jpg")


操作图片-可汗.jpg:

在这里插入图片描述

实现:

在这里插入图片描述


结语:

我使用的是 Notpad ++ 去查看的,其他的编辑器会出现偏移,展示结果不理想。
细节展示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骡马跪族

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值