Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/314.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

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
Python OpenCV如何用背景替换剪切对象_Python_Opencv_Image Processing_Background Subtraction_Ransac - Fatal编程技术网

Python OpenCV如何用背景替换剪切对象

Python OpenCV如何用背景替换剪切对象,python,opencv,image-processing,background-subtraction,ransac,Python,Opencv,Image Processing,Background Subtraction,Ransac,我有两个图像,一个图像包含一个盒子,另一个没有。由于相机不在同一地点,并且有点平移,所以两张照片之间有一个小的垂直差异。我想剪下盒子,用另一张图片上的信息替换这个洞 我想实现这样的目标(计算机视觉课程的幻灯片) 我曾考虑过使用cv2.createBackgroundSubtractorMOG2()方法,但它似乎不能只处理两张图片 简单地从另一张图片中减去图片也不起作用,因为存在差异。 本课程建议使用RANSAC计算两张图片之间最可能的关系,并减去变化很大的区域。但我该如何填补这些漏洞呢 非常感

我有两个图像,一个图像包含一个盒子,另一个没有。由于相机不在同一地点,并且有点平移,所以两张照片之间有一个小的垂直差异。我想剪下盒子,用另一张图片上的信息替换这个洞

我想实现这样的目标(计算机视觉课程的幻灯片)

我曾考虑过使用
cv2.createBackgroundSubtractorMOG2()
方法,但它似乎不能只处理两张图片

简单地从另一张图片中减去图片也不起作用,因为存在差异。 本课程建议使用RANSAC计算两张图片之间最可能的关系,并减去变化很大的区域。但我该如何填补这些漏洞呢


非常感谢

您可以尝试使用此库来解决背景减法问题


该工具有python包装。

如果您只使用一对图像(或仅使用少量图像),则图像拼接方法优于背景减法

这些步骤是:

  • 计算两幅图像之间的单应性
  • 扭曲第二个图像以重叠第二个图像
  • 用扭曲图像中的像素替换该区域

  • 显示了图像拼接的基本示例。如果两张图像中的人位于不同的位置,您将需要额外的工作,否则调整此代码应该不难。

    感谢您的快速回复,此库是否也可以处理两张图片而不是一个视频?我遵照您的建议,在扭曲图像时遇到了问题。我设法得到单应性,但只有部分图像正确扭曲。我相信这是由于两个摄像机在场景方向(Z方向)的视差造成的。有没有办法纠正这个问题?一种方法是从需要填充的区域的邻域中匹配特征点,以便估计的单应性对该区域更精确。我认为一本好的3D视觉教科书可能包含一个更合理的方法。