2012-03-28 14 views
2

私はカメラで撮影している画像をフィルタリングしています。カメラから取得した画像を下の方法で渡します。私は返されたUIImageUIImageViewに送りました。何らかの理由でこのメソッドを通過すると、画像が回転しています。私は間違って何をしていますか?iOS UIImageがCIFilterを通過した後に回転しています

- (UIImage *) applyFilterToImage:(UIImage *)image withFilter:(NSString *)filterName { 

    beginImage = [[[CIImage alloc] initWithImage:image] autorelease]; 
    context = [CIContext contextWithOptions:nil]; 
    filter = [CIFilter filterWithName:@"CISepiaTone" keysAndValues:kCIInputImageKey, beginImage, @"inputIntensity", [NSNumber numberWithFloat:0.8], nil]; 
    outputImage = [filter outputImage]; 

    CGImageRef cgimg = [context createCGImage:outputImage fromRect:[outputImage extent]]; 
    UIImage *newImg = [UIImage imageWithCGImage:cgimg scale:1.0 orientation:UIImageOrientationUp]; 
    CGImageRelease(cgimg); 

    return scaleAndRotateImage(newImg); 
} 
+2

あなたがしたいすべての画像にセピア調フィルタを適用し、画面上に表示したり、UIImageとして保存している場合、私はコアイメージの代替としてこれを提案するかもしれませんがします。https:// githubの.com/BradLarson/GPUImage。私は静止画像処理のためにCore Imageよりも約4倍高速で、ビューに表示するだけで済む場合はさらに速く、このプロセスのためのよりシンプルなAPIを持っています。私のセピアのトーンはCore Imageのものとは少し違った色合いですが、それは微調整できます。 –

+0

私は昨夜あなたの図書館を見ていました。とてもいいですね。私はより多くのフィルタを利用していきます。私はSepiaToneをテストのために配置します。 – KevinM

+0

私は、コア・イメージがiOS上で私に持っている9つのフィルタと、4つのブレンド・モードになっていると思います。しかし、Core Imageには現在iOSに欠けている多くのフィルタ(ぼかしや畳み込みなど)があります。また、独自のカスタム項目を記述することもできます。 –

答えて

関連する問題