3.5기(200104~)/출석체크 팀

Android Studio(Java)로 Face-Detect App 실행

KAU-Deeperent 2020. 4. 2. 11:05

1.Android App에서 이미지를 불러와 Face-detect를 실행

 -참고 https://codelabs.developers.google.com/codelabs/face-detection/index.html#0

 

Face Detection with the Mobile Vision API

With the release of Google Play services 7.8, you can now use new Mobile Vision APIs which provide new Face Detection APIs that find human faces in image and video better and faster than before, and which offer smart services such as understanding faces at

codelabs.developers.google.com

개발은 Android Studio에서 진행됩니다.

-app 실행 조건으로 저는 Android Studio 3.6,

Build.gradle(app)                                                                                              SDK MANAGER에서 Google Play services를 체크합니다.
Manifest의 application아래에 meta-data로 gms.vision에 대해 선언해줍니다. 

이제 MainActivity에 대한 설명입니다.

Image를 불러오고, App 사용에 필요한 것들을 import.
사용자가 버튼을 Click시 event가 발생하도록 설정

이미지를 불러오고, 얼굴에는 빨간사각형을 그립니다. 후에 비트맵 변경처리를 원하는 사진에 대해서 control합니다. 

현재 불러온 사진 이름은 'test'이다.

얼굴 감지시 빨간 사각테두리와 얼굴 감지 굴곡점에 녹색 점을 표시
얼굴 감지된 이미지를 새 canvas에 만들고 비트맵을 설정해놓습니다. 그리고 빌더를 사용하여 FaceDetector 객체를 만들어냅니다. googleplayservice를 통해 다운받아야하므로 emulator는 꼭 playstore가 있는 phone을 사용! 다운되지 않으면 'couldn't set up the face detector!'라는 메세지를 호출합니다.
이제 얼굴 감지 준비가 완료되었으므로 facedetector에서 detect메소드를 호출, sparseArray를 가져옴.
위에 for문은 빨간 직사각형테두리를 만들어내고, 안에 for문은 face의 landmark에 대해 녹색 점을 만들어냄.

앱 실행