[swift] 이미지를 획일화 처리하기

이미지를 획일화 처리하는 것은 이미지 처리에서 자주 사용되는 기능 중 하나입니다. 이는 여러 이미지를 비슷한 스타일, 크기, 해상도로 만들어주는 작업입니다. 이를 통해 웹사이트나 애플리케이션에서 사용되는 이미지들이 일관된 모습으로 표시될 수 있습니다.

획일화 처리 방법

이미지를 획일화 처리하는 방법은 여러 가지가 있지만, Swift에서는 Core Image 프레임워크를 활용하여 수행할 수 있습니다. 다음은 이미지를 획일화 처리하기 위한 간단한 코드 예시입니다.

import CoreImage

func applyFilter(to image: UIImage) -> UIImage? {
    guard let filter = CIFilter(name: "CIPhotoEffectTonal") else { return nil }
    let ciImage = CIImage(image: image)
    filter.setValue(ciImage, forKey: kCIInputImageKey)
    
    guard let outputImage = filter.outputImage else { return nil }
    let context = CIContext(options: nil)
    let cgImage = context.createCGImage(outputImage, from: outputImage.extent)
    
    return UIImage(cgImage: cgImage)
}

let inputImage = UIImage(named: "input_image")
if let outputImage = applyFilter(to: inputImage) {
    // 획일화 처리된 이미지를 사용해야 하는 작업을 수행합니다.
    // 예: 이미지 뷰에 설정
}

위의 코드는 CIPhotoEffectTonal 필터를 사용하여 이미지를 획일화 처리하는 예시입니다. applyFilter(to:) 함수는 입력으로 받은 이미지에 필터를 적용한 후, 획일화 처리된 이미지를 반환합니다. 반환된 이미지를 이후 작업에 활용할 수 있습니다.

참고 자료