android - Android 中的图像全景

标签 android android-camera accelerometer gyroscope

在我的应用程序中,我需要拍摄连续图像并将它们制作成全景图像。为此,它需要 android 传感器旋转计算。加速度计俯仰、滚动、方位角返回基于方向的值。但它不准确,即假设如果一开始拍摄的图像作为起始图像,然后只有在设备充分旋转后才能单击下一张图像。同样应该拍摄一些 5 - 6 张图像并制作一张全景图像。

这里的问题是:

如何计算设备旋转(如果可能使用增强现实)并自动拍摄图像?

感谢任何帮助。谢谢

最佳答案

我的回答实际上不是关于陀螺仪的,我不知道它是否仍然适合你,但希望它对某人有所帮助。

全景功能至少从 Android 4.0 开始就已经在标准的 android 相机中实现了(也许它在更早的版本中可用,但我不确定,你可以检查一下),所以由于源代码对所有人开放,它可能是仅复制所需功能的最简单方法。

尽管您可以从 https://android.googlesource.com/ 下载应用程序源(你想要 LegacyCamera 或 Camera),你不能只在 Eclipse 或其他 IDE 中打开任何标准应用程序的项目。例如,LegacyCamera 依赖于 Gallery2 和其他可能难以解决的依赖。

我花了几天时间尝试将全景功能移动到单独的项目中。您可以从这里下载:https://github.com/yankeppey/PanoramaSample .几点说明:

  1. 功能核心(从多张全景图创建一张全景图、进度通知等)在原生部分。

  2. 我使用了来自 LegacyCamera 的 java 代码,它在 Android 4.0-4.1 中使用,而不是 4.2,因为它对我来说容易得多。 Native部分取自4.2,内部变化不大,JNI接口(interface)几乎相同。

  3. 这个项目只是为了帮助您将全景功能移动到您自己的应用程序中,它不像是一种库,不要指望没有错误的干净代码,它只是一个非常肮脏和错误的项目。如果我有时间,我会尝试让它更干净,但没有保证:)

关于android - Android 中的图像全景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12456049/

相关文章:

java - 在 Fragment 中使用 CustomView 发生 ClassCastException

java - 是否可以重复倒数计时器?

java - 如果未访问类,是否保证 static init 不运行?

android - android.permission.FLASHLIGHT有什么用?

android - 完整的自定义 Camera2 示例

java - 更改 IDEA 代码完成窗口中的字体颜色

android - 有没有办法从 Android 的自定义相机 View 中删除暂停按钮?

android - 从 ListPreference 中删除数组项

windows - 用于笔记本电脑的加速度计 API

Iphone-SDK : accelerometer x, z 到 360 度?