将图像划分为块

时间:2019-10-10 03:37:45

标签: python numpy opencv image-processing

enter image description here嗨,我想将一幅图像(200x200)分成大小相等的100个块,然后我想找到每个块的平均值。关于如何将图像划分为10x10块(10行10列),我已经进行了很多研究,但是无法理解如何实现的概念。谁能帮忙。

1 个答案:

答案 0 :(得分:0)

我假设您有numpy,因为您将其作为标签。如果没有“枕头”模块,请运行

pip install Pillow

抓住那个。以下代码会将图像分割成400个10x10的块。

import numpy as np
from PIL import Image

image = Image.open("your_file.jpg", "r")
arr = np.asarray(image)
arr = np.split(arr, 20)
arr = np.array([np.split(x, 20, 1) for x in arr])

然后,要抓取第i-j个块,可通过以下方法将其索引:

arr[i][j]