Face API

등록일시: 2017-12-05 08:00,  수정일시: 2017-12-05 08:00
조회수: 5,597
이 문서는 Cognitive Services 기술을 널리 알리고자 하는 개인적인 취지로 제공되는 번역문서입니다. 이 문서에 대한 모든 저작권은 마이크로소프트에 있으며 요청이 있을 경우 언제라도 게시가 중단될 수 있습니다. 번역 내용에 오역이 존재할 수 있고 주석은 번역자 개인의 의견일 뿐이며 마이크로소프트는 이에 관한 어떠한 보장도 하지 않습니다. 번역이 완료된 이후에도 대상 제품 및 기술이 개선되거나 변경됨에 따라 원문의 내용도 변경되거나 보완되었을 수 있으므로 주의하시기 바랍니다.
본문에서는 얼굴 및 얼굴 특징 감지 (Detection) 기능과 얼굴 인식 (Recognition) 기능을 제공해주는 Face API에 관한 기본적인 사항들을 살펴봅니다.

가장 진보된 클라우드 기반의 얼굴 알고리즘을 제공하는 서비스인 Microsoft Face API에 방문하신 것을 환영합니다. Face API의 두 가지 핵심 기능은 얼굴 및 얼굴 특징 감지 (Detection) 기능과 얼굴 인식 (Recognition) 기능입니다.

역주

얼굴 감지 (Face Detection) 기능은 이미지에 포함된 얼굴을 그 특징과 함께 찾아내는 기능입니다. 반면, 얼굴 인식 (Face Recognition) 기능은 감지된 얼굴이 다른 감지된 얼굴과 같은 사람인지, 또는 미리 준비해 놓은 특정 얼굴 그룹에 속한 사람인지 등을 식별하는 기능입니다.

얼굴 감지

Face API는 이미지에 포함된 얼굴을 최대 64개까지 이미지 내부의 정확한 얼굴 위치와 함께 감지할 수 있습니다. 그리고 대상 이미지는 바이트 형태의 파일이나 유효한 URL로 지정할 수 있습니다.

Overview - Face Detection

각각의 감지된 얼굴은 이미지 내부의 얼굴 위치를 나타내는 얼굴 사각형(Left, Top, Width 및 Height)과 함께 반환됩니다. 얼굴 감지 기능은 선택 여부에 따라 자세, 성별, 나이, 머리 자세, 얼굴의 털 및 안경 같은 일련의 얼굴 관련 특징들을 추출합니다. 보다 자세한 정보는 Face - Detect API 문서를 참고하시기 바랍니다.

얼굴 인식

얼굴 인식 기능은 보안, 내츄럴 사용자 인터페이스(NUI, Natural User Interface), 이미지 내용의 분석 및 관리, 모바일 응용 프로그램 및 로봇 공학을 비롯한 다양한 시나리오에서 광범위하게 사용됩니다. 얼굴 검증, 비슷한 얼굴 찾기, 얼굴 그룹화, 인물 식별의 네 가지 얼굴 인식 기능이 제공됩니다.

얼굴 검증

Face API 검증 기능은 감지된 두 얼굴에 대한 인증 (역주: 같은 사람의 얼굴인지) 및 감지된 얼굴과 인물 개체 (역주: 얼굴 그룹화 절 참고) 간의 인증을 수행합니다. 보다 자세한 정보는 Face - Verify API 문서를 참고하시기 바랍니다.

비슷한 얼굴 찾기

검색하고자 하는 감지된 얼굴과 해당 얼굴을 검색할 후보 얼굴들의 모음을 지정하면, 후보 얼굴들의 모음에서 지정한 얼굴과 가장 비슷한 얼굴들의 부분 집합을 찾습니다. 이때, 두 가지 모드가 지원되는데, matchFace 모드와 matchPerson 모드가 그것으로, matchPerson 모드에서는 Face - Verify에서 얻어진 동일-인물 임계값을 반영한 비슷한 얼굴을 반환합니다. 반면, matchFace 모드에서는 동일-인물 임계값을 무시하고 가장 유사한 후보 얼굴들을 반환합니다. 한 가지 관련 예제를 살펴보겠습니다. 먼저 다음은 후보 얼굴들의 목록입니다.

Overview - Face Find Similar

그리고 질의할 얼굴은 다음과 같습니다.

Overview - Face Find Similar

