实现两视频叠加时上层剪辑透明部分不遮挡下层内容的两种方案

利用Python轻松实现视频合成! 当你用 MoviePy 的力量,轻松地将多个视频合并成一个!在这篇博客文章中,你将学习如何将一个小视频合并到一个较大的视频中,并将其放置在右上角。你还将学习如何剪辑视频片段,以创建一个更无缝的最终产品。本指南提供了逐步说明和有用的视觉效果,让你很快就能制作出专业品质的视频!💻🎥💡 阅读详情
☞ ░ 前往老猿Python博客 https://blog.youkuaiyun.com/LaoYuanPython ░

一、引言

在《moviepy音视频剪辑:使用rotate函数实现视频变换处理以及参数expand取值为True时的花屏问题解决方案》介绍了视频旋转的方法和花屏问题解决方案,Baby CY博友提了个问题:“旋转后会出现黑色的背景填充,请问能把黑色去掉变成透明吗?”,该问题是视频旋转时,由于视频内容为矩形,旋转时部分区域有内容,部分区域无内容为黑色透明色,且随着旋转这部分的范围是变化的,Baby CY希望当该视频和其他视频叠加时,旋转视频的黑色部分不遮挡下层视频的内容。

老猿以前没有对这个进行过研究,但觉得用使用遮罩是可以的,后来仔细研究了一下,发现可以使用遮罩或图像处理技术都可以实现,下面两篇博文分别介绍了这两种实现方式,之所以独立成文,一是考虑提高文章的检索概率,二是确实内容可以相互独立。

二、具体实现

下面两博文中就是具体的两种实现方案,这两文都是付费专栏的文章,不过在文章开头都提供了跳转到免费文章的链接:

  1. 通过Moviepy的遮罩实现叠加(实际上在叠加图片时也用到了部分OpenCV的图像处理能力),具体实现请参考《moviepy音视频剪辑:使用mask遮罩剪辑实现叠加透明效果》
  2. 通过OpenCV图像运算+Moviepy实现图像叠加,具体实现请参考《使用OpenCV图像运算+Moviepy实现视频叠加案例》

实际上述遮罩模式和OpenCV图像运算模式的两种实现方案应用程序共用了大部分函数,只是遮罩模式在处理时将上层剪辑转换成了带遮罩的剪辑,通过moviepy的视频合成方式生成结果剪辑,而OpenCV图像运算模式是利用输出结果剪辑时构建帧的函数中进行图像运算合成新帧从而构建新剪辑。

三、两种实现方式的对比

经对比两种实现方式,老猿发现二者有如下异同点:

  1. 两种模式效率差异有点大,OpenCV图像运算模式是遮罩模式的处理效率一倍以上;
  2. 使用遮罩模式的上层视频边界更圆润,而OpenCV模式的效果显得有点粗糙,这应该和老猿的实现有关,如果用更好的算法肯定也有好的效果;
  3. 遮罩模式整个上层视频前景部分有半透明效果,而OpenCV是上层前景完全遮挡下层视频,当然通过改变二者叠加时的算法公式也可以实现半透明效果。具体哪种效果更好与视频合成人员的目标相关。

另外两种实现方式老猿都没有特殊考虑性能优化,如果对于批量处理来说,性能的问题是要重点关注的。

四、小结

本文介绍了实现两视频叠加时上层剪辑透明部分不遮挡下层内容的遮罩模式和OpenCV图像运算模式两种方案,在相关链接中提供了完整的代码,并对比了两种实现方式的差异。阅读本文有助于大家理解视频mask遮罩、OpenCV图像处理运算以及音视频剪辑合成的方法。

如果觉得本文可以,老猿请大家帮忙点个赞、加个收藏,谢谢!

更多moviepy的介绍请参考《PyQt+moviepy音视频剪辑实战文章目录》或《moviepy音视频开发专栏》。这2个专栏内容的导读请参考《Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载》。

更多OpenCV-Python的介绍请参考专栏《OpenCV-Python图形图像处理 》
专栏网址:https://blog.youkuaiyun.com/laoyuanpython/category_9979286.html

关于老猿的付费专栏

老猿的付费专栏《使用PyQt开发图形界面Python应用 https://blog.youkuaiyun.com/laoyuanpython/category_9607725.html》专门介绍基于Python的PyQt图形界面开发基础教程,付费专栏《moviepy音视频开发专栏 https://blog.youkuaiyun.com/laoyuanpython/category_10232926.html》详细介绍moviepy音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,都适合有一定Python基础但无相关知识的小白读者学习。这2个收费专栏都有对应免费专栏,只是收费专栏的文章介绍更具体、内容更深入、案例更多。

付费专栏文章目录:《moviepy音视频开发专栏文章目录》、《使用PyQt开发图形界面Python应用专栏目录》。

关于Moviepy音视频开发的内容,请大家参考《Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载》的导览式介绍。

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

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

跟老猿学Python!

☞ ░ 前往老猿Python博文目录 https://blog.youkuaiyun.com/LaoYuanPython/article/details/98245036 ░
OpenCV 图像叠加、混合 本文是OpenCV图像视觉入门之路的第9篇文章,本文详细的在图像上面进行了图像叠加图像混合等操作。 阅读详情

相关推荐

换装卡点视频制作:节拍分析、剪辑对齐与导出优化全流程

在短视频创作中,卡点视频是一种将画面切换与音乐节奏精确对齐的常见形式。其核心并非单纯的视觉拼接,而是基于音频瞬态、BPM检测与时间线帧级对齐的技术流程。利用ffmpeg进行素材切片与格式统一,借助librosa自动提取节拍时间点,再在剪辑软件中通过波形比对与关键帧调整,实现换装瞬间与鼓点重音的精准匹配。同时,工程帧率设置、转场叠加逻辑以及H.264/HEVC编码码率的选择,直接影响成片在移动端的清晰度与流畅度。从素材准备、节拍分析、时间线编排到导出优化,掌握这套可复现的制作方法,能大幅提升换装卡点视频的节奏

weixin_33960567的博客 290

n行Python代码系列:五行代码实现两个视频画中画播放

本文介绍了使用Python+Moviepy五行代码实现两个视频文件合并成一个画中画播放视频的方法,并介绍了moviepy的功能及安装以及相关处理的关键函数及语法。

老猿Python 9602

实现视频叠加时上层剪辑透明部分不遮挡下层内容的两种方案

实现视频叠加时上层剪辑透明部分不遮挡下层内容的两种方案在视频编辑中,我们有时需要将两个视频叠加起来,但同时又希望上层视频的透明部分不遮挡下层视频的内容。这个问题可以通过两种方式来解决,接下来我们将详细讲解这两种解决方案,使用 Python 编写示例代码。

m0_47037246的博客 634

OpenCV基础篇之图片叠加

----为什么会讨论到这么简单的问题?举几个例子,角度范围为0~360度,0度和360度是重合的,不妨先算法下面角度的均值,[10, 30] = 20 结果正确[20, 100] = 60 结果正确[160, 200]= 180 结果正确[0, 360] = 180 因为360度和0度重合,这个结果貌似不是我们想要的,结果360度才合理[20, 300] = 160 要能求得均值为340度就好了不

u014383578的专栏 581

实现视频叠加时上层剪辑透明部分不遮挡下层内容的两种方案 Python

以上代码中,我们首先读取两个视频,然后逐帧处理它们。然后,我们对两个视频的RGB通道进行透明度合成,并将结果的透明度通道设置为视频1的透明度通道。最后,我们将图像转换回BGR格式,并将处理后的帧写入输出视频。在视频编辑和图像处理中,有时我们需要将两个视频叠加在一起,但希望上层视频的透明部分不遮挡下层视频的内容。方法将视频2叠加在视频1上,并设置背景色为黑色以确保透明部分不遮挡下层内容。这种方案通过使用图像处理库,如OpenCV和NumPy,来处理视频的透明度信息,并将两个视频按照透明度进行合成。

. 715

moviepy音视频剪辑:使用mask遮罩剪辑实现叠加透明效果详解

本文介绍了通过moviepy设置mask遮罩的剪辑和另外的剪辑叠加后实现上层剪辑和下层剪辑叠加后,上层剪辑背景色部分被下层剪辑内容所呈现替代的方案。通过该实现案例的介绍,可以理解遮罩剪辑的作用,并在多个剪辑制作特效中使用该方法制作视频特效。

老猿Python 6463

OpenCV图像运算+Moviepy实现视频旋转叠加

☞ ░ 前往老猿Python博客 https://blog.youkuaiyun.com/LaoYuanPython ░ 一、引言 在《OpenCV-Python常用图像运算:加减乘除幂开方对数及位运算》介绍了OpenCV主要的图像运算,视频是由一帧帧图像构成,通过OpenCV和Moviepy的灵活运用,可以实现一些特殊的特效。本文将介绍通过OpenCV图像运算+Moviepy实现视频叠加透明效果。 二、程序实现 本案例实现一个可以在视频上面叠加一个旋转视频或旋转图片的通用方法,支持两个内容大小不同的视频叠加。为了支

老猿Python 4548

moviepy音视频开发专栏文章目录

《moviepy音视频开发专栏》为收费专栏,基于老猿阅读moviepy1.03版本的源代码以及大量测试验证的基础上,详细介绍moviepy主要音视频剪辑相关类的方法、以及一些音视频剪辑合成处理的场景化支撑能力和部分剪辑合成实现的案例或工具开发。

老猿Python 6993

PyQt+moviepy音视频剪辑实战文章目录

本专栏为moviepy音视频开发的免费专栏,基于老猿阅读moviepy1.03版本的源代码以及大量测试验证的基础上,介绍moviepy主要音视频剪辑相关类的方法、以及一些音视频剪辑合成处理的场景化支撑能力和部分剪辑合成实现的案例或工具开发。

老猿Python 7330

moviepy音视频剪辑:使用mask遮罩剪辑实现叠加透明效果详解.rar

moviepy音视频剪辑:使用mask遮罩剪辑实现叠加透明效果详解.rar

moviepy音视频剪辑:使用mask遮罩实现视频叠加透明效果.rar

moviepy音视频剪辑:使用mask遮罩实现视频叠加透明效果.rar

视频播放字幕干扰多?这款绿色便携工具3步搞定遮挡设置,支持多播放器适配 字幕广告遮挡难?Windows字幕遮挡器一键隐藏,视频观看效率提升80%

作为或,你是否常被“视频上方固定位置的字幕广告遮挡画面”“不同播放器下无法统一遮挡样式”“手动截图修图去字幕耗时久”等问题影响效率?今天分享的这款技术工具,能针对性解决这些实操难题。Windows 字幕遮挡器是一款专注于的轻量级工具,核心优势在于,能有效解决“外挂字幕与内嵌广告重叠干扰”“影视资源自带水印字幕影响观感”等问题,适配“本地视频播放优化”“教学视频二次剪辑预处理”等高频使用场景。

inmK1的博客 1555

python GUI库图形界面开发之PyQt5美化窗体与控件(异形窗体)实例

主要介绍了python GUI库图形界面开发之PyQt5美化窗体与控件(异形窗体)实例,需要的朋友可以参考下

批量添加视频贴纸特效神器:一键叠加图片/GIF动图,自定义位置/大小/透明度

【摘要】一款视频批量处理工具可高效解决矩阵工作室的贴纸添加难题,支持成百上千条视频的贴纸(图片/GIF)批量处理,包括位置、大小、透明度及出现时间的自定义设置。工具强调版权合规,要求用户使用授权素材。操作流程分三步:导入视频、配置贴纸参数、一键生成。此外还提供片头片尾添加、背景音乐合成、自动字幕等全自动剪辑功能,大幅提升视频生产效率,适合短视频工作室、电商团队等批量处理需求。

LWXMW的博客 652

手把手教你用Ubuntu Base 20.04打造轻量级ARM开发板根文件系统(附常见问题解决)

本文详细介绍了如何基于Ubuntu Base 20.04 LTS构建轻量级ARM开发板根文件系统,涵盖环境准备、镜像制作、跨架构配置、软件包定制及常见问题解决。通过实战指南,开发者可快速掌握ARM架构下的根文件系统构建技巧,优化系统性能并解决部署中的典型问题。

gin88的博客 211

KEIL-MDK代码美化神器:AStyle配置全攻略(附常用参数详解)

本文详细介绍了如何在KEIL-MDK中配置和使用AStyle代码格式化工具,包括基础参数设置、高级格式控制、团队协作方案以及KEIL深度集成技巧。通过合理的AStyle配置,开发者可以显著提升代码风格一致性,优化团队协作效率,特别适合嵌入式开发项目。

weixin_30505225的博客 146

如何使用ffmpeg制作透明背景的视频

数字人的视频我是使用的腾讯智影生成带绿幕的视频,要实现透明背景,有个很关键的信息需要知道,不是所有的视频格式(视频编码)都支持透明背景,首先我们最常用的mp4就是不支持(不管是h264还是h265)都不支持,目前支持透明背景的只有少部分视频编码,比如google的vp9(webm)格式,上图中我用就是webm+vp9编码的视频。另外一个问题是webm的格式也并不普及,比如腾讯智影导出只支持mp4,像剪映甚至final cut pro这样专业的剪辑软件都无法编辑导出透明背景的webm格式。

xindoo 7231

Keil 编译输出信息分析:Program size: Code, RO-data , RW-data, ZI-data

一般 MCU 包含的存储空间有:片内 Flash 与片内 RAM,RAM 相当于内存,Flash 相当于硬盘。编译器会将一个程序分类为好几个部分,分别存储在 MCU 不同的存储区。如图所示,在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息。

qq_40305944的博客 4578

视频剪辑新利器:SAM 3实现智能物体追踪与分割

本文介绍了如何在星图GPU平台上自动化部署SAM 3 图像和视频识别分割镜像,实现对视频中移动物体的智能追踪与分割。用户仅需输入英文提示词,即可完成如人物或车辆的精准抠像,广泛应用于短视频制作、特效添加等场景,显著提升内容创作效率。

weixin_42350014的博客 179

springcloud+nacos+gateway+oauth2小聚会

在微服务工程中,Nacos作为目前主流的注册中心和配置中心,Spring Cloud Gateway作为目前主流的网关,下面引入spring security+oauth2+jwt作为认证和授权中心,进行简单的聊聊。

ldcaws的专栏 2646

ChatBI告别“NL2SQL依赖症”!从准确率50%到90%,3大技术路线+4个企业案例拆解核心玩法

摘要: ChatBI通过自然语言交互实现数据民主化,其核心是“语义理解+数据执行+知识沉淀”的全链路能力,而非单一的NL2SQL技术。行业采用三大技术路线提升准确率:专有知识库(提升30%)、指标标签语义层(准确率85%)、JSON中间层(多轮对话提升25%)。数据执行方案包括NL2SQL、NL2API等,需结合场景选择。企业落地需解决四大痛点:跨表查询准确率低(引入拓扑图)、模糊查询(用户干预机制)、响应慢(预计算缓存)、多轮对话(上下文池)。Spring AI Alibaba提供轻量级集成方案,助力企业

weixin_52610848的博客 1656

剪映--关键帧教程:制作视频文字说明,文字动态划线,透明文字,虚拟触控,画面旋转缩小退出

剪映当中许多动态的效果都是关键帧的应用,像接下来会讲到的文字动态划线,画面旋转退出,都是关键帧的效果,用户只要设定初始状态和最后状态,软件会将中间的动态补齐。剪辑的难点在于自己需要先想好要怎么去展示素材,至于怎么实现是操作的问题,可以通过各类教程补上。当然,这里也存在一个问题,只有自己看过够多的展示效果才能知道画面怎么展示,在学教程的过程也就是学习展示效果的过程。

CheerTan is here 4919

【软件系统架构】系列四:嵌入式技术

嵌入式系统是以应用为中心、以计算机技术为基础,并将可配置与可裁剪的软硬件集成于一体的专用计算机系统。它需要满足功能、可靠性、成本、体积、功耗等方面的严格要求。 嵌入式系统一般由以下组成部分构成:

moton2017的博客 1000

Wan2.2-T2V-5B生成视频支持字幕叠加功能

Wan2.2-T2V-5B是一款轻量级文本到视频模型,仅50亿参数即可在消费级GPU上生成480P视频,并支持自动生成精准叠加字幕。通过潜空间扩散与语义同步技术,实现输入文本、输出可发布短视频的端到端流程,显著提升内容创作效率。

weixin_36238982的博客 1054

【推荐100个unity插件】在unity快速生成3D人物自然姿势和动作,且支持按图像生成姿势—— Pose AI

PoseAI是一款基于肌肉的智能动画创作工具,通过神经网络和逆运动学技术实现自然姿势生成。主要功能包括:自动/手动角色设置、神经控制装备、姿态估计与预览等。工具支持从2D图像生成3D姿势,并能在编辑器中实时预览动画效果。其神经网络架构采用前馈网络与ResNet结合的方式,通过多层全连接和ReLU激活函数处理输入数据。PoseAI简化了动画制作流程,提供高效的姿势创作解决方案,适用于Unity游戏开发。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1361

置顶必读(2) |《滚雪球学数学建模》专栏目录 & 历年国赛/美赛真题库 & 真题解析(持续更新中)

本专栏《滚雪球学数学建模》采用“从零开始、逐步滚雪球”的学习路径,把数学建模的基础理论、方法工具与大量实战真题(尤其是国赛题,涵盖2025-1992所有真题)有机融合,形成一套系统化训练路线。非常适合零基础入门、希望提升模型与工程化能力的本科/研究生,以及备战全国大学生数学建模竞赛(国赛/省赛)的同学。加油,我们一起把建模能力打造成可迁移的核心竞争力!

**My Coding Family** 26万+
上一篇: 使用OpenCV图像运算+Moviepy实现视频叠加案例
下一篇: OpenCV图像运算+Moviepy实现视频旋转叠加
LaoYuanPython
LaoYuanPython 2020年博客之星Top3 2020年博客之星Top3 领域专家: Python技术领域 领域专家: Python技术领域
博客等级 码龄8年 15万+粉丝 1324原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

LaoYuanPython

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

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

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

打赏作者

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

抵扣说明:

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

余额充值