我正在开发一个应用程序,它使用设备传感器来确定用户的x轴旋转和y轴间距(基本上用户旋转一圈,仰望天空或俯视地面)。我使用android Sensor.getRotationMatrix和Sensor.getOrientation函数为手机开发了这个应用程序,然后使用前两个生成的方向值。我现在已将我的应用程序移动到Project Tango平板电脑,这些值似乎不再有效。我已经看了一下PT,看起来这是测量四分之一的东西。这是否意味着Project Tango不是为了实现Android SDK?
答案 0 :(得分:1)
Project Tango API(仅适用于Android)和Android SDK都是构建Project Tango应用程序所必需的。 Tango API为Android设备传感器提供了比Android SDK直接访问传感器状态更高级别的接口 - Tango API结合了传感器状态以提供更完整的“姿势”(6自由度位置和方向)状态,以及3D(X ,Y,深度)场景点甚至场景中的特征识别等.Tango API的关键优势是可以非常精确地实时同步几个不同的传感器,因此姿势状态非常准确;实际上,最新的Tango设备支持CPU电路本身内部的同步。使用(非Tango)Android SDK API从传感器收集数据的应用程序不足以通过Tango API关联传感器。因此,您可能正在获取未同步的传感器数据,这会产生偏移量。
此外,Tango API中的一个已知错误是设备的罗盘传感器正在返回垃圾值。我不知道该错误是否会影响Android SDK直接拨打罗盘的数据质量。但Android SDK对指南针的调用将返回状态,至少与Tango API调用返回的状态不同步。
答案 1 :(得分:0)
从理论上讲,Android SDK应该仍在运行,因此您的应用程序应该无需任何更改即可运行,但它无法获得Project Tango所提供的改进。 为了获得Tango(用于改进运动跟踪的鱼眼摄像机......)的优势,您需要使用Tango API来激活Tango服务,然后使用四元数中的姿势。