1

このフィルタがどのように機能するのか、誰か説明してもらえますか。WWDC 2012 とドキュメントを見ましたが、まだよくわかりません。キューブ カラー マップを定義する場所と方法。.h または .m ファイルにありますか? ViewController.h と .m があり、いくつかのフィルターを使用しています。CiColorCube フィルターを使用する必要がありますが、方法がわかりません。これは私のコードです:

- (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];
}
4

1 に答える 1

1

Apple の Developer Library に、カラー マップの作成方法を示す「Subclassing CIFilter: Recipes for Custom Effects」に関するドキュメントがあります。

また、XCode では ImageApp サンプル コードを参照できます。また、ImageFilter.m でその方法を示しています。

于 2014-05-08T02:12:04.613 に答える