【发布时间】:2014-02-10 16:25:06
【问题描述】:
Android 4.3/4.4 的“球形模式”下的相机应用可以将不同方向的照片拼接成一个球形全景图,质量非常好。
结果说明:
- http://i-cdn.phonearena.com/images/articles/73441-image/google-nexus-4-photo-sphere.jpg
- http://www.studio8apps.com/wp-content/uploads/2013/05/glass_team_pano_resized.jpg
我要做的是为 iPad 实现一个具有完全相同功能的应用程序。
我尝试了两种方法:
OpenCV 2.4.8
OpenCV 2.4.8 提供了一个图像拼接管道,乍一看似乎很有前途。但是,它有两个问题:
管道处理无序输入照片,据我所知,它仅使用图像特征匹配来定位照片之间的几何关系,并且当图像特征提取失败时,管道在空白照片(例如白色)上表现不佳墙壁,蓝天)。但是,iPad 可以提供每张拍摄照片的任意空间方向数据(虽然有噪声),但我不知道如何在 OpenCV 拼接管道中利用这些数据。
我找不到像 PhotoSphere 那样使用此管道生成 180x360 度全景图的方法。向管道中输入各个方向的照片只会产生具有弯曲图像边界的大全景图。
PanoTools
我也试过 PanoTools/Hugin 库,虽然这个库支持预定义的照片方向,但结果很差而且不稳定。另外我尝试使用Focal(beta) app on Google Play,它的球模式也是基于PanoTools/Hugin,他们的结果(在球模式下)似乎并不比我们的好。
我的问题:
- 是否有任何库可以做 Google 的 PhotoSphere 所做的事情?由于我不为商业用途开发,因此任何开源库都是可以接受的。
- 有没有好的算法(或技术报告、学术论文)可用?如果有的话,哪一个是最好的?
- Google 如何实现自己的 PhotoSphere?欢迎提出任何建议。
【问题讨论】:
-
嗨,我正在寻找相同的。你有预付款吗?
-
你找到了可以处理 photosphere 的东西吗?
-
这是一个适合您的库:github.com/robbykraft/Panorama
-
我使用 Google 相机得到的结果非常不稳定,几乎总是有些帧非常不对齐。我不认为它有什么独特的算法,虽然它有很好的用户界面,使用加速度计和指南针来确定何时拍照并显示球体覆盖范围。
-
有人找到解决办法了吗?
标签: algorithm panoramas image-stitching photosphere