Swifter {Swift Developer}

메뉴

이미지 처리 기본 (iOS 표준 이미지 클래스 프레임웍)

Homebrew등의 이미지 처리를 다양하게 올라와 있지만 그것들을 사용하기 전에 기본적으로 알아야할 이미지 처리 기본 내용을 정리해보았다.

개발환경

  • Xcode 8
  • Swift 3.0

이미지 클래스

  • UIImage
    • UIKit 프레임웍 클래스
    • 주로 기존 이미지를 사용한 처리를 한다
    • 길이와 위치 지정은 point단위로 한다
    • 주로 view와의 교환에 사용한다
  • CGImage
    • CoreGraphics 프레임웍 클래스
    • 원래 도형등을 그리고 싶을 때 사용한다
    • 길이와 위치 지정은 pixel단위로 한다
    • 이미지 가공 및 픽셀처리를 할 경우 사용하며 IN/OUT이 CGImage가 된다
  • CIImage
    • CoreImage 프레임웍 클래스
    • 이미지에 필터 및 이펙트를 사용할 때 이용한다

이미지 처리 프레임웍

CoreGraphics 프레임웍

UIImageView 및 UIImage등의 기존 이미지를 사용한 처리가 아니라, 원래 도형등을 그리고 싶을 때 사용하며 이미지 자체를 가공하고 싶을 때도 사용한다.

자르려는 이미지의 원본 이미지 x,y,w,h를 체크하여 잘라낼 이미지 범위를 설정한다. 그외 픽셀단위로 색상을 가져오거나 이미즈를 만들거나 그림을 그리는 방법도 있다.

만약, 픽셀단위 정보를 가져오고 이미비지 분석용으로 생각한다면 OpenCV를 사용한다.

CoreImage 프레임웍

이미지를 필터링할 때 이용하며 필터종류는 iOS9까지 170가지가 지원되고 있었다.

CIFilter에 필터명을 문자열로 지정하여 인스턴스를 생성하며 위 예제처럼 CISepiaTone등의 값을 설정하면 처리된다. 필터명과 지정하는 값은 애플 공식 정보(Core Image Filter Reference)를 참고하여 실행해보자.

 

 

Facebook Comments

카테고리:   Swift 3.0

댓글

죄송하지만 댓글은 닫혀 있습니다.