首页 > 解决方案 > CoreML Vision 人脸检测的输入图像尺寸要求是什么

问题描述

我正在使用 Vision 框架来检测图像中的人脸。我在 Apple 的文档中找不到输入图像的要求。通常在使用机器学习模型时,特别是在 CoreML 中使用 .mlmodel 时,它描述了所需的输入。例如Image (Color 112 x 112).

let image: UIImage = someUIImage()    
let handler = VNImageRequestHandler(ciImage: CIImage(cgImage: (image?.cgImage)!))
let faceRequest = VNDetectFaceLandmarksRequest(completionHandler: { (request: VNRequest, error: Error?) in
    guard let observations = request.results as? [VNFaceObservation]
    else {
        print("unexpected result type from VNFaceObservation")
                return
        }
    self.doSomething(with observations: observations)
})

do {
    try handler.perform([faceRequest])
} catch {
    print("Face detection failed: \(error)")
}

标签: swiftdeep-learningface-detectioncoremlapple-vision

解决方案


没关系,Vision 会自动处理这个问题。(它可能会或可能不会在后台使用机器学习模型。)

您确实需要确保整个面部/头部在图像中可见,否则面部检测器将无法正常工作。

它也可能不适用于非常小的图像,但我从未尝试过。


推荐阅读