ios - AVFoundation人脸检测框架

标签 ios objective-c iphone camera avfoundation

我正在使用 AVFoundation 开展一个项目,我可以在其中检测人脸并向图片添加一些内容(在拍照之前)。我已经实现了预览层和图像捕获。

我的问题,如何引入人脸检测并获取人脸对象的框架/位置?是否可以在预览层的顶部添加一些东西,以便它也被捕获在图片中(想想新的 snapchat 过滤器)?

TIA

最佳答案

您可以使用 AvCaptureMetadataOutput 获取帧中的元数据:

func captureOutput(captureOutput: AVCaptureOutput!, didOutputMetadataObjects metadataObjects: [AnyObject]!, fromConnection connection: AVCaptureConnection!) {
    for metadataObject in metadataObjects as [AVMetadataObject] {
      if metadataObject.type == AVMetadataObjectTypeFace {
        var transformedMetadataObject = previewLayer.transformedMetadataObjectForMetadataObject(metadataObject)
      }
    }
}

然后你可以从transformedMetadataObject.bounds中得到人脸矩形

关于ios - AVFoundation人脸检测框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37287685/

相关文章:

iphone - Malloc() 为单个结构创建空间,而不是为结构数组创建空间

iphone - iOS 7 UINavigationbar setTranslucent : NO crashes app

iphone - 适用于 iOS 的 Google map 链接

android - react-native-sound 不适用于 iOS 的生产构建,但适用于模拟器和生产 android

objective-c - 在 watch os 2 运行时更新 wkinterfacecontroller 的方法

iphone - 如何在iPhone屏幕上用线条画签名?

objective-c - 在XML文档中使用“小于”字符(<)并进行解析

iphone - 旋转 iPhone 并改变 View

ios - 使用标签和按钮创建自定义 popuser (swift/ios)

iphone - Web 应用程序 GPS 轮询