首页 > 解决方案 > ffmpeg - 基于颜色的区域条件模糊

问题描述

在 FFmpeg 中是否有可能根据颜色值模糊视频区域?

例如,被认为是“绿色”的视频的所有像素都应该得到一个框模糊

或者,我也可以考虑模糊整个视频,但每个像素/区域的模糊强度应该取决于“绿色”的数量

有一些聪明的过滤魔法吗?

标签: ffmpegcolorsconditional-statementsblur

解决方案


没有聪明的过滤器。你能得到的最接近的是这个

ffmpeg -i in -vf "split=2[blr][key];[blr]boxblur[blr];[key]chromakey=0x70de77[key];[blr][key]overlay" -c:a copy out

视频被分成两份。在一个副本中,整个图片都是模糊的。在另一个副本中,色度键过滤器用于使具有所需像素颜色的区域透明。然后将此副本覆盖在模糊副本上。在键控副本上有透明度的地方,模糊部分将从下面显示出来。


推荐阅读