尝试通过传递参数来分析图像时,我遇到了ComputerVisionErrorException: Operation returned an invalid status code 'PermissionDenied'
,如果我将输入作为变量给出,则没有错误。请帮助将输入作为变量。
path = raw_input("enter path: ")
# --snip--
with open(os.path.join(IMAGES_FOLDER, path), "rb") as image_stream:
# --snip--
它工作正常。但我正在尝试使用:
path = sys.argv[1]
但是,我收到上面的错误。我希望它像接受输入一样正常工作。
安装适用于 Python 的 Azure 认知服务计算机视觉 SDK,并使用 SDK 进行查询
pip install azure-cognitiveservices-vision-computervision
认证
创建计算机视觉资源后,需要其终结点及其帐户密钥之一来实例化客户端对象。
在创建计算机视觉客户端对象的实例时使用这些值。
创建客户端
从环境变量中获取终结点和密钥,然后创建计算机视觉客户端对象。
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
from azure.cognitiveservices.vision.computervision.models import VisualFeatureTypes
from msrest.authentication import CognitiveServicesCredentials
# Get endpoint and key from environment variables
import os
endpoint = os.environ['ACCOUNT_ENDPOINT']
key = os.environ['ACCOUNT_KEY']
# Set credentials
credentials = CognitiveServicesCredentials(key)
# Create client
client = ComputerVisionClient(endpoint, credentials)
分析图像
您可以使用analyze_image分析图像中某些要素。使用 visual_features 属性设置要对图像执行的分析类型。常用值是 VisualFeatureTypes.tags 和 VisualFeatureTypes.description。
url = "https://upload.wikimedia.org/wikipedia/commons/thumb/1/12/Broadway_and_Times_Square_by_night.jpg/450px-Broadway_and_Times_Square_by_night.jpg"
image_analysis = client.analyze_image(url,visual_features=[VisualFeatureTypes.tags])
for tag in image_analysis.tags:
print(tag)
访问此处以供参考。
希望对您有所帮助。