imagemagick - ImageMagick - 沿内部不透明对象边界分割透明图像
问题描述
我有一个包含三个不透明对象的透明图像,每个对象都由透明度分隔。有没有一个简单的命令——不是一个带有无数选项、参数和随机极客在图片中行走的命令——将这张图片分解成三个部分,每个部分都在一个图片文件中。
请访问此链接以查看图片类型。
我非常感谢你的帮助。
解决方案
如果在类 Unix 系统上,您可以尝试我的使用 ImageMagick 的 multicrop2 bash 脚本。这是一个与 Mark Setchell 的代码示例非常相似的脚本,只是添加了一些花里胡哨的东西。
输入:
multicrop2 -b none -f 1 -u 3 image.png results.png
它将提取每个对象,就像 Mark 对 -connected-components 的使用一样,我的脚本也使用了它。-b none 告诉脚本背景颜色是透明的。-f 1 表示使用 1% 的模糊值将背景与对象分开。-u 3 表示不旋转生成的图像。
结果:
如果你不关心字母,你可以做
multicrop2 -b none -f 1 -u 3 -d 100 test.png results2.png
-d 100 丢弃包含少于 100 个连续像素的任何区域。所以你只会得到上面显示的前 3 张图像。
推荐阅读
- python - 如何更改旭日形图上环的颜色
- oracle - Oracle PDB 的初始化参数
- android-studio - AndroidStudio 保留旧活动会话中的数据并将它们传输到新活动会话
- docker - Docker 构建:无法连接到 Docker 守护进程
- c++ - C++中带指针的父子类关系
- next.js - 使用-react-intl 示例运行时出现问题
- matlab - Matlab 将两个结构合并为一个数组
- json - 用于 API 发布请求的 PySpark DataFrame 到 JSON
- fairlearn - fairlearn 中 selection_rate_group_summary 中的选择率
- algorithm - 在散点图中查找两点之间的距离