使用CIDetector Face Detection - iOS维护具有多个面的数组顺序

时间:2013-05-08 03:26:16

标签: ios core-image face-detection gpuimage

我想保持从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传输数据。

1 个答案:

答案 0 :(得分:0)

将要素中的项目作为CIFaceFeature个对象循环,并使用trackingID属性(iOS6 +)跟踪哪些面,more info