简体   繁体   English

如何使用CIFilter CiColorCube

[英]How to use CIFilter CiColorCube

can someone explain me, how does this filter works, i saw WWDC 2012 and documentation and still don't understand quite. 有人可以解释一下,此过滤器是如何工作的,我看过WWDC 2012和文档,但仍然不太了解。 Where and how to define cube color map. 在哪里以及如何定义立方体颜色图。 Is it in .h or .m file? 是.h还是.m文件? I have ViewController.h and .m, where i working with some filters and i need to use CiColorCube filter but i just don't know how. 我有ViewController.h和.m,在这里我使用一些滤镜,我需要使用CiColorCube滤镜,但我只是不知道如何。 This is my code: 这是我的代码:

- (void)viewDidLoad
{
    // here i would like to use CIColorCube
    CIImage *inputImage = [[CIImage alloc]initWithImage:[UIImage imageNamed:@"background.jpg"]];
    CIImage *inputBackgroundImg = [[CIImage alloc]initWithImage:[UIImage imageNamed:@"image.jpeg"]];
    CIContext *context = [CIContext contextWithOptions:nil];
    vignette = [CIFilter filterWithName:@"CIVignette"];
    [vignette setValue:inputImage forKey:kCIInputImageKey];
    [vignette setValue:[NSNumber numberWithFloat:2.5] forKey:@"inputRadius"];
    [vignette setValue:[NSNumber numberWithFloat:2.9] forKey:@"inputIntensity"];
    sourceOC = [CIFilter filterWithName:@"CISourceOverCompositing"];
    [sourceOC setValue:vignette.outputImage forKey:kCIInputImageKey];
    [sourceOC setValue:inputBackgroundImg forKey:@"inputBackgroundImage"];
    maskToAlpha = [CIFilter filterWithName:@"CIMaskToAlpha"];
    [maskToAlpha setValue:inputImage forKey:kCIInputImageKey];
    CIImage *outputImage = maskToAlpha.outputImage;
    imageView.image = [UIImage imageWithCGImage:[context createCGImage:outputImage fromRect:outputImage.extent]];
    [super viewDidLoad];
}

In Apple's Developer Library, there is a document on 'Subclassing CIFilter: Recipes for Custom Effects' that shows how to make the color map.. 在Apple的开发人员库中,有一个有关“子类化CIFilter:自定义效果的配方”的文档,该文档显示了如何制作颜色图。

Also, in XCode you can look up the ImageApp sample code, and it also shows how in ImageFilter.m. 另外,在XCode中,您可以查找ImageApp示例代码,并且还显示了如何在ImageFilter.m中使用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM