ACM模块的结构图大致如上图。
就是将模板、搜索区域、第一帧的BBOX 分成三个分支来进行处理,然后将这三部分相加传入head(与SiamBAN结构相同)得到分类与回归结果。
代码中,在初始化即生成模板时,就将kernel_part和 bbox_part生成完毕(他们会和每一帧的search_part相加)
track方法就是,每一帧都生成search_part和kernel_part和 bbox_part相加得到最终特征传入head。
他比DW卷积的好处是可以进行训练,更好的得到融合特征。而且速度也不慢,比用transformer代替DW卷积快很多。
=====================================
代码遇到的问题:
1: cannot import name region from partially initialized module toolkit