微信号:infoqchina

介绍:有内容的技术社区媒体

我在旧金山 与你实时同步Google I/O

2015-05-30 07:17 杨赛



Google I/O 2015大会话题覆盖了Android M、Android Wear、物联网、深度学习、Google Now、Google Photos、AndroidOne、ChromeBook、Google Maps、开发工具、App推广、在线教育、虚拟现实等话题。以下为InfoQ记者从大会现场带来的消息。


Android M开发者预览版

相比Android L引入的新设计material design,本次Android M主要在界面之下的层面做功课。据称Android M相比之前的版本修复了上千个bug,功能相关的改变非常多,主题演讲上重点只介绍了六个新增内容:


1.App权限控制方式变更。以前在L版之前是安装的时候统一请求所有权限,而M版更改为安装时不请求权限,但在App运行中调用功能(比如摄像头)的时候询问用户。


2.Chrome Custom Tabs。App内访问Web内容时,可以使用Chrome Custom Tabs作为页面显示的载体。


3.App Links,在一个App中点击链接,直接在另一个App中打开该链接的实现方式。这需要开发者在自己的网站上添加一个叫做statements.json的文件,并且在AndroidManifest中进行声明。


4.Android Pay支付平台。


5.指纹识别API。


6.省电模式Doze,有效减少设备长期闲置不动情况下的电力消耗。


Android Wear

2015年5月的Android Wear系统更新将带来Always-on App的支持。Always-on即“保持常亮”,这种保持常亮为了减少电能消耗而做成了纯黑白的显示模式。主题演讲上展示了时间显示、地图显示、购物清单显示等场景的保持常亮功能。


目前Android Wear上已经有四千多个应用。


