标签: photosphere

Android 4.3/4.4上的Google PhotoSphere背后的算法

Android 4.3/4.4下的"球体模式"下的相机应用程序可以将来自不同方向的照片拼接成一个球形全景,质量非常好.

结果图:

我要做的是为iPad实现具有完全相同功能的应用程序.

我尝试了两种方法:

OpenCV 2.4.8

OpenCV 2.4.8提供了一个图像拼接管道,乍一看似乎非常有前途.但是,它有两个问题:

  1. 管道处理无序输入照片,据我所知它只使用图像特征匹配来定位照片之间的几何关系,并且当空白照片(例如白墙,蓝天)上的图像特征提取失败时,管道表现不佳.但是,iPad可以提供每张拍摄照片的任意空间方向数据(虽然有噪音),但我不知道如何在OpenCV拼接管道中使用这些数据.

  2. 我无法找到一种生成180x360度全景图的方法,就像PhotoSphere使用此管道一样.向所有方向上的照片馈送管道仅产生具有弯曲图像边界的大型全景图.

PanoTools

我也尝试过PanoTools/Hugin lib,虽然这个lib支持预定义的照片方向,结果非常差且不稳定.此外,我尝试在Google Play上使用Focal(beta)应用,其球体模式也基于PanoTools/Hugin,他们的结果(在球体模式下)似乎并不比我们的好.


我的问题:

  1. 是否有任何库可以执行Google的PhotoSphere所做的工作?由于我不开发商业用途,任何开源库都是可以接受的.
  2. 有没有好的算法(或技术报告,学者论文)?如果有,哪一个最好?
  3. Google如何实现自己的PhotoSphere?任何建议表示赞赏.

algorithm panoramas image-stitching photosphere

16
推荐指数
1
解决办法
5670
查看次数

如何在打开全景Android时设置photosphere模式

当我想用我的Android应用程序打开一张photosphere图片时,我遇到了问题.实际上,我可以打开它,但应用程序显示了一些photosphere的预览(它从左到右滚动图片).我希望我的应用程序使用acceloremeter模式(我们需要转动手机以显示整个图片的模式)打开光球,而无需单击右下角的按钮.

我使用该代码打开全景图:

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setComponent(new ComponentName("com.google.android.gms", "com.google.android.gms.panorama.PanoramaViewActivity"));
intent.setData(Uri.parse("file://" + Environment.getExternalStorageDirectory() + "/DCIM/Camera/PANO_20131209_130755.jpg"));
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

提前致谢,

android android-intent google-play-services photosphere

13
推荐指数
1
解决办法
1845
查看次数

如何打开photophere相机?

Android API我们不必在photosphere模式下打开相机.当我们打开普通相机时如何在相机选项中显示photosphere模式选项.

打开普通相机,我用下面的意图:

1)Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

startActivityForResult(intent,CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);

2)Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

startActivityForResult(intent,CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);

3)Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");

startActivityForResult(intent,CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);

photosphere

6
推荐指数
1
解决办法
2074
查看次数

用于在Google地图视图(如Panoramio)中向长/纬度位置显示最近照片的API

请原谅我,如果已经问过这个问题,但搜索"谷歌地图视图"会带来相当多的无关紧要的点击.

是否有API可以从Google地图视图中提供的照片中显示距离特定长/纬度位置最近的(比方说)5张照片?我并不特别需要它们在地图上,只是为了嵌入照片的缩略图并链接到原件.

例如,我有一个卡拉尼什石圈的页面.我可以根据long/lat查询从Views中嵌入图像吗?

以下是该位置的观看次数:https: //www.google.com/maps/views/explore?hl = zh-CN&gl = gb&vm = 1&lll = 54.596562,-3.104517&bd = 54.586641,-3.121855,54.606481,-3.087179&z = 15 PV = 2

我读到Views是应该从Panoramio接管的.我知道Panoramio有一个API,但正在关闭.

如果这是可能的,有没有人有类似的例子?如果这是唯一的方法,那么在地图上显示照片就行了.非常感谢Andy http://www.megalithic.co.uk/article.php?sid=42

google-maps panoramio google-maps-api-3 photosphere

