CIDetector无法在纵向模式下工作

时间:2017-08-13 20:47:25

标签: ios swift face-detection cidetector

我正在使用CIDetector进行面部检测(与YOLO身体检测框架配合使用)。

在设置videoCapture时,我使用videoOutput.connection(withMediaType: AVMediaTypeVideo).videoOrientation = .portrait以便YOLO框架可以正常工作,但这会立即打破面部检测,因为它返回的坐标只是疯狂。

我知道faceDetector有一个CIDetectorImageOrientation选项,即:

let imageOptions: NSDictionary = [CIDetectorImageOrientation: NSNumber(value: exifOrientation), CIDetectorSmile: false, CIDetectorEyeBlink: false] faces = faceDetector.features(in: ciImage, options: imageOptions as? [String : Any])

我已将CIDetectorImageOrientation的所有8个枚举值与videoOutput.connection(withMediaType: AVMediaTypeVideo).videoOrientation = .portrait结合使用,并且面部检测器仍然只吐出最疯狂的坐标。

为了澄清,当videoOutput.connection(withMediaType: AVMediaTypeVideo).videoOrientation保留为默认值时,面部检测工作正常(我认为它的风景是左图?)。

似乎CIDetectorvideoOutput.connection(withMediaType: AVMediaTypeVideo).videoOrientation = .portrait无法和谐相处。

我的问题是,是否有一些我错过的会让CIDetector与videoOutput.connection(withMediaType: AVMediaTypeVideo).videoOrientation = .portrait一起使用?

0 个答案:

没有答案