核心图像过滤设备/模拟器输出

时间:2014-04-13 09:57:41

标签: ios objective-c ios7 core-image

我正在使用Core Image在我的应用中创建过滤器。我是第一次在模拟器上测试它们,一切都很好看。当我切换到设备时,输出看起来不同。对于我使用的过滤器,这里是代码:

result = [CIFilter filterWithName:@"CIColorMatrix" keysAndValues:
                  kCIInputImageKey, image,
                  @"inputRVector", [CIVector vectorWithX:1.00 Y:0.00 Z:0.00 W:0.00],
                  @"inputGVector", [CIVector vectorWithX:0.00 Y:1.00 Z:0.00 W:0.00],
                  @"inputBVector", [CIVector vectorWithX:0.30 Y:0.00 Z:1.00 W:0.00],
                  @"inputAVector", [CIVector vectorWithX:0.42 Y:0.00 Z:0.00 W:1.00],
                  @"inputBiasVector", [CIVector vectorWithX:0.00 Y:0.00 Z:0.06 W:0.00], nil].outputImage;

        result = [CIFilter filterWithName:@"CIVignetteEffect" keysAndValues:
                  kCIInputImageKey, result,
                  kCIInputCenterKey, [CIVector vectorWithX:250 Y:478],
                  kCIInputRadiusKey, @414.36,
                  kCIInputIntensityKey, @0.75,nil].outputImage;

CGRect extent = [result extent];
    CGImageRef cgimage = [context createCGImage:result fromRect:extent];
    UIImage *filteredImage = [UIImage imageWithCGImage:cgimage scale:originalScale orientation:originalOrientation];
    CGImageRelease(cgimage);
    [_filteredImageView setImage:filteredImage];

所需的输出和模拟器显示的内容如下: enter image description here

但是,当我在设备上运行它时,我得到以下输出: enter image description here

可能有什么不对?

注意:图片被视为截图,而不是通过手机或其他设备。这是图像质量。

1 个答案:

答案 0 :(得分:0)

好的,我发现了问题。问题在于图像。我在每个平台上使用不同的图像尺寸。