Convert RGB image to 1 channel image (black/white)

后端 未结 3 1127
不知归路
不知归路 2020-12-10 23:33

How can I convert RGB image to 1 channel image (black/white) using ios5?

Input image is usually a photo of a book page. Goal is to reduce the size of a photocopy by

3条回答
  •  Happy的楠姐
    2020-12-10 23:57

    You can use Core Image to process your image to black & white.

    use CIEdgeWork , this will convert your image to black and whie

    for more information on Core Image Programming, visit:- https://developer.apple.com/library/ios/#documentation/GraphicsImaging/Conceptual/CoreImaging/ci_tasks/ci_tasks.html#//apple_ref/doc/uid/TP30001185-CH3-TPXREF101

    The code you are looking for is probably this:

    CIContext *context = [CIContext contextWithOptions:nil]; // 1
    CIImage *image = [CIImage imageWithContentsOfURL:myURL]; // 2
    CIFilter *filter = [CIFilter filterWithName:@"CIEdgeWork"]; // 3
    [filter setValue:image forKey:kCIInputImgeKey];
    [filter setValue:[NSNumber numberWithFloat:0.8f] forKey:@"InputIntensity"];
    CIImage *result = [filter valueForKey:kCIOutputImageKey]; // 4
    CGImageRef cgImage = [context createCGImage:result fromRect:[result extent];
    

提交回复
热议问题