• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Python制作动态字符画的源码

    字符画,一种由字母、标点、汉字或其他字符组成的图画。简单的字符画是利用字符的形状代替图画的线条来构成简单的人物、事物等形象,它一般由人工制作而成;复杂的字符画通常利用占用不同数量像素的字符代替图画上不同明暗的点,它一般由程序制作而成。字符画是互联网时代的产物,通常应用于即时聊天中。

    首先,也是最重要的,先放源码

    from PIL import Image as im
    from tkinter import *
    import cv2
     
    # 随便打
    codeLib = '''*.1'''
    count = len(codeLib)
     
     
    def transform(image_file):
        codePic = ''
        for h in range(0, image_file.size[1]):
            for w in range(0, image_file.size[0]):
                g, r, b = image_file.getpixel((w, h))
                gray = int(r * 0.299 + g * 0.587 + b * 0.114)
                codePic = codePic + codeLib[int(((count - 1) * gray) / 256)]
            codePic = codePic + '\r\n'
        return codePic
     
     
    def image2char(image_file):
        image_file = image_file.resize((int(image_file.size[0] * 0.16), int(image_file.size[1] * 0.06)))  # 调整图片大小
        return transform(image_file), image_file.size[0], image_file.size[1]
     
     
    def frame2image(cap, i):
        cap.set(cv2.CAP_PROP_POS_FRAMES, i)
        _, b = cap.read()
        image = im.fromarray(cv2.cvtColor(b, cv2.COLOR_BGR2RGB))
        return image
     
     
    def gui(path):
        cap = cv2.VideoCapture(path)
        root = Tk()
        t = frame2image(cap, 0)
        _, w, h = image2char(t)
        text = Text(root, width=w, height=h)
        text.pack()
        framenum = int(cap.get(7))
        for i in range(framenum):
            image = frame2image(cap, i)
            content, _, _ = image2char(image)
            text.insert(INSERT, content)
            root.update()
            text.delete(0.0, END)
     
     
    if __name__ == '__main__':
        gui(r'C:\Users\Administrator\Desktop\油性极大.mp4')

    然后,选择一个短视频

    最后选择视频的路径,修改代码的文件路径,在运行代码

    到此这篇关于Python制作动态字符画的源码的文章就介绍到这了,更多相关Python动态字符画内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • Python中matplotlib如何改变画图的字体
    • Python生成截图选餐GIF动画
    • 教你如何利用python3爬虫爬取漫画岛-非人哉漫画
    • 教你用Python爬取英雄联盟皮肤原画
    • 如何用Python画一些简单形状你知道吗
    上一篇:Python进行区间取值案例讲解
    下一篇:Python内置数据结构列表与元组示例详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Python制作动态字符画的源码 Python,制作,动态,字符,画的,