轻量级万物分割SAM模型——MobileSAM安装实测摘要

目录

  • 0、前言
  • 1、准备工作
    • 安装
      • python环境说明
      • 安装说明
    • 运行测试app
      • 安装依赖
      • 修改代码
  • 2、实际测试效果
    • 自带图片测试
    • 其它图片测试1
    • 其它图片测试2
  • 总结

0、前言

本文将介绍一种轻量级万物分割SAM模型——MobileSAM的安装和实测情况。SAM是meta公司的一种图像分割大模型,它可以将图像中自带分割物体,他们号称“SAM已经学会了物体的概念”,诸如此类视觉大模型是目前图像分割领域的研究热点之一。然而,SAM模型存在着模型过于庞大对平民不太友好,只能运行在不差钱的人和公司的服务器上,这对于实际应用来说是不可接受的。然而,MobileSAM出现了,诸如此类的量化模型的出现给平民带来了福音,使得模型在保证准确率的同时,运行速度更快,更加适合实际应用。本文将体验MobileSAM模型,并进行实际运行测试,看看实际运行效果。
在这里插入图片描述

1、准备工作

安装

python环境说明

安装也比较简单,直接按照github主页要求按照就可以。我这里python版本是conda2021的 3.9版本
在这里插入图片描述
我计算机的配置是:
在这里插入图片描述

安装说明

在这里插入图片描述
根据如上版本要求安装好依赖pytorch,torchvision两个依赖后,可以直接安装sam:

pip install git+https://github.com/ChaoningZhang/MobileSAM.git

运行测试app

安装依赖

运行官方自带的app,需要安装最新版本的 gradio:

pip install gradio

这里要注意,如果是conda的环境,安装完后可能会出现打不开spyder的情况,是由于gradio安装时,可能是对pyqt做了更换,可以通过重新安装spyder解决(其它环境根据实际情况而定):

pip install Spyder

在这里插入图片描述

修改代码

打开官方自带的app.py,可以发现,默认把自动分割给注释掉了,
在这里插入图片描述
不去掉的话,运行只有手动分割:

如果要自动分割,简单做法直接替换一下函数就行:

segment_with_points替换为segment_everything

在这里插入图片描述

2、实际测试效果

运行app后,点击浏览器进入url:http://127.0.0.1:7860/:
在这里插入图片描述
默认加载自带demo图片:
在这里插入图片描述

自带图片测试

点击start segmenting按钮就开始自动分割了:
在这里插入图片描述
风格结果如下:
在这里插入图片描述
由上图可知分割的整体效果还是可以的,但是比较耗时,已经超过了10秒。

其它图片测试1

在这里插入图片描述
图片信息为
在这里插入图片描述
耗时为:
在这里插入图片描述

其它图片测试2

在这里插入图片描述
图片信息:
在这里插入图片描述
消耗时间:
在这里插入图片描述
结果:
在这里插入图片描述

总结

从运行几个demo可以看出,总体上,mobilesam的分割效果还是不错的,可以对高纹理特征的物体进行有效分割。但是离实际的产品应用可能还需要进一步优化,包括识别的速度、包括准确度、和稳定性。
总之,mobilesam的出现,以及量化大模型技术的出现,给大模型端到端和平明化应用带来了希望,这点还是要感谢那些具有开源精神和具有高超编码技术的计算机大拿们,应用一位网友的话做得“功德无量,让大模型进入寻常百姓家”。我们相信,随着更多类似量化技术的贡献,低功耗、实时运行大模型的时代会快速到来的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/210514.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

摩根士丹利:人工智能推动增长

摩根士丹利(NYSE:MS)将人工智能战略整合到其财富管理业务中,标志着竞争性金融格局迈出了变革性的一步。该公司的人工智能计划,包括与 OpenAI 合作开发人工智能聊天机器人,促进了其财富部门的显着增长。值得…

VSCode 开发C/C++实用插件分享——codegeex

VSCode 开发C/C实用插件分享——codegeex 一、codegeex 一、codegeex CodeGeeX 智能编程助手是一款编程插件,CodeGeeX支持多种主流IDE,如VS Code、IntelliJ IDEA、PyCharm、Vim等,同时,支持Python、Java、C/C、JavaScript、Go等多…

C++学习之路(十六)C++ 用Qt5实现一个工具箱(为屏幕颜色提取功能增加一个点击复制的功能)- 示例代码拆分讲解

上篇文章,我们用 Qt5 实现了在小工具箱中添加了《颜色代码转换和屏幕颜色提取功能》功能。今天我们把屏幕颜色提取的功能再扩展一下,让它可以点击复制吧。下面我们就来看看如何来规划开发这样的小功能并且添加到我们的工具箱中吧。 老规矩,先…

CKafka 一站式搭建数据流转链路,助力长城车联网平台降低运维成本

关于长城智能新能源 长城汽车是一家全球化智能科技公司,业务包括汽车及零部件设计、研发、生产、销售和服务,旗下拥有魏牌、哈弗、坦克、欧拉及长城皮卡。2022年,长城汽车全年销售1,067,523辆,连续7年销量超100万辆。长城汽车面向…

