揭秘Facebook SLAM技术,如何为人们生活增添奇幻的艺术色彩?

来源:将门创投

概要:随着现代智能手机技术的发展,几乎所有的手机都配备了摄像头、陀螺仪和加速度传感器,硬件的进步帮助SLAM技术得到更广泛的传播和应用。 


在过去的一年里,虚拟现实技术(Virtual Reality,简称VR)和增强现实技术(Augmented Reality,简称 AR)都取得了令人印象深刻的进步。艺术与技术的关系是非常微妙的,每一次科技的革命或多或少都会给艺术带来一些变化。


艺术求善、求美,是感性、意志的写照,技术为艺术提供了形式多样的表现感觉。摄影机为人类带来了电影的艺术形式,AR同样也会激发出更多充满创造力的艺术表现形式。


Facebook的应用机器学习(Applied Machine Learning, AML)团队将人工智能的最新研究成果转化到新产品中,并将Oculus计算机视觉部门早期完成的工作用到大规模构建和部署SLAM中。



想象一下,你可以在当地的公园四处漫步,就能看到那些灭绝的动物和恐龙龙;你也可以随处打开一扇“任意门”,一座繁华的城市就会出现在眼前;你还可以在房间里面建造自己的城堡,肆意涂鸦。


诸多类似的情景将不再只是脑中的幻想或科幻小说中的神奇世界,Facebook现在正通过手机上的相机APP,借助增强现实的力量,改变人们看待周围世界的方式。


要实现这一目标,不仅需要实时建立并更新周围环境的地图,还需要准确地估计手机相机相对于该地图的位置和方向。这种技术一直以来是计算机视觉和机器人研究领域中的一项重大挑战,也就是实时定位和构图 (Simultaneous Localization and Mapping ,简称SLAM)。


为了实现在移动设备上运行SLAM,研究人员已经花费了40多年的时间。 SLAM技术最早可追溯到1986年,Smith的系列论文《空间位置的表达与估计》,研究和解决未知环境中的机器人导航问题。但早期的SLAM往往依赖价格昂贵或专门定制的传感器,例如激光雷达,声呐或立体相机,这项技术并未走入市场。


随着现代智能手机技术的发展,几乎所有的手机都配备了摄像头、陀螺仪和加速度传感器,硬件的进步帮助SLAM技术得到更广泛的传播和应用。 


今天,SLAM不仅可用于增强现实技术,而且还适用于其他场景,包括无人驾驶汽车、家庭服务机器人和微创手术机器人等。为了开发出实现虚拟信息和真实世界间的无缝连接的AR工具,Facebook的工程师们在以下三个方面进行了很多努力和尝试,最终推出了高性能的移动端开发工具和代码库。


1、种类繁多的移动设备需量身定制


Facebook平台提供的SLAM库集成了多种算法,包括ORB-SLAM,SVO和LSD SLAM,并基于最新的技术对库做了性能优化。但要想在移动设备上轻松地实现频率60Hz的SLAM系统是非常困难的。

首先,手机每隔16毫秒就捕捉一次图像;其次,图像中提取到的特征点数量将达到数百个,且还要将它们与前一帧中的特征点进行匹配;最后,使用三角测量法来计算出每个点在3D空间中的对应位置。如此繁多的步骤,必然会耗费大量的处理时间。因而对系统做细致的优化工作就十分必要,得思考这些算法如何运行才能更高效。


除此之外,Facebook生态系统中的移动设备种类十分繁多,从具有高质量相机的高端手机(例如iPhoneX,Pixel 2 XL)到计算能力和资源非常有限的旧设备。每种型号对应的相机校准模型都具有不同的焦距、主点和失真参数。因而会导致严重的兼容性问题,务必要确保SLAM系统可以向下兼容。只有确保每一个参数真实有效,才能以亚像素的精度将3D点准确地投射到相机空间。


此外,移动设备通常配备的是具有自动对焦和自动曝光功能的卷帘式相机,随着相机聚焦的物体的远近变化,校准也会发生变化。


