两行Python代码实现视频负片特效

☞ ░ 老猿Python博文目录:https://blog.csdn.net/LaoYuanPython ░

一、引言

最近看到好几篇类似“n行Python代码…”的博文,看起来还挺不错,简洁、实用,传播了知识、带来了阅读量,撩动了老猿的心,决定跟风一把,推一个“n行Python代码系列”文章。

对于视频中的画面,有时出于特效处理等特殊要求希望进行类似照片负片的效果。

负片(Negative Film)是经曝光和显影加工后得到的影像,其明暗与被摄体相反,其色彩则为被摄体的补色,它需经印放在照片上才还原为正像。拿黑白的片子来说,在负片的胶片上人的头发是白的,实际上白色的衣服在胶片上是黑色的;彩色的胶片,胶片上的颜色与实际的景物颜色正好是互补的,如:实际是红色的衣服在胶片上是青色的。负片不论是黑白或彩色均是摄影最常用的胶片。我们平常所说的用来冲洗照片的底片就是负片。

本文介绍通过Python+Moviepy两行代码实现将视频进行视频反色处理达到每帧画面都是原画面的负片效果。更多“n行Python代码系列”文章请参考免费专栏《n行Python代码系列》。

二、实现视频反色处理的案例

老猿手头有个从抖音下的风景视频,其对应原视频内容如下:
在这里插入图片描述

为了实现视频反色处理,示例代码如下:

from  moviepy.editor import *clip = VideoFileClip(r"F:\video\scenery.mp4")
clipInvert_colors = clip.fx(vfx.invert_colors)
clipInvert_colors.write_videofile (r"F:\video\scenery_invert_colors.mp4")

上述四行代码实现Moviepy模块的加载、然后读入视频文件、对视频进行反色处理、输出反色后视频到结果视频文件。以上四行代码也可以精简为如下两行:

from  moviepy.editor import *VideoFileClip(r"F:\video\scenery.mp4").fx(vfx.invert_colors).write_videofile (r"F:\video\scenery_invert_colors.mp4")

输出的反色视频如下:
在这里插入图片描述

可以看到反转后的视频有种魔幻的感觉。

三、背景知识

3.1、moviepy简介

要实现视频剪辑,老猿使用了moviepy库。MoviePy是一个用于视频编辑的Python模块,可用于进行视频的基本操作(如剪切、连接、标题插入)、视频合成(也称非线性编辑)、视频处理或创建高级效果。它可以读写最常见的视频格式,包括GIF。MoviePy能处理的视频是ffmpeg格式的,老猿理解支持的文件类型至少包括:*.mp4 *.wmv *.rm *.avi *.flv *.webm *.wav *rmvb。

MoviePy安装非常简单,使用pip安装时,请将站点指向国内的镜像站点,否则下载很慢或者下载不下来,老猿使用清华的镜像,指令是:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple moviepy

3.2、代码使用相关函数介绍

上述代码涉及到的相关函数包括VideoFileClip、fx、invert_colors、write_videofile,其中:

  • VideoFileClip实际上是一个类,用于从视频文件装载视频到内存
  • fx函数是Moviepy剪辑基类Clip的方法,fx方法是用于执行参数指定的函数,并返回该参数对应函数的执行结果
  • invert_colors将像素对应颜色进行反转。具体反转方式为,对于标准剪辑,采用255减各RGB的值,对于遮罩剪辑,采用1.0减原值。颜色反转又称为负片转换
  • write_videofile用于将剪辑内容输出到视频文件

四、小结

本文介绍了使用Python+Moviepy 两行代码实现视频颜色反转的方法,视频颜色反转类似相片冲印中的负片处理。

更多相关moviepy知识的介绍请参考《https://blog.csdn.net/LaoYuanPython/article/details/108184832 Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载》的导览式介绍。

写博不易,敬请支持:

如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!

