代码之家  ›  专栏  ›  技术社区  ›  Anters Bear

从arreferenceImage获取uiimage或ciimage

  •  0
  • Anters Bear  · 技术社区  · 6 年前

    我正在使用 ARKit 做一些动画 ARAnchors . 我的图像存储在 AR Resource Group 像下面一样。

    enter image description here

    因此,可以像下面这样访问它们,以便将它们作为跟踪图像加载到我的会话中。然而, 我还想对这些相同的图像做一些单独的操作 因此需要访问它们 CIImages UIImages . 现在我必须将这些单独导入到我的项目中,因为似乎没有一种方法可以从 ARReferenceImage . 有办法吗?使用起来很方便 应收款资源组 因为它在编译之前会显示有关潜在冲突的相关警告以及性能较差的标记。我还假设如果要将say png图像转换为 图像 然后进入 参考图像 在我的 viewDidLoad() 或者用类似的方法。

    guard let trackedImages = ARReferenceImage.referenceImages(inGroupNamed: "Photos", bundle: Bundle.main) else {
        print("No images available")
        return
    }
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   rickster    6 年前

    创建 ARReferenceImage Xcode中的S不将原始图像放入应用程序的资产目录,因此原始图像在运行时不可用。(相反,Arkit将图像预处理成一种形式,这样可以在使用较少存储的情况下提高识别效率。)

    如果您想同时使用图像进行arkit识别和视觉显示(或其他处理),您需要将其包括在资产目录中两次,一次作为应收账款参考图像,然后作为正常图像。( UIImage 资产。

    或者,可以将其作为普通图像添加到资产目录中,然后创建 参考图像 在运行时,该类有一个初始值设定项, CGImage .(在这种情况下,使用资产目录的ar reference images区域对您的图像进行预处理并确保它们对识别有利,即使您没有以这种方式交付它们,也可能有用。