gpt4 book ai didi

ios - 使用 AVfoundation swift 2 进行人脸检测

转载 作者:行者123 更新时间:2023-11-29 12:08:04 28 4
gpt4 key购买 nike

因此,我已经成功地建立了一个小项目,该项目使用 AV 基础通过按一下按钮启动后置或前置摄像头。现在我已经控制了摄像头,我想将人脸检测实现到可以在摄像头预览中绘制出人脸所在位置的水平。

我在网上看到的教程使用了 AVCaptureMetadataOutputObjectsDelegateAVCaptureVideoDataOutputSampleBufferDelegate 以及主要的 tutorial我正在尝试使用 GLkit 来控制直播。我无法遵循它,因为他们网站的代码与他们的 github 不匹配,而且我有太多问题而无所适从。

任何人都可以帮助我将人脸检测设置到可以使用 AVfoundation base 将其映射到屏幕上的水平吗?或者给我指出一个学习完成这个的好地方?

最佳答案

太好了,您已经了解了 Capture Session 的相关知识,现在您需要做的是使用 AVCaptureMetadataOutputObjectsDelegate

实现它的 func captureOutput(_ captureOutput: AVCaptureOutput!,
didOutputMetadataObjects 元数据对象:[AnyObject]!,
来自连接:AVCaptureConnection!)
方法。

您的代码可能如下所示:

func captureOutput(captureOutput: AVCaptureOutput!, didOutputMetadataObjects metadataObjects: [AnyObject]!, fromConnection connection: AVCaptureConnection!) {

var faces = [CGRect]()

for metadataObject in metadataObjects as! [AVMetadataObject] {
if metadataObject.type == AVMetadataObjectTypeFace {
let transformedMetadataObject = previewLayer.transformedMetadataObjectForMetadataObject(metadataObject)
let face = transformedMetadataObject.bounds
faces.append(face)
}
}

print("FACE",faces)
}

一旦找到人脸,您可以使用其他层在人脸周围绘制矩形或做其他事情。

这是一个 demo可以引用。

关于ios - 使用 AVfoundation swift 2 进行人脸检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34383917/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com