如何使用python获得矩阵中某个值周围方框的左上角和右下角坐标?

2024-10-03 06:23:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个二维纽比阵列。让我们考虑下面的例子

    [[0,6,89,255,1,6,7]
    [0,255,89,255,1,1,7]
    [255,255,255,255,255,255,255]
    [1,2,3,4,5,6,7]
    [1,1,255,5,7,3,255]]

我们需要盒子的坐标在某个值附近。例如,对于值255,框在值255周围的坐标将为左上(0,0)和右下(4,6)。在

如何在python中高效地完成它。在

非常感谢。在


Tags: 例子盒子框在值
1条回答
网友
1楼 · 发布于 2024-10-03 06:23:25

答案非常类似于:Is there a "bounding box" function (slice with non-zero values) for a ndarray in NumPy?

from numpy import array, argwhere

A = array([[0  ,6  ,89 ,255,1  ,6  ,7  ],
           [0  ,255,89 ,255,1  ,1  ,7  ],
           [255,255,255,255,255,255,255],
           [1  ,2  ,3  ,4  ,5  ,6  ,7  ],
           [1  ,1  ,255,5  ,7  ,3  ,255]])

B = argwhere(A==255)
(ystart, xstart), (ystop, xstop) = B.min(0), B.max(0) 

相关问题 更多 >