陈鋆哲:关于AR,有一些很有趣的事正在发生

举报
SUNSKY 发表于 2020/02/13 18:02:37 2020/02/13
【摘要】 2017年3月2日周四晚8点30分,Unity开发者社区广州负责人、HK Unity Future Optimizer Co.,Ltd顾问及讲师、曾作为香港Google论坛特邀嘉宾的陈鋆哲老师带来了主题为“入门AR开发你必须要知道的事”的交流。以下是主持人小媛子整理的问题精华,记录了陈老师和读者间问答的精彩片段。问:新学者需要准备哪些知识?非计算机视觉或Unity相关的人员,也没有C等语言基...

2017年3月2日周四晚8点30分,Unity开发者社区广州负责人、HK Unity Future Optimizer Co.,Ltd顾问及讲师、曾作为香港Google论坛特邀嘉宾的陈鋆哲老师带来了主题为“入门AR开发你必须要知道的事”的交流。以下是主持人小媛子整理的问题精华,记录了陈老师和读者间问答的精彩片段。


问:新学者需要准备哪些知识?非计算机视觉或Unity相关的人员,也没有C等语言基础,学习成本有多高,好入门吗?如果想以后从事这方面的开发,是否需要研究OpenCV相关底层的知识?

: 门槛不高,不需要研究OpenCV底层,这种底层知识可以放在之后高级阶段再研究。对于新学者入门的知识图谱,我是土八路的法子,因为自己是商科出身,半路出家学技术,逐步积累经验,才做到技术社区的组织者和分享者。所以如果按我对AR技术项目的学习过程和理解来看。对于什么都不了的新学者,仅针对AR项目,可以按这个路径来尝试准备知识和学习(以Unity+Vuforia为例子):

  1. 学习Unity界面及GameObject等元素

  2. 了解Unity的UI系统

  3. 了解Unity的Event Trigger

  4. 了解Unity的Asset Store 和如何将资源导入自己的项目。

  5. 然后可以开始下载Vuforia SDK,打开Vuforia的Imaget Target DEMO研究并做成自己的小项目尝试。 到此时,你已经可以做出一些小的AR项目给朋友晒一下,但限制较大。

  6. 如果想开始进阶做一些脱离简单AR显示物件的事情,开始学习Unity的C#语言 或者JAVA语言(个人推荐前者)

  7. 深入做一些例如Vuforia在代码层级的修改,例如识别到图片后,触发某个事件/打开某个网页等等。

  8. 之后可以返回来了解Unity的Animation体系

Animation系统是关于物体动画的系统,就是我们看动画片或者玩游戏,人物的动作,物体的移动都可以由这个来编辑。

  1. Unity的Shader知识

  2. 然后可以尝试做AR的绘画项目开发。

  3. 再之后可以做一些更独立有数据交互的完整项目。


问: java开发有限制吗 或者性能不行?

: 没有,只是不少的Unity的插件都是C#为主而已。JAVA也是很欢迎。

问:自学难度大吗?比如相对ios游戏开发?

: 个人感觉,简单不少。在入门层面。因为不需要一开始就涉及游戏里面庞大复杂的各种系统和算法。但是如果你往深入去做,同样可以做成和游戏这么复杂罢了。因为AR不仅仅是游戏,还有应用层面的事情。


问:游戏行业这块,未来这项技术,主要应用在哪些方向,对于我们这些未来可能的从业者来说,国内的机会有多少?目前来说,成功案例就是Pokemon GO。

:游戏上,其实机会是很多的,但是还需要一段沉淀的窗口期。

因为AR对设备性能的损耗还是比较高,所以对于重度游戏来说,是一个悖论,毕竟游戏还是希望用户投入更多的时间在里面,但是AR由于调用摄像机以及图像算法的问题,再加上国内大部分手机设备的性能问题,导致目前来说用纯AR来做游戏,还是有一定的门槛。

