问题标签 [opencv-stitching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1568 浏览

opencv - OpenCV 图像拼接在右边界后留下空白区域

我曾尝试使用 OpenCV 3.0 进行拼接;结果很好,但也给了我右边的黑色空白区域。

剩下 正确的 结果

'findHomography' 的第一个变量是第二个(我的意思是右图)的匹配点,第二个是第一个(左图)的匹配点。

我交换变量的原因是,如果我运行下面的代码,它会裁剪左图并只显示左图的匹配区域加上右图。(甚至有更大的空白区域)

裁剪图像

你能告诉我如何为此制定正确的投资回报率吗?我怎样才能自动切掉那个空白区域?

0 投票
0 回答
1302 浏览

c++ - 缝合器代码opencv中内存位置的未处理异常

我正在尝试在站点上调试拼接图像的示例。

这是我的完整代码。

但是我收到一个错误:

opencvtest1.exe 中 0x00007FFFB36A8B9C 处的第一次机会异常:Microsoft C++ 异常:内存位置 0x0000003F09CBD6B0 处的 cv::Exception。opencvtest1.exe 中 0x00007FFFB36A8B9C 处未处理的异常:Microsoft C++ 异常:内存位置 0x0000003F09CBD6B0 处的 cv::Exception。

我搜索了未处理的异常,但每个答案都提出了针对这些问题的具体解决方案,因此无法弄清楚在我的特定情况下出了什么问题。

请帮我弄清楚我在代码中做错了什么。

0 投票
0 回答
248 浏览

c++ - 尝试使用 OpenCV Stitcher 测量图像拼接的时间。重新启动/不重新启动程序时的不同时间。内存问题?

我做了很少的应用程序来使用 OpenCV 拼接一些图像。主要是测量缝合的次数。

这是使用 txt 文件中的路径加载照片的功能:

这是 MakePanorama 函数。我在这里实现了简单的计时器来测量拼接图像的时间。我需要知道缝合 2,3,4.. 图像需要多长时间。它包含所有 openCV Stitcher 类函数:

这是主要的:

这是奇怪的事情。当我在一次程序运行中只调用一次 ReadPhotos() 和 MakePanorama() 时,它会在 3 秒内拼接 2 张图像,在 8 秒内拼接 3 张图像,在 16 秒内拼接 4 张图像。

当我用 2、3 和 4 张照片调用 ReadPhotos() 和 MakePanorama() 3 次以在单次运行程序中缝合时,需要 3 秒、30 秒和 130 秒。

所以我可以看到重新运行程序提供了更好的时间。这是为什么?我正在清理 ImageVector。我还应该做什么?

感谢帮助:)

0 投票
3 回答
1191 浏览

opencv - HomographyBasedEstimator 和 findHomography OpenCV 的区别

我正在尝试编写一个使用 SURF 检测器拼接图像的程序,我想知道这两个单应性估计器之间的区别。我了解findHomography使用 RANSAC,是否HomographyBasedEstimator也在使用 RANSAC?

如果不是,有人会指出我使用的纸张HomographyBasedEstimator吗?

提前致谢

0 投票
2 回答
1352 浏览

c++ - 拼接后裁剪图像

在我使用 OpenCV C++ 拼接 2 张图像后,我想裁剪图像以移除拼接图像周围的黑色区域。我会丢失一部分图像,但没关系。图像如下所示:

在此处输入图像描述

如何找到图像角落并裁剪所有黑色区域?

如果有什么好的参考资料,请提供给我一些。

问候,

0 投票
1 回答
408 浏览

opencv - 如果图像已经不失真,如何仅从两个 CameraParam 获得 P(投影矩阵)?

要获得第一个/第二个摄像机的P(在第一台摄像机的新(校正)坐标系中输出 3x4 投影矩阵),我们可以使用这种方法:calibrateCamera()--> stereoCalibrate()--> stereoRectify(),因为那里:为什么我们需要同时输入( camera_matrix 1 & 2) 和 (R and T) 参数到 stereoRectify()?

但是如果我没有:obj_corners、img_corners、distortion_coeffs、R、T。但是我已经有 2 个未失真的图像和两个 CameraParams struct stitch::detail::CameraParams,我从stitch::detail::Estimator2 个图像中的每一个中得到,那么我可以获得P(3x4 投影矩阵),我怎么能做吗?

如果图像已经不失真,如何仅从两个stitch::detail::CameraParams没有任何附加参数的情况下获得 P(投影矩阵)?

0 投票
2 回答
200 浏览

c++ - OpenCV 拼接结果的尺寸不稳定

我正在使用 OpenCV 制作全景图。
但是结果的尺寸并不稳定,整个拼接也不稳定。
每次我得到不同的结果。
有人可以帮助我了解原因是什么,或者拼接管道的哪一部分不稳定?
我正在做最简单的拼接版本,使用缝合功能。
谢谢你。

0 投票
1 回答
2514 浏览

python - 将两个重叠的视频逐帧组合成一帧

我从 2 个独立的摄像机获取视频输入,输出视频之间有一些重叠区域。我已经尝试了一个水平组合视频输出的代码。这是该代码的链接:

https://github.com/rajatsaxena/NeuroscienceLab/blob/master/positiontracking/combinevid.py

直观地解释问题:

重叠

红色部分表示两个图像帧之间的重叠区域。我需要输出看起来像第二张图像,第一帧为蓝色,第二帧为绿色(如第三幅图所示)

我能想到但无法实施的解决方案是,使用 SIFT/SURF 找出两帧的最大距离关键点,然后完全获取第一个视频帧,然后从第二个视频帧中选择非重叠区域并水平组合它们以获得拼接的输出。

让我知道任何其他可能的解决方案。谢谢!

0 投票
2 回答
210 浏览

java - 使用 OpenCV 将两个图像拼接在一起时引发异常

opencv-2.4.9在 Eclipse 中使用 Java 将两个图像拼接在一起。我的代码从以下异常抛出warpPerspective()

warpPerspective方法调用:

单应矩阵的类型是:

有人可以解释为什么会抛出这个异常吗?

0 投票
1 回答
709 浏览

c++ - 使用免费 dll 进行 opencv 拼接

我的项目中有一个可以进行拼接的函数,该函数运行良好,非常简单:

该代码运行良好,我能够很好地拼接图像。唯一的问题是,当我想部署我的代码时,我意识到我必须使用非自由 dll。否则,.exe将不会运行。我的问题是:为了使用Stitcher来自 opencv 的课程,这是否意味着您必须付费,即使您不使用SURFSIFT算法?有没有办法在不使用“非自由 dll”的情况下做到这一点?注意:我正在使用opencv 2.4.2. 编辑:我也用OpenCV 2.4.11