带你认识Google 屌炸天的AR项目——Project Tango

本文介绍了Google的AR项目——Project Tango,包括其高精确度的室内定位技术、移动追踪、区域学习和深度感知等功能。Tango通过硬件传感器和软件技术实现室内定位,为开发者提供了SDK和学习资源,适用于开发AR应用。
摘要由CSDN通过智能技术生成

这两年虚拟现实VR和增强现实AR简直火的不要不要的,众多巨头都在发力,Google也推出了自己的AR技术解决方案,因为目前介绍Tango的中文资料还比较少,所以本人结合官网文档和自己的理解写了本文,如有错漏请不吝赐教。

一、简介

1. Tango是什么,可以用来干什么?

Tango是Google的一个AR增强现实项目,配合其独特的移动设备和SDK可以方便的在应用中使用AR技术。

2. Tango室内定位为什么有很高的精确度?

众所周知,传统的定位技术(GPS\WIFI等)在室内定位上精度很低,那么Tango是怎么实现室内定位的呢?

Tango采用的是“参照定位”,即相对于“初始位置”的一种定位方式,不涉及到卫星定位。它根据硬件设备的传感器,比如重力传感器、IMU陀螺仪等,获取移动设备相对于初始位置的“位移”和“旋转角度”,自己构建了一个“参照坐标系”,因此有较高的准确度。

当然,还有其他一些软件技术手段,比如通过区域学习修正偏差等。

3. 几个重要的概念

Tango中如下3个概念,其实也算是3个功能模块。开发者通过设置TangoConfig对象的相应字段来选择开启哪些功能。

a. 移动追踪(motion tracking)

移动追踪指的是,Tango会记录追踪移动设备的在3D空间中的位置,位置数据包括地点和超像旋转角度等、实时报告给应用。

b. 区域学习(Area Leaning)

移动追踪只会反馈移动设备当前的坐标信息、对于设备“看”到的东西没有任何记忆,区域学习使移动设备能够看到和记住物理空间的关键视觉特征,比如边缘,角落等。

区域学习会把看到的保存起来,下次再次“看”到的时候会进行匹配,利用这些数据修正误差(漂移修正),使得轨迹追踪、定位更加准确。

c. 深度感知(Depth Perception)

深度感知给予设备“明白”物体之间的距离,这是通过独特的硬件设备技术实现的,比如“结构光”、“光速飞行时间TOF”和Stereo立体测量

4. Tango的简单使用方式

在Android中,Tango是一个后台Sevice,负责AR工作。我们使用Tango的方式就是启动这个Service,与其进行交互。

Tango主要有如下两个对象:

private Tango mTango; //Tnago对象
private TangoConfig mConfig;  //配置

按照需求对TangoConfig类进行配置,下面代码配置了移动追踪和自动恢复

 private TangoConfig setupTangoConfig(Tango tango) {

        TangoConfig config = tango.getConfig(TangoConfig.CONFIG_TYPE_DEFAULT);
        //开启移动追踪功能
        config.putBoolean(TangoConfig.KEY_BOOLEAN_MOTIONTRACKING, true);

        // 自动恢复
        config.putBoolean(TangoConfig.KEY_BOOLEAN_AUTORECOVERY, true);
        return config;
    }

初始化Tango,调用它的connect()方法。

 @Override
    protected void onResume() {
        super.onResume();

        mTango = new Tango(HelloMotionTrackingActivity.this, new Runnable() {
            @Override
            public void run() {
                synchronized (HelloMotionTrackingActivity.this) {
                        mConfig = setupTangoConfig(mTango);
         
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值