但不代表没机会,而是机会很大。不仅因为各移动厂家开始纷纷往AR的硬件上更新和靠拢,更因为AR设备目前正在不断烧钱往2B领域,再往2C领域做。如果针对游戏领域这块,就像Hololence里面集成了“我的世界”这款游戏一样。这类型的AR游戏,让用户的沉浸度更高,且与现实之间完全交融。

所以,游戏是一定会在AR上继续发展,只是需要一定的时间沉淀。但是可预见的未来,AR方式的游戏,会更加突破,在家里的真实世界玩合并消除类游戏。在真实世界玩养成游戏。这些都会比传统游戏更有魅力和市场机会。更不论除游戏外的其他行业了。


问:记得过年的时候,支付宝跟QQ钱包都用了AR技术给大家发红包,目前都是通过拍照分享和虚拟触摸这种方式去展现这种技术,所以就目前国内来说,确实还是没到窗口期?

: 恩,苹果已经不断传出做AR性能上的升级,还有联想Poject Tango等,再加上现在Hololence开发 重度缺乏开发者,现在尝试应该还算是就业的黄金窗口期。

问:现在有在医学方向上的一些应用么?教育方面有没有好的应用场景?

: 医学上,我目前接触有高校实验室,就设立了基于HOlolence做手术培训的AR应用。主要通过传感设备和AR方式,让外科医生如亲临一场手术一样,通过传感设备进行物理反馈。这样降低了外科医生的培训成本。

我们目前也有一个项目是合作做医学培训的,因为传统的不少肌肉群只能在平面图片和视频上展示,所以对于一些特定部位的解剖和动力学很难比较直观清晰地展示出来,通过AR就是简单有效的手段。

其实这个也顺便回答了部分关于教育的,其实AR本质来说,就是对传统只能通过屏幕看的2D或者伪3D信息,现在就如放在我们熟悉的真3D空间里进行观察甚至交互。所以就如传统教育中比较难看到的化学粒子的结合,经典物理实验,立体三角集合等,都是一些可以应用的领域。

问:您说的传感设备进行物理反馈,能具体说下么? 我有点不太理解。

: 传感设备进行物理反馈,简单来说就是,我在虚拟空间里面构建出骨骼之类的物体,通过现实的交互设备,可能是一个传感器的棒子(模拟一把刀),在AR空间里面触碰这些骨骼物体的时候,会如反馈出入真实触碰到骨骼物体的感觉。其实主要是这个传感设备里面内置的物理部件产生的效果。

问:所以看到的其实建模做出来的吗?

: 对。虚拟物体都是建模,只是是自建还是扫描。


问:对于j2ee的开发者来说,如何进入AR领域,并逐步实战?

: 嗯,J2EE这领域我非常不太熟悉。但可以这么说,WEB端AR化也是一个必然的趋势,主要障碍还是性能问题。所以你可以继续在J2EE上精进,也可以去学一些类似three.js,WEBGL,OPENGL等相关的技术。因为这块会在这两年估计被各公司突破。不知道算不算回答了你的问题,因为对J2EE了解很粗浅,见谅。

问:这是不是意味着如果最后要深入这个领域,图形算法什么是必备的?

: 目前主流物理引擎在移动的WEB上支持度很低,所以OpenGL这里面会有一个时间窗口哈。可以考虑图形算法,当然我个人是主张直接学物理引擎的。毕竟这块只要有机会,大公司一定会优化。所以最好的方式是学习一些之后会成为一定主流的工具。提前在窗口期的时候进入,这样就不会追着技术走。不过如果你学习了图形算法,还有引擎底层这块的知识的话。现在应该很吃香。


问:您能讲讲webvr相关的技术吗?

: WEBVR么?其实和AR一样,但比AR好一些,AR还受限于直至目前大部分WEB调用摄像机的问题(虽然有一小部分安卓上面的特定微信版本是支持了) WEBVR技术主要也是受限于3D渲染这块的性能问题。当然现在有不少优化取巧的法子,不过今天主题是AR,咱们可以换个时间探讨。这里仅介绍国外一家3D扫描及3D渲染做得挺有意思的企业,matterport,大家可以上去瞧瞧他们的技术方案。


问:刚才老师说,AR游戏做到与现实之间完全交融,这个可以简单说下实现方案么? 是通过捕获现实世界的图像,然后匹配相应的虚拟世界的业务?

: 我有个朋友一直醉心和致力于开发一款AR女友养成的游戏,用Tango做的。这里面用的主要是SLAM方案。就是通过捕捉我们真实世界的环境信息,将虚拟人物较稳定的叠加到这个真实环境里面,让人透过显示屏看的时候产生真实与虚拟是一体的错觉。这些环境信息,其实就是特征点。


引用其中一个AR引擎,Kudan的产品视频图。这个就是他们的SLAM方案。其实可以不用理会他们实现的技术原理,只需要理会他们对于开发者来说,有两种比较常用的方式,一种是通过特定的图像来触发事件,一种是直接让开发者可以将虚拟物体放在真实环境中,并相对稳定融合在那个位置。


问:目前AR有在Web上的应用尝试吗?

: 如果看历史来说,Metaio之前推出了一款AR浏览器,应该算是WEB上的应用尝试吧。可惜被苹果直接收了。

如果看现在,我记得之前知乎有一个开发者发现安卓浏览器在新的版本开放了对摄像头streaming的权限,并在微信上做了一个小程序,可是识别度很低,非常不稳定,而且性能消耗极大(因为一般基于浏览器的3D渲染方案很吃内存),所以只能远观一下。但是这应该会在今年年中到年底会有一些进展。

我相信苹果也应该不是白收购Metaio,说不定之后会在浏览器支持方面给我们惊喜。


问:老师有提到,web端跟移动端的性能问题,,图形算法问题,也提到特别是移动端这边的摄像,电池续航能力,可能面临一些技术瓶颈,那硬件厂商这边,是不是也会出更多的穿戴设备,或像一些手柄啊,传感器之类的去辅助用户提升AR的用户体验更多乐趣,那都有哪些类型的硬件会比较有市场呢?

: AR/VR 在这方面我觉得是有共同点的,就是设备聚焦在如何让用户通过设备与虚拟那部分的信息进行交互,以及用户在空间里的定位。这个VIVE最近有突破发展,好像基站的识别范围增加了几倍。

如果从AR来说,目前方案都十分简洁,因为AR包括了图像识别方面的事情,所以我倒看到的是很多团队扎堆研究怎么通过移动设备来捕捉手势。目前AR方面来说,还真比较少这方面的设备,VR反而多,这与刚提到移动AR的续航问题,导致市场相对小有关。去到MR设备,例如Hololence,Meta等,他们直接采用自然人体沟通方式,语音、聚焦点、手势、位移等进行交互。后面两个就是基于图像识别为主。


问:老师可以推荐一些AR开发的教程吗?

: 其实我个人建议按照刚提到的知识图谱试一下先吧。其实AR开发教程和要发的那本书差不多,大体就包括了物理引擎的学习和AR 引擎的学习。但实际上里面有一些是没必要全部学完采取做的,全部学完后,一则并不是所有知识都是你现阶段会接触,导致学完容易忘记,二则学太多拉太长,耐心就被消耗。所以我个人建议先将一些最基本的知识点学习好,然后就开干,然后就在做的过程中不断继续精进,这样会比较快,然后多看别人的项目结构、代码和技术博客,这样就可以让功底逐步扎实。

恩,我这些是经验之谈,适合部分人,有一些朋友的学习方式可能更喜欢系统从头到尾,所以仅供参考。不以偏概全哈。


问:有没有AR相关论坛推荐,墙内外的都可以,想增加获取AR资讯的途径?

