2

这是与此问题类似的问题,但未收到任何答案。我要问一个新问题,因为我的边界与上一个问题完全不同。

我正在检测一个人的脸,AVCaptureSession并在脸上的屏幕上添加一个矩形。我现在希望能够捕获我添加到屏幕的 UIView 背后的内容。如果这不可能,我可以满足于使用 box 裁剪从 captureOutput 进来的每一帧CGRect。我该怎么做这些事情?

这是我正在使用的代码,它采用面部矩形并在其上显示 UIView:

func metadataOutput(_ output: AVCaptureMetadataOutput, didOutput metadataObjects: [AVMetadataObject], from connection: AVCaptureConnection) {

        for face in metadataObjects {
            let transformedMetadataObject = self.cameraLayer.transformedMetadataObject(for: face)!
            let rect = transformedMetadataObject.bounds

            let box = UIView.init(frame: rect)
            box.backgroundColor = UIColor.init(red: 1, green: 1, blue: 1, alpha: 0.5)

            for faceRect in faceRects {
                faceRect.removeFromSuperview()
            }

            faceRects.append(box)
            self.view.addSubview(box)
        }

    }
4

0 回答 0