问题标签 [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 投票
2 回答
2724 浏览

opencv - 视频转全景图

在 opencv 或任何其他框架中有点新,我有一个来自静态相机的视频,我想从中创建一个全景图像。我确实尝试将视频分割成帧,然后将所有帧拼接在一起,但速度太慢了。还有其他解决方案吗?

0 投票
0 回答
207 浏览

c++ - 修改 OpenCV Sticker 类以提高速度

据我了解,OpenCV Stitcher 类将每个输入图像与所有其他图像匹配,这允许推送无序图像但获得正确的输出全景图。但这当然会成倍地减慢拼接过程。

在我的情况下,用户将捕获从左到右移动相机的图像,因此图像的顺序是已知的。

如何修改 Stitcher 类以仅比较左右图像,因此在匹配时无需将一个与所有图像进行比较?

谢谢

0 投票
0 回答
1384 浏览

c++ - 拼接来自 2 个相对于彼此静止的重叠相机的图像

我是 CV 的新手,并试图将两台摄像机的视频拼接在一起,这两台摄像机相对于另一台是静止的。细节:

相机并排放置,我可以调整它们之间的旋转角度。摄像机将相对于世界移动,因此场景将发生变化。

要拼接的帧数大约是 300 帧(每帧由两张图片组成,每个相机一张)。

我不需要实时拼接,但我想利用我知道相机的相对位置这一事实尽可能快地完成拼接。每张图片的分辨率都比较高,900x600左右。

现在我正处于我有代码缝合 2 张单张图片的阶段,由http://ramsrigoutham.com/2012/11/22/panorama-image-stitching-in-opencv/提供

主要阶段是:

使用 SURF 检测器在两个图像中找到与 SURF 描述符匹配的 SURF 描述符 使用 FLANN 匹配器 后处理匹配以找到良好的匹配 使用 RANSAC 使用匹配的 SURF 描述符估计单应矩阵 基于单应矩阵扭曲图像 我的问题是:我该如何根据我已经知道相机位置的事实优化流程?

理想情况下,我想做一些初始计算以找到相机视角之间的转换,然后重用它。但我不确定我的基本简历知识是否确实可行,如果可以,我可以使用什么转换。

我知道计算一次单应矩阵并重用它是行不通的,因为场景正在改变。

另外两种可能:

  1. 我发现了一个类似的案例(但固定场景),其中变换计算一次并重用。这是哪个转换,它可以在我的情况下工作吗?

  2. 我发现的另一种可能是使用初始知识找到两张图片之间的重叠区域,而忽略其余图片以节省时间。相关线程

任何帮助将不胜感激!罗恩

0 投票
1 回答
874 浏览

opencv - 具有 ROI 向量的 OpenCV Stitcher

我正在尝试使用以下代码缝合 5 个具有 ROI 的图像。length_error即使vImg向量和rois大小相同,我也会不断收到未处理的内存异常。另外,为什么rois应该是向量的向量Rect?内部向量的大小为 1。

0 投票
2 回答
2351 浏览

c++ - Image Stitching details with OpenCV

I am trying to get deep into stitching. I am using cv::detail.

I am trying to follow this example:

I roughly understand the stitching pipeline.

there is a function matchesGraphAsString() which return a graph. I am wondering how does it even compute this graph. Further, what is the dfination of confidence interval in this case.

The output is in DOT format and a sample graph looks like

What does label, Nm, and Ni mean here? The official document seems to be lacking these details.

0 投票
0 回答
790 浏览

opencv - OpenCV: Error trying to stitch images

I'm trying to create kind of a panorama using the Stitcher::stitch function on OpenCV.

I take around 24 pictures to stitch them but the final result (Status = OK) is a 1x1 image (black pixel).

If I remove some of the images, it works OK but maybe I'm missing some parts of the image.

What am I doing bad? Thank you in advance.

Update:

I'm trying to add rois taking the 50% of every image. For the first image I take the right 50%. For the last, the left 50%, and for the rest I take 50% of left and 50% of right:

and my function is:

void processImage(vector imgs){

}

And my results (cout) are:

0 // (OK)

[1 x 1]

0 投票
1 回答
433 浏览

c++ - OpenCV 将浮点数据输入图像拼接过程

我是 openCV 和 C++ 的新手。如果有人能帮助我理解这个概念,我将不胜感激。我有浮点精度的数据点文本文件。每个文本文件实际上是一个范围图像(从 3D 轮廓仪获得的图像)。我想用openCV中的拼接器拼接这些图像。现在,我想将这些文本文件输入到 openCV 中,并以浮点精度获得最终的拼接图像。

现在,问题是:

缝合器是否也适用于浮点数?或者它必须是 char,... 格式?

提前致谢!

0 投票
1 回答
481 浏览

c++ - OpenCV 拼接,C++ - 未处理的异常

我试图将三个图像拼接在一起。为此,我选择了 OpenCV 2.4.10 和 Microsoft Visual C++ 2010 Express。
图像为 1500x1500 像素,读取时为 CV_8UC3。
我正在为 32 位构建,并且已经使用 OpenCV 进行了其他一些工作,所以我猜该项目的路径设置正确等。

奇怪的是,我只是有时会收到这个错误,而且只有当我尝试缝合两个以上的图像时。

这里的错误信息:

之后我自动进入“Chores.cpp”的第 99 行或“TaskCollection.cpp”的第 189 行,所以我认为这就是错误的根源。(路径 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\crt\src)

这里的代码:

有人有建议吗?

0 投票
1 回答
1925 浏览

algorithm - 使用我拥有的所有拼接算法无法拼接图像后不知道该怎么办

我一直在尝试使用我在网上找到的一些算法以及使用 OpenCV 的拼接来拼接我从 360 度摄像机获得的四张图像(它由四个小型摄像机组成,每个摄像机给我一个对应于 90 度角的图像)算法。我可以使用这些代码来拼接我在网络上获得的一些图像,但是当我尝试使用我的 360 相机生成的图像时失败了。

尝试拼接我的图像时,所有代码无一例外都崩溃了。使用 OpenCV 的算法,我得到的错误信息是:

Can't stitch images, error code = 1这意味着我在图像交叉点之间没有足够的特征。

我想知道的是我应该忘记软件(因为每个代码都适用于一定范围的图像),并开始思考我的图像是否具有足够的功能来进行缝合过程。因此,我正在考虑放弃为这个硬件创建这种调整的想法。“这台相机产生图像的方式只是让我在每个图像之间没有足够的特征来完成拼接过程。” 这就是我开始意识到的想法。

我应该得出这样的结论吗?

0 投票
1 回答
584 浏览

c++ - Opencv调整针的大小

我正在用 Opencv 中的视频制作马赛克。我正在使用这个例子来拼接视频的帧:http: //docs.opencv.org/doc/tutorials/features2d/feature_detection/feature_detection.html。最后,我这样做是为了将新框架与在通过的迭代中创建的针迹合并:

所以这是我的问题:显然每次迭代时针迹都会变大,那么我该如何调整它的大小以使其适合final_img图像?

编辑 对不起,但我不得不删除图像