繁体   English   中英

带有numpy的2D数组列表

[英]List of 2D Arrays with numpy

我有一个二维ndarry /形状为(4096,2048)的数组。 我正在尝试列出此数组的不同部分的列表,这些部分都是40x40。

我试过追加和串联,但是没有运气。 这是我所拥有的:

#img = the 4096x2048 array. 
# I want to store 100 different 40x40 slices in cropped. The first #slice should start at 186, 290

cropped = img[186:226, 290:330]
for i in range(0,100):
    cropped_image = img[a: a+40, b:b+40]
    cropped.append(cropped,cropped_image)
    a += 1
    b += 1
return cropped

您可以使用列表推导来列出这些子数组的列表

import itertools
cropped = [img[i:i+40, j:j+40] for i,j in itertools.product(range(0, 4096, 40), range(0, 2048, 40)]

这会给你一个清单

[img[0:40, 0:40], img[40:80, 0:40], ...
 img[0:40, 40:80], img[40:80, 40:80], ...
 ...]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM