2
我正在使用CIFeature類參考進行人臉檢測,並且我比Core Graphics座標和常規UIKit座標有點困惑。這是我的代碼:CIFaceFeature的座標系
UIImage *mainImage = [UIImage imageNamed:@"facedetectionpic.jpg"];
CIImage *image = [[CIImage alloc] initWithImage:mainImage];
NSDictionary *options = [NSDictionary dictionaryWithObject:CIDetectorAccuracyHigh forKey:CIDetectorAccuracy];
CIDetector *detector = [CIDetector detectorOfType:CIDetectorTypeFace context:nil options:options];
NSArray *features = [detector featuresInImage:image];
CGRect faceRect;
for (CIFaceFeature *feature in features)
{
faceRect= [feature bounds];
}
這是非常標準。現在根據官方documentation它說:
邊界保存發現的功能的矩形。 (只讀)
討論矩形位於圖像的座標系中。
當我直接輸出FaceRect時,得到:get rect {{136,427},{46,46}}。當我應用CGAffineTransfer以正確的方式翻轉它時,我得到的負座標看起來不正確。我正在使用的圖像是在ImageView中。
那麼在哪個座標系中有這些座標?圖片? ImageView?核心圖形座標?常規座標?
我有同樣的問題所困擾。你能給我完整的代碼鏈接嗎?我不明白在哪裏使用這種方法,以及如何正確應用臉部的矩形。提前致謝。 –