0

我想保持从 CIDetector 返回的 NSArray 的顺序,这样我就可以使用动画块对在相机视图中绘制的帧进行补间。问题是在我返回的每个数组中,人脸的顺序通常是不同的,并且你可以想象这会使多张人脸的正确动画无效,尤其是当人脸交叉时。

如何每次都保持相同的面孔顺序?或者这甚至可能吗?

这是我正在做的初始化:

NSDictionary *detectorOptions = [[NSDictionary alloc] initWithObjectsAndKeys:CIDetectorAccuracyLow, CIDetectorAccuracy, nil];
self.faceDetector = [CIDetector detectorOfType:CIDetectorTypeFace context:nil options:detectorOptions];

我使用这条线得到我的数组:

NSArray *features = [self.faceDetector featuresInImage:convertedCIImage options:imageOptions];

如果该信息有帮助,我正在将数据从 GPUImage 传输到 CIImage。

4

1 回答 1

0

循环遍历 features 中的项目作为CIFaceFeature对象,并使用trackingID属性 (iOS6+) 来跟踪哪些面是哪些,更多信息

于 2013-05-08T17:48:28.163 回答