/DML_Segmentation

Deep mutual learning Exploration on Cross-Modal Segmentation

Primary LanguagePython

及时Pull request 防止单个轮子重复造

主分支迁移到郭世博那里,我这里的更新就到这里,剩下的就靠大家了

目前未实现Eval部分

利用DDP将Sampler将红外和可见光分别用不同的线程送到不同的网络中,两个网络分别分配到不同的卡上,分别进行相应的反向传播, Crescent 完成, 并且加了混合精度训练

刘一帆的channel distillation CWD同样支持,但是要引入对应的线性层,如果要使用的话,值得注意一下,Crescent的分支和流程就到这里,单卡目前还支持不了,强烈支持双卡完成实验。知识蒸馏的两个温度系数,loss和loss之间的系数,那就是另外一个故事了,如果CWD效果好于Holistic Loss,建议引入新的对抗网络了,真的训练不动🐔,大致就是这样,有什么需要的讨论的来504就行,伟大的圈圈博士会回答你一切的。

😽😽😽Deep Mutual Learning for Segmentation

这个是互学习机制在跨域数据集上的探索,常见的跨模态融合的方式,无非以下三种方式

  • 第一种 RGB+Thermal 直接在输入维度上进行concat的操作的方式
  • 第二种 红外端 可见光端放上两个骨架网络作为特征提取的手段,然后再利用中间某个模块相融合
  • 第三种 RGB Thermal 两个网络相互解耦合,然后对两个网络中的输出进行决策,属于结果融合一种 目前,跨模态融合的算法大致分为以上三种方式,能不能提出另外一种新的范式,针对上述跨模态数据,我们采用互学习机制, 加上对抗学习策略进行交叉重建的方式,通过设计不同的网络,将可见光蒸馏的知识,通过logits方式传递给红外的手段,通过这种方式,我们期望得到的结果如下
  • 可见光和红外光在新的范式下,各自的指标都有所提升
  • 可见光通过红外机制的引导,在夜间的情况下也能获取较好的分割效果
  • 红外光通过可见光较好地的纹理细节信息,也能够在部分指标中得到相应的提升
  • CPS半监督范式(郭世博,近期会更新)

Cfg

cfg 最简单的配置文件,目前已支持.py文件的解析功能,全局解析 3.28完成 配置文件所有的Lambda 系列全部改成pi/pa/cps/bce 以便更加方便地调整

loss

loss 新增半监督cps范式,

logger

log 也是采用mmcv中方式,

Dataset

数据增强有一些问题,圈姐可以加一个多尺度训练类似的

Eval 部分

之前说DML_Segmentation 范式,后端也可以加决策融合的方式,根据光照条件自动调整对应输出 当然也可以单个网络的输入。

1、(不知道是不是这个意思) 一种极其简单到发指的most-sure策略:https://ieeexplore.ieee.org/document/8897705 2 代码的实现方式有一个问题,训练和测试的类能不能耦合到一起

我自己尝试一下多卡的实现