문제

프로그램이 어떤 흐름을 통과합니까?

도움이 되었습니까?

해결책

매우 대략, 처리 단계는 다음과 같습니다 :

  1. 얼굴 위치 감지
  2. 얼굴을 정상화
  3. 탐지 된 각 얼굴에 대한 기능 수집
  4. 기계 학습 알고리즘 에 특징을 공급합니다.

    단계 1은 일반적으로 클래식 Viola & Jones Face Detection Algorithm . 그것은 매우 빠르고 신뢰할 수 있습니다.

    단계 1에서 발견 된 얼굴은 밝기, 대비 및 상이한 크기를 가질 수있다. 처리를 단순화하기 위해 모두 동일한 크기로 확장되고 노출 차이가 보상됩니다 (예 : 히스토그램 등화를 사용하여) 2 단계에서.

    단계 3에 대한 많은 접근 방식이 있습니다. 초기 얼굴 탐지기는 특정 위치 (눈의 중심, 코의 끝, 입술 끝 등)를 찾고 인정을위한 특징으로서 기하학적 거리와 각도를 사용하려고 노력했습니다. ...에 내가 읽은 것에서, 이러한 접근법은 매우 빠르지 만, 그렇게 신뢰할 수는 없습니다.

    보다 최근의 접근법 인 "고유 페이스"는 얼굴의 사진이 기본 이미지의 선형 이미지의 선형 조합으로 근사 될 수 있다는 사실을 기반으로합니다 (큰 훈련 이미지에서 PCA를 통해 발견됨). 이 근사의 선형 요소는 기능으로 사용할 수 있습니다. 이 접근법은 또한 얼굴 (눈, 코, 입)의 일부에 개별적으로 적용될 수 있습니다. 모든 이미지 사이에 포즈가있는 경우 가장 잘 작동합니다. 일부 얼굴이 왼쪽으로 보이면 다른 사람들은 위쪽으로 보이면 작동하지 않습니다. 활성 외관 모델은 평면 2D 사진 대신 완전한 3D 모델을 교육하여 그 효과를 카운터링하려고합니다.

    단계 4는 비교적 간단합니다. 각 얼굴에 대한 세트가 있으며 훈련 중에 획득 한 얼굴 이미지가 있으며 현재 테스트 얼굴과 "가장 유사한"훈련면을 찾으려고합니다. 그것이 기계 학습 알고리즘이 무엇인지입니다. 가장 일반적인 알고리즘이 지원 벡터 기계 (SVM)라고 생각합니다. 다른 선택은 예를 들었습니다. 인공 신경 네트워크 또는 K- 가장 가까운 이웃. 기능이 좋으면 ML 알고리즘의 선택이 중요하지 않습니다.

    주제에 대한 문헌 :

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top