| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 360度全景问题--首尾相接 -> 正文阅读 |
|
[人工智能]360度全景问题--首尾相接 |
把相机固定在一个点,然后旋转相机得到了4幅图,按顺序是img_A、img_B、img_C、img_D 相互之间有点重叠,整体景象覆盖360度。 ??? ?参考: OpenCV总结6——stitcher_windxgz的博客-CSDN博客_opencv stitcher Opencv 使用串联匹配图像拼接_Enjoy lab and life的博客-CSDN博客 1、我以前读研时搞的东西都只是考虑拼接成一幅完整图片,而从来没考虑过使用PTGuiViewer查看是否img_A和img_D之间是否可以无缝巡航。因为以前只是将img_D拼接到img_C,再将结果拼接到img_B,再将新结果拼接到img_A,形成的最终结果可以通过PTGuiViewer看到一个很大的缝隙: 如上图看到很大的一条裂缝!!!这说明首尾并不相接。 2、针对上述情况,我查了些资料,发现很少资料阐述。首先要进行处理选择一幅图信息最少的地方作为首和尾,因为信息少所以肉眼看起来无缝感更强。 如上所述,我选的是img_D,将img_D从中央一分为二:img_D_left、img_D_right。所以此时的顺序就是img_D_right、img_A、img_B、img_C、img_D_left,此时如果将这5幅图从右到左拼接起来,发现还是有缝隙: 可以看到这条缝隙。其实即使不用PTGui也可猜到不会无缝,因为下图右上角和右边有缝,这是因为累积误差所致! opencv中是: A、估计完相机参数CameraParams 、 B、然后用光束平差法BundleAdjusterRay对相机参数进行调整、并得到每幅图的焦距 C、对焦距排序,取中值作为调整参数来再次调整相机参数,并得到每幅图的新尺寸和中心 D、然后对每幅图变换。 可以看到缝隙的确改善很大,但是仍有缝隙。 3、然后我又查了资料,将结果图的四个顶点计算新的变换矩阵,以弥补这条缝隙: 可以看到虽然没缝隙了,但不能这样强制拉扯!!! 4、然后查资料发现只有img_D_right、img_D_left之间完全对齐即首尾必须完全对齐时,如下图,通过PTGui可看出整组图之间已无缝,也无错位,实现了360度无缝首尾巡航!!! ?img_D_right放在result最左端一直不动,然后将result的右端完全和img_D_left匹配才会有上图的结果!!!才能达到完全无缝。 5、在进行上个步骤时,发现为什么有很多将右边图拼到左边,但很少有人将左边图拼到右边的情况???我发现我把左图拼到右边时不能达到上图的完全无缝,而是会有缝如下图: ?可以看到有细缝,从下到上慢慢变大!!!是不是因为这样所以才没人这样做??我查了下: 但我试了下翻转图像,然后始终用右边拼到左边,可发现并不对,缝很大!为什么不能flip然后按常规的右图拼到左图,再flip回来?!!!有大神的话麻烦告知。 ?但第一个回答那种方法我还没空试,偶尔周末才有时间搞。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 13:47:12- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |