当前位置:首页 > 科技  > 软件

使用 Python 在视频上渲染文本

来源: 责编: 时间:2023-11-07 09:14:42 368观看
导读在本文中,我们将学习如何使用 python 在视频中渲染响应式文本,我们将使用 opencv 这个包,这是一个非常全面的计算机视觉处理库,会给我们的视频图像处理带来极大的便利。现在,让我们通过 pip 来进行安装。pip install openc

在本文中,我们将学习如何使用 python 在视频中渲染响应式文本,我们将使用 opencv 这个包,这是一个非常全面的计算机视觉处理库,会给我们的视频图像处理带来极大的便利。现在,让我们通过 pip 来进行安装。lqG28资讯网——每日最新资讯28at.com

pip install opencv-python

在我们需要使用 opencv 的时候,就可以像下面这样来引用。lqG28资讯网——每日最新资讯28at.com

import cv2

现在让我们进入下一步,选择一个视频并导入到程序中。lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

第一步 —— 导入视频

lqG28资讯网——每日最新资讯28at.com

这将是一个简单的步骤。我们将做两件事: 导入一个视频和找到视频的帧速率。我们将使用帧速率来计算视频中的秒数,这样我们就可以计算不同文本的渲染时间。lqG28资讯网——每日最新资讯28at.com

我们使用 VideoCapture 方法导入视频。lqG28资讯网——每日最新资讯28at.com

tree_video = cv2.VideoCapture('tree.mov')

现在我们来计算导入视频的帧速率。lqG28资讯网——每日最新资讯28at.com

fps = tree_video.get(cv2.CAP_PROP_FPS)print(fps)#result23.97

23.97!这意味着视频基本上每秒运行24帧,所以24次循环相当于1秒的视频。lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

第二步 —— 读取文本文档

lqG28资讯网——每日最新资讯28at.com

在这一步中,我们将从文本文档中读取文本。我们将使用 open 函数,它是 Python 附带的一个内置函数。下面是我将要导入的文本文档的屏幕截图。lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

确保每个句子都在新的一行上。在读取文本文档时,我们将把每一行转换为一个列表项。lqG28资讯网——每日最新资讯28at.com

poem = open('under_the_giant_tree.txt')poem_lines = list(poem)print(poem_lines)

图片lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

第三步 —— 响应式文字功能

lqG28资讯网——每日最新资讯28at.com

在这一步中,我们将编写一个用于更新文本的函数。我决定根据不同的时间戳更新文本,但是可以随意更改为不同的情况。lqG28资讯网——每日最新资讯28at.com

frame_ = 0def text_update(frame_): if frames_ < (5*fps):  text = str(poem_lines[2]) elif frames_ < (10*fps):  text = str(poem_lines[4]) elif frames_ < (15*fps):  text = str(poem_lines[6]) elif frames_ < (20*fps):  text = str(poem_lines[8]) else:  text = "no text found" return text

使用 if-else 来确定正在播放的视频的时间戳。lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

定义一个名为“frame_”的新变量来传入视频帧。这样可以以秒为单位计算持续时间。我们已经知道从第一步开始的每秒帧数,即24帧每秒。在这个函数中,文本将每五秒更新一次。我将诗的行分配给 text 变量。lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

现在,让我们进入最后一步。lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

最后一步 —— 渲染视频

lqG28资讯网——每日最新资讯28at.com

太好了!我们快完成了。在最后一步,我们将把迄今为止所做的一切结合起来。我们将使用 while 循环来触发程序。我们可以使用“ escape”或“ q”键结束循环。lqG28资讯网——每日最新资讯28at.com

while(True):ret, frame = tree_video.read()font = cv2.FONT_HERSHEY_SIMPLEXon_video_text = text_update(frame_)     cv2.putText(frame, on_video_text, (50, 50), font, 1, (0, 255, 255),    2, cv2.LINE_4)frame_ = frame_ + 1cv2.imshow('poem on video', frame)if cv2.waitKey(1) & 0xFF == ord('q'):    breaktree_video.release()cv2.destroyAllWindows()

