Meta的分割一切模型SAM( Segment Anything )测试

Meta不久前开源发布了一款图像处理模型,即分割一切模型:Segment Anything Model,简称 SAM,号称要从任意一张图片中分割万物,源码地址为:

https://github.com/facebookresearch/segment-anything

打开后看到目录结构大概这样:
在这里插入图片描述
一般一个开源项目中都会有项目介绍和示例代码。本示例中的文件 README.md 即为项目概况介绍,主要说明了使用 SAM 模型需要的 python 环境安装方法,和 SAM 的使用方法。notebooks 文件夹内是几个 jupyter notebook 格式的 python 示例代码。

运行示例代码步骤如下:
1、按照 README.md 文件所述,逐步安装所有依赖库。记得 python 要安装3.8,3.9, 3.10 其中的一个,目前不建议安装 3.11,因为会和最新的 pytorch 不兼容。
2、安装 jupyter。
3、下载模型文件到本地:点击 README.md 文件中的模型下载链接,即可下载指定的模型:
在这里插入图片描述
模型总共有三个,其中 vit-h 最大,有越 2G ,fit-l 为 1.2G, vit-b 最小为 366M。我测试了 最小的 vit-b。

4、运行 jupyter notebook ,打开示例文件 automatic_mask_generator_example.ipynb,修改以下两行:
在这里插入图片描述
即模型文件路径和 设备类型( 使用 cpu 还是 gpu, 如果是gpu则设置为 cuda, 是 cpu 的话设为 cpu 即可 )。

5、将 automatic_mask_generator_example.ipynb 文件内的所有代码运行一遍,会自动从网上下载一个图片进行原图显示和 mask 处理,最后会得出 图片处理的 mask 结果:
在这里插入图片描述

总结:

1、SAM 模型确实很强大,唯一缺点可能是运行比较消耗资源,如果是普通 cpu,运行起来会非常慢。我的 cpu 是 Intel® Core™ i7-7500U CPU @ 2.70GHz 2.90 GHz,内存是 8G,笔记本为华为 MateBook X,用的是最小的模型,mask 处理用了足足有至少半分钟,或者更久。等了一会儿发现还没结果,就只好先去洗澡。洗完澡发现结果出来了。。土豪们可以用 GPU 尝试,相信一定快很多。
2、实际操练难点可能在于环境的搭建,晚点介绍环境安装。如果安装过程中发现某些步骤不成功,可以尝试跳过该步骤继续下一步,最后仍然尝试运行脚本,可能也可以。

祝大家进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值