[swift] Firebase ML Kit를 활용한 얼굴 인식 및 감지 기능 구현하기

Firebase ML Kit는 Google이 제공하는 기계 학습 기능을 제공하는 플랫폼입니다. 이번 예제에서는 Firebase ML Kit를 사용하여 iOS 앱에서 얼굴 인식 및 감지 기능을 구현하는 방법을 알아보겠습니다.

Firebase 프로젝트 설정하기

  1. Firebase 콘솔로 이동하여 새 프로젝트를 생성합니다.
  2. iOS 앱을 추가하고, 필요한 정보를 입력합니다. Bundle Identifier를 정확하게 입력해야 합니다.
  3. GoogleService-Info.plist 파일을 다운로드하여 프로젝트에 추가합니다.
  4. 프로젝트의 Podfile에 Firebase ML Kit를 추가하고, pod install 명령어를 실행하여 필요한 라이브러리를 설치합니다.

얼굴 감지 및 인식 구현하기

  1. ML Kit 라이브러리를 import 합니다.
    import FirebaseMLVision
    
  2. FaceDetector 인스턴스를 생성합니다.
    let options = VisionFaceDetectorOptions()
    options.performanceMode = .accurate
    let faceDetector = Vision.vision().faceDetector(options: options)
    
  3. 이미지에서 얼굴을 감지하고 인식합니다.
    let visionImage = VisionImage(image: image)
    faceDetector.process(visionImage) { faces, error in
     guard error == nil, let faces = faces, !faces.isEmpty else {
         // 얼굴을 인식할 수 없는 경우 처리
         return
     }
        
     // 감지된 얼굴에 대해 원하는 동작 수행
     for face in faces {
         let bounds = face.frame // 얼굴의 경계 사각형 정보
         let leftEye = face.landmark(ofType: .leftEye)?.position // 왼쪽 눈 위치
         let rightEye = face.landmark(ofType: .rightEye)?.position // 오른쪽 눈 위치
         let smilingProbability = face.hasSmilingProbability ? face.smilingProbability : nil // 웃고 있는지 여부
         let smilingEmoji = smilingProbability ?? 0.5 >= 0.5 ? "😀" : "😐" // 웃는 얼굴 이모티콘 결정
    
         // 얼굴 정보를 이용해 UI 업데이트 등 필요한 작업을 수행
         // ...
     }
    }
    

실행 결과 확인하기

위의 코드를 사용하여 얼굴을 감지하고 인식하는 기능을 구현한 후, 앱을 실행해보세요. 카메라 또는 사진에서 얼굴을 인식하고, 감지된 얼굴에 대한 정보를 이용하여 필요한 작업을 수행할 수 있습니다.

Firebase ML Kit를 사용하면 얼굴 인식 및 감지와 같은 기능을 손쉽게 구현할 수 있습니다. 더 다양한 기능과 세부 설정을 활용하여 앱에 적용해보세요.

더 자세한 내용은 Firebase ML Kit 문서를 참조하세요.