Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中高效地从图像中提取一定大小的补丁_Python_Image_Image Processing - Fatal编程技术网

在python中高效地从图像中提取一定大小的补丁

在python中高效地从图像中提取一定大小的补丁,python,image,image-processing,Python,Image,Image Processing,我有一个图像,我想从中提取不同大小的正方形补丁 我需要密集的补丁,也就是说,我需要在图像中的每个像素上都有一个补丁 例如,如果图像为100x100,而面片大小为64 结果将是10000大小为64x64 例如,这些补丁与我们用于过滤操作的补丁相同 如果有边界,我想镜像图像 使用python提取补丁最有效的方法是什么 谢谢我想你在找这样的东西: sklearn 您可能需要查看和: 撇渣 将Stefan van der Walt的答案稍微扩展一下: 安装撇渣器 在Ubuntu上 $ sudo apt-

我有一个图像,我想从中提取不同大小的正方形补丁

我需要密集的补丁,也就是说,我需要在图像中的每个像素上都有一个补丁

例如,如果图像为
100x100
,而面片大小为
64

结果将是
10000
大小为
64x64

例如,这些补丁与我们用于过滤操作的补丁相同

如果有边界,我想镜像图像

使用python提取补丁最有效的方法是什么


谢谢

我想你在找这样的东西:

sklearn 您可能需要查看和:

撇渣 将Stefan van der Walt的答案稍微扩展一下:

安装撇渣器 在Ubuntu上

$ sudo apt-get install python-skimage

文档中的示例
这个问题太模糊了——你能提供一些细节吗?@Stefan van der Walt,现在好些了吗?如果仍然有一些困惑,请让我知道,虽然,这是非常好的,但它仍然不能解决边界像素的问题,其中需要镜像。它只是在图像中滚动,您可以使用
skimage.util.pad
预先添加首选边界。+1对于
skimage.util.pad
,我需要在任意位置进行补片,有时在边缘附近,当我离开图像时,我想要零。
$ sudo apt-get install python-skimage
$ pip install scikit-image
>>> from skimage.util import view_as_windows
>>> import numpy as np
>>> A = np.arange(4*4).reshape(4,4)
>>> A
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]])
>>> window_shape = (2, 2)
>>> B = view_as_windows(A, window_shape)
>>> B[0]
array([[[0, 1],
        [4, 5]],

       [[1, 2],
        [5, 6]],

       [[2, 3],
        [6, 7]]])

>>> B
array([[[[ 0,  1],
         [ 4,  5]],

        [[ 1,  2],
         [ 5,  6]],

        [[ 2,  3],
         [ 6,  7]]],


       [[[ 4,  5],
         [ 8,  9]],

        [[ 5,  6],
         [ 9, 10]],

        [[ 6,  7],
         [10, 11]]],


       [[[ 8,  9],
         [12, 13]],

        [[ 9, 10],
         [13, 14]],

        [[10, 11],
         [14, 15]]]])