mysql手动事务

目录 🚀🚀 简要 手动事务使用案例 事务的特性 事务的隔离级别 脏读 不可重复读 幻读 查看事务隔离级别 设置隔离级别 🫡🫡 简要 mysq事务是自动提交的, 例如insert, update语句等 如下: 想要手动设置mysql事务就需…

操作系统导论——第36章 I/O设备

1. 系统架构 之所以使用分层,这是由于成本和效率之间的平衡 2. 标准设备 接口:向系统其他部分展现的硬件接口 内部结构:设备相关特定实现,几个芯片,CPU和通用内存等 3. 标准协议 While (STATUS BYSY); a、轮询设…

第三节:提供者、消费者、Eureka

一、 提供者 消费者(就是个说法、定义,以防别人叭叭时听不懂) 服务提供者:业务中被其他微服务调用的服务。(提供接口给其他服务调用)服务消费者:业务中调用其他微服务的服务。(调用…

Windows系统下Elasticsearch-7.15.2安装

一、环境 此次笔记使用的运行环境以及软件版本 系统:WIN10 JDK版本:1.8 Elasticsearch版本:7.15.2 elasticsearch-head版本:最新 IK分词器版本:7.15.2 Kibana版本:7.15.2 二、Elasticsearch基本知识 2.1 介绍…

腾讯云优惠券领取入口及使用指南

腾讯云作为国内领先的云计算服务商,提供了丰富的云产品和服务。为了帮助用户更好地享受腾讯云的服务,腾讯云推出了各种优惠券,包括新用户优惠、老用户优惠等。本文将为大家介绍腾讯云优惠券的领取入口和使用指南。 一、腾讯云优惠券领取入口 …

Certum SSL证书

为了确保在线交易的安全性,以及保护敏感信息免受网络威胁,使用SSL(Secure Socket Layer)证书成为了必要选择。其中,波兰认证机构Certum提供的SSL证书以其高度的安全性和可信赖性,得到了全球用户的广泛认可。…

蓝桥杯物联网竞赛_STM32L071_6_RTC显示

作用: RTC在STM32微控制器中通常由一个独立的低功耗晶振和相关的寄存器组成。它可以独立于主处理器运行,即使在系统电源关闭的情况下(需要备用纽扣电池),也能继续计时和记录日期。注意:RTC是芯片内部的功能,并没有和G…

网络运维与网络安全 学习笔记2023.12.2

网络运维与网络安全 学习笔记 第三十三天 今日目标 Linux系统综述、部署本地Linux、配置Linux网络 SSH远程控制、远程文档管理、选购ECS云主机 Linux系统综述 Linux是一种操作系统 Linux之父,Linus Torwalds 1991年10月,发布0.02版(第一…

OOM了?物理内存不够了?试试这个方法来提升内存容量,不花钱的

通过增加虚拟内存来提高内存使用 本文解决的实际问题: 当我们物理内存小的时候,会出现OOM,然后服务自动死掉的情况。因为物理内存大小是固定的,有没有其他好的办法来解决呢?这里我们可以适当调整Linux的虚拟内存来协作…

FreeRTOS第2天:

1. 二值信号量简介(386.11) 什么是信号量? 信号量(Semaphore),是在多任务环境下使用的一种机制,是可以用来保证两个或多个关键代码段不被并 发调用。信号量这个名字,我们可以把它拆…

Android BT HCI分析简介

对于蓝牙开发者来说,通过HCI log可以帮助我们更好地分析问题,理解蓝牙协议,就好像网络开发一定要会使用Wireshark分析网络协议一样。 本篇主要介绍HCI log的作用、如何抓取一份HCI log,并结合一个实际的例子来说明如何分析HCI log…

eclipse中设置自动补齐代码

eclipse中设置自动补齐代码 01 在window里找到preference 02 在preference里搜索content assist 03 在Java的content assist设置 设置为.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 04 apply and close即可

mysql在linux环境下安装(rpm)以及初始化后的登录配置

注:该安装步骤转载于CSDN,下方配置为原创 按照图片安装并初始化完成MySQL等操作后进行; 安装对于rpm包集合 1-查看安装情况(有4个路径) whereis mysql 2-查看服务状态 systemctl status mysql 3-初始化数据库 mysqld --initial…

mybatis源码(五)springboot pagehelper实现查询分页

1、背景 springboot的pagehelper插件能够实现对mybatis查询的分页管理,而且在使用时只需要提前声明即可,不需要修改已有的查询语句。使用如下: 之前对这个功能一直很感兴趣,但是一直没完整看过,今天准备详细梳理下。按…

施人玫瑰手留余香和影像组学、医学人工智能未来漫谈

今天收到进阶班学员的留言: 提示:本文有硬核软文嫌疑,请慎重阅读。“ 我用您给我们讲的CLEAR,与一个审稿人进行了battle。有理有据。评估下来,我感觉我们的文章还是挺符合CLEAR的。” 我从来不排斥在商言商&#xff0…