환경:
- Windows 7 64bits
- Python 3.4
(당연한 말이지만 python 윈도우 환경 변수 설정도 필요하다. 다음 링크의 초반부 확인: http://leestation.tistory.com/750)
- 얼굴 감지 (및 약간의 감정, 몇몇 위치 정보 등의 추가 정보) 위주로 설명. Cloud Vision의 다른 기능 활용도 비슷할듯.
- 공식 문서: https://cloud.google.com/vision/docs/
목차
1) 구글 Cloud Vision 사용 자격증 받기
2) 필요 자료 설치 및 코드 실행
1) 구글 Cloud Vision 사용 자격증 받기
- 사실 이 과정이 은근(?) 귀찮다.
- https://cloud.google.com/vision/docs/quickstart
- 위 링크에서 프로젝트 생성, 결제 방법 실행(무료 사용을 원해도 일단 결제가 되는 수단인지 확인하기 위해 결제가 되었다가 취소되는 과정이 있다.), API 활성화를 한다.
- 공식 설명: https://cloud.google.com/vision/docs/common/auth
- 한글 블로그: http://www.hardcopyworld.com/ngine/aduino/index.php/archives/2736
- 위 참고링크를 그대로 따라 .json 파일을 다운 받는다.
- 환경변수에 GOOGLE_APPLICATION_CREDENTIALS을 [파일 위치][이름].json으로 설정
(환경 변수 중에서 system variables에 추가했다.)
(리눅스였다면 $ export GOOGLE_APPLICATION_CREDENTIALS=[파일 위치][이름].json 실행이면 될 것을 윈도우니까 다른 작업이 필요한 것)
(setx 명령으로 cmd 창에서 할 수도 있을듯..)
2) 필요 자료 설치 및 코드 실행
- https://cloud.google.com/vision/docs/face-tutorial
- 걍 위 그대로 수행
- 그래도 우리 말로 한 번 정리하면...
- 파이선 설치
- pip 설치 https://pip.pypa.io/en/latest/installing/
- Google API Python client 설치
pip install --upgrade google-api-python-client
- Python Imaging Library 설치
pip install Pillow
(공식 깃허브 페이지에서 샘플 코드를 받으면 설치하는 게 자동으로 될 거라는데 난 그냥 샘플 코드 받아서 안하고 위 과정으로 설치했음)
- 작업할 위치에 [파일이름].py 파일 하나 만들고 앞서 링크에 설명된 코드들을 다 포함시킨다. import 하는 애들 빼먹지 말고..
- Create the Service Object (자격증 받아오는 코드)
- Send a Face Detection Request (사진 보내고 결과 받아오는 코드)
- Process the Response (결과 사진 얼굴 위치에 박스 그려주는 식의 코드, 필수는 아님)
- Put It All Together (수행될 코드)
- python에서 코드를 수행시키려면
import faces
faces.main("사진위치\이름.jpg", "출력할사진위치\이름.jpg", 검출될얼굴의최대수)
위와 같이 수행시키면 된다.
위 코드에서는 얼굴 정보 결과를 따로 출력하지는 않는다.
코드 상에서 faces라는 애가 사진의 annotation 정보를 갖고 있으니
print('headwear: {}'.format(face['headwearLikelihood']))
위와 같이 보고 싶은 내용을 출력시켜서 보면 된다.
JSON 파일 형태로 저장도 할 수 있을텐데 아직 거기까지는 안 해봤다.
Annotation에 어떤 정보들이 들어있는지 알고 싶다면, 아래 링크 확인
- https://cloud.google.com/vision/reference/rest/v1/images/annotate