除相机以外,时常会添加IMU(惯性测量单元,用于感知设备的加速度和旋转)来辅助定位。将视觉与IMU融合可以减小低动态时IMU的误差累积,IMU则可以减小高动态时视觉的误差。同时IMU的角速度可以解决单目SLAM的二义性,加速度还可以提供重力方向参考,解决单目VO的尺度问题。IMU传感器使用前也需要校准,并要与相机进行时钟同步。


我们在优化每个模型的时候,都会先从粗调开始,再进行微调,确保最后配置的SLAM系统是最优且高效的。


2、应用程序需要及时瘦身


在Android或iOS的应用程序商店中,Facebook的App算是很复杂的应用程序了。Facebook正在努力为应用程序不断添加令人兴奋的新功能的同时,保持了应用所需空间的大小。最初的SLAM库是在Oculus开发的,为了适用不同的案例场景,适用了多个大型开源库,导致程序大小约为40MB。后来通过保留最小SLAM功能,并使用普通的Facebook库重构它,将大小降低至1MB以下。


3、追求卓越艺术表现,不断探索技术新思路


要让移动AR展现令人注目的艺术色彩,仅依靠SLAM技术是不够的。去年十一月,我们就开始了第一次探索,利用SLAM技术将场景中的物体进行三维重构,并将喜爱的3D艺术投影到它的表面上,结果引起了强烈反响。


之后,为改善用户体验,实现了人们可以直接通过手势来控制3D艺术图案的放置、切换、旋转、平移、缩放的操作。这种友好的交互方式使得人们可以准确地构成他们期望的作品。不仅如此,还可以对场景加以分析,让程序可以自动识别特定的位置来放置AR内容,对物体的几何形状的提取并计算,也能使虚拟的物体投影到物体表面时看起来更逼真。


当然,SLAM技术也有失败的时候,比如动态场景中的目标干扰会导致算法出错。为此,我们将SLAM与多个跟踪算法结合,不同算法之间采用umbrella 交互协议,将之命名为WorldTracker API。SLAM主要使用点或者线特征来估计场景几何,而目标跟踪算法主要是基于目标的外观,对特定像素区域的外观进行追踪。SLAM在静态场景中更有优势,而基于外观的跟踪器对场景中的动态变化更为鲁棒。


当前版本的World Tracker中包含了SLAM和基于视觉与陀螺仪增强的跟踪器,保证了当出现图像像素运动模糊或纹理少的表面也能估计出准确的运动。算法会根据移动设备的硬件性能和算法结果的准确性来切换SLAM和跟踪器,两者互相补充、相互协调。 

那么Facebook的Slam技术到底表现如何呢?我们来看看展示AR与艺术结合创造出美妙的Demo。

Facebook邀请著名艺术家Heather Day到门洛帕克校区,来共同完成首个以AR技术驱动艺术表现的项目。

首先,应用机器学习团队会通过相机捕捉Heather任意时刻的动作,包括倒油漆,刷画笔,画图或制作任何图案,并将记录下的动作添加到数字库中,最终的艺术作品将在虚拟世界中完成。


随后,应用机器学习团队还与Heather商议确定动画师需要的图像,以及动作,丰富AR的内容。最后,利用定位技术和场景几何分析,将Heather的虚拟艺术作品完美的投影到真实世界并展示。

在今年的F8开发者大会上,观众们欣赏到了Heather的艺术作品,随着音乐的节奏,像瀑布一样从墙上流到地面,栩栩如生,美丽动人。同样的,只要打开手机摄像头,并打开 Facebook的App,你可以在任意时间任意地点欣赏到Heather的作品。SLAM技术和创造性思维,让我们见识技术与艺术如何交织在一起,彻底消除了科学与艺术之间、虚拟与现实之间的界限。


未来的发展方向


AR为我们提供了无数种新的方式来更好的认识、体验和感受世界。尽管我们已经在增强现实技术的发展道路了迈进了一大步,但是路漫漫其修远兮,仍需上下而求索。下一步目标便是再次基础上不断优化改进,以实现更好的地理定位技术和持久用户体验,不断开发出像Demo所展现出的AR应用。


