使用 FFmpeg 仅增强图像的一部分的对比度?
Enhance the contrast of only a portion of an image using FFmpeg?
我可以使用以下命令增强整个图像的对比度 FFmpeg eq filter:
ffmpeg -i input.png -vf eq=contrast=2 -c:a copy output.png
但是我可以使用 FFmpeg 只增强图像的一部分(比如第二象限)的对比度吗?我检查了另一个关于 how to apply a filter only on a certain duration of a film 的 post。为了我的目的,我可以以某种方式在上面的代码中插入类似 enable='between(x,0,10)*between(y,0,10)'
的东西吗?谢谢
square/rectangle地区
如果要应用效果的区域是正方形或矩形,您可以:
将 eq 应用于右上象限的示例:
ffmpeg -i input.png -filter_complex "crop=in_w/2:in_h/2:out_w:0,eq=contrast=2[c];[0][c]overlay=overlay_w:0" output.png
复杂的形状
使用与图像大小相同的灰度蒙版:
ffmpeg -i image.jpg -i mask.png -filter_complex "[0]eq=contrast=2[contrast];[contrast][1]alphamerge[alf];[0][alf]overlay=format=auto" output.png
我可以使用以下命令增强整个图像的对比度 FFmpeg eq filter:
ffmpeg -i input.png -vf eq=contrast=2 -c:a copy output.png
但是我可以使用 FFmpeg 只增强图像的一部分(比如第二象限)的对比度吗?我检查了另一个关于 how to apply a filter only on a certain duration of a film 的 post。为了我的目的,我可以以某种方式在上面的代码中插入类似 enable='between(x,0,10)*between(y,0,10)'
的东西吗?谢谢
square/rectangle地区
如果要应用效果的区域是正方形或矩形,您可以:
将 eq 应用于右上象限的示例:
ffmpeg -i input.png -filter_complex "crop=in_w/2:in_h/2:out_w:0,eq=contrast=2[c];[0][c]overlay=overlay_w:0" output.png
复杂的形状
使用与图像大小相同的灰度蒙版:
ffmpeg -i image.jpg -i mask.png -filter_complex "[0]eq=contrast=2[contrast];[contrast][1]alphamerge[alf];[0][alf]overlay=format=auto" output.png