2014-11-11 3 views
-2

Любое тело знает, как обнаружить обнаружение лица в IOS 8 и IOS 7 с использованием CIdetector. Я сталкиваюсь с проблемой обнаружения лица. Я тестировал в устройствах iPhone 6 plus, iPhone 5s и iPhone 4s.Распознавание лиц в IOS 8 и IOS 7?

Ссылка ссылка: https://developer.apple.com/library/mac/documentation/graphicsimaging/Conceptual/CoreImaging/ci_detect_faces/ci_detect_faces.html

http://maniacdev.com/2011/11/tutorial-easy-face-detection-with-core-image-in-ios-5/

Все выше код ссылки проверяются, но результирующая такой же .. Пожалуйста, помогите мне

`CIImage * изображение = [CIImage imageWithCGImage: facePicture. image.CGImage]; CIContext * context = [CIContext contextWithOptions: nil]; // 1 NSDictionary * opts = @ {CIDetectorAccuracy: CIDetectorAccuracyHigh}; // 2 CIDetector * detector = [CIDetector detectorOfType: CIDetectorTypeFace контекст: контекст опции: opts]; // 3

if([[image properties] valueForKey:(NSString *)kCGImagePropertyOrientation] == nil) 
{ 
    opts = @{CIDetectorImageOrientation : [NSNumber numberWithInt:1]}; 
} 
else 
{ 
    opts = @{CIDetectorImageOrientation : [[image properties] valueForKey:(NSString *)kCGImagePropertyOrientation]}; 
} 

NSArray * особенности = [Детектор featuresInImage: параметры изображения: выбирает]; `

Заранее спасибо

+0

http://stackoverflow.com/questions/19055760/objective-c-no-matter-what-i-do-cidetector-is-always-nil ------ использовать этот тоже –

+0

Можете ли вы опубликовать некоторый код, поэтому мы можем попытаться воспроизвести? – Legoless

ответ

0
CIDetector *smileDetector = [CIDetector detectorOfType:CIDetectorTypeFace 
         context:context 
         options:@{CIDetectorTracking: @YES, 
            CIDetectorAccuracy: CIDetectorAccuracyLow}]; 
NSArray *features = [smileDetector featuresInImage:image options:@{CIDetectorSmile: @YES}]; 
+0

Что такое контекст? Пожалуйста, дайте мне знать –

+0

Я пробую ваш код, но все еще не обнаруживаю лица –

0

Смотрите ниже код ..

CIImage *image = [CIImage imageWithCGImage:self.imageView.image.CGImage]; 
CIDetector *detector = [CIDetector detectorOfType:CIDetectorTypeFace 
               context:nil options:@{CIDetectorAccuracy:CIDetectorAccuracyHigh}]; 

NSDictionary *options = @{ CIDetectorSmile: @(YES) }; 
NSArray *features = [detector featuresInImage:image options:options]; 

for(CIFaceFeature *feature in features) { 
    NSLog(@"Smile %@", feature.hasSmile ? @"YES" : @"NO"); 
} 
1

Вы можете использовать этот CI subclass для детектора лица. Этот класс не зависит от ввода размера изображения для обнаружения лица, и он имеет гибкий размер.

Смежные вопросы