Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么要使用OpenCV';s Opticalflow返回流在完全相同的图片之间?_Opencv_Image Processing_Computer Vision_Opticalflow - Fatal编程技术网

为什么要使用OpenCV';s Opticalflow返回流在完全相同的图片之间?

为什么要使用OpenCV';s Opticalflow返回流在完全相同的图片之间?,opencv,image-processing,computer-vision,opticalflow,Opencv,Image Processing,Computer Vision,Opticalflow,我使用opencv Opticalflow函数(cv2.calcOpticalFlowFarneback)来比较两个图像是否移动。 我认为不应该在完全相同的图片文件之间找到流,但流发生了。 发生了什么事 源代码 from utils.compute_optical_flow import * import cv2 import os def compute_dense_optical_flow(prev_image, current_image): old_shape = cu

我使用opencv Opticalflow函数(cv2.calcOpticalFlowFarneback)来比较两个图像是否移动。 我认为不应该在完全相同的图片文件之间找到流,但流发生了。 发生了什么事

源代码

from utils.compute_optical_flow import *
import cv2
import os



def compute_dense_optical_flow(prev_image, current_image):
    old_shape = current_image.shape
    prev_image_gray = cv2.cvtColor(prev_image, cv2.COLOR_BGR2GRAY)
    current_image_gray = cv2.cvtColor(current_image, cv2.COLOR_BGR2GRAY)
    assert current_image.shape == old_shape
    hsv = np.zeros_like(prev_image)
    hsv[..., 1] = 255
    flow = None
    flow = cv2.calcOpticalFlowFarneback(prev=prev_image_gray,
                                      next=current_image_gray, flow=flow,
                                      pyr_scale=0.8, levels=15, winsize=5,
                                      iterations=10, poly_n=5, poly_sigma=0,
                                      flags=10)

    mag, ang = cv2.cartToPolar(flow[..., 0], flow[..., 1])
    hsv[..., 0] = ang * 180 / np.pi / 2
    hsv[..., 2] = cv2.normalize(mag, None, 0, 255, cv2.NORM_MINMAX)
    return cv2.cvtColor(hsv, cv2.COLOR_HSV2BGR)


now_path = os.path.dirname(os.path.abspath(__file__))

img_one = cv2.imread(now_path + "/tests/t.jpg")
img_two = cv2.imread(now_path + "/tests/t.jpg")

flow_img = compute_dense_optical_flow(img_one, img_one)
cv2.imwrite(now_path + "/tests/result_t.jpg",flow_img)


您能否提供utils.compute\u optical\u flow import*中的代码
,以便我们重现该问题?我在这里包含了compute\u optical\u flow函数代码。这就是全部。谢谢你的评论@Frank