随着机器学习和深度学习的发展,虚拟信息可以“理解”真实世界,让二者的融合更趋于自然,目前正在探索如何结合深度神经网络和Caffe2的力量来创建更完整的SLAM地图,处理动态目标,添加语义信息,并实现与Facebook生态系统高度结合的持久AR体验,以实现科幻电影般身临其境的效果。


虚拟信息将成为我们现实生活的一部分,将这些数据与信息以人类理解的自然方式和真实世界连接起来,构建虚拟的数字生态圈,丰富人类的未来生活,是我们共同的愿景,这也会是一场全新的认知革命。


未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。由互联网进化论作者,计算机博士刘锋与中国科学院虚拟经济与数据科学研究中心石勇、刘颖教授创建。


未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎支持和加入我们。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/497787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android系统签名app自动更新,【Android 进阶】Apk 使用系统签名

刚入职的时候,固件中 app 需要在源码中编译,不是很理解,为什么不使用 IDE 编译,然后 copy 到 /system/app/*,咨询导师,得到反馈 app 需要使用系统的权限 在 AndroidManifest.xml 中声明了系统全下申明了系统权限androi…

数独游戏破解

游戏规则: 1、每行都是 1~9 2、没列都是 1~9 3、每块都是 1~9 解答思路: 从坐标 [0][0] 开始,算出其允许填入的数字集合(每行允许数字集合、每列允许数字集合 和 每块允许数字集合 的交集)。 从左到右&#xff0c…

人工智能能否在对抗虚假新闻战争中完胜?

来源:亿欧概要:2017年,误导性和恶意的虚假在线内容是如此丰富多产,以至于人类无法让自己解脱困境。反而,这越发看来机器将不得不拯救我们。这可能是互联网历史上的第一个虚假新闻:1984年,有人在…

android gpu 视频编码,android – 编码器崩溃对Adreno GPU编码从Surface

我一直在努力解决这个问题超过一个星期,很可能是一个错误的Qualcomm GPU /硬件视频编码器。因为我们被迫发布应用程序,并且他们的开发人员论坛没有提供任何反馈,我也在这里发布它,希望有人能够提供一些线索,或更好&…

穷举法破解集合小游戏~

游戏网站:http://www.setgame.com/puzzle/set.htm 游戏规则: 1、三种颜色(红、绿、紫) 2、三种外形(方形、椭圆形、花形) 3、三种背景阴影(实心、点、轮廓) 4、三种个数&#x…

AI时代数据之争,我们需要什么样的“数据权”?

来源: 腾讯研究院作者:田小军 腾讯研究院高级研究员1、未来是AI云端的数据竞争时代“兵无常势,水无常形”,今年11月4日,我国《反不正当竞争法》历时24年后首次修订,专设“互联网专条”用以规制互联网行业竞…

android点击通知后消失,通知栏点击后消失解决方法

通知栏点击后消失怎么使通知栏点击后消失啊?以下为我的代码,能实现将信息放入通知栏,但是点击后不消除。。。private void showNotification(String temp) {// 创建一个NotificationManager的引用NotificationManager notificationManager (…

Struts2 的Action 命名重复检测

原因&#xff1a;在实际项目中发现 <action /> 的 name 重复时候&#xff0c;Struts2 并不会报错而是随意找一个去执行&#xff01; 为了避免重复的情况发生&#xff0c;特地写了一个检测的程序&#xff1a; package barcode;import java.io.IOException; import java.i…

预测性智能的力量:AI 和机器学习将如何改变美国政府决策?

来源&#xff1a;36Kr在每个联邦机构中&#xff0c;重要的见解都隐藏在这些年来收集的大量数据集中。 但是由于美国联邦政府数据科学家的匮乏&#xff0c;如果真的要这么做的话&#xff0c;那么从这些数据中提取价值是非常耗时的。 然而&#xff0c;随着数据科学&#xff0c;人…

android 源码分析notification,# Notification 源码分析

引言notification.jpgNotification 在v7版本下从4.0后增加了Media Style. 今天我们分析下Notification在v7版本的源码。有助于我们针对不同版本的Notification做出合适样式选择。Notification使用流程现在我们使用Notification基本都是如下步骤:NotificationCompat.Builder bui…

广州签发全国首张微信身份证,AI成主要证明技术

来源&#xff1a;人工智能学家AItists概要&#xff1a;12月25日&#xff0c;广州市公安局南沙区分局、腾讯、建设银行等10余家单位发起的“微警云联盟”在广州南沙成立&#xff0c;现场签发了全国首张微信身份证“网证”。12月25日&#xff0c;广州市公安局南沙区分局、腾讯、建…

android底层设置相机帧率,Android Camera previewFrame 提高 fps

/*** http://my.oschina.net/lifj/blog/705104**/在做Camera预览的时候&#xff0c;通过PreviewFrame()方法获取数据&#xff0c;但是发现fps很低&#xff0c;一直在10~12fps徘徊。当然&#xff0c;有人推荐使用setPreviewCallbackWithBuffer。试了一下&#xff0c;fps没有明显…

