您的位置:首页 > 其它

CoreImage 中的模糊滤镜

2015-08-13 17:30 381 查看
/* * * * * *原始图片 * * * * * */

UIImage *img = [UIImage
imageNamed:@"1.jpg"];

/* * * * * *coreImage * * * * * */

CIImage *ciima = [[CIImage
alloc] initWithImage:img];

/* * * * * *滤镜处理类型 * * * * * */

CIFilter *cifilter = [CIFilter
filterWithName:@"CIGaussianBlur"];
[cifilter
setValue:ciima forKey:kCIInputImageKey];

/* * * * * *设置模糊程度 0最小 * * * * * */
[cifilter
setValue:@3
forKey:@"inputRadius"];

/* * * * * *用来查询设置可以用到的参数 * * * * * */

NSLog(@"%@",cifilter.attributes);

/* * * * * *输出的图片 * * * * * */

CIImage *outIma = [cifilter
valueForKey:kCIOutputImageKey] ;

/* * * * * *处理方式,是CPU设置为nil,默认是CPU * * * * * */

CIContext * context = [CIContext
contextWithOptions:nil];

/* * * * * *输出的处理完的图片 * * * * * */

CGImageRef imgRef = [context
createCGImage:outIma fromRect:[outIma
extent]];

/* * * * * *转化 * * * * * */
img = [UIImage
imageWithCIImage:outIma];

/* * * * * *释放内存 * * * * * */

CGImageRelease(imgRef);

UIImageView *imgV = [[UIImageView
alloc] initWithFrame:CGRectMake(0,
0, 375/2,
500/2)];
imgV.image = img ;
[self.view
addSubview:imgV];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: