gpt4 book ai didi

imagemagick - 使用 imagemagick 组合图 block 以创建图像

转载 作者:行者123 更新时间:2023-12-02 02:04:27 26 4
gpt4 key购买 nike

我使用 imageMagick 将图像拆分为图 block 。我使用以下命令:

convert -crop 100x100 source.png tile%d.png

这会创建一堆图 block 图像。有没有办法从图 block 中重新创建原始图像?

我正在为不同的 source.png 文件(不同尺寸)执行此操作,所以我并不总是知道每个图像会有多少个图 block (即多少行/列)。

最佳答案

我不认为你能用 tile%d.png 做到这一点,因为你不知道有多少行和列。如果图像大小不是以下的倍数100,你最终会得到不同尺寸的瓷砖。然后你可以通过检查大小以查找非“全尺寸”图 block 的文件。这又会如果原始尺寸为 1000x2000,则分割。

我认为您需要在文件名中包含行和列。你会需要 IM v6.4.8-4 及更高版本。

convert source.png -crop 100x100 -set filename:tile \
"%[fx:page.y/100+1000]_%[fx:page.x/100+1000]" \
+repage +adjoin "file_tiles_%[filename:tile].png"

神奇之处在于 fx:page.x/100+1000100 需要与您的裁剪尺寸相匹配是 x 和 1000 是使文件所有行最多 9999(所以最大 8999行和列)或 899 如果你不想做数学运算从中删除 1000数。

如果您需要 tile%d.png,您可以随时创建这两个集合。当您恢复原件时,您需要执行以下操作:

montage -mode concatenate -tile 4x file_tiles_*.png rejoined.png

您需要计算出列数。这可以从第 1000 行的最后一个......

ls -1 file_tiles_1000* | tail -1 | sed 's/.*_//g; s/\.png//g; s/^.000*//g'

§ Tile Cropping

关于imagemagick - 使用 imagemagick 组合图 block 以创建图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15778186/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com