/ Nweon / 0浏览

映维网之境腾科技HoloLens开发Q&A问答总结



映维网
2020年11月18日

)近日,映维网邀请
HoloLens
技术开发专家

境腾科技

联合举办了一场“

HoloLens开发Q&A问答

”活动,于11月16日周一晚上20点在含有近500名AR/VR开发者的映维网开发者微信交流群内进行。本次活动收集了100多个问题,最终在问答活动时间内,来自境腾科技技术专家谢宾、陈深皆和翟浩凡三人为其中50多个技术开发问题提供了专业解答。



境腾科技

三位技术嘉宾:

以下是本次“HoloLens开发Q&A问答”活动的总结(部分同类问题已合并),涉及参考资料超链接的请点击相应部分的

蓝色文字

内容。


问题1:目前HoloLens相关的安卓、iOS应用似乎仅有Dynamic 365是一个模型查看软件,请问HoloLens官方有没有更多的移动端开发项目?类似于手机端HoloLens操控,或者用手机作为控制器之类?

我们所了解到的是没有的。


问题2:如何做到戴上HoloLens之后,将处于不规则表面(比如曲面)的待处理的目标用高亮线把目标的轮廓标记出来


问题3:用MRTK开发安卓、
苹果
AR App有没有可行性,需要将
Unity
打包成Library嵌入到Flutter,有没有已经成功的案例,目前是否是成熟产品的可选技术方案

可以使用MRTK + Unity AR Foundation来开发Android / iOS AR App,这个我们有实现过。但是没有将Unity打包成Library嵌入Flutter的经验。理论上都是可以按照以下步骤实现:


问题4:关于HoloLens第三方视角开发,如何导出第三人称视角视频

第三方视角可以借用Vuforia来实现这样的功能,HoloLens和iPad都扫描一个图片,所有场景中的模型的位置全都相对于这个扫描图进行固定,这样两边设备中的模型都相对于这个扫描图的位置是固定的。这样即可实现第三方视角,也可以在iPad上用录屏的方式来录制第三方视角的视频。


问题 5:如何将HoloLens开放接口给第三方软件数据处理软件,并将反馈结果在HoloLens中显示

HoloLens和第三方数据源的数据交换通常以HoloLens作为客户端,数据源作为服务器,使用HTTP Restful API / WebSocket / TCP 等协议来请求数据,再展示在HoloLens中。


问题6:如何优化场景才能更好适配HoloLens

请参考微软官方优化文档

(点击查看参考资料)


问题7:怎么将微软远程专家系统集成进自己应用中,作为一个整体使用

微软Dynamics RA没有办法作为SDK / Library级别嵌入第三方应用,但是微软Dynamics RA可以在后台运行,所以打开Dynamics RA连接远端,然后再打开第三方应用,远端即可看到第三方应用的内容。


问题8:外接蓝牙键盘怎么使用输入法输入中文

HoloLens支持鼠标键盘,可以输入中文,但是没有中文字符的联想功能,所以可能会无法选择到自己想要的文字。


问题9:如何把自建三维模型导入HoloLens中

按常规HoloLens开发流程,在Unity中导入模型,打包发布到HoloLens中即可。打个广告,我们有现成的多人协同系统和工作流程系统,可以直接上传模型,并在HoloLens里面查看。


问题10:多台设备如何实现空间坐标同步

有多种实现方式:


问题11:HoloLens数字沙盘如何开发

美术建模出数字沙盘,UI创作需要在沙盘显示的画面,程序把这些素材结合起来,实现程序逻辑。


问题12:HoloLens应用场景中的模型如何产生阴影效果


问题13:如何提高叠加物体定位的精度和稳定性

在Hololens 2中提高物体稳定性通常需要考虑:

具体请参考微软官方文档

(点击查看参考资料)


问题14:最新版本MRTK关于HoloLens 1代的配置文件适配问题

没有用最新版本的MRTK在HoloLens 1中做过开发,在HoloLens 1中做开发,推荐使用HoloToolkit Unity 2017.4的版本来做。


问题15:HoloLens 1代与Unity连接调试的前置条件有哪些

HoloLens需要安装
Holographic
Remoting这个APP,在微软应用商店可以下载。


问题16:工业使用中OPC与产品接口相关参数

不建议HoloLens App直接访问OPC Server,原因是支持OPC的现有类库无法直接在 UWP /
ARM
64平台上使用。我们通常的做法是做一个中间服务来连接OPC Server获取数据,然后整理后再通过HTTP Restful API / WebSocket / TCP 等协议传给HoloLens App。


问题17:现在MRTK中的面板都是用的Quad Mesh面片,没有用UI,这样有什么好处

使用UI的时候会出现水波纹、缎纹的情况,使用Quad 可以避免这种情况出现。


问题18:HoloLens因为没有配备GPS,请问在户外使用设备时,如何让其更高效的引导用户?SLAM还能是该问题的最佳方案吗

可以外接GPS设备,但效果不佳。第三方方案比如Easy AR可以视线类似场景,但目前没有兼容UWP,需要自行定制开发。


问题19:Spatial Mapping 里的场景理解是其核心技术之一,请问可否具体讲解一下它的使用逻辑和方法?以及其算法可否再次优化以带来更友好的创建数字内容的体验

具体方法可以参考官方文档

(点击查看参考资料)


问题20:怎么样实现远程标注

