Face API를 통해 등록된 얼굴 인물 정보 가져오기

icrosoft Azure의 Cognitive Services는 Face API를 사용하여 얼굴에 로그인하고 얼굴에 로그인한 인물의 이름을 얻는 절차를 접할 수 있는 기회가 있기 때문에 여기서 요약한다.
또한 여기서 전제 조건은 Azure 계정을 얻고 Face API에 대한 접근 키를 얻는 것이다.
참고 자료:
https://docs.microsoft.com/ja-jp/azure/cognitive-services/face/face-api-how-to-topics/howtoidentifyfacesinimage

Face API의 데이터 구조


우선, 가져오기로서 Face API에서 사람의 얼굴이 어떤 데이터 구조로 저장되고 인물 정보와 관련이 있는지 설명한다.

그림으로 이런 느낌이에요.
인원 그룹은 식별하고 싶은 사람의 그룹을 모아 만든 것이다.소속된 커뮤니티에 따라 관련자가 다르다.
'친구','업무 파트너'등 식별하고 싶은 그룹을 나타낸다.
또 통일도 가능한 사람이 Person Group만 하나로 설정하면 문제가 없다.
이름처럼 Person은 사람의 정보입니다.
그 Person과 연관된 얼굴의 정보는 Persisted Face가 됩니다.
"계속"이라고 쓰여 있기 때문에 이 얼굴은 Face API에 영구적으로 기록됩니다.

얼굴 체크인을 해볼게요.


1. 인원 그룹 만들기


일단 큰 곳부터.인원 그룹을 만듭니다.
요구 중인 person Group Id는 규칙을 준수하면 무엇이든지 가능합니다.
Person Group - Create a Person Group
생성한 사용자 그룹 ID가 계속 사용되고 있습니다. 이를 기록하고 저장하십시오.

2. 작성자


만든 인원 그룹에 대한 인원 정보가 포함되어 있습니다.
우선 등록자의 정보를 작성한다.이름 외에도 16KB까지 사용할 수 있는 사용자 데이터가 있습니다.
Person - Create a Person
인원을 만들 때 응답 인원을 표시합니다.GUID 형식으로 반환됩니다.
이후 얼굴 등록에 사용되므로 Person Group ID와 함께 기록하고 보관하십시오.

3. 얼굴 등록


사람을 만들면 그 사람의 얼굴을 끊임없이 등록한다.
다음 API에 이미지 데이터 또는 이미지 데이터에 대한 링크를 던져 얼굴에 로그인합니다.
Person - Add a Person Face
여기서 주의해야 할 것은 그림에 반드시 얼굴이 있다는 것이다.두 개 이상이면 어느 얼굴인지 모르죠.
또한 "이미지에 2명 이상이 있지만 오른쪽만 지정하고 싶다"는 상황에서 요청 매개 변수의 targetFace에서 직사각형을 선택하면 이미지의 일부분을 반영할 수 있습니다.

4. 이후 반복!


같은 사람으로 여러 얼굴을 등록하려면 얼굴 등록 으로 등록하고, 다른 사람의 얼굴을 등록하려면 인물 만들기 으로 등록한다.

5. 마지막으로 수강생 학습자 그룹


만약 모든 인물과 얼굴의 등록이 끝나고'응, 이미 됐어'라고 생각한다면 큰 실수다.
마지막 완성으로 Face API에 등록된 얼굴을 학습합니다.
인원조 단위로 학습하다.
Person Group - Train Person Group
몇 장이면 순식간에 끝나지만 장수가 많으면 시간이 걸릴 수 있다(5장 정도만 해봤기 때문에 장수가 많은 상황에서의 동작은 아직 확인되지 않았다).
학습 상태도 확인할 수 있다.
Person Group - Get Person Group Training Status

등록된 얼굴을 검사해 보세요.


어렵게 등록한 물건을 사용하지 않으면 의미가 없으니 등록된 얼굴을 검사해 그 사람의 이름을 얻을 수 있는지 확인해 보자.

1. 얼굴 검사


Face API의 가장 주요한 API, 얼굴 검사 API에서 먼저 얼굴 검사를 합니다.
이미지 데이터 또는 이미지 데이터의 링크를 요청 매개 변수로 API에 요청합니다.
Face - Detect
결과적으로 검출된 얼굴이 되돌아온다.여러 얼굴이 감지되면 여러 얼굴 정보가 반환됩니다.
검출된 얼굴 정보는 크게 다음과 같은 네 가지 데이터로 나뉜다.
  • faceId-Face API 내에서 관리하는 얼굴의 ID입니다.24시간이 지나자 아이디가 끊겼어요.
  • faceRectangle-얼굴이 이미지에 있는 위치의 직사각형을 나타낸다.
  • faceLandmarks-눈과 입 등의 위치가 이미지에 있는 곳을 나타내는 좌표.
  • face Attributel - 이미지에서 얼굴의 나이, 성별, 표정, 방향 등을 출력합니다.
  • 그중에서 중요한 것은faceId입니다.이 ID를 어디에 저장해 주세요.

    2. 검출된 얼굴에서 인물 검색


    방금 검출된 얼굴의 faceID에서 사람의 정보를 검색합니다.
    다음 API의 요청 매개변수에 faceID를 나열합니다.또한 한 번의 요청으로 최대 10명을 검색할 수 있으니 주의하세요
    Face - Identify
    완료되면 candidates에서 해당 인물의 인원 ID가 반환됩니다.
    만약 검출된 얼굴이 등록된 사람에게 적합하지 않으면,candidates는 공수조로 되돌아옵니다.

    3. 사용자 ID에서 이름 가져오기


    마지막으로 검색된 인원 표지에서 이 사람의 이름과 같은 정보를 추출합니다.
    Person - Get a Person
    이렇게 순조롭다면 등록된 사람의 이름이 호응될 것이다.

    주의사항


    이상은 Face API를 통해 얼굴 등록, 등록 후 얼굴 검사를 하기 전의 절차입니다.
    그중에 한 가지 주의점만 사용해 봤는데 꼭 머릿속에 넣으면 좋겠어요.
    Face API를 무료로 사용하려면 1분에 최대 20번까지 호출할 수 있다는 것이다.
    특히 얼굴 검사에서는 얼굴 검사, 검색 인원까지 여러 명이 한 번 또는 몇 번 동시에 호출하면 방법이 있지만 마지막이름 가져오기은 한 명씩 호출해야 한다.
    20명의 얼굴을 검출했으니 20명을 검색할 수 있다면 한 번 더 보내면 아웃이죠.
    따라서 Person ID에서 인물 정보를 얻은 곳만 DB 등으로 보충하는 것이 좋다.
    하지만 얼굴 이미지에서 사람의 정보로 쉽게 연결될 수 있다는 것은 대단하다.
    앞으로도 끊임없이 Cognitive Services를 따라잡고 싶습니다.
    이번에는 상당히 개념적인 말인데, 다음에는 최대한 설치에 가까운 말을 하도록 허락해 주세요.
    여기서 마치겠습니다.읽어주셔서 감사합니다.

    좋은 웹페이지 즐겨찾기