物联网(IoT

Google将IoT的技术实现划分为三个层面:底层的操作系统(OS层),中间的通讯层,上层的用户交互(UX层)。


Google将在OS层面发布新的操作系统,Project Brillo,该系统基于Android,当然要更加精简了很多。其开发者预览版预计在2015年Q3公布。对于通讯层,Google则计划推出Weave通讯协议,用于在云端、手机端、以及Brillo设备端之间进行通讯。Weave的规范预计将在2015年Q4公布。


开发工具

Android Studio 1.3预览版改进了Gradle的准确性和性能,加入了新的CPU和内存的profiler,并且开始支持C/C++。


Web开发方面,Polymer升级到1.0。


测试方面提供了Cloud Test Lab服务,该服务的入口将出现在Google开发者控制台界面里。


Google SDK as Cocoapods:面向iOS平台提供Google服务的SDK。


后端的Firebase,目前已经支持19万个App。Firebase为应用提供计算(Server)、数据、存储等后端服务,其背后依赖于Google Cloud Platform资源。


应用推广

Cloud Messaging消息服务现在支持Android、iOS与Chrome平台,并支持按主题订阅的选项。


对于在搜索、YouTube、Google Play等平台上的应用推广,本次Google推出了Universal App Campaigns,可以实现不限定推广平台的推广效果。此外,Google Play开发者控制台新增了Conversion Funnel,可以看到用户的转化路径。另外,Google Play现在允许开发者建立自己的开发者主页了。


虚拟现实(VR)

去年发布的VR观看设备CardBoard今年做了一点改进,主要是把尺寸做大了一圈,现在可以支持6寸屏的手机。Google推出了面向学校的Expeditions服务,简单来说就是给一个班的学生人手一台CardBoard戴在头上,老师这边可以控制学生那里看到的画面,可以在一瞬间把一整个班的学生都带到长城或者意大利去郊游。老师们现在可以通过网络注册Expeditions服务。


对于VR素材的摄像,Google公布了JUMP项目VR素材是带有深度信息的360度全景图像,Google提出的摄像方案是用16个摄像头排列成一圈,再把它们拍摄的图像通过算法合成(这个方案需要在合成阶段使用较多的计算资源,但好处是摄像的成本很低)。


Google正在和GoPro合作制作符合JUMP规范的设备,16个摄像头的光学几何设计将在夏季公布,同时Google也会在YouTube上启动专门的JUMP频道播放这些VR视频。


情景设计:动作识别

用户是在走路还是在跑步,在坐着还是在躺着,是上楼还是下楼,是骑车还是坐车,手机是在用户的屁股口袋里还是在车里座位上还是在家里的桌面上?要实现这样的动作识别有三个步骤:


1.从已知动作中收集数据,将数据标记为该动作。比如让志愿者带着手机手表走路,记录期间的加速度传感器、气压传感器数据,将该原始数据标记为“走路”。


2.拿大量的原始数据交给机器学习集群做训练,直到它们能够相对准确的从一套原始数据中判断它很可能是“走路”的数据。


3.将这套判断加入API当中,给应用开发者用起来。


目前可以识别的动作可以在DetectedActivity中看到,包括:

int IN_VEHICLE
int ON_BICYCLE
int ON_FOOT
int RUNNING
int STILL
int TILTING
int UNKNOWN
int WALKING

相当直观的返回参数,无需多说。事实上除了这些动作之外,现场还演示了另外两种已经可以被识别的动作,分别是深蹲起和仰卧起坐。这个动作识别库肯定还会继续增加壮大。


接下来,识别了动作之后,有什么应用呢?讲座中提供了一个示范:贴身携带免解锁。假设一个场景,用户用完手机后一直把手机揣口袋里走来走去,走了几分钟又拿出手机来,这两次使用手机之间是手机不离身的,因此理论上无需要求用户再次输入解锁密码。有了动作识别,就可以实现这个功能啦。当然,健身数据记录、运动相关的游戏,有了这种动作识别的能力也很有用。


动作识别+地理位置识别

动作识别配合地理位置识别,还可以实现更多其他的效果。Google Now上展示的“我的车停在哪儿了”的功能,就是由“动作识别”和“fused location provider”这两个API的组合实现的。Fused Location也就是地理位置识别,只不过是综合使用了手机的GPS、WiFi、加速度传感器、陀螺仪、以及磁力感应器的数据来判断地理位置,从而实现了降低能耗又尽可能提升位置识别准确度的效果。


“车停在哪儿了”的功能大致通过三个步骤完成:


1.通过动作识别,判断用户在车里。


2.根据倾斜传感器的数据,判断用户从“坐着”转变到“站立”状态的时间点,即用户“下车”的时间点。


3.自动记录下这个时间点的Fused Location数据。


据说现在Fused Location数据已经可以精确到2-3米,这样的精确度下找到一辆车是基本没问题的。


同时分享者们也提供了其他的一些思路作为参考,比如在用户驾车的时候自动将短信内容用语音阅读出来,或者是基于地理位置的挖宝游戏设计等。这个就要靠大家发挥自己的想象力了。


人机交互


ATAP团队在Google I/O 2015大会上带来了一场一个多小时的分享,介绍了团队在过去一年内各个方面的进展,包括人机交互方面的Project Soli与Project Jacquard,安全认证方面的Project Abacus与Project Vault,全景影视项目Google Spotlight Stories,以及模块化手机项目Project Ara。以下面两个项目说明。

Project Soli

1954年6月,Paul M. Fitts在J Exp Psychol.杂志上发布了一篇名为“The Information Capacity of the Human Motor System in Controlling the Amplitude of Movement”的论文,该论文结论大致可以被描述为针对“人的活动性能”这一参数与“活动的物理范围”、“活动误差准许度”之间的关联性。“活动性能”以每秒的信息比特数作为测量尺度,即“每秒的活动引入的信息量”。相对来说,人的双手非常精巧,其活动性能为每一根手指38 bits/sec,要远超越手腕的23 bits/sec与手臂的10 bits/sec。该论文的结论是,最适合手指发挥活动性能的活动范围大约是4-8英寸。误差准许度越低则性能越好,但是动作难度增加,效率从而降低,误差准许度过高则动作难度降低,完成速度快,但实现的性能却因此下降。比较平衡的误差准许度在0.1英寸左右。


对于人手与数码设备交互的场景,要想完全发挥到双手的活动性能,需要尽可能降低捕捉的误差,并控制双手在一定范围内即可完成动作。如何精准的捕捉到手指的精巧活动,是这个场景面对的挑战。手指触摸屏幕的误差在半英寸以上,因此操作能够传递的信息量有限;使用触摸笔可以降低误差、提升传递的信息量,但体验不好。而且,触屏的限制在于无法捕捉3D空间内的手指动作,如捏、搓、抓握、转动等。可见光和红外摄像头虽然可以捕捉距离,但因为可见光/红外无法穿透手指,因此无法捕捉到被遮挡部分的动作。


Project Soli是基于无线电波反射建立的交互体系。5mm波长的无线电波有能力捕捉到5m空间范围以内的精细动作。然而这其中的技术挑战在于,目前市面上的无线电波发射器都太大了。Project Soli的目标是将无线电波发射器+接收器做到手表上,在四分之一硬币尺寸的芯片里集成无线电波发射天线与接收天线——不过截止到本次分享的时候,这个目标还没实现,本次演示用的设备尺寸大约是半个巴掌那么大。ATAP的分享者表示计划在10个月内发布Project Soli的设备,并计划在今年晚些时候发布项目的SDK套件。


传感器原始数据配合动作识别的算法,Project Soli针对单手操作的场景(手指的活动范围一般在3英寸以内即可完成),已经可以捕捉/识别手指的捏转、搓动、转动等动作,感应误差精细到毫米。


YouTube网站上有一个Project Soli的介绍视频


Project Jacquard

Project Jacquard是一个将人机交互界面植入到纺织品(即衣物)当中的项目。衣物的年产量(百亿级)大约是智能手机(亿级)的百倍以上,是个极大的市场,但是有如下的技术挑战:


1.生产过程可融入纺织品的工厂制作流程中;


2.电子电路和芯片不怕熨烫的高温、不怕洗衣机的水泡、不怕用户在穿戴过程中拉扯的破坏。


ATAP团队与日本一家布料工厂合作,将导电的线路与棉线编织到一起并保留柔软的触感,支持不同色彩、棉质/化纤/丝质的质地。基于此类布料与服装设计师合作,设计出可以将芯片植入的外套等衣物当中。目前ATAP团队已经与Levi's合作设计了一款搭载了Project Jacquard的棉质外套,外套的触摸感应区可以识别多点触摸,并支持一定距离内的隔空操作。Project Jacquard官网现在已经上线,网站上有项目的演示视频以及资源获取的注册通道。



欲了解关于情景设计的更多内容报道,可点击“原文链接”转至InfoQ网站阅读。


回复关键词查看对应内容:

React | 架构师 | 运维 | 云 | 开源 | Kubernetes | 架构 | 人工智能 | Kafka | Docker | Netty | CoreOS | QCon | Github | Swift | 敏捷 | 语言 | 程序员 | 实践 | 物联网 |




版权及转载声明:


极客邦科技专注为技术人提供优质内容传播。尊重作者、译者、及InfoQ网站编辑的劳动,所有内容仅供学习交流传播,不支持盗用。未经许可,禁止转载。若转载,需予以告知,并注明出处。

 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 听说 libevent 的并发工作做得很好? 哭,天天加班修Crash如何破! 程序猿测试媛之友谊的小船升华成巨轮 排名前十的SQL和NoSQL数据库 推荐10本C#编程的最佳书籍