zoukankan      html  css  js  c++  java
  • Python代码实现视频字符化

    Python20行代码实现视频字符化
    我们经常在B站上看到一些字符鬼畜视频,主要就是将一个视频转换成字符的样子展现出来。看起来是非常高端,但是实际实现起来确是非常简单,我们只需要接触opencv模块,就能很快的实现视频字符化。但是在此之前,我们先看看我们实现的效果是怎样的:

    上面就是截取的一部分效果图,下面开始进入我们的主题。

    一、OpenCV的安装及图片读取
    在Python中我们只需要用pip安装即可,我们在控制台执行下列语句:

    pip install opencv-python
    1
    安装完成就可以开始使用。我们先读取一个图片:

    import cv2
    im = cv2.imread('jljt') # 读取图片
    cv2.imshow('im', im) # 显示图片
    cv2.waitKey(0) # 等待键盘输入
    cv2.destroyAllWindows() # 销毁内存
     
    首先我们使用cv2.imread方法读取图片,该方法返回一个ndarray对象。然后调用imshow方法显示图像,调用后会出现一个窗口,因为这个窗口只会出现一瞬间,所以我们调用waitKey等待输入,传入0表示无限等待。因为opencv是使用c++编写的,所以我们需要销毁内存。

    二、OpenCV中的一些基础操作
    我们将视频字符化的思路就是先将视频转换为一帧一帧的图像,然后对图像进行字符化处理,最后展示出来就是字符视频的效果了。在我们生成字符画之前,我们还要看一些OpenCV的操作。

    (1)灰度转换
    灰度处理是一个非常常用的操作,我们原始的图片是有BGR三个图层(在OpenCV中,图像是以BGR形式读取)。我们进行灰度处理直观上看就是将图片变成黑白,而本质上是将图片的三个图层通过计算,变成一个图层。而这种计算是不需要我们做的,我们只需要调用OpenCV中的函数即可:

    import cv2
    # 读取图片
    im = cv2.imread('jljt.jpg')
    # 灰度转换
    grey = cv2.cvtColor(frame, cv2.COLOR_RGB2GRAY)


    ————————————————
    版权声明:本文为CSDN博主「ZackSock」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/ZackSock/article/details/105453311

    你有什么心态,就有什么样的人生。管不好自己的心态,注定你就是个弱者。
  • 相关阅读:
    【转】 矩阵构造方法
    CODEVS1187 Xor最大路径 (Trie树)
    POJ2001 Shortest Prefixes (Trie树)
    CODEVS1079 回家 (最短路)
    CODEVS2144 砝码称重2 (哈希表)
    CODEVS1380 没有上司的舞会 (树形DP)
    JAVA 多态和异常处理作业——动手动脑以及课后实验性问题
    再读大道之简第七章第八章
    JAVA 接口与继承作业——动手动脑以及课后实验性问题
    再读大道至简第六章
  • 原文地址:https://www.cnblogs.com/LQZ888/p/12691820.html
Copyright © 2011-2022 走看看