gpt4 book ai didi

python - 从两点之间的 numpy 数组获取值

转载 作者:行者123 更新时间:2023-11-28 22:51:03 25 4
gpt4 key购买 nike

我有一个存储在二维 numpy 数组中的图像。我想从该数组中提取矩形中的所有像素值。矩形定义为 ((x1,y1),(x2,y2)),其中所有 x 和 y 自然都是数组索引。

我可以使用嵌套的 for 循环提取像素值,但是执行此操作的 pythonic 方法是什么?

最佳答案

只需使用切片。例如:

In [3]: a = numpy.arange(20).reshape((4,5))

In [4]: a
Out[4]:
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]])

In [5]: a[2:4, 3:5]
Out[5]:
array([[13, 14],
[18, 19]])

通常,您可以用切片替换索引,其中切片的形式为 start:stop 或可选的 start:stop:step 并且允许变量:

In [6]: x=2 ; print a[x-1:x+1, :]
[[ 5 6 7 8 9]
[10 11 12 13 14]]

关于python - 从两点之间的 numpy 数组获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22081288/

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