Google Cloud Vision API 사용하여 모니터링 어플리케이션 구축하는 방법[1]

조민재
조민재
Jul 23, 2017 · 3 min read
google.com

딥러닝, 이미지 인식과 같은 인공지능 기술들이 요즘 제 호기심을 자극합니다. 그중 작년 이맘쯤 구글이 발표한 이미지 탐색(Image detection)이 가능한 Cloud Vision API라는 오픈 API에 대해 알아보았습니다.

Cloud Vision API 특징

자신이 원하는 기준에 맞게 많은 양의 이미지를 분류하는 데 매우 유용한 것 같습니다. 아래는 Cloud Vision의 주요 기능들입니다.

  • 이미지 속 사물들을 찾아주는 Label Detection ( ex. 가구, 동물, 음식등)
  • 이미지 속 문자들을 인지하는 Text Detection (ex. 전단지)
  • 불쾌한 콘텐츠를 식별하여 걸러내는 Safe Search Detection ( ex. 성인 컨텐츠, 폭력 컨텐츠)
  • 이미지 속 세계 곳곳에 있는 랜드마크도 식별하여 위도/경도도 표시하는 Landmark Detection (ex. 경복궁, 피라미드, 스핑크스)
  • 잘 알려져 있는 회사 로고들을 식별하는 Logo Detection (ex. 맥도날드, 애플, KFC)
  • 입, 눈, 코 등의 요소 데이터를 종합하여 얼굴 표정을 식별하는 Face Detection. ( ex. 기쁨, 화남, 우울함 등)
  • 이미지 속 개체의 색상(RGB)값을 알려주는 IMAGE_PROPERTIES

첫번째, 마라톤하는 이미지를 보면 Label Detection이 생각외로 높은 정확도를 가진 것을 볼 수 있습니다. running과 marathon외로도 people도 나올 수 있을 것 같네요.

두번째 예시는 사람의 표정을 잡아내고 기분의 상태와 정확도 정도를 very likely로 표시하였습니다. 또한 들고 있는 표지판의 글자도 에스파냐어인지 잘 잡았습니다.

사실 아직도 Vision API가 불안정한 것은 맞습니다만, 시간이 지날수록 더 높은 정확성을 가지기엔 틀림없어 보이네요.


Vision API 이해하기

Vision API는 REST API를 사용하기 쉽습니다. API는 JSON 포맷 형식으로 주어지는데 분석 할 이미지 목록과 API에서 정보를 감지하고 반환 할 이미지 기능으로 구성됩니다.

The JSON Request format은 아래와 같습니다.

{
"requests":[
{
"image":{
"content":"<base64-encoded-image-bytes>"
},
"features":[
{
"type":"<FEATURE_TYPE>",
"maxResults":1
},
{
"type":"<FEATURE_TYPE>",
"maxResults":1
}
]
}
]
}

JSON포맷안의 image는 base64로 인코딩 되어 있고 FEATURE_TYPE (Label Detection, Text Detection, Logo Detection 등…)요청 배열로 구성되어 있습니다.

[2]에서 계속…

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade