[swift] Core Image를 사용하여 이미지의 밝기 범위를 조절하는 방법은?

Core Image는 이미지 및 비주얼미디어의 처리, 분석을 위한 기술을 제공하는 프레임워크입니다. 밝기 조절을 위해서는 Core Image를 사용하여 이미지 필터를 적용할 수 있습니다.

먼저, 이미지의 밝기를 조절하기 위해 CIColorControls 필터를 사용할 수 있습니다. 이 필터를 사용하면 이미지의 밝기, 명도, 대비를 조절할 수 있습니다.

다음은 Core Image를 사용하여 이미지의 밝기 범위를 조절하는 방법에 대한 예제 코드입니다.

import UIKit
import CoreImage

func adjustImageBrightness(inputImage: UIImage, brightnessValue: Float) -> UIImage? {
    if let ciImage = CIImage(image: inputImage) {
        let filter = CIFilter(name: "CIColorControls")
        filter?.setDefaults()
        filter?.setValue(ciImage, forKey: kCIInputImageKey)
        filter?.setValue(brightnessValue, forKey: kCIInputBrightnessKey)
        
        if let outputImage = filter?.outputImage {
            let context = CIContext(options: nil)
            if let cgImage = context.createCGImage(outputImage, from: outputImage.extent) {
                return UIImage(cgImage: cgImage)
            }
        }
    }
    return nil
}

// 이미지와 밝기값 설정
let inputImage = UIImage(named: "inputImage.jpg")
let adjustedImage = adjustImageBrightness(inputImage: inputImage, brightnessValue: 0.5)

이 예제 코드에서는 CIColorControls 필터를 사용하여 이미지의 밝기를 0.5만큼 조절하는 함수를 정의하고 있습니다. 이미지와 원하는 밝기값을 설정한 후 adjustImageBrightness 함수를 사용하여 밝기를 조절한 이미지를 얻을 수 있습니다.

위와 같이 Core Image를 사용하여 이미지의 밝기 범위를 조절할 수 있습니다.

더 자세한 내용은 Core Image - Apple Developer Documentation를 참고하세요.