finetune-anything icon indicating copy to clipboard operation
finetune-anything copied to clipboard

关于项目无法成功训练语义分割的问题

Open bvcg204 opened this issue 5 months ago • 1 comments

最近在尝试使用作者的FA模型来微调SAM,指导遥感图像的语义分割任务。在确定我的数据标注没有任何问题的前提下,FA模型无法成功训练多分类的语义分割任务。通过仔细研究SAM的源码,我发现SAM之所以可以实现无语义输出的全景分割,是因为其自动使用了32x32大小的网格提示点来覆盖整张图像,每一个点都是一个提示,经过embedding后会与特征图进行信息交互,从而获得一个对象掩膜信息;理论上32x32个点提示会输出很多掩膜对象,SAM源码对其进行了各种过滤操作,例如基于阈值过滤、重叠较多的掩膜对象使用NMS再次过滤。 本项目作者提供的SAM微调框架中,作者尝试不使用任何提示来微调SAM的做法我认为是行不通的。此时你的 sparse_prompt_embeddings是一个大小为[1,0,256]的空embedding,将其输入到mask decoder与image embedding交互没有任何意义。尽管作者修改了mask decoder为其增加了语义分割头,但是输出的masks(大小为[1,32,256,256])由于没有提示的信息注入,他无法定位到对象的信息,就算后面再用mlp将32映射到分类个数,也没有意义。因此很难训练。 以上只是我的个人看法,如有不对的地方也欢迎大家随时交流讨论,希望作者能及时关注并回复,谢谢!

bvcg204 avatar Jan 18 '24 08:01 bvcg204