[swift] Core Image 프레임워크를 통한 이미지 필터링 및 처리 방법

Core Image는 iOS 및 macOS 앱에서 이미지 필터링 및 처리를 위한 강력한 프레임워크입니다. 이를 사용하여 이미지에 일련의 필터를 적용하고 이미지를 수정하거나 개선할 수 있습니다.

Core Image 프레임워크 소개

Core Image는 이미지 및 비디오 처리 작업을 위한 고성능 및 효율적인 프레임워크로, Apple의 iOS 및 macOS 기기에서 제공됩니다. 이를 사용하여 이미지를 로드하고 필터를 적용하거나 사용자 정의 필터를 생성하여 이미지를 수정할 수 있습니다.

Core Image를 사용한 이미지 필터링

아래는 Core Image를 사용하여 이미지에 필터를 적용하는 간단한 예제 코드입니다.

import UIKit
import CoreImage

// 이미지 로드
let inputImage = CIImage(image: UIImage(named: "inputImage.png"))

// 필터 생성
let filter = CIFilter(name: "CISepiaTone")
filter?.setDefaults()
filter?.setValue(inputImage, forKey: kCIInputImageKey)
filter?.setValue(0.8, forKey: kCIInputIntensityKey)

// 필터 적용
let outputImage = filter?.outputImage

// 이미지 출력
let context = CIContext(options: nil)
let cgImage = context.createCGImage(outputImage!, from: outputImage!.extent)
let filteredImage = UIImage(cgImage: cgImage)

위의 코드에서는 Sepia 필터를 사용하여 입력 이미지에 Sepia 효과를 적용하고, 새로운 이미지를 생성하는 과정을 단계별로 보여줍니다.

Core Image를 사용한 이미지 처리

Core Image를 사용하여 이미지를 수정하고 처리할 수도 있습니다. 예를 들어 이미지를 회전시키거나 크기를 조절하는 등의 작업을 수행할 수 있습니다.

// 이미지 회전
let inputImage = CIImage(image: UIImage(named: "inputImage.png"))
let outputImage = inputImage?.oriented(forExifOrientation: 6)

// 이미지 크기 조절
let scaledImage = inputImage?.transformed(by: CGAffineTransform(scaleX: 0.5, y: 0.5))

결론

Core Image 프레임워크를 사용하면 iOS 및 macOS 앱에서 이미지 처리 및 필터링 작업을 쉽게 수행할 수 있습니다. 필요한 경우 사용자 정의 필터를 생성하여 이미지를 원하는 대로 수정할 수 있습니다.

더 많은 기능 및 세부 설정에 대해서는 Core Image 프레임워크 공식 문서를 참고하시기 바랍니다.