在numpy中存储的图像中的XY坐标?

11 浏览
0 Comments

在numpy中存储的图像中的XY坐标?

我有一个96x96像素的numpy数组,它是一张灰度图像。如何找到并绘制该图像中像素强度最大的x,y坐标?\n图像大小为(96,96)。\n看起来很简单,但我找不到任何代码片段。\n请帮忙一下 🙂

0
0 Comments

问题的出现原因是需要找到图像中最大值的行列坐标,以及找到所有最大值的行列坐标。解决方法是使用numpy中的argmax函数结合unravel_index函数来获取最大值的行列索引,然后使用matplotlib.pyplot中的imshow函数来绘制图像,并使用Boolean mask来标记最大值的位置。

代码如下:

import numpy as np
import matplotlib.pyplot as plt
# 生成随机图像
a = np.random.rand(96, 96)
# 获取最大值的行列索引
rowind, colind = np.unravel_index(a.argmax(), a.shape)
# 绘制图像并标记最大值位置
plt.imshow(a == a.max())
plt.show()

如果需要找到所有最大值的行列索引,可以参考stackoverflow中的一篇帖子,其中有一个答案提到了scipy.signal.find_peaks_cwt函数,可以用于找到所有峰值的位置。

0