iOS上的Unity3D,检查Obj-C中的设备摄像头图像

Mar*_*rcT 7 camera objective-c unity-game-engine ios

我有一个Unity/iOS应用程序,可以捕获用户的照片并在3D环境中显示它.现在我想利用CIFaceFeature找到眼睛位置,这需要访问本机(Objective-C)层.我的流程看起来像:

Unity - > WebCamTexture(编码并将图像发送到本机 - 这是缓慢的)

Obj-C - > CIFaceFeature(找眼线)

Unity - >显示眼睛位置

我有一个工作原型,但它很慢,因为我在Unity(WebCamTexture)中捕获图像,然后将其发送到Obj-C进行FaceFeature检测.似乎应该有一种方法可以简单地让我的Obj-C课"检查有源相机".这将比编码和传递图像快得多,快得多.

所以我的问题,简而言之:

  • 我可以在Obj-C中查询当前是否有摄像头正在捕捉?
  • 如果是这样,我如何从当前正在运行的会话中"快照"图像?

谢谢!

小智 1

Unity 3D 允许执行本机代码。在脚本参考中,查找本机插件。通过这种方式,您可以显示本机 iOS 视图(带有相机视图,根据您的要求可能会隐藏)并运行 Objective C 代码。然后,如果您需要在 3D 视图中使用眼睛检测结果,请将其返回给 Unity。