얼굴 인식 개념

얼굴 인식은 디지털 이미지나 동영상과 같은 시각적 미디어에서 사람의 얼굴을 찾습니다. 얼굴이 감지되면 연결된 위치, 크기, 방향이 있으며 눈과 코와 같은 랜드마크를 검색할 수 있습니다.

다음은 ML Kit의 얼굴 인식 기능과 관련하여 사용되는 용어입니다.

  • 얼굴 추적은 얼굴 인식을 동영상 시퀀스로 확장합니다. 길이에 관계없이 동영상에 나타나는 모든 얼굴은 프레임마다 추적될 수 있습니다. 즉, 연속 동영상 프레임에서 인식된 얼굴은 동일한 사람으로 식별할 수 있습니다. 이는 얼굴 인식의 한 형태가 아닙니다. 얼굴 추적은 동영상 시퀀스에서 얼굴의 위치와 움직임을 기반으로만 추론을 합니다.

  • 랜드마크는 얼굴 내의 관심 지점입니다. 왼쪽 눈, 오른쪽 눈, 코 밑부분 등이 모두 랜드마크의 예입니다. ML Kit는 인식된 얼굴에서 랜드마크를 찾는 기능을 제공합니다.

  • 윤곽은 얼굴 특징의 형태를 따라 이어지는 점들의 집합입니다. ML Kit는 얼굴의 윤곽을 찾는 기능을 제공합니다.

  • 분류는 특정 얼굴 특징이 존재하는지 확인합니다. 예를 들어 눈을 뜨고 있는지 감고 있는지 또는 웃고 있는지 아닌지를 기준으로 얼굴을 분류할 수 있습니다.

면 방향

다음 용어는 카메라를 기준으로 얼굴의 방향 각도를 설명합니다.

  • 오일러 X: 양의 오일러 X각이 있는 얼굴은 위로 향한 것입니다.
  • 오일러 Y: 양의 오일러 Y각이 있는 얼굴은 카메라의 오른쪽을 바라보고, 음수인 경우 왼쪽을 보고 있습니다.
  • 오일러 Z: 양의 오일러 Z각이 있는 얼굴은 카메라를 기준으로 시계 반대 방향으로 회전한 것입니다.

LANDMARK_MODE_NONE, CONTOUR_MODE_ALL, CLASSIFICATION_MODE_NONE, PERFORMANCE_MODE_FAST가 함께 설정될 때 ML Kit는 감지된 얼굴의 오일러 X, 오일러 Y 또는 오일러 Z각을 보고하지 않습니다.

명소

랜드마크는 얼굴 내의 관심 장소입니다. 왼쪽 눈, 오른쪽 눈, 코 밑부분이 모두 랜드마크의 예입니다.

ML Kit는 랜드마크를 찾지 않고 얼굴을 감지합니다. 랜드마크 인식은 기본적으로 사용 중지되는 선택사항 단계입니다.

다음 표에는 관련 얼굴의 오일러 Y각에서 감지할 수 있는 모든 랜드마크가 요약되어 있습니다.

오일러 Y각 인식 가능한 랜드마크
-36도 미만 왼쪽 눈, 왼쪽 입, 왼쪽 귀, 코 밑부분, 왼쪽 볼
-36도~-12도 왼쪽 입, 코 밑부분, 아래쪽 입, 오른쪽 눈, 왼쪽 눈, 왼쪽 볼, 왼쪽 귓바퀴 상단
-12도~12도 오른쪽 눈, 왼쪽 눈, 코 밑부분, 왼쪽 볼, 오른쪽 볼, 왼쪽 입, 오른쪽 입, 아래쪽 입
12도~36도 오른쪽 입, 코 밑부분, 아래쪽 입, 왼쪽 눈, 오른쪽 눈, 오른쪽 뺨, 오른쪽 귓바퀴 상단
36도 초과 오른쪽 눈, 오른쪽 입, 오른쪽 귀, 코 밑부분, 오른쪽 볼

감지된 각 랜드마크에는 이미지의 관련 위치가 포함됩니다.

윤곽선

윤곽은 얼굴 특징의 형태를 나타내는 점들의 집합입니다. 다음 이미지는 이러한 점들이 얼굴에 매핑되는 방식을 보여줍니다. 이미지를 클릭하여 확대합니다.

ML Kit가 감지하는 각 특징의 윤곽은 고정된 수의 점으로 표현됩니다.

얼굴 타원형 36포인트 윗입술 (위쪽) 11포인트
왼쪽 눈썹 (위쪽) 5포인트 윗입술 (하단) 9포인트
왼쪽 눈썹 (하단) 5포인트 아랫입술 (위쪽) 9포인트
오른쪽 눈썹 (위쪽) 5포인트 아랫입술 (하단) 9포인트
오른쪽 눈썹 (하단) 5포인트 콧날 2점
왼쪽 눈 16포인트 코 아래쪽 3포인트
오른쪽 눈 16포인트
왼쪽 볼 (가운데) 1점
오른쪽 볼 (가운데) 1포인트

얼굴의 모든 윤곽을 한 번에 가져오면 아래와 같이 특징 윤곽에 매핑되는 133개의 점 배열을 얻게 됩니다.

특징 윤곽의 색인
0-35 얼굴 타원형
36-40 왼쪽 눈썹 (위쪽)
41-45 왼쪽 눈썹 (하단)
46-50 오른쪽 눈썹 (위쪽)
51-55 오른쪽 눈썹 (하단)
56-71 왼쪽 눈
72-87 오른쪽 눈
88-96 윗입술 (하단)
97-105 아랫입술 (위쪽)
106-116 윗입술 (위쪽)
117-125 아랫입술 (하단)
126, 127 콧날
128-130 코 아래쪽 (중심점은 색인 128에 있음)
131 왼쪽 볼 (가운데)
132 오른쪽 볼 (가운데)

분류

분류는 특정 얼굴 특징이 나타나는지 확인합니다. ML Kit는 현재 눈을 뜨고 있음웃고 있음이라는 두 가지 분류를 지원합니다.

분류는 확실성 값입니다. 이는 얼굴 특징이 존재한다는 신뢰도를 나타냅니다. 예를 들어 '웃고 있음' 분류 값이 0.7 이상이면 사람이 웃고 있을 가능성이 높음을 나타냅니다.

두 분류 모두 랜드마크 감지를 사용합니다.

또한 '눈을 뜨고 있음'과 '웃고 있음'은 정면 얼굴, 즉 오일러 Y각(-18~18도)이 작은 얼굴에만 적용됩니다.

최소 면 크기

최소 얼굴 크기는 원하는 얼굴 크기이며 이미지 너비 대비 머리 너비 비율로 표현됩니다. 예를 들어 값이 0.1이면 검색할 가장 작은 얼굴이 검색 대상 이미지 너비의 약 10% 라는 의미입니다.

최소 얼굴 크기는 성능과 정확성을 절충합니다. 최소 크기를 작게 설정하면 감지기가 작은 얼굴을 찾을 수 있지만 감지 시간이 더 오래 걸립니다. 더 크게 설정하면 작은 얼굴은 제외되지만 더 빠르게 실행됩니다.

최소 얼굴 크기는 엄격한 제한이 아닙니다. 감지기가 지정된 것보다 약간 작은 얼굴을 찾을 수도 있습니다.

다음 단계

iOS 또는 Android 앱에서 얼굴 인식을 사용합니다.