목표
이 샘플에서는 Google Vision API를 사용하여 이미지의 얼굴을 감지합니다. 그런 다음 해당 데이터를 사용하여 각 얼굴 주위에 상자를 그려서 얼굴이 정확히 감지되었는지 검증합니다.
비용
이 문서에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.
- Cloud Vision
프로젝트 사용량을 기준으로 예상 비용을 산출하려면 가격 계산기를 사용하세요.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Google Cloud Vision API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Google Cloud Vision API.
- 애플리케이션 기본 사용자 인증 정보를 사용할 수 있는 환경을 설정합니다.
-
다음과 같이 언어별로 작업을 수행하고 도구를 설정합니다.
C#
- Google 클라이언트 라이브러리 설치
- Visual Studio 2012/2015를 설치합니다.
자바
- 자바 설치
- API 참조
Apache Maven 빌드 시스템을 다운로드하여 설치합니다.
pom.xml
에 Google API 클라이언트 라이브러리와 Vision API 클라이언트 라이브러리가 포함되어 있기 때문에 Maven은 프로젝트가 빌드될 때 이러한 라이브러리가 설치되도록 합니다....
Node.js
- Google 클라이언트 라이브러리 설치
- node.js를 설치합니다.
- API 참조
npm 및 node-canvas를 설치합니다. 샘플 코드에는
npm install
명령어를 사용하여 모든 종속 항목을 설치하는package.json
이 포함되어 있습니다. node-canvas의 추가 종속 항목을 설치해야 할 수 있습니다. 자세한 내용은 node-canvas 설치 문서를 참조하세요.
PHP
- Google 클라이언트 라이브러리 설치
- PHP 및 Composer 설치
- API 참조
- PHP용 GD를 설치하고 사용 설정합니다.
Python
- Google 클라이언트 라이브러리 설치
- Python을 설치합니다.
- API 참조
- pillow를 설치합니다.
Ruby
- Google 클라이언트 라이브러리 설치
- Ruby 및 Bundler 설치
- API 참조
- ImageMagick을 설치합니다.
서비스 객체 만들기
공식 클라이언트 SDK를 사용하여 Google API에 액세스하려면 API를 SDK에 설명하는 API의 검색 문서를 기반으로 서비스 객체를 만듭니다. 검색 문서는 Vision API의 검색 서비스에서 사용자 인증 정보를 사용하여 가져와야 합니다.
자바
Node.js
Python
얼굴 인식 요청 보내기
Vision API에 대한 요청을 생성하려면 우선 API 문서를 참조하세요. 여기에서는 images
소스에 이미지를 annotate
하도록 요청합니다. 이 API에 대한 요청은 requests
목록을 갖는 객체의 형태입니다. 이 목록의 각 항목은 두 가지 정보를 포함합니다.
- base64로 인코딩된 이미지 데이터
- 해당 이미지에서 주석을 달고 싶은 특징 목록
이 예에서는 이미지 하나에 대한 FACE_DETECTION
주석만 요청하고 응답의 관련 부분만 반환합니다.
자바
Node.js
Python
응답 처리
수고하셨습니다. 이미지에서 얼굴이 감지되었습니다. 얼굴 주석 요청의 응답은 얼굴을 둘러싸는 다각형의 좌표를 비롯하여 감지된 얼굴의 여러 가지 메타데이터를 포함합니다. 그러나 아직까지는 숫자의 목록일 뿐입니다. 이 데이터를 사용하여 이미지에서 실제로 얼굴이 발견되었는지 확인해 보려고 합니다. Vision API가 반환한 좌표를 사용하여 이미지 사본에 다각형을 그리겠습니다.
종합해보기
자바
...
샘플을 빌드하고 실행하려면 샘플 코드 디렉토리에서 다음 명령어를 실행합니다.
mvn clean compile assembly:single java -cp target/vision-face-detection-1.0-SNAPSHOT-jar-with-dependencies.jar \ com.google.cloud.vision.samples.facedetect.FaceDetectApp \ data/face.jpg \ output.jpg
Node.js
샘플을 실행하려면 샘플 코드 디렉터리에서 다음 명령을 실행합니다.
node faceDetection resources/face.png
Python
삭제
이 가이드에서 사용된 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 프로젝트를 삭제하거나 프로젝트를 유지하고 개별 리소스를 삭제하세요.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.