关于老猿的付费专栏

  1. 付费专栏《https://blog.csdn.net/laoyuanpython/category_9607725.html 使用PyQt开发图形界面Python应用》专门介绍基于Python的PyQt图形界面开发基础教程,对应文章目录为《 https://blog.csdn.net/LaoYuanPython/article/details/107580932 使用PyQt开发图形界面Python应用专栏目录》;
  2. 付费专栏《https://blog.csdn.net/laoyuanpython/category_10232926.html moviepy音视频开发专栏 )详细介绍moviepy音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,对应文章目录为《https://blog.csdn.net/LaoYuanPython/article/details/107574583 moviepy音视频开发专栏文章目录》;
  3. 付费专栏《https://blog.csdn.net/laoyuanpython/category_10581071.html OpenCV-Python初学者疑难问题集》为《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的伴生专栏,是笔者对OpenCV-Python图形图像处理学习中遇到的一些问题个人感悟的整合,相关资料基本上都是老猿反复研究的成果,有助于OpenCV-Python初学者比较深入地理解OpenCV,对应文章目录为《https://blog.csdn.net/LaoYuanPython/article/details/109713407 OpenCV-Python初学者疑难问题集专栏目录 》
  4. 付费专栏《https://blog.csdn.net/laoyuanpython/category_10762553.html Python爬虫入门 》站在一个互联网前端开发小白的角度介绍爬虫开发应知应会内容,包括爬虫入门的基础知识,以及爬取CSDN文章信息、博主信息、给文章点赞、评论等实战内容。

前两个专栏都适合有一定Python基础但无相关知识的小白读者学习,第三个专栏请大家结合《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的学习使用。

对于缺乏Python基础的同仁,可以通过老猿的免费专栏《https://blog.csdn.net/laoyuanpython/category_9831699.html 专栏:Python基础教程目录)从零开始学习Python。

如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。

如果对文章内容存在疑问,可以在博客评论区留言,或关注:老猿Python 微信公号发消息咨询。
在这里插入图片描述

跟老猿学Python!

☞ ░ 前往老猿Python博文目录 https://blog.csdn.net/LaoYuanPython ░

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/24449.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

再聊聊财务自由

前段时间有人在我星球讨论财务自由,说自由的本质是选择权,有读者觉得大受启发,我就翻了一下旧文,我2017年就说过了啊,谈谈财务自由 。 但时过境迁,其实我想改变一下之前的说法,所谓财务自由&…

《周易》乾卦爻辞

1. 初九.潜龙勿用 初九,潜龙勿用。 下爻为初。九,阳数之盛,故以名阳爻。理无形也,故假象以显义。乾以龙为象。龙之为物,灵变不测,故以象乾道变化,阳气消息,圣人进退。初九在一卦之下…

《光剑教教义:五信 九训 十诫 九罪》

五信 1.没有神、上帝、救世主,每个人就是自己的神、上帝、救世主;天助自助者。一个人能够在想象中创造的事情,没有什么是不能实现的。我们所需要的,只是把蕴含在我们自身的所有潜在力量激发出来。 2.神不过是世界上的一般能源&a…

德鲁克《管理的实践》笔记

谈管理时必须将三个方面都纳入考虑:第一是成果和绩效,因为这是企业存在的目的;第二必须考虑在企业内部共同工作的人所形成的组织;第三则要考虑外在的社会,也就是社会影响和社会责任。 第1章 管理层的角色 在每个企业中…

C++多态性分析和与Linux内核中的多态性实现的共性和差异比较

Linux内核是用C语言开发的,而C是面向结构,面向过程的语言,这种语言的特点是数据结构和数据操作是分离的两个部分,但是这并不代表面向过程的语言无法实现面向对象语言的一些机制,比如多态性,多态的本质在于其…

为什么有些 985、211 的本科学生即使在大学里混得很水,在找工作时学历却那么管用?...

学术分享,侵删 知乎:https://www.zhihu.com/question/354234322 编辑:AI有道 最近网上有个话题比较有争议:【为什么有些 985、211 的本科学生即使在大学里混得很水,在找工作时学历却那么管用?】笔者认为&am…

202324读书笔记|《一枝瘦骨写空山:金农画的金石气》——以一枝瘦骨,写空山之妙

202323读书笔记|《一枝瘦骨写空山:金农画的金石气》——以一枝瘦骨,写空山之妙 《一枝瘦骨写空山:金农画的金石气(文人画的真性)》作者朱良志。荷风四面,人在当中,消受这世界的清凉,…

超然!高效 MacBook 工作环境配置,超实用!

点击上方,选择“设为星标” 优质文章,及时送达 工欲善其事,必先利其器,工具永远都是用来解决问题的,没必要为了工具而工具,一切工具都是为了能快速准确的完成工作和学习任务而服务。 本文记录 MacBook 整个…

职业规划-IT方向(超详细,超具体)

