- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我发现自己无法在 Python 中使用 Azure 计算机视觉 SDK 的 read_in_stream API。SDK 总是返回一个
File "<path>/azure/cognitiveservices/vision/computervision/operations/_computer_vision_client_operations.py", line 1567, in read_in_stream raise models.ComputerVisionErrorException(self._deserialize, response) azure.cognitiveservices.vision.computervision.models._models_py3.ComputerVisionErrorException: Operation returned an invalid status code 'Bad Request'
我尝试使用标准读取 API,为其提供文件 URL 而不是本地 URL,效果很好,因此客户端已得到正确身份验证。
该文件确实具有读取权限,并且将其读入枕头图像效果很好。这是一个相当小的 PNG 文件。
from azure.cognitiveservices.vision import computervision
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
from azure.cognitiveservices.vision.computervision.models import OperationStatusCodes
from azure.cognitiveservices.vision.computervision.models import VisualFeatureTypes
from msrest.authentication import CognitiveServicesCredentials
from array import array
import os
from PIL import Image
import sys
import time
subscription_key = "<key from azure portal>"
endpoint = "<endpoint from azure portal>"
def ocr(filePath):
computervision_client = ComputerVisionClient(endpoint, CognitiveServicesCredentials(subscription_key))
with open(filePath, "rb") as local_image_printed_text:
recognize_handw_results = computervision_client.read_in_stream(local_image_printed_text, raw=True)
最佳答案
您提到您的 PNG 文件很小,请您检查一下它的尺寸是否大于 5050?基于official API reference : 如果使用尺寸小于 5050 的 PNG 文件,我可以重现您的问题:
但是当我换成更大的时,它的工作方式异常(exception):
这是我的测试代码:
from azure.cognitiveservices.vision import computervision
from azure.cognitiveservices.vision.computervision import ComputerVisionClient
from azure.cognitiveservices.vision.computervision.models import OperationStatusCodes
from azure.cognitiveservices.vision.computervision.models import VisualFeatureTypes
from msrest.authentication import CognitiveServicesCredentials
from array import array
import os
from PIL import Image
import sys
import time
import requests
subscription_key = ""
endpoint = ""
def ocr(filePath):
computervision_client = ComputerVisionClient(endpoint, CognitiveServicesCredentials(subscription_key))
with open(filePath, "rb") as local_image_printed_text:
recognize_handw_results = computervision_client.read_in_stream(local_image_printed_text, raw=True)
time.sleep(5)
result_url = recognize_handw_results.headers.get('Operation-Location')
result = requests.get(result_url,headers = {"Ocp-Apim-Subscription-Key":subscription_key})
print(result.text)
ocr("<png local path>")
关于python - Azure 计算机视觉 SDK read_in_stream 始终返回错误请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66322410/
我发现自己无法在 Python 中使用 Azure 计算机视觉 SDK 的 read_in_stream API。SDK 总是返回一个 File "/azure/cognitiveservices/v
我发现自己无法在 Python 中使用 Azure 计算机视觉 SDK 的 read_in_stream API。SDK 总是返回一个 File "/azure/cognitiveservices/v
我是一名优秀的程序员,十分优秀!