만약 4 명의 비슷한 얼굴을 검색할 경우, matchPerson 모드에서는 질의한 얼굴과 동일한 사람에 속하는 (a)와 (b)만 반환됩니다. 반면, matchFace 모드에서는 유사도가 낮더라도 원하는 바처럼 (a), (b), (c) 및 (d)가 모두 반환됩니다. 보다 자세한 정보는 Face - Find Similar API 문서를 참고하시기 바랍니다.

역주

비슷한 사람을 찾는지, 비슷한 얼굴을 찾는지가 두 모드 간의 차이점입니다. maxNumOfCandidatesReturned 매개 변수를 지정해서 반환할 얼굴의 최개 갯수를 지정할 수도 있습니다.

얼굴 그룹화

얼굴 그룹화 API에 알 수 없는 얼굴들의 모음을 지정하면, 유사성에 기반해서 해당 얼굴들을 자동으로 각각의 그룹으로 나눕니다. 각 그룹은 본래의 알 수 없는 얼굴들의 모음이 적절하게 분류된 부분 집합으로, 비슷한 얼굴들을 포함합니다. 그리고 같은 그룹에 포함된 모든 얼굴은 동일한 인물 개체에 속하는 것으로 간주될 수 있습니다. 보다 자세한 정보는 Face - Group API 문서를 참고하시기 바랍니다.

얼굴 식별

Face API는 미리 생성해야하고 이후 편집이 가능한 인물 데이터베이스 (인물 그룹으로 정의된) 및 감지된 얼굴에 기반해서 인물을 식별하기 위한 용도로 사용할 수 있습니다.

다음 그림은 "myfriends"라는 이름을 가진 인물 그룹의 예입니다. 각 그룹에는 최대 1,000 개의 인물 개체가 포함될 수 있습니다. 또한, 각각의 인물 개체에는 하나 이상의 얼굴을 등록할 수 있습니다.

Overview - Person Group

인물 그룹이 생성되고 훈련된 뒤에는, 그룹을 대상으로 새로 감지된 얼굴에 대한 식별을 수행할 수 있습니다. 그 결과, 얼굴이 그룹에 포함된 인물 개체로 식별되면, 인물 개체가 반환됩니다.

인물 식별에 대한 보다 자세한 내용은 다음 목록의 API 문서들을 참고하시기 바랍니다:

Face Storage

Face Storage를 사용하면 표준 계층 구독에서 Face API의 인물 식별 또는 유사성 비교 작업에 필요한 인물 개체나 (Person - Add A Person Face) 얼굴 목록에 (Face List - Add a Face to a Face List) 추가된 얼굴을 영구적으로 저장할 수 있습니다. 저장된 이미지는 얼굴 1,000 개당 $0.5가 부과되며, 이 비율은 매일 일할 계산됩니다. 무료 계층 구독의 경우, 비용은 무료지만 총 1,000 명까지로 제한됩니다.

Face Storage의 가격은 매일 일할 계산됩니다. 가령, 한 달 중 전반기 15일 동안만 10,000 개의 저장된 얼굴을 사용하고 후반기에는 사용하지 않는다면, 10,000 개의 얼굴을 저장한 전반기 15일에 대해서만 요금이 청구됩니다. 반면, 매일 몇 시간 동안만 1,000 개의 얼굴을 저장하고 다시 매일 밤 삭제한다고 하더라도, 매일 1,000 개의 저장된 얼굴을 사용한 것으로 간주되어 요금이 청구됩니다.

역주

보다 자세한 정보는 가격 - Face API 페이지를 참고하시기 바랍니다.

자습서 시작하기

다음 자습서들에서 Face API의 기본 기능과 구독 절차를 살펴볼 수 있습니다:

예제 응용 프로그램

Face API를 사용하는 예제 응용 프로그램들을 살펴보시기 바랍니다.

  • FamilyNotes UWP 응용 프로그램
    • 패밀리 노트 공유 시나리오를 통해서 음성, 코타나, 잉크 및 카메라의 사용법을 보여주는 유니버설 Windows 플랫폼 (UWP, Universal Windows Platform) 예제 응용 프로그램입니다.
  • 동영상 프레임 분석 예제
    • Face, Computer Vision 및 Emotion API를 사용해서 거의 실시간으로 라이브 동영상 스트림을 분석하는 WPF (Windows Presentation Foundation) 예제 응용 프로그램입니다.