2017-05-11 5 views
0

IBM Cloud Object Storage의 공개 IM을 Watson 시각적 인식과 연관시키는 것이 더 이상 불가능한 것처럼 보입니다. 2 개의 서비스 사이에서 호출 유형이 변경되었습니다. 아래 코드는 작동하는 데 사용되지만 "이미지 검색 결과"가 없다는 것을 알고 있습니다. 나는 URL을 입력 할 때 무엇보다Watson 시각적 인식 API 업데이트

import json 
from os.path import join, dirname 
from os import environ 
import sys 
import os 
import boto3 
import pprint 
from boto3 import client 
from botocore.utils import fix_s3_host 
from watson_developer_cloud import VisualRecognitionV3 


param_1= "MY S3 KEY" 
param_2= "MY S3 SECRET KEY " 
param_3= "https://s3-api.us-geo.objectstorage.softlayer.net" 
param_4= "MY BUCKET " 
param_5= "MY WATSON API KEY " 

#The Name of my image I want to analyse that is currently in my bucket and is made public 
objectNMAE='THIEF.jpg' 

s3ressource = client(
    service_name='s3', 
    endpoint_url= param_3, 
    aws_access_key_id= param_1, 
    aws_secret_access_key=param_2, 
    use_ssl=True, 
    ) 
visual_recognition = VisualRecognitionV3('2016-05-20', api_key=param_5) 

#The URL of my image I made public with Public ACL 
urltobeanalysed="%s/%s/%s" % (param_3,param_4,objectNMAE) 

#For Debug, I use an image that can be viewed in a web-browser 
URL2="https://fr.wikipedia.org/wiki/Barack_Obama#/media/File:President_Barack_Obama.jpg" 

print(json.dumps(visual_recognition.classify(images_url=urltobeanalysed), indent=2)) 

, 만든 대중이 내 브라우저에 표시하는 데 사용되는 이미지는, 지금은 ... 대신 단서을 다운로드?

답변

0

몇 가지 연구가 끝난 후 IBM COS는 AWS S3 동작과 정렬되어 객체 헤더 동작에서 일부 변경되었습니다. 콘텐츠 유형을 image/jpeg로 지정해야했습니다. 'contentType'=> 'image/jpeg'

기타는 표시되지 않았습니다. 그것은 작동하지 않습니다.

1

위 코드의 이미지는 위키 페이지의 이미지가 큰 이미지입니다. API 호출에서 제공해야하는 이미지에 대한 직접 링크는 this one입니다. 브라우저에서 이미지를 마우스 오른쪽 버튼으로 클릭하고 "이미지 위치 복사"와 같은 작업을하려면 브라우저에 따라 다릅니다.

+0

감사합니다. 답변을 Upvoted, 그러나 이것은 이유의 일부일뿐입니다. IBM BlueMix COS 팀이 컨텐츠 유형 조작에 관해서 한 일에 귀를 기울이고 싶습니다. 이것은 내 애플 리케이션을 변경하고 업데이 트하는 몇 줄의 코드를 추가했다. APi가 업데이트 될 때 업데이트하고 업데이트의 세부 사항을 명확히하고 싶습니다. 감사. – MouIdri