CoreImage의 얼굴 인식에 문제가 있습니다. 내 응용 프로그램은 전면 카메라를 사용하여 얼굴의 인물 사진을 찍습니다. 여기 iOS 얼굴 검출 있음
CIImage* image = [CIImage imageWithCGImage:self.photo.CGImage];
CIContext *context = [CIContext contextWithOptions:nil];
CIDetector* detector = [CIDetector detectorOfType:CIDetectorTypeFace
context:context options:@{CIDetectorAccuracyHigh:CIDetectorAccuracy}];
NSDictionary* imageOptions = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:6] forKey:CIDetectorImageOrientation];
NSArray* features = [detector featuresInImage:image options:imageOptions];
for (CIFaceFeature *f in features)
{
NSLog(@"%@",NSStringFromCGRect(f.bounds));
if (f.hasLeftEyePosition)
NSLog(@"Left eye %.0f %.0f", f.leftEyePosition.x, f.leftEyePosition.y);
if (f.hasRightEyePosition)
NSLog(@"Right eye %.0f %.0f", f.rightEyePosition.x, f.rightEyePosition.y);
if (f.hasMouthPosition)
NSLog(@"Mouth %.0f %.0f", f.mouthPosition.x, f.mouthPosition.y);
}
내 콘솔 출력 :이 좌표가 분명히 내 응용 프로그램의보기를 (사용하지 않는
- :
{{437.5, 170}, {625, 625}} Left eye 628 371 Right eye 639 594 Mouth 906 482
2이 문제가되어 여기 내 설정이다 320 X 568)
- 잘못된 방향으로 보입니다. 눈의 y 레벨은 같아야하지만 동일한 x 레벨을 가져야합니다.
어떻게 이러한 문제를 해결할 수 있습니까?
아마도 픽셀 단위이며 아마 인물 사진 일 것입니다. – Jessedc