2017-11-28 23 views
0

Google Cloud Storage에 이미지를 저장하고 Google Vision API를 사용하여 해당 이미지의 라벨을 감지합니다. 나는 두 가지 목적으로 동일한 계정과 자격 증명을 사용합니다. 나는에 주어진 샘플 프로그램을 사용하고 : 'https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/vision/cloud-client/detect/detect.py'Google 비전 API는 GCP의 공개 이미지에 대해서만 라벨을 감지합니다.

을 나는 성공적 공개적으로 액세스 할 수있는 인터넷의 로컬 이미지와 이미지 라벨을 감지 할 수 있습니다. GCP 저장소의 버킷에 저장된 이미지와 함께 다음을 사용할 때 데이터 (이미지)를 공개로 표시하지 않으면 프로그램에서 레이블을 검색하지 않습니다.

이 개인 인 경우 : 나는 '공개'로 표시

# ./detect.py labels-uri 
'https://www.googleapis.com/download/storage/v1/b/mybucket/o/Penguins.jpg? 
generation=1510548912343529&alt=media' 
Labels: 

:

# ./detect.py labels-uri 
'https://www.googleapis.com/download/storage/v1/b/mybucket/o/Penguins.jpg? 
generation=1510548912343529&alt=media' 
Labels: 
penguin 
bird 
king penguin 
flightless bird 
beak 
organism 
내가 비전 및 스토리지 API 액세스를 위해 동일한 자격 증명을 사용하고 있기 때문에 나는 기다리고 있었다

, 심지어 내 개인적인 이미지에서 작동해야합니다.

도와 주시겠습니까?

답변

2

Cloud Storage 객체를 참조 할 때 URI 패턴 gs://bucket_name/object_name을 사용합니다.

./detect.py labels-uri gs://mybucket/Penguins.jpg

클라우드 비전이 지원하는 시도 모두 클라우드 스토리지는 임의의 URL뿐만 아니라 객체. 그러나 URL을 참조하면 Cloud Storage 객체를 직접 참조 할 때와 달리 Cloud Vision에서 사용자의 자격 증명을 전달하지 않습니다. 여기에서는 원하는 것이 아닌 Cloud Storage 객체를 익명으로 다운로드하려고 시도하는 URL을 지정합니다. 그러나 Cloud Vision에서는 특정 버전의 GCS 객체를 지정할 수 없습니다 (자세한 내용은 https://cloud.google.com/vision/docs/reference/rest/v1/images/annotate 참조).

+0

쿨 !! 그게 꽤 잘해. 빠른 답변 주셔서 감사합니다. –