: 国内蛮牛好像不少。国外可以直接到Vuforia等这类型引擎的论坛看,以及StackFlow。其实最佳的方式就是google了。国内蛮牛、 arinchina都有一些相关的知识。


问:AR与图像识别、深度学习关系?

: AR的图像识别技术,可以叫做图像识别技术,但是与现在深度学习的图像识别是有区别。AR的图像识别更多在于提取图像的特征定,并对这些特征点作为一种存储,这个存储只是有利于以后的匹对,但是这些特征点组成的东西,对计算机来说是没有其他意义的。

深度学习则不一样,计算机对于这些图像的学习和认识、以及框出这些图像,并不是仅仅从这些特征点的组成有直接关系,还会和一系列的其他图像参数有相关。

现在AR引擎,有一些对文字可以进行辨识,那只是传统的前置式方式且因为文字的特征点组成非常单一,所以可以采用特征点方案去做。但对于类似生物及更复杂有多变化的“类”图像,如果只是运用特征点的方式,是不可能完成。

不过有一些很有趣的事情正在发生,例如OpenCV里面最新更新的那版,在库里面是放了对猫的识别在里面,而且准确率很高。估计这里面调用的应该是由深度学习训练过的模型。但因为我没有深入研究,只能做猜测。但大家可以发现,OpenCV及类似的计算机视觉,他们做的不仅仅是传统AR这类型的事情,未来AR或者说人机交互领域的事情也正在不断交融其中。

所以我是鼓励研究AR的朋友,有时间可以往更底层去学习,这里面蕴含的技术机会及就业前景还是很不错的。例如支付宝红包这些,其实用的就是一些基础的OpenCV的东西。国外有不少这方面的开源库,大家也可以去下载看看。

另外关于SLAM技术,我引用之前KUDAN引擎对外发布的那个技术视频,有兴趣的同学可以看看他们的技术原理。这个视频大概5M。Vuforai上类似技术叫Terrain,以及Extended tracking,但略有一些不同。 大家对这些技术有一个了解,也有利于未来做AR产品的时候对用户体验和产品设计上的把握。

上面Kudan的方案,其他每个引擎在这方面会有一些区别,本质都可以在这视频表现出来。但实际上目前由于摄像头所限,基于手机端的SLAM方案在景深的精确度和效率还是欠佳。目前这个技术,也被鼓吹为“Markerless”技术,即区别于传统的Marker技术,不需要识别图,物体直接存在于当前实际场景中,并不会随着移动而移动。但从这个视频大家会发现一些有趣的事情,例如他们需要通过前后的多次移动,来进行3D特征点群的构建,所以实际上在用户体验上,还是会欠佳。

另外,如果以后有朋友做AR时候,对引擎上想进行选择,也有一小段话给大家参考一下:

  • 国外:Vuforia, Kudan, Wikitude,

  • 开源引擎:ARToolkit,OpenCV等;

  • 国内: HIAR, EasyAR, VoidAR。

一个比较大的区别,Vuforia是识别的图像数据先在他们的工具上训练,生成dat文件和xml文件,然后再在客户端匹配,HIAR,ARToolkit也是用这个方案,但同时Vuforia和HIAR都配备了收费的云识别方案; EasyAR,Kudan, OpenCV则可以在本地添加新的图像数据或者生成marker set。

有一个很有趣的事情是,EASYAR也配备了云识别方案,而KUDAN则在WIKI上强调自己不会用云识别方案,因为会有延迟,所以他们可以在本地直接训练出对应的marker set(虽然他们的Editor经常崩溃)。其实都不能一句话说哪个更好,因为这些方案都是在对应的场景是可取的,所以关键还是要看具体的项目。


(以上内容转自GitChat,版权归GitChat所有,转载请联系GitChat,微信号:GitChat,原文:《陈鋆哲:关于AR,有一些很有趣的事正在发生》

本文转载自异步社区。

原文链接:https://www.epubit.com/articleDetails?id=NC7E3EF92F39000011BF91B20FDC131D0


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。