python - 在 Azure 计算机视觉中将 PIL 裁剪图像作为流传递
问题描述
我需要将裁剪后的图像作为流或 url 传递给 Azure 中的计算机视觉客户端。我正在使用 PIL 根据一些边界框值裁剪图像。img1 存储裁剪后的图像
img1 = img.crop((bbox[i][0], bbox[i][1], bbox[i][4], bbox[i][5]))
img1.show()
with open(img1.name, 'rb') as bg_image1:
colour_analysis = computervision_client.analyze_image_in_stream(bg_image1, remote_image_features)
或者
img1 = img.crop((bbox[i][0], bbox[i][1], bbox[i][4], bbox[i][5]))
img1.show()
open_image = open(img1.name, "rb")
colour_analysis = computervision_client.analyze_image_in_stream(open_image, remote_image_features)
当我运行上面的代码时,我得到了错误: raise AttributeError(name) AttributeError: name
以前,当我从文件上传图像时,我使用了这个运行良好的代码:
with open('filepath\filename.jpg', 'rb') as bg_image:
colour_analysis = computervision_client.analyze_image_in_stream(bg_image, remote_image_features)
如何将裁剪后的图像传递给 Azure 客户端?
解决方案
请按照以下 github 示例分析本地图像。请参阅 ComputerVisionClient 方法,例如 AnalyzeImageInStreamAsync。
推荐阅读
- firebase - 任务 ':app:transformClassesWithDexBuilderForDebug' 的 Cordova 执行失败
- c++ - while 循环与 for 循环中的迭代器失效
- c# - 使用统一容器的带有连接字符串的 EF 多个构造函数:“底层提供程序在打开时失败”
- flutter - 每次我在 Android Studio 的模拟器(Android 和 iOS)上构建 Flutter 应用程序时,都会出现“Type 'Color' is not a subtype of 'MaterialColor' 错误
- macos - 如何触发文件系统用户同意提示并将应用程序添加到“文件和文件夹”隐私窗格?
- java - 在 macOS Catalina 中为 Java 应用程序签署自定义 JRE
- nginx - 访问部署在 kubernetes 上的 istio-envoy 时 Nginx Bad Gateway 502
- python - 使用多处理包的冲突功能
- c# - 通过 C# Windows 窗体执行 Web 搜索
- javascript - 如何返回布尔可观察值并检查该布尔值