//Iphone中目前可用的
CIAdditionCompositing //影像合成
CIAffineTransform //仿射变换
CICheckerboardGenerator //棋盘发生器
CIColorBlendMode //CIColor混合模式
CIColorBurnBlendMode //CIColor燃烧混合模式
CIColorControls
CIColorCube //立方体
CIColorDodgeBlendMode //CIColor避免混合模式
CIColorInvert //CIColor反相
CIColorMatrix //CIColor矩阵
CIColorMonochrome //黑白照
CIConstantColorGenerator //恒定颜色发生器
CICrop //裁剪
CIDarkenBlendMode //亮度混合模式
CIDifferenceBlendMode //差分混合模式
CIExclusionBlendMode //互斥混合模式
CIExposureAdjust //曝光调节
CIFalseColor //伪造颜色
CIGammaAdjust //灰度系数调节
CIGaussianGradient //高斯梯度
CIHardLightBlendMode //强光混合模式
CIHighlightShadowAdjust //高亮阴影调节
CIHueAdjust //饱和度调节
CIHueBlendMode //饱和度混合模式
CILightenBlendMode
CILinearGradient //线性梯度
CILuminosityBlendMode //亮度混合模式
CIMaximumCompositing //最大合成
CIMinimumCompositing //最小合成
CIMultiplyBlendMode //多层混合模式
CIMultiplyCompositing //多层合成
CIOverlayBlendMode //覆盖叠加混合模式
CIRadialGradient //半径梯度
CISaturationBlendMode //饱和度混合模式
CIScreenBlendMode //全屏混合模式
CISepiaTone //棕黑色调
CISoftLightBlendMode //弱光混合模式
CISourceAtopCompositing
CISourceInCompositing
CISourceOutCompositing
CISourceOverCompositing
CIStraightenFilter //拉直过滤器
CIStripesGenerator //条纹发生器
CITemperatureAndTint //色温
CIToneCurve //色调曲线
CIVibrance //振动
CIVignette //印花
CIWhitePointAdjust //白平衡调节
官方文档中列表:
CICategoryBlur
CICategoryColorAdjustment
CICategoryColorEffect
CICategoryCompositeOperation
CICategoryDistortionEffect
CICategoryGenerator
CICategoryGeometryAdjustment
CICategoryGradient
CICategoryHalftoneEffect
CICategoryReduction
CICategorySharpen
CICategoryStylize
CICategoryTileEffect
CICategoryTransition
==============================================================
[Addition] CIAdditionCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Affine Transform] CIAffineTransform
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputTransform : {
CIAttributeClass = NSValue;
CIAttributeDefault = "CGAffineTransform: {{1, 0, 0, 1}, {0, 0}}";
CIAttributeIdentity = "CGAffineTransform: {{1, 0, 0, 1}, {0, 0}}";
CIAttributeType = CIAttributeTypeTransform;
}
==============================================================
[Checkerboard Generator] CICheckerboardGenerator
inputSharpness : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeMax = 1;
CIAttributeMin = 0;
CIAttributeSliderMax = 1;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeScalar;
}
inputColor1 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0 0 0 1)";
}
inputCenter : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[150 150]";
CIAttributeType = CIAttributeTypePosition;
}
inputWidth : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 80;
CIAttributeSliderMax = 800;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeDistance;
}
inputColor0 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 1 1 1)";
}
// filter
CIFilter *filter = [CIFilter filterWithName:@"CICheckerboardGenerator"];
[filter setValue:[CIVector vectorWithX:100 Y:100] forKey:@"inputCenter"];
[filter setValue:[NSNumber numberWithInt:1] forKey:@"inputSharpness"];
[filter setValue:[NSNumber numberWithInt:80] forKey:@"inputWidth"];
[filter setValue:[CIColor colorWithCGColor:[UIColor whiteColor].CGColor ] forKey:@"inputColor1"];
[filter setValue:[CIColor colorWithCGColor:[UIColor redColor].CGColor ] forKey:@"inputColor1"];
// output
NSLog(@"attributes: %@", [filter attributes]);
CIImage *outputImage = [filter outputImage];
CGImageRef cgimg = [context createCGImage:outputImage fromRect:self.view.frame];
UIImage *newImg = [UIImage imageWithCGImage:cgimg];
注意:filter生成的outputImage无限大,不能用[outputImage extends]取得rect。
==============================================================
[Color Blend Mode] CIColorBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIColorBlendMode"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:backgroundImage forKey:@"inputBackgroundImage"];
==============================================================
[Color Burn Blend Mode] CIColorBurnBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;}
CIFilter *filter = [CIFilter filterWithName:@"CIColorBurnBlendMode"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:backgroundImage forKey:@"inputBackgroundImage"];
==============================================================
[Color Cube] CIColorCube
inputCubeDimension : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 2;
CIAttributeIdentity = 2;
CIAttributeMax = 64;
CIAttributeMin = 2;
CIAttributeType = CIAttributeTypeCount;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputCubeData : {
CIAttributeClass = NSData;
CIAttributeDefault = ;
CIAttributeIdentity = ;
}
色彩立方
CIColorCube 过滤器利用一个三维色彩表对源图像的象素进行转换。图 4-27 显示了利用 CIColorCube 过滤器可以达到的效果。最左边是海滩风景的原始图像。右边三幅图像是对原始图像应用了不同的色彩表取值所得到的效果。
图 4-27 : 原始图 (最左边)与应用了色彩立方过滤器处理以后所得到的图像
所属类别: kCICategoryColorEffect, kCICategoryVideo, kCICategoryInterlaced, kCICategoryNonSquarePixels, kCICategoryStillImage, kCICategoryBuiltIn
参数
inputImage
需要处理的 CIImage 对象。
inputCubeData
一个指向色彩立方数据的 NSData 指针,这个色彩立方数据由经过 alhpa 预相乘的浮点型 RGBA 元素构成,这些元素按照下面的方式排序:所有数据的列和分别以红色和绿色为索引。每个数据平面后面紧跟更高一层的数据平面,平面的索引是蓝色。
比如,如果一张表有16行、16列、16层平面,那么它就有4096个元素。每个元素为16字节 (4 个浮点型数字),因此这张表占用的物理空间为 64K 。如果一个元素的地址表示为红色所谓是5、绿色索引为7、蓝色索引为11,那么这个元素的位移量为:
5 + 7 * 16 + 11 * 16 * 16 = 2933
需要注意的是,行、列、平面等索引以及元素位移的起始值均为 0。
如果表中的值范围在[0...1]以外,那么 CIColorCube 过滤器的行为会是不确定的。
inputCubeDimension
色彩立方表的边界大小。这个值必须是一个整数,并且需要是2的幂(n次方)。
==============================================================
[Color Dodge Blend Mode] CIColorDodgeBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIColorDodgeBlendMode"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:backgroundImage forKey:@"inputBackgroundImage"];
==============================================================
[Color Invert] CIColorInvert
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIColorInvert"];
[filter setValue:inputImage forKey:@"inputImage"];
==============================================================
[Color Matrix] CIColorMatrix
inputBiasVector : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0 0 0 0]";
CIAttributeIdentity = "[0 0 0 0]";
}
inputRVector : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[1 0 0 0]";
CIAttributeIdentity = "[1 0 0 0]";
}
inputAVector : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0 0 0 1]";
CIAttributeIdentity = "[0 0 0 1]";
}
inputBVector : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0 0 1 0]";
CIAttributeIdentity = "[0 0 1 0]";
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputGVector : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0 1 0 0]";
CIAttributeIdentity = "[0 1 0 0]";
}
CIFilter *filter = [CIFilter filterWithName:@"CIColorMatrix"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[CIVector vectorWithX:1 Y:0 Z:0 W:0] forKey:@"inputRVector"];
[filter setValue:[CIVector vectorWithX:0 Y:0.9 Z:0.3 W:0] forKey:@"inputGVector"];
[filter setValue:[CIVector vectorWithX:0 Y:0.1 Z:0.7 W:0] forKey:@"inputBVector"];
CIFilter *filter = [CIFilter filterWithName:@"CIColorMatrix"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[CIVector vectorWithX:0.8 Y:0 Z:0.3 W:0] forKey:@"inputRVector"];
[filter setValue:[CIVector vectorWithX:0 Y:1 Z:0 W:0] forKey:@"inputGVector"];
[filter setValue:[CIVector vectorWithX:0.2 Y:0 Z:0.8 W:0] forKey:@"inputBVector"];
色彩矩阵
CIColorMatrix 过滤器对源色彩值进行预相乘运算并对每个色彩组件加上一个偏移参数。请比较下面的图像与图 4-19 中的原始图像。
注意:三个vector的rgb值纵向相加=1时不会产生色偏
==============================================================
[Color Monochrome] CIColorMonochrome
inputColor : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0.6 0.45 0.3 1)";
CIAttributeType = CIAttributeTypeColor;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputIntensity : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeIdentity = 0;
CIAttributeSliderMax = 1;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeScalar;
}
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:0.8] forKey:@"inputIntensity"];
==============================================================
[Constant Color Generator] CIConstantColorGenerator
inputColor : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 0 0 1)";
CIAttributeType = CIAttributeTypeColor;
}
==============================================================
[Crop] CICrop
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputRectangle : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[-1.70141e+38 -1.70141e+38 3.40282e+38 3.40282e+38]";
CIAttributeIdentity = "[-1.70141e+38 -1.70141e+38 3.40282e+38 3.40282e+38]";
CIAttributeType = CIAttributeTypeRectangle;
}
[Darken Blend Mode] CIDarkenBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Difference Blend Mode] CIDifferenceBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Exclusion Blend Mode] CIExclusionBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Exposure] CIExposureAdjust
inputEV : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 0;
CIAttributeIdentity = 0;
CIAttributeSliderMax = 10;
CIAttributeSliderMin = "-10";
CIAttributeType = CIAttributeTypeScalar;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIExposureAdjust"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:1] forKey:@"inputEV"];
==============================================================
[False Color] CIFalseColor
inputColor1 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 0.9 0.8 1)";
CIAttributeType = CIAttributeTypeColor;
}
inputColor0 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0.3 0 0 1)";
CIAttributeType = CIAttributeTypeColor;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Gamma Adjust] CIGammaAdjust
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputPower : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeIdentity = 1;
CIAttributeMin = 0;
CIAttributeSliderMax = 4;
CIAttributeSliderMin = "0.25";
CIAttributeType = CIAttributeTypeScalar;
}
CIFilter *filter = [CIFilter filterWithName:@"CIGammaAdjust"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:0.5] forKey:@"inputPower"];
==============================================================
[Gaussian Gradient] CIGaussianGradient
inputRadius : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 300;
CIAttributeMin = 0;
CIAttributeSliderMax = 800;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeDistance;
}
inputColor1 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0 0 0 0)";
}
inputCenter : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[150 150]";
CIAttributeType = CIAttributeTypePosition;
}
inputColor0 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 1 1 1)";
}
CIFilter *filter = [CIFilter filterWithName:@"CIGaussianGradient"];
[filter setValue:[NSNumber numberWithFloat:200] forKey:@"inputRadius"];
[filter setValue:[CIColor colorWithCGColor:[UIColor grayColor].CGColor ]forKey:@"inputColor1"];
==============================================================
[Hard Light Blend Mode] CIHardLightBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Highlights and Shadows] CIHighlightShadowAdjust
inputHighlightAmount : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeIdentity = 1;
CIAttributeMax = 1;
CIAttributeMin = 0;
CIAttributeSliderMax = 1;
CIAttributeSliderMin = "0.3";
CIAttributeType = CIAttributeTypeScalar;
}
inputShadowAmount : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 0;
CIAttributeIdentity = 0;
CIAttributeMax = 1;
CIAttributeMin = "-1";
CIAttributeSliderMax = 1;
CIAttributeSliderMin = "-1";
CIAttributeType = CIAttributeTypeScalar;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIHighlightShadowAdjust"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:0.5] forKey:@"inputShadowAmount"];
CIFilter *filter = [CIFilter filterWithName:@"CIHighlightShadowAdjust"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:-0.5] forKey:@"inputShadowAmount"];
==============================================================
[Hue Adjust] CIHueAdjust
inputAngle : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 0;
CIAttributeIdentity = 0;
CIAttributeSliderMax = "3.141592653589793";
CIAttributeSliderMin = "-3.141592653589793";
CIAttributeType = CIAttributeTypeAngle;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIHueAdjust"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:1.5] forKey:@"inputAngle"];
==============================================================
[Lighten Blend Mode] CILightenBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Linear Gradient] CILinearGradient
inputPoint1 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[200 200]";
CIAttributeType = CIAttributeTypePosition;
}
inputPoint0 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0 0]";
CIAttributeType = CIAttributeTypePosition;
}
inputColor1 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0 0 0 1)";
}
inputColor0 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 1 1 1)";
}
==============================================================
[Luminosity Blend Mode] CILuminosityBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Maximum] CIMaximumCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Minimum] CIMinimumCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Multiply Blend Mode] CIMultiplyBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Multiply] CIMultiplyCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Overlay Blend Mode] CIOverlayBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Radial Gradient] CIRadialGradient
inputRadius0 : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 5;
CIAttributeMin = 0;
CIAttributeSliderMax = 800;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeDistance;
}
inputRadius1 : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 100;
CIAttributeMin = 0;
CIAttributeSliderMax = 800;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeDistance;
}
inputColor1 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0 0 0 1)";
}
inputCenter : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[150 150]";
CIAttributeType = CIAttributeTypePosition;
}
inputColor0 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 1 1 1)";
}
[Saturation Blend Mode] CISaturationBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Screen Blend Mode] CIScreenBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Sepia Tone] CISepiaTone
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputIntensity : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeIdentity = 0;
CIAttributeMax = 1;
CIAttributeMin = 0;
CIAttributeSliderMax = 1;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeScalar;
}
CIFilter *filter = [CIFilter filterWithName:@"CISepiaTone"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:0.8] forKey:@"inputIntensity"];
==============================================================
[Soft Light Blend Mode] CISoftLightBlendMode
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Source Atop] CISourceAtopCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Source In] CISourceInCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Source Out] CISourceOutCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
[Source Over] CISourceOverCompositing
inputBackgroundImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
==============================================================
[Straighten] CIStraightenFilter
inputAngle : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 0;
CIAttributeIdentity = 0;
CIAttributeSliderMax = "3.141592653589793";
CIAttributeSliderMin = "-3.141592653589793";
CIAttributeType = CIAttributeTypeAngle;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIStraightenFilter"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:1.4] forKey:@"inputAngle"];
==============================================================
[Stripes Generator] CIStripesGenerator
inputSharpness : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeMax = 1;
CIAttributeMin = 0;
CIAttributeSliderMax = 1;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeScalar;
}
inputColor1 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(0 0 0 1)";
}
inputCenter : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[150 150]";
CIAttributeType = CIAttributeTypePosition;
}
inputWidth : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 80;
CIAttributeSliderMax = 800;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeDistance;
}
inputColor0 : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 1 1 1)";
}
==============================================================
[Temperature and Tint] CITemperatureAndTint ?
inputTargetNeutral : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[6500 0]";
CIAttributeIdentity = "[6500 0]";
CIAttributeType = CIAttributeTypeOffset;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputNeutral : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[6500 0]";
CIAttributeIdentity = "[6500 0]";
CIAttributeType = CIAttributeTypeOffset;
}
==============================================================
[Tone Curve] CIToneCurve
inputPoint1 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0.25 0.25]";
CIAttributeIdentity = "[0.25 0.25]";
CIAttributeType = CIAttributeTypeOffset;
}
inputPoint0 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0 0]";
CIAttributeIdentity = "[0 0]";
CIAttributeType = CIAttributeTypeOffset;
}
inputPoint3 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0.75 0.75]";
CIAttributeIdentity = "[0.75 0.75]";
CIAttributeType = CIAttributeTypeOffset;
}
inputPoint2 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[0.5 0.5]";
CIAttributeIdentity = "[0.5 0.5]";
CIAttributeType = CIAttributeTypeOffset;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputPoint4 : {
CIAttributeClass = CIVector;
CIAttributeDefault = "[1 1]";
CIAttributeIdentity = "[1 1]";
CIAttributeType = CIAttributeTypeOffset;
}
==============================================================
[Vibrance] CIVibrance
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputAmount : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 0;
CIAttributeIdentity = 0;
CIAttributeMax = 1;
CIAttributeMin = "-1";
CIAttributeSliderMax = 1;
CIAttributeSliderMin = "-1";
CIAttributeType = CIAttributeTypeScalar;
}
CIFilter *filter = [CIFilter filterWithName:@"CIVibrance"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[NSNumber numberWithFloat:1] forKey:@"inputAmount"];
==============================================================
[Vignette] CIVignette
inputRadius : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 1;
CIAttributeMax = 2;
CIAttributeMin = 0;
CIAttributeSliderMax = 2;
CIAttributeSliderMin = 0;
CIAttributeType = CIAttributeTypeScalar;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
inputIntensity : {
CIAttributeClass = NSNumber;
CIAttributeDefault = 0;
CIAttributeIdentity = 0;
CIAttributeMax = 1;
CIAttributeMin = "-1";
CIAttributeSliderMax = 1;
CIAttributeSliderMin = "-1";
CIAttributeType = CIAttributeTypeScalar;
}
==============================================================
[White Point Adjust] CIWhitePointAdjust
inputColor : {
CIAttributeClass = CIColor;
CIAttributeDefault = "(1 1 1 1)";
CIAttributeIdentity = "(1 1 1 1)";
CIAttributeType = CIAttributeTypeColor;
}
inputImage : {
CIAttributeClass = CIImage;
CIAttributeType = CIAttributeTypeImage;
}
CIFilter *filter = [CIFilter filterWithName:@"CIWhitePointAdjust"];
[filter setValue:inputImage forKey:@"inputImage"];
[filter setValue:[CIColor colorWithCGColor:[UIColor yellowColor].CGColor ]forKey:@"inputColor"];