Python OpenCV中calcOpticalFlowFarneback函数的输出值范围
我正在计算一个视频的光流,使用Python OpenCV中calcOpticalFlowFarneback函数的输出值范围,python,opencv,opencv-python,Python,Opencv,Opencv Python,我正在计算一个视频的光流,使用 flow = cv2.calcOpticalFlowFarneback(prvs,next, None, 0.5, 3, 15, 3, 5, 1.2, 0) 输入分辨率为320x240。我用这段代码计算了从函数接收到的流数据的一些基本统计信息 arr1 = np.load(file_path) y = arr1[:,:,0] x = arr1[:,:,1] if (y_min > y.min()): y_min = y.min() if (y_
flow = cv2.calcOpticalFlowFarneback(prvs,next, None, 0.5, 3, 15, 3, 5, 1.2, 0)
输入分辨率为320x240。我用这段代码计算了从函数接收到的流数据的一些基本统计信息
arr1 = np.load(file_path)
y = arr1[:,:,0]
x = arr1[:,:,1]
if (y_min > y.min()):
y_min = y.min()
if (y_max < y.max()):
y_max = y.max()
我注意到,对于y坐标,最小值和最大值远远超过输入尺寸,即320x240。有人能指出这一观察的原因吗?我无法计算cv2.calcOpticalFlowFarneback函数所期望的值的有效范围。理论上,光流估计中没有最小和最大界限,因为没有块匹配方法的搜索范围。运动矢量由图像梯度和光流方程导出,可以指向图像或视频边界之外。高误差可能是流量估计的严重异常值,这是完全正常的,如果图像中的内容由于照明变化、阴影、运动模糊、编码伪影等而发生显著变化,则可能会导致高误差
y:
min max mean std_dev
-838.59191895 850.21942139 0.01124349 4.41635523
x:
min max mean std_dev
-58.26990128 73.48989105 0.00110086 2.47226620