前言 今天是周五,本来想好好休息。前天写了一篇博文《说出我的故事,献给正在迷茫的你》(https://blog.csdn.net/weixin_44135121/article/details/92841610),不少读者留言不知该如何做职业规划,于是继续拖…

超然姐姐 Asp.net笔记 (网课笔记)

超然姐姐ASP.Net笔记 ASP ASP.net PHP:超文本预处理 2020/3/10 解决方案 ​ 项目 ​ 属性 ​ 引用 ​ 类 Forml.cs 体文件 .csproj 项目信息 .cs 源文件 记事本 输出 Console.WriteLine(" 要打印的内容"); ​ Console.ReadKey(); ​ 1.暂停当前…

超然姐姐 Linux网课笔记

超然姐姐 Linux笔记 1 .命令级接口 ​ 2.1脱机用户接口 2.程序级接口 3.图形界面 视频 mooc Linux 活跃的发行版本多少 视频mooc 自由软件是一种可以不受限制地自由使用、复制、研究、修改和分发但必须公开源代码的软件。可以买卖。这方面的不受限制正是自由软件最重要的…

抱一鸿蒙 超然之志什么意思,什么是超然?什么是洒脱?

满意答案 brickhu 2013.04.18 采纳率:58% 等级:12 已帮助:19811人 您好! 朋友,很高兴为你解答 真正的爱情并不一定是他人眼中的完美匹配 ?需要同时付出才会有意义,才会更加的完美? 爱是缘份,爱是感动&…

简单使用Knockout.js和Datatables.js 分页

添加与KnockoutJS绑定的表格数据的简单分页&#xff0c;排序和搜索的示例 index.html <!DOCTYPE html> <html lang"en"><head><meta charset"utf-8"><meta http-equiv"X-UA-Compatible" content"IEedge"…

Python基础之文件

输出一行一行的&#xff0c;效率更高 一个任务&#xff1a; 主函数&#xff1a;

PHP登陆/php登录--【强撸项目】

强撸项目系列总目录在000集 PHP要怎么学–【思维导图知识范围】 文章目录 本系列校训本项目使用技术 上效果图phpStudy 设置导数据库 项目目录如图&#xff1a;页面代码后台代码 这么丑的界面能忍&#xff1f;配套资源作业&#xff1a; 本系列校训 用免费公开视频&#xff0…

文件处理小程序(包含哈夫曼文件压缩-解压等 C语言)

文末有源代码 文件压缩、解压、加密&#xff08;异或加密&#xff09;、解密功能等都实现了&#xff0c;但是处理后文件命名有点不合理&#xff0c;采用了加前缀的方法得到处理后的文件名&#xff0c;应该是改变后缀名。 应该这种更好&#xff1a;test.txt --- >> 压缩…

问答 | 我适合做软件开发吗?

我在微信订阅号“程序视界”的发现菜单里设置了“程序员的职业规划”和“有问有答”两个子菜单后&#xff0c;不断有人加我微信&#xff0c;找我聊程序员职场那些事儿&#xff0c;现在我线下见面聊过5个人&#xff0c;微信和QQ上聊过的人超过10个了。 我把聊天记录都汇聚在一起…

CASE WHEN的用法

1.case when语法 在SQL中&#xff0c;“Case When”语句用于选择判断&#xff0c;在执行时先对条件进行判断&#xff0c;然后根据判断结果做出相应的操作&#xff1b;格式 CASE SCORE WHEN A THEN 优 ELSE 不及格 END 2.适用场景 2.1 表结构和数据 SET NAMES utf8mb4; SET FO…

芒果Tv服务器维护,芒果tv怎么看直播?芒果tv直播看不了怎么办?

芒果tv怎么看直播 芒果TV是湖南卫视新媒体金鹰网旗下的网络电视播放器&#xff0c;为用户提供包括电视剧、电影、电视节目、新闻纪实、音乐等多种类型的点播服务。那么芒果tv怎么看直播? 1.打开【芒果TV】&#xff0c;往左划动上方的导航栏。 2.点击【直播】&#xff0c;这里就…

我脸上被软件开发刻了几个字

4 月 13 号&#xff0c;在路上&#xff0c;听着别人的微课&#xff0c;忽然想起这个话题&#xff1a;从事软件开发工作在哪些方面影响了我的生活。 稍一回想&#xff0c;不由感慨万千&#xff0c;赶紧记录下来。根据我个人的经验&#xff0c;软件开发这种工作会在下面三个方面…