在使用 FFmpeg 对图像进行平移操作时,你可以使用 crop
和 pad
过滤器来实现这一效果,而不需要对图像进行缩放。这种方法允许你将图像向任意方向移动,同时保持原始尺寸不变。
假设你想要将一个图像向右移动 100 像素,向下移动 50 像素,你可以使用以下 FFmpeg 命令:
ffmpeg -i input.jpg -filter_complex "[0:v]pad=iw+100:ih+50:100:50[padded];[padded]crop=iw-100:ih-50:0:0" output.jpg
iw+100
:原始图像宽度加上 100 像素(向右移动)。ih+50
:原始图像高度加上 50 像素(向下移动)。100:50
:在原始图像的左侧和顶部添加 100 像素和 50 像素的填充。iw-100
:从填充后的图像中裁剪出原始宽度减去 100 像素的宽度。ih-50
:从填充后的图像中裁剪出原始高度减去 50 像素的高度。0:0
:从填充后的图像的左上角开始裁剪。pad
过滤器使用黑色填充。如果需要其他颜色,可以使用 color
参数,例如:pad=iw+100:ih+50:100:50:black
。领取专属 10元无门槛券
手把手带您无忧上云