您好,登录后才能下订单哦!
本篇文章给大家分享的是有关如何用HoloLens和Kinect构建远程呈现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
前天参加微软混合现实解决方案交流会时,看到有用Hololens来进行肢体跟踪。但是我们都知道第一代Hololens本身只能识别手部几个姿势,所以需要另外搭配其他设备一起来实现这个功能。回来后我也在网上查阅了一些资料,我将分享如何用Hololens和Kinect来构建远程呈现。
1、外部摄像头和网络连接
HoloLens配有内置摄像头。但为了创建远程呈现应用,需要一台能够面对摄像头并进行拍,也就是需要使用外置摄像头。使用Kinect2作为外置摄像头,Kinect2是微软公司于2014年10月开始在中国销售第二代Kinect for Windows感应器,Kinect2特点:
彩色摄像头为1920*1080,
深度摄像头为512*424,
可以同时检测到6名用户的姿势
可以检测到人体25个关节点
检测范围为0.5m-4.5m
角度(水平70° 垂直60°)
kinect2可以获取更多用户姿势,以及用户更多关节点,检测范围更加广泛,角度也是更加宽阔,为用户带来全新的体验感。因为它可以广泛使用,功能非常强大,并且可以很好地适用于Unity。
HoloLens不允许第三方硬件插入USB端口,因此需要某种网络层来促进设备间通信。使用HoloToolkit的共享服务(Sharing Service),因为在Unity IDE中有一个用于启动服务的下拉菜单,如图所示。
2、HoloLens-Kinect项目介绍
现在许多远程呈现HoloLens应用都是基于Michelle Ma的开源HoloLens-Kinect项目来进一步开发的,地址:https://github.com/michell3/Hololens-Kinect。这个项目将两个库(用于Kinect的Unity Pro插件包与HoloToolkit共享服务)粘合在一起,并使用它们来解决问题。
虽然Unity的Kinect插件在UWP中不起作用(Kinect无论如何都不能插入HoloLens设备中),但它仍然可以在部署到Windows或在IDE中运行时运行(在这种情况下,它使用 .NET 3.5框架而不是.NET Core框架)。关键就是在Windows中运行Kinect集成,然后通过无线网络将消息发送给HoloLens,使Kinect和Hololens一起工作。
在网络方面,HoloToolkit的共享服务主要用于在不同设备之间同步世界锚。 它还要求在PC上实例化服务,以充当不同设备之间的通信总线。但是,共享服务不必按这样使用。由于该服务已在PC上运行,因此它也可用于PC与单个HoloLens设备之间的通信。此外,它可以用来发送不仅仅是世界的锚,它还可以发送任何类型的原始值,例如,Kinect的位置。
3、使用HoloLens-Kinect项目二次开发
使用Michelle Ma的代码,需要两个独立的Unity项目:一个用于在台式PC上运行,另一个用于在HoloLens上运行。把Kinect插件包添加到桌面应用程序中。从HoloToolkit中将共享预制件添加到两个项目中。在为HoloLens设计的应用程序中,将机器的IP地址添加到共享阶段组件的服务器地址字段中。
这两个应用程序大致相同。在PC端,应用程序从Kinect获取正文流并将联合数据发送到名为BodyView.cs脚本上。BodyView在识别出一个新的物体时会为每个关节创建球体,然后在Kinect更新时重新定位这些关节。
另一个名为BodySender.cs的脚本会接受此数据并将其发送到共享服务。在HoloLens设备上,一个名为BodyReceiver.cs的脚本获取了接收到关节数据并将其传递给它自己的BodyView类实例,该类实例化了由球体基元组成的点组。
用于共享服务以传输Kinect数据的代码包含在Michelle Ma的CustomMessages2类中,它实际上只是HoloToolkit共享示例中的CustomMessages类的直接副本,稍作修改即可发送和接收联合数据。
4、用Kinect来扩展Holoens手势
Kinect非常擅长手势识别。HoloLens目前支持数量有限的手势,受到内外摄像头能看到的东西的限制,主要是手指。但是可以使用上面的Kinect-HoloLens集成来扩展HoloLens的手势组合,以包含用户的整个身体。
以上就是如何用HoloLens和Kinect构建远程呈现,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。