SAM セマンティック セグメンテーション モデルはオープンソースですが、AIGC の時代では画像マッティング ツールは大きなモデルで統一されているのでしょうか。(下)

みなさん、こんにちは。私は千と千尋の神隠しです。今日も ChatGPT での学習体験を皆さんと共有できることをとてもうれしく思います。

今回は「SAMセマンティックセグメンテーションモデルオープンソース、AIGC時代、画像マッティングツールは大規模モデルで統一?」です。「シリーズ最終版。

前の 2 つのセクションでは、すべてをセグメント化するための Segment Anything モデルと、ビデオをセグメント化するための Segment-and-Track Anything モデルを紹介しました。SAM セグメンテーション モデルの改善が早すぎるとしか言えません。

今日持ち込まれたプロジェクトの名前は言わないでください。マット化のための画像セグメンテーション アルゴリズム モデルが与えられたとしたら、どのように最適化しますか?

1. モデルの適用シナリオの最適化

まず、最も簡単に考えられるのは、アプリケーション シナリオを画像からビデオに変更することであり、その後、小説のセグメント アンド トラック モデルが誕生しました。

アプリケーション シナリオからの最適化は最適化のポイントですが、他にどのような革新的な最適化ポイントがあるでしょうか?

2. モデル自体の構造を最適化する

もちろんモデルそのものも!それから今日のプロジェクトです 5G テクノロジーの継続的な普及に伴い、コンピューティング速度に対する要求も高まっているため、今日のプロジェクトはモデルを圧縮して軽量化することです。

代替

1. MobileSAMモデルの誕生

SAM を使用してすべてを分割した大規模なモデルはまだ皆さん覚えていると思いますが、以下はデモ展開 Web サイトのホームページです。

代替

第二に、MobileSAM モデルの構造

オリジナルの SAM モデルは主に、イメージ エンコーダーとプロンプト ガイド付きマスク デコーダーの 2 つの部分で構成されます。

その中で、画像エンコーダは vit を使用し、モデルパラメータは非常に大きく、モデルは比較的大きく、vit-h モデルは 632M です。

代替

2 番目の部分はマスク デコーダーとプロンプト エンコーダーを含む非常に軽量で、モデル パラメーターが少なく、4M 以下です。

代替

3. MobileSAM モデルの導入

MobileSAM のセグメンテーション モデルと SAM の違いは、mobileSAM は CPU 上に展開できることです。

モデルのサイズが大きいため、SAM モデルはクラウドの GPU サーバーにのみデプロイできます。MobileSAM モデルをローカル PC に展開します。

1. Conda は、Python 3.8 バージョンの「mobileSAM」という名前の新しい環境を作成します

(还包含PyTorch 1.7及以上版本和Torchvision 0.8及以上版本)

conda create -n mobileSAM python=3.8

2.激活创建的模型环境

conda activate mobileSAM

3.安装完成后,我们检查你的环境中的Python,PyTorch和Torchvision的版本,你可以使用以下命令:

python --version
python -c "import torch; print(torch.__version__)"
python -c "import torchvision; print(torchvision.__version__)"

4.安装Mobile Segment Anything的依赖:

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

5.本地运行mobileSAM模型

cd app
python app.py

6.安装最新版本的gradio与timm安装包

pip3 install gradio timm

7.修改部分代码,进行服务链接部署

运行项目是部署于Google colab的云端实验室,使用gradio安装包进行快速web UI应用的搭建,创建部署调用的界面。

    def clear():
        return None, None

    def clear_text():
        return None, None, None

    # clear_btn_e.click(clear, outputs=[cond_img_e, segm_img_e])
    clear_btn_p.click(clear, outputs=[cond_img_p, segm_img_p])

demo.queue()
#设置share=True,将部署的demo网页链接设置为公网访问
demo.launch(share=True)

终端输出日志效果:

代替

点击public URL链接访问部署的服务,界面如下图所示:

代替

出现以上页面,表示项目推理的接口服务部署成功!

四、MobileSAM模型的测试

通过以上的Google colab的环境的服务部署,同时该项目在 HuggingFace社区已经发布Demo服务。

1.上传图片,点击待筛选的图像分割

代替

2.点击restart按钮,进行待分割标签的复原

代替

3.HuggingFace社区运行在CPU平台

代替

该项目可以运行在CPU平台,而原始模型SAM由于体积较大,仅仅在支持运行在GPU平台,MobileSAM模型支持运行在CPU等移动端平台。

五、MobileSAM性能对比

以上关于MobileSAM模型的介绍就结束了,回想起来,最开始的SAM原始图像分割一切模型。

到SAM分割并追踪的模型用于视频图像分割,再到现在的MobileSAM部署于CPU端以及移动端的分割一切模型,只能说大模型真的是杀疯了!太快了!

那么移动版本的效果与原始的SAM分割模型对比效果如何?

代替

可以看出来,origin SAM模型与MobileSAM模型的分割效果相类比之下,还算不错。

以下是MobileSAM分割一切轻量化模型部署的链接地址(点击可用):

https://huggingface.co/spaces/dhkim2810/MobileSAM

大家可以点击试一试,分割效果真的不错,一起追赶大模型的发展!

乾物の話ばかりする千と千尋の神隠しコーダーです、また次回!

この記事はmdniceマルチプラットフォームによって公開されています

おすすめ

転載: blog.csdn.net/baidu_39629638/article/details/131887737