android 视频做背景图片,视频后面怎么加背景图片?安卓手机给视频添加背景图片的方法...

狸窝是帮助用户解决问题 提供教程解决方案 在这个过程中有使用我们自己开发的软件 也有网上找的工具 只要帮助用户解决问题就好&#xff01;同意则往下继续了解学习 ...注意此教程方案是:『安卓手机端教程方案』。很多手机视频分享平台对视频参数都会有要求&#xff0c;手机上大…

MySQL中information_schema

来源&#xff1a;http://hi.baidu.com/starsw001/item/d151bd591cfb7f01e7c4a557 大家在安装或使用MYSQL时&#xff0c;会发现除了自己安装的数据库以外&#xff0c;还有一个information_schema数据库。 information_schema数据库是做什么用的呢&#xff0c;使用WordPress博客…

量子计算远没到可收割的时候

来源&#xff1a;风云之声概要&#xff1a;我们重视量子计算&#xff0c;是因为它的潜力&#xff0c;而不是它的现状。它确实有革命性的潜力&#xff0c;只是还需要艰苦的努力&#xff0c;绝不是一蹴而就的&#xff0c;更不是已经处在商业盈利的边缘&#xff0c;等着大家一哄而…

android 通知灯 测试,Android灯光系统通知灯【转】

标签&#xff1a;一、通知灯应用程序的编写1、首先实现一个按钮功能xmlns:tools"http://schemas.android.com/tools" android:layout_width"match_parent"android:layout_height"match_parent" android:paddingLeft"dimen/activity_horizon…

简评黑客利器——中国菜刀

来源&#xff1a;http://edu2b.sinaapp.com/?p236&replytocom17 作者&#xff1a;XXX 我是一个玩黑很多年的人&#xff0c;入侵了大大小小的服务器无数&#xff0c;体验着入侵快感的同时&#xff0c;自己的技术和经验也不断提高&#xff0c;在渗透过程中收集了大大小小的…

2017,AI偏见为何如此受关注?

来源&#xff1a;亿欧概要&#xff1a;从荒谬到令人不寒而栗&#xff0c;算法偏见在社会中产生越来越大的影响&#xff0c;而且这一问题已经暴露多年。但直到2017年&#xff0c;人们对AI算法偏见的公众意识似乎才达到了一个临界点。佛罗里达州的一项犯罪预测算法错误地将黑人罪…

android aidl工具,【Android】AIDL介绍和实例讲解

前言为使应用程序之间能够彼此通信&#xff0c;Android提供了IPC (Inter Process Communication&#xff0c;进程间通信)的一种独特实现&#xff1a; AIDL (Android Interface Definition Language&#xff0c; Android接口定义语言)。网上看了几篇关于AIDL的文章&#xff0c;写…

MySQL新建用户,授权,删除用户,修改密码

来源&#xff1a;http://www.cnblogs.com/analyzer/articles/1045072.html 首先要声明一下&#xff1a;一般情况下&#xff0c;修改MySQL密码&#xff0c;授权&#xff0c;是需要有mysql里的root权限的。 注&#xff1a;本操作是在WIN命令提示符下&#xff0c;phpMyAdmin同样…