我正在使用 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/