使用图像中的像素位置过滤阵列的值



我有一张灰度图像。我将每个像素的值保存到一个文本文档中,并将其预处理并加载为数组,因此我的数组大小为110529。

我的数组外观示例:

import numpy as np
my_array = np.random.randint(low=18., high=36,size=(110592))

然后,我使用OpenCV在我的图像中的面部周围绘制ROI,如下所示:

x, y, w, h = cv2.selectROI(my_frame)

x,y,w,h的值为:

95 2 184 286

我想做的是使用该图像ROI中的像素索引作为参考,并使用这些索引my_array内部的值提取到新阵列,这样我就可以拥有一个具有52624值的滤波阵列,该阵列对应于图像中的ROI

你想要的东西不叫"过滤";而是一个";numpy切片":

x, y, w, h = cv2.selectROI(my_frame)
roi = my_frame[y:y+h, x:x+w]

最新更新