2014-04-13 2 views
0

코어 이미지를 사용하여 내 응용 프로그램에서 필터를 만들고 있습니다. 나는 시뮬레이터에서 처음 테스트를하고 있었고 모두 괜찮아 보였다. 장치로 전환하면 출력이 달라 보입니다. 내가 장치에서 실행할 때, 내가 얻을, 그러나 enter image description here코어 이미지 필터 장치/시뮬레이터 출력

: 어떤 시뮬레이터 쇼하면 다음과 같다

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

무엇이 잘못 될 수 있습니까?

참고 : 이미지는 스크린 샷으로 찍은 것이며 휴대 전화 또는 다른 기기를 통해 전송되지 않았습니다. 그것이 이미지 품질입니다.

+0

정확히 무엇이 문제입니까? 이미지가 잘못되었거나 필터가 잘못 되었습니까? – Tander

+0

@ 필터의 출력이 시뮬레이터에서 정확하고 장치에서 실행할 때 잘못되었습니다. 어떻게 된거야? 제공 한 사진을 통해 차이점을 확인할 수 있습니다. 감사합니다 – HusseinB

+0

결과가 어떻게 선언됩니까? 마지막으로 비슷한 문제 (Sim 및 Device가 아닌 작품)가 있었는데 메모리 관리 때문이었습니다. – Tander

답변

0

그래, 문제를 발견했다. 문제는 이미지에있었습니다. 각 플랫폼마다 다른 이미지 크기를 사용하고있었습니다.