Hololens2远程音视频通话与AR远程空间标注,基于OpenXR+MRTK3+WebRTC实现

Unity大海 2024-07-10 11:03:01 阅读 84

Hololens2远程音视频通话与AR远程空间标注

在这里插入图片描述

使用Unity2021.3.21版本开发,基于OpenXR+MRTK3.0+WebRTC实现。

(1)通过视频获取视频帧的矩阵的方法可以参考:https://learn.microsoft.com/zh-cn/windows/mixed-reality/develop/advanced-concepts/locatable-camera-overview

<code> 通过MediaCapture类可以进行MR视频捕捉,当然也可以通过微软的第三方插件进行捕捉视频。通过改视频获取到视频帧对应的矩阵即可。

(2)视频坐标到空间坐标,根据(1)里面的视频帧对应的矩阵就可以了将视频上面的坐标转换到空间Hololens空间中

下面展示一些 内联代码片

/// <summary>

/// 将屏幕上的坐标转换到世界坐标(将视频上的坐标转换成0到1的坐标,坐标原点为视频左下角,即为相对MR捕捉相机的屏幕坐标)

/// </summary>

/// <param name="x">(0~1)</param>code>

/// <param name="y">(0~1)</param>code>

/// <returns></returns>

public Vector3 ScreenPointToWorldPoint(float x, float y)

{

Vector4 clipPos = Vector4.zero;

clipPos.x = 2 * x - 1;

clipPos.y = 2 * y- 1;

clipPos.z = -0;

Vector3 cameraPosinv =cam.projectionMatrix.inverse.MultiplyPoint(clipPos);

return cam.cameraToWorldMatrix.MultiplyPoint(cameraPosinv);

}

##

(3)附上一些学习视频

视频一:https://www.bilibili.com/cheese/play/ss16358

视频二:https://www.bilibili.com/video/BV12J4m1j7XS/



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。