我的坐标为numpy.ndarray
类,尺寸为(200,2)
。基本上是regionprops的输出。
我想索引暗的ndarray
的图像矩阵(也是img.shape = (1000,1000)
)。
我希望能够做到
for prop in region:
img[prop.coords] = 0
但是,发生的是,它没有将坐标视为行,列对。而是将每个数字作为行号并将整个行设置为0。
我该如何解决?
我尝试重塑数组,但是似乎也不起作用。我唯一能想到的就是将这些索引转换为矩阵,该矩阵的尺寸与图像尺寸相同,并且这些坐标为1,所有其他坐标值为0。然后,使用该矩阵进行索引。但是,这似乎没有比使用for循环强行强制执行更有效。
答案 0 :(得分:2)
您必须以元组形式提供坐标才能调用基本索引:
for prop in region:
img[tuple(prop.coords.T)] = 0
答案 1 :(得分:1)
for prop in region:
(min_row, min_col, max_row, max_col) = prop['bboxtuple']
img[min_row:max_row, min_col:max_col] = 0