You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ML Studio中通过路径访问Azure Blob Storage中的图像数据

问题解答

1. 路径方式访问Azure Blob Storage是否可行?

完全可行,你可以通过两种核心方式实现路径式访问,替代SAS链接:

方式一:通过Azure ML数据集配置路径访问

  • 在ML Studio的数据页面创建新数据集,选择Azure Blob Storage作为数据源
  • 选定目标存储账户和文件夹,优先用托管标识或服务主体完成身份验证(比SAS更稳定持久)
  • 创建完成后,在Notebook或脚本中通过挂载获取本地路径:
    from azureml.core import Dataset, Workspace
    
    ws = Workspace.from_config()
    dataset = Dataset.get_by_name(ws, name="你的图像数据集名称")
    mount_context = dataset.mount()
    mount_context.start()
    
    # 直接用路径访问文件夹内图像
    image_folder_path = f"{mount_context.mount_point}/目标子文件夹"
    

方式二:用SDK直接挂载Blob容器

无需创建数据集,可通过azureml.fsspec将Blob容器挂载为类本地文件系统:

from azureml.fsspec import AzureMachineLearningFileSystem

# 替换为你的容器名和存储账户名
fs = AzureMachineLearningFileSystem(
    "abfss://<容器名>@<存储账户名>.dfs.core.windows.net/"
)

# 用路径遍历或读取文件
for image_file in fs.glob("/图像文件夹/*"):
    print(image_file)

2. 图像可视化与像素数据获取

拿到文件路径后,用常规Python库即可完成需求:

图像可视化

import matplotlib.pyplot as plt
from PIL import Image

# 读取单张图像
img = Image.open(f"{image_folder_path}/示例图像.jpg")

# 可视化
plt.imshow(img)
plt.axis("off")
plt.show()

获取像素数据

import numpy as np

# 转换为numpy数组,形状为(高度, 宽度, 通道数)
pixel_data = np.array(img)

# 查看像素信息
print(f"像素数组形状:{pixel_data.shape}")
print(f"像素值范围:{np.min(pixel_data)} - {np.max(pixel_data)}")

注意事项

  • 确保ML Studio的计算实例/集群拥有Blob Storage的访问权限(比如给托管标识分配存储Blob数据读取者角色)
  • 挂载路径在计算实例重启后会失效,需重新执行挂载代码

内容的提问来源于stack exchange,提问作者Qdadedalus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 15:00:44