实现远程标注实际上是利用小孔成像的原理:标注APP可以认为是在成像平面上进行标注,通过系统API获取HoloLens小孔成像模型的内参,计算出在HoloLens单位平面上的对应坐标,然后利用HoloLens SLAM能力得到的相机外参,通过发射射线和HoloLens检测到的物理平面层进行碰撞,然后得到标注点所在真正在3D空间中的点坐标。下面视频是我们的实现演示:


问题21:多台HoloLens实时视频通话该如何实现,后续能否出Demo

可以使用微软官方Webrtc类库

(点击查看参考资料)


问题22:目前能否接入讯飞等中文语音识别,微软的好像无法识别中文

MRTK是可以识别中文,前提需要把HoloLens的系统语言设置为中文才可以。


问题23:如何用Unity实现在HoloLens2中显示视频

推荐使用AVPro Video这个插件。


问题24:怎样添加多个Anchor在人走动的过程中使3D模型更稳定?有没有用过World Locking,是怎么使用的

添加多个Anchor并不能使3D模型在走动时更加稳定,请参考问题13。 World Locking 解决的问题是场景级别和物理世界的同步与锁定,因为刚出我们也没有使用过。


问题25:有没有PC Remote Rendering成功使用的经验,我们试过但是失败了,安装包安装到电脑上之后,连不到HoloLens View怎么办

PC Remote Rendering需要在Player Setting里勾选一个选项,叫WSA Holographic Remoting Supported。


问题26:HoloLens 2目前比较好的AR工具包是什么以及基本使用方法

可以用微软MRTK QRCode Tracking 或者Vuforia。


问题27:如何较好地实现远程语音或视频传输功能

可以使用微软官方Webrtc类库

(点击查看参考资料)


问题28:手机观看第三方视角能否进行直接交互

可以,用MRTK的话,对模型的移动、缩放、旋转是可以直接操作的,点击事件,需要自己写个脚本处理一下。


问题29:如何实现多设备共享场景展示与交互


问题30:有无API重置世界坐标原点

Unity没有提供此API。


问题31:HoloLens 2,Vuforia代码进行录像只能录几秒吗

Vuforia一直开着的话,HoloLens录像会和Vuforia抢摄像头,录像和扫码不可以一起跑,扫码结束后需关闭Vuforia组件。


问题32:多个佩戴HoloLens 1或2的体验者集中操作时,以上帝视角拍摄时最优的硬件方案及网络布局方案是什么

我们的经验是:


问题33:在图像识别不理想的情况下,HoloLens 2是否支持局部空间扫描?另外,真实物体与虚拟物体的前后的遮挡关系如何以最低开发难度的方式解决?

真实物体与虚拟物体的前后遮挡关系,开启HoloLens的空间扫描,把空间扫描出的网格的Shader设置黑色的Shader,就可以实现。


问题34:纯黑色材质在HoloLens中渲染不出效果,被视为透明穿透显示现实空间,有什么好的解决办法遮挡住现实物体凸显黑色材质模型吗

尽可能避免使用黑色,用深灰色,HoloLens无法渲染黑色材质。


问题35:如何实现环境扫描,让内容可以基于环境做交互,如何保存环境扫描数据,并上传网络,自己的服务器可以吗

可以实现,自己采集网格数据上传服务器,然后再实例化使用。


问题36:如何让HoloLens识别所在房间并在房间设备上叠加虚拟信息


问题37:HoloLens的远程渲染,较大文件的HoloLens发布,是否可以放在云端,目前有什么比较好的的方法

用Azure Remote Rendering,或者自己写一个,请参考微软官方文档

(点击查看参考资料)


问题38:如何在减少模型面数的情况下提高视觉效果

模型师多下些功夫。


问题39:Microsoft Mixed Reality Toolkit和Unity Package Manager是如何配合使用的

和普通的Unity开发没有区别。


问题40:HoloLens是否有远程渲染的解决方案,是否支持一台服务器同时渲染多个画面不同的HoloLens终端

自己写一个渲染服务器试试看,请参考微软官方文档

(点击查看参考资料)


问题41:HoloLens的摄像机矩阵,官方的Try Get Camera To World Matrix方法 只能是调用拍照时返回,我现在用的是微软Github上的Webrtc框架做的视频通讯,请问怎么能在视频时,实时获取摄像机的Try Get Camera To World Matrix和Try Get Camera To World Matrix的数据呢

需要使用Windows Runtime Api,获取Media Frame Reference 或者IMF Sample,然后再通过相应的API 获取相机位姿。具体请参考微软官方文档

(点击查看参考资料)

——————


关于境腾科技

上海境腾信息科技有限公司是微软官方认证的全球混合现实合作伙伴。境腾科技 (Jingteng Tech)座落于中国(上海)网络视听产业基地,与微软亚太技术中心毗邻,是一家专注于混合现实MR(Mixed Reality)技术的高科技企业。基于混合现实的数字化呈现,交互,及协同技术,为金融、工业、职业教育等行业提供混合现实数字化解决方案,为行业赋能带来新的突破。核心团队来自原微软技术团队、微软企业服务支持团队、凯捷咨询等行业领先企业,拥有多年行业应用研发经验,已为多家上市企业及行业龙头提供混合现实解决方案。公司网址:

http://www.jingtengtech.com/

0

  1. This post has no comment yet

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注