问题标签 [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.
android - 使用OpenCV在android中进行图像拼接
我正在尝试在android中拼接像全景视图这样的图像。我正在使用Android NDK和OpenCv库。我正在使用下面的Jni代码来拼接图像
第一种方法:
上面的代码适用于某些图像,但如果我使用相机拍摄图像并尝试使用上面的代码缝合这些图像,那么它不起作用。我使用下面的代码从 android 调用本机代码
方法声明
第二种方法:
我还尝试使用 SurfFeatureDetector 拼接图像,其代码可在此处获得。在此代码中,我得到了未定义引用的编译错误 `cv::SURF::SURF(double, int, int, bool, bool)'。虽然我有在标头和 NDK 的构建路径中包含所有必要的库。我不明白问题是什么?
你们中的任何人对上述两种图像拼接方法或任何其他图像拼接的新想法或方法有任何想法,请建议我。提前致谢。
opencv - 在拼接模块中使用 Opencv API(曝光补偿器类)
我正在尝试使用包含该信息的另一个图像(img2)来填充图像(img1)中的孔(在我消除前景之后)。
在通过 Homograpy (H) 使用我的方法扭曲 img2 之后,我将从 img2_warped 获取信息以填充 img1。然后我想做曝光补偿。
现在我看到 OpenCV 提供了一个我可以使用的模块(拼接)曝光补偿器类。我的问题是在
输入左上角和蒙版的确切含义是什么?在我的情况下如何生成它们?
我看过拼接示例,但我确实在做与拼接不同的事情,所以我不能使用它的“warp”功能来产生“coners”。
例如,我有这两个图像。
产生的角是
角球 #0 : [-270, 325]
角球 #1 : [-86, 327]
抱歉,由于声誉问题,我无法附上图片。有谁可以解释角落的含义?
c++ - OpenCV findHomography 断言失败错误
我正在尝试构建brief_match_test.cpp
OpenCV 附带的示例程序,但是当我运行程序时,我不断从 cv::findHomography() 函数中收到此错误:
我正在像这样编译它:
我在程序中添加了一些东西来显示 FAST 算法找到的关键点,但没有触及处理单应性的部分。我将包含我修改后的示例,以防万一我搞砸了:
opencv - OpenCV 的拼接模块是否能够拼接从平行运动相机拍摄的图像?
我想知道 OpenCV 的拼接(http://docs.opencv.org/modules/stitching/doc/stitching.html)模块是否能够拼接从平行运动到平面的相机拍摄的图像被拍照?
我知道通常所有的全景拼接工具都假设相机的中心是固定的,并且相机只经历平移或俯仰等运动。
我在想是否可以使用这个模块来拼接从平行于平面移动的相机拍摄的图像。这个想法是创建一个地面的全景图。
问候
opencv - 在opencv(或其他)中拼接空中镜头的技术
我正在尝试使用 openCV 拼接器类来组合航拍图像。我遇到的问题是 Stitcher 类是为旋转相机设置的,我现在有一个平移和旋转相机。
有没有办法处理旋转和平移相机(到目前为止在谷歌上没有找到任何建议或文件等)?特别是在捆绑调整区域,因为这给了我 nan 的。
opencv - 有人可以解释 OpenCV Stitcher 的参数吗?
我正在尝试减少拼接算法的计算时间。我得到了一些我想按照定义的顺序缝合的图像,但似乎cv::stitcher.stitch()
函数试图将每个图像与其他图像缝合。
我觉得我可能会在 OpenCV Stitcher 的参数中找到解决方案。如果不是,也许我必须修改函数或尝试其他方法来减少计算时间。但由于我几乎是初学者,我不知道如何。我知道使用 GPU 可能是一种可能性,但我目前还没有在 Ubuntu 上运行 CUDA。
如果您能给我一些建议,那就太好了!
OpenCV Stitcher 模块的参数:
从stitcher.cpp:
https://code.ros.org/trac/opencv/browser/trunk/opencv/modules/stitching/src/stitcher.cpp?rev=7244
opencv - 拼接模块opencv的问题
我一直在尝试使用 OpenCV 的 Stitching 模块来拼接图像,为此我从一个图像开始,并将其拆分为两个图像中的一些重叠部分。
缝合有效,我得到了输出。
但是当我开始尝试用相机拍摄的两张图像时,我开始得到奇怪的结果。
删除了一些图像,因为无法匹配它们或图像太相似:(2)。尝试减少 --match_conf 值和/或检查您是否正在缝合重复项。需要更多图片
尝试更改但match_conf
没有成功,还尝试了两个输入图像的变化。
然后只是为了实验,我将图像转换为另一种格式(png -> jpg),我看到的是拼接模块没有给出结果,而是给出了与上面引用的相同的问题。
我比较了在成功和失败案例中获得的结果,我不太确定出了什么问题,因为在图像中找到的匹配项在两种情况下几乎相同。
成功案例::查找特征...图像#1 中的特征:1327 图像#2 中的特征:1176 查找特征,时间:0.187466 秒成对匹配 1->2 匹配:156 1->2 & 2->1 匹配: 213.成对匹配,时间:0.184411秒...
失败案例::查找特征...图像#1 中的特征:1326 图像#2 中的特征:1180 查找特征,时间:0.183571 秒成对匹配 1->2 匹配:151 1->2 & 2->1 匹配: 207.成对匹配,时间:0.180866秒...
有人可以帮我吗?
问候
opencv - 使用 OpenCV 拼接器类从多个图像创建全景图:减少计算时间的想法
在使用 OpenCV 拼接器类将图像拼接到全景图时,我注意到计算时间并没有像我预期的那样随着图像数量线性增加。它呈指数级增长。我想知道为什么......我认为这是因为算法试图将每张图像与其他图像拼接,但我得到了指定的图像顺序,所以这不是必需的,我希望我可以通过这种方式减少计算时间。
但是我认为我确定了代码中导致高计算时间的部分(至少)。
如果我没有完全弄错,它来自第 446-450 行: https ://code.ros.org/trac/opencv/browser/trunk/opencv/modules/stitching/src/stitcher.cpp?rev=7244
也许有人可以向我解释这个代码部分,甚至告诉我如何调整算法以指定顺序拼接图像,而不是尝试将每个图像与其他图像拼接。我希望你明白我的意思,因为我真的需要帮助。我现在完全卡住了...
android - opencv拼接代码在eclipse for android App中使用ndk移植时显示错误
我正在尝试使用OpenCV
. 我可以使用 ndk 编译 c++ 代码。OpenCV
当我在 eclipse 中用作本机代码时,stitching_detailed 示例显示错误(主要是变量未解析)和库中的一些结构,尽管它们已在 eclipse 中注册(因为它通过光标悬停显示)当我访问他们的成员元素时,它显示未解析的变量。完全相同的代码在没有 NDK 的情况下通过命令行运行良好,但我无法使用 NDK 移植它。
有人在这里帮助我。
c++ - 使用 OpenCV 进行低质量空中拼接
最近,我一直在尝试在 OpenCV 中拼接由直升机拍摄的低质量、低分辨率 (320x180) 图像。这是我得到的:
http://postimg.org/gallery/1rqsycyk/
拍摄的照片几乎是最低点,你可以看到重叠很多。每个镜头之间都有一个平移,我试图将物体放在地面上,以保持场景几乎是平面的,以免干扰单应性的要求。无论如何,在拼接过程中没有考虑到很多图片。
这里再举一个例子,(只有三张图片拼接在一起):
http://postimg.org/gallery/1wpt3lmo/
我正在使用 Surf Featuredetector,并认为图像质量低下不适合它,但我不确定。
这是我使用的代码,我在类似的问题OpenCV 非旋转图像拼接中找到了它,并决定使用它,因为它比我的效果更好:
我的另一个猜测是手动进行拼接过程,而不是使用 Stitcher 类,但我不确定它是否会发生很大变化。所以问题是:尽管图像质量低,我怎样才能使拼接过程更加健壮?另外:定义 ROI 是否只对性能有影响,还是对实际拼接的机会有影响?