저번 포스팅에서 Google Vision API 연동을 위한 키를 받아오기 까지 작업을 하였다면
이번 포스팅에서는 이어서 이미지 분석을 위한 코드를 작성해보려고 한다.
만약 키를 아직 못받은 상태라면 저번 포스팅을 참고하기를 바란다.
2020/09/16 - [Language/GoLang] - Google Vision AI(이미지분석 API) 적용-이미지 내 텍스트 추출하기(OCR)-1편
1. 코드 작성
먼저 Google Cloud Platform측에서 받은 비공개 키 파일(.json) 경로를
아래 소스코드에서 [키 파일 경로]라고 되어있는 곳에 명시해준다.
func VisionAPI(filePath string) {
ctx := context.Background()
// Creates a client.
client, err := vision.NewImageAnnotatorClient(ctx,option.WithCredentialsFile("키 파일 경로"))
if err != nil {
log.Fatalf("Failed to create client: %v", err)
}
defer client.Close()
// Sets the name of the image file to annotate.
filename := filePath
file, err := os.Open(filename)
if err != nil {
log.Fatalf("Failed to read file: %v", err)
}
defer file.Close()
image, err := vision.NewImageFromReader(file)
if err != nil {
log.Fatalf("Failed to create image: %v", err)
}
annotations, err := client.DetectTexts(ctx, image, nil, 10)
if err != nil {
log.Fatalf("Failed to detect labels: %v", err)
}
if len(annotations) == 0 {
fmt.Println( "No text found.")
} else {
fmt.Println( "Text:")
for _, annotation := range annotations {
fmt.Println(annotation.Description)
}
}
}
필자는 Go언어로 작성하였다.
만약 다른 언어의 소스코드가 필요하다면 아래 사이트를 참고하기를 바란다.
https://cloud.google.com/vision/docs/ocr
2. 결과 확인
이제 필요한 준비는 끝났으니 위 소스코드를 돌려보도록 하자.
필자는 아래와 같은 전단지를 넣고 돌렸다.
아래는 위 이미지를 분석했을 때 구글이 반환한 결과이다.
Text:
OPEN
60%
초대박 세일
N4 오픈 10일간만
헬스 등록시
요가 ·필라테스· 뮤직복싱다이어트
전종목 무료
+청담동 최고 헤어상
OPEN
60%
초대박
세일
N4
오픈
10
일간
만
헬스
등록시
요가
·
필라테스
·
뮤직
복싱
다이어트
전종목
무료
+
청담동
최고
헤어
상
결과를 봤을 때 예상 외로 정확하게 인식하는 모습을 보여줘서 놀랐다.
역시 구글인거같다.
'Language > GoLang' 카테고리의 다른 글
Google Vision AI(이미지분석 API) 적용-이미지 내 텍스트 추출하기(OCR)-1편 (0) | 2020.09.16 |
---|---|
[GoLang]GoLang시작하기-Go 설치 및 Hello World 출력 (0) | 2020.09.09 |