FFmpeg滤镜:去台标

今天扫了一眼FFmpeg文档,发现居然有去台标(delogo)功能。它的原理是:在画面中指定一个矩形区域(x,y,w,h),区域内的每个像素都与相邻像素做插值混合处理,以达到模糊化的效果。此功能实乃搬运工之福音啊!

官网地址:http://www.ffmpeg.org/ffmpeg-filters.html#delogo

为了验证这个滤镜效果,我找来了一段含有CCTV-5台标的视频,如下:

通过测算得知,左上角台标的起点坐标是(23, 15),台标的宽为56,高为26。于是,我们可以通过这个命令行来看到效果:

ffplay -i D:\MTest\football1.mp4 -vf delogo=x=23:y=15:w=56:h=26:show=1

意思是:播放D:\MTest目录下的源文件football1.mp4,播放链路中加入一个delogo滤镜,把指定区域的图像内容模糊化;show=1表示需勾勒出矩形区域的外边框。实际效果如下:

问题来了,如果源文件中有多处台标,怎么处理呢?其实也简单,再加一个delogo滤镜即可——两个滤镜之间用逗号分开。命令行如下:

ffplay -i D:\MTest\football1.mp4 -vf "delogo=x=23:y=15:w=56:h=26:show=1, delogo=x=1:y=190:w=56:h=20:show=1"

使用ffplay是为了快速看到滤镜效果,也方便调整参数。当参数调整到理想状态之后,如果想把处理后的视频保存为一个新的视频文件,可以执行如下命令行:

ffmpeg -i D:\MTest\football1.mp4 -vf "delogo=x=23:y=15:w=56:h=26, delogo=x=1:y=190:w=56:h=20" D:\MTest\football1_nologo.mp4

再通过ffplay来验证一下效果:

ffplay -i D:\MTest\football1_nologo.mp4

本文完!

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值