文章目录
点击订阅专栏查看专栏列表和对应知识点,本文为seg SAM系列文章,在持续更新。
(题外话:如果是关注的小伙伴应该能发现我断更了一段时间,首先对不起,终究是因为一些私事影响了更新计划,我很抱歉。不过,现在我已整理好情绪,好山常在水长流,永远相信下一次,不管烟波与风雨,永远期待下一次。再次出发吧!)
1.微调SAM预备知识
基础理论参照上两篇。Segment Anything Model分为三部分,图像编码器,提示编码器,和解码器,图像编码和提示编码器相加输入到解码器中,解码器获得mask和iou输出。
我们在其模型上微调可以选择全部权重都调整或者只微调解码器。根据一些论文,表示,全部微调收益不大,同时,我自己全部微调的时候用的是48GB的A40,2080ti带不起来的,但只微调解码器 22GB的2080ti可以。
对于其预训练模型权重,我们使用vit_b最基础的权重,原论文说采用全部数据训练的预训练权重vit_h效果有提升但是不大。
所以,我们之下的代码基于,使用四种提示方式(单点,多点,单框,点框结合)来微调SAM的解码器。
概况为:使用from segment_anything import sam_model_registry
注册模型,例如sam_model = s