那么上面的代码中发生了什么:lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

  • 我们首先从读取视频开始的。
  • 然后定义我们想要用于文本的字体。
  • 然后使用 text_update 来更新文本。
  • 使用 putText 方法添加视频响应文本。
  • 使用 imshow 方法显示视频。

lqG28资讯网——每日最新资讯28at.com

下面是我运行程序后的截图:lqG28资讯网——每日最新资讯28at.com

lqG28资讯网——每日最新资讯28at.com

总结

lqG28资讯网——每日最新资讯28at.com

恭喜!我们已经学习了如何使用 Python 在视频上呈现可更新的响应文本。我希望你喜欢这个实际操作的计算机视觉项目。参与实际的编程项目是提高编程技能的最好方法。lqG28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-17408-0.html使用 Python 在视频上渲染文本

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python这些冷门特性,当初也没教啊

下一篇: 好用的嵌入式设备日志输出模块 log.h

标签:
  • 热门焦点
  • Automa-通过连接块来自动化你的浏览器

    1、前言通过浏览器插件可实现自动化脚本的录制与编写,具有代表性的工具就是:Selenium IDE、Katalon Recorder,对于简单的业务来说可快速实现自动化的上手工作。Selenium IDEKat
  • 在线图片编辑器,支持PSD解析、AI抠图等

    自从我上次分享一个人开发仿造稿定设计的图片编辑器到现在,不知不觉已过去一年时间了,期间我经历了裁员失业、面试找工作碰壁,寒冬下一直没有很好地履行计划.....这些就放在日
  • 三万字盘点 Spring 九大核心基础功能

    大家好,我是三友~~今天来跟大家聊一聊Spring的9大核心基础功能。话不多说,先上目录:图片友情提示,本文过长,建议收藏,嘿嘿嘿!一、资源管理资源管理是Spring的一个核心的基础功能,不
  • 虚拟键盘 API 的妙用

    你是否在遇到过这样的问题:移动设备上有一个固定元素,当激活虚拟键盘时,该元素被隐藏在了键盘下方?多年来,这一直是 Web 上的默认行为,在本文中,我们将探讨这个问题、为什么会发生
  • 花7万退货退款无门:谁在纵容淘宝珠宝商家造假?

    来源:极点商业作者:杨铭在淘宝购买珠宝玉石后,因为保证金不够赔付,店铺关闭,退货退款难、维权无门的比比皆是。&ldquo;提供相关产品鉴定证书,支持全国复检,可以30天无理由退换货。&
  • 一条抖音4亿人围观 ! 这家MCN比无忧传媒还野

    作者:Hiu 来源:互联网品牌官01 擦边少女空降热搜,幕后推手曝光被网友誉为&ldquo;纯欲天花板&rdquo;的女网红井川里予,近期因为一组哥特风照片登上热搜,引发了一场互联网世界关于
  • 东方甄选单飞:有些鸟注定是关不住的

    作者:彭宽鸿来源:华尔街科技眼&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;&zwj;东方甄选创始人俞敏洪带队的&ldquo;7天甘肃行&rdquo;直播活动已在近日顺利收官。成立后一
  • Counterpoint :OPPO双旗舰战略全面落地 高端产品销量增长22%

    2023年6月30日,全球行业分析机构Counterpoint Research发布的《中国智能手机高端市场白皮书》显示,中国智能手机品牌正在寻求高质量发展,中国高端智能
  • AI艺术欣赏体验会在上海梅赛德斯奔驰中心音乐俱乐部上演

    光影交错的镜像世界,虚实幻化的视觉奇观,虚拟偶像与真人共同主持,这些场景都出现在2019世界人工智能大会的舞台上。8月29日至31日,“AI艺术欣赏体验会”在上海
Top