iOS - Невозможно обработать изображение с помощью CIFilter

Я пытаюсь обработать изображение с помощью Core Image. Для этого я создал категорию UIImage.

Я добавил QuartzCore и CoreImage фреймворки в проект, импортировал CoreImage / CoreImage.h и использовал этот код:

CIImage *inputImage = self.CIImage;
CIFilter *exposureAdjustmentFilter = [CIFilter filterWithName:@"CIExposureAdjust"];
[exposureAdjustmentFilter setDefaults];
[exposureAdjustmentFilter setValue:inputImage forKey:@"inputImage"];
[exposureAdjustmentFilter setValue:[NSNumber numberWithFloat:5.0f] forKey:@"inputEV"];
CIImage *outputImage = [exposureAdjustmentFilter valueForKey:@"outputImage"];
CIContext *myContext = [CIContext contextWithOptions:nil];

return [UIImage imageWithCGImage:[myContext createCGImage:outputImage fromRect:outputImage.extent]];

Но у меня есть nil выводит изображение из фильтра.

Я также пробовал использовать CIHueAdjust с тем же результатом.

Чем вы заранее

ОБНОВЛЕНИЕ : Я нашел решение. Было необходимо выделить новый CIImage , а не только передать ссылку на UIImage.CIImage следующим образом:

CIImage *inputImage = [[CIImage alloc] initWithImage:self];
5
задан Martin Pilch 15 December 2011 в 11:57
поделиться