图像处理之CoreImage图片滤镜

来源:互联网 发布:男士发型设计软件推荐 编辑:程序博客网 时间:2024/06/14 17:23

CoreImage

CPU处理方式 http://blog.csdn.net/xoxo_x/article/details/53518322

打印滤镜:

  NSArray *filterNames = [CIFilter filterNamesInCategory:kCICategoryBuiltIn];    NSLog(@"Built in filters");    for (NSString *currentFilterName in filterNames)    {        NSLog(@"%@", currentFilterName);    }

处理之前的图片

这里写图片描述

- (UIImage *)imageProcessedUsingCoreImage:(UIImage *)imageToProcess;{    CFAbsoluteTime elapsedTime, startTime = CFAbsoluteTimeGetCurrent();    CIImage *inputImage = [[CIImage alloc] initWithCGImage:imageToProcess.CGImage];    CIFilter *sepiaTone = [CIFilter filterWithName:@"CISepiaTone"                                     keysAndValues: kCIInputImageKey, inputImage,                            @"inputIntensity", [NSNumber numberWithFloat:1.0], nil];    CIImage *result = [sepiaTone outputImage];    CGImageRef resultRef = [coreImageContext createCGImage:result fromRect:CGRectMake(0, 0, imageToProcess.size.width, imageToProcess.size.height)];    UIImage *resultImage = [UIImage imageWithCGImage:resultRef];    CGImageRelease(resultRef);    elapsedTime = CFAbsoluteTimeGetCurrent() - startTime;    processingTimeForCoreImageRoutine = elapsedTime * 1000.0;    return resultImage;}

调用:

    UIImage *inputImage = [UIImage imageNamed:@"Lambeau.jpg"]; //创建 Core Image 上下文 ,    if (coreImageContext == nil)    {        coreImageContext = [CIContext contextWithOptions:nil];    }    UIImage *imageFilteredUsingCoreImageRoutine = [self imageProcessedUsingCoreImage:inputImage];

如何保存图片到本地?

http://blog.csdn.net/xoxo_x/article/details/53517878

处理之后的图片

这里写图片描述

0 0
原创粉丝点击