如何使用命令或 shell 脚本从照片中剪切透明部分

Max*_*Max 5 shell ubuntu command

我无法在命令行中剪切照片。我需要剪切照片的透明部分并使用命令行或 shell 脚本保存 事先谢谢。如果我能做到,我会将它应用于 4000 张照片,这将是一个很大的帮助 更清楚地解释我想要做什么 我有一个像这样的 png 图片 在此处输入图片描述

我想要这样的图像

在此处输入图片说明

我只能使图像透明,有什么方法可以从 png 文件中剪切底部透明部分

在此先非常感谢

Mar*_*ell 6

没有看到你的图像很难,但你可以尝试使用ImageMagick,如下所示:

convert input.png -trim +repage output.png
Run Code Online (Sandbox Code Playgroud)

看看是否有效。如果它几乎有效,请尝试:

convert input.png -fuzz 25% -trim +repage output.png
Run Code Online (Sandbox Code Playgroud)

如果有效,请进行备份,然后使用GNU Parallel完成所有操作:

find . -name \*.png -print0 | parallel -0 mogrify -trim +repage {}
Run Code Online (Sandbox Code Playgroud)


fmw*_*w42 2

您遇到的问题是 Mark Setchell 的 Imagemagick 命令被忽略(可能是因为他当时没有您的图像)是右下角的橙色滚动条。您必须将橙色更改为白色,然后按照马克的建议进行修剪。您的图像有一个 Alpha 通道,但它是完全不透明的,因此也可以删除。

convert input.png -alpha off -fuzz 10% -fill white -opaque "rgb(241,144,105)" -trim +repage output.png
Run Code Online (Sandbox Code Playgroud)


在此输入图像描述

请注意,使用太大的模糊值也会将右上角的红色按钮的颜色更改为白色。所以 -fuzz 10% 似乎是一个很好的折衷方案。