在 Unity 中从 Vuforia 获取相机帧

Get camera frame from Vuforia in Unity

我想使用 unity3d、vuforia 包和 opencv 创建一个简单的 AR 应用程序。通常在 unity AR 应用程序中,找到选定的 2d 目标并投影虚拟 3d 对象。

我想改变这些场景。

  1. 开启AR相机
  2. 从相机获取帧
  3. 使用opencv函数处理帧(可能是opencvsharp)
  4. 找到标记并投射虚拟对象

为了完成这个任务,我做了以下步骤:

  1. unity
  2. 中创建一个新项目
  3. 进口vuforia package
  4. 删除main camera
  5. 添加 AR 相机

AR相机有3个c#个文件,我打开看看。但我没有看到任何代码打开相机并获取框架。截图如下:

编辑

接受的答案有助于加载用户定义的标记。

这是使用 Unity 的 Vuforia 的基本工作流程。

License Manager

开始
  • License Manager 页面转到 Add License Key

  • b 输入您的详细信息,如果您不打算在 Select Plan 选项中使用付费版本,请单击 None

现在转到目标管理器

  • 第一个 Add a Database(如果您还没有)并给它一个 Name,添加 License Key 并单击 Create

  • 现在在您的数据库中单击 Add Target 并再次输入所有详细信息并上传您的图像。

  • 现在 Download Database 并确保您已将它的用法设置为 Unity Editor

现在在 Unity 中

  • 添加你的ARCamera

  • 通过Assets-Import Package-Custom Package

  • 将下载的数据库导入Unity
  • 现在在 ARCamera 的 Inspector 面板中,您会看到 Data Set Load Behaviour 有您的 unity 包名称。检查它,并检查Active以及

  • 现在在 Assets,转到 Qualcomm - Prefabs - ImageTarget 并将图像目标拖到场景中。

  • ImageTarget Inspector 中,您会发现 ImageTarget 行为,您可以为图像设置值。

从现在开始,你做什么完全取决于你。您可以像在普通 Unity 应用程序上一样添加模型或动画。

可在以下位置找到用户定义的目标:https://developer.vuforia.com/library/articles/Solution/Unity-Load-DataSet-from-SD-Card

希望对您有所帮助。