[swift] 이미지 필터링 및 색상 보정

이미지 처리 및 보정은 많은 iOS 앱에서 중요한 부분입니다. 사용자는 여러분의 앱을 통해 사진을 촬영하거나 불러와서 다양한 방법으로 편집하고 싶어할 것입니다. Swift를 사용하여 이미지 필터링과 색상 보정을 하는 방법을 알아봅시다.

이미지 필터링

이미지 필터링은 이미지를 조작하여 다양한 시각적 효과를 부여하는 프로세스입니다. Core Image 프레임워크를 사용하여 이미지 필터를 적용할 수 있습니다.

import CoreImage

let image = CIImage(image: originalImage)
let filter = CIFilter(name: "CISepiaTone")
filter?.setValue(image, forKey: kCIInputImageKey)
filter?.setValue(0.8, forKey: kCIInputIntensityKey)

if let outputImage = filter?.outputImage {
    // 필터가 적용된 이미지를 얻을 수 있습니다
    let filteredImage = UIImage(ciImage: outputImage)
}

이 예제에서는 CISepiaTone 필터를 사용하여 이미지에 세피아 톤 효과를 적용하는 방법을 보여줍니다. kCIInputIntensityKey를 사용하여 필터의 강도를 조절할 수 있습니다.

색상 보정

사용자가 이미지의 색상이나 밝기를 조절할 수 있도록 하는 것 또한 중요한 기능입니다. CIColorControls 필터를 사용하여 이미지의 밝기, 대비, 채도 등을 조절할 수 있습니다.

let filter = CIFilter(name: "CIColorControls")
filter?.setValue(image, forKey: kCIInputImageKey)
filter?.setValue(1.2, forKey: kCIInputBrightnessKey)
filter?.setValue(0.5, forKey: kCIInputContrastKey)
filter?.setValue(1.5, forKey: kCIInputSaturationKey)

if let outputImage = filter?.outputImage {
    // 색상 보정이 적용된 이미지를 얻을 수 있습니다
    let adjustedImage = UIImage(ciImage: outputImage)
}

위의 예제에서는 CIColorControls 필터를 사용하여 이미지의 밝기, 대비, 채도를 조절하는 방법을 보여줍니다.

이제 여러분은 Swift를 사용하여 이미지 필터링 및 색상 보정을 하는 방법을 알게 되었습니다. 사용자가 이미지를 편집할 때 자유롭게 다양한 효과를 적용할 수 있는 앱을 개발할 수 있을 것입니다.

더 많은 정보는 Core Image Programming Guide를 참고하세요.