-1

我使用 vuforia 统一创建了一个原型应用程序,在其中我将图像上传到 myserver,然后服务器将图像(以及元数据中关联的资产包链接)发送到 vuforia 云,以将其添加到图像目标数据库中。然后在相机跟踪图像目标时统一下载资产包以增强它。

public void OnNewSearchResult(TargetFinder.TargetSearchResult targetSearchResult)
{
    TargetFinder.TargetSearchResult cloudRecoSearchResult =
        (TargetFinder.TargetSearchResult)targetSearchResult;

    mTargetMetadata = cloudRecoSearchResult.MetaData;
    Debug.Log(mTargetMetadata);

    mCloudRecoBehaviour.CloudRecoEnabled = false;

    // Build augmentation based on target
    if (ImageTargetTemplate)
    {
        Debug.Log("Image target activated");
        // enable the new result with the same ImageTargetBehaviour:
        ObjectTracker tracker = TrackerManager.Instance.GetTracker<ObjectTracker>();
        ImageTargetBehaviour imageTargetBehaviour =
         (ImageTargetBehaviour)tracker.TargetFinder.EnableTracking(
         targetSearchResult, ImageTargetTemplate.gameObject);
        JsonData jd = JsonMapper.ToObject(mTargetMetadata);
        string url = jd["content-url"].ToString();
        Debug.Log("video url :"+ "http://192.168.2.92/arads/" + url);
        vidPlayer.url = "http://192.168.2.92/arads/"+url;
        vidPlayer.Prepare();
        if(!vidPlayer.isPlaying)
        vidPlayer.Play();
    }
}

上面的代码是从服务器获取相关视频。我可以使用arcore或arfoundation获得类似的功能吗,我读到arcore的参考图像数据库可以有1000张图像,

  1. 如果我正在跟踪的图像不在当前数据库中,我可以切换到不同的数据库吗?

  2. 每当我在服务器上上传新图像时,是否必须下载图像并将其添加到应用程序中的数据库?

  3. arcore 中的这些图像可以像 vuforia 中那样具有元数据吗?

4

1 回答 1

0

ARCore 和 Vuforia 之间的区别在于 ARCore 您可以在运行时将图像添加到数据库,因此您不必使用任何服务器。

  1. 您可以通过使用以下方式修改会话配置来切换到不同的数据库:GoogleARCore.ARCoreSessionConfig.AugmentedImageDatabase
  2. 正如我所说,您可以在运行时将图像添加到数据库,只要您的项目层次结构中有图像,您就可以将图像添加add images到数据库。
  3. 我认为拥有元数据是不可能的,只有您可以获得的信息是图像的数据库索引。

祝你好运!

于 2019-02-21T09:49:11.397 回答