使用Python从图像中提取补丁

3

我有一张图片,想要提取6个小块。

我尝试了sklearn.feature_extraction.image.extract_patches_2d函数,但结果不符合我的需求。我没有找到其他参数,例如步幅。

请问如何实现我的需求?

2个回答

3

2
这是你的幸运日,你可以使用大多数Linux发行版和可用于macOS和Windows的 ImageMagick 而无需编写任何代码来实现。 因此,在终端上(在Windows上为命令提示符),从这个2048x1536像素的图像开始:

输入图片描述

您可以运行:
magick image.png -crop 512x512 slice-%02d.png

这会给你12个切片,每个大小为512x512:

最初的回答:

-rw-r--r--@ 1 mark  staff  3205 23 Jan 18:45 slice-00.png
-rw-r--r--@ 1 mark  staff  3205 23 Jan 18:45 slice-01.png
-rw-r--r--@ 1 mark  staff  3205 23 Jan 18:45 slice-02.png
-rw-r--r--@ 1 mark  staff  3205 23 Jan 18:45 slice-03.png
-rw-r--r--@ 1 mark  staff  3148 23 Jan 18:45 slice-04.png
-rw-r--r--@ 1 mark  staff  3148 23 Jan 18:45 slice-05.png
-rw-r--r--@ 1 mark  staff  3148 23 Jan 18:45 slice-06.png
-rw-r--r--@ 1 mark  staff  3148 23 Jan 18:45 slice-07.png
-rw-r--r--@ 1 mark  staff  3239 23 Jan 18:45 slice-08.png
-rw-r--r--@ 1 mark  staff  3239 23 Jan 18:45 slice-09.png
-rw-r--r--@ 1 mark  staff  3239 23 Jan 18:45 slice-10.png
-rw-r--r--@ 1 mark  staff  3239 23 Jan 18:45 slice-11.png

如果我们将它们再次拼在黄色背景上,你会得到:最初的回答。
magick montage -background yellow -geometry +10+10 slice* montage.png

如果您使用的是ImageMagick v6或更早版本,请使用以下命令:

输入图像描述



最初的回答:如果你使用的是ImageMagick v6或更早版本,请使用以下命令:
convert image.png -crop 512x512 slice-%02d.png

并且

montage -background yellow -geometry +10+10 slice* montage.png

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接