我试图计算运动光流,我试图减少噪音,通过阈值较小的值。当计算运动流时,我也会得到负值,我希望保留这些值,但一旦应用阈值,这些值就会被丢弃。在
我曾想过用绝对值来达到这个目的,但是,我怎样才能找回负片呢?在
另外,我正在使用numpy数组,如果这有帮助的话:
flow = cv2.calcOpticalFlowFarneback(frameGray, frame1Gray, 0.5,1,3,15,3,5,1)
thresh_flow = cv2.threshold(np.absolute(flow), 5, 255, cv2.THRESH_TOZERO)
Numpy提供非常强大的indexing capabilities。其中之一是使用布尔数组建立索引。可以将与条件匹配的元素指定给某个值,该值似乎是您想要的。例如
将为
^{pr2}$flow
中绝对值太接近零的每个元素赋值。假设flow
如下所示:应用此操作的结果是:
它正确地去除了少量的正负元素,但保留了负元素的符号。在
相关问题 更多 >
编程相关推荐