2016-05-17 9 views
0

私は顔を検出して写真に何かを加えることができるAVFoundationのプロジェクトに取り組んでいます(写真を撮る前に)。プレビューレイヤーとイメージキャプチャを実装しました。AVFoundation顔検出フレーム

私の質問は、顔検出を導入し、顔オブジェクトのフレーム/位置を取得するにはどうすればよいですか?プレビューレイヤーの上に何かを追加して、ピクチャにもキャプチャされるようにすることは可能ですか(新しいスナップショットフィルタを考えてください)?

TIA

+1

から顔矩形を得ることができますか? https://developer.apple.com/library/ios/samplecode/SquareCam/Introduction/Intro.htmlこれには顔検出機能があります。 – Ro4ch

答えて

4

あなたはフレームで見つかったメタデータを取得するために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) 
     } 
    } 
} 

は、その後、あなたがAppleのsquareCamプロジェクトをチェックアウトしたtransformedMetadataObject.bounds