[swift] Swift에서 Core Image를 이용하여 이미지를 흑백으로 변환하는 방법은?

Core Image는 이미지 처리를 위한 강력한 프레임워크로, Swift에서 이미지를 효율적으로 흑백으로 변환할 수 있습니다. 아래는 Core Image를 사용하여 이미지를 흑백으로 변환하는 방법입니다.

먼저, CIImage 객체를 생성하고 이를 사용하여 필터를 적용합니다. 필터를 적용한 후에는 CIContext를 사용하여 결과 이미지를 생성하고 반환할 수 있습니다.

import UIKit

// 원본 이미지
let originalImage = UIImage(named: "original_image.jpg")

// CIImage로 변환
guard let ciImage = CIImage(image: originalImage) else { return }

// 필터 적용
let filter = CIFilter(name: "CIPhotoEffectMono")
filter.setValue(ciImage, forKey: kCIInputImageKey)

// CIContext를 사용하여 결과 이미지 생성
let context = CIContext(options: nil)
if let output = filter.outputImage,
   let cgImage = context.createCGImage(output, from: output.extent) {
    // CGImage를 UIImage로 변환
    let processedImage = UIImage(cgImage: cgImage)
}

위의 코드는 CIPhotoEffectMono 필터를 사용하여 이미지를 흑백으로 변환하는 방법을 보여줍니다. 필터 이름을 변경하여 다른 Core Image 필터를 적용할 수도 있습니다.

Core Image를 이용하여 이미지를 흑백으로 변환하는 간단한 예제를 살펴보았습니다. 이를 응용하여 다양한 이미지 처리 작업을 수행할 수 있습니다.

더 많은 정보를 원한다면 Core Image 애플 공식 문서를 참고하시기 바랍니다.