有关AR SDK中图像识别的一个问题。目标图像应该是应用程序本身的一部分是强制性的吗,还是我们可以在应用程序内存中存储一组图像并使用它执行设备上的图像识别(每次在屏幕上单击按钮时图像可能会更改或下载)该应用程序)?注意:用例仅是图像识别,而不是AR功能
答案 0 :(得分:1)
您可能已经注意到,用于从应用程序包加载图像并将其提供给ARKit进行检测的类为ARReferenceImage
。
向下滚动该类的文档页面,除了找到一种加载参考图像的方法外,您还将找到两个用于在运行时创建参考图像的初始化器:
CGImage
-based initializer适用于从其他地方加载图像内容的情况,例如从用户的照片库中获取图像或从服务器下载。CVPixelBuffer
-based initializer非常适用于GPU内存中已有图像内容的情况,例如,如果您要提取ARKit capturedImage
的一部分以用于图像检测。尽管如此,这是一个警告。当您在构建时将图像放入资产目录时,Xcode会对它们进行预检,以确保每个单独的图像都适合检测,并且整个图像之间的区别足以使它们可靠地被识别。
如果要动态提供图像,则不会进行预检步骤,该步骤会产生您需要解决的设计/交互问题: