【问题标题】:Apple Vision image recognition苹果视觉图像识别
【发布时间】:2018-02-19 11:03:36
【问题描述】:

与许多其他开发人员一样,我也投入了 Apple 的新 ARKit 技术。这很棒。 然而,对于一个特定的项目,我希望能够识别场景中的(现实生活)图像,或者在其上投射一些东西(就像 Vuforia 对其目标图像所做的那样),或者使用它来触发事件我的申请。

在研究如何实现这一点时,我偶然发现了 Apple 的 Vision 和 CoreML 框架。这似乎很有希望,尽管我还没有完全理解它。

据我了解,通过使用 Vision 框架查找矩形并将其输入 CoreML 模型,该模型只需将其与我在模型中预定义的目标图像进行比较,我应该能够完全按照我的意愿行事。然后它应该能够吐出它找到的目标图像。

虽然这在我的脑海中听起来不错,但我还没有找到一种方法来做到这一点。我将如何创建这样的模型,甚至有可能吗?

【问题讨论】:

  • 有趣的是,我昨天还在想这到底是怎么回事。感谢您的提问!

标签: swift machine-learning augmented-reality arkit apple-vision


【解决方案1】:

几周前我在 Github 上发现了这个项目: AR Kit Rectangle Detection

我认为这正是您正在寻找的......

【讨论】:

  • 是的,这很好,谢谢。然而,这只是我正在寻找的基础,因为这个应用程序能够检测一个矩形,但不能区分该矩形上的不同图像。我认为使用 CoreML 应该是可能的,但是我不确定我将如何去做。
  • 我正在寻找完全相同的。您已经找到解决方案了吗?我正在考虑训练一个模型。在带有 CoreML 的 ARKit 识别图像后,找到矩形,你就得到了你想要的。但我认为只为一张图像训练 CoreML 模型太过分了......
  • 很遗憾,我在想同样的事情,但还没有找到答案。对于我目前正在进行的项目,我尝试将 ARToolkit 和 ARKit(前者仅用于图像识别)结合起来。这当然可以通过 Unity 实现,尽管我还没有完成这个过程。但是,如果您想在本地进行,我不确定您是否可以。我知道 Vuforia 计划在明年年初的某个时候发布 Vuforia Fusion,它将其图像识别功能与 ARKit 甚至 ARCore 相结合。
  • 我正在尝试做同样的事情。正在考虑使用 AWS Rekognition 处理图像,但我仍然需要一种方法来了解本地是否已处理人脸。
【解决方案2】:

从 ARKit 1.5(2018 年春季与 IOS 11.3 一起推出)开始,似乎直接在 ARKit 之上实现了一项功能,可以解决这个问题。

ARKit 将全面支持图像识别。 识别图像后,可以将 3d 坐标作为锚点检索,因此可以将内容放置在它们上面。

【讨论】:

    【解决方案3】:

    Vision 检测图像的能力是从 iOS 11.3+ 开始在 ARKit 中实现的,所以从那时起 ARKit 就有了 ARImageAnchor 子类,它扩展了 ARAnchor 父类并符合 ARTrackable 协议。

    // Classes hierarchy and Protocol conformance...
    
    ObjectiveC.NSObject: NSObjectProtocol
            ↳ ARKit.ARAnchor: ARAnchorCopying
                    ↳ ARKit.ARImageAnchor: ARTrackable
    

    ARWorldTrackingConfiguration 类有一个 detectionImages 实例属性,它实际上是 ARKit 尝试在用户环境中检测的一组图像。

    open var detectionImages: Set<ARReferenceImage>!
    

    ARImageTrackingConfiguration 类也有一个 trackingImages 实例属性,它也是一个集合,它的用途相同 - ARKit 尝试在用户环境中检测和跟踪它。

    open var trackingImages: Set<ARReferenceImage>
    

    因此,如果配置正确并能够在 ARSession 中自动获取 ARImageAnchor,您就可以将任何几何体绑定到该锚点。

    P.S.如果您想知道如何在您的 ARKit 应用中实现图像检测功能,请查看 this post

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-10-04
      • 1970-01-01
      • 2017-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-04
      • 1970-01-01
      相关资源
      最近更新 更多