FFmpeg滤镜:使用colorkey抠图

今天介绍一下colorkey滤镜。通过使用这个滤镜,可以把图像中指定的颜色(或者在一定相似度范围内)的像素替换成透明色——说白了,就是把符合条件的像素抠掉。

官网说明:http://ffmpeg.org/ffmpeg-filters.html#colorkey

这个滤镜有三个参数。第一个(color)用于指定要抠掉的颜色;第二个(similarity)是相似度,意思是“差不多”的像素也会被抠掉,取值范围 [0.01 - 1],数值越小,颜色匹配时越严格,极端情况下比如取值为0.01就是只抠除第一个参数指定颜色的像素;第三个(blend)是混合比例,取值范围 [0 - 1],实际测下来效果不明显。

假如我们有这样一个纯绿背景色的logo,想要把它叠加在视频上,并且叠加时去除背景色。使用FFmpeg可以这么来做:

ffmpeg -i D:\MTest\bear_short.mp4 -i D:\MTest\slogan.png -filter_complex "[1:v]colorkey=0x00FF00:0.01:1[ckout];[0:v][ckout]overlay[out]" -map "[out]" -map 0:a D:\MTest\cktest1.mp4

意思是:在bear_short.mp4这个视频上叠加一张图片slogan.png(注:overlay后面没有带x/y参数时,默认叠加在视频的左上角)。colorkey的三个参数:0x00FF00表示绿色,0.01是相似度,表示只抠除RGB值严格等于0x00FF00的像素,混合比例是1。最后把合成的音视频数据写入cktest1.mp4。

使用ffplay播放cktest1.mp4,效果如下:

为了加深对“相似度”这个参数的理解,我们对logo的背景色做一下处理,让它不那么纯。然后重复执行上述FFmpeg命令行,得到的效果如下:

怎么解决这个问题呢?其实很简单,只要将相似度参数改成0.5即可,如下:

ffmpeg -i D:\MTest\bear_short.mp4 -i D:\MTest\slogan2.png -filter_complex "[1:v]colorkey=0x00FF00:0.5:1[ckout];[0:v][ckout]overlay=x=W-w:y=H-h[out]" -map "[out]" -map 0:a D:\MTest\cktest2.mp4

我们顺便练习一下,在overlay后面指定x和y参数,让logo出现在右下角:

上面演示的是在视频上叠加图片的例子。那么,能不能反过来呢,在一张大的背景图片上叠加视频,并且对视频进行抠图处理?当然也是可行的!

假设我们的源视频是这样的:

事先提取视频的背景色大致是0x646464,相似度指定为0.3,执行的命令行如下:

ffmpeg -i D:\MTest\BKG.JPG -i D:\MTest\Src.mp4 -filter_complex "[1:v]colorkey=0x646464:0.3:0.1[ckout];[0:v][ckout]overlay[out]" -map "[out]" D:\MTest\cktest3.mp4

混合后的实际效果:

本文完。

  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
ffmpeg 是一款功能强大的多媒体处理工具,也可以用于在 Windows 系统中录制音频。 在使用 ffmpeg 进行录音时,我们可以通过以下的代码来实现: ```shell ffmpeg -f dshow -i audio="麦克风设备名称" output.wav ``` 其中,`-f dshow` 表示使用 DirectShow 接口,`-i audio="麦克风设备名称"` 指定了录音输入的音频设备,可以通过修改 `"麦克风设备名称"` 为实际的设备名称,比如 "麦克风 (Realtek High Definition Audio)"。`output.wav` 是保存录音文件的路径及文件名。 执行以上代码后,ffmpeg 就会利用指定的音频设备开始录制声音,并将录制的音频数据保存为 WAV 格式的文件。可以通过修改保存文件的路径和文件名,来自定义保存的音频文件。 需要注意的是,使用 ffmpeg 进行录音时,可能会遇到以下几个问题: 1. 需要在系统中正确安装 ffmpeg,并在命令行中添加 ffmpeg 的路径,才能正常使用。 2. 需要在系统中正确安装音频设备的驱动程序,并确保音频设备正常工作。 3. 需要在命令行中正确输入音频设备的名称,以保证 ffmpeg 正确识别并使用指定设备。 以上是关于使用 ffmpeg 实现在 Windows 系统中录制音频的简要介绍。通过适当的配置和调整参数,可以实现更复杂的音频录制功能。具体的使用方法和技巧可以通过查阅 ffmpeg 的官方文档和使用说明来进一步学习和了解。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值