仅三步部署“分割一切”视觉模型Segment Anything

1、选择GPU计算平台

市面上有众多云计算平台可供选择,本次部署推荐openbayes平台,目前平台有活动,邀请注册双方均可获赠1小时RTX 4090使用时长。
OpenBayes注册
通过这个链接注册可以拿到平台赠送的3个小时+邀请注册的1个小时共4小时4090使用时长,体验云计算的话这个时长完全够用了。注册完成后通过支付宝实名认证就可以开始租用算力了,实名过程这里略去不表。

2、创建容器

OpenBayes的基础计算单元称为算力容器Gear,可以执行各种各样的计算工作,包括数据预处理,机器学习模型的训练,利用已有模型对未标注数据进行推断等。

  • 进入高性能计算模块,点击创建新容器
    在这里插入图片描述

  • 填写容器名称、备注,绑定数据,选择接入方式。openbayes提供了数量可观的公共数据集,下面我上传一个本地的数据集。
    在这里插入图片描述
    点击创建新数据集
    输入数据集名称和备注
    选择压缩包并上传(容器会自动帮你解压)
    创建完成

  • 回到创建容器的页面并绑定刚刚上传的数据集,完成后点击“下一步:选择算力”

根据需求选择不同的算力和镜像

  • 审核完成后会自动开始运行,openbayes提供了三种访问途径,分别是Jupyter访问、SSH和TenserBoard可视化。这里我使用JupyterLab访问并进行下面的部署流程。
    审核完成

3、项目部署

  • 选择JupyterLab访问后会进入如下页面,与本地使用JupyterLab差别不大,主要是右侧会显示当前容器资源的使用情况。
    在这里插入图片描述
  • 直接克隆Segment Anything仓库,或者先下载压缩包到本地再上传解压均可,这里我选择后者,因为直连GitHub克隆大概率不成功。
    使用unzip命令解压,这里略去不表
  • Meta提供了一些演示用的Jupyter笔记本,进入SegmentAnything主目录的notebooks文件夹下就能看到,这里使用生成所有掩膜为例。

在这里插入图片描述

  • 在后面的使用过程中,我们会用到模型参数文件,Meta提供了三个预训练模型参数文件:
    由大到小排列
  • 这里我直接选择最大的模型参数ViT-H SAM model,这也是演示脚本中默认使用的模型。右键复制链接后使用wget命令下载到容器:
wget https://dl.fbaipublicfiles.com/segment_anything/sam_vit_h_4b8939.pth
  • 下载完成后将其剪切到Segment Anything的主目录下,并重启Jupyter内核,否则可能读不到文件。

主目录

运行每一个代码块,这里可能会遇到的问题有两个:

  • 导入cv2时报错“ibGL.so.1: cannot open shared object file…” 只需要使用pip命令安装opencv-python-headless即可解决
  • 读入图片并转换颜色通道的时候报错“…!_src.empty() in function ‘cvtColor’”表示读入的是空文件,这是由于图片路径不正确导致的,检查你的路径即可解决此问题。

在这里插入图片描述
在这里插入图片描述

  • 另外,Segment Anything还提供了脚本提取并导出掩膜,这里我换用ssh方式连接容器。在容器详情页能找到SSH命令和连接密码。使用Windows自带的SSH工具即可连接:

在这里插入图片描述

  • 进入主目录后,新建output文件夹作为输出路径,运行python脚本即可生成所有实例的分割掩膜文件。以下是实例,根据实际情况修改参数即可。
mkdir output #新建文件夹
python scripts/amg.py --checkpoint ./sam_vit_h_4b8939.pth --model-type vit_h --input ./images/color.png --output ./output

在这里插入图片描述
在这里插入图片描述

  • 当然,使用SSH方式连接,在需要将远程资源下载到本地时不如JupyterLab方便,这里我使用Xftp将生成的掩膜下载到本地。
    在这里插入图片描述

生成的结果
OpenBayes还提供了模型部署模块,隐藏了复杂的部署细节,只向外部暴露一个API来完成调用,感兴趣的读者可以自行探索。

至此,本文结束。

  • 27
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值