Ios Image and color enhancement filter

I am trying to use the CIFilter filter and GPUImage to apply various effects (brightness, contrast, saturation, etc.) on the image, but I struggle to improve as shown below:

Before filter improvements

Before the enhancement filter:

After filter improvements

After filter Enhancement

CIFilter Code I tried:

NSDictionary *options = @{ CIDetectorImageOrientation :
                               [[resultImage properties] valueForKey:kCGImagePropertyOrientation] };
NSArray *adjustments = [resultImage autoAdjustmentFiltersWithOptions:options];
for (CIFilter *filter in adjustments) {
    [filter setValue:resultImage forKey:kCIInputImageKey];
    resultImage = filter.outputImage;
}

GPUImage Filter:

UIImage *inputImage = [UIImage imageNamed:@"Msource.png"];
GPUImageAdaptiveThresholdFilter *stillImageFilter = [[GPUImageAdaptiveThresholdFilter alloc] init];
stillImageFilter.blurRadiusInPixels = 10.0;// adjust this to tweak the blur radius of the filter, defaults to 4.0

UIImage *filteredImage = [stillImageFilter imageByFilteringImage:inputImage];
+4
source share
1 answer

enter the code here // I hope this helps, its in quick 3:

        var aCIImage = CIImage();
        var contrastFilter: CIFilter!;
        var brightnessFilter: CIFilter!;
        var gaussianBlurFilter: CIFilter!;
        var pointFilter: CIFilter!;
        var vignettFilter : CIFilter!;
        var context = CIContext();
        var outputImage = CIImage();
        var newUIImage = UIImage();
        var finalImage = UIImage()

       DispatchQueue.main.async
                        {
                            self.gaussianBlurFilter = CIFilter(name: "CIExposureAdjust");
                            self.gaussianBlurFilter.setValue(self.aCIImage, forKey: "inputImage")

                            self.gaussianBlurFilter.setValue(NSNumber(value: sender.value), forKey: "inputEV");

                            self.outputImage = self.gaussianBlurFilter.outputImage!;

                            let imageRef = self.context.createCGImage(self.outputImage, from: self.outputImage.extent)

                            self.newUIImage = UIImage(cgImage: imageRef!)
                            self.testView?.image = self.newUIImage;
                    }


 // 

Dark image with text and no filters applied to it

/img/0fecc83572cce86260bbbfff48fcfbcc.png

The same image with text and with a CIExposureAdjust filter applied to it

https://i.stack.imgur.com/uU0Oz.png

Link: for a demo project.

https://drive.google.com/open?id=0B-EIC_4IXtA9UjFwT3o0dXI1OTA

+2

Source: https://habr.com/ru/post/1684287/


All Articles