gpt4 book ai didi

c# - 在将 ARKit 与 Unity 结合使用时访问 iPhone 相机帧,转换 camera.videoparams.cvPixelBuffer

转载 作者:可可西里 更新时间:2023-11-01 06:13:00 24 4
gpt4 key购买 nike

我目前正在尝试创建一个同时使用 OpenCV 和 ARKit 的 Unity 项目。我有 OpenCV 来执行一些我不想直接通过 ARKit 执行的轻量级特征识别。我让 ARKit 应用程序和 OpenCV 应用程序分开工作;但是,当一起使用时,ARKit 会抓取相机,我还没有想出如何将 ARKit 帧数据获取到 OpenCV 以进行我计划的特征识别。

我目前的目标是使用 ARFrameUpdated 方法通过管道传输 ARKit 帧数据,如下所示:

public void ARFrameUpdated(UnityARCamera camera)
{
// Get the frame pixel buffer
var cvPixBuf = camera.videoParams.cvPixelBufferPtr;

// Somehow convert to BGRa and insert into OpenCV datastructure

// Perform OpenCV related actions
}

但是,我不确定如何将 camera.videoParams.cvPixelBufferPtr 转换为我可以与 OpenCV 一起使用的东西。

如果有人知道我可以用来执行此操作的另一种方法,那也将不胜感激。

最佳答案

尝试创建一个新相机,将 UnityARVideo 添加到其中并将其剔除 mask 设置为空,然后将其渲染到 RenderTexture。它将向纹理渲染未增强的相机馈送。

关于c# - 在将 ARKit 与 Unity 结合使用时访问 iPhone 相机帧,转换 camera.videoparams.cvPixelBuffer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47578294/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com