6
推荐指数
1
解决办法
1618
查看次数

是否可以在 Google 地图范围内获取 Photo Sphere 照片

有没有办法使用 Google 地图 API 获取可用的 Photo Sphere 照片(在地图范围内)?

我正在尝试构建一张像此处这样的地图,但无法弄清楚从哪里获取照片球数据,或者如果有可能的话 - 除了标准街景内容之外,在文档中找不到任何内容。

编辑:我确实知道可以通过它们来获取单个照片球pano_id,但需要一种更有效的方法将一堆照片放到我的地图上。手动创建pano_id集合不是一种选择。

google-maps google-maps-api-3 photosphere

5
推荐指数
0
解决办法
216
查看次数


如何使用Google Cardboard SDK构建光球图像的立体查看器

Cardboard Demo应用程序有一个很好的功能,我们可以看到现有的photospheres.我想构建一个类似的应用程序

我已经浏览了谷歌提供的Cardboard SDK.但还没有找到一个简单的方法来做到这一点.我要从头开始构建,采取所有的感官输入和相应的更新框架,这是一个非常痛苦的过程.

我想知道

  1. 如果有一个简单的方法来做到这一点
  2. 如果有可用的Google Cardboard应用程序源代码,我可以继续使用

android stereoscopy photosphere google-cardboard

5
推荐指数
1
解决办法
2818
查看次数

360观察者统一,纹理在顶部和底部出现翘曲

我正在制作一个360度的统一观察者,观看一张360度的照片,我曾经将一个立方体贴图连接到天空盒,而且效果很好.但是立方体贴图的重量迫使我切换到纹理.

所有360观察器教程都说要在其上放置一个带着色器的球体,然后将相机放入其中.当我这样做时,它不能很好地工作,因为当我看到顶部或底部时,我看到图像像这样弯曲:(椅子被假定看起来正常) 在此输入图像描述

当我使用天空盒时,它没有发生.

有人知道为什么会这样吗?

非常感谢你!

shader textures unity-game-engine photosphere google-cardboard

4
推荐指数
1
解决办法
3883
查看次数

Cordova-如何在Android上显示360张图像

我正在构建一个从服务器获取JSON数据的cordova应用程序。我收到的一条信息是360个在线图像的URL。我需要在Photo Sphere全景照片查看器(适用于Android)中显示这些图像。我已经看过这个API(需要cordova google play服务插件)和这个库,但是我没有设法在应用程序内部成功使用它们。有人知道这样做的方法吗?我可以本机打开这种类型的图像吗?提前致谢

android cordova photosphere

2
推荐指数
1
解决办法
1513
查看次数

React 纯 Javascript 上的 Photo Sphere Viewer

我正在尝试在我的 React 组件上实现 Photo Sphere Viewer,我已经使用 Google Maps API 实现了它并且运行良好,但我使用的是相同的技术,但没有结果。如果有任何其他选项可以在 React 上实现 360 度全景照片查看器(已经使用过 Pannellum,不喜欢它,没有工作),我愿意接受建议。

https://photo-sphere-viewer.js.org/

我从以下位置获得了 html 代码:https : //github.com/JeremyHeleine/Photo-Sphere-Viewer/blob/master/examples/example.html

<head>
    <meta charset="utf-8" />
    <title>Photo Sphere Viewer</title>
    <meta name="viewport" content="initial-scale=1.0" />
    <script src="./three.min.js"></script>
    <script src="./photo-sphere-viewer.min.js"></script>
    <style>
        html, body {
            margin: 0;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }

        #container {
            width: 100%;
            height: 100%;
        }
    </style>
</head>

<body>
    <div id="container"></div>

    <script>
        var div = document.getElementById('container');
        var PSV = new PhotoSphereViewer({
                panorama: 'http://tassedecafe.org/wp-content/uploads/2013/01/parc-saint-pierre-amiens.jpg',
                container: div,
                time_anim: 3000,
                navbar: true, …
Run Code Online (Sandbox Code Playgroud)

html javascript photosphere reactjs photosphereviewer

1
推荐指数
1
解决办法
1796
查看次数